JP6571628B2 - サイクリック通信システム - Google Patents

サイクリック通信システム Download PDF

Info

Publication number
JP6571628B2
JP6571628B2 JP2016232060A JP2016232060A JP6571628B2 JP 6571628 B2 JP6571628 B2 JP 6571628B2 JP 2016232060 A JP2016232060 A JP 2016232060A JP 2016232060 A JP2016232060 A JP 2016232060A JP 6571628 B2 JP6571628 B2 JP 6571628B2
Authority
JP
Japan
Prior art keywords
data
communication
transmission
cyclic
memory
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.)
Active
Application number
JP2016232060A
Other languages
English (en)
Other versions
JP2018088210A (ja
Inventor
和生 増濱
和生 増濱
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2016232060A priority Critical patent/JP6571628B2/ja
Publication of JP2018088210A publication Critical patent/JP2018088210A/ja
Application granted granted Critical
Publication of JP6571628B2 publication Critical patent/JP6571628B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Multi Processors (AREA)

Description

この発明は、複数の端末(通信ノード)がネットワーク(伝送路)を介して、サイクリック通信を行うネットワークシステムで、特に、例えば産業用のサイクリックデータおよび画像データのように一定の更新期間を要求される用途で、かつ物理層は汎用のイーサネット(登録商標)などを使用したサイクリック通信システムに関するものである。
従来のサイクリック通信システムにおいては、複数の端末がネットワーク上に一定周期で送信し、受信する端末がメモリイメージで最新データを格納し、そのメモリを読出している(例えば、特許文献1、特許文献2を参照)。
特許文献1は、サイクリック用メモリをプロセッサが読出し/書込みをする際、通信フレームの受信/送信を停止させることにより、プロセッサが読み出したデータの同時性を保証している。
また、特許文献2では、プロセッサが読出し/書込みした時、通信フレームが受信/送信している場合は、読出し/書込みを停止させることにより、プロセッサが読み出したデータの同時性を保証している。
また、特許文献5は、サイクリック用メモリをプロセッサが読出し/書込みをする際、サイクリック通信データを送受信する処理を、そのままとして部品コストを増加させる通信バッファや複雑な通信制御をすることなく、通信フレーム内にカウンタ値を設けて、受信データを格納したメモリを参照して新旧データが混在していない時に面切替する機能を実現し、複数の通信フレーム時の大容量データでも、プロセッサが同時性を確保したサイクリック通信データを常に読出しできるようにして、プロセッサ処理の負荷を軽減させている。
特開2007−328589号公報(第4〜5頁、第1図) 特開平9−269934号公報(第4〜6頁、第1図) 特開平10−210085号公報(第4〜6頁、第1図) 特開昭62−295157号公報(第3〜5頁、第1図) 特開2015−82271号公報(第6〜11頁、第1図)
従来のサイクリック通信システムは、以上のように構成されているので、送信端末の通信フレーム送信周期と受信端末のプロセッサ読出し周期が同期されていなくても、プロセッサが読み出したサイクリックデータの範囲の中で、旧データ(読出したデータ内で、通信フレームの送信周期が1回前のデータ)と新データ(読出したデータ内で、通信フレームの送信周期が旧データより1回後のデータ)が混在することがない。
このため、混在したサイクリックデータをプロセッサが読み出して、プロセッサ上のアプリケーションが処理して、誤った動作を引き起こす問題が解消されている。
しかし、プロセッサが読み出したデータの同時性を保証している反面、同時性を保障するため、読み出しが遅れるため、高優先の通信フレームが遅れる問題があった。
特許文献1は、サイクリック用メモリをプロセッサが読出し/書込みをする際、通信フレームの受信/送信を停止させることにより、プロセッサが読み出したデータの同時性を
保証している。しかし、通信フレームの受信/送信を停止させるため、高優先の通信フレームの受信/送信が待たされて、通信システムの性能が低下する問題があった。
また、特許文献2では、プロセッサが読出し/書込みした時、通信フレームが受信/送信している場合は、読出し/書込みを停止させることにより、プロセッサが読み出したデータの同時性を保証している。しかし、読出し/書込みを停止させた後、しばらく待ってから、プロセッサが最初から読出し/書込みを行うため、プロセッサ性能が低下する問題があった。
さらに、特許文献3では、特許文献2に記載されたプロセッサ性能の低下を解決する手段として、プロセッサが読出し/書込みするサイクリック用メモリ(1面)と、受信/送信時に通信制御部が読出し/書込みするサイクリック用メモリ(2面)を物理的に分けて、通信フレームが受信/送信している場合でも、プロセッサが常に読出し/書込みできるようにして、プロセッサ性能を低下しないようにしている。
しかし、ひとつの通信フレーム単位で受信/送信する毎に、1面/2面を切り替えてデータの同時性を保証するので、複数の通信フレームに分割された大容量データの同時性を保証する際、プロセッサが複数の通信フレームのデータ内容を解析してから、データを処理することとなり、複数の通信フレーム時にはプロセッサ性能が低下する問題が残っている。
また、特許文献4も、特許文献2に記載されたプロセッサ性能の低下を解決する手段として、サイクリック用メモリを用途に応じて、物理的に3面所持して、通信フレームが受信している場合でも、プロセッサが常に読出しできるようにして、プロセッサ性能を低下しないようにしている。
しかし、特許文献3と同様に、一つの通信フレーム単位で受信する毎に、3面を切り替えてデータの同時性を保証するので、複数の通信フレーム時にはデータの同時性を保証できない。このため、複数の通信フレーム時にはプロセッサ性能が低下する問題が残っている。
さらに、特許文献5では、サイクリック用メモリをプロセッサが読出し/書込みをする際、サイクリック通信データを送受信する処理を、そのままとして部品コストを増加させる通信バッファや複雑な通信制御をすることなく、通信フレーム内にカウンタ値を設けて、受信データを格納したメモリを参照して新旧データが混在していない時に面切替する機能を実現し、複数の通信フレーム時の大容量データでもプロセッサが同時性を確保したサイクリック通信データを常に読出しできるようにして、プロセッサ処理の負荷を軽減させている。
しかしながら、同時性保障するために面切り替えが待たされて、通信システムの性能が低下する問題があった。
この発明は、上述のような課題を解決するためになされたものであり、複数の通信フレームからなる大容量データにおいても同時性を確保しつつ、高優先通信フレームの通信高速化を行えるサイクリック通信システムを得ることを目的とする。
この発明に係わるサイクリック通信システムにおいては、複数の端末がネットワークを介してサイクリック通信を行うサイクリック通信システムであって、端末は、サイクリック通信に使用されるデータを格納するサイクリック用メモリ、サイクリック用メモリの送信データから通信フレームを作成し、この作成した通信フレームを送信するとともに、ネットワークを介して受信した通信フレーム内の受信データをサイクリック用メモリに格納する通信制御部、受信データが書き込まれる書込み側メモリと、受信データが読み出される読み出し側メモリとを有する受信データメモリ、受信データメモリの書込み側メモリと読み出し側メモリとを互いに切り替える受信データ切替部、およびサイクリック用メモリから受信データを受信データメモリにコピーするデータ監視制御部を備え、サイクリック通信データを複数の通信フレームによって送受信する場合の各データの同時性を確保するために、通信フレームには、サイクリック通信の周期ごとにカウントされるカウンタ値が付加されるとともに、優先的に処理する必要のある通信フレームには高優先フラグが付与され、受信データ切替部は、カウンタ値を用いて、各データの同時性を確認してから書込み側メモリと読み出し側メモリとを切り替え、データ監視制御部は、高優先フラグの付いていない受信データについては、受信データメモリの書込み側メモリにコピーするとともに、高優先フラグの付いた受信データについては、受信データメモリの読み出し側メモリにコピーするものである。
この発明によれば、複数の端末がネットワークを介してサイクリック通信を行うサイクリック通信システムであって、端末は、サイクリック通信に使用されるデータを格納するサイクリック用メモリ、サイクリック用メモリの送信データから通信フレームを作成し、この作成した通信フレームを送信するとともに、ネットワークを介して受信した通信フレーム内の受信データをサイクリック用メモリに格納する通信制御部、受信データが書き込まれる書込み側メモリと、受信データが読み出される読み出し側メモリとを有する受信データメモリ、受信データメモリの書込み側メモリと読み出し側メモリとを互いに切り替える受信データ切替部、およびサイクリック用メモリから受信データを受信データメモリにコピーするデータ監視制御部を備え、サイクリック通信データを複数の通信フレームによって送受信する場合の各データの同時性を確保するために、通信フレームには、サイクリック通信の周期ごとにカウントされるカウンタ値が付加されるとともに、優先的に処理する必要のある通信フレームには高優先フラグが付与され、受信データ切替部は、カウンタ値を用いて、各データの同時性を確認してから書込み側メモリと読み出し側メモリとを切り替え、データ監視制御部は、高優先フラグの付いていない受信データについては、受信データメモリの書込み側メモリにコピーするとともに、高優先フラグの付いた受信データについては、受信データメモリの読み出し側メモリにコピーするので、複数の通信フレームからなる大容量データでも同時性を確保させた上で、高優先通信フレームの通信高速化を行なうことができる。
この発明の実施の形態1によるサイクリック通信システムを示す全体構成図である。 この発明の実施の形態1によるサイクリック通信を示すイメージ図である。 この発明の実施の形態1によるサイクリック通信のタイミングを示す図である。 従来技術のサイクリック用メモリからの読出しの問題点を説明するためのタイミング図である。 この発明の実施の形態1によるサイクリック通信システムの端末の構成を示すブロック図である。 この発明の実施の形態1によるサイクリック通信システムの受信フレームフォーマットを示す図である。 この発明の実施の形態1によるサイクリック通信システムの送信マップを示すイメージ図である。 この発明の実施の形態1によるサイクリック通信システムの受信マップを示すイメージ図である。 この発明の実施の形態1によるサイクリック通信システムのサイクリック用メモリの受信データの読み出しを示すタイミング図である。 この発明の実施の形態2によるサイクリック通信システムの端末の構成を示すブロック図である。 この発明の実施の形態2によるサイクリック通信システムの受信マップを示すイメージ図である。 この発明の実施の形態3によるサイクリック通信システムの端末の構成を示すブロック図である。 この発明の実施の形態3によるサイクリック通信システムの送信衝突履歴部を示すイメージ図である。 この発明の実施の形態3によるサイクリック通信システムの送信処理を示すフローチャートである。 この発明の実施の形態4によるサイクリック通信システムの端末の構成を示すブロック図である。 この発明の実施の形態4によるサイクリック通信システムの送信マップを示すイメージ図である。 この発明の実施の形態4によるサイクリック通信システムの送信処理を示すフローチャートである。 この発明の実施の形態5によるサイクリック通信システムの端末の構成を示すブロック図である。 この発明の実施の形態5によるサイクリック通信システムの送信処理を示すフローチャートである。
実施の形態1.
図1は、この発明の実施の形態1によるサイクリック通信システムを示す全体構成図である。
図1において、通信ノードである端末A1、端末B2、端末C3は、伝送路のネットワーク4を介して、サイクリック通信フレームの送受信を行うとともに、アプリケーションを実行してシステムを稼働させている。端末A1、端末B2、端末C3の内部構成は、後述するように全て同じである。
端末A1、端末B2、端末C3は、それぞれサイクリック通信のデータを格納するサイクリック用メモリ11a、11b、11cをもっている。
なお、以下では、サイクリック通信フレームを受信フレームまたは送信フレームとも称する。
図2は、この発明の実施の形態1によるサイクリック通信を示すイメージ図である。
図2において、端末Aからみた場合、自身(端末A)が送信するデータを111a〜113aで示し、他端末である端末B/Cで受信し格納されたデータは111b〜113b/111c〜113cで示す。
同様に端末Bが送信するデータを114b〜116b、端末Aで受信し格納されたデータを114a〜116aで示す(端末Cが送信する場合も同様で、それぞれ117c〜119cと117a〜119aで示す)。
なお、一つの端末が送信するデータは複数個のデータを含んでいるため、図2上ではアドレスが連続したデータを#1〜#3で示す(例:端末Aが端末Bから送信されたデータは#1が114a、#2が115a、#3が116a)。
以上のように、サイクリック通信では、一つの端末上のサイクリック用メモリ11aを参照することで、ネットワーク4上に接続されている全ての端末のデータが、メモリイメージで参照できることを特徴としている。
図3は、この発明の実施の形態1によるサイクリック通信のタイミングを示す図である。
図3において、図2のサイクリック通信イメージの通り、サイクリック通信では、一つの端末上のサイクリック用メモリ11aを参照することで、ネットワーク4上に接続され
ている全ての端末のデータが、メモリイメージで参照できることを示している。
なお、サイクリック通信フレームは、送信する端末それぞれで持つ非同期タイミングで送信され、全ての端末は全ての通信フレームを受信し、サイクリック用メモリ11aに格納することを示している。
図4は、従来技術のサイクリック用メモリからの読出しの問題点を説明するためのタイミング図である。
図4において、データ♯1、♯2、♯3の受信タイミングがずれることにより、3回目データと4回目データの新旧データが混在する期間が生じる。この混在期間にプロセッサが読出した場合、サイクリック通信データの中で新旧データの混在状態で読出される。
データ#1の114aでは新データを読み出しているが、データ#2の115aでは旧データを読み出したため、データの同時性が保証できなくなり、プロセッサ内のアプリケーションが誤動作するタイミングがあることを示している。
このように、データ同時性確保のための機能を持たない場合には、同時性が保証できないタイミングが生じている。
図5は、この発明の実施の形態1によるサイクリック通信システムの端末の構成を示すブロック図である。
図5において、符号1〜3、11a、11b、11cは図1におけるものと同一のものである。図5は、図1の端末A1の内部構成を示している。なお、端末B2、端末C3も同じ構成である。
図5では、基本的には、サイクリック通信による受信データは、サイクリック用メモリ11aに格納され、プロセッサ14aがプロセッサ制御部1015aに指示して、データの同時性を保証するための構成及びメモリ制御部12aを介して読出す。
自端末が送信する送信データは、プロセッサ14aが、プロセッサ制御部1015aに指示して、データの同時性を保証するための構成及びメモリ制御部12aを介してサイクリック用メモリ11aに書込むようになっている。
ここで、データの同時性を保証するための構成は、後述するデータ監視制御部2021a、送信データ切替部22a、送信データメモリ23a、送信データメモリ24a、送信マップ28a、受信データ切替部25a、受信データメモリ26a、受信データメモリ27a、受信マップ29aを有している。
通信制御部13aは、サイクリック通信フレームを送受信させる制御を行う。メモリ制御部12aは、サイクリック用メモリ11aへのデータのリード/ライトを実行する。
通信制御部13aは、ネットワーク4からサイクリック通信により受信した受信フレーム内のデータ及び後述するカウンタ値を、メモリ制御部12a経由でサイクリック用メモリ11aへ書込むとともに、サイクリック用メモリ11aから送信データの読出しを行い、送信フレームを生成して、自端末の周期でネットワーク4へ送信する。
プロセッサ14aは、アプリケーションを実行するとともに、プロセッサ制御部1015aに対し、サイクリック用メモリ11aに対するデータの読出し/書込みを指示する。
プロセッサ制御部1015aは、プロセッサ14aの指示を受けて、サイクリック用メモリ11aに対するデータの読出し/書込みを行い、読出したデータをプロセッサ14aに返す。
ただし、このときのプロセッサ制御部1015aの読出し/書込み要求先は、送信データ切替部22aと受信データ切替部25aとする。読出しの場合は、受信データ切替部25a、書込みの場合は、送信データ切替部22aが要求先である。
送信データメモリ23aと、送信データメモリ24aとは一対で、送信データ切替部22aによって一方を読出し側(読出し側メモリ)、他方を書込み側(書込み側メモリ)とする切替え(面切替え)が行われる。書込み側のときは、プロセッサ制御部1015aによりサイクリック通信データが書込まれる。読出し側のときは、後述するデータ監視制御部2021aによりサイクリック通信データが読出され、サイクリック用メモリ11aにコピーされる。
受信データメモリ26aと受信データメモリ27aとは一対で、受信データ切替部25aによって読出し側と書込み側が切替えられる。読出し側のときは、プロセッサ制御部1015aにより受信データが読出される。書込み側のときは、後述するデータ監視制御部2021aにより、サイクリック用メモリ11aからの受信データがコピーされる。
データ監視制御部2021aは、通信制御部13aによるサイクリック通信フレームの受信処理とは無関係な一定周期で、メモリ制御部12a経由で、サイクリック用メモリ11aの受信データを読出し、書込み側の受信データメモリに、コピーする。
受信データ切替部25aは、データ監視制御部2021aのコピー処理とは無関係に、後述する受信マップ29aを参照して、受信データメモリ26aと受信データメモリ27aとの面(書込み側と読出し側)の切替えを行う。
送信データ切替部22aは、プロセッサ制御部1015aの書込み要求を監視し、送信マップ28aを参照して、送信データメモリ23a/24aの面(書込み側と読出し側)を切替える。
データ監視制御部2021aは、サイクリック通信データの送信データメモリの書込み側への書込み処理とは無関係な一定周期で、読出し側の送信データメモリのデータを読出し、サイクリック用メモリ11aにメモリ制御部12a経由でコピーする。
図5では、データ監視制御部2021aが、後述する高優先フラグ付きの通信フレームについては、面切替えに関わらず、プロセッサ14aが読み出す面の受信データメモリにも直接コピーして、通信の高速化をすることにより、送受信するプロセッサ間で複数フレーム間のデータ同時性が不要、且つ優先的に通信速度を向上させたい高優先データの高速化を図ることで、通信システム全体の通信性能を向上させる。
図6は、この発明の実施の形態1によるサイクリック通信システムの受信フレームフォーマットを示す図である。
図6において、受信フレーム2005は、ネットワーク4上に流れるサイクリック通信フレームのフォーマットである。
ノードID5aは、受信する端末を示すが、サイクリック通信の場合は、全ての端末を示すALL−Fとする。ブロックNO5bは、各端末ごとかつサイクリック通信データごとにユニークに付与されたサイクリック通信データの番号、オフセット5cは、サイクリック用メモリ11aに格納する先頭アドレス、サイズ5dは、その受信フレーム2005のデータサイズ、データ5eは、サイクリック用メモリ11aに格納すべきデータである。
図6では、サイクリック通信フレームを送信する周期毎に加算するカウンタ値5f/5gを、データ5e領域の先頭と最後に配置させることで、読出し時に、同じサイクリック通信データのすべての受信フレーム2005の先頭と最後のカウンタ値が一致すれば、新データと旧データが混在していないことを証明できるようにしている。(図9のカウンタ値参照)
さらに、受信フレーム2005の最後にFCS(Frame Check Sequence)値5h(CRC(Cyclic Redundancy Check)などのフレームチェックシーケンス)を設けることで、受信時にFCS値5hのチェックをして、受信フレーム2005内のデータの正当性を保証できるようにしている。
高優先フラグ5kは、複数フレーム間のデータ同時性を不要とし、且つ優先的に通信速度を向上させる高優先フレームであることを示す。
図6では、受信フレーム2005が、複数フレーム間のデータ同時性を不要とし、且つ優先的に通信速度を向上させたい高優先フレームであることを示す高優先フラグ5kを、データ領域の先頭に配置させることで、データ監視制御部2021aが、この高優先フラグ付の受信データを面切替えに関わらず、プロセッサ14aが読み出す面の受信データメモリにコピーできるようにする。
図7は、この発明の実施の形態1によるサイクリック通信システムの送信マップを示すイメージ図である。
図7において、送信マップ28aは、自端末が送信する全てのサイクリック通信データについて、通信フレーム内の格納するブロックNO5bとオフセット5cとサイズ5dを対応付けて、通信フレーム毎に登録している。
但し、サイクリック通信データが大容量になった場合、サイクリック通信データを分割して通信フレームが複数になるため、通信フレーム内のオフセット5cとサイズ5dは通信フレームによって変化する。
例えば、通信フレームの最大サイズが4Kbyteであった場合、サイクリック通信データが12Kbyteの時は、三つの通信フレームに分割されるので、サイズは三つとも4Kbyteとなるが、オフセットは一つ目の通信フレームのオフセットアドレスに4Kbyteずつ加算したものを二つ目以降の通信フレームのオフセット5cに配置する。
送信データ切替部22aは、送信データメモリ23a/24aに送信データを書込みする都度、送信マップ28aに登録されたオフセット5cとサイズ5dの連続アドレス領域が全て書込みされたことを判断すれば、送信データメモリ23a/24aの面を瞬時に切り替えて、データ監視制御部2021aが常に同時性を確保したデータを送信データメモリ23a/24aから読出しできるようにする。
図8は、この発明の実施の形態1によるサイクリック通信システムの受信マップを示すイメージ図である。
図8において、受信マップ29aは、自端末が受信する全てのサイクリック通信データについて、オフセット5cとサイズ5dを対応付けて、サイクリック通信データの連続アドレス領域毎に登録している。
受信データ切替部25aは、データ監視制御部2021aの動作とは無関係に一定周期で書込み側の受信データメモリ27aを参照して、オフセット5cとサイズ5dからカウンタ値5f/5gのアドレスを計算して読出し、連続アドレス領域内の全てのカウンタ値5f/5gが一致した時に、受信データメモリ26a/27aの面を瞬時に切り替えて、プロセッサ制御部1015aが常に同時性を確保したデータを受信データメモリ26a/27aから読出しできるようにする。
例えば、サイクリック通信データのサイズが12Kbyteであった場合、通信フレームは三つとなり、カウンタ値5f/5gは先頭と最後が三つあるので全6つのカウンタ値5f/5gを全て参照することになる。
次に、動作について説明する。
(1)まず、高優先フラグ付きでない受信フレームの場合の処理について説明する。
通信制御部13aは、通信フレームを受信する毎に、通信フレーム内のFCS値5hを使って通信フレーム内の正当性を保証できた通信フレームを、メモリ制御部12a経由でサイクリック用メモリ11aに転送することで、通信フレーム内のデータ5eとカウンタ値5f/5gを書き込む。
データ監視制御部2021aは、この通信フレームの受信処理とは無関係な一定周期で
サイクリック用メモリ11aを読み出し、書込み側の受信データメモリ27aに、通信フレーム内のデータ5eとカウンタ値5f/5gをコピーする。
受信データ切替部25aは、データ監視制御部2021aのコピー処理とは無関係に一定周期で書込み側の受信データメモリ27aを読み出し、受信マップ29aを参照して、連続アドレス領域のサイクリック通信データ内のカウンタ値5f/5gが全て一致した時に、受信データメモリ26a/27aの面を切り替える。
そして、プロセッサ14aは、プロセッサ制御部1015a経由で読出し側の受信データメモリ26aに読出し要求すると、常に受信マップ29aに登録されたサイクリック通信データ単位で同時性を確保したデータを読み出せる。
上記の受信処理により、サイクリック通信データ単位で同時性を確保できるようになるが、送信処理でも通信フレーム内のデータ同時性を確保しなければならない。プロセッサ14aは、常にプロセッサ制御部1015a経由で書込み側の送信データメモリ23aに書込み要求できる。
送信データ切替部22aは、プロセッサ制御部1015aの書込み要求を監視して、送信マップ28aのオフセット5cとサイズ5dで示される連続アドレスが全て書込みされたことを検知してから、送信データメモリ23a/24aの面を切り替える。
データ監視制御部2021aは、サイクリック通信データの書込み処理とは無関係な一定周期で読出し側の送信データメモリ24aを読み出し、サイクリック用メモリ11aにメモリ制御部12a経由で、通信フレーム内のデータ5eをコピーする。
通信制御部13aが自端末のサイクリック送信周期に従い、メモリ制御部12a経由でサイクリック用メモリ11aを読み出して、サイクリック通信フレームを送出する。この時に、送信周期毎に加算するカウンタ値5f/5gを、通信制御部13aが通信フレーム内に配置する。
このような送信データメモリ23a/24aの面切替えにより、サイクリック通信データ単位で同時性を確保したデータを自端末から送信できるようになる。
次に、図9を用いて、サイクリック用メモリ11aの受信データを読み出すタイミングについて説明する。
複数の通信フレーム(図9のデータ#1〜データ#3)をサイクリック用メモリ11aに格納するまでの時間がかかるため、データ監視制御部2021aが、一定周期でサイクリック用メモリ11aを読み出すタイミングによっては、旧データ(図9の3回目)と新データ(図9の4回目)が混在したサイクリック通信データを読み出すことがある。
図9では、書込み側の受信データメモリ27aに4回目のデータ#1が書き込まれた時から新旧データが混在するサイクリック通信データとなるが、混在時には受信データ切替部25aが受信データメモリ26a/27aの面を切り替えないので、プロセッサ14aが読出し側の受信データメモリ27aから読み出すサイクリック通信データは、3回目の旧データのままであり、データの同時性を確保できるようにしている。
すなわち、受信データ切替部25aは、一定周期で書込み側の受信データメモリ27aを読み出し、受信マップ29aに登録されたオフセット5cとサイズ5dを元にカウンタ値5f/5gが全て同じ値になった時に、受信データメモリ26a/27aの面を切り替えるが(図9では2回目から3回目のデータに切り替えている)、カウンタ値5f/5gが全て同じ値にならない時には、受信データメモリ26a/27aの面を切り替えないようにする。
その後、カウンタ値5f/5gが同じ値の受信データが、書込まれた際に、カウンタ値5f/5gの小さい値の受信データを上書きし、カウンタ値5f/5gが全て同じ値になった時に、受信データメモリ26a/27aの面を切り替える。
(2)次に、高優先フラグ付きの受信フレームの場合の処理について説明する。
図9で、高優先フラグ付きのデータ#2に限っては、プロセッサ制御部1015aが即座に読み出せるように、データ監視制御部2021aが受信データメモリ26a/27a両面ともに書込む。すなわち、読み出す面の受信データメモリにも書込むようにする。
こうすることで、受信データ切替部25aは、高優先フラグ付きでない受信フレームの場合の上述の処理を行っていても、プロセッサ制御部1015aが高優先フラグ付きのデータ#2を即座に読み出すことができる。
実施の形態1によれば、サイクリック通信フレームの送受信処理で、通信フレーム内のデータ同時性を確保する動作中であっても、プロセッサ制御部1015aが高優先フラグ付きのデータを即座に読み出すことができる。
実施の形態2.
図10は、この発明の実施の形態2によるサイクリック通信システムの端末の構成を示すブロック図である。
図10において、符号1、11a〜14a、22a〜28a、1015aは図5におけるものと同一のものである。図10では、図11に後述する受信マップ3029aを有し、データ監視制御部3021aは、受信マップ3029aを参照して、単一フレームかどうかを判断する。
図11は、この発明の実施の形態2によるサイクリック通信システムの受信マップを示すイメージ図である。
図11において、5c、5dは図8におけるものと同一である。図11では、受信マップ3029aに、送信マップ28aと同じブロックNO5bを付加している。自端末が受信する全てのサイクリック通信データにおいて、オフセット5cとサイズ5dを対応付けて、サイクリック通信データの連続アドレス領域毎に登録するだけでなく、ブロックNO5bも対応付けている。
実施の形態2は、送信マップと同じブロックNO5bを付加した受信マップ3029aを、データ監視制御部3021aが参照できるようにしている。
データ監視制御部3021aは、受信データの通信フレーム内のブロックNO5bを抽出し、受信マップ3029a内の該当するブロックNO5bが一つしか登録されていない場合、単一フレームと判断する。
単一フレームと判断された場合、実施の形態1の高優先フラグ付きデータと同様に処理することで、受信データの同時性を確保したまま、単一フレームの通信性能を向上することができる。
実施の形態2によれば、データ監視制御部が単一フレームかどうかを判断でき、受信データの同時性を確保したまま、単一フレームの通信性能を向上することができる。
実施の形態3.
図12は、この発明の実施の形態3によるサイクリック通信システムの端末の構成を示すブロック図である。
図12において、符号1、11a〜14a、22a〜28a、1015a、3029aは図10におけるものと同一のものである。送信衝突検出部4050aは、例えばCSMA/CD(Carrier Sense Multiple Access/Collision Detection)方式のように送信動作中に常に受信して自身が送信したデータと異なるデータを受信した場合に衝突と判断する。
送信衝突履歴情報4052a(送信衝突履歴情報部)には、衝突したフレームのフレー
ム送信情報が登録される。衝突検出信号4051aは、衝突が発生したことを示す信号であり、送信衝突検出部4050aからデータ監視制御部4021aに通知される。データ監視制御部4021aは、送信衝突履歴情報4052aの登録順序に従い、消失した通信フレームを再送信する。
図13は、この発明の実施の形態3によるサイクリック通信システムの送信衝突履歴部を示すイメージ図である。
図13において、送信衝突履歴情報4052aは、図7の送信マップと同じフォーマットであり、自端末が再送信するサイクリック通信データにおいて、ブロックNO5bとオフセット5cとサイズ5dを対応付けて、再送信するべきサイクリック通信データが登録される。
実施の形態3は、ネットワーク上に通信フレームが存在している時間帯で、通信制御部13aが通信フレームを送信した時に、二つの通信フレームが衝突したことを検出して、全ての送信が完了した後で、衝突時に消失した通信フレームを再送信して、ネットワークのデータ損失を回避する。
送信衝突検出部4050aは、例えばCSMA/CD方式のように送信動作中に常に受信して自身が送信したデータと異なるデータを受信した場合に衝突と判断し、送信動作を緊急停止して受信動作に切り替えて、衝突が発生したことを示す衝突検出信号4051aによりデータ監視制御部4021aに通知する。
この通知する手段として、送信衝突検出部4050aが送信衝突履歴情報4052aを生成し、衝突したフレームのブロックNO5b、オフセット5c、サイズ5dのように次回再送信できるフレーム送信情報を登録する。
データ監視制御部4021aは、送信マップ28aに登録された通信フレームを全て送信した後で、送信衝突履歴情報4052aの登録順序に従い、消失した通信フレームを再送信することで、フレーム衝突が多発する状態でも通信データを確実に送受信できるようにする。
次に、図14を用いて、実施の形態3のデータ監視制御部4021aの送信処理について説明する。
データ監視制御部4021aが持つ送信周期タイミングに従い、送信開始する時刻になるまで待った後(ステップS1)、送信開始になれば、送信マップ28aを参照して、送信手順(ブロックNO5bとオフセット5cとサイズ5d)を取得する(ステップS2)。
この取得した情報を元に送信データメモリ(読出し側)24aから送信データを読み出して(ステップS3)、メモリ制御部12aに転送する(ステップS4)。
以上の処理を送信マップ28aに登録された回数まで繰り返して、送信完了させる(ステップS5)。送信完了後、衝突検出信号4051aの通知があった場合(ステップS6)、送信衝突履歴情報4052aを参照し、再送信するフレーム(ブロックNO5bとオフセット5cとサイズ5d)を全て取得し(ステップS7)、予め設定した時間を待った後、登録順序に従い送信手順を決定する(ステップS8)。
送信手順に従う処理は、上記の通常送信と同じく行う。すなわち、決定した送信手順に従い、送信データメモリ(読出し側)24aから送信データを読み出して、設定した一定時間を待つ(ステップS9)。そして、送信データをメモリ制御部12aに転送する(ステップS10)。
再送信が完了したら(ステップS11)、送信処理を終了し、送信開始待ちに戻る。
実施の形態3によれば、通信フレームの衝突により消失した通信フレームを再送信することで、通信フレーム衝突が多発する状態でも、通信データを確実に送受信できるように
して、ネットワークのデータ損失を回避することができる。
また、ネットワーク上で送受信のどちらか一方しか処理できない半二重ネットワークにも対応することができる。
実施の形態4.
図15は、この発明の実施の形態4によるサイクリック通信システムの端末の構成を示すブロック図である。
図15において、符号1、11a〜14a、22a〜27a、1015a、3029a、4050a〜4052aは図12におけるものと同一のものである。図15の端末A1は、再送信する通信フレームの優先順位を有する送信マップ5028aと、この送信マップ5028aを参照するデータ監視制御部5021aを有している。
図16は、この発明の実施の形態4によるサイクリック通信システムの送信マップを示すイメージ図である。
図16において、5b、5c、5dは図7におけるものと同一のものである。図16の送信マップ5028aは、再送信する順番を決めるための優先順位5mを有する。優先順位5mは、例えば、最高優先であれば1、最低優先であれば5に設定するものとし、同一であれば先頭行から順次送信するように決められている。
実施の形態4は、全ての送信が完了した後で、予め設定された優先順位に従い、衝突時に消失した通信フレームを再送信して、ネットワークのデータ損失を回避するようになっている。
送信マップ5028aに登録された通信フレームを全て送信した後で、送信衝突履歴情報4052aに登録された全ての再送信フレームについて、送信マップ5028aの優先順位5mを取得して、その優先順位に従い、消失した通信フレームを再送信する送信手順を見直すようにした。
これにより、フレーム衝突が多発する状態でも、緊急度の高いデータを優先的に送受信できるようにする。
ここで、送信マップ5028aは、自端末が送信する全てのサイクリック通信データにおいて、ブロックNO5bとオフセット5cとサイズ5dを対応付けて、サイクリック通信データの連続アドレス領域毎に登録するだけでなく、優先順位5mも対応付けている。
この優先順位5mは、再送信する順番を決めるもので、例えば、最高優先であれば1、最低優先であれば5に設定するものとし、同一であれば先頭行から順次送信する。
次に、図17を用いて、実施の形態4におけるデータ監視制御部5021aの送信処理について説明する。
なお、図17のステップS1〜ステップS7、ステップS9〜ステップS11の処理は図14の処理と同一であり、その説明を省略する。
図17では、ステップS7に次いで、ステップS21とステップS22の処理を実行する。
送信完了後(ステップS5)、衝突検出信号4051aの通知があった場合(ステップS6)、再送信するフレーム(ブロックNO5bとオフセット5cとサイズ5d)を全て取得する(ステップS7)。
次いで、送信マップ5028aを参照して、優先順位5mを取得し(ステップS21)、この優先順位5mに従い、送信手順を並び替えて送信手順を見直す。そして、予め設定した時間を待った後、登録順序に従い送信手順を決定する(ステップS22)。
以下、ステップS9以降の処理により、再送信を実行する。
なお、予め設定した時間を待つのではなく、送信マップ5028aの優先順位5mに示す数値×一定時間を待つ方式にすることで、優先順位に従う待ち時間を与えるようにして、ネットワーク全体の通信負荷を軽減することもできる。
実施の形態4によれば、送信マップ5028aに、通信フレームを再送信する場合の優先順位を持たせたので、消失した通信フレームを再送信する場合の送信手順を見直すことで、フレーム衝突が多発する状態でも、緊急度の高いデータを優先的に送受信できるようになる。
また、ネットワーク上で送受信のどちらか一方しか処理できない半二重ネットワークにも対応することができる。
実施の形態5.
図18は、この発明の実施の形態5によるサイクリック通信システムの端末の構成を示すブロック図である。
図18において、符号1、11a〜14a、22a〜28a、1015a、3029a、4050a〜4052aは図12におけるものと同一のものである。図18の端末A1は、データ監視制御部6021aに特徴を有している。
実施の形態5では、データ監視制御部6021aが、送信マップ28aに登録された通信フレームを全て送信した後ではなく、衝突検出信号4051aを通知された直後に、衝突時に消失した通信フレームを再送信して、ネットワークのデータ損失を回避している。
送信マップ28aに登録された通信フレームを順次送信している途中で、衝突検出信号4051aが通知されると、送信衝突履歴情報4052aに登録された再送信フレームを即座に読み出して、消失した通信フレームを連続的に再送信することで、フレーム衝突が多発する状態でも、優先度に無関係なシステムでも、確実に送受信できるようにしている。
次に、図19を用いて、実施の形態5におけるデータ監視制御部6021aの送信処理について説明する。
なお、図19のステップS1〜ステップS11の各処理は図14の処理と同一であり、その説明を省略する。
図19では、ステップS4に次いで、ステップS6以降を実行し、ステップS11の再送信が完了したときに、ステップS5を実行するように、図14の実行順序を変更している。
すなわち、図19では、通信フレームの送信途中でも、衝突検出信号4051aの通知があった場合(ステップS6)、送信衝突履歴情報4052aを参照し、再送信するフレーム(ブロックNO5bとオフセット5cとサイズ5d)を全て取得し(ステップS7)、予め設定した時間を待った後、該当する再送信するフレームのひとつを送信手順に決定する(ステップS8)。
次いで、決定した送信手順に従い、送信データメモリ(読出し側)24aから送信データを読み出して、設定した一定時間を待った後(ステップS9)。再送信する通信フレームをメモリ制御部12aに転送する(ステップS10)。
そして、再び衝突に伴うフレーム衝突が発生した場合でも再送信できるよう、再送信完了を確認した後(ステップS11)、送信マップ28aに従う次の通信フレームを送信する(ステップS5)ので、更に確実に送受信できるようにしてから送信開始待ちに戻ることができる。
実施の形態5によれば、送信マップ28aに登録された通信フレームの送信途中でも、衝突検出信号が通知されると、即座に消失した通信フレームを連続的に再送信することで
、フレーム衝突が多発する状態でも、確実に送受信することができる。
また、ネットワーク上で送受信のどちらか一方しか処理できない半二重ネットワークにも対応することができる。
なお、本発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略することが可能である。
1 端末A、2 端末B、3 端末C、4 ネットワーク、
11a サイクリック用メモリ、11b サイクリック用メモリ、
11c サイクリック用メモリ、12a メモリ制御部、13a 通信制御部、
14a プロセッサ、22a 送信データ切替部、23a 送信データメモリ、
24a 送信データメモリ、25a 受信データ切替部、26a 受信データメモリ、
27a 受信データメモリ、28a 送信マップ、29a 受信マップ、
1015a プロセッサ制御部、2005 受信フレーム、
2021a データ監視制御部、3021a データ監視制御部、
3029a 受信マップ、4021a データ監視制御部、4050a 送信衝突検出部、
4051a 衝突検出信号、4052a 送信衝突履歴情報、
5021a データ監視制御部、5028a 送信マップ、
6021a データ監視制御部

Claims (5)

  1. 複数の端末がネットワークを介してサイクリック通信を行うサイクリック通信システムであって、
    上記端末は、
    上記サイクリック通信に使用されるデータを格納するサイクリック用メモリ、
    上記サイクリック用メモリの送信データから通信フレームを作成し、この作成した通信フレームを送信するとともに、上記ネットワークを介して受信した通信フレーム内の受信データを上記サイクリック用メモリに格納する通信制御部、
    上記受信データが書き込まれる書込み側メモリと、上記受信データが読み出される読み出し側メモリとを有する受信データメモリ、
    上記受信データメモリの書込み側メモリと読み出し側メモリとを互いに切り替える受信データ切替部、
    および上記サイクリック用メモリから上記受信データを上記受信データメモリにコピーするデータ監視制御部を備え、
    サイクリック通信データを複数の通信フレームによって送受信する場合の各データの同時性を確保するために、上記通信フレームには、サイクリック通信の周期ごとにカウントされるカウンタ値が付加されるとともに、優先的に処理する必要のある通信フレームには高優先フラグが付与され、
    上記受信データ切替部は、上記カウンタ値を用いて、各データの同時性を確認してから上記書込み側メモリと読み出し側メモリとを切り替え、
    上記データ監視制御部は、上記高優先フラグの付いていない受信データについては、上記受信データメモリの書込み側メモリにコピーするとともに、上記高優先フラグの付いた受信データについては、上記受信データメモリの読み出し側メモリにコピーすることを特徴とするサイクリック通信システム。
  2. 自端末が受信する全ての受信データについて、各端末ごとかつサイクリック通信データごとに付与されたブロック番号と、上記サイクリック用メモリに格納されるときの先頭アドレスであるオフセットと、当該受信データのデータサイズとを有する受信マップを備え、
    上記受信データ切替部は、上記受信データメモリの切り替えを上記受信マップを参照して行い、
    上記データ監視制御部は、上記受信マップの上記ブロック番号を参照して、当該受信データが単一フレームであることを判断するとともに、単一フレームと判断された受信データを、上記受信データメモリの読み出し側メモリにコピーすることを特徴とする請求項1記載のサイクリック通信システム。
  3. 自端末が送信する全ての送信データについて、各端末ごとかつサイクリック通信データごとに付与されたブロック番号と、上記サイクリック用メモリに格納されるときの先頭アドレスであるオフセットと、当該送信データのデータサイズとを有する送信マップ、
    上記通信制御部が通信フレームを送信した場合に、ネットワーク上で当該通信フレームが他の通信フレームと衝突したことを検出する送信衝突検出部、
    およびこの送信衝突検出部により、通信フレームの衝突が検出された場合に、衝突した通信フレームの情報を時系列で格納する送信衝突履歴情報部を備え、
    上記データ監視制御部は、上記送信マップの送信データを送信するように制御するとともに、上記送信衝突検出部により、衝突検出された場合には、上記送信衝突履歴情報部を参照して、上記送信マップの送信データを送信した後に、上記衝突した通信フレームを再送信するよう制御することを特徴とする請求項1または請求項2記載のサイクリック通信システム。
  4. 上記送信マップは、上記通信フレームを再送信する順序を含み、
    上記データ監視制御部は、上記送信衝突検出部により、通信フレームの衝突が検出された場合の通信フレームの再送信に当たって、上記送信マップを参照し、上記送信マップの再送信順序により再送信するように制御することを特徴とする請求項3記載のサイクリック通信システム。
  5. 上記通信制御部が通信フレームを送信した場合に、ネットワーク上で当該通信フレームが他の通信フレームと衝突したことを検出する送信衝突検出部を備え、
    上記データ監視制御部は、上記送信衝突検出部により、通信フレームの衝突が検出された場合には、直ちに、衝突した通信フレームを再送信するよう制御することを特徴とする請求項1または請求項2記載のサイクリック通信システム。
JP2016232060A 2016-11-30 2016-11-30 サイクリック通信システム Active JP6571628B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016232060A JP6571628B2 (ja) 2016-11-30 2016-11-30 サイクリック通信システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016232060A JP6571628B2 (ja) 2016-11-30 2016-11-30 サイクリック通信システム

Publications (2)

Publication Number Publication Date
JP2018088210A JP2018088210A (ja) 2018-06-07
JP6571628B2 true JP6571628B2 (ja) 2019-09-04

Family

ID=62494603

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016232060A Active JP6571628B2 (ja) 2016-11-30 2016-11-30 サイクリック通信システム

Country Status (1)

Country Link
JP (1) JP6571628B2 (ja)

Also Published As

Publication number Publication date
JP2018088210A (ja) 2018-06-07

Similar Documents

Publication Publication Date Title
US9197373B2 (en) Method, apparatus, and system for retransmitting data packet in quick path interconnect system
JPS5947906B2 (ja) ル−プ伝送システム
JP4561800B2 (ja) データ同期システム及び方法
JP2006191337A (ja) バス間のメッセージ転送を行うゲートウエイ装置及びそれを使用したネットワークシステム
JP6571628B2 (ja) サイクリック通信システム
US20230126682A1 (en) Fault tolerance method and apparatus of network device system, computer device, and storage medium
JP2015082271A (ja) サイクリック通信システム
JP4708901B2 (ja) データ処理モジュール及びそのメッセージの送信準備方法
US8090986B2 (en) System module and data relay method
JP5494028B2 (ja) スイッチ装置
JP6740683B2 (ja) 並列処理装置及び通信制御方法
JP2007272694A (ja) 通信インターフェース装置及び通信方法
CN111698151B (zh) 路由信息管理方法、装置及计算机存储介质
US20200394111A1 (en) Method for Operating a Redundant Automation System
JP3421492B2 (ja) バスのスタック監視方式
JPS6412144B2 (ja)
JP2776274B2 (ja) 中継計算機における仮想バッファ制御システム
JP2023143592A (ja) シミュレータ異常判定システム、方法、プログラム
JPH06252895A (ja) データ伝送方式
JP2023143640A (ja) 分散連成シミュレーションシステム
JP2000148523A (ja) 二重化メモリ装置及びメモリ切替方法
JP2006295667A (ja) リング型二重化ネットワークにおける受信方法及び装置
JP2000244530A (ja) データ通信装置
JP3818381B2 (ja) パケット転送制御装置、送信装置、通信システムおよびパケット転送制御方法
JP5182586B2 (ja) 中継システム、及び当該システムで用いられる中継方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181114

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190612

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190716

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190808

R151 Written notification of patent or utility model registration

Ref document number: 6571628

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250