JP2004007104A - Control unit and control unit development apparatus - Google Patents

Control unit and control unit development apparatus Download PDF

Info

Publication number
JP2004007104A
JP2004007104A JP2002158493A JP2002158493A JP2004007104A JP 2004007104 A JP2004007104 A JP 2004007104A JP 2002158493 A JP2002158493 A JP 2002158493A JP 2002158493 A JP2002158493 A JP 2002158493A JP 2004007104 A JP2004007104 A JP 2004007104A
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.)
Granted
Application number
JP2002158493A
Other languages
Japanese (ja)
Other versions
JP3873815B2 (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 JP2002158493A priority Critical patent/JP3873815B2/en
Publication of JP2004007104A publication Critical patent/JP2004007104A/en
Application granted granted Critical
Publication of JP3873815B2 publication Critical patent/JP3873815B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To realize a highly reliable communication function related to communication by enabling a control unit development apparatus to have only to set a communication specification without the need for any description to an application program and for development of a program. <P>SOLUTION: A control unit includes a transmission protocol processing means and a reception protocol processing means to realize a highly reliable communication function related to communication and the control unit development apparatus generates a transmission protocol means and a reception protocol means depending on the communication specification. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明はネットワーク接続された制御ユニットに係り、特に、高信頼化通信プロトコル処理を容易に実現する制御ユニット開発装置および制御ユニット開発装置を用いて実現した制御ユニットに関する。
【0002】
【従来の技術】
ネットワークによりメッセージを送受信する場合、ネットワーク通信をハードウェアで実現するネットワークコントローラと、ネットワークコントローラを用いてネットワーク通信を行う通信ソフトウェアを用いる。アプリケーションプログラム内に記憶されたデータを送信する場合、データを送信プロトコル処理してネットワークコントローラに書き込む。また、受信の場合は、ネットワークコントローラに到着したメッセージを受信プロトコル処理してアプリケーションプログラム内に記憶する。このようにデータを送受信する際のアプリケーションプログラムとネットワークコントローラ間の送受信プロトコル処理は通信ソフトウェアを使って処理される。従来では、通信ソフトウェアは単にネットワークコントローラを駆動するためのネットワークコントローラドライバであった。
【0003】
【発明が解決しようとする課題】
従来技術では、通信ソフトウェアがサポートされていないために、アプリケーションプログラムとしてアプリケーションプログラム開発者が通信仕様毎に作成する必要があるという問題がある。また、アプリケーションプログラム開発者が制御用データからメッセージ用のデータを作成する必要があった。そこで本発明は、高信頼通信プロトコル処理およびメッセージ用データ生成処理のいずれか、または双方をアプリケーションプログラム開発者が容易に実現できる手段を提供することを目的とする。
【0004】
【課題を解決するための手段】
上記目的を達成するため本発明では、高信頼化通信処理プロトコルを送受信プロトコルを用いて自動的に実行するように構成した。
【0005】
具体的構成は以下の通りである。
【0006】
プログラムを記憶するメモリと、
該メモリに記憶された前記プログラムを実行するCPUと、
ネットワークに接続され、該ネットワーク上に送信メッセージを送信するとともに、ネットワーク上から受信メッセージを受信するネットワークコントローラと
を有し、
前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージを送受信する制御ユニットにおいて、
アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶手段と、
前記メッセージを送信するためにネットワークコントローラに渡す送信データを記憶する送信データ記憶手段と、
前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを読み出して、前記送信データ記憶手段に記憶された送信データを更新する送信データ更新手段と、
前記送信データ記憶手段に記憶された送信データを読み出して、データ変換処理を行い、前記送信データ記憶手段に記憶された送信データを更新する送信データプロトコル処理手段と、
前記送信データ記憶手段に記憶された送信データを読み出して、前記ネットワークコントローラに渡すための送信メッセージを生成し、前記送信メッセージを前記ネットワークコントローラに渡してメッセージを送信する送信プロトコル処理手段と、
前記ネットワークコントローラが受信した受信データを記憶する受信データ記憶手段と、
前記ネットワークコントローラが受信した受信メッセージを入力して前記受信データを生成し、前記受信データ記憶手段に記憶する受信プロトコル処理手段と、
前記受信データ記憶手段に記憶された受信データを読み出して、前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新する受信アプリケーションデータ更新手段と、
前記受信データの内容を確認し、その結果を記憶する受信データプロトコル処理結果記憶手段と、
前記受信データを読み出して、受信データの内容を確認し、前記受信データ確認処理結果記憶手段に受信データ確認結果を記憶する受信データプロトコル処理手段と
を有する制御ユニットであって、
前記受信アプリケーションデータ更新手段は、前記受信データプロトコル処理結果記憶手段に記憶された前記受信データ確認結果にしたがって前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新する。
【0007】
【発明の実施の形態】
実施例の説明に入る前に、上記高信頼化通信プロトコル処理について以下説明する。
【0008】
通信ソフトウェアが使用するレジスタやメモリに記憶されたデータが一時的にしろ破壊されたり、何らかの要因によりデータの内容が変化する場合、送受信プロトコル処理により破壊されたデータの内容が送受信される。
【0009】
また、メッセージの取りこぼしや送信ノードの不具合などによるメッセージ未到着を検出する必要がある。
【0010】
これらの通信による不具合を検出するために、チェックサム機能,メッセージカウンタ機能,受信タイムアウト機能がある。
【0011】
チェックサム機能とは、送信するデータを所定のルールに従って加算した結果をデータに付加するものである。チェックサムは、受信側で、データ化けを検出できる。
【0012】
メッセージカウンタ機能とは、メッセージ毎にカウンタ値をもっており、送信する度にカウンタ値を所定のルールに従って変化させるものである。メッセージカウンタは受信側で、メッセージの受信抜けや同一メッセージ受信を判別できる。
【0013】
受信タイムアウト機能とは、前回受信した時刻から所定の時間以内にメッセージを受信することを監視する機能である。受信タイムアウト機能により、受信側は、送信ユニット、または、ネットワークに何らかの異常が発生したことを検出できる。
【0014】
以上本命最初ではこれらの機能を総称して高信頼化通信プロトコル処理と呼称する。
【0015】
図1は本発明の一実施例である制御ユニットがネットワーク接続した分散システムの構成を示したものである。複数の制御ユニット1a,1b,...,1nがネットワーク2で接続している。本発明のネットワークは、例えば、ISO11898−1,ISO11898−2に記載されているCAN(Controller Area Network)を用いる。制御ユニット1aは、CPU13,メモリ11,CANコントローラ14で構成され、それらはバス12で接続している。
【0016】
図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から送信されたスロットル開度を受信して変速機を制御する。このように車間距離制御システムは、周囲の環境や自車状態から前車との車間距離を制御する。
【0017】
各制御ユニットはネットワーク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バイト以下のデータ部にあたる領域のデータが記憶されている。
【0018】
本実施例では、通信のための高信頼化機能として、メッセージカウンタ機能,チェックサム機能、および、受信タイムアウト機能をサポートする。メッセージカウンタ機能とは、メッセージ毎にカウンタ値をもっており、送信する度にカウンタ値を所定のルールに従って変化させるものである。メッセージカウンタは受信側で、メッセージの受信抜けや同一メッセージ受信を判別できる。本実施例では、カウンタ値の変化として送信する度にカウンタ値をインクリメントする方式とする。チェックサム機能とは、送信するデータを所定のルールに従って加算した結果をデータに付加するものである。チェックサムは、受信側で、データ化けを検出できる。本実施例では、チェックサムとして、バイト単位の加算結果の桁上げを無視した1バイトを付加する方式とする。受信タイムアウト機能とは、前回受信した時刻から所定の時間以内にメッセージを受信することを監視する機能である。受信タイムアウト機能により、受信側は、送信ユニット、または、ネットワークに何らかの異常が発生したことを検出できる。高信頼化機能のための手段としては、送信では、送信データプロトコル処理手段401、受信では、受信データプロトコル処理手段501が実現する。
【0019】
図2に、制御ユニット開発装置500を示す。制御ユニット開発装置500は、図1に記載した、送信データ更新手段201,受信アプリケーションデータ更新手段301,送信データプロトコル処理手段401,受信データプロトコル処理手段501を生成する。制御ユニット開発装置500は、送信受信データとアプリケーションデータ対応情報登録手段531,属性データ関連情報登録手段521,起動情報登録手段571,送信データプロトコル処理テンプレート541,受信データプロトコル処理テンプレート551,メッセージと送受信データ対応情報登録手段561をもつ。
【0020】
図3に、送信データプロトコル処理テンプレート541と受信データプロトコル処理テンプレート551を示す。送信データプロトコル処理テンプレート541は、メッセージカウンタ設定処理543とチェックサムのためのサム値設定処理542をもつ。受信データプロトコル処理テンプレート551は、メッセージカウンタチェック処理554,チェックサムのサムチェック処理553,タイムアウト監視処理552をもつ。
【0021】
図4に、図1記載の送信データプロトコル処理手段401と受信データプロトコル処理手段501を示す。送信データプロトコル処理手段401は、送信時処理403,送信周期タスク処理411,内部データROM441,内部データRAM451をもつ。受信データプロトコル処理手段501は、受信時処理503,受信周期タスク処理841,内部データROM851,内部データRAM861,受信データプロトコル処理結果記憶手段502をもつ。
【0022】
図5と図10にそれぞれ、図2記載のメッセージと送受信データ対応情報登録手段561で登録したメッセージと送受信データ対応情報を示す。本実施例では、エンジン制御ユニット(EngineCU)に着目する。
【0023】
図5に示すメッセージと送受信データ対応情報562aは、メッセージ名がEngineMsg、IDが0x100、データ長が8、送信ノードがEngineCU、受信ノードがATCUである。受信ノードは複数登録できる。EngineCUにおいては、メッセージEngineMsgは送信メッセージとなる。表564aは、送受信データの領域とラベルの対応を示している。CANのデータ領域の最初の1バイト目は領域0と定義されており、領域0はラベル名engine_data0に対応することを意味する。
【0024】
一方、図10に示すメッセージと送受信データ対応情報562bは、メッセージ名がAtMsg、IDが0x200、データ長が4、送信ノードがAtCU、受信ノードがEngineCUである。EngineCUにおいては、メッセージAtMsgは受信メッセージとなる。送受信データ領域とラベルの対応については、図5と同様である。
【0025】
図6および図11に、図2で示した送受信データとアプリケーションデータ対応情報登録手段531で登録した送受信データとアプリケーションデータ対応情報を示す。
【0026】
図6に示す送受信データとアプリケーションデータ対応情報532aは、メッセージEngineMsgのものである。ラベルengine_data0の領域のデータはアプリケーションデータのDATA0に対応する。なお、ラベル名は図5に示した表564aのラベルである。
【0027】
一方、図11に示す送受信データとアプリケーションデータ対応情報532bは、メッセージAtMsgのものである。ラベルとアプリケーションデータとの対応は図6と同様である。
【0028】
図7および図12に、図2で示した起動情報登録手段571で登録した起動情報を示す。
【0029】
図7に示す起動情報572aはメッセージEngineMsgのものである。メッセージEngineMsgを受信した時に起動される関数,送信するときに起動される関数,送信周期タスク処理411、または、受信周期タスク処理841が起動される周期を登録する。EngineMsgは送信であるので、送信時起動の関数がsendEngineMsgで、送信周期タスク処理411が起動される周期が10msである。
【0030】
一方、図12に示す起動情報572bは、メッセージAtMsgのものである。メッセージAtMsgは受信であるので、受信時起動の関数がreceiveAtMsg、受信周期タスク処理841が起動される周期は10msである。
【0031】
図8および図13に、図2で示した属性データ関連情報登録手段521で登録した属性データ関連情報を示す。
【0032】
図8に示す属性データ関連情報522aはメッセージEngineMsgのものである。チェックサムのサム値が記憶されるデータ領域はengine_checksum、メッセージカウンタ値が記憶されるデータ領域はengine_msgcounter、タイムアウト値は100msである。
【0033】
一方、図13に示す属性データ関連情報522bはメッセージAtMsgのものである。チェックサムのサム値が記憶されるデータ領域はat_checksum、メッセージカウンタ値が記憶されるデータ領域はat_msgcounter、タイムアウト値は200msである。
【0034】
図9および図14に、図4に示した内部データROM441,851,内部データRAM451,861を示す。
【0035】
図9に示す内部データROM441a,内部データRAM451aは、メッセージEngineMSgのものである。内部データROM441aには、タイムアウトカウンタ値10が記憶されている。これは、図7で登録したタスク周期10msと図8で登録したタイムアウト値100msから算出された値である。すなわち、10ms周期タスクで連続10回受信がなければ100ms受信なしとなり、タイムアウトとなる。内部データRAM451aは、現在のメッセージカウンタ値とタイムアウトカウンタ値が記憶されている。図9の例では、初期化直後の状態を示す。なお、本実施例では、送信タイムアウト機能はサポートしていないため、内部データROM441aと内部データRAM451aのタイムアウトカウンタはメモリ削減のため削除してもよい。
【0036】
図14に示す内部データROM851a,内部データRAM861aは、メッセージAtMSgのものである。内部データROM851aには、タイムアウトカウンタ値20が記憶されている。これは、図12で登録したタスク周期10msと図13で登録したタイムアウト値200msから算出された値である。すなわち、10ms周期タスクで連続20回受信がなければ200ms間受信がなしとなり、タイムアウトとなる。内部データRAM451aは、現在のメッセージカウンタ値とタイムアウトカウンタ値が記憶されている。図14の例では、初期化直後の状態を示す。
【0037】
図15に、図1記載の更新条件記憶手段302を示す。更新条件302bはメッセージAtMsgのものである。更新条件302bは、メッセージカウンタエラー,チェックサムエラー,タイムアウトエラーのいずれも発生しないのが条件となっている。なお、図1記載の更新条件記憶手段202の更新条件は、アプリケーションプログラムが送信データを更新するタイミングでセットするフラグである。
【0038】
図16に図1記載の受信データプロトコル処理結果記憶手段502に記憶された受信データプロトコル処理結果を示す。受信データプロトコル処理結果502bはメッセージAtMsgのものである。メッセージカウンタ,チェックサム,タイムアウトのエラーの有無を記憶しておく。
【0039】
図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を実行し処理を終了する。
【0040】
図18に、図1記載の受信アプリケーションデータ更新手段301におけるメッセージAtMsgの場合の受信アプリケーション更新処理301bの処理内容を示す。ステップ30101bでは、更新条件が真か否かを確認する。真ならばステップ30102bを実行し、偽ならばステップ30106bを実行し処理を終了する。ステップ30102bでは、図11記載の送受信データとアプリケーションデータ対応情報532bにしたがって、アプリケーションデータ記憶手段102のAtData0をメッセージAtMsgに割り当てられた受信データ記憶手段112のat_data0の領域に記憶された値に更新する。ステップ30103b,ステップ30104b,ステップ3105bもステップ3102bと同様に、アプリケーションデータを更新する。ステップ30105b処理終了後は、ステップ30106baを実行し、処理を終了する。
【0041】
図19に、図3記載のメッセージカウンタ設定処理431の処理内容を示す。ステップ43101では、今回のメッセージカウンタ値を送信データの所定のメッセージカウンタ領域に更新する。ステップ43102では、次回のメッセージカウンタ値をセットする。ステップ43103では処理を終了する。メッセージカウンタ設定処理431を送信メッセージEngineMsgを例に挙げて説明する、図9記載の内部データRAM451aを用いる。ステップ43101では、送信データ記憶手段122のengine_msgcounter領域に今回のメッセージカウンタ値“0”に更新する。ステップ43103では、次回のメッセージカウンタ値“1”を内部データRAM451aのメッセージカウンタにセットする。
【0042】
図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”に更新する。
【0043】
図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のようになる。
【0044】
図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”がリターンされる。
【0045】
図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と同様の動作をする。
【0046】
図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のメッセージカウンタの設定する。
【0047】
図25に、図4記載の受信周期タスク処理841の処理内容を示す。ステップ54102では、図23記載のタイムアウト監視処理552を起動する。ステップ54103では、処理を終了する。制御ユニットEngineCUでは、受信周期タスク10msであるので、受信周期タスク処理841は10ms周期で起動される。
【0048】
図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にメッセージカウンタを設定する。
【0049】
図1記載の送信プロトコル処理手段121は、送信するメッセージ毎にID,データ長,送信データのそれぞれを記憶する手段をもち、メッセージを送信する場合は、ID,データ長,送信データをCANコントローラ14のレジスタを更新して送信する。また、必要であれば、CANコントローラ14の送信データに対応するレジスタを更新する前に、所定の処理を起動する機能をもつ。例えば、メッセージEngineMsgの場合、図7記載の起動情報572aの送信時起動関数sendEngineMsgを起動する。
【0050】
図1記載の受信プロトコル処理手段111は、受信するメッセージ毎にID,データ長,受信データのそれぞれを記憶する手段をもち、メッセージを受信する場合は、受信したメッセージIDに対応する受信データをCANコントローラ14に格納された受信データに対応するレジスタのデータに更新する。また、必要であれば、メッセージが受信したタイミングに同期して所定の処理を起動する機能をもつ。例えば、メッセージAtMsgの場合、図12記載の起動情報572bの受信時起動関数receiveAtMsgを起動する。
【0051】
その他の実施例(1)
本発明の一実施例では、送信データ更新手段201,受信アプリケーションデータ更新手段301,送信データプロトコル処理手段401,受信データプロトコル処理手段501は、制御ユニット開発装置500で生成されるが、制御ユニット開発装置500で生成されなくてもよい。この場合、送信データ更新手段201,受信アプリケーションデータ更新手段301,送信データプロトコル処理手段401,受信データプロトコル処理手段501は、他の手段で生成する必要あるが、アプリケーションプログラムには影響しない。
【0052】
その他の実施例(2)
本発明の一実施例およびその他の実施例(1)では、送信データ更新手段201および受信アプリケーションデータ更新手段301は、送受信データとアプリケーションデータ対応情報532によりアプリケーションデータと送信データまたは受信データとの対応づけに従って送信データまたは受信のアプリケーションデータを更新する処理を行っていたが、アプリケーションプログラム内で行っても良い。この場合、アプリケーションプログラムが更新タイミングなどのデータ更新処理を自由に書くことができるため処理の自由度が増す効果がある。
【0053】
その他の実施例(3)
本発明の一実施例、その他の実施例(1)(2)では、受信アプリケーションデータの更新条件記憶手段302は更新条件を記憶していたが、更新条件判定結果が格納された記憶領域を設定してもよい。この場合、アプリケーションプログラム開発者は、更新条件記憶手段302に更新条件を更新するだけで、アプリケーションデータ更新処理を実現できる。
【0054】
その他の実施例(4)
本発明の一実施例、その他の実施例(2)(3)の制御ユニット開発装置は、送信プロトコル処理手段121,受信プロトコル処理手段111を生成する通信プロトコル生成装置により生成される場合、通信プロトコル生成装置と連携する手段をもち、情報をやり取りできる機能をもつ。このことにより、制御ユニット開発装置の設定作業を軽減することができる。
【0055】
その他の実施例(5)
本発明の一実施例、その他の実施例(1)(2)(3)(4)では、送信データプロトコル処理手段401,受信データプロトコル処理手段501はなくてもよい。この場合、送信データ更新手段201,受信アプリケーションデータ更新手段301は、アプリケーションプログラム開発者は、更新条件記憶手段202や更新条件記憶手段302に更新条件を更新するだけで、アプリケーションデータ更新処理を実現できる。
【0056】
その他の実施例(6)
本発明の一実施例、その他の実施例(1)(2)(3)(4)における、送信データプロトコル処理手段401,受信データプロトコル処理手段501はCRC機能でもよい。この場合、受信データが破壊されたことを検出できる。
【0057】
その他の実施例(7)
本発明の一実施例、その他の実施例(1)(2)(3)(4)(6)における、送信データプロトコル処理手段401は暗号化処理,受信データプロトコル処理手段501は暗号解読処理でもよい。この場合、受信データに届いた通信データが改ざんされたことを検出でき、受信アプリケーションデータに記憶された受信アプリケーションデータを改ざんされたデータに更新されることを防ぐことができる。
【0058】
以上の複数の実施例における共通の効果は以下の通りである。
【0059】
アプリケーションプログラム開発者は、メッセージカウンタ機能,チェックサム機能,受信タイムアウト監視機能などの通信に関わる高信頼化機能を制御ユニット開発装置で通信仕様を設定するだけで、アプリケーションプログラム中に書かなくてよく、かつ、プログラム開発することなく実現できる。また、アプリケーションデータを送信するための送信データの更新処理や、受信したデータをアプリケーションプログラムへ渡す受信アプリケーションデータ更新処理も制御ユニット開発装置で通信仕様を設定するだけで、アプリケーションプログラム中に書かなくてよく、かつ、プログラム開発することなく実現できる。
【0060】
また、本実施例に共通の特徴を一言で言えば以下の通りである。
【0061】
通信処理に関わる高信頼機能を容易に実現する事を課題とし、通信に関わる高信頼機能を実現する送信プロトコル処理手段と受信プロトコル処理手段をもち、送信プロトコル手段と受信プロトコル手段は、通信仕様に応じて制御ユニット開発装置により生成する構成とすることによって、アプリケーションプログラム開発者は、通信に関わる高信頼通信機能を、制御ユニット開発装置で通信仕様を設定するだけで、アプリケーションプログラム中に書かなくてよく、かつ、プログラム開発することなく実現できる。
【0062】
なお、各実施例特有の効果は以下の通りである。
【0063】
その他の実施例(1)によれば、アプリケーションプログラム開発者は、メッセージカウンタ機能,チェックサム機能,受信タイムアウト監視機能などの通信に関わる高信頼化機能をアプリケーションプログラム中に書かなくてよい。また、アプリケーションデータを送信するための送信データの更新処理や、受信したデータをアプリケーションプログラムへ渡す受信アプリケーションデータ更新処理をアプリケーションプログラム中に書かなくてよい。
【0064】
その他の実施例(2)によれば、アプリケーションプログラム開発者は、メッセージカウンタ機能,チェックサム機能,受信タイムアウト監視機能などの通信に関わる高信頼化機能を制御ユニット開発装置で通信仕様を設定するだけで、アプリケーションプログラム中に書かなくてよく、かつ、プログラム開発することなく実現できる。
【0065】
その他の実施例(3)によれば、受信したデータをアプリケーションプログラムへ渡す受信アプリケーションデータ更新処理を更新条件の結果のみアプリケーションプログラム中に書くだけで実現できる。
【0066】
その他の実施例(4)によれば、すでに設定された情報を再利用できるため、設定作業を軽減することができる。
【0067】
その他の実施例(5)によれば、アプリケーションプログラム開発者は、更新条件記憶手段202や更新条件記憶手段302に更新条件を更新するだけで、アプリケーションデータ更新処理を実現できる。
【0068】
その他の実施例(6)によれば、受信データが破壊されたことを検出できる。
【0069】
その他の実施例(7)によれば、受信データに届いた通信データが改ざんされたことを検出でき、受信アプリケーションデータに記憶された受信アプリケーションデータを改ざんされたデータに更新されることを防ぐことができる。
【0070】
本発明の実施態様を以下に列挙する。
【0071】
(実施態様1)
請求項1乃至10のいずれかに記載の制御ユニットにおいて、
前記送信データプロトコル処理手段は、請求項11記載の制御ユニット開発装置により生成された送信データプロトコル処理プログラムである
ことを特徴とする制御ユニット。
【0072】
(実施態様2)
請求項2,請求項3,請求項5,請求項6,請求項7,請求項8,請求項9および請求項10記載の制御ユニットにおいて、
前記受信データプロトコル処理手段は、請求項12記載の制御ユニット開発装置により生成された受信データプロトコル処理プログラムである
ことを特徴とする制御ユニット。
【0073】
(実施態様3)
請求項1,請求項3,請求項4,請求項6,請求項7,請求項8,請求項9,請求項10および請求項15記載の制御ユニットにおいて、
前記送信データ更新処理手段は、請求項13記載の制御ユニット開発装置により生成された送信データ更新処理プログラムである
ことを特徴とする制御ユニット。
【0074】
(実施態様4)
請求項2,請求項3,請求項5,請求項6,請求項7,請求項8,請求項9,請求項10および請求項16記載の制御ユニットにおいて、
前記受信アプリケーションデータ更新処理手段は、請求項14記載の制御ユニット開発装置により生成された受信アプリケーションデータ更新処理プログラムである
ことを特徴とする制御ユニット。
【0075】
(実施態様5)
請求項1,請求項2,請求項3,請求項4,請求項5,請求項6,請求項7,請求項8,請求項9,請求項10,請求項15,請求項16,請求項17ないし請求項18記載の制御ユニットにおいて、
前記制御ユニットは、自動車制御ユニットであることを特徴とする制御ユニット。
【0076】
(実施態様6)
複数の制御ユニットをネットワーク接続し、前記制御ユニットが前記ネットワークを介して互いに並列に処理を進める分散システムにおいて、
前記制御ユニットは、請求項1,請求項2,請求項3,請求項4,請求項5,請求項6,請求項7,請求項8,請求項9,請求項10,請求項15,請求項16,請求項17,請求項18、ないし請求項19記載の制御ユニットであることを特徴とする分散システム。
【0077】
【発明の効果】
本発明によれば、プログラム開発者による高信頼通信プロトコル処理およびメッセージ用データ生成処理が簡素化された。
【図面の簡単な説明】
【図1】本発明の一実施例である制御ユニットをネットワーク接続した分散システムの構成図である。
【図2】送信データ更新手段201,受信アプリケーションデータ更新手段301,送信データプロトコル処理手段401,受信データプロトコル処理手段501を生成する制御ユニット開発装置の構成図である。
【図3】送信データプロトコル処理テンプレートと受信データプロトコル処理テンプレートの構成図である。
【図4】送信データプロトコル処理と受信データプロトコルの構成図である。
【図5】メッセージと送受信データ対応情報登録手段561における送信メッセージEngineMsgを登録したメッセージと送受信データ対応情報である。
【図6】送受信データとアプリケーションデータ対応情報登録手段531で送信メッセージEngineMsgをs登録した送受信データとアプリケーションデータ対応情報である。
【図7】起動情報登録手段571で制御ユニットEngineCUの送信メッセージEngimeMsgを登録した起動情報である。
【図8】属性データ関連情報登録手段521で送信メッセージEngineMsgを登録した属性データ関連情報である。
【図9】内部データROM441,内部データRAM451の送信メッセージEngimeMsgの例である。
【図10】メッセージと送受信データ対応情報登録手段561における受信メッセージAtMsgを登録したメッセージと送受信データ対応情報である。
【図11】送受信データとアプリケーションデータ対応情報登録手段531で受信メッセージAtMsgをs登録した送受信データとアプリケーションデータ対応情報である。
【図12】起動情報登録手段571で制御ユニットEngineCUの受信メッセージAtMsgを登録した起動情報である。
【図13】属性データ関連情報登録手段521で受信メッセージAtMsgを登録した属性データ関連情報である。
【図14】図4に示した内部データROM851,内部データRAM861の受信メッセージAtMsgの例である。
【図15】更新条件記憶手段302の受信メッセージAtMsgの例である。
【図16】受信データプロトコル処理結果記憶手段502に記憶された受信メッセージAtMsgの受信データプロトコル処理結果である。
【図17】送信データ更新手段201におけるメッセージEngineMsgの場合の送信データ更新処理内容である。
【図18】受信アプリケーションデータ更新手段301におけるメッセージAtMsgの場合の受信アプリケーション更新処理内容である。
【図19】メッセージカウンタ設定処理内容である。
【図20】メッセージカウンタチェック処理内容である。
【図21】サム値設定内容である。
【図22】サムチェック処理内容である。
【図23】タイムアウト監視処理内容である。
【図24】受信時処理内容である。
【図25】受信周期タスク処理内容である。
【図26】送信時処理内容である。
【図27】メッセージ送信処理における送信データ値の更新を示した図である。
【図28】メッセージ受信処理におけるアプリケーションデータ値の更新を示した図である。
【図29】車間距離制御機能を搭載した車間距離制御システムである。
【符号の説明】
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…通信機器。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a control unit connected to a network, and more particularly to a control unit development device that easily realizes highly reliable communication protocol processing and a control unit that is realized using the control unit development device.
[0002]
[Prior art]
When a message is transmitted and received over a network, a network controller that implements network communication by hardware and communication software that performs network communication using the network controller are used. When transmitting data stored in the application program, the data is subjected to transmission protocol processing and written to the network controller. In the case of reception, the message arriving at the network controller is processed by a reception protocol and stored in the application program. As described above, the transmission / reception protocol processing between the application program and the network controller when data is transmitted / received is processed using communication software. In the past, communication software was simply a network controller driver for driving a network controller.
[0003]
[Problems to be solved by the invention]
In the related art, since communication software is not supported, there is a problem that an application program developer needs to create an application program for each communication specification. Further, the application program developer has to create message data from the control data. Accordingly, it is an object of the present invention to provide a means by which an application program developer can easily realize one or both of a highly reliable communication protocol process and a message data generation process.
[0004]
[Means for Solving the Problems]
In order to achieve the above object, the present invention is configured to automatically execute a highly reliable communication processing protocol using a transmission / reception protocol.
[0005]
The specific configuration is as follows.
[0006]
A memory for storing the program,
A CPU for executing the program stored in the memory;
A network controller that is connected to the network, transmits a transmission message on the network, and receives a reception message from the network;
Has,
A control unit that transmits and receives messages using the network controller while executing the program stored in the memory with the CPU,
Application data storage means for storing application data generated or used by the application program;
Transmission data storage means for storing transmission data to be passed to the network controller for transmitting the message,
Transmission data updating means for reading application data stored in the application data storage means and updating transmission data stored in the transmission data storage means;
A transmission data protocol processing unit that reads transmission data stored in the transmission data storage unit, performs data conversion processing, and updates the transmission data stored in the transmission data storage unit;
Transmission protocol processing means for reading transmission data stored in the transmission data storage means, generating a transmission message for passing to the network controller, passing the transmission message to the network controller and transmitting a message,
Reception data storage means for storing reception data received by the network controller,
Receiving protocol processing means for inputting a received message received by the network controller to generate the received data, and storing the received data in the received data storage means;
Receiving application data updating means for reading the reception data stored in the reception data storage means and updating the application data stored in the application data storage means;
Confirming the content of the received data, received data protocol processing result storage means for storing the result,
A reception data protocol processing unit for reading the reception data, confirming the content of the reception data, and storing the reception data confirmation result in the reception data confirmation processing result storage unit;
A control unit having
The received application data updating means updates the application data stored in the application data storage means according to the received data confirmation result stored in the received data protocol processing result storage means.
[0007]
BEST MODE FOR CARRYING OUT THE INVENTION
Before starting the description of the embodiment, the above-described highly reliable communication protocol processing will be described below.
[0008]
When data stored in a register or a memory used by the communication software is temporarily destroyed or the data content changes for some reason, the data content destroyed by the transmission / reception protocol processing is transmitted / received.
[0009]
In addition, it is necessary to detect the non-arrival of a message due to a missing message or a failure of a transmission node.
[0010]
A checksum function, a message counter function, and a reception timeout function are provided to detect a failure due to such communication.
[0011]
The checksum function is to add a result of adding data to be transmitted according to a predetermined rule to the data. The checksum can detect garbled data on the receiving side.
[0012]
The message counter function has a counter value for each message, and changes the counter value in accordance with a predetermined rule each time a message is transmitted. The message counter can determine on the receiving side whether a message has been missed or the same message has been received.
[0013]
The reception time-out function is a function of monitoring that a message is received within a predetermined time from the previous reception time. With the reception timeout function, the receiving side can detect that some abnormality has occurred in the transmission unit or the network.
[0014]
At the outset, these functions are collectively referred to as highly reliable communication protocol processing.
[0015]
FIG. 1 shows a configuration of a distributed system in which a control unit according to an embodiment of the present invention is connected to a network. A plurality of control units 1a, 1b,. . . , 1n are connected by a network 2. The network of the present invention uses, for example, a CAN (Controller Area Network) described in ISO11898-1 and ISO11898-2. The control unit 1a includes a CPU 13, a memory 11, and a CAN controller 14, which are connected by a bus 12.
[0016]
As an example of the distributed system shown in FIG. 1, for example, as shown in FIG. 29, there is an inter-vehicle distance control system of an automobile 90a equipped with an inter-vehicle distance control function. The inter-vehicle distance control system includes a transmission control unit 1 b for controlling the transmission 901, a throttle control unit 1 e for controlling the throttle 902, an inter-vehicle distance and a relative speed with the preceding vehicle 90 b which are information from the radar 903, and a speed of the own vehicle. A radar control unit 1d for calculating an optimal torque from the above, an engine control unit 1a for controlling the engine 904, a brake control unit 1c for controlling the brake 905, a surrounding environment condition received from the communication device 906, for example, a shape of a gradient or a curve , An environmental information collection control unit 1f for collecting road friction coefficients and the like is connected by a network 2. For example, the torque value calculated by the radar control unit 1d is transmitted to the network 2, and each control unit that has received the torque value controls each actuator based on the torque. For example, if the torque is negative, the throttle control unit 1e closes the throttle and the brake control unit 1c applies a brake. The engine control unit 1a controls the engine 904 by receiving the throttle opening transmitted from the throttle control unit 1e. The transmission control unit 1b receives the gradient or curve shape and the road friction coefficient transmitted from the environmental information collection control unit 1f and receives the throttle opening transmitted from the throttle control unit 1e to control the transmission. I do. As described above, the inter-vehicle distance control system controls the inter-vehicle distance with the preceding vehicle based on the surrounding environment and the state of the own vehicle.
[0017]
Each control unit is connected by CAN, which is the network 2, and operates by communicating with other control units. The CAN controller 14 is connected via a network 2 to a CAN controller built in another control unit. The memory 11 stores an application program 101, a transmission data update unit 201, a reception application data update unit 301, a transmission data protocol processing unit 401, a reception data protocol processing unit 501, a transmission protocol processing unit 121, and a reception protocol processing unit 111. ing. The application program 101 has an application data storage unit 102 for storing application data updated or referred to by the application program. The transmission protocol processing means has transmission data storage means for storing transmission data to be written to the CAN controller 14. The reception protocol processing unit 111 has a reception data storage unit 112 that stores reception data received by the CAN controller 14. The transmission data updating means 201 has an update condition storage means 202 for storing conditions for updating transmission data. The reception application data updating means 301 has an update condition storage means 302 for storing conditions for updating application data. The reception data protocol processing means 501 has a reception data protocol processing result storage means 502 for storing a result processed by the reception data protocol processing means 501. The CPU 13 reads out a program stored in the memory 11 and executes a program process. The CAN controller 14 is hardware that transmits and receives messages with other control units via the network 2. The transmission protocol processing means is, for example, a CAN controller transmission driver that transmits a message using the CAN controller 14. The transmission data stored in the transmission data storage unit 122 stores data of an area corresponding to a data portion of 0 to 8 bytes constituting a CAN frame. The reception protocol processing unit 111 is, for example, a CAN controller reception driver that receives a message using the CAN controller 14. As the received data stored in the received data storage unit 112, data of an area corresponding to a data portion of 0 to 8 bytes constituting a CAN frame is stored.
[0018]
In the present embodiment, a message counter function, a checksum function, and a reception timeout function are supported as the high reliability functions for communication. The message counter function has a counter value for each message, and changes the counter value in accordance with a predetermined rule each time a message is transmitted. The message counter can determine on the receiving side whether a message has been missed or the same message has been received. In the present embodiment, the counter value is incremented each time the counter value is transmitted as a change. The checksum function is to add a result of adding data to be transmitted according to a predetermined rule to the data. The checksum can detect garbled data on the receiving side. In this embodiment, a method is adopted in which one byte is added as a checksum, ignoring carry of the addition result in byte units. The reception time-out function is a function of monitoring that a message is received within a predetermined time from the previous reception time. With the reception timeout function, the receiving side can detect that some abnormality has occurred in the transmission unit or the network. As means for the high reliability function, the transmission data protocol processing means 401 is realized for transmission, and the reception data protocol processing means 501 is realized for reception.
[0019]
FIG. 2 shows a control unit development device 500. The control unit development device 500 generates the transmission data updating unit 201, the reception application data updating unit 301, the transmission data protocol processing unit 401, and the reception data protocol processing unit 501 described in FIG. The control unit development device 500 includes a transmission / reception data / application data correspondence information registration unit 531, an attribute data related information registration unit 521, an activation information registration unit 571, a transmission data protocol processing template 541, a reception data protocol processing template 551, and a message transmission / reception. It has data correspondence information registration means 561.
[0020]
FIG. 3 shows a transmission data protocol processing template 541 and a reception data protocol processing template 551. The transmission data protocol processing template 541 has a message counter setting process 543 and a sum value setting process 542 for a checksum. The reception data protocol processing template 551 includes a message counter check processing 554, a checksum checksum processing 553, and a timeout monitoring processing 552.
[0021]
FIG. 4 shows the transmission data protocol processing means 401 and the reception data protocol processing means 501 shown in FIG. The transmission data protocol processing means 401 has a transmission process 403, a transmission cycle task process 411, an internal data ROM 441, and an internal data RAM 451. The reception data protocol processing means 501 has a reception processing 503, a reception cycle task processing 841, an internal data ROM 851, an internal data RAM 861, and a reception data protocol processing result storage means 502.
[0022]
FIGS. 5 and 10 show the message and transmission / reception data correspondence information registered by the message and transmission / reception data correspondence information registration means 561 shown in FIG. 2, respectively. In this embodiment, attention is paid to an engine control unit (Engine CU).
[0023]
The message and transmitted / received data correspondence information 562a shown in FIG. 5 have a message name of EngineMsg, an ID of 0x100, a data length of 8, a transmitting node of EngineCU, and a receiving node of ATCU. A plurality of receiving nodes can be registered. In the EngineCU, the message EngineMsg is a transmission message. Table 564a shows the correspondence between transmission / reception data areas and labels. The first byte of the CAN data area is defined as area 0, which means that area 0 corresponds to the label name engine_data0.
[0024]
On the other hand, the message and transmitted / received data correspondence information 562b shown in FIG. 10 have a message name of AtMsg, an ID of 0x200, a data length of 4, a transmitting node of AtCU, and a receiving node of EngineeringCU. In the EngineCU, the message AtMsg is a received message. The correspondence between the transmission / reception data area and the label is the same as in FIG.
[0025]
FIGS. 6 and 11 show the transmission / reception data and application data correspondence information registered by the transmission / reception data / application data correspondence information registration unit 531 shown in FIG.
[0026]
The transmission / reception data and application data correspondence information 532a shown in FIG. 6 are for the message EngineMsg. The data in the area of the label “engine_data0” corresponds to DATA0 of the application data. Note that the label name is a label in the table 564a shown in FIG.
[0027]
On the other hand, the transmission / reception data and application data correspondence information 532b shown in FIG. 11 are of the message AtMsg. The correspondence between labels and application data is the same as in FIG.
[0028]
FIGS. 7 and 12 show the boot information registered by the boot information registration means 571 shown in FIG.
[0029]
The activation information 572a shown in FIG. 7 is that of the message EngineMsg. A function that is activated when the message EngineMsg is received, a function that is activated when the message is transmitted, and a cycle that activates the transmission cycle task processing 411 or the reception cycle task processing 841 are registered. Since the EngineMsg is transmission, the function to be activated at the time of transmission is sendEngineMsg, and the period at which the transmission period task process 411 is activated is 10 ms.
[0030]
On the other hand, the activation information 572b shown in FIG. 12 is that of the message AtMsg. Since the message AtMsg is received, the function of activation at reception is receiveAtMsg, and the period at which the reception period task process 841 is activated is 10 ms.
[0031]
8 and 13 show the attribute data related information registered by the attribute data related information registration unit 521 shown in FIG.
[0032]
The attribute data related information 522a shown in FIG. 8 is that of the message EngineMsg. The data area where the checksum sum value is stored is engine_checksum, the data area where the message counter value is stored is engine_msgcounter, and the timeout value is 100 ms.
[0033]
On the other hand, the attribute data related information 522b shown in FIG. 13 is that of the message AtMsg. The data area where the checksum sum value is stored is at_checksum, the data area where the message counter value is stored is at_msgcounter, and the timeout value is 200 ms.
[0034]
9 and 14 show the internal data ROMs 441 and 851 and the internal data RAMs 451 and 861 shown in FIG.
[0035]
The internal data ROM 441a and the internal data RAM 451a shown in FIG. 9 are for the message EngineMSg. A timeout counter value 10 is stored in the internal data ROM 441a. This is a value calculated from the task cycle 10 ms registered in FIG. 7 and the timeout value 100 ms registered in FIG. That is, if there is no continuous reception of 10 times in the task of 10 ms, there is no reception of 100 ms, and a timeout occurs. The internal data RAM 451a stores a current message counter value and a timeout counter value. FIG. 9 shows a state immediately after the initialization. In this embodiment, since the transmission timeout function is not supported, the timeout counters of the internal data ROM 441a and the internal data RAM 451a may be deleted to reduce memory.
[0036]
The internal data ROM 851a and internal data RAM 861a shown in FIG. 14 are for the message AtMSg. A timeout counter value 20 is stored in the internal data ROM 851a. This is a value calculated from the task cycle 10 ms registered in FIG. 12 and the timeout value 200 ms registered in FIG. That is, if there is no continuous reception 20 times in a task of 10 ms, there is no reception for 200 ms, and a timeout occurs. The internal data RAM 451a stores a current message counter value and a timeout counter value. The example of FIG. 14 shows a state immediately after the initialization.
[0037]
FIG. 15 shows the update condition storage means 302 shown in FIG. The update condition 302b is for the message AtMsg. The update condition 302b is a condition that no message counter error, checksum error, or timeout error occurs. Note that the update condition of the update condition storage unit 202 shown in FIG. 1 is a flag that is set when the application program updates the transmission data.
[0038]
FIG. 16 shows the received data protocol processing result stored in the received data protocol processing result storage means 502 shown in FIG. The received data protocol processing result 502b is that of the message AtMsg. The presence / absence of a message counter, checksum, or timeout error is stored.
[0039]
FIG. 17 shows a message in the transmission data updating means 201 shown in FIG.
The processing contents of the transmission data update processing 201a in the case of EngineMsg are shown. In step 20101a, it is checked whether the update condition flag has been set (is not zero). The update condition is stored in the update condition storage unit 202 shown in FIG. 1, and is set by the application program 101 according to the update timing. If the update condition has been set, step 20102a is executed; otherwise, step 20114a is executed and the process ends. In step 20102a, according to the transmission / reception data and application data correspondence information 532a described in FIG. 6, the value stored in the area of engine_data0 of the transmission data storage unit 122 allocated for EngineMsg is updated to the value of the application data Data0. Hereinafter, in steps 20103a, 20104a, step 20106a, step 20107a, step 20108a, step 20110a, and step 20111a, the values stored in the transmission data storage unit 122 are updated as in step 20102a. In step 20112a, the update condition is reset (set to zero). In step 20113a, the transmission protocol processing shown in FIG. 1 is started, and the EngineMsg is transmitted. After the end of step 20113a, step 20114a is executed and the processing is ended.
[0040]
FIG. 18 shows the contents of the receiving application update processing 301b in the case of the message AtMsg in the receiving application data updating means 301 shown in FIG. In step 30101b, it is determined whether the update condition is true. If true, execute step 30102b; if false, execute step 30106b and end the process. In step 30102b, AtData0 of the application data storage unit 102 is updated to a value stored in the at_data0 area of the reception data storage unit 112 assigned to the message AtMsg according to the transmission / reception data and the application data correspondence information 532b described in FIG. . Step 30103b, step 30104b, and step 3105b also update the application data in the same manner as step 3102b. After the step 30105b is completed, the step 30106ba is executed, and the processing is terminated.
[0041]
FIG. 19 shows the contents of the message counter setting process 431 shown in FIG. In step 43101, the current message counter value is updated to a predetermined message counter area of the transmission data. In step 43102, the next message counter value is set. In step 43103, the process ends. The message counter setting process 431 will be described using the transmission message EngineMsg as an example. The internal data RAM 451a illustrated in FIG. 9 is used. In step 43101, the message counter value “0” is updated in the engine_msgcounter area of the transmission data storage unit 122. In step 43103, the next message counter value “1” is set in the message counter of the internal data RAM 451a.
[0042]
FIG. 20 shows the contents of the message counter check processing 554 shown in FIG. In step 55401, it is determined whether the message to be checked is in a receiving operation. If the receiving operation is being performed, step 55402 is executed. If the receiving operation is not being executed, step 55407 is executed. In step 55402, the message counter stored in the reception data storage unit 112 is compared with the expected value of the current message counter to check. In step 55403, if the comparison check is equal in step 55402, the result is OK, and step 55404 is executed. If the comparison checks are not equal, it is determined to be NG and step 55405 is executed. In step 55404, no error is stored in a predetermined message counter error area stored in the reception data protocol processing result storage means. In step 55405, an error is stored in a predetermined message counter error area stored in the reception data protocol processing result storage unit. In step 55406, the next message counter expected value is calculated. In step 55407, as in step 55404, no error is stored in a predetermined message counter error area stored in the received data protocol processing result storage unit. In step 55408, the expected value of the next message counter is calculated as in step 55406. After the end of Step 55406 and Step 55408, Step 55409 is executed and the process ends. The message counter check processing 554 will be described using the received message AtMsg as an example. In step 55402, the value of the at_msgcounter area of the reception data storage unit 112 is compared with the message counter value stored in the internal data RAM 451b. In steps 55404, 55405, and 55407, the result is stored in the message counter area of the received data protocol processing result 502b shown in FIG. In steps 55406 and 55408, the message counter value stored in the internal data RAM 451b is updated to the next value “1”.
[0043]
FIG. 21 shows the contents of the sum value setting processing 542 shown in FIG. In step 54201, zero is stored in the sum value storage area of the transmission data. In steps 54202 and 54203, transmission data is added by the data length in byte units. In step 54204, in step 54203, the sum value storage area of the transmission data is updated to the calculated sum value. In step 54205, the process ends. The sum value setting processing 542 will be described using the message EngineMsg as an example. The transmission data 122a1 shown in FIG. 27 indicates the value of the transmission data after the transmission data update processing 201a has been executed and the message counter setting processing 431 has been executed. In step 54201, 0 is written in the engine_checksum area of the transmission data 122a1. In steps 54202 and 54203, data values of a data length of 8 bytes are added. 0x00 + 0x01 + 0x02 + 0x03 + 0x00 + 0xF0 + 0xF5 + 0x01 = 0x1F0 and 1-byte data 0xF0 excluding the carry becomes the sum value. In step 54203, the sum value 0xF0 is written to the engine_checksum area. As a result, it becomes like transmission data 122a2.
[0044]
FIG. 22 shows the processing contents of the sum check processing 553 shown in FIG. In step 55301, the value stored in the sum value area of the received data storage unit 112 is saved. In step 55302, 0 is written to the sum value area of the received data storage unit 112. In steps 55303 and 55304, the received data is added in units of bytes corresponding to the data length, and byte data that ignores the leading digits is used as the sum value. In step 55305, the sum value saved in step 55301 is compared with the sum value obtained in steps 55303 and 55304. If they are equal, step 55306 is executed. If not equal, step 55307 is executed. In step 55306, 0 is set to the variable val. In step 55307, 1 is set to the variable val. After the step 55306 or the step 55307 ends, the step 55309 is executed. In step 55309, the sum value saved in step 55301 is stored in the original sum value area. In step 55308, val is returned and the processing ends. The sum check processing 553 will be described using the message AtMsg as an example. The case where the transmission data 112b is stored in the reception data storage unit 112 as shown in FIG. 28 will be described. In step 55301, the value “0xC1” stored in the sum value area is saved, and in step 55302, 0 is written in the sum value area. In steps 55303 and 55304, the data length is added by 4 bytes. 0xE0 + 0xE1 + 0x00 + 0x00 = 0x1C1 and the 1-byte data 0xC1 excluding the carry is used as the sum value. The sum value saved in step 55301 from step 55305 is compared with the sum value obtained in step 55303 and step 55304. Since both are equal to 0xC1, in step 55306 the variable val is set to 0. In step 55309, the saved sum value “0xC1” is written to the original sum value area. In step 55308, val is returned. In this case, "0" is returned.
[0045]
FIG. 23 shows the processing contents of the timeout monitoring processing 552 shown in FIG. In step 55201, it is checked whether the timeout monitoring is OK. If OK, step 55202 is executed, and if NG, 55209 is executed. In step 55202, the processing in step 55203 and subsequent steps is repeated for each message whose timeout has been monitored in the received message. In step 55203, it is checked whether the message is being received. If the receiving operation is being performed, step 55204 is executed. If the receiving operation is not being performed, step 55207 is executed. In step 55204, it is determined whether or not a timeout has occurred. If a timeout has occurred, step 55205 is executed. If not, step 55206 is executed. In step 55205, the timeout stored in the data protocol processing result storage unit 502 is set to an error. In step 55206, the timeout counter is updated. In step 55207, the timeout stored in the data protocol processing result storage means 502 is set without error (reset). In Step 55208, the timeout counter is reset. In step 55209, the processing in step 55210 and subsequent steps is repeated for each message whose timeout has been monitored in the received message. In step 55210, the timeout stored in the data protocol processing result storage means 502 is set without error (reset). In step 5521, the timeout counter is reset. In step 55212, the process ends. The timeout monitoring process 552 will be described using the message AtMsg as an example. If the reception is being performed with monitoring OK, step 55204 is executed. In step 55204, it is checked whether or not the timeout counter value of the internal data RAM 451b shown in FIG. 14 is "0".
“0” means that a timeout has occurred. In step 55205, if the timeout counter value of the internal data RAM 451b is "0", the timeout of the received data protocol processing result 502b shown in FIG. 16 is set to an error. In step 55026, the timeout counter value of the internal data RAM 451b is decremented. In step 55207, the timeout of the received data protocol processing result 502b shown in FIG. 16 is set without error. In step 55208, the timeout counter value of the internal data RAM 451b is updated to the timeout counter value of the internal data ROM 441b. In step 55202, if a received message whose timeout has been monitored in the message AtMsg, step 55203 and subsequent steps are executed for those received messages. Steps 55510 and 55211 operate in the same manner as steps 55202, 55207 and 55208, respectively.
[0046]
FIG. 24 shows the content of the reception process 503. In step 50301, a sum check process 553 is started to determine whether there is a checksum error. In step 50302, it is checked whether the return value is “0” based on the checksum error determination checked in step 50301. If the return value is "0", there is no error, and step 50303 is executed. If the return value is not "0", it is an error, and step 50304 is executed. In step 50303, the checksum stored in the data protocol processing result storage means 502 is set without error (reset). In step 50304, the checksum stored in the data protocol processing result storage means 502 is set to an error. In step 50305, the message counter check processing 554 is started to check the message counter. At step 50306, the receiving operation flag is set to indicate that the corresponding message is receiving. In step 50307, the process ends. The reception process 503 shown in FIG. 24 is a case where the checksum function and the message counter function are used. Steps 50301, 50302, 50303, and 50304 are unnecessary for a message that does not use the checksum function. Also, for a message that does not use the message counter function, step 50305 is unnecessary. The reception process 503 generates, for each message, a checksum function and a message counter function as shown in the attribute data related information 522b shown in FIG. By doing so, extra processing can be omitted, and there is an effect of reducing memory consumption and processing time. The reception process 503 will be described using the message AtMsg as an example. The reception process 503 corresponds to receiveAtMsg of the activation information 572b illustrated in FIG. In step 50301, a sum check process of the received data is performed in a sum check process 553. If OK, in step 50303, no error is set in the checksum of the received data protocol processing result 502b shown in FIG. If it is NG, in step 50304, an error is set in the checksum of the received data protocol processing result 502b. In step 50305, the message counter check processing 554 sets the message counter of the received data protocol processing result 502b.
[0047]
FIG. 25 shows the processing content of the reception cycle task processing 841 shown in FIG. In step 54102, the timeout monitoring process 552 shown in FIG. 23 is started. In step 54103, the process ends. In the control unit EngineCU, since the reception cycle task is 10 ms, the reception cycle task processing 841 is started at a cycle of 10 ms.
[0048]
FIG. 26 shows the contents of the process 403 at the time of transmission. In step 40301, a sum value setting process 542 shown in FIG. 21 is started. In step 40302, the message counter setting process 431 shown in FIG. 19 is started. In step 40303, the process ends. The transmission process 403 is a case where the checksum function and the message counter function are used. Step 40301 is unnecessary for a message that does not use the checksum function. Also, for a message that does not use the message counter function, step 40302 is unnecessary. The transmission process 403 generates, for each message, a checksum function and a message counter function as shown in the attribute data related information 522a shown in FIG. By doing so, extra processing can be omitted, and there is an effect of reducing memory consumption and processing time. The transmission process 403 will be described using the message EngineMsg as an example. The transmission process 403 corresponds to sendEngineMsg of the activation information 572a described in FIG. In step 40301, a sum value is set in the sum value area engine_checksamu of the transmission data storage unit 122 in a sum value setting process 542. In step 40302, a message counter is set in the message counter area engine_msgcounter of the transmission data storage unit 122 by the message counter setting process 431.
[0049]
The transmission protocol processing means 121 shown in FIG. 1 has means for storing an ID, a data length, and transmission data for each message to be transmitted. When transmitting a message, the transmission protocol processing means 121 stores the ID, the data length, and the transmission data in the CAN controller 14. Update the register and transmit. Further, if necessary, it has a function of activating a predetermined process before updating a register corresponding to transmission data of the CAN controller 14. For example, in the case of the message EngineMsg, the transmission start function sendEngineMsg of the start information 572a shown in FIG. 7 is started.
[0050]
The reception protocol processing unit 111 shown in FIG. 1 has a unit for storing an ID, a data length, and received data for each message to be received. When a message is received, the received data corresponding to the received message ID is CAN. The data is updated to the data of the register corresponding to the received data stored in the controller 14. Further, if necessary, it has a function of activating a predetermined process in synchronization with the timing at which the message is received. For example, in the case of the message AtMsg, the reception activation function receiveAtMsg of the activation information 572b illustrated in FIG. 12 is activated.
[0051]
Other embodiments (1)
In one embodiment of the present invention, the transmission data update unit 201, the reception application data update unit 301, the transmission data protocol processing unit 401, and the reception data protocol processing unit 501 are generated by the control unit development device 500. It may not be generated by the device 500. In this case, the transmission data update unit 201, the reception application data update unit 301, the transmission data protocol processing unit 401, and the reception data protocol processing unit 501 need to be generated by other units, but do not affect the application program.
[0052]
Other embodiments (2)
In one embodiment of the present invention and the other embodiment (1), the transmission data update unit 201 and the reception application data update unit 301 determine the correspondence between the application data and the transmission data or the reception data by using the transmission / reception data and the application data correspondence information 532. Although the processing for updating the transmission data or the reception application data is performed according to the attachment, the processing may be performed in the application program. In this case, since the application program can freely write data update processing such as update timing, there is an effect that the degree of freedom of processing is increased.
[0053]
Other embodiments (3)
In one embodiment of the present invention and the other embodiments (1) and (2), the update condition storing means 302 of the received application data stores the update condition, but sets a storage area in which the update condition determination result is stored. May be. In this case, the application program developer can implement the application data update process only by updating the update condition in the update condition storage unit 302.
[0054]
Other embodiments (4)
The control unit development device according to one embodiment of the present invention and the other embodiments (2) and (3) is configured such that the communication protocol generation device that generates the transmission protocol processing unit 121 and the reception protocol processing unit 111 generates a communication protocol. It has a means for cooperating with the generation device, and has a function of exchanging information. Thereby, the setting work of the control unit development device can be reduced.
[0055]
Other embodiments (5)
In one embodiment of the present invention and other embodiments (1), (2), (3), and (4), the transmission data protocol processing means 401 and the reception data protocol processing means 501 may not be provided. In this case, the transmission data update unit 201 and the reception application data update unit 301 can realize the application data update process only by the application program developer updating the update conditions in the update condition storage unit 202 and the update condition storage unit 302. .
[0056]
Other embodiments (6)
In one embodiment of the present invention and other embodiments (1), (2), (3) and (4), the transmission data protocol processing means 401 and the reception data protocol processing means 501 may have a CRC function. In this case, it is possible to detect that the received data has been destroyed.
[0057]
Other embodiments (7)
In one embodiment of the present invention and other embodiments (1), (2), (3), (4), and (6), the transmission data protocol processing means 401 performs encryption processing, and the reception data protocol processing means 501 performs decryption processing. Good. In this case, it is possible to detect that the communication data that has reached the received data has been tampered with, and to prevent the received application data stored in the received application data from being updated with the tampered data.
[0058]
The common effects of the above embodiments are as follows.
[0059]
The application program developer does not need to write communication countermeasure functions, checksum functions, reception timeout monitoring functions, and other communication-related high-reliability functions in the application program simply by setting communication specifications in the control unit development device. And it can be realized without developing a program. Also, the update processing of the transmission data for transmitting the application data and the reception application data update processing of passing the received data to the application program can be performed by setting the communication specifications in the control unit development device and not writing in the application program. It can be realized well and without program development.
[0060]
The features common to the present embodiment are as follows in a nutshell.
[0061]
The task is to easily realize highly reliable functions related to communication processing, and it has transmission protocol processing means and reception protocol processing means for realizing high reliability functions related to communication. With the configuration generated by the control unit development device in response, the application program developer can set the high-reliability communication functions related to communication in the application program simply by setting communication specifications in the control unit development device. It can be realized well and without program development.
[0062]
The effects specific to each embodiment are as follows.
[0063]
According to the other embodiment (1), the application program developer does not need to write high reliability functions related to communication such as a message counter function, a checksum function, and a reception timeout monitoring function in the application program. Also, the update processing of the transmission data for transmitting the application data and the reception application data update processing of passing the received data to the application program need not be written in the application program.
[0064]
According to another embodiment (2), the application program developer simply sets communication specifications in the control unit development device for high reliability functions related to communication such as a message counter function, a checksum function, and a reception timeout monitoring function. Therefore, it can be realized without writing in an application program and without developing a program.
[0065]
According to the other embodiment (3), the reception application data updating process of passing the received data to the application program can be realized by writing only the result of the update condition in the application program.
[0066]
According to the other embodiment (4), the already set information can be reused, so that the setting work can be reduced.
[0067]
According to the other embodiment (5), the application program developer can implement the application data update process only by updating the update condition in the update condition storage unit 202 or the update condition storage unit 302.
[0068]
According to the other embodiment (6), it is possible to detect that the received data is destroyed.
[0069]
According to the other embodiment (7), it is possible to detect that the communication data that has reached the received data has been tampered with, and to prevent the received application data stored in the received application data from being updated with the tampered data. Can be.
[0070]
Embodiments of the present invention are listed below.
[0071]
(Embodiment 1)
The control unit according to any one of claims 1 to 10,
The transmission data protocol processing means is a transmission data protocol processing program generated by the control unit development device according to claim 11.
A control unit, characterized in that:
[0072]
(Embodiment 2)
In the control unit according to claim 2, claim 3, claim 5, claim 6, claim 7, claim 8, claim 9, and claim 10,
The reception data protocol processing means is a reception data protocol processing program generated by the control unit development device according to claim 12.
A control unit, characterized in that:
[0073]
(Embodiment 3)
In the control unit according to claim 1, claim 3, claim 4, claim 6, claim 7, claim 8, claim 9, claim 10, and claim 15,
The transmission data update processing means is a transmission data update processing program generated by the control unit development device according to claim 13.
A control unit, characterized in that:
[0074]
(Embodiment 4)
In the control unit according to claim 2, claim 3, claim 5, claim 6, claim 7, claim 8, claim 9, claim 10, and claim 16,
The reception application data update processing means is a reception application data update processing program generated by the control unit development device according to claim 14.
A control unit, characterized in that:
[0075]
(Embodiment 5)
Claim 1, Claim 2, Claim 3, Claim 4, Claim 5, Claim 6, Claim 7, Claim 8, Claim 9, Claim 10, Claim 15, Claim 16, Claim The control unit according to claim 17 or claim 18,
The control unit, wherein the control unit is an automobile control unit.
[0076]
(Embodiment 6)
In a distributed system in which a plurality of control units are connected to a network and the control units perform processing in parallel with each other via the network,
The control unit may be any one of the first, second, third, fourth, fifth, sixth, seventh, eighth, ninth, ninth, tenth, tenth, and fifteenth aspects. A distributed system comprising the control unit according to any one of claims 16, 17, 18, and 19.
[0077]
【The invention's effect】
According to the present invention, the reliable communication protocol processing and the message data generation processing by the program developer are simplified.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of a distributed system in which control units according to an embodiment of the present invention are connected to a network.
FIG. 2 is a configuration diagram of a control unit development device that generates a transmission data update unit 201, a reception application data update unit 301, a transmission data protocol processing unit 401, and a reception data protocol processing unit 501.
FIG. 3 is a configuration diagram of a transmission data protocol processing template and a reception data protocol processing template.
FIG. 4 is a configuration diagram of a transmission data protocol process and a reception data protocol.
FIG. 5 shows a message in which a transmission message EngineMsg is registered in the message and transmission / reception data correspondence information registration means 561 and transmission / reception data correspondence information.
FIG. 6 shows transmission / reception data and application data correspondence information in which a transmission message EngineMsg is registered in the transmission / reception data / application data correspondence information registration unit 531.
FIG. 7 shows activation information in which a transmission message EngiMsg of the control unit EngineCU is registered by the activation information registration means 571.
8 is attribute data related information in which a transmission message EngineMsg is registered by attribute data related information registration means 521. FIG.
FIG. 9 is an example of a transmission message EngimeMsg of the internal data ROM 441 and the internal data RAM 451;
FIG. 10 shows a message in which a received message AtMsg is registered in the message and transmitted / received data correspondence information registration means 561, and transmitted / received data correspondence information.
FIG. 11 shows transmission / reception data and application data correspondence information in which a received message AtMsg has been registered in the transmission / reception data / application data correspondence information registration means 531.
FIG. 12 shows start information in which a start message registration unit 571 has registered a received message AtMsg of the control unit EngineCU.
FIG. 13 shows attribute data related information in which a received message AtMsg is registered by attribute data related information registration means 521.
14 is an example of a received message AtMsg in the internal data ROM 851 and the internal data RAM 861 shown in FIG.
15 is an example of a received message AtMsg of the update condition storage means 302. FIG.
FIG. 16 shows a received data protocol processing result of the received message AtMsg stored in the received data protocol processing result storage means 502;
FIG. 17 shows transmission data update processing contents in the case of a message EngineMsg in the transmission data updating means 201.
FIG. 18 shows the content of a reception application update process in the case of a message AtMsg in the reception application data update means 301.
FIG. 19 shows the content of a message counter setting process.
FIG. 20 shows message counter check processing contents.
FIG. 21 shows sum value setting contents.
FIG. 22 shows the contents of a sum check process.
FIG. 23 shows the content of a timeout monitoring process.
FIG. 24 shows processing contents at the time of reception.
FIG. 25 shows the content of a reception cycle task process.
FIG. 26 shows processing contents at the time of transmission.
FIG. 27 is a diagram illustrating updating of a transmission data value in a message transmission process.
FIG. 28 is a diagram showing updating of an application data value in a message receiving process.
FIG. 29 is an inter-vehicle distance control system equipped with an inter-vehicle distance control function.
[Explanation of symbols]
1a, 1b,. . . .. 1n control unit, 2 network, 11 memory, 12 bus, 13 CPU, 14 CAN controller, 90a, 90b automobile, 101 application program, 102 application data storage means, 111 reception protocol processing Means, 112: received data storage means, 121: transmission protocol processing means, 122: transmission data storage means, 201: transmission data update means, 201a: transmission data update processing, 202, 302: update condition storage means, 301: reception application Data update means, 301b ... Reception application data update processing, 302b ... Update conditions, 401 ... Transmission data protocol processing means, 403 ... Transmission processing, 411 ... Transmission cycle task processing, 421,542 ... Sum value setting processing, 431,543 … Me 441, 851 ... internal data ROM, 451, 861 ... internal data RAM, 500 ... control unit development device, 501 ... reception data protocol processing means, 502 ... reception data protocol processing result storage means, 502b ... reception data protocol Processing result, 503: Reception processing, 521: Attribute data related information registration means, 522a, 522b: Attribute data related information, 531 ... Transmission / reception data and application data correspondence information registration means, 532a, 532b: Transmission / reception data and application data correspondence information , 541: transmission data protocol processing template, 551: reception data protocol processing template, 552: timeout monitoring processing, 553: sum check processing, 554: message counter check processing, 561 ... Message and transmitted / received data correspondence information registration means, 562a, 562b ... message and transmission / reception data correspondence information, 571 ... start information registration means, 572a, 572b ... start information, 841 ... reception period task processing, 901 ... transmission, 902 ... throttle, 903: radar, 904: engine, 905: brake, 906: communication equipment.

Claims (15)

プログラムを記憶するメモリと、
該メモリに記憶された前記プログラムを実行するCPUと、
ネットワークに接続され、該ネットワーク上に送信メッセージを送信するネットワークコントローラと
を有し、
前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージを送信する制御ユニットにおいて、
アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶手段と、
前記メッセージを送信するためにネットワークコントローラに渡す送信データを記憶する送信データ記憶手段と、
前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを読み出して、前記送信データ記憶手段に記憶された送信データを更新する送信データ更新手段と、
前記送信データ記憶手段に記憶された送信データを読み出して、データ変換処理を行い、前記送信データ記憶手段に記憶された送信データを更新する送信データプロトコル処理手段と、
前記送信データ記憶手段に記憶された送信データを読み出して、前記ネットワークコントローラに渡すための送信メッセージを生成し、 前記送信メッセージを前記ネットワークコントローラに渡してメッセージを送信する送信プロトコル処理手段と
を有することを特徴とする制御ユニット。
A memory for storing the program,
A CPU for executing the program stored in the memory;
A network controller connected to the network and transmitting a transmission message on the network,
A control unit that transmits a message using the network controller while executing the program stored in the memory by the CPU;
Application data storage means for storing application data generated or used by the application program;
Transmission data storage means for storing transmission data to be passed to the network controller for transmitting the message,
Transmission data updating means for reading application data stored in the application data storage means and updating transmission data stored in the transmission data storage means;
A transmission data protocol processing unit that reads transmission data stored in the transmission data storage unit, performs data conversion processing, and updates the transmission data stored in the transmission data storage unit;
Transmission protocol processing means for reading transmission data stored in the transmission data storage means, generating a transmission message for passing to the network controller, and passing the transmission message to the network controller to transmit the message. A control unit characterized by the following.
プログラムを記憶するメモリと、
該メモリに記憶された前記プログラムを実行するCPUと、
ネットワークに接続され、該ネットワーク上に受信メッセージを受信するネットワークコントローラと
を有し、
前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージを受信する制御ユニットにおいて、
アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶手段と、
前記ネットワークコントローラが受信した受信データを記憶する受信データ記憶手段と、
前記ネットワークコントローラが受信した受信メッセージを入力して前記受信データを生成し、前記受信データ記憶手段に記憶する受信プロトコル処理手段と、
前記受信データ記憶手段に記憶された受信データを読み出して、前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新する受信アプリケーションデータ更新手段と、
前記受信データの内容を確認し、その結果を記憶する受信データプロトコル処理結果記憶手段と、
前記受信データを読み出して、受信データの内容を確認し、前記受信データ確認処理結果記憶手段に受信データ確認結果を記憶する受信データプロトコル処理手段と
を有し、
前記受信アプリケーションデータ更新手段は、前記受信データプロトコル処理結果記憶手段に記憶された前記受信データ確認結果にしたがって前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新することを特徴とする制御ユニット。
A memory for storing the program,
A CPU for executing the program stored in the memory;
A network controller connected to the network and receiving a received message on the network,
A control unit that receives a message using the network controller while executing the program stored in the memory by the CPU,
Application data storage means for storing application data generated or used by the application program;
Reception data storage means for storing reception data received by the network controller,
Receiving protocol processing means for inputting a received message received by the network controller to generate the received data, and storing the received data in the received data storage means;
Receiving application data updating means for reading the reception data stored in the reception data storage means and updating the application data stored in the application data storage means;
Confirming the content of the received data, received data protocol processing result storage means for storing the result,
Reading the reception data, confirming the content of the reception data, and having a reception data protocol processing means for storing the reception data confirmation result in the reception data confirmation processing result storage means,
The control unit, wherein the receiving application data updating means updates the application data stored in the application data storing means according to the received data confirmation result stored in the received data protocol processing result storing means.
プログラムを記憶するメモリと、
該メモリに記憶された前記プログラムを実行するCPUと、
ネットワークに接続され、該ネットワーク上に送信メッセージを送信するとともに、ネットワーク上から受信メッセージを受信するネットワークコントローラと
を有し、
前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージを送受信する制御ユニットにおいて、
アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶手段と、
前記メッセージを送信するためにネットワークコントローラに渡す送信データを記憶する送信データ記憶手段と、
前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを読み出して、前記送信データ記憶手段に記憶された送信データを更新する送信データ更新手段と、
前記送信データ記憶手段に記憶された送信データを読み出して、データ変換処理を行い、前記送信データ記憶手段に記憶された送信データを更新する送信データプロトコル処理手段と、
前記送信データ記憶手段に記憶された送信データを読み出して、前記ネットワークコントローラに渡すための送信メッセージを生成し、前記送信メッセージを前記ネットワークコントローラに渡してメッセージを送信する送信プロトコル処理手段と、
前記ネットワークコントローラが受信した受信データを記憶する受信データ記憶手段と、
前記ネットワークコントローラが受信した受信メッセージを入力して前記受信データを生成し、前記受信データ記憶手段に記憶する受信プロトコル処理手段と、
前記受信データ記憶手段に記憶された受信データを読み出して、前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新する受信アプリケーションデータ更新手段と、
前記受信データの内容を確認し、その結果を記憶する受信データプロトコル処理結果記憶手段と、
前記受信データを読み出して、受信データの内容を確認し、前記受信データ確認処理結果記憶手段に受信データ確認結果を記憶する受信データプロトコル処理手段と
を有し、
前記受信アプリケーションデータ更新手段は、前記受信データプロトコル処理結果記憶手段に記憶された前記受信データ確認結果にしたがって前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新することを特徴とする制御ユニット。
A memory for storing the program,
A CPU for executing the program stored in the memory;
A network controller connected to the network and transmitting the transmission message on the network, and receiving the reception message from the network;
A control unit that transmits and receives messages using the network controller while executing the program stored in the memory with the CPU,
Application data storage means for storing application data generated or used by the application program;
Transmission data storage means for storing transmission data to be passed to the network controller for transmitting the message,
Transmission data updating means for reading application data stored in the application data storage means and updating transmission data stored in the transmission data storage means;
A transmission data protocol processing unit that reads transmission data stored in the transmission data storage unit, performs data conversion processing, and updates the transmission data stored in the transmission data storage unit;
Transmission protocol processing means for reading transmission data stored in the transmission data storage means, generating a transmission message for passing to the network controller, passing the transmission message to the network controller and transmitting a message,
Reception data storage means for storing reception data received by the network controller,
Receiving protocol processing means for inputting a received message received by the network controller to generate the received data, and storing the received data in the received data storage means;
Receiving application data updating means for reading the reception data stored in the reception data storage means and updating the application data stored in the application data storage means;
Confirming the content of the received data, received data protocol processing result storage means for storing the result,
Reading the reception data, confirming the content of the reception data, and having a reception data protocol processing means for storing the reception data confirmation result in the reception data confirmation processing result storage means,
The control unit, wherein the receiving application data updating means updates the application data stored in the application data storing means according to the received data confirmation result stored in the received data protocol processing result storing means.
請求項1および3記載の制御ユニットにおいて、
前記送信データを更新する条件判定結果を記憶した更新条件記憶手段
を有し、
前記送信データ更新手段は、前記更新条件記憶手段に記憶された更新条件にしたがって、前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを読み出して、送信データ記憶手段に記憶された送信データを更新する
ことを特徴とする制御ユニット。
The control unit according to claim 1, wherein
An update condition storage unit storing a condition determination result for updating the transmission data,
The transmission data updating unit reads application data stored in the application data storage unit and updates transmission data stored in the transmission data storage unit according to an update condition stored in the update condition storage unit. A control unit characterized by the following.
請求項2および3記載の制御ユニットにおいて、
前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新する条件を記憶する更新条件記憶手段
を有し、
前記受信アプリケーションデータ更新手段は、前記更新条件記憶手段に記憶された更新条件にしたがって、前記受信データ記憶手段に記憶された受信データを読み出して前記アプリケーションデータ記憶手段に記憶されたアプリケーションデータを更新する
ことを特徴とする制御ユニット。
The control unit according to claim 2 or 3,
An update condition storage unit that stores a condition for updating the application data stored in the application data storage unit,
The reception application data updating unit reads the reception data stored in the reception data storage unit and updates the application data stored in the application data storage unit according to the update condition stored in the update condition storage unit. A control unit, characterized in that:
請求項1乃至5のいずれかに記載の制御ユニットにおいて、前記ネットワークはCAN(コントローラエリアネットワーク)であり、
前記記載のネットワークコントローラはCANコントローラであり、
前記記載の送信データ記憶手段はCANの8バイト以下のデータを記憶し、
前記記載の受信データ記憶手段はCANの8バイト以下のデータを記憶することを特徴とする制御ユニット。
The control unit according to any one of claims 1 to 5, wherein the network is a CAN (Controller Area Network).
The network controller described above is a CAN controller,
The transmission data storage means described above stores data of 8 bytes or less of CAN,
The above-mentioned received data storage means stores CAN data of 8 bytes or less.
請求項1乃至6のいずれかに記載の制御ユニットにおいて、前記送信データプロトコル手段は、前記送信データ記憶手段に記憶された送信データを読み出して処理を実行し得られたメッセージ送信情報を記憶し、前記記載の受信データプロトコル処理手段は、前記受信データに記憶された、前記送信データプロトコル手段で処理して得られたメッセージ送信情報を確認し、メッセージの未到着を検出するメッセージ到着確認処理を有することを特徴とする制御ユニット。The control unit according to any one of claims 1 to 6, wherein the transmission data protocol unit reads out transmission data stored in the transmission data storage unit and stores message transmission information obtained by executing processing, The above-mentioned reception data protocol processing means has a message arrival confirmation processing for confirming message transmission information stored in the reception data and obtained by processing by the transmission data protocol means, and detecting non-arrival of a message. A control unit, characterized in that: 請求項1乃至7のいずれかに記載の制御ユニットにおいて、前記送信データプロトコル手段は、前記送信データ記憶手段に記憶された送信データを読み出して処理を実行し得られた非破壊情報を前記送信データ記憶手段に記憶し、前記記載の受信データプロトコル処理手段は、前記受信データに記憶された、前記送信データプロトコル手段で処理して得られた非破壊情報をチェックし、前記送信データに記憶された送信データが破壊されることなく、前記受信データ記憶手段に記憶されたことを保証する非破壊検査処理機能を有することを特徴とする制御ユニット。The control unit according to any one of claims 1 to 7, wherein the transmission data protocol unit reads out the transmission data stored in the transmission data storage unit and executes a process to transmit the non-destructive information to the transmission data. The received data protocol processing means, which is stored in the storage means, checks the non-destructive information obtained by processing the transmission data protocol means, which is stored in the received data, and is stored in the transmission data. A control unit having a non-destructive inspection processing function for ensuring that transmitted data is stored in the received data storage means without being destroyed. 請求項7記載の制御ユニットにおいて、前記メッセージ送信情報は、送信する度に値をひとつずつ更新するメッセージカウンタであることを特徴とする制御ユニット。The control unit according to claim 7, wherein the message transmission information is a message counter that updates a value one by one each time the message transmission information is transmitted. 請求項8記載の非破壊情報は、チェックサムのサム値であることを特徴とする制御ユニット。9. The control unit according to claim 8, wherein the non-destructive information is a checksum value of a checksum. プログラムを記憶するメモリと、
該メモリに記憶された前記プログラムを実行するCPUと、
ネットワークに接続され、該ネットワーク上に送信メッセージを送信するネットワークコントローラと
を有し、
前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージ送信処理を実行する制御ユニットであり、
アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶部と、
前記メッセージを送信するためにネットワークコントローラに渡す送信データを記憶する送信データ記憶部と、
前記アプリケーションデータ記憶部に記憶されたアプリケーションデータを読み出して、前記送信データ記憶部に記憶された送信データを更新する送信データ更新プログラムと、
前記送信データ記憶部に記憶された送信データを読み出して、データ変換処理を行い、前記送信データ記憶部に記憶された送信データを更新する送信データプロトコル処理プログラムと、
前記送信データ記憶部に記憶された送信データを読み出して、前記ネットワークコントローラに渡すための送信メッセージを生成し、前記送信メッセージを前記ネットワークコントローラに渡してメッセージを送信する送信プロトコル処理プログラムと
を有する制御ユニットの前記送信データプロトコル処理プログラムを生成する制御ユニット開発装置において、
送信データ変換処理方法をメッセージ毎に登録し、前記送信データ変換処理方法と前記送信データ記憶手段に記憶されたデータとの対応を登録する属性データ関連情報登録手段と、
前記送信データ変換処理方法毎に用意された送信データプロトコル処理テンプレート手段と、
メッセージと前記送信データとの対応を登録するメッセージと送受信データ対応情報登録手段と、
前記送信データプロトコル処理手段をメッセージ毎に登録する起動情報登録手段と
を有し、
前記送信データ更新処理テンプレート手段と、
前記属性データ関連情報登録手段から登録された属性データ関連情報と、
前記送受信データ対応情報登録手段に登録されたメッセージと送信データとの対応情報と、
起動情報登録手段から登録された起動情報と
から、前記送信データプロトコル処理プログラムを自動生成することを特徴とする制御ユニット開発装置。
A memory for storing the program,
A CPU for executing the program stored in the memory;
A network controller connected to the network and transmitting a transmission message on the network,
A control unit that executes a message transmission process using the network controller while executing the program stored in the memory with the CPU,
An application data storage unit that stores application data generated or used by the application program;
A transmission data storage unit that stores transmission data to be passed to the network controller for transmitting the message;
A transmission data update program that reads application data stored in the application data storage unit and updates transmission data stored in the transmission data storage unit;
A transmission data protocol processing program for reading transmission data stored in the transmission data storage unit, performing data conversion processing, and updating the transmission data stored in the transmission data storage unit;
A transmission protocol processing program that reads transmission data stored in the transmission data storage unit, generates a transmission message to be passed to the network controller, and passes the transmission message to the network controller to transmit a message. In the control unit development device for generating the transmission data protocol processing program of the unit,
Attribute data related information registration means for registering a transmission data conversion processing method for each message, and registering a correspondence between the transmission data conversion processing method and data stored in the transmission data storage means,
Transmission data protocol processing template means prepared for each transmission data conversion processing method,
A message for registering the correspondence between the message and the transmission data and transmission / reception data correspondence information registration means,
Having activation information registration means for registering the transmission data protocol processing means for each message,
Said transmission data update processing template means,
Attribute data related information registered from the attribute data related information registration means,
Correspondence information between the message and the transmission data registered in the transmission / reception data correspondence information registration means,
A control unit development apparatus, which automatically generates the transmission data protocol processing program from start information registered by start information registration means.
プログラムを記憶するメモリと、
該メモリに記憶された前記プログラムを実行するCPUと、
ネットワークに接続され、該ネットワーク上に受信メッセージを受信するネットワークコントローラと
を有し、
前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージ受信処理を実行する制御ユニットであり、
アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶部と、
前記ネットワークコントローラが受信した受信データを記憶する受信データ記憶部と、
前記ネットワークコントローラが受信した受信メッセージを入力して前記受信データを生成し、前記受信データ記憶部に記憶する受信プロトコル処理プログラムと、
前記受信データ記憶部に記憶された受信データを読み出して、前記アプリケーションデータ記憶部に記憶されたアプリケーションデータを更新する受信アプリケーションデータ更新プログラムと、
前記受信データの内容を確認し、その結果を記憶する受信データプロトコル処理結果記憶部と、
前記受信データを読み出して、受信データの内容を確認し、前記受信データ確認処理結果記憶部に受信データ確認結果を記憶する受信データプロトコル処理プログラムと
を有し、
前記受信アプリケーションデータ更新プログラムは、前記受信データプロトコル処理結果記憶部に記憶された前記受信データ確認結果にしたがって前記アプリケーションデータ記憶部に記憶されたアプリケーションデータを更新する制御ユニットの前記受信データプロトコル処理プログラムを生成する制御ユニット開発装置において、
受信データ確認処理方法を登録し、前記受信データ確認処理方法と前記受信データ記憶部に記憶されたデータとの対応を示す属性データ関連情報を登録する属性データ関連情報登録手段と、
受信データ確認処理方法毎に用意された受信データプロトコル処理テンプレート手段と、
メッセージと前記受信データ部に記憶された受信データとの対応を登録するメッセージと送受信データ対応情報登録手段と、
前記受信データプロトコル処理プログラムをメッセージ毎に登録する起動情報登録手段と
を有し、
前記通信データプロトコル処理属性毎に用意された受信データプロトコル処理テンプレート手段と、
前記属性データ関連情報登録手段により登録された属性データ関連情報と、
前記送受信データ対応情報登録手段に登録されたメッセージと受信データとの対応情報と、
前記起動情報登録手段から登録された起動情報と
から、前記受信データプロトコル処理プログラムを自動生成することを特徴とする制御ユニット開発装置。
A memory for storing the program,
A CPU for executing the program stored in the memory;
A network controller connected to the network and receiving a received message on the network,
A control unit that executes a message reception process using the network controller while executing the program stored in the memory by the CPU;
An application data storage unit that stores application data generated or used by the application program;
A reception data storage unit that stores reception data received by the network controller,
A reception protocol processing program that receives the message received by the network controller, generates the reception data, and stores the reception data in the reception data storage unit.
A reception application data update program for reading the reception data stored in the reception data storage unit and updating the application data stored in the application data storage unit;
Confirm the content of the received data, a received data protocol processing result storage unit to store the result,
A reception data protocol processing program for reading the reception data, confirming the content of the reception data, and storing the reception data confirmation result in the reception data confirmation processing result storage unit;
The reception application data update program is a reception data protocol processing program of a control unit that updates application data stored in the application data storage unit according to the reception data confirmation result stored in the reception data protocol processing result storage unit. In the control unit development device that generates
Attribute data related information registering means for registering a received data confirmation processing method, and registering attribute data related information indicating a correspondence between the received data confirmation processing method and data stored in the received data storage unit,
A reception data protocol processing template means prepared for each reception data confirmation processing method,
A message and a transmission / reception data correspondence information registration unit for registering a correspondence between a message and reception data stored in the reception data unit,
Having activation information registration means for registering the reception data protocol processing program for each message,
Receiving data protocol processing template means prepared for each of the communication data protocol processing attributes,
Attribute data related information registered by the attribute data related information registering means,
Correspondence information between the message and the reception data registered in the transmission / reception data correspondence information registration means,
A control unit development apparatus, wherein the received data protocol processing program is automatically generated from the start information registered by the start information registration means.
プログラムを記憶するメモリと、
該メモリに記憶された前記プログラムを実行するCPUと、
ネットワークに接続され、該ネットワーク上に送信メッセージを送信するネットワークコントローラと
を有し、
前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージ送信処理を実行する制御ユニットであり、アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶部と、
前記メッセージを送信するためにネットワークコントローラに渡す送信データを記憶する送信データ記憶部と、
前記アプリケーションデータ記憶部に記憶されたアプリケーションデータを読み出して、前記送信データ記憶部に記憶された送信データを更新する送信データ更新プログラムと、
前記送信データ記憶部に記憶された送信データを読み出して、データ変換処理を行い、前記送信データ記憶部に記憶された送信データを更新する送信データプロトコル処理プログラムと、
前記送信データ記憶部に記憶された送信データを読み出して、前記ネットワークコントローラに渡すための送信メッセージを生成し、前記送信メッセージを前記ネットワークコントローラに渡してメッセージを送信する送信プロトコル処理プログラムと
を有する制御ユニットの前記送信データ更新処理プログラムを生成する制御ユニット開発装置において、
前記アプリケーションデータ記憶部に記憶されたアプリケーションデータと前記送信データ記憶部に記憶された送信データとの対応を登録する、送受信データとアプリケーションデータ対応情報登録手段と、
前記メッセージと前記送信データ記憶部に記憶された送信データとの対応を登録するメッセージと送受信データ対応情報登録手段と
を有し、
前記送受信データとアプリケーションデータ対応情報登録手段で登録した送受信データとアプリケーションデータ対応情報と、
前記メッセージと送受信データ対応情報登録手段で登録したメッセージと送受信データ対応情報と
から、前記送信データ更新処理プログラムを自動生成すること
を特徴とする制御ユニット開発装置。
A memory for storing the program,
A CPU for executing the program stored in the memory;
A network controller connected to the network and transmitting a transmission message on the network,
A control unit that executes a message transmission process using the network controller while executing the program stored in the memory by the CPU; and an application data storage unit that stores application data generated or used by an application program. ,
A transmission data storage unit that stores transmission data to be passed to the network controller for transmitting the message;
A transmission data update program that reads application data stored in the application data storage unit and updates transmission data stored in the transmission data storage unit;
A transmission data protocol processing program for reading transmission data stored in the transmission data storage unit, performing data conversion processing, and updating the transmission data stored in the transmission data storage unit;
A transmission protocol processing program that reads transmission data stored in the transmission data storage unit, generates a transmission message to be passed to the network controller, and passes the transmission message to the network controller to transmit a message. In the control unit development device for generating the transmission data update processing program of the unit,
Registering the correspondence between the application data stored in the application data storage unit and the transmission data stored in the transmission data storage unit, transmission and reception data and application data correspondence information registration means,
Having a message and transmission / reception data correspondence information registration means for registering the correspondence between the message and the transmission data stored in the transmission data storage unit,
The transmission / reception data and application data correspondence information registered by the transmission / reception data and application data correspondence information registration unit,
A control unit development apparatus, wherein the transmission data update processing program is automatically generated from the message, the message registered by the transmission / reception data correspondence information registration means, and the transmission / reception data correspondence information.
プログラムを記憶するメモリと、
該メモリに記憶された前記プログラムを実行するCPUと、
ネットワークに接続され、該ネットワーク上に受信メッセージを受信するネットワークコントローラと
を有し、
前記メモリに記憶された前記プログラムを前記CPUで実行しながら、前記ネットワークコントローラを用いてメッセージ受信処理を実行する制御ユニットであり、
アプリケーションプログラムが生成もしくは使用するアプリケーションデータを記憶するアプリケーションデータ記憶部と、
前記ネットワークコントローラが受信した受信データを記憶する受信データ記憶部と、
前記ネットワークコントローラが受信した受信メッセージを入力して前記受信データを生成し、前記受信データ記憶部に記憶する受信プロトコル処理プログラムと、
前記受信データ記憶部に記憶された受信データを読み出して、前記アプリケーションデータ記憶部に記憶されたアプリケーションデータを更新する受信アプリケーションデータ更新プログラムと、
前記受信データの内容を確認し、その結果を記憶する受信データプロトコル処理結果記憶部と、
前記受信データを読み出して、受信データの内容を確認し、前記受信データ確認処理結果記憶部に受信データ確認結果を記憶する受信データプロトコル処理プログラムと
を有し、
前記受信アプリケーションデータ更新プログラムは、前記受信データプロトコル処理結果記憶部に記憶された前記受信データ確認結果にしたがって前記アプリケーションデータ記憶部に記憶されたアプリケーションデータを更新する制御ユニットの前記受信アプリケーションデータ更新処理プログラムを生成する制御ユニット開発装置において、
前記アプリケーションデータ記憶部に記憶されたアプリケーションデータと前記受信データ記憶部に記憶された受信データとの対応を登録する、送受信データとアプリケーションデータ対応情報登録手段と、
前記メッセージと前記受信データ記憶部に記憶された受信データとの対応を登録するメッセージと送受信データ対応情報登録手段と
を有し、
前記送受信データとアプリケーションデータ対応情報登録手段で登録した送受信データとアプリケーションデータ対応情報と、
前記メッセージと送受信データ対応情報登録手段で登録したメッセージと送受信データ対応情報と
から、前記受信アプリケーションデータ更新処理プログラムを自動生成することを特徴とする制御ユニット開発装置。
A memory for storing the program,
A CPU for executing the program stored in the memory;
A network controller connected to the network and receiving a received message on the network,
A control unit that executes a message reception process using the network controller while executing the program stored in the memory by the CPU;
An application data storage unit that stores application data generated or used by the application program;
A reception data storage unit that stores reception data received by the network controller,
A reception protocol processing program that receives the message received by the network controller, generates the reception data, and stores the reception data in the reception data storage unit.
A reception application data update program for reading the reception data stored in the reception data storage unit and updating the application data stored in the application data storage unit;
Confirm the content of the received data, a received data protocol processing result storage unit to store the result,
A reception data protocol processing program for reading the reception data, confirming the content of the reception data, and storing the reception data confirmation result in the reception data confirmation processing result storage unit;
The reception application data updating program of the control unit that updates application data stored in the application data storage unit according to the reception data confirmation result stored in the reception data protocol processing result storage unit. In a control unit development device that generates a program,
Registering the correspondence between the application data stored in the application data storage unit and the reception data stored in the reception data storage unit, transmission and reception data and application data correspondence information registration means,
Having a message and transmission / reception data correspondence information registration means for registering the correspondence between the message and the reception data stored in the reception data storage unit,
The transmission / reception data and application data correspondence information registered by the transmission / reception data and application data correspondence information registration unit,
A control unit development apparatus, wherein the reception application data update processing program is automatically generated from the message, the message registered by the transmission / reception data correspondence information registration means, and the transmission / reception data correspondence information.
通信に関わる高信頼化通信プロトコルを実現する送信プロトコル処理手段と受信プロトコル処理手段をもち、送信プロトコル手段と受信プロトコル手段は、通信仕様に応じて制御ユニット開発装置により生成されることを特徴とするデータ処理装置。It has transmission protocol processing means and reception protocol processing means for realizing a highly reliable communication protocol relating to communication, and the transmission protocol means and the reception protocol means are generated by a control unit development device according to communication specifications. Data processing device.
JP2002158493A 2002-05-31 2002-05-31 Control unit development equipment Expired - Fee Related JP3873815B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002158493A JP3873815B2 (en) 2002-05-31 2002-05-31 Control unit development equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002158493A JP3873815B2 (en) 2002-05-31 2002-05-31 Control unit development equipment

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2006238435A Division JP2006320033A (en) 2006-09-04 2006-09-04 Control unit and control unit development apparatus

Publications (2)

Publication Number Publication Date
JP2004007104A true JP2004007104A (en) 2004-01-08
JP3873815B2 JP3873815B2 (en) 2007-01-31

Family

ID=30428716

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002158493A Expired - Fee Related JP3873815B2 (en) 2002-05-31 2002-05-31 Control unit development equipment

Country Status (1)

Country Link
JP (1) JP3873815B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008042411A (en) * 2006-08-03 2008-02-21 Toyota Motor Corp Network system
JP2011234212A (en) * 2010-04-28 2011-11-17 Toyota Motor Corp Task control device
JP2014520418A (en) * 2011-04-26 2014-08-21 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング Method and apparatus for serial data transmission adjusted to memory size

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008042411A (en) * 2006-08-03 2008-02-21 Toyota Motor Corp Network system
JP2011234212A (en) * 2010-04-28 2011-11-17 Toyota Motor Corp Task control device
JP2014520418A (en) * 2011-04-26 2014-08-21 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング Method and apparatus for serial data transmission adjusted to memory size

Also Published As

Publication number Publication date
JP3873815B2 (en) 2007-01-31

Similar Documents

Publication Publication Date Title
US11354179B2 (en) System, method and computer program product for sharing information in a distributed framework
JP2000257501A (en) Controller for automobile
JP2005508049A5 (en)
Tumenjargal et al. Embedded software and hardware implementation system for a human machine interface based on ISOAgLib
JP2004007104A (en) Control unit and control unit development apparatus
JP2006320033A (en) Control unit and control unit development apparatus
JP7049641B2 (en) Communication device, information communication terminal device and communication method
US20080077693A1 (en) System and method for automatically generating a proxy interface object to communicate through a gateway software server to a remote software server
JP3652307B2 (en) Print engine simulator, development system, simulation method, computer program product, and computer program
JP3051533B2 (en) Multiplex transmission method and multiple transmission device
Ernberg et al. Specification and validation of a simple overtaking protocol using LOTOS
JP2770281B2 (en) Data transmission method
Ham et al. Implementation of ECU for Agricultural Machines Based on ISOAgLib Open Source
JP3091791B2 (en) Message type data processing system
Krywult Real-time communication systems for small autonomous robots
JP2004222071A (en) Data communication device
CN115834611A (en) Cross-gatekeeper data synchronization consistency method, device, equipment and medium
Lakin et al. Communication in ad hoc networks or: CORBA considered harmful
Shanwell et al. Remote Diagnostics of Heavy Trucks through Telematics
JP2005278001A (en) Tcp processing circuit and semiconductor integrated circuit
CN115731702A (en) Vehicle data processing method and device, vehicle and cloud
Jakobsson et al. Development of a TCP/IP Stack in real time embedded system
Zhang Advances in Methods for Networked and Cyber-Physical System
JP2001313655A (en) Method and device for analyzing ieee1394 bus
Loy et al. New Platforms

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040827

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20060419

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060629

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060704

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060904

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061003

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061016

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101102

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101102

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101102

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111102

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121102

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121102

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131102

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees