(57)【要約】【課題】本発明は、データの受信確認をするための特別な信号を送信することなく当該データの送信元が受信確認を行うことができる、通信システムの提供を目的とする。【解決手段】データを送信する送信ノードと、前記データを受信したことに対する応答信号を共通バス上に送信する複数の受信ノードとを備え、前記送信ノードは、前記共通バス上の前記応答信号を受信することによって前記データが受信されたと判断する、通信システムであって、前記複数の受信ノードのうち特定の第１の受信ノードは、第１のパルス幅ｄ１の応答信号を送信し、前記複数の受信ノードのうち前記第１の受信ノード以外の第２の受信ノードは、第１のパルス幅ｄ１と異なる第２のパルス幅ｄ２の応答信号を送信し、前記送信ノードは、第１のパルス幅ｄ１の応答信号を受信することによって前記データが前記第１の受信ノードに受信されたと判断する、通信システム。【選択図】図５
2009267854.tif 000002
【特許請求の範囲】
【請求項１】
データを送信する送信ノードと、
前記データを受信したことに対する応答信号を共通バス上に送信する複数の受信ノードとを備え、
前記送信ノードは、前記共通バス上の前記応答信号を受信することによって前記データが受信されたと判断する、通信システムであって、
前記複数の受信ノードのうち特定の第１の受信ノードは、第１のパルス幅の応答信号を送信し、
前記複数の受信ノードのうち前記第１の受信ノード以外の第２の受信ノードは、前記第１のパルス幅と異なる第２のパルス幅の応答信号を送信し、
前記送信ノードは、前記第１のパルス幅の応答信号を受信することによって前記データが前記第１の受信ノードに受信されたと判断する、通信システム。
【請求項２】
前記応答信号は、前記データを載せて前記共通バス上を伝送するフレームの応答フィールドに格納される、請求項１に記載の通信システム。
【請求項３】
前記応答信号のパルス幅は、前記応答フィールドが始まるエッジからの長さである、請求項２に記載の通信システム。
【請求項４】
前記応答信号のパルス幅は、前記共通バス上の通信状態に応じて決められる、請求項１から３のいずれか一項に記載の通信システム。
【請求項５】
前記第１のパルス幅は、前記第２のパルス幅より長い、請求項１から４のいずれか一項に記載の通信システム。
【請求項６】
前記第１のパルス幅は、前記第２のパルス幅より短い、請求項１から４のいずれか一項に記載の通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを送信した送信ノードが共通バス上の応答信号を受信することによって前記データが受信されたと判断する、通信システムに関する。
【背景技術】
【０００２】
従来技術として、ＣＡＮバスを介して互いに接続され、それぞれＣＡＮコントローラを有する複数のノードを備えるＣＡＮ通信システムが知られている（例えば、特許文献１参照）。このＣＡＮ通信システムは、第１のノードが少なくとも一の第２のノードによるデータを必要とする場合に、データの送信を行うべきトリガフレームを前記ＣＡＮバスに向けて送信し、かつ、前記第２のノードは、前記第１のノードからの前記トリガフレームを受信した場合に、送信すべきデータを前記ＣＡＮバスに向けて送信することを特徴としている。
【特許文献１】特開２００３−２６４５６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、送信されたデータが当該データを受信すべきノードに確実に受信できているか否かをその送信側が判別する必要がある通信システムの場合、上述の従来技術では、送信側は上述のトリガフレームなどの特別な要求信号を送信しなければ受信確認を行うことができないため、要求信号やその要求信号に対する応答信号の送受によるバス上のトラフィックが増加してしまう。
【０００４】
そこで、本発明は、データの受信確認をするための特別な信号を送信することなく当該データの送信元が受信確認を行うことができる、通信システムの提供を目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、本発明に係る通信システムは、
データを送信する送信ノードと、
前記データを受信したことに対する応答信号を共通バス上に送信する複数の受信ノードとを備え、
前記送信ノードは、前記共通バス上の前記応答信号を受信することによって前記データが受信されたと判断する、通信システムであって、
前記複数の受信ノードのうち特定の第１の受信ノードは、第１のパルス幅の応答信号を送信し、
前記複数の受信ノードのうち前記第１の受信ノード以外の第２の受信ノードは、前記第１のパルス幅と異なる第２のパルス幅の応答信号を送信し、
前記送信ノードは、前記第１のパルス幅の応答信号を受信することによって前記データが前記第１の受信ノードに受信されたと判断する。
【０００６】
ここで、前記応答信号は、前記データを載せて前記共通バス上を伝送するフレームの応答フィールドに格納されるものであると好適である。前記応答信号のパルス幅は、例えば、前記応答フィールドが始まるエッジからの長さである。
【０００７】
また、前記応答信号のパルス幅は、前記共通バス上の通信状態に応じて決められると好適である。
【発明の効果】
【０００８】
本発明によれば、データの受信確認をするための特別な信号を送信することなく当該データの送信元が受信確認を行うことができる。
【発明を実施するための最良の形態】
【０００９】
以下、図面を参照して、本発明を実施するための最良の形態の説明を行う。図１は、本発明の一実施形態である車両用通信システム１００の構成図である。車両用通信システム１００は、ＣＡＮ（Controller  Area  Network）通信方式の通信システムであって、通信ラインを介して互いに通信可能に接続される例えば４つの電子制御装置（ＥＣＵ）１０，２０，３０，４０をノードとして有している。通信ラインが２線式の差動バスで構成されることによって、ＥＣＵ間の通信のノイズ耐性を向上させることができる。通信ラインは、２個の終端抵抗１５，２５に接続される本線７と、本線７に接続される支線３，４とから構成される。本線７は、ＣＡＮ−Ｈラインに相当する本線７ＨとＣＡＮ−Ｌラインに相当する本線７Ｌとから構成される。終端抵抗１５（例えば、１２０Ω）はＥＣＵ１０に内蔵され、終端抵抗２５（終端抵抗１５と同じ１２０Ω）はＥＣＵ２０に内蔵される。終端抵抗は、ＥＣＵに内蔵せずに、本線７Ｈと本線７Ｌとの間に挿入される場合もある。支線３（３Ｈ，３Ｌの２本から構成）は本線７とＥＣＵ３０とを接続し、支線４（４Ｈ，４Ｌの２本から構成）は本線７とＥＣＵ４０とを接続する。
【００１０】
各ＥＣＵは、信号送受信手段として、通信ラインを介して互いにシリアル通信するための通信インターフェイス回路を備える。各ＥＣＵ間の通信がＣＡＮ通信であれば、ＣＡＮドライバなどの送受信可能な通信インターフェイス回路が通信ラインに接続して各ＥＣＵに備えられる。各ＥＣＵは、通信ラインを介して、通信データを送受し、相手から受信した通信データに基づいて、自身が制御すべき制御処理（例えば、エンジン制御処理、ブレーキ制御処理、充電制御処理、故障診断制御処理など）を実行する。
【００１１】
図２は、終端抵抗１５を内蔵するＥＣＵ１０のハードウェア構成図である。終端抵抗２５を内蔵するＥＣＵ２０についても、図２と同様のハードウェア構成を有しており、ＥＣＵ３０，４０についても、終端抵抗が存在しない点を除いて、図２と同様のハードウェア構成を有しているため、代表にＥＣＵ１０について説明する。
【００１２】
ＥＣＵ１０は、制御プログラムや制御データを記憶するメモリと制御プログラムなどを処理するＣＰＵ（中央演算処理装置）とを有するマイクロコンピュータ（マイコン）１２を備える制御手段である。
【００１３】
ＥＣＵ１０の通信インターフェイス回路は、ＣＡＮコントローラを備えるマイコン１２と通信ライン間のインターフェイス用ＩＣであるＣＡＮトランシーバ（ドライバ）１１を備える。
【００１４】
図３は、ＣＡＮトランシーバのブロック図である。ＣＡＮトランシーバは、マイコンと通信線間のインターフェイス用ＩＣである。端子ＣＡＮＨはＨｉレベル用のバス出力端子であり、端子ＣＡＮＬはＬｏレベル用のバス出力端子である。また、端子Ｔｘｄはマイコンの通信出力端子に接続される送信データ入力端子であり、端子Ｒｘｄはマイコンの通信入力端子に接続される受信データ出力端子である。Ｖｃｃは電源端子、ＧＮＤは接地端子である。トランスミッタは、端子Ｔｘｄからの入力に基づきＨｉサイドスイッチとＬｏサイドスイッチをスイッチングすることによって差動信号の伝送データを端子ＣＡＮＨと端子ＣＡＮＬを介して出力する差動信号出力手段である。レシーバは、端子ＣＡＮＨと端子ＣＡＮＬからの差動信号の伝送データを受信して端子Ｒｘｄに出力する差動信号入力手段である。
【００１５】
マイコンからの入力によって端子Ｔｘｄが「０（ローレベル）」のときバスレベルは「ドミナント」となる。トランスミッタは、ドミナントのとき、ローサイドスイッチをオンすることにより端子ＣＡＮＬをローレベルにするとともに、ハイサイドスイッチをオンすることにより端子ＣＡＮＨをハイレベルにする。また、レシーバは、ドミナントのとき、端子Ｒｘｄを「１（ハイレベル）」にしてマイコンに出力する。
【００１６】
また、マイコンからの入力によって端子Ｔｘｄが「１（ハイレベル）」のときバスレベルは「レセッシブ」となる。トランスミッタは、レセッシブのとき、ローサイドスイッチをオフすることにより端子ＣＡＮＬをフロートにするとともに（バスに接続される他のＥＣＵによってそのレベルは固定される）、ハイサイドスイッチをオフにすることにより端子ＣＡＮＨをフロートにする（バスに接続される他のＥＣＵによってそのレベルは固定される）。また、レシーバは、レセッシブのとき、端子Ｒｘｄを「０（ローレベル）」にしてマイコンに出力する。
【００１７】
また、ＥＣＵ１０は、メモリ１３を備えてもよい。メモリ１３は、揮発性メモリでもよいが、電源遮断後も記憶内容を保持させておきたい場合には不揮発性メモリであることが望ましい。また、ハードディスクでもよい。また、ＥＣＵ１０に与えられている機能に応じて、センサによって得られた情報が入力される入力回路や、マイコン１２による演算結果を制御信号として出力する出力回路を備えてもよい。
【００１８】
ＥＣＵ２０，３０，４０についても、ＥＣＵ１０と同様に、マイコン、メモリ、トランシーバ、（必要に応じて）終端抵抗が、備えられる。
【００１９】
ところで、２本の通信線の差動電圧によって通信する方式であるＣＡＮ通信では、メッセージに優先順位が設定されている。ＣＡＮ通信で結ばれる各ノードは、それぞれ非同期に通信を開始し、同時に送信を開始した場合には調停が行われ、高優先度のメッセージが送信権を得て送信される。
【００２０】
ＣＡＮ通信は、ＣＡＮプロトコルに従い、本線と支線から構成される通信ラインに接続される各ノード間で送受されるフレームによって行われる。フレームには、送信側ノードからメッセージを送信するためのデータフレームや他のノードに対してデータフレームの送信を要求するためのリモートフレームなどがある。
【００２１】
図４は、データフレームの構成図である。データフレームは、スタートオブフレーム（ＳＯＦ）、アービトレーションフィールド、コントロールフィールド、データフィールド、ＣＲＣフィールド、ＡＣＫ（応答）フィールド、エンドオブフレーム（ＥＯＦ）の７つのフィールドから構成されている。
【００２２】
それらのうち、ＡＣＫフィールドは、１ビットのＡＣＫスロットと１ビットのＡＣＫデリミタから構成されている。送信元ノードは、データＤを送信する場合、そのデータＤの優先順位を表す識別情報（ＩＤ）をアービトレーションフィールドに格納し且つそのデータＤをデータフィールドに格納し且つＡＣＫフィールドを２ビットのレセッシブとしたデータフレームＤＦを通信ライン上に送出する。そのデータフレームＤＦを受信したすべての受信側ノードは、データフレームＤＦのＳＯＦからＣＲＣフィールドまでのメッセージのチェックを行うことにより誤りがないことを確認した場合には、データフレームＤＦのＡＣＫスロットでドミナントを送信する。このように、受信側ノードは、データフレームＤＦのＡＣＫフィールドに応答信号を格納することによって、データフレームＤＦによって伝送されてきたデータＤを正しく受信したことを送信元ノードに伝達できる。送信元ノードは、データフレームＤＦのＡＣＫフィールドの応答信号の格納状態を確認することによって（すなわち、データフレームＤＦのＡＣＫスロットがドミナントであることを確認することによって）、送信したデータＤが正しく受領されたことを確認することができる。
【００２３】
また、ＡＣＫスロットは、ＣＲＣフィールドとＡＣＫフィールドを区分するためのＣＲＣデリミタとＡＣＫフィールドとＥＯＦを区分するためのＡＣＫデリミタとの間に存在する。ＣＲＣデリミタとＡＣＫデリミタは、共に、１ビット幅であって、レセッシブに固定されている。これによって、ＡＣＫスロットがドミナントになると、必ず、レセッシブからドミナントへのエッジとドミナントからレセッシブへのエッジが形成され、送信元ノードはＡＣＫスロットがドミナントであることを的確に検出することができる。
【００２４】
しかしながら、すべての受信側ノードがＡＣＫスロットでドミナントを送信する（すなわち、ＡＣＫを返す）動作をすると、送信元ノードは、ＡＣＫスロットでドミナントを検知したとしても、データを受信してもらいたい正しい受信側ノードに当該データが受信できているかどうかはわからない。なぜなら、複数の受信側ノードのうち一つでもＡＣＫを返すとＡＣＫスロットはドミナントになってしまうため、ＡＣＫスロットをドミナントにしたノードが正しい受信相手であるとは限らないからである。
【００２５】
そこで、図５に示されるように、特定のノードのみ、応答信号（ＡＣＫ波形）のパルス幅を他のノードに比べて長くする。すなわち、特定ノードである第１のノードが受信側ノードとして動作する場合に送信する第１のＡＣＫ波形のパルス幅ｄ１は、第１のノードと異なる一般の第２のノードが受信側ノードとして動作する場合に送信する第２のＡＣＫ波形のパルス幅ｄ２より長い。図５において、ローレベルの区間はレセッシブを示し、ハイレベルの区間はドミナントを示し、タイミングｔ１はＡＣＫスロットが始まるタイミングを示す。したがって、第１のノードがＡＣＫスロットでドミナントを生成した後にレセッシブを生成するタイミングｔ３は、第２のノードがＡＣＫスロットでドミナントを生成した後にレセッシブを生成するタイミングｔ２より遅くなる。
【００２６】
受信側ノードは、ＡＣＫフィールドが始まるエッジを基準にパルス幅を生成する。例えば、第１のノードは、ＡＣＫスロットの始まるタイミングｔ１からドミナントに切り替えて、第１の所定時間（ｔ３−ｔ１）の経過時にレセッシブに切り替える。これにより、パルス幅ｄ１が生成される。また、第２のノードは、ＡＣＫスロットの始まるタイミングｔ１からドミナントに切り替えて、第１の所定時間より短い第２の所定時間（ｔ２−ｔ１）の経過時にレセッシブに切り替える。これにより、パルス幅ｄ２が生成される。
【００２７】
つまり、送信元ノードは、ＡＣＫスロットで生成されたドミナントがレセッシブに切り替わる時間の違いやＡＣＫスロットで生成されたドミナントの部分のパルス幅の違いを検出することによって、特定のノードである第１のノードがＡＣＫを返していることを確実に認識することができる。すなわち、送信元ノードは、ＡＣＫスロットで生成されたドミナントがレセッシブに切り替わる時間が一般ノードである第２のノードがＡＣＫ波形を生成する場合より長ければ（ＡＣＫスロットで生成されたドミナントの部分のパルス幅が一般ノードである第２のノードがＡＣＫ波形を生成する場合より長ければ）、特定のノードである第１のノードがＡＣＫを返していることを確実に認識することができる。
【００２８】
ここで、第１のノードが生成するＡＣＫ波形のパルス幅ｄ１は、第２のノードが生成するＡＣＫ波形のパルス幅ｄ２より長く、且つ、ＡＣＫスロットの１ビット幅とＡＣＫデリミタの１ビット幅とを合計したＡＣＫフィールドの２ビット幅より短く設定される。ＡＣＫデリミタの区間にパルス幅ｄ１が及んでも、少なくともＥＯＦの前にレセッシブを形成する必要があるからである。
【００２９】
また、パルス幅ｄ１やｄ２は、通信ライン上の通信遅延状態に応じて、予め想定されたマージンを付与したパルス幅に決められるとよい。例えば、パルス幅ｄ１は、第１のノードから送信元ノードまでの通信時間に応じて設定されるとよく、パルス幅ｄ２は、第２のノードから送信元ノードまでの通信時間に応じて設定されるとよい。これによって、通信遅延が生じた場合でも特定ノードである第１のノードがＡＣＫを返したことを送信元ノードは確認することができる。
【００３０】
このように、上述の実施例によれば、特定のノードが他のノードよりも長く応答信号を送信するので、受信確認要求信号などの特別な信号を送信することなく送信元ノードはデータの受信確認を通信トラフィックを抑えて確実に行うことができる。特に、車両の制御上で重要なノード（ＥＣＵ）がデータを確実に受信したか、車両の制御上で重要なデータが受信されるべきノード（ＥＣＵ）に確実に受信されたかを、送信元ノードは認識することができる。
【００３１】
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなく、上述した実施例に種々の変形及び置換を加えることができる。
【００３２】
例えば、通信ラインに接続されるノードとして、ＥＣＵを例示したが、インテリジェントなＣＡＮ通信可能なセンサなど、ＣＡＮ通信を行うことが可能なものであればよい。また、ノードの数は、４つに限らず、３つ又は５つ以上でも同様に考えることができる。
【００３３】
また、特定ノード（第１のノード）や一般ノード（第２のノード）は１つに限らず２つ以上あってもよい。特定ノードに優先度が設定されている場合、その優先度に応じてパルス幅が異なるように設定してもよい。特定ノードは、一般ノードが送信する応答信号のパルス幅より長いパルス幅の応答信号であって、自身に設定された優先度に応じたパルス幅の応答信号を送信する。特定ノード毎に優先順位を設定した場合、優先順位の高い特定ノードほど応答信号のパルス幅を長くすることによって、優先順位の高い特定ノードが応答信号を返信したことを送信元ノードは確実に認識することができる。
【００３４】
また、図３のＣＡＮトランシーバを使用する場合において、特定ノードが送信する応答信号のパルス幅が、特定ノード以外の一般ノードが送信する応答信号のパルス幅より長い実施例について説明した。しかしながら、通信ラインのバスレベルを変更するレベル変更手段の形態を変更することによって、特定ノードが送信する応答信号のパルス幅が、特定ノード以外の一般ノードが送信する応答信号のパルス幅より短くしてもよい。この場合、例えば、特定ノードである第１のノードが送信する応答信号の第１のパルス幅を生成する第１のレベル変更手段を第１のノードに備えるとともに、一般ノードである第２のノードが送信する応答信号の第２のパルス幅を生成する第２のレベル変更手段を第２のノードを備えて、第１のレベル変更手段によって生成された第１のパルス幅が第２のレベル変更手段によって生成された第２のパルスより短くすればよい。
【図面の簡単な説明】
【００３５】
【図１】本発明の一実施形態である車両用通信システム１００の構成図である。
【図２】終端抵抗１５を内蔵するＥＣＵ１０のハードウェア構成図である。
【図３】ＣＡＮトランシーバのブロック図である。
【図４】データフレームの構成図である。
【図５】ＡＣＫ波形の違いを示した図である。
【符号の説明】
【００３６】
３，４，５  支線
７  本線
１０，２０，３０，４０  ＥＣＵ
１１，２１，３１，４１  ＣＡＮドライバ（ＣＡＮトランシーバ）
１２  マイクロコンピュータ
１５，２５  終端抵抗
１００  車両用通信システム
【図１】
2009267854.tif 000003
【図２】
2009267854.tif 000004
【図３】
2009267854.tif 000005
【図４】
2009267854.tif 000006
【図５】
2009267854.tif 000007