(57)【要約】【課題】  本発明は、通信保証を確保しつつ効率的な通信を行う通信システムの提供を目的とする。【解決手段】  一つのパケット若しくは二つ以上の連なったパケット（図中、６つのパケット）を一ステージとし、ステージ毎に分割された総データ（図中、４つのステージに分割）をステージ間に先頭検出休止間隔を置いて送信する送信装置と、先頭検出休止間隔を検出してステージの先頭を検知し、その検知したステージのパケットの異常の判定を行って、異常と判定した場合には異常と判定したパケット以降のデータであって次のステージを検知するまでに受信したデータを破棄する受信装置とを備える通信システム。【選択図】  図２
2006261948.tif 000002
【特許請求の範囲】
【請求項１】
一つのパケット若しくは二つ以上の連なったパケットを一ステージとし、ステージ毎に分割された総データをステージ間に間隔を置いて送信する送信装置と、
前記間隔を検出してステージの先頭を検知し、その検知したステージのパケットの異常の判定を行って、異常と判定した場合には異常と判定したパケット以降のデータであって次のステージを検知するまでに受信したデータを破棄する受信装置とを備える通信システム。
【請求項２】
前記総データには、パケット毎に配置される更新データとステージ毎に配置される更新データが含まれる、請求項１記載の通信システム。
【請求項３】
一つのパケット若しくは二つ以上の連なったパケットを一ステージとしてステージ間に間隔を置いて送信する送信手段と、
送信すべきデータをパケット毎に乗せる第１のデータ配置手段と、
送信すべきデータをステージ毎に乗せる第２のデータ配置手段とを備える送信装置。  
【請求項４】
一つのパケット若しくは二つ以上の連なったパケットを一ステージとして受信する受信手段と、
ステージ間の間隔を検出してステージの先頭を検知する先頭検知手段と、
前記先頭検知手段により検知されるステージのパケットの異常の判定をする判定手段と、
前記判定手段が異常と判定したパケット以降のデータであって前記先頭検知手段が次のステージを検知するまでに受信したデータを破棄するデータ廃棄手段とを備える受信装置。
【請求項５】
受信したパケットには、パケット毎に配置された更新データとステージ毎に配置された更新データが含まれる、請求項４記載の受信装置。
【請求項６】
送信手段が、一つのパケット若しくは二つ以上の連なったパケットを一ステージとし、ステージ毎に分割された総データをステージ間に間隔を置いて送信するステップと、
先頭検知手段が、前記間隔を検出してステージの先頭を検知するステップと、
異常判定手段が、その検知したステージのパケットの異常の判定を行って、異常と判定した場合には異常と判定したパケット以降のデータであって次のステージを検知するまでに受信したデータの破棄指令をデータ廃棄手段に与えるステップと、
前記データ廃棄手段が、前記破棄指令が与えられたデータを記憶保持手段から破棄するステップから構成される通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、送信装置及び受信装置に関し、より詳細には、送受信される総データを所定の形態に分割して通信を行う通信システム、送信装置及び受信装置に関する。
【背景技術】
【０００２】
従来から、送信しようとする一連の情報を情報ブロックに分割して、ブロック単位で送信する技術が知られている（例えば、特許文献１及び２参照）。
【特許文献１】特開２００４−２０８０３３号公報
【特許文献２】特開平５−１６０８１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上述の従来技術のように、ブロックに分割して送信する場合、ブロック毎にヘッダやチェックサムデータを付して送信することになるので、分割後の送信総データが分割前の送信総データに比べデータ量が多くなり、データ送信が完了するまでの時間も長くなってしまう。これを回避するために、一つのブロック長をできるだけ長くして分割数を減らすという考えもある。しかしながら、ブロック長を長くすると、受信側が一ブロックのデータをすべて受信するまで時間がかかりチェックサム等によるデータの保証が早期に確定できない。
【０００４】
そこで、本発明は、通信保証を確保しつつ効率的な通信を行う通信システムの提供を目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するため、本発明の一局面によれば、
一つのパケット若しくは二つ以上の連なったパケットを一ステージとし、ステージ毎に分割された総データをステージ間に間隔を置いて送信する送信装置と、
前記間隔を検出してステージの先頭を検知し、その検知したステージのパケットの異常の判定を行って、異常と判定した場合には異常と判定したパケット以降のデータであって次のステージを検知するまでに受信したデータを破棄する受信装置とを備える通信システムが提供される。
【０００６】
また、本発明のその他の局面によれば、
送信手段が、一つのパケット若しくは二つ以上の連なったパケットを一ステージとし、ステージ毎に分割された総データをステージ間に間隔を置いて送信するステップと、
先頭検知手段が、前記間隔を検出してステージの先頭を検知するステップと、
異常判定手段が、その検知したステージのパケットの異常の判定を行って、異常と判定した場合には異常と判定したパケット以降のデータであって次のステージを検知するまでに受信したデータの破棄指令をデータ廃棄手段に与えるステップと、
前記データ廃棄手段が、前記破棄指令が与えられたデータを記憶保持手段から破棄するステップから構成される通信方法が提供される。
【０００７】
これらの局面によれば、ステージ（ブロック）長が長くなっても、受信側はステージ内のパケット単位で受信処理を確定でき、データの保証を早期にパケット単位で確定することができる。そして、ステージ内の一部のパケットに異常があったとしても、そのステージ内の異常パケット以降のデータは破棄され、あらためて次のステージからデータの受信をするので、異常状態から早期に復帰することができる。
【０００８】
また、前記総データには、パケット毎に配置される更新データとステージ毎に配置される更新データが含まれることが好ましい。これにより、パケット毎に配置される更新データは早い周期で送受信されるようになり、ステージ毎に配置される更新データは遅い周期で送受信されるようになる。つまり、要求される周期に合わせて効率的に更新データを送受信できるようになる。
【発明の効果】
【０００９】
本発明によれば、通信保証を確保しつつ効率的な通信を行うことができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明を実施するための最良の形態の説明を行う。図１は、本発明の通信システムの一構成例を示した図である。本実施形態の通信システムは、ＥＣＵ２に送信装置を、ＥＣＵ３に受信装置を備え、ＥＣＵ２が伝送ライン１を介してＥＣＵ３にデータを送信するものである。各ＥＣＵに内蔵される通信制御マイコンは、ＵＡＲＴ（Universal  Asynchronous  Receiver  and  Transmitter）を有する。
【００１１】
図２は、データを乗せるプロトコルの一例を示す図である。ＥＣＵ２は、送信すべき総データを複数のパケットから構成されるステージにいくつか分割して送信する。本実施形態では、総データは４つのステージに分割され、分割された各ステージは６つのパケットから構成される。
【００１２】
１パケットは１６バイト長である。各パケットには、先頭から順に、「０：スケジュール領域」、「１：ミラー領域」、「２〜１４，１４の上位４ビット：データ領域」、「１４の下位４ビット，１５：サム領域」が割り当てられる。
【００１３】
「０：スケジュール領域」には、総データの分割によって全部で２４個あるパケットのうち何番目のパケットであるかを示すスケジュールカウンタが入る。例えば、０番目のパケットのスケジュール領域には０が入り、２３番目のパケットのスケジュール領域には２３が入る。「１：ミラー領域」には、直前の０バイト目のミラーデータが入る。「２〜１４，１４の上位４ビット：データ領域」には、送信すべき総データから分割されたデータが入る。「１４の下位４ビット，１５：サム領域」には、スケジュール領域とミラー領域とデータ領域のデータのチェックサムデータが入る。
【００１４】
ＥＣＵ２は、６つのパケットを連ねたものを一ステージ（９６バイト）としてＥＣＵ３に送信する。そして、４つのステージの送信をもって、分割された送信すべき総データがすべて送信されることとなる。このとき、ＥＣＵ２による送信は、ＥＣＵ３がステージの区切りを認識できるように、ステージ間に８バイト分のデータ休止間隔（先頭検出休止間隔）を置いて行われる。
【００１５】
ＥＣＵ２は、送信すべきデータをパケット毎に乗せたり、ステージ毎に乗せたりすることによって、送信するデータの周期を変えている。パケット毎にデータ配置をすれば早い周期でデータを送受信できるようになり、ステージ毎にデータ配置をすれば遅い周期でデータを送受信できるようになる。例えば、ＥＣＵ２がＥＣＵ３に、逐次変化する電流値データと電圧値データを送信するとした場合を考える。０〜２３番目のパケットそれぞれの７バイト目のデータ領域に電流値データを入れ、各ステージの先頭のパケットである０，６，１２，１８番目のパケットそれぞれの１１バイト目のデータ領域に電圧値データを入れれば、ＥＣＵ３が取得する電流値データは早い周期で更新され、電圧値データは遅い周期で更新されることとなる。つまり、変化しやすいデータを早い周期で送受信すれば、その変化をより的確に両ＥＣＵ間でやりとりすることができる。逆に、変化しにくいデータであれば遅い周期で送受信することによって、無駄なデータの送受信を抑えることができる。
【００１６】
ＥＣＵ３は、伝送ライン１を介してＥＣＵ２からのデータを受信する。ＥＣＵ３はその受信データの異常の判定を行う。異常の判定は以下のように行われる。
【００１７】
ＥＣＵ３は、ステージ間のデータ休止間隔を検出して、ステージの先頭を検知する。先頭を検知したＥＣＵ３は、そのステージ内のパケット毎に異常の判定を行う。パケットにすることによってパケット単位で異常の判定を行うことができ、パケットはデータ保証の最低単位となる。異常の判定は、スケジュールカウンタのチェック、サムデータのチェック及びミラーチェックによって行われる。例えば、０番目のパケットのスケジュール領域に０が入っていれば正常なスケジュールカウンタであると判定され、０以外が入って入れば異常なスケジュールカウンタであると判定される。また、パケット毎にＵＡＲＴ通信異常（パリティ、オーバーラン、フレーミングエラーチェック）の判定が行われる。さらに、ステージ間のデータ休止間隔を監視して、データ途絶の判定が行われる。データ休止間隔が所定時間以上の場合にデータ途絶として、異常と判定される。
【００１８】
ＥＣＵ３は、このような異常の判定を行って、異常と判定した場合には、異常と判定したパケット以降のデータであって次のステージを検知するまでに受信したデータを、演算のために一時的に保存していたＲＡＭ等の揮発性メモリから破棄する。例えば図２において、２番目のパケットに異常があれば、同一ステージ内にある３，４，５番目のパケットまでの受信データ（５番目と６番目の間のデータ休止間隔にデータがあれば、それも含めてもよい）は廃棄される。また、ＥＣＵ３が他のアプリケーションと連携している場合には、ＥＣＵ３は、このような異常があった旨を他のアプリケーションに通知する。
【００１９】
異常と判定されたパケットを含めて上記受信データが廃棄された後、ＥＣＵ３は異常状態からの復帰を図る。つまり、ＥＣＵ３は、上記と同様にして、検知した次のステージ内のデータについてもパケット毎に異常の判定を行う。以降、上記のような異常の判定が繰り返し行われる。正常と判定されれば、ＥＣＵ３は、正常と判定された受信データを用いて所定の制御動作を行う。
【００２０】
図３及び図４は、ＥＣＵ３による異常の判定についてのタイムチャートである。図３は、初期＆正常時のタイムチャートであり、図４は異常発生時のタイムチャートである。
【００２１】
図３において、ＥＣＵ３内の通信制御マイコンは、受信データのステージ間のデータ休止間隔を検出して、ステージの先頭を検知する（図３（ａ），（ｂ））。各ステージの先頭の検知は以下のように行われる。パケット内の１バイトを受信する毎に受信完了割り込みを発生させるようにして、受信完了割り込みが発生したときに前の間隔が８．１９２ｍｓ以上あいていれば、ステージ先頭検出フラグ（ｂ）を立てる。その一方で、パケット受信完了フラグ（ｃ）がパケットの１６バイトを受信する毎に立つ。パケット受信完了フラグ（ｃ）が立っているときにステージ先頭検出フラグ（ｂ）が立っている場合は、各ステージの先頭のパケットデータであると認識できる。
【００２２】
認識できた後に、上記の異常の判定等の受信判定処理（ｄ）が行われる。正常と判定されれば、次のパケットの１６バイト分の異常の判定等の受信判定処理（ｄ）が行われ、そのステージの最終のパケットまで継続する。次のステージでも同様に、受信判定処理（ｄ）がなされる。正常と判定されれば、この段階でデータが正常なものとして公開され、他のアプリケーション（図示しない他のＥＣＵの制御プログラムやＥＣＵ３自身の制御プログラム）等がそのデータを利用可能となる。
【００２３】
なお、ＥＣＵ２からＥＣＵ３への通信が無手順方式（特に手順を決めたりせず、送信側が一方的にデータを送出する方式）の場合、ＥＣＵ２からのデータ送信中にＥＣＵ３がはじめて起動すると、異常を誤検出することがあるので、受信判定処理（ｄ）が終わった段階で初期データセット完了フラグ（ｅ）を立て、このフラグが立っていない場合には異常の判定を行わないようにする。同様の理由で、起動後ステージの先頭が検知されるまで、受信データは破棄される（ｇ）。
【００２４】
一方、図４において、ＥＣＵ３内の通信制御マイコンは、受信判定処理（ｄ）により、パリティエラー等のパケットの異常を判定すれば、仮異常フラグ（ｆ）を立てる（図４では、ステージ内の２番目のパケットに異常）とともに、異常と判定したパケット以降のデータであって次のステージを検知するまでに受信したデータを破棄する（ｇ）。その後、ＥＣＵ３内の通信制御マイコンは、受信判定処理（ｄ）により正常と判定すれば、仮異常フラグ（ｆ）を落とし、正常状態に復帰する（ｇ）。仮異常フラグ（ｆ）の立った状態が所定時間（例えば数秒間）続けば、異常ダイアグがＥＥＰＲＯＭ等に記憶される。
【００２５】
なお、ＥＣＵ３内のマイコンが８ｍｓタイミング作成カウンタ（ｈ）によって８ｍｓデータ（ｉ）を作成し、正常と判定されたパケット内のデータを（ｉ）の１のタイミングに公開する前半８バイト分のデータと２のタイミングで公開する後半８バイト分のデータとに分けて公開し、他のアプリケーション等がその公開データを利用可能とすることもできる。例えば、ＥＣＵ２が１パケット内のデータ領域のそれぞれに（例えば、３バイト目と９バイト目）時間ずれがある２つの異なるデータを入れて送信した場合、受信側のＥＣＵ３は、１と２の両方のタイミングで受信データを参照することによって８ｍｓの時間ルールに則ったデータを取得し、２つのデータをある一つの所定ＲＡＭの領域に時間を置いて順番に入れる。そうすることによって、２つの時系列の異なるデータを一つのＲＡＭ領域でまかなうことができ、ＲＡＭ不足の対策となる。
【００２６】
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなく、上述した実施例に種々の変形及び置換を加えることができる。
【００２７】
例えば、図２のプロトコルはあくまで一例である。用意するステージの数、一ステージ内のパケットの数及び通信速度等は、要求される通信仕様に基づいて任意に変更することが可能である。また、上述の実施例は、２つのＥＣＵ間の例を挙げたが、パケットにあて先を表すデスティネーションアドレスや送信元を表すソースアドレス４１３を入れるヘッダ部等を設ければ、それ以上の数が接続した通信システムでもよい。
【図面の簡単な説明】
【００２８】
【図１】本発明の通信システムの一構成例を示した図である。
【図２】データを乗せるプロトコルの一例を示す図である。
【図３】ＥＣＵ３による異常の判定において初期＆正常時のタイムチャートである。
【図４】ＥＣＵ３による異常の判定において異常発生時のタイムチャートである。
【符号の説明】
【００２９】
１  伝送ライン
２  ＥＣＵ（送信装置）
３  ＥＣＵ（受信装置）
【図１】
2006261948.tif 000003
【図２】
2006261948.tif 000004
【図３】
2006261948.tif 000005
【図４】
2006261948.tif 000006