首页 / 专利库 / 软件 / 中间件 / 消息中间件 / Electronic controller and program

Electronic controller and program

阅读:721发布:2021-09-20

专利汇可以提供Electronic controller and program专利检索,专利查询,专利分析的服务。并且PROBLEM TO BE SOLVED: To provide an electronic controller that can surely ensure a transmission delay time.
SOLUTION: Middleware receiving a transmission request message from an application stores the received data into a buffer (S110), the data is transmitted (S160) when no lock is set during transmission (YES in S120) and no transmission delay lock is set (YES in S130) and a prescribed time elapses after preceding transmission in a timer (YES in S140), and the transmission delay lock is set (S170) just after the completion of data transmission to release the transmission delay lock after a lapse of a transmission delay time by a down- counter. Thus, no transmission is made until the transmission delay time elapses by the transmission delay lock even on the occurrence of a fault in a value of the timer.
COPYRIGHT: (C)2003,JPO,下面是Electronic controller and program专利的具体信息内容。

  • 【特許請求の範囲】 【請求項1】データの送信後、所定時間経過した場合にのみ次のデータの送信を可能とする電子制御装置において、 前記所定時間をカウントするための複数のタイマを備え、 前記複数のタイマの全てが前記所定時間に達したことを示す場合に前記所定時間経過したと判断することを特徴とする電子制御装置。 【請求項2】データの送信後、所定時間経過した場合にのみ次のデータの送信を可能とする電子制御装置において、 前記所定時間をカウントするタイマと、 データの送信直後にフラグをロック状態とし、前記タイマとは別にカウントした前記所定時間の経過後に、前記フラグの前記ロック状態を解除するロック機構とを備え、 前記タイマが前記所定時間に達したことを示し、かつ、
    前記フラグがロック状態でない場合に前記所定時間経過したと判断することを特徴とする電子制御装置。 【請求項3】請求項1または2に記載の電子制御装置において、 送信対象のデータを記憶するバッファを備え、 前記所定時間中は、前記バッファの書き換えができないようにすることを特徴とする電子制御装置。 【請求項4】請求項1〜3のいずれか記載の電子制御装置に当該請求項における機能を実現させるためのプログラム。
  • 说明书全文

    【発明の詳細な説明】 【0001】 【発明の属する技術分野】電子制御装置等に関する。 【0002】 【従来の技術】従来より、データ送信機能を備えた電子制御装置において、送信先の装置にデータを送信する場合に、データの送信後、所定時間は次のデータを送信しないように制御するものがある。 【0003】例えば図1に示すように、バス10Aに接続されたECU20AとECU20Bと、バス10Bに接続されたECU20Cと、バス10Aとバス10Bの双方に接続されたゲートウェイECU30を備えるシステムにおいて、ゲートウェイECU30がバス10Aやバス10Bに送信されたフレームの宛先に応じて、バス10Aとバス10Bの間のフレームの中継を行うシステムがある。 例えばゲートウェイECU30は、ECU2
    0AがECU20B宛のフレームをバス10Aに送信した場合には、そのフレームのバス10Bへの中継を行わず(図1の経路参照)、ECU20AがECU20C
    宛のフレームをバス10Aへ送信した場合には、そのフレームをバス10Aから受信して、バス10Bへ中継する(図1の経路参照)。 このようにゲートウェイEC
    U30はバスに送信されたフレームを受信し、別のバスにフレームを中継するかを判断して、中継する場合には中継先のバスにフレームを送信する処理を行う。 したがってゲートウェイECU30においては受信・判断・送信等の処理を行う必要があり、バス間を中継するのに所定の時間を要する。 そのため、フレームを送信する側のECU10Aでは、フレームの送信後、所定の時間は同じフレームをバス10Aに送信しないように制御する。 【0004】このような制御は、図2(a)に示すように、フレームの送信後に送信を禁止する時間(遅延したい時間、すなわち遅延時間)が経過したか否かを判定し、遅延したい時間分経過した場合にのみ送信を可能とすることで実現している。 【0005】 【発明が解決しようとする課題】しかしながら、例えば、外部からのノイズ等の影響によるECUの異常や、
    タイマを構成するハードウェアまたはソフトウェアの異常等により、上記遅延時間を計測するタイマに異常が生じ、図2に示すようにタイマ値が遅延したい時間より短い時間になってしまう可能性がある。 【0006】このように種々の要因によりタイマ値が異常となり、遅延したい時間よりも短い値になってしまうと、送信遅延したい時間が経過しなくても送信が可能となってしまう。 例えば図1のECU20Aでこのようなタイマの異常が発生した場合、遅延時間が経過していないのにデータがバス10Aに送信されるため、ゲートウェイECU30の受信・判断・送信等の処理が間に合わなかったり、ゲートウェイECUのフレームの宛先毎の受信バッファが足りなくなったり、受信バッファに上書されてしまうなどして、正常にフレームを中継できなくなる可能性がある。 また、図1の例に限らず、このように送信遅延を行う必要のある種々の電子制御装置において、同様の問題が発生するおそれがある。 【0007】そこで本発明は、送信遅延時間の保証をより確実に行うことのできる電子制御装置を提供することを目的とする。 【0008】 【課題を解決するための手段及び発明の効果】上述した問題点を解決するためになされた請求項1に記載の電子制御装置によれば、複数のタイマのうち、本来所定時間に達していないにもかかわらず、所定時間経過を示す状態となった場合となるタイマがあったとしても、いずれか1のタイマが正常であれば、送信が禁止されるため、
    所定時間(遅延時間)経過前にデータが送信されることがない。 【0009】例えば2つのタイマを備える場合、第1のタイマの値が何らかの要因により異常な値となり、本来所定時間に達していないにもかかわらず、所定時間経過を示す状態となった場合であっても、第2のタイマが正常であれば、送信が禁止されるため、所定時間(遅延時間)経過前にデータが送信されることがない。 逆に第2
    のタイマの値が異常な値となった場合も、第1のタイマが正常であれば、所定時間(遅延時間)の間は送信が禁止されるため、遅延時間経過前にデータが送信されることがない。 【0010】このようにいずれか一つのタイマに異常が生じても、遅延時間の間はデータの送信を禁止することができ、送信遅延時間の保証を確実に行うことができる。 なお、これらのタイマはハードウェアで構成してもソフトウェアで構成してもよい。 【0011】また、請求項2に示すようにタイマが前記所定時間に達したことを示し、かつ、フラグがロック状態でない場合に所定時間経過したと判断するとよい。 このようにすれば、例えばタイマが異常となり遅延時間経過していないにもかかわらず遅延時間経過を示す値になった場合であっても、ロック機構が正常であれば送信可能状態にならない。 したがって送信遅延時間の保証を確実に行うことができる。 【0012】こうした電子制御装置には、バッファに書き込まれた送信対象のデータを送信するものがある。 このような装置では、請求項3のようにするとよい。 こうすることで送信遅延中はバッファの書き換えを禁止することができる、よって、例えばアプリケーションプログラムによる処理で送信データをバッファに書き込み、ミドルウェアによる処理でバッファに書き込まれたデータを送信するような送信データの生成と、データの送信を別の機構で行う構成の場合に、アプリケーションプログラムによる処理で、送信遅延時間が経過しないにもかかわらずデータをバッファへ書き込んでしまい、書き換えられたバッファのデータをミドルウェアが送信してしまうことを防止することができる。 すなわちバッファへの書き込み後、バッファのデータが書き込んだデータになったか否かを判定することでアプリケーションプログラムは送信可能だったか否かを判定することができ、ミドルウェアは、バッファにデータが書き込まれたか否かから送信するか否かを判定することができる。 また、たとえ送信遅延時間が経過していないにもかかわらず送信可能状態になったとしても、バッファのデータに変化がないので、ミドルウェアは同一のデータを再送するにとどまる。 なお、もちろん送信中もバッファの書き換えを禁止するとよい。 【0013】そして、請求項1〜3のいずれかに記載の機能は、請求項4に示すように、例えば、電子制御装置のコンピュータシステムで実行するプログラムとして備えることができる。 このようなプログラムの場合、例えば、フレキシブルディスク、光磁気ディスク、CD−R
    OM、ハードディスク、ROM、RAM等のコンピュータ読み取り可能な記録媒体に記録し、必要に応じてコンピュータシステムにロードして起動することにより用いることができる。 また、ネットワークを介してロードして起動することにより用いることもできる。 【0014】 【発明の実施の形態】以下、本発明が適用された実施例について図面を用いて説明する。 なお、本発明の実施の形態は、下記の実施例に何ら限定されることなく、本発明の技術的範囲に属する限り種々の形態を採りうることは言うまでもない。 【0015】図1は実施例の電子制御装置であるECU
    20(ECU20A〜20C)を含む車両制御システムの構成を示すブロック図である。 ECU20は、CP
    U,ROM,RAM,I/O,タイマ等を備え、ROM
    やRAMに記憶されたプログラム及びデータに基づいてCPUが所定の処理を行い所定の機能を実現する。 例えば、センサ等からの信号を入し、制御対象となる装置を制御する機能を備える。 またECU20A及びECU
    20Bはバス10Aに接続され、ECU20Cはバス1
    0Bに接続されている。 【0016】ゲートウェイECU30は、ECU20と同様にCPU,ROM,RAM,I/O等を備え、バス10Aとバス10Bに接続されている。 そしてゲートウェイECU30は、バス10Aに送信されるデータのうち、バス10Bに接続されたECU20を宛先とするデータをバス10Bに中継する機能を備える。 また、逆にバス10Bに送信されるデータのうち、バス10Aに接続されたECU20を宛先とするデータをバス10Aに中継する機能を備える。 【0017】例えば、ECU20AがECU20C宛のデータをバス10Aに送信した場合には、ゲートウェイECU30は、バス10A上のデータを受信し、バス1
    0Aに送信されたデータの宛先がバス10Aに接続されたECU20に対するものなのか、またはバス10Bに接続されたECU20に対するものなのかを判定して、
    バス10Bに接続されたECU20宛のデータである場合には、バス10Bへそのデータを送信する中継処理を行う。 この中継処理によって、ECU20Aから送信されたECU20C宛のデータは、バス10Aからバス1
    0Bに中継される。 【0018】そして、この中継処理には所定の時間を要するため、送信元のそれぞれのECU20では、バス1
    0へのデータの送信後、所定の時間が経過するまでは、
    同一フレームの送信を行わないようにする。 このようなECU20での送信処理を図3及び図4を参照して説明する。 【0019】ECU20での送信処理は、アプリが送信データの書き込み要求をミドルウェアに対して渡し、ミドルウェアがその要求に応じて送信処理を行うように構成されている。 なお、ここで「アプリ」及び「ミドルウェア」は、実際にはそれぞれのプログラムに基づくEC
    U20の処理である。 【0020】図3(a)に示すように、アプリからのデータの書き込み要求(メッセージの送信)が、送信処理を行うミドルウェアに対してあった場合に、ミドルウェアは受け取ったメッセージのメッセージIDに対応するRAM上のメッセージバッファにそのメッセージに含まれるデータを書き込み、メッセージID毎に設けたステータスの値を設定する。 このステータスには、「送信中ロック」と「送信遅延ロック」が含まれ、これらは1ビットのフラグとしてそれぞれ管理される。 フラグの値が「1」の場合にはロック中を示し、「0」の場合にはアンロック中を示す。 またメッセージIDはメッセージ毎に異なるものを利用している。 【0021】そして、図3(b)に示すように、上記ステータスがロック中であるか否かと、送信後の経過時間をカウントするタイマの値に基づいて、データが送信可能か否かを判定し、送信可能な場合にデータをバス10
    へ送信する処理を行う。 この処理の具体的な内容を図4
    のフローチャートに示して説明する。 【0022】ミドルウェアは、書き込まれたメッセージを定期的に送信(定期送信)するのか、メッセージ書き込み後すぐに送信するのかを、アプリからの指示に基づき予めメッセージID毎に設定しておく。 そしてこのメッセージID毎の送信タイミングの設定に基づき、
    定期送信のメッセージIDのデータについては、タイマの値が所定時間経過する毎に図4のS120から処理を実行する処理を行う。 一方、書き込み後すぐに送信するメッセージIDのデータがアプリから書き込まれた場合には、S110から処理を開始する。 なおこのタイマはハードウェアでフリーランカウントする。 【0023】S110では、アプリから受け取ったメッセージのメッセージIDに対応するメッセージバッファに、メッセージに含まれるデータを記憶する。 例えば、
    メッセージIDが0のデータは図3(a)のメッセージバッファの「メッセージ0」の領域内に記憶される。 【0024】S120では、メッセージIDに対応するステータスの送信中ロックフラグが0か否かを判定し、
    0の場合には(S120:YES)、S130へ移行し、1の場合には(S120:NO)、0になるまでS
    120を実行する。 S130では、メッセージIDに対応するステータスの送信遅延ロックフラグが0か否かを判定し、0の場合には(S130:YES)S140へ移行し、1の場合には(S130:NO)、S120へ戻る。 【0025】S140では、前回の送信時にS170で記憶したタイマ値と現在のタイマ値との差分を求め、前回の送信から送信遅延時間分以上経過したか否かを判定し、経過した場合には(S140:YES)S150へ移行し、経過していない場合には(S140:NO)S
    120へ戻る。 【0026】S150では、メッセージIDに対応するステータスの送信中ロックフラグを「1」にセットする。 S160では、メッセージIDに対応するメッセージバッファに記憶されたデータを送信する。 【0027】送信が完了するとS170で、現在のタイマ値をメッセージIDに対応付けて記憶し、送信遅延ロックのフラグを1とし、送信中ロックを0に戻す。 また以上の処理とは別に、メッセージID毎に設けたダウンカウンタを用いて、送信遅延ロックがセットされた後、
    所定時間経過した際に送信遅延ロックをリセットする(0にする)処理を行う。 【0028】図5にこの処理のフローチャートを示す。
    この処理は、所定時間毎に起動され、すべてのメッセージIDについて行われる。 S310では、送信遅延ロックが0から1に変化したか否かを判定する。 送信遅延ロックが1になった場合には(S310:YES)、S3
    20へ移行し、それ以外の場合には(S310:N
    O)、S330へ移行する。 【0029】S320では、送信遅延時間に相当するダウンカウンタ値を設定する。 S330では、ダウンカウンタをディクリメントする。 S340では、ダウンカウンタが0か否かを判定する。 ダウンカウンタが0の場合には(S340:YES)S350へ移行し、ダウンカウンタが0でない場合には(S340:NO)、そのメッセージIDに対応する処理を終了し、次のメッセージIDがある場合には、次のメッセージIDに関して同様にS310から処理を行う。 【0030】このように、従来のタイマとは別にダウンカウンタを設けることで、送信遅延をより確実に行うことができる。 すなわち、図6に示すように、図4のS1
    40で判定するタイマによる送信遅延時間が、何らかの要因によって異常となったとしても、S170で送信完了後に設定される送信遅延ロックによって、S130の判定処理により、この送信遅延ロックが解除されるまでは、S160の送信処理を行わない。 送信遅延ロックが解除されるのは、図5に示した処理により所定時間毎にディクリメントされるダウンカウンタが0になった場合であり、このダウンカウンタは、送信遅延時間に相当する値である。 したがって、図6に示すようにタイマ値が異常となっても送信遅延時間が経過するまではロック機構により送信がなされない。 ダウンカウンタとタイマの双方が同時に異常となる確率は一方が異常になる確率より低いので、より確実に送信遅延時間を保証することができる。 なお、図4のS150、S170とS120の送信中ロックに関する処理により、送信中に再度送信してしまうことも防止することができる。 【0031】なお、上記実施例において図4の送信処理の際に、送信中及び送信遅延中にはメッセージバッファへの書き込みを禁止するようにしてもよい。 すなわち、
    図7に示すように、アプリからのメッセージを受け取ったミドルウェアは、図4のS110〜S170の処理に先立って、S102及びS103の処理を実行するようにする。 このS102では、送信中ロックが0であるか否かを判定し、0の場合には(S102:YES)、S
    104へ移行し、1の場合には(S102:NO)0になるまでS102を実行する。 S104では、送信遅延ロックが0であるか否かを判定し、0の場合には(S1
    02:YES)、S110へ移行し、1の場合には(S
    104:NO)、S102へ戻る。 したがって、送信中及び送信遅延時間中はバッファへのデータの書き込み(S110の処理)は行われない。 こうして、送信中及び送信遅延時間中はバッファへのデータの書き込みを防止することができる。 【0032】上記実施例においては、メッセージID毎に設けたダウンカウンタを用いて送信遅延ロックの制御を行ったが、例えばその他のタイマ等を用いてこのロックの制御を行うようにしてもよい。 またタイマはソフトウェアで構成してもハードウェアで構成してもよい。 また上記実施例では、送信遅延時間は固定としたが、例えばメッセージID毎に設定できるようにしてもよい。 また、上記実施例のようにメッセージID毎のステータスを設け、送信の管理を行うのではなく、ECU全体として1つのステータスを設け送信遅延時間を管理する場合にも図4、図5に示した処理を適用できる。 【0033】そして上記実施例ではミドルウェアとアプリから構成される処理として説明したがこれに限らす種々のソフトウェア構成のシステムに適用することができる。 また、上記実施例では、バス10へデータを送信するECU20の処理として説明したが、このような送信遅延(送信後所定時間は送信を行わない)処理を行うシステムであれば、どのようなシステムにも適用することができる。 【0034】なお、本実施例において、タイマが請求項1におけるタイマに相当し請求項2におけるタイマに相当する。 そしてダウンカウンタが請求項1におけるタイマに相当し、請求項2における「別にカウント」をするためのカウンタに相当する。 また、送信遅延ロックフラグがフラグに相当する。

    【図面の簡単な説明】 【図1】実施例の電子制御装置を含むシステムの構成を示す図である。 【図2】従来の送信遅延の方法と問題点を示す説明図である。 【図3】ミドルウェアの構成を示す説明図である。 【図4】ミドルウェアの送信処理のフローチャートである。 【図5】ミドルウェアのダウンカウンタ管理処理のフローチャートである。 【図6】実施例の送信遅延の方法を示す説明図である。 【図7】送信中及び送信遅延期間中にバッファへの書き込みを禁止する処理を付加した送信処理のフローチャートである。 【符号の説明】 10A,10B…バス20A,20B…ECU 30…ゲートウェイECU

    ───────────────────────────────────────────────────── フロントページの続き (72)発明者 古田 克彦 愛知県刈谷市昭和町1丁目1番地 株式会 社デンソー内(72)発明者 岡田 稔 愛知県刈谷市昭和町1丁目1番地 株式会 社デンソー内Fターム(参考) 5K033 CB08 DA05 DB13 DB19 EC03

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈