JP2012124747A - サイクリック通信システム、受信装置、サイクリック通信システムのサイクリック通信方法、受信装置の受信方法および受信プログラム - Google Patents
サイクリック通信システム、受信装置、サイクリック通信システムのサイクリック通信方法、受信装置の受信方法および受信プログラム Download PDFInfo
- Publication number
- JP2012124747A JP2012124747A JP2010274483A JP2010274483A JP2012124747A JP 2012124747 A JP2012124747 A JP 2012124747A JP 2010274483 A JP2010274483 A JP 2010274483A JP 2010274483 A JP2010274483 A JP 2010274483A JP 2012124747 A JP2012124747 A JP 2012124747A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- received
- packets
- scheduled
- reception
- 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
Links
Images
Landscapes
- Communication Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
【課題】パケットにシーケンス番号を設定し、または受信パケット数を受信側から送信側へ通知しなくても、パケットの消失を検出できるようにすることを目的とする。
【解決手段】送信側制御装置110は、制御周期103毎に所定の予定パケット数102のパケットを送信する。受信側制御装置200は、制御情報記憶部290と、パケット受信部210と、受信パケット計数部220と、パケット受信異常検出部230とを備える。制御情報記憶部290は、予定パケット数102を予め記憶する。パケット受信部210は、送信側制御装置110により送信されたパケット101を受信する。受信パケット計数部220は、受信されたパケット101の数を制御周期103毎に数える。パケット受信異常検出部230は、受信パケット数221と予定パケット数102とを制御周期103毎に比較し、受信できなかったパケット101の有無を判定する。
【選択図】図3
【解決手段】送信側制御装置110は、制御周期103毎に所定の予定パケット数102のパケットを送信する。受信側制御装置200は、制御情報記憶部290と、パケット受信部210と、受信パケット計数部220と、パケット受信異常検出部230とを備える。制御情報記憶部290は、予定パケット数102を予め記憶する。パケット受信部210は、送信側制御装置110により送信されたパケット101を受信する。受信パケット計数部220は、受信されたパケット101の数を制御周期103毎に数える。パケット受信異常検出部230は、受信パケット数221と予定パケット数102とを制御周期103毎に比較し、受信できなかったパケット101の有無を判定する。
【選択図】図3
Description
本発明は、サイクリック通信を行うサイクリック通信システム、受信装置、サイクリック通信システムのサイクリック通信方法、受信装置の受信方法および受信プログラムに関するものである。
特許文献1には、パケットにシーケンス番号を設定してサイクリック通信を監視する技術が開示されている。受信側の端末は、シーケンス番号の連続性が確認できなかった場合にエラーを通知する。
この技術により、受信すべきパケットが受信できなかったことを検出することができる。
しかし、パケットに設定できるシーケンス番号は有限であるため、シーケンス番号が一巡する個数のパケットがネットワークで消失してしまうとパケットの消失を検出することができない。この課題を解決するためには、タイマを併用するなど別な仕組みが必要である。
この技術により、受信すべきパケットが受信できなかったことを検出することができる。
しかし、パケットに設定できるシーケンス番号は有限であるため、シーケンス番号が一巡する個数のパケットがネットワークで消失してしまうとパケットの消失を検出することができない。この課題を解決するためには、タイマを併用するなど別な仕組みが必要である。
特許文献2には、受信側で計数した受信パケット数をパケットの消失を検出するために受信側から送信側へ通知することが記載されている。
この技術には、受信パケット数を設定したパケットがネットワークで消失してしまうと送信側でパケットの消失を検出できない、という課題がある。
また、本来のパケット通信で使用する通信帯域とは別に、受信側から送信側へ受信パケット数を通知するために通信帯域が必要になる。
この技術には、受信パケット数を設定したパケットがネットワークで消失してしまうと送信側でパケットの消失を検出できない、という課題がある。
また、本来のパケット通信で使用する通信帯域とは別に、受信側から送信側へ受信パケット数を通知するために通信帯域が必要になる。
本発明は、例えば、パケットにシーケンス番号を設定し、または受信パケット数を受信側から送信側へ通知しなくても、パケットの消失を検出できるようにすることを目的とする。
本発明のサイクリック通信システムは、所定の制御周期でパケットを通信する送信装置と受信装置とを有する。
前記送信装置は、制御周期毎に所定の予定パケット数のパケットを送信し、
前記受信装置は、
予定パケット数を記憶する予定パケット数記憶部と、
前記送信装置により送信されたパケットを受信するパケット受信部と、
前記パケット受信部により受信されたパケットの数を制御周期毎に受信パケット数として数える受信パケット計数部と、
前記受信パケット計数部により数えられた受信パケット数と前記予定パケット数記憶部に記憶された予定パケット数とを制御周期毎に比較し、受信できなかったパケットの有無を制御周期毎に判定するパケット受信判定部とを備える。
前記送信装置は、制御周期毎に所定の予定パケット数のパケットを送信し、
前記受信装置は、
予定パケット数を記憶する予定パケット数記憶部と、
前記送信装置により送信されたパケットを受信するパケット受信部と、
前記パケット受信部により受信されたパケットの数を制御周期毎に受信パケット数として数える受信パケット計数部と、
前記受信パケット計数部により数えられた受信パケット数と前記予定パケット数記憶部に記憶された予定パケット数とを制御周期毎に比較し、受信できなかったパケットの有無を制御周期毎に判定するパケット受信判定部とを備える。
本発明によれば、例えば、パケットにシーケンス番号を設定し、または受信パケット数を受信側から送信側へ通知しなくても、パケットの消失を検出することができる。
実施の形態1.
周期的に通信を行うサイクリック通信システムについて説明する。
周期的に通信を行うサイクリック通信システムについて説明する。
図1は、実施の形態1におけるサイクリック通信システム100の構成図である。
実施の形態1におけるサイクリック通信システム100の構成について、図1に基づいて説明する。
実施の形態1におけるサイクリック通信システム100の構成について、図1に基づいて説明する。
サイクリック通信システム100は、送信側制御装置110(送信装置の一例)と受信側制御装置200(受信装置の一例)とネットワーク109とを備える。
送信側制御装置110と受信側制御装置200は、ネットワーク109に接続し、ネットワーク109を介してパケット101をサイクリック通信する。
サイクリック通信とは、周期的に行う通信のことである。
送信側制御装置110と受信側制御装置200は、ネットワーク109に接続し、ネットワーク109を介してパケット101をサイクリック通信する。
サイクリック通信とは、周期的に行う通信のことである。
図2は、実施の形態1におけるサイクリック通信方法を示すフローチャートである。
実施の形態1におけるサイクリック通信方法の処理の概要について、図2に基づいて説明する。
実施の形態1におけるサイクリック通信方法の処理の概要について、図2に基づいて説明する。
S110において、送信側制御装置110と受信側制御装置200とのそれぞれの電源を入れると、送信側制御装置110と受信側制御装置200はリセットされ、制御情報(例えば、後述する予定パケット数102や制御周期103)が所定の記憶部(例えば、後述する制御情報記憶部290)に設定される。
これにより、送信側制御装置110と受信側制御装置200は、サイクリック通信が可能な状態となる。
そして、送信側制御装置110と受信側制御装置200は、同期を取ってサイクリック通信を開始する。
これにより、送信側制御装置110と受信側制御装置200は、サイクリック通信が可能な状態となる。
そして、送信側制御装置110と受信側制御装置200は、同期を取ってサイクリック通信を開始する。
例えば、送信側制御装置110と受信側制御装置200は、ネットワーク109に接続するシステム監視装置(図示省略)に通信可能状態を通知し、両方の制御装置から通知を受けたシステム監視装置は、両方の制御装置へサイクリック通信の開始を通知する。送信側制御装置110と受信側制御装置200は、システム監視装置から通知を受けたときにサイクリック通信を開始する。
または、受信側制御装置200が通信可能状態を送信側制御装置110へ通知し、通知を受けた送信側制御装置110がサイクリック通信の開始を受信側制御装置200へ通知する。そして、送信側制御装置110と受信側制御装置200は、サイクリック通信を開始する。
または、受信側制御装置200が通信可能状態を送信側制御装置110へ通知し、通知を受けた送信側制御装置110がサイクリック通信の開始を受信側制御装置200へ通知する。そして、送信側制御装置110と受信側制御装置200は、サイクリック通信を開始する。
S120において、送信側制御装置110は、制御周期内の所定のタイミングで所定の予定パケット数のパケット101をネットワーク109を介して受信側制御装置200へ送信する。
受信側制御装置200は、送信側制御装置110により送信されたパケット101をネットワーク109を介して受信する。
受信側制御装置200は、送信側制御装置110により送信されたパケット101をネットワーク109を介して受信する。
S130において、受信側制御装置200は、受信したパケット101の数と所定の予定パケット数とを比較し、ネットワーク109でのパケット消失の有無を判定する。
受信したパケット101の数と予定パケット数とが一致しなければ、つまり、受信したパケット101の数が予定パケット数より少なければ、幾つかのパケット101がネットワーク109で消失したものと考えられる。
受信したパケット101の数と予定パケット数とが一致しなければ、つまり、受信したパケット101の数が予定パケット数より少なければ、幾つかのパケット101がネットワーク109で消失したものと考えられる。
コンフィグレーション処理(S110)は、サイクリック通信システム100の起動時に実行する。
また、サイクリック通信処理(S120、S130)は、所定の制御周期毎に実行する。
また、サイクリック通信処理(S120、S130)は、所定の制御周期毎に実行する。
以下、サイクリック通信システム100の詳細について説明する。
図3は、実施の形態1における受信側制御装置200の機能構成図である。
実施の形態1における受信側制御装置200の機能構成について、図3に基づいて説明する。
実施の形態1における受信側制御装置200の機能構成について、図3に基づいて説明する。
受信側制御装置200(受信装置の一例)は、パケット受信部210、受信パケット計数部220、パケット受信異常検出部230、周期測定部240および制御情報記憶部290を備える。
制御情報記憶部290(予定パケット数記憶部、制御周期記憶部の一例)は、受信側制御装置200で使用する各種データを記憶する記憶部(メモリ、レジスタなど)である。
パケット数管理テーブル291、予定パケット数102、受信パケット数221および制御周期103は、制御情報記憶部290に記憶されるデータの一例である。
パケット数管理テーブル291、予定パケット数102、受信パケット数221および制御周期103は、制御情報記憶部290に記憶されるデータの一例である。
制御周期103は、サイクリック通信システム100の通信周期(通信間隔)として時間(例えば、秒)の値を示す。
予定パケット数102は、制御周期103に通信するパケット101の数を示す。
受信パケット数221は、パケット受信部210が受信したパケット101の数を示す。
パケット数管理テーブル291は、予定パケット数102と受信パケット数221とを対応付けたデータである。
予定パケット数102は、制御周期103に通信するパケット101の数を示す。
受信パケット数221は、パケット受信部210が受信したパケット101の数を示す。
パケット数管理テーブル291は、予定パケット数102と受信パケット数221とを対応付けたデータである。
コンフィグレーション処理(図2、S110)において、パケット数管理テーブル291は制御情報記憶部290に記憶され、予定パケット数102はパケット数管理テーブル291に設定され、制御周期103は制御情報記憶部290に設定される。
また、受信パケット数221は、コンフィグレーション処理により「0」に初期化され、パケット101が受信される度に「1」を加算され、制御周期103毎に「0」に初期化される。
また、受信パケット数221は、コンフィグレーション処理により「0」に初期化され、パケット101が受信される度に「1」を加算され、制御周期103毎に「0」に初期化される。
パケット受信部210は、送信側制御装置110により送信されたパケット101を受信する。
受信パケット計数部220は、パケット数管理テーブル291を用いて、パケット受信部210により受信されたパケット101の数を制御周期103毎に受信パケット数221として数える。
パケット受信異常検出部230(パケット受信判定部の一例)は、受信パケット計数部220により数えられた受信パケット数221と、パケット数管理テーブル291に設定された予定パケット数102とを制御周期103毎に比較する。
そして、パケット受信異常検出部230は、受信できなかったパケット101の有無(パケット消失の有無)を制御周期103毎に判定する。
そして、パケット受信異常検出部230は、受信できなかったパケット101の有無(パケット消失の有無)を制御周期103毎に判定する。
周期測定部240は、制御周期103を測定し、制御周期103が切り替わるタイミングを検出する。
図4は、実施の形態1におけるパケット数管理テーブル291を示す図である。
図4に示すように、パケット数管理テーブル291は、予定パケット数102と受信パケット数221とを対応付けたデータである。
予定パケット数102は、コンフィグレーション処理(図2、S110)でパケット数管理テーブル291に設定される。
受信パケット数221は、コンフィグレーション処理でパケット数管理テーブル291に初期設定(初期値「0」)され、パケット101が受信される度に「1」加算され、制御周期103毎に初期化される。
図4に示すように、パケット数管理テーブル291は、予定パケット数102と受信パケット数221とを対応付けたデータである。
予定パケット数102は、コンフィグレーション処理(図2、S110)でパケット数管理テーブル291に設定される。
受信パケット数221は、コンフィグレーション処理でパケット数管理テーブル291に初期設定(初期値「0」)され、パケット101が受信される度に「1」加算され、制御周期103毎に初期化される。
図5は、実施の形態1におけるサイクリック通信処理(受信側)を示すフローチャートである。
受信側制御装置200のサイクリック通信処理について、図5に基づいて説明する。
受信側制御装置200のサイクリック通信処理について、図5に基づいて説明する。
送信側制御装置110には、受信側制御装置200と同様に、予定パケット数102と制御周期103とがコンフィグレーション処理(図2、S110)により記憶される。
サイクリック通信処理が開始されると、送信側制御装置110は、制御周期103毎に予定パケット数102のパケット101を受信側制御装置200へ送信する。
サイクリック通信処理が開始されると、送信側制御装置110は、制御周期103毎に予定パケット数102のパケット101を受信側制御装置200へ送信する。
S201において、周期測定部240は、制御情報記憶部290を参照し、制御周期103を設定した制御周期タイマを起動する。
制御周期タイマは、起動後の経過時間を測定し、制御周期103が経過したときに周期測定部240にタイムアウトを通知する。
S201の後、S202に進む。
制御周期タイマは、起動後の経過時間を測定し、制御周期103が経過したときに周期測定部240にタイムアウトを通知する。
S201の後、S202に進む。
S202において、制御周期タイマがタイムアウトした場合(YES)、S220に進む。
制御周期タイマがタイムアウトしていない場合(NO)、S203に進む。
制御周期タイマがタイムアウトしていない場合(NO)、S203に進む。
S203において、パケット受信部210は、送信側制御装置110から到達したパケット101を検出すると、検出したパケット101を所定の通信バッファに記憶する。以下、検出したパケット101を所定の通信バッファに記憶することを「受信」という。
パケット受信部210がパケット101を受信した場合(YES)、S210に進む。
パケット受信部210がパケット101を受信しなかった場合(NO)、S202に戻る。
パケット受信部210がパケット101を受信した場合(YES)、S210に進む。
パケット受信部210がパケット101を受信しなかった場合(NO)、S202に戻る。
S210において、受信パケット計数部220は、現在動作している制御周期タイマが起動してから現在までにパケット受信部210が受信したパケット101の数(受信パケット数221)を以下のようにして数える。
図6は、実施の形態1における受信パケット計数処理(S210)のフローチャートである。
実施の形態1における受信パケット計数処理(S210)について、図6に基づいて説明する。
実施の形態1における受信パケット計数処理(S210)について、図6に基づいて説明する。
受信パケット計数部220は、パケット数管理テーブル291を参照し、受信パケット数221を取得する(S211)。
受信パケット計数部220は、取得した受信パケット数221に「1」を加算して新たな受信パケット数221を算出する(S212)。
受信パケット計数部220は、算出した新たな受信パケット数221をパケット数管理テーブル291に設定して受信パケット数221を更新する(S213)。
S210の後、S202に戻る。
受信パケット計数部220は、取得した受信パケット数221に「1」を加算して新たな受信パケット数221を算出する(S212)。
受信パケット計数部220は、算出した新たな受信パケット数221をパケット数管理テーブル291に設定して受信パケット数221を更新する(S213)。
S210の後、S202に戻る。
図5に戻り、サイクリック通信処理(受信側)の説明を続ける。
S220において、パケット受信異常検出部230は、受信パケット数221と予定パケット数102とが一致するか否かを以下のように判定する。
受信パケット数221と予定パケット数102とが一致した場合(YES)、S241に進む。
受信パケット数221と予定パケット数102とが一致しなかった場合(NO)、S230に進む。
受信パケット数221と予定パケット数102とが一致した場合(YES)、S241に進む。
受信パケット数221と予定パケット数102とが一致しなかった場合(NO)、S230に進む。
図7は、実施の形態1における受信パケット数比較処理(S220)のフローチャートである。
実施の形態1における受信パケット数比較処理(S220)について、図7に基づいて説明する。
実施の形態1における受信パケット数比較処理(S220)について、図7に基づいて説明する。
パケット受信異常検出部230は、パケット数管理テーブル291を参照し、受信パケット数221を取得する(S221)。
パケット受信異常検出部230は、パケット数管理テーブル291を参照し、予定パケット数102を取得する(S222)。
パケット受信異常検出部230は、受信パケット数221と予定パケット数102とを比較する(S223)。
パケット受信異常検出部230は、パケット数管理テーブル291を参照し、予定パケット数102を取得する(S222)。
パケット受信異常検出部230は、受信パケット数221と予定パケット数102とを比較する(S223)。
図5に戻り、サイクリック通信処理(受信側)の説明を続ける。
S230において、パケット受信異常検出部230は、パケット101がネットワーク109で消失したこと、つまり、受信できなかったパケット101が有ることを示すパケット消失情報231を生成し、生成したパケット消失情報231を出力する。
例えば、パケット受信異常検出部230は、パケット消失情報231をディスプレイ装置に表示し、またはサイクリック通信システム100のシステム監視装置に送信する。
S230の後、S241に進む。
例えば、パケット受信異常検出部230は、パケット消失情報231をディスプレイ装置に表示し、またはサイクリック通信システム100のシステム監視装置に送信する。
S230の後、S241に進む。
S241において、受信パケット計数部220は、パケット数管理テーブル291を参照し、パケット数管理テーブル291に設定されている受信パケット数221を「0」に更新する。
S241の後、S201に戻る。
S241の後、S201に戻る。
S201において、周期測定部240は、新たに制御周期タイマを起動する。
以上のように、受信側制御装置200は、制御周期103毎に受信パケット数221と予定パケット数102とを比較し、パケット101がネットワーク109で消失したか否かを判定する。
図8は、実施の形態1における受信側制御装置200および送信側制御装置110のハードウェア資源の一例を示す図である。
図8において、受信側制御装置200および送信側制御装置110は、CPU901(Central Processing Unit)を備えている。CPU901は、バス902を介してROM903、RAM904、通信ボード905、ディスプレイ装置911、キーボード912、マウス913、ドライブ装置914、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。ドライブ装置914は、FD(Flexible Disk Drive)、CD(Compact Disc)、DVD(Digital Versatile Disc)などの記憶媒体を読み書きする装置である。
図8において、受信側制御装置200および送信側制御装置110は、CPU901(Central Processing Unit)を備えている。CPU901は、バス902を介してROM903、RAM904、通信ボード905、ディスプレイ装置911、キーボード912、マウス913、ドライブ装置914、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。ドライブ装置914は、FD(Flexible Disk Drive)、CD(Compact Disc)、DVD(Digital Versatile Disc)などの記憶媒体を読み書きする装置である。
通信ボード905は、有線または無線で、LAN(Local Area Network)、インターネット、電話回線などの通信網に接続している。
磁気ディスク装置920には、OS921(オペレーティングシステム)、プログラム群922、ファイル群923が記憶されている。
プログラム群922には、実施の形態において「〜部」として説明する機能を実行するプログラムが含まれる。プログラムは、CPU901により読み出され実行される。すなわち、プログラムは、「〜部」としてコンピュータを機能させるものであり、また「〜部」の手順や方法をコンピュータに実行させるものである。
ファイル群923には、実施の形態において説明する「〜部」で使用される各種データ(入力、出力、判定結果、計算結果、処理結果など)が含まれる。
実施の形態において構成図およびフローチャートに含まれている矢印は主としてデータや信号の入出力を示す。
実施の形態において「〜部」として説明するものは「〜回路」、「〜装置」、「〜機器」であってもよく、また「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ファームウェア、ソフトウェア、ハードウェアまたはこれらの組み合わせのいずれで実装されても構わない。
実施の形態1において、例えば、以下のようなサイクリック通信システム100について説明した。
サイクリック通信システム100は、ネットワーク109を介して接続された送信側制御装置110と受信側制御装置200とを有する。
送信側制御装置110と受信側制御装置200は、パケット101の送受信によってデータ転送を行う。
送信側制御装置110と受信パケット計数部220はデータ転送をサイクリックに行う。送信側制御装置110は、一定周期(制御周期103)毎にパケット101を受信側制御装置200に送信する。
受信側制御装置200は、パケット検出手段(パケット受信部210)、パケット数記憶手段(制御情報記憶部290)、受信パケット数計数手段(受信パケット計数部220)、制御周期記憶手段(制御情報記憶部290)、期間測定手段(周期測定部240)およびパケット受信異常検出手段(パケット受信異常検出部230)を備える。パケット数記憶手段は、予め予測された受信すべきパケット数(予定パケット数102)と受信したパケット数(受信パケット数221)とを保持する。
送信側制御装置110と受信側制御装置200は、パケット101の送受信によってデータ転送を行う。
送信側制御装置110と受信パケット計数部220はデータ転送をサイクリックに行う。送信側制御装置110は、一定周期(制御周期103)毎にパケット101を受信側制御装置200に送信する。
受信側制御装置200は、パケット検出手段(パケット受信部210)、パケット数記憶手段(制御情報記憶部290)、受信パケット数計数手段(受信パケット計数部220)、制御周期記憶手段(制御情報記憶部290)、期間測定手段(周期測定部240)およびパケット受信異常検出手段(パケット受信異常検出部230)を備える。パケット数記憶手段は、予め予測された受信すべきパケット数(予定パケット数102)と受信したパケット数(受信パケット数221)とを保持する。
受信側制御装置200は、1制御周期内の受信すべきパケット個数(予定パケット数102)のパケット101を受信したか否かを判断する。
例えば、受信側制御装置200がパケット消失を検出したことをシステム監視装置に通知することにより、システム動作としてパケット101が受信できなかったことへの対応が可能となる。
例えば、受信側制御装置200がパケット消失を検出したことをシステム監視装置に通知することにより、システム動作としてパケット101が受信できなかったことへの対応が可能となる。
サイクリック通信システム100は、特許文献2のようにパケット消失の有無を判定するために受信側から送信側へ受信パケット数を通知する必要がないため、受信パケット数を通知するパケット自体が消失してパケット消失の有無を判定できなくなることがない。
また、サイクリック通信システム100は、受信側から送信側へ受信パケット数を通知するための通信帯域を用意する必要がない。
また、サイクリック通信システム100は、受信側から送信側へ受信パケット数を通知するための通信帯域を用意する必要がない。
実施の形態2.
送信側制御装置110が複数存在する形態について説明する。
以下、実施の形態1と異なる事項について主に説明する。説明を省略する事項は実施の形態1と同様である。
送信側制御装置110が複数存在する形態について説明する。
以下、実施の形態1と異なる事項について主に説明する。説明を省略する事項は実施の形態1と同様である。
図9は、実施の形態2におけるサイクリック通信システム100の構成図である。
実施の形態2におけるサイクリック通信システム100について、図9に基づいて説明する。
実施の形態2におけるサイクリック通信システム100について、図9に基づいて説明する。
サイクリック通信システム100は、複数の送信側制御装置110を有する。
また、サイクリック通信システム100は、パケット中継装置120を有する。
また、サイクリック通信システム100は、パケット中継装置120を有する。
各送信側制御装置110は、自己を識別する識別子を「送信元ID」としてパケット101に設定する。
サイクリック通信システム100の制御周期103は複数の割当時間に時分割され、各送信側制御装置110にはいずれかの割当時間が割り当てられる。
各送信側制御装置110は、自己に割り当てられた割当時間にパケット101を送信する。つまり、各送信側制御装置110は時分割で通信を行う。
各送信側制御装置110は、自己に割り当てられた割当時間にパケット101を送信する。つまり、各送信側制御装置110は時分割で通信を行う。
パケット中継装置120は、各送信側制御装置110により送信されたパケット101をネットワーク109を介して受信し、受信したパケット101を受信側制御装置200へ転送する。つまり、パケット中継装置120は、送信側制御装置110により送信されたパケット101を受信側制御装置200へ転送する。
受信側制御装置200の機能構成は、実施の形態1(図3参照)と同様である。
但し、制御情報記憶部290(予定パケット数記憶部の一例)は、パケット数管理テーブル291を用いて、送信側制御装置110毎に予定パケット数102を記憶する。
受信パケット計数部220は、送信側制御装置110毎に制御周期103内の受信パケット数221を数える。
パケット受信異常検出部230(パケット受信判定部の一例)は、送信側制御装置110毎に制御周期103内に受信できなかったパケット101の有無を判定する。
図10は、実施の形態2におけるパケット数管理テーブル291を示す図である。
実施の形態2におけるパケット数管理テーブル291について、図10に基づいて説明する。
実施の形態2におけるパケット数管理テーブル291について、図10に基づいて説明する。
パケット数管理テーブル291は、送信側制御装置110の識別子(図中の「送信側制御装置」)と予定パケット数102と受信パケット数221とを対応付けたデータである。
以下、送信側制御装置110の識別子と予定パケット数102と受信パケット数221との組み合わせを「レコード」という。レコードは、図10の一行に相当する。
以下、送信側制御装置110の識別子と予定パケット数102と受信パケット数221との組み合わせを「レコード」という。レコードは、図10の一行に相当する。
サイクリック通信方法の処理の流れは、実施の形態1(図2参照)と同様である。
但し、コンフィグレーション処理(S110)では、複数の送信側制御装置110と受信側制御装置200とが同期を取ってサイクリック通信を開始する。
但し、コンフィグレーション処理(S110)では、複数の送信側制御装置110と受信側制御装置200とが同期を取ってサイクリック通信を開始する。
例えば、各送信側制御装置110および受信側制御装置200は、通信可能状態を特定の送信側制御装置110(またはシステム監視装置)に通知する。
全ての送信側制御装置110および受信側制御装置200から通知を受けた特定の送信側制御装置110(またはシステム監視装置)は、全ての送信側制御装置110および受信側制御装置200へサイクリック通信の開始を通知する。
各送信側制御装置110と受信側制御装置200は、サイクリック通信の開始通知を受けたときにサイクリック通信を開始する。
全ての送信側制御装置110および受信側制御装置200から通知を受けた特定の送信側制御装置110(またはシステム監視装置)は、全ての送信側制御装置110および受信側制御装置200へサイクリック通信の開始を通知する。
各送信側制御装置110と受信側制御装置200は、サイクリック通信の開始通知を受けたときにサイクリック通信を開始する。
サイクリック通信処理(受信側)の流れは、実施の形態1(図5参照)と同様である。
但し、送信側制御装置110が複数存在することに伴い、処理内容が一部異なる。
実施の形態2におけるサイクリック通信処理(受信側)について、図5に基づいて説明する。
但し、送信側制御装置110が複数存在することに伴い、処理内容が一部異なる。
実施の形態2におけるサイクリック通信処理(受信側)について、図5に基づいて説明する。
S201において、周期測定部240は、制御情報記憶部290を参照し、制御周期103を設定した制御周期タイマを起動する。
S201の後、S202に進む。
S201の後、S202に進む。
S202において、制御周期タイマがタイムアウトした場合(YES)、S220に進む。
制御周期タイマがタイムアウトしていない場合(NO)、S203に進む。
制御周期タイマがタイムアウトしていない場合(NO)、S203に進む。
S203において、パケット受信部210がパケット101を受信した場合(YES)、S210に進む。
パケット受信部210がパケット101を受信しなかった場合(NO)、S202に戻る。
パケット受信部210がパケット101を受信しなかった場合(NO)、S202に戻る。
S210において、受信パケット計数部220は、以下のようにして、送信側制御装置110毎に受信パケット数221を数える。
S210の後、S202に戻る。
S210の後、S202に戻る。
図11は、実施の形態2における受信パケット計数処理(S210)のフローチャートである。
実施の形態2における受信パケット計数処理(S210)について、図11に基づいて説明する。
実施の形態2における受信パケット計数処理(S210)について、図11に基づいて説明する。
各パケット101には送信元の送信側制御装置110を識別する「送信元ID」が設定されている。
受信パケット計数部220は、パケット受信部210が受信したパケット101を参照し、パケット101に設定されている「送信元ID」を取得する(S211B)。
受信パケット計数部220は、パケット数管理テーブル291を参照し、送信元IDに対応する受信パケット数221を取得する(S212B)。
受信パケット計数部220は、受信パケット数221に「1」を加算して新たな受信パケット数221を算出する(S213B)。
受信パケット計数部220は、算出した新たな受信パケット数221をパケット数管理テーブル291に設定して送信元IDに対応する受信パケット数221を更新する(S214B)。
受信パケット計数部220は、パケット数管理テーブル291を参照し、送信元IDに対応する受信パケット数221を取得する(S212B)。
受信パケット計数部220は、受信パケット数221に「1」を加算して新たな受信パケット数221を算出する(S213B)。
受信パケット計数部220は、算出した新たな受信パケット数221をパケット数管理テーブル291に設定して送信元IDに対応する受信パケット数221を更新する(S214B)。
図5に戻り、サイクリック通信処理(受信側)の説明を続ける。
S220において、パケット受信異常検出部230は、以下のようにして、送信側制御装置110毎に受信パケット数221と予定パケット数102とを比較する。
全ての送信側制御装置110について受信パケット数221と予定パケット数102とが一致した場合(YES)、S241に進む。
少なくともいずれかの送信側制御装置110について受信パケット数221と予定パケット数102とが一致しなかった場合(NO)、S230に進む。
全ての送信側制御装置110について受信パケット数221と予定パケット数102とが一致した場合(YES)、S241に進む。
少なくともいずれかの送信側制御装置110について受信パケット数221と予定パケット数102とが一致しなかった場合(NO)、S230に進む。
図12は、実施の形態2における受信パケット数比較処理(S220)のフローチャートである。
実施の形態2における受信パケット数比較処理(S220)について、図12に基づいて説明する。
実施の形態2における受信パケット数比較処理(S220)について、図12に基づいて説明する。
S221Bにおいて、パケット受信異常検出部230は、パケット数管理テーブル291から未選択のレコードを一つ選択する。
例えば、パケット受信異常検出部230は、パケット数管理テーブル291の先頭レコードから順番にレコードを一つ選択する。
以下、選択したレコードを「選択レコード」という。
S221Bの後、S222Bに進む。
例えば、パケット受信異常検出部230は、パケット数管理テーブル291の先頭レコードから順番にレコードを一つ選択する。
以下、選択したレコードを「選択レコード」という。
S221Bの後、S222Bに進む。
S222Bにおいて、パケット受信異常検出部230は、選択レコードを参照し、受信パケット数221を取得する。
S222Bの後、S223Bに進む。
S222Bの後、S223Bに進む。
S223Bにおいて、パケット受信異常検出部230は、選択レコードを参照し、予定パケット数102を取得する。
S223Bの後、S224Bに進む。
S223Bの後、S224Bに進む。
S224Bにおいて、パケット受信異常検出部230は、受信パケット数221と予定パケット数102とを比較し、比較結果をメモリに記憶する。
S224Bの後、S225Bに進む。
S224Bの後、S225Bに進む。
S225Bにおいて、パケット受信異常検出部230は、パケット数管理テーブル291に未選択のレコードが残っているか否かを判定する。
未選択のレコードが残っている場合(YES)、S221Bに戻る。
未選択のレコードが残っていない場合(NO)、受信パケット数比較処理(S220)は終了する。
未選択のレコードが残っている場合(YES)、S221Bに戻る。
未選択のレコードが残っていない場合(NO)、受信パケット数比較処理(S220)は終了する。
図5に戻り、サイクリック通信処理(受信側)の説明を続ける。
S230において、パケット受信異常検出部230は、パケット101がネットワーク109で消失したこと及び消失したパケット101を送信した送信側制御装置110の識別子を示すパケット消失情報231を生成し、生成したパケット消失情報231を出力する。
S230の後、S241に進む。
S230の後、S241に進む。
S241において、受信パケット計数部220は、パケット数管理テーブル291を参照し、パケット数管理テーブル291に設定されている全ての受信パケット数221を「0」に更新する。
S241の後、S201に戻る。
S241の後、S201に戻る。
S201において、周期測定部240は、新たに制御周期タイマを起動する。
以上のように、受信側制御装置200は、パケット101がネットワーク109で消失したか否かを送信側制御装置110毎に判定する。
実施の形態3.
予定パケット数102または制御周期103を設定する設定部を備える形態について説明する。
以下、実施の形態1、2と異なる事項について主に説明する。説明を省略する事項は実施の形態1、2と同様である。
予定パケット数102または制御周期103を設定する設定部を備える形態について説明する。
以下、実施の形態1、2と異なる事項について主に説明する。説明を省略する事項は実施の形態1、2と同様である。
サイクリック通信システム100の構成は、実施の形態1(図1参照)と同じである。
図13は、実施の形態3における受信側制御装置200の機能構成図である。
実施の形態3における受信側制御装置200の機能構成について、図13に基づいて説明する。
実施の形態3における受信側制御装置200の機能構成について、図13に基づいて説明する。
受信側制御装置200は、実施の形態1の構成(図3参照)に加えて、制御情報設定部250を備える。
制御情報設定部250(予定パケット数設定部、制御周期設定部の一例)は、予定パケット数102を入力し、入力した予定パケット数102をパケット数管理テーブル291に設定する。
制御情報設定部250は、制御周期103を入力し、入力した制御周期103を制御情報記憶部290に設定する。
制御情報設定部250は、制御周期103を入力し、入力した制御周期103を制御情報記憶部290に設定する。
図14は、実施の形態3における制御情報設定処理のフローチャートである。
実施の形態3における制御情報設定処理について、図14に基づいて説明する。
制御情報設定処理は、例えば、コンフィグレーション処理(S110)の一部として実行する。
実施の形態3における制御情報設定処理について、図14に基づいて説明する。
制御情報設定処理は、例えば、コンフィグレーション処理(S110)の一部として実行する。
S111において、利用者は、予定パケット数102を初期設定または変更する必要がある場合、予定パケット数102を受信側制御装置200に指定(入力、記憶)する。
予定パケット数102が指定された場合(“要”)、S112に進む。
予定パケット数102が指定されなかった場合(“否”)、S113に進む。
予定パケット数102が指定された場合(“要”)、S112に進む。
予定パケット数102が指定されなかった場合(“否”)、S113に進む。
S112において、制御情報設定部250は、指定された予定パケット数102を入力し、入力した予定パケット数102をパケット数管理テーブル291に設定する。
S112の後、S113に進む。
S112の後、S113に進む。
S113において、利用者は、制御周期103を初期設定または変更する必要がある場合、制御周期103を受信側制御装置200に指定する。
制御周期103が指定された場合(“要”)、S114に進む。
制御周期103が指定されなかった場合(“否”)、コンフィグレーション処理(S110)は終了する。
制御周期103が指定された場合(“要”)、S114に進む。
制御周期103が指定されなかった場合(“否”)、コンフィグレーション処理(S110)は終了する。
S114において、制御情報設定部250は、指定された制御周期103を入力し、入力した制御周期103を制御情報記憶部290に設定する。
S114により、制御情報設定処理は終了する。
S114により、制御情報設定処理は終了する。
以上のように、制御情報設定部250を備えることにより、予定パケット数102や制御周期103を初期設定または変更することができる。
実施の形態2と同様に、送信側制御装置110が複数存在しても構わない。
この場合、利用者は、予定パケット数102や制御周期103を送信側制御装置110毎に指定する。制御情報設定部250は、送信側制御装置110毎に指定された予定パケット数102や制御周期103を送信側制御装置110の識別子と対応付けて設定する。
この場合、利用者は、予定パケット数102や制御周期103を送信側制御装置110毎に指定する。制御情報設定部250は、送信側制御装置110毎に指定された予定パケット数102や制御周期103を送信側制御装置110の識別子と対応付けて設定する。
100 サイクリック通信システム、101 パケット、102 予定パケット数、103 制御周期、109 ネットワーク、110 送信側制御装置、120 パケット中継装置、200 受信側制御装置、210 パケット受信部、220 受信パケット計数部、221 受信パケット数、230 パケット受信異常検出部、231 パケット消失情報、240 周期測定部、250 制御情報設定部、290 制御情報記憶部、291 パケット数管理テーブル、901 CPU、902 バス、903 ROM、904 RAM、905 通信ボード、911 ディスプレイ装置、912 キーボード、913 マウス、914 ドライブ装置、920 磁気ディスク装置、921 OS、922 プログラム群、923 ファイル群。
Claims (8)
- 所定の制御周期でパケットを通信する送信装置と受信装置とを有するサイクリック通信システムにおいて、
前記送信装置は、制御周期毎に所定の予定パケット数のパケットを送信し、
前記受信装置は、
予定パケット数を記憶する予定パケット数記憶部と、
前記送信装置により送信されたパケットを受信するパケット受信部と、
前記パケット受信部により受信されたパケットの数を制御周期毎に受信パケット数として数える受信パケット計数部と、
前記受信パケット計数部により数えられた受信パケット数と前記予定パケット数記憶部に記憶された予定パケット数とを制御周期毎に比較し、受信できなかったパケットの有無を制御周期毎に判定するパケット受信判定部とを備える
ことを特徴とするサイクリック通信システム。 - 前記サイクリック通信システムは、複数の送信装置を有し、
前記予定パケット数記憶部は、送信装置毎に予定パケット数を記憶し、
前記受信パケット計数部は、送信装置毎に制御周期内の受信パケット数を数え、
前記パケット受信判定部は、送信装置毎に制御周期内に受信できなかったパケットの有無を判定する
ことを特徴とする請求項1記載のサイクリック通信システム。 - 前記受信装置は、さらに、
予定パケット数を入力し、入力した予定パケット数を前記予定パケット数記憶部に記憶する予定パケット数設定部を備える
ことを特徴とする請求項1または請求項2記載のサイクリック通信システム。 - 前記受信装置は、さらに
制御周期を記憶する制御周期記憶部と、
制御周期を入力し、入力した制御周期を前記制御周期記憶部に記憶する制御周期設定部とを備え、
前記受信パケット計数部は、前記制御周期記憶部に記憶された制御周期に基づいて、受信パケット数を制御周期毎に数え、
前記パケット受信判定部は、前記制御周期記憶部に記憶された制御周期に基づいて、受信できなかったパケットの有無を制御周期毎に判定する
ことを特徴とする請求項1から請求項3いずれかに記載のサイクリック通信システム。 - 送信装置から制御周期毎に送信されるパケットの予定数を予定パケット数として記憶する予定パケット数記憶部と、
前記送信装置により送信されたパケットを受信するパケット受信部と、
前記パケット受信部により受信されたパケットの数を制御周期毎に受信パケット数として数える受信パケット計数部と、
前記受信パケット計数部により数えられた受信パケット数と前記予定パケット数記憶部に記憶された予定パケット数とを制御周期毎に比較し、受信できなかったパケットの有無を制御周期毎に判定するパケット受信判定部と
を備えることを特徴とする受信装置。 - 所定の制御周期でパケットを通信する送信装置と受信装置とを有するサイクリック通信システムのサイクリック通信方法において、
前記送信装置が、制御周期毎に所定の予定パケット数のパケットを送信し、
前記受信装置が、予定パケット数を記憶する予定パケット数記憶部を備え、
前記受信装置のパケット受信部が、前記送信装置により送信されたパケットを受信し、
前記受信装置の受信パケット計数部が、前記パケット受信部により受信されたパケットの数を制御周期毎に受信パケット数として数え、
前記受信装置のパケット受信判定部が、前記受信パケット計数部により数えられた受信パケット数と前記予定パケット数記憶部に記憶された予定パケット数とを制御周期毎に比較し、受信できなかったパケットの有無を制御周期毎に判定する
ことを特徴とするサイクリック通信システムのサイクリック通信方法。 - 送信装置から制御周期毎に送信されるパケットの予定数を予定パケット数として記憶する予定パケット数記憶部を備え、
パケット受信部が、前記送信装置により送信されたパケットを受信し、
受信パケット計数部が、前記パケット受信部により受信されたパケットの数を制御周期毎に受信パケット数として数え、
パケット受信判定部が、前記受信パケット計数部により数えられた受信パケット数と前記予定パケット数記憶部に記憶された予定パケット数とを制御周期毎に比較し、受信できなかったパケットの有無を制御周期毎に判定する
ことを特徴とする受信装置の受信方法。 - 送信装置から制御周期毎に送信されるパケットの予定数を予定パケット数として記憶する予定パケット数記憶部を用いる受信プログラムにおいて、
前記送信装置により送信されたパケットを受信するパケット受信処理と、
前記パケット受信処理により受信されたパケットの数を制御周期毎に受信パケット数として数える受信パケット計数処理と、
前記受信パケット計数処理により数えられた受信パケット数と前記予定パケット数記憶部に記憶された予定パケット数とを制御周期毎に比較し、受信できなかったパケットの有無を制御周期毎に判定するパケット受信判定処理と
をコンピュータに実行させる受信プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010274483A JP2012124747A (ja) | 2010-12-09 | 2010-12-09 | サイクリック通信システム、受信装置、サイクリック通信システムのサイクリック通信方法、受信装置の受信方法および受信プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010274483A JP2012124747A (ja) | 2010-12-09 | 2010-12-09 | サイクリック通信システム、受信装置、サイクリック通信システムのサイクリック通信方法、受信装置の受信方法および受信プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012124747A true JP2012124747A (ja) | 2012-06-28 |
Family
ID=46505732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010274483A Pending JP2012124747A (ja) | 2010-12-09 | 2010-12-09 | サイクリック通信システム、受信装置、サイクリック通信システムのサイクリック通信方法、受信装置の受信方法および受信プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012124747A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019082619A1 (ja) * | 2017-10-24 | 2019-05-02 | オムロン株式会社 | 通信システム、制御装置、設定装置、設定方法およびプログラム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006217437A (ja) * | 2005-02-07 | 2006-08-17 | Fujitsu Ten Ltd | 通信エラー検知機能付のゲートウェイ装置及び通信システム |
JP2009130786A (ja) * | 2007-11-27 | 2009-06-11 | Nec Corp | 通信装置、通信システム、および、通信装置間の通信品質監視方法 |
JP2009141473A (ja) * | 2007-12-04 | 2009-06-25 | Mitsubishi Electric Corp | サイクリック通信における監視装置および監視方法 |
-
2010
- 2010-12-09 JP JP2010274483A patent/JP2012124747A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006217437A (ja) * | 2005-02-07 | 2006-08-17 | Fujitsu Ten Ltd | 通信エラー検知機能付のゲートウェイ装置及び通信システム |
JP2009130786A (ja) * | 2007-11-27 | 2009-06-11 | Nec Corp | 通信装置、通信システム、および、通信装置間の通信品質監視方法 |
JP2009141473A (ja) * | 2007-12-04 | 2009-06-25 | Mitsubishi Electric Corp | サイクリック通信における監視装置および監視方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019082619A1 (ja) * | 2017-10-24 | 2019-05-02 | オムロン株式会社 | 通信システム、制御装置、設定装置、設定方法およびプログラム |
CN111066290A (zh) * | 2017-10-24 | 2020-04-24 | 欧姆龙株式会社 | 通信系统、控制装置、设定装置、设定方法以及程序 |
US11171799B2 (en) | 2017-10-24 | 2021-11-09 | Omron Corporation | Communication system, control device, setting device, setting method, and program |
CN111066290B (zh) * | 2017-10-24 | 2022-03-18 | 欧姆龙株式会社 | 通信系统、控制装置、设定装置、设定方法以及记录介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108256002B (zh) | 跨机房数据同步方法、装置、系统以及服务器 | |
EP3490304B1 (en) | Method for identifying access point and hotspot, and related products | |
CN109391991B (zh) | 一种无线链路监听的方法、配置方法、终端及网络设备 | |
TW201923606A (zh) | 針對多執行環境之i3c頻帶內中斷 | |
EP3675398A1 (en) | Check code processing method, electronic device, and storage medium | |
CN103165169A (zh) | 至 rf 通信装置的自适应等时usb 音频 | |
CA2762483A1 (en) | Field optimized, configurable wireless fire system | |
CN110808873A (zh) | 一种检测链路故障的方法及装置 | |
US10055322B2 (en) | Interpreting signals received from redundant buses | |
JP2016100725A (ja) | CAN(Controller Area Network)通信システム及びエラー情報記録装置 | |
CN106792844B (zh) | 一种数据传输方法及装置 | |
CN103139820A (zh) | 一种链路检测方法及网元 | |
CN113965494A (zh) | 用于冗余进程网络中的故障检测和角色选择的方法 | |
JP2012124747A (ja) | サイクリック通信システム、受信装置、サイクリック通信システムのサイクリック通信方法、受信装置の受信方法および受信プログラム | |
CN107608711A (zh) | 升级方法、装置、系统和电子设备 | |
EP3349138A1 (en) | Communication destination determination device, communication destination determination method, and recording medium | |
CN113709870A (zh) | 一种确定信息传输位置的方法及装置 | |
JP6275882B2 (ja) | アクセス端末によって監視周波数チャネル番号を切り換えるための方法、およびアクセス端末 | |
JP5442575B2 (ja) | 通信機器 | |
CN105119994B (zh) | 一种文件传输方法及系统 | |
WO2021024786A1 (ja) | 情報処理装置および正規通信判定方法 | |
CN113595697B (zh) | Dai计数方法、dai计数控制方法、终端及网络设备 | |
JP2012065071A (ja) | 中継装置、中継システム、及び中継プログラム | |
CN109150359B (zh) | 一种空调机组的时间同步方法及装置 | |
JP3609701B2 (ja) | 単方向シリアルデータ通信方式におけるエラーデータ報知方法及び報知システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130905 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140611 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140617 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20141104 |