JP2013192176A - 自動車用電子制御装置 - Google Patents

自動車用電子制御装置 Download PDF

Info

Publication number
JP2013192176A
JP2013192176A JP2012058824A JP2012058824A JP2013192176A JP 2013192176 A JP2013192176 A JP 2013192176A JP 2012058824 A JP2012058824 A JP 2012058824A JP 2012058824 A JP2012058824 A JP 2012058824A JP 2013192176 A JP2013192176 A JP 2013192176A
Authority
JP
Japan
Prior art keywords
data
buffer
bytes
transmission
stored
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012058824A
Other languages
English (en)
Inventor
Makoto Oshima
良 大島
Shingo Oba
真吾 大場
Masaki Uno
誠己 羽野
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 Astemo Ltd
Original Assignee
Hitachi Automotive Systems 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 Automotive Systems Ltd filed Critical Hitachi Automotive Systems Ltd
Priority to JP2012058824A priority Critical patent/JP2013192176A/ja
Publication of JP2013192176A publication Critical patent/JP2013192176A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Communication Control (AREA)

Abstract

【課題】データの送信サイズと蓄積サイズとの不整合によるオーバーフローの発生を検知できるようにして、データの連続性の確保を可能とする。
【解決手段】ポンプコントローラ1は、166.6μsの割り込み周期毎に4Byteのデータをバッファ11に格納し、5msの送信周期毎に30回分の120Byteのデータを外部のモニタツール4に送信する。ここで、166.6μs×30=4998μsと、送信周期とのずれに因って、31回目の割り込みが生じることで、送信されずにバッファ11内に残るデータが蓄積される。そこで、送信直前の状態でバッファ11に全容量分の256Byteのデータが格納されている場合には、バッファ11に格納されている全データを消去し、かつ、次回送信時にデータの識別子に設定値を付加することで、データ消去によるデータ欠落が生じていることを、モニタツール4に通知する。
【選択図】図5

Description

本発明は、バッファを介してデータを外部に送信する自動車用電子制御装置に関する。
特許文献1には、CAN(Controller Area Network)モジュールとして、送信するメッセージ及び受信したメッセージを複数バッファ可能なメッセージバッファと、メッセージバッファ上の更新が行われたバッファの位置を示す履歴情報を所定回数分格納可能なリングバッファと、メッセージバッファ上のメッセージ管理を行うメッセージハンドリング部とを備えたものが開示されている。
また、特許文献1には、リングバッファの空き領域が無くなった場合にフラグをセットし、更にデータを受信した場合、古いデータを保護するために、書き込みポインタから1つ戻ったポインタ位置に受信したデータを格納し続けることが開示されている。
特開2006−222627号公報
ところで、自動車用電子制御装置においては、当該制御装置内のデータをバッファに一旦蓄積し、外部のモニタツールなどに対して、バッファに格納したデータをまとめてCAN通信などによって送信する場合がある。
しかし、データを外部へ送信する周期が、データをバッファに格納する周期の整数倍でない場合、データの送信サイズと蓄積サイズとが不整合となって、送信できなかったデータがバッファ内に蓄積していって、バッファがオーバーフローする場合があった。
そして、一旦オーバーフローが発生してしまうと、送信できないデータが短周期で発生するようになり、外部のモニタツールが監視するデータの連続性が大きく損なわれてしまい、動作確認などが精度良く行えなくなってしまうという問題が生じる。
本発明は上記問題点に鑑みなされたものであり、データの送信サイズと蓄積サイズとの不整合によるオーバーフローの発生を検知できるようにして、データの連続性の確保を可能とすることを目的とする。
そのため、本願発明では、割り込み周期毎にデータを一定容量ずつバッファに格納し、送信周期毎に、前記割り込み周期の複数回分に相当する容量のデータを前記バッファから取得順に読み出して外部に送信する自動車用電子制御装置であって、前記バッファがオーバーフローするときに、前記バッファ内のデータを消去するようにした。
上記発明によると、オーバーフローが発生したときに、バッファ内のデータを消去するので、送信できなかったデータがバッファ内に蓄積していって再度オーバーフロー状態になるまでの間で、送信データの連続性を確保できる。
本願発明の実施形態における自動車用電子制御装置のシステムブロック図である。 本願発明の実施形態におけるバッファへのデータ格納処理及びバッファからのデータ送信処理を説明するための概念図である。 本願発明の実施形態において31回目の割り込みが発生する様子を説明するための図である。 本願発明の実施形態において送信されないデータが蓄積される様子を説明するための図である。 本願発明の実施形態におけるデータ送信処理及びバッファの消去処理を示すフローチャートである。 本願発明の実施形態における識別子の変化を示すタイムチャートである。
以下に本発明の実施の形態を説明する。
図1は、自動車用電子制御装置の一例としてのポンプコントローラ1を示している。
ポンプコントローラ1は、自動車20に搭載される自動変速機などにオイルを供給するオイルポンプ2を駆動する制御ユニットである。
ポンプコントローラ1は、CPU、ROMなどを含むコンピュータ(マイコン)10を備えると共に、CAN通信線3を介して外部のモニタツール4や他の車載制御装置5との間で通信を行う場合に、データを一時的に保存する記憶装置又は記憶領域であるリングバッファなどのバッファ11を備えている。
モニタツール4は、ポンプコントローラ1などのCAN通信線3に接続されている各種の制御装置の動作確認を行う場合にCAN通信線3に接続される、診断用ツールである。モニタツール4は、例えば、コンピュータ、表示装置、及び、キーボードなどのマンマシンインタフェースを含む装置であり、一例として市販のパーソナルコンピュータを用いることができる。
ここで、ポンプコントローラ1が、ポンプコントローラ1の動作確認などを行うモニタツール4に対してデータ(内部演算データ)を送信する場合の通信処理の詳細を例示する。
図2に示すように、バッファ11は、256Byteの容量を有し、ポンプコントローラ1は、166.6μs毎の割り込み処理によって、1割り込み当たり4Byteのデータ(送信用データ)をバッファ11に格納する。そして、ポンプコントローラ1は、送信周期である5ms毎に、バッファ11内に格納されている120Byteのデータを取得順に従ってまとめてモニタツール4に送信する。
即ち、割り込みが30回発生する毎に、30回の割り込み処理で合計が120Byte(4Byte×30回=120Byte)になっているバッファ11内の格納データを、CAN通信線3を介してモニタツール4に送信するようにしてある。
但し、166.6μsの割り込み周期の30回分は、166.6μs×30回=4998μsとなり、送信周期の5msに一致しないので、図3に示すように、30回目の割り込みタイミングと、データ送信を行う5msのタイミングとの間にずれが生じる。
上記の30回目の割り込みタイミングと、データ送信を行う5msのタイミングとの間におけるずれは、当初は2μsであるものの、このずれた位置から再度30回の割り込みを開始するために、データ送信を行う毎に徐々に拡大していく。そして、ずれ時間が166.6μs以上になると、データ送信の周期である5msの間に31回の割り込みが生じ、その結果、5msの間に124Byte(4Byte×31回=124Byte)のデータがバッファ11に格納されることになる。
しかし、バッファ11からは、図4(A)に示すように、30回の割り込みによってバッファ11に格納される120Byteのデータが5ms毎に送信されるようになっている。このため、図4(B)に示すように、1回目から30回目までの割り込みで格納された120Byteのデータは、モニタツール4に送信されることになるが、31回目(最後)の割り込みで格納した4Byteのデータは、送信されずにバッファ11内に残ることになる。
そして、図4(C)に示すように、4Byteのデータが残った状態のまま、再度、30回の割り込みによる120Byteデータがバッファ11に格納されるから、5ms毎の送信周期になったときには、また、バッファ11に124Byteのデータが格納されている状態になり、4Byteのデータが残る状態は解消されない。
尚、前回の送信時に、バッファ11に残された4Byteのデータは、次の送信周期では、最も古いデータとなるので、送信される120Byteに含まれ、最新に格納された4Byteのデータがバッファ11に残されることになるので、送信されるデータの連続性は保持される。
そして、前記ずれ時間が166.6μs以上に再度なると、それまで残されていたデータに加えて、31回分の124Byteのデータがバッファ11に格納されることになり、結果、バッファ11に残されるデータが更に4Byteだけ増えることになり、以後、31回目のデータが格納される毎に、バッファ11に残されるデータが4Byteずつ増えていくことになる。
上記のようにして、送信周期である5msの間に31回の割り込みがなされる毎に、120Byteのデータを送信してもバッファ11内の残されることになるデータの容量が4Byteずつ増えていき、最終的には、図4(D)に示すように、5ms毎の送信タイミングにおいてバッファ11の全容量分に相当する256Byteのデータが格納される状態となり、120Byteのデータを送信してもバッファ11内に136Byteが残される状態となる。
バッファ11内に136Byteのデータが残される状態では、バッファ11に120Byteの空き容量しかないから、次に送信周期の間に31回の割り込みが行われると、31回目の4Byteのデータをバッファ11に格納することができず、バッファ11のオーバーフロー状態になってしまう。
尚、上記の割り込み周期=166.6μs、送信周期=5ms、割り込み処理1回当たりの格納データサイズ=4Byte、送信データサイズ=120Byte、バッファ容量=256Byteは一例であり、上記の設定に限定されるものではない。そして、バッファ11のオーバーフローは、(送信データサイズ/格納データサイズ)×割り込み周期が、送信周期よりも短いこと、換言すれば、バッファ11へのデータの格納周期である割り込み周期を整数倍した場合に、送信周期に一致しないことにより生じる。
バッファ11がオーバーフローすると、例えば、リングバッファの場合、バッファ11に格納したデータのうちで最も古いデータが最新データによって上書きされ、上書きで消されたデータはモニタツール4に送信されないことになり、係る送信データの欠落によって、モニタツール4が受け取るデータの連続性が損なわれる。
そして、バッファ11を介してデータを受信するモニタツール4では、バッファ11のオーバーフローによる受信データの不連続な変化を、例えば、ポンプコントローラ1の動作不良に因るものと誤判断してしまう可能性がある。
そこで、ポンプコントローラ1は、図5のフローチャートに示すようにして、バッファ11の格納データの消去する処理を行うようにしてある。
図5のフローチャートに示す処理は、データ送信周期の5ms毎に割り込み実行され、まず、ステップS101では、120Byteのデータを送信する直前の状態において、バッファ11に全容量分の256Byteのデータが格納されているか否かを判断する。
全容量分の256Byteのデータが格納されている状態とは、今回120Byteのデータを送信しても、136Byteのデータがバッファ11に残る状態であり、次に31回目のデータを格納しようとしたときに、バッファ11に空き容量がなく、オーバーフローによって上書きが実行されることになる状態である。
バッファ11において送信されずに残るデータが132Byteである間は、30回分の120Byteのデータを格納しても、空き容量が4Byte(4Byte=256Byte−(132Byte+120Byte)だけ残ることになる。
しかし、送信周期(5ms)の間に31回目のデータが格納されると、直近の送信周期の間に格納されるデータサイズが124Byteになり、前回送信時に残った132Byteデータと合わせると、バッファ11の全容量である256Byteになる。
従って、ステップS101において、バッファ11に全容量分の256Byteのデータが格納されていると判断されるのは、直近の送信周期の間に31回のデータ格納がなされ、かつ、前回送信時に132Byteのデータが送信されずに残っていた場合である。
バッファ11に、全容量分の256Byteのデータが格納されていない場合、換言すれば、4Byte以上の空き容量がある場合には、今回120Byteのデータを送信すれば、空き容量が124Byte以上確保されることになり、31回目の割り込みが行われるとしても、係る割り込みによるデータの格納を実施でき、バッファ11はオーバーフロー状態にはならない。
そこで、ステップS101で、バッファ11に全容量分の256Byteのデータが格納されておらず、空き容量がある場合には、ステップS102へ進み、バッファ11に格納されているデータのうちで古い120Byte分のデータを、取得順に従ってモニタツール4に送信する。
ここで、120Byteよりも格納データのサイズが多い場合には、多い分のデータだけ送信されずにバッファ11内に残り、次回の送信タイミングで送信されることになる。
一方、バッファ11に全容量分の256Byteのデータが格納されている場合には、ステップS103へ進んで、バッファ11に格納されている256Byteのデータを全て消去し、バッファ11を送信されずに残されるデータがない初期状態に戻す。
これにより、再度、バッファ11に全容量分の256Byteのデータが格納されるようになるまでは、連続性を保ってデータをモニタツール4に送信することができる。換言すれば、バッファ11に全容量分の256Byteのデータが格納される毎に、データの消去を行い、係る消去が実施される周期の間では、データが連続的に送信されるようにしてある。
本実施形態で例示した、周期、データサイズの場合、バッファ11の全容量分のデータが消去されるのは、14.7秒毎になる。
モニタツール4における動作確認においては、一般的に、10秒程度の連続したデータを取得できれば、動作確認に必要十分である。従って、バッファ11に全容量分の256Byteのデータが格納される毎にデータを消去しても、消去直後の14.7秒間で、高い精度で動作確認を行える。
但し、モニタツール4が、256Byte分の未送信データが消去されたこと、換言すれば、256Byte分のデータが欠落したことを認識しないと、消去タイミングを含む期間でデータを監視し、例えば、消去タイミングの前後でデータが急変したことに基づき、ポンプコントローラ1の動作不良を判定してしまう可能性がある。
そこで、ステップS104では、次のデータ送信タイミング(5ms経過後)において、120Byteのデータを送信するときのデータフレームに含まれる識別子IDを、通常(消去タイミング直後でない場合)とは異なる値とする設定を行うことで、データ欠落の発生をモニタツール4側に通知する。
係る識別子IDを付加された120Byteのデータを受け取ったモニタツール4は、識別子IDに基づき、消去タイミング直後であるか否か、換言すれば、256Byte分の未送信データの欠落後であるか否かを判断できる。従って、モニタツール4を用いた動作確認においては、消去タイミングを跨いでのデータ監視をキャンセルし、消去タイミング直後の送信データの連続性が確保される14.7秒間内において送信データを監視して、ポンプコントローラ1の動作状態を判断することができる。
図6は、識別子ID(CAN ID)の一例を示すものであり、消去タイミング直後でない場合には、0x01から0x0Fまでの識別子IDを、各送信データに与えるのに対し、消去タイミング直後の識別子IDの1周期においては、例えば、通常値+0x10として、識別子IDの値をシフトさせる。
これにより、識別子IDの変化範囲が、消去タイミング直後では、0x11〜0x1Fとなるのに対し、それ以外では、0x01〜0x0Fとなるから、モニタツール4側では、0x11以上の識別子IDであるか否かによって、消去タイミング(256Byte分のデータ欠落)直後であるか否かを判断できる。
以上、好ましい実施形態を具体的に説明したが、当業者であれば、種々の変形態様を採り得ることは自明である。
例えば、上記実施形態では、自動車用電子制御装置をポンプコントローラ1としたが、この他、自動車用エンジンにおける燃料噴射量などを制御するエンジンコントローラや、自動変速機を制御するATコントローラなどにおいても、同様にデータ送信及びデータ消去を行わせることで、同様の作用、効果を得ることができる。
また、バッファ11に格納されている全データを消去させるタイミングとして、上記実施形態では、データ送信直前での空き容量が0Byteのときとしたが、空き容量が4Byteや8Byteなどの設定値(4Byte×n:nは自然数)以下になったときに、バッファ11に格納されている全データを消去させたり、空き容量が0Byteであるのに更に割り込みによるデータ格納要求が発生してバッファ11内で上書きを行ったときに、バッファ11に格納されている全データを消去させたりすることができる。即ち、本願において、バッファのオーバーフローが生じるときには、空き容量が無くなったとき、空き容量が無くなりそうなとき、空き容量がなくバッファ内を上書きしたときを含む。
また、送信相手の外部装置とは、自動車用電子制御装置に対してCAN通信線3などの通信線を介して接続される装置であればよく、モニタツール4に限定されないが、少なくとも、一定周期毎のデータ欠落が許容される装置である。
また、データ転送に用いる規格はCANに限定されず、LIN(Local Interconnect Network)などの他のネットワーク通信を用いることができる。
ここで、上記実施形態から把握し得る請求項以外の技術的思想について、以下に効果と共に記載する。
(イ)前記バッファ内のデータを全て消去することによる送信データの欠落を、データフレームの識別子に対して、設定値を付加する補正を行うことによって外部に通知する、請求項2記載の自動車用電子制御装置。
上記発明によると、識別子に設定値を付加することで、識別子の変化範囲を異ならせることができ、以って、送信データの欠落の有無を識別子に基づき判定して、データの連続性が確保される区間を特定できる。
(ロ)前記バッファにおける空き容量が0Byteになったときに、前記バッファ内のデータを全て消去する、請求項1〜3のいずれか1つに記載の自動車用電子制御装置。
上記発明によると、送信できずに残るデータが蓄積し、送信直前におけるバッファの空き容量が0Byteになると、一定期間内にバッファの上書き(オーバーフロー)が生じるものと判断し、バッファ内のデータを全て消去することで、データ送信後に送信されなかったデータが残らない初期状態に戻す。
(ハ)前記バッファにおける空き容量が設定値(設定値>0Byte)以下になったときに、前記バッファ内のデータを全て消去する、請求項1〜3のいずれか1つに記載の自動車用電子制御装置。
上記発明によると、送信できずに残るデータが蓄積し、バッファにおける空き容量が設定値(設定値>0Byte)以下になると、近々にバッファの上書き(オーバーフロー)が生じるものと判断し、バッファ内のデータを全て消去することで、データ送信後に送信されなかったデータが残らない初期状態に戻す。
(ニ)前記バッファ内において上書きが行われたときに、前記バッファ内のデータを全て消去する、請求項1〜3のいずれか1つに記載の自動車用電子制御装置。
上記発明によると、送信できずに残るデータが蓄積し、バッファにおける空き容量が0Byteになった状態で、更にデータ格納の要求が発生し、バッファ内の古いデータを上書きすることになった場合には、バッファ内のデータを全て消去することで、データ送信後に送信されなかったデータが残らない初期状態に戻す。
1…ポンプコントローラ、2…オイルポンプ、3…CAN通信線、4…モニタツール、10…コンピュータ、11…バッファ

Claims (3)

  1. 割り込み周期毎にデータを一定容量ずつバッファに格納し、送信周期毎に、前記割り込み周期の複数回分に相当する容量のデータを前記バッファから取得順に読み出して外部に送信する自動車用電子制御装置であって、
    前記バッファのオーバーフローが生じるときに、前記バッファ内のデータを消去する、自動車用電子制御装置。
  2. 前記バッファ内のデータを消去することによる送信データの欠落を、データフレームの識別子によって外部に通知する、請求項1記載の自動車用電子制御装置。
  3. 前記バッファを介してデータが送信される外部装置が、前記自動車用電子制御装置の動作確認を行うためのモニタツールである、請求項1又は2記載の自動車用電子制御装置。
JP2012058824A 2012-03-15 2012-03-15 自動車用電子制御装置 Pending JP2013192176A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012058824A JP2013192176A (ja) 2012-03-15 2012-03-15 自動車用電子制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012058824A JP2013192176A (ja) 2012-03-15 2012-03-15 自動車用電子制御装置

Publications (1)

Publication Number Publication Date
JP2013192176A true JP2013192176A (ja) 2013-09-26

Family

ID=49391982

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012058824A Pending JP2013192176A (ja) 2012-03-15 2012-03-15 自動車用電子制御装置

Country Status (1)

Country Link
JP (1) JP2013192176A (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06244871A (ja) * 1993-02-12 1994-09-02 Fuji Xerox Co Ltd メモリ管理装置
JPH08331147A (ja) * 1995-06-05 1996-12-13 Fujitsu Ltd データ伝送網の速度変換装置
JP2000101595A (ja) * 1998-09-24 2000-04-07 Hitachi Ltd セル組み立て分解装置およびセル組み立て分解方法
JP2002135288A (ja) * 2000-10-27 2002-05-10 Yamatake Corp 通信装置
JP2003271536A (ja) * 2002-03-19 2003-09-26 Nec Microsystems Ltd データ転送制御装置及び方法
JP2009225044A (ja) * 2008-03-14 2009-10-01 Fujitsu Ltd 非同期同期通信網の変換装置、データ変換方法、データ変換プログラム、及び通信システム
JP2010166138A (ja) * 2009-01-13 2010-07-29 Hitachi Ltd バッファ制御方法およびパケット転送装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06244871A (ja) * 1993-02-12 1994-09-02 Fuji Xerox Co Ltd メモリ管理装置
JPH08331147A (ja) * 1995-06-05 1996-12-13 Fujitsu Ltd データ伝送網の速度変換装置
JP2000101595A (ja) * 1998-09-24 2000-04-07 Hitachi Ltd セル組み立て分解装置およびセル組み立て分解方法
JP2002135288A (ja) * 2000-10-27 2002-05-10 Yamatake Corp 通信装置
JP2003271536A (ja) * 2002-03-19 2003-09-26 Nec Microsystems Ltd データ転送制御装置及び方法
JP2009225044A (ja) * 2008-03-14 2009-10-01 Fujitsu Ltd 非同期同期通信網の変換装置、データ変換方法、データ変換プログラム、及び通信システム
JP2010166138A (ja) * 2009-01-13 2010-07-29 Hitachi Ltd バッファ制御方法およびパケット転送装置

Similar Documents

Publication Publication Date Title
CN105981336B (zh) 不正常检测电子控制单元、车载网络系统以及不正常检测方法
JP4751785B2 (ja) 伝送装置およびソフトウェア自動更新方法
US10764372B2 (en) Vehicular communication device
JP6418217B2 (ja) 通信システムで実行される情報集約方法
JP2006277062A (ja) アプリケーション管理装置およびそのソフトウェアを格納した記憶媒体
JP5050653B2 (ja) 電子制御装置
US20230367664A1 (en) Method for managing ecu on vehicle, and ecu and readable storage medium
JP2015179888A (ja) 通信システム及び中継装置
CN110069363A (zh) 更新多处理器装置引导加载程序的方法、存储介质及装置
JP2004206390A (ja) ソフトウェア管理装置及びソフトウェア管理サーバ
JP2006085534A (ja) 情報処理装置、情報処理装置のソフトウェア更新方法、プログラム
CN103297600A (zh) 移动终端和移动终端系统自动重启方法
EP2398190B1 (en) Field communication system
JP5892112B2 (ja) 電子制御装置
JP2013192176A (ja) 自動車用電子制御装置
CN109542983A (zh) 一种数据同步方法、装置、设备及可读存储介质
JP6717184B2 (ja) 車載制御装置
JP2019214353A (ja) 通信装置及び制御方法
JP2015072568A (ja) 電子制御装置
JP4821867B2 (ja) 通信装置、および通信プログラム
CN112698885B (zh) 运行方法和装置
US9411705B2 (en) Event communication apparatus for protection relay
US9720474B2 (en) Electronic control unit
JP7414789B2 (ja) 故障時期予測装置、システム、方法、及びプログラム
CN103220187A (zh) 一种三层端口状态的检测方法和装置

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20140528

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140909

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150901

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151020

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160329