JP3690179B2 - 自動車用制御装置 - Google Patents

自動車用制御装置 Download PDF

Info

Publication number
JP3690179B2
JP3690179B2 JP11854199A JP11854199A JP3690179B2 JP 3690179 B2 JP3690179 B2 JP 3690179B2 JP 11854199 A JP11854199 A JP 11854199A JP 11854199 A JP11854199 A JP 11854199A JP 3690179 B2 JP3690179 B2 JP 3690179B2
Authority
JP
Japan
Prior art keywords
data
packet
transmission
communication
packet data
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.)
Expired - Lifetime
Application number
JP11854199A
Other languages
English (en)
Other versions
JP2000310153A (ja
Inventor
広隆 酒井
岩井  明史
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.)
Denso Corp
Original Assignee
Denso Corp
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 Denso Corp filed Critical Denso Corp
Priority to JP11854199A priority Critical patent/JP3690179B2/ja
Priority to US09/551,870 priority patent/US6374161B1/en
Priority to DE60031464T priority patent/DE60031464T2/de
Priority to ES00108801T priority patent/ES2254066T3/es
Priority to DE60025969T priority patent/DE60025969T2/de
Priority to EP00108801A priority patent/EP1049062B1/en
Priority to ES04022240T priority patent/ES2270248T3/es
Priority to EP04022240A priority patent/EP1486927B1/en
Publication of JP2000310153A publication Critical patent/JP2000310153A/ja
Application granted granted Critical
Publication of JP3690179B2 publication Critical patent/JP3690179B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Air-Conditioning For Vehicles (AREA)
  • Multi Processors (AREA)
  • Small-Scale Networks (AREA)
  • Regulating Braking Force (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、制御対象を制御するためにマイクロコンピュータからなる情報処理装置を備えた自動車用制御装置に関し、特に、その情報処理装置が、当該自動車用制御装置内や他の自動車用制御装置に備えられた他の情報処理装置とデータ通信を行うことにより、その通信相手の情報処理装置と制御用のデータを共有するようにした自動車用制御装置に関する。
【0002】
【従来の技術】
従来より、自動車に搭載されたエンジンやトランスミッション等の制御対象を制御する自動車用制御装置は、制御対象を制御するための演算処理を行う情報処理装置として、マイクロコンピュータ(以下、マイコンという)を備えている。
【0003】
そして、近年における制御内容の複雑化に伴い、この種の自動車用制御装置では、それに搭載されたマイコンが、同じ自動車用制御装置内や他の自動車用制御装置に搭載された他のマイコンとデータ通信を行って、その通信相手のマイコンと制御対象の制御に用いるデータ(制御用データ)を共有することにより、制御性を向上させている。
【0004】
例えば、こうした自動車用制御装置(以下、ECUともいう)の通信形態上のシステム構成としては、1つのECUに搭載された2のマイコンがデータ通信を行う、ECU内通信のシステム構成がある。また、2つのECUに夫々搭載された各マイコンが、自動車内に配設されたシリアル通信線を介し1対1でデータ通信を行う、ECU間シリアル通信のシステム構成がある。また更に、3つ以上のECUに夫々搭載された各マイコンが、自動車内に配設された多重通信線を介し1対多或いは多対1でデータ通信を行う、ECU間多重通信のシステム構成がある。そして更に、上記各システム構成を併せ持ったシステム構成もある。つまり、1つのECUに搭載されたマイコンが、同じECUに搭載された他のマイコンとデータ通信を行うと共に、他のECUに搭載されたマイコンともシリアル通信線や多重通信線を介してデータ通信を行う、といったシステム構成である。
【0005】
次に、このようなECUの内部構成及びそれに搭載されたマイコンで行われる処理の内容について、他のECUと通信線を介してデータ通信を行うエンジン制御用のECU(エンジンECU)を例に挙げて、図11を用い説明する。尚、図11は、エンジンECUを含む複数のECUからなる一般的な車両制御システムの構成を表す構成図である。
【0006】
図11に示すように、エンジンECUでは、それに搭載されたマイコン600が、エンジン回転パルス,車速パルス,及びシフトレバー位置信号などの各種信号を、入出力回路602を介して取り込み、エンジンを制御するための演算処理を行う。
【0007】
ここで、エンジンECUのマイコン600に取り込まれる入力信号や、その入力信号に基づきマイコン600で演算される演算結果の中には、他のECUでも必要とされるものがある。例えば、エンジンECUのマイコン600では、エンジン回転パルスのパルス間隔を計測してエンジン回転数を算出するが、エンジン回転数は、エンジンの制御に用いられるだけでなく、車室内にあるメータパネル内のエンジン回転数表示部(タコメータ)に表示されるものであるため、メータパネル内の計器類を制御するECU(メータECU)においても必要となる。
【0008】
このため、エンジンECUにおいて、マイコン600により算出されたエンジン回転数や車速などの物理値を表す各種のデータは、所定の送信タイミングになった時に、マイコン600から通信IC604へ送られ、更にドライバ回路606を介して通信線へ送出される。すると、その通信線に接続されたメータECUなどの他のECU(詳しくは、そのECUに搭載されたマイコン)は、通信線を介して送られて来たデータを受信して、自己の制御対象を制御するための演算処理に用いることとなる。
【0009】
ところで、上記のような車両制御システムを構成するECUにおいて、マイコンは、各種のデータを個別に送信するのではなく、図12に例示するように、エンジン回転数データや車速データ、更にメータパネル内のウォーニングランプ(警告灯)を点灯させるためのフェイルセーフ用データ等といった複数種類のデータを、所定の順番に並べてパケットデータを作成し、そのパケットデータを通信相手へ送信するようにしている。尚、パケットデータの先頭には、一般に、通信プロトコルに応じたヘッダ情報が付加される。
【0010】
そして、このようなパケットデータは、一般に、1種類だけでなく、それを構成する各種データの組み合わせや並び順などによって複数種類作成され、その各パケットデータが、予め定められた送信タイミングで他のECUや他のマイコンへ送信される。そして更に、どのパケットデータにどの種別のデータを含ませるかは、車両制御システムの構成(特に、各マイコンの役割分担)によって適宜決定される。
【0011】
また、一般に、この種の車両制御システムでは、予め定められた時間間隔毎に定期的に送信すれば良いデータと、内容が更新されたら即座に送信しなければならないデータとがあり、このことは、そのデータを受ける通信相手側の機能によって決まる。
【0012】
前述したエンジンECUとメータECUとの関係を例に挙げて具体的に説明すると、タコメータに表示させるエンジン回転数のデータは、前者であり、上記フェイルセーフ用データは、後者である。つまり、フェイルセーフ用のデータについては、異常が発生したら、それを即座に運転者へ報知する必要があるため、予め定められた時間間隔毎に到来する送信タイミングを待つことなく、異常検出時に即座に送信するように設定されるのである。
【0013】
また、上記のようなフェイルセーフ用データの他にも、例えば、エンジンECUのマイコンが、燃料噴射を20回行った分の累計燃料噴射量を表す噴射量データをメータECUへ送信し、メータECUのマイコンは、上記噴射量データに基づき燃料総消費量を計算してディスプレイに表示する、といったシステムの場合には、燃料噴射が20回行われる時間間隔は一定でなくエンジン回転数に応じて変わるため、エンジンECUのマイコンは、燃料噴射が20回完了して噴射量データの値が更新される、といったイベントが発生した時に、最新の噴射量データをメータECUへ送信することとなる。尚、このように、特定のデータが更新された時に、そのデータを即座に送信することを、定期的な送信を意味する「定時送信」と区別して、一般に、「イベント送信」と呼んでいる。
【0014】
そこで、従来より、この種の車両制御システムを構成するECUのマイコンでは、予め設定された一定時間毎に実行されるパケットデータ作成用プログラムによって、送信予定の全てのパケットデータを常時作成し、他のプログラムにより、下記の(1),(2)のような手順で、定時送信とイベント送信とを行うようにしていた。尚、パケットデータ作成用プログラムの実行周期は、そのプログラムで作成されるパケットデータの送信周期よりも当然短く設定される。
【0015】
(1)定時送信については、予め定められた時間間隔毎に到来する送信タイミングになると、上記パケットデータ作成用プログラムによって作成されているパケットデータのうちで今回送信すべきパケットデータを選び、そのパケットデータを通信相手へ送信するようにしていた。
【0016】
(2)イベント送信については、上記パケットデータ作成用プログラムによって作成されるパケットデータのうちで、イベント送信すべきデータを含んだパケットデータを対象として、そのパケットデータに含まれているイベント送信すべきデータの内容が変化したか否かを定期的に監視し、変化したことを検知すると、そのパケットデータを即座に通信相手へ送信するようにしていた。
【0017】
【発明が解決しようとする課題】
しかしながら、上記従来のECUでは、以下の問題があった。
▲1▼:送信予定の全てのパケットデータを、一定時間毎に作成するようにしているため、各送信タイミング毎に異なるパケットデータ(異なる種別のデータによって構成されるパケットデータ)を夫々送信する場合でも、常に全てのパケットデータを逐次更新して記憶しておかなければならず、大きなメモリ領域が必要となる。また、次の送信タイミングでは送信しないパケットデータも作成することとなるため、処理上の無駄が多い。
【0018】
▲2▼:各パケットデータを構成するデータの種別やそのデータのパケットデータ内における配置位置を変更しようとした場合、パケットデータ作成用プログラムを詳細に見て修正しなければならず、非常に手間がかかる。
▲3▼:何れかのパケットデータの送信周期を短く変更しようとした場合、変更後の送信周期よりも更に短い実行間隔のプログラムによって、そのパケットデータを作成するように修正しなければならず、プログラムをどのように修正するかを決定するには、プログラム全体を理解していないとできない。
【0019】
このように従来のECUでは、処理上やメモリ領域の面で無駄が多く、しかも、様々な変更に対して容易に対応することができなかった。そして、理想としては、定時送信とイベント送信との両方について、データ送信を行うべき時に、送信対象のパケットデータを迅速に且つ効率的に作成し、更に、上記▲2▼,▲3▼のような変更に対して容易に対応できれば良いのであるが、従来の技術では、こうした理想的な装置を得ることができなかった。
【0020】
そこで、本発明は、定時送信とイベント送信との両方について、データ送信を行うべき時に、送信対象のパケットデータを迅速に且つ効率的に作成することができると共に、パケットデータを構成するデータの種別や並び、更には、パケットデータの定時送信間隔の変更に対して、非常に容易に対応することができる自動車用制御装置を提供することを目的としている。
【0021】
【課題を解決するための手段、及び発明の効果】
上記目的を達成するためになされた請求項1に記載の本発明の自動車用制御装置は、情報処理装置を備えており、その情報処理装置は、自動車に搭載された制御対象を制御するための演算処理を行うと共に、その演算処理により算出した制御用のデータを所定の記憶部に格納する。そして更に、前記情報処理装置は、前記記憶部に格納されたデータのうちで、前記自動車に搭載された通信相手へ送信すべき複数種類の送信対象データを、所定の順番に並べてパケットデータを作成し、その作成したパケットデータを前記通信相手へ送信する。
【0022】
ここで特に、本発明の自動車用制御装置において、情報処理装置は、第1のデータテーブルと第2のデータテーブルとを格納したテーブル格納部を備えており、第1のデータテーブルには、前記パケットデータの識別番号であるパケット番号毎に、そのパケット番号のパケットデータを構成する各送信対象データの種別番号が記述されている。また、第2のデータテーブルには、送信対象データの種別番号毎に、その種別番号の送信対象データが構成要素となるパケットデータのパケット番号と、その種別番号の送信対象データが前記パケットデータ内においてどの位置に配置されるかを示す配置位置情報とが記述されている。
【0023】
そして、この情報処理装置では、定時送信動作起動手段が、予め定められた送信周期毎に、通信相手へ今回送信すべきパケットデータのパケット番号を送信指令として出し、この定時送信動作起動手段によって送信指令としてのパケット番号が出されると、定時送信用パケットデータ作成手段が、前記第1のデータテーブルから、前記送信指令として出されたパケット番号に対応して記述されている各送信対象データの種別番号を取得して、その各種別番号の送信対象データを前記記憶部から読み出すと共に、前記第2のデータテーブルから、前記取得した各種別番号に夫々対応して記述されている配置位置情報を取得し、前記記憶部から読み出した各送信対象データを前記取得した各配置位置情報に基づいて並べることにより、前記送信指令として出されたパケット番号のパケットデータを作成する。
【0024】
また、この情報処理装置では、イベント送信動作起動手段が、前記記憶部内の送信対象データのうちの特定のデータが更新されたことを検出すると、その特定のデータの種別番号を送信指令として出し、このイベント送信動作起動手段によって送信指令としての種別番号が出されると、イベント送信用パケットデータ作成手段が、前記第2のデータテーブルから、前記送信指令としての種別番号に対応して記述されているパケット番号を取得し、次いで、前記第1のデータテーブルから、前記取得したパケット番号に対応して記述されている各送信対象データの種別番号を取得して、その各種別番号の送信対象データを前記記憶部から読み出すと共に、前記第2のデータテーブルから、前記取得した各種別番号に夫々対応して記述されている配置位置情報を取得し、前記記憶部から読み出した各送信対象データを前記取得した各配置位置情報に基づいて並べることにより、前記送信指令として出された種別番号のデータが含まれるパケットデータを作成する。
【0025】
そして、上記定時送信用パケットデータ作成手段とイベント送信用パケットデータ作成手段との何れかによってパケットデータが作成されると、送信手段が、その作成されたパケットデータを通信相手へ送信する。
このような本発明の自動車用制御装置において、予め定められた送信周期毎の定時送信を行う時には、まず、定時送信動作起動手段によって、今回送信すべきパケットデータのパケット番号が送信指令として出される。
【0026】
すると、定時送信用パケットデータ作成手段は、第1のデータテーブルから、上記送信指令として出されたパケット番号のパケットデータ(即ち、今回送信すべきパケットデータ)を構成する各送信対象データの種別番号を取得して、その各種別番号の送信対象データを記憶部から読み出すこととなるが、このとき、第1のデータテーブルには、パケット番号毎に、そのパケット番号のパケットデータを構成する各送信対象データの種別番号が記述されているため、定時送信用パケットデータ作成手段は、時間のかかる検索処理を行うことなく、送信指令として出されたパケット番号に対応して記述されている各種別番号を読み取るだけで、今回送信すべきパケットデータを構成する各データの種別番号を即座に取得することができる。
【0027】
そして更に、定時送信用パケットデータ作成手段は、第2のデータテーブルから、上記取得した各種別番号に夫々対応して記述されている配置位置情報(即ち、今回送信すべきパケットデータを構成する各送信対象データの、そのパケットデータ内における配置位置の情報)を取得し、その取得した配置位置情報に基づいて、上記記憶部から読み出した各送信対象データを並べることにより、今回送信すべきパケットデータを作成することとなるが、特に、第2のデータテーブルには、送信対象データの種別番号毎に、その送信対象データの配置位置情報が記述されているため、定時送信用パケットデータ作成手段は、時間のかかる検索処理を行うことなく、第1のデータテーブルから取得した種別番号に対応して記述されている配置位置情報を読み取るだけで、記憶部から読み出した各送信対象データのパケットデータ内における配置位置を知ることができ、定時送信用のパケットデータを迅速に作成することができる。
【0028】
一方、本発明の自動車用制御装置において、記憶部内の送信対象データのうち、イベント送信すべき特定のデータが更新されて、その更新されたデータを含むパケットデータを送信(イベント送信)する時には、まず、イベント送信動作起動手段によって、今回イベント送信すべきデータ(更新されたデータ)の種別番号が送信指令として出される。
【0029】
すると、イベント送信用パケットデータ作成手段は、第2のデータテーブルから、上記送信指令として出された種別番号に対応して記述されているパケット番号(即ち、更新されたデータを構成要素とする今回イベント送信すべきパケットデータのパケット番号)を取得することとなるが、特に、第2のデータテーブルには、送信対象データの種別番号毎に、その送信対象データが構成要素となるパケットデータのパケット番号が記述されているため、イベント送信用パケットデータ作成手段は、時間のかかる検索処理を行うことなく、送信指令として出された種別番号に対応して記述されているパケット番号を読み取るだけで、今回イベント送信すべきパケットデータのパケット番号を即座に取得することができる。
【0030】
その後、イベント送信用パケットデータ作成手段は、第2のデータテーブルから取得したパケット番号を元に、定時送信用パケットデータ作成手段と同じ手順で、今回イベント送信すべきパケットデータを作成することとなる。そして、その作成時においても、イベント送信用パケットデータ作成手段は、時間のかかる検索処理を行うことなく、第1のデータテーブルから、今回送信すべきパケットデータを構成する各データの種別番号を即座に取得することができると共に、第2のデータテーブルから、各データの配置位置情報を即座に取得して、イベント送信用のパケットデータを迅速に作成することができる。
【0031】
以上のように本発明の自動車用制御装置では、定時送信用のパケットデータとイベント送信用のパケットデータとを作成するための情報を定義するデータマップを、第1のデータテーブルと第2のデータテーブルとに分け、第1のデータテーブルには、パケット番号毎に、そのパケット番号のパケットデータを構成する各送信対象データの種別番号を記述し、第2のデータテーブルには、送信対象データの種別番号毎に、その種別番号のデータがパケットデータ内においてどの位置に配置されるかを示す配置位置情報と、その種別番号のデータが構成要素となるパケットデータのパケット番号とを記述するようにしている。
【0032】
このため、定時送信とイベント送信との何れの送信時においても、その時に送信すべきパケットデータを迅速に作成することができる。
そして、本発明の自動車用制御装置によれば、実際に送信するパケットデータを、その都度、迅速に作成することができるため、従来装置のように、送信予定のパケットデータを定期的に予め作成しておく必要がなく、処理上及びメモリ領域の面で無駄が無い。つまり、定時送信とイベント送信との両方について、データ送信を行うべき時に、送信対象のパケットデータを迅速に且つ効率的に作成することができるのである。
【0033】
しかも、本発明の自動車用制御装置によれば、パケットデータを構成するデータの種別や並びを変更する場合に、従来装置の如くプログラムを修正する必要がなく、種別の変更に対しては、第1のデータテーブルにてパケット番号毎に記述する送信対象データの種別番号を修正し、並びの変更に対しては、第2のデータテーブルにて送信対象データの種別番号毎に記述する配置位置情報を修正するだけで対応することができる。
【0034】
そして更に、何れかのパケットデータを定時送信する時間間隔(定時送信間隔)を変更する場合には、定時送信動作起動手段がどの周期でどのパケット番号を送信指令として出すか、という内容を修正するだけで対応することができ、プログラム全体を十分に理解していない者でも容易に修正作業を行うことができる。
【0035】
つまり、本発明の自動車用制御装置によれば、パケットデータを構成するデータの種別や並び、或いは更に、パケットデータの定時送信間隔の変更に対して、非常に容易に対応することができる。
また、本発明の自動車用制御装置によれば、第2のデータテーブルにて送信対象データの種別番号毎に記述するパケット番号を修正するだけで、イベント送信するパケットデータを変更することができる。
【0036】
次に、請求項2に記載の自動車用制御装置では、請求項1に記載の装置において、第1のデータテーブルには、パケット番号毎に、そのパケット番号のパケットデータを送信すべき送信周期も記述されている。そして、定時送信動作起動手段は、第1のデータテーブルに記述された各パケット番号を、そのパケット番号に対応して第1のデータテーブルに記述されている送信周期毎に、前記送信指令として出すよう構成されている。
【0037】
この請求項2に記載の自動車用制御装置によれば、何れかのパケットデータの定時送信間隔を変更する場合、第1のデータテーブルにて、そのパケットデータのパケット番号に対応して記述された送信周期を修正するだけで良く、パケットデータの定時送信間隔の変更に対して、より一層容易に対応することができる。
【0038】
ところで、この種の自動車用制御装置(ECU)においては、同じ種別の制御用データであっても、各ECUで扱われる分解能が異なる場合がある。図11の例で具体的に説明すると、例えば、エンジンECUでは、エンジン回転数のデータを、LSB当たり(最下位の1ビット当たり)50/256(=約0.195)rpmの分解能で扱ってエンジンに対する制御量を求めるが、メータECUでは、エンジン回転数のデータを、LSB当たり1rpmで扱う、といった具合である。そして、各制御用データの分解能(即ち、そのデータのLSB当たりによって示される物理値であり、そのデータの精度である)は、そのデータを扱うマイコンで要求される演算精度に応じて、システム設計時に適宜決められるものである。
【0039】
このため、データを算出して送信する側と受信する側とで、そのデータを扱う上での分解能が異なる場合には、データを送信する側が、算出した送信対象データに対して、「そのデータを、該データが示す物理値を通信相手側で扱われる分解能で表すデータに変換する精度変換処理」を行い、その精度変換処理後のデータを通信相手へ送信する様にすれば、受信する側は、受信したデータをそのまま処理に用いることができる。
【0040】
尚、精度変換処理の具体的な処理手順は様々であるが、その思想としては、変換対象のデータが示す10進値を、そのデータの元の分解能B1と通信相手側の分解能B2との比(=B2/B1)で割り、その商を示すデジタルデータを、精度変換後のデータとするものである。また、このことから、変換対象のデータを右シフトして、そのデータ長を短くする(例えば、2バイトを1バイトに変更する)といったデータ長変換も、精度変換の一つである。また更に、以下の説明では、こうした精度変換を、データのLSB当たりによって示される物理値を変更するという意味合いから、“LSB変換”あるいは“物理値変換”とも言う。
【0041】
そこで、請求項3に記載の自動車用制御装置では、上記請求項1,2に記載の装置において、まず、情報処理装置が、前記記憶部内の各送信対象データに対して、上記精度変換処理を行うための、複数種類の変換プログラムを格納した変換プログラム格納手段を備えている。
【0042】
また、前記第2のデータテーブルには、送信対象データの種別番号毎に、その種別番号の送信対象データに対して上記精度変換処理を行うための変換プログラムが、前記変換プログラム格納手段内において何れの格納位置に格納されているかを示す格納位置情報も記述されている。
【0043】
そして、定時送信用パケットデータ作成手段とイベント送信用パケットデータ作成手段との各々は、前記記憶部から読み出した送信対象データの各々について、前記第2のデータテーブルから、その送信対象データの種別番号に対応して記述されている前記格納位置情報を取得すると共に、その送信対象データを処理対象として前記取得した格納位置情報が示す格納位置に格納されている変換プログラムを起動することにより、前記記憶部から読み出した各送信対象データに対して前記精度変換処理を行い、その精度変換処理後の各送信対象データを、前記第2のデータテーブルから取得した各配置位置情報に基づいて並べることにより、今回送信すべきパケットデータを作成する。
【0044】
この請求項3に記載の自動車用制御装置によれば、送信対象データを、通信相手側で扱われる分解能のデータに変換(精度変換)して送信することができるだけでなく、何れかの送信対象データに対する精度変換の内容を変更する場合、第2のデータテーブルにて送信対象データの種別番号毎に記述する前記格納位置情報を修正するだけで対応することができ、精度変換内容の変更に対する修正作業が非常に簡単になる。尚、新たな内容の精度変換処理が必要な場合には、その精度変換処理を行うための変換プログラムを、変換プログラム格納手段に追加した上で、第2のデータテーブルに記述する上記格納位置情報を修正すれば良い。
【0045】
また、この自動車用制御装置では、精度変換すべきデータを処理対象として、第2のデータテーブルに記述された格納位置情報から特定される変換プログラムを起動することにより、そのデータに対して精度変換処理を行うようにしているため、同じ内容の精度変換を行うデータが複数種類ある場合には、その複数種類のデータに対して同じ変換プログラムを共通に使用することができ、プログラムを格納するためのメモリ容量も削減することができる。
【0046】
【発明の実施の形態】
以下、本発明が適用された実施形態の車両制御システムについて、図面を用いて説明する。
まず、図1は、実施形態の車両制御システム1の構成を表す構成図である。尚、本実施形態の車両制御システム1は、車両に搭載されたエンジン,トランスミッション,エアコン,計器類,ブレーキ及びその他の電装品を制御するものである。
【0047】
図1に示すように、本実施形態の車両制御システム1は、主にエンジン及びトランスミッションを制御する制御装置(以下、エンジンECUという)2と、エアコンを制御する制御装置(以下、エアコンECUという)4と、メータパネル内の計器や警告灯を制御する制御装置(以下、メータECUという)6と、車両の不安定な横滑り状態等を抑制するための車両姿勢制御を行う制御装置(以下、姿勢制御ECUという)8とを備えている。
【0048】
そして、エンジンECU2とエアコンECU4とメータECU6は、多重通信線10を介して、互いに通信可能に接続されている。また、エンジンECU2は、多重通信線10とは別のシリアル通信線11を介して、姿勢制御ECU8と1対1のシリアル通信が可能に接続されている。尚、多重通信線10での通信プロトコルと、シリアル通信線11での通信プロトコルとは、異なるものである。
【0049】
ここで、エンジンECU2は、車速SPDを検出するための車速センサ12,エンジン回転数(以下、単に回転数Neという)を検出するためのクランク角センサ14,及びエンジンの冷却水温(以下、単に水温THWという)を検出するための水温センサ16等の、各種センサからの検出信号に基づいて、車両の運転状態を検出する。そして、その検出結果や、後述するようにエアコンECU4から送信されて来る外気温TAMのデータ等に基づいて、インジェクタ18,イグナイタ20,及び図示しない他のアクチュエータを駆動することにより、エンジン及びトランスミッションを最適状態に制御する。
【0050】
そして更に、エンジンECU2は、上記の如く検出した車速SPD,回転数Ne,及び水温THW等を表す制御用の各種データを、多重通信線10及びシリアル通信線11へ適宜送信すると共に、後述するようにエアコンECU4から送信されて来るエアコン制御データACに応じて、A/Cマグネットクラッチ22を作動させることにより、エンジンの駆動力をエアコンの冷媒コンプレッサに伝達させて、エアコンの冷房運転を可能にする。
【0051】
一方、エアコンECU4は、外気センサ26及び内気センサ28からの検出信号に基づき車両外の気温(外気温)TAMと車室内の気温(内気温)とを検出して、該検出結果のデータを送信すると共に、その検出結果と、エンジンECU2から送信されて来る車速SPD,回転数Ne,及び水温THW等を表すデータとに応じて、送風用のブロアモータ30や配風を切り換えるためのエアミックスダンパ32等を駆動することにより、車室内の空調を制御する。また、エアコンECU4は、車両の運転者等によってエアコンスイッチ24がオンされると、エンジンECU2にA/Cマグネットクラッチ22を作動させるために、上述したエアコン制御データACを送信する。
【0052】
そして、メータECU6は、エンジンECU2から送信されて来る車速SPD,回転数Ne,及び水温THW等を表すデータに応じて、メータパネル内のスピードメータ40,タコメータ42,及び水温メータ(図示省略)等を駆動する。また、メータECU6は、エンジンECU2が異常を検出した時に送信する異常報知用の各データ(フェイルセーフ用データ)に応じて、その各データが示す異常の内容に応じた警告灯44,46を点灯させる。
【0053】
また更に、本実施形態では、エンジンECU2が、エンジンへの燃料噴射をN回(例えば20回)行う毎に、そのN回分の累計燃料噴射量を表す噴射量データをメータECU6へ送信し、メータECU6は、上記噴射量データに基づき燃料総消費量を計算してディスプレイ(図示省略)に表示する。
【0054】
一方また、姿勢制御ECU8は、ヨーレートセンサ50等の各種センサからの信号に基づき車両の走行状態を検出し、車両が横滑り状態にあると判断すると、ブレーキアクチュエータ52を駆動してブレーキ制御を行うと共に、シリアル通信線11を介して、エンジンECU2へエンジン出力を低下させるための制御用データ(例えば、燃料カット信号)を送信する。すると、エンジンECU2は、姿勢制御ECU8からの上記制御用データに従いインジェクタ18等を駆動して、エンジン出力を低下させる。
【0055】
尚、各ECU2,4,6,8は、マイコン(マイクロコンピュータ)を備えており、そのマイコンがプログラムを実行することによって上記各ECU2〜8の動作が実現されている。
次に、図2は、エンジンECU2の内部構成を表すブロック図である。
【0056】
図2に示すように、エンジンECU2は、第1マイコン60(本発明の情報処理装置に相当)と第2マイコン62との、2つのマイコンを備えている。尚、図示はしていないが、各マイコン60,62は、CPU,プログラムを記憶する記憶媒体としてのROM,データを一時記憶するためのRAM,及び入出力ポート等を備えた一般的なシングルチップマイクロコンピュータである。また、本実施形態において、各マイコン60,62のRAMは、1アドレス当たりに1バイト(8ビット)のデータが格納されるものである。
【0057】
そして、各マイコン60,62は、前述の各種センサ12,14,16からの信号を入力回路64を介して入力し、その入力信号に基づき制御対象を制御するための演算処理等を実行して、出力回路66へ制御量信号を出力することにより、前述したインジェクタ18やイグナイタ20等の各種アクチュエータを駆動している。
【0058】
また、第1マイコン60と第2マイコン62とは、通信線68を介してデータ通信を行うことにより、制御対象を制御するための制御用データを共有している。つまり、第1マイコン60と第2マイコン62は、エンジン及びトランスミッションを制御するための各演算処理を分担して実行すると共に、各自の演算処理に用いる制御用データを、通信線68を介したデータ通信により共有している。尚、この通信線68での通信プロトコルは、DMA通信であり、多重通信線10及びシリアル通信線11での通信プロトコルとは異なるものである。
【0059】
そして更に、エンジンECU2は、通信IC70を備えており、その通信IC70は、第1マイコン60から出力された通信データ列を、送信信号として多重通信線10へ送出すると共に、エアコンECU4及びメータECU6から多重通信線10を介して送信されて来た通信データ列を所定フレーム分(本実施形態では1フレーム分)だけ受信する毎に、第1マイコン60へ割込信号を出力するように構成されている。
【0060】
また、前述したシリアル通信線11は、第1マイコン60の入出力ポートに接続されており、第1マイコン60は、その入出力ポートを介して、姿勢制御ECU8(詳しくは、姿勢制御ECU8内のマイコン)と1対1でデータをやり取りするようになっている。
【0061】
次に、図3は、第1マイコン60内の通信モデルを仮想的に示した概念図であり、この通信モデルは、ISO/OSI(Open System Interconnection )通信モデルに準拠した階層化構造となっている。
図3に示すように、本実施形態の第1マイコン60で採用されている通信モデルは、制御対象を制御するための演算処理を行うアプリケーション部100と、通信相手としての他のECU4,6,8及び第2マイコン62とデータの送受信を行う通信ドライバ部300と、アプリケーション部100によって算出される制御用のデータから、通信ドライバ部300が送信すべき通信データ列を生成すると共に、通信ドライバ部300によって受信された通信データ列を、アプリケーション部100が使用可能な制御用のデータに変換する通信変換部200とからなる。そして、通信変換部200は、更に、共有メモリ部210と、物理値変換部220と、共通パケットデータ部230と、通信データ変換部240とに階層化されている。また更に、第1マイコン60は、通信制御部400とテーブル格納部500とを備えている。
【0062】
そして、アプリケーション部100から通信相手(他のECU4,6,8、或いは、第2マイコン62)に対して、直接データ転送されることはなく、アプリケーション部100から下位の階層に対して順々にデータを渡し(仮想通信し)、通信ドライバ部300にて、外部(通信相手)との物理的な通信が実現される。また、この通信モデルでの各階層は、その下の階層に対してサービスを要求し、その上の階層にサービスを提供するというものであり、各階層の目的は、上位階層でのサービスに対して実際の通信仕様等の詳細情報を隠蔽することである。尚、本実施形態において、各マイコン60,62により実行されるROM内のプログラムは、プログラムの全機能を単位機能毎に細分化して、その単位機能毎にオブジェクトを用意するオブジェクト指向によってプログラミングされており、オブジェクトとは、データとそのデータを処理する手続きである“メソッド”と呼ばれるプログラムとを、一まとめにしたプログラムモジュールである。
【0063】
そして、図3の通信モデルにおいて、ソフトウエアだけに着目すると、テーブル格納部500以外の各部100〜400は、第1マイコン60のROMに格納された各オブジェクト(メソッド及びデータ)であり、ROMにおける記憶領域の面から見ると、上記各部100〜400は、該当するオブジェクトを格納した記憶領域である。また、テーブル格納部500は、第1マイコン60のROMにて、後述する図4及び図5の各データテーブルを記憶した記憶領域である。
【0064】
そして更に、本実施形態の説明において、例えば「共有メモリ部210が…する。」や「物理値変換部220は…する。」といったオブジェクトを主語とした動作表現は、実際には、第1マイコン60がそのオブジェクトのメソッドに従って動作する(換言すれば、第1マイコン60がそのオブジェクトのメソッドを実行する)ことで実現される機能手段が、上記「…」の動作を行うことを示している。同様に、例えば「共有メモリ部210によって…される。」や「物理値変換部220によって…される。」といったオブジェクトによる受け身の動作表現は、実際には、第1マイコン60がそのオブジェクトのメソッドに従って動作することで実現される機能手段によって、上記「…」の動作が行われることを示している。
【0065】
ここで、アプリケーション部100は、エンジンECU2の制御対象及び制御内容毎に更に細分化された各オブジェクトからなる。そして、本実施形態において、アプリケーション部100は、回転数Ne等の制御用データを算出して、その算出した制御用データに基づきエンジンを制御するための演算処理を行うオブジェクト(以下、エンジンアプリケーションソフトという)110と、車速SPD等の制御用データを算出して、その算出した制御用データに基づきトランスミッションを制御するための演算処理を行うオブジェクト(以下、ECTアプリケーションソフトという)120と、エンジンのスロットル開度等の制御用データを算出して、その算出した制御用データに基づき車両を定速走行させるためのスロットル開度制御用演算処理を行うオブジェクト(以下、クルーズアプリケーションソフトという)130とを有している。そして、これらの各アプリケーションソフト110,120,130は、自分以外のアプリケーションソフトによって算出された制御用データも、自己の演算処理に用いる。つまり、各アプリケーションソフト110,120,130は、制御用データを互いに共有するようにしている。
【0066】
共有メモリ部210は、当該第1マイコン60に備えられたRAMにおいて、アプリケーション部100の各アプリケーションソフト110,120,130が制御対象を制御するために用いる全ての制御用データを一時格納するための記憶領域(以下、制御用データ記憶領域という)とは異なる特定の記憶領域として設定された共有メモリに、上記各アプリケーションソフト110,120,130間で共通使用される制御用データ、及び当該第1マイコン60の通信相手(第2マイコン62及び他のECU4,6,8)でも共通使用される制御用データ(以下、外部共有データという)を書き込み、また、上記共有メモリから制御用データを読み出して、他のオブジェクトに提供する。
【0067】
また、上記共有メモリに格納される各データには、その種別を示す種別番号(以下、Handle番号と記す)が付与されており、各オブジェクトは、Handle番号を指定することにより、共有メモリから必要なデータを入手したり、共有メモリに新たなデータを書き込むことができるようになっている。
【0068】
尚、図3では、ECTアプリケーションソフト120によって算出されると共に、Handle番号として“1”が付与された車速SPDのデータ(SPDデータ)が、エンジンアプリケーションソフト110でも使用され、また、エンジンアプリケーションソフト110によって算出されると共に、Handle番号として“2”が付与された回転数Neのデータ(Neデータ)が、ECTアプリケーションソフト120でも使用されていることを例示している。そして、図3以降の各図及び以下の説明において、“Handle1 ”や“Handle2 ”とは、Handle番号が“1”や“2”であることを表している。
【0069】
物理値変換部220は、当該第1マイコン60から通信相手へのデータ送信時には、上記共有メモリに格納されている制御用データのうち、送信するデータに対して、そのデジタルデータを、それが示す物理値を通信相手側で扱われる分解能で表すデジタルデータに変換するLSB変換処理を行う。また、物理値変換部220は、通信相手からのデータ受信時には、受信された制御用データに対して、そのデジタルデータを、それが示す物理値を各アプリケーションソフト110,120,130で扱われる分解能で表すデジタルデータに変換するLSB変換処理を行う。
【0070】
つまり、LSB変換処理とは、前述した精度変換処理のことであり、デジタルデータを、そのデータの分解能(そのデータのLSB当たりによって示される物理値であり、そのデータの精度である)が、通信相手側で採用されている分解能と同じになるように変換するものである。そして、本実施形態では、上記LSB変換処理を行うための複数種類のLSB変換プログラム(本発明における変換プログラムに相当)が、ROMの所定領域に、物理値変換部220の一部として格納されている。
【0071】
共通パケットデータ部230は、当該第1マイコン60から通信相手へのデータ送信時には、物理値変換部220によってLSB変換された送信対象の制御用データ(LSB変換処理後の送信対象データ)を集めて直列に並べることにより、多重通信,シリアル通信,DMA通信といった通信プロトコルに依存しない各通信プロトコルに共通のパケットデータ(以下、このパケットデータを、伝送路上で実際に送受信されるパケットデータと区別する場合には、共通パケットデータという)を作成する。そして、各共通パケットデータには、その識別番号としてのパケット番号PNが付与されている。尚、図3以降の各図及び以下の説明において、“PN1”や“PN2”とは、パケット番号PNが“1”や“2”であることを表している。
【0072】
通信データ変換部240は、当該第1マイコン60から通信相手へのデータ送信時には、共通パケットデータ部230によって作成された共通パケットデータを、通信相手との通信プロトコルに対応した通信データ列(即ち、実際に送信されるパケットデータ)に変換する。具体的には、共通パケットデータのデータ列に通信プロトコルに準じたヘッダ情報等を付加する、といった処理を行う。また、共通パケットデータのデータ長が、通信相手との通信プロトコルで定められた最大転送単位(1回に送信できる転送単位)よりも長い場合には、その最大転送単位内のデータ長に分割したりもする。
【0073】
通信ドライバ部300は、当該第1マイコン60から通信相手へのデータ送信時には、通信データ変換部240によって作成された通信データ列を、通信相手との通信プロトコルで定められた転送データ量、ボーレート、及び転送タイミングで、実際に通信データとして出力する。そして、通信ドライバ部300は、各通信相手との通信プロトコルに夫々対応して、第2マイコン62とのDMA通信を制御するDMA通信部310と、姿勢制御ECU8とのシリアル通信を制御するシリアル通信部320と、エアコンECU4及びメータECU6との多重通信を制御する多重通信部330とを有している。
【0074】
通信制御部400は、時間をカウントするためのタイマ410を有しており、そのタイマ410のカウント値に基づき、第2マイコン62や他のECU4,6,8との通信が定期的に実行されるように、通信データ列の作成タイミングを決定する。また、通信制御部400は、共有メモリ部210から後述するように出されるイベント送信用の送信要求を受けて、通信データ列の作成動作を起動する機能も有している。
【0075】
一方、通信ドライバ部300(DMA通信部310,シリアル通信部320,多重通信部330)は、通信相手(第2マイコン62や他のECU4,6,8)から送信されて来たデータを受信し取得して、通信データ変換部240に提供する機能も有している。
【0076】
そして、通信データ変換部240は、通信ドライバ部300によって取得された通信データ列を、共通パケットデータに変換する機能も有している。
そして更に、共通パケットデータ部230は、通信相手からのデータ受信時には、通信データ変換部240によって作成された共通パケットデータを分解して、その共通パケットデータを構成していた各制御用データを抽出し、更に、その各制御用データに対し物理値変換部220にLSB変換を行わせて、共有メモリ部210に、そのLSB変換後の各制御用データを共有メモリへ更新して書き込ませる機能も有している。
【0077】
一方また、テーブル格納部500には、図4に示す共有メモリテーブルと、図5(A)に示す第1のデータテーブルとしてのHandle番号特定テーブルと、図5(B)に示す第2のデータテーブルとしてのパケット番号特定テーブルとが格納されている。
【0078】
図4に示すように、共有メモリテーブルは、制御用データの各Handle番号毎に、そのHandle番号のデータが、共有メモリにおいて何れのアドレスを先頭にして格納されるかを示す共有メモリアドレスと、そのHandle番号のデータの共有メモリ内におけるデータ長を示す共有メモリサイズとを、Handle番号順に記述したデータテーブルである。
【0079】
また、図5(A)に示すように、Handle番号特定テーブルは、各パケット番号毎に、そのパケット番号の共通パケットデータを送信すべき送信周期と、そのパケット番号の共通パケットデータを構成する各制御用データのHandle番号と、そのパケット番号の共通パケットデータを何れの通信プロトコルで送受信すべきかを示す通信方式と、そのパケット番号の共通パケットデータを上記通信方式の通信プロトコルで送受信する場合に付加すべきヘッダ情報とを、パケット番号順に記述したデータテーブルである。
【0080】
尚、図5(A)において、Handle番号の項目に記載された「E」は、それ以降にHandle番号を示すデータが存在しないことを示すデータである。また、通信方式の項目に記載された「CAN」は、多重通信の通信プロトコルを示し、「SCI」は、シリアル通信の通信プロトコルを示している。
【0081】
そして、図5(B)に示すように、パケット番号特定テーブルは、制御用データの各Handle番号毎に、そのHandle番号のデータの共通パケットデータにおける配置位置を示す共通パケットデータ位置と、そのHandle番号のデータの共通パケットデータ内におけるデータ長を示す共通パケットデータサイズと、そのHandle番号のデータが構成要素となり且つイベント送信される共通パケットデータのパケット番号であるイベント送信パケット番号と、そのHandle番号のデータに対してLSB変換処理を行うためのLSB変換プログラムが、ROMの何れのアドレスを先頭にして格納されているかを示す格納位置情報としてのLSB変換コールアドレスとを、Handle番号順に記述したデータテーブルである。
【0082】
尚、共通パケットデータ位置は、該当するHandle番号の制御用データが、共通パケットデータにおける最初の1バイトを0バイト目とした場合に、その共通パケットデータにて、何バイト目から配置されるかを示している。また、本実施形態では、この共通パケットデータ位置と共通パケットデータサイズとが、配置位置情報に相当している。
【0083】
そして、各オブジェクトは、図5の上記各データテーブルを参照することにより、例えば、PN1の共通パケットデータには、どのHandle番号の制御用データが集約されるのか等、通信データ列の作成に必要な情報を取得することができる。
【0084】
次に、第1マイコン60から外部へ制御用データを送信する場合の通信データ列への変換処理について、図6〜図10を用いて説明する。
尚、図6〜図9は、制御用データから通信データ列への変換処理動作を示すメッセージシーケンスチャートである。そして、このメッセージシーケンスチャートでは、図3に示した各階層(オブジェクト)100〜500を上下方向の線で示し、その各階層から他の階層へのメッセージを横方向の実線矢印で示している。そして更に、横方向の点線矢印は、各階層がテーブル格納部500内のデータテーブルを参照することを示し、上下方向の線上にある長方形の枠内には、その階層で行われる処理の内容が示されている。また、図10は、図7或いは図9の処理動作によって作成される共通パケットデータを表す模式図である。
【0085】
まず、例えば、アプリケーション部100にあるECTアプリケーションソフト120にて、共有メモリに外部共有データの1つである車速SPDのデータ(以下、SPDデータという)を書き込む処理ステップになると、図6の[1]に示すように、アプリケーション部100のECTアプリケーションソフト120は、共有メモリ部210に対してデータ書込要求のメッセージを出す(発行する)。そして、この時、SPDデータのHandle番号(この例ではHandle1 )と、ECTアプリケーションソフト120でのSPDデータの格納アドレス(即ち、ECTアプリケーションソフト120が制御用の演算処理時にSPDデータの書き込み及び読み出しを行う制御用データ記憶領域のアドレスであって、この例では&SPD)との各情報も、共有メモリ部210へ送られる。
【0086】
尚、データ書込要求のメッセージを出す処理を、C言語でプログラミングした場合、SPDデータを共有メモリに書き込むためのメッセージの発行命令は、次のようになる。
Write(Handle1 ,&SPD)
この命令の意味は、SPDデータのHandle番号(Handle1 )に対応する共有メモリのアドレスへ、&SPDに格納されているデータ(ECTアプリケーションソフト120で求められたSPDデータ)を書き込む、ということである。また、アプリケーション部100の各アプリケーションソフト110,120,130が、SPDデータ以外の制御用データを共有メモリに書き込む場合には、上記命令のうち、“Handle1 ”が、書き込むべきデータのHandle番号となり、“&SPD”が、そのアプリケーションソフト用に設けられた制御用データ記憶領域のうちで、書き込むべきデータが格納された記憶領域のアドレスとなる。
【0087】
そして、共有メモリ部210は、アプリケーション部100(ECTアプリケーションソフト120)からの上記メッセージを受けると、図6の[2]に示すように、テーブル格納部500にある共有メモリテーブル(図4)を参照して、上記メッセージと共に送られて来たHandle番号(Handle1 )に対応する共有メモリアドレスと共有メモリサイズとを、共有メモリ情報として取得する。
【0088】
すると、共有メモリ部210は、上記取得した共有メモリ情報に基づき、SPDデータは共有メモリにて$FFFF0000 番地を先頭にした2バイト(byte)の領域に書き込むべきであることを認知し、図6の[3]の処理にて、ECTアプリケーションソフト120でのSPDデータの格納アドレス(&SPD)から、共有メモリの$FFFF0000 番地へ、2バイトのSPDデータをコピーする。
【0089】
この共有メモリ部210の処理により、図3における共有メモリ部210の枠内に例示しているように、共有メモリへHandle1 に対応したSPDデータが格納される。
そして、図示はしていないが、ECTアプリケーションソフト120で算出された他の制御用データや、エンジンアプリケーションソフト110及びクルーズアプリケーションソフト130で算出された制御用データも、図6の手順と同じ要領で共有メモリに格納される。
【0090】
一方また、図示はしていないが、共有メモリに格納された制御用データを、アプリケーション部100(詳しくは、アプリケーション部100の各アプリケーションソフト)が制御用演算処理に使用する場合には、アプリケーション部100と共有メモリ部210とが、次のように動作する。
【0091】
例えば、アプリケーション部100のエンジンアプリケーションソフト110が、ECTアプリケーションソフト120によって算出されたSPDデータを共有メモリから読み出す場合について説明すると、この場合、まず、エンジンアプリケーションソフト110が、共有メモリ部210に対してデータ読出要求のメッセージを出す。そして、この時、SPDデータのHandle番号(Handle1 )と、エンジンアプリケーションソフト110でのSPDデータの格納アドレス(即ち、エンジンアプリケーションソフト110が制御用の演算処理時にSPDデータの書き込み及び読み出しを行う制御用データ記憶領域のアドレス)との各情報も、共有メモリ部210へ送られる。
【0092】
すると、共有メモリ部210は、テーブル格納部500にある共有メモリテーブル(図4)を参照して、上記データ読出要求のメッセージと共に送られて来たHandle番号(Handle1 )に対応する共有メモリアドレスと共有メモリサイズとを、共有メモリ情報として取得する。そして、その取得した共有メモリ情報に基づき、SPDデータは共有メモリにて$FFFF0000 番地を先頭にした2バイト分の領域に格納されていることを認知し、共有メモリの$FFFF0000 番地から2バイト分の領域に格納されているSPDデータを、エンジンアプリケーションソフト110でのSPDデータの格納アドレスにコピーする。
【0093】
そして、このコピーの動作により、図3における共有メモリ部210の枠内から上向きに伸びた2つの矢印のうちの左側の矢印のように、共有メモリ内のSPDデータがエンジンアプリケーションソフト110へ提供されることとなる。
次に、通信相手へ送信すべき共通パケットデータを作成する処理について説明するが、共通パケットデータを作成するタイミングとしては、予め定められた所定時間間隔毎の定時送信時のタイミングと、共有メモリに格納される制御用データのうちで、イベント送信すべき制御用データが更新された時のイベント送信時のタイミングとがあり、図7は、前者のタイミングでの処理を表しており、図9は、後者のタイミングでの処理を表している。
【0094】
そこで最初に、定時送信時に共通パケットデータを作成する処理について、図7を用い説明する。
まず、他のECU4,6,8や第2マイコン62へデータを定時送信すべきタイミングになると、図7の[7]に示すように、通信制御部400が、共通パケットデータ部230に対して、図3における共通パケットデータ部230の枠内に例示したような共通パケットデータを作成させるために、送信指令としての送信要求のメッセージを出す(発行する)。
【0095】
尚、図3では、パケット番号がPN1しか示されていないが、実際には多数存在するため、通信制御部400は、今回の定時送信で送信すべき共通パケットデータのパケット番号(この例ではPN1)を、送信要求のメッセージ(送信指令)の一部として共通パケットデータ部230へ出す。具体的に説明すると、通信制御部400は、タイマ410のカウント値に基づき時間の経過を把握すると共に、図5(A)のHandle番号特定テーブルに記述されたパケット番号と送信周期とに従って、1S(秒)毎にPN1を含んだ送信要求のメッセージを出し、3S毎にPN2を含んだ送信要求のメッセージを出し、5S毎にPN3を含んだ送信要求のメッセージを出し、0.5S毎にPN4を含んだ送信要求のメッセージを出す。つまり、通信制御部400は、Handle番号特定テーブルに記述された各パケット番号を、そのパケット番号に対応して当該テーブルに記述されている送信周期毎に、送信指令として出すようになっている。また、図7における()内の記述は、通信制御部400から共通パケットデータ部230へ出されたパケット番号がPN1であった場合を示している。
【0096】
このようにして、通信制御部400がパケット番号を含んだ送信要求のメッセージを出すと、共通パケットデータ部230は、図7の[8]に示すように、テーブル格納部500内のHandle番号特定テーブル(図5(A))から、通信制御部400によって出されたパケット番号に対応して記述されている各Handle番号(つまり、通信制御部400が出したパケット番号の共通パケットデータを構成する制御用データの各Handle番号)を、送信データ情報として読み出し取得する。
【0097】
例えば、通信制御部400から共通パケットデータ部230へ出されたパケット番号がPN1であった場合には、図5(A)のHandle番号特定テーブルにおいて、PN1に対応して記述されたHandle番号は、Handle1,Handle10,Handle5,及びHandle2の4つであるため、その4つのHandle番号を、PN1の共通パケットデータを構成する制御用データの各Handle番号として取得することとなる。
【0098】
そして次に、共通パケットデータ部230は、図7の[9]に示すように、まず、上記取得したHandle番号のうちの最初のHandle番号(この例ではHandle1 )を、物理値変換要求のメッセージと共に物理値変換部220へ出す。
すると、物理値変換部220は、図7の[10]に示すように、共通パケットデータ部230からのHandle番号を、データ取得要求のメッセージと共に共有メモリ部210へ出す。
【0099】
このデータ取得要求のメッセージにより共有メモリ部210は、図6の[2]と同様に、テーブル格納部500内の共有メモリテーブル(図4)から、物理値変換部220によって上記データ取得要求のメッセージと共に出されたHandle番号(ここではHandle1 )に対応する共有メモリアドレス($FFFF0000 )と共有メモリサイズ(2byte)とを、共有メモリ情報として取得し、更に、その取得した共有メモリ情報に基づき、共有メモリの$FFFF0000 番地から2バイト分のデータ(この例ではSPDデータ)を読み出して、その読み出したデータを、図7の[11]に示すように、物理値変換部220へ戻り値として返す。
【0100】
すると更に、物理値変換部220は、図7の[12]に示すように、テーブル格納部500内のパケット番号特定テーブル(図5(B))から、上記[10]で自分が共有メモリ部210へ出したHandle番号(Handle1 )に対応して記述されているLSB変換コールアドレス($00001000 )を読み出して取得する。そして、物理値変換部220は、図7の[13]にて、上記[10]及び[11]の動作で共有メモリから読み出したHandle1 の制御用データ(即ち、共有メモリ部210から戻り値として返された制御用データであって、この例では2バイトのSPDデータ)を処理対象として、上記取得したLSB変換コールアドレスに格納されているLSB変換プログラムを起動することにより、その制御用データ(SPDデータ)に対してLSB変換処理を行う。
【0101】
これにより、図3における物理値変換部220の枠内に例示しているように、Handle1 のSPDデータがLSB変換され、そのLSB変換後のデータ(以下、SPD’データと記す)が、物理値変換部220の作業領域として割り当てられたRAMの所定領域に、対応するHandle番号(Handle1 )と共に格納される。
【0102】
尚、このように送信対象の制御用データをLSB変換するのは、前述したように、データを算出して送信する側のマイコンと、そのデータを受信する側のマイコンとで、そのデータを扱う上での分解能が異なる場合があるためであり、このような場合でも、受信する側のマイコンが、受信したデータをそのまま処理に用いることができるようにするためである。
【0103】
その後、共通パケットデータ部230は、図7の[14]に示すように、テーブル格納部500内のパケット番号特定テーブル(図5(B))から、上記[9]で自分が物理値変換部220へ出したHandle番号(Handle1 )に対応して記述されている共通パケットデータサイズと共通パケットデータ位置とを、共通パケットデータ情報として取得する。
【0104】
そして、共通パケットデータ部230は、図7の[15]にて、通信制御部400から出されたパケット番号(ここではPN1)の共通パケットデータを作成するための共通パケットデータ生成処理を行う。
ここで、この共通パケットデータ生成処理は、作成対象の共通パケットデータにおけるデータ領域のうち、上記[14]の動作でパケット番号特定テーブルから今回取得した共通パケットデータ位置及び共通パケットデータサイズにより指定される領域に、物理値変換部220によって今回LSB変換された制御用データを配置する、といった手順で行われる。よって、例えば、図5(B)の最上段に示すように、Handle1 に対応して記述されている共通パケットデータ位置と共通パケットデータサイズは、夫々、“0”と“2バイト”であるため、図10(A)に示すように、Handle1 のLSB変換後のデータ(SPD’データ)H1は、PN1の共通パケットデータにおける0バイト目の位置から2バイト分の領域に配置されることとなる。
【0105】
このようにして、Handle1 の制御用データについてのLSB変換処理及び共通パケットデータ生成処理が終わると、図7の[16]に示すように、共通パケットデータ部230が上記[8]の動作で取得した各Handle番号のうちの次のHandle番号(Handle10)について、上記[9]〜[14]と同じ要領でLSB変換のための動作が行われ、次いで図7の[17]に示すように、上記[15]と同じ要領で共通パケットデータ生成処理が行われる。そして更に、共通パケットデータ部230が上記[8]の動作で取得した各Handle番号のうちの他のHandle番号(Handle5 ,Handle2 )についても、図7の[18]〜[21]に示すように、上記[9]〜[14]及び[15]と同じ要領で、LSB変換動作と共通パケットデータ生成処理とが順次行われる。
【0106】
そして、通信制御部400から共通パケットデータ部230へ出されたパケット番号PNに対応する全てのHandle番号の制御用データについて、LSB変換と共通パケットデータ生成処理とが終了すると、送信すべき共通パケットデータの作成が完了する。
【0107】
例えば、通信制御部400が共通パケットデータ部230へPN1を出した場合、図5の両テーブルに従い作成されるPN1の共通パケットデータとしては、図10(A)に示すように、Handle1 のLSB変換後のデータH1が0バイト目の位置から2バイト分の領域に配置され、Handle10のLSB変換後のデータH10が2バイト目の位置から1バイト分の領域に配置され、Handle5 のLSB変換後のデータH5が3バイト目の位置から3バイト分の領域に配置され、Handle2 のLSB変換後のデータH2が6バイト目の位置から2バイト分の領域に配置されたデータ列となる。
【0108】
また例えば、通信制御部400が共通パケットデータ部230へPN2を出した場合、図5の両テーブルに従い作成されるPN2の共通パケットデータとしては、図10(B)に示すように、Handle3 のLSB変換後のデータH3が0バイト目の位置から2バイト分の領域に配置され、Handle6 のLSB変換後のデータH6が2バイト目の位置から4バイト分の領域に配置され、Handle2 のLSB変換後のデータH2が6バイト目の位置から2バイト分の領域に配置されたデータ列となる。
【0109】
次に、このようにして今回送信すべき共通パケットデータの作成が完了すると、共通パケットデータ部230は、図7の[22]及び図8の[22]に示すように、通信データ変換部240に対して、今回作成した共通パケットデータを通信相手との通信プロトコルに対応する通信データ列(即ち、実際に送信されるパケットデータ)に変換させるために、送信要求のメッセージを出す。そして、この時、今回作成した共通パケットデータのパケット番号(この例ではPN1)も、送信要求のメッセージの一部として通信データ変換部240へ出される。
【0110】
すると、通信データ変換部240は、図8の[23]の処理にて、共通パケットデータ部230によって作成された共通パケットデータを、図5(A)のHandle番号特定テーブルに基づき、通信相手との通信プロトコルに対応した通信データ列に変換する。
【0111】
具体的に説明すると、例えば、共通パケットデータ部230から通信データ変換部240へ出されたパケット番号がPN1であった場合、通信データ変換部240は、まず、図5(A)のHandle番号特定テーブルから、PN1に対応して記述されている通信方式とヘッダ情報とを読み出して取得する。そして、この場合、通信方式は多重通信を示す“CAN”であり、ヘッダ情報は“Arbitration=0x123 ”と“ML=08 ”であるため、通信データ変換部240は、図3における通信データ変換部240の枠内に例示しているように、共通パケットデータ部230によって作成された共通パケットデータの先頭に、Handle番号特定テーブルから取得した上記内容のArbitration とMLとを付加することにより、CANに対応した通信データ列を作成する。尚、Arbitration は、データの優先順位を示し、データが衝突した場合の調停用データである。そして、“Arbitration=0x123 ”とは、Arbitration が16進数表示で123であることを示している。また、MLは、通信データ列におけるデータフレーム部分のデータ長を示すデータであり、“ML=08 ”とは、そのデータ長が8バイトであることを示している。
【0112】
そして、通信データ変換部240は、通信データ列の作成を終了すると、図8の[24]に示すように、通信ドライバ部300にあるDMA通信部310,シリアル通信部320,及び多重通信部330のうち、上記[23]の処理でHandle番号特定テーブルから取得した通信方式(即ち、作成した通信データ列の通信プロトコル)に対応するオブジェクトに対して、送信要求のメッセージを出す。
【0113】
すると、この通信データ変換部240からのメッセージの出力先である通信ドライバ部300内のオブジェクト(DMA通信部310,シリアル通信部320,及び多重通信部330の何れか)は、通信データ変換部240によって作成された通信データ列を、自己の通信プロトコルに応じたボーレートや転送タイミングで、実際の通信データとして外部へ出力する。
【0114】
例えば、通信データ変換部240は、上記[23]の処理でHandle番号特定テーブルから取得した通信方式がCANであった場合、通信ドライバ部300の多重通信部330に対して、送信要求のメッセージを発行する。
すると、多重通信部330は、図8の[25]の送信処理にて、通信データ変換部240により作成された通信データ列を、通信IC70に出力すると共に、その通信IC70を制御して、上記作成された通信データ列を、通信相手との通信プロトコルに応じたボーレートや転送タイミングで多重通信線10へ送出させる。そして、こうした一連の処理により、第1マイコン60内のアプリケーション部100で算出された制御用データが、多重通信線10に対応した通信プロトコルのパケットデータに変換されて、エアコンECU4及びメータECU6に送信される。
【0115】
尚、上記説明では、主に、PN1のパケットデータを作成して送信する場合について述べたが、PN1以外の他のパケットデータについても、PN1のパケットデータと同じ要領で作成されて送信される。
但し、例えば、PN2のパケットデータについては、図7及び図8に示した処理動作が3S毎に行われて、その作成及び送信が行われ、また、PN3のパケットデータについては、図7及び図8に示した処理動作が5S毎に行われて、その作成及び送信が行われる。そして、こうした各パケットデータの作成及び送信の周期は、図5(A)のHandle番号特定テーブルに記述されたパケット番号と送信周期とによって決まる。
【0116】
また例えば、PN2の共通パケットデータについては、図5(A)から分かるように、通信方式がシリアル通信を示す“SCI”であり、ヘッダ情報が“ID=1”と“ML=16 ”であるため、そのヘッダ情報としてのIDとMLが先頭に付加されて、実際に送信されるパケットデータに変換される。そして、PN2のパケットデータを作成して送信する場合、通信データ変換部240は、上記[24]にて、通信ドライバ部300のシリアル通信部320に対して、送信要求のメッセージを出すこととなるため、作成されたPN2のパケットデータは、通信ドライバ部300内のシリアル通信部320によってシリアル通信線11へ送出されることとなる。
【0117】
次に、イベント送信時に共通パケットデータを作成する処理について、図9を用い説明する。
まず、共有メモリ部210は、共有メモリ内のデータのうちで、外部へイベント送信すべきイベント送信対象のデータ(例えば、前述したフェイルセーフ用データやN回噴射毎の噴射量データ)が更新されたことを検出すると、図9の[26]に示すように、通信制御部400に対して、その更新されたデータのHandle番号を含んだ送信要求のメッセージを出す。
【0118】
尚、共有メモリ部210は、アプリケーション部100からのデータ書込要求に応じて図6に示した手順により、イベント送信対象のデータを共有メモリに書き込んだ場合、或いは、イベント送信対象のデータを共有メモリに書き込んだ際にそのデータ値が以前の値から変わった場合に、データが更新されたと判断する。また、図9における()内の記述は、共有メモリ部210から通信制御部400へ出されたHandle番号が、Handle5 であった場合を例示している。
【0119】
すると、通信制御部400は、図9の[27]に示すように、共通パケットデータ部230に対して、共有メモリ部210から出されたHandle番号のデータ(即ち、更新されたイベント送信対象のデータ)を含む共通パケットデータを作成させるために、共有メモリ部210から出されたHandle番号を含んだ送信要求のメッセージを、送信指令として出す。つまり、イベント送信時には、通信制御部400から共通パケットデータ部230へ、パケット番号ではなく、更新されたイベント送信対象のデータを示すHandle番号が送信指令として出される。
【0120】
このようにして、通信制御部400がHandle番号を含んだ送信要求のメッセージを出すと、共通パケットデータ部230は、図9の[28]に示すように、テーブル格納部500内のパケット番号特定テーブル(図5(B))から、通信制御部400によって出されたHandle番号に対応して記述されているイベント送信パケット番号(つまり、通信制御部400が出したHandle番号のデータが構成要素となり且つイベント送信される共有パケットデータのパケット番号)を、今回イベント送信すべき共通パケットデータのパケット番号として読み出し取得する。
【0121】
例えば、通信制御部400から共通パケットデータ部230へ出されたHandle番号がHandle5 であった場合には、図5(B)のパケット番号特定テーブルにおいて、Handle5 に対応して記述されているパケット番号は、PN1であるため、そのPN1を、今回イベント送信すべき共通パケットデータのパケット番号として取得することとなる。
【0122】
そして、共通パケットデータ部230は、図9の[29]にて、前述した図7の[8]と同様に、テーブル格納部500内のHandle番号特定テーブル(図5(A))から、上記[28]の動作で取得したパケット番号に対応して記述されている各Handle番号(つまり、今回イベント送信すべき共通パケットデータを構成するデータの各Handle番号)を、読み出して取得する。例えば、上記[28]の動作で取得したパケット番号がPN1であった場合には、図5(A)のHandle番号特定テーブルにおいて、PN1に対応して記述されたHandle1,Handle10,Handle5,及びHandle2を、今回イベント送信すべきPN1の共通パケットデータを構成するデータの各Handle番号として取得することとなる。
【0123】
その後、共通パケットデータ部230は、物理値変換部220及び共有メモリ部210と連携して、図9の[9]〜[21]に示すように、定時送信時における図7の[9]〜[21]と全く同じ手順で共通パケットデータを作成する。
つまり、上記[29]の動作で取得した各Handle番号のデータを共有メモリから読み出すと共に、その読み出したデータの各々について、図5(B)のパケット番号特定データテーブルに基づき、該当するLSB変換プログラムを起動することによりLSB変換処理を行う。そして、そのLSB変換後の各データを、図5(B)のパケット番号特定データテーブルに記述されている共通パケットデータ位置及び共通パケットデータサイズに基づいて並べることにより、上記[28]の動作で取得したパケット番号の共通パケットデータであって、更新されたイベント送信対象のデータが含まれる共通パケットデータを作成する。
【0124】
そして、共通パケットデータ部230は、共通パケットデータの作成を完了すると、図9の[22]にて、図7の[22]と全く同様に、今回作成した共通パケットデータのパケット番号を含んだ送信要求のメッセージを、通信データ変換部240へ出す。
すると、共通パケットデータ部230によって作成された共通パケットデータは、通信データ変換部240及び通信ドライバ部300により、前述の図8に示した手順で、通信相手との通信プロトコルに対応する通信データ列(実際に送信されるパケットデータ)に変換されて、その通信相手へと送信されることとなる。
【0125】
ところで、図5(B)のパケット番号特定テーブルにおいて、例えば、Handle1 に対しては、イベント送信パケット番号として、PN1とPN4との2つのパケット番号が記述されているため、図9の[26]にて、共有メモリ部210がHandle1 を含んだ送信要求のメッセージを出した場合(つまり、Handle1 のデータをイベント送信する場合)には、PN1とPN4との各々について、図9の[29],[9]〜[22]及び図8の処理動作が行われ、そのPN1とPN4との2種類のパケットデータが作成及び送信されることとなる。
【0126】
また、図5(B)のパケット番号特定テーブルにおいて、イベント送信を行う必要が無いデータ(図5(B)においては、Handle3 とHandle6 の各データ)に対しては、イベント送信パケット番号が記述されていない。よって、仮に、共有メモリ部210が、図9の[26]にて、イベント送信対象ではないデータのHandle番号(Handle3 ,Handle6 )を含んだ送信要求のメッセージを出したとしても、共通パケットデータの作成及びイベント送信は行われない。
【0127】
一方、図5(A)に示すように、Handle5 のデータは、PN1とPN3との2つの各パケットデータに含まれるが、本実施形態において、PN3のパケットデータは姿勢制御ECU8に対してシリアル通信されるパケットデータであり、姿勢制御ECU8へはイベント送信する必要が無いため(姿勢制御ECU8の仕様上から、イベント送信は不要であるため)、図5(B)のパケット番号特定テーブルでは、Handle5 に対応するイベント送信パケット番号として、PN1のみ記述されており、PN3は記述されていない。
【0128】
尚、本実施形態では、第1マイコン60のRAM内に設定された共有メモリが、記憶部に相当している。
そして、通信制御部400のうちで、図7の[7]に示した処理動作(即ち、Handle番号特定テーブルに記述された各パケット番号を、そのパケット番号に対応して当該テーブルに記述されている送信周期毎に、送信指令として出す処理動作)を行う部分が、定時送信動作起動手段に相当し、共通パケットデータ部230,物理値変換部220,及び共有メモリ部210のうちで、図7の[8]〜[22]に示した処理動作を行う部分が、定時送信用パケットデータ作成手段に相当している。
【0129】
また、共有メモリ部210及び通信制御部400のうちで、図9の[26],[27]に示した処理動作(即ち、共有メモリ内の特定のデータが更新されたことを検出すると、そのデータのHandle番号を、送信指令として出す処理動作)を行う部分が、イベント送信動作起動手段に相当し、共通パケットデータ部230,物理値変換部220,及び共有メモリ部210のうちで、図9の[28],[29],[9]〜[22]に示した処理動作を行う部分が、イベント送信用パケットデータ作成手段に相当している。
【0130】
そして、通信データ変換部240と通信ドライバ部300が、送信手段に相当し、また、第1マイコン60のROMにおける記憶領域のうちで、物理値変換部220により起動される複数種類のLSB変換プログラムを格納した所定領域が、変換プログラム格納手段に相当している。
【0131】
以上詳述したように本実施形態のエンジンECU2に設けられた第1マイコン60において、定時送信時には、まず、通信制御部400により、今回送信すべきパケットデータのパケット番号が特定される。すると、Handle番号特定テーブルから、そのパケット番号のパケットデータを構成する各データのHandle番号を取得して、その各Handle番号のデータを共有メモリから読み出すこととなるが、このとき、Handle番号特定テーブルには、パケット番号毎に、そのパケット番号のパケットデータを構成する各データのHandle番号が記述されているため、時間のかかる検索処理を行うことなく、今回送信すべきパケットデータを構成する各データのHandle番号を即座に取得することができる。
【0132】
そして更に、第1マイコン60では、パケット番号特定テーブルから、上記取得した各Handle番号に夫々対応する共通パケットデータ位置,共通パケットデータサイズ,及びLSB変換コールアドレスといった各データに固有の情報を取得し、その取得した各情報に基づき、共有メモリから読み出した各データをLSB変換して配列させることにより、今回送信すべきパケットデータを作成するが、このとき、パケット番号特定データテーブルには、各データのHandle番号毎に、そのデータに固有の情報(共通パケットデータ位置及び共通パケットデータサイズとLSB変換コールアドレス)が記述されているため、時間のかかる検索処理を行うことなく、定時送信用のパケットデータを迅速に作成することができる。
【0133】
一方、第1マイコン60において、イベント送信時には、まず、共有メモリ部210により、今回イベント送信すべきデータのHandle番号が特定される。すると、パケット番号特定テーブルから、そのHandle番号が含まれるパケットデータのパケット番号を取得することとなるが、このとき、パケット番号特定テーブルには、各データのHandle番号毎に、そのデータが構成要素となるパケットデータのパケット番号が記述されているため、時間のかかる検索処理を行うことなく、今回イベント送信すべきデータを含むパケットデータのパケット番号を即座に取得することができる。
【0134】
そして、第1マイコン60では、パケット番号特定テーブルから取得したパケット番号を元に、定時送信時と全く同じ手順で、今回イベント送信すべきパケットデータを作成することとなり、その作成時においても、時間のかかる検索処理を行うことなく、Handle番号特定テーブルから、今回イベント送信すべきパケットデータを構成する各データのHandle番号を即座に取得することができると共に、パケット番号特定テーブルから、各データに固有の情報を即座に取得して、イベント送信用のパケットデータを迅速に作成することができる。
【0135】
このように本実施形態のエンジンECU2に設けられた第1マイコン60では、パケットデータを作成するための情報を定義するデータマップを、Handle番号特定テーブルとパケット番号特定テーブルとに分け、Handle番号特定テーブルには、パケット番号毎に、そのパケット番号のパケットデータを構成する各データのHandle番号を記述し、パケット番号特定テーブルには、データのHandle番号毎に、そのHandle番号のデータがパケットデータ内においてどの位置に配置されるかを示す共通パケットデータ位置及び共通パケットデータサイズと、そのHandle番号のデータをLSB変換するためのLSB変換コールアドレスと、そのHandle番号のデータが構成要素となるパケットデータのパケット番号とを記述するようにしているため、定時送信とイベント送信との何れの送信時においても、その時に送信すべきパケットデータを迅速に作成することができる。
【0136】
そして、本実施形態の第1マイコン60によれば、実際に送信するパケットデータを、その都度、迅速に作成することができるため、従来装置のように、送信予定のパケットデータを定期的に予め作成しておく必要がなく、処理上及びメモリ領域の面で無駄が無い。つまり、定時送信とイベント送信との両方について、データ送信を行うべき時に、送信対象のパケットデータを迅速に且つ効率的に作成することができるのである。
【0137】
しかも、パケットデータを構成するデータの種別や並びを変更する場合に、プログラム制御文自体を修正する必要が無い。つまり、種別の変更に対しては、Handle番号特定テーブルにてパケット番号毎に記述するHandle番号を書き換えるだけで対応することができ、並びの変更に対しては、パケット番号特定テーブルにてHandle番号毎に記述する共通パケットデータ位置及び共通パケットデータサイズを書き換えるだけで対応することができる。
【0138】
また、同じHandle番号のデータを含むパケットデータであっても、イベント送信を必要としないパケットデータについては、パケット番号特定テーブルにパケット番号を記述しなければ良い。具体的には、前述したように、Handle5 のデータは、図5(A)に示す如く、PN1とPN3との2つの各パケットデータに含まれて送信されるが、パケット番号特定テーブルにおいて、Handle5 に対応して記述されているパケット番号はPN1のみであるため、Handle5 のデータが更新されてイベント送信される時に、PN3のパケットデータが作成されることはない。つまり、本実施形態の第1マイコン60によれば、パケット番号特定テーブルにてHandle番号毎に記述するパケット番号を変えるだけで、イベント送信するパケットデータを変更することができる。
【0139】
そして更に、本実施形態の第1マイコン60によれば、何れかのパケットデータの定時送信間隔(送信周期)を変更する場合、Handle番号特定テーブルにて、そのパケットデータのパケット番号に対応して記述する送信周期を書き換えるだけで良く、定時送信間隔の変更に対しても、非常に容易に対応することができる。
【0140】
また、本実施形態の第1マイコン60では、送信する各データに対するLSB変換処理を、アプリケーション部100とは別に設けた物理値変換部220で行うようにしているため、アプリケーション部100の各アプリケーションソフト110〜130は、通信相手側で採用されているデータ精度を全く意識する必要が無く、各アプリケーションソフト110〜130と通信相手との独立性を確保することができる。このため、アプリケーションソフトの入れ替えや、他のシステム構成への転用が非常に容易となる。
【0141】
そして更に、本実施形態の第1マイコン60によれば、何れかのデータに対するLSB変換の内容を変更する場合にも、プログラム制御文自体を修正する必要がなく、パケット番号特定テーブルにて、そのデータのHandle番号に対応して記述するLSB変換コールアドレスを書き換えるだけで対応することができる。尚、新たな内容のLSB変換が必要な場合には、その変換を行うためのLSB変換プログラムをROMに追加した上で、パケット番号特定テーブル内のLSB変換コールアドレスを変更すれば良い。
【0142】
また、本実施形態の第1マイコン60では、LSB変換すべきデータを処理対象として、パケット番号特定テーブルに基づき特定されるLSB変換プログラムを起動することにより、そのデータに対してLSB精度処理を行うようにしているため、同じ内容のLSB変換を行うデータが複数種類ある場合には、例えば図5(B)における1段目のHandle1 と2段目のHandle2 のように、パケット番号特定テーブル内のLSB変換コールアドレスを同じ値($00001000 )にしておくことで、その複数のデータに対して同じLSB変換プログラムを使用することができる。よって、プログラムの全容量(延いては、ROMの必要容量)を削減することができる。
【0143】
以上、本発明の一実施形態について説明したが、本発明は、上記実施形態に限定されるものではなく、種々の形態を採り得ることは言うまでもない。
例えば、上記実施形態では、通信データ変換部240が参照するパケット番号毎の通信方式とヘッダ情報も、Handle番号特定テーブルに記述するようにしたが、パケット番号毎の通信方式とヘッダ情報は、別のデータマップで定義するようにしても良い。但し、上記実施形態のように、Handle番号特定テーブルで一括して定義した方が効率的である。
【0144】
また、上記実施形態の車両制御システム1では、エンジンECU2の第1マイコン60が、3種類の通信プロトコルで外部と通信したが、例えば、多重通信線10を介した通信だけを行うのであれば、通信ドライバ部300のDMA通信部310とシリアル通信部320は削除することができる。
【図面の簡単な説明】
【図1】 実施形態の車両制御システムの構成を表す構成図である。
【図2】 図1の車両制御システムを構成するエンジンECUの内部構成を表すブロック図である。
【図3】 エンジンECUに設けられたマイコン内の通信モデルを仮想的に示した概念図である。
【図4】 テーブル格納部に格納された共有メモリテーブルを説明する説明図である。
【図5】 テーブル格納部に格納されたHandle番号特定テーブルとパケット番号特定テーブルを説明する説明図である。
【図6】 アプリケーション部によって求められた制御用データを共有メモリに格納する処理動作を示すメッセージシーケンスチャートである。
【図7】 定時送信時に、共有メモリに格納されている制御用データから共通パケットデータを作成する処理動作を示すメッセージシーケンスチャートである。
【図8】 作成された共通パケットデータを、通信データ列に変換して送信する処理動作を示すメッセージシーケンスチャートである。
【図9】 イベント送信時に、共有メモリに格納されている制御用データから共通パケットデータを作成する処理動作を示すメッセージシーケンスチャートである。
【図10】 図7或いは図9の処理動作によって作成される共通パケットデータを表す模式図である。
【図11】 一般的な車両制御システムの構成を表す構成図である。
【図12】 パケットデータの構成例を説明する説明図である。
【符号の説明】
1…車両制御システム 2…エンジンECU 4…エアコンECU
6…メータECU 8…姿勢制御ECU 10…多重通信線
11…シリアル通信線 60…第1マイコン 62…第2マイコン
64…入力回路 66…出力回路 68…通信線 70…通信IC
100…アプリケーション部 110…エンジンアプリケーションソフト
120…ECTアプリケーションソフト
130…クルーズアプリケーションソフト 200…通信変換部
210…共有メモリ部 220…物理値変換部
230…共通パケットデータ部 240…通信データ変換部
300…通信ドライバ部 310…DMA通信部
320…シリアル通信部 330…多重通信部 400…通信制御部
410…タイマ 500…テーブル格納部

Claims (3)

  1. 自動車に搭載された制御対象を制御するための演算処理を行うと共に、その演算処理により算出した制御用のデータを所定の記憶部に格納し、更に、前記記憶部に格納されたデータのうちで、前記自動車に搭載された通信相手へ送信すべき複数種類の送信対象データを、所定の順番に並べてパケットデータを作成し、その作成したパケットデータを前記通信相手へ送信する情報処理装置を備えた自動車用制御装置において、
    前記情報処理装置は、
    前記パケットデータの識別番号であるパケット番号毎に、そのパケット番号のパケットデータを構成する各送信対象データの種別番号が記述された第1のデータテーブルと、前記送信対象データの種別番号毎に、その種別番号の送信対象データが構成要素となるパケットデータのパケット番号と、その種別番号の送信対象データが前記パケットデータ内においてどの位置に配置されるかを示す配置位置情報とが記述された第2のデータテーブルとを格納したテーブル格納部と、
    予め定められた送信周期毎に、通信相手へ今回送信すべきパケットデータのパケット番号を送信指令として出す定時送信動作起動手段と、
    該定時送信動作起動手段によって送信指令としてのパケット番号が出されると、前記第1のデータテーブルから、前記送信指令として出されたパケット番号に対応して記述されている各送信対象データの種別番号を取得して、その各種別番号の送信対象データを前記記憶部から読み出すと共に、前記第2のデータテーブルから、前記取得した各種別番号に夫々対応して記述されている配置位置情報を取得し、前記記憶部から読み出した各送信対象データを前記取得した各配置位置情報に基づいて並べることにより、前記送信指令として出されたパケット番号のパケットデータを作成する定時送信用パケットデータ作成手段と、
    前記記憶部内の送信対象データのうちの特定のデータが更新されたことを検出すると、その特定のデータの種別番号を送信指令として出すイベント送信動作起動手段と、
    該イベント送信動作起動手段によって送信指令としての種別番号が出されると、前記第2のデータテーブルから、前記送信指令としての種別番号に対応して記述されているパケット番号を取得し、次いで、前記第1のデータテーブルから、前記取得したパケット番号に対応して記述されている各送信対象データの種別番号を取得して、その各種別番号の送信対象データを前記記憶部から読み出すと共に、前記第2のデータテーブルから、前記取得した各種別番号に夫々対応して記述されている配置位置情報を取得し、前記記憶部から読み出した各送信対象データを前記取得した各配置位置情報に基づいて並べることにより、前記送信指令として出された種別番号のデータが含まれるパケットデータを作成するイベント送信用パケットデータ作成手段と、
    前記定時送信用パケットデータ作成手段及び前記イベント送信用パケットデータ作成手段の各々によって作成されたパケットデータを、前記通信相手へ送信する送信手段と、
    を備えていることを特徴とする自動車用制御装置。
  2. 請求項1に記載の自動車用制御装置において、
    前記第1のデータテーブルには、前記パケット番号毎に、そのパケット番号のパケットデータを送信すべき送信周期も記述されており、
    前記定時送信動作起動手段は、前記第1のデータテーブルに記述された各パケット番号を、そのパケット番号に対応して前記第1のデータテーブルに記述されている送信周期毎に、前記送信指令として出すこと、
    を特徴とする自動車用制御装置。
  3. 請求項1又は請求項2に記載の自動車用制御装置において、
    前記情報処理装置は、
    前記記憶部内の各送信対象データに対して、そのデータを、該データが示す物理値を通信相手側で扱われる分解能で表すデータに変換する精度変換処理を行うための、複数種類の変換プログラムを格納した変換プログラム格納手段を備えており、
    前記第2のデータテーブルには、
    前記送信対象データの種別番号毎に、その種別番号の送信対象データに対して前記精度変換処理を行うための前記変換プログラムが、前記変換プログラム格納手段内において何れの格納位置に格納されているかを示す格納位置情報も記述されており、
    更に、前記定時送信用パケットデータ作成手段と前記イベント送信用パケットデータ作成手段との各々は、
    前記記憶部から読み出した送信対象データの各々について、前記第2のデータテーブルから、その送信対象データの種別番号に対応して記述されている前記格納位置情報を取得すると共に、その送信対象データを処理対象として前記取得した格納位置情報が示す格納位置に格納されている変換プログラムを起動することにより、前記記憶部から読み出した各送信対象データに対して前記精度変換処理を行い、その精度変換処理後の各送信対象データを、前記第2のデータテーブルから取得した各配置位置情報に基づいて並べることにより、前記パケットデータを作成すること、
    を特徴とする自動車用制御装置。
JP11854199A 1999-04-26 1999-04-26 自動車用制御装置 Expired - Lifetime JP3690179B2 (ja)

Priority Applications (8)

Application Number Priority Date Filing Date Title
JP11854199A JP3690179B2 (ja) 1999-04-26 1999-04-26 自動車用制御装置
US09/551,870 US6374161B1 (en) 1999-04-26 2000-04-18 Automobile control system and method capable of revising control data transmission function
ES00108801T ES2254066T3 (es) 1999-04-26 2000-04-25 Sistema de control de automovil y metodo capaz de revisar la funcion de transmision de datos de control.
DE60025969T DE60025969T2 (de) 1999-04-26 2000-04-25 Kraftfahrzeug-Steuerungssystem and Verfahren geeignet zur Revision der Steuerldatenübertragungsfunktion
DE60031464T DE60031464T2 (de) 1999-04-26 2000-04-25 Kraftfahrzeug-Steuerungssystem und Verfahren geeignet zur Revision der Steuerdatenübertragungsfunktion
EP00108801A EP1049062B1 (en) 1999-04-26 2000-04-25 Automobile control system and method capable of revising control data transmission function
ES04022240T ES2270248T3 (es) 1999-04-26 2000-04-25 Sistema de control de automovil y metodo capaz de revisar la funcion de transmision de datos de control.
EP04022240A EP1486927B1 (en) 1999-04-26 2000-04-25 Automobile control system and method capable of revising control data transmission function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11854199A JP3690179B2 (ja) 1999-04-26 1999-04-26 自動車用制御装置

Publications (2)

Publication Number Publication Date
JP2000310153A JP2000310153A (ja) 2000-11-07
JP3690179B2 true JP3690179B2 (ja) 2005-08-31

Family

ID=14739153

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11854199A Expired - Lifetime JP3690179B2 (ja) 1999-04-26 1999-04-26 自動車用制御装置

Country Status (1)

Country Link
JP (1) JP3690179B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002204238A (ja) * 2000-12-28 2002-07-19 Denso Corp 通信制御装置
JP4522846B2 (ja) * 2004-12-27 2010-08-11 ルネサスエレクトロニクス株式会社 データ処理モジュール及びその送付候補メッセージの決定方法
JP2015020612A (ja) * 2013-07-19 2015-02-02 矢崎総業株式会社 閉め忘れ警報装置
US11405234B2 (en) 2018-08-21 2022-08-02 Google Llc Extensible mapping for vehicle system buses
JP7376425B2 (ja) * 2020-05-11 2023-11-08 日立Astemo株式会社 車両制御装置
JP7484633B2 (ja) 2020-09-30 2024-05-16 株式会社デンソー 共用ストレージ管理装置及び共用ストレージ管理方法

Also Published As

Publication number Publication date
JP2000310153A (ja) 2000-11-07

Similar Documents

Publication Publication Date Title
JP3692820B2 (ja) 自動車用制御装置
CN101916089B (zh) 可配置客车车身控制***及其参数配置方法
CN100380258C (zh) 运行至少两个相互连接的控制器的方法和计算***
JP6446236B2 (ja) 車両制御システム
US6360145B1 (en) Vehicle platform-portable controller
US6374161B1 (en) Automobile control system and method capable of revising control data transmission function
US7299308B2 (en) Data transmission apparatus and electronic control unit
KR20070087156A (ko) 고장 진단 데이터 기록 시스템 및 방법
JP3690179B2 (ja) 自動車用制御装置
JP4111674B2 (ja) 通信ゲートウェイ装置
US7203580B2 (en) Electrical control unit and control system comprising plural electrical control units
JP3666286B2 (ja) 自動車用制御装置
JP3666297B2 (ja) 自動車用制御装置
CN201761451U (zh) 可配置客车车身控制***
US20080161994A1 (en) Method and system for autogenerating static fault code data based on a unified summary table for heavy duty diesel engines
US20040098139A1 (en) Electronic apparatus for a bus system
JP4581284B2 (ja) 通信システムおよび電子制御装置
JP4259456B2 (ja) データ記録装置及びデータ記録方法
US6460096B1 (en) Automatic serial bus transmission sequencer
US20080288127A1 (en) Data Processing Device and Method for the Operation Thereof
JP2573330B2 (ja) 車輌診断システム
JP2000259208A (ja) 機器及び通信モジュール並びにマッピング情報の生成方法及びツール装置
WO2024013995A1 (ja) 電子制御装置及び電子制御方法
US20240126937A1 (en) Center, management system, management method, and storage medium
WO2023277185A1 (ja) 車載装置、データ生成方法、データ生成プログラムおよび車両システム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040812

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050315

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050422

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: 20050524

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050606

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080624

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110624

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110624

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120624

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120624

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130624

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20140624

Year of fee payment: 9

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term