車両用電子制御装置
【課題】車両に搭載されたサーバに接続するためのクライアントを追加する際の改造範囲をより小さくし、低コストで改造を行うことが可能な車両用電子制御装置を提供する。
【解決手段】予め定められた機能を実行する1以上のサーバと、サーバとの通信の確立を要求するための要求信号を送信する1以上のクライアントと、サーバとクライアントとの間に介在し、サーバとクライアントとの通信を調停する1つの調停部と、が、ネットワーク上に配置され、調停部は、サーバの通信状態を取得する通信状態取得部を含み、要求信号を受信したとき、該要求信号の対象となるサーバの通信状態に基づいて、該クライアントと該サーバとの通信の確立を許可するか否かを決定する。
【解決手段】予め定められた機能を実行する1以上のサーバと、サーバとの通信の確立を要求するための要求信号を送信する1以上のクライアントと、サーバとクライアントとの間に介在し、サーバとクライアントとの通信を調停する1つの調停部と、が、ネットワーク上に配置され、調停部は、サーバの通信状態を取得する通信状態取得部を含み、要求信号を受信したとき、該要求信号の対象となるサーバの通信状態に基づいて、該クライアントと該サーバとの通信の確立を許可するか否かを決定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、車両に搭載された各種装置と、ダイアグテストツールのようなデータ読み出し用端末との通信を効率よく行うための車両用電子制御装置に関する。
【背景技術】
【0002】
車両には電子制御装置(「ECU」ともいう)が多数、例えば、エンジンECU、エンジンの駆動と停止を行いながら車両を走行させるエコランECU、ドアやロックの制御を行うボデーECU、自動変速(AT)制御ECU、エアバッグECU、盗難が発生した場合や盗難が発生する可能性がある事象を検知した場合に警報を発生するセキュリティECU等のような電子制御装置(ECU)が多数搭載されており、各ECUは、担当する制御対象について、単体で独自に制御しているが、他のECUとの情報の授受が必要な場合もある。
【0003】
このため、車両に搭載する複数のECUを関連付けして各種制御を行うために、その複数のECUを共通のバスラインに接続するとともに、代表的標準ネットワーク・プロトコルであるコントロールエリアネットワーク(Controller Area Network、以下CANという)プロトコル等を使用して相互通信制御を行っている。
【0004】
また、各ECUは自己診断機能を備え、信頼性の向上が図られている。すなわち、各ECUはCPUやセンサ類の動作状態を適当な周期で自動的にチェックし、故障時には異常ランプを点灯したり、その故障内容が修理業者に分かるように異常コードを記憶したりするダイアグノーシス(以下、ダイアグという)処理を行っている。そして、このような診断情報(「ダイアグ情報」ともいう)は、修理工場等において、ダイアグテストツール(故障診断用端末)のようなデータ読み出し用端末を診断コネクタ経由でECUに接続することにより読み出すことができ、修理工場では読み出した故障コードに応じた修理が可能となる。
【0005】
ダイアグ通信はCAN通信を用いることが主流になりつつある。ダイアグ通信では、例えば、ECUがその要求を受けてから応答データの送信を開始するまでの時間等、その要求に対するECUの応答特性が法規で定められている。そこで、ダイアグテストツールの要求から車載ECUが最初の応答を行うまでの時間的な制約を満足することができるとともに、従来の車両も規格統一を図ることが可能な通信変換制御装置が考案されている(特許文献1参照)。
【0006】
また、第1ECUにおいて、第2ECUからのアクセス要求を受けたとき、第3ECUからのアクセス要求に応じた処理を実行している最中であれば、その第3ECUからのアクセス要求に応じた処理を開始してからの経過時間と予め定められた一定時間とを比較し、経過時間が一定時間より短ければ、第3ECUからのアクセス要求に応じた処理を中止して第2ECUからのアクセス要求に応じた処理を開始し、経過時間が一定時間より長ければ、第3ECUからのアクセス要求に応じた処理が終了した後に第2ECUからのアクセス要求に応じた処理を開始する通信調停システムが考案されている(特許文献2参照)。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2006−352201号公報
【特許文献2】特開2001−111559号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
図22に、従来技術によるダイアグ通信の概要を示す。図22では、ECUを、故障診断結果を記憶し、クライアントの要求にしたがって通信出力する機能を含むため、サーバと称している。ダイアグ通信による故障診断は、上述のように、主として修理工場やディーラ等で、ダイアグテストツール(クライアント1)により車内LAN40に接続してアクセスするといった限られた範囲から、遠隔地からパソコン(クライアント2)等でインターネット等を経由し車内LAN40に接続してリモート診断したり、車内LAN40上の車両用ナビゲーション装置(ナビ:クライアント3)等の車載装置を用いる等、通信形態が変化しつつある。
【0009】
このように、サーバにアクセス可能なクライアントが増加すると、複数のクライアントから1つのサーバに同時にアクセスする状況も生ずる。しかし、サーバが1台のクライアントとしか通信できない構成のとき、あるいはサーバの処理能力が高くないときには、同時に複数のクライアントから要求信号が送られてくると、サーバ側で通信調停を行う必要がある。
【0010】
サーバ1〜3はECUであるため、周知のマイクロコンピュータ(マイコンともいう),メモリ,センサ信号を取り込む入力回路,アクチュエータを動作させるためのドライバ回路,他のECUとのデータ通信を行う通信回路を含んでいる。但し、図22においては、後述する本発明の構成に関連する各クライアント(1〜3)との通信機能(クライアント1通信機能101等)および調停機能(104等)を示すにとどめ、ECU自体の機能の詳細な説明は割愛する。クライアント通信機能は、例えば周知のLAN通信インターフェース回路として構成され、マイコンの制御に基づいて動作する。また、調停機能は、例えば上述のメモリに記憶された、マイコンが実行するプログラムとして構成される。
【0011】
クライアント(1〜3)は、上述のように、それぞれ、ダイアグテストツール,パソコン,ナビに相当しているが、サーバと同様に、後述する本発明の構成に関連する、他のクライアントとの調停機能(11,12等)および通信機能(13等)を示すにとどめ、各装置が有する本来の機能の詳細な説明は割愛する。他のクライアントとの調停機能は、例えば、それぞれの装置で実行されるプログラムとして構成され、通信機能は、LAN通信インターフェース回路,無線通信回路として構成される。
【0012】
そして、各サーバと各クライアントとは、車内LAN40によりネットワーク接続されている。無論、リモート端末となるクライアント2も、例えば、車内LAN40に接続された無線通信機(図示せず)を介して、車内LAN40に接続している。
【0013】
以下、従来技術による通信調停の概要を述べる。通信調停にはクライアント同士で調停する方法と、サーバ内で調停する方法とがある。クライアント同士で調停する方法は、例えばトークンのような送信権を設定し、この送信権をクライアントが例えば予め定められた順序で獲得し、通信が終了したら(通信を行う必要がないときも)送信権を開放し、次のクライアントが獲得する。クライアント1が送信権を獲得すると、クライアント2との調停機能11およびクライアント3との調停機能12を用いて、クライアント2およびクライアント3にサーバとの通信を行わないよう、データを送信する。そして、クライアント1がサーバ1に要求信号を送信すると、サーバ1がそれに応じて応答信号を返送する。このとき、クライアント2がサーバ1に要求信号を送信しても、サーバ1は通信を行うことができない旨の否定応答信号を返送するか、クライアント1以外からの要求信号に対しては全く応答しない。
【0014】
上述の構成では、クライアントが増加すると、他の全てのクライアントに、新しいクライアントとの調停機能(ハード,ソフトのうちの少なくとも一方)を組み込む必要があり、そのためにROMやRAMの容量に余裕を持たせておかなければならず、コストアップにつながるという課題を生ずる。
【0015】
また、サーバ内で調停する方法は、例えば、サーバ1がクライアント1との通信中に、クライアント2からの通信要求を受信したときには、サーバ1自身が調停機能104を用いて調停を行い、その要求に応答できない旨(否定応答)をクライアント2に送信する。
【0016】
上述の構成では、クライアントが増加すると、全てのサーバに新しいクライアントとの通信機能(ハード,ソフト)を追加するとともに、調停機能の対象に新しいクライアントを含めるための改造(ソフトの修正等)を行う必要があり、いずれもコストアップにつながるという課題を生ずる。
【0017】
上記のような背景に基づいて、本発明の課題は、車両に搭載されたサーバに接続するためのクライアントを追加する際の改造範囲をより小さくし、低コストで改造を行うことが可能な車両用電子制御装置を提供することにある。
【課題を解決するための手段および発明の効果】
【0018】
上記課題を解決するための車両用電子制御装置は、予め定められた機能を実行する1以上のサーバと、サーバとの通信の確立を要求するための要求信号を送信する1以上のクライアントと、サーバとクライアントとの間に介在し、サーバとクライアントとの通信を調停する1つの調停部と、が、ネットワーク上に配置され、調停部は、サーバの通信状態を取得する通信状態取得部を含み、要求信号を受信したとき、該要求信号の対象となるサーバの通信状態に基づいて、該クライアントと該サーバとの通信の確立を許可するか否かを決定することを特徴とする。
【0019】
上記構成によって、従来の構成(例えば、図22)のように、クライアント間で調停したり、サーバ内で調停する必要がなくなり、クライアントおよびサーバの調停機能を調停部に集約できるため、クライアントおよびサーバのハードウェア構成およびソフトウェア構成を簡略化でき、処理負荷を低減できるとともにクライアントおよびサーバのコストダウンも可能となる。
【0020】
また、本発明の車両用電子制御装置における調停部は、要求信号の対象となるサーバが他のクライアントと通信中のとき、要求信号の送信元のクライアントと他のクライアントの通信の優先順位に基づいて、要求信号の送信元のクライアントと該要求信号の対象となるサーバとの通信と、該サーバと他のクライアントとの通信とのうち、いずれを優先させるかの調停を行う。
【0021】
上記構成によって、適切な調停(どのクライアントを優先させるか)を行うことで、ユーザの利便性を確保できる。
【0022】
また、本発明の車両用電子制御装置における要求信号は、複数の通信フレームにより構成され、調停部とクライアントとの間の通信は1フレーム単位で行われ、調停部は、要求信号の最初の通信フレームを受信したときに調停を行う。
【0023】
上記構成によって、要求信号が複数の通信フレームにより構成されるときには、全フレームを受信することなく調停を行うことができるので、要求信号を受信してから調停を行うまでの時間を短縮できる。
【0024】
また、本発明の車両用電子制御装置における調停部は、要求信号に含まれるデータ内容に基づいて、要求信号の送信元のクライアントと該要求信号の対象となるサーバとの通信と、該サーバと他のクライアントとの通信とのうち、いずれを優先させるかの調停を行う。
【0025】
上記構成によって、適切な調停を行うことができるとともに、新たなクライアントを追加しても、調停部で対応する設定操作を行う必要はなく、ユーザの操作負荷を低減することができる。
【0026】
また、本発明の車両用電子制御装置は、クライアント毎に、通信の優先順位が予め定められ、調停部は、要求信号に含まれる優先順位に基づいて、要求信号の送信元のクライアントと要求信号の対象となるサーバとの通信と、該サーバと他のクライアントとの通信とのうち、いずれを優先させるかを決定する。
【0027】
上記構成によっても、適切な調停を行うことができるとともに、新たなクライアントを追加しても、調停部で対応する設定操作を行う必要はなく、ユーザの操作負荷を低減することができる。
【0028】
また、本発明の車両用電子制御装置における調停部は、要求信号の送信元のクライアントの優先順位が、他のクライアントの優先順位よりも低いとき、該クライアントに対し、サーバとの通信が可能になるまで待機する旨の応答、あるいは、該サーバとの通信を不許可とする旨の応答のいずれかを行う。
【0029】
上記構成によって、要求信号の送信元のクライアントの優先順位が、他のクライアントの優先順位よりも低いときに、適切な調停を行うことができる。また、要求信号の送信元のクライアントを、サーバとの通信が可能になるまで待機させる構成のときには、該クライアントの要求にも応じることができる。
【0030】
また、本発明の車両用電子制御装置における調停部は、要求信号の送信元のクライアントの優先順位が、他のクライアントの優先順位よりも高いとき、サーバと他のクライアントとの通信を中断あるいは中止させて、要求信号の送信元のクライアントと要求信号の対象となるサーバとの通信を許可する。また、要求信号の送信元のクライアントを、サーバとの通信が可能になるまで中断させる構成のときには、該クライアントの要求にも応じることができる。
【0031】
上記構成によって、要求信号の送信元のクライアントの優先順位が、他のクライアントの優先順位よりも高いときに、要求信号の送信元のクライアントを優先させることができる。
【0032】
また、本発明の車両用電子制御装置における要求信号は、ネットワーク上に備えられる全てのサーバに対するもので、調停部は、全てのサーバの通信状態に基づいて、該クライアントと該全てのサーバとの通信を許可するか否かを決定する。
【0033】
上記構成によって、クライアントが一度に全てのサーバとの通信を確立したいときにも、適切な調停を行うことができる。
【0034】
また、本発明の車両用電子制御装置における調停部は、サーバあるいはクライアントのいずれか1つに備えられる。
【0035】
上記構成によって、サーバあるいはクライアントと、ハードウェアあるいはソフトウェアの少なくとも一部を共用できるので、調停部の製造コストを低減することができる。
【0036】
また、本発明の車両用電子制御装置は、サーバあるいはクライアントを含む通信ネットワークは複数あり、その通信ネットワーク毎に前記調停部と接続する。
【0037】
上記構成によって、通信ネットワーク系が複数あるときにも、調停部をネットワークのゲートウェイのような位置づけとし、1台の調停部により調停を行うことができる。
【0038】
また、本発明の車両用電子制御装置における調停部は、ネットワーク上に複数備えられる。
【0039】
上記構成によって、クライアントあるいはサーバの数が増加して、調停部1台あたりの調停能力を超えたときにも、調停部を複数配置することで適切な調停を行うことができる。
【図面の簡単な説明】
【0040】
【図1】本発明の車両用電子制御装置の構成を示す図。
【図2】サーバ〜クライアント間の通信について説明する図。
【図3】調停の詳細を説明する図(実施例1)。
【図4】フレーム単位の調停について説明する図(実施例1)。
【図5】メッセージ単位の調停について説明する図(実施例1)。
【図6】メッセージ単位の調停の別例について説明する図(実施例1)。
【図7】調停処理を説明するフロー図(実施例1)。
【図8】調停の詳細を説明する図(実施例2)。
【図9】メッセージ単位の調停について説明する図(実施例2)。
【図10】フレーム単位の調停について説明する図(実施例2)。
【図11】メッセージ単位の調停の別例について説明する図(実施例2)。
【図12】フレーム単位の調停の別例について説明する図(実施例2)。
【図13】調停処理を説明するフロー図(実施例2)。
【図14】従来の構成による一斉通信要求における調停方法を示す構成図。
【図15】従来の構成による一斉通信要求における調停方法を示す図。
【図16】一斉通信要求における調停方法を示す構成図(実施例3)。
【図17】一斉通信要求における調停方法を示す図(実施例3)。
【図18】一斉通信要求における調停処理を説明するフロー図(実施例3)。
【図19】一斉通信要求における調停方法の別例を示す構成図(実施例4)。
【図20】一斉通信要求における調停方法の別例を示す図(実施例4)。
【図21】一斉通信要求における調停処理の別例を説明するフロー図(実施例4)。
【図22】従来技術による車両用電子制御装置の構成を示す図。
【発明を実施するための形態】
【0041】
以下、本発明の車両用電子制御装置について、図面を用いて説明する。図1に、車両用電子制御装置の構成を示す。なお、本構成は、図22の構成において機能を追加・削除したものであるため、図22と同様の構成のものについては同一の符号を付与し、ここでの詳細な説明は割愛する。
【0042】
クライアント1〜3は、図22の構成から、他のクライアントとの調停機能(11,12等:破線枠で表記したもの)が削除されている。また、通信機能(13等)は、主に調停ECU1を介してサーバ1〜3との通信を行うための通信インターフェースである。
【0043】
サーバ1〜3は、図22の構成から、各クライアントとの通信機能のうちの一つがクライアント通信機能(111等)に置き換わり、残り(破線枠で表記したもの)は削除されている。クライアント通信機能は、主に調停ECU1を介してクライアント1〜3との通信を行うための通信インターフェースである。
【0044】
調停ECU1は、図22の構成では各サーバに含まれていた、各クライアントとの通信機能(101等)および調停機能(104等)を1か所(クライアント1通信機能51,クライアント2通信機能52,クライアント3通信機能53,調停機能54)に集約したものである。上述のように、従来はクライアント同士、あるいは、サーバ内で調停していたものを、本発明では、調停ECU1で調停するようにしている。これにより、各クライアント内の、各クライアントとの調整機能、およびサーバ内の調整機能とクライアント毎の通信機能が不要となる。なお、調停ECU1が本発明の調停部に相当する。また、調停機能54が本発明の通信状態取得部に相当する。
【0045】
調停ECUを複数設けてもよい。図1では、調停ECU2が設けられている。構成は調停ECU1と同様である。そして、例えば、調停ECU1は、各クライアントからのサーバ2およびサーバ3に対する要求(本発明の「要求信号」、以下も同様)を調停し、調停ECU2は、各クライアントからのサーバ1に対する要求を調停する。但し、通信効率やコストの面を考慮すると、特にクライアント数が少ないときには、調停ECUは1台であることが望ましい。
【0046】
また、サーバ5を車内LAN40とは別のネットワークである車内LAN41を介して調停ECU1に接続する構成としてもよい。これにより、他の通信系に接続されているサーバへの要求も調停することが可能となる。
【0047】
また、従来構成の、各クライアントとの通信機能401〜403および調停機能404を備えるサーバ4を車内LAN40に接続する構成としてもよい。この場合、調停ECU1,調停ECU2は、サーバ4に対する要求の調停は行わず、通信データの中継のみ行う。このように、新旧のサーバが混在する環境下でも、調停ECU1は柔軟に対応できる。無論、サーバ4の調停機能も調停ECU1に集約することが望ましい。
【0048】
また、調停ECU1の、クライアント通信機能(51〜53)および調停機能54をサーバ1〜3,クライアント1〜3のいずれかに含めてもよい。特に、エンジンECUは、内燃機関を有する車両(ハイブリッド車両を含む)には必ず搭載されているので、調停部として適している。また、電気自動車(ハイブリッド車両を含む)では、調停部を、駆動用モータを制御するモータ制御ECUに含めることが適している。
【0049】
図2に、ダイアグ通信を例に挙げて、サーバ〜クライアント間の通信について説明する。図2の左側は、送信するデータが1つのフレームにより構成されるシングルフレーム(Single Frame:SF)による通信を示したもので、右側は、送信するデータが複数のフレームにより構成されるマルチフレーム(Multi Frame:MF)による通信を示したものである。
【0050】
シングルフレーム通信の場合は、クライアントがサーバに対して何らかの要求(例えば、故障診断用のデータであるダイアグデータの送信要求)を送信すると、サーバでその要求を解析し、解析結果に応じたサービス(データ読み出し等)を実行し、その結果(読み出したデータ等)をクライアントに送信する。シングルフレーム通信では、1フレーム=1メッセージであるため、フレームレベルでの調停ができないので、メッセージ単位での調停を行う。
【0051】
マルチフレーム通信の場合は、クライアントがサーバに対して何らかの要求(データ要求)を行う要求を送信する際、まず、マルチフレーム(MF)で構成される要求の先頭フレーム(First Frame:FF)を送信する。サーバは、先頭フレーム(FF)を受信すると、受信可能な旨を含むFC(Flow Control)をクライアントに送信する。クライアントは、該FCを受信すると、要求の残りのフレーム(Consecutive Frame:CF)を順次送信する。
【0052】
サーバは、全フレームを受信すると、その要求を解析し、解析結果に応じたサービスを行い、その結果をマルチフレームでクライアントに送信する。すなわち、まず、サーバは、応答の先頭フレーム(FF)を送信し、クライアントからの受信可能な旨を含むFCを受信した後、応答の残りのフレーム(CF)を順次送信する。マルチフレーム通信では、複数フレーム=1メッセージであるため、フレーム単位での調停が必要となる。
【0053】
なお、CANベースの診断インターフェースは、ISO15765−2(フレームに関するもの),ISO14229−1(メッセージの構築に関するもの)の規定に基づいている。
【0054】
以下、調停ECU1におけるメッセージ単位およびフレーム単位での調停の詳細について説明する。なお、調停の優先順位は、以下のうちの一つ、あるいは複数の組み合わせを用いる。
・先に要求信号を受信したクライアントを優先する。
・後から要求信号を受信したクライアントを優先する。
・予めクライアントに優先順位を設定し、要求信号を受信したクライアントの優先順位を比較する。例えば、ダイアグテストツール(優先順位:高)>車載装置(ナビ等)>リモート端末(優先順位:低)。
・要求信号の内容に応じて優先順位が予め定められる。例えば、要求信号に含まれるSID:サービスIDに優先順位を含ませる。優先順位は調停ECU1に記憶する。
【実施例1】
【0055】
図3〜図7を用いて、調停の詳細の第1実施例について説明する。本実施例では、以下のように調停を行う。
・メッセージ単位の調停:現在サーバと通信中のクライアントよりも優先順位の低いクライアントからの要求は受け付けない。
・フレーム単位の調停:現在サーバと通信中のクライアントよりも優先順位の低いクライアントからの要求があったときには、その要求を受け付け、現在サーバと通信中のクライアントの処理終了後に、サーバとの通信を許可する。
【0056】
図3を用いて、本実施例における車両用電子制御装置の構成の概要を説明する。本実施例では、クライアント2とクライアント3からのサーバ3に対する要求を調停ECU1が調停する。調停ECU1は、図1の構成に加え、クライアント2通信機能52に含まれるクライアント2用受信部52a、クライアント3通信機能53に含まれるクライアント3用受信部53a、クライアント2,3にデータを送信する送信部55(対象クライアント毎にクライアント2通信機能52,クライアント3通信機能53に送信部を含む構成でもよい)、図示しないメモリの一部に確保される要求退避用バッファ56を備えている。
【0057】
図4を用いて、先にサーバ3とクライアント3とが通信中のときに、クライアント3よりも優先順位の低いマルチフレーム通信を行うクライアント2からの要求が送信されときの調停のうち、フレーム単位の調停の詳細について説明する。
【0058】
クライアント3からの要求31(SF)を受信した調停ECU1は、要求先のサーバ3がアイドル状態であるとき、その要求を要求11(SF)としてサーバ3に送信する。サーバ3は、受信した要求11に基づいて図2で説明したような処理を実行し(処理中1)、処理結果を応答11(SF)として調停ECU1に送信する。調停ECU1は、受信した応答11を応答31(SF)としてクライアント3に送信する。
【0059】
調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中のときに、クライアント2からの要求21の先頭フレーム(FF)を受信したとき、クライアント2に対し、受信可能な旨を含むFCを送信する。クライアント2は、該FCを受信すると、要求の残りのフレームCFを、調停ECU1に順次送信する。クライアント2からの要求は、要求退避用バッファ56に記憶する。
【0060】
調停ECU1は、サーバ3がクライアント3からの要求に対する処理(処理中1)が終了するのを待つ。すなわち、サーバ3から応答11(SF)が送信されてくるのを待つ。そして、サーバ3からの応答11(SF)を受信すると、クライアント3にその旨を応答31(SF)として送信する。その後、クライアント2からの要求データが要求退避用バッファ56に記憶されているとき、これを読み出して要求12(SF)としてサーバ3に送信する。サーバ3は、受信した要求12に基づいて図2で説明したような処理を実行し(処理中2)、処理結果を応答12(SF)として調停ECU1に送信する。調停ECU1は、受信した応答12を応答22(FF)としてクライアント2に送信する。以降、図2と同様に、クライアント2からの受信可能な旨を含むFCデータを受信した後、応答の残りのフレーム(CF)を順次送信する。
【0061】
図5を用いて、メッセージ単位の調停のうち、先にサーバ3と通信中のクライアント3よりも優先順位の低いクライアント2からの要求が送信されたときの調停の詳細について説明する。サーバ3は、クライアント3からの要求に基づく処理のみを実行する。クライアント2からの要求は拒否する。
【0062】
調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中のときに、クライアント2からの要求21(SF)を受信したとき、調停ECU1はクライアント2に対し、要求を受け入れない旨を含む否定応答コード(SF)を送信する。否定応答は、例えば$21(十六進数の21)で示される。クライアント2は、該否定応答を受信すると、要求に関する処理を終了する。
【0063】
また、調停ECU1がクライアント2からの要求21を受信したとき、調停ECU1はその要求に対し無応答としてもよい。クライアント2では、要求21を送信してからの経過時間を測定し、予め定められた時間が経過した(すなわち、応答待ちタイムアウトした)ときに、調停ECU1では要求が受け入れられなかったと判断し、要求に関する処理を終了する。すなわち、クライアントは、要求信号を送信後、予め定められた時間内に調停部からの応答を受信しないときには、該要求信号に基づくサーバとの通信が許可されたかったと判定する構成となる。
【0064】
なお、図5におけるクライアント3とサーバ3との通信シーケンスは、図4と同様である。
【0065】
図6を用いて、メッセージ単位の調停のうち、先にサーバ3と通信中のクライアント3よりも優先順位の高いクライアント2からの要求が送信されてきたときの調停の詳細について説明する。サーバ3は、クライアント3からの要求に基づく処理を中止し、以降、クライアント2からの要求に基づく処理のみを実行する。
【0066】
調停ECU1がクライアント3からの要求31(SF)を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(処理中1)のときに、クライアント2からの要求21(SF)を受信したとき、調停ECU1はクライアント3に対し、処理を中止し要求を受け入れない旨を含む否定応答(SF)を送信する。否定応答は、例えば$21(十六進数の21)で示される。クライアント3は、該否定応答を受信すると、要求に関する処理を終了する。
【0067】
次に、調停ECU1は、クライアント2からの要求を受け入れ、クライアント2からの要求を要求12(SF)としてサーバ3へ送信する。サーバ3は、要求12を受信すると、クライアント3からの要求に基づく処理(処理中1)を中止し、要求12に基づく処理を実行する処理中2の状態となる。そして、処理が終了すると、処理結果を応答12(SF)として調停ECU1に送信する。調停ECU1は、応答12を受信すると、応答22(SF)としてクライアント2に送信する。
【0068】
図7に、図3〜図6における、調停ECU1で実行されるプログラムに含まれる調停処理のフローを示す。クライアント(図3〜図6では、クライアント2に相当)からダイアグ要求(図3〜図6では、「要求」と略記)を受信したとき、その要求がシングルフレーム(SF)通信によるものか否かを判定する(S11)。シングルフレーム通信によるものではないとき(S12:No)、図4のように、マルチフレーム(MF)の残りのフレームを受信する(S15)。そして、ステップS13へ進む。
【0069】
一方、シングルフレーム通信によるものであるとき(S12:Yes)、ステップS13へ進む。ステップS13では、要求先のサーバ(図3〜図6では、サーバ3に相当)が他のクライアント(図3〜図6では、クライアント3に相当)と通信中(図7では、「ダイアグ通信中」と表記)であるか否かを判定する。ダイアグ通信中、つまり他のクライアントの要求に基づく処理を実行中のとき(S13:Yes)、クライアント(2,3)の優先度を比較する。クライアント(2)の優先度が低いとき(S16:No)、クライアント(2)へ否定応答$21を送信する(S17,図5に相当)。
【0070】
一方、ダイアグ通信中でないとき(S13:No)、あるいは、クライアント(2)の優先度が高いとき(S16:Yes)、クライアント(2)からの要求をサーバ(3)へ送信する(S14,図4の後半部あるいは図6に相当)。なお、クライアント(2)の優先度が高いとき(S16:Yes)、先にサーバ(3)と通信中のクライアント(3)に否定応答$21を送信してもよい(図6に相当)。サーバ(3)は、クライアント(3)の要求に基づく処理を中止し、クライアント(2)の要求に基づく処理を実行する。
【0071】
また、クライアント3では、調停ECU1へ要求31を送信してから所定時間以内に調停ECU1からの応答(31)を受信しないときには、要求が受け入れられなかったと判断して、該要求に関する処理を終了してもよい。
【実施例2】
【0072】
図8〜図13を用いて、調停の詳細の第2実施例について説明する。本実施例では、以下のように調停を行う。
・メッセージ単位の調停:優先順位の低いクライアントからの要求信号を待たせて、優先順位の高いクライアントの処理実行後に、優先順位の低いクライアントの処理を実行する。
・フレーム単位の調停:優先順位の低いクライアントからの要求信号を待たせて、優先順位の高いクライアントの処理実行後に、優先順位の低いクライアントの処理を実行する。
すなわち、現在サーバと通信中のクライアントよりも優先順位の高いクライアントからの要求信号があったときには、その要求信号を受け付け、現在サーバと通信中のクライアントの通信を中断して、サーバと優先順位の高いとの通信を行い、該通信終了後に、中断していたサーバとクライアントとの通信を再開する構成である。
【0073】
本実施例では、クライアント2とクライアント3からのサーバ3に対する要求を調停ECU1が調停する。図8の調停ECU1等の構成は、図3と同様である。なお、クライアント2用受信部52a,クライアント3用受信部53aは、一括して受信部として表記してある。
【0074】
図9を用いて、先にサーバ3とクライアント3とが通信中のときに、クライアント3よりも優先順位の低いシングルフレーム通信を行うクライアント2からの要求が送信されたときの、メッセージ単位の調停の詳細について説明する。
【0075】
調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(すなわち、クライアント3からの要求に基づく処理を実行中)のときに、クライアント2からの要求21(SF)を受信したとき、調停ECU1はクライアント2に対し、要求は受け入れたが直ちに処理を行うことができない旨の否定応答コード(SF)を送信する。否定応答は、例えば$78(十六進数の78)で示される。クライアント2は、該否定応答を受信すると、調停ECU1からの応答を受信するまで待機する。クライアント2からの要求21は、要求退避用バッファ56に記憶する。
【0076】
なお、否定応答は、1回のみ送信してもよいし、予め定められたタイミング(例えば、クライアント2で通信のタイムアウトを判定しないような周期)で送信してもよい。
【0077】
サーバ3での処理(処理中1)が終了し、サーバ3が調停ECU1に処理結果を応答11(SF)として送信すると、調停ECU1は、これを応答31(SF)としてクライアント3に送信する。その後、クライアント2からの要求21を要求退避用バッファ56に記憶してあるとき、これを読み出して要求12としてサーバ3に送信する。サーバは要求12を受信すると、その要求に応じた処理を実行する(図4の処理中2のシーケンスに準ずる)。
【0078】
図10を用いて、先にサーバ3とクライアント3とが通信中のときに、クライアント3よりも優先順位の低いマルチフレーム通信を行うクライアント2からの要求が送信されたときの、フレーム単位の調停の詳細について説明する。
【0079】
調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(すなわち、処理中1)のときに、クライアント2からの要求21(FF)を受信したとき、調停ECU1はクライアント2に対し、要求は受け入れたが直ちに処理を行うことができないため待機を指示する旨のFCを送信する。クライアント2は、該FCを受信すると、調停ECU1からの応答を受信するまで待機する。クライアント2からの要求21は、要求退避用バッファ56に記憶する。
【0080】
なお、FCは、1回のみ送信してもよいし、予め定められたタイミング(例えば、クライアント2で通信のタイムアウトを判定しないような周期)で送信してもよい。
【0081】
サーバ3での処理が終了し、サーバ3が調停ECU1に処理結果を応答11(SF)として送信すると、調停ECU1は、これを応答31(SF)としてクライアント3に送信する。その後、クライアント2からの要求21を要求退避用バッファ56に記憶してあるとき、データを受信可能な旨を含むFCをクライアント2に送信する。クライアント2は、該FCを受信すると、要求データの残りのフレームCFを順次送信する。
【0082】
調停ECU1は、CFを全フレーム受信すると、要求12としてサーバ3に送信する。サーバは要求12を受信すると、その要求に応じた処理を実行する(図4の処理中2のシーケンスに準ずる)。
【0083】
なお、図10の構成で、クライアント2からの要求を受け入れないときには、ECU1はクライアント2に最初のFCを送信するタイミングで、図5のような否定応答($21:SF)を送信する。
【0084】
図11を用いて、先にサーバ3と通信中のクライアント3よりも優先順位の高いクライアント2からの要求が送信されてきたときの、メッセージ単位の調停の詳細について説明する。
【0085】
調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(すなわち、処理中1)のときに、クライアント2からの要求21(SF)を受信したとき、調停ECU1はサーバ3にクライアント2からの要求21を要求12として送信する。このとき、クライアント3に対して、要求は受け入れたが直ちに処理を行うことができない旨の否定応答コード(SF)を送信してもよい。否定応答は、例えば$78(十六進数の78)で示される。また、クライアント3からの要求31に基づく処理が終了していないことを、要求退避用バッファ56に記憶する。
【0086】
なお、否定応答は、1回のみ送信してもよいし、予め定められたタイミング(例えば、クライアント3で通信のタイムアウトを判定しないような周期)で送信してもよい。
【0087】
サーバ3は調停ECU1からの要求12を受信すると、クライアント3に対応する処理(処理中1)を一時停止し、必要なデータを退避する。そして、調停ECU1からの要求12に基づくクライアント2に対応する処理(処理中2)を実行する。
【0088】
サーバ3でのクライアント2に対応する処理が終了し、サーバ3が調停ECU1に、処理結果を応答12(SF)として送信すると、調停ECU1は、これを応答21(SF)としてクライアント2に送信する。サーバ3は、要求退避用バッファ56に、クライアント3からの要求31に基づく処理が終了していないことを記憶してある場合には、クライアント3に対応する処理を再開し(処理中11)、該処理が終了すると、処理結果を調停ECU1に応答11(SF)として送信する。調停ECU1は、これを応答31(SF)としてクライアント3に送信する。
【0089】
調停ECU1は、サーバ3からの応答12(SF)を受信したときに、要求退避用バッファ56に、クライアント3からの要求31に基づく処理が終了していないことを記憶してある場合には、サーバ3に対し、クライアント3からの要求31に基づく処理を再開する旨のメッセージを送信してもよい。
【0090】
図12を用いて、先にサーバ3と通信中のクライアント3よりも優先順位の高いクライアント2からの要求信号が送信されてきたときの、フレーム単位の調停の詳細について説明する。
【0091】
調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(すなわち、処理中1)のときに、クライアント2からの要求21(FF)を受信したとき、調停ECU1は、データを受信可能な旨を含むFCをクライアント2に送信する。クライアント2は、該FCを受信すると、要求データの残りのフレームCFを順次送信する。
【0092】
調停ECU1はクライアント2からのフレームを全て受信すると(要求21(FF)を受信したときでもよい)、調停ECU1はサーバ3にクライアント2からの要求21を要求12として送信する。このとき、クライアント3に対して、要求は受け入れたが直ちに処理を行うことができない旨の否定応答コード(SF)を送信してもよい。否定応答は、例えば$78(十六進数の78)で示される。また、クライアント3からの要求31に基づく処理が終了していないことを、要求退避用バッファ56に記憶する。
【0093】
なお、否定応答は、1回のみ送信してもよいし、予め定められたタイミング(例えば、クライアント3で通信のタイムアウトを判定しないような周期)で送信してもよい。
【0094】
サーバ3は調停ECU1からの要求12を受信すると、調停ECU1からの要求11に基づくクライアント3に対応する処理(処理中1)を一時停止し、必要なデータを退避する。そして、調停ECU1からの要求12に基づくクライアント2に対応する処理(処理中2)を実行する。
【0095】
サーバ3でのクライアント2に対応する処理が終了し、サーバ3が調停ECU1に処理結果を応答12(SF)として送信すると、調停ECU1は、これを応答21(SF)としてクライアント2に送信する。その後、サーバ3は、要求退避用バッファ56に、クライアント3からの要求31に基づく処理が終了していないことを記憶してある場合には、クライアント3に対応する処理を再開し(処理中11)、該処理が終了すると、調停ECU1に処理結果を応答11(SF)として送信する。調停ECU1は、これを応答31(SF)としてクライアント3に送信する。
【0096】
調停ECU1は、サーバ3から応答12(SF)を受信したときに、要求退避用バッファ56に、クライアント3からの要求31に基づく処理が終了していないことを記憶してある場合には、サーバ3に対し、クライアント3からの要求31に基づく処理を再開する旨のメッセージを送信してもよい。
【0097】
図13に、図8〜図12における、調停ECU1で実行されるプログラムに含まれる調停処理のフローを示す。クライアント(図8〜図12では、クライアント2に相当)からダイアグ要求(図8〜図12では、「要求」と略記)を受信したとき、その要求がシングルフレーム(SF)通信によるものか否かを判定する(S31)。
【0098】
要求がシングルフレーム通信によるものでないとき(S32:No)、クライアント(2,3)の優先度を比較する。クライアント(2)の優先度が低いとき(S35:No)、クライアント(2)へ待機を指示する旨のFCを送信する(S36)。そして、クライアント(3)と要求先サーバ(サーバ3)のダイアグ通信が終了するのを待つ。この間、予め定められたタイミングでクライアント(2)へFCを送信する(S36)。
【0099】
クライアント(3)と要求先サーバ(サーバ3)のダイアグ通信が終了したとき(S37:Yes)、クライアント(2)からの残りの要求データ(CF)を受信し(S38)、ステップS33へ進む。
【0100】
一方、要求がシングルフレーム通信によるものであるとき(S32:Yes)、あるいは、クライアント(2)の優先度が高いとき(S35:Yes)、ステップS33へ進む、ステップS33では、クライアント(3)と要求先サーバ(サーバ3)との間でダイアグ通信中であるか否かを判定する。
【0101】
ダイアグ通信中であるとき(S33:Yes)、クライアント(2,3)の優先度を比較する。クライアント(2)の優先度が低いとき(S39:No)、クライアント(2)へ直ちに処理を実行できないため待機を指示する旨の否定応答$78(SF)を送信する(S40)。そして、クライアント(3)と要求先サーバ(サーバ3)のダイアグ通信が終了するのを待つ。この間、予め定められたタイミングでクライアント(2)へ否定応答$78を送信する(S40)。
【0102】
クライアント(3)と要求先サーバ(サーバ3)のダイアグ通信が終了したとき(S41:Yes)、ステップS34へ進む。
【0103】
一方、ダイアグ通信中でないとき(S33:No)、あるいは、クライアント(2)の優先度が高いとき(S39:Yes)、ステップS34へ進む、ステップS34では、クライアント(2)からの要求(ダイアグ要求)をサーバ(3)へ送信する。また、他のクライアント(3)とダイアグ通信中のとき、該クライアント(3)へ否定応答$78を送信する。
【0104】
以下、1台のクライアントから複数のサーバに一斉に要求(以下、「一斉通信要求」という)を送信したときの、調停ECU1における調停の詳細について説明する。まず、図14(図22に準ずる),図15を用いて、従来の構成による調停方法について説明する。クライアント間で調停を行う場合には、クライアント1が、クライアント2およびクライアント3との調停機能(11,12)を用いて通信権を獲得した後に、全サーバ(1〜3)に要求1を送信する。これは、サーバ毎に要求を送信するのではなく、1個のデータに全サーバに対する要求を行う意味を持たせる。要求を受信した各サーバは、それぞれ応答(3〜5)を送信する。
【0105】
また、サーバ側で調停を行う場合には、クライアント1からの要求1を受信したときに、それぞれの調停機能(104,204,304)を用いて調停を行った後、それぞれ応答(3〜5)を送信する。この場合、調停の結果、クライアント1からの要求1が優先されないこともありうる。クライアント1が、全サーバからの応答の全てを用いて何らかの解析を行う場合、データが揃わないため解析を実行できないこともある。また、優先されたクライアントの処理が終わった後に、サーバから遅れて応答が送信されたときも、応答データ間の同期がとれないという課題が生ずる。
【実施例3】
【0106】
図16〜図18を用いて、クライアントから一斉通信要求を受信したときの、調停ECU1における調停の詳細の第1実施例について説明する。本実施例では、1台でも他のクライアントとの通信を行っているサーバがあるときには、一斉通信要求を拒否する構成となっている。
【0107】
図16の構成は、図3の構成に、サーバ1,サーバ2を追加し、調停ECU1の要求退避用バッファ56を含まないものであるため、ここでの詳細な説明は割愛する。なお、クライアント2用受信部52a,クライアント3用受信部53aは、一括して受信部として表記してある。
【0108】
図17のように、調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(すなわち、処理中)のときに、クライアント2からの要求21(一斉通信要求:SF,MFのいずれでもよい)を受信したとき、調停ECU1はクライアント2に対し、要求は受け入れることができない旨の否定応答コード(SF)を送信する(応答21)。否定応答は、例えば$21(十六進数の21)で示される。否定応答コードは、図17のように、調停ECU1が各サーバを代行する形でクライアント2に送信してもよいし、1つのメッセージにすべてのサーバを代行する内容を含む形で送信してもよい。
【0109】
この間、サーバ3は、クライアント(3)からの要求に基づく処理を継続し、処理が終了すると、調停ECU1に処理結果を応答11(SF)として送信する。調停ECU1は、これを応答31(SF)としてクライアント3に送信する。
【0110】
図18に、図16,図17における、調停ECU1で実行されるプログラムに含まれる調停処理のフローを示す。まず、クライアント(図16,図17では、クライアント2に相当)からダイアグ要求(図16,図17では、「要求21」と表記)を受信したとき、その要求がシングルフレーム(SF)通信によるものか否かを判定する(S51)。
【0111】
要求がシングルフレーム通信によるものであるとき(S52:Yes)、要求先サーバ(サーバ1〜3)の全てについてダイアグ通信中であるか、すなわち他のクライアントからの要求に基づく処理を行っているか否かを調べる。一方、マルチフレーム(MF)通信によるものであるとき(S52:No)、例えば図4のように、残りのフレームを受信し(S55)、要求先サーバ(サーバ1〜3)の全てについてダイアグ通信中であるか否かを調べる。マルチフレーム(MF)通信のとき、先頭フレーム(FF)を受信したら、要求先サーバの全てについてダイアグ通信中であるか否かを調べてもよい。
【0112】
そして、要求先サーバのうちの全てがダイアグ通信中でないとき(S53:No)、全サーバへ要求を送信する(S54)。この後、各サーバで要求に対応する処理を実行し、調停ECU1でその結果を受信すると、例えば、サーバからの受信順にクライアント(2)へ送信する(図15の応答3,4,5に相当)。
【0113】
一方、要求先サーバの一つでもダイアグ通信中であるとき(S53:Yes)、クライアント(2)へ、要求に応じない旨を示す否定応答コード$21を含む応答21を送信する(S56)。
【0114】
上述の構成で、サーバ3が、クライアント(3)からの要求に基づく処理を終了した後に、調停ECU1が全サーバに対して、クライアント2からの要求を送信するようにしてもよい。
【実施例4】
【0115】
図19〜図21を用いて、クライアントから一斉通信要求を受信したときの、調停の詳細の第2実施例について説明する。本実施例では他のクライアントとの通信を行っていないサーバについては、該要求に対応する処理を実行する。一方、他のクライアントとの通信を行っているサーバについては、否定応答コード$21を送信して要求を拒否するか、否定応答コード$78を送信して他のクライアントとの通信終了後に処理を行うかのいずれかとする。
【0116】
図19の構成は、図3の構成に、サーバ1,サーバ2を追加したものであるため、ここでの詳細な説明は割愛する。
【0117】
図20のように、調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(すなわち、クライアント3からの要求に基づく処理を実行中)のときに、クライアント2からの要求21(一斉通信要求:SF,MFのいずれでもよい)を受信したとき、調停ECU1は、サーバ1,サーバ2に対し、クライアント2からの要求21に対応する要求12を送信する。サーバ1,サーバ2は、他のクライアントからの要求に基づく処理を行っていないので、この要求12に基づく処理を実行し、その結果を応答(12)として調停ECU1に送信する。サーバ1,サーバ2から処理結果を受信した調停ECU1は、それらを受信次第、応答(21)としてクライアント2に送信する。
【0118】
サーバ3は、クライアント3からの要求に基づく処理を実行中であるため、調停ECU1は、以下のうちのいずれかの処理を行う。
・クライアント3からの要求に基づく処理を優先し、クライアント2からの要求は受け付けない。すなわち、調停ECU1は、クライアント2に、要求は受け入れることができない旨の否定応答コード(SF)を送信する(応答21)。否定応答は、例えば$21(十六進数の21)で示される。
【0119】
・クライアント3からの要求に基づく処理を優先し、クライアント2からの要求を待たせる。このとき、調停ECU1は、クライアント2に、要求は受け入れたが直ちに処理を行うことができない旨の否定応答コード(SF)を送信する。否定応答は、例えば$78(十六進数の78)で示される。そして、クライアント3からの要求に基づく処理が終了した後に、サーバ3に、クライアント2からの要求21を要求12として送信する。サーバ3は、クライアント2からの要求に基づく処理を実行して、その結果を調停ECU1に送信する。
【0120】
・クライアント2からの要求を優先し、サーバ3に要求12を送信する。サーバ3は、要求12を受信したら、クライアント3からの要求に基づく処理を中断し、クライアント2からの要求に基づく処理を実行して、その結果を調停ECU1に送信する。調停ECU1はサーバ3から受信した結果を応答21としてクライアント3に送信する。その後、サーバ3は、クライアント3からの要求に基づく処理を再開し、処理終了後、応答11を調停ECU1に送信する。そして、調停ECU1は応答11を応答31としてクライアント3に送信する。クライアント3の処理の中断・再開に関するシーケンスは、図11に準ずる。
【0121】
図21に、図19,図20における、調停ECU1で実行されるプログラムに含まれる調停処理のフローを示す。まず、クライアント(図19,図20では、クライアント2に相当)からダイアグ要求(図19,図20では、「要求21」と表記)を受信したとき、その要求がシングルフレーム(SF)通信によるものか否かを判定する(S71)。
【0122】
要求がシングルフレーム通信によるものであるとき(S72:Yes)、上述のいずれかの方法により調停を行う(S73)。一方、マルチフレーム(MF)通信によるものであるとき(S72:No)、例えば図4のように、残りのフレームを受信し(S74)、上述のいずれかの方法により調停を行う(S73)。
【0123】
以上、本発明の実施の形態を説明したが、これらはあくまで例示にすぎず、本発明はこれらに限定されるものではなく、特許請求の範囲の趣旨を逸脱しない限りにおいて、当業者の知識に基づく種々の変更が可能である。
【符号の説明】
【0124】
サーバ1〜3 サーバ
クライアント1〜3 クライアント
調停ECU1 調停部
54 調停機能(通信状態取得部)
【技術分野】
【0001】
本発明は、車両に搭載された各種装置と、ダイアグテストツールのようなデータ読み出し用端末との通信を効率よく行うための車両用電子制御装置に関する。
【背景技術】
【0002】
車両には電子制御装置(「ECU」ともいう)が多数、例えば、エンジンECU、エンジンの駆動と停止を行いながら車両を走行させるエコランECU、ドアやロックの制御を行うボデーECU、自動変速(AT)制御ECU、エアバッグECU、盗難が発生した場合や盗難が発生する可能性がある事象を検知した場合に警報を発生するセキュリティECU等のような電子制御装置(ECU)が多数搭載されており、各ECUは、担当する制御対象について、単体で独自に制御しているが、他のECUとの情報の授受が必要な場合もある。
【0003】
このため、車両に搭載する複数のECUを関連付けして各種制御を行うために、その複数のECUを共通のバスラインに接続するとともに、代表的標準ネットワーク・プロトコルであるコントロールエリアネットワーク(Controller Area Network、以下CANという)プロトコル等を使用して相互通信制御を行っている。
【0004】
また、各ECUは自己診断機能を備え、信頼性の向上が図られている。すなわち、各ECUはCPUやセンサ類の動作状態を適当な周期で自動的にチェックし、故障時には異常ランプを点灯したり、その故障内容が修理業者に分かるように異常コードを記憶したりするダイアグノーシス(以下、ダイアグという)処理を行っている。そして、このような診断情報(「ダイアグ情報」ともいう)は、修理工場等において、ダイアグテストツール(故障診断用端末)のようなデータ読み出し用端末を診断コネクタ経由でECUに接続することにより読み出すことができ、修理工場では読み出した故障コードに応じた修理が可能となる。
【0005】
ダイアグ通信はCAN通信を用いることが主流になりつつある。ダイアグ通信では、例えば、ECUがその要求を受けてから応答データの送信を開始するまでの時間等、その要求に対するECUの応答特性が法規で定められている。そこで、ダイアグテストツールの要求から車載ECUが最初の応答を行うまでの時間的な制約を満足することができるとともに、従来の車両も規格統一を図ることが可能な通信変換制御装置が考案されている(特許文献1参照)。
【0006】
また、第1ECUにおいて、第2ECUからのアクセス要求を受けたとき、第3ECUからのアクセス要求に応じた処理を実行している最中であれば、その第3ECUからのアクセス要求に応じた処理を開始してからの経過時間と予め定められた一定時間とを比較し、経過時間が一定時間より短ければ、第3ECUからのアクセス要求に応じた処理を中止して第2ECUからのアクセス要求に応じた処理を開始し、経過時間が一定時間より長ければ、第3ECUからのアクセス要求に応じた処理が終了した後に第2ECUからのアクセス要求に応じた処理を開始する通信調停システムが考案されている(特許文献2参照)。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2006−352201号公報
【特許文献2】特開2001−111559号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
図22に、従来技術によるダイアグ通信の概要を示す。図22では、ECUを、故障診断結果を記憶し、クライアントの要求にしたがって通信出力する機能を含むため、サーバと称している。ダイアグ通信による故障診断は、上述のように、主として修理工場やディーラ等で、ダイアグテストツール(クライアント1)により車内LAN40に接続してアクセスするといった限られた範囲から、遠隔地からパソコン(クライアント2)等でインターネット等を経由し車内LAN40に接続してリモート診断したり、車内LAN40上の車両用ナビゲーション装置(ナビ:クライアント3)等の車載装置を用いる等、通信形態が変化しつつある。
【0009】
このように、サーバにアクセス可能なクライアントが増加すると、複数のクライアントから1つのサーバに同時にアクセスする状況も生ずる。しかし、サーバが1台のクライアントとしか通信できない構成のとき、あるいはサーバの処理能力が高くないときには、同時に複数のクライアントから要求信号が送られてくると、サーバ側で通信調停を行う必要がある。
【0010】
サーバ1〜3はECUであるため、周知のマイクロコンピュータ(マイコンともいう),メモリ,センサ信号を取り込む入力回路,アクチュエータを動作させるためのドライバ回路,他のECUとのデータ通信を行う通信回路を含んでいる。但し、図22においては、後述する本発明の構成に関連する各クライアント(1〜3)との通信機能(クライアント1通信機能101等)および調停機能(104等)を示すにとどめ、ECU自体の機能の詳細な説明は割愛する。クライアント通信機能は、例えば周知のLAN通信インターフェース回路として構成され、マイコンの制御に基づいて動作する。また、調停機能は、例えば上述のメモリに記憶された、マイコンが実行するプログラムとして構成される。
【0011】
クライアント(1〜3)は、上述のように、それぞれ、ダイアグテストツール,パソコン,ナビに相当しているが、サーバと同様に、後述する本発明の構成に関連する、他のクライアントとの調停機能(11,12等)および通信機能(13等)を示すにとどめ、各装置が有する本来の機能の詳細な説明は割愛する。他のクライアントとの調停機能は、例えば、それぞれの装置で実行されるプログラムとして構成され、通信機能は、LAN通信インターフェース回路,無線通信回路として構成される。
【0012】
そして、各サーバと各クライアントとは、車内LAN40によりネットワーク接続されている。無論、リモート端末となるクライアント2も、例えば、車内LAN40に接続された無線通信機(図示せず)を介して、車内LAN40に接続している。
【0013】
以下、従来技術による通信調停の概要を述べる。通信調停にはクライアント同士で調停する方法と、サーバ内で調停する方法とがある。クライアント同士で調停する方法は、例えばトークンのような送信権を設定し、この送信権をクライアントが例えば予め定められた順序で獲得し、通信が終了したら(通信を行う必要がないときも)送信権を開放し、次のクライアントが獲得する。クライアント1が送信権を獲得すると、クライアント2との調停機能11およびクライアント3との調停機能12を用いて、クライアント2およびクライアント3にサーバとの通信を行わないよう、データを送信する。そして、クライアント1がサーバ1に要求信号を送信すると、サーバ1がそれに応じて応答信号を返送する。このとき、クライアント2がサーバ1に要求信号を送信しても、サーバ1は通信を行うことができない旨の否定応答信号を返送するか、クライアント1以外からの要求信号に対しては全く応答しない。
【0014】
上述の構成では、クライアントが増加すると、他の全てのクライアントに、新しいクライアントとの調停機能(ハード,ソフトのうちの少なくとも一方)を組み込む必要があり、そのためにROMやRAMの容量に余裕を持たせておかなければならず、コストアップにつながるという課題を生ずる。
【0015】
また、サーバ内で調停する方法は、例えば、サーバ1がクライアント1との通信中に、クライアント2からの通信要求を受信したときには、サーバ1自身が調停機能104を用いて調停を行い、その要求に応答できない旨(否定応答)をクライアント2に送信する。
【0016】
上述の構成では、クライアントが増加すると、全てのサーバに新しいクライアントとの通信機能(ハード,ソフト)を追加するとともに、調停機能の対象に新しいクライアントを含めるための改造(ソフトの修正等)を行う必要があり、いずれもコストアップにつながるという課題を生ずる。
【0017】
上記のような背景に基づいて、本発明の課題は、車両に搭載されたサーバに接続するためのクライアントを追加する際の改造範囲をより小さくし、低コストで改造を行うことが可能な車両用電子制御装置を提供することにある。
【課題を解決するための手段および発明の効果】
【0018】
上記課題を解決するための車両用電子制御装置は、予め定められた機能を実行する1以上のサーバと、サーバとの通信の確立を要求するための要求信号を送信する1以上のクライアントと、サーバとクライアントとの間に介在し、サーバとクライアントとの通信を調停する1つの調停部と、が、ネットワーク上に配置され、調停部は、サーバの通信状態を取得する通信状態取得部を含み、要求信号を受信したとき、該要求信号の対象となるサーバの通信状態に基づいて、該クライアントと該サーバとの通信の確立を許可するか否かを決定することを特徴とする。
【0019】
上記構成によって、従来の構成(例えば、図22)のように、クライアント間で調停したり、サーバ内で調停する必要がなくなり、クライアントおよびサーバの調停機能を調停部に集約できるため、クライアントおよびサーバのハードウェア構成およびソフトウェア構成を簡略化でき、処理負荷を低減できるとともにクライアントおよびサーバのコストダウンも可能となる。
【0020】
また、本発明の車両用電子制御装置における調停部は、要求信号の対象となるサーバが他のクライアントと通信中のとき、要求信号の送信元のクライアントと他のクライアントの通信の優先順位に基づいて、要求信号の送信元のクライアントと該要求信号の対象となるサーバとの通信と、該サーバと他のクライアントとの通信とのうち、いずれを優先させるかの調停を行う。
【0021】
上記構成によって、適切な調停(どのクライアントを優先させるか)を行うことで、ユーザの利便性を確保できる。
【0022】
また、本発明の車両用電子制御装置における要求信号は、複数の通信フレームにより構成され、調停部とクライアントとの間の通信は1フレーム単位で行われ、調停部は、要求信号の最初の通信フレームを受信したときに調停を行う。
【0023】
上記構成によって、要求信号が複数の通信フレームにより構成されるときには、全フレームを受信することなく調停を行うことができるので、要求信号を受信してから調停を行うまでの時間を短縮できる。
【0024】
また、本発明の車両用電子制御装置における調停部は、要求信号に含まれるデータ内容に基づいて、要求信号の送信元のクライアントと該要求信号の対象となるサーバとの通信と、該サーバと他のクライアントとの通信とのうち、いずれを優先させるかの調停を行う。
【0025】
上記構成によって、適切な調停を行うことができるとともに、新たなクライアントを追加しても、調停部で対応する設定操作を行う必要はなく、ユーザの操作負荷を低減することができる。
【0026】
また、本発明の車両用電子制御装置は、クライアント毎に、通信の優先順位が予め定められ、調停部は、要求信号に含まれる優先順位に基づいて、要求信号の送信元のクライアントと要求信号の対象となるサーバとの通信と、該サーバと他のクライアントとの通信とのうち、いずれを優先させるかを決定する。
【0027】
上記構成によっても、適切な調停を行うことができるとともに、新たなクライアントを追加しても、調停部で対応する設定操作を行う必要はなく、ユーザの操作負荷を低減することができる。
【0028】
また、本発明の車両用電子制御装置における調停部は、要求信号の送信元のクライアントの優先順位が、他のクライアントの優先順位よりも低いとき、該クライアントに対し、サーバとの通信が可能になるまで待機する旨の応答、あるいは、該サーバとの通信を不許可とする旨の応答のいずれかを行う。
【0029】
上記構成によって、要求信号の送信元のクライアントの優先順位が、他のクライアントの優先順位よりも低いときに、適切な調停を行うことができる。また、要求信号の送信元のクライアントを、サーバとの通信が可能になるまで待機させる構成のときには、該クライアントの要求にも応じることができる。
【0030】
また、本発明の車両用電子制御装置における調停部は、要求信号の送信元のクライアントの優先順位が、他のクライアントの優先順位よりも高いとき、サーバと他のクライアントとの通信を中断あるいは中止させて、要求信号の送信元のクライアントと要求信号の対象となるサーバとの通信を許可する。また、要求信号の送信元のクライアントを、サーバとの通信が可能になるまで中断させる構成のときには、該クライアントの要求にも応じることができる。
【0031】
上記構成によって、要求信号の送信元のクライアントの優先順位が、他のクライアントの優先順位よりも高いときに、要求信号の送信元のクライアントを優先させることができる。
【0032】
また、本発明の車両用電子制御装置における要求信号は、ネットワーク上に備えられる全てのサーバに対するもので、調停部は、全てのサーバの通信状態に基づいて、該クライアントと該全てのサーバとの通信を許可するか否かを決定する。
【0033】
上記構成によって、クライアントが一度に全てのサーバとの通信を確立したいときにも、適切な調停を行うことができる。
【0034】
また、本発明の車両用電子制御装置における調停部は、サーバあるいはクライアントのいずれか1つに備えられる。
【0035】
上記構成によって、サーバあるいはクライアントと、ハードウェアあるいはソフトウェアの少なくとも一部を共用できるので、調停部の製造コストを低減することができる。
【0036】
また、本発明の車両用電子制御装置は、サーバあるいはクライアントを含む通信ネットワークは複数あり、その通信ネットワーク毎に前記調停部と接続する。
【0037】
上記構成によって、通信ネットワーク系が複数あるときにも、調停部をネットワークのゲートウェイのような位置づけとし、1台の調停部により調停を行うことができる。
【0038】
また、本発明の車両用電子制御装置における調停部は、ネットワーク上に複数備えられる。
【0039】
上記構成によって、クライアントあるいはサーバの数が増加して、調停部1台あたりの調停能力を超えたときにも、調停部を複数配置することで適切な調停を行うことができる。
【図面の簡単な説明】
【0040】
【図1】本発明の車両用電子制御装置の構成を示す図。
【図2】サーバ〜クライアント間の通信について説明する図。
【図3】調停の詳細を説明する図(実施例1)。
【図4】フレーム単位の調停について説明する図(実施例1)。
【図5】メッセージ単位の調停について説明する図(実施例1)。
【図6】メッセージ単位の調停の別例について説明する図(実施例1)。
【図7】調停処理を説明するフロー図(実施例1)。
【図8】調停の詳細を説明する図(実施例2)。
【図9】メッセージ単位の調停について説明する図(実施例2)。
【図10】フレーム単位の調停について説明する図(実施例2)。
【図11】メッセージ単位の調停の別例について説明する図(実施例2)。
【図12】フレーム単位の調停の別例について説明する図(実施例2)。
【図13】調停処理を説明するフロー図(実施例2)。
【図14】従来の構成による一斉通信要求における調停方法を示す構成図。
【図15】従来の構成による一斉通信要求における調停方法を示す図。
【図16】一斉通信要求における調停方法を示す構成図(実施例3)。
【図17】一斉通信要求における調停方法を示す図(実施例3)。
【図18】一斉通信要求における調停処理を説明するフロー図(実施例3)。
【図19】一斉通信要求における調停方法の別例を示す構成図(実施例4)。
【図20】一斉通信要求における調停方法の別例を示す図(実施例4)。
【図21】一斉通信要求における調停処理の別例を説明するフロー図(実施例4)。
【図22】従来技術による車両用電子制御装置の構成を示す図。
【発明を実施するための形態】
【0041】
以下、本発明の車両用電子制御装置について、図面を用いて説明する。図1に、車両用電子制御装置の構成を示す。なお、本構成は、図22の構成において機能を追加・削除したものであるため、図22と同様の構成のものについては同一の符号を付与し、ここでの詳細な説明は割愛する。
【0042】
クライアント1〜3は、図22の構成から、他のクライアントとの調停機能(11,12等:破線枠で表記したもの)が削除されている。また、通信機能(13等)は、主に調停ECU1を介してサーバ1〜3との通信を行うための通信インターフェースである。
【0043】
サーバ1〜3は、図22の構成から、各クライアントとの通信機能のうちの一つがクライアント通信機能(111等)に置き換わり、残り(破線枠で表記したもの)は削除されている。クライアント通信機能は、主に調停ECU1を介してクライアント1〜3との通信を行うための通信インターフェースである。
【0044】
調停ECU1は、図22の構成では各サーバに含まれていた、各クライアントとの通信機能(101等)および調停機能(104等)を1か所(クライアント1通信機能51,クライアント2通信機能52,クライアント3通信機能53,調停機能54)に集約したものである。上述のように、従来はクライアント同士、あるいは、サーバ内で調停していたものを、本発明では、調停ECU1で調停するようにしている。これにより、各クライアント内の、各クライアントとの調整機能、およびサーバ内の調整機能とクライアント毎の通信機能が不要となる。なお、調停ECU1が本発明の調停部に相当する。また、調停機能54が本発明の通信状態取得部に相当する。
【0045】
調停ECUを複数設けてもよい。図1では、調停ECU2が設けられている。構成は調停ECU1と同様である。そして、例えば、調停ECU1は、各クライアントからのサーバ2およびサーバ3に対する要求(本発明の「要求信号」、以下も同様)を調停し、調停ECU2は、各クライアントからのサーバ1に対する要求を調停する。但し、通信効率やコストの面を考慮すると、特にクライアント数が少ないときには、調停ECUは1台であることが望ましい。
【0046】
また、サーバ5を車内LAN40とは別のネットワークである車内LAN41を介して調停ECU1に接続する構成としてもよい。これにより、他の通信系に接続されているサーバへの要求も調停することが可能となる。
【0047】
また、従来構成の、各クライアントとの通信機能401〜403および調停機能404を備えるサーバ4を車内LAN40に接続する構成としてもよい。この場合、調停ECU1,調停ECU2は、サーバ4に対する要求の調停は行わず、通信データの中継のみ行う。このように、新旧のサーバが混在する環境下でも、調停ECU1は柔軟に対応できる。無論、サーバ4の調停機能も調停ECU1に集約することが望ましい。
【0048】
また、調停ECU1の、クライアント通信機能(51〜53)および調停機能54をサーバ1〜3,クライアント1〜3のいずれかに含めてもよい。特に、エンジンECUは、内燃機関を有する車両(ハイブリッド車両を含む)には必ず搭載されているので、調停部として適している。また、電気自動車(ハイブリッド車両を含む)では、調停部を、駆動用モータを制御するモータ制御ECUに含めることが適している。
【0049】
図2に、ダイアグ通信を例に挙げて、サーバ〜クライアント間の通信について説明する。図2の左側は、送信するデータが1つのフレームにより構成されるシングルフレーム(Single Frame:SF)による通信を示したもので、右側は、送信するデータが複数のフレームにより構成されるマルチフレーム(Multi Frame:MF)による通信を示したものである。
【0050】
シングルフレーム通信の場合は、クライアントがサーバに対して何らかの要求(例えば、故障診断用のデータであるダイアグデータの送信要求)を送信すると、サーバでその要求を解析し、解析結果に応じたサービス(データ読み出し等)を実行し、その結果(読み出したデータ等)をクライアントに送信する。シングルフレーム通信では、1フレーム=1メッセージであるため、フレームレベルでの調停ができないので、メッセージ単位での調停を行う。
【0051】
マルチフレーム通信の場合は、クライアントがサーバに対して何らかの要求(データ要求)を行う要求を送信する際、まず、マルチフレーム(MF)で構成される要求の先頭フレーム(First Frame:FF)を送信する。サーバは、先頭フレーム(FF)を受信すると、受信可能な旨を含むFC(Flow Control)をクライアントに送信する。クライアントは、該FCを受信すると、要求の残りのフレーム(Consecutive Frame:CF)を順次送信する。
【0052】
サーバは、全フレームを受信すると、その要求を解析し、解析結果に応じたサービスを行い、その結果をマルチフレームでクライアントに送信する。すなわち、まず、サーバは、応答の先頭フレーム(FF)を送信し、クライアントからの受信可能な旨を含むFCを受信した後、応答の残りのフレーム(CF)を順次送信する。マルチフレーム通信では、複数フレーム=1メッセージであるため、フレーム単位での調停が必要となる。
【0053】
なお、CANベースの診断インターフェースは、ISO15765−2(フレームに関するもの),ISO14229−1(メッセージの構築に関するもの)の規定に基づいている。
【0054】
以下、調停ECU1におけるメッセージ単位およびフレーム単位での調停の詳細について説明する。なお、調停の優先順位は、以下のうちの一つ、あるいは複数の組み合わせを用いる。
・先に要求信号を受信したクライアントを優先する。
・後から要求信号を受信したクライアントを優先する。
・予めクライアントに優先順位を設定し、要求信号を受信したクライアントの優先順位を比較する。例えば、ダイアグテストツール(優先順位:高)>車載装置(ナビ等)>リモート端末(優先順位:低)。
・要求信号の内容に応じて優先順位が予め定められる。例えば、要求信号に含まれるSID:サービスIDに優先順位を含ませる。優先順位は調停ECU1に記憶する。
【実施例1】
【0055】
図3〜図7を用いて、調停の詳細の第1実施例について説明する。本実施例では、以下のように調停を行う。
・メッセージ単位の調停:現在サーバと通信中のクライアントよりも優先順位の低いクライアントからの要求は受け付けない。
・フレーム単位の調停:現在サーバと通信中のクライアントよりも優先順位の低いクライアントからの要求があったときには、その要求を受け付け、現在サーバと通信中のクライアントの処理終了後に、サーバとの通信を許可する。
【0056】
図3を用いて、本実施例における車両用電子制御装置の構成の概要を説明する。本実施例では、クライアント2とクライアント3からのサーバ3に対する要求を調停ECU1が調停する。調停ECU1は、図1の構成に加え、クライアント2通信機能52に含まれるクライアント2用受信部52a、クライアント3通信機能53に含まれるクライアント3用受信部53a、クライアント2,3にデータを送信する送信部55(対象クライアント毎にクライアント2通信機能52,クライアント3通信機能53に送信部を含む構成でもよい)、図示しないメモリの一部に確保される要求退避用バッファ56を備えている。
【0057】
図4を用いて、先にサーバ3とクライアント3とが通信中のときに、クライアント3よりも優先順位の低いマルチフレーム通信を行うクライアント2からの要求が送信されときの調停のうち、フレーム単位の調停の詳細について説明する。
【0058】
クライアント3からの要求31(SF)を受信した調停ECU1は、要求先のサーバ3がアイドル状態であるとき、その要求を要求11(SF)としてサーバ3に送信する。サーバ3は、受信した要求11に基づいて図2で説明したような処理を実行し(処理中1)、処理結果を応答11(SF)として調停ECU1に送信する。調停ECU1は、受信した応答11を応答31(SF)としてクライアント3に送信する。
【0059】
調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中のときに、クライアント2からの要求21の先頭フレーム(FF)を受信したとき、クライアント2に対し、受信可能な旨を含むFCを送信する。クライアント2は、該FCを受信すると、要求の残りのフレームCFを、調停ECU1に順次送信する。クライアント2からの要求は、要求退避用バッファ56に記憶する。
【0060】
調停ECU1は、サーバ3がクライアント3からの要求に対する処理(処理中1)が終了するのを待つ。すなわち、サーバ3から応答11(SF)が送信されてくるのを待つ。そして、サーバ3からの応答11(SF)を受信すると、クライアント3にその旨を応答31(SF)として送信する。その後、クライアント2からの要求データが要求退避用バッファ56に記憶されているとき、これを読み出して要求12(SF)としてサーバ3に送信する。サーバ3は、受信した要求12に基づいて図2で説明したような処理を実行し(処理中2)、処理結果を応答12(SF)として調停ECU1に送信する。調停ECU1は、受信した応答12を応答22(FF)としてクライアント2に送信する。以降、図2と同様に、クライアント2からの受信可能な旨を含むFCデータを受信した後、応答の残りのフレーム(CF)を順次送信する。
【0061】
図5を用いて、メッセージ単位の調停のうち、先にサーバ3と通信中のクライアント3よりも優先順位の低いクライアント2からの要求が送信されたときの調停の詳細について説明する。サーバ3は、クライアント3からの要求に基づく処理のみを実行する。クライアント2からの要求は拒否する。
【0062】
調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中のときに、クライアント2からの要求21(SF)を受信したとき、調停ECU1はクライアント2に対し、要求を受け入れない旨を含む否定応答コード(SF)を送信する。否定応答は、例えば$21(十六進数の21)で示される。クライアント2は、該否定応答を受信すると、要求に関する処理を終了する。
【0063】
また、調停ECU1がクライアント2からの要求21を受信したとき、調停ECU1はその要求に対し無応答としてもよい。クライアント2では、要求21を送信してからの経過時間を測定し、予め定められた時間が経過した(すなわち、応答待ちタイムアウトした)ときに、調停ECU1では要求が受け入れられなかったと判断し、要求に関する処理を終了する。すなわち、クライアントは、要求信号を送信後、予め定められた時間内に調停部からの応答を受信しないときには、該要求信号に基づくサーバとの通信が許可されたかったと判定する構成となる。
【0064】
なお、図5におけるクライアント3とサーバ3との通信シーケンスは、図4と同様である。
【0065】
図6を用いて、メッセージ単位の調停のうち、先にサーバ3と通信中のクライアント3よりも優先順位の高いクライアント2からの要求が送信されてきたときの調停の詳細について説明する。サーバ3は、クライアント3からの要求に基づく処理を中止し、以降、クライアント2からの要求に基づく処理のみを実行する。
【0066】
調停ECU1がクライアント3からの要求31(SF)を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(処理中1)のときに、クライアント2からの要求21(SF)を受信したとき、調停ECU1はクライアント3に対し、処理を中止し要求を受け入れない旨を含む否定応答(SF)を送信する。否定応答は、例えば$21(十六進数の21)で示される。クライアント3は、該否定応答を受信すると、要求に関する処理を終了する。
【0067】
次に、調停ECU1は、クライアント2からの要求を受け入れ、クライアント2からの要求を要求12(SF)としてサーバ3へ送信する。サーバ3は、要求12を受信すると、クライアント3からの要求に基づく処理(処理中1)を中止し、要求12に基づく処理を実行する処理中2の状態となる。そして、処理が終了すると、処理結果を応答12(SF)として調停ECU1に送信する。調停ECU1は、応答12を受信すると、応答22(SF)としてクライアント2に送信する。
【0068】
図7に、図3〜図6における、調停ECU1で実行されるプログラムに含まれる調停処理のフローを示す。クライアント(図3〜図6では、クライアント2に相当)からダイアグ要求(図3〜図6では、「要求」と略記)を受信したとき、その要求がシングルフレーム(SF)通信によるものか否かを判定する(S11)。シングルフレーム通信によるものではないとき(S12:No)、図4のように、マルチフレーム(MF)の残りのフレームを受信する(S15)。そして、ステップS13へ進む。
【0069】
一方、シングルフレーム通信によるものであるとき(S12:Yes)、ステップS13へ進む。ステップS13では、要求先のサーバ(図3〜図6では、サーバ3に相当)が他のクライアント(図3〜図6では、クライアント3に相当)と通信中(図7では、「ダイアグ通信中」と表記)であるか否かを判定する。ダイアグ通信中、つまり他のクライアントの要求に基づく処理を実行中のとき(S13:Yes)、クライアント(2,3)の優先度を比較する。クライアント(2)の優先度が低いとき(S16:No)、クライアント(2)へ否定応答$21を送信する(S17,図5に相当)。
【0070】
一方、ダイアグ通信中でないとき(S13:No)、あるいは、クライアント(2)の優先度が高いとき(S16:Yes)、クライアント(2)からの要求をサーバ(3)へ送信する(S14,図4の後半部あるいは図6に相当)。なお、クライアント(2)の優先度が高いとき(S16:Yes)、先にサーバ(3)と通信中のクライアント(3)に否定応答$21を送信してもよい(図6に相当)。サーバ(3)は、クライアント(3)の要求に基づく処理を中止し、クライアント(2)の要求に基づく処理を実行する。
【0071】
また、クライアント3では、調停ECU1へ要求31を送信してから所定時間以内に調停ECU1からの応答(31)を受信しないときには、要求が受け入れられなかったと判断して、該要求に関する処理を終了してもよい。
【実施例2】
【0072】
図8〜図13を用いて、調停の詳細の第2実施例について説明する。本実施例では、以下のように調停を行う。
・メッセージ単位の調停:優先順位の低いクライアントからの要求信号を待たせて、優先順位の高いクライアントの処理実行後に、優先順位の低いクライアントの処理を実行する。
・フレーム単位の調停:優先順位の低いクライアントからの要求信号を待たせて、優先順位の高いクライアントの処理実行後に、優先順位の低いクライアントの処理を実行する。
すなわち、現在サーバと通信中のクライアントよりも優先順位の高いクライアントからの要求信号があったときには、その要求信号を受け付け、現在サーバと通信中のクライアントの通信を中断して、サーバと優先順位の高いとの通信を行い、該通信終了後に、中断していたサーバとクライアントとの通信を再開する構成である。
【0073】
本実施例では、クライアント2とクライアント3からのサーバ3に対する要求を調停ECU1が調停する。図8の調停ECU1等の構成は、図3と同様である。なお、クライアント2用受信部52a,クライアント3用受信部53aは、一括して受信部として表記してある。
【0074】
図9を用いて、先にサーバ3とクライアント3とが通信中のときに、クライアント3よりも優先順位の低いシングルフレーム通信を行うクライアント2からの要求が送信されたときの、メッセージ単位の調停の詳細について説明する。
【0075】
調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(すなわち、クライアント3からの要求に基づく処理を実行中)のときに、クライアント2からの要求21(SF)を受信したとき、調停ECU1はクライアント2に対し、要求は受け入れたが直ちに処理を行うことができない旨の否定応答コード(SF)を送信する。否定応答は、例えば$78(十六進数の78)で示される。クライアント2は、該否定応答を受信すると、調停ECU1からの応答を受信するまで待機する。クライアント2からの要求21は、要求退避用バッファ56に記憶する。
【0076】
なお、否定応答は、1回のみ送信してもよいし、予め定められたタイミング(例えば、クライアント2で通信のタイムアウトを判定しないような周期)で送信してもよい。
【0077】
サーバ3での処理(処理中1)が終了し、サーバ3が調停ECU1に処理結果を応答11(SF)として送信すると、調停ECU1は、これを応答31(SF)としてクライアント3に送信する。その後、クライアント2からの要求21を要求退避用バッファ56に記憶してあるとき、これを読み出して要求12としてサーバ3に送信する。サーバは要求12を受信すると、その要求に応じた処理を実行する(図4の処理中2のシーケンスに準ずる)。
【0078】
図10を用いて、先にサーバ3とクライアント3とが通信中のときに、クライアント3よりも優先順位の低いマルチフレーム通信を行うクライアント2からの要求が送信されたときの、フレーム単位の調停の詳細について説明する。
【0079】
調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(すなわち、処理中1)のときに、クライアント2からの要求21(FF)を受信したとき、調停ECU1はクライアント2に対し、要求は受け入れたが直ちに処理を行うことができないため待機を指示する旨のFCを送信する。クライアント2は、該FCを受信すると、調停ECU1からの応答を受信するまで待機する。クライアント2からの要求21は、要求退避用バッファ56に記憶する。
【0080】
なお、FCは、1回のみ送信してもよいし、予め定められたタイミング(例えば、クライアント2で通信のタイムアウトを判定しないような周期)で送信してもよい。
【0081】
サーバ3での処理が終了し、サーバ3が調停ECU1に処理結果を応答11(SF)として送信すると、調停ECU1は、これを応答31(SF)としてクライアント3に送信する。その後、クライアント2からの要求21を要求退避用バッファ56に記憶してあるとき、データを受信可能な旨を含むFCをクライアント2に送信する。クライアント2は、該FCを受信すると、要求データの残りのフレームCFを順次送信する。
【0082】
調停ECU1は、CFを全フレーム受信すると、要求12としてサーバ3に送信する。サーバは要求12を受信すると、その要求に応じた処理を実行する(図4の処理中2のシーケンスに準ずる)。
【0083】
なお、図10の構成で、クライアント2からの要求を受け入れないときには、ECU1はクライアント2に最初のFCを送信するタイミングで、図5のような否定応答($21:SF)を送信する。
【0084】
図11を用いて、先にサーバ3と通信中のクライアント3よりも優先順位の高いクライアント2からの要求が送信されてきたときの、メッセージ単位の調停の詳細について説明する。
【0085】
調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(すなわち、処理中1)のときに、クライアント2からの要求21(SF)を受信したとき、調停ECU1はサーバ3にクライアント2からの要求21を要求12として送信する。このとき、クライアント3に対して、要求は受け入れたが直ちに処理を行うことができない旨の否定応答コード(SF)を送信してもよい。否定応答は、例えば$78(十六進数の78)で示される。また、クライアント3からの要求31に基づく処理が終了していないことを、要求退避用バッファ56に記憶する。
【0086】
なお、否定応答は、1回のみ送信してもよいし、予め定められたタイミング(例えば、クライアント3で通信のタイムアウトを判定しないような周期)で送信してもよい。
【0087】
サーバ3は調停ECU1からの要求12を受信すると、クライアント3に対応する処理(処理中1)を一時停止し、必要なデータを退避する。そして、調停ECU1からの要求12に基づくクライアント2に対応する処理(処理中2)を実行する。
【0088】
サーバ3でのクライアント2に対応する処理が終了し、サーバ3が調停ECU1に、処理結果を応答12(SF)として送信すると、調停ECU1は、これを応答21(SF)としてクライアント2に送信する。サーバ3は、要求退避用バッファ56に、クライアント3からの要求31に基づく処理が終了していないことを記憶してある場合には、クライアント3に対応する処理を再開し(処理中11)、該処理が終了すると、処理結果を調停ECU1に応答11(SF)として送信する。調停ECU1は、これを応答31(SF)としてクライアント3に送信する。
【0089】
調停ECU1は、サーバ3からの応答12(SF)を受信したときに、要求退避用バッファ56に、クライアント3からの要求31に基づく処理が終了していないことを記憶してある場合には、サーバ3に対し、クライアント3からの要求31に基づく処理を再開する旨のメッセージを送信してもよい。
【0090】
図12を用いて、先にサーバ3と通信中のクライアント3よりも優先順位の高いクライアント2からの要求信号が送信されてきたときの、フレーム単位の調停の詳細について説明する。
【0091】
調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(すなわち、処理中1)のときに、クライアント2からの要求21(FF)を受信したとき、調停ECU1は、データを受信可能な旨を含むFCをクライアント2に送信する。クライアント2は、該FCを受信すると、要求データの残りのフレームCFを順次送信する。
【0092】
調停ECU1はクライアント2からのフレームを全て受信すると(要求21(FF)を受信したときでもよい)、調停ECU1はサーバ3にクライアント2からの要求21を要求12として送信する。このとき、クライアント3に対して、要求は受け入れたが直ちに処理を行うことができない旨の否定応答コード(SF)を送信してもよい。否定応答は、例えば$78(十六進数の78)で示される。また、クライアント3からの要求31に基づく処理が終了していないことを、要求退避用バッファ56に記憶する。
【0093】
なお、否定応答は、1回のみ送信してもよいし、予め定められたタイミング(例えば、クライアント3で通信のタイムアウトを判定しないような周期)で送信してもよい。
【0094】
サーバ3は調停ECU1からの要求12を受信すると、調停ECU1からの要求11に基づくクライアント3に対応する処理(処理中1)を一時停止し、必要なデータを退避する。そして、調停ECU1からの要求12に基づくクライアント2に対応する処理(処理中2)を実行する。
【0095】
サーバ3でのクライアント2に対応する処理が終了し、サーバ3が調停ECU1に処理結果を応答12(SF)として送信すると、調停ECU1は、これを応答21(SF)としてクライアント2に送信する。その後、サーバ3は、要求退避用バッファ56に、クライアント3からの要求31に基づく処理が終了していないことを記憶してある場合には、クライアント3に対応する処理を再開し(処理中11)、該処理が終了すると、調停ECU1に処理結果を応答11(SF)として送信する。調停ECU1は、これを応答31(SF)としてクライアント3に送信する。
【0096】
調停ECU1は、サーバ3から応答12(SF)を受信したときに、要求退避用バッファ56に、クライアント3からの要求31に基づく処理が終了していないことを記憶してある場合には、サーバ3に対し、クライアント3からの要求31に基づく処理を再開する旨のメッセージを送信してもよい。
【0097】
図13に、図8〜図12における、調停ECU1で実行されるプログラムに含まれる調停処理のフローを示す。クライアント(図8〜図12では、クライアント2に相当)からダイアグ要求(図8〜図12では、「要求」と略記)を受信したとき、その要求がシングルフレーム(SF)通信によるものか否かを判定する(S31)。
【0098】
要求がシングルフレーム通信によるものでないとき(S32:No)、クライアント(2,3)の優先度を比較する。クライアント(2)の優先度が低いとき(S35:No)、クライアント(2)へ待機を指示する旨のFCを送信する(S36)。そして、クライアント(3)と要求先サーバ(サーバ3)のダイアグ通信が終了するのを待つ。この間、予め定められたタイミングでクライアント(2)へFCを送信する(S36)。
【0099】
クライアント(3)と要求先サーバ(サーバ3)のダイアグ通信が終了したとき(S37:Yes)、クライアント(2)からの残りの要求データ(CF)を受信し(S38)、ステップS33へ進む。
【0100】
一方、要求がシングルフレーム通信によるものであるとき(S32:Yes)、あるいは、クライアント(2)の優先度が高いとき(S35:Yes)、ステップS33へ進む、ステップS33では、クライアント(3)と要求先サーバ(サーバ3)との間でダイアグ通信中であるか否かを判定する。
【0101】
ダイアグ通信中であるとき(S33:Yes)、クライアント(2,3)の優先度を比較する。クライアント(2)の優先度が低いとき(S39:No)、クライアント(2)へ直ちに処理を実行できないため待機を指示する旨の否定応答$78(SF)を送信する(S40)。そして、クライアント(3)と要求先サーバ(サーバ3)のダイアグ通信が終了するのを待つ。この間、予め定められたタイミングでクライアント(2)へ否定応答$78を送信する(S40)。
【0102】
クライアント(3)と要求先サーバ(サーバ3)のダイアグ通信が終了したとき(S41:Yes)、ステップS34へ進む。
【0103】
一方、ダイアグ通信中でないとき(S33:No)、あるいは、クライアント(2)の優先度が高いとき(S39:Yes)、ステップS34へ進む、ステップS34では、クライアント(2)からの要求(ダイアグ要求)をサーバ(3)へ送信する。また、他のクライアント(3)とダイアグ通信中のとき、該クライアント(3)へ否定応答$78を送信する。
【0104】
以下、1台のクライアントから複数のサーバに一斉に要求(以下、「一斉通信要求」という)を送信したときの、調停ECU1における調停の詳細について説明する。まず、図14(図22に準ずる),図15を用いて、従来の構成による調停方法について説明する。クライアント間で調停を行う場合には、クライアント1が、クライアント2およびクライアント3との調停機能(11,12)を用いて通信権を獲得した後に、全サーバ(1〜3)に要求1を送信する。これは、サーバ毎に要求を送信するのではなく、1個のデータに全サーバに対する要求を行う意味を持たせる。要求を受信した各サーバは、それぞれ応答(3〜5)を送信する。
【0105】
また、サーバ側で調停を行う場合には、クライアント1からの要求1を受信したときに、それぞれの調停機能(104,204,304)を用いて調停を行った後、それぞれ応答(3〜5)を送信する。この場合、調停の結果、クライアント1からの要求1が優先されないこともありうる。クライアント1が、全サーバからの応答の全てを用いて何らかの解析を行う場合、データが揃わないため解析を実行できないこともある。また、優先されたクライアントの処理が終わった後に、サーバから遅れて応答が送信されたときも、応答データ間の同期がとれないという課題が生ずる。
【実施例3】
【0106】
図16〜図18を用いて、クライアントから一斉通信要求を受信したときの、調停ECU1における調停の詳細の第1実施例について説明する。本実施例では、1台でも他のクライアントとの通信を行っているサーバがあるときには、一斉通信要求を拒否する構成となっている。
【0107】
図16の構成は、図3の構成に、サーバ1,サーバ2を追加し、調停ECU1の要求退避用バッファ56を含まないものであるため、ここでの詳細な説明は割愛する。なお、クライアント2用受信部52a,クライアント3用受信部53aは、一括して受信部として表記してある。
【0108】
図17のように、調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(すなわち、処理中)のときに、クライアント2からの要求21(一斉通信要求:SF,MFのいずれでもよい)を受信したとき、調停ECU1はクライアント2に対し、要求は受け入れることができない旨の否定応答コード(SF)を送信する(応答21)。否定応答は、例えば$21(十六進数の21)で示される。否定応答コードは、図17のように、調停ECU1が各サーバを代行する形でクライアント2に送信してもよいし、1つのメッセージにすべてのサーバを代行する内容を含む形で送信してもよい。
【0109】
この間、サーバ3は、クライアント(3)からの要求に基づく処理を継続し、処理が終了すると、調停ECU1に処理結果を応答11(SF)として送信する。調停ECU1は、これを応答31(SF)としてクライアント3に送信する。
【0110】
図18に、図16,図17における、調停ECU1で実行されるプログラムに含まれる調停処理のフローを示す。まず、クライアント(図16,図17では、クライアント2に相当)からダイアグ要求(図16,図17では、「要求21」と表記)を受信したとき、その要求がシングルフレーム(SF)通信によるものか否かを判定する(S51)。
【0111】
要求がシングルフレーム通信によるものであるとき(S52:Yes)、要求先サーバ(サーバ1〜3)の全てについてダイアグ通信中であるか、すなわち他のクライアントからの要求に基づく処理を行っているか否かを調べる。一方、マルチフレーム(MF)通信によるものであるとき(S52:No)、例えば図4のように、残りのフレームを受信し(S55)、要求先サーバ(サーバ1〜3)の全てについてダイアグ通信中であるか否かを調べる。マルチフレーム(MF)通信のとき、先頭フレーム(FF)を受信したら、要求先サーバの全てについてダイアグ通信中であるか否かを調べてもよい。
【0112】
そして、要求先サーバのうちの全てがダイアグ通信中でないとき(S53:No)、全サーバへ要求を送信する(S54)。この後、各サーバで要求に対応する処理を実行し、調停ECU1でその結果を受信すると、例えば、サーバからの受信順にクライアント(2)へ送信する(図15の応答3,4,5に相当)。
【0113】
一方、要求先サーバの一つでもダイアグ通信中であるとき(S53:Yes)、クライアント(2)へ、要求に応じない旨を示す否定応答コード$21を含む応答21を送信する(S56)。
【0114】
上述の構成で、サーバ3が、クライアント(3)からの要求に基づく処理を終了した後に、調停ECU1が全サーバに対して、クライアント2からの要求を送信するようにしてもよい。
【実施例4】
【0115】
図19〜図21を用いて、クライアントから一斉通信要求を受信したときの、調停の詳細の第2実施例について説明する。本実施例では他のクライアントとの通信を行っていないサーバについては、該要求に対応する処理を実行する。一方、他のクライアントとの通信を行っているサーバについては、否定応答コード$21を送信して要求を拒否するか、否定応答コード$78を送信して他のクライアントとの通信終了後に処理を行うかのいずれかとする。
【0116】
図19の構成は、図3の構成に、サーバ1,サーバ2を追加したものであるため、ここでの詳細な説明は割愛する。
【0117】
図20のように、調停ECU1がクライアント3からの要求31を受信して、サーバ3に要求11(SF)を送信し、サーバ3と通信中(すなわち、クライアント3からの要求に基づく処理を実行中)のときに、クライアント2からの要求21(一斉通信要求:SF,MFのいずれでもよい)を受信したとき、調停ECU1は、サーバ1,サーバ2に対し、クライアント2からの要求21に対応する要求12を送信する。サーバ1,サーバ2は、他のクライアントからの要求に基づく処理を行っていないので、この要求12に基づく処理を実行し、その結果を応答(12)として調停ECU1に送信する。サーバ1,サーバ2から処理結果を受信した調停ECU1は、それらを受信次第、応答(21)としてクライアント2に送信する。
【0118】
サーバ3は、クライアント3からの要求に基づく処理を実行中であるため、調停ECU1は、以下のうちのいずれかの処理を行う。
・クライアント3からの要求に基づく処理を優先し、クライアント2からの要求は受け付けない。すなわち、調停ECU1は、クライアント2に、要求は受け入れることができない旨の否定応答コード(SF)を送信する(応答21)。否定応答は、例えば$21(十六進数の21)で示される。
【0119】
・クライアント3からの要求に基づく処理を優先し、クライアント2からの要求を待たせる。このとき、調停ECU1は、クライアント2に、要求は受け入れたが直ちに処理を行うことができない旨の否定応答コード(SF)を送信する。否定応答は、例えば$78(十六進数の78)で示される。そして、クライアント3からの要求に基づく処理が終了した後に、サーバ3に、クライアント2からの要求21を要求12として送信する。サーバ3は、クライアント2からの要求に基づく処理を実行して、その結果を調停ECU1に送信する。
【0120】
・クライアント2からの要求を優先し、サーバ3に要求12を送信する。サーバ3は、要求12を受信したら、クライアント3からの要求に基づく処理を中断し、クライアント2からの要求に基づく処理を実行して、その結果を調停ECU1に送信する。調停ECU1はサーバ3から受信した結果を応答21としてクライアント3に送信する。その後、サーバ3は、クライアント3からの要求に基づく処理を再開し、処理終了後、応答11を調停ECU1に送信する。そして、調停ECU1は応答11を応答31としてクライアント3に送信する。クライアント3の処理の中断・再開に関するシーケンスは、図11に準ずる。
【0121】
図21に、図19,図20における、調停ECU1で実行されるプログラムに含まれる調停処理のフローを示す。まず、クライアント(図19,図20では、クライアント2に相当)からダイアグ要求(図19,図20では、「要求21」と表記)を受信したとき、その要求がシングルフレーム(SF)通信によるものか否かを判定する(S71)。
【0122】
要求がシングルフレーム通信によるものであるとき(S72:Yes)、上述のいずれかの方法により調停を行う(S73)。一方、マルチフレーム(MF)通信によるものであるとき(S72:No)、例えば図4のように、残りのフレームを受信し(S74)、上述のいずれかの方法により調停を行う(S73)。
【0123】
以上、本発明の実施の形態を説明したが、これらはあくまで例示にすぎず、本発明はこれらに限定されるものではなく、特許請求の範囲の趣旨を逸脱しない限りにおいて、当業者の知識に基づく種々の変更が可能である。
【符号の説明】
【0124】
サーバ1〜3 サーバ
クライアント1〜3 クライアント
調停ECU1 調停部
54 調停機能(通信状態取得部)
【特許請求の範囲】
【請求項1】
予め定められた機能を実行する1以上のサーバと、
前記サーバとの通信の確立を要求するための要求信号を送信する1以上のクライアントと、
前記サーバと前記クライアントとの間に介在し、前記サーバと前記クライアントとの通信を調停する1つの調停部と、
が、ネットワーク上に配置され、
前記調停部は、
前記サーバの通信状態を取得する通信状態取得部を含み、
前記要求信号を受信したとき、該要求信号の対象となるサーバの通信状態に基づいて、該クライアントと該サーバとの通信の確立を許可するか否かを決定することを特徴とする車両用電子制御装置。
【請求項2】
前記調停部は、前記要求信号の対象となるサーバが他のクライアントと通信中のとき、前記要求信号の送信元のクライアントと前記他のクライアントの通信の優先順位に基づいて、前記要求信号の送信元のクライアントと該要求信号の対象となるサーバとの通信と、該サーバと前記他のクライアントとの通信とのうち、いずれを優先させるかの調停を行う請求項1に記載の車両用電子制御装置。
【請求項3】
前記要求信号は、複数の通信フレームにより構成され、
前記調停部と前記クライアントとの間の通信は1フレーム単位で行われ、
前記調停部は、前記要求信号の最初の通信フレームを受信したときに前記調停を行う請求項2に記載の車両用電子制御装置。
【請求項4】
前記調停部は、前記要求信号に含まれるデータ内容に基づいて、前記要求信号の送信元のクライアントと該要求信号の対象となるサーバとの通信と、該サーバと前記他のクライアントとの通信とのうち、いずれを優先させるかの調停を行う請求項2または請求項3に記載の車両用電子制御装置。
【請求項5】
前記クライアントは、それぞれ通信の優先順位が予め定められ、
前記調停部は、前記要求信号に含まれる前記優先順位に基づいて、前記要求信号の送信元のクライアントと前記要求信号の対象となるサーバとの通信と、該サーバと前記他のクライアントとの通信とのうち、いずれを優先させるかを決定する請求項2ないし請求項4のいずれか1項に記載の車両用電子制御装置。
【請求項6】
前記調停部は、前記要求信号の送信元のクライアントの前記優先順位が、前記他のクライアントの前記優先順位よりも低いとき、該クライアントに対し、前記サーバとの通信が可能になるまで待機する旨の応答、あるいは、該サーバとの通信を不許可とする旨の応答のいずれかを行う請求項2ないし請求項5のいずれか1項に記載の車両用電子制御装置。
【請求項7】
前記調停部は、前記要求信号の送信元のクライアントの前記優先順位が、前記他のクライアントの前記優先順位よりも高いとき、前記サーバと前記他のクライアントとの通信を中断あるいは中止させて、前記要求信号の送信元のクライアントと前記要求信号の対象となるサーバとの通信を許可する請求項2ないし請求項6のいずれか1項に記載の車両用電子制御装置。
【請求項8】
前記要求信号は、前記ネットワーク上に備えられる全ての前記サーバに対するもので、
前記調停部は、全ての前記サーバの通信状態に基づいて、該クライアントと該全てのサーバとの通信を許可するか否かを決定する請求項1ないし請求項7のいずれか1項に記載の車両用電子制御装置。
【請求項9】
前記調停部は、前記サーバあるいは前記クライアントのいずれか1つに備えられる請求項1ないし請求項8のいずれか1項に記載の車両用電子制御装置。
【請求項10】
前記サーバあるいは前記クライアントを含む通信ネットワークは複数あり、その通信ネットワーク毎に前記調停部と接続する請求項1ないし請求項9のいずれか1項に記載の車両用電子制御装置。
【請求項11】
前記調停部は、前記ネットワーク上に複数備えられる請求項1ないし請求項10のいずれか1項に記載の車両用電子制御装置。
【請求項1】
予め定められた機能を実行する1以上のサーバと、
前記サーバとの通信の確立を要求するための要求信号を送信する1以上のクライアントと、
前記サーバと前記クライアントとの間に介在し、前記サーバと前記クライアントとの通信を調停する1つの調停部と、
が、ネットワーク上に配置され、
前記調停部は、
前記サーバの通信状態を取得する通信状態取得部を含み、
前記要求信号を受信したとき、該要求信号の対象となるサーバの通信状態に基づいて、該クライアントと該サーバとの通信の確立を許可するか否かを決定することを特徴とする車両用電子制御装置。
【請求項2】
前記調停部は、前記要求信号の対象となるサーバが他のクライアントと通信中のとき、前記要求信号の送信元のクライアントと前記他のクライアントの通信の優先順位に基づいて、前記要求信号の送信元のクライアントと該要求信号の対象となるサーバとの通信と、該サーバと前記他のクライアントとの通信とのうち、いずれを優先させるかの調停を行う請求項1に記載の車両用電子制御装置。
【請求項3】
前記要求信号は、複数の通信フレームにより構成され、
前記調停部と前記クライアントとの間の通信は1フレーム単位で行われ、
前記調停部は、前記要求信号の最初の通信フレームを受信したときに前記調停を行う請求項2に記載の車両用電子制御装置。
【請求項4】
前記調停部は、前記要求信号に含まれるデータ内容に基づいて、前記要求信号の送信元のクライアントと該要求信号の対象となるサーバとの通信と、該サーバと前記他のクライアントとの通信とのうち、いずれを優先させるかの調停を行う請求項2または請求項3に記載の車両用電子制御装置。
【請求項5】
前記クライアントは、それぞれ通信の優先順位が予め定められ、
前記調停部は、前記要求信号に含まれる前記優先順位に基づいて、前記要求信号の送信元のクライアントと前記要求信号の対象となるサーバとの通信と、該サーバと前記他のクライアントとの通信とのうち、いずれを優先させるかを決定する請求項2ないし請求項4のいずれか1項に記載の車両用電子制御装置。
【請求項6】
前記調停部は、前記要求信号の送信元のクライアントの前記優先順位が、前記他のクライアントの前記優先順位よりも低いとき、該クライアントに対し、前記サーバとの通信が可能になるまで待機する旨の応答、あるいは、該サーバとの通信を不許可とする旨の応答のいずれかを行う請求項2ないし請求項5のいずれか1項に記載の車両用電子制御装置。
【請求項7】
前記調停部は、前記要求信号の送信元のクライアントの前記優先順位が、前記他のクライアントの前記優先順位よりも高いとき、前記サーバと前記他のクライアントとの通信を中断あるいは中止させて、前記要求信号の送信元のクライアントと前記要求信号の対象となるサーバとの通信を許可する請求項2ないし請求項6のいずれか1項に記載の車両用電子制御装置。
【請求項8】
前記要求信号は、前記ネットワーク上に備えられる全ての前記サーバに対するもので、
前記調停部は、全ての前記サーバの通信状態に基づいて、該クライアントと該全てのサーバとの通信を許可するか否かを決定する請求項1ないし請求項7のいずれか1項に記載の車両用電子制御装置。
【請求項9】
前記調停部は、前記サーバあるいは前記クライアントのいずれか1つに備えられる請求項1ないし請求項8のいずれか1項に記載の車両用電子制御装置。
【請求項10】
前記サーバあるいは前記クライアントを含む通信ネットワークは複数あり、その通信ネットワーク毎に前記調停部と接続する請求項1ないし請求項9のいずれか1項に記載の車両用電子制御装置。
【請求項11】
前記調停部は、前記ネットワーク上に複数備えられる請求項1ないし請求項10のいずれか1項に記載の車両用電子制御装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【公開番号】特開2013−74377(P2013−74377A)
【公開日】平成25年4月22日(2013.4.22)
【国際特許分類】
【出願番号】特願2011−210495(P2011−210495)
【出願日】平成23年9月27日(2011.9.27)
【出願人】(000004260)株式会社デンソー (27,639)
【Fターム(参考)】
【公開日】平成25年4月22日(2013.4.22)
【国際特許分類】
【出願日】平成23年9月27日(2011.9.27)
【出願人】(000004260)株式会社デンソー (27,639)
【Fターム(参考)】
[ Back to top ]