JP6772748B2 - 演算装置および制御システム - Google Patents

演算装置および制御システム Download PDF

Info

Publication number
JP6772748B2
JP6772748B2 JP2016202216A JP2016202216A JP6772748B2 JP 6772748 B2 JP6772748 B2 JP 6772748B2 JP 2016202216 A JP2016202216 A JP 2016202216A JP 2016202216 A JP2016202216 A JP 2016202216A JP 6772748 B2 JP6772748 B2 JP 6772748B2
Authority
JP
Japan
Prior art keywords
functional unit
unit
timing
output
communication
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
JP2016202216A
Other languages
English (en)
Other versions
JP2018063612A (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.)
Omron Corp
Original Assignee
Omron 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 Omron Corp filed Critical Omron Corp
Priority to JP2016202216A priority Critical patent/JP6772748B2/ja
Priority to US16/333,234 priority patent/US20190229885A1/en
Priority to PCT/JP2017/033635 priority patent/WO2018070190A1/ja
Priority to CN201780056494.7A priority patent/CN109716247B/zh
Priority to EP17860480.7A priority patent/EP3528067A4/en
Publication of JP2018063612A publication Critical patent/JP2018063612A/ja
Application granted granted Critical
Publication of JP6772748B2 publication Critical patent/JP6772748B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/0033Correction by delay
    • H04L7/0037Delay of clock signal
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • 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
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13063Synchronization between modules

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • Programmable Controllers (AREA)
  • Small-Scale Networks (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Description

本発明は、複数の機能ユニットを含む制御システムおよびその制御システムを構成する演算装置に関する。
様々なFA(Factory Automation)を実現するための主たるコンポーネントとして、PLC(プログラマブルコントローラ)などの制御装置が普及している。このような制御装置は、1または複数の機能ユニットとの間で通信線を介してデータを遣り取りする。
複数の機能ユニットが通信線を介して接続される場合、データが通信線を伝送することによる遅延が生じる。このような遅延の大きさは機能ユニットが接続されている位置に応じてばらつく。このような遅延時間のばらつきに依存して、機能ユニットが入力データを取得する、および、出力データを出力するタイミングもばらつく可能性がある。
このような課題に対して、特開2014−120884号公報(特許文献1)は、マスタ装置とネットワークを介して接続される1つまたは複数のスレーブ装置とを備える制御システムにおける同期タイミングを容易に決定できる環境を開示する。
特開2014−120884号公報
特開2014−120884号公報(特許文献1)に開示される制御システムは、マスタ装置とネットワークを介して接続されるスレーブ装置に接続される機能ユニットの間での同期を考慮したものであり、マスタ装置であるPLCの内部バスに接続されている機能ユニットと、スレーブ装置に接続される機能ユニットとの間で同期をとる方法については開示されていない。
本発明は、異なる通信線を介してそれぞれ演算装置に接続された複数の機能ユニットの間で、それぞれの信号が出力されるタイミングを同期させることのできる新たな構成を提供することを目的とする。
本発明のある局面に従えば、制御システムを構成する演算装置が提供される。演算装置は、制御システムにおける時刻を管理するマスタクロックと、第1の通信線を介して第1の機能ユニットとの間でデータを送受信する第1の通信回路とを含む。第1の機能ユニットは、マスタクロックと同期される第1のクロックを有している。演算装置は、第2の通信線を介して第2の機能ユニットとの間でデータを送受信する第2の通信回路を含む。第2の機能ユニットは、マスタクロックと同期される第2のクロックを有している。演算装置は、第1の機能ユニットにおいて受信された出力データに対応する信号を出力するための処理を開始すべき第1のタイミングを第1の機能ユニットへ指示するとともに、第2の機能ユニットにおいて受信された出力データに対応する信号を出力するための処理を開始すべき第2のタイミングを第2の機能ユニットへ指示する、タイミング指示手段を含む。第1および第2のタイミングは、マスタクロックが管理する時刻を基準として定義される。
好ましくは、演算装置は、第1の通信回路に対して出力データの送信が要求されてから当該出力データに対応する信号が第1の機能ユニットにおいて出力可能になるまでに要する第1の遅れ時間と、第2の通信回路に対して出力データの送信が要求されてから当該出力データに対応する信号が第2の機能ユニットにおいて出力可能になるまでに要する第2の遅れ時間とを算出する算出手段をさらに含む。
好ましくは、演算装置は、第1の遅れ時間の最大値および第2の遅れ時間の最大値に基づいて、制御システムに含まれる機能ユニットが信号を出力する同期タイミングを決定する同期タイミング決定手段をさらに含む。同期タイミング決定手段は、決定された同期タイミングに基づいて、第1および第2のタイミングを決定する。
好ましくは、算出手段は、(1)第1の通信回路に対して出力データの送信が要求されてから第1の通信線上にデータが送出されるまでに要する時間と、(2)第2の通信回路に対して出力データの送信が要求されてから第2の通信線上にデータが送出されるまでに要する時間と、(3)第1の通信線上に送出されたデータが第1の機能ユニットまで転送されるのに要する時間と、(4)第2の通信線上に送出されたデータが第2の機能ユニットまで転送されるのに要する時間と、(5)第1の機能ユニットが出力データを受信してから当該受信データに対応する信号が出力可能になるまでに要する時間と、(6)第2の機能ユニットが出力データを受信してから当該受信データに対応する信号が出力可能になるまでに要する時間とのうち、少なくとも一部を考慮して第1の遅れ時間および第2の遅れ時間を算出する。
好ましくは、タイミング指示手段は、演算装置に接続された外部装置から第1のタイミングおよび第2のタイミングを取得する。
好ましくは、演算装置は、プログラムを実行するプロセッサと、プロセッサに接続され、第1の通信回路および第2の通信回路に対して出力データの送信を要求する通信起動回路とをさらに含む。
好ましくは、通信起動回路は、FPGAまたはASICを用いて実装される。
本発明の別の局面に従う制御システムは、制御システムにおける時刻を管理するマスタクロックを有する演算装置と、演算装置と第1の通信線を介して接続される第1の機能ユニットとを含む。第1の機能ユニットは、マスタクロックと同期される第1のクロックを有している。制御システムは、演算装置と第2の通信線を介して接続される中継装置と、中継装置と第3の通信線を介して接続される第2の機能ユニットとを含む。第2の機能ユニットは、マスタクロックと同期される第2のクロックを有している。演算装置は、第1の機能ユニットにおいて受信された出力データに対応する信号を出力するための処理を開始すべき第1のタイミングを第1の機能ユニットへ指示するとともに、第2の機能ユニットにおいて受信された出力データに対応する信号を出力するための処理を開始すべき第2のタイミングを第2の機能ユニットへ指示する、タイミング指示手段を含む。第1および第2のタイミングは、マスタクロックが管理する時刻を基準として定義される。
本発明に従えば、異なる通信線を介してそれぞれ演算装置に接続された複数の機能ユニットの間で、それぞれの信号が出力されるタイミングを同期させることができる。
本実施の形態に係る制御システムが提供する出力タイミング同期機能について説明するための模式図である。 本実施の形態に係る制御システムの要部構成を示す模式図である。 本実施の形態に係る制御システムにおいて出力信号を出力開始または更新するために必要な処理を説明するための図である。 本実施の形態に係る制御システムにおいて用いられるI/Oリフレッシュフレームのデータ構造の一例を示す模式図である。 本実施の形態に係る制御システムが提供する出力タイミング同期機能に係る各部の処理を示すタイミングチャートである。 本実施の形態に係る制御システムが提供する出力タイミング同期機能に係る最大遅れ時間の算出手順を説明するための図である。 本実施の形態に係る制御システムに分散配置されるクロックに着目した模式図である。 本実施の形態に係る制御システムにおいて出力同期タイミングを設定するための構成例を示す模式図である。 本実施の形態に係る制御システムにおける出力タイミング同期機能に係る処理手順を示すフローチャートである。
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
以下の説明においては、「制御装置」の典型例として、PLC(プラグラマブルコントローラ)を具体例として説明するが、PLCとの名称に限定されることなく、本明細書に開示された技術的思想は、任意の制御装置に対して適用可能である。また、PLC(制御装置)を含むシステム全体を、以下では「制御システム」とも称する。
<A.概要>
まず、本実施の形態に係る制御システムが提供する出力タイミング同期機能について説明する。図1は、本実施の形態に係る制御システム1が提供する出力タイミング同期機能について説明するための模式図である。
図1(A)を参照して、一例として、制御システム1は、PLC2と、1または複数のリモートI/O装置3とから構成される。PLC2において、自装置に装着される1または複数の機能ユニットの間は、図示しない内部ネットワークまたは内部バスを介して接続されている。リモートI/O装置3の各々についても、自装置に装着される1または複数の機能ユニットの間は、図示しないネットワークまたはバスを介して接続されている。PLC2と1または複数のリモートI/O装置3とはネットワークを介して接続されている。
以下では、PLC2またはリモートI/O装置3の各装置において、各装置に装着される機能ユニットとの間でデータを遣り取りする通信線(典型的には、内部ネットワークまたは内部バス)を「ローカルネットワーク」と称し、PLC2と1または複数のリモートI/O装置3との間でデータを遣り取りする通信線を「リモートネットワーク」と称す。「ローカルネットワーク」および「リモートネットワーク」との名称は、説明の便宜上のものであり、本発明の技術的範囲はこれらの名称に限定されるものではない。すなわち、本明細書において、「通信線」は、何らかのプロトコルに従って装置間またはユニット間でデータを送受信するためのフレームワーク全般を包含する。「通信線」は、パラレル通信方式およびシリアル通信方式のいずれであってもよく、また、バスおよびネットワークのいずれであってもよい。
本明細書において、「機能ユニット」は、制御システムによる様々な機械や設備の制御を実現するために必要な各種機能を提供するものを包含する。機能ユニットの一例としては、I/Oユニット、通信ユニット、温度調整ユニット、ID(Identifier)センサユニットなどが挙げられる。
I/Oユニットは、例えば、デジタル入力(DI)ユニット、デジタル出力(DO)ユニット、アナログ出力(AI)ユニット、アナログ出力(AO)ユニット、パルスキャッチ入力ユニット、および、複数の種類を混合させた複合ユニットなどを包含し得る。
温度調整ユニットは、温度計測値などを取得するアナログ入力機能と、制御指令などを出力するアナログ出力機能と、PID(Proportional Integral Differential)制御機能とを含む制御装置を包含し得る。IDセンサユニットは、RFID(Radio Frequency IDentifier)などから非接触でデータを読出す装置を包含し得る。
図1(A)に示す制御システム1において、PLC2に装着される機能ユニットから外部出力される出力信号OUT1と、PLC2とリモートネットワーク5を介して接続されている2つのリモートI/O装置3にそれぞれ装着される機能ユニットからそれぞれ外部出力される出力信号OUT2およびOUT3とについて考える。出力信号OUT1,OUT2,OUT3の各値は、対応する機能ユニットに与えられるデータ(以下、「出力データ」とも称す。)の値を反映するものである。すなわち、出力データは、各機能ユニット150から制御対象の機械や設備などへ外部出力される信号を定義する指令値に相当する。
図1(B)には、PLC2で実行されるユーザプログラムの一例を示す。図1(B)に示すユーザプログラムは、任意の機能ユニットが収集したフィールドなどからの信号(以下、「入力データ」とも称す。)IN1を条件として、3つの出力信号OUT1,OUT2,OUT3を並列的に活性化する命令を含む。
図1(C)のタイムチャートは、図1(B)に示すユーザプログラムに対する出力タイミング同期機能による結果の一例を示す。このタイムチャートに示すように、PLC2に装着された機能ユニットからの出力信号OUT1およびリモートI/O装置3に装着されたそれぞれの機能ユニットからの出力信号OUT2およびOUT3のいずれもが、同一のタイミングt1において、オンからオフに値が変化している。
このように、本実施の形態に係る出力タイミング同期機能は、制御システム1を構成する複数の機能ユニットがいずれの位置に装着されているとしても、指定された出力信号を指定されたタイミングで一斉に出力開始または更新する機能を提供する。
なお、図1には、リモートネットワーク5を介して接続されるリモートI/O装置3に機能ユニットが装着される構成を例示するが、リモートネットワーク5に、個々の機能ユニットが直接的に装着される構成にも適用できる。また、機能ユニットとして、通信ユニットを採用することで、さらに別の下位ネットワークを構成することもできる。このように構成される下位ネットワークに接続される機能ユニットに対しても、出力タイミング同期機能を適用可能である。
<B.装置構成>
次に、本実施の形態に係る制御システム1の装置構成について説明する。図2は、本実施の形態に係る制御システム1の要部構成を示す模式図である。
図2を参照して、本実施の形態に係るPLC2は、典型的には、CPUユニット100と、1または複数の機能ユニット150とから構成される。本実施の形態に係るPLC2は、リモートI/O装置3は、通信カプラユニット200と、1または複数の機能ユニット150とから構成される。
(b1:CPUユニット100)
CPUユニット100は、PLC2を含む制御システム1を構成する一要素であり、制御システム1での処理を制御する演算装置に相当する。CPUユニット100と1または複数の機能ユニット150との間は、通信線の一例であるローカルネットワーク4を介して接続されている。
CPUユニット100は、ローカルマスタ回路110と、リモートマスタ回路120と、演算処理部130と、通信起動回路140とを含む。
ローカルマスタ回路110は、通信線の一例であるローカルネットワーク4を介して、CPUユニット100に装着される1または複数の機能ユニット150(第1の機能ユニット)とデータを送受信する通信回路に相当する。より具体的には、ローカルマスタ回路110は、1または複数の機能ユニット150が収集または生成したデータ(入力データ)を受信し、CPUユニット100により取得または生成されたデータ(出力データ)を1または複数の機能ユニット150へ送信する。
ローカルマスタ回路110は、ローカルネットワーク4と物理的に接続され、通信起動回路140からの指令に従って電気信号を生成して、ローカルネットワーク4上に通信フレームを送信するとともに、ローカルネットワーク4上を伝送される通信フレームを受信して、通信起動回路140を介して演算処理部130へ出力する。ローカルマスタ回路110は、ローカルネットワーク4を介したデータの遣り取りに加えて、ローカルネットワーク4上を転送される通信フレームの到着時間を保証するための時間管理および送受信タイミング管理などを行う機能を有している。
ローカルネットワーク4上では、予め定められたデータ構造を有する通信フレームが所定周期で順次転送されてもよく、CPUユニット100および各機能ユニット150は、順次転送される通信フレームに対して、指定されたデータを指定された領域に書込み、および、必要なデータを対応する領域から読出す。
ローカルネットワーク4は、一種の定周期ネットワークが採用されてもよく、CPUユニット100のローカルマスタ回路110の制御下において、通信フレームの送信および伝送が所定周期毎に繰返される。
このような定周期ネットワークとしては、EtherCAT(登録商標)、EtherNet/IP(登録商標)、DeviceNet(登録商標)、CompoNet(登録商標)などの公知のプロトコルに係るネットワークを採用してもよい。
より具体的には、ローカルマスタ回路110は、送受信ポート112と、送受信コントローラ116と、クロック118とを含む。
送受信ポート112は、ローカルネットワーク4と物理的に接続される部位であり、送受信コントローラ116からの指令に従って電気信号を生成して、ローカルネットワーク4上に送信するとともに、ローカルネットワーク4上に生じる電気信号をデジタル信号に変換して送受信コントローラ116へ出力する。
送受信コントローラ116は、ローカルネットワーク4上を転送される通信フレームの生成および受信に関する処理を行う。
クロック118は、送受信コントローラ116から通信フレームの送信などを指示するタイミングの基準となるパルスを発生する。クロック118としては、リアルタイムクロックを採用することもできるが、本実施の形態においては、所定周期でカウントアップ(インクリメント)するフリーランカウンタ(Free Run Counter)が用いられる。フリーランカウンタが出力するカウンタ値をある時点からの経過時間として扱うことで、現在時刻を計算でき、これによってタイマとして機能させることができる。
リモートマスタ回路120は、通信線の一例であるリモートネットワーク5を介して、リモートI/O装置3に含まれる1または複数の機能ユニット150(第2の機能ユニット)とデータを送受信する。より具体的には、リモートマスタ回路120は、リモートI/O装置3が収集または生成したデータ(入力データ)を受信し、CPUユニット100により取得または生成されたデータ(出力データ)をリモートI/O装置3へ送信する。
リモートマスタ回路120は、リモートネットワーク5と物理的に接続され、通信起動回路140からの指令に従って電気信号を生成して、リモートネットワーク5上に通信フレームを送信するとともに、リモートネットワーク5上を伝送される通信フレームを受信して、通信起動回路140を介して演算処理部130へ出力する。リモートマスタ回路120は、リモートネットワーク5を介したデータの遣り取りに加えて、リモートネットワーク5上を転送される通信フレームの到着時間を保証するための時間管理および送受信タイミング管理などを行う機能を有している。
リモートネットワーク5上では、予め定められたデータ構造を有する通信フレームが所定周期で順次転送されてもよく、各リモートI/O装置3は、順次転送される通信フレームに対して、指定されたデータを指定された領域に書込み、および、必要なデータを対応する領域から読出す。
リモートネットワーク5は、一種の定周期ネットワークが採用されてもよく、CPUユニット100のリモートマスタ回路120の制御下において、通信フレームの送信および伝送が所定周期毎に繰返される。
このような定周期ネットワークとしては、EtherCAT(登録商標)、EtherNet/IP(登録商標)、DeviceNet(登録商標)、CompoNet(登録商標)などの公知のプロトコルに係るネットワークを採用してもよい。
より具体的には、リモートマスタ回路120は、送受信ポート122と、送受信コントローラ126と、クロック128とを含む。
送受信ポート122は、リモートネットワーク5と物理的に接続される部位であり、送受信コントローラ126からの指令に従って電気信号を生成して、リモートネットワーク5上に送信するとともに、リモートネットワーク5上に生じる電気信号をデジタル信号に変換して送受信コントローラ126へ出力する。
送受信コントローラ126は、リモートネットワーク5上を転送される通信フレームの生成および受信に関する処理を行う。
クロック128は、送受信コントローラ126から通信フレームの送信などを指示するタイミングの基準となるクロックを発生する。クロック128としては、リアルタイムクロックを採用することもできるが、本実施の形態においては、所定周期でカウントアップ(インクリメント)するフリーランカウンタが用いられる。
演算処理部130は、プロセッサ132およびメモリ134を含む。説明の便宜上、図1には、1つのプロセッサ132のみを描くが、複数のプロセッサを実装してもよい。なお、各プロセッサは、複数のコアを有していてもよい。
メモリ134は、プロセッサ132でのプログラムの実行に必要なワーク領域を提供する部位(典型的には、揮発性メモリ)と、プロセッサ132で実行されるプログラム自体を格納する部位(典型的には、不揮発性メモリ)とを含む。揮発性メモリとしては、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などを用いることができ、不揮発性メモリとしては、フラッシュメモリやハードディスクなどを用いることができる。
メモリ134は、システムプログラム136およびユーザプログラム137ならびにコンフィギュレーション138などを格納する。システムプログラム136は、プロセッサ132においてユーザプログラム137を実行するためのOS(Operating System)およびライブラリなどを含む。ユーザプログラム137は、典型的には、1または複数の機能ユニット150から取得されるデータ(入力データ)を利用した演算処理(例えば、論理演算や数値演算)や、1または複数の機能ユニット150へ送信するデータ(出力データ)の生成処理を実行するための指令を含み、制御対象の機械や設備に応じて任意に作成される。コンフィギュレーション138は、CPUユニット100でのプログラム実行に必要な各種設定値やネットワーク構成を定義する各種設定値を含む。
通信起動回路140は、演算処理部130とローカルマスタ回路110およびリモートマスタ回路120との間で要求を仲介する機能を有しており、例えば、プロセッサ132からの通信要求に応答して、ローカルマスタ回路110および/またはリモートマスタ回路120に対して、出力データを含む通信フレームの送信を要求する。通信起動回路140は、クロック142を有しており、クロック142が発生するクロックをタイミングの基準として、ローカルマスタ回路110および/またはリモートマスタ回路120での通信フレームの送信タイミングなどを管理する。クロック142は、制御システム1における時刻を管理するマスタクロック(後述する、「グランドマスタクロック」)として機能する。
通信起動回路140の少なくとも主要部については、ハードワイヤードな構成を有することで、プロセッサ132より高速な処理を実現する。すなわち、通信起動回路140は、ハードウェアロジックを用いて実現される。例えば、通信起動回路140は、PLD(Programmable Logic Device)の一例であるFPGA(Field-Programmable Gate Array)や、IC(Integrated Circuit)の一例であるASIC(Application Specific Integrated Circuit)などを用いて実装されてもよい。
図1に示す構成においては、説明の便宜上、ローカルマスタ回路110と、リモートマスタ回路120と、演算処理部130と、通信起動回路140との4つに区別して構成を描いているが、これに限られることなく任意の実装形態を採用できる。例えば、演算処理部130の全部または一部と通信起動回路140とを同一のチップ上に実装したSoC(System on Chip)で構成してもよい。あるいは、演算処理部130の全体を単一のチップ上に実装するとともに、ローカルマスタ回路110、リモートマスタ回路120、および、通信起動回路140をそれぞれ別のチップ上に実装してもよい。このような実装形態については、要求される性能やコストなどを考慮して適宜選択される。
(b2:機能ユニット150)
機能ユニット150は、制御システム1による様々な機械や設備の制御を実現するために必要な各種機能を提供する。より具体的には、機能ユニット150の各々は、機能モジュール156と、I/Oインターフェイス158と、通信回路160とを含む。
機能モジュール156は、各機能ユニット150の主たる処理を実行する部分であり、制御対象の機械や設備などからのフィールド情報の収集や、制御対象の機械や設備などへの指令信号の出力などを司る。
I/Oインターフェイス158は、制御対象の機械や設備などとの間の信号の遣り取りを仲介する回路である。
通信回路160は、ローカルネットワーク4を順次転送される通信フレームを処理する。すなわち、通信回路160は、ローカルネットワーク4を介して何らかの通信フレームを受信すると、当該受信した通信フレームに対するデータ書込みおよび/またはデータ読出しを行った後に、ローカルネットワーク4上において次に位置する機能ユニット150へ当該通信フレームを送信する。通信回路160は、このようなフレームリレーの機能を提供する。
より具体的には、通信回路160は、送受信ポート162,164と、送受信コントローラ166と、クロック168とを含む。
送受信ポート162,164は、ローカルネットワーク4と物理的に接続される部位であり、送受信コントローラ166からの指令に従って、ローカルネットワーク4上を伝送される通信フレームの受信および再生などの処理を行うことで、通信フレームの順次転送を実現する。
送受信コントローラ166は、ローカルネットワーク4上を転送される通信フレームに対するデータ書込みおよび/またはデータ読出しを行う。
クロック168は、送受信コントローラ166による指令出力や機能モジュール156での処理実行などのタイミングの基準となるクロックを発生する。クロック168としては、リアルタイムクロックを採用することもできるが、本実施の形態においては、所定周期でカウントアップ(インクリメント)するフリーランカウンタが用いられる。
(b3:通信カプラユニット200)
通信カプラユニット200は、CPUユニット100と1または複数の機能ユニット150との間のデータの遣り取りを行う中継装置に相当する。通信カプラユニット200と1または複数の機能ユニット150との間は、通信線の一例であるローカルネットワーク6を介して接続されている。また、通信カプラユニット200とCPUユニット100との間は、通信線の一例であるリモートネットワーク5を介して接続されている。
ローカルネットワーク6は、上述のCPUユニット100のローカルネットワーク4と実質的に同一であるので、ここではその詳細な説明は繰返さない。但し、ローカルネットワーク4とローカルネットワーク6とに対して同一のプロトコルを採用する必要はなく、それぞれの装置に応じたプロトコルを採用すればよい。
通信カプラユニット200は、ローカルマスタ回路210と、リモートスレーブ回路220とを含む。
ローカルマスタ回路210は、通信線の一例であるローカルネットワーク6を介して、通信カプラユニット200に装着される1または複数の機能ユニット150とデータを遣り取りする。より具体的には、ローカルマスタ回路210は、1または複数の機能ユニット150が収集または生成したデータ(入力データ)を受信し、CPUユニット100からリモートネットワーク5を介して受信したデータ(出力データ)を1または複数の機能ユニット150へ送信する。
ローカルマスタ回路210は、ローカルネットワーク6と物理的に接続され、リモートスレーブ回路220からの指令に従って電気信号を生成して、ローカルネットワーク6上に通信フレームを送信するとともに、ローカルネットワーク6上を伝送される通信フレームを受信して、リモートスレーブ回路220へ出力する。ローカルマスタ回路210は、ローカルネットワーク6を介したデータの遣り取りに加えて、ローカルネットワーク6上を転送される通信フレームの到着時間を保証するための時間管理および送受信タイミング管理などを行う機能を有している。
より具体的には、ローカルマスタ回路210は、送受信ポート212と、送受信コントローラ216と、クロック218とを含む。
送受信ポート212は、ローカルネットワーク6と物理的に接続される部位であり、送受信コントローラ216からの指令に従って電気信号を生成して、ローカルネットワーク6上に送信するとともに、ローカルネットワーク6上に生じる電気信号をデジタル信号に変換して送受信コントローラ216へ出力する。
送受信コントローラ216は、ローカルネットワーク6上を転送される通信フレームの生成および受信に関する処理を行う。
クロック218は、送受信コントローラ216から通信フレームの送信などを指示するタイミングの基準となるクロックを発生する。クロック218としては、リアルタイムクロックを採用することもできるが、本実施の形態においては、所定周期でカウントアップ(インクリメント)するフリーランカウンタが用いられる。
リモートスレーブ回路220は、通信線の一例であるリモートネットワーク5を介して、CPUユニット100または他の通信カプラユニット200との間でデータを遣り取りする。より具体的には、リモートスレーブ回路220は、ローカルマスタ回路210が受信する機能ユニット150からの通信フレームに含まれる入力データをCPUユニット100へ送信し、CPUユニット100から受信した通信フレームに含まれる出力データを、ローカルマスタ回路210を介してそれぞれの機能ユニット150へ送信する。
リモートスレーブ回路220は、リモートネットワーク5上を介して受信した通信フレームの内容に従って、ローカルマスタ回路210へ必要な起動指令を与える。リモートスレーブ回路220は、ローカルネットワーク6上を伝送される通信フレームの送受信に係る処理に加えて、ローカルネットワーク6上を伝送される通信フレームの送信タイミングを管理する処理も実行する。
より具体的には、リモートスレーブ回路220は、送受信ポート222,224と、送受信コントローラ226と、クロック228とを含む。
送受信ポート222,224は、リモートネットワーク5と物理的に接続される部位であり、送受信コントローラ226からの指令に従って、リモートネットワーク5上を伝送される通信フレームの受信および再生などの処理を行うことで、通信フレームの順次転送を実現する。
送受信コントローラ226は、リモートネットワーク5上を転送される通信フレームに対するデータ書込みおよび/またはデータ読出しを行う。
クロック228は、リモートネットワーク5上を転送される通信フレームに対する処理や、ローカルネットワーク6上を転送される通信フレームの送信といったタイミングの基準となるクロックを発生する。クロック228としては、リアルタイムクロックを採用することもできるが、本実施の形態においては、所定周期でカウントアップ(インクリメント)するフリーランカウンタが用いられる。
なお、通信カプラユニット200に装着される機能ユニット150については、上述のCPUユニット100に装着される機能ユニット150と実質的に同一であるので、ここではその詳細な説明は繰返さない。
<C.機能ユニットへの出力データの送信>
次に、本実施の形態に係る制御システム1においてそれぞれの機能ユニット150に対して出力データを送信するために必要な処理について説明する。図3は、本実施の形態に係る制御システム1において出力信号を出力開始または更新するために必要な処理を説明するための図である。
図3を参照して、CPUユニット100に装着される機能ユニット150および通信カプラユニット200に装着される機能ユニット150のそれぞれから出力信号を出力開始または更新する際の処理について説明する。
まず、CPUユニット100(演算処理部130)において、それぞれの機能ユニット150へ向けられる出力データが生成され、その生成されたデータを通信フレームに格納して送信するためのパック処理が実行される((1)パック処理)。
CPUユニット100に装着された機能ユニット150からの出力信号を定義する出力データについては、対象の出力データが格納された通信フレームがローカルネットワーク4を介して対象の機能ユニット150へ伝送される((2)通信フレーム伝送)。そして、対象の機能ユニット150においては、受信した通信フレームから必要な出力データを読出すなどの処理が実行されるとともに、読出された出力データが現実の信号として外部出力される((3)出力処理)。
一方、通信カプラユニット200に装着された機能ユニット150からの出力信号を定義する出力データについては、対象の出力データが格納された通信フレームがリモートネットワーク5を介して対象の機能ユニット150が装着された通信カプラユニット200へ伝送される((4)通信フレーム伝送)。通信フレームを受信した通信カプラユニット200は、受信した通信フレームから必要な出力データを読出すなどの処理を実行した上で、読出した出力データを新たな通信フレームに格納して送信する((5)出力データ処理)。この新たな通信フレームは、ローカルネットワーク6を介して対象の機能ユニット150へ伝送される((6)通信フレーム伝送)。そして、対象の機能ユニット150においては、受信した通信フレームから必要な出力データを読出すなどの処理が実行されるとともに、読出された出力データが現実の信号として外部出力される((7)出力処理)。
このように、CPUユニット100に装着される機能ユニット150に対しては、CPUユニット100にて生成した通信フレームをローカルネットワーク4にてそのまま送信すればよいが、通信カプラユニット200に装着される機能ユニット150に対しては、CPUユニット100にて生成した通信フレームをリモートネットワーク5にて対応する通信カプラユニット200へ一旦送信した上で、その通信カプラユニット200にて新たに通信フレームを生成した上でローカルネットワーク6にて対象の機能ユニット150へ送信する必要がある。すなわち、通信カプラユニット200に装着された機能ユニット150については、2段階のネットワークを経由する必要があり、CPUユニット100に装着された機能ユニット150に対して出力データを送信する場合に比較して、より多くの時間を要するとともに、途中の処理も煩雑化する。
<D.通信フレームの例>
次に、本実施の形態に係る制御システム1において用いられる通信フレームの一例について説明する。本実施の形態においては、実装例として、I/Oリフレッシュを行うための通信フレームが用いられる。I/Oリフレッシュとは、CPUユニット100が保持する入力データの値を対応する機能ユニット150が収集した最新の値に更新する処理(入力リフレッシュ)と、CPUユニット100で算出された出力データの値を対応する機能ユニット150の出力値として反映する処理(出力リフレッシュ)とを包含する概念である。
このような通信フレームとして、I/Oリフレッシュフレームが採用される。I/Oリフレッシュフレームは、入力リフレッシュに必要な入力データおよび出力リフレッシュに必要な出力データの両方を格納可能に構成される。なお、入力リフレッシュおよび出力リフレッシュをそれぞれ別々に実行するように実装してもよい。その場合には、入力データおよび出力データの一方のみをそれぞれ格納するように構成した通信フレームが採用される。
図4は、本実施の形態に係る制御システム1において用いられるI/Oリフレッシュフレームのデータ構造の一例を示す模式図である。図4を参照して、I/Oリフレッシュフレームは、フレーム種別や宛先などを格納するためのヘッダ部と、データを格納する本体部とからなる。
ヘッダ部に格納されるフレーム種別としては、通信フレームの種類を特定するための識別情報が用いられてもよく、例えば、ユニキャスト、マルチキャスト、ブロードキャストのいずれであるかを示す識別情報が用いられる。宛先としては、送信先の機能ユニット150や通信カプラユニット200の識別情報などが用いられる。
本体部には、入力データの領域および出力データの領域が規定されており、それぞれの領域は、I/Oリフレッシュフレームの転送経路に存在する機能ユニット150または通信カプラユニット200の全部または一部のそれぞれに対応付けられている。
機能ユニット150または通信カプラユニット200の各々は、I/Oリフレッシュフレームを受信すると、自ユニットに割当てられている領域に格納されている出力データを読出すとともに、自ユニットが収集または生成した入力データを自ユニットに割当てられている領域に書込む。このような出力データの読出しおよび入力データの書込みが各ユニットにおいて実行されることで、I/Oリフレッシュを実現できる。
図4には、1または複数の機能ユニット150または通信カプラユニット200からの入力データ、および、1または複数の機能ユニット150または通信カプラユニット200への出力データを単一の通信フレームに格納したデータ構造の例を示したが、いずれか一方のデータのみを格納する通信フレームを採用してもよい。この場合、例えば、入力データ用の通信フレームと、出力データ用の通信フレームとをそれぞれ用意してもよい。また、I/Oリフレッシュの対象となる入力データおよび出力データは、予めコンフィグレーションされており、機能ユニット150が収集したデータの全部がCPUユニット100へ送信されない場合もある。
<E.制御システムにおける各ユニットの処理タイミング>
次に、本実施の形態に係る制御システム1が提供する出力タイミング同期機能に係る処理タイミングについて説明する。図5は、本実施の形態に係る制御システム1が提供する出力タイミング同期機能に係る各部の処理を示すタイミングチャートである。図5には、主として、出力リフレッシュに関する処理を示す。
図5を参照して、CPUユニット100(演算処理部130のプロセッサ132)は、I/Oリフレッシュ処理の実行によって生成された出力データを送信するための前処理(ステップS1:スケジューラパック処理)、リモートネットワーク5により送信される通信フレームに出力データを格納するための前処理(ステップS2:出力データパック処理1)、および、ローカルネットワーク4により送信される通信フレームに出力データを格納するための前処理(ステップS3:出力データパック処理2)を順次実行する。これらの3つのパック処理は、図3に示す(1)パック処理に相当する。
出力データパック処理2(ステップS3)の実行完了のタイミングでローカルマスタ回路110(図2)に対して起動指令が与えられて、I/Oリフレッシュフレームである通信フレーム304がローカルネットワーク4へ送出される。
ローカルネットワーク4に接続されている機能ユニット150の各々は、ローカルネットワーク4上を順次転送される通信フレーム304の到着前に、CPUユニット100へ送信すべき入力データの収集などを含む入力処理(ステップS4)を予め実行する。そして、機能ユニット150は、通信フレーム304を受信すると、予め用意していた入力データを当該受信した通信フレーム304に書込むとともに、当該受信した通信フレーム304から自ユニット宛ての出力データを読出す。そして、機能ユニット150の各々は、読出した出力データに対応する信号を外部出力する処理を含む出力処理を実行する(ステップS5)。
また、出力データパック処理1(ステップS2)の実行完了のタイミングでリモートマスタ回路120(図2)に対して起動指令が与えられて、I/Oリフレッシュフレームである通信フレーム305がリモートネットワーク5へ送出される。通信フレーム305が送信されたタイミングを「起動基準時刻Tt」と称する。通信フレーム305はリモートネットワーク5上を順次転送される。
通信カプラユニット200は、リモートネットワーク5上を順次転送される通信フレーム305の到着前に、CPUユニット100へ送信すべき入力データの収集などを含む入力データ処理(ステップS6)を予め実行する。そして、通信カプラユニット200は、通信フレーム305を受信すると、予め用意していた入力データを当該受信した通信フレーム305に書込むとともに、当該受信した通信フレーム305から自ユニット宛ての出力データを読出す。
続いて、ローカルマスタ回路210(図2)に対して起動指令が与えられて、出力データを含む通信フレーム306がローカルネットワーク6へ送出される。ローカルネットワーク6に接続されている機能ユニット150の各々は、ローカルネットワーク6上を順次転送される通信フレーム306を受信すると、当該受信した通信フレーム306から自ユニット宛ての出力データを読出す。そして、機能ユニット150の各々は、読出した出力データに対応する信号を外部出力する処理を含む出力処理を実行する(ステップS8)。
図5に示すタイムチャートにおいて、CPUユニット100に装着された機能ユニット150から出力データが出力可能になるタイミングは時刻Tout1となる。時刻Tout1は、各機能ユニット150が接続されている位置および各機能ユニット150の性能に応じて変化し得る。そこで、本実施の形態においては、CPUユニット100に装着された各機能ユニット150について、CPUユニット100において通信フレームを送出する指定がなされてから、当該通信フレームに含まれる出力データを出力可能な状態になるまでに要する遅れ時間がそれぞれ算出され、算出された遅れ時間のうち最大のもの(最大遅れ時間Dmax1)が決定される。
同様に、通信カプラユニット200に装着された機能ユニット150から出力データが出力可能になるタイミングは時刻Tout2となる。時刻Tout2は、各機能ユニット150が接続されているネットワークトポロジー上の位置および各機能ユニット150の性能に応じて変化し得る。そこで、本実施の形態においては、通信カプラユニット200に装着された各機能ユニット150について、CPUユニット100において通信フレームを送出する指定がなされてから、当該通信フレームに含まれる出力データを出力可能な状態になるまでに要する遅れ時間がそれぞれ算出され、算出された遅れ時間のうち最大のもの(最大遅れ時間Dmax2)が決定される。
その上で、最大遅れ時間Dmax1および最大遅れ時間Dmax2のうちより長いものに対応する時刻を、制御システム1全体についての出力同期タイミングToutとして決定する。典型的には、起動基準時刻Ttに最大遅れ時間Dmax1または最大遅れ時間Dmax2を加算した時刻が出力同期タイミングToutとなる。
一例として、図5には、最大遅れ時間Dmax1<最大遅れ時間Dmax2の例を示し、この例においては、時刻Tout2が出力同期タイミングToutとして設定されてもよい。
このように、本実施の形態においては、CPUユニット100から出力データの送信が要求された後、各機能ユニット150にて当該出力データに対応する信号が出力可能になるまでに要する最大遅れ時間を算出し、システム全体としての最大の遅れ時間を考慮した上で、出力同期タイミングを決定する。そして、各ユニットが保持する互いに同期されたクロックに対して、出力同期タイミングに応じたタイミングを設定することで、各機能ユニット150から出力データに対応する信号が一斉に外部出力される。
以下、最大遅れ時間および出力同期タイミングの算出方法について説明するとともに、クロックの同期および出力同期タイミングの設定方法などについて説明する。
<F.最大遅れ時間および出力同期タイミングの算出方法>
次に、最大遅れ時間および出力同期タイミングの算出方法について説明する。
例えば、通信カプラユニット200に装着された各機能ユニット150についての最大遅れ時間Dmax2は、各機能ユニット150が接続されているネットワークトポロジー上の位置、および、各機能ユニット150自体の性能に依存して定まる。典型的には、最大遅れ時間の算出には、以下の(1)〜(5)の時間要素の少なくとも一部が考慮される。
(1)CPUユニット100のリモートマスタ回路120に対して出力データの送信指令(起動指令)が与えられてからリモートネットワーク5上に当該出力データを含む通信フレームが送出されるまでに要する時間(リモートマスタ回路起動遅延時間)。
(2)リモートネットワーク5上に送出された出力データを含む通信フレームがリモートマスタ回路120から対象の通信カプラユニット200まで転送されるのに要する時間(リモートネットワーク伝送遅延時間)。
(3)通信カプラユニット200で受信された出力データを含む通信フレームが受信および処理されて、ローカルネットワーク6上に出力データを含む別の通信フレームとして送出されるまでの時間(通信カプラ処理時間)。
(4)ローカルネットワーク6上に送出された出力データを含む通信フレームが通信カプラユニット200から対象の機能ユニット150まで転送されるのに要する時間(ローカルネットワーク伝送遅延時間)。
(5)各機能ユニット150が出力データを含む通信フレームを受信してから当該受信データに対応する信号が機能ユニット150から出力可能になるまでに要する時間(機能ユニット処理時間)。
制御システム1に含まれる機能ユニット150の各々について、上述の(1)〜(5)の時間要素の合計(機能ユニット150毎の遅れ時間)がそれぞれ算出される。そして、これらの遅れ時間のうち最大のものが最大遅れ時間Dmax2として決定される。
このように、CPUユニット100(リモートマスタ回路120)から見て、各機能ユニット150にて出力データに対応する信号が出力可能になるのに要する最大時間(最大遅れ時間Dmax2)が算出される。最大遅れ時間Dmax2は、リモートマスタ回路120に対して起動指令が与えられる時刻(図5の起動基準時刻Tt)からの経過時間(オフセット時間)として算出されてもよい。
なお、上述の(1)〜(5)の時間要素の間でオーダが大きく異なるものについては、必ずしも考慮する必要はない。例えば、リモートマスタ回路起動遅延時間が通信フレームの伝送遅延時間から見て無視できる程度に小さい場合などは、リモートマスタ回路起動遅延時間を予め定められた一定値に設定、または考慮しないようにしてもよい。
図6は、本実施の形態に係る制御システム1が提供する出力タイミング同期機能に係る最大遅れ時間Dmax2の算出手順を説明するための図である。図6には、説明の便宜上、表形式で算出結果の一例を示すが、このような表形式を視覚化する必要はなく、内部的な処理として実装してもよい。
図6を参照して、リモートネットワーク5に接続されるそれぞれの通信カプラユニット200がリスト形式で設定される(欄401)。通信カプラユニット200の各々に装着されたそれぞれの機能ユニット150がリスト形式で設定される(欄402)。また、各機能ユニット150の種別についても設定される(欄403)。これらの情報は、一般的には、コンフィギュレーション138(図2)の一部として予め設定されている。あるいは、CPUユニット100で実行されるプログラムの開発や保守を行うためのサポート装置に格納されるコンフィギュレーションを参照して取得してもよい。
機能ユニット150の各々に関連付けて、リモートマスタ回路起動遅延時間404、リモートネットワーク伝送遅延時間405、通信カプラ処理時間406、ローカルネットワーク伝送遅延時間407、および、機能ユニット処理時間408の各時間が設定される。
リモートマスタ回路起動遅延時間404は、一般的には、CPUユニット100のリモートマスタ回路120に固有の性能である。そのため、CPUユニット100の識別情報(形式番号など)毎に定義されたリモートマスタ回路起動遅延時間404のデータベースを予め用意しておき、このデータベースを参照するなどして取得することができる。
リモートネットワーク伝送遅延時間405は、一般的には、CPUユニット100(リモートマスタ回路120)からのリモートネットワーク5の経路上に存在するノード数/ホップ数、ならびに、CPUユニット100(リモートマスタ回路120)からのリモートネットワーク5の経路長さ(すなわち、ケーブル長)、などに依存する。例えば、CPUユニット100から遠い位置に配置された通信カプラユニット200には、CPUユニット100に近い位置に配置された通信カプラユニット200より大きなリモートネットワーク伝送遅延時間405が生じる。そのため、リモートネットワーク5における通信カプラユニット200の接続状態(ネットワークトポロジー)などを考慮して、リモートネットワーク伝送遅延時間405の値が算出される。リモートネットワーク伝送遅延時間405の値を算出するにあたっては、ネットワークトポロジーに関するパラメータを含む関数式を採用してもよい。あるいは、リモートネットワーク5における通信フレームの伝送に要する実測の時間を用いてもよい。
通信カプラ処理時間406は、一般的には、通信カプラユニット200のローカルマスタ回路210およびリモートスレーブ回路220に固有の性能である。そのため、通信カプラユニット200の識別情報(形式番号など)毎に定義された通信カプラ処理時間406のデータベースを予め用意しておき、このデータベースを参照するなどして取得することができる。
ローカルネットワーク伝送遅延時間407は、一般的には、通信カプラユニット200(リモートスレーブ回路220)からのローカルネットワーク6の経路上に存在するノード数/ホップ数などに依存する。例えば、通信カプラユニット200から遠い位置に配置された機能ユニット150には、通信カプラユニット200に近い位置に配置された機能ユニット150より大きなローカルネットワーク伝送遅延時間407が生じる。そのため、ローカルネットワーク6における機能ユニット150の接続状態(ネットワークトポロジー)などを考慮して、ローカルネットワーク伝送遅延時間407の値が算出される。ローカルネットワーク伝送遅延時間407の値を算出するにあたっては、ネットワークトポロジーに関するパラメータを含む関数式を採用してもよい。あるいは、ローカルネットワーク6における通信フレームの伝送に要する実測の時間を用いてもよい。
機能ユニット処理時間408は、各機能ユニット150が提供する機能などに依存する。一般的には、アナログ出力(AO)ユニットは、デジタル出力(DO)ユニットに比較して、出力データが与えられてから、その出力データに対応する信号を実際に出力可能な状態にするまでにより多くの時間を要する。一般的には、機能ユニット処理時間408は、各機能ユニット150に固有の性能である。そのため、機能ユニット150の種別情報(形式番号など)毎に定義された機能ユニット処理時間408のデータベースを予め用意しておき、このデータベースを参照するなどして取得することができる。
以上のようなそれぞれの時間要素を考慮することで、制御システム1に含まれる各機能ユニット150についての遅れ時間を示す合計を算出できる(欄409)。これらの遅れ時間のうち、その値が最も大きなもの(図6中の合計410)が最大遅れ時間Dmax2として決定される。
また、CPUユニット100に装着された各機能ユニット150についての最大遅れ時間Dmax1は、典型的には、以下の(6)〜(8)の時間要素の少なくとも一部が考慮される。
(6)CPUユニット100のローカルマスタ回路110に対して出力データの送信指令(起動指令)が与えられてからローカルネットワーク4上に当該出力データを含む通信フレームが送出されるまでに要する時間(ローカルマスタ回路起動遅延時間)。
(7)ローカルネットワーク4上に送出された出力データを含む通信フレームがCPUユニット100から対象の機能ユニット150まで転送されるのに要する時間(ローカルネットワーク伝送遅延時間)。
(8)各機能ユニット150が出力データを含む通信フレームを受信してから当該受信データに対応する信号が機能ユニット150から出力可能になるまでに要する時間(機能ユニット処理時間)。
制御システム1に含まれる機能ユニット150の各々について、上述の(6)〜(8)の時間要素の合計(機能ユニット150毎の遅れ時間)がそれぞれ算出される。そして、これらの遅れ時間のうち最大のものが最大遅れ時間Dmax1として決定される。
(6)〜(8)の時間要素は、上述の(1)、(4)、(5)とそれぞれ同様の内容であるので、詳細な説明は繰返さない。
このように、CPUユニット100(ローカルマスタ回路110)から見て、各機能ユニット150での出力データに対応する信号が出力可能になるのに要する最大時間(最大遅れ時間Dmax1)が算出される。最大遅れ時間Dmax1は、リモートマスタ回路120に対して起動指令が与えられる時刻(図5の起動基準時刻Tt)からの経過時間(オフセット時間)として算出されてもよい。
上述の時間要素のうち、(2)、(4)、(7)の伝送遅延時間については、CPUユニット100または通信カプラユニット200から最も遠い位置に配置されたユニット(スレーブユニット)までの時間(最悪値)を一律に採用してもよい。このような最悪値を採用することで、ある程度のマージンをもって最大遅れ時間を算出することができる。ネットワークに接続される複数のユニットの間で通信フレームを順次転送する場合において、通信フレームの転送に最後に関与したユニットが当該通信フレームに書込む、各ユニットが保持するクロックのカウント値などに基づいて決定してもよい。このような場合には、事前のデータベースの作成などは必要なく、現実の実測値に基づいて、伝送遅延時間が決定される。
また、各機能ユニット150が自ユニットの性能などに関する情報を保持している場合には、CPUユニット100がそれらの情報を読出した上で、各機能ユニット150についての最大遅れ時間を算出するようにしてもよい。各機能ユニット150が保持する情報は、工場出荷時に実測された値を含んでいてもよいし、動作に伴うログなどを含んでいてもよい。これらの情報を反映することで、最大遅れ時間をより高い精度で算出できる。
<G.クロックの同期および出力同期タイミングの設定方法>
次に、クロックの同期および出力同期タイミングの設定方法について説明する。
図7は、本実施の形態に係る制御システム1に分散配置されるクロックに着目した模式図である。図7を参照して、本実施の形態に係る制御システム1においては、グランドマスタクロック(Ground Master Clock)と、バウンダリークロック(Boundary Clock)と、オーディナリークロック(Ordinary Clock)との3階層で、各ユニットに配置されたクロック同士の同期を維持する。
例えば、EtherCAT(登録商標)に従うネットワークにおいては、distributed clock機能を用いて、スレーブ(機能ユニット150)間で高精度に時刻を同期させることができる。また、任意のPTP(Precision Time Protocol)を採用することで、複数の装置またはユニットの間で高精度に時刻を同期させることができる。このような階層的な構成を採用して互いに同期をとる方法については公知であるので、ここでは、詳細な説明は繰返さない。
CPUユニット100は、通信起動回路140のクロック142と、ローカルマスタ回路110のクロック118と、リモートマスタ回路120のクロック128とを含む。本実施の形態においては、通信起動回路140のクロック142が制御システム1の時刻基準となるグランドマスタクロックとして機能し、ローカルマスタ回路110のクロック118は、このグランドマスタクロックと同期する、バウンダリークロックとして機能する。
ローカルマスタ回路110に接続される機能ユニット150に含まれるクロック168の各々をオーディナリークロックとして機能させることができる。つまり、CPUユニット100に装着される機能ユニット150の各々は、ローカルマスタ回路110のクロック118を基準にして時刻同期する。そして、ローカルマスタ回路110のクロック118は、グランドマスタクロックである通信起動回路140のクロック142と時刻同期する。そのため、CPUユニット100に装着された機能ユニット150(第1の機能ユニット)は、グランドマスタクロックであるクロック142と同期されるクロック168(第1のクロック)を有することになる。
一方、リモートマスタ回路120のクロック128は、通信起動回路140のクロック142と実質的に同一なものとして構成され、仮想的なグランドマスタクロックとして機能する。このような構成を採用することで、CPUユニット100に接続される通信カプラユニット200の各々において、リモートスレーブ回路220のクロック228はバウンダリークロックとして機能する。各通信カプラユニット200において、ローカルマスタ回路210のクロック218についても、リモートスレーブ回路220のクロック228と時刻同期して、バウンダリークロックとして機能する。そして、ローカルマスタ回路210に接続される機能ユニット150に含まれるクロック168の各々をオーディナリークロックとして機能させることができる。
このように、通信カプラユニット200に装着された機能ユニット150(第2の機能ユニット)は、グランドマスタクロックであるクロック142と同期されるクロック168(第2のクロック)を有することになる。
以上のような階層的な構成によって、CPUユニット100、通信カプラユニット200、機能ユニット150の各々が保持するクロックの間で同期をとることができる。つまり、いずれのユニットにおいても、共通のクロックに従って各種制御およびアクションを実行することができる。このような環境下において、所定周期毎に設定される起動基準時刻Tt、および、起動基準時刻Ttを基準として設定される出力同期タイミングToutが各ユニットに対して指定され、各ユニットは指定されたタイミングで指定された処理を実行する。
上述したように、最大遅れ時間Dmax1および最大遅れ時間Dmax2のうちより長いものに応じて、制御システム1全体についての出力同期タイミングToutを決定する。但し、タスク周期を維持する観点から、最大遅れ時間Dmax1および最大遅れ時間Dmax2のうちより短いものに応じて、制御システム1全体についての出力同期タイミングToutを決定してもよい。そして、この決定された出力同期タイミングToutにて、各機能ユニット150から出力データに対応する信号が外部出力されるように、CPUユニット100および各機能ユニット150に対して必要なタイミングが通知される。
再度図5を参照して、CPUユニット100および各機能ユニット150に通知されるタイミングについて説明する。なお、指定されたタイミングは、カウント値またはクロック値の形で通知されてもよい。
例えば、CPUユニット100に対しては、パック処理(スケジューラパック処理、出力データパック処理1、出力データパック処理2)の実行開始をトリガする開始タイミングTR1が設定される。
また、CPUユニット100に装着される機能ユニット150に対しては、出力処理の実行開始をトリガする開始タイミングTR3が設定される。このように、CPUユニット100に装着される機能ユニット150(第1の機能ユニット)において受信された出力データに対応する信号を出力するための処理(出力処理)を開始すべき開始タイミングTR3(第1のタイミング)が指示される。なお、CPUユニット100に装着される機能ユニット150に対しては、入力処理の実行開始をトリガする開始タイミングTR2がさらに設定されてもよい。
一方、通信カプラユニット200に装着される機能ユニット150に対しては、出力処理の実行開始をトリガする開始タイミングTR4が設定される。このように、通信カプラユニット200に装着される機能ユニット150(第2の機能ユニット)において受信された出力データに対応する信号を出力するための処理(出力処理)を開始すべき開始タイミングTR4(第2のタイミング)が指示される。なお、通信カプラユニット200に装着される機能ユニット150に対しては、図示しない入力処理の実行開始をトリガする開始タイミングがさらに設定されてもよい。
必要な開始タイミングがCPUユニット100および機能ユニット150に設定されることで、本実施の形態に係る出力タイミング同期機能が実現される。つまり、制御システム1に含まれる機能ユニット150の間で出力データに対応する信号を外部出力または更新するタイミングを互いに同期させることができる。
上述したような出力同期タイミングの算出および設定については、任意の1または複数の演算主体によって実現されてもよい。典型的には、出力同期タイミングの算出および設定を行うためのロジックをCPUユニット100内に実装してもよいし、あるいは、出力同期タイミングの算出および設定を行うための機能をサポート装置に実装してもよい。
いずれの実装においても、CPUユニット100がそれぞれの機能ユニット150へ、開始タイミングTR3(第1のタイミング)または開始タイミングTR4(第2のタイミング)を指示する。なお、これらの開始タイミングTR3およびTR4は、図5に示すタイムチャートなどから明らかなように、CPUユニット100のグランドマスタクロックであるクロック142が管理する時刻(例えば、起動基準時刻Tt)を基準に設定される。これは、制御システム1に含まれる機能ユニット150の各々がグランドマスタクロックであるクロック142と直接的または間接的に時刻同期を行っているからである。
図8は、本実施の形態に係る制御システム1において出力同期タイミングを設定するための構成例を示す模式図である。図8(A)は、出力同期タイミングの算出および設定を行うためのロジックがCPUユニット100内に実装された構成例を示し、図8(B)は、サポート装置が出力同期タイミングの算出および設定を行うための機能を有する構成例を示す。
図8(A)に示すCPUユニット100の演算処理部130には、最大遅れ時間を算出する機能M1と、出力同期タイミングを決定する機能M2と、決定した出力同期タイミングに応じたタイミングを指示する機能M3とが実装されている。これらの機能は、システムプログラム136(図2)に含まれる命令コードによって実現されてもよい。つまり、演算処理部130のプロセッサ132がシステムプログラム136を実行することで、これらの機能M1〜M3を実現してもよい。
以上のように、本実施の形態に係る出力タイミング同期機能に必要なタイミングなどのパラメータを決定する機能については、制御システム1に必ずしも実装する必要はなく、サポート装置300といった外部の装置から設定されるようにしてもよい。
最大遅れ時間を算出する機能M1は、より具体的には、CPUユニット100においてローカルマスタ回路110に対して出力データの送信が要求されてから、当該出力データに対応する信号が送信先の機能ユニット150において出力可能になるまでに要する遅れ時間(その遅れ時間のうち最大のものが最大遅れ時間Dmax1)と、CPUユニット100においてリモートマスタ回路120に対して出力データの送信が要求されてから、当該出力データに対応する信号が送信先の機能ユニット150において出力可能になるまでに要する遅れ時間(その遅れ時間のうち最大のものが最大遅れ時間Dmax2)とを算出する機能を含む。
出力同期タイミングを決定する機能M2は、より具体的には、最大遅れ時間Dmax1および最大遅れ時間Dmax2に基づいて、制御システム1に含まれる機能ユニット150が信号を出力する出力同期タイミングToutを決定する機能を含む。そして、出力同期タイミングを決定する機能M2は、決定された出力同期タイミングToutに基づいて、CPUユニット100に装着される機能ユニット150(第1の機能ユニット)において出力処理を開始すべき開始タイミングTR3(第1のタイミング)、および、通信カプラユニット200に装着される機能ユニット150(第2の機能ユニット)において出力処理を開始すべき開始タイミングTR4(第2のタイミング)を決定する(いずれも図5参照)。
図8(B)には、CPUユニット100に接続されたサポート装置300上に、最大遅れ時間を算出する機能M1と、出力同期タイミングを決定する機能M2とが実装されている。これらの機能M1およびM2は、サポート装置300で実行されるサポートプログラムによって提供されてもよい。一方、決定した出力同期タイミングに応じたタイミングを指示する機能M3については、CPUユニット100に実装されることが好ましい。
図8(B)に示すように、サポート装置300にてタイミングを算出する場合には、機能M3は、CPUユニット100に接続されたサポート装置300(外部装置)から、CPUユニット100に装着される機能ユニット150(第1の機能ユニット)において出力処理を開始すべき開始タイミングTR3(第1のタイミング)、および、通信カプラユニット200に装着される機能ユニット150(第2の機能ユニット)において出力処理を開始すべき開始タイミングTR4(第2のタイミング)を取得する。
但し、決定した出力同期タイミングに応じたタイミングを指示する機能M3についても、サポート装置300上に実装してもよい。この場合、サポート装置300が各機能ユニット150に対してタイミングを直接的に設定することになる。このような場合であっても、CPUユニット100または通信カプラユニット200が設定する処理を補助する。
<H.処理手順>
次に、本実施の形態に係る出力タイミング同期機能の処理手順について説明する。図9は、本実施の形態に係る制御システム1における出力タイミング同期機能に係る処理手順を示すフローチャートである。図9には、典型例として、CPUユニット100のプロセッサ132がシステムプログラム136を実行することで、各ステップが実施される例について説明する。但し、以下に示す各ステップの全部または一部を他のユニットまたはサポート装置などで実行するようにしてもよい。
図9を参照して、プロセッサ132は、メモリ134に格納されているコンフィギュレーション138を参照するなどして、CPUユニット100に装着された機能ユニット150毎の遅れ時間をそれぞれ算出し(ステップS100)、算出された遅れ時間のうち最大のものを最大遅れ時間Dmax1として決定する(ステップS102)。同様に、プロセッサ132は、メモリ134に格納されているコンフィギュレーション138を参照するなどして、通信カプラユニット200に装着された機能ユニット150毎の遅れ時間をそれぞれ算出し(ステップS104)、算出された遅れ時間のうち最大のものを最大遅れ時間Dmax2として決定する(ステップS106)。
プロセッサ132は、ステップS102において決定された最大遅れ時間Dmax1、および、ステップS106において決定された最大遅れ時間Dmax2に基づいて、制御システム1全体における出力同期タイミングToutを決定する(ステップS108)。
プロセッサ132は、ステップS108において決定された出力同期タイミングToutに応じて、各機能ユニット150に対して設定するタイミングを決定し(ステップS110)、各機能ユニット150へ決定したタイミングを通知する(ステップS112)。各機能ユニット150は、CPUユニット100からの通知に従って、必要なタイミングを設定する。
以上の処理により、出力タイミング同期機能に必要な設定は完了する。制御システム1を構成する各ユニットは、設定されたタイミングに従って、処理を繰返し実行する。
<I.変形例>
上述の実施の形態においては、出力タイミング同期機能の適用例として、ローカルネットワーク4を介して接続される機能ユニット150と、リモートネットワーク5およびローカルネットワーク6を介して接続される機能ユニット150とを含む制御システム1について説明したが、さらに別のネットワークを介して接続される機能ユニット150を含むような構成にも適用できる。つまり、本実施の形態に係る出力タイミング同期機能は、3つ以上の異なるネットワークを含むような構成であっても適用可能である。
<J.利点>
本実施の形態に係る制御システム1においては、互いに異なる通信線(ネットワークまたはバス)を介して、それぞれCPUユニット100と通信する機能ユニット150が存在する場合であっても、それぞれの通信線(ネットワークまたはバス)を介して時刻同期が可能であれば、この同期された時刻を利用して、複数の機能ユニット150の間で、信号が出力されるタイミングまたは信号が更新されるタイミングを互いに同期させることができる。このように、本実施の形態によれば、同期可能な互いに異なるネットワーク間またはバス間で、複数の機能ユニット150についての出力同期を実現できる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 制御システム、2 PLC、3 リモートI/O装置、4,6 ローカルネットワーク、5 リモートネットワーク、100 CPUユニット、150 機能ユニット、110,210 ローカルマスタ回路、112,122,162,164,212,222,224 送受信ポート、116,126,166,216,226 送受信コントローラ、118,128,142,168,218,228 クロック、120 リモートマスタ回路、130 演算処理部、132 プロセッサ、134 メモリ、136 システムプログラム、137 ユーザプログラム、138 コンフィギュレーション、140 通信起動回路、156 機能モジュール、158 I/Oインターフェイス、160 通信回路、200 通信カプラユニット、220 リモートスレーブ回路、300 サポート装置、304,305,306 通信フレーム、Dmax1,Dmax2 最大遅れ時間、M1,M2,M3 機能、OUT1,OUT2,OUT3 出力信号。

Claims (8)

  1. 制御システムを構成する演算装置であって、
    前記制御システムにおける時刻を管理するマスタクロックと、
    第1の通信線を介して第1の機能ユニットとの間でデータを送受信する第1の通信回路とを備え、前記第1の機能ユニットは、前記マスタクロックと同期される第1のクロックを有しており、
    第2の通信線を介して第2の機能ユニットとの間でデータを送受信する第2の通信回路を備え、前記第2の機能ユニットは、前記マスタクロックと同期される第2のクロックを有しており、
    前記第1の機能ユニットにおいて受信された出力データに対応する信号を出力するための処理を開始すべき第1のタイミングを前記第1の機能ユニットへ指示するとともに、前記第2の機能ユニットにおいて受信された出力データに対応する信号を出力するための処理を開始すべき第2のタイミングを前記第2の機能ユニットへ指示する、タイミング指示手段を備え、前記第1および第2のタイミングは、前記マスタクロックが管理する時刻を基準として定義される、演算装置。
  2. 前記第1の通信回路に対して出力データの送信が要求されてから当該出力データに対応する信号が前記第1の機能ユニットにおいて出力可能になるまでに要する第1の遅れ時間と、前記第2の通信回路に対して出力データの送信が要求されてから当該出力データに対応する信号が前記第2の機能ユニットにおいて出力可能になるまでに要する第2の遅れ時間とを算出する算出手段をさらに備える、請求項1に記載の演算装置。
  3. 前記第1の遅れ時間の最大値および前記第2の遅れ時間の最大値に基づいて、前記制御システムに含まれる機能ユニットが信号を出力する同期タイミングを決定する同期タイミング決定手段をさらに備え、
    前記同期タイミング決定手段は、決定された同期タイミングに基づいて、前記第1および第2のタイミングを決定する、請求項2に記載の演算装置。
  4. 前記算出手段は、
    前記第1の通信回路に対して出力データの送信が要求されてから前記第1の通信線上にデータが送出されるまでに要する時間と、
    前記第2の通信回路に対して出力データの送信が要求されてから前記第2の通信線上にデータが送出されるまでに要する時間と、
    前記第1の通信線上に送出されたデータが前記第1の機能ユニットまで転送されるのに要する時間と、
    前記第2の通信線上に送出されたデータが前記第2の機能ユニットまで転送されるのに要する時間と、
    前記第1の機能ユニットが出力データを受信してから当該受信データに対応する信号が出力可能になるまでに要する時間と、
    前記第2の機能ユニットが出力データを受信してから当該受信データに対応する信号が出力可能になるまでに要する時間とのうち、少なくとも一部を考慮して前記第1の遅れ時間および前記第2の遅れ時間を算出する、請求項2または3に記載の演算装置。
  5. 前記タイミング指示手段は、前記演算装置に接続された外部装置から前記第1のタイミングおよび前記第2のタイミングを取得する、請求項1に記載の演算装置。
  6. プログラムを実行するプロセッサと、
    前記プロセッサに接続され、前記第1の通信回路および前記第2の通信回路に対して出力データの送信を要求する通信起動回路とをさらに備える、請求項1〜5のいずれか1項に記載の演算装置。
  7. 前記通信起動回路は、FPGAまたはASICを用いて実装される、請求項6に記載の演算装置。
  8. 制御システムであって、
    前記制御システムにおける時刻を管理するマスタクロックを有する演算装置と、
    前記演算装置と第1の通信線を介して接続される第1の機能ユニットとを備え、前記第1の機能ユニットは、前記マスタクロックと同期される第1のクロックを有しており、
    前記演算装置と第2の通信線を介して接続される中継装置と、
    前記中継装置と第3の通信線を介して接続される第2の機能ユニットとを備え、前記第2の機能ユニットは、前記マスタクロックと同期される第2のクロックを有しており、
    前記演算装置は、前記第1の機能ユニットにおいて受信された出力データに対応する信号を出力するための処理を開始すべき第1のタイミングを前記第1の機能ユニットへ指示するとともに、前記第2の機能ユニットにおいて受信された出力データに対応する信号を出力するための処理を開始すべき第2のタイミングを前記第2の機能ユニットへ指示する、タイミング指示手段を備え、前記第1および第2のタイミングは、前記マスタクロックが管理する時刻を基準として定義される、制御システム。
JP2016202216A 2016-10-14 2016-10-14 演算装置および制御システム Active JP6772748B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2016202216A JP6772748B2 (ja) 2016-10-14 2016-10-14 演算装置および制御システム
US16/333,234 US20190229885A1 (en) 2016-10-14 2017-09-19 Computing device and control system
PCT/JP2017/033635 WO2018070190A1 (ja) 2016-10-14 2017-09-19 演算装置および制御システム
CN201780056494.7A CN109716247B (zh) 2016-10-14 2017-09-19 运算装置以及控制***
EP17860480.7A EP3528067A4 (en) 2016-10-14 2017-09-19 DATA PROCESSING DEVICE AND CONTROL SYSTEM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016202216A JP6772748B2 (ja) 2016-10-14 2016-10-14 演算装置および制御システム

Publications (2)

Publication Number Publication Date
JP2018063612A JP2018063612A (ja) 2018-04-19
JP6772748B2 true JP6772748B2 (ja) 2020-10-21

Family

ID=61905310

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016202216A Active JP6772748B2 (ja) 2016-10-14 2016-10-14 演算装置および制御システム

Country Status (5)

Country Link
US (1) US20190229885A1 (ja)
EP (1) EP3528067A4 (ja)
JP (1) JP6772748B2 (ja)
CN (1) CN109716247B (ja)
WO (1) WO2018070190A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6399136B1 (ja) * 2017-03-31 2018-10-03 オムロン株式会社 制御装置、制御プログラム、および制御システム
WO2021002421A1 (ja) * 2019-07-04 2021-01-07 オムロン株式会社 制御システム
CN114156991A (zh) * 2021-12-10 2022-03-08 苏州博创集成电路设计有限公司 调度计时器的方法和装置、充电电路、充电设备、芯片

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5887029A (en) * 1994-05-31 1999-03-23 Allen-Bradley Company, Llc Method of scheduling spatially separated control events with an industrial controller
DE10113261C2 (de) * 2001-03-16 2003-07-10 Siemens Ag Synchrones, getaktetes Kommunikationssystem mit dezentralen Ein-/Ausgabe-Baugruppen und Verfahren zur Einbindung dezentraler Ein-/Ausgabe-Baugruppen in ein solches System
KR101197280B1 (ko) * 2005-07-15 2012-11-05 삼성전자주식회사 타임 스탬프를 이용한 타임 동기 방법 및 장치
JP2007213474A (ja) * 2006-02-13 2007-08-23 Yaskawa Electric Corp モーション制御システム
JP5655460B2 (ja) * 2010-09-22 2015-01-21 富士電機株式会社 プログラマブルコントローラシステム
JP6094196B2 (ja) 2012-12-14 2017-03-15 オムロン株式会社 情報処理装置、情報処理プログラムおよび情報処理方法
DE102013218305A1 (de) * 2013-08-30 2015-03-05 Dr. Johannes Heidenhain Gmbh Verfahren und Vorrichtung zum Synchronisieren einer Steuereinheit und mindestens einer zugeordneten Peripherieeinheit
WO2015128981A1 (ja) * 2014-02-27 2015-09-03 富士電機株式会社 プログラマブルコントローラシステム、そのコントローラ
KR101558084B1 (ko) * 2014-04-15 2015-10-06 엘에스산전 주식회사 복수의 cpu 모듈을 구비하는 plc 시스템 및 제어방법
JP6535459B2 (ja) * 2014-12-08 2019-06-26 株式会社キーエンス プログラマブル・ロジック・コントローラ、基本ユニット、制御方法およびプログラム
JP6477161B2 (ja) * 2015-03-31 2019-03-06 オムロン株式会社 情報処理装置、情報処理プログラムおよび情報処理方法
KR101849512B1 (ko) * 2015-04-01 2018-04-16 미쓰비시덴키 가부시키가이샤 관리 시스템
CN105049146A (zh) * 2015-06-25 2015-11-11 南京南瑞集团公司 大型plc***的精确时钟同步与对时方法
CN105116830B (zh) * 2015-07-27 2018-04-03 深圳市合信自动化技术有限公司 一种plc控制***以及plc扩展总线实现方法
US20170149555A1 (en) * 2015-11-20 2017-05-25 Qualcomm Incorporated Self-test for source-synchronous interface

Also Published As

Publication number Publication date
CN109716247A (zh) 2019-05-03
US20190229885A1 (en) 2019-07-25
EP3528067A1 (en) 2019-08-21
CN109716247B (zh) 2021-09-17
EP3528067A4 (en) 2020-10-14
JP2018063612A (ja) 2018-04-19
WO2018070190A1 (ja) 2018-04-19

Similar Documents

Publication Publication Date Title
US10277417B2 (en) Control system, control apparatus and control method with input-only communication frame
JP5184597B2 (ja) 通信制御装置及び通信・制御システム
JP6753262B2 (ja) 制御装置および通信装置
JP6772748B2 (ja) 演算装置および制御システム
US11977362B2 (en) Control device and distributed control system
JP2015122077A (ja) 制御装置、コントローラ・システム、出力制御方法、およびプログラム
JP6408277B2 (ja) データ収集装置及び産業用ネットワークシステム
Hu et al. Design and application of a real-time industrial Ethernet protocol under Linux using RTAI
JP6900690B2 (ja) 制御装置
US11269313B2 (en) Controller and control system that stores data in current control cycle for output in next control cycle
WO2020184035A1 (ja) 制御システム、サポート装置およびサポート装置用のプログラム
JP2019079256A (ja) 制御装置、制御装置の制御方法、情報処理プログラム、および記録媒体
JP7089842B2 (ja) 演算装置および制御装置
JP7404789B2 (ja) 制御システム、制御システムの通信制御方法、および制御装置
JP6900691B2 (ja) 制御装置および通信装置
JP6939665B2 (ja) ネットワークシステム
JP7231073B2 (ja) 制御装置および制御システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200512

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200525

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200914

R150 Certificate of patent or registration of utility model

Ref document number: 6772748

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150