説明

車載用中継接続ユニット

【課題】受信したメッセージのうちエラーメッセージを検出した場合は中継を停止するよう中継方式を切り替える。
【解決手段】ECU30が接続された複数のバス31と接続され、ECU間でのメッセージの送受信を中継する車載用の中継接続ユニット10であって、メッセージの中継方式をカットスルー方式とストア&フォワード方式を切り替える中継処理部11と、受信したメッセージからエラーメッセージを検出する受信エラーカウンタ部12を備え、中継処理部11は、ECUが周期的に送信するメッセージのうち最大送信周期のメッセージの1周期内で受信エラーカウンタ部でエラーメッセージを検出した場合をエラー周期とし、該エラー周期の連続回数を予め定めた上限閾値と比較するエラー監視部11aを備え、エラー周期の連続回数が上限閾値以上になるとメッセージの中継方式をカットスルー方式からストア&フォワード方式に切り替える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、車載用の中継接続ユニットに関し、詳しくは、電子制御ユニットが接続された複数のバスと接続され、電子制御ユニット間でのメッセージの送受信を中継する車載用の中継接続ユニットにおいて、受信したメッセージからエラーメッセージを検出した場合にメッセージの中継方式をカットスルー方式からストア&フォワード方式に切り替えるものである。
【背景技術】
【0002】
従来、車両に搭載される機器を制御する電子制御ユニット(ECU)を多重通信用のバス(通信線)に接続すると共に、該複数のバスを中継接続ユニットに接続し、異なるバスに属するECU間で送受信されるメッセージを該中継接続ユニットで中継している車載用通信システムが採用されている。
【0003】
前記中継接続ユニットのメッセージの中継方式として、ストア&フォワード方式及びカットスルー方式が知られている。
ストア&フォワード方式は、中継接続ユニットがメッセージフレームを最後まで受信した後、アービトレーションフィールドからメッセージ識別子を読み出し、該メッセージ識別子に対応する中継先のバスを判別し、該バスに送信を開始する方式である。
中継接続ユニットはメッセージフレームを全て受信しているので、受信したメッセージフレームにエラーが発生していた場合には、該エラーを検知してメッセージフレームの送信を停止することができる。しかし、メッセージフレームを最後まで受信してから他のバスへの送信を開始しているので、後述するカットスルー方式に比べてメッセージフレームの受信を開始してから送信を開始するまでの時間が長くなる。
【0004】
一方、カットスルー方式は、中継接続ユニットが、メッセージフレームのうちメッセージ識別子が書き込まれたアービトレーションフィールドまでを受信した時点で、該メッセージ識別子に対応する中継先のバスを判別し、該バスに送信を開始する方式である。
メッセージフレームにエラーが存在していても、中継接続ユニットはアービトレーションフィールドを受信した時点で既に他のバスへの送信を開始しているので、該エラーを含むメッセージフレームを送信し、エラーを認識した段階でそのフレームをエラーフレームとして処理する。
しかし、メッセージフレームを最後まで受信せずにバスに送信を開始しているので、ストア&フォワード方式に比べてメッセージフレームの受信を開始してから送信を開始するまでの時間が短くなり、中継処理を高速化することができる。
【0005】
このようなカットスルー方式とストア&フォワード方式の夫々の利点を生かし、中継するメッセージの内容によって切り替えて使用する方法が特開平9−162917号公報(特許文献1)に提案されている。
【0006】
【特許文献1】特開平9−162917号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかし、中継接続ユニットは、高速に中継を行う必要があるメッセージであっても、該メッセージからエラーメッセージが検出される場合は中継を停止することが好ましいが、特許文献1では、エラーメッセージの検出については記載されていない。このため、受信したメッセージがエラーメッセージであっても該エラーメッセージの一部とエラーフレームが中継されてしまうという問題がある。
【0008】
本発明は、前記問題に鑑みてなされたもので、中継接続ユニットが受信したメッセージからエラーメッセージが検出される場合は中継を停止する一方、エラーメッセージが検出されない場合には高速に中継を行うことを課題としている。
【課題を解決するための手段】
【0009】
前記課題を解決するため、本発明は、電子制御ユニットが接続された複数のバスと接続され、前記電子制御ユニット間でのメッセージの送受信を中継する車載用の中継接続ユニットであって、
前記メッセージの中継方式を、メッセージフレームのアービトレーションフィールドを受信すると送信を開始するカットスルー方式と、メッセージフレームを最後まで受信してから送信を開始するストア&フォワード方式を切り替える中継処理部と、
受信したメッセージからエラーメッセージを検出する受信エラーカウンタ部を備え、
前記中継処理部は、
前記バスに接続された電子制御ユニットが周期的に送信するメッセージのうち最大送信周期のメッセージの1周期内で前記受信エラーカウンタ部で前記エラーメッセージを検出した場合をエラー周期とし、該エラー周期の連続回数を予め定めた上限閾値と比較するエラー監視部を備え、前記エラー周期の連続回数が前記上限閾値以上になるとメッセージの中継方式を前記カットスルー方式からストア&フォワード方式に切り替えることを特徴とする車載用の中継接続ユニットを提供している。
【0010】
中継接続ユニットは、受信したメッセージからエラーメッセージが検出されていない通常時には、中継速度が高速のカットスルー方式を用いて電子制御ユニット(ECU)から受信したメッセージを他のECUに中継送信している。これにより、中継接続ユニットは高速にメッセージの中継を行うことができる。
一方、中継接続ユニットの受信エラーカウンタ部は、受信したメッセージからエラーメッセージを検出する。
エラー監視部は、電子制御ユニットが周期的に送信するメッセージのうち最大送信周期のメッセージの1周期内で受信エラーカウンタ部を監視し、受信エラーカウンタ部がエラーメッセージを検出したか否かを検知し、受信エラーカウンタ部がエラーメッセージを検出したエラー周期の連続回数と上限閾値を比較する。エラー周期の連続回数が上限閾値以上になると、中継処理部はエラーメッセージをバスに継続的に送信するECUが存在すると判断し、メッセージの中継方式をカットスルー方式からストア&フォワード方式に切り替える。ストア&フォワード方式ではメッセージのフレームを最後まで受信してエラーのチェックを行うので、受信したメッセージがエラーメッセージである場合には、メッセージの中継を停止することができる。
【0011】
このように、中継接続ユニットは受信したメッセージからエラーメッセージを検出したか否かを判断してカットスルー方式とストア&フォワード方式を切り替えているので、エラーを含んでいるメッセージを受信している場合は中継を停止する一方、エラーを含んでいないメッセージを受信している場合には高速に中継を行うことができる。
【0012】
また、前記バスに接続された電子制御ユニットが周期的に送信するメッセージのうち最大送信周期のメッセージの1周期内で前記受信エラーカウンタ部で前記エラーメッセージを検出した場合をエラー周期としている。
これにより、電子制御ユニットが送信する全てのメッセージは1期間内に少なくとも1回は送信されるので、受信エラーカウンタ部はECUが送信する全てのメッセージを受信してエラーの有無を検知することができる。
【0013】
さらに、エラー監視部はエラー周期の連続回数を予め定めた上限閾値と比較し、中継処理部は前記エラー周期の連続回数が前記上限閾値以上になるとメッセージの中継方式を切り替えている。
エラーメッセージを継続的に受信している場合、エラーメッセージを受信してからメッセージの中継方式を切り替えるまでに要する時間は最大で該最大送信周期に上限閾値を乗じた時間となり、メッセージの中継方式の切替に要する時間をほぼ一定とすることができる。
【0014】
また、受信エラーカウンタ部は受信したメッセージにビットエラー、スタッフエラー、CRCエラー、フォームエラーを検出した場合に、該受信したメッセージをエラーメッセージとして検出している。即ち、エラーメッセージとは、バスのエラーを検出した中継接続ユニットやECUによって送信されるエラーフレームを構成するメッセージではなく、前記ビットエラー等のエラーを含むメッセージを示している。
【0015】
受信エラーカウンタ部は、エラーメッセージを検出して中継接続ユニットに内蔵された受信エラーカウンタ(REC)を用いてエラーメッセージをカウントしている。エラー監視部はRECのカウント値を監視することで、受信エラーカウンタ部がエラーメッセージを検出したか否かを検知している。
RECはCANプロトコルでメッセージの送受信を行う中継接続ユニットやECUに内蔵されているカウンタであり、中継接続ユニット等に内蔵された送信エラーカウンタ(TEC)と共に、中継接続ユニット等がバス上の通信に正常に参加することが出来る状態か、エラーを起こしやすい状態か、通信に参加できない状態かを管理するものである。
該RECをメッセージの中継方式の切替の判断に用いることで、新たにカウンタを設けることなく中継方式の切替を行うことができる。
【0016】
RECは中継接続ユニットが受信したメッセージのうちエラーメッセージをカウントするものであり、エラーメッセージを検出する毎にカウント値が加算される。エラーの種類によって加算されるカウント値は異なり、また、受信したメッセージにエラーがない場合にはRECのカウント値は減算される。加算値及び減算値はCANプロトコルにより定められている。
このようにRECのカウント値は増減するため、エラー監視部はカウント値自体を基準値と比較するのではなく、RECがエラーメッセージをカウントしたか否か、即ちRECのカウント値が1度でも増加したことを検知した場合に、受信エラーカウンタ部がエラーメッセージを検出したとしている。
なお、エラー監視部はRECのカウント値の減少については検知していない。
【0017】
前記中継処理部は、ストア&フォワード方式でのメッセージ中継時において、前記エラー周期が連続しない周期回数が前記エラー監視部で予め設定している下限閾値以上になると、メッセージ中継方式をカットスルー方式に切り替えることが好ましい。
【0018】
メッセージの中継方式がストア&フォワード方式である場合に、エラー監視部が受信エラーカウンタ部を監視し、前記エラー周期が連続しない周期回数と下限閾値を比較している。前記エラー周期が連続しない周期回数が下限閾値以上となると、中継処理部はエラーメッセージを継続的に送信していたECUが正常なメッセージを送信するようになったものと判断し、メッセージの中継方式を前記ストア&フォワード方式からカットスルー方式に切り替える。カットスルー方式に切り替えることで、高速にメッセージの中継を行うことができる。
【0019】
前記中継処理部は、カットスルー方式とストア&フォワード方式が設定時間内に所定回数以上切り替えられた場合は、ストア&フォワード方式でのメッセージの中継を継続させることが好ましい。
エラー監視部は中継方式の切替の履歴を記憶しており、エラー監視部は定期的に切替履歴を参照して、該切替が設定時間内に所定回数以上行われている場合には、エラーメッセージを送信するECUがバスに接続されていると判断してストア&フォワード方式を継続することで、エラーメッセージの中継を停止することができる。
【発明の効果】
【0020】
前述したように、本発明の中継接続ユニットによれば、受信したメッセージからエラーメッセージが検出されていない通常時には、中継方式としてカットスルー方式を用いることで高速にメッセージの中継を行うことができる。
一方、中継接続ユニットの受信エラーカウンタ部が受信したメッセージからエラーメッセージを検出した場合、エラー周期が上限閾値以上となると、エラーメッセージをバスに継続的に送信するECUが存在すると判断し、中継処理部はメッセージの中継方式をカットスルー方式からストア&フォワード方式に切り替える。ストア&フォワード方式ではメッセージのフレームを最後まで受信するので、受信したメッセージがエラーメッセージである場合には、メッセージの中継を停止することができ、不要なエラーフレームを中継先に送信しなくてもよくなる。
【0021】
このように、中継接続ユニットは受信したメッセージからエラーメッセージを検出したか否かを判断してカットスルー方式とストア&フォワード方式を切り替えているので、エラーを含んでいるメッセージを受信している場合は中継を停止する一方、エラーを含んでいないメッセージを受信している場合には高速に中継を行うことができる。
【発明を実施するための最良の形態】
【0022】
本発明の実施形態を図面を参照して説明する。
図1乃至図4は本発明の第1実施形態を示す。
本発明の中継接続ユニット10(ゲートウェイユニット)は、電子制御ユニット(ECU)30と接続した複数のバス31同士を接続し、異なるバス31に接続されるECU30間でのメッセージの送受信の中継を行っている。
本実施形態では、中継接続ユニット10に2本のバス31A、31Bを接続すると共に、各バス31A、31Bに夫々2つのECU30A−1、30A−2、30B−1、30B−2を接続しており、通信プロトコルはCANプロトコルに準拠している。
【0023】
中継接続ユニット10は、受信エラーカウンタ部を構成するCANコントローラ部12と中継処理部11と記憶部14を備えている。
CANコントローラ部12は、受信したメッセージからエラーメッセージを検出するメッセージ検知部17と、該エラーメッセージをカウントする受信エラーカウンタ(REC)16と送受信部13を各バス31毎に備えている。
メッセージ検知部17は送受信部13を介して受信したメッセージのエラーを検知してエラーメッセージとしており、具体的にはビットエラー、スタッフエラー、CRCエラー、フォームエラーを検知している。
【0024】
REC16はCANプロトコルで通信を行う中継接続ユニット10に内蔵されたカウンタであり、該メッセージ検知部17が受信したメッセージにエラーを検知した場合に所定の値が加算されると共に、メッセージ検知部17がエラーを検知せず中継接続ユニット10がメッセージを正常に受信した場合には所定の値が減算される。
REC16は中継接続ユニット10等に内蔵された図示しない送信エラーカウンタ(TEC)と共に、図4に示すように中継接続ユニット10の状態遷移を管理するものであり、中継接続ユニットがバス31上の通信に正常に参加することが出来るエラーアクティブ状態か、エラーを起こしやすいエラーパッシブ状態か、通信に参加できないバスオフ状態かのいずれの状態にあるかを管理している。
【0025】
中継処理部11は、メッセージの中継方式を、メッセージフレームのアービトレーションフィールドを受信すると送信を開始するカットスルー方式と、メッセージフレームを最後まで受信してから送信を開始するストア&フォワード方式を切り替えている。
【0026】
また、中継処理部11はエラー監視部11aを備えており、エラー監視部11aはバス31に接続されたECU30が周期的に送信するメッセージのうち最大送信周期を時間幅として設定した所定期間Δt毎に、CANコントローラ部12のREC16のカウント値の増減を監視し、所定期間Δt内でREC16のカウント値が増加したことを検知する。
REC16のカウント値の増加を検知した周期をエラー周期とし、該エラー周期の連続回数と予め定めた上限閾値C1とを比較し、前記周期の所定期間Δtの数が前記上限閾値C1以上になると、中継処理部11がメッセージの中継方式を前記カットスルー方式からストア&フォワード方式に切り替える。
【0027】
さらに、中継処理部11がストア&フォワード方式でメッセージの中継を行っている場合に、エラー監視部11aは、前記CANコントローラ部12がエラー周期が連続しない周期回数と下限閾値C2を比較し、該周期回数が下限閾値C2以上になると中継処理部11がメッセージ中継方式をカットスルー方式に切り替えている。
【0028】
さらに、中継処理部11は、カットスルー方式とストア&フォワード方式が設定時間内に所定回数以上切り替えられた場合は、ストア&フォワード方式でのメッセージの中継を継続させている。
また、中継処理部11は異なるバス31に接続されるECU30間でのメッセージの中継処理を行っている。
【0029】
記憶部14は、エラー監視部11aが中継方式を切り替えるための上限閾値C1と下限閾値C2を記憶する閾値記憶領域14aを備えている。
また、エラー監視部11aがREC16のカウント値が1度でも増加したことを検知した場合に所定時間Δtごとに+1される判定カウント値を記憶したエラー判定領域14bと、エラー記憶部14が中継方式を切り替えた履歴を記憶する履歴記憶領域14cを備えている。
【0030】
CANコントローラ部12はコントローラにより構成されており、中継処理部11はCPUにより構成されている。また、記憶部14はROMまたはRAMから構成され、送受信部13はドライバーから構成されている。
【0031】
次に、中継接続ユニット10がメッセージの中継方式をカットスルー方式からストア&フォワード方式へ切り替える方法について、バス31Aに接続されたECU30A−1、30A−2から送信され中継接続ユニット10を介してECU30Bに送信されるメッセージが、図2に示す送信周期とメッセージ数を持つ場合を例として説明する。
【0032】
中継接続ユニット10が受信したメッセージからエラーメッセージを検出していない場合には、メッセージの中継方式はカットスルー方式としている。
中継処理部11のエラー監視部11aは、所定期間Δtの間のREC16のカウント値の増減を監視している。所定期間Δtは、2つのECU30Aが送信するメッセージのうち最大送信周期の時間幅としており、所定期間Δtでは全てのメッセージが少なくとも1回はECU30から送信される。図2において、ECU30Aの最大送信周期は1000msであるため、所定期間Δtは1000msとなる。
【0033】
図3(A)に示すように、ECU30Aから送信されたメッセージに、中継接続ユニット10のCANコントローラ部12のメッセージ検知部17がエラーメッセージを検知しない場合は、REC16のカウント値に増減はなく0のままである。
一方、図3(B)に示すように、所定期間Δtの間にメッセージ検知部17がエラーメッセージを検出した場合には、REC16のカウント値はA部、B部、C部のように増加する。エラー監視部11aはREC16のカウント値が増加を示したか否かを検知し、一度でも増加を示した場合には、記憶部14のエラー判定領域14bに記憶された判定カウント値を+1する。
なお、REC16のカウント値は受信したメッセージにエラーを含まない場合は減少するが、エラー監視部11aはREC16のカウント値の減少については検知していない。
【0034】
また、エラー監視部11aは記憶部14から閾値C1を読み出す。本実施形態では閾値C1を4としている。
エラー監視部11aは所定期間Δtを繰り返してREC16のカウント値の監視を行い、カウント値が増加している場合、即ち該所定期間Δtがエラー周期である場合には記憶部14のエラー判定領域14bに記憶された判定カウント値を+1していく。また、エラー監視部11aがREC16のカウント値の増加を検知しなかった場合には、判定カウント値は0に戻す。
【0035】
エラー監視部11aは判定カウント値と閾値C1を比較し、判定カウント値が閾値4以上となった場合、即ち、エラー周期の連続回数が4以上となった場合には、エラー監視部11aはバス31Aにエラーメッセージを継続的に送信するECU30Aが存在すると判断し、バス31Aからバス31Bへのメッセージの中継方式をカットスルー方式からストア&フォワード方式に切り替える。
【0036】
次に、中継接続ユニット10がメッセージの中継方式をストア&フォワード方式からカットスルー方式へ戻す方法について説明する。
中継接続ユニット10のメッセージの中継方式がストア&フォワード方式の場合は、エラー監視部11aは記憶部14から閾値C2を読み出す。本実施形態ではC2を1としている。
エラー監視部11aは所定期間Δtを繰り返してREC16のカウント値の監視を行い、エラー監視部11aがREC16のカウント値の増加を検知しなかった場合には、判定カウント値を0とする。
判定カウント値がC1回(本実施形態では1回)0となった場合、即ち、エラー周期が連続しない周期回数がC1回以上になると、バス31Aにエラーメッセージを継続的に送信するECU30が存在しなくなったと判断し、バス31Aからバス31Bへの中継方式をストア&フォワード方式からカットスルー方式に切り替える。
【0037】
また、エラー監視部11aはカットスルー方式からストア&フォワード方式への切替及びストア&フォワード方式からカットスルー方式への切替の履歴を記憶部14の履歴記憶領域14cに記憶している。また、履歴記憶領域14cには所定の設定時間と所定切替回数を記憶している。エラー監視部11aは記憶部14の履歴記憶領域14cを定期的に参照し、中継方式の切替が、所定の設定時間内においてΔt×(C1+C2)の周期またはこれに近い周期で所定切替回数以上行われている場合には、エラーメッセージを継続的に送信するECU30が存在するものとして、ストア&フォワード方式を継続する。
【0038】
なお、中継方式をストア&フォワード方式からカットスルー方式へ戻す場合に、既にストア&フォワード方式でメッセージの中継を行っている時間が、中継接続ユニット10がバス31上に連続した11ビットのレセッシブビットを128回検出する時間T1よりも短い場合には、ストア&フォワード方式でメッセージの中継を行っている時間を時間T1よりも長く継続する。
【0039】
この理由について以下に説明する。
エラーメッセージを継続的に送信しているECU30は、図4に示すように、ECU30に備えた図示しない送信エラーカウンタ(TEC)の値を増加させ、エラーアクティブ→エラーパッシブ→バスオフという状態遷移を繰り返す。ECU30はエラーアクティブとエラーパッシブの場合にはメッセージを送信することが可能であるが、バスオフの場合にはメッセージを送信することができない。ECU30がバスオフの場合、中継接続ユニット10もエラーメッセージを受信せず、REC16のカウント値は増加しない。
【0040】
ECU30のバスオフからエラーアクティブへの復帰は、ECU30がバス31上に連続した11ビットのレセッシブビットを128回検出することで行われる。
このとき、CANプロトコルの通信速度を500kbpsとすると、ECU30がバス31上に連続した11ビットのレセッシブビットを128回検出する時間T1は式(1)で求められる。
T1=1/500kbps・11ビット・128回=2816μsec ・・式(1)
【0041】
即ち、ECU30がバスオフの状態にある時間の最短時間はT1=2816μsecであり、少なくともストア&フォワード方式に切り替えられてからT1までの間は、ECU30がバスオフの状態にあるために中継接続ユニット10のREC16が増加しない。
このため、少なくともストア&フォワード方式でのメッセージの中継をT1=2816μsec以上の時間継続し、時間T1が経過した後にカットスルー方式に切り替えることで、ECU30がバスオフからエラーアクティブに復帰して再びエラーメッセージを送信した場合に、中継接続ユニット10の中継方式が既にカットスルー方式となっていてエラーメッセージを他のバス31に中継することを防いでいる。
【0042】
なお、式(1)のECU30がバスオフの状態にある時間T1は最短時間であり、ストア&フォワード方式でメッセージの中継を行う時間が時間T1以上に長い場合であっても中継方式の切替時にECU30がバスオフの状態となることもあるが、少なくともストア&フォワード方式を時間T1以上継続することで、ECU30がバスオフからエラーアクティブに復帰したときに中継方式がカットスルー方式となっている可能性を少なくすることができる。
【0043】
なお、本実施形態ではバス31Aに接続されたECU30Aから送信されるメッセージは図2に示す送信周期とメッセージ数を持ち、メッセージの最大送信周期である所定期間Δtは1000msであり、閾値C2は1である。
エラー監視部11aが中継方式をカットスルー方式からストア&フォワード方式に切り替えた後、所定期間Δt後にエラー監視部11aが再びREC16のカウント値を検知しカウント値が増加している場合には中継方式を切替える。このため、少なくとも所定期間Δtの時間はストア&フォワード方式が継続する。ストア&フォワード方式が継続する所定時間Δtは1000msecであり、T1=2816μsecよりも十分に大きい値であるため、閾値C2が1であっても中継方式を切り替えることができる。
【0044】
本発明において、中継接続ユニット10が、エラーメッセージを受信してから、中継方式をカットスルー方式からストア&フォワード方式へ切り替え、該メッセージの他のバス31への中継を停止するまでに要する時間は以下のとおりである。
エラー監視部11aは、ECU30が送信するメッセージのうち最大送信周期の時間幅である所定時間Δt毎にREC16のカウント値を監視し、カウント値が増加している場合は記憶部14のエラー判定領域14bの判定カウント値を+1している。この判定カウント値がC1以上になると中継方式をカットスルー方式からストア&フォワード方式へ切り替えている。即ち、所定期間Δt×C1の時間経過後に中継方式が切り替わる。
図2に示す送信周期とメッセージ数を持つ場合、所定期間ΔtはECU30Aが送信するメッセージのうち最大送信周期の時間幅である1000msであり、本実施形態ではC1を4としているので、4000msec後には中継接続ユニット10はエラーメッセージの他のバス31への中継を停止することができる。
【0045】
一方、本発明の方法を採用しない中継接続ユニット10におけるエラーメッセージの中継について説明する。
中継方式はカットスルー方式が採用されるため、ECU30から周期的に送信されたエラーメッセージが他のバス31に中継される。
例として、図2に示すメッセージのうち、送信周期20msで送信される20のメッセージのうち2つがエラーメッセージであり、かつ2つのうち1つが中継接続ユニット10によって中継されるメッセージであった場合、中継接続ユニット10が中継するエラーメッセージは1秒間に50メッセージとなる。
【0046】
このエラーメッセージを送信しているECU30が図4に示すようにエラーアクティブからバスオフするまでの時間は、TECのカウント値が256以上となる時間である。エラーを含む1つのメッセージにつきTECのカウント値は8ずつ加算されていくため、TECのカウント値が256以上となる時間は256÷8=32メッセージのエラーメッセージが送信される時間であり、32メッセージ×送信周期20msec=640msecを要する。
【0047】
また、バスオフからエラーアクティブに復帰するまでの時間は、連続した11ビットのレセッシブビットを128回検出する時間である。連続した11ビットのレセッシブビットはエラーを含まないメッセージを連続して受信する場合にバス31上に現れるため、128回連続してエラーを含まないメッセージを受信すればよい。128の正常なメッセージを受信するのに必要な時間は、図2のECU30のメッセージの送信周期から算出すると120msecである。
【0048】
従って、640msec+120msec=760msecの周期でECU30はエラーアクティブからエラーパッシブ、バスオフを介して再びエラーアクティブに復帰し、この期間に受信するメッセージのうちエラーメッセージは32メッセージである。本方式を採用しない中継接続ユニット10は、760msecごとに32のエラーメッセージを中継し続けることになる。
【0049】
前記構成によれば、エラーメッセージを受信していない通常時には、中継方式として中継速度が高速のカットスルー方式を用いている。
一方、中継接続ユニット10が受信したメッセージからエラーメッセージを検出した場合、バス31にエラーメッセージを継続的に送信するECU30が存在すると判断し、メッセージの中継方式をカットスルー方式からストア&フォワード方式に切り替えているので、メッセージの中継を停止することができる。
このように、中継接続ユニット10はメッセージにエラーが含まれているか否かを判断してカットスルー方式とストア&フォワード方式を切り替えているので、エラーメッセージを受信している場合は中継を停止する一方、エラーメッセージを受信していない場合には高速に中継を行うことができる。
【図面の簡単な説明】
【0050】
【図1】本発明である中継接続ユニットの第1実施形態を示す構成図である。
【図2】中継接続ユニットが受信するメッセージの例である。
【図3】(A)は受信エラーカウンタのカウンタ値が増加していない場合であり、(B)は受信エラーカウンタのカウンタ値が増加した場合である。
【図4】中継接続ユニットの状態遷移を示す図である。
【符号の説明】
【0051】
10 中継接続ユニット
11 中継処理部
11a エラー監視部
12 CANコントローラ部
13(13A、13B) 送受信部
14 記憶部
16(16A、16B) 受信エラーカウンタ(REC)
17(17A、17B) メッセージ検知部
30(30A−1、30A−2、30B−1、30B−2) 電子制御ユニット(ECU)
31(31A、31B) バス
Δt 所定期間
C1、C2 閾値

【特許請求の範囲】
【請求項1】
電子制御ユニットが接続された複数のバスと接続され、前記電子制御ユニット間でのメッセージの送受信を中継する車載用の中継接続ユニットであって、
前記メッセージの中継方式を、メッセージフレームのアービトレーションフィールドを受信すると送信を開始するカットスルー方式と、メッセージフレームを最後まで受信してから送信を開始するストア&フォワード方式を切り替える中継処理部と、
受信したメッセージからエラーメッセージを検出する受信エラーカウンタ部を備え、
前記中継処理部は、
前記バスに接続された電子制御ユニットが周期的に送信するメッセージのうち最大送信周期のメッセージの1周期内で前記受信エラーカウンタ部で前記エラーメッセージを検出した場合をエラー周期とし、該エラー周期の連続回数を予め定めた上限閾値と比較するエラー監視部を備え、前記エラー周期の連続回数が前記上限閾値以上になるとメッセージの中継方式を前記カットスルー方式からストア&フォワード方式に切り替えることを特徴とする車載用の中継接続ユニット。
【請求項2】
前記中継処理部は、ストア&フォワード方式でのメッセージ中継時において、前記エラー周期が連続しない周期回数が前記エラー監視部で予め設定している下限閾値以上になると、メッセージ中継方式をカットスルー方式に切り替える請求項1に記載の車載用の中継接続ユニット。
【請求項3】
前記中継処理部は、カットスルー方式とストア&フォワード方式が設定時間内に所定回数以上切り替えられた場合は、ストア&フォワード方式でのメッセージの中継を継続させる請求項1または請求項2に記載の車載用の中継接続ユニット。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2008−244719(P2008−244719A)
【公開日】平成20年10月9日(2008.10.9)
【国際特許分類】
【出願番号】特願2007−81005(P2007−81005)
【出願日】平成19年3月27日(2007.3.27)
【出願人】(395011665)株式会社オートネットワーク技術研究所 (2,668)
【出願人】(000183406)住友電装株式会社 (6,135)
【出願人】(000002130)住友電気工業株式会社 (12,747)
【Fターム(参考)】