(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】2021048544
(43)【公開日】20210325
(54)【発明の名称】接続装置、接続方法およびプログラム
(51)【国際特許分類】
   H04L 12/28 20060101AFI20210226BHJP
   B60R 16/023 20060101ALI20210226BHJP
【FI】
   !H04L12/28 200Z
   !B60R16/023 P
【審査請求】有
【請求項の数】9
【出願形態】OL
【全頁数】26
(21)【出願番号】2019171287
(22)【出願日】20190920
(11)【特許番号】6788717
(45)【特許公報発行日】20201125
(71)【出願人】
【識別番号】500072884
【氏名又は名称】株式会社ラック
【住所又は居所】東京都千代田区平河町2丁目16番1号 平河町森タワー
(74)【代理人】
【識別番号】100106909
【弁理士】
【氏名又は名称】棚井 澄雄
(74)【代理人】
【識別番号】100146835
【弁理士】
【氏名又は名称】佐伯 義文
(74)【代理人】
【識別番号】100114937
【弁理士】
【氏名又は名称】松本 裕幸
(72)【発明者】
【氏名】渥美 清隆
【住所又は居所】東京都千代田区平河町2丁目16番1号 平河町森タワー 株式会社ラック内
(72)【発明者】
【氏名】木田 良一
【住所又は居所】東京都千代田区平河町2丁目16番1号 平河町森タワー 株式会社ラック内
【テーマコード(参考)】
5K033
【Fターム(参考)】
5K033AA08
5K033BA06
5K033CB08
5K033DA01
5K033DB20
5K033EA02
(57)【要約】
【課題】CANの制御システムに対してOBD−IIのようなポートを介して付加装置が取り付けられる場合に、付加装置から制御システムへの不正な通信を抑制する接続装置などを提供する。
【解決手段】第1値と第2値を用いて通信されるCANのフレーム信号であってACKスロットを含む前記フレーム信号を出力する第1接続対象と前記フレーム信号が伝送可能に接続され、前記フレーム信号に対してACK信号を返信する第2接続対象と前記フレーム信号が伝送可能に接続され、前記第1接続対象から出力される前記フレーム信号を前記第2接続対象に出力する場合に、1つの前記フレーム信号において前記第2接続対象から前記第1値が2ビット以上出力されたことを判定した場合に、前記第2接続対象から前記第1接続対象への信号の送信を遮断する、接続装置。
【選択図】図1
【特許請求の範囲】
【請求項1】
第1値と第2値を用いて通信されるCANのフレーム信号であってACKスロットを含む前記フレーム信号を出力する第1接続対象と前記フレーム信号が伝送可能に接続され、前記フレーム信号に対してACK信号を返信する第2接続対象と前記フレーム信号が伝送可能に接続され、
前記第1接続対象から出力される前記フレーム信号を前記第2接続対象に出力する場合に、1つの前記フレーム信号において前記第2接続対象から前記第1値が2ビット以上出力されたことを判定した場合に、前記第2接続対象から前記第1接続対象への信号の送信を遮断する、
接続装置。
【請求項2】
前記第1接続対象と前記第2接続対象との間で伝送される信号の方向を1ビットごとに検出する信号方向検出部と、
前記第1接続対象から前記第2接続対象に送信される前記フレーム信号の区切りを検出するフレーム区切り検出部と、
前記信号方向検出部による検出結果および前記フレーム区切り検出部による検出結果に基づいて、1つの前記フレーム信号において前記第2接続対象から前記第1値が2ビット以上出力されたことを判定した場合に、前記第1接続対象と前記第2接続対象との接続状態を、前記第2接続対象から前記第1接続対象への信号の送信を遮断する状態へ切り替える接続切替部と、
を備える、
請求項1に記載の接続装置。
【請求項3】
前記信号方向検出部による検出結果および前記フレーム区切り検出部による検出結果に基づいて、前記1つの前記フレーム信号において前記第2接続対象から出力される1ビット目の前記第1値を前記第1接続対象に出力する前記接続切替部の状態とし、前記1つの前記フレーム信号において前記第2接続対象から2ビット目の前記第1値が出力されたことを判定した場合に、前記第2接続対象から前記第1接続対象への信号の送信を遮断する前記接続切替部の状態とするように制御を行う接続切替制御部を備える、
請求項2に記載の接続装置。
【請求項4】
前記信号方向検出部は、前記第1接続対象と前記第2接続対象との間で伝送される信号の電圧に基づいて、前記信号の方向を検出する、
請求項2または請求項3に記載の接続装置。
【請求項5】
前記フレーム区切り検出部は、前記第1接続対象と前記第2接続対象との間で伝送される前記フレーム信号の終了部分に対応する所定パターンの信号を検出した場合に、前記フレーム信号の前記終了部分を前記フレーム信号の前記区切りとして検出する、
請求項2または請求項3に記載の接続装置。
【請求項6】
前記第1値はドミナントに対応し、前記第2値はレセシブに対応し、
前記フレーム信号の前記終了部分は、前記フレーム信号のEOFを構成する7ビットのレセシブおよびそれに続く3ビットのレセシブを含む10ビットのレセシブである、
請求項5に記載の接続装置。
【請求項7】
前記第1接続対象は、車両に搭載され、前記フレーム信号を発信する複数のECUを含み、
前記第2接続対象は、前記第1接続対象に対して付加的に接続され得る装置である、
請求項1から請求項6のいずれか1項に記載の接続装置。
【請求項8】
第1値と第2値を用いて通信されるCANのフレーム信号であってACKスロットを含む前記フレーム信号を出力する第1接続対象と前記フレーム信号が伝送可能に接続され、前記フレーム信号に対してACK信号を返信する第2接続対象と前記フレーム信号が伝送可能に接続される接続装置が、
前記第1接続対象から出力される前記フレーム信号を前記第2接続対象に出力する場合に、1つの前記フレーム信号において前記第2接続対象から前記第1値が2ビット以上出力されたことを判定した場合に、前記第2接続対象から前記第1接続対象への信号の送信を遮断する、
接続方法。
【請求項9】
第1値と第2値を用いて通信されるCANのフレーム信号であってACKスロットを含む前記フレーム信号を出力する第1接続対象と前記フレーム信号が伝送可能に接続され、前記フレーム信号に対してACK信号を返信する第2接続対象と前記フレーム信号が伝送可能に接続される接続装置の一部または全部を構成するコンピュータに、
前記第1接続対象から出力される前記フレーム信号を前記第2接続対象に出力する場合に、1つの前記フレーム信号において前記第2接続対象から前記第1値が2ビット以上出力されたことを判定した場合に、前記第2接続対象から前記第1接続対象への信号の送信を遮断する機能を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、接続装置、接続方法およびプログラムに関する。
【背景技術】
【0002】
自動車などの車両では、当該車両の各部にECU(Electrical Control Unit)が取り付けられる。ECUには、オン・ボード・ダイアグノーシス(OBD:On−board diagnostics)の機能がプログラミングされている。OBDの機能は、自己診断を行う機能である。
また、OBDがバージョンアップされたOBD−IIも用いられている。
【0003】
例えば、日本国では、2006年から販売される新車に対してOBD−IIのポートの装備が義務付けられた(非特許文献1参照。)。また、アメリカ合衆国においても、OBD−IIの義務付けが為されている。
OBD−IIのポートを通じて、車両の故障の状況の診断、および、当該故障の修正を行うことができる。
また、OBD−IIのポートを通じて、ECUのファームウェアを書き換えること、および、車両の状況をリアルタイムに検出することができる。車両の状況としては、例えば、当該車両の速度などがある。
【0004】
また、OBD−IIのポートに関し、アフターマーケットの商品として、車両の機能を拡張する様々なパーツが販売されている(非特許文献2参照。)。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】“オン・ボード・ダイアグノーシス”、[online]、[令和1年8月28日検索]、インターネット<URL:https://ja.wikipedia.org/wiki/オン・ボード・ダイアグノーシス>
【非特許文献2】“amazon.co.jpのOBDに関するページ”、[online]、[令和1年8月28日検索]、インターネット<URL:https://www.amazon.co.jp/s?k=OBD>
【非特許文献3】“HACKERS CUT A CORVETTE’S BRAKES VIA A COMMON CAR GADGET”、[online]、[令和1年8月28日検索]、インターネット<URL:https://www.wired.com/2015/08/hackers-cut-corvettes-brakes-via-common-car-gadget/>
【発明の概要】
【発明が解決しようとする課題】
【0006】
OBD−IIのポートは、車載ネットワークであるCAN(Controller Area Network)と直接接続されている場合がある。
CANでは、車両を制御する情報がそのまま流れており、パワートレイン系のECUの通信にも干渉することができる場合がある。
例えば、OBD−IIのポートに、脆弱性のある装置、または、不正な装置が取り付けられた場合、車両の操舵に重大な影響を及ぼす場合が考えられる(非特許文献3参照。)。
【0007】
本発明の実施形態は、このような事情に鑑み、CANの制御システムに対してOBD−IIのようなポートを介して付加装置が取り付けられる場合に、付加装置から制御システムへの不正な通信を抑制することができる接続装置、接続方法およびプログラムを提供する。
【課題を解決するための手段】
【0008】
本発明の一態様は、第1値と第2値を用いて通信されるCANのフレーム信号であってACKスロットを含む前記フレーム信号を出力する第1接続対象と前記フレーム信号が伝送可能に接続され、前記フレーム信号に対してACK信号を返信する第2接続対象と前記フレーム信号が伝送可能に接続され、前記第1接続対象から出力される前記フレーム信号を前記第2接続対象に出力する場合に、1つの前記フレーム信号において前記第2接続対象から前記第1値が2ビット以上出力されたことを判定した場合に、前記第2接続対象から前記第1接続対象への信号の送信を遮断する、接続装置である。
【0009】
本発明の一態様に係る接続装置において、前記第1接続対象と前記第2接続対象との間で伝送される信号の方向を1ビットごとに検出する信号方向検出部と、前記第1接続対象から前記第2接続対象に送信される前記フレーム信号の区切りを検出するフレーム区切り検出部と、前記信号方向検出部による検出結果および前記フレーム区切り検出部による検出結果に基づいて、1つの前記フレーム信号において前記第2接続対象から前記第1値が2ビット以上出力されたことを判定した場合に、前記第1接続対象と前記第2接続対象との接続状態を、前記第2接続対象から前記第1接続対象への信号の送信を遮断する状態へ切り替える接続切替部と、を備える。
【0010】
本発明の一態様に係る接続装置において、前記信号方向検出部による検出結果および前記フレーム区切り検出部による検出結果に基づいて、前記1つの前記フレーム信号において前記第2接続対象から出力される1ビット目の前記第1値を前記第1接続対象に出力する前記接続切替部の状態とし、前記1つの前記フレーム信号において前記第2接続対象から2ビット目の前記第1値が出力されたことを判定した場合に、前記第2接続対象から前記第1接続対象への信号の送信を遮断する前記接続切替部の状態とするように制御を行う接続切替制御部を備える。
【0011】
本発明の一態様に係る接続装置において、前記信号方向検出部は、前記第1接続対象と前記第2接続対象との間で伝送される信号の電圧に基づいて、前記信号の方向を検出する。
【0012】
本発明の一態様に係る接続装置において、前記フレーム区切り検出部は、前記第1接続対象と前記第2接続対象との間で伝送される前記フレーム信号の終了部分に対応する所定パターンの信号を検出した場合に、前記フレーム信号の前記終了部分を前記フレーム信号の前記区切りとして検出する。
【0013】
本発明の一態様に係る接続装置において、前記第1値はドミナントに対応し、前記第2値はレセシブに対応し、前記フレーム信号の前記終了部分は、前記フレーム信号のEOFを構成する7ビットのレセシブおよびそれに続く3ビットのレセシブを含む10ビットのレセシブである。
【0014】
本発明の一態様に係る接続装置において、前記第1接続対象は、車両に搭載され、前記フレーム信号を発信する複数のECUを含み、前記第2接続対象は、前記第1接続対象に対して付加的に接続され得る装置である。
【0015】
本発明の一態様は、第1値と第2値を用いて通信されるCANのフレーム信号であってACKスロットを含む前記フレーム信号を出力する第1接続対象と前記フレーム信号が伝送可能に接続され、前記フレーム信号に対してACK信号を返信する第2接続対象と前記フレーム信号が伝送可能に接続される接続装置が、前記第1接続対象から出力される前記フレーム信号を前記第2接続対象に出力する場合に、1つの前記フレーム信号において前記第2接続対象から前記第1値が2ビット以上出力されたことを判定した場合に、前記第2接続対象から前記第1接続対象への信号の送信を遮断する、接続方法である。
【0016】
本発明の一態様は、第1値と第2値を用いて通信されるCANのフレーム信号であってACKスロットを含む前記フレーム信号を出力する第1接続対象と前記フレーム信号が伝送可能に接続され、前記フレーム信号に対してACK信号を返信する第2接続対象と前記フレーム信号が伝送可能に接続される接続装置の一部または全部を構成するコンピュータに、前記第1接続対象から出力される前記フレーム信号を前記第2接続対象に出力する場合に、1つの前記フレーム信号において前記第2接続対象から前記第1値が2ビット以上出力されたことを判定した場合に、前記第2接続対象から前記第1接続対象への信号の送信を遮断する機能を実現させるためのプログラムである。
【発明の効果】
【0017】
上記した接続装置、接続方法およびプログラムによれば、CANの制御システムに対してOBD−IIのようなポートを介して付加装置が取り付けられる場合に、付加装置から制御システムへの不正な通信を抑制することができる。
【図面の簡単な説明】
【0018】
【図1】本発明の実施形態に係る通信システムの概略的な構成例を示す図である。
【図2】本発明の実施形態に係るCANのデータフレームの構成例を示す図である。
【図3】本発明の実施形態に係る通信システムにおける接続装置の回路の構成例を示す図である。
【図4】本発明の実施形態に係るACKフィルタの状態遷移の一例を示す図である。
【図5】本発明の実施形態に係る接続装置において行われる処理の手順の一例を示す図である。
【図6】本発明の実施形態に係る情報処理部のハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【0019】
本発明の実施形態について図面を参照して詳細に説明する。
【0020】
[通信システム]
図1は、本発明の実施形態に係る通信システム1の概略的な構成例を示す図である。
本実施形態では、通信システム1は、CANを用いたシステムである。
通信システム1は、制御システム11と、付加装置12と、接続装置13と、通信路21〜22を備える。なお、通信路は、例えば、伝送路などと呼ばれてもよい。
制御システム11と接続装置13とは、通信路21を介して接続されている。
付加装置12と接続装置13とは、通信路22を介して接続されている。
【0021】
それぞれの通信路21、22は、CANの通信路である。
ここで、それぞれの通信路21、22は、2線式の通信路である。つまり、それぞれの通信路21、22は、2本の通信線のそれぞれにかかる電圧の差分によって信号を伝送する。本実施形態では、説明を簡易化するために、2線式の通信路を用いた信号の通信を説明する場合に、2本の通信線のそれぞれにかかる電圧の差分を、単に、通信路の電圧(または、それに類似した表現)と呼んで説明する。
なお、本実施形態では、通信路21および通信路22に流れる信号に対して接続装置13が影響を与えない場合には、通信路21に流れる信号と通信路22に流れる信号とは同じ信号である。例えば、通信路21と通信路22とは同一の通信路であってもよく、また、通信路21と通信路22との間に抵抗などの所定の回路が接続されていてもよい。
【0022】
制御システム11は、CANを用いた制御システムである。本実施形態では、制御システム11は、1台の自動車に搭載されている車載システムであり、複数のECUを含んでいる。これら複数のECUがCANによって通信可能に接続されている。
なお、本実施形態において制御システム11のようにシステムと呼んで説明している部分は、例えば、装置などと呼ばれてもよい。逆に、本実施形態において装置と呼んで説明している部分は、例えば、システムなどと呼ばれてもよい。
また、本実施形態では、自動車に搭載されている車載システムの全体(本実施形態では、制御システム11)が接続装置13と接続される対象であるとして説明するが、例えば、当該車載システムのうちで接続装置13と接続される部分を含む任意の範囲のシステム(あるいは、装置など)が、接続装置13と接続される対象であると捉えられてもよい。
【0023】
付加装置12は、制御システム11に対して付加的に接続され得る装置である。付加装置12は、例えば、OBD−IIなどの装置である。本実施形態では、付加装置12は、CANによる通信を行う機能を有する装置である。
本実施形態では、制御システム11に備えられたOBD−IIのポートと通信路21の一端とが接続されている。そして、付加装置12は、当該ポートに直接接続されることも可能である。本実施形態では、制御システム11と付加装置12との間に接続装置13が備えられることで、接続装置13によってセキュリティの向上が図られている。
【0024】
本実施形態では、制御システム11は、自動車に、当該自動車の出荷時に搭載されているシステムである。また、本実施形態では、付加装置12は、自動車の購入後などに、ユーザーなどによって当該自動車に後付けされる装置である。
また、本実施形態では、制御システム11と付加装置12との間に接続装置13が配置され、これらのすべて(つまり、図1に示される通信システム1)が同じ自動車に搭載される。
なお、付加装置12としては、任意の装置が用いられてもよく、例えば、カーナビゲーションの装置、あるいは、自動車保険などに関して情報の履歴を記録する装置などが用いられてもよい。
【0025】
制御システム11では、制御システム11に含まれる複数のECUの間でCANのフレーム信号が通信される。
例えば、制御システム11では、制御システム11に含まれる複数のECUのうち、任意のECUがフレーム信号をCANに発信すると、当該フレーム信号が他のECUに伝送される。そして、本実施形態では、当該フレーム信号が、制御システム11に備えられたOBD−IIのポートからも出力される。
また、本実施形態では、制御システム11に備えられたOBD−IIのポートに接続された通信路21に信号が発生すると、当該信号が当該ポートを介して制御システム11の内部のCANを伝送する。
【0026】
このため、例えば、制御システム11と付加装置12とが直接接続されている場合には、制御システム11に含まれるECUから発信されたフレーム信号が付加装置12に伝送していき、また、付加装置12から発信されたフレーム信号が制御システム11に含まれるECUに伝送されていく。
【0027】
本実施形態では、制御システム11に含まれるECUから発信されるフレーム信号がブロードキャストにより伝送される場合を示して説明する。この場合、当該フレーム信号は、付加装置12に接続された通信路22を伝送するときには、付加装置12によって受信される。
CANにおいて、あるECUからブロードキャストのフレーム信号が伝送される場合、他のすべてのECUが当該フレーム信号を受信してACK信号を返信する。本実施形態では、付加装置12は、当該フレーム信号を受信した場合に、ACK信号を返信する。この場合、制御システム11に含まれるECUにとって、フレーム信号の通信が行われるときに、付加装置12も制御システム11に含まれるECUと同様なECUであるように見える。
【0028】
制御システム11に含まれるそれぞれのECUは、例えば、他のECUに対して送信したフレーム信号について、当該他のECUのうちの1つからACK信号を受信した場合に、次のフレーム信号の送信へ移行する。なお、当該ECUにおいて、次のフレーム信号の送信へ移行するタイミングとして、他のタイミングが用いられてもよいが、本実施形態では、説明を簡易化するために、当該ECUは、前回に送信したフレーム信号に対するACK信号を受信した後に次のフレーム信号を送信する場合を示して説明する。
【0029】
本実施形態では、付加装置12は、制御システム11から接続装置13を介して伝送されてくるフレーム信号を受信した場合に、受信されたフレーム信号についてACK信号を返信する。
ここで、付加装置12では、制御システム11に含まれる複数のECUのうち、任意のECUから発信されたフレーム信号が受信され得る。
なお、本実施形態では、例えば、制御システム11に含まれるECUが付加装置12以外の個別の他のECUを指定してフレーム信号を発信した場合のように、付加装置12によって当該フレーム信号が受信されない場合については説明を省略するが、このようなフレーム信号が伝送される場合があってもよい。この場合、付加装置12では、当該フレーム信号を受信しないため、ACK信号を返信しない。
【0030】
本実施形態では、付加装置12は、制御システム11に対して直接接続されずに、制御システム11に対して接続装置13を介して接続される。具体的には、制御システム11が有するポートのうち付加装置12と接続され得るポートと接続装置13とが通信路21を介して接続され、また、接続装置13と付加装置12とが通信路22を介して接続される。
ここで、本実施形態では、制御システム11と接続装置13とが通信路21を介して接続される構成としたが、必ずしも通信路21は備えられなくてもよく、例えば、制御システム11と接続装置13とが直接接続される構成が用いられてもよい。
同様に、本実施形態では、接続装置13と付加装置12とが通信路22を介して接続される構成としたが、必ずしも通信路22は備えられなくてもよく、例えば、接続装置13と付加装置12とが直接接続される構成が用いられてもよい。
【0031】
本実施形態に係る接続装置13では、CANの通信に関して、付加装置12がACK信号だけを送信する場合に当該付加装置12は適正な装置であると想定し、付加装置12がACK信号以外の信号を送信する場合には当該付加装置12は不正な装置であると想定する。そして、接続装置13では、このような想定に基づく判定を行い、当該判定の結果に基づいて所定の処理を行う。
【0032】
ここで、本実施形態では、制御システム11は、通常は複数のECUを含むシステムであるが、例えば、制御システム11が1つのECUを含むシステムであっても、当該ECUが発信するフレーム信号が付加装置12によって受信される場合には、接続装置13は有効である。
【0033】
[CANのフレーム]
CANの通信に使用されるフレームとして、データフレーム、リモートフレーム、オーバーロードフレーム、エラーフレームが知られている。
本実施形態では、このようなフレームの形式を用いて通信される信号をフレーム信号と呼んでいる。また、本実施形態では、単に信号と呼ぶ場合も、フレーム信号を含む。
【0034】
データフレームは、あるノードから他のノードへデータを送信するためのフレームである。本実施形態では、1つのノードは、1つのECUに相当する。また、本実施形態では、1つの付加装置12も、1つのノードに相当する。
リモートフレームは、あるデータを必要とするノードから他のノードへ送信するためのフレームである。当該データを有する他のノードは、当該データを含むデータフレームの信号を返信する。
オーバーロードフレームは、データフレームまたはリモートフレームにオーバーロードを付すフレームである。当該オーバーロードによって、次回のデータフレームの信号の送信の開始タイミングを遅らせることが可能であり、これにより、例えば、受信側のノードの処理能力が不十分であってデータフレームの信号の処理が間に合わない場合などに、タイミング調整することができる。
エラーフレームは、CANにおいて異常を知らせるためのフレームである。すべてまたは一部のノードは、例えば、各種の通信エラーが発生したときにエラーフレームの信号を他のノードへ送信する。
【0035】
ここで、CANでは、シリアル通信プロトコルが使用されており、0値と1値で構成されるデジタルのデータの通信が行われる。例えば、0値はドミナントと呼ばれて優性な値とされ、1値はレセシブと呼ばれて劣性な値とされる。なお、0値と1値とは、逆であってもよい。
CANでは、通信路21、22の電圧状態として、ドミナントとレセシブといった2個の電圧状態が切り替えられて、通信が行われる。また、CANでは、あるノードによって発信されたドミナントと他のノードによって同時に発信されたレセシブとが衝突した場合には、ドミナントの方が優先されて通信される。
【0036】
<データフレーム>
図2は、本発明の実施形態に係るCANのデータフレーム211の構成例を示す図である。図2には、標準フォーマットの例を示してある。
なお、図2は、データフレーム211を構成する各要素の並びを説明するための図であり、各要素の長さは、必ずしも、ビット数に対応した長さではない。
データフレーム211は、複数の要素として、SOF(Start Of Frame)、ID、RTR(Remote Transmission Request)、コントロールフィールド、データフィールド、CRC(Cyclic Redundacy Check)シーケンス、CRCデリミタ、ACKスロット、ACKデリミタ、EOF(End Of Frame)といった要素を含む。
また、図2には、データフレーム211の後に、ITM(Intermission)を示してある。なお、ITMは、データフレーム211には含まれない。
【0037】
SOFは、データフレーム211の開始位置を表す。SOFは、ノード間での同期にも用いられ得る。
IDは、送信ノードの識別などに用いられる。IDは、通信調停の優先順位を決定するためにも用いられる。
RTRは、データフレームとリモートフレームとを識別するために用いられる。RTRは、通信調停の優先順位を決定するためにも用いられ得る。データフレーム211の説明においては、RTRがドミナントであってデータフレームを表すとする。
コントロールフィールドは、識別子拡張ビット(IDE:Identifier Extension)と、予約ビットと、データ長コード(DLC:Data Length Code)を含む。
データフィールドは、送信対象のデータを格納する。データフィールドに格納されるデータは、可変長であり、データ長コード(DLC)によって当該データの量が示される。
【0038】
CRCシーケンスは、CRCの演算が行われる値である。例えば、CRCシーケンスを用いる処理では、受信側において、SOF、ID、コントロールフィールド、データフィールドの値を用いた演算結果が送信側の演算結果と一致するか否かが判定され、この判定の結果に基づいて受信側においてフレーム信号が正常に受信されたか否かが判定される。
CRCデリミタは、CRCシーケンスの終了を表す。なお、CRCシーケンスとCRCデリミタとを合わせた領域は、CRCフィールドと呼ばれる。
ACKスロットは、データフレーム211のCRCフィールドまでのデータが受信側によって正常に受信されたか否かを受信側から送信側に通知するためのスロットである。受信側において当該データが正常に受信された場合、受信側から送信側へACKスロットを用いてACK信号が送信される。
ACKデリミタは、ACKスロットの終了を表す。なお、ACKスロットとACKデリミタとを合わせた領域は、ACKフィールドと呼ばれる。
【0039】
EOFは、データフレーム211の終了を表す。
EOFの後にITMが発生し、ITMの後にバスアイドルとなる。
ここで、データフレーム211では、EOFは7ビットのレセシブであり、ITMは3ビットのレセシブである。
あるデータフレーム211におけるEOFに相当する7ビットのレセシブと、その後におけるITMに相当する3ビットのレセシブによって、次のフレーム信号の頭出しが行われる。
【0040】
本実施形態では、フレーム信号において、ACKスロットの後に、EOFにおける7ビットのレセシブとITMにおける3ビットのレセシブとが合わせられた合計10ビットの連続したレセシブが存在した場合に、当該フレーム信号が終了したとみなす。つまり、この場合に、当該フレーム信号の区切りが存在したとみなす。
なお、本実施形態では、10ビットの連続したレセシブが存在した場合に、これらがEOFおよびITMに相当するか否かについては、必ずしも、判定されなくてもよい。
【0041】
<リモートフレーム>
リモートフレームでは、データフレーム211と同様な構成において、RTRがレセシブであってリモートフレームを表す。また、リモートフレームでは、データフィールドが設けられない構成、または、データフィールドが設けられるが当該データフィールドに含まれるデータが実質的に0バイトである構成となる。
【0042】
<オーバーロードフレーム>
オーバーロードフレームは、データフレームあるいはリモートフレームにおいて、EOFの後のITMの開始位置に設けられる。オーバーロードフレームは、オーバーロードフラグと、オーバーロードデリミタを含む。
ここで、オーバーロードフレームでは、オーバーロードフラグはドミナントで構成され、オーバーロードデリミタはレセシブで構成される。オーバーロードフレームでは、オーバーロードデリミタに相当する8ビットのレセシブと、その後におけるITMに相当する3ビットのレセシブによって、次のフレーム信号の頭出しが行われる。これらは11ビットの連続したレセシブとなり、10ビットの連続したレセシブを含む。
【0043】
<エラーフレーム>
エラーフレームは、データフレームあるいはリモートフレームにおいて、EOFの後のITMの開始位置に設けられる。エラーフレームは、エラーフラグ(プライマリ)、他のノードからのエラーフラグ(セカンダリ)、エラーデリミタを含む。
ここで、エラーフレームでは、エラーフラグ(プライマリ)および他のノードからのエラーフラグ(セカンダリ)はドミナントで構成され、エラーデリミタはレセシブで構成される。エラーフレームでは、エラーデリミタに相当する8ビットのレセシブと、その後におけるITMに相当する3ビットのレセシブによって、次のフレーム信号の頭出しが行われる。これらは11ビットの連続したレセシブとなり、10ビットの連続したレセシブを含む。
【0044】
ここで、本実施形態に係る接続装置によって行われる処理では、ACK信号が含まれ得るフレームの信号の末尾付近に存在する10ビットの連続するレセシブを使用する。このため、本実施形態では、当該処理が、データフレーム、リモートフレーム、オーバーロードフレーム、エラーフレームのうちの1以上に適用される。
本実施形態では、当該処理がデータフレーム211に適用される場合を例として説明する。
【0045】
[接続装置]
図1に示される接続装置13について説明する。
接続装置13は、信号方向検出部111と、フレーム区切り検出部112と、接続切替部113と、接続切替制御部114を備える。
図1の例では、接続装置13は、通信路21を介して制御システム11と接続されており、また、通信路22を介して付加装置12と接続されている。図1の例では、信号方向検出部111と、フレーム区切り検出部112と、接続切替部113と、接続切替制御部114を備える接続装置13のより詳細な構成については、限定しておらず、任意の構成が用いられてもよい。
【0046】
信号方向検出部111は、制御システム11と付加装置12との間の通信路21、22を流れる信号の方向を検出する。
信号方向検出部111は、例えば、制御システム11と付加装置12との間の通信路21、22の電圧状態を監視し、1ビットごとに、電圧の方向を検出する。本実施形態では、電圧の方向としては、制御システム11の側から付加装置12の側へ向かって電圧が低くなる方向と、付加装置12の側から制御システム11の側へ向かって電圧が低くなる方向がある。
本実施形態では、制御システム11の側から付加装置12の側へ向かって電圧が低くなる場合、制御システム11から付加装置12へ信号が流れている信号方向であるとみなされる。一方、付加装置12の側から制御システム11の側へ向かって電圧が低くなる場合、付加装置12から制御システム11へ信号が流れている信号方向であるとみなされる。
【0047】
フレーム区切り検出部112は、制御システム11と付加装置12との間の通信路21、22の電圧状態を監視し、CANのフレーム信号の区切りを検出する。
フレーム区切り検出部112は、例えば、ある1つのフレーム信号と次の1つのフレーム信号との区切りを検出する。フレーム区切り検出部112は、例えば、フレーム信号の終了を検出することで、フレーム信号の区切りを検出してもよく、あるいは、フレーム信号の開始を検出することで、フレーム信号の区切りを検出してもよい。
ここで、本実施形態では、フレーム信号の区切りとしては、必ずしも当該フレーム信号の終了位置または開始位置が厳密に検出されなくてもよく、例えば、1つのフレーム信号の内側であるのか、あるいは、外側であるのかが区別される区切りであればよい。例えば、フレーム信号の区切りとして、当該フレーム信号におけるEOFとそれに続くITMとを合わせた部分が検出されてもよい。
【0048】
接続切替部113は、制御システム11と付加装置12との接続の状態を切り替える。
本実施形態では、制御システム11と付加装置12との接続の状態としては、互いに通信可能に接続されている状態(説明の便宜上、接続維持状態ともいう。)と、互いに通信不可に通信が遮断されている状態(説明の便宜上、遮断状態ともいう。)がある。
【0049】
接続切替制御部114は、信号方向検出部111による検出結果と、フレーム区切り検出部112による検出結果に基づいて、制御システム11と付加装置12との接続の状態を、接続維持状態と遮断状態とで、切り替える制御を行う。
本実施形態では、接続切替制御部114は、1つのフレーム信号において付加装置12から制御システム11へ1ビットのドミナント(本実施形態では、ACK信号とみなされる。)が送信される場合には、制御システム11と付加装置12とを接続維持状態に維持するように、接続切替部113を制御する。一方、接続切替制御部114は、1つのフレーム信号において付加装置12から制御システム11へ2ビット目のドミナント(本実施形態では、不正な信号とみなされる。)が送信された場合には、制御システム11と付加装置12との接続状態を遮断状態に切り替えるように、接続切替部113を制御する。
【0050】
なお、本実施形態では、接続切替制御部114は、1つのフレーム信号において付加装置12から制御システム11へドミナントが送信されない場合には、制御システム11と付加装置12とを接続維持状態に維持するように、接続切替部113を制御する。
ここで、接続切替制御部114によって接続切替部113を制御する態様には、既に目的となる接続状態が実現されている場合には、そのままの接続状態とする態様が含まれてもよい。つまり、接続切替制御部114は、例えば、接続状態の切り替えが必要なときに、接続切替部113を制御すればよい。
【0051】
[接続装置の回路の構成例]
図3は、本発明の実施形態に係る通信システム1aにおける接続装置311の回路の構成例を示す図である。
図3には、通信システム1aの構成例を示してある。通信システム1aは、制御システム11と、付加装置12と、接続装置311と、通信路21〜22を備える。
ここで、制御システム11、付加装置12、通信路21〜22は、図1に示されるものと同様であり、説明の便宜上、同じ符号を付して説明する。
接続装置311は、図1に示される接続装置13の一構成例である。
【0052】
図3に示される接続装置311について説明する。
接続装置311は、センス抵抗331と、比較器332と、遮断器333と、ACKフィルタ334と、異常警告灯335と、通信路351〜353を備える。
通信路21の一端は、制御システム11と接続されている。
通信路351の一端と通信路21の他端とが接続されている。
通信路351の他端とセンス抵抗331の一端とが接続されている。
センス抵抗331の他端と通信路352の一端とが接続されている。
通信路352の他端と遮断器333の一端とが接続されている。
遮断器333の他端と通信路353の一端とが接続されている。
通信路353の他端と通信路22の一端とが接続されている。通信路22の他端は付加装置12と接続されている。
【0053】
センス抵抗331は、所定の抵抗値を有する抵抗である。当該抵抗値は、任意の値であってもよい。
比較器332は、2個の入力端子411〜412と、1個の出力端子413を備える。
比較器332が有するマイナス(−)側の入力端子411は、センス抵抗331の一端の通信路351と接続されている。比較器332が有するプラス(+)側の入力端子412は、センス抵抗331の他端の通信路352と接続されている。
比較器332が有する出力端子413は、ACKフィルタ334に接続されている。
【0054】
比較器332は、1ビットごとに、2個の入力端子411〜412に入力される電圧に基づいて、センス抵抗331に印加される電圧の方向を表す信号(説明の便宜上、方向信号ともいう。)を出力端子413から出力する。当該方向信号は、ACKフィルタ334に入力される。
ここで、比較器332では、センス抵抗331に印加される電圧の方向が検出されており、この検出の結果が方向信号となっている。また、この方向は、制御システム11と付加装置12との間を伝送する信号の方向に対応する。
【0055】
ここで、本実施形態では、比較器332は、付加装置12から制御システム11にドミナントが送信される場合と、他の場合とを、区別して検出する。付加装置12から制御システム11にドミナントが送信される場合には、センス抵抗331の両端のうち、制御システム11の側の一端の電位の方が、付加装置12の側の他端の電位と比べて、低くなる。
比較器332は、付加装置12から制御システム11にドミナントが送信される場合と、他の場合とを、区別する方向信号をACKフィルタ334に出力する。本実施形態では、方向信号は、付加装置12から制御システム11にドミナントが送信される場合と、他の場合とで、一方がプラス(+)の電圧の信号であり、他方がマイナス(−)の電圧の信号である。
【0056】
なお、比較器332は、付加装置12から制御システム11にドミナントが送信される場合以外の場合について、さらに詳細に区別して検出してもよいが、本実施形態では、このような詳細な区別は為されなくてもよい。つまり、本実施形態では、少なくとも、付加装置12から制御システム11にドミナントが送信されることが検出されればよい。
本実施形態では、付加装置12からドミナントの発信があると、センス抵抗331に所定の電圧降下が発生して、その発生が比較器332によって識別される構成となっている。
【0057】
遮断器333は、通信路352と通信路353とが通信可能に接続されている接続維持状態と、通信路352と通信路353とが通信不可に遮断されている遮断状態とを切り替えることが可能な構成となっている。接続維持状態では、制御システム11と付加装置12との間で両方向の通信が可能である。遮断状態では、制御システム11と付加装置12との間で両方向の通信ができない(いずれの方向の通信もできない)状態となる。
遮断器333は、例えば、開閉式のスイッチであり、閉状態では遮断器333の両端を導通させて接続維持状態を実現し、開状態では遮断器333の両端を開放して遮断状態を実現する。
本実施形態では、遮断器333は、ACKフィルタ334によって制御されて、閉状態と開状態とを切り替える。
【0058】
ACKフィルタ334は、比較器332の出力端子413から出力される方向信号を入力する。ACKフィルタ334は、入力される方向信号に基づいて、付加装置12から制御システム11にドミナントが送信されるビットを検出する。
【0059】
また、ACKフィルタ334は、1ビットごとに、センス抵抗331と遮断器333との間の通信路352の電圧を入力する。
本実施形態では、ACKフィルタ334は、当該電圧に基づいて、制御システム11から付加装置12へ伝送されるフレーム信号に含まれるEOFおよびITMに相当するとみなされる10ビットの連続したレセシブを検出する。ここで、EOFは7ビットのレセシブであり、ITMは3ビットのレセシブであり、総じて10ビットのレセシブである。ACKフィルタ334は、EOFおよびITMに相当するとみなされる10ビットのレセシブを検出した場合に、1つのフレーム信号が終了したことを検出する。そして、ACKフィルタ334は、1つのフレーム信号が終了したことを検出した場合に、フレーム信号の区切りがあったことを検出する。
【0060】
なお、本実施形態では、ACKフィルタ334は、センス抵抗331と遮断器333との間の通信路352の電圧に基づいてレセシブを検出するが、他の例として、ACKフィルタ334は、センス抵抗331よりも制御システム11の側の通信路351の電圧に基づいてレセシブを検出してもよい。
【0061】
本実施形態に係る接続装置311では、制御システム11から付加装置12に出力されるフレーム信号ごとに、付加装置12から制御システム11にドミナントが送信される1個目のビットについては、付加装置12から制御システム11へのACK信号のビットであると判定する。そして、接続装置311では、制御システム11から付加装置12に出力されるフレーム信号ごとに、付加装置12から制御システム11にドミナントが送信される2個目以降のビットについては、付加装置12から制御システム11への不正な通信のビットであると判定する。
【0062】
本実施形態では、ACKフィルタ334は、初期的には、遮断器333が接続維持状態を維持するように制御する。
また、ACKフィルタ334は、制御システム11から付加装置12に出力されるフレーム信号ごとに、付加装置12から制御システム11にドミナントが送信される1個目のビットが検出されても、遮断器333が接続維持状態のままとなるようにする。
また、ACKフィルタ334は、制御システム11から付加装置12に出力されるフレーム信号ごとに、付加装置12から制御システム11にドミナントが送信される2個目のビットが検出された場合に、遮断器333が遮断状態に切り替えられるように制御する。
【0063】
異常警告灯335は、光を発する装置である。
異常警告灯335は、例えば、発光ダイオード(LED:Light Emitting Diode)を用いて構成されている。
異常警告灯335は、例えば、制御システム11が搭載される自動車の内部に備えられており、一例として、当該自動車の運転席の前方などのように、当該自動車の運転者などによって認識することが可能な位置に備えられている。
【0064】
ACKフィルタ334は、所定の異常を判定した場合に、異常警告灯335を制御して、異常警告灯335によって光を発光させる。この光の発光は、例えば、持続的な点灯であってもよく、あるいは、所定の周期の点滅などであってもよい。
ここで、本実施形態では、当該所定の異常には、制御システム11から付加装置12に出力されるフレーム信号ごとに、付加装置12から制御システム11にドミナントが送信される2個目のビットが検出されたという異常が含まれる。なお、他の例として、ACKフィルタ334は、遮断器333が遮断状態に切り替えられたことを異常とみなしてもよい。
【0065】
図3の例では、センス抵抗331および比較器332の機能によって、図1に示される信号方向検出部111の機能が実現されている。なお、信号方向検出部111として、任意の回路が用いられてもよい。具体例として、特許第6408671号、特許第6408672号、特許第6391866号の文献には、CANの信号の方向を判定するための技術が開示されている。例えば、信号方向検出部111は、これらの文献のうちの1以上に開示された技術を用いて構成されてもよい。
図3の例では、ACKフィルタ334の機能によって、図1に示されるフレーム区切り検出部112の機能および接続切替制御部114の機能が実現されている。
図3の例では、遮断器333の機能によって、図1に示される接続切替部113の機能が実現されている。
【0066】
なお、図1に示される信号方向検出部111、フレーム区切り検出部112、接続切替部113、接続切替制御部114のうちの一部または全部の機能は、プロセッサおよび記憶部などを備えたコンピュータが、当該記憶部に記憶された所定のプログラムを実行することで、実現されてもよい。
また、図3に示されるACKフィルタ334の機能は、例えば、プロセッサおよび記憶部などを備えたコンピュータが、当該記憶部に記憶された所定のプログラムを実行することで、実現されてもよい。
【0067】
[ACKフィルタの状態遷移]
図4は、本発明の実施形態に係るACKフィルタ334の状態遷移の一例を示す図である。
本実施形態では、ACKフィルタ334は、ACKフィルタ334の状態として、オープン状態(Open状態)J1と、クローズ状態(Close状態)J2と、エラー状態(Error状態)J3を有する。
【0068】
オープン状態J1は、初期的な状態であり、制御システム11から付加装置12に出力されるフレーム信号ごとに、付加装置12から制御システム11にドミナントが送信される1個目のビットが検出されるまでの状態である。
クローズ状態J2は、制御システム11から付加装置12に出力されるフレーム信号ごとに、付加装置12から制御システム11にドミナントが送信される1個目のビットが検出されてから、付加装置12から制御システム11にドミナントが送信される2個目のビットが検出されるまでの状態である。
エラー状態J3は、制御システム11から付加装置12に出力される1つのフレーム信号について、付加装置12から制御システム11にドミナントが送信される2個目のビットが検出された後の状態である。
【0069】
まず、ACKフィルタ334は、初期的な状態遷移T0によって、オープン状態J1へ遷移する。ここで、ACKフィルタ334は、例えば、接続装置311の電源が投入された場合あるいは接続装置311のリセットが行われた場合などに、初期的な状態遷移T0を行う。
ACKフィルタ334は、オープン状態J1において、制御システム11から付加装置12に出力されるフレーム信号ごとに、付加装置12から制御システム11にドミナントが送信される1個目のビットが検出されるか否かを判定する。そして、ACKフィルタ334は、オープン状態J1において、このようなビットが検出されたことを判定した場合に、状態遷移T1によって、クローズ状態J2へ遷移する。
【0070】
ACKフィルタ334は、クローズ状態J2において、制御システム11から付加装置12に出力されるフレーム信号ごとに、付加装置12から制御システム11にドミナントが送信される2個目のビットが検出されずに、当該フレーム信号の終了が検出されるか否かを判定する。そして、ACKフィルタ334は、クローズ状態J2において、このような当該フレーム信号の終了が検出されたことを判定した場合に、状態遷移T2によってオープン状態J1へ遷移する。
【0071】
一方、ACKフィルタ334は、クローズ状態J2において、制御システム11から付加装置12に出力されるフレーム信号ごとに、付加装置12から制御システム11にドミナントが送信される2個目のビットが検出されたことを判定した場合に、状態遷移T3によってエラー状態J3へ遷移する。つまり、この場合には、ACKフィルタ334は、当該フレーム信号の終了が検出される前に、付加装置12から制御システム11にドミナントが送信される2個目のビットが検出されたことを判定している。
【0072】
このように、本実施形態では、制御システム11から付加装置12に出力されるフレーム信号ごとに、付加装置12から制御システム11にドミナントが送信される2個目のビットが検出されていない間は、ACKフィルタ334は、遮断器333が接続維持状態を維持するように制御する。この場合、ACKフィルタ334は、フレーム信号ごとに、オープン状態J1からクローズ状態J2へ遷移した後に再びオープン状態J1へ遷移することを繰り返して行う。
【0073】
一方、本実施形態では、制御システム11から付加装置12に出力されるフレーム信号のうちの1つにおいて、付加装置12から制御システム11にドミナントが送信される2個目のビットが検出された場合には、ACKフィルタ334は、遮断器333を遮断状態に切り替えるように制御する。この場合、ACKフィルタ334は、エラー状態J3へ遷移し、エラー状態J3のままとなる。
本実施形態では、ACKフィルタ334がエラー状態J3となった場合には、接続装置311は、例えば、ユーザーによって所定の操作が行われること、あるいは、外部の装置のよって所定の信号が入力されることによって、初期状態に戻って、オープン状態J1となる。
【0074】
ここで、本実施形態では、エラー状態J3においては、制御システム11と付加装置12との接続状態が遮断状態となって、当該遮断状態が維持される。これにより、本実施形態では、例えば、付加装置12が不正な装置であったとしても、付加装置12から制御システム11に不正な信号が流れていくことが抑制される。
なお、本実施形態では、ACKフィルタ334がオープン状態J1とクローズ状態J2とエラー状態J3になり得る構成を説明するが、必ずしも、このような構成が用いられなくてもよい。
【0075】
[接続装置において行われる処理]
図5は、本発明の実施形態に係る接続装置311において行われる処理の手順の一例を示す図である。
【0076】
(ステップS1)
接続装置311において、ACKフィルタ334は、比較器332から入力される方向信号に基づいて、フレーム信号ごと、1ビットごとに、信号方向の検出結果を取得する。そして、ステップS2の処理へ移行する。
【0077】
(ステップS2)
接続装置311において、ACKフィルタ334は、付加装置12から制御システム11に伝送されるドミナントのビット(1つのフレーム信号における1ビット目)を検出したか否かを判定する。
ステップS2の判定の結果、接続装置311において、ACKフィルタ334は、付加装置12から制御システム11に伝送されるドミナントのビットを検出したと判定した場合には(ステップS2:YES)、ステップS3の処理へ移行する。
一方、ステップS2の判定の結果、接続装置311において、ACKフィルタ334は、付加装置12から制御システム11に伝送されるドミナントのビットを検出していないと判定した場合には(ステップS2:NO)、ステップS1の処理へ移行する。
【0078】
(ステップS3)
接続装置311において、ACKフィルタ334は、比較器332から入力される方向信号に基づいて、フレーム信号ごと、1ビットごとに、信号方向の検出結果を取得する。そして、ステップS4の処理へ移行する。
【0079】
(ステップS4)
接続装置311において、ACKフィルタ334は、付加装置12から制御システム11に伝送されるドミナントのビット(1つのフレーム信号における2ビット目)を検出したか否かを判定する。
ステップS4の判定の結果、接続装置311において、ACKフィルタ334は、付加装置12から制御システム11に伝送されるドミナントのビットを検出したと判定した場合には(ステップS4:YES)、ステップS5の処理へ移行する。
一方、ステップS4の判定の結果、接続装置311において、ACKフィルタ334は、付加装置12から制御システム11に伝送されるドミナントのビットを検出していないと判定した場合には(ステップS4:NO)、ステップS7の処理へ移行する。
【0080】
(ステップS5)
接続装置311において、ACKフィルタ334は、同一のフレーム信号(1つのフレーム信号)において、付加装置12から制御システム11に伝送されるドミナントのビットとして2ビット目を検出したことに基づいて、エラーを判定する。そして、ステップS6の処理へ移行する。
【0081】
(ステップS6)
接続装置311において、ACKフィルタ334は、遮断器333を制御して、遮断器333によって制御システム11と付加装置12との接続状態を遮断状態へ切り替える。そして、本フローの処理を終了する。
ここで、本実施形態では、遮断状態に切り替えられた以降、制御システム11と付加装置12との通信については、付加装置12によるすべての通信が遮断される。
なお、本実施形態では、ACKフィルタ334は、エラーを判定した場合に、異常警告灯335によって光を発光させる。
【0082】
(ステップS7)
接続装置311において、ACKフィルタ334は、レセシブの検出結果に基づいて、フレーム信号の区切りを検出したか否かを判定する。
ステップS7の判定の結果、ACKフィルタ334は、レセシブの検出結果に基づいて、フレーム信号の区切りを検出したと判定した場合(ステップS7:YES)、本フローの処理を終了する。この場合、例えば、制御システム11から付加装置12へ次のフレーム信号が伝送されてくる状況では、接続装置311において、ACKフィルタ334は、当該次のフレーム信号について、再び、図5に示される処理を実行する。
一方、ステップS7の判定の結果、ACKフィルタ334は、レセシブの検出結果に基づいて、フレーム信号の区切りを検出していないと判定した場合(ステップS7:NO)、ステップS3の処理へ移行する。この場合、本実施形態では、同一のフレーム信号(1つのフレーム信号)が継続しているとみなされる。
【0083】
ここで、図5に示されるフローの処理では、ACKフィルタ334は、本フローの開始時点ではオープン状態J1にあり、ステップS2の処理において付加装置12から制御システム11に伝送されるドミナントのビット(1つのフレーム信号における1ビット目)を検出した場合にクローズ状態J2へ遷移する。また、ACKフィルタ334は、クローズ状態J2において、ステップS5の処理においてエラーを判定してステップS6の処理において遮断状態に切り替える場合にエラー状態J3へ遷移する。また、ACKフィルタ334は、クローズ状態J2において、ステップS7の処理においてフレーム信号の区切りを検出して本フローの処理を終了する場合にオープン状態J1へ遷移する。
【0084】
すなわち、接続装置311において、ACKフィルタ334は、接続装置311の起動時には、オープン状態J1として動作を開始する。
オープン状態J1において、ACKフィルタ334は、付加装置12から1ビットのドミナントが送信されたことを検出すると、当該ドミナントをACK信号であるとみなして、当該ドミナントの通信を通過させて、クローズ状態J2へ遷移する。本実施形態では、クローズ状態J2は、接続維持状態から遮断状態への切り替えの可能性があるために、当該切り替えを待機する状態である。
本実施形態では、ACKフィルタ334は、付加装置12からACK信号が送信される可能性がある期間(オープン状態J1でのスタートからACK信号が送られるまでの期間)、遮断器333によって制御システム11と付加装置12との間の通信が遮断されないように維持する。
【0085】
クローズ状態J2において、ACKフィルタ334は、1つのフレーム信号におけるEOFとそれに続くITMを合わせた10ビット分のレセシブを検出した場合に、1つのフレーム信号が終了したとみなして、オープン状態J1へ遷移する。
【0086】
クローズ状態J2において、ACKフィルタ334は、付加装置12から1ビットのドミナント(または、2ビット以上のドミナントでもよい。)を受け取った場合、付加装置12から制御システム11の側(自動車の側)へACK信号以外の信号の注入が試みられたとみなして、エラー状態J3へ遷移する。
【0087】
[任意の情報処理部のハードウェア構成]
図6は、本発明の実施形態に係る情報処理部2001のハードウェア構成の一例を示す図である。
本実施形態では、制御システム11における任意の部分、付加装置12における任意の部分、接続装置13(接続装置311)における任意の部分などに、情報処理部2001の構成あるいは情報処理部2001の一部の構成が用いられてもよい。
【0088】
図6の例では、情報処理部2001は、プロセッサ2011と、操作部2012と、表示部2013と、記憶装置2014と、メモリ2015と、入出力インターフェイス2016と、ネットワークインターフェイス2017と、これらを接続するバス2021を備える。
なお、情報処理部2001が任意の装置に適用される場合に、必ずしも図6に示されるすべての処理部が備えられなくてもよく、また、図6に示されていない任意の処理部が追加されてもよい。
【0089】
プロセッサ2011は、CPU(Central Processing Unit)などから構成されており、プログラムを実行することで、当該プログラムに規定された処理を実行する。
操作部2012は、キーボード、マウスなどのうちの1以上の入力装置を備え、ユーザ(人)により行われる操作を受け付ける。
表示部2013は、画面を有しており、情報を当該画面に表示出力する。
【0090】
記憶装置2014は、不揮発性の記憶部であり、例えば、ハードディスクなどから構成されており、情報を記憶する。
メモリ2015は、揮発性の記憶部であり、RAM(Random Access Memory)などから構成されており、情報を一時的に記憶する。RAMとしては、例えば、DRAM(Dynamic Random Access Memory)が用いられてもよい。
記憶装置2014あるいはメモリ2015は、例えば、プロセッサ2011により実行されるプログラムの情報を記憶してもよい。
【0091】
入出力インターフェイス2016は、外部の記録媒体などと接続するインターフェイスである。
ネットワークインターフェイス2017は、外部のネットワークと接続するインターフェイスである。
【0092】
ここで、情報処理部2001は、プロセッサ2011として、1個のプロセッサを備えてもよく、または、2個以上のプロセッサを備えてもよい。一例として、情報処理部2001は、複数個のCPUを備えて、それぞれのCPUによりそれぞれの処理を実行するとともに、これら複数個のCPUにより連携して全体の処理を実現してもよい。
【0093】
[以上の実施形態について]
以上のように、本実施形態に係る通信システム1(通信システム1a)における接続装置13(接続装置311)は、制御システム11と付加装置12との間に介在して、制御システム11から付加装置12へ通信される信号についてはすべて通過させ、付加装置12から制御システム11へ通信される信号についてはACK信号のみを通過させるように制御する。
【0094】
このように、本実施形態に係る接続装置13(接続装置311)は、付加装置12がACK信号を発信することを許可する一方、付加装置12がACK信号以外の信号のビットを出力した場合には付加装置12からの出力を遮断する。
本実施形態に係る接続装置13(接続装置311)は、フレーム信号ごとに、付加装置12から制御システム11へのドミナントの送信を1ビットだけ許可する一方、付加装置12から制御システム11へ2ビット目のドミナントの出力があった場合には、制御システム11と付加装置12との通信を遮断する。
【0095】
したがって、本実施形態に係る接続装置13(接続装置311)では、制御システム11に対してOBD−IIのようなポートを介して付加装置12が取り付けられる場合に、制御システム11と付加装置12との間に介在して、付加装置12から制御システム11への不正な通信を抑制することができる。
【0096】
例えば、本実施形態に係る接続装置13(接続装置311)では、付加装置12から車載ネットワーク(制御システム11)へACK信号以外の信号が流れないようにすることができる。この結果、本実施形態に係る接続装置13(接続装置311)では、例えば、付加装置12に脆弱性がある場合、あるいは、付加装置12が不正な状態にある場合などにおいても、制御システム11が搭載された自動車への問題ある影響を抑制することができる。
また、本実施形態に係る接続装置13(接続装置311)では、例えば、付加装置12から車載ネットワーク(制御システム11)へACK信号以外の信号が出力された場合に、異常警告灯335によって光を発することにより、このような付加装置12に関する不正などの可能性を、制御システム11が搭載された自動車の運転手などに通知することができる。
【0097】
なお、本実施形態に係る接続装置13(接続装置311)では、付加装置12が不正な装置である可能性がある場合を判定しているが、例えば、付加装置12が不正な装置ではない場合が含まれる可能性はある。しかしながら、本実施形態に係る接続装置13(接続装置311)では、本実施形態に係る接続装置13(接続装置311)が使用されない場合と比べて、セキュリティを高めることができる。
【0098】
ここで、本実施形態に係る接続装置13(接続装置311)は、例えば、制御システム11が搭載された自動車の走行時のモニタリングを行うためのアクセサリには影響がないように、構成され得る。
また、例えば、自動車のディーラーでのメンテナンスのために、接続装置13(接続装置311)が接続される制御システム11のポート(例えば、OBD−IIなどのポート)に他の任意の装置が付けられる場合においても、接続装置13(接続装置311)が物理的または電気的に当該ポートから外され得る構成とすることで、対応することが可能である。例えば、制御システム11におけるファームウェアの書き換えが行われる場合には、付加装置12の側から制御システム11の側へデータが伝送される。
【0099】
また、例えば、接続装置13(接続装置311)が接続される制御システム11のポート(例えば、OBD−IIなどのポート)に付けられる装置(本実施形態における付加装置12に類似する装置)のなかには、CANのフレーム信号を受信したときにACK信号を返信しない装置もあり得るが、このような装置は、本実施形態では、付加装置12の対象とはしていない。
【0100】
<構成例>
一構成例として、接続装置(図1の例では接続装置13、図3の例では接続装置311)は、第1値(例えば、ドミナントに対応する0値)と第2値(例えば、レセシブに対応する1値)を用いて通信されるCANのフレーム信号であってACKスロットを含む当該フレーム信号を出力する第1接続対象(例えば、制御システム11)と、当該フレーム信号が伝送可能に、接続される。また、接続装置は、当該フレーム信号に対してACK信号を返信する第2接続対象(例えば、付加装置12)と、当該フレーム信号が伝送可能に、接続される。
接続装置は、第1接続対象から出力される当該フレーム信号を第2接続対象に出力する場合に、1つの当該フレーム信号(例えば、1つの当該フレーム信号の期間)において第2接続対象から第1値が2ビット以上(当該2ビット以上は連続していなくてもよい。)出力されたことを判定した場合に、第2接続対象から第1接続対象への信号の送信を遮断する。
【0101】
一構成例として、接続装置は、第1接続対象と第2接続対象との間で伝送される信号の方向を1ビットごとに検出する信号方向検出部(図1の例では、信号方向検出部111)と、第1接続対象から第2接続対象に送信されるフレーム信号の区切りを検出するフレーム区切り検出部(図1の例では、フレーム区切り検出部112)と、信号方向検出部による検出結果およびフレーム区切り検出部による検出結果に基づいて、1つの当該フレーム信号において第2接続対象から第1値が2ビット以上出力されたことを判定した場合に、第1接続対象と第2接続対象との接続状態を、第2接続対象から第1接続対象への信号の送信を遮断する状態(実施形態では、両方向の通信を遮断する遮断状態)へ切り替える接続切替部(図1の例では、接続切替部113)と、を備える。
【0102】
一構成例として、接続装置は、信号方向検出部による検出結果およびフレーム区切り検出部による検出結果に基づいて、1つのフレーム信号において第2接続対象から出力される1ビット目の第1値を(ACK信号とみなして)第1接続対象に出力する接続切替部の状態(実施形態では、接続維持状態)とし、1つのフレーム信号において第2接続対象から2ビット目の第1値が出力されたことを判定した場合に(当該第1値を不正な信号とみなして)、第2接続対象から第1接続対象への信号の送信を遮断する接続切替部の状態とするように制御を行う接続切替制御部(図1の例では、接続切替制御部114)を備える。
【0103】
一構成例として、接続装置において、信号方向検出部は、第1接続対象と第2接続対象との間で伝送される信号の電圧(図3の例では、センス抵抗331の両端の電圧)に基づいて、信号の方向を検出する。
一構成例として、接続装置において、フレーム区切り検出部は、第1接続対象と第2接続対象との間で伝送されるフレーム信号の終了部分に対応する所定パターンの信号を検出した場合に、当該フレーム信号の当該終了部分を、当該フレーム信号の区切りとして、検出する。
一構成例として、第1値はドミナントに対応し、第2値はレセシブに対応する。フレーム信号の終了部分は、当該フレーム信号のEOFを構成する7ビットのレセシブおよびそれに続く3ビットのレセシブ(図2の例では、ITMを構成する3ビットのレセシブ)を含む10ビットのレセシブである。
一構成例として、第1接続対象は、車両に搭載され、フレーム信号を発信する複数のECUを含む。第2接続対象は、第1接続対象に対して付加的に接続され得る装置である。
【0104】
一構成例として、接続方法(図1の例では接続装置13において行われる処理の方法、図3の例では接続装置311において行われる処理の方法)では、接続装置が、次のような処理を行う。
ここで、接続装置は、第1値と第2値を用いて通信されるCANのフレーム信号であってACKスロットを含む当該フレーム信号を出力する第1接続対象と当該フレーム信号が伝送可能に接続され、当該フレーム信号に対してACK信号を返信する第2接続対象と当該フレーム信号が伝送可能に接続される。
接続装置は、第1接続対象から出力される当該フレーム信号を第2接続対象に出力する場合に、1つの当該フレーム信号において第2接続対象から第1値が2ビット以上出力されたことを判定した場合に、第2接続対象から第1接続対象への信号の送信を遮断する。
【0105】
一構成例として、プログラムでは、接続装置の一部または全部を構成するコンピュータに、次のような機能を実現させる。
ここで、接続装置は、第1値と第2値を用いて通信されるCANのフレーム信号であってACKスロットを含む当該フレーム信号を出力する第1接続対象と当該フレーム信号が伝送可能に接続され、当該フレーム信号に対してACK信号を返信する第2接続対象と当該フレーム信号が伝送可能に接続される。
当該プログラムは、第1接続対象から出力される当該フレーム信号を第2接続対象に出力する場合に、1つの当該フレーム信号において第2接続対象から第1値が2ビット以上出力されたことを判定した場合に、第2接続対象から第1接続対象への信号の送信を遮断する機能を実現させるためのプログラムである。
【0106】
なお、任意の装置における任意の構成部の機能を実現するためのプログラムを、コンピュータ読み取り可能な記録媒体に記録し、そのプログラムをコンピュータシステムに読み込ませて実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、オペレーティングシステム(OS:Operating System)あるいは周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD(Compact Disc)−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークあるいは電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。記録媒体は、例えば、非一時的記録媒体であってもよい。
【0107】
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワークあるいは電話回線等の通信回線のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイルであってもよい。差分ファイルは、差分プログラムと呼ばれてもよい。
【0108】
また、任意の装置における任意の構成部の機能は、プロセッサにより実現されてもよい。例えば、本実施形態における各処理は、プログラム等の情報に基づき動作するプロセッサと、プログラム等の情報を記憶するコンピュータ読み取り可能な記録媒体により実現されてもよい。ここで、プロセッサは、例えば、各部の機能が個別のハードウェアで実現されてもよく、あるいは、各部の機能が一体のハードウェアで実現されてもよい。例えば、プロセッサはハードウェアを含み、当該ハードウェアは、デジタル信号を処理する回路およびアナログ信号を処理する回路のうちの少なくとも一方を含んでもよい。例えば、プロセッサは、回路基板に実装された1または複数の回路装置、あるいは、1または複数の回路素子のうちの一方または両方を用いて、構成されてもよい。回路装置としてはIC(Integrated Circuit)などが用いられてもよく、回路素子としては抵抗あるいはキャパシターなどが用いられてもよい。
【0109】
ここで、プロセッサは、例えば、CPUであってもよい。ただし、プロセッサは、CPUに限定されるものではなく、例えば、GPU(Graphics Processing Unit)、あるいは、DSP(Digital Signal Processor)等のような、各種のプロセッサが用いられてもよい。また、プロセッサは、例えば、ASIC(Application Specific Integrated Circuit)によるハードウェア回路であってもよい。また、プロセッサは、例えば、複数のCPUにより構成されていてもよく、あるいは、複数のASICによるハードウェア回路により構成されていてもよい。また、プロセッサは、例えば、複数のCPUと、複数のASICによるハードウェア回路と、の組み合わせにより構成されていてもよい。また、プロセッサは、例えば、アナログ信号を処理するアンプ回路あるいはフィルタ回路等のうちの1以上を含んでもよい。
【0110】
なお、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態には限定されない。本発明の精神及び範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。
【符号の説明】
【0111】
1、1a…通信システム、11…制御システム、12…付加装置、13、311…接続装置、21〜22、351〜353…通信路、111…信号方向検出部、112…フレーム区切り検出部、113…接続切替部、114…接続切替制御部、211…データフレーム、331…センス抵抗、332…比較器、333…遮断器、334…ACKフィルタ、335…異常警告灯、2001…情報処理部、2011…プロセッサ、2012…操作部、2013…表示部、2014…記憶装置、2015…メモリ、2016…入出力インターフェイス、2017…ネットワークインターフェイス、2021…バス、J1…オープン状態、J2…クローズ状態、J3…エラー状態、T0〜T3…状態遷移
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【手続補正書】
【提出日】20200825
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
第1値と第2値を用いて通信されるCANのフレーム信号であってACKスロットを含む前記フレーム信号を出力する第1接続対象と前記フレーム信号が伝送可能に接続され、前記フレーム信号に対してACK信号を返信する第2接続対象と前記フレーム信号が伝送可能に接続され、
前記第1接続対象から出力される前記フレーム信号を前記第2接続対象に出力する場合に、1つの前記フレーム信号において前記第2接続対象から前記第1値が2ビット以上出力されたことを判定した場合に、前記第2接続対象から前記第1接続対象への信号の送信を遮断する、
接続装置。
【請求項2】
前記第1接続対象と前記第2接続対象との間で伝送される信号の方向を1ビットごとに検出する信号方向検出部と、
前記第1接続対象から前記第2接続対象に送信される前記フレーム信号の区切りを検出するフレーム区切り検出部と、
前記信号方向検出部による検出結果および前記フレーム区切り検出部による検出結果に基づいて、1つの前記フレーム信号において前記第2接続対象から前記第1値が2ビット以上出力されたことを判定した場合に、前記第1接続対象と前記第2接続対象との接続状態を、前記第2接続対象から前記第1接続対象への信号の送信を遮断する状態へ切り替える接続切替部と、
を備える、
請求項1に記載の接続装置。
【請求項3】
前記信号方向検出部による検出結果および前記フレーム区切り検出部による検出結果に基づいて、前記1つの前記フレーム信号において前記第2接続対象から出力される1ビット目の前記第1値を前記第1接続対象に出力する前記接続切替部の状態とし、前記1つの前記フレーム信号において前記第2接続対象から2ビット目の前記第1値が出力されたことを判定した場合に、前記第2接続対象から前記第1接続対象への信号の送信を遮断する前記接続切替部の状態とするように制御を行う接続切替制御部を備える、
請求項2に記載の接続装置。
【請求項4】
前記信号方向検出部は、前記第1接続対象と前記第2接続対象との間で伝送される信号の電圧に基づいて、前記信号の方向を検出する、
請求項2または請求項3に記載の接続装置。
【請求項5】
前記フレーム区切り検出部は、前記第1接続対象と前記第2接続対象との間で伝送される前記フレーム信号の終了部分に対応する所定パターンの信号を検出した場合に、前記フレーム信号の前記終了部分を前記フレーム信号の前記区切りとして検出する、
請求項2または請求項3に記載の接続装置。
【請求項6】
前記第1値はドミナントに対応し、前記第2値はレセシブに対応し、
前記フレーム信号の前記終了部分は、前記フレーム信号のEOFを構成する7ビットのレセシブおよびそれに続く3ビットのレセシブを含む10ビットのレセシブである、
請求項5に記載の接続装置。
【請求項7】
前記第1接続対象は、車両に搭載され、前記フレーム信号を発信する複数のECUを含み、
前記第2接続対象は、前記第1接続対象に対して付加的に接続される装置である、
請求項1から請求項6のいずれか1項に記載の接続装置。
【請求項8】
第1値と第2値を用いて通信されるCANのフレーム信号であってACKスロットを含む前記フレーム信号を出力する第1接続対象と前記フレーム信号が伝送可能に接続され、前記フレーム信号に対してACK信号を返信する第2接続対象と前記フレーム信号が伝送可能に接続される接続装置が、
前記第1接続対象から出力される前記フレーム信号を前記第2接続対象に出力する場合に、1つの前記フレーム信号において前記第2接続対象から前記第1値が2ビット以上出力されたことを判定した場合に、前記第2接続対象から前記第1接続対象への信号の送信を遮断する、
接続方法。
【請求項9】
第1値と第2値を用いて通信されるCANのフレーム信号であってACKスロットを含む前記フレーム信号を出力する第1接続対象と前記フレーム信号が伝送可能に接続され、前記フレーム信号に対してACK信号を返信する第2接続対象と前記フレーム信号が伝送可能に接続される接続装置の一部または全部を構成するコンピュータに、
前記第1接続対象から出力される前記フレーム信号を前記第2接続対象に出力する場合に、1つの前記フレーム信号において前記第2接続対象から前記第1値が2ビット以上出力されたことを判定した場合に、前記第2接続対象から前記第1接続対象への信号の送信を遮断する機能を実現させるためのプログラム。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0014
【補正方法】変更
【補正の内容】
【0014】
本発明の一態様に係る接続装置において、前記第1接続対象は、車両に搭載され、前記フレーム信号を発信する複数のECUを含み、前記第2接続対象は、前記第1接続対象に対して付加的に接続される装置である。