JP7200580B2 - Control system, support equipment, support program - Google Patents

Control system, support equipment, support program Download PDF

Info

Publication number
JP7200580B2
JP7200580B2 JP2018185438A JP2018185438A JP7200580B2 JP 7200580 B2 JP7200580 B2 JP 7200580B2 JP 2018185438 A JP2018185438 A JP 2018185438A JP 2018185438 A JP2018185438 A JP 2018185438A JP 7200580 B2 JP7200580 B2 JP 7200580B2
Authority
JP
Japan
Prior art keywords
safety
controller
data
setting
drive device
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
JP2018185438A
Other languages
Japanese (ja)
Other versions
JP2020057065A (en
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 JP2018185438A priority Critical patent/JP7200580B2/en
Priority to PCT/JP2019/037213 priority patent/WO2020066986A1/en
Publication of JP2020057065A publication Critical patent/JP2020057065A/en
Application granted granted Critical
Publication of JP7200580B2 publication Critical patent/JP7200580B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Safety Devices In Control Systems (AREA)

Description

本発明は、制御システム、ならびに、制御システムに用いられるサポート装置およびサポートプログラムに関する。 The present invention relates to a control system and a support device and support program used for the control system.

多くの製造現場において、設備や機械を安全に使用するために、セーフティシステムの導入が進みつつある。セーフティシステムは、国際規格に従うセーフティ機能を提供するためのものであり、セーフティコントローラ、セーフティセンサ、セーフティスイッチ、およびセーフティリレーといったセーフティコンポーネントで構成される。 In many manufacturing sites, the introduction of safety systems is progressing in order to use facilities and machines safely. Safety systems are designed to provide safety functions that comply with international standards, and consist of safety components such as safety controllers, safety sensors, safety switches, and safety relays.

セーフティシステムは、設備や機械を駆動するサーボモータなどのドライブ装置に対してもセーフティ機能を提供することが要求される。例えば、非特許文献1は、可変速電動ドライブシステムに対して提供すべきセーフティ機能を規定する。 Safety systems are required to provide safety functions to drive devices such as servo motors that drive facilities and machines. For example, Non-Patent Document 1 defines safety features to be provided for variable speed electric drive systems.

より具体的には、非特許文献1は、STO(Safe Torque Off)、SS1(Safe Stop 1)、SS2(Safe Stop 2)、SOS(Safe Operating Stop)、SBC(Safe Brake Control)などの、ドライブ装置に関連するいくつかのセーフティ機能を規定する。 More specifically, Non-Patent Document 1 describes drive control such as STO (Safe Torque Off), SS1 (Safe Stop 1), SS2 (Safe Stop 2), SOS (Safe Operating Stop), and SBC (Safe Brake Control). Defines some safety functions associated with the equipment.

"IEC 61800-5-2:2016 Adjustable speed electrical power drive systems - Part 5-2: Safety requirements - Functional", International Electrotechnical Commission, 2016-04-18"IEC 61800-5-2:2016 Adjustable speed electrical power drive systems - Part 5-2: Safety requirements - Functional", International Electrotechnical Commission, 2016-04-18

上述したようなドライブ装置に関連するセーフティ機能を実装する場合には、ドライブ装置を制御する機能とは独立して、セーフティ機能を実現する機能が設けられる。それぞれの機能は互いに独立して設けられており、通信経路なども互いに独立して形成されていることも多い。一方で、ドライブ装置を制御する場合には、セーフティ機能の状態なども考慮する必要がある。 When implementing a safety function related to the drive device as described above, a function for realizing the safety function is provided independently of the function for controlling the drive device. Each function is provided independently of each other, and communication paths are often formed independently of each other. On the other hand, when controlling the drive device, it is necessary to consider the state of the safety function.

そのため、セーフティ機能を実現する機能が設けられたドライブ装置から必要な情報を共有する必要がある。 Therefore, it is necessary to share the necessary information from the drive device provided with the function to realize the safety function.

制御システムの装置設計段階などにおいて、デバッグなどの目的で、このようなセーフティ機能に関するデータの共有設定を一時的に無効化したい場合がある。また、ドライブ装置の機種などによって、共有設定が無効化された状態がデフォルトの場合もある。最終的には、すべてのドライブ装置についてセーフティ制御を実現したいが、ドライブ装置毎に一つずつ有効/無効状態を確認して、無効化されたものを有効化するといった手間が生じるという課題がある。 At the device design stage of a control system, for the purpose of debugging, there are cases where it is desired to temporarily disable the data sharing settings related to such safety functions. Also, depending on the model of the drive device, etc., the state in which the sharing setting is disabled may be the default. Ultimately, we would like to implement safety control for all drive devices, but there is the problem of having to check the enabled/disabled state of each drive device one by one and enable the disabled ones. .

また、一時的なデバッグのために、セーフティ機能に関するデータの共有設定を一斉に無効化したいという場合もある。 Also, for temporary debugging, there are cases where you want to disable the data sharing settings related to the safety function all at once.

本発明は、上述したような課題を解決することを目的とする。 An object of the present invention is to solve the problems described above.

本発明の一実施形態に従う制御システムは、第1のコントローラと、セーフティ機能を有するとともに、第1のコントローラからの第1の指令に従ってモータを駆動する1または複数のドライブ装置と、ドライブ装置に対してセーフティ機能の動作に係る第2の指令を送信する第2のコントローラと、第1のコントローラ、ドライブ装置および第2のコントローラの間で、データを互いに共有するためのネットワークと、サポート装置とを含む。サポート装置は、ユーザ操作に従って、ネットワークに接続されている各ドライブ装置に対して、ネットワークを介して共有するべきデータの設定を各ドライブ装置に応じて生成する設定生成手段を含む。制御システムは、ネットワークに接続されている各ドライブ装置に対して対応する設定を反映する設定反映手段を含む。 A control system according to an embodiment of the present invention includes a first controller, one or more drive devices having a safety function and driving a motor according to a first command from the first controller, and a second controller for transmitting a second command related to the operation of the safety function, a network for mutually sharing data among the first controller, the drive device and the second controller, and a support device. include. The support device includes setting generation means for generating settings of data to be shared via the network for each drive device connected to the network in accordance with a user's operation. The control system includes setting reflecting means for reflecting settings corresponding to each drive device connected to the network.

この実施形態によれば、ドライブ装置がコントローラなどとの間でデータを互いに共有するための設定を一括で行うことができるので、複数のドライブ装置を含む場合であっても、制御システムの立ち上げなどを効率化できる。 According to this embodiment, settings for sharing data between a drive device and a controller or the like can be collectively performed. etc. can be made more efficient.

好ましくは、設定生成手段は、ドライブ装置の機種毎に予め定められた設定内容に従って、各ドライブ装置に対するネットワークを介して共有するべきデータの設定を生成する。 Preferably, the setting generation means generates settings of data to be shared via the network for each drive device according to setting contents predetermined for each model of the drive device.

この実施形態によれば、ドライブ装置毎に保持する情報などが異なる場合であっても、適切な情報の遣り取りを設定できる。 According to this embodiment, even if the information held by each drive device is different, it is possible to set an appropriate exchange of information.

好ましくは、設定生成手段は、別のユーザ操作に従って、各ドライブ装置に対するネットワークを介して共有するべきデータの設定を削除する。 Preferably, the setting generating means deletes the setting of data to be shared via the network for each drive according to another user's operation.

この実施形態によれば、デバッグ時などに、ドライブ装置に対するデータの共有設定を一時的に無効化したいようなニーズがあり、このようなニーズを満たすことができる。 According to this embodiment, there is a need for temporarily disabling the data sharing setting for the drive device during debugging, etc., and such a need can be met.

好ましくは、設定生成手段は、ドライブ装置から第1のコントローラへ、ドライブ装置が保持するデータを公開するように設定する。 Preferably, the setting generating means sets the data held by the drive device to be disclosed from the drive device to the first controller.

この実施形態によれば、ドライブ装置が保持しているデータを第1のコントローラと共有できる。 According to this embodiment, the data held by the drive device can be shared with the first controller.

好ましくは、ドライブ装置は、第2の指令に従ってセーフティ機能の状態を管理する状態管理部を含む。ドライブ装置から公開されるデータは、第2のコントローラからの第2の指令を反映する。 Preferably, the drive device includes a state manager that manages the state of the safety function according to the second command. Data published from the drive device reflects the second command from the second controller.

この実施形態によれば、第2のコントローラからの指令などに応じたドライブ装置が有しているセーフティ機能の状態を外部から参照でき、これによって、ドライブ装置におけるセーフティ機能の状態に応じた制御を実現できる。 According to this embodiment, it is possible to externally refer to the state of the safety function of the drive device in accordance with a command from the second controller or the like, thereby enabling control according to the state of the safety function in the drive device. realizable.

好ましくは、サポート装置は、ドライブ装置に対するネットワークを介して共有するべきデータの設定を参照して、状態管理部により管理される情報のうち公開対象の情報を特定するとともに、当該公開対象の情報を参照するための参照情報に当該特定した情報の意味を関連付ける。 Preferably, the support device refers to settings of data to be shared via a network for the drive device, identifies information to be disclosed among the information managed by the state management unit, and specifies the information to be disclosed. The meaning of the specified information is associated with the reference information for referencing.

この実施形態によれば、サポート装置において、参照情報を利用して任意のプログラムを作成する場合などに、プログラムの開発効率を高めることができる。 According to this embodiment, it is possible to improve the efficiency of program development when creating an arbitrary program using the reference information in the support device.

好ましくは、設定生成手段は、さらに別のユーザ操作に従って、特定の1つのドライブ装置に対するネットワークを介して共有するべきデータの設定を生成する。 Preferably, the setting generating means generates settings of data to be shared via a network for one specific drive device according to another user operation.

この実施形態によれば、ドライブ装置に対して個別に設定を行いたいというニーズを満たすことができる。 According to this embodiment, it is possible to satisfy the need to individually set the drive devices.

好ましくは、サポート装置は、ネットワークに接続されているドライブ装置を取得する取得手段をさらに含む。 Preferably, the support device further includes acquisition means for acquiring drive devices connected to the network.

この実施形態によれば、ネットワークに接続されているすべてのドライブ装置を設定対象とすることができる。 According to this embodiment, all drive devices connected to the network can be set.

好ましくは、設定生成手段は、各ドライブ装置に対して生成されたネットワークを介して共有するべきデータの設定の内容をユーザに提示する。 Preferably, the setting generating means presents to the user the setting contents of the data to be shared via the network generated for each drive device.

この実施形態によれば、ユーザは、各ドライブ装置に対してどのような設定がなされるのかを確認した上で、各設定を反映できる。 According to this embodiment, the user can reflect each setting after confirming what settings are made for each drive device.

本発明の別の一実施形態に従えば、制御システムに接続されるサポート装置が提供される。制御システムは、第1のコントローラと、セーフティ機能を有するとともに、第1のコントローラからの第1の指令に従ってモータを駆動する1または複数のドライブ装置と、ドライブ装置に対してセーフティ機能の動作に係る第2の指令を送信する第2のコントローラと、第1のコントローラ、ドライブ装置および第2のコントローラの間で、データを互いに共有するためのネットワークとを含む。サポート装置は、ユーザ操作に従って、ネットワークに接続されている各ドライブ装置に対して、ネットワークを介して共有するべきデータの設定を各ドライブ装置に応じて生成する設定生成手段を含む。第1のコントローラは、ネットワークに接続されている各ドライブ装置に対して対応する設定を反映する設定反映手段を含む。 According to another embodiment of the invention, a support device is provided that is connected to the control system. The control system includes a first controller, one or more drive devices having a safety function and driving the motor according to a first command from the first controller, and the safety function for the drive device. A second controller for sending a second command and a network for sharing data between the first controller, the drives and the second controller. The support device includes setting generation means for generating settings of data to be shared via the network for each drive device connected to the network in accordance with a user's operation. The first controller includes setting reflecting means for reflecting settings corresponding to each drive device connected to the network.

この実施形態によれば、ドライブ装置がコントローラなどとの間でデータを互いに共有するための設定を一括で行うことができるので、複数のドライブ装置を含む場合であっても、制御システムの立ち上げなどを効率化できる。 According to this embodiment, settings for sharing data between a drive device and a controller or the like can be collectively performed. etc. can be made more efficient.

本発明のさらに別の一実施形態に従えば、制御システムに接続されるコンピュータで実行されるサポートプログラムが提供され。制御システムは、第1のコントローラと、セーフティ機能を有するとともに、第1のコントローラからの第1の指令に従ってモータを駆動する1または複数のドライブ装置と、ドライブ装置に対してセーフティ機能の動作に係る第2の指令を送信する第2のコントローラと、第1のコントローラ、ドライブ装置および第2のコントローラの間で、データを互いに共有するためのネットワークとを含む。サポートプログラムは、コンピュータに、ユーザ操作に従って、ネットワークに接続されている各ドライブ装置に対して、ネットワークを介して共有するべきデータの設定を各ドライブ装置に応じて生成するステップと、ネットワークに接続されている各ドライブ装置に対して対応する設定を反映するステップとを実行させる。 According to yet another embodiment of the invention, there is provided a support program running on a computer connected to the control system. The control system includes a first controller, one or more drive devices having a safety function and driving the motor according to a first command from the first controller, and the safety function for the drive device. A second controller for sending a second command and a network for sharing data between the first controller, the drives and the second controller. The support program causes the computer to generate settings for data to be shared via the network for each drive device connected to the network according to the user's operation; and a step of reflecting the corresponding settings for each drive device that is connected.

この実施形態によれば、ドライブ装置がコントローラなどとの間でデータを互いに共有するための設定を一括で行うことができるので、複数のドライブ装置を含む場合であっても、制御システムの立ち上げなどを効率化できる。 According to this embodiment, settings for sharing data between a drive device and a controller or the like can be collectively performed. etc. can be made more efficient.

本発明によれば、複数のドライブ装置が存在する場合であっても、情報を容易に共有できる制御システムを提供できる。 According to the present invention, it is possible to provide a control system that can easily share information even when a plurality of drive devices exist.

本実施の形態に係る制御システムの構成例を示す模式図である。1 is a schematic diagram showing a configuration example of a control system according to an embodiment; FIG. 本実施の形態に係る制御システムが有する機能を示す模式図である。3 is a schematic diagram showing functions of a control system according to the present embodiment; FIG. 本実施の形態に係る制御システムを構成する標準コントローラのハードウェア構成例を示す模式図である。FIG. 2 is a schematic diagram showing a hardware configuration example of a standard controller that configures the control system according to the present embodiment; 本実施の形態に係る制御システムを構成するセーフティコントローラのハードウェア構成例を示す模式図である。FIG. 2 is a schematic diagram showing a hardware configuration example of a safety controller that configures the control system according to the present embodiment; 本実施の形態に係る制御システムを構成するセーフティドライバおよびサーボモータのハードウェア構成例を示す模式図である。FIG. 2 is a schematic diagram showing a hardware configuration example of a safety driver and servo motors that configure the control system according to the present embodiment; 本実施の形態に係る制御システムを構成するサポート装置のハードウェア構成例を示す模式図である。FIG. 2 is a schematic diagram showing a hardware configuration example of a support device that configures the control system according to the present embodiment; 本実施の形態に係る制御システムの機能分担の一例を示す模式図である。FIG. 2 is a schematic diagram showing an example of functional allocation of the control system according to the present embodiment; FIG. 本実施の形態に係る制御システムのセーフティドライバによるセーフティ機能に係る処理手順の一例を示すシーケンス図である。FIG. 4 is a sequence diagram showing an example of a processing procedure relating to a safety function by a safety driver of the control system according to the present embodiment; 本実施の形態に係る制御システムが提供するモーションセーフティ機能の一例を示す図である。It is a figure which shows an example of the motion safety function which the control system which concerns on this Embodiment provides. 本実施の形態に係る制御システムのセーフティドライバに格納されるモーションセーフティ機能を実現するためのパラメータセットの一例を示す図である。FIG. 4 is a diagram showing an example of a parameter set for realizing a motion safety function stored in the safety driver of the control system according to the embodiment; 本実施の形態に係る制御システムにおける通信フレームの伝送形態を説明するための図である。FIG. 4 is a diagram for explaining a form of transmission of communication frames in the control system according to the present embodiment; 本実施の形態に係る制御システムにおけるデータ伝送を説明するための図である。FIG. 4 is a diagram for explaining data transmission in the control system according to the embodiment; 本実施の形態に係る制御システムにおける標準制御およびセーフティ制御の実装例を示す模式図である。FIG. 4 is a schematic diagram showing an implementation example of standard control and safety control in the control system according to the present embodiment; 本実施の形態に係る制御システムの標準コントローラがモーションセーフティ機能の情報を参照する方法を説明するための図である。FIG. 4 is a diagram for explaining how the standard controller of the control system according to the present embodiment refers to information on motion safety functions; 本実施の形態に係る制御システムのセーフティドライバが公開するモーションセーフティ制御用オブジェクトの設定例を説明するための図である。FIG. 4 is a diagram for explaining a setting example of a motion safety control object disclosed by a safety driver of the control system according to the embodiment; 本実施の形態に係る制御システムのサポート装置での設定処理を説明するための図である。FIG. 5 is a diagram for explaining setting processing in a support device of the control system according to the embodiment; 本実施の形態に係る制御システムのサポート装置が提供するユーザインターフェイス画面の一例を示す模式図である。FIG. 4 is a schematic diagram showing an example of a user interface screen provided by a support device of the control system according to the present embodiment; 本実施の形態に係る制御システムにおけるモーションセーフティ制御用オブジェクト382を参照した標準制御プログラムの一例を示す図である。FIG. 10 is a diagram showing an example of a standard control program that refers to a motion safety control object 382 in the control system according to this embodiment; 本実施の形態に係る制御システムを構成するサポート装置における一括設定の処理を説明するための図である。FIG. 5 is a diagram for explaining collective setting processing in a support device that configures the control system according to the present embodiment; 本実施の形態に係るサポート装置におけるプロセスデータ通信の設定操作の一例を説明するための図である。FIG. 7 is a diagram for explaining an example of setting operation for process data communication in the support device according to the embodiment; 本実施の形態に係るサポート装置におけるプロセスデータ通信の設定操作の別の一例を説明するための図である。FIG. 10 is a diagram for explaining another example of the process data communication setting operation in the support device according to the present embodiment; 本実施の形態に係るサポート装置が保持する共通設定テンプレートのデータ構造の一例を示す模式図である。4 is a schematic diagram showing an example of the data structure of a common setting template held by the support device according to the embodiment; FIG. 本実施の形態に係る制御システムを構成するサポート装置における一括設定を実現するための処理手順の一例を示すフローチャートである。7 is a flow chart showing an example of a processing procedure for realizing batch setting in a support device that constitutes the control system according to the present embodiment;

本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。 Embodiments of the present invention will be described in detail with reference to the drawings. The same or corresponding parts in the drawings are given the same reference numerals, and the description thereof will not be repeated.

<A.適用例>
まず、本発明が適用される場面の一例について説明する。
<A. Application example>
First, an example of a scene to which the present invention is applied will be described.

図1は、本実施の形態に係る制御システム1の構成例を示す模式図である。本実施の形態に係る制御システム1は、例えば、IEC 61508などに規定されたセーフティ機能に加えて、上述の非特許文献1に規定されたドライブ装置に対するセーフティ機能を提供する。 FIG. 1 is a schematic diagram showing a configuration example of a control system 1 according to this embodiment. The control system 1 according to the present embodiment provides, for example, a safety function for the drive device defined in Non-Patent Document 1 above, in addition to the safety function defined in IEC 61508 or the like.

図1を参照して、制御システム1は、主として、標準コントローラ100、ならびに、標準コントローラ100とフィールドネットワーク2を介して接続されるセーフティコントローラ200および1または複数のセーフティドライバ300を含む。セーフティドライバ300の各々は、セーフティ機能を有するドライブ装置の一例であり、電気的に接続されたサーボモータ400を駆動する。なお、サーボモータ400に限らず、任意の種類のアクチュエータ(例えば、三相交流モータ、直流モータ、単相交流モータ、多相交流モータ、リニアサーボなど)を採用できる。また、セーフティドライバ300の実体は、サーボドライバであってもよいし、汎用的なインバータ装置であってもよい。以下の説明においては、セーフティドライバ300をドライブ装置の一例として説明する。 Referring to FIG. 1 , control system 1 mainly includes standard controller 100 , safety controller 200 and one or more safety drivers 300 connected to standard controller 100 via field network 2 . Each safety driver 300 is an example of a drive device having a safety function, and drives an electrically connected servomotor 400 . Any type of actuator (for example, a three-phase AC motor, a DC motor, a single-phase AC motor, a polyphase AC motor, a linear servo, etc.) can be employed without being limited to the servomotor 400 . Also, the substance of the safety driver 300 may be a servo driver or a general-purpose inverter device. In the following description, the safety driver 300 will be described as an example of a drive device.

標準コントローラ100は、第1のコントローラに相当し、予め作成された標準制御プログラムに従って、サーボモータ400を含む制御対象に対する標準制御を実行する。典型的には、標準コントローラ100は、1または複数のセンサ(図示していない)などからの入力信号に応じた制御演算をサイクリック実行することで、サーボモータ400などのアクチュエータに対する指令を周期的に算出する。 The standard controller 100 corresponds to a first controller, and performs standard control on controlled objects including the servomotor 400 according to a pre-created standard control program. Typically, standard controller 100 periodically issues commands to actuators such as servomotor 400 by cyclically executing control operations in response to input signals from one or more sensors (not shown). Calculate to

セーフティコントローラ200は、セーフティドライバ300に対してセーフティ機能の動作に係るセーフティ指令(第2の指令)を送信する。より具体的には、セーフティコントローラ200は、標準コントローラ100とは独立して、制御対象に対するセーフティ機能を実現するための監視および制御演算をサイクリック実行する。セーフティコントローラ200は、任意のセーフティデバイス240からの入力信号の受付、および/または、任意のセーフティデバイス240への指令の出力が可能になっている。 The safety controller 200 transmits to the safety driver 300 a safety command (second command) relating to the operation of the safety function. More specifically, the safety controller 200 cyclically executes monitoring and control calculations for realizing safety functions for the controlled object, independently of the standard controller 100 . The safety controller 200 can accept input signals from any safety device 240 and/or output commands to any safety device 240 .

セーフティドライバ300は、標準コントローラ100からの指令(第1の指令)に従って、サーボモータ400に電力を供給することで、サーボモータ400を駆動する。セーフティドライバ300は、サーボモータ400からのフィードバック信号などに基づいて、サーボモータ400の回転位置、回転速度、回転加速度および発生するトルクなどを周期的に算出する。 The safety driver 300 drives the servomotor 400 by supplying power to the servomotor 400 according to a command (first command) from the standard controller 100 . The safety driver 300 periodically calculates the rotational position, rotational speed, rotational acceleration, generated torque, and the like of the servomotor 400 based on feedback signals from the servomotor 400 and the like.

さらに、セーフティドライバ300は、サーボモータ400の駆動に関するセーフティ機能を有している。より具体的には、セーフティドライバ300は、セーフティ機能に必要な状態情報をセーフティコントローラ200へ提供するとともに、要求されるセーフティ機能に応じて、サーボモータ400に供給する電力を調整または遮断する。 Furthermore, the safety driver 300 has a safety function related to driving the servomotor 400 . More specifically, the safety driver 300 provides the safety controller 200 with status information necessary for the safety function, and adjusts or cuts off the power supplied to the servo motor 400 according to the required safety function.

サーボモータ400は、セーフティドライバ300からの電力を受けて回転するモータを有するとともに、モータの回転軸に結合されたエンコーダからの検出信号をフィードバック信号としてセーフティドライバ300へ出力する。 The servo motor 400 has a motor that rotates by receiving power from the safety driver 300, and outputs a detection signal from an encoder coupled to the rotating shaft of the motor to the safety driver 300 as a feedback signal.

本明細書において、「デバイス」は、フィールドネットワーク2などの任意のネットワークを介して、他の装置とデータ通信可能な装置の総称である。本実施の形態に係る制御システム1において、「デバイス」は、標準コントローラ100、セーフティコントローラ200およびセーフティドライバ300を包含する。 In this specification, "device" is a general term for devices capable of data communication with other devices via any network such as the field network 2. FIG. In the control system 1 according to the present embodiment, "devices" include the standard controller 100, the safety controller 200 and the safety driver 300.

本明細書において、「標準制御」および「セーフティ制御」の用語を対比的に用いる。「標準制御」は、予め定められた要求仕様に沿って、制御対象を制御するための処理の総称である。一方、「セーフティ制御」は、設備や機械などによって人の安全が脅かされることを防止するための処理を総称する。「セーフティ制御」は、IEC 61508などに規定されたセーフティ機能を実現するための要件を満たすように設計される。 In this specification, the terms "standard control" and "safety control" are used in contrast. "Standard control" is a generic term for processes for controlling controlled objects in accordance with predetermined required specifications. On the other hand, "safety control" is a general term for processes for preventing human safety from being threatened by facilities, machines, and the like. "Safety control" is designed to meet the requirements for realizing safety functions specified in IEC 61508 and the like.

本明細書においては、ドライブ装置に特有のセーフティ機能を「モーションセーフティ機能」と総称する。典型的には、「機能」は、上述の非特許文献1に規定されるドライブ装置に関連するセーフティ機能を包含する。例えば、制御軸の位置や速度を監視して安全を確保するための制御を含む。 In this specification, the safety functions unique to the drive device are collectively referred to as "motion safety functions". Typically, "function" encompasses safety functions associated with the drive defined in Non-Patent Document 1 above. For example, it includes control for ensuring safety by monitoring the position and speed of the control axis.

本明細書において、「プロセスデータ」は、標準制御またはセーフティ制御の少なくともいずれかで用いられるデータの総称である。具体的には、「プロセスデータ」は、制御対象から取得される入力情報、制御対象へ出力される出力情報、各デバイスでの制御演算に使用される内部情報などを包含する。 As used herein, "process data" is a generic term for data used in at least one of standard control and safety control. Specifically, "process data" includes input information acquired from the controlled object, output information output to the controlled object, internal information used for control calculations in each device, and the like.

入力情報は、光電センサなどにより検出されるON/OFF信号(デジタル入力)、温度センサなどにより検出される物理信号(アナログ入力)、ならびに、パルスエンコーダなどが発生するパルス信号(パルス入力)などを包含する。出力情報は、リレーなどを駆動するためのON/OFF(デジタル出力)、サーボモータの回転速度などを指示する速度指令(アナログ出力)、ならびに、ステッピングモータの移動量などを指示する変位指令(パルス出力)などを包含する。内部情報は、任意のプロセスデータを入力とする制御演算などによって決定される状態情報などを含む。 Input information includes ON/OFF signals (digital input) detected by photoelectric sensors, physical signals (analog inputs) detected by temperature sensors, and pulse signals generated by pulse encoders (pulse inputs). contain. Output information includes ON/OFF (digital output) for driving relays, etc., speed command (analog output) for indicating the rotation speed of a servomotor, and displacement command (pulse output) for indicating the amount of movement of a stepping motor. output), etc. The internal information includes state information and the like that are determined by control calculation and the like using arbitrary process data as input.

基本的には、「プロセスデータ」の値は、制御周期または通信周期毎に更新される。ここで、更新とは、最新の値を反映することを意味し、更新の前後において値が変化しない場合も含み得る。 Basically, the value of "process data" is updated every control cycle or communication cycle. Here, updating means reflecting the latest value, and may include the case where the value does not change before and after updating.

図2は、本実施の形態に係る制御システム1が有する機能を示す模式図である。図2を参照して、セーフティドライバ300の各々は、セーフティ機能を有するとともに、標準コントローラ100からの指令(第1の指令)に従って、サーボモータ400を駆動する。また、セーフティドライバ300の各々には、セーフティコントローラ200からセーフティ機能の動作に係るセーフティ指令(第2の指令)が与えられる。このセーフティ指令は、セーフティコントローラ200とセーフティドライバ300との間にフィールドネットワーク2を利用して形成される論理コネクション4を介して送信される。 FIG. 2 is a schematic diagram showing functions of the control system 1 according to this embodiment. Referring to FIG. 2, each of safety drivers 300 has a safety function and drives servo motor 400 according to a command (first command) from standard controller 100 . Further, each of the safety drivers 300 is given a safety command (second command) relating to the operation of the safety function from the safety controller 200 . This safety command is transmitted via the logical connection 4 formed between the safety controller 200 and the safety driver 300 using the field network 2 .

フィールドネットワーク2は、標準コントローラ100、1または複数のセーフティドライバ300、および、セーフティコントローラ200の間で、データを互いに共有するために用いられる。典型的には、フィールドネットワーク2を通信フレームがサイクリックに伝送されることで、プロセスデータ通信が実現される。このプロセスデータ通信を用いることで、データが共有される。 Field network 2 is used to share data between standard controller 100 , one or more safety drivers 300 and safety controller 200 . Typically, process data communication is realized by cyclically transmitting communication frames through the field network 2 . Data is shared by using this process data communication.

セーフティドライバ300の各々は、予め格納される設定情報3206に従って、他のデバイスに公開する情報の更新、および、他のデバイスから送信された情報の受信などのデータ共有処理を実行する。 Each of the safety drivers 300 performs data sharing processing such as updating information to be disclosed to other devices and receiving information transmitted from other devices, according to setting information 3206 stored in advance.

サポート装置500は、典型的には、標準コントローラ100を介して、制御システム1に接続される。サポート装置500は、制御システム1に含まれる各デバイスに対する設定およびプログラムの開発などが可能である。 Support device 500 is typically connected to control system 1 via standard controller 100 . The support device 500 is capable of setting and developing programs for each device included in the control system 1 .

本実施の形態においては、サポート装置500は、設定生成モジュール10を有している。設定生成モジュール10は、典型的には、サポート装置500のプロセッサがサポートプログラムを実行することで実現されてもよい(詳細については、後述する)。 In this embodiment, the support device 500 has a setting generation module 10 . The setting generation module 10 may typically be implemented by the processor of the support device 500 executing a support program (details will be described later).

設定生成モジュール10は、ユーザ操作に従って、フィールドネットワーク2に接続されている各セーフティドライバ300に対して、フィールドネットワーク2を介して共有するべきデータの設定を各セーフティドライバ300に応じて生成する。このデータの設定は、設定情報3206に含まれることになる。設定生成モジュール10は、セーフティドライバ300を含むフィールドネットワーク2のネットワーク構成および各デバイスの設定を含む。 The setting generation module 10 generates settings of data to be shared via the field network 2 for each safety driver 300 connected to the field network 2 according to user's operation. This data setting is included in the setting information 3206 . The setting generation module 10 includes the network configuration of the field network 2 including the safety driver 300 and settings of each device.

フィールドネットワーク2によるプロセスデータ通信は、標準コントローラ100が通信マスタとして機能することで実現される。通信マスタとして機能する標準コントローラ100は、設定反映モジュール20を有している。サポート装置500の設定生成モジュール10により生成された設定は、標準コントローラ100へ転送される。標準コントローラ100の設定反映モジュール20は、フィールドネットワーク2がネットワークの状態遷移中に、各デバイスに対して設定を反映する。すなわち、設定反映モジュール20は、フィールドネットワーク2に接続されている各セーフティドライバ300に対して対応する設定を反映する。 Process data communication by the field network 2 is realized by the standard controller 100 functioning as a communication master. A standard controller 100 functioning as a communication master has a setting reflection module 20 . Settings generated by the setting generation module 10 of the support device 500 are transferred to the standard controller 100 . The setting reflection module 20 of the standard controller 100 reflects the setting to each device while the field network 2 is in network state transition. That is, the setting reflection module 20 reflects the corresponding settings to each safety driver 300 connected to the field network 2 .

なお、設定反映モジュール20をサポート装置500に配置してもよい。この場合には、サポート装置500の設定反映モジュール20がセーフティドライバ300に対して設定を書き込むことになる。 Note that the setting reflection module 20 may be arranged in the support device 500 . In this case, the setting reflection module 20 of the support device 500 writes the setting to the safety driver 300 .

このような構成を採用することで、フィールドネットワーク2に複数のセーフティドライバ300が接続されている場合であっても、フィールドネットワーク2を介したデータ共有の設定を一括して行うことができる。そのため、設定の作業効率を向上させることができる。 By adopting such a configuration, even when a plurality of safety drivers 300 are connected to the field network 2, data sharing via the field network 2 can be collectively set. Therefore, it is possible to improve the working efficiency of the setting.

<B.制御システム1に含まれるデバイスの構成例>
次に制御システム1に含まれるデバイスの構成例について説明する。
<B. Configuration Example of Devices Included in Control System 1>
Next, a configuration example of devices included in the control system 1 will be described.

(b1:標準コントローラ100)
図3は、本実施の形態に係る制御システム1を構成する標準コントローラ100のハードウェア構成例を示す模式図である。図3を参照して、標準コントローラ100は、プロセッサ102と、メインメモリ104と、ストレージ110と、上位ネットワークコントローラ106と、フィールドネットワークコントローラ108と、USB(Universal Serial Bus)コントローラ120と、メモリカードインターフェイス112と、ローカルバスコントローラ116とを含む。これらのコンポーネントは、プロセッサバス118を介して接続されている。
(b1: standard controller 100)
FIG. 3 is a schematic diagram showing a hardware configuration example of the standard controller 100 that configures the control system 1 according to this embodiment. 3, standard controller 100 includes processor 102, main memory 104, storage 110, host network controller 106, field network controller 108, USB (Universal Serial Bus) controller 120, and memory card interface. 112 and a local bus controller 116 . These components are connected via processor bus 118 .

プロセッサ102は、主として、標準制御に係る制御演算を実行する演算処理部に相当し、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などで構成される。具体的には、プロセッサ102は、ストレージ110に格納されたプログラム(一例として、システムプログラム1102および標準制御プログラム1104)を読出して、メインメモリ104に展開して実行することで、制御対象に応じた制御演算、および、後述するような各種処理を実現する。 The processor 102 mainly corresponds to a calculation processing unit that executes control calculations related to standard control, and is composed of a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), or the like. Specifically, processor 102 reads a program (for example, system program 1102 and standard control program 1104) stored in storage 110, develops it in main memory 104, and executes it, depending on the object to be controlled. It implements control calculations and various types of processing to be described later.

メインメモリ104は、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などの揮発性記憶装置などで構成される。ストレージ110は、例えば、SSD(Solid State Drive)やHDD(Hard Disk Drive)などの不揮発性記憶装置などで構成される。 The main memory 104 is composed of a volatile storage device such as a DRAM (Dynamic Random Access Memory) or an SRAM (Static Random Access Memory). The storage 110 is configured by, for example, a non-volatile storage device such as SSD (Solid State Drive) or HDD (Hard Disk Drive).

ストレージ110には、基本的な機能を実現するためのシステムプログラム1102に加えて、制御対象に応じて作成された標準制御プログラム1104が格納される。さらに、ストレージ110には、後述するような変数などを設定するための設定情報1106が格納される。 The storage 110 stores a system program 1102 for realizing basic functions as well as a standard control program 1104 created according to the object to be controlled. Further, the storage 110 stores setting information 1106 for setting variables and the like, which will be described later.

上位ネットワークコントローラ106は、上位ネットワークを介して、任意の報処理装置との間でデータを遣り取りする。 The host network controller 106 exchanges data with any information processing device via the host network.

フィールドネットワークコントローラ108は、フィールドネットワーク2を介して、セーフティコントローラ200およびセーフティドライバ300を含む任意のデバイスとの間でデータを遣り取りする。図3に示す制御システム1においては、標準コントローラ100のフィールドネットワークコントローラ108は、フィールドネットワーク2の通信マスタとして機能する。 Field network controller 108 exchanges data with arbitrary devices including safety controller 200 and safety driver 300 via field network 2 . In the control system 1 shown in FIG. 3 , the field network controller 108 of the standard controller 100 functions as the communication master of the field network 2 .

USBコントローラ120は、USB接続を介して、サポート装置500などとの間でデータを遣り取りする。 The USB controller 120 exchanges data with the support device 500 or the like via a USB connection.

メモリカードインターフェイス112は、着脱可能な記録媒体の一例であるメモリカード114を受け付ける。メモリカードインターフェイス112は、メモリカード114に対してデータを書き込み、メモリカード114から各種データ(ログやトレースデータなど)を読み出すことが可能になっている。 Memory card interface 112 accepts memory card 114, which is an example of a removable recording medium. The memory card interface 112 can write data to the memory card 114 and read various data (log, trace data, etc.) from the memory card 114 .

ローカルバスコントローラ116は、ローカルバスを介して、標準コントローラ100に接続される任意のユニットとの間でデータを遣り取りする。 Local bus controller 116 transfers data to and from any unit connected to standard controller 100 via a local bus.

図3には、プロセッサ102がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)など)を用いて実装してもよい。あるいは、標準コントローラ100の主要部を、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。この場合には、仮想化技術を用いて、用途の異なる複数のOS(Operating System)を並列的に実行させるとともに、各OS上で必要なアプリケーションを実行させるようにしてもよい。さらに、標準コントローラ100に表示装置やサポート装置などの機能を統合した構成を採用してもよい。 FIG. 3 shows a configuration example in which necessary functions are provided by the processor 102 executing a program. (Application Specific Integrated Circuit) or FPGA (Field-Programmable Gate Array), etc.). Alternatively, the main part of the standard controller 100 may be implemented using hardware conforming to a general-purpose architecture (for example, an industrial personal computer based on a general-purpose personal computer). In this case, virtualization technology may be used to execute a plurality of OSs (Operating Systems) for different purposes in parallel, and necessary applications may be executed on each OS. Furthermore, a configuration in which functions such as a display device and a support device are integrated into the standard controller 100 may be employed.

(b2:セーフティコントローラ200)
図4は、本実施の形態に係る制御システム1を構成するセーフティコントローラ200のハードウェア構成例を示す模式図である。図4を参照して、セーフティコントローラ200は、プロセッサ202と、メインメモリ204と、ストレージ210と、フィールドネットワークコントローラ208と、USBコントローラ220と、セーフティローカルバスコントローラ216とを含む。これらのコンポーネントは、プロセッサバス218を介して接続されている。
(b2: safety controller 200)
FIG. 4 is a schematic diagram showing a hardware configuration example of the safety controller 200 that configures the control system 1 according to this embodiment. Referring to FIG. 4, safety controller 200 includes processor 202 , main memory 204 , storage 210 , field network controller 208 , USB controller 220 and safety local bus controller 216 . These components are connected via processor bus 218 .

プロセッサ202は、主として、セーフティ制御に係る制御演算を実行する演算処理部に相当し、CPUやGPUなどで構成される。具体的には、プロセッサ202は、ストレージ210に格納されたプログラム(一例として、システムプログラム2102およびセーフティプログラム2104)を読出して、メインメモリ204に展開して実行することで、必要なセーフティ機能を提供するための制御演算、および、後述するような各種処理を実現する。 The processor 202 mainly corresponds to a calculation processing unit that executes control calculations related to safety control, and is configured by a CPU, GPU, or the like. Specifically, processor 202 reads programs (for example, system program 2102 and safety program 2104) stored in storage 210, develops them in main memory 204, and executes them to provide necessary safety functions. It implements control calculations for performing and various types of processing to be described later.

メインメモリ204は、DRAMやSRAMなどの揮発性記憶装置などで構成される。ストレージ210は、例えば、SSDやHDDなどの不揮発性記憶装置などで構成される。 The main memory 204 is composed of a volatile memory device such as DRAM and SRAM. The storage 210 is configured by, for example, a non-volatile storage device such as an SSD or HDD.

ストレージ210には、基本的な機能を実現するためのシステムプログラム2102に加えて、要求されるセーフティ機能に応じた作成されたセーフティプログラム2104が格納される。さらに、ストレージ210には、後述するような変数などを設定するための設定情報2106が格納される。 The storage 210 stores a system program 2102 for realizing basic functions as well as a safety program 2104 created according to required safety functions. Further, the storage 210 stores setting information 2106 for setting variables and the like, which will be described later.

フィールドネットワークコントローラ208は、フィールドネットワーク2を介して、標準コントローラ100およびセーフティドライバ300を含む任意のデバイスとの間でデータを遣り取りする。図3に示す制御システム1においては、セーフティコントローラ200のフィールドネットワークコントローラ208は、フィールドネットワーク2の通信スレーブとして機能する。 Field network controller 208 exchanges data with arbitrary devices including standard controller 100 and safety driver 300 via field network 2 . In the control system 1 shown in FIG. 3, the field network controller 208 of the safety controller 200 functions as a communication slave of the field network 2. FIG.

USBコントローラ220は、USB接続を介して、サポート装置500などの情報処理装置との間でデータを遣り取りする。 The USB controller 220 exchanges data with an information processing device such as the support device 500 via a USB connection.

セーフティローカルバスコントローラ216は、セーフティローカルバスを介して、セーフティコントローラ200に接続される任意のセーフティユニットとの間でデータを遣り取りする。図4には、セーフティユニットの一例として、セーフティIOユニット230を示す。 The safety local bus controller 216 exchanges data with any safety unit connected to the safety controller 200 via the safety local bus. FIG. 4 shows the safety IO unit 230 as an example of the safety unit.

セーフティIOユニット230は、任意のセーフティデバイス240との間で入出力信号を遣り取りする。より具体的には、セーフティIOユニット230は、セーフティセンサやセーフティスイッチなどのセーフティデバイス240からの入力信号を受け付ける。あるいは、セーフティIOユニット230は、セーフティリレーなどのセーフティデバイス240へ指令を出力する。 The safety IO unit 230 exchanges input/output signals with an arbitrary safety device 240 . More specifically, the safety IO unit 230 receives input signals from safety devices 240 such as safety sensors and safety switches. Alternatively, safety IO unit 230 outputs a command to safety device 240 such as a safety relay.

図4には、プロセッサ202がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。あるいは、セーフティコントローラ200の主要部を、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。 FIG. 4 shows a configuration example in which necessary functions are provided by the processor 202 executing a program. Alternatively, it may be implemented using an FPGA, etc.). Alternatively, the main part of the safety controller 200 may be implemented using hardware following a general-purpose architecture (for example, an industrial personal computer based on a general-purpose personal computer).

(b3:セーフティドライバ300およびサーボモータ400)
図5は、本実施の形態に係る制御システム1を構成するセーフティドライバ300およびサーボモータ400のハードウェア構成例を示す模式図である。図5を参照して、セーフティドライバ300は、フィールドネットワークコントローラ302と、制御部310と、ドライブ回路330と、フィードバック受信回路332とを含む。
(b3: safety driver 300 and servo motor 400)
FIG. 5 is a schematic diagram showing a hardware configuration example of the safety driver 300 and the servomotor 400 that configure the control system 1 according to the present embodiment. Referring to FIG. 5, safety driver 300 includes field network controller 302 , control section 310 , drive circuit 330 and feedback reception circuit 332 .

フィールドネットワークコントローラ302は、フィールドネットワーク2を介して、標準コントローラ100およびセーフティコントローラ200を含む任意のデバイスとの間でデータを遣り取りする。図5に示す制御システム1においては、セーフティドライバ300のフィールドネットワークコントローラ302は、フィールドネットワーク2の通信スレーブとして機能する。 Field network controller 302 exchanges data with arbitrary devices including standard controller 100 and safety controller 200 via field network 2 . In the control system 1 shown in FIG. 5 , the field network controller 302 of the safety driver 300 functions as a communication slave of the field network 2 .

制御部310は、セーフティドライバ300を動作させるために必要な演算処理を実行する。一例として、制御部310は、プロセッサ312,314と、メインメモリ316と、ストレージ320とを含む。 The control unit 310 executes arithmetic processing required to operate the safety driver 300 . As an example, controller 310 includes processors 312 and 314 , main memory 316 , and storage 320 .

プロセッサ312は、サーボモータ400を駆動するための制御演算を主として実行する演算処理部に相当する。プロセッサ314は、サーボモータ400に係るセーフティ機能を提供するための制御演算を主として実行する演算処理部に相当する。プロセッサ312,314は、いずれもCPUなどで構成される。 The processor 312 corresponds to an arithmetic processing unit that mainly executes control arithmetic operations for driving the servomotor 400 . The processor 314 corresponds to an arithmetic processing unit that mainly executes control arithmetic operations for providing safety functions related to the servomotor 400 . Both of the processors 312 and 314 are configured by a CPU or the like.

メインメモリ316は、DRAMやSRAMなどの揮発性記憶装置などで構成される。ストレージ320は、例えば、SSDやHDDなどの不揮発性記憶装置などで構成される。 The main memory 316 is composed of a volatile memory device such as DRAM and SRAM. The storage 320 is configured by, for example, a non-volatile storage device such as SSD or HDD.

ストレージ320には、サーボ制御350を実現するためのサーボ制御プログラム3202と、モーションセーフティ機能360を実現するためのモーションセーフティプログラム3204と、他のデバイスに公開される変数などを設定するための設定情報3206とが格納される。 The storage 320 contains a servo control program 3202 for realizing the servo control 350, a motion safety program 3204 for realizing the motion safety function 360, and setting information for setting variables to be exposed to other devices. 3206 are stored.

図5には、2つのプロセッサ312,314がそれぞれ異なる目的の制御演算を実行することで信頼性を高める構成を例示するが、これに限らず、要求されるセーフティ機能を実現できればどのような構成を採用してもよい。例えば、単一のプロセッサに複数のコアが含まれるような場合には、プロセッサ312,314にそれぞれ対応する制御演算を実行するようにしてもよい。また、図5には、プロセッサ312,314がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。 FIG. 5 exemplifies a configuration in which the two processors 312 and 314 execute control calculations for different purposes, thereby enhancing reliability. may be adopted. For example, where a single processor includes multiple cores, processors 312 and 314 may each perform corresponding control operations. FIG. 5 shows a configuration example in which necessary functions are provided by the processors 312 and 314 executing programs. (eg, ASIC or FPGA).

ドライブ回路330は、コンバータ回路およびインバータ回路などを含み、制御部310からの指令に従って、指定された電圧・電流・位相の電力を生成して、サーボモータ400へ供給する。 Drive circuit 330 includes a converter circuit, an inverter circuit, and the like, and according to a command from control unit 310 , generates power of specified voltage, current, and phase, and supplies it to servo motor 400 .

フィードバック受信回路332は、サーボモータ400からのフィードバック信号を受信して、その受信結果を制御部310へ出力する。 Feedback receiving circuit 332 receives a feedback signal from servo motor 400 and outputs the reception result to control section 310 .

サーボモータ400は、典型的には、三相交流モータ402および三相交流モータ402の回転軸に取り付けられたエンコーダ404を含む。 Servo motor 400 typically includes a three-phase AC motor 402 and an encoder 404 attached to the rotating shaft of the three-phase AC motor 402 .

三相交流モータ402は、セーフティドライバ300から供給される電力を受けて回転力を発生するアクチュエータである。図5には、一例として、三相交流モータを例示するが、これに限らず、直流モータであってもよいし、単相交流モータあるいは多相交流モータであってもよい。さらに、リニアサーボのような直線に沿って駆動力を発生するアクチュエータを採用してもよい。 The three-phase AC motor 402 is an actuator that receives power supplied from the safety driver 300 and generates rotational force. Although FIG. 5 illustrates a three-phase AC motor as an example, the motor is not limited to this, and may be a DC motor, a single-phase AC motor, or a polyphase AC motor. Furthermore, an actuator that generates driving force along a straight line, such as a linear servo, may be employed.

エンコーダ404は、三相交流モータ402の回転数に応じたフィードバック信号(典型的には、回転数に応じた数のパルス信号)を出力する。 Encoder 404 outputs a feedback signal (typically, the number of pulse signals corresponding to the number of revolutions) corresponding to the number of revolutions of three-phase AC motor 402 .

(b4:サポート装置500)
図6は、本実施の形態に係る制御システム1を構成するサポート装置500のハードウェア構成例を示す模式図である。サポート装置500は、一例として、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコン)を用いて実現される。
(b4: support device 500)
FIG. 6 is a schematic diagram showing a hardware configuration example of the support device 500 that configures the control system 1 according to this embodiment. Support device 500 is implemented, for example, by using hardware (for example, a general-purpose personal computer) conforming to a general-purpose architecture.

図6を参照して、サポート装置500は、プロセッサ502と、メインメモリ504と、入力部506と、出力部508と、ストレージ510と、光学ドライブ512と、USBコントローラ520とを含む。これらのコンポーネントは、プロセッサバス518を介して接続されている。 Referring to FIG. 6 , support device 500 includes processor 502 , main memory 504 , input section 506 , output section 508 , storage 510 , optical drive 512 and USB controller 520 . These components are connected via processor bus 518 .

プロセッサ502は、CPUやGPUなどで構成され、ストレージ510に格納されたプログラム(一例として、OS5102およびサポートプログラム5104)を読出して、メインメモリ504に展開して実行することで、後述するような各種処理を実現する。 The processor 502 is composed of a CPU, a GPU, or the like, and reads out a program (for example, an OS 5102 and a support program 5104) stored in the storage 510, expands it to the main memory 504, and executes it. Realize processing.

メインメモリ504は、DRAMやSRAMなどの揮発性記憶装置などで構成される。ストレージ510は、例えば、HDDやSSDなどの不揮発性記憶装置などで構成される。 The main memory 504 is composed of a volatile storage device such as DRAM and SRAM. The storage 510 is configured by, for example, a non-volatile storage device such as an HDD or SSD.

ストレージ510には、基本的な機能を実現するためのOS5102に加えて、サポート装置500としての機能を提供するためのサポートプログラム5104が格納される。すなわち、サポートプログラム5104は、制御システム1に接続されるコンピュータにより実行されることで、本実施の形態に係るサポート装置500を実現する。 The storage 510 stores a support program 5104 for providing the function of the support device 500 in addition to an OS 5102 for realizing basic functions. That is, the support program 5104 is executed by a computer connected to the control system 1 to implement the support device 500 according to the present embodiment.

さらに、ストレージ510には、サポートプログラム5104が実行されることで提供される開発環境においてユーザにより作成されるプロジェクトデータ5106が格納される。 Furthermore, the storage 510 stores project data 5106 created by the user in the development environment provided by executing the support program 5104 .

本実施の形態において、サポート装置500は、制御システム1に含まれる各デバイスに対する設定および各デバイスで実行されるプログラムの作成が統合的に可能な開発環境を提供する。プロジェクトデータ5106は、このような統合的な開発環境によって生成されるデータを含む。典型的には、プロジェクトデータ5106は、標準制御ソースプログラム5108と、標準コントローラ設定情報5110と、セーフティソースプログラム5112と、セーフティコントローラ設定情報5114と、セーフティドライバ設定情報5116とを含む。 In the present embodiment, the support device 500 provides a development environment in which settings for each device included in the control system 1 and creation of programs to be executed by each device can be made in an integrated manner. Project data 5106 includes data generated by such an integrated development environment. Project data 5106 typically includes standard control source programs 5108 , standard controller configuration information 5110 , safety source programs 5112 , safety controller configuration information 5114 , and safety driver configuration information 5116 .

標準制御ソースプログラム5108は、オブジェクトコードに変換された上で、標準コントローラ100へ送信され、標準制御プログラム1104(図3参照)として格納される。同様に、標準コントローラ設定情報5110についても標準コントローラ100へ送信され、設定情報1106(図3参照)として格納される。 The standard control source program 5108 is converted into object code, transmitted to the standard controller 100, and stored as the standard control program 1104 (see FIG. 3). Similarly, standard controller setting information 5110 is also transmitted to standard controller 100 and stored as setting information 1106 (see FIG. 3).

セーフティソースプログラム5112は、オブジェクトコードに変換された上で、セーフティコントローラ200へ送信され、セーフティプログラム2104(図3参照)として格納される。同様に、セーフティコントローラ設定情報5114についてもセーフティコントローラ200へ送信され、設定情報2106(図4参照)として格納される。 The safety source program 5112 is converted into object code, transmitted to the safety controller 200, and stored as the safety program 2104 (see FIG. 3). Similarly, the safety controller setting information 5114 is also transmitted to the safety controller 200 and stored as the setting information 2106 (see FIG. 4).

セーフティドライバ設定情報5116は、セーフティドライバ300へ送信され、設定情報3206(図5参照)として格納される。 The safety driver setting information 5116 is transmitted to the safety driver 300 and stored as the setting information 3206 (see FIG. 5).

入力部506は、キーボードやマウスなどで構成され、ユーザ操作を受け付ける。出力部508は、ディスプレイ、各種インジケータ、プリンタなどで構成され、プロセッサ502からの処理結果などを出力する。 An input unit 506 is composed of a keyboard, a mouse, and the like, and receives user operations. An output unit 508 includes a display, various indicators, a printer, and the like, and outputs processing results from the processor 502 and the like.

USBコントローラ520は、USB接続を介して、標準コントローラ100などとの間のデータを遣り取りする。 USB controller 520 exchanges data with standard controller 100 or the like via a USB connection.

サポート装置500は、光学ドライブ512を有しており、コンピュータ読取可能なプログラムを非一過的に格納する記録媒体514(例えば、DVD(Digital Versatile Disc)などの光学記録媒体)から、その中に格納されたプログラムが読み取られてストレージ510などにインストールされる。 The support device 500 has an optical drive 512, and from a recording medium 514 (for example, an optical recording medium such as a DVD (Digital Versatile Disc)) that stores a computer-readable program non-transitory. The stored program is read and installed in the storage 510 or the like.

サポート装置500で実行されるサポートプログラム5104などは、コンピュータ読取可能な記録媒体514を介してインストールされてもよいが、ネットワーク上のサーバ装置などからダウンロードする形でインストールするようにしてもよい。また、本実施の形態に係るサポート装置500が提供する機能は、OSが提供するモジュールの一部を利用する形で実現される場合もある。 The support program 5104 and the like executed by the support device 500 may be installed via the computer-readable recording medium 514, or may be installed by being downloaded from a server device or the like on the network. Also, the functions provided by the support device 500 according to the present embodiment may be realized by using some of the modules provided by the OS.

図6には、プロセッサ502がプログラムを実行することで、サポート装置500として必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。 FIG. 6 shows a configuration example in which the functions necessary for the support device 500 are provided by the processor 502 executing a program. It may be implemented using circuitry (eg, ASIC, FPGA, etc.).

なお、制御システム1が稼動中において、サポート装置500は、標準コントローラ100から取り外されていてもよい。 Note that the support device 500 may be removed from the standard controller 100 while the control system 1 is in operation.

<C.制御システム1の機能分担>
次に、制御システム1における機能分担の一例について説明する。図7は、本実施の形態に係る制御システム1の機能分担の一例を示す模式図である。
<C. Function sharing of control system 1>
Next, an example of division of functions in the control system 1 will be described. FIG. 7 is a schematic diagram showing an example of functional sharing of the control system 1 according to the present embodiment.

図7を参照して、標準コントローラ100が実行する標準制御150に関して、セーフティドライバ300はサーボ制御350を実行する。標準制御150は、制御対象に予め設定されたユーザプログラムに従って、サーボモータ400を駆動するための指令を周期的に算出する処理を含む。また、サーボ制御350は、標準制御150により周期的に算出される指令に従ってサーボモータ400を駆動するための制御、および、サーボモータ400の動作状態を示す状態値を取得して出力する処理を含む。サーボ制御350は、セーフティドライバ300のプロセッサ312(図5参照)が担当する。 Referring to FIG. 7, safety driver 300 executes servo control 350 with respect to standard control 150 executed by standard controller 100 . The standard control 150 includes a process of periodically calculating a command for driving the servomotor 400 according to a user program preset for the controlled object. Also, the servo control 350 includes control for driving the servo motor 400 according to commands periodically calculated by the standard control 150, and processing for obtaining and outputting a state value indicating the operating state of the servo motor 400. . Servo control 350 is handled by processor 312 (see FIG. 5) of safety driver 300 .

一方、セーフティコントローラ200が提供するセーフティ機能250に対応して、セーフティドライバ300はモーションセーフティ機能360を提供する。モーションセーフティ機能360は、セーフティドライバ300のプロセッサ314(図5参照)が担当する。 On the other hand, the safety driver 300 provides a motion safety function 360 corresponding to the safety function 250 provided by the safety controller 200 . Motion safety function 360 is handled by processor 314 (see FIG. 5) of safety driver 300 .

セーフティ機能250は、標準コントローラ100が実行する標準制御150が保持する状態値、セーフティデバイス240からの信号によって示される状態値、および、セーフティドライバ300が保持する状態値などに基づいて、予め定められた条件が成立すると、予め指定されているセーフティ機能を有効化する。 The safety function 250 is predetermined based on the state value held by the standard control 150 executed by the standard controller 100, the state value indicated by the signal from the safety device 240, the state value held by the safety driver 300, and the like. When the above conditions are met, the safety function specified in advance is activated.

予め指定されているセーフティ機能を有効化する処理は、例えば、セーフティドライバ300に対するセーフティ指令の出力、あるいは、セーフティデバイス240に対してセーフティ指令の出力(例えば、特定の装置への電力供給に係るセーフティリレーを遮断する)などを含む。 The process of activating a safety function designated in advance is, for example, the output of a safety command to the safety driver 300, or the output of a safety command to the safety device 240 (for example, a safety command related to power supply to a specific device). relay), etc.

セーフティドライバ300は、セーフティコントローラ200からのセーフティ指令に応答して、指定されたモーションセーフティ機能360を提供する。指定されたモーションセーフティ機能360の種類に応じて、サーボ制御350によるサーボモータ400の制御に介入して、サーボモータ400への電力供給を遮断する処理、あるいは、サーボ制御350によるサーボモータ400の制御の状態値が予め定められた制限範囲内に収まっているか否かを監視する処理などが実行される。 Safety driver 300 provides specified motion safety functions 360 in response to safety commands from safety controller 200 . Intervening in the control of the servo motor 400 by the servo control 350 to cut off the power supply to the servo motor 400 or controlling the servo motor 400 by the servo control 350 according to the type of the designated motion safety function 360 is within a predetermined limit range.

図8は、本実施の形態に係る制御システム1のセーフティドライバ300によるセーフティ機能に係る処理手順の一例を示すシーケンス図である。図8を参照して、標準コントローラ100の標準制御150により周期的に指令が算出されて、セーフティドライバ300(サーボ制御350)に出力される(シーケンスSQ2)。セーフティドライバ300のサーボ制御350は、標準制御150からの指令に従って、サーボモータ400を駆動する(シーケンスSQ4)。 FIG. 8 is a sequence diagram showing an example of a processing procedure related to the safety function by the safety driver 300 of the control system 1 according to this embodiment. Referring to FIG. 8, a command is periodically calculated by standard control 150 of standard controller 100 and output to safety driver 300 (servo control 350) (sequence SQ2). Servo control 350 of safety driver 300 drives servo motor 400 in accordance with a command from standard control 150 (sequence SQ4).

あるタイミングにおいて、セーフティデバイス240(例えば、セーフティセンサ)からのセーフティイベントが発生すると(シーケンスSQ6)、セーフティコントローラ200は、セーフティドライバ300(モーションセーフティ機能360)にセーフティ指令を出力する(シーケンスSQ8)。このセーフティ指令に応答して、セーフティドライバ300のモーションセーフティ機能360は、指定されたセーフティ機能を有効化する(シーケンスSQ10)。 At a certain timing, when a safety event occurs from the safety device 240 (for example, a safety sensor) (sequence SQ6), the safety controller 200 outputs a safety command to the safety driver 300 (motion safety function 360) (sequence SQ8). In response to this safety command, motion safety function 360 of safety driver 300 activates the designated safety function (sequence SQ10).

セーフティ機能の有効化に応答して、標準コントローラ100の標準制御150からは、当該有効化されたセーフティ機能に応じた指令が算出および出力されるようになる(シーケンスSQ12)。一方、セーフティドライバ300(モーションセーフティ機能360)は、サーボモータ400の動作状態が予め定められた制限範囲内に収まっているか否かを監視する。サーボモータ400の動作状態が予め定められた制限範囲内に収まっていないと判断されると、あるいは、予め定められた停止時間が到来すると、セーフティドライバ300(モーションセーフティ機能360)は、サーボモータ400への電力供給を遮断する(シーケンスSQ14)。 In response to the activation of the safety function, standard control 150 of standard controller 100 calculates and outputs a command according to the activated safety function (sequence SQ12). On the other hand, the safety driver 300 (motion safety function 360) monitors whether the operating state of the servomotor 400 is within a predetermined limit range. When it is determined that the operating state of the servomotor 400 is not within the predetermined limit range, or when the predetermined stop time arrives, the safety driver 300 (motion safety function 360) stops the servomotor 400 is cut off (sequence SQ14).

このように、セーフティドライバ300は、標準コントローラ100(標準制御150)からの指令に従ってサーボモータ400を駆動できるとともに、セーフティ機能を有効化するための指令に応じて、セーフティコントローラ200(セーフティ機能250)に対するモーションセーフティ機能を実現することができる。 In this way, the safety driver 300 can drive the servo motor 400 according to a command from the standard controller 100 (standard control 150), and can also drive the safety controller 200 (safety function 250) according to a command for enabling the safety function. It is possible to realize a motion safety function for

<D.制御システム1のモーションセーフティ機能>
次に、制御システム1が提供するモーションセーフティ機能の一例について説明する。
<D. Motion Safety Function of Control System 1>
Next, an example of the motion safety function provided by the control system 1 will be described.

図9は、本実施の形態に係る制御システム1が提供するモーションセーフティ機能の一例を示す図である。図9(A)には、STO(Safe Torque Off)に対応するサーボモータ400の挙動の一例を示し、図9(B)には、SS1(Safe Stop 1)に対応するサーボモータ400の挙動の一例を示す。 FIG. 9 is a diagram showing an example of the motion safety function provided by the control system 1 according to this embodiment. FIG. 9A shows an example of the behavior of the servomotor 400 corresponding to STO (Safe Torque Off), and FIG. 9B shows the behavior of the servomotor 400 corresponding to SS1 (Safe Stop 1). Here is an example.

図9(A)を参照して、サーボモータ400がある回転速度で運転している状態において、時刻t1でセーフティ指令(STO)が与えられると、セーフティドライバ300は、サーボモータ400への電力供給を遮断して、サーボモータ400で発生するトルクをゼロにする。この結果、サーボモータ400は惰性で回転した後に停止する。なお、サーボモータ400にブレーキが装着されている場合には、サーボモータ400は即座に停止することもできる。 Referring to FIG. 9A, when a safety command (STO) is given at time t1 while servomotor 400 is operating at a certain rotational speed, safety driver 300 supplies power to servomotor 400. is shut off to make the torque generated by the servomotor 400 zero. As a result, the servomotor 400 coasts and then stops. If the servomotor 400 is equipped with a brake, the servomotor 400 can be stopped immediately.

図9(B)を参照して、サーボモータ400がある回転速度で運転している状態において、時刻t1でセーフティ指令(SS1)が与えられると、セーフティドライバ300は、予め定められた加速度で回転速度を低減する。このとき、セーフティドライバ300は、サーボモータ400からの電力回収(すなわち、回生)などを実行してもよい。そして、時刻t2においてサーボモータ400の回転速度がゼロになると、セーフティドライバ300は、サーボモータ400への電力供給を遮断して、サーボモータ400で発生するトルクをゼロにする。時刻t2以降においては、図9(A)に示すSTOと同様の状態になる。 Referring to FIG. 9B, when servomotor 400 is operating at a certain rotational speed and a safety command (SS1) is given at time t1, safety driver 300 rotates at a predetermined acceleration. Reduce speed. At this time, the safety driver 300 may perform power recovery (that is, regeneration) from the servomotor 400 or the like. Then, when the rotation speed of the servo motor 400 becomes zero at time t2, the safety driver 300 cuts off the power supply to the servo motor 400 and makes the torque generated by the servo motor 400 zero. After time t2, the state is similar to that of STO shown in FIG. 9A.

図9(A)に示されるSTOおよび図9(B)に示されるSS1のうち、サーボモータ400と機械的に連結されている設備の特性などに応じて、より安全に停止できるセーフティ機能が適宜選択される。 Of the STO shown in FIG. 9A and SS1 shown in FIG. selected.

上述し非特許文献1は、図9(A)および図9(B)に示すモーションセーフティ機能だけではなく、複数のモーションセーフティ機能を規定する。各モーションセーフティ機能を実現するためには、サーボモータ400の挙動を規定するための設定が必要となる。 Non-Patent Document 1 mentioned above defines not only the motion safety function shown in FIGS. 9A and 9B, but also a plurality of motion safety functions. In order to implement each motion safety function, settings are required to define the behavior of the servo motor 400 .

図10は、本実施の形態に係る制御システム1のセーフティドライバ300に格納されるモーションセーフティ機能を実現するためのパラメータセット390の一例を示す図である。図10を参照して、パラメータセット390は、セーフティドライバ300が提供するモーションセーフティ機能の各々に対応する1または複数の設定値(パラメータ)を含む。 FIG. 10 is a diagram showing an example of the parameter set 390 for realizing the motion safety function stored in the safety driver 300 of the control system 1 according to this embodiment. Referring to FIG. 10 , parameter set 390 includes one or more set values (parameters) corresponding to each motion safety function provided by safety driver 300 .

例えば、モーションセーフティ機能に対応する設定値としては、速度範囲、加速度範囲、停止時間などが含まれ得る。 For example, settings corresponding to motion safety features may include velocity range, acceleration range, stop time, and the like.

典型的には、ユーザがサポート装置500を操作してセーフティドライバ300におけるモーショセーフティ機能における挙動を決定し、その決定された挙動に対応するパラメータセット390がセーフティドライバ300へ転送される。セーフティドライバ300は、サポート装置500からのパラメータセット390を予め格納している。 Typically, the user operates the support device 500 to determine the behavior of the motion safety function in the safety driver 300 , and the parameter set 390 corresponding to the determined behavior is transferred to the safety driver 300 . The safety driver 300 pre-stores the parameter set 390 from the support device 500 .

<E.制御システム1のデータ通信>
次に、制御システム1におけるデータ通信の一例について説明する。
<E. Data communication of control system 1>
Next, an example of data communication in the control system 1 will be described.

図11は、本実施の形態に係る制御システム1における通信フレームの伝送形態を説明するための図である。図11を参照して、制御システム1のフィールドネットワーク2においては、プロセスデータ通信が行われており、標準コントローラ100を通信マスタとして、通信フレーム600がサイクリック(例えば、数~10数msec)にデバイス間を一巡する。通信フレーム600が伝送する周期をプロセスデータ通信周期とも称する。 FIG. 11 is a diagram for explaining the form of transmission of communication frames in the control system 1 according to this embodiment. Referring to FIG. 11, in field network 2 of control system 1, process data communication is performed, and communication frame 600 is cyclically (for example, several to ten-odd milliseconds) with standard controller 100 as the communication master. Cycle through devices. The cycle in which the communication frame 600 is transmitted is also called a process data communication cycle.

本実施の形態においては、このような通信フレーム600をサイクリックに伝送するフィールドネットワーク2のプロトコルの一例として、EtherCAT(登録商標)を採用する。 In this embodiment, EtherCAT (registered trademark) is adopted as an example of the protocol of the field network 2 for cyclically transmitting such communication frames 600 .

通信フレーム600には、デバイス毎にデータ領域が割り当てられている。各デバイスは、周期的に伝送される通信フレーム600を受信すると、当該受信した通信フレーム600内の自デバイスに割り当てられたデータ領域に予め設定されたデータの現在値を書き込む。そして、現在値の書き込み後の通信フレーム600を次段のデバイスに送出する。各デバイスにより書き込まれたデータの現在値は他のデバイスから参照可能になっている。 A data area is assigned to each device in the communication frame 600 . Each device, upon receiving the communication frame 600 that is periodically transmitted, writes the current value of preset data in the data area assigned to the device within the received communication frame 600 . Then, the communication frame 600 after writing the current value is sent to the next-stage device. The current value of data written by each device can be referenced from other devices.

各デバイスが通信フレーム600に予め設定されたデータの現在値を書き込むことで、フィールドネットワーク2を一巡して通信マスタ(標準コントローラ100)に戻る通信フレーム600には、各デバイスにより収集された最新の値が含まれることになる。 Each device writes the current value of the preset data in the communication frame 600, so that the communication frame 600 that goes around the field network 2 and returns to the communication master (standard controller 100) contains the latest data collected by each device. value will be included.

本実施の形態においては、このようなプロセスデータ通信を利用して、セーフティコントローラ200とセーフティドライバ300の各々との間で論理コネクション4が形成される(図11参照)。この論理コネクション4は、セーフティ機能を実現するためのデータの遣り取りに用いられる。 In the present embodiment, using such process data communication, the logical connection 4 is formed between each of the safety controller 200 and the safety driver 300 (see FIG. 11). This logical connection 4 is used for exchanging data for realizing the safety function.

上述したように、フィールドネットワーク2のプロトコルとしてEtherCATを採用する場合には、FSoE(FailSafe over EtherCAT)と称されるプロトコルを用いて論理コネクション4を形成できる。 As described above, when EtherCAT is adopted as the protocol of the field network 2, the logical connection 4 can be formed using a protocol called FSoE (FailSafe over EtherCAT).

より具体的には、論理コネクション4を形成するために遣り取りされるコマンドを格納するための専用のデータ領域が通信フレーム600に割り当てられる。当該専用のデータ領域を用いて、デバイス間でコマンドを遣り取りすることで、論理コネクション4を形成する。 More specifically, a dedicated data area for storing commands exchanged to form the logical connection 4 is allocated to the communication frame 600 . A logical connection 4 is formed by exchanging commands between devices using the dedicated data area.

図12は、本実施の形態に係る制御システム1におけるデータ伝送を説明するための図である。図12を参照して、通信フレーム600には、プロセスデータ通信に用いられるデータ領域610に加えて、論理コネクション4に用いられるデータ領域620が規定されている。 FIG. 12 is a diagram for explaining data transmission in the control system 1 according to this embodiment. Referring to FIG. 12, communication frame 600 defines data area 620 used for logical connection 4 in addition to data area 610 used for process data communication.

データ領域610は、標準コントローラ100に割り当てられたデータ領域611と、セーフティドライバ300に割り当てられたデータ領域612,613,614と、セーフティコントローラ200に割り当てられたデータ領域615とを含む。 Data area 610 includes data area 611 assigned to standard controller 100 , data areas 612 , 613 and 614 assigned to safety driver 300 , and data area 615 assigned to safety controller 200 .

データ領域612,613,614,615は、各デバイスから他のデバイスへデータを公開するためのINデータ領域6121,6131,6141,6151と、各デバイスでの指令を受け付けるためのOUTデータ領域6122,6132,6142,6152とを含む。 Data areas 612, 613, 614 and 615 are composed of IN data areas 6121, 6131, 6141 and 6151 for disclosing data from each device to other devices, and OUT data areas 6122 and 6122 for receiving commands from each device. 6132, 6142, 6152.

INデータ領域6121,6131,6141,6151は、各デバイスが管理するプロセスデータのうち、他のデバイスへ公開するデータが書き込まれるデータ領域である。各デバイスが通信フレーム600内の自デバイスに割り当てられたINデータ領域に必要なデータを書き込むことで、他のデバイスは当該書き込まれたデータを参照できるようになる。通常、標準コントローラ100は、通信周期毎に、各デバイスにより書き込まれたデータを参照して標準制御に係る制御演算を実行することで、各デバイスに対する指令を算出する。 The IN data areas 6121, 6131, 6141, and 6151 are data areas in which process data managed by each device and to be disclosed to other devices are written. Each device writes necessary data to the IN data area assigned to itself within the communication frame 600, so that other devices can refer to the written data. Normally, the standard controller 100 refers to the data written by each device in each communication cycle and executes control calculations related to standard control to calculate commands for each device.

OUTデータ領域6122,6132,6142,6152には、各デバイスに与えられる指令が書き込まれる。各デバイスは、通信フレーム600内の自デバイスに割り当てられたOUTデータ領域に格納されているデータを参照することで、制御対象への出力信号を生成し、あるいは、内部の制御状態を更新する。基本的には、各デバイスのOUTデータ領域には、標準コントローラ100によってデータが書き込まれる。 In the OUT data areas 6122, 6132, 6142 and 6152 are written commands given to each device. Each device refers to the data stored in the OUT data area assigned to itself within the communication frame 600 to generate an output signal to the controlled object or update the internal control state. Basically, the standard controller 100 writes data to the OUT data area of each device.

プロセスデータ通信に用いられるデータ領域610に対する、各デバイスのデータの書き込みおよび読出し動作は、各デバイスに割り当てられるデータ領域に応じて、予め設定されている。このようなデータの書き込みおよび読出しの設定操作は、サポート装置500上でユーザによって行われる。そして、サポート装置500から各デバイスに設定情報が送信される。 The data write and read operations of each device with respect to the data area 610 used for process data communication are set in advance according to the data area assigned to each device. Such data write and read setting operations are performed by the user on the support device 500 . Then, the setting information is transmitted from the support apparatus 500 to each device.

一方、論理コネクション4に用いられるデータ領域620は、セーフティドライバ300に割り当てられたデータ領域621,622,623と、セーフティコントローラ200に割り当てられたデータ領域624とを含む。各デバイスは、データ領域621,622,623,624に対して、論理コネクション4に係る通信フレーム(以下、「セーフティ通信フレーム630」とも称す。)の書き込みおよび読出しを行う。通信マスタである標準コントローラ100は、データ領域621,622,623,624の間で、格納されているセーフティ通信フレーム630を入れ替える。このような通信マスタによる折り返し処理によって、セーフティ通信フレーム630は、一種のピアツーピアの通信が可能となる。 On the other hand, the data area 620 used for the logical connection 4 includes data areas 621 , 622 and 623 assigned to the safety driver 300 and a data area 624 assigned to the safety controller 200 . Each device writes and reads a communication frame (hereinafter also referred to as “safety communication frame 630”) related to logical connection 4 to data areas 621 , 622 , 623 and 624 . The standard controller 100, which is the communication master, exchanges the stored safety communication frames 630 among the data areas 621, 622, 623, 624. FIG. Such return processing by the communication master enables the safety communication frame 630 to perform a kind of peer-to-peer communication.

図12には、一例として、セーフティコントローラ200から1番目のセーフティドライバ300へセーフティ通信フレーム630を送信する場合の処理を示す。図12に示すようなセーフティ通信フレーム630は、セーフティコントローラ200が特定のセーフティドライバ300に対して特定のモーションセーフティ機能を有効化する場合などに送信される。 FIG. 12 shows, as an example, processing when the safety communication frame 630 is transmitted from the safety controller 200 to the first safety driver 300 . A safety communication frame 630 as shown in FIG. 12 is transmitted when the safety controller 200 activates a specific motion safety function for a specific safety driver 300, for example.

まず、セーフティコントローラ200は、送信先のセーフティドライバ300へ送信すべきセーフティ通信フレーム630を生成して、通信フレーム600のデータ領域624に書き込む。その後、セーフティ通信フレーム630が書き込まれた通信フレーム600が通信マスタである標準コントローラ100へ到着すると、標準コントローラ100は、データ領域624に格納されているセーフティ通信フレーム630をデータ領域621に複製する。データ領域621にセーフティ通信フレーム630が複製された通信フレーム600が送信先のセーフティドライバ300に到着すると、送信先のセーフティドライバ300は、データ領域621を参照して、セーフティ通信フレーム630を受信する。 First, the safety controller 200 generates a safety communication frame 630 to be transmitted to the destination safety driver 300 and writes it to the data area 624 of the communication frame 600 . After that, when the communication frame 600 in which the safety communication frame 630 is written arrives at the standard controller 100 which is the communication master, the standard controller 100 copies the safety communication frame 630 stored in the data area 624 to the data area 621 . When the communication frame 600 with the safety communication frame 630 duplicated in the data area 621 arrives at the destination safety driver 300 , the destination safety driver 300 refers to the data area 621 and receives the safety communication frame 630 .

また、セーフティドライバ300からセーフティコントローラ200へのセーフティ通信フレーム630は、上述とは反対の通信経路で送信される。 Also, the safety communication frame 630 from the safety driver 300 to the safety controller 200 is transmitted through a communication path opposite to that described above.

このように、本実施の形態に係る制御システム1においては、通信フレーム600内のデータ領域620を用いて、論理コネクション4が形成される。 Thus, in the control system 1 according to this embodiment, the logical connection 4 is formed using the data area 620 within the communication frame 600 .

<F.標準制御およびセーフティ制御の実装例>
上述したように、本実施の形態に係る制御システム1においては、プロセスデータ通信および論理コネクション4によるセーフティ通信が可能になっている。次に、それぞれの通信を利用した標準制御およびセーフティ制御の実装例について説明する。
<F. Implementation example of standard control and safety control>
As described above, in the control system 1 according to the present embodiment, process data communication and safety communication via the logical connection 4 are possible. Next, implementation examples of standard control and safety control using each communication will be described.

図13は、本実施の形態に係る制御システム1における標準制御およびセーフティ制御の実装例を示す模式図である。説明の便宜上、図13には、標準コントローラ100およびセーフティコントローラ200に加えて、1つのセーフティドライバ300からなる制御システム1の例を示す。 FIG. 13 is a schematic diagram showing an implementation example of standard control and safety control in control system 1 according to the present embodiment. For convenience of explanation, FIG. 13 shows an example of the control system 1 including one safety driver 300 in addition to the standard controller 100 and safety controller 200 .

図13を参照して、標準コントローラ100は、主たる機能構成として、プロセスデータ通信レイヤ170およびIO管理モジュール172を有している。セーフティコントローラ200は、主たる機能構成として、プロセスデータ通信レイヤ270と、IO管理モジュール272と、論理コネクションレイヤ276と、セーフティ機能状態管理エンジン278とを含む。セーフティドライバ300は、主たる機能構成として、プロセスデータ通信レイヤ370と、論理コネクションレイヤ376と、モーションセーフティ機能状態管理エンジン378と、サーボ制御実行エンジン352と、モーションセーフティ機能実行エンジン362とを含む。 Referring to FIG. 13, standard controller 100 has process data communication layer 170 and IO management module 172 as main functional components. The safety controller 200 includes a process data communication layer 270, an IO management module 272, a logical connection layer 276, and a safety function state management engine 278 as main functional components. The safety driver 300 includes a process data communication layer 370, a logical connection layer 376, a motion safety function state management engine 378, a servo control execution engine 352, and a motion safety function execution engine 362 as main functional components.

プロセスデータ通信レイヤ170、プロセスデータ通信レイヤ270およびプロセスデータ通信レイヤ370は、フィールドネットワーク2上の通信フレーム600の転送を担当する。プロセスデータ通信レイヤ170、プロセスデータ通信レイヤ270およびプロセスデータ通信レイヤ370の各々は、到着した通信フレーム600に含まれるデータに基づいて、各デバイスのプロセスデータ174,274,374を更新する。また、プロセスデータ通信レイヤ170、プロセスデータ通信レイヤ270およびプロセスデータ通信レイヤ370の各々は、予め指定されたプロセスデータを予め割り当てられているデータ領域に書き込んだ上で、通信フレーム600を再生成して次段のデバイスに送出する。プロセスデータ通信によりプロセスデータの少なくとも一部は共有されることになる。 Process data communication layer 170 , process data communication layer 270 and process data communication layer 370 are in charge of transferring communication frame 600 on field network 2 . Each of process data communication layer 170, process data communication layer 270, and process data communication layer 370 updates process data 174, 274, 374 of each device based on data included in communication frame 600 that has arrived. Each of the process data communication layer 170, the process data communication layer 270, and the process data communication layer 370 regenerates the communication frame 600 after writing the process data designated in advance into the data area allocated in advance. and send it to the next device. At least a portion of the process data will be shared through process data communication.

セーフティコントローラ200の論理コネクションレイヤ276およびセーフティドライバ300の論理コネクションレイヤ376は、セーフティ通信フレーム630の遣り取りを担当する。すなわち、論理コネクションレイヤ276および論理コネクションレイヤ376は、論理コネクションを形成するためのプロトコル(本実施の形態においては、FSoE)に従って、通信フレーム600に含まれるセーフティ通信フレーム630を用いて、コマンドおよびデータを遣り取りする。 The logical connection layer 276 of the safety controller 200 and the logical connection layer 376 of the safety driver 300 are responsible for exchanging safety communication frames 630 . That is, the logical connection layer 276 and the logical connection layer 376 use the safety communication frame 630 included in the communication frame 600 according to the protocol for forming the logical connection (FSoE in the present embodiment) to send commands and data. exchange.

標準コントローラ100において、IO管理モジュール172は、制御対象との間で信号を遣り取りすることで、プロセスデータ174を更新する。標準コントローラ100において実行される標準制御プログラム1104は、プロセスデータ174を参照して制御演算を実行するとともに、制御演算の実行結果でプロセスデータ174を更新する。 In the standard controller 100, the IO management module 172 updates the process data 174 by exchanging signals with the controlled object. The standard control program 1104 executed in the standard controller 100 refers to the process data 174 to execute control calculations, and updates the process data 174 with the execution results of the control calculations.

セーフティコントローラ200において、IO管理モジュール272は、セーフティデバイス240との間で信号を遣り取りすることで、プロセスデータ274を更新する。図13においては、プロセスデータ274とまとめて表現しているが、プロセスデータ通信により更新されるプロセスデータ(標準制御用)と、セーフティデバイス240との遣り取りにより更新されるプロセスデータ(セーフティ制御用)とを異なるレベルで管理するようにしてもよい。 In the safety controller 200 , the IO management module 272 updates process data 274 by exchanging signals with the safety device 240 . In FIG. 13, the process data 274 are collectively represented, but the process data (for standard control) updated by process data communication and the process data (for safety control) updated by interaction with the safety device 240 may be managed at different levels.

セーフティコントローラ200において実行されるセーフティプログラム2104は、プロセスデータ274およびセーフティ機能状態管理エンジン278を参照して制御演算を実行するとともに、制御演算の実行結果に基づいて、プロセスデータ274を更新し、あるいは、セーフティ機能状態管理エンジン278に対して内部的な指令を出力する。 The safety program 2104 executed in the safety controller 200 refers to the process data 274 and the safety function state management engine 278 to execute control calculations, and updates the process data 274 based on the execution results of the control calculations. , outputs internal commands to the safety function state management engine 278 .

セーフティ機能状態管理エンジン278は、セーフティプログラム2104による制御演算の実行結果に応じて、特定のセーフティドライバ300に対して特定のモーションセーフティ機能を有効化するための指令を生成する。論理コネクションレイヤ276は、セーフティ機能状態管理エンジン278からの指令に応答して、対象のセーフティドライバ300の論理コネクションレイヤ376との間で、セーフティ通信フレーム630を用いて必要なコマンドおよび情報を遣り取りする。 The safety function state management engine 278 generates a command for activating a specific motion safety function for a specific safety driver 300 according to the execution result of control calculation by the safety program 2104 . The logical connection layer 276 uses safety communication frames 630 to exchange necessary commands and information with the logical connection layer 376 of the target safety driver 300 in response to commands from the safety function state management engine 278 . .

セーフティドライバ300において、サーボ制御実行エンジン352は、プロセスデータ374およびフィードバック受信回路332を介して取得されるフィードバック信号の情報を参照してサーボ制御に係る制御演算を実行する。サーボ制御実行エンジン352は、制御演算の実行結果に基づいて、プロセスデータ374を更新するとともに、ドライブ回路330に内部的な指令を出力する。ドライブ回路330は、サーボ制御実行エンジン352からの指令に従って、サーボモータ400を駆動する。 In the safety driver 300 , the servo control execution engine 352 refers to the process data 374 and feedback signal information obtained via the feedback receiving circuit 332 to execute control calculations related to servo control. The servo control execution engine 352 updates the process data 374 and outputs internal commands to the drive circuit 330 based on the execution result of the control calculation. The drive circuit 330 drives the servomotor 400 according to commands from the servo control execution engine 352 .

モーションセーフティ機能状態管理エンジン378は、セーフティコントローラ200からのセーフティ指令に従ってモーションセーフティ機能の状態を管理する状態管理部に相当する。モーションセーフティ機能状態管理エンジン378は、セーフティコントローラ200からの指令に応答して、モーションセーフティ機能実行エンジン362に対して内部的な指令を出力する。 The motion safety function state management engine 378 corresponds to a state management unit that manages the state of the motion safety function in accordance with safety commands from the safety controller 200 . Motion safety function state management engine 378 outputs internal commands to motion safety function execution engine 362 in response to commands from safety controller 200 .

モーションセーフティ機能実行エンジン362は、指定されたモーションセーフティ機能を実行する。 Motion safety function execution engine 362 executes the specified motion safety function.

論理コネクションレイヤ376は、モーションセーフティ機能状態管理エンジン378からの指令に応答して、セーフティコントローラ200の論理コネクションレイヤ276との間で、セーフティ通信フレーム630を用いて必要なコマンドおよび情報を遣り取りする。 The logical connection layer 376 responds to commands from the motion safety function state management engine 378 to exchange necessary commands and information with the logical connection layer 276 of the safety controller 200 using safety communication frames 630 .

<G.セーフティ状態情報の公開>
上述したように、本実施の形態に係る制御システム1においては、セーフティコントローラ200とセーフティドライバ300との間の論理コネクション4を介して、モーションセーフティ機能の有効化が指示される。標準コントローラ100は、セーフティコントローラ200とセーフティドライバ300との間の遣り取りを直接参照できない。そのため、通信フレーム600のプロセスデータ通信に用いられるデータ領域610を用いて関係するデータが公開されない限り、標準コントローラ100は、モーションセーフティ機能の有効化の有無、および、モーションセーフティ機能が有効化されたタイミングなどを検出できない。以下では、標準コントローラ100がモーションセーフティ機能の情報を参照する方法について説明する。
<G. Disclosure of safety status information>
As described above, in the control system 1 according to the present embodiment, activation of the motion safety function is instructed via the logical connection 4 between the safety controller 200 and the safety driver 300 . The standard controller 100 cannot directly refer to the interactions between the safety controller 200 and the safety driver 300. Therefore, unless related data is disclosed using the data area 610 used for process data communication of the communication frame 600, the standard controller 100 determines whether or not the motion safety function is activated and whether the motion safety function is activated. Timing, etc. cannot be detected. A method of referring to the information of the motion safety function by the standard controller 100 will be described below.

具体的には、セーフティドライバ300からのプロセスデータ通信によるデータ公開を用いる方法について説明する。 Specifically, a method of using data disclosure by process data communication from the safety driver 300 will be described.

図14は、本実施の形態に係る制御システム1の標準コントローラ100がモーションセーフティ機能の情報を参照する方法を説明するための図である。図14に示す構成においては、セーフティドライバ300がデータミラーエンジン380をさらに含む。 FIG. 14 is a diagram for explaining how the standard controller 100 of the control system 1 according to the present embodiment refers to the motion safety function information. In the configuration shown in FIG. 14, safety driver 300 further includes data mirror engine 380 .

データミラーエンジン380は、モーションセーフティ機能状態管理エンジン378が保持する情報のうち予め設定された情報を、フィールドネットワーク2を介して公開するデータ公開部に相当する。具体的には、データミラーエンジン380は、モーションセーフティ機能状態管理エンジン378が管理しているモーションセーフティ機能の情報のうち予め選択された情報を、データ公開するためにプロセスデータ374に複製する((1)複製)。 The data mirror engine 380 corresponds to a data disclosure unit that discloses preset information among the information held by the motion safety function state management engine 378 via the field network 2 . Specifically, the data mirror engine 380 copies preselected information from the motion safety function information managed by the motion safety function state management engine 378 to the process data 374 for data disclosure (( 1) replication).

一方、標準コントローラ100においては、セーフティドライバ300により公開されるモーションセーフティ機能の情報を取得するための命令および/または設定が標準制御プログラム1104などに追加される((2)情報取得)。そして、取得されたモーションセーフティ機能の情報を用いたセーフティドライバ300を制御するためのプログラムが標準制御プログラム1104に追加される((3)指令出力プログラム追加)。このような命令および/または設定の追加により、標準コントローラ100において、モーションセーフティ機能の情報を参照して、セーフティドライバ300を制御するための指令を出力できる。 On the other hand, in the standard controller 100, an instruction and/or setting for acquiring information of the motion safety function disclosed by the safety driver 300 is added to the standard control program 1104 or the like ((2) information acquisition). Then, a program for controlling the safety driver 300 using the acquired motion safety function information is added to the standard control program 1104 ((3) addition of command output program). By adding such commands and/or settings, the standard controller 100 can refer to the motion safety function information and output commands for controlling the safety driver 300 .

より具体的な設定手順例としては、セーフティドライバ300のモーションセーフティ機能状態管理エンジン378は、モーションセーフティ機能毎に情報を管理しており、これらの情報のうち標準コントローラ100で参照すべき情報を、他のデバイスに公開するための変数に割り付けるための設定がなされる。本実施の形態においては、セーフティドライバ300により公開される情報はオブジェクト形式の変数に割り付けられ、以下では、このようなオブジェクト形式の変数を「モーションセーフティ制御用オブジェクト」とも称す。公開される情報の各々(情報の種類および値からなる組)は、モーションセーフティ制御用オブジェクトのプロパティとして割り付けられることになる。モーションセーフティ制御用オブジェクトは、フィールドネットワーク2を介してアクセス可能な通信オブジェクトに相当する。 As a more specific setting procedure example, the motion safety function state management engine 378 of the safety driver 300 manages information for each motion safety function. Settings are made to assign variables for exposure to other devices. In the present embodiment, the information disclosed by the safety driver 300 is assigned to variables in object format, and such variables in object format are hereinafter also referred to as "motion safety control objects". Each of the disclosed information (a set of information type and value) will be assigned as a property of the motion safety control object. A motion safety control object corresponds to a communication object accessible via the field network 2 .

また、標準コントローラ100においては、セーフティドライバ300により公開される、モーションセーフティ制御用オブジェクトに含まれる情報(プロパティ)のうち、必要な情報を用いて、セーフティドライバ300を制御するためのプログラムが作成される。 In the standard controller 100, a program for controlling the safety driver 300 is created using necessary information among the information (properties) included in the motion safety control object disclosed by the safety driver 300. be.

以上のように、セーフティドライバ300によるデータ公開により実装する場合には、セーフティドライバ300に対して、公開すべき情報を選択さえすれば、比較的容易に、標準コントローラ100で実行される標準制御プログラム1104を作成できる。 As described above, when implementing data disclosure by the safety driver 300, the standard control program executed by the standard controller 100 can be relatively easily executed by selecting the information to be disclosed to the safety driver 300. 1104 can be created.

次に、セーフティドライバ300により公開されるモーションセーフティ制御用オブジェクトの一例について説明する。 Next, an example of the motion safety control object disclosed by the safety driver 300 will be described.

図15は、本実施の形態に係る制御システム1のセーフティドライバ300が公開するモーションセーフティ制御用オブジェクトの設定例を説明するための図である。 FIG. 15 is a diagram for explaining a setting example of motion safety control objects disclosed by the safety driver 300 of the control system 1 according to the present embodiment.

図15に示す例において、モーションセーフティ制御用オブジェクト382は、モーションセーフティ毎の指令(有効化/無効化)の発行状態を示すコントロールオブジェクト3821と、モーションセーフティ毎の状態値を示すステータスオブジェクト3822とを含む。なお、図15に示すような2つのオブジェクトに限らず、単一のオブジェクトのみを用意してもよいし、より多くのオブジェクトを用意してもよい。 In the example shown in FIG. 15, the motion safety control object 382 includes a control object 3821 indicating the issuance state of commands (validation/invalidation) for each motion safety, and a status object 3822 indicating the state value for each motion safety. include. Note that the number of objects is not limited to two as shown in FIG. 15, and only a single object may be prepared, or more objects may be prepared.

セーフティドライバ300のモーションセーフティ機能状態管理エンジン378は、モーションセーフティ機能毎に制御用オブジェクト3781,3782,3783,3784,3785,・・・を有している。制御用オブジェクト3781,3782,3783,3784,3785,・・・は、モーションセーフティ機能状態管理エンジン378が論理的に保持するデータ構造体である。 The motion safety function state management engine 378 of the safety driver 300 has control objects 3781, 3782, 3783, 3784, 3785, . . . for each motion safety function. The control objects 3781, 3782, 3783, 3784, 3785, . . . are data structures logically held by the motion safety function state management engine 378. FIG.

より具体的には、制御用オブジェクト3781,3782,3783,3784,3785,・・・は、各モーションセーフティの指令(有効化/無効化)の発行状態を示す情報3781A,3782A,3783A,3784A,3785A,・・・と、各モーションセーフティの制御状態を示す情報3781B,3782B,3783B,3784B,3785B,・・・とを含む。 More specifically, the control objects 3781, 3782, 3783, 3784, 3785, . 3785A, . . . and information 3781B, 3782B, 3783B, 3784B, 3785B, .

モーションセーフティ制御用オブジェクト382には、制御用オブジェクト3781,3782,3783,3784,3785,・・・に含まれる情報のうち、予め選択された情報が複製される。このように、モーションセーフティ制御用オブジェクト382には、モーションセーフティ機能状態管理エンジン378が管理する情報が複製されるので、モーションセーフティ制御用オブジェクト382を「ミラーオブジェクト」と称することもできる。 Information selected in advance from the information included in the control objects 3781, 3782, 3783, 3784, 3785, . In this way, the motion safety control object 382 duplicates the information managed by the motion safety function state management engine 378, so the motion safety control object 382 can also be called a "mirror object."

ミラーオブジェクトは、モーションセーフティ制御用オブジェクト382に含まれる情報をそのまま反映したものであるとともに、標準コントローラ100を含むフィールドネットワーク2に接続された各デバイスに対して公開される変数群でもある。 The mirror object reflects the information contained in the motion safety control object 382 as it is, and is also a variable group that is open to each device connected to the field network 2 including the standard controller 100 .

モーションセーフティ制御用オブジェクト382に割り付けられる情報は、ミラーオブジェクト設定384(設定情報3206(図5参照)の一部に含まれる。)により規定される。ミラーオブジェクト設定384は、モーションセーフティ機能状態管理エンジン378が管理する情報のうち、モーションセーフティ制御用オブジェクト382に含まれる情報(プロパティ)として複製すべき情報を規定するものである。 Information allocated to the motion safety control object 382 is defined by the mirror object setting 384 (included in part of the setting information 3206 (see FIG. 5)). The mirror object setting 384 defines information to be copied as information (property) included in the motion safety control object 382 among the information managed by the motion safety function state management engine 378 .

このように、サポート装置500は、モーションセーフティ機能状態管理エンジン378が保持する情報のうち予め設定された情報を、フィールドネットワーク2を介して標準コントローラ100へ公開するように、ミラーオブジェクト設定384(設定情報3206(図5参照)の一部に含まれる。)を生成する。すなわち、セーフティドライバ300から標準コントローラ100へ公開されるデータは、セーフティコントローラ200からのセーフティ指令が反映されることになる。 In this way, the support device 500 makes the mirror object setting 384 (setting (included in part of the information 3206 (see FIG. 5)). That is, the safety command from the safety controller 200 is reflected in the data released from the safety driver 300 to the standard controller 100 .

図14に示す構成例において、データミラーエンジン380は、サーボ制御350を実行する演算処理部であるプロセッサ312によって実現され、モーションセーフティ機能状態管理エンジン378は、モーションセーフティ機能360を提供する演算処理部であるプロセッサ314によって実現される。 In the configuration example shown in FIG. 14, the data mirror engine 380 is implemented by the processor 312, which is an arithmetic processing unit that executes the servo control 350, and the motion safety function state management engine 378 is an arithmetic processing unit that provides the motion safety function 360. is implemented by a processor 314 that is

このような構成を採用した場合には、プロセッサ312とプロセッサ314との間でメッセージ通信などによってイベントを通知するようにしてもよい。具体的には、モーションセーフティ機能状態管理エンジン378(プロセッサ314)は、論理コネクション4を介して何らかの指令を受けると、対応する制御用オブジェクトの情報を更新するとともに、データミラーエンジン380(プロセッサ312)に情報の更新を通知する。この更新の通知を受けて、データミラーエンジン380(プロセッサ312)は、モーションセーフティ制御用オブジェクト382の内容を更新する。 When such a configuration is adopted, the event may be notified between the processors 312 and 314 by message communication or the like. Specifically, when the motion safety function state management engine 378 (processor 314) receives a command via the logical connection 4, it updates the information of the corresponding control object and also updates the data mirror engine 380 (processor 312). to notify you of information updates. Upon receiving this update notification, the data mirror engine 380 (processor 312) updates the contents of the motion safety control object 382. FIG.

<H.サポート装置500における公開データの参照設定>
サポート装置500において、セーフティドライバ設定情報5116(図6参照)の一部に含まれるコントロールオブジェクト・ステータスオブジェクト設定テーブル560が規定される。コントロールオブジェクト・ステータスオブジェクト設定テーブル560に規定されるオブジェクトに必要なセーフティ機能のオブジェクトが割り付けられた上で、セーフティコントローラ200のユーザプログラムでセーフティ機能のON/OFFが制御される。
<H. Reference Setting of Public Data in Support Device 500>
In the support device 500, a control object/status object setting table 560 included in part of the safety driver setting information 5116 (see FIG. 6) is defined. After the necessary safety function objects are allocated to the objects defined in the control object/status object setting table 560, the user program of the safety controller 200 controls ON/OFF of the safety functions.

本実施の形態においては、サポート装置500が保持するコントロールオブジェクト・ステータスオブジェクト設定テーブル560、および、セーフティドライバ300が保持するミラーオブジェクト設定384は、いずれも、データ公開される情報を特定するための公開設定に相当する。以下、ミラーオブジェクト設定384に関するサポート装置500における設定処理について説明する。 In the present embodiment, both the control object/status object setting table 560 held by the support device 500 and the mirror object setting 384 held by the safety driver 300 are used for specifying information to be published. Equivalent to setting. Setting processing in the support device 500 regarding the mirror object setting 384 will be described below.

図16は、本実施の形態に係る制御システム1のサポート装置500での設定処理を説明するための図である。図16を参照して、サポート装置500は、制御システム1に含まれる標準コントローラ100およびセーフティドライバ300に係る設定を受け付ける。図16には、設定の一例として、標準コントローラ変数設定テーブル550(図6の標準コントローラ設定情報5110に含まれる)およびコントロールオブジェクト・ステータスオブジェクト設定テーブル560(図6のセーフティドライバ設定情報5116に含まれる)を示す。 FIG. 16 is a diagram for explaining setting processing in support device 500 of control system 1 according to the present embodiment. Referring to FIG. 16 , support device 500 accepts settings related to standard controller 100 and safety driver 300 included in control system 1 . 16 shows, as an example of settings, a standard controller variable setting table 550 (included in the standard controller setting information 5110 in FIG. 6) and a control object/status object setting table 560 (included in the safety driver setting information 5116 in FIG. 6). ).

コントロールオブジェクト・ステータスオブジェクト設定テーブル560は、対象のセーフティドライバ300が公開するモーションセーフティ制御用オブジェクト382に含まれる情報を規定するテーブルである。ユーザは、サポート装置500上で、コントロールオブジェクト・ステータスオブジェクト設定テーブル560を編集して、対象となるセーフティドライバ300が公開するモーションセーフティ制御用オブジェクト382に含めるべき情報を設定する((1)設定)。 The control object/status object setting table 560 is a table that defines information included in the motion safety control object 382 published by the target safety driver 300 . The user edits the control object/status object setting table 560 on the support device 500 to set information to be included in the motion safety control object 382 published by the target safety driver 300 ((1) setting). .

より具体的には、コントロールオブジェクト・ステータスオブジェクト設定テーブル560は、モーションセーフティ制御用オブジェクト382に含まれるコントロールオブジェクト3821およびステータスオブジェクト3822にそれぞれ対応する設定欄562および564を含む。ユーザは、設定欄562および564の各エントリに、対象とする情報の制御オブジェクト566を設定する。 More specifically, the control object/status object setting table 560 includes setting columns 562 and 564 respectively corresponding to the control object 3821 and the status object 3822 included in the motion safety control object 382 . The user sets the control object 566 of the target information in each entry of the setting columns 562 and 564 .

各エントリに設定される情報は、モーションセーフティ機能状態管理エンジン378が保持するモーションセーフティ機能毎の制御用オブジェクト3781,3782,3783,3784,3785,・・・(図16参照)から任意に選択される。 Information set in each entry is arbitrarily selected from control objects 3781, 3782, 3783, 3784, 3785, . be.

このように、サポート装置500は、データミラーエンジン380により公開される情報の指定を受け付けるとともに、当該指定された情報を特定する公開設定(コントロールオブジェクト・ステータスオブジェクト設定テーブル560)をセーフティドライバ300へ転送する。 In this way, the support device 500 accepts the specification of information to be disclosed by the data mirror engine 380, and transfers the disclosure settings (control object/status object setting table 560) specifying the specified information to the safety driver 300. do.

標準コントローラ変数設定テーブル550は、標準コントローラ100で参照可能な変数を規定するテーブルである。標準コントローラ変数設定テーブル550は、セーフティドライバ300により公開されるモーションセーフティ制御用オブジェクト382を参照するための設定を含む。 The standard controller variable setting table 550 is a table that defines variables that can be referenced by the standard controller 100 . The standard controller variable setting table 550 includes settings for referencing the motion safety control objects 382 exposed by the safety driver 300 .

より具体的には、標準コントローラ変数設定テーブル550は、モーションセーフティ制御用オブジェクト382に含まれるコントロールオブジェクト3821およびステータスオブジェクト3822にそれぞれ対応する設定欄552および554を含む。 More specifically, the standard controller variable setting table 550 includes setting columns 552 and 554 respectively corresponding to the control object 3821 and status object 3822 included in the motion safety control object 382 .

本実施の形態に係る制御システム1の標準コントローラ100においては、モーションセーフティ制御用オブジェクト382をそのまま参照することもできるが、標準制御プログラム1104の作成を容易化するために、モーションセーフティ制御用オブジェクト382に含まれる各属性に対して変数を設定することも可能である。 In the standard controller 100 of the control system 1 according to the present embodiment, the motion safety control object 382 can be referenced as it is. It is also possible to set variables for each attribute contained in the .

図16には、コントロールオブジェクト・ステータスオブジェクト設定テーブル560における設定に基づいて、標準コントローラ変数設定テーブル550において、モーションセーフティ制御用オブジェクト382に含まれる各属性に対して変数が自動的に設定される例を示す。 FIG. 16 shows an example in which variables are automatically set for each attribute included in the motion safety control object 382 in the standard controller variable setting table 550 based on the settings in the control object/status object setting table 560. indicates

図16に示すように、ユーザがコントロールオブジェクト・ステータスオブジェクト設定テーブル560を設定した後、標準コントローラ変数設定テーブル550への反映操作を行うと、各属性に対応する変数556は、設定欄562および564の内容に応じて自動的に設定されてもよい。あるいは、ユーザが手動で設定してもよい。このように、サポート装置500は、セーフティドライバ300に対する設定である、コントロールオブジェクト・ステータスオブジェクト設定テーブル560(公開設定)を参照して、セーフティドライバ300のモーションセーフティ機能状態管理エンジン378により管理される情報のうち公開対象の情報を特定するとともに、データミラーエンジン380により公開される情報を参照するための変数556(参照情報に相当する。)に当該特定した情報の意味を関連付ける。 As shown in FIG. 16, when the user sets the control object/status object setting table 560 and then performs the reflection operation to the standard controller variable setting table 550, the variable 556 corresponding to each attribute is set in the setting columns 562 and 564. may be automatically set according to the contents of Alternatively, it may be set manually by the user. In this way, the support device 500 refers to the control object/status object setting table 560 (public setting), which is the setting for the safety driver 300, to obtain information managed by the motion safety function state management engine 378 of the safety driver 300. Information to be disclosed is specified among them, and the meaning of the specified information is associated with the variable 556 (corresponding to reference information) for referring to the information disclosed by the data mirror engine 380 .

標準制御プログラム1104においては、標準コントローラ変数設定テーブル550において設定された変数556を参照することができる。 The standard control program 1104 can refer to the variables 556 set in the standard controller variable setting table 550 .

図17は、本実施の形態に係る制御システム1のサポート装置500が提供するユーザインターフェイス画面の一例を示す模式図である。図17(A)を参照して、モーションセーフティ制御用オブジェクト382に係る設定画面570は、対象情報表示欄572と、ミラーオブジェクト表示欄574と、属性設定欄576と、データ型設定欄578とを含む。 FIG. 17 is a schematic diagram showing an example of a user interface screen provided by support device 500 of control system 1 according to the present embodiment. 17A, a setting screen 570 related to the motion safety control object 382 includes a target information display field 572, a mirror object display field 574, an attribute setting field 576, and a data type setting field 578. include.

ミラーオブジェクト表示欄574は、モーションセーフティ制御用オブジェクト382に含まれる各要素(ビット)を表示する。対象情報表示欄572には、モーションセーフティ制御用オブジェクト382に割り当てる情報が設定される。属性設定欄576には、割り当てられる情報の属性(読取専用/編集可能の別)が設定される。データ型設定欄578には、割り当てられる情報のデータ型(BOOL型や実数型など)が設定される。 A mirror object display field 574 displays each element (bit) included in the motion safety control object 382 . Information to be assigned to the motion safety control object 382 is set in the target information display column 572 . In the attribute setting column 576, the attribute of information to be assigned (read-only/editable) is set. In the data type setting column 578, the data type (BOOL type, real number type, etc.) of the information to be assigned is set.

ユーザは、図17(A)に示す設定画面570に対する操作により、モーションセーフティ制御用オブジェクト382に含めるべき情報を設定する。その後、ユーザが反映操作を行うことで、図17(B)に示すように、標準コントローラ100で参照可能な変数名が自動的に設定される。 The user sets information to be included in the motion safety control object 382 by operating the setting screen 570 shown in FIG. 17(A). Thereafter, when the user performs a reflection operation, a variable name that can be referred to by the standard controller 100 is automatically set as shown in FIG. 17(B).

図17(B)に示すように、設定画面570は、変数名設定欄580をさらに有している。変数名設定欄580には、標準コントローラ100で各情報を参照するための変数名が設定される。なお、変数名設定欄580に設定される変数名は、対象情報表示欄572に設定される変数名と同一であってもよい。 As shown in FIG. 17(B), the setting screen 570 further has a variable name setting field 580 . A variable name setting column 580 is used to set a variable name for referring to each piece of information in the standard controller 100 . Note that the variable name set in the variable name setting field 580 may be the same as the variable name set in the target information display field 572 .

上述したように、図16および図17には、変数名を参照情報として用いて任意のプロセス値を参照する構成例を示す。すなわち、サポート装置500において、セーフティドライバ300のデータミラーエンジン380により公開される情報を変数として参照可能になっている。このような変数に対して各情報の意味を反映する場合には、変数の名前(変数名)として反映してもよいし、変数を参照する際に表示される、変数名とは別に付与されるコメントやラベルなどの付加情報として反映してもよい。 As described above, FIGS. 16 and 17 show configuration examples in which arbitrary process values are referenced using variable names as reference information. That is, in the support device 500, the information disclosed by the data mirror engine 380 of the safety driver 300 can be referenced as a variable. When reflecting the meaning of each information for such variables, it may be reflected as the name of the variable (variable name), or it may be given separately from the variable name displayed when referring to the variable. may be reflected as additional information such as comments or labels.

すなわち、サポート装置500は、変数名として特定した情報の意味を反映するようにしてもよいし、変数に付与される付加情報として特定した情報の意味を反映するようにしてもよい。 That is, the support device 500 may reflect the meaning of the information specified as the variable name, or may reflect the meaning of the information specified as the additional information added to the variable.

但し、参照情報としては、変数名でなくてもよい。例えば、各プロセス値が格納される記憶領域の物理アドレスあるいは論理アドレスを指定するようにしてもよい。さらにあるいは、物理アドレスあるいは論理アドレスを示す識別情報を参照情報として用いてもよい。このような場合においても、参照情報を特定する識別情報として特定した情報の意味を反映するようにしてもよいし、参照情報に付与される付加情報として特定した情報の意味を反映するようにしてもよい。 However, the reference information does not have to be a variable name. For example, the physical address or logical address of the storage area in which each process value is stored may be specified. Alternatively, identification information indicating physical addresses or logical addresses may be used as reference information. Even in such a case, the meaning of the information specified as the identification information for specifying the reference information may be reflected, or the meaning of the information specified as the additional information added to the reference information may be reflected. good too.

また、図17(B)に示すように、他のセーフティドライバ300が公開するモーションセーフティ制御用オブジェクト382に含まれる情報と競合しないように、さらなる情報を付加してもよい。図17(B)に示す設定画面570においては、公開元のセーフティドライバ300を特定する情報(図17に示す例では、「E003」)を付加した変数名が採用されている。 Further, as shown in FIG. 17B, additional information may be added so as not to conflict with information included in motion safety control objects 382 published by other safety drivers 300 . In the setting screen 570 shown in FIG. 17B, variable names to which information (“E003” in the example shown in FIG. 17) specifying the safety driver 300 that is the disclosure source is added are adopted.

以上のように、サポート装置500は、セーフティドライバ300のデータミラーエンジン380により公開される情報を参照するための参照情報(典型的には、変数)に、当該データミラーエンジン380を含んでいるセーフティドライバ300を特定する情報を反映するようにしてもよい。 As described above, the support device 500 includes the data mirror engine 380 in the reference information (typically, variables) for referring to the information published by the data mirror engine 380 of the safety driver 300. Information specifying the driver 300 may be reflected.

また、ユーザは、サポート装置500上で、標準コントローラ100に関する設定において、公開されたモーションセーフティ制御用オブジェクトの各ビットに対して、対応する名称を含む変数名を割り当てる。このような変数名を採用することで、標準制御プログラム1104を作成する際に、モーションセーフティ制御用オブジェクト382に含まれる情報の参照を容易化でき、プログラム作成を効率化できる。すなわち、モーションセーフティ制御用オブジェクトの各ビットの意味を明示または暗示する変数名を用いて、標準制御プログラムを作成できる。 Also, the user assigns a variable name including a corresponding name to each bit of the disclosed motion safety control object in the setting of the standard controller 100 on the support device 500 . By adopting such variable names, reference to information included in the motion safety control object 382 can be facilitated when creating the standard control program 1104, and program creation can be made more efficient. That is, a standard control program can be created using variable names that express or imply the meaning of each bit of the motion safety control object.

図18は、本実施の形態に係る制御システム1におけるモーションセーフティ制御用オブジェクト382を参照した標準制御プログラム1104の一例を示す図である。図18(A)および図18(B)には、いずれも、モーションセーフティ機能としてSOS(Safe Operating Stop)が有効化された場合の、セーフティドライバ300およびサーボモータ400を制御するための命令(コード1105)を記述した部分を示す。 FIG. 18 is a diagram showing an example of the standard control program 1104 that refers to the motion safety control object 382 in the control system 1 according to this embodiment. 18(A) and 18(B) both show instructions (code 1105) is described.

図18(A)には、モーションセーフティ制御用オブジェクト382をそのまま参照する場合の標準制御プログラム1104の一例を示し、図18(B)には、モーションセーフティ制御用オブジェクト382に対応付けられた変数を参照する場合の標準制御プログラム1104の一例を示す。 FIG. 18A shows an example of the standard control program 1104 when referring to the motion safety control object 382 as it is, and FIG. 18B shows variables associated with the motion safety control object 382. An example of the standard control program 1104 for reference is shown.

図18(A)に示す標準制御プログラム1104においては、モーションセーフティ制御用オブジェクト382の5ビット目を参照するための「E003_Mirror_Safety_statusword[3]」との参照命令582を用いたIF文が記述されている。 In the standard control program 1104 shown in FIG. 18(A), an IF statement using a reference instruction 582 of "E003_Mirror_Safety_statusword[3]" for referencing the 5th bit of the motion safety control object 382 is described. .

これに対して、図18(B)に示す標準制御プログラム1104においては、モーションセーフティ制御用オブジェクト382の5ビット目の情報に割り当てられた「E003_SOS_command1_active」との変数584を用いたIF文が記述されている。このように、図18(B)に示すような変数584を用いることで、当該変数目がいずれの情報を参照しているのかを一見して把握することができる。 On the other hand, in the standard control program 1104 shown in FIG. 18B, an IF statement using the variable 584 of "E003_SOS_command1_active" assigned to the 5th bit information of the motion safety control object 382 is described. ing. By using the variable 584 shown in FIG. 18B in this way, it is possible to grasp at a glance which information the variable item refers to.

このように、サポート装置500は、標準コントローラ100で実行される標準制御プログラム1104を開発する環境を提供する。この標準制御プログラム1104を開発する環境において、上述したような特定した情報の意味が関連付けられた参照情報(典型的には、各変数)を用いて、標準制御プログラム1104を作成可能になっている。 Thus, the support device 500 provides an environment for developing the standard control program 1104 executed by the standard controller 100. FIG. In the environment for developing this standard control program 1104, the standard control program 1104 can be created using the reference information (typically, each variable) associated with the meaning of the specified information as described above. .

<I.サポート装置500におけるプロセスデータ通信の設定>
次に、セーフティドライバ300に対するプロセスデータ通信をサポート装置500で設定する場合の処理について説明する。本実施の形態においては、サポート装置500でセーフティドライバ300毎に公開すべきモーションセーフティ制御用オブジェクトの情報を選択および設定することになる。また、セーフティドライバ300毎にプロセスデータ通信により伝送されるデータのうち使用するものを設定することになる。
<I. Setting of Process Data Communication in Support Device 500>
Next, the processing when the process data communication for the safety driver 300 is set by the support device 500 will be described. In the present embodiment, the support device 500 selects and sets the motion safety control object information to be disclosed for each safety driver 300 . Also, the data to be used among the data transmitted by the process data communication is set for each safety driver 300 .

現実の運用を想定すると、制御システム1は複数のセーフティドライバ300を含むことが多く、このような場合、セーフティドライバ300毎に設定を行うことは操作が煩雑になる。 Assuming actual operation, the control system 1 often includes a plurality of safety drivers 300, and in such a case, setting for each safety driver 300 complicates the operation.

また、例えば、セーフティドライバ300に係るプログラムをデバッグする場合、セーフティドライバ300のモーションセーフティ機能を無効化した状態で、標準制御に係る部分だけをデバッグしたい場合がある。このとき、セーフティドライバ300からのモーションセーフティ制御用オブジェクトの情報(ミラーオブジェクト)の公開を無効化しておくことが好ましい。このような場合において、セーフティドライバ300毎に公開設定を削除もしくは無効化することは操作が煩雑になる。 Further, for example, when debugging a program related to the safety driver 300, it may be desired to debug only the portion related to standard control while the motion safety function of the safety driver 300 is disabled. At this time, it is preferable to disable disclosure of the motion safety control object information (mirror object) from the safety driver 300 . In such a case, deleting or invalidating the public settings for each safety driver 300 would be a complicated operation.

図19は、本実施の形態に係る制御システム1を構成するサポート装置500における一括設定の処理を説明するための図である。図19を参照して、複数のセーフティドライバ300の各々に対して、コントロールオブジェクト・ステータスオブジェクト設定テーブル560が用意されているとする。 FIG. 19 is a diagram for explaining batch setting processing in the support device 500 that constitutes the control system 1 according to the present embodiment. Referring to FIG. 19, it is assumed that a control object/status object setting table 560 is prepared for each of the plurality of safety drivers 300 .

本実施の形態では、サポート装置500において、ユーザが所定の操作を行うことで、コントロールオブジェクト・ステータスオブジェクト設定テーブル560の各々に対して、予め設定された内容が反映されている状態と、何らの設定もなされていない状態とを一括して切り替えることができる。すなわち、制御システム1が複数のセーフティドライバ300を有している場合において、サポート装置500は、ユーザ操作に応答して、すべてのセーフティドライバ300のデータミラーエンジン380(データ公開部)に対して、フィールドネットワーク2を介した公開を一括して有効化または無効化することができる。 In the present embodiment, by the user performing a predetermined operation in the support device 500, each of the control object/status object setting table 560 is in a state in which the contents set in advance are reflected, and in what state. It is possible to collectively switch between a state in which no setting has been made. That is, when the control system 1 has a plurality of safety drivers 300, the support device 500 responds to the user's operation by Publishing via the field network 2 can be collectively enabled or disabled.

また、サポート装置500においては、複数のコントロールオブジェクト・ステータスオブジェクト設定テーブル560に対して、同一の設定を反映することができるようにしてもよい。 Further, in the support device 500, the same setting may be reflected in a plurality of control object/status object setting tables 560. FIG.

具体的には、サポート装置500は、共通設定テンプレート590を有している。共通設定テンプレート590は、セーフティ機能を利用する場合に、プロセスデータ通信を行うオブジェクト(より具体的には、ミラーオブジェクト、コントロールオブジェクト、およびステータスオブジェクト)の設定を含む。サポート装置500において、ユーザが所定の操作を行うことで、コントロールオブジェクト・ステータスオブジェクト設定テーブル560の各々に対して、共通設定テンプレート590の内容が反映される。 Specifically, the support device 500 has a common setting template 590 . The common setting template 590 includes settings for objects (more specifically, mirror objects, control objects, and status objects) that perform process data communication when using the safety function. In the support device 500 , the contents of the common setting template 590 are reflected in each control object/status object setting table 560 by the user performing a predetermined operation.

このような一括無効化の機能、一括有効化の機能、および、一括設定の機能の一部または全部をサポート装置500に実装することで、上述したようなデバッグ時の操作を効率化できる。以下、より具体的な処理例について説明する。 By implementing a part or all of the batch invalidation function, the batch validation function, and the batch setting function in the support device 500, the above-described operations during debugging can be made more efficient. A more specific processing example will be described below.

なお、説明の便宜上、主としてデータの公開設定に着目して説明しているが、本実施の形態において提供される一括無効化の機能、一括有効化の機能、および、一括設定の機能は、セーフティドライバ300のプロセスデータ通信の設定全般に関する。すなわち、設定対象は、セーフティドライバ300から他のデバイスに向けたデータの公開設定、および、他のデバイスから公開されたデータのうちセーフティドライバ300が利用するデータの参照設定の両方を含み得る。さらに、設定対象のデータは、モーションセーフティ機能に関するものに限らず、セーフティドライバ300が提供する機能に関するアプリケーションに関するものを含み得る。 For convenience of explanation, the explanation is focused mainly on the data disclosure setting. It relates to the overall process data communication settings of the driver 300 . That is, the setting targets can include both public settings for data from the safety driver 300 to other devices and reference settings for data that the safety driver 300 uses among the data published from other devices. Furthermore, the data to be set is not limited to motion safety functions, and may include applications related to functions provided by the safety driver 300 .

図20は、本実施の形態に係るサポート装置500におけるプロセスデータ通信の設定操作の一例を説明するための図である。図20には、複数のセーフティドライバ300に対して、セーフティ機能に必要なプロセスデータ通信の設定を行う場合の操作例を示す。 FIG. 20 is a diagram for explaining an example of setting operation for process data communication in support device 500 according to the present embodiment. FIG. 20 shows an operation example of setting process data communication necessary for the safety function for a plurality of safety drivers 300 .

図20(A)に示すような、セーフティドライバ300のリストを示すリスト画面530において、対象となるセーフティドライバ300を選択532する。そして、図20(B)に示すような設定画面540において、ユーザは、セーフティドライバ300が有している状態情報のうち公開するものを選択する。 On a list screen 530 showing a list of safety drivers 300 as shown in FIG. 20A, the target safety driver 300 is selected 532 . Then, on the setting screen 540 as shown in FIG. 20B, the user selects the state information held by the safety driver 300 to be disclosed.

図20(B)に示す設定画面540は、標準コントローラ100またはセーフティコントローラ200からの指令(出力)として受け付けるデータを選択するためのラジオボタン542,544と、標準コントローラ100またはセーフティコントローラ200へ公開するデータを選択するためのラジオボタン546,548とを含む。 A setting screen 540 shown in FIG. 20B includes radio buttons 542 and 544 for selecting data to be received as commands (outputs) from the standard controller 100 or the safety controller 200, and data to be opened to the standard controller 100 or the safety controller 200. and radio buttons 546, 548 for selecting data.

ラジオボタン542,544,546,548の各々は、予め設定されたパラメータセットに対応付けられている。いずれかのラジオボタンが選択されると、当該選択中のラジオボタンに対応付けられているパラメータセットの内容を示す設定表示541が設定画面540内に提供される。 Each of radio buttons 542, 544, 546, 548 is associated with a preset parameter set. When one of the radio buttons is selected, a setting display 541 showing the content of the parameter set associated with the selected radio button is provided within the setting screen 540 .

なお、いずれのパラメータセットも対応付けられていないラジオボタンも用意されており、このラジオボタンが選択されることで、プロセスデータ通信が無効化される。 A radio button that is not associated with any parameter set is also prepared, and process data communication is disabled by selecting this radio button.

ユーザは、リスト画面530において、セーフティドライバ300の各々を選択した上で、対象のパラメータセットを順次設定することになる。 The user selects each of the safety drivers 300 on the list screen 530 and then sequentially sets the target parameter sets.

より具体的には、ユーザは、フィールドネットワーク2の構成情報を示すリスト画面530において、対象のセーフティドライバ300を選択し、設定画面540において、モーションセーフティ機能のプロセスデータ通信を有効化/無効化を選択する。有効化の場合には、ユーザは、いずれのパラメータセットであるかを選択する。ユーザは、以上のような選択および設定操作をセーフティドライバ300の台数分だけ繰り返す。 More specifically, the user selects the target safety driver 300 on the list screen 530 showing the configuration information of the field network 2, and enables/disables the process data communication of the motion safety function on the setting screen 540. select. For activation, the user selects which parameter set. The user repeats the selection and setting operations as described above for the number of safety drivers 300 .

このように、図20に示す設定画面において、ユーザは、セーフティドライバ300のプロセスデータ通信の設定画面上で、セーフティドライバ300毎に論理コネクション4を介して遣り取りされる情報をプロセスデータ通信の対象として追加または削除する。 In this way, on the setting screen shown in FIG. 20, the user can set the information exchanged via the logical connection 4 for each safety driver 300 as the object of process data communication on the setting screen for process data communication of the safety driver 300. Add or remove.

なお、セーフティドライバ300のデバイスプロファイル(ESI)がモジュールデバイスプロファイル(MDP:Module Device Profile)に対応している場合には、設定画面540において、セーフティ機能モジュールの有効化/無効化を選択するようにしてもよい。 If the device profile (ESI) of the safety driver 300 is compatible with the module device profile (MDP: Module Device Profile), enable/disable of the safety function module is selected on the setting screen 540. may

この場合には、ユーザは、フィールドネットワーク2の構成情報を示すリスト画面530において、対象のセーフティドライバ300を選択し、設定画面540において、セーフティドライバ300のモジュール構成を編集する。ユーザは、以上のような選択および設定操作をセーフティドライバ300の台数分だけ繰り返す。 In this case, the user selects the target safety driver 300 on the list screen 530 showing the configuration information of the field network 2 and edits the module configuration of the safety driver 300 on the setting screen 540 . The user repeats the selection and setting operations as described above for the number of safety drivers 300 .

図20に示すような設定手順において、セーフティドライバ300の機種毎に設定すべき項目あるいはパラメータセットが異なっており、ユーザは、機種に応じた設定を行わなければならない。また、フィールドネットワーク2に接続されているセーフティドライバ300の台数が多い場合には、設定に手間がかかる。このような場合には、以下のような設定機能を提供するようにしてもよい。 In the setting procedure as shown in FIG. 20, items or parameter sets to be set are different for each model of the safety driver 300, and the user has to perform settings according to the model. In addition, if the number of safety drivers 300 connected to the field network 2 is large, the setting is troublesome. In such a case, the following setting functions may be provided.

図21は、本実施の形態に係るサポート装置500におけるプロセスデータ通信の設定操作の別の一例を説明するための図である。図21には、複数のセーフティドライバ300に対して、セーフティ機能に必要なプロセスデータ通信の設定を行う場合の操作例を示す。 FIG. 21 is a diagram for explaining another example of the process data communication setting operation in support device 500 according to the present embodiment. FIG. 21 shows an operation example for setting process data communication necessary for the safety function for a plurality of safety drivers 300 .

図21(A)に示すような、セーフティドライバ300のリストを示すリスト画面530において、ユーザがメニュー画面の一項目として含まれる一括設定機能534を選択すると、フィールドネットワーク2に接続されているセーフティドライバ300の各々に対して、必要なプロセスデータ通信の一括削除(一括無効化)または一括設定(一括有効化)が行われる。 On a list screen 530 showing a list of safety drivers 300 as shown in FIG. 300, the necessary process data communications are bulk deleted (mass disabled) or set (mass enabled).

より具体的には、一括設定機能534の選択に応答して表示される設定ウィンドウ536は、一括設定(一括有効化)を示す「Add」および一括削除(一括無効化)を示す「Remove」を含む。ユーザが「Add」を選択することで一括設定が実行され、「Remove」を選択することで一括削除が実行される。 More specifically, the setting window 536 displayed in response to selection of the collective setting function 534 includes “Add” indicating collective setting (collective enablement) and “Remove” indicating collective deletion (collective disablement). include. When the user selects "Add", collective setting is executed, and when the user selects "Remove", collective deletion is executed.

一括設定においては、図21(B)の設定画面538に示されるように、セーフティドライバ300の機種が特定されるとともに、各機種に応じた設定がなされる。そして、各セーフティドライバ300に対して生成された設定の内容をユーザが提示される。この各機種に応じた設定は、共通設定テンプレート590(図19)を参照することで実現される。 In batch setting, as shown in the setting screen 538 of FIG. 21(B), the model of the safety driver 300 is identified and settings are made according to each model. Then, the contents of the settings generated for each safety driver 300 are presented to the user. The setting corresponding to each model is realized by referring to the common setting template 590 (FIG. 19).

このように、ユーザは、フィールドネットワーク2の構成情報を示すリスト画面530において、一括設定機能534を選択する。そして、設定ウィンドウ536上で、必要なプロセスデータ通信の一括設定(一括有効化)または一括削除(一括無効化)を選択する。最終的に、ユーザは、設定画面538で実行結果を確認する。 Thus, the user selects the batch setting function 534 on the list screen 530 showing the configuration information of the field network 2. FIG. Then, on the setting window 536, batch setting (batch enable) or batch deletion (batch disable) of the required process data communication is selected. Finally, the user confirms the execution result on the setting screen 538 .

以上のような処理により、ユーザから見れば、セーフティドライバ300のプロセスデータ通信の設定を一括で設定または削除できる。 From the user's point of view, the process data communication settings of the safety driver 300 can be collectively set or deleted by the above processing.

続いて、図21に示すような一括設定を実現するための共通設定テンプレート590の詳細について説明する。 Next, the details of the common setting template 590 for realizing batch setting as shown in FIG. 21 will be described.

図22は、本実施の形態に係るサポート装置500が保持する共通設定テンプレート590のデータ構造の一例を示す模式図である。図22を参照して、共通設定テンプレート590は、機種情報592に関連付けられた設定内容594を含む。機種情報592は、予め知られているセーフティドライバ300の機種のリストを含む。設定内容594には、各機種に応じた設定が割り当てられる。 FIG. 22 is a schematic diagram showing an example of the data structure of common setting template 590 held by support apparatus 500 according to the present embodiment. Referring to FIG. 22, common setting template 590 includes setting content 594 associated with model information 592 . The model information 592 includes a list of known models of the safety driver 300 . Settings corresponding to each model are assigned to the setting content 594 .

このような共通設定テンプレート590を参照することで、セーフティドライバ300の機種毎に適切な設定が行われることになる。 By referring to such a common setting template 590, appropriate settings can be made for each safety driver 300 model.

なお、共通設定テンプレート590は、サポート装置500が保持していてもよいし、サポート装置500以外の任意のサーバ装置が保持していてもよい。さらに、フィールドネットワーク2に接続されるセーフティドライバ300に格納されている情報などを収集して、サポート装置500または他の情報処理装置が動的に生成するようにしてもよい。 Note that the common setting template 590 may be held by the support device 500 or may be held by any server device other than the support device 500 . Furthermore, the information stored in the safety driver 300 connected to the field network 2 may be collected and dynamically generated by the support device 500 or another information processing device.

次に、プロセスデータ通信に関する一括設定を実現するための処理手順について説明する。 Next, a description will be given of a processing procedure for implementing batch settings relating to process data communication.

図23は、本実施の形態に係る制御システム1を構成するサポート装置500における一括設定を実現するための処理手順の一例を示すフローチャートである。図23に示す各ステップは、典型的には、サポート装置500のプロセッサ502がサポートプログラム5104を実行することで実現される。 FIG. 23 is a flow chart showing an example of a processing procedure for realizing collective setting in the support device 500 configuring the control system 1 according to the present embodiment. Each step shown in FIG. 23 is typically implemented by processor 502 of support device 500 executing support program 5104 .

図23を参照して、サポート装置500は、ユーザ操作に応答して、フィールドネットワーク2に接続されているセーフティドライバ300を探索して、対象となるセーフティドライバ300の一覧を取得する(ステップS100)。すなわち、サポート装置500は、フィールドネットワーク2に接続されているセーフティドライバ300を取得する取得機能を有している。 Referring to FIG. 23, support device 500 searches for safety drivers 300 connected to field network 2 in response to a user operation, and obtains a list of target safety drivers 300 (step S100). . That is, the support device 500 has an acquisition function of acquiring the safety driver 300 connected to the field network 2 .

この取得されたセーフティドライバ300の一覧は、リスト画面530(図20(A)参照)に反映される。 The obtained list of safety drivers 300 is reflected on the list screen 530 (see FIG. 20A).

続いて、サポート装置500は、特定のセーフティドライバ300が選択されたか否かを判断する(ステップS102)。特定のセーフティドライバ300が選択されると(ステップS102においてYES)、サポート装置500は、選択されているセーフティドライバ300に対する設定可能なパラメータセットのリストを表示するとともに(ステップS104)、パラメータセットの選択を受け付ける(ステップS106)(図20(B)参照)。さらに、サポート装置500は、選択されたパラメータセットを選択中のセーフティドライバ300に反映する(ステップS108)。そして、処理はステップS130へ進む。 Subsequently, the support device 500 determines whether or not a specific safety driver 300 has been selected (step S102). When a specific safety driver 300 is selected (YES in step S102), support device 500 displays a list of parameter sets that can be set for the selected safety driver 300 (step S104), and selects a parameter set. is accepted (step S106) (see FIG. 20B). Further, the support device 500 reflects the selected parameter set on the selected safety driver 300 (step S108). Then, the process proceeds to step S130.

このように、サポート装置500は、個別設定のユーザ操作に従って、特定の1つのセーフティドライバ300に対する設定を生成することもできる。 In this way, the support device 500 can also generate settings for one specific safety driver 300 in accordance with user operations for individual settings.

一方、サポート装置500は、特定のセーフティドライバ300が選択されなければ(ステップS102においてNO)、サポート装置500は、一括設定機能が選択されたか否かを判断する(ステップS112)(図21(A)参照)。一括設定機能が選択されると(ステップS112においてYES)、サポート装置500は、一括設定および一括削除のいずれが選択されたかを判断する(ステップS114)。 On the other hand, if a specific safety driver 300 is not selected (NO in step S102), support device 500 determines whether or not the collective setting function is selected (step S112) (see FIG. 21 (A )reference). When the batch setting function is selected (YES in step S112), support device 500 determines which of batch setting and batch deletion was selected (step S114).

一括設定が選択されると(ステップS114において「一括設定」)、サポート装置500は、一覧に含まれるセーフティドライバ300のうち1つを選択し(ステップS116)、共通設定テンプレート590を参照して、当該選択されているセーフティドライバ300に対応する設定内容を取得する(ステップS118)。そして、選択されているセーフティドライバ300に取得した設定内容を反映する(ステップS120)。このように、サポート装置500は、ユーザ操作に従って、フィールドネットワーク2に接続されている各セーフティドライバ300に対して、フィールドネットワーク2を介して共有するべきデータの設定を各セーフティドライバ300に応じて生成する。このとき、サポート装置500は、共通設定テンプレート590を参照することで、セーフティドライバ300の機種毎に予め定められた設定内容に従って、各セーフティドライバ300に対する設定を生成する。 When batch setting is selected ("batch setting" in step S114), the support device 500 selects one of the safety drivers 300 included in the list (step S116), refers to the common setting template 590, The setting contents corresponding to the selected safety driver 300 are acquired (step S118). Then, the acquired setting contents are reflected in the selected safety driver 300 (step S120). In this way, the support device 500 generates settings of data to be shared via the field network 2 for each safety driver 300 connected to the field network 2 according to the user's operation. do. At this time, the support device 500 refers to the common setting template 590 to generate settings for each safety driver 300 in accordance with setting details predetermined for each model of the safety driver 300 .

一覧に含まれるセーフティドライバ300のすべてに対して設定内容が反映されていなければ(ステップS122においてNO)、ステップS116以下の処理が繰り返される。一覧に含まれるセーフティドライバ300のすべてに対して設定内容が反映されていれば(ステップS122においてYES)、処理はステップS130へ進む。 If the settings have not been reflected for all of the safety drivers 300 included in the list (NO in step S122), the processing from step S116 onward is repeated. If the settings have been reflected in all of the safety drivers 300 included in the list (YES in step S122), the process proceeds to step S130.

一括削除が選択されると(ステップS114において「一括削除」)、サポート装置500は、一覧に含まれるセーフティドライバ300のうち1つを選択し(ステップS124)、選択されているセーフティドライバ300の設定内容をクリアする(ステップS126)。一覧に含まれるセーフティドライバ300のすべてに対して設定内容が反映されていなければ(ステップS128においてNO)、ステップS124以下の処理が繰り返される。一覧に含まれるセーフティドライバ300のすべてに対して設定内容がクリアされていれば(ステップS128においてYES)、処理はステップS130へ進む。 When collective deletion is selected ("collective deletion" in step S114), the support device 500 selects one of the safety drivers 300 included in the list (step S124), and sets the selected safety driver 300. The contents are cleared (step S126). If the settings have not been reflected for all of the safety drivers 300 included in the list (NO in step S128), the processing from step S124 onward is repeated. If the settings have been cleared for all safety drivers 300 included in the list (YES in step S128), the process proceeds to step S130.

このように、サポート装置500は、一括削除のユーザ操作に従って、各セーフティドライバ300に対する設定を削除する。 In this way, the support device 500 deletes the settings for each safety driver 300 according to the collective deletion user operation.

これに対して、一括設定機能が選択されなければ(ステップS112においてNO)、ステップS102以下の処理が繰り返される。 On the other hand, if the collective setting function is not selected (NO in step S112), the processing from step S102 onward is repeated.

ステップS130において、サポート装置500は、セーフティドライバ300への設定反映が指示されたか否かを判断する(ステップS130)。セーフティドライバ300への設定反映が指示されると(ステップS130においてYES)、サポート装置500は、設定された内容を対象のセーフティドライバ300へ転送する(ステップS132)。すなわち、サポート装置500は、フィールドネットワーク2に接続されている各セーフティドライバ300に対して対応する設定を反映する。そして、処理は終了する。 In step S130, the support device 500 determines whether or not an instruction to reflect the setting to the safety driver 300 has been issued (step S130). When it is instructed to reflect the setting to the safety driver 300 (YES in step S130), the support device 500 transfers the set content to the target safety driver 300 (step S132). That is, the support device 500 reflects the corresponding settings to each safety driver 300 connected to the field network 2 . Then the process ends.

一方、セーフティドライバ300への設定反映が指示されなければ(ステップS130においてNO)、ステップS102以下の処理が繰り返される。 On the other hand, if there is no instruction to reflect the settings in safety driver 300 (NO in step S130), the processes from step S102 onward are repeated.

<J.変形例>
上述の実施の形態においては、セーフティドライバ300のモーションセーフティ機能に関する情報を、プロセスデータ通信を利用して送受信する例について説明したが、これに限らず、任意の情報をプロセスデータ通信を利用して送受信する場合にも適用可能である。
<J. Variation>
In the above-described embodiment, an example of transmitting and receiving information about the motion safety function of the safety driver 300 using process data communication has been described. It can also be applied when transmitting and receiving.

すなわち、モーションセーフティ機能に限らず、セーフティドライバ300と任意のデバイスとの間で実行される任意のアプリケーションで利用されるデータを、セーフティドライバ300から公開、あるいは、任意のデバイスから受信するための設定を一括で設定あるいは削除できるようにしてもよい。例えば、セーフティドライバ300で実行されるサーボモータ400に対する位置制御、速度制御、トルク制御などに必要な情報の遣り取りを実現するための設定に利用してもよい。 In other words, the setting for publishing data used by any application executed between the safety driver 300 and any device, not limited to the motion safety function, from the safety driver 300 or for receiving data from any device can be collectively set or deleted. For example, it may be used for setting for realizing exchange of information necessary for position control, speed control, torque control, etc. for the servomotor 400 executed by the safety driver 300 .

さらに、セーフティドライバ300に限らず、他の任意のデバイスがプロセスデータ通信を利用する場合に、必要な情報を一括で設定し、あるいは、一括で削除するような処理に適用することもできる。 Furthermore, when not only the safety driver 300 but any other device uses process data communication, it can be applied to a process of collectively setting or collectively deleting necessary information.

<K.付記>
上述したような本実施の形態は、以下のような技術思想を含む。
[構成1]
制御システム(1)であって、
第1のコントローラ(100)と、
セーフティ機能を有するとともに、前記第1のコントローラからの第1の指令に従ってモータ(400)を駆動する1または複数のドライブ装置(300)と、
前記ドライブ装置に対してセーフティ機能の動作に係る第2の指令を送信する第2のコントローラ(200)と、
前記第1のコントローラ、前記ドライブ装置および前記第2のコントローラの間で、データを互いに共有するためのネットワーク(2)と、
サポート装置(500)とを備え、前記サポート装置は、ユーザ操作に従って、前記ネットワークに接続されている各ドライブ装置に対して、前記ネットワークを介して共有するべきデータの設定を各ドライブ装置に応じて生成する設定生成手段(10)を含み、
前記ネットワークに接続されている各ドライブ装置に対して対応する設定を反映する設定反映手段(20)を備える、制御システム。
[構成2]
前記設定生成手段(10)は、ドライブ装置の機種毎に予め定められた設定内容に従って、各ドライブ装置に対する前記ネットワークを介して共有するべきデータの設定を生成する(S118)、構成1に記載の制御システム。
[構成3]
前記設定生成手段は、別のユーザ操作に従って、各ドライブ装置に対する前記ネットワークを介して共有するべきデータの設定を削除する(S124,S126,S128)、構成1または2に記載の制御システム。
[構成4]
前記設定生成手段は、前記ドライブ装置から前記第1のコントローラへ、前記ドライブ装置が保持するデータを公開するように設定する、構成1~3のいずれか1項に記載の制御システム。
[構成5]
前記ドライブ装置は、前記第2の指令に従って前記セーフティ機能の状態を管理する状態管理部(378)を含み、
前記ドライブ装置から公開されるデータは、前記第2のコントローラからの前記第2の指令を反映する、構成4に記載の制御システム。
[構成6]
前記サポート装置は、前記ドライブ装置に対する前記ネットワークを介して共有するべきデータの設定(560)を参照して、前記状態管理部により管理される情報のうち公開対象の情報を特定するとともに、当該公開対象の情報を参照するための参照情報(556)に当該特定した情報の意味を関連付ける、構成5に記載の制御システム。
[構成7]
前記設定生成手段は、さらに別のユーザ操作に従って、特定の1つのドライブ装置に対する前記ネットワークを介して共有するべきデータの設定を生成する(S104,S106,S108)、構成1~6のいずれか1項に記載の制御システム。
[構成8]
前記サポート装置は、前記ネットワークに接続されているドライブ装置を取得する取得手段(S100)をさらに含む、構成1~7のいずれか1項に記載の制御システム。
[構成9]
前記設定生成手段は、各ドライブ装置に対して生成された前記ネットワークを介して共有するべきデータの設定の内容をユーザに提示する(538)、構成1~8のいずれか1項に記載の制御システム。
[構成10]
制御システム(1)に接続されるサポート装置(500)であって、
前記制御システムは、
第1のコントローラ(100)と、
セーフティ機能を有するとともに、前記第1のコントローラからの第1の指令に従ってモータ(400)を駆動する1または複数のドライブ装置(300)と、
前記ドライブ装置に対してセーフティ機能の動作に係る第2の指令を送信する第2のコントローラ(200)と、
前記第1のコントローラ、前記ドライブ装置および前記第2のコントローラの間で、データを互いに共有するためのネットワーク(2)とを備え、
前記サポート装置は、ユーザ操作に従って、前記ネットワークに接続されている各ドライブ装置に対して、前記ネットワークを介して共有するべきデータの設定を各ドライブ装置に応じて生成する設定生成手段(10)を含み、
前記第1のコントローラは、前記ネットワークに接続されている各ドライブ装置に対して対応する設定を反映する設定反映手段(20)を含む、サポート装置。
[構成11]
制御システム(1)に接続されるコンピュータ(500)で実行されるサポートプログラム(5104)であって、
前記制御システムは、
第1のコントローラ(100)と、
セーフティ機能を有するとともに、前記第1のコントローラからの第1の指令に従ってモータ(400)を駆動する1または複数のドライブ装置(300)と、
前記ドライブ装置に対してセーフティ機能の動作に係る第2の指令を送信する第2のコントローラ(200)と、
前記第1のコントローラ、前記ドライブ装置および前記第2のコントローラの間で、データを互いに共有するためのネットワーク(2)とを備え、
前記サポートプログラムは、前記コンピュータに
ユーザ操作に従って、前記ネットワークに接続されている各ドライブ装置に対して、前記ネットワークを介して共有するべきデータの設定を各ドライブ装置に応じて生成するステップ(S116,S118,S120,S122)と、
前記ネットワークに接続されている各ドライブ装置に対して対応する設定を反映するステップ(S130,S132)とを実行させる、サポートプログラム。
<K. Note>
The present embodiment as described above includes the following technical ideas.
[Configuration 1]
A control system (1),
a first controller (100);
one or more drive devices (300) having a safety function and driving a motor (400) according to a first command from the first controller;
a second controller (200) that transmits a second command relating to the operation of the safety function to the drive device;
a network (2) for mutually sharing data between the first controller, the drive device and the second controller;
and a support device (500), wherein the support device configures settings of data to be shared via the network for each drive device connected to the network in accordance with a user's operation. including setting generation means (10) for generating,
A control system comprising setting reflection means (20) for reflecting settings corresponding to each drive device connected to the network.
[Configuration 2]
The setting generating means (10) according to the setting contents predetermined for each model of the drive device, generates the setting of the data to be shared via the network for each drive device (S118), according to the configuration 1. control system.
[Configuration 3]
3. The control system according to configuration 1 or 2, wherein the setting generation means deletes the setting of data to be shared via the network for each drive according to another user operation (S124, S126, S128).
[Configuration 4]
4. The control system according to any one of configurations 1 to 3, wherein the setting generating means sets the data held by the drive device to be disclosed from the drive device to the first controller.
[Configuration 5]
The drive device includes a state management unit (378) that manages the state of the safety function according to the second command,
5. The control system of configuration 4, wherein data published from the drive device reflects the second command from the second controller.
[Configuration 6]
The support device refers to the setting (560) of the data to be shared via the network for the drive device, identifies information to be disclosed among the information managed by the state management unit, and specifies the information to be disclosed. 6. Control system according to configuration 5, wherein the meaning of the identified information is associated with the reference information (556) for referencing the information of interest.
[Configuration 7]
The setting generation means generates settings of data to be shared via the network for one specific drive device according to another user operation (S104, S106, S108), any one of configurations 1 to 6 A control system as described in paragraph 1 above.
[Configuration 8]
The control system according to any one of configurations 1 to 7, wherein the support device further includes acquisition means (S100) for acquiring drive devices connected to the network.
[Configuration 9]
The control according to any one of configurations 1 to 8, wherein the setting generating means presents to the user the setting contents of the data to be shared via the network generated for each drive device (538). system.
[Configuration 10]
A support device (500) connected to a control system (1), comprising:
The control system is
a first controller (100);
one or more drive devices (300) having a safety function and driving a motor (400) according to a first command from the first controller;
a second controller (200) that transmits a second command relating to the operation of the safety function to the drive device;
a network (2) for sharing data between the first controller, the drive device and the second controller;
The support device includes setting generation means (10) for generating settings of data to be shared via the network for each drive device connected to the network in accordance with a user's operation. including
A support device, wherein the first controller includes setting reflection means (20) for reflecting settings corresponding to each drive device connected to the network.
[Configuration 11]
A support program (5104) running on a computer (500) connected to a control system (1),
The control system is
a first controller (100);
one or more drive devices (300) having a safety function and driving a motor (400) according to a first command from the first controller;
a second controller (200) that transmits a second command relating to the operation of the safety function to the drive device;
a network (2) for sharing data between the first controller, the drive device and the second controller;
The support program causes the computer to generate settings for data to be shared via the network for each drive device connected to the network according to user operations (S116, S118, S120, S122) and
A support program for executing steps (S130, S132) of reflecting corresponding settings to each drive device connected to the network.

<L.利点>
本実施の形態に係る制御システム1によれば、セーフティドライバ300が他のユニットとの間でデータを共有するための設定を一括で行うことができるので、複数のセーフティドライバ300を含む場合であっても、制御システム1の立ち上げを効率化できる。
<L. Advantage>
According to the control system 1 according to the present embodiment, settings for sharing data between the safety driver 300 and other units can be collectively performed. Even so, the startup of the control system 1 can be made efficient.

今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 It should be considered that the embodiments disclosed this time are illustrative in all respects and not restrictive. The scope of the present invention is indicated by the scope of the claims rather than the above description, and is intended to include all modifications within the scope and meaning equivalent to the scope of the claims.

1 制御システム、2 フィールドネットワーク、4 論理コネクション、10 設定生成モジュール、20 設定反映モジュール、100 標準コントローラ、102,202,312,314,502 プロセッサ、104,204,316,504 メインメモリ、106 上位ネットワークコントローラ、108,208,302 フィールドネットワークコントローラ、110,210,320,510 ストレージ、112 メモリカードインターフェイス、114 メモリカード、116 ローカルバスコントローラ、118,218,518 プロセッサバス、120,220,520 USBコントローラ、150 標準制御、170,270,370 プロセスデータ通信レイヤ、172,272 管理モジュール、174,274,374 プロセスデータ、200 セーフティコントローラ、216 セーフティローカルバスコントローラ、230 セーフティIOユニット、240 セーフティデバイス、250 セーフティ機能、276,376 論理コネクションレイヤ、278 セーフティ機能状態管理エンジン、300 セーフティドライバ、310 制御部、330 ドライブ回路、332 フィードバック受信回路、350 サーボ制御、352 サーボ制御実行エンジン、360 モーションセーフティ機能、362 モーションセーフティ機能実行エンジン、378 モーションセーフティ機能状態管理エンジン、380 データミラーエンジン、382 モーションセーフティ制御用オブジェクト、384 ミラーオブジェクト設定、390 パラメータセット、400 サーボモータ、402 三相交流モータ、404 エンコーダ、500 サポート装置、506 入力部、508 出力部、512 光学ドライブ、514 記録媒体、530 リスト画面、532 選択、534 一括設定機能、536 設定ウィンドウ、538,540,570 設定画面、541 設定表示、542,544,546,548 ラジオボタン、550 標準コントローラ変数設定テーブル、552,562 設定欄、556,584 変数、560 コントロールオブジェクト・ステータスオブジェクト設定テーブル、566 制御オブジェクト、572 対象情報表示欄、574 ミラーオブジェクト表示欄、576 属性設定欄、578 データ型設定欄、580 変数名設定欄、582 参照命令、590 共通設定テンプレート、592 機種情報、594 設定内容、600 通信フレーム、610,611,612,613,614,615,620,621,622,623,624,6121,6122,6131,6132,6141,6142,6151,6152 データ領域、630 セーフティ通信フレーム、1102,2102 システムプログラム、1104 標準制御プログラム、1105 コード、1106,2106,3206 設定情報、2104 セーフティプログラム、3202 サーボ制御プログラム、3204 モーションセーフティプログラム、3781,3782,3783,3784,3785 制御用オブジェクト、3781A,3781B,3782A,3782B,3783A,3783B,3784A,3784B,3785A,3785B 情報、3821 コントロールオブジェクト、3822 ステータスオブジェクト、5102 OS、5104 サポートプログラム、5106 プロジェクトデータ、5108 標準制御ソースプログラム、5110 標準コントローラ設定情報、5112 セーフティソースプログラム、5114 セーフティコントローラ設定情報、5116 セーフティドライバ設定情報。 1 control system, 2 field network, 4 logical connection, 10 setting generation module, 20 setting reflection module, 100 standard controller, 102, 202, 312, 314, 502 processor, 104, 204, 316, 504 main memory, 106 host network controller, 108, 208, 302 field network controller, 110, 210, 320, 510 storage, 112 memory card interface, 114 memory card, 116 local bus controller, 118, 218, 518 processor bus, 120, 220, 520 USB controller, 150 standard control, 170,270,370 process data communication layer, 172,272 management module, 174,274,374 process data, 200 safety controller, 216 safety local bus controller, 230 safety IO unit, 240 safety device, 250 safety function , 276, 376 logical connection layer, 278 safety function state management engine, 300 safety driver, 310 control unit, 330 drive circuit, 332 feedback receiving circuit, 350 servo control, 352 servo control execution engine, 360 motion safety function, 362 motion safety function execution engine, 378 motion safety function state management engine, 380 data mirror engine, 382 motion safety control object, 384 mirror object setting, 390 parameter set, 400 servo motor, 402 three-phase AC motor, 404 encoder, 500 support device, 506 input unit, 508 output unit, 512 optical drive, 514 recording medium, 530 list screen, 532 selection, 534 collective setting function, 536 setting window, 538, 540, 570 setting screen, 541 setting display, 542, 544, 546, 548 radio button, 550 standard controller variable setting table, 552, 562 setting column, 556, 584 variable, 560 control object/status object setting table, 566 control object 572 Target information display column 574 Mirror object display column 576 Attribute setting column 578 Data type setting column 580 Variable name setting column 582 Reference command 590 Common setting template 592 Model information 594 Setting content 600 Communication frame , 610, 611, 612, 613, 614, 615, 620, 621, 622, 623, 624, 6121, 6122, 6131, 6132, 6141, 6142, 6151, 6152 data area, 630 safety communication frame, 1102, 2102 system Program 1104 Standard control program 1105 Code 1106, 2106, 3206 Setting information 2104 Safety program 3202 Servo control program 3204 Motion safety program 3781, 3782, 3783, 3784, 3785 Object for control 3781A, 3781B, 3782A , 3782B, 3783A, 3783B, 3784A, 3784B, 3785A, 3785B information, 3821 control object, 3822 status object, 5102 OS, 5104 support program, 5106 project data, 5108 standard control source program, 5110 standard controller setting information, 5112 safety source Program, 5114 safety controller setting information, 5116 safety driver setting information.

Claims (11)

制御システムであって、
第1のコントローラと、
セーフティ機能を有するとともに、前記第1のコントローラからの第1の指令に従ってモータを駆動する1または複数のドライブ装置と、
前記ドライブ装置に対してセーフティ機能の動作に係る第2の指令を送信する第2のコントローラと、
前記第1のコントローラ、前記ドライブ装置および前記第2のコントローラの間を通信フレームがサイクリックに一巡することで、データを互いに共有するためのネットワークと、
サポート装置とを備え、前記サポート装置は、ユーザ操作に従って、前記ネットワークに接続されている各ドライブ装置に対して、前記ネットワークを介して共有するべきデータの設定を各ドライブ装置に応じて生成する設定生成手段を含み、
前記ネットワークに接続されている各ドライブ装置に対して対応する設定を反映する設定反映手段を備え
各ドライブ装置は、前記反映された設定に従って、前記通信フレームを介して送信するデータの更新、および、前記通信フレームを介して送信されたデータの受信を含む、データを共有するための処理を実行する、制御システム。
A control system,
a first controller;
one or more drive devices having a safety function and driving a motor according to a first command from the first controller;
a second controller that transmits a second command related to the operation of the safety function to the drive device;
a network for sharing data with each other by cyclically circulating communication frames among the first controller, the drive device, and the second controller;
a support device, wherein the support device generates settings for data to be shared via the network for each drive device connected to the network according to a user's operation. including generating means;
setting reflection means for reflecting settings corresponding to each drive device connected to the network ;
Each drive device executes processing for sharing data, including updating data to be transmitted via the communication frame and receiving data transmitted via the communication frame, according to the reflected settings. control system.
前記設定生成手段は、ドライブ装置の機種毎に予め定められた設定内容に従って、各ドライブ装置に対する前記ネットワークを介して共有するべきデータの設定を生成する、請求項1に記載の制御システム。 2. The control system according to claim 1, wherein said setting generation means generates settings of data to be shared via said network for each drive device according to setting contents predetermined for each model of drive device. 前記設定生成手段は、別のユーザ操作に従って、各ドライブ装置に対する前記ネットワークを介して共有するべきデータの設定を削除する、請求項1または2に記載の制御システム。 3. The control system according to claim 1, wherein said setting generating means deletes settings of data to be shared via said network for each drive according to another user's operation. 前記設定生成手段は、前記ドライブ装置から前記第1のコントローラへ、前記ドライブ装置が保持するデータを公開するように設定する、請求項1~3のいずれか1項に記載の制御システム。 4. The control system according to any one of claims 1 to 3, wherein said setting generating means sets data held by said drive device to be disclosed from said drive device to said first controller. 前記ドライブ装置は、前記第2の指令に従って前記セーフティ機能の状態を管理する状態管理部を含み、
前記ドライブ装置から公開されるデータは、前記第2のコントローラからの前記第2の指令を反映する、請求項4に記載の制御システム。
the drive device includes a state management unit that manages the state of the safety function according to the second command;
5. The control system of claim 4, wherein data published from said drive device reflects said second command from said second controller.
前記サポート装置は、前記ドライブ装置に対する前記ネットワークを介して共有するべきデータの設定を参照して、前記状態管理部により管理される情報のうち公開対象の情報を特定するとともに、当該公開対象の情報を参照するための参照情報に当該特定した情報の意味を関連付ける、請求項5に記載の制御システム。 The support device refers to settings of data to be shared via the network for the drive device, identifies information to be disclosed among the information managed by the state management unit, and specifies the information to be disclosed. 6. The control system of claim 5, wherein the meaning of the identified information is associated with the reference information for referring to the. 前記設定生成手段は、さらに別のユーザ操作に従って、特定の1つのドライブ装置に対する前記ネットワークを介して共有するべきデータの設定を生成する、請求項1~6のいずれか1項に記載の制御システム。 7. The control system according to any one of claims 1 to 6, wherein said setting generation means generates settings of data to be shared via said network for one specific drive device according to another user operation. . 前記サポート装置は、前記ネットワークに接続されているドライブ装置を取得する取得手段をさらに含む、請求項1~7のいずれか1項に記載の制御システム。 8. The control system according to any one of claims 1 to 7, wherein said support device further includes acquisition means for acquiring drive devices connected to said network. 前記設定生成手段は、各ドライブ装置に対して生成された前記ネットワークを介して共有するべきデータの設定の内容をユーザに提示する、請求項1~8のいずれか1項に記載の制御システム。 9. The control system according to any one of claims 1 to 8, wherein said setting generating means presents to the user the setting contents of data to be shared via said network generated for each drive device. 制御システムに接続されるサポート装置であって、
前記制御システムは、
第1のコントローラと、
セーフティ機能を有するとともに、前記第1のコントローラからの第1の指令に従ってモータを駆動する1または複数のドライブ装置と、
前記ドライブ装置に対してセーフティ機能の動作に係る第2の指令を送信する第2のコントローラと、
前記第1のコントローラ、前記ドライブ装置および前記第2のコントローラの間を通信フレームがサイクリックに一巡することで、データを互いに共有するためのネットワークとを備え、
前記サポート装置は、ユーザ操作に従って、前記ネットワークに接続されている各ドライブ装置に対して、前記ネットワークを介して共有するべきデータの設定を各ドライブ装置に応じて生成する設定生成手段を含み、
前記第1のコントローラは、前記ネットワークに接続されている各ドライブ装置に対して対応する設定を反映する設定反映手段を含み、
各ドライブ装置は、前記反映された設定に従って、前記通信フレームを介して送信するデータの更新、および、前記通信フレームを介して送信されたデータの受信を含む、データを共有するための処理を実行する、サポート装置。
A support device connected to a control system, comprising:
The control system is
a first controller;
one or more drive devices having a safety function and driving a motor according to a first command from the first controller;
a second controller that transmits a second command related to the operation of the safety function to the drive device;
a network for sharing data with each other by cyclically circulating communication frames among the first controller, the drive device, and the second controller;
The support device includes setting generation means for generating settings of data to be shared via the network for each drive device connected to the network in accordance with a user's operation,
the first controller includes setting reflection means for reflecting settings corresponding to each drive device connected to the network;
Each drive device executes processing for sharing data, including updating data to be transmitted via the communication frame and receiving data transmitted via the communication frame, according to the reflected settings. support device.
制御システムに接続されるコンピュータで実行されるサポートプログラムであって、
前記制御システムは、
第1のコントローラと、
セーフティ機能を有するとともに、前記第1のコントローラからの第1の指令に従ってモータを駆動する1または複数のドライブ装置と、
前記ドライブ装置に対してセーフティ機能の動作に係る第2の指令を送信する第2のコントローラと、
前記第1のコントローラ、前記ドライブ装置および前記第2のコントローラの間を通信フレームがサイクリックに一巡することで、データを互いに共有するためのネットワークとを備え、
前記サポートプログラムは、前記コンピュータに
ユーザ操作に従って、前記ネットワークに接続されている各ドライブ装置に対して、前記ネットワークを介して共有するべきデータの設定を各ドライブ装置に応じて生成するステップと、
前記ネットワークに接続されている各ドライブ装置に対して対応する設定を反映するステップとを実行させ
各ドライブ装置は、前記反映された設定に従って、前記通信フレームを介して送信するデータの更新、および、前記通信フレームを介して送信されたデータの受信を含む、データを共有するための処理を実行する、サポートプログラム。
A support program running on a computer connected to the control system, comprising:
The control system is
a first controller;
one or more drive devices having a safety function and driving a motor according to a first command from the first controller;
a second controller that transmits a second command related to the operation of the safety function to the drive device;
a network for sharing data with each other by cyclically circulating communication frames among the first controller, the drive device, and the second controller;
the support program causing the computer to generate settings for data to be shared via the network for each drive device connected to the network according to a user's operation;
a step of reflecting the corresponding settings for each drive device connected to the network ;
Each drive device executes processing for sharing data, including updating data to be transmitted via the communication frame and receiving data transmitted via the communication frame, according to the reflected settings. support program.
JP2018185438A 2018-09-28 2018-09-28 Control system, support equipment, support program Active JP7200580B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018185438A JP7200580B2 (en) 2018-09-28 2018-09-28 Control system, support equipment, support program
PCT/JP2019/037213 WO2020066986A1 (en) 2018-09-28 2019-09-24 Control system, support device, and support program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018185438A JP7200580B2 (en) 2018-09-28 2018-09-28 Control system, support equipment, support program

Publications (2)

Publication Number Publication Date
JP2020057065A JP2020057065A (en) 2020-04-09
JP7200580B2 true JP7200580B2 (en) 2023-01-10

Family

ID=69952441

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018185438A Active JP7200580B2 (en) 2018-09-28 2018-09-28 Control system, support equipment, support program

Country Status (2)

Country Link
JP (1) JP7200580B2 (en)
WO (1) WO2020066986A1 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001092502A (en) 1999-09-17 2001-04-06 Ckd Corp Parameter setting system, parameter setting device and driver
JP2006164143A (en) 2004-12-10 2006-06-22 Yokogawa Electric Corp Plant control system
JP2007193843A (en) 2001-05-31 2007-08-02 Omron Corp Safety controller and controller system, connection method of controller and control method of the controller system
JP2012194954A (en) 2011-05-24 2012-10-11 Omron Corp Cpu unit of plc, system program for plc, and recording medium storing system program for plc
JP2016045712A (en) 2014-08-22 2016-04-04 株式会社日立産機システム Programmable logic controller
JP2017163759A (en) 2016-03-10 2017-09-14 オムロン株式会社 Motor control device, control method, information processing program, and recording medium
WO2018155426A1 (en) 2017-02-21 2018-08-30 オムロン株式会社 Servo system
JP2018147258A (en) 2017-03-06 2018-09-20 オムロン株式会社 Controller and control method

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001092502A (en) 1999-09-17 2001-04-06 Ckd Corp Parameter setting system, parameter setting device and driver
JP2007193843A (en) 2001-05-31 2007-08-02 Omron Corp Safety controller and controller system, connection method of controller and control method of the controller system
JP2006164143A (en) 2004-12-10 2006-06-22 Yokogawa Electric Corp Plant control system
JP2012194954A (en) 2011-05-24 2012-10-11 Omron Corp Cpu unit of plc, system program for plc, and recording medium storing system program for plc
JP2016045712A (en) 2014-08-22 2016-04-04 株式会社日立産機システム Programmable logic controller
JP2017163759A (en) 2016-03-10 2017-09-14 オムロン株式会社 Motor control device, control method, information processing program, and recording medium
WO2018155426A1 (en) 2017-02-21 2018-08-30 オムロン株式会社 Servo system
JP2018147258A (en) 2017-03-06 2018-09-20 オムロン株式会社 Controller and control method

Also Published As

Publication number Publication date
WO2020066986A1 (en) 2020-04-02
JP2020057065A (en) 2020-04-09

Similar Documents

Publication Publication Date Title
JP4807475B1 (en) Arithmetic unit, output control method, and program
JP6299064B2 (en) Control device, control method, and program
JP7392370B2 (en) Control systems, support equipment and support programs
WO2013145940A1 (en) Information processing device, information processing method, and program
JP7024677B2 (en) Control system, support device, support program
JP7200580B2 (en) Control system, support equipment, support program
JP7327225B2 (en) Robot control system and control method
JP7087951B2 (en) Control system, control method, drive device
JP7115195B2 (en) Control system, support equipment, support program
JP7087952B2 (en) Control system, support device, support program
JP7040389B2 (en) Control systems, support devices, and support programs
WO2020067287A1 (en) Control system, support device, and support program
CN112567299B (en) Control system, support device, and storage medium
JP7063222B2 (en) Control systems, support devices and programs
JP7172397B2 (en) Control systems, support equipment and programs
JP7240282B2 (en) Industrial control device and activation method
JP2022139149A (en) Control system and control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220111

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220628

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220817

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221205

R150 Certificate of patent or registration of utility model

Ref document number: 7200580

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150