JPWO2021131724A5 - - Google Patents

Download PDF

Info

Publication number
JPWO2021131724A5
JPWO2021131724A5 JP2021567200A JP2021567200A JPWO2021131724A5 JP WO2021131724 A5 JPWO2021131724 A5 JP WO2021131724A5 JP 2021567200 A JP2021567200 A JP 2021567200A JP 2021567200 A JP2021567200 A JP 2021567200A JP WO2021131724 A5 JPWO2021131724 A5 JP WO2021131724A5
Authority
JP
Japan
Prior art keywords
communication
communication device
slaves
data
cycle
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
Application number
JP2021567200A
Other languages
English (en)
Other versions
JPWO2021131724A1 (ja
Filing date
Publication date
Application filed filed Critical
Priority claimed from PCT/JP2020/045963 external-priority patent/WO2021131724A1/ja
Publication of JPWO2021131724A1 publication Critical patent/JPWO2021131724A1/ja
Publication of JPWO2021131724A5 publication Critical patent/JPWO2021131724A5/ja
Pending legal-status Critical Current

Links

Images

Description

本開示は、一般に通信装置、通信システム、通信制御方法、及びプログラムに関する。より詳細には、本開示は、1以上のスレーブと通信する通信装置、通信システム、通信制御方法、及びプログラムに関する。
特許文献1には、予め定められた周期ごとにデータが更新されるネットワークに接続される通信装置が開示されている。この通信装置は、第1のスケジューリング手段と、第2のスケジューリング手段と、を備える。第1のスケジューリング手段は、製造装置又は生産設備の制御に用いる第1のデータを予め定められた周期ごとに更新するのに必要な第1の通信帯域を確保する。第2のスケジューリング手段は、ネットワークが有する通信帯域のうち第1の通信帯域以外の通信帯域内に、第2のデータを指定された時間内に送信先へ到着させるのに必要な第2の通信帯域を確保する。
特許文献1に記載の通信装置では、第1のデータ(主データ)を通信するのに必要な通信帯域以外の空き帯域にて第2のデータ(副データ)を送信することは可能である。しかしながら、この通信装置では、通信装置に接続された機器(スレーブ)において、第2のデータ(副データ)を周期的に送信又は受信又は送受信させることが難しい、という問題があった。
特開2018-64245号公報
本開示は、上記の点に鑑みてなされており、通信装置に接続されたスレーブにおいて、副データを周期的に送信又は受信又は送受信させやすい通信装置、通信システム、通信制御方法、及びプログラムを提供することを目的とする。
本開示の一態様に係る通信装置は、処理部と、1以上のスレーブとの間で通信する通信部と、を備える。前記処理部は、通信処理と、設定処理と、を実行する機能を有する。前記通信処理は、前記1以上のスレーブに対して、主データを含む主フレームを前記通信部から第1周期で送信させる処理である。前記設定処理は、前記第1周期よりも短い第2周期、及び前記第2周期ごとに前記1以上のスレーブのうちの少なくとも1台のスレーブに割り当てられるタイムスロット、を設定する処理である。
本開示の別の一態様に係る通信システムは、上記の通信装置と、上記の1以上のスレーブと、を備える。前記1以上のスレーブは、前記通信装置に接続されて前記通信装置と通信する。
本開示の別の一態様に係る通信制御方法は、通信ステップと、設定ステップと、を有する。前記通信ステップは、通信装置に接続される1以上のスレーブに対して、主データを含む主フレームを第1周期で送信させるステップである。前記設定ステップは、前記第1周期よりも短い第2周期、及び前記第2周期ごとに前記1以上のスレーブのうちの少なくとも1台のスレーブに割り当てられるタイムスロット、を設定するステップである。
本開示の別の一態様に係るプログラムは、1以上のプロセッサに、上記の通信制御方法を実行させる。
本開示は、通信装置に接続されたスレーブにおいて、副データを周期的に送信又は受信又は送受信させやすい、という利点がある。
図1は、本開示の実施形態に係る通信装置を備えた通信システムの概要を示すブロック図である。 図2は、同上の通信装置による通信処理及び分割通信処理の説明図である。 図3は、同上の通信装置による設定処理のフローチャートである。 図4は、比較例の通信装置による通信処理の説明図である。
(1)概要
図1は、本開示の実施形態に係る通信装置1を備えた通信システム100の概要を示すブロック図である。本実施形態の通信装置1は、図1に示すように、通信装置1に接続される1以上(ここでは、n(“n”は自然数)台)のスレーブ2と直接またはネットワークを介して接続されて通信システム100を構成する。つまり、通信装置1は、1以上のスレーブ2の上位装置に相当するマスタである。通信装置1及び1以上のスレーブ2は、同一のネットワークに接続されている。つまり、通信システム100は、通信装置1と、1以上のスレーブ2と、を備える。そして、1以上のスレーブ2は、通信装置1に接続されて通信装置1と通信する。
本実施形態では、通信装置1及び1以上のスレーブ2は、産業用ネットワークに接続されている。本開示でいう「産業用ネットワーク」は、例えばファクトリーオートメーションにおいて用いられるフィールドネットワークであって、工場内に設置された複数の機器間で通信するために用いられる。産業用ネットワークは、一例として、Ethernet/IP(登録商標)、EtherCAT(登録商標)、又はPROFINET(登録商標)等を含み得る。産業用ネットワークに接続される機器は、一例として、コントローラ(例えば、PLC(Programmable Logic Controller)等)、センサ(例えば、変位センサ、流量計、圧力計、画像センサ等)、又はリモートI/O(Input / Output)等を含み得る。また、産業用ネットワークに接続される機器は、一例として、サーボアンプ、インバータ、ロボット、アクチュエータ、又はバルブ等を含み得る。
産業用ネットワークは、オフィス等で用いられる標準的なベストエフォート型のネットワークと比較して、堅牢性、定時性、及びリアルタイム性が要求される。例えば、産業用ネットワークにおいて、コントローラからサーボアンプ等の制御対象の機器に対して周期的に制御データを送信する場合に、ベストエフォート型のネットワークと比較して遅延が許されない。また、制御データに対する応答速度の高速化が求められる。
本実施形態の通信装置1は、図1に示すように、処理部11と、通信部12と、を備えている。通信部12は、1以上のスレーブ2との間で通信する通信インタフェースである。処理部11は、通信処理と、設定処理と、を実行する機能を有している。
図2は、本開示の実施形態に係る通信装置1による通信処理及び分割通信処理の説明図である。通信処理は、1以上のスレーブ2に対して、主データを含む主フレームF1を通信部12から第1周期CT1で送信させる処理である。つまり、通信装置1は、通信処理を実行することにより、1以上のスレーブ2に対して主データを第1周期CT1で送信する。主データは、例えば通信装置1がコントローラであって、1以上のスレーブ2がサーボアンプ等の制御対象の機器であれば、スレーブ2を制御するための制御データを含み得る。第1周期CT1は、一例として、コンマ数ms~数msである。各スレーブ2は、主データを受信すると、受信した主データに応じた処理を実行する。例えば、主データが1以上のスレーブ2の各々に対応した1以上の制御データを含んでいる場合、各スレーブ2は、主データを受信すると、主データに含まれる対応した制御データを取得し、取得した制御データに応じた処理を実行する。
設定処理は、第1周期CT1よりも短い第2周期CT2(図2を参照)、及びタイムスロットS0(図2を参照)を設定する処理である。タイムスロットS0は、第2周期CT2ごとに1以上のスレーブ2のうちの少なくとも1台のスレーブ2に割り当てられる。設定処理で設定されたタイムスロットS0は、少なくとも副フレームF2(図2を参照)に含まれる。副フレームF2は、設定処理で設定された第2周期CT2で通信装置1から送信されるフレームであり、主フレームF1の伝送時間よりも短い。また、第2周期CT2は副フレームF2の伝送時間よりも長い。各スレーブ2は、対応するタイムスロットS0に含まれるデータを取得したり、対応するタイムスロットS0を用いて他の機器(通信装置1又は他のスレーブ2)に対してデータを送信したりすることが可能である。
上述のように、設定処理によりタイムスロットS0を割り当てられたスレーブ2は、第1周期CT1で送信される主データとは別に、第2周期CT2ごとにタイムスロットS0を用いて、副データを周期的に受信することが可能である。設定処理によりタイムスロットS0を割り当てられたスレーブ2は、第2周期CT2ごとにタイムスロットS0を用いて、主データとは別に副データを周期的に送信することが可能である。つまり、本実施形態では、通信装置1に接続されたスレーブ2において、副データを周期的に送信又は受信又は送受信させやすい、という利点がある。
(2)詳細
以下、通信装置1を備えた通信システム100について図1を用いて詳細に説明する。通信装置1には、複数(ここでは、n台)のスレーブ2が接続されている。複数のスレーブ2(言い換えれば、1以上のスレーブ2)は、通信装置1に対してデイジーチェーン接続されている。具体的には、通信装置1には、第1スレーブ21、第2スレーブ22、第3スレーブ23、…、第nスレーブ2nが順にリング状に接続されている。このため、通信装置1から送信されるフレーム(例えば、主フレームF1)は、第1スレーブ21、第2スレーブ22、第3スレーブ23、…、第nスレーブ2n、通信装置1の順に伝送されることになる。
通信システム100においては、複数のスレーブ2のうちの1台のスレーブ2はセンサであり、残りのスレーブ2はサーボアンプである。言い換えれば、1以上のスレーブ2のうちの少なくとも1台のスレーブ2は、モータを駆動させるモータ駆動装置である。通信システム100においては、通信装置1は、複数のスレーブ2(つまり、複数のサーボアンプ及びセンサ)を個別に又は全体的に制御するコントローラである。
通信装置1は、処理部11と、通信部12と、を備えている。通信装置1は、処理部11が有するメモリにデータを記憶しているが、処理部11とは別に記憶部を有していてもよい。記憶部は、一例として、EEPROM(Electrically Erasable Programmable Read-Only Memory)等の電気的に書換え可能な不揮発性メモリ、及びRAM(Random Access Memory)等の揮発性メモリ等である。
処理部11は、例えば、コンピュータシステムを含んでいる。コンピュータシステムは、ハードウェアとしてのプロセッサ及びメモリを主構成とする。コンピュータシステムのメモリに記録されたプログラムをプロセッサが実行することによって、処理部11としての機能が実現される。プログラムは、コンピュータシステムのメモリに予め記録されてもよく、電気通信回線を通じて提供されてもよく、コンピュータシステムで読み取り可能なメモリカード、光学ディスク、ハードディスクドライブ等の非一時的記録媒体に記録されて提供されてもよい。なお、通信部12のすくなくとも一部または全体は、処理部11の一部または全体と一体に構成しても良い。例えば通信部12がコンピュータシステムを含む。この構成において、通信部12の中のコンピュータシステムにおいてプログラムを実行することによって、処理部11としての機能を実現することも可能である。
通信部12は、複数のスレーブ2との通信を行うための通信インタフェースであって、例えば産業用のイーサネット(登録商標)プロトコルに準拠した有線通信モジュールを有している。通信部12は、通信装置1に直接接続された最前段にあるスレーブ2(図1では、第1スレーブ21)の通信部202(後述する)に対してフレーム(主フレームF1及び副フレームF2)を送信する。通信部12は、通信装置1に直接接続された最後段にあるスレーブ2(図1では、第nスレーブ2n)の通信部202から送信されるフレーム(主フレームF1及び副フレームF2)を受信する。
処理部11は、通信処理(主通信処理)と、分割通信処理と、設定処理と、を実行する機能を有している。以下通信処理(主通信処理)を、分割通信処理と区別するために、主通信処理と呼ぶ。設定処理は、通信装置1を含めた通信システム100を稼働させる前に実行される処理である。主通信処理及び分割通信処理は、いずれも通信装置1を含めた通信システム100の稼働中に実行される処理である。
主通信処理は、複数のスレーブ2に対して主フレームF1を通信部12から第1周期CT1で送信させる処理である。第1周期CT1は、通信装置1にあらかじめ設定されている。本実施形態では、通信装置1が第1スレーブ21に対して主フレームF1を送信することにより、第1スレーブ21、第2スレーブ22、第3スレーブ23、…、第nスレーブ2nの順に主フレームF1が伝送される。
図2に示すように、主フレームF1は、ヘッダD100と、主データ領域D1と、副データ領域D2と、フッタD101と、を含んでいる。ヘッダD100は、各スレーブ2にて受信したフレームが主フレームF1であることを識別するための識別子を含んでいる。
主データ領域D1は、複数(ここでは、n個)のタイムスロットD11,D12,…,D1nに分割されている。複数のタイムスロットD11,D12,…,D1nは、それぞれ複数のスレーブ21,22,…,2nに割り当てられている。
主フレームF1を受信したスレーブ2は、主データ領域D1のうちの割り当てられたタイムスロットを用いて、通信装置1からの主データを取得することが可能である。主データは、通信装置1から各スレーブ2に対して送信されるスレーブ2ごとの制御データを含み得る。主データは、スレーブ2ごとの制御データに対する応答データを含み得る。
副データ領域D2は、複数(ここでは、n個)のタイムスロットD21,D22,…,D2nに分割されている。複数のタイムスロットD21,D22,…,D2nは、いずれも設定処理により設定されたタイムスロットS0に相当し、それぞれ複数のスレーブ21,22,…,2nに割り当てられている。つまり、主フレームF1は、タイムスロットS0を含んでいる。タイムスロットS0は、設定処理により設定される。
主フレームF1を受信したスレーブ2は、副データ領域D2のうちの割り当てられたタイムスロットS0に含まれる副データを取得したり、タイムスロットS0を用いて他の機器(通信装置1又は他のスレーブ2)に対して副データを送信したりすることが可能である。副データは、スレーブ2から他のスレーブ2に対して送信される種々のデータを含み得る。つまり、タイムスロットS0は、1以上のスレーブ2の間での通信に用いられる。
分割通信処理は、複数のスレーブ2に対して副フレームF2を通信部12から第2周期CT2で送信させる処理である。第2周期CT2は、第1周期CT1よりも短く、設定処理により設定される。副フレームF2は、ヘッダD200と、副データ領域D2と、フッタD201と、を含んでいる。ヘッダD200は、各スレーブ2で受信したフレームが副フレームF2であることを識別するための識別子を含んでいる。
通信装置1の処理部11は、図2に示すように、第1周期CT1において、まず主通信処理を実行することにより、通信部12から主フレームF1を送信する。その後、通信装置1の処理部11は、第1周期CT1において、分割通信処理を実行することにより、第2周期CT2ごとに通信部12から副フレームF2を送信する。
ここで、本実施形態では、処理部11は、第1周期CT1ごとに主データを更新する。具体的には、処理部11は、主フレームF1を送信してから次の主フレームF1の送信を開始するまでの間に、次の主フレームF1に含める主データを生成する。すなわち、処理部11は第1周期CT1よりも短い時間の間に、主データを生成して主フレームF1を準備する。主データを生成する際には、処理部11は、一例として、通信装置1の上位システムからの指令情報、及び各スレーブ2から受信した応答情報等を参照する。例えば、処理部11は、センサ(スレーブ2)から受信した検知情報を参照することにより、各サーボアンプ(各スレーブ2)を制御するための制御データ(主データ)を生成する。したがって、第1周期CT1は、主データを生成する処理を実行できる程度に設定される必要があり、処理部11の処理性能に依存する。
設定処理は、上述の主通信処理及び分割通信処理で用いられる第2周期CT2と、タイムスロットS0と、を設定する処理である。言い換えれば、主通信処理及び分割通信処理は、設定処理で設定されたパラメータに基づいて実行される。第2周期CT2は、第1周期CT1よりも短い。処理部11は、後述するように主フレームF1の伝送時間(最大伝送時間Mt)に基づいて、第2周期CT2を設定する。なお、第2周期CT2は、最大伝送時間Mtよりも長い。タイムスロットS0は、第2周期CT2ごとにスレーブ2に割り当てられる。処理部11は、全てのスレーブ2に対してタイムスロットS0を割り当てる。設定処理にて各スレーブ2に割り当てられたタイムスロットS0は、上述の副データ領域D2を構成する。設定処理については、後述する「(3)設定処理」にて詳細に説明する。なお、各スレーブ2に割り当てられるタイムスロットS0のスロット長は、データサイズに応じて異なっていてもよい。
スレーブ2は、処理部201と、通信部202と、を備えている。スレーブ2は、処理部201が有するメモリにデータを記憶しているが、処理部201とは別に記憶部を有していてもよい。記憶部は、一例として、EEPROM等の電気的に書換え可能な不揮発性メモリ、及びRAM等の揮発性メモリ等である。
処理部201は、例えば、コンピュータシステムを含んでいる。コンピュータシステムは、ハードウェアとしてのプロセッサ及びメモリを主構成とする。コンピュータシステムのメモリに記録されたプログラムをプロセッサが実行することによって、処理部201としての機能が実現される。プログラムは、コンピュータシステムのメモリに予め記録されてもよく、電気通信回線を通じて提供されてもよく、コンピュータシステムで読み取り可能なメモリカード、光学ディスク、ハードディスクドライブ等の非一時的記録媒体に記録されて提供されてもよい。
処理部201は、通信部202にて受信した主データのうち対応したデータ(ここでは、制御データ)に基づく処理を実行する機能を有する。また、処理部201は、通信部202にて受信した副データのうち対応したデータに基づく処理を実行する機能を有する。処理部201は、受信した主フレームF1又は副フレームF2の副データ領域D2のうち割り当てられたタイムスロットS0を用いて、副データを他の機器に対して送信する処理を実行する機能を有する。
通信部202は、通信装置1又は他のスレーブ2との通信を行うための通信インタフェースであって、例えば産業用のイーサネット(登録商標)プロトコルに準拠した有線通信モジュールを有している。通信部202は、スレーブ2に直接接続された前段にある通信装置1の通信部12又はスレーブ2の通信部202から送信されるフレーム(主フレームF1及び副フレームF2)を受信する。通信部202は、スレーブ2に直接接続された後段にある通信装置1の通信部12又はスレーブ2の通信部202に対して、受信したフレーム(主フレームF1及び副フレームF2)を送信する。一例として、第1スレーブ21の通信部202は、通信装置1の通信部12から送信されるフレームを受信し、受信したフレームを第2スレーブ22の通信部202に対して送信する。この際に、第1スレーブ21の通信部202は、受信したフレームを適宜更新してから送信してもよい。
(3)設定処理
以下、本実施形態の通信装置1の処理部11で実行される設定処理について、図3を用いて詳細に説明する。図3は、本開示の実施形態に係る通信装置1による設定処理のフローチャートである。
設定処理は、例えば通信システム100を稼働する前に、通信装置1が備えるユーザインタフェースを用いてユーザが所定の操作を行うことにより、処理部11にて実行される。設定処理を実行する前段階においては、ユーザは、設定処理を実行する際に必要な設定用データを、ユーザインタフェースを用いて通信装置1に入力する。
設定用データは、主データの総データサイズと、副データの総データサイズと、最小の通信周期CTminと、を含む。主データの総データサイズは、各スレーブ2にて受信可能な主データのデータサイズの総和である。副データの総データサイズは、各スレーブ2にて送信又は受信又は送受信が可能な副データのデータサイズの総和である。最小の通信周期CTminは、通信装置1が1以上のスレーブ2との通信で許容される最小の通信周期である。
設定用データは、通信装置1と各スレーブ2との通信を確立して初期化フレームを通信装置1から各スレーブ2に対して送信する際に、通信装置1が各スレーブ2から取得してもよい。つまり、通信装置1は、初期化フレームの応答として、各スレーブ2から設定用データを取得することになる。この場合、設定用データは、例えばユーザが設定用データを入力する等して、あらかじめ各スレーブ2に設定されている、と仮定する。
設定処理において、処理部11は、設定用データが入力されると(ステップST1)、まず設定用データを用いて、主フレームF1の最大伝送時間Mtを算出する(ステップST2)。具体的には、処理部11は、下記の式(1)に基づいて演算することにより、主フレームF1の最大伝送時間Mtを算出する。
Figure 2021131724000001
上記の式(1)において、「Sh」は主フレームF1のヘッダのデータサイズ、「Sm」は主データの総データサイズ、「Ss」は副データの総データサイズ、「Sf」は主フレームF1のフッタのデータサイズを表している。上記の式(1)において、「Tr」は転送レート、「n」は通信システム100に属する機器(通信装置1及びスレーブ2)の台数、「Td1」は機器1台あたりの遅延時間、「Td2」は通信システム100全体での遅延時間を表している。
設定処理において、処理部11は、次に最大伝送時間Mtと、最小の通信周期CTminと、を比較する(ステップST3)。具体的には、処理部11は、最大伝送時間Mtと、ジッタ(Jitter)を考慮した余裕時間αとの和を、最小の通信周期CTminと比較する。最大伝送時間Mtと余裕時間αとの和が最小の通信周期CTminよりも小さい場合(ステップST3でYes)、処理部11は、最小の通信周期CTminを第2周期CT2に設定する(ステップST4)。一方、最大伝送時間Mtと余裕時間αとの和が最小の通信周期CTmin以上場合(ステップST3でNo)、処理部11は、下記の式(2)に基づいて演算することにより、第2周期CT2を設定する。
Figure 2021131724000002
上記の式(2)において、「β」は分割数である。分割数βは、第1周期CT1を、最大伝送時間Mtと余裕時間αとの和で除算することで算出される商である。つまり、設定処理において、処理部11は、分割数βを算出し(ステップST5)、算出した分割数βを用いて第2周期CT2を算出する(ステップST6)。
このように、処理部11は、設定処理において、少なくとも第1周期CT1、1以上のスレーブ2の台数、及び主データのデータサイズに基づいて主フレームF1の伝送時間(最大伝送時間Mt)を算出する。そして、処理部11は、算出した伝送時間(最大伝送時間Mt)に基づいて第2周期CT2を設定する。特に、上述のように最大伝送時間Mtと余裕時間αとの和が最小の通信周期CTminよりも小さい場合、処理部11は、最小の通信周期CTminを第2周期CT2に設定する。つまり、処理部11は、設定処理において、1以上のスレーブ2との通信で許容される最小の通信周期CTminを第2周期CT2として設定する。
設定処理において、処理部11は、次に設定された第2周期CT2ごとに通信部12から送信される副データ領域D2を設定する(ステップST7)。言い換えれば、処理部11は、各スレーブ2にタイムスロットS0を割り当てる。本実施形態では、処理部11は、タイムスロットS0として、スレーブ21,22,…,2nにそれぞれタイムスロットD21,D22,…,D2nを割り当てる。
以下、設定処理の具体例について説明する。以下の説明では、第1周期CT1は500μsである、と仮定する。また、以下の説明では、通信システム100が3台のスレーブ2(第1スレーブ21、第2スレーブ22、及び第3スレーブ23)を備えている、と仮定する。つまり、以下の説明では、通信システム100に属する機器(通信装置1及びスレーブ2)の台数nは4台である。さらに、以下の説明では、転送レートTrが100Mbps、スレーブ2の1台あたりの遅延時間Td1が3μs、通信システム100全体での遅延時間Td2が1.5μs、余裕時間αが3μsである、と仮定する。
まず、各スレーブ2の設定用データが以下の表1に示すデータである場合について説明する。
Figure 2021131724000003
この場合、主データの総データサイズSmが80(=32+16+32)Bytes、副データの総データサイズSsが16(=4+4+8)Bytesであるので、最大伝送時間Mtは、式(1)により24.36μsと算出される。また、この場合、全てのスレーブ21,22,23の対応可能な通信周期のうち、第1スレーブ21及び第3スレーブ23の対応可能な通信周期が最長であるため、最小の通信周期CTminは31.25μsとなる。このため、最大伝送時間Mtと余裕時間αとの和(24.36μs+3μs=27.36μs)が最小の通信周期CTmin(31.25μs)よりも小さいので、処理部11は、最小の通信周期CTmin(31.25μs)を第2周期CT2に設定する。
次に、各スレーブ2の設定用データが以下の表2に示すデータである場合について説明する。
Figure 2021131724000004
この場合、主データの総データサイズSmが160(=64+64+32)Bytes、副データの総データサイズSsが44(=8+4+32)Bytesであるので、最大伝送時間Mtは、式(1)により33μsと算出される。また、この場合、全てのスレーブ21,22,23の対応可能な通信周期のうち、第1スレーブ21及び第3スレーブ23の対応可能な通信周期が最長であるため、最小の通信周期CTminは31.25μsとなる。このため、最大伝送時間Mtと余裕時間αとの和(33μs+3μs=36μs)が最小の通信周期CTmin(31.25μs)よりも大きいので、処理部11は、分割数βを算出し、算出した分割数βに基づいて第2周期CT2を算出して設定する。ここでは、分割数βは、第1周期CT1(500μs)を、最大伝送時間Mtと余裕時間αとの和(36μs)で除算することで算出される商であるので、「13」と算出される。したがって、第2周期CT2は、式(2)により38.46μsと算出される。
ここで、算出された第2周期CT2が各スレーブ2の対応可能な通信周期の整数倍と一致しない場合、第2周期CT2は、算出された第2周期CT2よりも大きい値であって、かつ、各スレーブ2の対応可能な通信周期の整数倍に設定される。ここでは、第2周期CT2は、各スレーブ2の対応可能な通信周期である31.25μsの2倍である62.5μsに設定される。なお、対応可能な通信周期が互いに異なる複数種類のスレーブ2が存在する場合、各スレーブ2の対応可能な通信周期の最小公倍数を第2周期CT2に設定する。
以下、本実施形態の通信装置1の利点について、比較例の通信装置との比較を交えて説明する。比較例の通信装置は、分割通信処理及び設定処理を実行する機能を有していない、つまり、第2周期CT2ごとにタイムスロットS0を割り当てない点で、本実施形態の通信装置1と相違する。比較例の通信装置は、主データと異なる副データを通信装置1又はスレーブ2から送信させる場合、図4に示すように、第1周期CT1における主フレームF100を除いた空き領域CT10にて、副データ領域D2を含む副フレームF200を送信する。しかしながら、比較例の通信装置では、第2周期CT2が設定されていないため、副フレームF200が送信されるタイミングも規定されていないことから、副データを周期的に送信することができない。このため、比較例の通信装置では、主データとは異なる副データについて、産業用ネットワークでの使用に耐え得る周期的な通信を行うことが難しい。
一方、本実施形態の通信装置1では、設定処理によりタイムスロットS0を割り当てられたスレーブ2は、第1周期CT1で送信される主データとは別に、第2周期CT2ごとにタイムスロットS0を用いて、副データを周期的に受信することが可能である。また、設定処理によりタイムスロットS0を割り当てられたスレーブ2は、第2周期CT2ごとにタイムスロットS0を用いて、主データとは別に副データを周期的に送信することが可能である。つまり、本実施形態では、通信装置1に接続されたスレーブ2において、副データを周期的に送信又は受信又は送受信させやすい、という利点がある。このため、本実施形態では、主データだけでなく副データについても、産業用ネットワークでの使用に耐え得る周期的な通信を行いやすい、という利点がある。
(4)変形例
上述の実施形態は、本開示の様々な実施形態の一つにすぎない。上述の実施形態は、本開示の目的を達成できれば、設計等に応じて種々の変更が可能である。また、通信装置1と同様の機能は、通信制御方法、(コンピュータ)プログラム、又はプログラムを記録した非一時的記録媒体等で具現化されてもよい。
一態様に係る通信制御方法は、通信ステップと、設定ステップと、を有する。通信ステップは、通信装置1に接続される1以上のスレーブ2に対して、主データを含む主フレームF1を第1周期CT1で送信させるステップである。設定ステップは、第1周期CT1よりも短い第2周期CT2、及び第2周期CT2ごとに1以上のスレーブ2のうちの少なくとも1台のスレーブ2に割り当てられるタイムスロットS0、を設定するステップである。また、一態様に係るプログラムは、1以上のプロセッサに、上記の通信制御方法を実行させる。
以下、上述の実施形態の変形例を列挙する。以下に説明する変形例は、適宜組み合わせて適用可能である。
本開示における通信装置1は、例えば処理部11にコンピュータシステムを含んでいる。コンピュータシステムは、ハードウェアとしてのプロセッサ及びメモリを主構成とする。コンピュータシステムのメモリに記録されたプログラムをプロセッサが実行することによって、本開示における処理部11としての機能が実現される。プログラムは、コンピュータシステムのメモリに予め記録されてもよく、電気通信回線を通じて提供されてもよく、コンピュータシステムで読み取り可能なメモリカード、光学ディスク、ハードディスクドライブ等の非一時的記録媒体に記録されて提供されてもよい。コンピュータシステムのプロセッサは、半導体集積回路(IC)又は大規模集積回路(LSI)を含む1ないし複数の電子回路で構成される。ここでいうIC又はLSI等の集積回路は、集積の度合いによって呼び方が異なっており、システムLSI、VLSI(Very Large Scale Integration)、又はULSI(Ultra Large Scale Integration)と呼ばれる集積回路を含む。さらに、LSIの製造後にプログラムされる、FPGA(Field-Programmable Gate Array)、又はLSI内部の接合関係の再構成若しくはLSI内部の回路区画の再構成が可能な論理デバイスについても、プロセッサとして採用することができる。複数の電子回路は、1つのチップに集約されていてもよいし、複数のチップに分散して設けられていてもよい。複数のチップは、1つの装置に集約されていてもよいし、複数の装置に分散して設けられていてもよい。ここでいうコンピュータシステムは、1以上のプロセッサ及び1以上のメモリを有するマイクロコントローラを含む。したがって、マイクロコントローラについても、半導体集積回路又は大規模集積回路を含む1ないし複数の電子回路で構成される。
また、処理部11における複数の機能が、1つの筐体に集約されていることは処理部11に必須の構成ではない。処理部11の構成要素は、複数の筐体に分散して設けられていてもよい。さらに、処理部11の少なくとも一部の機能は、例えば、サーバ装置及びクラウド(クラウドコンピューティング)等によって実現されてもよい。反対に、上述の実施形態のように、処理部11の全ての機能が、1つの筐体に集約されていてもよい。
上述の実施形態において、通信装置1の処理部11は、設定処理にて対応可能な通信周期が比較的長いスレーブ2が通信システム100に属している場合、このスレーブ2の対応可能な通信周期を他のスレーブ2の対応可能な通信周期に揃えてもよい。すなわち、スレーブ2の対応可能な通信周期は、例えばデータを生成して送信する処理等、処理負荷の比較的大きい処理を実行する場合に必要な周期である。このため、単にデータを取得する処理等の処理負荷の比較的小さい処理を実行する場合には、スレーブ2の対応可能な通信周期を短く設定することも可能である。このように、スレーブ2の対応可能な通信周期を他の対応可能な通信周期に揃えることで、結果として最小の通信周期CTminを調整することが可能である。言い換えれば、最小の通信周期CTminは、任意に設定可能であってもよい。
上述の実施形態において、タイムスロットS0は、所定時間を基準としてある程度のばらつきがあってもよい。つまり、タイムスロットS0のずれは、少なくとも第2周期CT2よりも短い許容時間内に収まっているのが好ましい。具体的には、主フレームF1を送信する第2周期CT2においては、この第2周期CT2が終了するまでにスレーブ2にてタイムスロットS0の受信が完了できれば、タイムスロットS0の送信を開始するタイミングはどのタイミングであってもよい。例えば、主データ領域D1の終了タイミングが図2に示す例よりも遅くなった場合であっても、各スレーブ2でのタイムスロットS0の受信がこの第2周期CT2が終了するまでに完了するのであれば、タイムスロットS0の送信を開始するタイミングのずれが許容される。
上述の実施形態の設定処理において、対応可能な通信周期が互いに異なる複数種類のスレーブ2が存在する場合、対応可能な通信周期の最小公倍数を第2周期CT2に設定しているが、これに限らない。例えば、複数種類のスレーブ2を全てタイムスロットS0の割り当て対象とするのではなく、一部のスレーブ2をタイムスロットS0の割り当て対象外としてもよい。例えば、複数種類のスレーブ2のうち1種類のスレーブ2のみをタイムスロットS0の割り当て対象とするならば、第2周期CT2は、この種類のスレーブ2の対応可能な通信周期に設定されることになる。
上述の実施形態の設定処理において、算出された第2周期CT2が各スレーブ2の対応可能な通信周期の整数倍に一致しない場合であっても、算出された第2周期CT2をそのまま第2周期CT2として設定してもよい。
上述の実施形態において、スレーブ2は、モータ駆動装置に限らず、センサ等の他の機器であってもよい。また、上述の実施形態において、複数のスレーブ2にモータ駆動装置が含まれていなくてもよい。例えば、全てのスレーブ2がセンサであってもよい。
上述の実施形態において、通信システム100に属するスレーブ2は1台であってもよい。この態様では、通信装置1は、第1周期CT1ごとに、主データを生成しながら、スレーブ2から第2周期CT2で送信される副データを取得することが可能である。
上述の実施形態では、通信装置1は、有線通信モジュールを用いて各スレーブ2と有線で通信しているが、これに限らない。例えば、通信装置1は、無線通信モジュールを用いて各スレーブ2と無線で通信してもよい。
上述の実施形態において、スレーブ2の処理部201は、例えば第2周期CT2における主フレームF1又は副フレームF2を除いた空き領域CT10(図2参照)を用いて、副データ以外の他データを通信部202から送信させてもよい。他データは、一例として、主データに含まれる制御データと比較してデータサイズが大きいデータであって、生産ライン又は工場での製造工程等を監視したり、管理したりするために用いられる画像等を含み得る。他データについては、主データ及び副データとは異なり、定時性及びリアルタイム性が要求されなくてよい。
上述の実施形態では、通信装置1の処理部11は、主通信処理及び分割通信処理において副データを各スレーブ2に対して送信していないが、副データを各スレーブ2に対して送信してもよい。すなわち、処理部11の処理性能に余裕があれば、処理部11は、副データを生成する処理を、主データを生成する処理と並行して実行し、生成した副データを各スレーブ2に対して送信することが可能である。
(まとめ)
以上述べたように、第1の態様に係る通信装置(1)は、処理部(11)と、1以上のスレーブ(2)との間で通信する通信部(12)と、を備える。処理部(11)は、通信処理と、設定処理と、を実行する機能を有する。通信処理は、1以上のスレーブ(2)に対して、主データを含む主フレーム(F1)を通信部(12)から第1周期(CT1)で送信させる処理である。設定処理は、第1周期(CT1)よりも短い第2周期(CT2)、及び第2周期(CT2)ごとに1以上のスレーブ(2)のうちの少なくとも1台のスレーブ(2)に割り当てられるタイムスロット(S0)、を設定する処理である。
この態様によれば、タイムスロット(S0)を用いて主データとは異なる副データを周期的に送信又は受信又は送受信することが可能である。このため、この態様によれば、通信装置(1)に接続されたスレーブ(2)において、副データを周期的に送信又は受信又は送受信させやすい、という利点がある。
第2の態様に係る通信装置(1)では、第1の態様において、主フレーム(F1)は、タイムスロット(S0)を含む。
この態様によれば、スレーブ(2)において、第2周期(CT2)よりも長い間隔を空けて副データを送信又は受信又は送受信するという事態を回避しやすい、という利点がある。
第3の態様に係る通信装置(1)では、第1又は第2の態様において、1以上のスレーブ(2)は、通信装置(1)に対してデイジーチェーン接続されている。
この態様によれば、通信装置(1)が、1以上のスレーブ(2)のうち通信装置(1)に直接接続されているスレーブ(2)のみにフレームを送信すればよいので、通信装置(1)の処理負荷を低減しやすい、という利点がある。
第4の態様に係る通信装置(1)では、第1~第3のいずれかの態様において、処理部(11)は、設定処理において、少なくとも第1周期(CT1)、1以上のスレーブ(2)の台数、及び主データのデータサイズに基づいて主フレーム(F1)の伝送時間(最大伝送時間(Mt))を算出し、算出した伝送時間に基づいて第2周期(CT2)を設定する。
この態様によれば、第1周期(CT1)に含まれる第2周期(CT2)の回数を多く設定しやすく、結果として第1周期(CT1)において副データを送信又は受信又は送受信する回数を増やしやすい、という利点がある。
第5の態様に係る通信装置(1)では、第4の態様において、処理部(11)は、設定処理において、1以上のスレーブ(2)との通信で許容される最小の通信周期(CTmin)を第2周期(CT2)として設定する。
この態様によれば、第1周期(CT1)に含まれる第2周期(CT2)の回数を多く設定しやすく、結果として第1周期(CT1)において副データを送信又は受信又は送受信する回数を増やしやすい、という利点がある。
第6の態様に係る通信装置(1)では、第5の態様において、最小の通信周期(CTmin)は、任意に設定可能である。
この態様によれば、第2周期(CT2)の設定の自由度を向上することができる、という利点がある。
第7の態様に係る通信装置(1)では、第4の態様において、処理部(11)は、設定処理において、1以上のスレーブ(2)の対応可能な通信周期の整数倍の周期を第2周期(CT2)として設定する。
この態様によれば、通信装置(1)と1以上のスレーブ(2)との間で同期をとりやすい、という利点がある。
第8の態様に係る通信装置(1)では、第1~第7のいずれかの態様において、第2周期(CT2)のずれは、少なくとも第2周期(CT2)よりも短い許容時間内に収まる。
この態様によれば、スレーブ(2)において、第2周期(CT2)よりも長い間隔を空けて副データを送信又は受信又は送受信するという事態を回避しやすい、という利点がある。
第9の態様に係る通信装置(1)では、第1~第8のいずれかの態様において、タイムスロット(S0)は、1以上のスレーブ(2)の間での通信に用いられる。
この態様によれば、副データを用いて1以上のスレーブ(2)の制御を実行しやすい、という利点がある。
第10の態様に係る通信装置(1)では、第1~第9のいずれかの態様において、1以上のスレーブ(2)のうちの少なくとも1台のスレーブ(2)は、モータを駆動させるモータ駆動装置である。
この態様によれば、主データのみならず、副データも用いてモータ駆動装置を周期的に制御しやすい、という利点がある。
第11の態様に係る通信システム(100)は、第1~第10のいずれかの態様の通信装置(1)と、1以上のスレーブ(2)と、を備える。1以上のスレーブ(2)は、通信装置(1)に接続されて通信装置(1)と通信する。
この態様によれば、タイムスロット(S0)を用いて主データとは異なる副データを周期的に送信又は受信又は送受信することが可能である。このため、この態様によれば、通信装置(1)に接続されたスレーブ(2)において、副データを周期的に送信又は受信又は送受信させやすい、という利点がある。
第12の態様に係る通信制御方法は、通信ステップと、設定ステップと、を有する。通信ステップは、通信装置(1)に接続される1以上のスレーブ(2)に対して、主データを含む主フレーム(F1)を第1周期(CT1)で送信させるステップである。設定ステップは、第1周期(CT1)よりも短い第2周期(CT2)、及び第2周期(CT2)ごとに1以上のスレーブ(2)のうちの少なくとも1台のスレーブ(2)に割り当てられるタイムスロット(S0)、を設定するステップである。
この態様によれば、タイムスロット(S0)を用いて主データとは異なる副データを周期的に送信又は受信又は送受信することが可能である。このため、この態様によれば、通信装置(1)に接続されたスレーブ(2)において、副データを周期的に送信又は受信又は送受信させやすい、という利点がある。
第13の態様に係るプログラムは、1以上のプロセッサに、第12の態様の通信制御方法を実行させる。
この態様によれば、タイムスロット(S0)を用いて主データとは異なる副データを周期的に送信又は受信又は送受信することが可能である。このため、この態様によれば、通信装置(1)に接続されたスレーブ(2)において、副データを周期的に送信又は受信又は送受信させやすい、という利点がある。
第2~第10の態様に係る構成については、通信装置(1)に必須の構成ではなく、適宜省略可能である。
1 通信装置
11 処理部
12 通信部
2 スレーブ
21 第1スレーブ
22 第2スレーブ
23 第3スレーブ
2n 第nスレーブ
100 通信システム
201 処理部
202 通信部
F1 主フレーム
F2 副フレーム
S0 タイムスロット

Claims (13)

  1. 処理部と、
    主データを含む主フレームを第1周期で送信し、1以上のスレーブとの間で通信する通信部と、を備え、
    前記処理部は、
    前記第1周期よりも短い時間内で前記主フレームを生成する通信処理と、
    前記第1周期よりも短く、かつ前記主データの伝送時間よりも長い第2周期と、及び前記第2周期ごとに前記1以上のスレーブのうちの少なくとも1台のスレーブに割り当てられるタイムスロット、を設定する設定処理と、を実行する機能を有する、
    通信装置。
  2. 前記主フレームは、前記タイムスロットを含む、
    請求項1記載の通信装置。
  3. 前記1以上のスレーブは、前記通信装置に対してデイジーチェーン接続されている、請求項1又は2に記載の通信装置。
  4. 前記処理部は、前記設定処理において、少なくとも前記第1周期、前記1以上のスレーブの台数、及び前記主データのデータサイズに基づいて前記主フレームの伝送時間を算出し、算出した前記伝送時間に基づいて前記第2周期を設定する、請求項1~3のいずれか1項に記載の通信装置。
  5. 前記処理部は、前記設定処理において、前記1以上のスレーブとの通信で許容される最小の通信周期を前記第2周期として設定する、請求項4記載の通信装置。
  6. 前記最小の通信周期は、任意に設定可能である、請求項5記載の通信装置。
  7. 前記処理部は、前記設定処理において、前記1以上のスレーブの対応可能な通信周期の整数倍の周期を前記第2周期として設定する、請求項4記載の通信装置。
  8. 前記タイムスロットのずれは、少なくとも前記第2周期よりも短い許容時間内に収まる、請求項1~7のいずれか1項に記載の通信装置。
  9. 前記タイムスロットは、前記1以上のスレーブの間での通信に用いられる、請求項1~8のいずれか1項に記載の通信装置。
  10. 前記1以上のスレーブのうちの少なくとも1台のスレーブは、モータを駆動させるモータ駆動装置である、請求項1~9のいずれか1項に記載の通信装置。
  11. 請求項1~10のいずれか1項に記載の通信装置と、前記通信装置に接続されて前記通信装置と通信する前記1以上のスレーブと、を備える、通信システム。
  12. 通信装置に接続される1以上のスレーブに対して、主データを含む主フレームを第1周期で送信させる通信ステップと、前記第1周期よりも短い第2周期、及び前記第2周期ごとに前記1以上のスレーブのうちの少なくとも1台のスレーブに割り当てられるタイムスロット、を設定する設定ステップと、を有する、通信制御方法。
  13. 1以上のプロセッサに、請求項12記載の通信制御方法を実行させる、プログラム。
JP2021567200A 2019-12-25 2020-12-10 Pending JPWO2021131724A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019234940 2019-12-25
PCT/JP2020/045963 WO2021131724A1 (ja) 2019-12-25 2020-12-10 通信装置、通信システム、通信制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2021131724A1 JPWO2021131724A1 (ja) 2021-07-01
JPWO2021131724A5 true JPWO2021131724A5 (ja) 2022-08-25

Family

ID=76575484

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021567200A Pending JPWO2021131724A1 (ja) 2019-12-25 2020-12-10

Country Status (6)

Country Link
US (1) US20220368559A1 (ja)
EP (1) EP4084417A4 (ja)
JP (1) JPWO2021131724A1 (ja)
KR (1) KR20220117289A (ja)
CN (1) CN114868366A (ja)
WO (1) WO2021131724A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230038745A (ko) * 2020-07-22 2023-03-21 파나소닉 아이피 매니지먼트 가부시키가이샤 통신 장치, 통신 시스템, 통신 제어 방법, 및 프로그램

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6317415B1 (en) * 1998-09-28 2001-11-13 Raytheon Company Method and system for communicating information in a network
US20020191588A1 (en) * 2001-06-13 2002-12-19 Drexel University Integrated circuit and packet switching system
JP4204226B2 (ja) * 2001-12-28 2009-01-07 日本テキサス・インスツルメンツ株式会社 デバイス識別方法、データ伝送方法、デバイス識別子付与装置、並びにデバイス
JP4553034B2 (ja) * 2008-05-22 2010-09-29 ソニー株式会社 無線通信装置、プログラム、無線通信方法、および無線通信システム
CN101951640B (zh) * 2010-09-16 2013-02-20 沈阳化工大学 一种工业无线网络媒体访问控制方法
JP5656305B1 (ja) * 2014-04-17 2015-01-21 パナソニックIpマネジメント株式会社 通信装置、通信システム、及び通信方法
US9946672B2 (en) * 2015-08-28 2018-04-17 Cirrus Logic, Inc. Transfer for control data over half-duplex link
JP6769230B2 (ja) 2016-10-14 2020-10-14 オムロン株式会社 通信装置、制御装置および通信方法
JP6977600B2 (ja) * 2018-02-14 2021-12-08 オムロン株式会社 制御装置、制御システム、制御方法、および、制御プログラム

Similar Documents

Publication Publication Date Title
EP3462257B1 (en) Control system and control device
CN106161165B (zh) 用于在工业过程网络上传送数据的方法和现场设备
JP6355863B1 (ja) ネットワークシステムおよび通信方法
US10356006B2 (en) Control system, development support apparatus, controller, and control method
US20190253355A1 (en) Control device, control system, control method, and non-transitory computer-readable storage medium
JP6409557B2 (ja) 制御装置、コントローラ・システム、出力制御方法、およびプログラム
JP6355275B2 (ja) 工業インターネット現場におけるブロードバンドバスの設定管理の実現方法
JP2016194830A (ja) 制御装置
US8792518B2 (en) Automation system
JPWO2021131724A5 (ja)
WO2021131724A1 (ja) 通信装置、通信システム、通信制御方法、及びプログラム
EP1185044A2 (en) Control station, apparatus and network system
CN109716247B (zh) 运算装置以及控制系统
US11269313B2 (en) Controller and control system that stores data in current control cycle for output in next control cycle
WO2022019014A1 (ja) 通信装置、通信システム、通信制御方法、及びプログラム
JP7066080B1 (ja) 通信制御装置、通信制御方法及びプログラム
JPWO2022019014A5 (ja)
US20240171422A1 (en) Communication device, communication system, communication control method, and program
JP5534711B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP7086326B1 (ja) 制御装置、通信周期調整方法及びプログラム
TW201926974A (zh) 通信控制裝置
WO2024079892A1 (ja) データ収集装置、データ収集システム、データベース作成方法及びプログラム
JPWO2022209054A5 (ja)
JP7453061B2 (ja) 通信制御システム及び通信制御方法
KR101593218B1 (ko) 가변 데이터그램 기반 제어 프레임 전송 방법, 이를 위한 노드 및 제어 프레임 전송 시스템