JP7066080B1 - 通信制御装置、通信制御方法及びプログラム - Google Patents

通信制御装置、通信制御方法及びプログラム Download PDF

Info

Publication number
JP7066080B1
JP7066080B1 JP2022506620A JP2022506620A JP7066080B1 JP 7066080 B1 JP7066080 B1 JP 7066080B1 JP 2022506620 A JP2022506620 A JP 2022506620A JP 2022506620 A JP2022506620 A JP 2022506620A JP 7066080 B1 JP7066080 B1 JP 7066080B1
Authority
JP
Japan
Prior art keywords
communication
control
time
length
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.)
Active
Application number
JP2022506620A
Other languages
English (en)
Other versions
JPWO2023026431A1 (ja
JPWO2023026431A5 (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
Application granted granted Critical
Publication of JP7066080B1 publication Critical patent/JP7066080B1/ja
Publication of JPWO2023026431A1 publication Critical patent/JPWO2023026431A1/ja
Publication of JPWO2023026431A5 publication Critical patent/JPWO2023026431A5/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/16Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

通信制御装置(100)は、機器を制御するための制御通信を通信装置との間で行う。通信制御装置(100)は、通信装置と共有される共有時刻により規定される時間区分を含む通信周期の長さを、制御通信にかかる時間の長さに基づいて決定し、通信装置に、決定した長さの通信周期毎に時間区分において制御通信を実行させる通信制御部(17)と、通信制御部(17)によって決定された長さの通信周期毎に時間区分において制御通信を行う通信部(12)と、を備える。

Description

本開示は、通信制御装置、通信制御方法及びプログラムに関する。
FA(Factory Automation)の現場では、複数の装置が産業用ネットワークを介して通信することにより多数の機器を制御するシステムが構築される。この種の制御のための通信では、機器を協調制御するためにリアルタイム性が重視される(例えば、特許文献1を参照)。
特許文献1には、主局と、制御対象が接続されている複数の従局と、を接続するデータ転送装置について記載されている。このデータ転送装置は、主局といずれかの従局との間におけるデータ転送経路をタイムテーブルの内容に応じて周期的に切り替える。これにより、制御系ネットワーク通信におけるリアルタイム性を損なうことなく、マルチキャスト通信が可能となる。
特開2015-115864号公報
特許文献1の技術では、複数の時分割制御LANそれぞれについて、有効となる期間を繰り返す周期が予め初期情報として入力され、入力された周期を実現するようにデータ転送経路が切り替えられた。このようなユーザによる周期の設定は、熟練者のノウハウ或いは試行錯誤によりなされることが多い。このため、機器を制御するための通信に煩雑な準備作業を要し、当該通信を準備する作業者の負担が大きくなるおそれがあった。
本開示は、上記の事情に鑑みてなされたものであり、機器を制御するための通信を準備する作業者の負担を軽減することを目的とする。
上記目的を達成するため、本開示の通信制御装置は、機器を制御するための制御通信を通信装置との間で行う通信制御装置であって、通信装置と共有される共有時刻により規定される時間区分を含む、通信装置に設定される通信周期の長さの複数の候補を通信装置に問い合わせて、通信装置から複数の候補を示すデータを受信する問い合わせ手段と、複数の候補のうちの一の候補に相当する通信周期の長さを、制御通信にかかる時間の長さに基づいて決定し、通信装置に、決定した長さの通信周期毎に時間区分において制御通信を実行させる通信制御手段と、通信制御手段によって決定された長さの通信周期毎に時間区分において制御通信を行う通信手段と、を備える。
本開示によれば、機器を制御するための通信を準備する作業者の負担を軽減することができる。
実施の形態1に係る通信システムの構成を示す図 変形例に係る通信システムの構成を示す図 実施の形態1に係る通信制御装置のハードウェア構成を示す図 実施の形態1に係る時分割による通信の概要について説明するための図 実施の形態1に係る通信制御装置の機能的な構成を示す図 実施の形態1に係る制御通信にかかる時間の計測について説明するための第1の図 実施の形態1に係る制御通信にかかる時間の計測について説明するための第2の図 実施の形態1に係る制御通信にかかる時間の計測について説明するための第3の図 実施の形態1に係るチューニングテーブルの一例を示す図 実施の形態1に係る通信周期候補テーブルの一例を示す図 実施の形態1に係るパラメータの設定例について示す図 実施の形態1に係るパラメータに従う通信周期の例を示す図 実施の形態1に係る通信制御処理を示すフローチャート 実施の形態2に係るパラメータに従う通信周期の例を示す図 変形例に係るパラメータに従う通信周期の例を示す図 実施の形態3に係る通信制御装置の機能的な構成を示す図 実施の形態3に係る学習処理を示すフローチャート 変形例に係るタイムスロットの順序の決定手法を説明するための図
以下、本開示の実施の形態に係る通信制御装置100について、図面を参照しつつ詳細に説明する。
実施の形態1.
本実施の形態に係る通信制御装置100は、図1に示されるように、通信装置211,212,220及び機器40とともに通信システム1000を構成する。通信システム1000は、工場に設置されるFAシステムの一部に相当する。このFAシステムは、例えば、生産システム、検査システム、又は加工システムであってもよいし、その他のシステムであってもよい。通信システム1000では、通信制御装置100が、通信装置211,212,220との間で行う時分割多重方式の通信のパラメータを最適化する。
通信制御装置100及び通信装置211,212,220は、ネットワーク30を介して接続されて互いに通信する。ネットワーク30は、フィールドバス規格に従う産業用ネットワークである。
通信制御装置100は、主局として機能するPLC(Programmable Logic Controller)であって、機器40と信号線を介して接続される。また、通信装置211,212,220はそれぞれ、従局として機能するリモートI/O(Input/Output)装置であって、機器40と信号線を介して接続される。通信制御装置100は、自機に接続されている機器40及び通信装置211,212,220を介して接続されている機器40を制御して、FAシステムを稼働させる。例えば、通信制御装置100は、通信装置220に接続されたセンサである機器40の出力に応じて、通信装置211に接続されたロボットである機器40のアームを移動させて、ワークを搬送する。
なお、通信制御装置100は、PLCでなくともよいし、ネットワーク30は、図1に示されるようなライン型の伝送路でなくてもよい。例えば、図2に示されるように、通信制御装置100は、システムバス104を介して互いに接続されるCPUユニット102及びI/Oユニット103とともにPLC101を構成する通信ユニットであってもよい。また、ネットワーク30は、リング型、メッシュ型、バス型、その他の形式の伝送路であってもよい。通信制御装置100が、ネットワーク30を構成するノードのうちの主局に相当し、通信装置211,212,220が従局に相当すればよい。
図3には、通信制御装置100のハードウェア構成が示されている。通信制御装置100は、そのハードウェア構成として、プロセッサ51と、主記憶部52と、補助記憶部53と、クロック部54と、入力部55と、出力部56と、通信部57と、を有する。主記憶部52、補助記憶部53、クロック部54、入力部55、出力部56及び通信部57はいずれも、内部バス58を介してプロセッサ51に接続される。
プロセッサ51は、集積回路であるCPU(Central Processing Unit)又はMPU(Micro Processing Unit)を含む。プロセッサ51は、補助記憶部53に記憶されるプログラムP1を実行することにより、通信制御装置100の種々の機能を実現して、後述の処理を実行する。
主記憶部52は、RAM(Random Access Memory)を含む。主記憶部52には、補助記憶部53からプログラムP1がロードされる。そして、主記憶部52は、プロセッサ51の作業領域として用いられる。
補助記憶部53は、EEPROM(Electrically Erasable Programmable Read-Only Memory)及びHDD(Hard Disk Drive)に代表される不揮発性メモリを含む。補助記憶部53は、プログラムP1の他に、プロセッサ51の処理に用いられる種々のデータを記憶する。補助記憶部53は、プロセッサ51の指示に従って、プロセッサ51によって利用されるデータをプロセッサ51に供給し、プロセッサ51から供給されたデータを記憶する。
クロック部54は、例えば、水晶振動子、シリコン振動子、水晶発振器、その他発振回路を有するクロック発生回路を含む。クロック部54は、クロック発生回路により生成されたクロックに基づいてクロック信号を生成して出力する。クロック信号は、クロックパルスを含み、プロセッサ51が、内蔵のハードウェア素子により又は実行するソフトウェア処理によりクロックパルスの立ち上がり回数をカウントすることで時刻を計時するために利用される。
入力部55は、入力キー及びポインティングデバイスに代表される入力デバイスを含む。入力部55は、通信制御装置100のユーザによって入力された情報を取得して、取得した情報をプロセッサ51に通知する。
出力部56は、LED(Light Emitting Diode)、LCD(Liquid Crystal Display)及びスピーカに代表される出力デバイスを含む。出力部56は、プロセッサ51の指示に従って、種々の情報をユーザに提示する。
通信部57は、外部の装置とEthernetフレームを送受するためのネットワークインタフェース回路を含む。通信部57は、外部から信号を受信して、この信号により示されるデータをプロセッサ51へ出力する。また、通信部57は、プロセッサ51から出力されたデータを示す信号を外部の装置へ送信する。
図1に戻り、通信制御装置100及び通信装置211,212,220はそれぞれ、IEEE 802.1 TSN(Time Sensitive Networking)規格に準拠して通信する。以下では、このIEEE 802.1 TSN規格をTSN規格と表記する。以下、このTSN規格に従う通信の概要について説明する。なお、通信装置211,212,220を総称して通信装置200と表記する。
通信制御装置100及び通信装置200は、ネットワーク30を介して時刻を同期する。詳細には、これらの装置はそれぞれ、他の装置と時刻同期プロトコルにより時刻を共有する。時刻同期プロトコルは、通信ネットワーク上の機器の時刻を高精度に同期するためのプロトコルである。例えば、時刻同期プロトコルとしてIEEE802.1 ASが適用される場合には、ネットワーク上の一のノードに相当するグランドマスタが通信ネットワーク経由で高精度な基準クロックを定期的に配信する。また、グランドマスタとスレーブノードとの間でデータを往復させることで通信遅延が計測され、スレーブノードは、この通信遅延を補正した基準クロックを得る。これにより、通信遅延が補正された時刻が共有される。
なお、複数の装置による時刻の共有及び時刻の同期は、複数の装置それぞれが有する時計を同期することを意味する。複数の装置それぞれが有する時計が同等の時刻を計時することで、この時刻が複数の装置において共有されれば、複数の装置が時刻を同期することとなる。以下では、装置間で共有される時刻を共有時刻と表記する。
通信制御装置100及び通信装置200は、IEEE802.1 Qbvとして規定されるプロトコルで、共有時刻に従って予め定められたスケジュールに基づいてデータを送受する。詳細には、図4に示されるように、通信制御装置100及び通信装置200は、共有時刻に従って予め定められた長さの通信周期41,42それぞれにおいて時分割多重方式により通信する。
通信周期41,42は、互いに隣接する。すなわち、通信周期42は、通信周期41の直後に設けられ、通信周期41の終了時刻は通信周期42の開始時刻に等しい。図4では、2つの通信周期41,42が示されているが、通信周期41より前、及び通信周期42より後にも、通信周期41,42と同等の期間が周期的に設けられる。
通信周期41,42はそれぞれ、互いに隣接するタイムスロットTS1,TS2,TS0を有する。図4に示されるように通信周期41においてタイムスロットTS1,TS2,TS0がこの順で配置される場合には、タイムスロットTS1の開始時刻は、通信周期41の開始時刻に等しく、タイムスロットTS1の終了時刻は、タイムスロットTS2の開始時刻に等しく、タイムスロットTS2の終了時刻は、タイムスロットTS0の開始時刻に等しく、タイムスロットTS0の終了時刻は、通信周期41の終了時刻に等しい。通信周期41のタイムスロットTS0の直後には、通信周期42のタイムスロットTS1が配置されることとなる。
タイムスロットTS1,TS2は、予め定められた異なる種別の制御通信を実施するための時間区分である。詳細には、タイムスロットTS1,TS2はそれぞれ、予め定められた形式、チャンネル又はプロトコルの制御通信をするために設けられる。制御通信は、機器40を制御するための通信である。制御通信は、装置同士が通信周期毎にデータを共有するための通信である。制御通信は、装置同士が情報をリアルタイムに共有することを保証するために比較的短い周期で繰り返し実施される点で、必要に応じてデータを伝送する情報系の通信とは異なる。
タイムスロットTS1では、図4において破線の矢印で示されるように、通信制御装置100が、通信装置211との間でデータの送信及び受信を実行してから通信装置212との間でデータの送信及び受信を実行する。タイムスロットTS2では、図4において太線の矢印で示されるように、通信制御装置100からの要求に対して通信装置220が応答する。タイムスロットTS0では、制御通信以外の通信が実行され、例えば、IP(Internet Protocol)通信が実行される。
タイムスロット各々では、当該タイムスロットに対応する種別のデータが伝送されるため、各装置は、当該データの送信又は受信の少なくとも一方を実行し、伝送すべきデータが無い場合には通信を実行しない。例えば、第1の制御通信を実行する通信装置211,212は、タイムスロットTS1でデータを送受信するが、タイムスロットTS2ではデータを送受信しない。また、第2の制御通信を実行する通信装置220は、タイムスロットTS2でデータを送受信するが、タイムスロットTS1ではデータを送受信しない。通信制御装置100は、タイムスロットTS1,TS2の双方でデータを送受信する。
図4に示されるように、タイムスロットTS1における制御通信にかかる時間長TL1は、タイムスロットTS1の長さより短く、タイムスロットTS2における制御通信にかかる時間長TL2は、タイムスロットTS2の長さより短い。図4の例では、タイムスロットTS1については少なくとも時間長TL11において通信が発生せず、タイムスロットTS2については少なくとも時間長TL21において通信が発生しない。通信制御装置100は、このような省略可能な時間長TL11,TL21を省略して、通信を自動的に効率化させる機能を有する。
図5には、通信制御装置100の機能的な構成が示されている。図5に示されるように、通信制御装置100は、その機能として、通信装置211,212,220と共有時刻を共有する時刻共有部11と、TSN規格に従って通信する通信部12と、制御通信にかかる時間を計測する計測部13と、通信装置211,212,220に設定可能な通信周期の候補を問い合わせる問い合わせ部14と、予め設定された制御プログラム163から複数の制御通信の間の関係を解釈する解釈部15と、種々の情報を記憶する記憶部16と、記憶部16の情報に基づいてパラメータを最適化した通信を通信装置200に実行させる通信制御部17と、を有する。
時刻共有部11は、主としてプロセッサ51、クロック部54及び通信部57の協働により実現される。時刻共有部11は、グランドマスタとして、クロック部54の時刻を基準とする共有時刻を通信装置200に配信して、通信装置200と共有時刻を共有する。ただし、時刻共有部11は、他のグランドマスタから配信される共有時刻を取得するスレーブノードであってもよい。時刻共有部11がスレーブノードである場合には、通信装置200のうちのいずれか1つがグランドマスタに相当してもよいし、通信制御装置100及び通信装置200以外のグランドマスタから配信される共有時刻を、通信制御装置100及び通信装置200が共有してもよい。時刻共有部11は、通信装置200と時刻を共有すればよい。時刻共有部11は、共有時刻を通信部12に提供する。
通信部12は、主としてプロセッサ51及び通信部57の協働により実現される。通信部12は、図4に例示されたような周期的な通信を通信装置200との間で実行する。詳細には、通信部12は、通信周期毎に、各タイムスロットにおいて当該タイムスロットに対応する種別の制御通信を実行する。
計測部13は、主としてプロセッサ51によって実現される。計測部13は、通信部12による各種別の制御通信にかかる時間を計測する。例えば、図4の時間長TL1,TL2に示されるように、計測部13は、通信制御装置100から制御通信において最初にデータを送信する時刻から制御通信において最後にデータを取得するまでの時間を計測してもよい。
また、計測部13は、図6に示されるように、タイムスロットTS1,TS2の開始時刻を起点として、当該タイムスロットTS1,TS2において最後に受信すべきデータの受信までの時間を計測してもよい。また、図7に示されるように、制御通信の開始が通信装置200のいずれかによるデータの送信時刻である場合、或いは制御通信の完了が通信装置200のいずれかによるデータの受信時刻である場合には、通信制御装置100が、送信時刻又は受信時刻を示す時刻情報60を受信して、この時刻情報60に基づいて計測部13が制御通信にかかる時間を計測してもよい。また、図7に示される場合において、時刻情報60の受信に代えて、計測部13は、時刻共有部11によって計測される通信遅延の値を利用して、時間長TL1bを計測してもよい。
また、計測部13は、通信部12による実運用と同様の制御通信の実行に代えて、図8に示されるように、通信装置211,212,220それぞれに計測データを送信し、この計測データに対する応答データを受信してもよい。また、計測部13は、計測データ及び応答データの通信遅延に基づいて、通信装置211,212,220それぞれの処理時間TL1c,TL1d,TL2cを得てもよい。例えば、計測部13は、通信装置211からの応答データを受信した受信時刻T12から、通信装置211に計測データを送信した送信時刻T11を減じ、さらに計測データの通信遅延及び応答データの通信遅延を差し引くことで処理時間TL1cを算出してもよい。そして、計測部13は、この処理時間TL1c,TL1d,TL2cに基づいて、実際の制御通信にかかる時間を見積もることにより当該時間の計測値を得てもよい。また、計測部13は、通信装置211,212,220それぞれに処理時間TL1c,TL1d,TL2cを計測させて、計測結果を各装置から取得してもよい。
なお、計測データ及び応答データは、実運用の環境で使用されるデータと同一のデータであってもよいし、実運用時のデータとは異なる計測用のデータであってもよい。計測データ及び応答データを伝送する経路についても、実運用時の伝送経路と同様であってもよいし異なってもよい。例えば、計測部13は、通信装置211,212,220に宛てて個別に、他の装置を介することなく計測データを送信してもよいし、他の装置を経由して計測データを送信してもよい。他の装置を経由する場合には、計測データが当該他の装置において中継される時間を加味して計測データの通信遅延が算出される。
計測部13は、計測結果を、記憶部16のチューニングテーブル162に書き込む。例えば、計測部13は、図9に示されるように、ネットワーク30を構成する各ノードについて、処理時間及び通信遅延の計測結果をマイクロ秒単位で書き込む。なお、図9に例示されるチューニングテーブル162において、ノード名に含まれる識別子は、各ノードに相当する装置の参照符号に等しい。また、制御通信の種別として示される[A]は、通信制御装置100と通信装置211,212との間における制御通信を示し、[B]は、通信制御装置100と通信装置220との間における制御通信を示す。以下では、これらの制御通信を区別する際に、図9に対応させて制御通信A,Bと適宜表記する。計測部13は、通信制御装置100において、制御通信にかかる時間を計測する計測手段の一例に相当する。
図5に戻り、問い合わせ部14は、主としてプロセッサ51及び通信部57の協働により実現される。問い合わせ部14は、通信装置200それぞれに対して、設定可能な通信周期の長さを問い合わせるデータを送信して、設定可能な通信周期の長さのリストを示すデータを通信装置200それぞれから受信する。そして、問い合わせ部14は、このリストにより示される、各装置に設定される通信周期の長さの候補を、通信周期候補テーブル161として記憶部16に書き込む。図10には、記憶部16に格納される通信周期候補テーブル161の一例が示されている。問い合わせ部14は、通信制御装置100において、通信周期の候補を通信装置に問い合わせる問い合わせ手段の一例に相当する。
解釈部15は、主としてプロセッサ51によって実現される。解釈部15は、実運用時に機器40を制御するための制御プログラム163を記憶部16から読み出して、複数の種別の制御通信の間の依存関係を分析する。例えば、通信装置220との制御通信Bで伝送すべきデータが、通信装置212との制御通信Aで伝送されるデータに依存することが、解釈部15によって判断される。このような依存関係は、例えば、通信装置220に接続される機器40から得る情報を通信制御装置100が処理した結果、通信装置212に接続される機器40を制御する場合に発生する。そして、解釈部15は、図9に例示されるように、分析結果を記憶部16のチューニングテーブル162に書き込む。解釈部15が依存関係を解釈するための制御プログラム163は、通信制御装置100において、一の種別の制御通信と他の種別の前記制御通信との関係を示す予め設定された情報の一例に相当する。
記憶部16は、主として主記憶部52及び補助記憶部53の少なくとも一方によって実現される。記憶部16は、単一の記憶装置でなくともよい。例えば、通信周期候補テーブル161及びチューニングテーブル162を記憶するフラッシュメモリと、制御プログラム163を記憶するRAMとが別個に構成されてもよい。また、通信制御装置100が図2に示される通信ユニットに相当する場合には、制御プログラム163は、CPUユニット102に記憶され、解釈部15は、CPUユニット102からシステムバス104を介して制御プログラム163を読み出してもよい。
通信制御部17は、主としてプロセッサ51及び通信部57の協働により実現される。通信制御部17は、チューニングテーブル162及び通信周期候補テーブル161に基づいて、通信周期の最適なパラメータを決定し、このパラメータを通信装置200に指定することにより、通信装置200に対して、パラメータに従う通信周期毎に含まれるタイムスロットにおいて制御通信を実行させる。パラメータは、各タイムスロットの長さと、通信周期の長さと、通信周期におけるタイムスロットの順序と、のそれぞれの設定値を含む。
例えば、通信制御部17は、図9に示されるチューニングテーブル162に基づいて、制御通信Aに割り当てるタイムスロット長を、通信装置211,212についての処理時間と通信遅延との合計である32μsとして算出する。また、通信制御部17は、制御通信Bに割り当てるタイムスロット長を、通信装置220についての処理時間と通信遅延との合計である12μsと算出する。
また、通信制御部17は、制御通信A,Bの依存関係から、制御通信AのタイムスロットTS1の後に制御通信BのタイムスロットTS2を設けることを決定する。
さらに、通信制御部17は、通信周期候補テーブル161を参照して、32μsの長さのタイムスロットTS1と12μsの長さのタイムスロットTS2とを含む範囲で通信装置200に設定可能な最短の通信周期を選択する。図10の例では、タイムスロットTS1,TS2の長さの合計である44μsを超えて、かつ、通信装置200すべてに設定可能である最短の通信周期として250μsの値が選択される。そして、通信制御部17は、図11に示されるようなパラメータの設定値を通信装置200に指定する。通信制御装置100及び通信装置200は、指定されたパラメータに従って、図12に示されるような通信周期で通信することとなる。
通信制御部17は、通信制御装置100において、通信装置と共有される共有時刻により規定される時間区分を含む通信周期の長さを、制御通信にかかる時間の長さに基づいて決定し、通信装置に、決定した長さの通信周期毎に時間区分において制御通信を実行させる通信制御手段の一例に相当する。また、通信制御部17によってパラメータが設定されると、通信部12は、通信装置200との間でパラメータに従って通信する。通信部12は、通信制御装置100において、通信制御手段によって決定された長さの通信周期毎に時間区分において制御通信を行う通信手段の一例に相当する。
続いて、通信制御装置100によって実行される通信制御処理について、図13を用いて説明する。図13に示される通信制御処理は、通信制御装置100による通信装置200との通信の本番運用の準備として実施される、通信周期のパラメータのチューニング処理に相当する。通信制御処理は、通信制御装置100に対するユーザの特定の操作によって開始する。
通信制御処理では、解釈部15が、記憶部16から制御プログラム163を読み出して複数の種別の制御通信間の依存関係を分析して、分析結果をチューニングテーブル162に書き込む(ステップS1)。また、計測部13が、各種別の制御通信にかかる時間を計測して、計測結果をチューニングテーブル162に書き込む(ステップS2)。さらに、問い合わせ部14が、通信周期の候補を各通信装置200に問い合わせて、通信周期の候補を通信周期候補テーブル161に書き込む(ステップS3)。
次に、通信制御部17が、チューニングテーブル162に基づいて、制御通信を実施するために少なくとも必要な各タイムスロット長を算出し(ステップS4)、依存関係に基づいてタイムスロットの順序を決定し(ステップS5)、ステップS4,5で決定したパラメータと適合する最短の候補を通信周期候補テーブル161から通信周期長として選択する(ステップS6)。
次に、通信制御部17は、ステップS4~S6で決定したパラメータを通信装置200に指定する(ステップS7)。これにより、通信装置200は、指定されたパラメータに従って通信周期毎に通信する。
次に、通信制御部17は、本番運用と同等の通信を試行する(ステップS8)。例えば、通信制御部17は、図12に例示される通信周期に従って、図4に示される制御通信を試行する。そして、通信制御部17は、各タイムスロット内で完了すべき制御通信が完了したか否かを判定する(ステップS9)。
各タイムスロット内で完了すべき制御通信が完了しないと判定された場合(ステップS9;No)、通信制御装置100は、ステップS2移行の処理を繰り返す。これにより、制御通信にかかる時間を再度計測して、制御通信が異常なく完了するような通信周期のパラメータが決定されることが期待される。ただし、ステップS9の判定が否定された後に再度実行されるステップS4では、制御通信を実行するためのタイムスロット長として、前回算出したタイムスロット長に例えば10%のマージンを加算して、前回よりも長いタイムスロット長を算出してもよい。これにより、前回とは異なるパラメータが設定される。
各タイムスロット内で完了すべき制御通信が完了したと判定された場合(ステップS9;Yes)、通信制御装置100は、パラメータの設定を完了して、実運用の通信を開始する(ステップS10)。その後、通信制御処理が終了する。
以上、説明したように、本実施の形態に係る通信制御装置100の通信制御部17は、通信周期の長さを、前記制御通信にかかる時間の長さに基づいて決定し、通信装置200に、決定した長さの通信周期毎に時間区分において制御通信を実行させる。これにより、実際に発生する制御通信に適した通信周期のパラメータが設定され、機器を制御するための通信を準備する作業者の負担を軽減することができる。また、機器を制御するための通信の効率を向上させることができる。
具体的には、通信制御部17は、タイムスロット長を示すパラメータを通信装置200に指定する。詳細には、計測部13によって計測された、制御通信にかかる時間の計測結果に基づいて、タイムスロット長が決定される。これにより、実際の制御通信に応じた適当な長さのタイムスロット長が設定されて、通信効率が向上する。
また、通信制御部17は、タイムスロット長を指定した場合において、タイムスロット内で完了すべき制御通信が完了する前に、指定したパラメータにより設定される長さのタイムスロットが終了するときには、指定したパラメータにより示される長さより長いタイムスロット長を示す新たなパラメータを指定する。これにより、計測部13による計測に含まれる誤差に起因して過剰に短いタイムスロット長が一旦設定された場合であっても、適当なタイムスロット長が再度設定される。
また、通信制御部17は、通信周期長を示すパラメータを通信装置200に指定する。具体的には、問い合わせ部14が、通信周期として設定可能な候補を通信装置200それぞれに問い合わせた結果のうちの、算出された長さのタイムスロットを含み得る最短の通信周期が、通信制御部17によって選択される。これにより、1つのタイムスロットにおける制御通信から、次のタイムスロットにおける制御通信までの周期が短くなり、リアルタイム性を向上させることができる。なお、通信周期候補テーブル161は、通信装置200に候補を問い合わせることなく、ユーザによって記憶部16に予め格納された情報であってもよい。
また、通信制御部17は、制御通信A,Bの依存関係を判断して、制御通信A,Bに対応するタイムスロットの順序を決定する。具体的には、解釈部15が、制御通信Bの内容が、制御通信Aの内容に応じて変化する場合に、制御通信Bが制御通信Aに依存すると解釈して、通信制御部17は、制御通信BのタイムスロットTS2を制御通信AのタイムスロットTS1より後に設ける。この場合において、タイムスロットTS1がタイムスロットTS2より後に設けられると、制御通信Bの内容が、1つ前の通信周期における制御通信Aに応じて変化することとなり、応答性が低くなるおそれがある。これに対して、本実施の形態では、制御通信の依存関係に基づいてタイムスロットの順序を決定することにより、応答性を向上させることができる。
実施の形態2.
続いて、実施の形態2について、上述の実施の形態1との相違点を中心に説明する。なお、上記実施の形態1と同一又は同等の構成については、同等の符号を用いる。上記実施の形態1においては、すべての通信装置200について共通の通信周期長が設定されたが、制御通信の種別に応じて異なる通信周期長を設定するケースも考えられる。
本実施の形態に係る通信制御部17は、図13のステップS6において、制御通信Aを実行する通信装置211,212については、図10から分かるように、32μsのタイムスロットTS1を含む最短の通信周期長が125μsであると判断し、制御通信Bを実行する通信装置220については、12μsのタイムスロットTS2を含む最短の通信周期長が250μsであると判断する。したがって、通信制御部17は、図14に示されるように、タイムスロットTS1を含む125μsの長さの通信周期を通信装置211,212に設定し、タイムスロットTS2を含む250μsの長さの通信周期を通信装置220に設定する。
これにより、制御通信Aが実行される周期をより短縮して、リアルタイム性を向上させることができる。なお、図14の例は、すべての通信装置200に250μsの長さの共通の通信周期を設定した上で、1つの通信周期が、制御通信Aを実行するためのタイムスロットTS1を2つ含むともいえる。
また、制御通信Aを実行する通信装置211,212について共通の通信周期長を設定する例を説明したが、さらに通信装置211,212で異なる通信周期長を設定してもよい。
また、通信周期毎に異なる通信装置200と通信することを設定してもよい。例えば、通信制御装置100に125μsの通信周期が設定可能である一方、各タイムスロット長の合計値が125μsを超える場合には、図15に示されるように、通信装置200それぞれに設定される通信周期長を125μsとして、奇数番目の通信周期に含まれるタイムスロットTS1で制御通信Aを実行し、偶数番目の周期に含まれるタイムスロットTS1で制御通信Bを実行してもよい。図15の例は、すべての通信装置200に250μsの長さの共通の通信周期を設定した上で、通信周期がそれぞれ、制御通信Aを実行するためのタイムスロットTS1と、制御通信Bを実行するためのタイムスロットTS1と、を含むともいえる。
実施の形態3.
続いて、実施の形態3について、上述の実施の形態1との相違点を中心に説明する。なお、上記実施の形態1と同一又は同等の構成については、同等の符号を用いる。本実施の形態は、実測によるパラメータの決定に代えて、事前にモデルを学習した結果に基づいてパラメータを決定する点で、実施の形態1と異なる。
図16に示されるように、本実施の形態に係る通信制御装置100は、学習用データ取得部18と、モデル生成部19と、を有する。
学習用データ取得部18は、学習に使用するデータを取得する。学習に使用するデータは、モデルに入力される条件値と、モデルから出力されるべき教師データと、を含み、例えば、通信制御装置100及び通信装置200を含むネットワークの構成、各装置の個別の処理時間、すべての装置に設定される通信周期を特徴量として示すが、これには限定されず、任意の特徴量を示してもよい。学習に使用するデータとしては、手作業により実機を用いた特徴量の測定結果及び既存の設定内容が用いられてもよいし、ネットワークシミュレータを用いて条件値と適当な通信周期との組み合わせを生成したものであってもよい。
モデル生成部19は、学習用データ取得部18によって取得された学習用データを用いて、ネットワーク構成を示す条件値から通信周期のパラメータを得るためのモデルを生成し、生成したモデルを、記憶部16に保存する。モデルとしては、畳み込みニューラルネットワークに代表される機械学習モデルを用いてもよいし、他のモデルを用いてもよい。モデルは、通信制御装置100及び通信装置200を含むネットワークの構成に代表される特徴量と、通信装置200に指定すべき少なくとも1つのパラメータと、の関係を示すモデルであればよい。
図17には、モデルを生成するための学習処理の手順について示されている。学習処理では、学習用データ取得部18が、ユーザにより設計された通信周期、又は、ネットワークシミュレータで自動生成された通信周期を示す学習用データを取得する(ステップS41)。
次に、モデル生成部19は、学習用データ取得部が取得したデータを用いてモデルを生成して保存する(ステップS42)。その後、モデルの学習処理は終了する。通信制御装置100の通信制御部17は、ネットワーク構成を含む条件値を、学習処理によって学習されたモデルに入力して、通信周期のパラメータを得る。
以上のように、予め学習されたモデルを利用してパラメータを求めてもよい。これにより、実測の手間を省くことができ、通信制御装置100が適当なパラメータを得るための処理負荷を軽減することができる。
なお、モデルにより通信周期のパラメータを生成する例について説明したが、通信周期のパラメータを決定するために必要な他の情報をモデルにより生成してもよい。例えば、計測部による実測値に代えて、モデルにより生成された各装置の処理時間に基づいて、実施の形態1と同様にパラメータが決定されてもよい。
また、学習用データ取得部18及びモデル生成部19は、通信制御装置100に内蔵されていなくともよい。例えば、インターネット上のサーバ装置が学習用データ取得部18及びモデル生成部19を有し、通信制御装置100は、このサーバ装置から提供されるモデルを取得してもよい。
以上、本開示の実施の形態について説明したが、本開示は上記実施の形態によって限定されるものではない。
例えば、上記実施の形態では、チューニング処理を、製造ラインの立ち上げ時のような本番運用前に実行することが想定されている。しかしながら、通信制御装置100は、本番運用の最中に、例えばタイムスロットTS0においてチューニング処理を実行し、タイムスロット長及び最短の設定可能な通信周期長をユーザに通知してもよい。これにより、ユーザは、本番運用を一旦停止してから適当なパラメータを設定することができる。また、本番運用時においてパラメータの変更が可能であれば、通信制御装置100は、ユーザの了承なく、通信周期のパラメータを変更して設定してもよい。
また、上記実施の形態では、タイムスロットの順序を決定するために制御プログラム163が参照されたが、これには限定されない。例えば、依存関係を示す情報がユーザによってチューニングテーブル162に書き込まれてもよいし、その他の予め設定された情報に基づいてタイムスロットの順序が決定されてもよい。
また、タイムスロットの順序を、制御通信の試行結果に基づいて決定してもよい。例えば、図18に示されるように、通信制御装置100は、チューニング処理において、タイムスロットの順序を変更しつつ制御通信を試行した結果、一の順序での制御通信の内容が、他の順序での制御通信の内容より早く変化することを検出した場合に、当該一の順序を設定すべきパラメータとして決定してもよい。
また、タイムスロットの数及び配置を、任意に変更してもよい。また、制御通信の種別の数、及び、制御通信の方式を任意に変更してもよい。また、通信制御装置100との間で制御通信を実行する通信装置200の数は、1つであってもよいし、上記実施の形態のような3つとは異なる任意の数であってもよい。さらに、1つの通信装置200が、複数の種別の制御通信を実行してもよい。
また、通信制御装置100の機能は、専用のハードウェアによっても、また、通常のコンピュータシステムによっても実現することができる。
例えば、プロセッサ51によって実行されるプログラムP1を、コンピュータ読み取り可能な非一時的な記録媒体に格納して配布し、そのプログラムP1をコンピュータにインストールすることにより、上述の処理を実行する装置を構成することができる。このような記録媒体としては、例えばフレキシブルディスク、CD-ROM(Compact Disc Read-Only Memory)、DVD(Digital Versatile Disc)、MO(Magneto-Optical Disc)が考えられる。
また、プログラムP1をインターネットに代表される通信ネットワーク上のサーバ装置が有するディスク装置に格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロードするようにしてもよい。
また、通信ネットワークを介してプログラムP1を転送しながら起動実行することによっても、上述の処理を達成することができる。
さらに、プログラムP1の全部又は一部をサーバ装置上で実行させ、その処理に関する情報をコンピュータが通信ネットワークを介して送受信しながらプログラムを実行することによっても、上述の処理を達成することができる。
なお、上述の機能を、OS(Operating System)が分担して実現する場合又はOSとアプリケーションとの協働により実現する場合には、OS以外の部分のみを媒体に格納して配布してもよく、また、コンピュータにダウンロードしてもよい。
また、通信制御装置100の機能を実現する手段は、ソフトウェアに限られず、その一部又は全部を、回路を含む専用のハードウェアによって実現してもよい。
本開示は、本開示の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、本開示を説明するためのものであり、本開示の範囲を限定するものではない。つまり、本開示の範囲は、実施の形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の開示の意義の範囲内で施される様々な変形が、本開示の範囲内とみなされる。
本開示は、装置間で共有される時刻により規定される時間区分毎に各装置が通信するシステムに適している。
1000 通信システム、 100 通信制御装置、 101 PLC、 102 CPUユニット、 103 I/Oユニット、 104 システムバス、 11 時刻共有部、 12 通信部、 13 計測部、 14 問い合わせ部、 15 解釈部、 16 記憶部、 161 通信周期候補テーブル、 162 チューニングテーブル、 163 制御プログラム、 17 通信制御部、 18 学習用データ取得部、 19 モデル生成部、 200、211,212,220 通信装置、 30 ネットワーク、 40 機器、 41,42 通信周期、 51 プロセッサ、 52 主記憶部、 53 補助記憶部、 54 クロック部、 55 入力部、 56 出力部、 57 通信部、 58 内部バス、 60 時刻情報、 TL1,TL1a,TL1b,TL2,TL2a,TL11,TL12 時間長、 TS0,TS1,TS2 タイムスロット、 TL1c,TL1d,TL2c 処理時間、 P1 プログラム。

Claims (10)

  1. 機器を制御するための制御通信を通信装置との間で行う通信制御装置であって、
    前記通信装置と共有される共有時刻により規定される時間区分を含む、前記通信装置に設定される通信周期の長さの複数の候補を前記通信装置に問い合わせて、前記通信装置から前記複数の候補を示すデータを受信する問い合わせ手段と、
    前記複数の候補のうちの一の前記候補に相当する前記通信周期の長さを、前記制御通信にかかる時間の長さに基づいて決定し、前記通信装置に、決定した長さの前記通信周期毎に前記時間区分において前記制御通信を実行させる通信制御手段と、
    前記通信制御手段によって決定された長さの前記通信周期毎に前記時間区分において前記制御通信を行う通信手段と、
    を備える通信制御装置。
  2. 前記制御通信を複数の前記通信装置との間で行う通信制御装置であって、
    前記通信制御手段は、異なる前記通信周期の長さを前記通信装置それぞれに指定する、
    請求項1に記載の通信制御装置。
  3. 前記通信制御手段は、前記時間区分の長さを前記通信装置に指定して、前記通信装置に対して、前記通信周期毎に、指定した長さの前記時間区分において前記制御通信を実行させる、
    請求項1又は2に記載の通信制御装置。
  4. 前記通信制御手段は、前記制御通信が完了する前に、指定した長さの前記時間区分が終了する場合には、指定した長さより長い新たな前記時間区分の長さを前記通信装置に指定する、
    請求項に記載の通信制御装置。
  5. 前記制御通信にかかる時間の長さを計測する計測手段、をさらに備え、
    前記通信制御手段は、前記計測手段による計測の結果に基づいて決定した前記時間区分の長さを前記通信装置に指定する、
    請求項又はに記載の通信制御装置。
  6. 前記通信周期に含まれる複数の前記時間区分それぞれに対応する種別の前記制御通信を一又は複数の前記通信装置との間で行う通信制御装置であって、
    前記通信制御手段は、一の前記種別の前記制御通信と他の前記種別の前記制御通信との関係を示す予め設定された情報に基づいて、前記通信周期における複数の前記時間区分の順序を決定し、決定した順序で前記時間区分に対応する前記種別の前記制御通信を一又は複数の前記通信装置に実行させる、
    請求項1からのいずれか一項に記載の通信制御装置。
  7. 前記通信周期に含まれる複数の前記時間区分それぞれに対応する種別の前記制御通信を一又は複数の前記通信装置との間で行う通信制御装置であって、
    前記通信手段は、前記通信周期における前記時間区分の順序を変更しつつ、前記時間区分それぞれにおいて該時間区分に対応する前記種別の前記制御通信を試行し、
    前記通信制御手段は、前記通信手段によって前記制御通信が試行された一の前記時間区分の順序を一又は複数の前記通信装置に指定し、指定した順序で前記時間区分に対応する前記種別の前記制御通信を一又は複数の前記通信装置に実行させる、
    請求項1からのいずれか一項に記載の通信制御装置。
  8. 前記通信制御手段は、通信制御装置及び前記通信装置を含むネットワークの構成と前記通信周期の長さとの関係を示す予め学習されたモデルに基づいて、前記通信周期の長さを決定する、
    請求項1からのいずれか一項に記載の通信制御装置。
  9. 機器を制御するための制御通信を通信装置との間で行う通信制御装置によって実行される通信制御方法であって、
    前記通信装置と共有される共有時刻により規定される時間区分を含む、前記通信装置に設定される通信周期の長さの複数の候補を前記通信装置に問い合わせて、前記通信装置から前記複数の候補を示すデータを受信し、
    前記複数の候補のうちの一の前記候補に相当する前記通信周期の長さを、前記制御通信にかかる時間の長さに基づいて決定し、前記通信装置に、決定した長さの前記通信周期毎に前記時間区分において前記制御通信を実行させ、
    決定した長さの前記通信周期毎に前記時間区分において前記制御通信を行う、
    ことを含む通信制御方法。
  10. 機器を制御するための制御通信を通信装置との間で行う通信制御装置
    前記通信装置と共有される共有時刻により規定される時間区分を含む、前記通信装置に設定される通信周期の長さの複数の候補を前記通信装置に問い合わせて、前記通信装置から前記複数の候補を示すデータを受信し、
    前記複数の候補のうちの一の前記候補に相当する前記通信周期の長さを、前記制御通信にかかる時間の長さに基づいて決定し、前記通信装置に、決定した長さの前記通信周期毎に前記時間区分において前記制御通信を実行させ、
    決定した長さの前記通信周期毎に前記時間区分において前記制御通信を行う、
    ことを実行させるためのプログラム。
JP2022506620A 2021-08-26 2021-08-26 通信制御装置、通信制御方法及びプログラム Active JP7066080B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/031361 WO2023026431A1 (ja) 2021-08-26 2021-08-26 通信制御装置、通信制御方法及びプログラム

Publications (3)

Publication Number Publication Date
JP7066080B1 true JP7066080B1 (ja) 2022-05-12
JPWO2023026431A1 JPWO2023026431A1 (ja) 2023-03-02
JPWO2023026431A5 JPWO2023026431A5 (ja) 2023-08-01

Family

ID=81584932

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022506620A Active JP7066080B1 (ja) 2021-08-26 2021-08-26 通信制御装置、通信制御方法及びプログラム

Country Status (2)

Country Link
JP (1) JP7066080B1 (ja)
WO (1) WO2023026431A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7195495B1 (ja) 2022-06-07 2022-12-23 三菱電機株式会社 管理コントローラ、機器通信システム、通信方法及びプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015154212A (ja) * 2014-02-13 2015-08-24 富士電機株式会社 ネットワークシステム、そのパラメータ決定装置
WO2020105129A1 (ja) * 2018-11-20 2020-05-28 三菱電機株式会社 中継装置、通信システム、通信方法、および通信プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015154212A (ja) * 2014-02-13 2015-08-24 富士電機株式会社 ネットワークシステム、そのパラメータ決定装置
WO2020105129A1 (ja) * 2018-11-20 2020-05-28 三菱電機株式会社 中継装置、通信システム、通信方法、および通信プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7195495B1 (ja) 2022-06-07 2022-12-23 三菱電機株式会社 管理コントローラ、機器通信システム、通信方法及びプログラム

Also Published As

Publication number Publication date
JPWO2023026431A1 (ja) 2023-03-02
WO2023026431A1 (ja) 2023-03-02

Similar Documents

Publication Publication Date Title
JP4185926B2 (ja) ロボット協調制御方法及びシステム
JP6488830B2 (ja) 制御装置
WO2021002059A1 (ja) 制御システム、設定装置およびコンピュータプログラム
JP6409557B2 (ja) 制御装置、コントローラ・システム、出力制御方法、およびプログラム
JP2016194823A (ja) 制御装置
JP7066080B1 (ja) 通信制御装置、通信制御方法及びプログラム
JP2016194831A (ja) 制御装置
US20190229885A1 (en) Computing device and control system
US11251990B2 (en) Control device, control system, control method, and non-transitory storage medium storing control program
JP4961589B2 (ja) ネットワークシステムおよびスレーブ同期方法
US20220286267A1 (en) Control system, information processing device, and non-transitory computer readable medium
JP7192608B2 (ja) ネットワーク管理装置、管理方法、管理プログラムおよび記録媒体
US11269313B2 (en) Controller and control system that stores data in current control cycle for output in next control cycle
JP6854991B1 (ja) 通信装置、通信システム、通信方法及びプログラム
JPWO2021131724A5 (ja)
JP2006107050A (ja) 複数ロボットの協調動作制御装置
JP7086326B1 (ja) 制御装置、通信周期調整方法及びプログラム
CN114868366A (zh) 通信装置、通信系统、通信控制方法以及程序
US20230308514A1 (en) Input unit, control system, communication method, and recording medium
US20240160807A1 (en) Method for simulating a technical device
JP7374379B1 (ja) データ収集装置、データ収集システム、データベース作成方法及びプログラム
CN116184920A (zh) 一种基于软定时器的多plc控制器指令输出高精度同步方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220201

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220201

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20220201

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: 20220329

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220426

R150 Certificate of patent or registration of utility model

Ref document number: 7066080

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150