WO2023248548A1 - 制御システム、中継装置および通信方法 - Google Patents

制御システム、中継装置および通信方法 Download PDF

Info

Publication number
WO2023248548A1
WO2023248548A1 PCT/JP2023/008544 JP2023008544W WO2023248548A1 WO 2023248548 A1 WO2023248548 A1 WO 2023248548A1 JP 2023008544 W JP2023008544 W JP 2023008544W WO 2023248548 A1 WO2023248548 A1 WO 2023248548A1
Authority
WO
WIPO (PCT)
Prior art keywords
controller
communication
transmission path
data
control system
Prior art date
Application number
PCT/JP2023/008544
Other languages
English (en)
French (fr)
Inventor
祥実 丹羽
寛仁 水本
貴雅 植田
Original Assignee
オムロン株式会社
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 オムロン株式会社 filed Critical オムロン株式会社
Publication of WO2023248548A1 publication Critical patent/WO2023248548A1/ja

Links

Images

Classifications

    • 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/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • 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/06Management of faults, events, alarms or notifications
    • H04L41/0686Additional information in the notification, e.g. enhancement of specific meta-data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation

Abstract

伝送路の通信の状態に速やかに対処可能な構成を提供する。第1伝送路に接続するためのインターフェイスを有する第1コントローラと、第2伝送路に接続するためのインターフェイスを有する第2コントローラと、第1伝送路に接続するための第1インターフェイスと第2伝送路に接続するための第2インターフェイスとを有する中継ユニットとを有する。中継ユニットは、第1伝送路の通信の状態を検出する検出部を有し、中継ユニットは、転送設定に従って、第1コントローラから送信された出力データを前記第2コントローラへ送信するとともに、検出された第1伝送路の通信の状態を示す第1状態データを第2コントローラへ送信する。

Description

制御システム、中継装置および通信方法
 本発明は、制御システム、中継装置および通信方法に関する。
 近年の情報通信技術の飛躍的な発展に伴って、産業用装置においてもより多くのデータを処理する必要性が高まっている。より具体的には、IoT(Internet of Things)またはIndustry 4.0などに代表される、通信技術を用いた技術革新が進みつつある。これによって、システム内でやり取りされるデータは増大傾向にある。
 このようなデータ処理量の増大に対する解決手段の一つとして、国際公開第2013/137023号(特許文献1)は、複数の通信ラインを含む構成において、装置間のデータ更新をより適切に行うことができる構成を開示する。
 複数のコントローラを接続してネットワーク分散制御システムを構成する場合には、コントローラ間のデータ転送を担当するゲートウェイである中継ユニットが用いられる。このようなネットワーク分散制御システムでは、あるコントローラは、中継ユニットを介して他のコントローラとデータを交換する。このようなデータ交換によって、制御状態の監視やコントローラ間の制御などを実現する。
国際公開第2013/137023号
 上記のネットワーク分散制御システムでは、コントローラ間のデータ交換は、伝送路と中継ユニットを介して実現されるため、ネットワーク分散制御システムの制御性能または稼働率は、伝送路の通信の状態の変化に応じて、変動し得る。したがって、ネットワーク分散制御システムの制御性能または稼働率を維持するために、伝送路の通信の状態に速やかに対処可能な構成が要望されている。
 本開示の一例に従う制御システムは、第1伝送路に接続するためのインターフェイスを有する第1コントローラと、第2伝送路に接続するためのインターフェイスを有する第2コントローラと、第1伝送路に接続するための第1インターフェイスと第2伝送路に接続するための第2インターフェイスとを有する中継ユニットとを備え、中継ユニットは、第1伝送路の通信の状態を検出する検出部を有し、中継ユニットは、転送設定に従って、第1コントローラから送信された出力データを第2コントローラへ送信するとともに、検出された第1伝送路の通信の状態を示す第1状態データを第2コントローラへ送信する。
 上記の制御システムによれば、中継ユニットは、第1伝送路の通信の状態を検出し、通信の状態のデータを、第1伝送路とは異なる第2伝送路に接続される第2コントローラに送信する。これにより、第1伝送路の通信の状態が通知されて、当該状態に対処可能なデバイスに、第2伝送路に接続された第2コントローラを含めることができる。
 上記の制御システムにおいて、中継ユニットは、第1コントローラからサイクリック通信で送信された出力データをサイクリック通信で第2コントローラへ送信するとともに、第1状態データをサイクリック通信で第2コントローラへ送信する。
 上記の制御システムによれば、中継ユニットは、第1伝送路の通信の状態を、第2コントローラにサイクリック通信で送信する。これにより、第1伝送路の通信の状態が第2コントローラにサイクリックに通知される。
 上記の制御システムにおいて、中継ユニットは、第1状態データによって示される通信の状態の復旧を検出する。
 上記の制御システムによれば、中継ユニットは、第1伝送路の通信の状態が復旧したことを検出する。
 上記の制御システムにおいて、中継ユニットは、復旧を検出すると、その後に、第1状態データの送信を停止する。
 上記の制御システムによれば、第1伝送路の通信の状態が復旧すれば、その後は、第1状態データの送信が停止される。
 上記の制御システムにおいて、第1状態データは、第1伝送路の検出された通信の状態への対処の重要度を示し、中継ユニットは、検出された第1伝送路の通信の状態の詳細を示す情報を、メッセージ通信で第2コントローラへ送信する。
 上記の制御システムによれば、中継ユニットは、第1伝送路の検出された通信の状態への対処の重要度を示す第1状態データをサイクリック通信で送信し、その通信の状態の詳細を示す情報は、メッセージ通信で第2コントローラへ送信できる。
 上記の制御システムにおいて、検出部は、さらに、第2伝送路の通信の状態を検出し、中継ユニットは、さらに、転送設定に従って、第2コントローラから送信された出力データを第1コントローラへ送信するとともに、検出された第2伝送路の通信の状態を示す第2状態データを第1コントローラへ送信する。
 上記の制御システムによれば、出力データを第1コントローラと第2コントローラの間で双方向に送信できるとともに、第1コントローラおよび第2コントローラの一方に接続された伝送路の通信の状態のデータを他方のコントローラに送信できる。
 上記の制御システムにおいて、中継ユニットは、第2コントローラからサイクリック通信で送信された出力データをサイクリック通信で第1コントローラへ送信するとともに、第2状態データをサイクリック通信で第1コントローラへ送信する。
 上記の制御システムによれば、出力データを第1コントローラと第2コントローラの間で双方向にサイクリックに送信できるとともに、第1コントローラおよび第2コントローラの一方に接続された伝送路の通信の状態のデータを他方のコントローラにサイクリックで送信できる。
 上記の制御システムにおいて、中継ユニットは、第2状態データによって示される通信の状態の復旧を検出する。
 上記の制御システムによれば、中継ユニットは、第2伝送路の通信の状態が復旧したことを検出できる。
 上記の制御システムにおいて、中継ユニットは、第2伝送路の通信の状態が復旧したことを検出すると、その後に、第2状態データの送信を停止する。
 上記の制御システムによれば、第2伝送路の通信の状態が復旧すれば、その後は、第2状態データの送信が停止される。
 上記の制御システムでは、第2状態データは、第2伝送路の検出された通信の状態への対処の重要度を示し、中継ユニットは、検出された第2伝送路の通信の状態の詳細を示す情報を、メッセージ通信で第1コントローラへ送信する。
 上記の制御システムによれば、中継ユニットは、第2伝送路の検出された通信の状態への対処の重要度を示す第2状態データをサイクリック通信で送信し、その通信の状態の詳細を示す情報は、メッセージ通信で第1コントローラへ送信できる。
 上記の制御システムは、第1状態データおよび第2状態データを出力するユーザインターフェイスを提供する。
 上記の制御システムによれば、第1伝送路の通信の状態を示す第1状態データおよび第2伝送路の通信の状態を示す第2状態データを、ユーザに提供することができる。
 上記の制御システムでは、中継ユニットは、第1伝送路を介して、当該第1伝送路に接続される通信マスタと通信するとともに、第2伝送路を介して、通信マスタとしての第2コントローラと通信する。
 上記の制御システムによれば、中継ユニットは、第1伝送路を介した通信、および、第2伝送路を介した通信では、スレーブとして動作し得る。
 本開示の一例に従うと、中継装置は、第1伝送路を介して第1コントローラに接続されるとともに、第2伝送路を介して第2コントローラに接続される。中継装置は、第1伝送路に接続するための第1インターフェイスと、第2伝送路に接続するための第2インターフェイスと、第1伝送路の通信の状態を検出する検出部と、転送設定に従って、第1コントローラから送信された出力データを第2コントローラへ送信するとともに、検出された第1伝送路の通信の状態を示す第1状態データを第2コントローラへ送信する処理回路とを備える。
 上記の中継装置は、第1伝送路の通信の状態を検出し、通信の状態のデータを、第1伝送路とは異なる第2伝送路に接続される第2コントローラに送信する。これにより、第1伝送路の通信の状態が通知されて、当該状態に対処可能なデバイスに、第2伝送路に接続された第2コントローラを含めることができる。
 本開示の一例に従うと、通信方法は、第1伝送路に接続するためのインターフェイスを有する第1コントローラと、第2伝送路に接続するためのインターフェイスを有する第2コントローラとを備える制御システムで実施される通信方法である。通信方法は、第1伝送路の通信の状態を検出するステップと、転送設定に従って、第1コントローラから送信された出力データを第2コントローラへ送信するステップと、第1伝送路の通信の状態を示す第1状態データを第2コントローラへ送信するステップとを備える。
 上記の通信方法が実施されると、第1伝送路の通信の状態が検出されると、検出された通信の状態のデータは、第1伝送路とは異なる第2伝送路に接続される第2コントローラに送信される。これにより、第1伝送路の通信の状態が通知されて、当該状態に対処可能なデバイスに、第2伝送路に接続された第2コントローラを含めることができる。
 本開示によれば、第1伝送路の通信の状態が通知されて、当該状態に対処可能なデバイスに、第1伝送路とは異なる第2伝送路に接続された第2コントローラを含めることができるので、伝送路の通信の状態に速やかに対処可能な構成を提供できる。
本実施の形態に係る制御システム1の適用例を示す模式図である。 本実施の形態に係る制御システム1の全体構成例を示す模式図である。 本実施の形態に係る主制御装置10の演算ユニット100のハードウェア構成例を示すブロック図である。 本実施の形態に係る副制御装置20の演算ユニット200のハードウェア構成例を示すブロック図である。 本実施の形態に係る副制御装置20の中継ユニット250のハードウェア構成例を示すブロック図である。 本実施の形態に係る発生中イベント情報265の一例を示す図である。 本実施の形態に係る発生中イベント情報265の一例を示す図である。 本実施の形態に係る発生中イベント情報265の一例を示す図である。 本実施の形態に係る制御システム1におけるデータ通信の概要を示す模式図である。 本実施の形態に係る制御システム1におけるデータ通信に用いられるデータ構造の一例を示す模式図である。 本実施の形態に係る制御システム1における中継ユニット250における処理を説明するための図である。 本実施の形態に係る制御システム1におけるサイクリック通信によるI/Oデータ送信を説明するための図である。 本実施の形態に係るデータ構造の一例を示す図である。 本実施の形態に係るイベントの管理を説明する図である。 本実施の形態に係るイベントの管理を説明する図である。 本実施の形態に係るイベントの管理を説明する図である。 本実施の形態に係るユーザインターフェイスの一例を示す図である。 本実施の形態に係る中継ユニット250のイベント情報の登録処理の一例を示すフローチャートである。 本実施の形態に係る中継ユニット250の解消及び解除処理の一例を示すフローチャートである。
 本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
 <A.適用例>
 まず、本発明が適用される場面の一例について説明する。
 図1は、本実施の形態に係る制御システム1の適用例を示す模式図である。図1を参照して、分散制御システムを構成し得る制御システム1は、第1コントローラおよび第2コントローラを含む。第1コントローラは、第1伝送路に接続するためのインターフェイスを有している。第2コントローラは、第2伝送路に接続するためのインターフェイスを有している。
 制御システム1は、第1伝送路に接続するための第1インターフェイスと第2伝送路に接続するための第2インターフェイスとを有する中継ユニットをさらに含む。中継ユニットは、ゲートウェイのモジュールと、第1伝送路の通信の状態を検出するモジュールとを有する。中継ユニットは、転送設定に従って、第1コントローラから送信された出力データを第2コントローラへ送信するとともに、検出された第1伝送路の通信の状態を示す第1状態データを第2コントローラへ送信する。中継ユニットは、例えば、第1コントローラからサイクリック通信で送信された出力データをサイクリック通信で第2コントローラへ送信するとともに、第1状態データをサイクリック通信で第2コントローラへ送信する。このような中継ユニットは、後述するようなメッセージ通信を実施可能に構成される。
 本明細書において、「伝送路の通信の状態を検出」は、伝送路または中継ユニットにおいて予め定められた種類の特定のイベントが発生しているかを検出することを示す。特定のイベントは、限定されないが、例えば、通信のタイムアウト、通信開始できない等の異なる種類のイベントを含む。イベントの発生は、伝送路の通信に、例えばこのような異常が発生したことを示すが、イベントは異常に限定されない。伝送路の通信の状態は、イベントが発生している状態と、イベントが発生していない状態とを含む。イベントが発生していない状態は、イベントが発生した状態からイベントが解消して復旧した状態を含む概念である。
 本明細書において、「サイクリック通信」は、予め定められた送信周期(例えば、1msec~数100msec)毎に予め定められたデータを送信する方法である。
 本明細書において、「メッセージ通信」は、送信元または送信先の要求に応じて、データを送信する方法である。「メッセージ通信」においては、データの送信が要求された場合に、データが送信されることもある。
 図1に示すサイクリック通信により送信されるデータは、送信の優先度が相対的に高く、また、データ量が相対的に少ない。これに対して、メッセージ通信により送信されるデータは、送信の優先度が相対的に低く、また、データ量が相対的に多い。このように、高頻度のデータ交換方法であるサイクリック通信に加えて、時間制約を持たないメッセージ通信を利用可能に構成する。
 本明細書において、「入力データ」および「出力データ」との用語は、対象のデータが注目しているコントローラから見てどのような意味を持っているのかを示す。
 より具体的には、「入力データ」は、注目しているコントローラに入力されるデータ(注目しているコントローラが参照するデータ)を意味する。「入力データ」は、例えば、他のコントローラから与えられる指令値、他のコントローラに接続されたセンサなどで取得された状態値などを含む。
 一方、「出力データ」は、注目しているユニットが出力するデータ(注目しているユニットが値を変更するデータ)を意味する。「出力データ」は、例えば、他のコントローラおよび/または他のコントローラに接続されたアクチュエータに対して与える指令値などを含む。
 図1に示す構成例においては、中継ユニットを介して、第1コントローラから第2コントローラへデータが転送される。同じデータであっても、送信元の第1コントローラから見れば「出力データ」となり、送信先の第2コントローラから見れば「入力データ」となり得る。
 以下の説明においては、「入力データ」および「出力データ」を「入出力データ」または「I/Oデータ」と総称することもある。但し、「入出力データ」および「I/Oデータ」は、入力データのみ、あるいは、出力データのみを含む場合もある。
 本実施の形態に係る制御システム1においては、送信対象のデータの特性などに応じて、サイクリック通信およびメッセージ通信のいずれを用いるかを任意に設定できる。
 このように、制御システム1では、中継ユニットが第1コントローラから送信された出力データを第2コントローラへ送信(転送処理)するだけでなく、中継ユニットが第1伝送路の通信の状態を検出し(検出処理)、検出された状態を示す第1状態データを第2コントローラへ通知(通知処理)する構成が採用される。このような構成を採用することで、中継ユニットは、第1伝送路とは異なる第2伝送路に接続された第2コントローラに、第1伝送路の通信の状態を示す「状態通知」を送信できる。これにより、第1伝送路の通信の状態が示すイベントに対処可能なデバイスに、第2伝送路に接続された第2コントローラを含めることができる。このことによって、制御システム1において、第1伝送路の通信の状態を速やかに復旧状態に遷移させることが可能な構成が提供される。
 本開示では、第1伝送路の通信の状態を示す第1状態データは、サイクリック通信またはメッセージ通信で送信され得るが、本実施の形態では、伝送路の通信の状態を示す状態データは、サイクリック通信で送信される。
 また、第1伝送路の通信の状態を示す第1状態データは、第2コントローラのみならず、第1コントローラに送信されてもよい。同様に、第2伝送路の通信の状態を示す第2状態データは、第1コントローラのみならず、第2コントローラに送信されてもよい。
 以下、より具体的な応用例として、本実施の形態に係る中継ユニットを含む制御システム1の詳細な構成および処理について説明する。
 <B.全体構成例>
 次に、本実施の形態に係る制御システム1の全体構成例について説明する。
 図2は、本実施の形態に係る制御システム1の全体構成例を示す模式図である。図2を参照して、本実施の形態に係る制御システム1は、主制御装置10と、1または複数の副制御装置20とを含む。
 本明細書において、「主制御装置」および「副制御装置」との用語は、説明の便宜上の区別であり、実質的に同一のハードウェア構成であってもよいし、実質的に同一の機能構成であってもよい。主制御装置および副制御装置は、PLC(プログラマブルロジックコントローラ)などの一種のコンピュータであってもよい。
 主制御装置10と、1または複数の副制御装置20とは、フィールドネットワーク4を介して接続されている。フィールドネットワーク4は、サイクリック通信およびメッセージ通信をサポートしている。フィールドネットワーク4としては、例えば、EtherCAT(登録商標)、EtherNet/IP(登録商標)、PROFINET(登録商標)、PROFIBUS(登録商標)、DeviceNet(登録商標)、FL-net、CompoNet(登録商標)などを用いてもよい。
 このように、主制御装置10は、第1伝送路に相当するフィールドネットワーク4に接続するためのインターフェイスを有する第1コントローラに相当する。
 主制御装置10は、制御演算を実行する演算ユニット100を含む。演算ユニット100は、フィールドネットワーク4によるデータ通信が可能になっている。主制御装置10は、電源ユニット、I/Oユニット、特殊ユニットなどをさらに有してもよい。
 副制御装置20は、制御演算を実行する演算ユニット200と、フィールドネットワーク4によるデータ通信を行う中継ユニット250とを含む。副制御装置20は、電源ユニット、I/Oユニット、特殊ユニットなどをさらに有してもよい。
 演算ユニット200と中継ユニット250とは、内部バス6(図4および図5参照)を介して接続されている。なお、副制御装置20がI/Oユニットおよび/または特殊ユニットを含む場合には、当該ユニットも内部バス6を介して接続される。
 このように、演算ユニット200は、第2伝送路に相当する内部バス6に接続するためのインターフェイスを有する第2コントローラに相当する。
 中継ユニット250は、主制御装置10から送信されるデータを演算ユニット200で参照できるように中継するとともに、演算ユニット200が出力するデータを主制御装置10へ送信できるように中継する。すなわち、中継ユニット250は、フィールドネットワーク4(第1伝送路)に接続するための第1インターフェイスと、内部バス6(第2伝送路)に接続するための第2インターフェイスとを有するゲートウェイである。
 制御システム1は、主制御装置10および/または副制御装置20で実行されるプログラムや設定などを作成および変更するためのサポート装置300、および主にモニタ機能を提供する表示器400を含んでいてもよい。サポート装置300および表示器400は、副制御装置20の演算ユニット200に接続されてもよいし、主制御装置10の演算ユニット100に接続されてもよい。
 <C.ハードウェア構成例>
 次に、本実施の形態に係る制御システム1の主要な装置のハードウェア構成例について説明する。
 (c1:演算ユニット100)
 図3は、本実施の形態に係る主制御装置10の演算ユニット100のハードウェア構成例を示すブロック図である。図3を参照して、演算ユニット100は、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などのプロセッサ102と、チップセット104と、メモリ106と、タイマ107と、ストレージ108と、上位ネットワークインターフェイス110と、USB(Universal Serial Bus)インターフェイス112と、メモリカードインターフェイス114と、フィールドネットワークインターフェイス120とを含む。
 プロセッサ102は、ストレージ108に格納された各種プログラムを読み出して、メモリ106に展開して実行することで、演算ユニット100で必要な処理を実現する。チップセット104は、プロセッサ102と各コンポーネントとの間のデータ通信などを制御する。
 ストレージ108には、典型的には、システムプログラム131と、制御演算に必要なコンピュータ読み取り可能なコードを含むユーザプログラム132とが格納される。
 ストレージ108に格納されたプログラムが実行されることで、コンピュータである演算ユニット100に本明細書に記載された処理を実行させるとともに、コンピュータである演算ユニット100において本明細書に記載された機能構成を実現させる。
 上位ネットワークインターフェイス110は、上位ネットワークを介した他の装置との間のデータ通信を制御する。USBインターフェイス112は、USB接続を介してサポート装置300または表示器400との間のデータ通信を制御する。
 メモリカードインターフェイス114は、メモリカード116を着脱可能に構成されており、メモリカード116に対してデータを書き込み、メモリカード116から各種データ(ユーザプログラムやトレースデータなど)を読み出すことが可能になっている。
 フィールドネットワークインターフェイス120は、フィールドネットワーク4を介した副制御装置20との間のデータ通信を制御する。より具体的には、フィールドネットワークインターフェイス120は、受信したデータを保持するための受信バッファ121と、送信するデータの生成などに用いられる送信バッファ122と、カウンタ123とを含む。フィールドネットワークインターフェイス120は、ネットワーク5を介して1または複数のフィールド機器90が接続される。フィールド機器90は、製造装置または生産ラインなどに対して何らかの物理的な作用を与えるアクチュエータ、およびフィールドとの間で情報を遣り取りするセンサを含む入出力装置などを含む。ネットワーク5を介して、副制御装置20とフィールド機器90との間で遣り取りされるデータは、数100μsecオーダ~数10msecオーダのごく短い周期で更新される。
 カウンタ123は、ネットワーク5またはフィールドネットワーク4を介した通信処理の時間を管理するための時刻基準として用いられる。カウンタ123は、典型的には、所定周期毎にカウンタ値をインクリメントまたはデクリメントする。カウンタ123として、例えばフリーランカウンタが適用されるが、高精度イベントタイマー(HPET:High Precision Event Timer)などを用いて実装してもよいし、あるいは、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)などの専用回路を用いて実装してもよい。タイマ107は、一種のカウンタであり、現在時刻をプロセッサ102などへ提供する。
 (c2:演算ユニット200)
 図4は、本実施の形態に係る副制御装置20の演算ユニット200のハードウェア構成例を示すブロック図である。図4を参照して、演算ユニット200は、CPUやMPUなどのプロセッサ202と、チップセット204と、メモリ206と、タイマ207と、ストレージ208と、上位ネットワークインターフェイス210と、USBインターフェイス212と、メモリカードインターフェイス214と、フィールドネットワークコントローラ215と、内部バスインターフェイス220とを含む。
 プロセッサ202は、ストレージ208に格納された各種プログラムを読み出して、メモリ206に展開して実行することで、演算ユニット200で必要な処理を実現する。チップセット204は、プロセッサ202と各コンポーネントとの間のデータ通信などを制御する。
 ストレージ208には、典型的には、システムプログラム231と、制御演算に必要なコンピュータ読み取り可能なコードを含むユーザプログラム232とが格納される。
 ストレージ208に格納されたプログラムが実行されることで、コンピュータである演算ユニット200に本明細書に記載された処理を実行させるとともに、コンピュータである演算ユニット200において本明細書に記載された機能構成を実現させる。
 上位ネットワークインターフェイス210は、上位ネットワークを介した他の装置との間のデータ通信を制御する。USBインターフェイス212は、USB接続を介してサポート装置300または表示器400との間のデータ通信を制御する。
 メモリカードインターフェイス214は、メモリカード216を着脱可能に構成されており、メモリカード216に対してデータを書き込み、メモリカード216から各種データ(ユーザプログラムやトレースデータなど)を読み出すことが可能になっている。
 内部バスインターフェイス220は、内部バス6を介した1または複数のユニット(中継ユニット250を含む)との間のデータ通信を制御する。より具体的には、内部バスインターフェイス220は、受信したデータを保持するための受信バッファ221と、送信するデータの生成などに用いられる送信バッファ222とを含む。
 内部バス6は、フィールドネットワーク4と同様に、サイクリック通信およびメッセージ通信をサポートしている。内部バス6としては、メーカ専用の通信方式を採用してもよいし、例えば、EtherCAT(登録商標)、EtherNet/IP(登録商標)、PROFINET(登録商標)、PROFIBUS(登録商標)、DeviceNet(登録商標)、FL-net、CompoNet(登録商標)などを用いてもよい。
 フィールドネットワークコントローラ215は、受信したデータを保持するための受信バッファ221と、送信するデータの生成などに用いられる送信バッファ222と、ネットワーク5を介した通信を管理するカウンタであってカウンタ123(図4)と同様の構成を有するカウンタ223とを含む。フィールドネットワークコントローラ215は、ネットワーク5を介して1または複数のフィールド機器90が接続される。フィールドネットワークコントローラ215の構成は、図3のフィールドネットワークインターフェイス120と同様であるから説明は繰り返さない。タイマ207は、図3のタイマ107と同様に、一種のカウンタであり、現在時刻をプロセッサ202などへ提供する。
 (c3:中継ユニット250)
 図5は、本実施の形態に係る副制御装置20の中継ユニット250のハードウェア構成例を示すブロック図である。図5を参照して、中継ユニット250は、処理回路260と、フィールドネットワークインターフェイス270と、内部バスインターフェイス280とを含む。
 処理回路260は、後述するような中継ユニット250の処理および機能を実現する。より具体的には、処理回路260は、プロセッサ262と、メモリ264と、ストレージ267とを含む。プロセッサ262は、ストレージ267に格納されたシステムプログラム(ファームウェア)を読み出して、メモリ264に展開して実行することで、中継ユニット250で必要な処理を実現する。ストレージ267には、システムプログラムに加えて、データ転送を実現するための転送設定268、ステータス情報269、イベントログ287、時刻設定289およびイベント管理プログラム288が格納されている。中継ユニット250は、イベント管理プログラム288を実行することにより、イベント管理処理、イベント登録処理などを実施する。イベント管理処理は、後述する解消及び解除処理を含む。
 転送設定268は、演算ユニット200から主制御装置10へ転送するデータの設定項目と、主制御装置10から演算ユニット200へ転送するデータの設定項目とを含む。このような設定項目は、データ転送の対象となるデータの識別子などを含む。また、転送設定268は、伝送路(フィールドネットワーク4または内部バス6)について検出される各種通信の状態のうち、演算ユニット200または主制御装置10へ送信されるべき状態の種類が設定される項目を含み得る。これら設定項目は、例えばユーザ操作により設定することができる。
 フィールドネットワークインターフェイス270は、フィールドネットワーク4を介した主制御装置10と副制御装置20との間のデータ通信を制御する。より具体的には、フィールドネットワークインターフェイス270は、フィールドネットワーク4の通信の状態を検出する検出部271、受信したデータを保持するためのバッファと送信するデータの生成などに用いられるバッファとを含むバッファ272と、カウンタ273とを含む。カウンタ273は、図3に示すカウンタ123と同様な構成を有し、フィールドネットワーク4を介したデータ通信に関する時間を管理する。
 内部バスインターフェイス280は、内部バス6を介した1または複数のユニット(演算ユニット200を含む)との間のデータ通信を制御する。より具体的には、内部バスインターフェイス280は、内部バス6の通信の状態を検出する検出部281と、受信したデータを保持するためのバッファと送信するデータの生成などに用いられるバッファとを含むバッファ282と、カウンタ283とを含む。カウンタ283は、図3に示すカウンタ123と同様な構成を有し、内部バス6を介したデータ通信に関する時間を管理する。
 (c4:その他の構成)
 図3~図5には、プロセッサがプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。
 本明細書において、「プロセッサ」は、ストアードプログラム方式で処理を実行する狭義のプロセッサに限られず、ASICまたはFPGAなどのハードワイヤード回路を含み得る。そのため、「プロセッサ」との用語は、コンピュータ読み取り可能なコードおよび/またはハードワイヤード回路によって予め処理が定義されている、処理回路(processing circuitry)と読み替えることもできる。
 演算ユニットの主要部は、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。この場合には、仮想化技術を用いて、用途の異なる複数のOS(Operating System)を並列的に実行させるとともに、各OS上で必要なアプリケーションを実行させるようにしてもよい。
 (c5:サポート装置300と表示器400)
 本実施の形態に係るサポート装置300および表示器400は、一例として、汎用的なアーキテクチャに従う汎用コンピュータなどで構成される。汎用コンピュータのハードウェア構成例は公知であるので、詳細な説明は行わない。
 <D.時刻同期と通信状態の管理>
 中継ユニット250は、演算ユニットと間で時刻同期を実施し、また、中継ユニット250は通信の状態を検出する。
 (d1:時刻同期)
 本実施の形態では、演算ユニット200と、当該演算ユニット200に内部バス6により接続される中継ユニット250とは「時刻同期」を実施する。また、演算ユニット200と、当該演算ユニット200にフィールドネットワーク4により接続される演算ユニット100とは「時刻同期」を実施する。時刻同期とは、お互いが有するタイマ,時間データ等を同期させることを示す。このような時刻同期によって、内部バスインターフェイス280のカウンタ283によりカウントされるカウント値は、演算ユニット200のタイマ207が計時する時間と同期する。また、フィールドネットワークインターフェイス270のカウンタ273によりカウントされるカウント値は、演算ユニット100のタイマ107が計時する時間と同期する。
 (d2:通信の状態の検出)
 検出部281は、内部バスインターフェイス280が有する図示しないASICまたはFPGAなどのプロセッサ回路が実行するプログラム(ファームウェア)で実現される。具体的には、当該プログラムが実行されることにより、検出部281は、内部バス6の通信の状態を検出する。具体的には、当該通信におけるイベントの発生を検出し、検出されたイベントを識別するイベントコードを処理回路260に出力する。検出部281は、イベントとして、例えば、内部バス6の通信に基づきタイムアウトを検出する、または、内部バス6の通信データまたは処理回路260からのデータに基づき通信開始ができないことを検出する。また、処理回路260は、内部バス6の通信の状態において発生しているイベントのイベントコードを検出部281から入力する毎に、入力したイベントコードと、それまで検出されていたイベントコードとを比較し、比較の結果に基づき、検出されなくなったイベントがあると判断すると、すなわちイベント解消を検出すると、解消したイベントを識別するイベントコードを取得する。
 また、検出部271は、フィールドネットワークインターフェイス270が有する図示しないASICまたはFPGA等のプロセッサ回路が実行するプログラム(ファームウェア)で実現される。具体的には、当該プログラムが実行されることにより、検出部271は、フィールドネットワークの通信の状態を検出する。具体的には、当該通信におけるイベントの発生を検出し、検出されたイベントを識別する後述のイベントコード31を処理回路260に出力する。検出部271は、イベントとして、例えば、フィールドネットワーク4の通信に基づきタイムアウトを検出する、または、フィールドネットワーク4の通信データまたは処理回路260からのデータに基づき通信開始ができないことを検出する。また、処理回路260は、フィールドネットワーク4の通信の状態において発生しているイベントのイベントコードを検出部271から入力する毎に、入力したイベントコードとを、それまで検出されていたイベントコードとを比較し、比較の結果に基づき、検出されなくなったイベントがあると判断すると、すなわちイベント解消を検出すると、解消したイベントを識別するイベントコードを取得する。
 中継ユニット250のメモリ264には、後述する発生中イベント情報265が格納される。また、ストレージ267のステータス情報269は、複数のイベントコードと、各イベントコードに対応したステータスとを有する。ステータス情報269は、イベントコードに基づき、当該イベントに対応したステータスを検索可能なデータ構造を有する。本実施の形態では、「ステータス」は対応するイベントの重要度を示す。重要度は、イベントが通信に及ぼす影響の程度を示す、またはイベントが示す通信の状態への対処の必要性の程度を示す、または、対処の緊急性の程度を示す。これにより、ステータスが示す重要度が高いほど、対応のイベントへの対処の必要性または緊急性は高くなる。
 <E.発生中イベント情報265の一例>
 図6、図7および図8は、本実施の形態に係る発生中イベント情報265の一例を示す図である。図6は、本実施の形態に係るレコード266の基本的な構成を示す。図6を参照して、発生中イベント情報265は、例えば10件のレコード266を登録可能なテーブル形式の構成を有する。イベントの詳細情報を示すレコード266は、エントリ番号30と、イベントコード31と、当該イベントコード31が示すイベントの重要度32と、当該イベントの解消が検出されたか否かを示す解消フラグ33とを含む。ステータスに相当する重要度32は、限定されないが、例えばフラグF1~F5の5段階に区分される。フラグF1は、対応のイベントが制御システム1の全体を稼働停止させるフォールトレベルに該当し、最も高い重要度を示す。フラグF2は、対応のイベントが制御システム1を部分的に稼働停止させるフォールトレベルに該当し、次に高い重要度を示す。フラグF3は、フラグF2の重要度よりも低い重要度を示しており、例えば、対応のイベントが軽度のフォールトレベルに該当することを示す。フラグF4は、フラグF3の重要度よりも低い重要度を示しており、例えば、対応のイベントが監視情報のレベルに該当することを示す。フラグF5は、フラグF4の重要度よりも低い重要度を示しており、例えば、対応のイベントが一般情報に該当することを示す。発生中イベント情報265にレコード266が登録されるとき、当該レコード266の解消フラグ33に「1」がセットされる。レコード266の解消フラグ33は、対応のイベントについてイベント解消が検出されると、「0」がセットされる、すなわち「1」から「0」に変更される。また、イベントについて判定された重要度に基づきフラグF1~F5のいずれか1つに「1」がセットされる。発生中イベント情報265に登録可能なレコード266は10件であるが、この件数に限定されない。
 発生中イベント情報265のレコード266は、図7に示すように、図6の情報に追加して、イベントが検出された時刻を示す時刻データ34を含むよう構成され得る。時刻データ34は、イベントコード31が示すイベントが検出されたときにカウンタ273およびカウンタ283の一方から出力されたカウンタ値に基づいた時刻を示す。本実施の形態では、時刻データ34の基となるカウンタ値を提供する方のカウンタは、サポート装置300から受け付けたユーザ操作などに基づく時刻設定289によって指定され得る。
 レコード266には、このようなイベント検出の時刻として、図8に示すように、カウンタ273の出力に基づく第1時刻データ35およびカウンタ283の出力に基づく第2時刻データ36が含まれてもよい。
 発生中イベント情報265に登録されるレコード266の構成は、例えばサポート装置300から受け付けたユーザ操作などによって、図6~図8に示す構成のうちのいずれかをとり得る。以下では、レコード266は例えば図7または図8の構成を有する。
 <F.データ通信>
 次に、本実施の形態に係る制御システム1におけるデータ通信について説明する。
 図9は、本実施の形態に係る制御システム1におけるデータ通信の概要を示す模式図である。図9には、主制御装置10と演算ユニット200との間のI/Oデータの送信例を示す。
 図9を参照して、主制御装置10と演算ユニット200との間には、ゲートウェイとして、中継ユニット250が配置されている。主制御装置10と中継ユニット250との間は、第1伝送路に相当するフィールドネットワーク4を介して接続されている。
 主制御装置10の出力データが中継ユニット250を介して演算ユニット200へ送信される場合と、演算ユニット200の出力データが中継ユニット250を介して主制御装置10へ送信される場合とが想定される。本実施の形態においては、いずれの送信についても、サイクリック通信による方法、および、メッセージ通信による方法が可能になっている。
 一般的な制御システムにおいては、I/Oデータは、サイクリック通信のみで送信されるが、本実施の形態においては、送信されるデータ量および要求される定時性などに応じて、サイクリック通信およびメッセージ通信のいずれを選択することも可能になっている。
 主制御装置10から送信されたデータ(出力データ)は、中継ユニット250へ送信される。中継ユニット250は、主制御装置10の出力データとして受信したデータを、演算ユニット200の入力データとして、演算ユニット200へ送信する。
 一方、演算ユニット200から送信されたデータ(出力データ)は、中継ユニット250へ送信される。中継ユニット250は、演算ユニット200の出力データとして受信したデータを、主制御装置10の入力データとして、主制御装置10へ送信する。
 このように、中継ユニット250は、主制御装置10と演算ユニット200との間でデータを転送する。すなわち、中継ユニット250は、転送設定268(図5)に従って、主制御装置10(第1コントローラ)からサイクリック通信で送信された出力データを演算ユニット200(第2コントローラ)へ送信し、中継ユニット250は、主制御装置10からメッセージ通信で送信された出力データを演算ユニット200へ送信する。
 同様に、中継ユニット250は、転送設定268に従って、演算ユニット200からサイクリック通信で送信された出力データを主制御装置10へ送信し、中継ユニット250は、演算ユニット200からメッセージ通信で送信された出力データを主制御装置10へ送信する。
 このとき、中継ユニット250は、主制御装置10からサイクリック通信で送信された出力データをサイクリック通信で演算ユニット200へ送信し、主制御装置10からメッセージ通信で送信された出力データをメッセージ通信で演算ユニット200へ送信するようにしてもよい。あるいは、主制御装置10から中継ユニット250へのデータ送信の方法と、中継ユニット250から演算ユニット200へのデータ送信の方法とを異ならせてもよい。
 サイクリック通信では、予め定められた送信周期毎にデータが送信されるので、送信先では常に最新のデータを利用できる。
 図10は、本実施の形態に係る制御システム1におけるデータ通信に用いられるデータ構造の一例を示す模式図である。
 図10を参照して、フィールドネットワーク4においては、送信周期毎に通信用帯域が区切られている。各送信周期は、サイクリック通信用帯域12とメッセージ通信用帯域14とを含む。サイクリック通信用帯域12においては、予め定められたデータサイズのフレーム16が送信される。フレーム16は、フィールドネットワーク4に接続されたデバイス(ユニット)間を順次転送される。これによって、フレーム16は、フィールドネットワーク4をサイクリックに巡回する。
 サイクリック通信用帯域12において、フィールドネットワーク4に接続されたデバイス毎に出力データを書き込むための領域が用意されている。図10には、N個のデバイスがそれぞれ出力データを書き込むためのN個の領域が用意されている例を示す。フィールドネットワーク4に接続されたデバイスは、自デバイスがデータを書き込むための領域以外の領域に格納されているデータ(すなわち、他のデバイスが書き込んだデータ)を参照できる。
 また、サイクリック通信用帯域12においては、出力データを書き込める領域に加えて、制御システム1の通信に必要な管理情報(通信管理情報18)を格納する領域も用意されている。
 また、サイクリック通信用帯域12のフレーム16は、さらに、発生中イベント情報265に登録されている各イベントの重要度32を格納する領域も用意されている。中継ユニット250は、内部バス6またはフィールドネットワーク4の一方の伝送路から受信するフレーム16に、メモリ264の発生中イベント情報265の重要度32を書き込み、当該フレーム16を内部バス6またはフィールドネットワーク4の他方の伝送路に送信する。これにより、発生中の各イベントの重要度32は、フィールドネットワーク4に接続されたデバイス(ユニット)間をサイクリックに巡回する。このような巡回により、フィールドネットワーク4に接続されたデバイス(ユニット)は、発生中のイベントの重要度32を受信することができる。
 一方、メッセージ通信用帯域14は、フィールドネットワーク4を管理するデバイス(例えば、「通信マスタ」または「マスタ」などと称される。)による指示に従って、指定されたデバイスから他の1または複数のデバイスに対するメッセージ通信に用いられる。なお、メッセージ通信においては、1回のサイクリック通信で送信されるデータより大きいデータサイズのデータが送信されることもあるので、1回のデータ送信には、複数回分のサイクリック通信用帯域が必要なこともある。
 なお、内部バス6においても、図10と同様に、送信周期毎に通信用帯域が区切られており、各送信周期は、サイクリック通信用帯域とメッセージ通信用帯域とを含む。
 本実施の形態では、メッセージ通信用帯域14には、中継ユニット250が発生中イベント情報265を格納する領域が用意されている。コントローラ(主制御装置10または演算ユニット200)は、メッセージ通信により、中継ユニット250から発生中イベント情報265が転送される。これにより、コントローラは、サイクリックに受信するフレーム16の中の重要度32が示すイベントの詳細を示す発生中イベント情報265を、メッツセージ通信によって取得できる。
 図11は、本実施の形態に係る制御システム1における中継ユニット250における処理を説明するための図である。図11では、主に、中継ユニット250におけるデータ転送処理が示される。
 図11を参照して、中継ユニット250は、フィールドネットワーク4に接続されたフィールドネットワークインターフェイス270と、内部バス6に接続された内部バスインターフェイス280とを含む。
 フィールドネットワークインターフェイス270のバッファ272は、受信バッファ274および送信バッファ275を有している。受信バッファ274は、主制御装置10から受信したデータを保持し、送信バッファ275は、主制御装置10へ送信するデータを保持する。
 内部バスインターフェイス280のバッファ282は、受信バッファ284および送信バッファ285を有している。受信バッファ284は、演算ユニット200から受信したデータを保持し、送信バッファ285は、演算ユニット200へ送信するデータを保持する。
 中継ユニット250は、フィールドネットワークインターフェイス270の受信バッファ274が保持しているデータを内部バスインターフェイス280の送信バッファ285へデータコピーするとともに、内部バスインターフェイス280の受信バッファ284が保持しているデータをフィールドネットワークインターフェイス270の送信バッファ272へデータコピーする。
 中継ユニット250は、このようなバッファ間のデータコピーによって、データ転送を実現する。
 <G.サイクリック通信によるI/Oデータ送信>
 次に、本実施の形態に係る制御システム1におけるサイクリック通信によるI/Oデータ送信について説明する。
 図12は、本実施の形態に係る制御システム1におけるサイクリック通信によるI/Oデータ送信を説明するための図である。図12には、フィールドネットワーク4をサイクリックに巡回するフレーム16Aと、内部バス6をサイクリックに巡回するフレーム16Bとを示す。
 図12の(A)には、主制御装置10から演算ユニット200へのデータ送信を実現するための処理例を示す。図12の(A)を参照して、主制御装置10は、フレーム16Aに割り当てられた領域に対して出力データを書き込む。その後、フレーム16Aは、中継ユニット250へ送信される。
 中継ユニット250は、フレーム16Aに含まれる主制御装置10の出力データを抽出し、抽出した主制御装置10の出力データをフレーム16Bに割り当てられた領域に書き込む。すなわち、フレーム16Bは、中継ユニット250の出力データとして、主制御装置10の出力データを含む。また、中継ユニット250は、フレーム16Bに、発生中イベント情報265の各イベントに対応の重要度32を書き込む。その後、フレーム16Bは、演算ユニット200へ送信される。演算ユニット200は、フレーム16Bに含まれる中継ユニット250の出力データ(主制御装置10の出力データ)を入力データとして抽出する。
 図12の(B)には、副制御装置20から主制御装置10へのデータ送信を実現するための処理例を示す。図12の(B)を参照して、演算ユニット200は、フレーム16Bに割り当てられた領域に対して出力データを書き込む。その後、フレーム16Bは、中継ユニット250へ送信される。
 中継ユニット250は、フレーム16Bに含まれる演算ユニット200の出力データを抽出し、抽出した演算ユニット200の出力データをフレーム16Aに割り当てられた領域に書き込む。すなわち、フレーム16Aは、中継ユニット250の出力データとして、演算ユニット200の出力データを含む。このとき、中継ユニット250は、フレーム16Aに、発生中イベント情報265の各イベントに対応の重要度32を書き込む。その後、フレーム16Aは、主制御装置10へ送信される。主制御装置10は、フレーム16Aに含まれる中継ユニット250の出力データ(演算ユニット200の出力データ)を入力データとして抽出する。
 図12に示すように、中継ユニット250は、フィールドネットワーク4をサイクリックに巡回するフレーム16Aと、内部バス6をサイクリックに巡回するフレーム16Bとの間で、データを交換(コピー)することで、サイクリック通信によるI/Oデータ送信を実現する。
 図11と図12で示した中継ユニット250におけるデータの交換(コピー)は、フレーム16の出力データとともに、当該フレーム16に格納された各イベントの重要度32の交換(コピー)も実施される。これにより、発生中の各イベントの重要度32も、内部バス6およびフィールドネットワーク4をサイクリックに巡回する。
 上記に述べた通信環境を提供する制御システム1では、中継装置250は、フィールドネットワーク4に接続される通信マスタと通信し、また、内部バス6を介した通信では、内部バス6に接続される通信マスタとしての演算ユニット200と通信する。
 <H.イベントの処理>
 図13~図16を参照して、中継ユニット250によるイベントの処理について説明する。図13は、本実施の形態に係るデータ構造の一例を示す図である。図14は、本実施の形態に係るイベントの管理を説明する図である。本実施の形態では、図14に示すように、中継ユニット250はイベントの発生を検出すると、検出したイベントの情報に基づくレコード266を、発生中イベント情報265に登録するとともに、検出したイベントの情報に基づくログデータ40を、イベントログ287に登録する。イベントログ287は、検出されたイベント毎のログデータ40が蓄積されるよう構成されるので、イベントログ287によって、発生したイベントの履歴が示される。
 図13の(A)を参照して、発生中イベント情報265のレコード266は、エントリの番号30と、フラグF3が「1」を示す重要度32と、イベントコード31と、解消フラグ33と、時刻データ34とを含む。イベントコード31は、設定異常を示すイベントNo.とイベントの詳細な情報として入力(IN)データの不正であることを示す詳細情報を含む。イベントコード31は、イベントが検知された伝送路を識別する伝送路識別子31aを含む。
 図13の(B)を参照して、イベントログ287は、レコード形式で蓄積される1または複数のログデータ40を含む。ログデータ40は、当該ログデータ40を識別する番号と、検出されたイベントの情報とを含む。当該イベントの情報は、重要度32と、イベントコード31と、時刻データ34とを含む。イベントが検出されて、発生中イベント情報265に、検出されたイベントの情報に基づく図13の(A)のレコード266が新規に登録されたとき、同時に、イベントログ287には、当該イベントの情報に基づく図13の(B)のログデータ40が登録される。
 中継ユニット250は、発生中イベント情報265について解消および解除処理を実施する。図15を参照して、中継ユニット250は、イベント解消を検出したとき、または、解除操作を受け付けたとき、解消および解除処理を実施する。
 中継ユニット250は、イベント解消を検出したとき、当該検出が示すイベントコードに基づき、当該イベントコードに一致するイベントコード31を有したレコード266を発生中イベント情報265から検索し、検索されたレコード266の解消フラグ33を「0」にセットする。これにより、発生中イベント情報265における当該レコード266はイベントが解消されたと設定される。
 中継ユニット250は、解除操作を受け付けたとき、当該解除操作が示すイベントコードに基づき、当該イベントコードに一致するイベントコード31を有したレコード266を発生中イベント情報265から検索する。検索されたレコード266の解消フラグ33が「0」にセットされていると判定すると、中継ユニット250は、当該レコード266を発生中イベント情報265から削除する。また、検索されたレコード266の解消フラグ33が「1」を示すときは、すなわち、未だイベント解消が検出されていないときは、中継ユニット250は、当該レコード266を発生中イベント情報265から削除しない。
 このように、発生中イベント情報265のレコード266は、対応のイベントの解消が検出された後に、当該イベントの解除が指示(操作)されたときに、発生中イベント情報265から削除される。具体的な処理の流れを図16に示す。図16では、時刻T1にイベント(1)が発生し発生中イベント情報265にイベント(1)が登録され、その後の時刻T2にイベント(2)が発生し、発生中イベント情報265にイベント(2)のレコード266が登録される。
 その後の時刻T3において、イベント(1)の解消が検出されると、イベント(1)の解消フラグ33は「0」に設定されるが、当該レコード266は削除されずに保持される。その後の時刻T4で、イベント(1)の解除操作が受け付けられると、イベント(1)の解消フラグ33は「0」に設定されていることに基づき、当該レコード266は発生中イベント情報265から削除される。
 その後の時刻T5において、イベント(2)の解消が検出されると、イベント(2)の解消フラグ33は「0」に設定されるが、当該レコード266は削除されずに保持される。その後の時刻T6で、イベント(2)の解除操作が受け付けられる。このとき、イベント(2)の解消フラグ33は「0」に設定されているので、受け付けた解除操作に基づき、当該レコード266は発生中イベント情報265から削除される。
 図16の処理によれば、イベントの発生が検出されると当該イベントの情報は、発生中イベント情報265とイベントログ287とに登録される。このように登録されたイベントの解消が検出され、その後に解除操作が受け付けられると、当該イベントの情報は、イベントログ287に保持されたまま、発生中イベント情報265からは削除される。
 これにより、発生したイベントは「解消検出」がなされ、その後に「解除操作」がなされると、当該イベントの情報(レコード366)は発生中イベント情報265から削除されて、当該イベントに対応の重要度32のサイクリック送信は停止される。
 <I.ユーザインターフェイスの一例>
 図17は、本実施の形態に係るユーザインターフェイスの一例を示す図である。主制御装置10または副制御装置20などのデバイスは、サイクリック通信によって受信したイベントの重要度32、または、メッセージ通信により受信した発生中イベント情報265を表示する。例えば、当該デバイスは、表示のために、イベントの重要度32および発生中イベント情報265を当該デバイスに接続されたサポート装置300または表示器400に転送する。図17では、例えばサポート装置300のディスプレイに表示される画面350の一例が示される。表示器400も、また、図17と同様の画面を表示することができる。このようなユーザインターフェイスの提供の構成は、サポート装置300または表示器400が有するツールを用いた提供の構成に限定されない。
 図17の画面350は、発生中のイベントに対処するための情報を含む。画面350では、発生中イベント情報265の各レコード266に基づき、エントリ番号30に対応の順番351と、重要度32に対応の重要度352と、イベントコード31に基づく種別352Aおよびイベント名353と、時刻データ34に基づく発生時刻354と、原因355と、対処356とを含む。原因355は、イベント発生について推定される原因(要因)を示し、対処356は当該原因に基づきイベントに対処するための情報を示す。サポート装置300は、発生中イベント情報265のイベントコード31に基づき、予め定められた情報から、対応する推定原因と対処の情報を検索する。これにより、原因355と対処356の情報を取得する。対処356には、例えば、トラブルシューティングのユーザマニュアルの該当ページの情報357を含んでもよい。
 画面350は、さらに、ユーザ操作を受け付けるために操作されるボタン359および360を含む。ボタン359は、解除操作のボタンであって、発生中のイベントを解除する場合に操作される。サポート装置300または表示器400は、ボタン359の操作を受け付けると、イベントコードを含む解除操作の指令を中継ユニット250に転送する。これにより、中継ユニット250はイベントの解除操作を受け付けることができる。このような解除操作に含まれるイベントコードは、例えば図17の画面350へのユーザのタッチ操作などで指定されたイベントのイベントコードを含む。
 ボタン360は、発生中イベント情報265のレコード266に登録される時刻として、カウンタ273のカウンタ値に基づく第1時刻およびカウンタ283のカウンタ値に基づく第2時刻の一方を設定する、または、両方を設定するために操作される。このようなユーザ操作により時刻の設定は、中継ユニット250に転送されて、時刻設定289として格納される。
 また、このようなユーザインターフェイスは、図17の画面において、各イベントの時刻354を、第1時刻および第2時刻の一方の表示に切替える、または両方を表示するよう切替えるユーザ操作を受け付けるよう構成されてもよい。
 このようなユーザインターフェイスの画面は、サイクリック通信で受信する発生中の各イベントに対応の重要度352のみが表示される画面と、メッセージ通信で受信する発生中イベント情報265に基づく図17の画面を含んで構成され得る。
 <J.処理フローチャート>
 次に、本実施の形態に係る制御システム1における中継ユニット250が実施する処理例について説明する。
 図18は、本実施の形態に係る中継ユニット250のイベント情報の登録処理の一例を示すフローチャートである。図19は、本実施の形態に係る中継ユニット250の解消及び解除処理の一例を示すフローチャートである。図18と図19に示される各ステップは、中継ユニット250のプロセッサ262がイベント管理プログラム288を実行することで実現されてもよい。
 図18を参照して、中継ユニット250は、フィールドネットワーク4の通信の状態が予め定められた状態、例えば予め定められた異常などのイベントが発生している状態が検出されるかを判断する(ステップS2)。イベントが発生している状態が検出されると(ステップS2においてYES)、中継ユニット250は、検出されたイベントを示すイベントコードに基づくイベント情報のレコード266を作成する。中継ユニット250は、時刻設定289により設定された時刻(第1時刻、第2時刻、または両方の時刻)を取得し、当該レコード266の時刻データ34として設定する(ステップS4)。そして、中継ユニット250は、作成されたレコード266を、発生中イベント情報265に登録し(ステップS6)、また、ロギングを実施する(ステップS8)。すなわち、中継ユニット250は、上記のイベント情報に基づくログデータ40を作成しイベントログ287に登録する。その後、ステップS10に移行する。
 フィールドネットワーク4の通信の状態について、イベントが発生している状態でないことが検出されると(ステップS2においてNO)、ステップS4~S8の処理はスキップされて、ステップS10に移行する。
 中継ユニット250は、内部バス6の通信の状態が予め定められた状態、例えば予め定められた異常などのイベントが発生している状態が検出されるかを判断する(ステップS10)。イベントが発生している状態が検出されると(ステップS10においてYES)、ステップS4~ステップS8の処理を、内部バス6の通信の状態において検出されるイベントについて実施する。すなわち、当該イベントを示すイベントコードに基づくイベント情報のレコード266を作成し(ステップS4)、レコード266を発生中イベント情報265に登録し(ステップS6)、当該イベント情報に基づくログデータ40を作成しイベントログ287に登録する(ステップS8)。その後、ステップS2に移行する。
 一方、内部バス6の通信の状態について、イベントが発生している状態でないことが検出されると(ステップS10においてNO)、ステップS4~S8の処理はスキップされて、ステップS2に移行し、以降のステップS2~S10の処理が上述と同様に繰り返し実施される。
 図19を参照して、中継ユニット250は、フィールドネットワーク4または内部バス6の通信の状態についてイベント解消を検出するか、または解除操作を受け付けるかを判断する(ステップS20)。
 イベント解消を検出しない、および、解除操作を受け付ていないと判断されると(ステップS20においてNO)、ステップS20の処理が繰り返し実施される。イベント解消を検出したと判断されると(ステップS24においてYES)、中継ユニット250は、解消が検出されたイベントコードに基づき、発生中イベント情報265から、当該イベントコードに一致するイベントコード31を有するレコード266を検索する(ステップS26)。中継ユニット250は、検索されたレコード266の解消フラグ33を「0」にセットする(ステップS28)。
 ステップS20で解除操作を受け付けたと判断されると(ステップS30においてYES)、中継ユニット250は、受け付けた解除操作が示すイベントコードに基づき、発生中イベント情報265から、当該イベントコードに一致するイベントコード31を有するレコード266を検索する(ステップS32)。中継ユニット250は、検索されたレコード266の解消フラグ33が「0」にセットされているか否かを判断する(ステップS34)。当該レコード266の解消フラグ33が「0」にセットされていると判断されると(ステップS34においてYES)、中継ユニット250は、当該レコード266を発生中イベント情報265から削除する(ステップS36)。その後、処理はステップS20に戻り、中継ユニット250は、以降の処理を上述と同様に繰り返し実施する。
 イベント解消が検出されていないと判断されると(ステップS24においてNO)、処理はステップS30に移行する。また、解除操作を受け付けていないと判断されると(ステップS30においてNO)、または、検索されたレコード266の解消フラグ33は「0」セットされていないと判断されると(ステップS34でNO)、処理はステップS20に戻る。
 <K.付記>
 上述したような本実施の形態は、以下のような技術思想を含む。
  [構成1]
  第1伝送路(4)に接続するためのインターフェイス(120)を有する第1コントローラ(100)と、
 第2伝送路(6)に接続するためのインターフェイス(220)を有する第2コントローラ(200)と、
 前記第1伝送路に接続するための第1インターフェイス(270)と前記第2伝送路に接続するための第2インターフェイス(280)とを有する中継ユニット(250)とを備え、
 前記中継ユニットは、前記第1伝送路の通信の状態を検出する検出部(271)を有し、
 前記中継ユニットは、転送設定(268)に従って、前記第1コントローラから送信された出力データを前記第2コントローラへ送信するとともに、検出された前記第1伝送路の通信の状態を示す第1状態データ(265)を前記第2コントローラへ送信する、制御システム(1)。
  [構成2]
  前記中継ユニットは、前記第1コントローラからサイクリック通信で送信された出力データをサイクリック通信で前記第2コントローラへ送信するとともに、前記第1状態データをサイクリック通信で前記第2コントローラへ送信する、構成1に記載の制御システム。
  [構成3]
  前記中継ユニットは、
 前記第1状態データによって示される通信の状態の復旧を検出する、構成1または2に記載の制御システム。
  [構成4]
  前記中継ユニットは、
 前記復旧を検出すると、その後に、前記第1状態データの送信を停止する、構成3に記載の制御システム。
  [構成5]
 前記第1状態データは、前記第1伝送路の検出された通信の状態への対処の重要度(32)を示し、
 前記中継ユニットは、検出された前記第1伝送路の通信の状態の詳細を示す情報(265)を、メッセージ通信で前記第2コントローラへ送信する、構成1~4のいずれか1に記載の制御システム。
  [構成6]
  前記検出部は、さらに、前記第2伝送路の通信の状態を検出し、
 前記中継ユニットは、さらに、前記転送設定に従って、前記第2コントローラから送信された出力データを前記第1コントローラへ送信するとともに、検出された前記第2伝送路の通信の状態を示す第2状態データ(265)を前記第1コントローラへ送信する、構成1~5のいずれか1に記載の制御システム。
  [構成7]
  前記中継ユニットは、前記第2コントローラからサイクリック通信で送信された出力データをサイクリック通信で前記第1コントローラへ送信するとともに、前記第2状態データをサイクリック通信で前記第1コントローラへ送信する、構成6に記載の制御システム。
  [構成8]
  前記中継ユニットは、
 前記第2状態データによって示される通信の状態の復旧を検出する、構成6または7に記載の制御システム。
  [構成9]
  前記中継ユニットは、
 前記第2状態データによって示される通信の状態の復旧を検出すると、その後に、前記第2状態データの送信を停止する、構成8に記載の制御システム。
  [構成10]
 前記第2状態データは、前記第2伝送路の検出された通信の状態への対処の重要度(32)を示し、
 前記中継ユニットは、検出された前記第2伝送路の通信の状態の詳細を示す情報(265)を、メッセージ通信で前記第1コントローラへ送信する、構成6~8のいずれか1に記載の制御システム。
  [構成11]
  前記制御システムは、前記第1状態データおよび前記第2状態データを出力するユーザインターフェイスを提供する、構成6~10のいずれか1に記載の制御システム。
  [構成12]
 前記中継ユニットは、前記第1伝送路を介して、当該第1伝送路に接続される通信マスタと通信するとともに、前記第2伝送路を介して、通信マスタとしての前記第2コントローラと通信する、構成1~11のいずれか1に記載の制御システム。
  [構成13]
  第1伝送路(4)を介して第1コントローラ(100)に接続されるとともに、第2伝送路(6)を介して第2コントローラ(200)に接続された中継装置(250)であって、
 前記第1伝送路に接続するための第1インターフェイス(270)と、
 前記第2伝送路に接続するための第2インターフェイス(280)と、
 前記第1伝送路の通信の状態を検出する検出部(271)と、
 転送設定(268)に従って、前記第1コントローラから送信された出力データを前記第2コントローラへ送信するとともに、検出された前記第1伝送路の通信の状態を示す第1状態データ(265)を前記第2コントローラへ送信する処理回路(260)とを備える、中継装置。
  [構成14]
  第1伝送路(4)に接続するためのインターフェイス(120)を有する第1コントローラ(100)と、第2伝送路(6)に接続するためのインターフェイス(220)を有する第2コントローラ(200)とを備える制御システム(1)で実施される通信方法であって、
 前記第1伝送路の通信の状態を検出するステップと、
 転送設定(268)に従って、前記第1コントローラから送信された出力データを前記第2コントローラへ送信するステップと、
 前記第1伝送路の通信の状態を示す第1状態データ(265)を前記第2コントローラへ送信するステップとを備える、通信方法。
 今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
 1 制御システム、4 フィールドネットワーク、6 内部バス、10 主制御装置、12 サイクリック通信用帯域、14 メッセージ通信用帯域、16,16A,16B フレーム、18 通信管理情報、20 副制御装置、30 エントリ番号、31 イベントコード、32,352 重要度、33 解消フラグ、34 時刻データ、35 第1時刻データ、36 第2時刻データ、90 フィールド機器、100,200 演算ユニット、102,202,262 プロセッサ、104,204 チップセット、106,206,264 メモリ、107,207 タイマ、108,208,267 ストレージ、110,210 上位ネットワークインターフェイス、112,212 インターフェイス、114,214 メモリカードインターフェイス、116,216 メモリカード、120,270 フィールドネットワークインターフェイス、121,221,274,284 受信バッファ、122,222,275,285 送信バッファ、123,223,273,283 カウンタ、131,231 システムプログラム、132,232 ユーザプログラム、215 フィールドネットワークコントローラ、220,280 内部バスインターフェイス、250 中継ユニット、260 処理回路、265 発生中イベント情報、266 レコード、268 転送設定、269 ステータス情報、271,281 検出部、272,282 バッファ、287 イベントログ、288 イベント管理プログラム、289 時刻設定、300 サポート装置、350 画面、351 順番、352A 種別、353 イベント名、354,T1,T2,T3,T4,T5,T6 時刻、355 原因、356 対処、358,359,360 ボタン、400 表示器、F1,F2,F3,F4,F5 フラグ。

Claims (14)

  1.  第1伝送路に接続するためのインターフェイスを有する第1コントローラと、
     第2伝送路に接続するためのインターフェイスを有する第2コントローラと、
     前記第1伝送路に接続するための第1インターフェイスと前記第2伝送路に接続するための第2インターフェイスとを有する中継ユニットとを備え、
     前記中継ユニットは、前記第1伝送路の通信の状態を検出する検出部を有し、
     前記中継ユニットは、転送設定に従って、前記第1コントローラから送信された出力データを前記第2コントローラへ送信するとともに、検出された前記第1伝送路の通信の状態を示す第1状態データを前記第2コントローラへ送信する、制御システム。
  2.  前記中継ユニットは、前記第1コントローラからサイクリック通信で送信された出力データをサイクリック通信で前記第2コントローラへ送信するとともに、前記第1状態データをサイクリック通信で前記第2コントローラへ送信する、請求項1に記載の制御システム。
  3.  前記中継ユニットは、
     前記第1状態データによって示される通信の状態の復旧を検出する、請求項1または2に記載の制御システム。
  4.  前記中継ユニットは、
     前記復旧を検出すると、その後に、前記第1状態データの送信を停止する、請求項3に記載の制御システム。
  5.  前記第1状態データは、前記第1伝送路の検出された通信の状態への対処の重要度を示し、
     前記中継ユニットは、検出された前記第1伝送路の通信の状態の詳細を示す情報を、メッセージ通信で前記第2コントローラへ送信する、請求項1~4のいずれか1項に記載の制御システム。
  6.  前記検出部は、さらに、前記第2伝送路の通信の状態を検出し、
     前記中継ユニットは、さらに、前記転送設定に従って、前記第2コントローラから送信された出力データを前記第1コントローラへ送信するとともに、検出された前記第2伝送路の通信の状態を示す第2状態データを前記第1コントローラへ送信する、請求項1~5のいずれか1項に記載の制御システム。
  7.  前記中継ユニットは、前記第2コントローラからサイクリック通信で送信された出力データをサイクリック通信で前記第1コントローラへ送信するとともに、前記第2状態データをサイクリック通信で前記第1コントローラへ送信する、請求項6に記載の制御システム。
  8.  前記中継ユニットは、
     前記第2状態データによって示される通信の状態の復旧を検出する、請求項6または7に記載の制御システム。
  9.  前記中継ユニットは、
     前記第2状態データによって示される通信の状態の前記復旧を検出すると、その後に、前記第2状態データの送信を停止する、請求項8に記載の制御システム。
  10.  前記第2状態データは、前記第2伝送路の検出された通信の状態への対処の重要度を示し、
     前記中継ユニットは、検出された前記第2伝送路の通信の状態の詳細を示す情報を、メッセージ通信で前記第1コントローラへ送信する、請求項6~8のいずれか1項に記載の制御システム。
  11.  前記制御システムは、前記第1状態データおよび前記第2状態データを出力するユーザインターフェイスを提供する、請求項6~10のいずれか1項に記載の制御システム。
  12.  前記中継ユニットは、前記第1伝送路を介して、当該第1伝送路に接続される通信マスタと通信するとともに、前記第2伝送路を介して、通信マスタとしての前記第2コントローラと通信する、請求項1~11のいずれか1項に記載の制御システム。
  13.  第1伝送路を介して第1コントローラに接続されるとともに、第2伝送路を介して第2コントローラに接続された中継装置であって、
     前記第1伝送路に接続するための第1インターフェイスと、
     前記第2伝送路に接続するための第2インターフェイスと、
     前記第1伝送路の通信の状態を検出する検出部と、
     転送設定に従って、前記第1コントローラから送信された出力データを前記第2コントローラへ送信するとともに、検出された前記第1伝送路の通信の状態を示す第1状態データを前記第2コントローラへ送信する処理回路とを備える、中継装置。
  14.  第1伝送路に接続するためのインターフェイスを有する第1コントローラと、第2伝送路に接続するためのインターフェイスを有する第2コントローラとを備える制御システムで実施される通信方法であって、
     前記第1伝送路の通信の状態を検出するステップと、
     転送設定に従って、前記第1コントローラから送信された出力データを前記第2コントローラへ送信するステップと、
     前記第1伝送路の通信の状態を示す第1状態データを前記第2コントローラへ送信するステップとを備える、通信方法。
PCT/JP2023/008544 2022-06-21 2023-03-07 制御システム、中継装置および通信方法 WO2023248548A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022-099491 2022-06-21
JP2022099491A JP2024000664A (ja) 2022-06-21 2022-06-21 制御システム、中継装置および通信方法

Publications (1)

Publication Number Publication Date
WO2023248548A1 true WO2023248548A1 (ja) 2023-12-28

Family

ID=89379424

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/008544 WO2023248548A1 (ja) 2022-06-21 2023-03-07 制御システム、中継装置および通信方法

Country Status (2)

Country Link
JP (1) JP2024000664A (ja)
WO (1) WO2023248548A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021068117A (ja) * 2019-10-21 2021-04-30 株式会社アスコ ゲートウェイ装置、ゲートウェイ装置の制御方法、設定方法、制御プログラム、および記録媒体
JP2021145248A (ja) * 2020-03-12 2021-09-24 オムロン株式会社 情報処理装置、情報処理システム、通知方法および情報処理プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021068117A (ja) * 2019-10-21 2021-04-30 株式会社アスコ ゲートウェイ装置、ゲートウェイ装置の制御方法、設定方法、制御プログラム、および記録媒体
JP2021145248A (ja) * 2020-03-12 2021-09-24 オムロン株式会社 情報処理装置、情報処理システム、通知方法および情報処理プログラム

Also Published As

Publication number Publication date
JP2024000664A (ja) 2024-01-09

Similar Documents

Publication Publication Date Title
CN108377255B (zh) 信息处理装置、信息处理方法和记录介质
JP6897494B2 (ja) 制御システム、制御システムの通信制御方法、および中継装置
JP2018097663A (ja) 制御システム、制御プログラムおよび制御方法
CN108376111B (zh) 信息处理装置、信息处理方法和计算机可读取的存储介质
US20180019933A1 (en) Information processing apparatus, information processing program, and information processing method
CN109839890B (zh) 控制装置、控制方法以及计算机可读存储介质
JP6933183B2 (ja) セーフティ制御システムおよびセーフティ制御ユニット
WO2023248548A1 (ja) 制御システム、中継装置および通信方法
CN110309649B (zh) 支持装置、非易失性的计算机可读记录介质以及设定方法
WO2023248547A1 (ja) 制御システム、中継装置および通信方法
JP7003952B2 (ja) 制御システム、サポート装置およびサポート装置用のプログラム
US20210314186A1 (en) Communication system, communication apparatus, communication method, and program
WO2022030402A1 (ja) 制御装置およびプログラム
CN114600416B (zh) 控制系统、控制系统的通信控制方法以及控制装置
US20220244695A1 (en) Support device, non-transitory computer-readable recording medium recording support program, and setting method
EP3506034B1 (en) Control system
JP7107262B2 (ja) 制御システムおよび制御装置
WO2024014047A1 (ja) 制御システム、制御装置および通信方法
JP6141542B2 (ja) 制御システム
JP6915583B2 (ja) セーフティ制御システムおよびセーフティ制御システムにおける制御方法
KR20190080684A (ko) 멀티코어 프로세서 기반의 plc 및 hmi 통합 시스템
WO2024014048A1 (ja) 制御システム、制御装置および通信方法
WO2022201678A1 (ja) 表示器、表示器の制御方法、情報処理プログラム、および記録媒体
WO2022113383A1 (ja) 制御装置、通信制御方法、および制御プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23826737

Country of ref document: EP

Kind code of ref document: A1