JP2006320033A - 制御ユニットおよび制御ユニット開発装置 - Google Patents

制御ユニットおよび制御ユニット開発装置 Download PDF

Info

Publication number
JP2006320033A
JP2006320033A JP2006238435A JP2006238435A JP2006320033A JP 2006320033 A JP2006320033 A JP 2006320033A JP 2006238435 A JP2006238435 A JP 2006238435A JP 2006238435 A JP2006238435 A JP 2006238435A JP 2006320033 A JP2006320033 A JP 2006320033A
Authority
JP
Japan
Prior art keywords
data
transmission
reception
message
stored
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006238435A
Other languages
English (en)
Inventor
Wataru Nagaura
渉 永浦
Hiroaki Komatsu
弘明 小松
Toru Irie
徹 入江
Takanori Yokoyama
孝典 横山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2006238435A priority Critical patent/JP2006320033A/ja
Publication of JP2006320033A publication Critical patent/JP2006320033A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】通信処理に関わる高信頼機能を容易に実現する。
【解決手段】通信に関わる高信頼機能を実現する送信プロトコル処理手段と受信プロトコル処理手段をもち、送信プロトコル手段と受信プロトコル手段は、通信仕様に応じて制御ユニット開発装置により生成する。
【効果】アプリケーションプログラム開発者は、通信に関わる高信頼通信機能を、制御ユニット開発装置で通信仕様を設定するだけで、アプリケーションプログラム中に書かなくてよく、かつ、プログラム開発することなく実現できる。
【選択図】図1

Description

本発明はネットワーク接続された制御ユニットに係り、特に、高信頼化通信プロトコル処理を容易に実現する制御ユニット開発装置および制御ユニット開発装置を用いて実現した制御ユニットに関する。
ネットワークによりメッセージを送受信する場合、ネットワーク通信をハードウェアで実現するネットワークコントローラと、ネットワークコントローラを用いてネットワーク通信を行う通信ソフトウェアを用いる。アプリケーションプログラム内に記憶されたデータを送信する場合、データを送信プロトコル処理してネットワークコントローラに書き込む。また、受信の場合は、ネットワークコントローラに到着したメッセージを受信プロトコル処理してアプリケーションプログラム内に記憶する。このようにデータを送受信する際のアプリケーションプログラムとネットワークコントローラ間の送受信プロトコル処理は通信ソフトウェアを使って処理される。従来では、通信ソフトウェアは単にネットワークコントローラを駆動するためのネットワークコントローラドライバであった。
従来技術では、通信ソフトウェアがサポートされていないために、アプリケーションプログラムとしてアプリケーションプログラム開発者が通信仕様毎に作成する必要があるという問題がある。また、アプリケーションプログラム開発者が制御用データからメッセージ用のデータを作成する必要があった。そこで本発明は、高信頼通信プロトコル処理およびメッセージ用データ生成処理のいずれか、または双方をアプリケーションプログラム開発者が容易に実現できる手段を提供することを目的とする。
上記目的を達成するため本発明では、高信頼化通信処理プロトコルを送受信プロトコルを用いて自動的に実行するように構成した。
具体的構成は以下の通りである。
プログラムを記憶するメモリと、
該メモリに記憶された前記プログラムを実行するCPUと、
ネットワークに接続され、該ネットワーク上に送信メッセージを送信するとともに、ネットワーク上から受信メッセージを受信するネットワークコントローラと
を有し、
前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージを送受信する制御ユニットにおいて、
アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶手段と、
前記メッセージを送信するためにネットワークコントローラに渡す送信データを記憶する送信データ記憶手段と、
前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを読み出して、前記送信データ記憶手段に記憶された送信データを更新する送信データ更新手段と、
前記送信データ記憶手段に記憶された送信データを読み出して、データ変換処理を行い、前記送信データ記憶手段に記憶された送信データを更新する送信データプロトコル処理手段と、
前記送信データ記憶手段に記憶された送信データを読み出して、前記ネットワークコントローラに渡すための送信メッセージを生成し、前記送信メッセージを前記ネットワークコントローラに渡してメッセージを送信する送信プロトコル処理手段と、
前記ネットワークコントローラが受信した受信データを記憶する受信データ記憶手段と、
前記ネットワークコントローラが受信した受信メッセージを入力して前記受信データを生成し、前記受信データ記憶手段に記憶する受信プロトコル処理手段と、
前記受信データ記憶手段に記憶された受信データを読み出して、前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新する受信アプリケーションデータ更新手段と、
前記受信データの内容を確認し、その結果を記憶する受信データプロトコル処理結果記憶手段と、
前記受信データを読み出して、受信データの内容を確認し、前記受信データ確認処理結果記憶手段に受信データ確認結果を記憶する受信データプロトコル処理手段と
を有する制御ユニットであって、
前記受信アプリケーションデータ更新手段は、前記受信データプロトコル処理結果記憶手段に記憶された前記受信データ確認結果にしたがって前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新する。
本発明によれば、プログラム開発者による高信頼通信プロトコル処理およびメッセージ用データ生成処理が簡素化された。
実施例の説明に入る前に、上記高信頼化通信プロトコル処理について以下説明する。
通信ソフトウェアが使用するレジスタやメモリに記憶されたデータが一時的にしろ破壊されたり、何らかの要因によりデータの内容が変化する場合、送受信プロトコル処理により破壊されたデータの内容が送受信される。
また、メッセージの取りこぼしや送信ノードの不具合などによるメッセージ未到着を検出する必要がある。
これらの通信による不具合を検出するために、チェックサム機能,メッセージカウンタ機能,受信タイムアウト機能がある。
チェックサム機能とは、送信するデータを所定のルールに従って加算した結果をデータに付加するものである。チェックサムは、受信側で、データ化けを検出できる。
メッセージカウンタ機能とは、メッセージ毎にカウンタ値をもっており、送信する度にカウンタ値を所定のルールに従って変化させるものである。メッセージカウンタは受信側で、メッセージの受信抜けや同一メッセージ受信を判別できる。
受信タイムアウト機能とは、前回受信した時刻から所定の時間以内にメッセージを受信することを監視する機能である。受信タイムアウト機能により、受信側は、送信ユニット、または、ネットワークに何らかの異常が発生したことを検出できる。
以上本命最初ではこれらの機能を総称して高信頼化通信プロトコル処理と呼称する。
図1は本発明の一実施例である制御ユニットがネットワーク接続した分散システムの構成を示したものである。複数の制御ユニット1a,1b,...,1nがネットワーク2で接続している。本発明のネットワークは、例えば、ISO11898−1,ISO11898−2に記載されているCAN(Controller Area Network) を用いる。制御ユニット1aは、CPU13,メモリ11,CANコントローラ14で構成され、それらはバス12で接続している。
図1で示した分散システムの例として、例えば、図29に示すように、車間距離制御機能を搭載した自動車90aの車間距離制御システムがある。車間距離制御システムは、変速機901を制御する変速機制御ユニット1b,スロットル902を制御するスロットル制御ユニット1e,レーダ903からの情報である前車90bとの車間距離や相対速度,自車の速度などから最適なトルクを算出するレーダ制御ユニット1d,エンジン904を制御するエンジン制御ユニット1a,ブレーキ905を制御するブレーキ制御ユニット
1c,通信機器906から受信した周辺環境状況、例えば、勾配やカーブの形状,道路の摩擦係数などを収集する環境情報収集制御ユニット1fがネットワーク2で接続される。例えば、レーダ制御ユニット1dで算出したトルク値をネットワーク2に送信し、そのトルク値を受信した各制御ユニットは、トルクをもとに各アクチュエータを制御する。例えば、負のトルクであれば、スロットル制御ユニット1eはスロットルを閉じ、ブレーキ制御ユニット1cはブレーキをかける。エンジン制御ユニット1aは、スロットル制御ユニット1eから送信されたスロットル開度を受信して、エンジン904を制御する。変速機制御ユニット1bは、環境情報収集制御ユニット1fから送信された勾配やカーブの形状,道路の摩擦係数を受信し、スロットル制御ユニット1eから送信されたスロットル開度を受信して変速機を制御する。このように車間距離制御システムは、周囲の環境や自車状態から前車との車間距離を制御する。
各制御ユニットはネットワーク2であるCANで接続され、他の制御ユニットと通信することにより動作する。CANコントローラ14は、ネットワーク2を介して、他の制御ユニットに内蔵されるCANコントローラと接続している。メモリ11には、アプリケーションプログラム101,送信データ更新手段201,受信アプリケーションデータ更新手段301,送信データプロトコル処理手段401,受信データプロトコル処理手段501,送信プロトコル処理手段121,受信プロトコル処理手段111が記憶されている。アプリケーションプログラム101はアプリケーションプログラムが更新したり参照したりするアプリケーションデータを記憶するアプリケーションデータ記憶手段102をもつ。送信プロトコル処理手段はCANコントローラ14に書き込む送信データを記憶する送信データ記憶手段をもつ。受信プロトコル処理手段111は、CANコントローラ14が受信した受信データを記憶する受信データ記憶手段112をもつ。送信データ更新手段201は、送信データを更新するための条件を記憶する更新条件記憶手段202をもつ。受信アプリケーションデータ更新手段301は、アプリケーションデータを更新するための条件を記憶する更新条件記憶手段302をもつ。受信データプロトコル処理手段501は、受信データプロトコル処理手段501で処理した結果を記憶する受信データプロトコル処理結果記憶手段502を持つ。CPU13は、メモリ11に記憶されているプログラムを読み出して、プログラム処理を実行する。CANコントローラ14は、ネットワーク2を介して、他の制御ユニットとのメッセージ送信、メッセージ受信を行うハードウェアである。送信プロトコル処理手段は、例えば、CANコントローラ14を用いてメッセージを送信するCANコントローラ送信ドライバである。送信データ記憶手段122に記憶している送信データは、CANのフレームを構成する0バイト以上8バイト以下のデータ部にあたる領域のデータが記憶されている。受信プロトコル処理手段111は、例えば、CANコントローラ14を用いてメッセージを受信するCANコントローラ受信ドライバである。受信データ記憶手段112に記憶している受信データは、CANのフレームを構成する0バイト以上8バイト以下のデータ部にあたる領域のデータが記憶されている。
本実施例では、通信のための高信頼化機能として、メッセージカウンタ機能,チェックサム機能、および、受信タイムアウト機能をサポートする。メッセージカウンタ機能とは、メッセージ毎にカウンタ値をもっており、送信する度にカウンタ値を所定のルールに従って変化させるものである。メッセージカウンタは受信側で、メッセージの受信抜けや同一メッセージ受信を判別できる。本実施例では、カウンタ値の変化として送信する度にカウンタ値をインクリメントする方式とする。チェックサム機能とは、送信するデータを所定のルールに従って加算した結果をデータに付加するものである。チェックサムは、受信側で、データ化けを検出できる。本実施例では、チェックサムとして、バイト単位の加算結果の桁上げを無視した1バイトを付加する方式とする。受信タイムアウト機能とは、前回受信した時刻から所定の時間以内にメッセージを受信することを監視する機能である。受信タイムアウト機能により、受信側は、送信ユニット、または、ネットワークに何らかの異常が発生したことを検出できる。高信頼化機能のための手段としては、送信では、送信データプロトコル処理手段401、受信では、受信データプロトコル処理手段501が実現する。
図2に、制御ユニット開発装置500を示す。制御ユニット開発装置500は、図1に記載した、送信データ更新手段201,受信アプリケーションデータ更新手段301,送信データプロトコル処理手段401,受信データプロトコル処理手段501を生成する。制御ユニット開発装置500は、送信受信データとアプリケーションデータ対応情報登録手段531,属性データ関連情報登録手段521,起動情報登録手段571,送信データプロトコル処理テンプレート541,受信データプロトコル処理テンプレート551,メッセージと送受信データ対応情報登録手段561をもつ。
図3に、送信データプロトコル処理テンプレート541と受信データプロトコル処理テンプレート551を示す。送信データプロトコル処理テンプレート541は、メッセージカウンタ設定処理543とチェックサムのためのサム値設定処理542をもつ。受信データプロトコル処理テンプレート551は、メッセージカウンタチェック処理554,チェックサムのサムチェック処理553,タイムアウト監視処理552をもつ。
図4に、図1記載の送信データプロトコル処理手段401と受信データプロトコル処理手段501を示す。送信データプロトコル処理手段401は、送信時処理403,送信周期タスク処理411,内部データROM441,内部データRAM451をもつ。受信データプロトコル処理手段501は、受信時処理503,受信周期タスク処理841,内部データROM851,内部データRAM861,受信データプロトコル処理結果記憶手段502をもつ。
図5と図10にそれぞれ、図2記載のメッセージと送受信データ対応情報登録手段561で登録したメッセージと送受信データ対応情報を示す。本実施例では、エンジン制御ユニット(EngineCU)に着目する。
図5に示すメッセージと送受信データ対応情報562aは、メッセージ名がEngineMsg、IDが0x100、データ長が8、送信ノードがEngineCU、受信ノードがATCUである。受信ノードは複数登録できる。EngineCUにおいては、メッセージ
EngineMsgは送信メッセージとなる。表564aは、送受信データの領域とラベルの対応を示している。CANのデータ領域の最初の1バイト目は領域0と定義されており、領域0はラベル名engine_data0に対応することを意味する。
一方、図10に示すメッセージと送受信データ対応情報562bは、メッセージ名が
AtMsg、IDが0x200、データ長が4、送信ノードがAtCU、受信ノードが
EngineCUである。EngineCUにおいては、メッセージAtMsgは受信メッセージとなる。送受信データ領域とラベルの対応については、図5と同様である。
図6および図11に、図2で示した送受信データとアプリケーションデータ対応情報登録手段531で登録した送受信データとアプリケーションデータ対応情報を示す。
図6に示す送受信データとアプリケーションデータ対応情報532aは、メッセージ
EngineMsgのものである。ラベルengine_data0の領域のデータはアプリケーションデータのDATA0に対応する。なお、ラベル名は図5に示した表564aのラベルである。
一方、図11に示す送受信データとアプリケーションデータ対応情報532bは、メッセージAtMsgのものである。ラベルとアプリケーションデータとの対応は図6と同様である。
図7および図12に、図2で示した起動情報登録手段571で登録した起動情報を示す。
図7に示す起動情報572aはメッセージEngineMsgのものである。メッセージEngineMsgを受信した時に起動される関数,送信するときに起動される関数,送信周期タスク処理411、または、受信周期タスク処理841が起動される周期を登録する。EngineMsgは送信であるので、送信時起動の関数がsendEngineMsg で、送信周期タスク処理411が起動される周期が10msである。
一方、図12に示す起動情報572bは、メッセージAtMsgのものである。メッセージAtMsgは受信であるので、受信時起動の関数がreceiveAtMsg、受信周期タスク処理841が起動される周期は10msである。
図8および図13に、図2で示した属性データ関連情報登録手段521で登録した属性データ関連情報を示す。
図8に示す属性データ関連情報522aはメッセージEngineMsgのものである。チェックサムのサム値が記憶されるデータ領域はengine_checksum、メッセージカウンタ値が記憶されるデータ領域はengine_msgcounter、タイムアウト値は100msである。
一方、図13に示す属性データ関連情報522bはメッセージAtMsgのものである。チェックサムのサム値が記憶されるデータ領域はat_checksum、メッセージカウンタ値が記憶されるデータ領域はat_msgcounter、タイムアウト値は
200msである。
図9および図14に、図4に示した内部データROM441,851,内部データRAM451,861を示す。
図9に示す内部データROM441a,内部データRAM451aは、メッセージ
EngineMSgのものである。内部データROM441aには、タイムアウトカウンタ値10が記憶されている。これは、図7で登録したタスク周期10msと図8で登録したタイムアウト値100msから算出された値である。すなわち、10ms周期タスクで連続10回受信がなければ100ms受信なしとなり、タイムアウトとなる。内部データRAM451aは、現在のメッセージカウンタ値とタイムアウトカウンタ値が記憶されている。図9の例では、初期化直後の状態を示す。なお、本実施例では、送信タイムアウト機能はサポートしていないため、内部データROM441aと内部データRAM451aのタイムアウトカウンタはメモリ削減のため削除してもよい。
図14に示す内部データROM851a,内部データRAM861aは、メッセージ
AtMSgのものである。内部データROM851aには、タイムアウトカウンタ値20が記憶されている。これは、図12で登録したタスク周期10msと図13で登録したタイムアウト値200msから算出された値である。すなわち、10ms周期タスクで連続20回受信がなければ200ms間受信がなしとなり、タイムアウトとなる。内部データRAM451aは、現在のメッセージカウンタ値とタイムアウトカウンタ値が記憶されている。図14の例では、初期化直後の状態を示す。
図15に、図1記載の更新条件記憶手段302を示す。更新条件302bはメッセージAtMsgのものである。更新条件302bは、メッセージカウンタエラー,チェックサムエラー,タイムアウトエラーのいずれも発生しないのが条件となっている。なお、図1記載の更新条件記憶手段202の更新条件は、アプリケーションプログラムが送信データを更新するタイミングでセットするフラグである。
図16に図1記載の受信データプロトコル処理結果記憶手段502に記憶された受信データプロトコル処理結果を示す。受信データプロトコル処理結果502bはメッセージ
AtMsgのものである。メッセージカウンタ,チェックサム,タイムアウトのエラーの有無を記憶しておく。
図17に、図1記載の送信データ更新手段201におけるメッセージEngineMsg の場合の送信データ更新処理201aの処理内容を示す。ステップ20101aで更新条件フラグがセットされているか(ゼロでないか)どうかを確認する。更新条件は、図1記載の更新条件記憶手段202に記憶されており、アプリケーションプログラム101が更新タイミングに応じてセットする。更新条件がセットされていれば、ステップ20102aを実行し、そうでなければステップ20114aを実行し、処理を終了する。ステップ20102aでは、図6記載の送受信データとアプリケーションデータ対応情報532aにしたがい、EngineMsg用に割り当てられた送信データ記憶手段122のengine_
data0の領域に記憶された値をアプリケーションデータData0の値に更新する。以下、ステップ20103a,ステップ20104a,ステップ20106a,ステップ20107a,ステップ20108a,ステップ20110a,ステップ20111aもステップ20102a同様に送信データ記憶手段122に記憶された値を更新する。ステップ20112aでは、更新条件をリセットする(ゼロにする)。ステップ20113aでは、図1記載の送信プロトコル処理を起動し、EngineMsgを送信する。ステップ20113a終了後はステップ20114aを実行し処理を終了する。
図18に、図1記載の受信アプリケーションデータ更新手段301におけるメッセージAtMsgの場合の受信アプリケーション更新処理301bの処理内容を示す。ステップ30101bでは、更新条件が真か否かを確認する。真ならばステップ30102bを実行し、偽ならばステップ30106bを実行し処理を終了する。ステップ30102bでは、図11記載の送受信データとアプリケーションデータ対応情報532bにしたがって、アプリケーションデータ記憶手段102のAtData0をメッセージAtMsgに割り当てられた受信データ記憶手段112のat_data0の領域に記憶された値に更新する。ステップ30103b,ステップ30104b,ステップ3105bもステップ
3102bと同様に、アプリケーションデータを更新する。ステップ30105b処理終了後は、ステップ30106baを実行し、処理を終了する。
図19に、図3記載のメッセージカウンタ設定処理431の処理内容を示す。ステップ43101では、今回のメッセージカウンタ値を送信データの所定のメッセージカウンタ領域に更新する。ステップ43102では、次回のメッセージカウンタ値をセットする。ステップ43103では処理を終了する。メッセージカウンタ設定処理431を送信メッセージEngineMsgを例に挙げて説明する、図9記載の内部データRAM451aを用いる。ステップ43101では、送信データ記憶手段122のengine_
msgcounter領域に今回のメッセージカウンタ値“0”に更新する。ステップ
43103では、次回のメッセージカウンタ値“1”を内部データRAM451aのメッセージカウンタにセットする。
図20に、図3記載のメッセージカウンタチェック処理554の処理内容を示す。ステップ55401ではチェックするメッセージが受信動作中か否かを確認する。受信動作中であれば、ステップ55402を実行し、受信動作中でなければステップ55407を実行する。ステップ55402では、受信データ記憶手段112に記憶されたメッセージカウンタと今回のメッセージカウンタの期待値とを比較チェックする。ステップ55403では、ステップ55402で比較チェックが等しければOKとし、ステップ55404を実行する。比較チェックが等しくなければNGとし、ステップ55405を実行する。ステップ55404では、受信データプロトコル処理結果記憶手段に記憶された所定のメッセージカウンタエラー領域にエラーなしを記憶する。ステップ55405では、受信データプロトコル処理結果記憶手段に記憶された所定のメッセージカウンタエラー領域にエラー記憶する。ステップ55406では、次回のメッセージカウンタ期待値を算出する。ステップ55407では、ステップ55404と同様に、受信データプロトコル処理結果記憶手段に記憶された所定のメッセージカウンタエラー領域にエラーなしを記憶する。ステップ55408では、ステップ55406と同様に次回のメッセージカウンタ期待値を算出する。ステップ55406およびステップ55408の終了後は、ステップ55409を実行し処理を終了する。メッセージカウンタチェック処理554を受信メッセージ
AtMsgを例に挙げて説明する。ステップ55402では、受信データ記憶手段112のat_msgcounter領域の値と内部データRAM451bに記憶されたメッセージカウンタ値とを比較する。ステップ55404,ステップ55405およびステップ55407では、図16記載の受信データプロトコル処理結果502bのメッセージカウンタ領域に結果を記憶する。ステップ55406およびステップ55408では、内部データRAM451bに記憶されたメッセージカウンタ値を次回の値“1”に更新する。
図21に、図3記載のサム値設定処理542の処理内容を示す。ステップ54201では、送信データのサム値格納領域にゼロを記憶する。ステップ54202,ステップ
54203では、送信データをデータ長分,バイト単位で加算する。ステップ54204では、ステップ54203では、送信データのサム値格納領域を算出したサム値に更新する。ステップ54205では、処理を終了する。サム値設定処理542をメッセージ
EngineMsgを例に挙げて説明する。図27に示した送信データ122a1は、送信データ更新処理201a実行し、メッセージカウンタ設定処理431実行後の送信データの値を示したものである。ステップ54201では、送信データ122a1のengine_
checksum領域に0を書き込む。ステップ54202,ステップ54203ではデータ長8バイト分のデータ値を加算する。0x00+0x01+0x02+0x03+
0x00+0xF0+0xF5+0x01=0x1F0で桁上げを除いた1バイトデータ0xF0がサム値となる。ステップ54203で、サム値0xF0をengine_
checksum領域に書き込む。結果、送信データ122a2のようになる。
図22に、図3記載のサムチェック処理553の処理内容を示す。ステップ55301では、受信データ記憶手段112のサム値領域に記憶された値を退避する。ステップ
55302では、受信データ記憶手段112のサム値領域に0を書き込む。ステップ
55303およびステップ55304では、データ長分,バイト単位で受信データを加算し、桁あがり分を無視したバイトデータをサム値とする。ステップ55305では、ステップ55301で退避したサム値と、ステップ55303およびステップ55304で求めたサム値とを比較する。等しければステップ55306を実行する。等しくなければステップ55307を実行する。ステップ55306では変数valに0をセットする。ステップ55307では、変数valに1をセットする。ステップ55306またはステップ55307が終了後、ステップ55309を実行する。ステップ55309では、ステップ55301で退避したサム値をもとのサム値領域へ格納する。ステップ55308で
は、valをリターンして終了する。サムチェック処理553をメッセージAtMsgを例に挙げて説明する。図28記載のように受信データ記憶手段112に送信データ112bが記憶されている場合で説明する。ステップ55301によりサム値領域に記憶された値“0xC1”を退避し、ステップ55302によりサム値領域に0を書き込む。ステップ55303およびステップ55304にてデータ長4バイト分加算する。0xE0+
0xE1+0x00+0x00=0x1C1で桁上げを除いた1バイトデータ0xC1をサム値とする。ステップ55305よりステップ55301で退避したサム値と、ステップ55303およびステップ55304で求めたサム値とを比較し、両方ともに0xC1と等しいため、ステップ55306では変数valに0をセットする。ステップ55309 では、退避したサム値“0xC1”をもとのサム値領域へ書き込む。ステップ55308にてvalをリターンする。この場合、“0”がリターンされる。
図23に、図3記載のタイムアウト監視処理552の処理内容を示す。ステップ55201では、タイムアウト監視がOKか否かを確認する。OKであれば、ステップ55202を実行し、NGであれば55209を実行する。55202では、受信メッセージでタイムアウト監視する各メッセージに対して、ステップ55203以降の処理を繰り返す。ステップ55203では、メッセージが受信動作中か否かを確認する。受信動作中であればステップ55204を実行する。受信動作中でなければステップ55207を実行する。ステップ55204では、タイムアウトしているか否かを確認する。タイムアウトしていればステップ55205を実行する。タイムアウトしていなければステップ55206を実行する。ステップ55205では、データプロトコル処理結果記憶手段502に記憶されたタイムアウトをエラーに設定する。ステップ55206では、タイムアウトカウンタを更新する。ステップ55207ではデータプロトコル処理結果記憶手段502に記憶されたタイムアウトをエラーなしに設定する(リセットする)。ステップ55208では、タイムアウトカウンタをリセットする。ステップ55209では、受信メッセージでタイムアウト監視する各メッセージに対して、ステップ55210以降の処理を繰り返す。ステップ55210では、データプロトコル処理結果記憶手段502に記憶されたタイムアウトをエラーなしに設定する(リセットする)。ステップ55211では、タイムアウトカウンタをリセットする。ステップ55212では処理を終了する。タイムアウト監視処理
552をメッセージAtMsgを例に挙げて説明する。監視OKで受信中の場合、ステップ55204を実行する。ステップ55204では、図14記載の内部データRAM451bのタイムアウトカウンタ値が“0”か否かを確認する。“0”はタイムアウトしていることを意味する。ステップ55205では、内部データRAM451bのタイムアウトカウンタ値が“0”であれば、図16記載の受信データプロトコル処理結果502bのタイムアウトをエラーに設定する。ステップ55026では、内部データRAM451bのタイムアウトカウンタ値をデクリメントする。ステップ55207では図16記載の受信データプロトコル処理結果502bのタイムアウトをエラーなしに設定する。ステップ55208では、内部データRAM451bのタイムアウトカウンタ値を内部データROM441bのタイムアウトカウンタ値に更新する。ステップ55202では、メッセージAtMsgにタイムアウト監視している受信メッセージあればそれらの受信メッセージに対してもステップ55203以降を実行する。ステップ55510,ステップ55211は、それぞれ、ステップ55202,ステップ55207,ステップ55208と同様の動作をする。
図24に受信時処理503の処理内容を示す。ステップ50301では、サムチェック処理553を起動し、チェックサムエラーの有無を判定する。ステップ50302では、ステップ50301でチェックしたチェックサムエラー判定で、戻り値が“0”であるか否かを確認する。戻り値が“0”であればエラーなしであり、ステップ50303を実行する。戻り値“0”でなければエラーであり、ステップ50304を実行する。ステップ50303では、データプロトコル処理結果記憶手段502に記憶されたチェックサムをエラーなしに設定する(リセットする)。ステップ50304では、データプロトコル処理結果記憶手段502に記憶されたチェックサムをエラーに設定する。ステップ50305では、メッセージカウンタチェック処理554を起動し、メッセージカウンタをチェックする。ステップ50306では、受信動作中フラグをセットし、対応するメッセージが受信動作中であることを示す。ステップ50307では処理を終了する。図24で示した受信時処理503は、チェックサム機能とメッセージカウンタ機能を使用している場合である。チェックサム機能を使用していないメッセージに対してはステップ50301,ステップ50302,ステップ50303,ステップ50304は不要である。また、メッセージカウンタ機能を使用していないメッセージは、ステップ50305が不要である。受信時処理503は、メッセージ毎に、図13記載の属性データ関連情報522bに示すような、チェックサム機能やメッセージカウンタ機能を使用有無に従って生成する。こうすることにより、余分な処理を省くことができ、メモリ消費量削減と処理時間短縮の効果がある。受信時処理503をメッセージAtMsgを例に挙げて説明する。受信時処理503は、図12記載の起動情報572bのreceiveAtMsgに対応する。ステップ
50301では、サムチェック処理553にて受信データのサムチェック処理する。OKであれば、ステップ50303により図16記載の受信データプロトコル処理結果502bのチェックサムにエラーなしを設定する。NGであれば、ステップ50304により、受信データプロトコル処理結果502bのチェックサムにエラーを設定する。ステップ
50305では、メッセージカウンタチェック処理554により、受信データプロトコル処理結果502b
のメッセージカウンタの設定する。
図25に、図4記載の受信周期タスク処理841の処理内容を示す。ステップ54102 では、図23記載のタイムアウト監視処理552を起動する。ステップ54103では、処理を終了する。制御ユニットEngineCUでは、受信周期タスク10msであるので、受信周期タスク処理841は10ms周期で起動される。
図26に送信時処理403の処理内容を示す。ステップ40301では、図21記載のサム値設定処理542を起動する。ステップ40302では、図19記載のメッセージカウンタ設定処理431を起動する。ステップ40303では、処理を終了する。送信時処理403は、チェックサム機能とメッセージカウンタ機能を使用している場合である。チェックサム機能を使用していないメッセージに対してはステップ40301は不要である。また、メッセージカウンタ機能を使用していないメッセージは、ステップ40302が不要である。送信時処理403は、メッセージ毎に、図8記載の属性データ関連情報522aに示すような、チェックサム機能やメッセージカウンタ機能を使用有無に従って生成する。こうすることにより、余分な処理を省くことができ、メモリ消費量削減と処理時間短縮の効果がある。送信時処理403をメッセージEngineMsgを例に挙げて説明する。送信時処理403は、図7記載の起動情報572aのsendEngineMsgに対応する。ステップ40301では、サム値設定処理542にて送信データ記憶手段122のサム値領域engine_checksamuにサム値を設定する。ステップ40302 では、メッセージカウンタ設定処理431により、送信データ記憶手段122のメッセージカウンタ領域engine_msgcounterにメッセージカウンタを設定する。
図1記載の送信プロトコル処理手段121は、送信するメッセージ毎にID,データ長,送信データのそれぞれを記憶する手段をもち、メッセージを送信する場合は、ID,データ長,送信データをCANコントローラ14のレジスタを更新して送信する。また、必要であれば、CANコントローラ14の送信データに対応するレジスタを更新する前に、所定の処理を起動する機能をもつ。例えば、メッセージEngineMsgの場合、図7記載の起動情報572aの送信時起動関数sendEngineMsgを起動する。
図1記載の受信プロトコル処理手段111は、受信するメッセージ毎にID,データ長,受信データのそれぞれを記憶する手段をもち、メッセージを受信する場合は、受信したメッセージIDに対応する受信データをCANコントローラ14に格納された受信データに対応するレジスタのデータに更新する。また、必要であれば、メッセージが受信したタイミングに同期して所定の処理を起動する機能をもつ。例えば、メッセージAtMsgの場合、図12記載の起動情報572bの受信時起動関数receiveAtMsgを起動する。
その他の実施例(1)
本発明の一実施例では、送信データ更新手段201,受信アプリケーションデータ更新手段301,送信データプロトコル処理手段401,受信データプロトコル処理手段501は、制御ユニット開発装置500で生成されるが、制御ユニット開発装置500で生成されなくてもよい。この場合、送信データ更新手段201,受信アプリケーションデータ更新手段301,送信データプロトコル処理手段401,受信データプロトコル処理手段
501は、他の手段で生成する必要あるが、アプリケーションプログラムには影響しない。
その他の実施例(2)
本発明の一実施例およびその他の実施例(1)では、送信データ更新手段201および受信アプリケーションデータ更新手段301は、送受信データとアプリケーションデータ対応情報532によりアプリケーションデータと送信データまたは受信データとの対応づけに従って送信データまたは受信のアプリケーションデータを更新する処理を行っていたが、アプリケーションプログラム内で行っても良い。この場合、アプリケーションプログラムが更新タイミングなどのデータ更新処理を自由に書くことができるため処理の自由度が増す効果がある。
その他の実施例(3)
本発明の一実施例、その他の実施例(1)(2)では、受信アプリケーションデータの更新条件記憶手段302は更新条件を記憶していたが、更新条件判定結果が格納された記憶領域を設定してもよい。この場合、アプリケーションプログラム開発者は、更新条件記憶手段302に更新条件を更新するだけで、アプリケーションデータ更新処理を実現できる。
その他の実施例(4)
本発明の一実施例、その他の実施例(2)(3)の制御ユニット開発装置は、送信プロトコル処理手段121,受信プロトコル処理手段111を生成する通信プロトコル生成装置により生成される場合、通信プロトコル生成装置と連携する手段をもち、情報をやり取りできる機能をもつ。このことにより、制御ユニット開発装置の設定作業を軽減することができる。
その他の実施例(5)
本発明の一実施例、その他の実施例(1)(2)(3)(4)では、送信データプロトコル処理手段401,受信データプロトコル処理手段501はなくてもよい。この場合、送信データ更新手段201,受信アプリケーションデータ更新手段301は、アプリケーションプログラム開発者は、更新条件記憶手段202や更新条件記憶手段302に更新条件を更新するだけで、アプリケーションデータ更新処理を実現できる。
その他の実施例(6)
本発明の一実施例、その他の実施例(1)(2)(3)(4)における、送信データプロトコル処理手段401,受信データプロトコル処理手段501はCRC機能でもよい。この場合、受信データが破壊されたことを検出できる。
その他の実施例(7)
本発明の一実施例、その他の実施例(1)(2)(3)(4)(6)における、送信データプロトコル処理手段401は暗号化処理,受信データプロトコル処理手段501は暗号解読処理でもよい。この場合、受信データに届いた通信データが改ざんされたことを検出でき、受信アプリケーションデータに記憶された受信アプリケーションデータを改ざんされたデータに更新されることを防ぐことができる。
以上の複数の実施例における共通の効果は以下の通りである。
アプリケーションプログラム開発者は、メッセージカウンタ機能,チェックサム機能,受信タイムアウト監視機能などの通信に関わる高信頼化機能を制御ユニット開発装置で通信仕様を設定するだけで、アプリケーションプログラム中に書かなくてよく、かつ、プログラム開発することなく実現できる。また、アプリケーションデータを送信するための送信データの更新処理や、受信したデータをアプリケーションプログラムへ渡す受信アプリケーションデータ更新処理も制御ユニット開発装置で通信仕様を設定するだけで、アプリケーションプログラム中に書かなくてよく、かつ、プログラム開発することなく実現できる。
また、本実施例に共通の特徴を一言で言えば以下の通りである。
通信処理に関わる高信頼機能を容易に実現する事を課題とし、通信に関わる高信頼機能を実現する送信プロトコル処理手段と受信プロトコル処理手段をもち、送信プロトコル手段と受信プロトコル手段は、通信仕様に応じて制御ユニット開発装置により生成する構成とすることによって、アプリケーションプログラム開発者は、通信に関わる高信頼通信機能を、制御ユニット開発装置で通信仕様を設定するだけで、アプリケーションプログラム中に書かなくてよく、かつ、プログラム開発することなく実現できる。
なお、各実施例特有の効果は以下の通りである。
その他の実施例(1)によれば、アプリケーションプログラム開発者は、メッセージカウンタ機能,チェックサム機能,受信タイムアウト監視機能などの通信に関わる高信頼化機能をアプリケーションプログラム中に書かなくてよい。また、アプリケーションデータを送信するための送信データの更新処理や、受信したデータをアプリケーションプログラムへ渡す受信アプリケーションデータ更新処理をアプリケーションプログラム中に書かなくてよい。
その他の実施例(2)によれば、アプリケーションプログラム開発者は、メッセージカウンタ機能,チェックサム機能,受信タイムアウト監視機能などの通信に関わる高信頼化機能を制御ユニット開発装置で通信仕様を設定するだけで、アプリケーションプログラム中に書かなくてよく、かつ、プログラム開発することなく実現できる。
その他の実施例(3)によれば、受信したデータをアプリケーションプログラムへ渡す受信アプリケーションデータ更新処理を更新条件の結果のみアプリケーションプログラム中に書くだけで実現できる。
その他の実施例(4)によれば、すでに設定された情報を再利用できるため、設定作業を軽減することができる。
その他の実施例(5)によれば、アプリケーションプログラム開発者は、更新条件記憶手段202や更新条件記憶手段302に更新条件を更新するだけで、アプリケーションデータ更新処理を実現できる。
その他の実施例(6)によれば、受信データが破壊されたことを検出できる。
その他の実施例(7)によれば、受信データに届いた通信データが改ざんされたことを検出でき、受信アプリケーションデータに記憶された受信アプリケーションデータを改ざんされたデータに更新されることを防ぐことができる。
本発明の実施態様を以下に列挙する。
(実施態様1)
請求項1乃至10のいずれかに記載の制御ユニットにおいて、
前記送信データプロトコル処理手段は、請求項11記載の制御ユニット開発装置により生成された送信データプロトコル処理プログラムである
ことを特徴とする制御ユニット。
(実施態様2)
請求項2,請求項3,請求項5,請求項6,請求項7,請求項8,請求項9および請求項10記載の制御ユニットにおいて、
前記受信データプロトコル処理手段は、請求項12記載の制御ユニット開発装置により生成された受信データプロトコル処理プログラムである
ことを特徴とする制御ユニット。
(実施態様3)
請求項1,請求項3,請求項4,請求項6,請求項7,請求項8,請求項9,請求項
10および請求項15記載の制御ユニットにおいて、
前記送信データ更新処理手段は、請求項13記載の制御ユニット開発装置により生成された送信データ更新処理プログラムである
ことを特徴とする制御ユニット。
(実施態様4)
請求項2,請求項3,請求項5,請求項6,請求項7,請求項8,請求項9,請求項
10および請求項16記載の制御ユニットにおいて、
前記受信アプリケーションデータ更新処理手段は、請求項14記載の制御ユニット開発装置により生成された受信アプリケーションデータ更新処理プログラムである
ことを特徴とする制御ユニット。
(実施態様5)
請求項1,請求項2,請求項3,請求項4,請求項5,請求項6,請求項7,請求項8,請求項9,請求項10,請求項15,請求項16,請求項17ないし請求項18記載の制御ユニットにおいて、
前記制御ユニットは、自動車制御ユニットであることを特徴とする制御ユニット。
(実施態様6)
複数の制御ユニットをネットワーク接続し、前記制御ユニットが前記ネットワークを介して互いに並列に処理を進める分散システムにおいて、
前記制御ユニットは、請求項1,請求項2,請求項3,請求項4,請求項5,請求項6,請求項7,請求項8,請求項9,請求項10,請求項15,請求項16,請求項17,請求項18、ないし請求項19記載の制御ユニットであることを特徴とする分散システム。
本発明の一実施例である制御ユニットをネットワーク接続した分散システムの構成図である。 送信データ更新手段201,受信アプリケーションデータ更新手段301,送信データプロトコル処理手段401,受信データプロトコル処理手段501を生成する制御ユニット開発装置の構成図である。 送信データプロトコル処理テンプレートと受信データプロトコル処理テンプレートの構成図である。 送信データプロトコル処理と受信データプロトコルの構成図である。 メッセージと送受信データ対応情報登録手段561における送信メッセージEngineMsgを登録したメッセージと送受信データ対応情報である。 送受信データとアプリケーションデータ対応情報登録手段531で送信メッセージEngineMsgをs登録した送受信データとアプリケーションデータ対応情報である。 起動情報登録手段571で制御ユニットEngineCUの送信メッセージEngimeMsgを登録した起動情報である。 属性データ関連情報登録手段521で送信メッセージEngineMsgを登録した属性データ関連情報である。 内部データROM441,内部データRAM451の送信メッセージEngimeMsgの例である。 メッセージと送受信データ対応情報登録手段561における受信メッセージAtMsgを登録したメッセージと送受信データ対応情報である。 送受信データとアプリケーションデータ対応情報登録手段531で受信メッセージAtMsgをs登録した送受信データとアプリケーションデータ対応情報である。 起動情報登録手段571で制御ユニットEngineCUの受信メッセージAtMsgを登録した起動情報である。 属性データ関連情報登録手段521で受信メッセージAtMsgを登録した属性データ関連情報である。 図4に示した内部データROM851,内部データRAM861の受信メッセージAtMsgの例である。 更新条件記憶手段302の受信メッセージAtMsgの例である。 受信データプロトコル処理結果記憶手段502に記憶された受信メッセージAtMsgの受信データプロトコル処理結果である。 送信データ更新手段201におけるメッセージEngineMsgの場合の送信データ更新処理内容である。 受信アプリケーションデータ更新手段301におけるメッセージAtMsgの場合の受信アプリケーション更新処理内容である。 メッセージカウンタ設定処理内容である。 メッセージカウンタチェック処理内容である。 サム値設定内容である。 サムチェック処理内容である。 タイムアウト監視処理内容である。 受信時処理内容である。 受信周期タスク処理内容である。 送信時処理内容である。 メッセージ送信処理における送信データ値の更新を示した図である。 メッセージ受信処理におけるアプリケーションデータ値の更新を示した図である。 車間距離制御機能を搭載した車間距離制御システムである。
符号の説明
1a,1b,...,1n…制御ユニット、2…ネットワーク、11…メモリ、12…バス、13…CPU、14…CANコントローラ、90a,90b…自動車、101…アプリケーションプログラム、102…アプリケーションデータ記憶手段、111…受信プロトコル処理手段、112…受信データ記憶手段、121…送信プロトコル処理手段、122…送信データ記憶手段、201…送信データ更新手段、201a…送信データ更新処理、
202,302…更新条件記憶手段、301…受信アプリケーションデータ更新手段、
301b…受信アプリケーションデータ更新処理、302b…更新条件、401…送信データプロトコル処理手段、403…送信時処理、411…送信周期タスク処理、421,542…サム値設定処理、431,543…メッセージカウンタ設定処理、441,851…内部データROM、451,861…内部データRAM、500…制御ユニット開発装置、501…受信データプロトコル処理手段、502…受信データプロトコル処理結果記憶手段、502b…受信データプロトコル処理結果、503…受信時処理、521…属性データ関連情報登録手段、522a,522b…属性データ関連情報、531…送受信データとアプリケーションデータ対応情報登録手段、532a,532b…送受信データとアプリケーションデータ対応情報、541…送信データプロトコル処理テンプレート、
551…受信データプロトコル処理テンプレート、552…タイムアウト監視処理、553…サムチェック処理、554…メッセージカウンタチェック処理、561…メッセージと送受信データ対応情報登録手段、562a,562b…メッセージと送受信データ対応情報、571…起動情報登録手段、572a,572b…起動情報、841…受信周期タスク処理、901…変速機、902…スロットル、903…レーダ、904…エンジン、
905…ブレーキ、906…通信機器。

Claims (15)

  1. プログラムを記憶するメモリと、
    該メモリに記憶された前記プログラムを実行するCPUと、
    ネットワークに接続され、該ネットワーク上に送信メッセージを送信するネットワークコントローラと
    を有し、
    前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージを送信する制御ユニットにおいて、 アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶手段と、
    前記メッセージを送信するためにネットワークコントローラに渡す送信データを記憶する送信データ記憶手段と、
    前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを読み出して、前記送信データ記憶手段に記憶された送信データを更新する送信データ更新手段と、
    前記送信データ記憶手段に記憶された送信データを読み出して、データ変換処理を行い、前記送信データ記憶手段に記憶された送信データを更新する送信データプロトコル処理手段と、
    前記送信データ記憶手段に記憶された送信データを読み出して、前記ネットワークコントローラに渡すための送信メッセージを生成し、 前記送信メッセージを前記ネットワークコントローラに渡してメッセージを送信する送信プロトコル処理手段と
    を有することを特徴とする制御ユニット。
  2. プログラムを記憶するメモリと、
    該メモリに記憶された前記プログラムを実行するCPUと、
    ネットワークに接続され、該ネットワーク上に受信メッセージを受信するネットワークコントローラと
    を有し、
    前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージを受信する制御ユニットにおいて、
    アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶手段と、
    前記ネットワークコントローラが受信した受信データを記憶する受信データ記憶手段と、
    前記ネットワークコントローラが受信した受信メッセージを入力して前記受信データを生成し、前記受信データ記憶手段に記憶する受信プロトコル処理手段と、
    前記受信データ記憶手段に記憶された受信データを読み出して、前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新する受信アプリケーションデータ更新手段と、
    前記受信データの内容を確認し、その結果を記憶する受信データプロトコル処理結果記憶手段と、
    前記受信データを読み出して、受信データの内容を確認し、前記受信データ確認処理結果記憶手段に受信データ確認結果を記憶する受信データプロトコル処理手段と
    を有し、
    前記受信アプリケーションデータ更新手段は、前記受信データプロトコル処理結果記憶手段に記憶された前記受信データ確認結果にしたがって前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新することを特徴とする制御ユニット。
  3. プログラムを記憶するメモリと、
    該メモリに記憶された前記プログラムを実行するCPUと、
    ネットワークに接続され、該ネットワーク上に送信メッセージを送信するとともに、ネットワーク上から受信メッセージを受信するネットワークコントローラと
    を有し、
    前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージを送受信する制御ユニットにおいて、
    アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶手段と、
    前記メッセージを送信するためにネットワークコントローラに渡す送信データを記憶する送信データ記憶手段と、
    前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを読み出して、前記送信データ記憶手段に記憶された送信データを更新する送信データ更新手段と、
    前記送信データ記憶手段に記憶された送信データを読み出して、データ変換処理を行い、前記送信データ記憶手段に記憶された送信データを更新する送信データプロトコル処理手段と、
    前記送信データ記憶手段に記憶された送信データを読み出して、前記ネットワークコントローラに渡すための送信メッセージを生成し、前記送信メッセージを前記ネットワークコントローラに渡してメッセージを送信する送信プロトコル処理手段と、
    前記ネットワークコントローラが受信した受信データを記憶する受信データ記憶手段と、
    前記ネットワークコントローラが受信した受信メッセージを入力して前記受信データを生成し、前記受信データ記憶手段に記憶する受信プロトコル処理手段と、
    前記受信データ記憶手段に記憶された受信データを読み出して、前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新する受信アプリケーションデータ更新手段と、
    前記受信データの内容を確認し、その結果を記憶する受信データプロトコル処理結果記憶手段と、
    前記受信データを読み出して、受信データの内容を確認し、前記受信データ確認処理結果記憶手段に受信データ確認結果を記憶する受信データプロトコル処理手段と
    を有し、
    前記受信アプリケーションデータ更新手段は、前記受信データプロトコル処理結果記憶手段に記憶された前記受信データ確認結果にしたがって前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新することを特徴とする制御ユニット。
  4. 請求項1および3記載の制御ユニットにおいて、
    前記送信データを更新する条件判定結果を記憶した更新条件記憶手段
    を有し、
    前記送信データ更新手段は、前記更新条件記憶手段に記憶された更新条件にしたがって、前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを読み出して、送信データ記憶手段に記憶された送信データを更新する
    ことを特徴とする制御ユニット。
  5. 請求項2および3記載の制御ユニットにおいて、
    前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新する条件を記憶する更新条件記憶手段
    を有し、
    前記受信アプリケーションデータ更新手段は、前記更新条件記憶手段に記憶された更新条件にしたがって、前記受信データ記憶手段に記憶された受信データを読み出して前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新する
    ことを特徴とする制御ユニット。
  6. 請求項1乃至5のいずれかに記載の制御ユニットにおいて、前記ネットワークはCAN(コントローラエリアネットワーク)であり、
    前記記載のネットワークコントローラはCANコントローラであり、
    前記記載の送信データ記憶手段はCANの8バイト以下のデータを記憶し、
    前記記載の受信データ記憶手段はCANの8バイト以下のデータを記憶することを特徴とする制御ユニット。
  7. 請求項1乃至6のいずれかに記載の制御ユニットにおいて、前記送信データプロトコル手段は、前記送信データ記憶手段に記憶された送信データを読み出して処理を実行し得られたメッセージ送信情報を記憶し、前記記載の受信データプロトコル処理手段は、前記受信データに記憶された、前記送信データプロトコル手段で処理して得られたメッセージ送信情報を確認し、メッセージの未到着を検出するメッセージ到着確認処理を有することを特徴とする制御ユニット。
  8. 請求項1乃至7のいずれかに記載の制御ユニットにおいて、前記送信データプロトコル手段は、前記送信データ記憶手段に記憶された送信データを読み出して処理を実行し得られた非破壊情報を前記送信データ記憶手段に記憶し、前記記載の受信データプロトコル処理手段は、前記受信データに記憶された、前記送信データプロトコル手段で処理して得られた非破壊情報をチェックし、前記送信データに記憶された送信データが破壊されることなく、前記受信データ記憶手段に記憶されたことを保証する非破壊検査処理機能を有することを特徴とする制御ユニット。
  9. 請求項7記載の制御ユニットにおいて、前記メッセージ送信情報は、送信する度に値をひとつずつ更新するメッセージカウンタであることを特徴とする制御ユニット。
  10. 請求項8記載の非破壊情報は、チェックサムのサム値であることを特徴とする制御ユニット。
  11. プログラムを記憶するメモリと、
    該メモリに記憶された前記プログラムを実行するCPUと、
    ネットワークに接続され、該ネットワーク上に送信メッセージを送信するネットワークコントローラと
    を有し、
    前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージ送信処理を実行する制御ユニットであり、
    アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶部と、
    前記メッセージを送信するためにネットワークコントローラに渡す送信データを記憶する送信データ記憶部と、
    前記アプリケーションデータ記憶部に記憶されたアプリケーションデータを読み出して、前記送信データ記憶部に記憶された送信データを更新する送信データ更新プログラムと、
    前記送信データ記憶部に記憶された送信データを読み出して、データ変換処理を行い、前記送信データ記憶部に記憶された送信データを更新する送信データプロトコル処理プログラムと、
    前記送信データ記憶部に記憶された送信データを読み出して、前記ネットワークコントローラに渡すための送信メッセージを生成し、前記送信メッセージを前記ネットワークコントローラに渡してメッセージを送信する送信プロトコル処理プログラムと
    を有する制御ユニットの前記送信データプロトコル処理プログラムを生成する制御ユニット開発装置において、
    送信データ変換処理方法をメッセージ毎に登録し、前記送信データ変換処理方法と前記送信データ記憶手段に記憶されたデータとの対応を登録する属性データ関連情報登録手段と、
    前記送信データ変換処理方法毎に用意された送信データプロトコル処理テンプレート手段と、
    メッセージと前記送信データとの対応を登録するメッセージと送受信データ対応情報登録手段と、
    前記送信データプロトコル処理手段をメッセージ毎に登録する起動情報登録手段と
    を有し、
    前記送信データ更新処理テンプレート手段と、
    前記属性データ関連情報登録手段から登録された属性データ関連情報と、
    前記送受信データ対応情報登録手段に登録されたメッセージと送信データとの対応情報と、
    起動情報登録手段から登録された起動情報と
    から、前記送信データプロトコル処理プログラムを自動生成することを特徴とする制御ユニット開発装置。
  12. プログラムを記憶するメモリと、
    該メモリに記憶された前記プログラムを実行するCPUと、
    ネットワークに接続され、該ネットワーク上に受信メッセージを受信するネットワークコントローラと
    を有し、
    前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージ受信処理を実行する制御ユニットであり、
    アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶部と、
    前記ネットワークコントローラが受信した受信データを記憶する受信データ記憶部と、
    前記ネットワークコントローラが受信した受信メッセージを入力して前記受信データを生成し、前記受信データ記憶部に記憶する受信プロトコル処理プログラムと、
    前記受信データ記憶部に記憶された受信データを読み出して、前記アプリケーションデータ記憶部に記憶されたアプリケーションデータを更新する受信アプリケーションデータ更新プログラムと、
    前記受信データの内容を確認し、その結果を記憶する受信データプロトコル処理結果記憶部と、
    前記受信データを読み出して、受信データの内容を確認し、前記受信データ確認処理結果記憶部に受信データ確認結果を記憶する受信データプロトコル処理プログラムと
    を有し、
    前記受信アプリケーションデータ更新プログラムは、前記受信データプロトコル処理結果記憶部に記憶された前記受信データ確認結果にしたがって前記アプリケーションデータ記憶部に記憶されたアプリケーションデータを更新する制御ユニットの前記受信データプロトコル処理プログラムを生成する制御ユニット開発装置において、
    受信データ確認処理方法を登録し、前記受信データ確認処理方法と前記受信データ記憶部に記憶されたデータとの対応を示す属性データ関連情報を登録する属性データ関連情報登録手段と、
    受信データ確認処理方法毎に用意された受信データプロトコル処理テンプレート手段と、
    メッセージと前記受信データ部に記憶された受信データとの対応を登録するメッセージと送受信データ対応情報登録手段と、
    前記受信データプロトコル処理プログラムをメッセージ毎に登録する起動情報登録手段と
    を有し、
    前記通信データプロトコル処理属性毎に用意された受信データプロトコル処理テンプレート手段と、
    前記属性データ関連情報登録手段により登録された属性データ関連情報と、
    前記送受信データ対応情報登録手段に登録されたメッセージと受信データとの対応情報と、
    前記起動情報登録手段から登録された起動情報と
    から、前記受信データプロトコル処理プログラムを自動生成することを特徴とする制御ユニット開発装置。
  13. プログラムを記憶するメモリと、
    該メモリに記憶された前記プログラムを実行するCPUと、
    ネットワークに接続され、該ネットワーク上に送信メッセージを送信するネットワークコントローラと
    を有し、
    前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージ送信処理を実行する制御ユニットであり、アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶部と、
    前記メッセージを送信するためにネットワークコントローラに渡す送信データを記憶する送信データ記憶部と、
    前記アプリケーションデータ記憶部に記憶されたアプリケーションデータを読み出して、前記送信データ記憶部に記憶された送信データを更新する送信データ更新プログラムと、
    前記送信データ記憶部に記憶された送信データを読み出して、データ変換処理を行い、前記送信データ記憶部に記憶された送信データを更新する送信データプロトコル処理プログラムと、
    前記送信データ記憶部に記憶された送信データを読み出して、前記ネットワークコントローラに渡すための送信メッセージを生成し、前記送信メッセージを前記ネットワークコントローラに渡してメッセージを送信する送信プロトコル処理プログラムと
    を有する制御ユニットの前記送信データ更新処理プログラムを生成する制御ユニット開発装置において、
    前記アプリケーションデータ記憶部に記憶されたアプリケーションデータと前記送信データ記憶部に記憶された送信データとの対応を登録する、送受信データとアプリケーションデータ対応情報登録手段と、
    前記メッセージと前記送信データ記憶部に記憶された送信データとの対応を登録するメッセージと送受信データ対応情報登録手段と
    を有し、
    前記送受信データとアプリケーションデータ対応情報登録手段で登録した送受信データとアプリケーションデータ対応情報と、
    前記メッセージと送受信データ対応情報登録手段で登録したメッセージと送受信データ対応情報と
    から、前記送信データ更新処理プログラムを自動生成すること
    を特徴とする制御ユニット開発装置。
  14. プログラムを記憶するメモリと、
    該メモリに記憶された前記プログラムを実行するCPUと、
    ネットワークに接続され、該ネットワーク上に受信メッセージを受信するネットワークコントローラと
    を有し、
    前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージ受信処理を実行する制御ユニットであり、
    アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶部と、
    前記ネットワークコントローラが受信した受信データを記憶する受信データ記憶部と、
    前記ネットワークコントローラが受信した受信メッセージを入力して前記受信データを生成し、前記受信データ記憶部に記憶する受信プロトコル処理プログラムと、
    前記受信データ記憶部に記憶された受信データを読み出して、前記アプリケーションデータ記憶部に記憶されたアプリケーションデータを更新する受信アプリケーションデータ更新プログラムと、
    前記受信データの内容を確認し、その結果を記憶する受信データプロトコル処理結果記憶部と、
    前記受信データを読み出して、受信データの内容を確認し、前記受信データ確認処理結果記憶部に受信データ確認結果を記憶する受信データプロトコル処理プログラムと
    を有し、
    前記受信アプリケーションデータ更新プログラムは、前記受信データプロトコル処理結果記憶部に記憶された前記受信データ確認結果にしたがって前記アプリケーションデータ記憶部に記憶されたアプリケーションデータを更新する制御ユニットの前記受信アプリケーションデータ更新処理プログラムを生成する制御ユニット開発装置において、
    前記アプリケーションデータ記憶部に記憶されたアプリケーションデータと前記受信データ記憶部に記憶された受信データとの対応を登録する、送受信データとアプリケーションデータ対応情報登録手段と、
    前記メッセージと前記受信データ記憶部に記憶された受信データとの対応を登録するメッセージと送受信データ対応情報登録手段と
    を有し、
    前記送受信データとアプリケーションデータ対応情報登録手段で登録した送受信データとアプリケーションデータ対応情報と、
    前記メッセージと送受信データ対応情報登録手段で登録したメッセージと送受信データ対応情報と
    から、前記受信アプリケーションデータ更新処理プログラムを自動生成することを特徴とする制御ユニット開発装置。
  15. 通信に関わる高信頼化通信プロトコルを実現する送信プロトコル処理手段と受信プロトコル処理手段をもち、送信プロトコル手段と受信プロトコル手段は、通信仕様に応じて制御ユニット開発装置により生成されることを特徴とするデータ処理装置。
JP2006238435A 2006-09-04 2006-09-04 制御ユニットおよび制御ユニット開発装置 Pending JP2006320033A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006238435A JP2006320033A (ja) 2006-09-04 2006-09-04 制御ユニットおよび制御ユニット開発装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006238435A JP2006320033A (ja) 2006-09-04 2006-09-04 制御ユニットおよび制御ユニット開発装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002158493A Division JP3873815B2 (ja) 2002-05-31 2002-05-31 制御ユニット開発装置

Publications (1)

Publication Number Publication Date
JP2006320033A true JP2006320033A (ja) 2006-11-24

Family

ID=37540190

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006238435A Pending JP2006320033A (ja) 2006-09-04 2006-09-04 制御ユニットおよび制御ユニット開発装置

Country Status (1)

Country Link
JP (1) JP2006320033A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018506461A (ja) * 2014-12-15 2018-03-08 ポラリス インダストリーズ インコーポレーテッド 自律準備車両
CN113276856A (zh) * 2020-01-31 2021-08-20 丰田自动车株式会社 车辆

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018506461A (ja) * 2014-12-15 2018-03-08 ポラリス インダストリーズ インコーポレーテッド 自律準備車両
US10640101B2 (en) 2014-12-15 2020-05-05 Polaris Industries Inc. Autonomous ready vehicle
JP2021059328A (ja) * 2014-12-15 2021-04-15 ポラリス インダストリーズ インコーポレーテッド 自律準備車両
US11400914B2 (en) 2014-12-15 2022-08-02 Polaris Industries Inc. Autonomous ready vehicle
JP7312158B2 (ja) 2014-12-15 2023-07-20 ポラリス インダストリーズ インコーポレーテッド 自律準備車両
CN113276856A (zh) * 2020-01-31 2021-08-20 丰田自动车株式会社 车辆
CN113276856B (zh) * 2020-01-31 2024-05-03 丰田自动车株式会社 车辆

Similar Documents

Publication Publication Date Title
US11223525B2 (en) Gateway device, firmware update method, and recording medium
US11354179B2 (en) System, method and computer program product for sharing information in a distributed framework
US8780772B2 (en) Communication protocol for wireless enhanced controller area networks
US6965571B2 (en) Precise error reporting
JP2000257501A (ja) 自動車用制御装置
JP2011505755A5 (ja)
JP2003229875A (ja) Can−コントローラ内部のデータ伝送におけるエラーの認識方法,can−コントローラ,プログラム,記録媒体,及び制御装置
US11288054B2 (en) Vehicular communication system
US11715337B2 (en) Controller diagnostic device and method thereof
US20080008209A1 (en) Communication network system and error verification method
KR101334017B1 (ko) 차량 네트워크의 메시지 무결성 체크 시스템 및 방법
JP2006320033A (ja) 制御ユニットおよび制御ユニット開発装置
JP2003309568A (ja) 2層ネットワーク環境におけるスイッチングデバイスのデータアップグレード方法
JP3873815B2 (ja) 制御ユニット開発装置
CN106878112B (zh) 一种网关控制器、数据传输方法及装置
JP4013592B2 (ja) 車両通信システム
KR101612825B1 (ko) Can 컨트롤러, 차량 내부 통신을 위한 게이트웨이 및 그 제어 방법
JP5102300B2 (ja) データ伝送ブロックの送信方法、並びに、データ伝送ブロックの伝送方法、およびデータ伝送ブロックを伝送するためのシステム
CN114301920A (zh) 系统日志的转发方法、装置、计算设备及存储介质
US20080077693A1 (en) System and method for automatically generating a proxy interface object to communicate through a gateway software server to a remote software server
JP3051533B2 (ja) 多重伝送方法及び多重伝送装置
CN112804288A (zh) 车端数据处理方法、装置、电子设备及计算机存储介质
JP2007049297A (ja) 通信システム及びその制御方法
JP2770281B2 (ja) データ伝送方法
JP2022538080A (ja) 車両の車載バス上のコンピュータと対話する方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061004

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061004

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090120

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090526