JP7332442B2 - safety controller - Google Patents

safety controller Download PDF

Info

Publication number
JP7332442B2
JP7332442B2 JP2019209182A JP2019209182A JP7332442B2 JP 7332442 B2 JP7332442 B2 JP 7332442B2 JP 2019209182 A JP2019209182 A JP 2019209182A JP 2019209182 A JP2019209182 A JP 2019209182A JP 7332442 B2 JP7332442 B2 JP 7332442B2
Authority
JP
Japan
Prior art keywords
safety
output
input
main module
period
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
JP2019209182A
Other languages
Japanese (ja)
Other versions
JP2021082027A (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.)
Keyence Corp
Original Assignee
Keyence 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 Keyence Corp filed Critical Keyence Corp
Priority to JP2019209182A priority Critical patent/JP7332442B2/en
Publication of JP2021082027A publication Critical patent/JP2021082027A/en
Application granted granted Critical
Publication of JP7332442B2 publication Critical patent/JP7332442B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Safety Devices In Control Systems (AREA)

Description

本発明は安全コントローラに関する。 The present invention relates to safety controllers.

製品(ワーク)を生産する製品工場においては多数の機械が稼働している。安全システムは、機械から人間の安全を確保するために欠かせないシステムである(特許文献1)。 A large number of machines are in operation in a product factory that produces products (works). A safety system is a system indispensable for ensuring the safety of humans from machines (Patent Document 1).

特開2014-16930号公報JP 2014-16930 A

安全システムは安全であればON信号を出力し、安全でない可能性があればOFF信号を出力する。ここで、危険源となる機械が安全柵で囲まれており、機械に人間が近づくには安全柵に設けられた安全ドアなどを開けなければならないケースを一例としてあげる。安全システムはドアスイッチにより安全ドアが開いたことを検知すると、機械にOFF信号を出力することで、機械を停止させる。ここで、安全ドアが開いてドアスイッチがOFFになってから、機械が停止するまでの時間は応答時間と呼ばれる。この応答時間に基づいて、機械から安全ドアまでの距離(安全距離)が決定される。つまり、応答時間に応じて安全柵のサイズが決定される。 The safety system outputs an ON signal if it is safe, and outputs an OFF signal if there is a possibility that it is not safe. Here, as an example, a machine that is a source of danger is surrounded by a safety fence, and a person must open a safety door or the like provided in the safety fence in order to approach the machine. When the safety system detects that the safety door is opened by the door switch, it outputs an OFF signal to the machine to stop the machine. Here, the time from when the safety door is opened and the door switch is turned off to when the machine stops is called the response time. Based on this response time, the distance from the machine to the safety door (safety distance) is determined. That is, the size of the safety fence is determined according to the response time.

安全システムの安全コントローラは、ユーザによって設定される安全プログラムをスキャンサイクルで繰り返し実行する実行エンジンを有し、一または複数の安全入力機器からの安全入力信号を、安全プログラムにしたがって安全出力信号(ON信号やOFF信号)を生成し、出力する制御装置である。スキャンサイクルは、安全入力信号を取り込むタイミングである入力リフレッシュ期間と、入力リフレッシュ期間に取り込まれた安全入力信号の入力値と安全プログラムにしたがって出力値を算出するプログラム実行期間と、プログラム実行期間に算出された出力値に従って各出力端子から安全出力信号を出力する出力リフレッシュ期間とを有するもので、安全コントローラの応答時間に影響を与える要素の一つである。一般に、安全コントローラにおいてスキャンサイクルが短いほど性能が高いとされており、その結果、一般に、安全コントローラの応答時間は、安全プログラムの処理容量やユニット接続台数に起因して変わるものとなっている。 The safety controller of the safety system has an execution engine that repeatedly executes a safety program set by the user in scan cycles, and converts safety input signals from one or more safety input devices into safety output signals (ON signal and OFF signal) and outputs it. The scan cycle is calculated during the input refresh period, which is the timing at which the safety input signal is captured, the program execution period, during which the output value is calculated according to the input value of the safety input signal captured during the input refresh period and the safety program, and the program execution period. and an output refresh period for outputting a safety output signal from each output terminal according to the determined output value, which is one of the factors that affect the response time of the safety controller. In general, the shorter the scan cycle of a safety controller, the higher its performance. As a result, the response time of a safety controller generally varies depending on the safety program processing capacity and the number of connected units.

しかしながら、工程の変更やアセスメントの結果、安全入力機器やユニットを増設したり、安全プログラムを増加したりしたすることで、応答時間が増加して、安全距離が延びることから、安全入力装置の設置位置の見直しや、安全柵の設置位置の見直しが必要となるおそれがあった。 However, as a result of process changes and assessments, safety input devices and units are added, and safety programs are increased, which increases the response time and extends the safety distance. There was a risk that it would be necessary to review the position and review the installation position of the safety fence.

そこで、本発明は、応答時間が高速かつ一定な安全コントローラを提供することを目的とする。 SUMMARY OF THE INVENTION Accordingly, an object of the present invention is to provide a safety controller with a fast and constant response time.

本発明は、たとえば、
安全プログラムを実行するメインモジュールと、当該メインモジュールに接続された拡張モジュールとを有した安全コントローラであって、
前記メインモジュールは、
一定の長さの繰り返し周期である期間スロットごとに、前記拡張モジュールから入力値を受信する受信手段と、
前記期間スロットごとに、前記安全プログラムを繰り返し実行する実行エンジンであって、前記入力値が受信されたi番目の期間スロットの次のi+1番目の期間スロットにおいて、当該入力値を用いて前記安全プログラムに従って出力値を演算する実行エンジンと、
前記出力値に対応する安全出力信号を安全出力機器に出力する出力手段と、
前記受信手段および前記実行エンジンを監視する監視手段と、を有し、
前記監視手段は、前記i番目の期間スロットにおいて前記受信手段による前記入力値の受信が完了しなかった場合、または、前記i+1番目の期間スロットにおいて前記実行エンジンによる前記出力値の演算が完了しなかった場合に、前記安全出力機器の動作が停止する前記安全出力信号を強制的に設定することを特徴とする安全コントローラを提供する。
The present invention, for example,
A safety controller having a main module that executes a safety program and an expansion module connected to the main module,
The main module is
receiving means for receiving an input value from the expansion module for each period slot, which is a repetition period of a fixed length;
an execution engine that iteratively executes the safety program for each of the period slots, using the safety program in the i+1 period slot following the i period slot in which the input value was received; an execution engine that computes output values according to
output means for outputting a safety output signal corresponding to the output value to a safety output device;
monitoring means for monitoring the receiving means and the execution engine;
The monitoring means determines whether or not the reception of the input value by the receiving means has been completed in the i-th period slot, or the calculation of the output value by the execution engine has not been completed in the i+1-th period slot. A safety controller forcibly sets the safety output signal to stop the operation of the safety output device when the

本発明によれば、入力値を受信するための期間と、安全プログラムを実行する期間とを順次並列に実行する期間スロットを設け、応答時間を高速かつ一定とすることが可能となる。 According to the present invention, it is possible to provide a period slot in which a period for receiving an input value and a period for executing a safety program are sequentially executed in parallel, thereby making the response time fast and constant.

安全コントローラを説明する図Diagram explaining the safety controller メインモジュールと拡張モジュールを説明する図Diagram explaining the main module and extension modules 信号経路を説明する図Diagram explaining the signal path 期間スロットを説明する図Diagram explaining duration slots MCUの機能を説明する図Diagram explaining MCU functions MCUの機能を説明する図Diagram explaining MCU functions 監視処理を説明するフローチャートFlowchart explaining the monitoring process ファンクションブロックを説明する図Diagram explaining function blocks プログラムの作成処理を示すフローチャートFlowchart showing program creation processing 通信エラーに関する処理を示すフローチャートFlowchart showing processing related to communication errors 拡張モジュールやリモートI/Oユニットの接続台数と応答時間との関係を説明する図Diagram for explaining the relationship between the number of connected extension modules and remote I/O units and the response time 送信手順を説明するシーケンス図Sequence diagram explaining the transmission procedure メッセージフォーマットを説明する図Diagram explaining the message format

以下、添付図面を参照して実施形態が詳しく説明される。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態で説明されている特徴の組み合わせの全てが発明に必須のものとは限らない。実施形態で説明されている複数の特徴のうち二つ以上の特徴が任意に組み合わされてもよい。また、同一または同様の構成には同一の参照番号が付され、重複した説明は省略される。 Embodiments are described in detail below with reference to the accompanying drawings. It should be noted that the following embodiments do not limit the invention according to the claims, and not all combinations of features described in the embodiments are essential to the invention. Two or more of the features described in the embodiments may be combined arbitrarily. Identical or similar configurations are given the same reference numerals, and duplicate descriptions are omitted.

(安全コントローラ)
図1はシステムの全体を示している。この例で、安全コントローラ1は、メインモジュール3、拡張モジュール4a、4bを有している。メインモジュール3は、ユーザが安全プログラムを作成することを支援する作成支援装置として機能するPC2から転送されてきた安全プログラムを実行する。メインモジュール3は、表示装置5a、操作部6a、通信コネクタ7a、IOコネクタ10aなどを有している。PC2は、表示装置5b、および操作部6bを有している。作成支援装置として機能するPC2は、ユーザ入力に従って、安全プログラムに加え、各モジュール同士の接続関係を示すモジュール構成情報や各モジュールの各端子に接続される機器の割当情報を設定し、メインモジュール3にモジュール構成情報や機器の割当情報設定情報として送信する。メインモジュール3に通信コネクタ7aは、USBや有線LANのためのコネクタであってもよい。PC2からの通信ケーブルは通信コネクタ7aに接続されている。有線LANは産業用のイーサネット(登録商標)であってもよい。LANはローカルエリアネットワークの略称である。IOコネクタ10aの入力端子には、緊急停止スイッチなどの安全入力機器11aやライトカーテンなどの安全入力機器11bが接続される。安全入力機器11a、11bは、たとえば、危険源となる機械を囲むように設置された安全柵の出入り口に設置される。このとき、安全入力機器11bが、不意に安全柵内に侵入しようとする人間を検知すると、安全コントローラ1は、機械を停止させるためにOFF信号を機械に出力する。IOコネクタ10aの出力端子には、ロボットアームなどの機械の動力源を遮断するための制御信号が入力される。動力源の遮断は、一般的にはコンタクタと呼ばれる電力遮断装置が用いられる。メインモジュール3などの安全コントローラがコンタクタに対して制御信号を出力することで、機械に電力を供給するか、遮断するかを制御する。メインモジュール3は、安全入力機器11aから入力される入力値に対して安全プログラムにしたがった演算処理を実行して出力値を求め動力源12は出力する。たとえば、安全入力機器11aの一種である緊急停止スイッチが押し下げられると、メインモジュール3は、出力値をON(動力源が稼働できる稼働状能)からOFF(動力源が稼働できない停止状態)に変更する。これにより、動力源12が停止する。なお、本明細書についてOFFとは、危険源を停止させるか、または、危険源の危険性を低減させる(例:ロボットの動作速度を遅くするなど)ことなどにより、危険源を安全状態にすることを意味し、OFF信号は、OFFを示す信号を意味する。メインモジュール3に設けられたIOコネクタ10aだけではすべての安全入力機器および動力源を接続できない場合がる。このような場合には、拡張モジュール4a、4bがメインモジュール3に接続される。拡張モジュール4a、4bはそれぞれIOコネクタ10b、10cを有しており、安全入力機器11bおよび動力源12などを接続できる。拡張モジュール4a、4bとメインモジュール3は内部バスを介して相互に通信することで、入力信号(入力値)および出力信号(出力値)を受け渡す。つまり、メインモジュール3は、自己に接続された安全入力機器11aおよび拡張モジュール4a、4bに接続された安全入力機器11aから取得した入力信号(入力値)に安全プログラムを適用することで出力信号(出力値)を生成する。さらに、メインモジュール3は、安全プログラムに従って生成した出力信号を、自己に接続された動力源12に出力したり、拡張モジュール4a、4bに接続された動力源12に出力したりする。リモートI/Oユニット8は、リモートバスを介してメインモジュール3と接続されている。リモートI/Oユニット8はメインモジュール3と相互に通信することで、リモートI/Oユニット8に接続された安全入力機器11dの入力信号をメインモジュール3に送信したり、リモートI/Oユニット8に接続された動力源12に信号を出力したりする。
(safety controller)
FIG. 1 shows the overall system. In this example, the safety controller 1 has a main module 3 and expansion modules 4a, 4b. The main module 3 executes a safety program transferred from the PC 2 that functions as a creation support device that assists the user in creating a safety program. The main module 3 has a display device 5a, an operation section 6a, a communication connector 7a, an IO connector 10a, and the like. The PC 2 has a display device 5b and an operation section 6b. The PC 2, which functions as a creation support device, sets module configuration information indicating connection relationships between modules and allocation information of devices connected to each terminal of each module, in addition to the safety program, according to user input. as module configuration information and device allocation information setting information. The communication connector 7a of the main module 3 may be a connector for USB or wired LAN. A communication cable from the PC 2 is connected to the communication connector 7a. The wired LAN may be industrial Ethernet. LAN is an abbreviation for local area network. A safety input device 11a such as an emergency stop switch and a safety input device 11b such as a light curtain are connected to the input terminals of the IO connector 10a. The safety input devices 11a and 11b are installed, for example, at the entrance of a safety fence installed so as to surround a machine that becomes a hazard. At this time, when the safety input device 11b detects a person trying to enter the safety fence unexpectedly, the safety controller 1 outputs an OFF signal to the machine to stop the machine. A control signal for shutting off the power source of a machine such as a robot arm is input to the output terminal of the IO connector 10a. A power cutoff device called a contactor is generally used to cut off the power source. A safety controller such as the main module 3 outputs a control signal to the contactor to control whether to supply or cut off power to the machine. The main module 3 performs arithmetic processing according to the safety program on the input value input from the safety input device 11a to obtain an output value, which the power source 12 outputs. For example, when an emergency stop switch, which is a kind of safety input device 11a, is pushed down, the main module 3 changes the output value from ON (operational state in which the power source can be operated) to OFF (stopped state in which the power source cannot be operated). do. As a result, the power source 12 is stopped. In this specification, "OFF" means that the hazard is brought to a safe state by stopping the hazard or reducing the danger of the hazard (e.g., by slowing down the movement speed of the robot). The OFF signal means a signal indicating OFF. In some cases, the IO connector 10a provided on the main module 3 alone cannot connect all safety input devices and power sources. In such a case, the expansion modules 4a, 4b are connected to the main module 3. FIG. The extension modules 4a and 4b have IO connectors 10b and 10c, respectively, and can be connected to the safety input device 11b, the power source 12, and the like. The expansion modules 4a, 4b and the main module 3 exchange input signals (input values) and output signals (output values) by communicating with each other via an internal bus. That is, the main module 3 applies the safety program to the input signal (input value) acquired from the safety input device 11a connected to itself and the safety input devices 11a connected to the extension modules 4a and 4b, thereby outputting the output signal ( output value). Furthermore, the main module 3 outputs the output signal generated according to the safety program to the power source 12 connected to itself or to the power source 12 connected to the expansion modules 4a and 4b. A remote I/O unit 8 is connected to the main module 3 via a remote bus. The remote I/O unit 8 communicates with the main module 3 to transmit the input signal of the safety input device 11d connected to the remote I/O unit 8 to the main module 3, and output a signal to the power source 12 connected to the .

(メインモジュールと拡張モジュールのハードウエア)
図2が示すように、メインモジュール3のコントローラ20aは二つのMCU23a、24aおよびメモリ25aを有している。信頼性を高めるためにMCU(マイクロコントローラユニット)は二重化されている。MCU23a、24aはそれぞれメモリ25aに保持されている同じ内容の安全プログラムを実行する。MCU23a、24aは安全入力IF21aを介して、安全入力機器11の二重化された入力信号、および/または、バスIF26aを介して拡張モジュール4から送信された入力信号(入力値)と、安全プログラムとに基づき、それぞれ出力信号を生成して安全出力IF22a、および/または、拡張モジュール4に出力する。たとえば、MCU23a、24aがともにON信号を出力していれば、安全出力IF22aは安全出力信号に割り当てられた2つの端子から、二重化された出力信号としてそれぞれON信号を出力する。また、MCU23a、24aがともにOFF信号を出力していれば、安全出力信号に割り当てられた2つの端子から、二重化された出力信号としてそれぞれOFF信号を出力する。一方、MCU23a、24aの一方がON信号を出力し他方がOFF信号を出力した場合、MCU23a、24aは、相互に監視をしているため、出力信号の不一致の状態が一定時間以上継続すると異常として判定し、強制的にOFF信号を出力する。なお、安全出力信号に割り当てられた2つの端子から、二重化された出力信号としてON信号とOFF信号とが不一致の状態で出力された場合、後段に接続される機器は、安全コントローラに故障が発生したと判断し、強制的にOFFの処理をする。このようにコントローラ20aは、バスIF26aを介して拡張モジュール4と通信して入力信号を受信したり、出力信号を送信したりする。通信IF27aは通信コネクタ7aを介して他の機器と通信する。
(main module and expansion module hardware)
As shown in FIG. 2, the controller 20a of the main module 3 has two MCUs 23a, 24a and a memory 25a. The MCU (microcontroller unit) is duplicated to improve reliability. The MCUs 23a and 24a each execute the same safety program held in the memory 25a. The MCUs 23a and 24a receive the duplicated input signal of the safety input device 11 and/or the input signal (input value) sent from the expansion module 4 via the bus IF 26a and the safety program via the safety input IF 21a. Based on this, each output signal is generated and output to the safety output IF 22 a and/or the extension module 4 . For example, if both MCUs 23a and 24a output ON signals, the safety output IF 22a outputs ON signals as duplicated output signals from two terminals assigned to safety output signals. Also, if both MCUs 23a and 24a output OFF signals, the OFF signals are output as duplicated output signals from the two terminals assigned to the safety output signals. On the other hand, when one of the MCUs 23a and 24a outputs an ON signal and the other outputs an OFF signal, the MCUs 23a and 24a monitor each other. It determines and forcibly outputs an OFF signal. If the ON signal and the OFF signal are output as duplicated output signals from the two terminals assigned to the safety output signals in a mismatched state, the device connected to the subsequent stage will cause a failure in the safety controller. It judges that it has been done, and forcibly performs OFF processing. Thus, the controller 20a communicates with the expansion module 4 via the bus IF 26a to receive input signals and transmit output signals. The communication IF 27a communicates with other devices via the communication connector 7a.

安全入力機器の例としては、セーフティレーザスキャナ、ライトカーテンなどがある。安全入力機器は一般的に安全規格を満たすものであり、安全入力機器の出力は二重化されている。二重化された信号に一定期間以上の不一致が生じた際には、安全コントローラまたはセンサ自身が当該センサの故障として検知することができ、強制的にOFF等の処理をすることができる。 Examples of safety input devices include safety laser scanners and light curtains. Safety input devices generally meet safety standards, and the outputs of safety input devices are duplicated. When the duplicated signals do not match for a certain period of time or longer, the safety controller or the sensor itself can detect that the sensor has failed, and can forcibly turn it off.

拡張モジュール4aのコントローラ20bは二つのMCU23b、24bとメモリ25bとを有している。信頼性を高めるためにMCU(マイクロコントローラユニット)は二重化されている。MCU23b、24bは、それぞれメモリ25bに保持されている同じ内容の制御プログラムを実行する。コントローラ20bは、安全入力IF21bを介して安全入力機器11の入力信号を受信すると、バスIF26bを介してメインモジュール3に入力信号(入力値)を送信する。コントローラ20bは、バスIF26bを介してメインモジュール3から出力信号(出力値)を受信すると、安全出力IF22bを介して動力源12などに出力する。たとえば、MCU23b、24bがともにON信号を出力していれば、安全出力IF22bは安全出力信号に割り当てられた2つの端子から、二重化された出力信号としてそれぞれON信号を出力する。また、MCU23b、24bがともにOFF信号を出力していれば、安全出力信号に割り当てられた2つの端子から、二重化された出力信号としてそれぞれOFF信号を出力する。一方、MCU23b、24bの一方がON信号を出力し他方がOFF信号を出力した場合、MCU23b、24bは、相互に監視をしているため、出力信号の不一致の状態が一定時間以上継続すると異常として判定し、強制的にOFF信号を出力する。なお、安全出力信号に割り当てられた2つの端子から、二重化された出力信号としてON信号とOFF信号とが不一致の状態で出力された場合、後段に接続される機器は、安全コントローラに故障が発生したと判断し、強制的にOFFの処理をする。 The controller 20b of the expansion module 4a has two MCUs 23b, 24b and a memory 25b. The MCU (microcontroller unit) is duplicated to improve reliability. The MCUs 23b and 24b each execute the control program with the same content held in the memory 25b. Upon receiving an input signal from the safety input device 11 via the safety input IF 21b, the controller 20b transmits an input signal (input value) to the main module 3 via the bus IF 26b. Upon receiving an output signal (output value) from the main module 3 via the bus IF 26b, the controller 20b outputs it to the power source 12 or the like via the safety output IF 22b. For example, if both MCUs 23b and 24b output ON signals, the safety output IF 22b outputs ON signals as duplicated output signals from the two terminals assigned to the safety output signals. Also, if both the MCUs 23b and 24b are outputting OFF signals, the OFF signals are output as duplicated output signals from the two terminals assigned to the safety output signals. On the other hand, when one of the MCUs 23b and 24b outputs an ON signal and the other outputs an OFF signal, the MCUs 23b and 24b monitor each other. It determines and forcibly outputs an OFF signal. If the ON signal and the OFF signal are output as duplicated output signals from the two terminals assigned to the safety output signals in a mismatched state, the device connected to the subsequent stage will cause a failure in the safety controller. It judges that it has been done, and forcibly performs OFF processing.

拡張モジュール4bのコントローラ20cは二つのMCU23c、24cとメモリ25cとを有している。信頼性を高めるためにMCU(マイクロコントローラユニット)は二重化されている。MCU23c、24cはそれぞれメモリ25cに保持されている制御プログラムを実行する。コントローラ20cは安全入力IF21cを介して安全入力機器11の入力信号を受信すると、バスIF26cを介してメインモジュール3に送信する。コントローラ20cはバスIF26cを介してメインモジュール3から出力信号を受信すると、安全出力IF22cを介して動力源12などに出力する。 The controller 20c of the expansion module 4b has two MCUs 23c, 24c and a memory 25c. The MCU (microcontroller unit) is duplicated to improve reliability. The MCUs 23c and 24c each execute control programs held in the memory 25c. When the controller 20c receives the input signal of the safety input device 11 via the safety input IF 21c, it transmits it to the main module 3 via the bus IF 26c. When the controller 20c receives an output signal from the main module 3 via the bus IF 26c, it outputs it to the power source 12 or the like via the safety output IF 22c.

(応答時間)
安全コントローラ1では、メインモジュール3に安全入力機器11と安全出力機器を接続できるし、拡張モジュール4にも安全入力機器11と安全出力機器を接続できる。なお、安全出力機器は、動力源12そのものであってもよいし、動力源12へ供給される電力を遮断する安全コンタクタや安全リレーであってもよい。安全入力機器11は安全入力機器自身が正常状態であることや安全入力機器が監視するエリアが正常であることを示す安全入力信号(ON)と安全入力機器自身が正常状態でないことや安全入力機器が監視するエリアが正常であることが確認できないことを示す安全入力信号(OFF)とを出力する。安全出力機器は、安全入力信号(ON)が入力される機械に電力を供給し、安全入力信号(OFF)が入力される機械への電力の供給を遮断する。
(response time)
In the safety controller 1 , the safety input device 11 and safety output device can be connected to the main module 3 , and the safety input device 11 and safety output device can be connected to the extension module 4 . The safety output device may be the power source 12 itself, or may be a safety contactor or a safety relay that cuts off the power supplied to the power source 12 . The safety input device 11 receives a safety input signal (ON) indicating that the safety input device itself is in a normal state and that the area monitored by the safety input device is normal, and a safety input signal (ON) indicating that the safety input device itself is not in a normal state. outputs a safety input signal (OFF) indicating that the monitored area cannot be confirmed to be normal. A safety output device supplies power to a machine to which a safety input signal (ON) is input, and cuts off the power supply to a machine to which a safety input signal (OFF) is input.

メインモジュール3に接続された安全入力機器11からの安全入力信号と、拡張モジュール4に接続された安全入力機器11からの安全入力信号とはそれぞれメインモジュール3で動作している安全プログラムによって処理される。また、メインモジュール3は、安全プログラムにしたがった安全出力信号を、メインモジュール3に接続された安全出力機器と、拡張モジュール4に接続された安全出力機器とにそれぞれ出力する。したがって、どの安全出力機器がどの安全入力機器の安全入力信号を利用するかに応じて、応答時間が異なってくる。 The safety input signal from the safety input device 11 connected to the main module 3 and the safety input signal from the safety input device 11 connected to the expansion module 4 are processed by the safety program running in the main module 3 respectively. be. The main module 3 also outputs safety output signals according to the safety program to the safety output device connected to the main module 3 and the safety output device connected to the extension module 4, respectively. Therefore, the response time differs depending on which safety output device uses the safety input signal of which safety input device.

図3は応答時間を説明する図である。ここでは、四つの信号経路P1~P4が主に例示されている。信号経路P1は二点鎖線で示されている。信号経路P2は破線で示されている。信号経路P3は実線で示されている。信号経路P4は一点鎖線で示されている。 FIG. 3 is a diagram for explaining response time. Here, four signal paths P1 to P4 are mainly illustrated. A signal path P1 is indicated by a two-dot chain line. Signal path P2 is indicated by a dashed line. Signal path P3 is shown in solid lines. A signal path P4 is indicated by a dashed line.

信号経路P1は、最もシンプルな経路であり、メインモジュール3に接続された安全入力機器11aの安全入力信号に基づき演算された安全出力信号を、メインモジュール3に接続された動力源12aに出力する。 The signal path P1 is the simplest path, and outputs a safety output signal calculated based on the safety input signal of the safety input device 11a connected to the main module 3 to the power source 12a connected to the main module 3. .

信号経路P2は、メインモジュール3に接続された安全入力機器11aの安全入力信号に基づき演算された安全出力信号を、拡張モジュール4aに接続された動力源12bに出力する。この場合、安全出力信号は通信データに変換されて、バスIF26aからバスIF26bに送信される。通信データには巡回冗長検査符号(CRC)が付与されており、拡張モジュール4aは、CRCを用いて通信誤りを検知すると通信データを破棄する。メインモジュール3により新たなタイミングで送信された通信データに対し、CRCを用いて通信誤りを確認する(リトライ)。拡張モジュール4aは、通信誤りを確認した結果、通信データが正常であると判定すると通信データとして採用し、通信誤りを検知すると、通信データを破棄する。つまり、リトライは、ノイズ等の一時的な通信障害による誤OFFを減少させるためのものである。一方、通信線の断線や通信回路の故障等の異常が発生した場合、リトライを繰り返しても正常な通信データは得られない。言い換えると、リトライは、ノイズ等の一時的な通信障害と、通信に関する異常発生とを区別するためのものであり、リトライ期間を長くするということは、異常発生を検出するまでの期間を長くするということである。要するに、リトライ期間を長くすると、一時的な通信障害による誤OFFは減少して生産性は向上するが、応答時間はその分長くなり安全入力機器や安全柵等の設置位置の制約が大きくなる。 The signal path P2 outputs a safety output signal calculated based on the safety input signal of the safety input device 11a connected to the main module 3 to the power source 12b connected to the expansion module 4a. In this case, the safety output signal is converted into communication data and transmitted from the bus IF 26a to the bus IF 26b. A cyclic redundancy check code (CRC) is added to the communication data, and the extension module 4a discards the communication data when a communication error is detected using the CRC. The communication data transmitted at new timing by the main module 3 is checked for a communication error using the CRC (retry). As a result of confirming the communication error, the extension module 4a adopts the communication data as communication data when it determines that the communication data is normal, and discards the communication data when detecting the communication error. In other words, the retry is for reducing erroneous OFF due to temporary communication failure such as noise. On the other hand, when an abnormality such as disconnection of a communication line or failure of a communication circuit occurs, normal communication data cannot be obtained even after repeated retries. In other words, the retry is for distinguishing between a temporary communication failure such as noise and the occurrence of an abnormality related to communication. That's what it means. In short, if the retry period is lengthened, erroneous OFF due to temporary communication failure is reduced and productivity is improved.

信号経路P3は、拡張モジュール4aに接続された安全入力機器11bの安全入力信号に基づき演算された安全出力信号を、メインモジュール3に接続された動力源12aに出力する。この例では、安全入力機器11bの安全入力信号は通信データに変換されて、バスIF26bからバスIF26aに送信される。信号経路P2と同様に、信号経路P3は、通信のリトライに伴い、応答時間が長くなる可能性がある。なお、安全入力信号がメインモジュール3に必ず送信されるのは、メインモジュール3が安全プログラムを実行する実行エンジンを備えているからである。具体的には、実行エンジンはMCU23aとMCU24aとに実装される。 The signal path P3 outputs to the power source 12a connected to the main module 3 a safety output signal calculated based on the safety input signal of the safety input device 11b connected to the extension module 4a. In this example, the safety input signal of the safety input device 11b is converted into communication data and transmitted from the bus IF 26b to the bus IF 26a. As with the signal path P2, the signal path P3 may have a longer response time due to communication retries. The reason why the safety input signal is always sent to the main module 3 is that the main module 3 has an execution engine that executes the safety program. Specifically, the execution engine is implemented in the MCU 23a and the MCU 24a.

信号経路P4は、最も複雑な経路であり、拡張モジュール4aに接続された安全入力機器11bの安全入力信号に基づきメインモジュール3で演算された安全出力信号を、拡張モジュール4aに接続された動力源12bに出力する。安全入力信号はメインモジュール3に送られ、安全プログラムにしたがって演算されて安全出力信号になる。信号経路P4では、バスIF26aとバスIF26bとの間を二度にわたって通過しなければならないため、最も応答時間が長くなりやすい。 The signal path P4 is the most complicated path, and the safety output signal calculated by the main module 3 based on the safety input signal of the safety input device 11b connected to the expansion module 4a is transferred to the power source connected to the expansion module 4a. 12b. The safety input signal is sent to the main module 3 and calculated according to the safety program to become a safety output signal. Since the signal path P4 must pass through the bus IF26a and the bus IF26b twice, the response time tends to be the longest.

なお、拡張モジュール4bがさらに接続されることもある。この場合、安全入力機器11cから入力された安全入力信号が動力源12cの安全出力信号になる場合であっても、安全入力信号は通信データに変換されてメインモジュール3に送信される。また、メインモジュール3は、安全出力信号を通信データに変換して送信することで拡張モジュール4bに送られ、そこで安全出力信号に変換されて動力源12cに出力される。安全入力機器11a、11bからの安全入力信号に基づき、動力源12cのための安全出力信号される場合もある。この場合も、バスIF26a、26b、26cが介在した通信が実行されることになる。ただし、安全入力機器と動力源との組み合わせは、自由自在であり、複数の安全入力機器と一つの動力源とが組み合わされることもある。この組み合わせは、ユーザにより作成される安全プログラムに依存する。 Note that an extension module 4b may be further connected. In this case, even if the safety input signal input from the safety input device 11c becomes the safety output signal of the power source 12c, the safety input signal is converted into communication data and transmitted to the main module 3. Further, the main module 3 converts the safety output signal into communication data and transmits it to the extension module 4b, where it is converted into a safety output signal and output to the power source 12c. A safety output signal for the power source 12c may be generated based on the safety input signals from the safety input devices 11a, 11b. Also in this case, communication is executed through the bus IFs 26a, 26b, and 26c. However, safety input devices and power sources can be freely combined, and multiple safety input devices and one power source may be combined. This combination depends on the safety program written by the user.

図3からわかるように安全入力機器11の接続位置と、動力源12などの安全出力機器の接続位置とに応じて応答時間(応答速度)が異なる可能性がある。ここで、予め応答時間(保証応答時間)を保証することが可能であるものの、通信エラーにより実際の応答時間が保証応答時間を超えてしまうことが考えられる。同様に、安全プログラムによる演算時間が長くなり、実際の応答時間が保証応答時間を超えてしまうことも考えられる。保証される応答時間は、通信エラーを許容する回数(または時間)と、安全プログラムに許容される最大演算時間とを含む。通信エラーの回数が許容回数を超えたり、または、演算時間が最大演算時間を超えてしまったりするケースは、故障などのケースである。これらは、通常動作では起こらないことが原因となる。処理時間が許容時間を越えてしまう要因は、たとえば、本体の故障、通信ケーブルの断線、過剰ノイズなどがある。これらは稀なイベントであるが、故障などのいわゆる異常状態に相当する。よって、実際の応答時間が保証応答時間を超えてしまう場合、メインモジュール3は、安全出力信号を強制的にOFFにする。これにより、応答時間を保証しつつ、稀なイベントに対処することが可能となる。 As can be seen from FIG. 3 , the response time (response speed) may differ depending on the connection position of the safety input device 11 and the connection position of the safety output device such as the power source 12 . Although it is possible to guarantee the response time (guaranteed response time) in advance, the actual response time may exceed the guaranteed response time due to a communication error. Similarly, it is conceivable that the operation time by the safety program becomes long and the actual response time exceeds the guaranteed response time. The guaranteed response time includes the allowable number of times (or time) for communication errors and the maximum computation time allowed for the safety program. A case in which the number of communication errors exceeds the allowable number of times or the calculation time exceeds the maximum calculation time is a failure case. These are caused by things that do not occur in normal operation. Factors that cause the processing time to exceed the allowable time include, for example, failure of the main body, disconnection of communication cables, excessive noise, and the like. These are rare events, but correspond to so-called abnormal conditions such as failures. Therefore, when the actual response time exceeds the guaranteed response time, the main module 3 forcibly turns off the safety output signal. This makes it possible to handle rare events while guaranteeing response time.

(期間スロット)
図4は期間スロットを説明する図である。本実施例では、一定の長さの繰返し周期である期間スロットが導入されている。安全コントローラ1は、ユーザによって設定される安全プログラムをスキャンサイクルで繰り返し実行する実行エンジン40を有し、一または複数の安全入力機器11からの安全入力信号から、安全プログラムにしたがって安全出力信号(出力値)を生成する。スキャンサイクルは、安全入力信号を取り込むタイミングである入力リフレッシュ期間に対応する入力送受信期間と、入力送受信期間に取り込まれた安全入力信号の入力値と安全プログラムにしたがって出力値を算出する演算期間と、演算期間に算出された出力値に従って各出力端子から安全出力信号を出力する出力送受信期間とを有する。このスキャンサイクルにおける入力送受信期間、演算期間、および、出力送受信期間の3つの期間に対応する処理に分割して、安全コントローラ1は、それぞれの処理を並列的に実行する。例えば、パイプライン処理の場合、各期間に対応する処理の負荷が一致しているほど、処理全体の効率が上がることになる。安全コントローラ1は、入力送受信期間の保証期間と、演算期間の保証期間を期間スロットに対応付けている。なお、出力送受信期間の保証期間についても期間スロットに対応付けてもよいが、出力送受信期間の保証期間が強制OFF処理を対象としていため、期間スロットよりも十分短い期間幅であってもよい。期間スロットは、保証された応答時間に基づいて決定されている。そのため、MCU23a、24aはそれぞれ期間スロット内で安全プログラムによる演算を完了しなければならない。また、メインモジュール3は、期間スロット内で、自己に接続された安全入力機器11aからの入力信号の入力処理と、拡張モジュール4に接続された安全入力機器11bからの入力信号(入力データ)の受信処理とを完了しなければならない。さらに、メインモジュール3は、期間スロット内で、自己に接続された動力源12aへの出力信号の出力処理と、拡張モジュール4に接続された動力源12bへの出力信号(出力データ)の送信処理とを完了しなければならない。
(period slot)
FIG. 4 is a diagram for explaining period slots. In this embodiment, a period slot is introduced, which is a repeating period of constant length. The safety controller 1 has an execution engine 40 that repeatedly executes a safety program set by the user in a scan cycle, and from safety input signals from one or more safety input devices 11, safety output signals (output value). The scan cycle consists of an input transmission/reception period corresponding to the input refresh period, which is the timing for capturing the safety input signal, an operation period for calculating the output value according to the safety program and the input value of the safety input signal captured during the input transmission/reception period, and and an output transmission/reception period for outputting a safety output signal from each output terminal according to the output value calculated during the calculation period. The scan cycle is divided into three processes corresponding to the input transmission/reception period, the calculation period, and the output transmission/reception period, and the safety controller 1 executes each process in parallel. For example, in the case of pipeline processing, the more the processing load corresponding to each period matches, the higher the efficiency of the entire processing. The safety controller 1 associates the guaranteed period of the input transmission/reception period and the guaranteed period of the operation period with the period slots. The guaranteed period of the output transmission/reception period may also be associated with the period slot, but since the guaranteed period of the output transmission/reception period is intended for forced OFF processing, the period width may be sufficiently shorter than the period slot. Period slots are determined based on guaranteed response times. Therefore, the MCUs 23a and 24a must each complete operations according to the safety program within the period slot. In addition, the main module 3 performs input processing of input signals from the safety input device 11a connected to itself and processing of input signals (input data) from the safety input device 11b connected to the extension module 4 within the period slot. receive processing must be completed. Further, the main module 3 performs output processing of an output signal to the power source 12a connected to itself and transmission processing of an output signal (output data) to the power source 12b connected to the expansion module 4 within the period slot. must be completed.

図4によれば、各期間スロット(入力送受信期間:入力期間と送受信期間)において入力信号の入力処理と入力データの送受信処理とが繰り返し実行されている。安全プログラムも各期間スロット(演算期間)において繰り返し実行される。さらに、各期間スロット(出力送受信期間:出力期間と送受信期間)において出力信号の出力処理と出力データの送受信処理とが繰り返し実行されている。 According to FIG. 4, input signal input processing and input data transmission/reception processing are repeatedly executed in each period slot (input transmission/reception period: input period and transmission/reception period). The safety program is also repeatedly executed in each period slot (calculation period). Further, in each period slot (output transmission/reception period: output period and transmission/reception period), output signal output processing and output data transmission/reception processing are repeatedly executed.

一般化すると、i番目の期間スロットにおいて入力信号の入力と入力データの受信(送信)とが実行される。入力信号も実行エンジン40において演算可能となるように入力データに変換される。 Generalizing, the input of the input signal and the reception (transmission) of the input data are performed in the i-th period slot. The input signal is also converted into input data so that it can be operated on by the execution engine 40 .

i+1番目の期間スロットにおいて実行エンジン40による出力データのプログラム演算が実行される。ここでは、i番目の期間スロットにおいて入手された入力データについてプログラム演算が適用され、出力データが演算される。さらに、i+1番目の期間スロットにおいても入力信号の入力と入力データの受信(送信)とが実行される。 The program operation of the output data by execution engine 40 is performed in the i+1 th period slot. Here, a program operation is applied on the input data obtained in the ith period slot to compute the output data. Furthermore, the input of the input signal and the reception (transmission) of the input data are also performed in the i+1-th period slot.

i番目の期間スロットにおいて入手された入力データに基づき、i+1番目の期間スロットにおいて演算された出力データが、i+2番目の期間スロットにおいて拡張モジュール4に送信され、出力データが出力信号に変換されて安全出力機器に出力される。あるいは、i+2番目の期間スロットにおいて出力データが出力信号に変換されてメインモジュール3の安全出力機器に出力される。i+2番目の期間スロットにおいても実行エンジン40による出力データのプログラム演算が実行される。これは、i+1番目の期間スロットにおいて受信された入力データを用いて実行される。さらに、i+2番目の期間スロットにおいても入力信号の入力と入力データの受信(送信)とが実行される。 Based on the input data obtained in the i-th period slot, the output data calculated in the i+1-th period slot is transmitted to the expansion module 4 in the i+2-th period slot, and the output data is converted into an output signal for safety. Output to the output device. Alternatively, the output data is converted into an output signal in the (i+2)th period slot and output to the safety output device of the main module 3 . The program operation of the output data by the execution engine 40 is also executed in the (i+2)th period slot. This is done using the input data received in the i+1 th period slot. Furthermore, the input of the input signal and the reception (transmission) of the input data are also performed in the i+2-th period slot.

このようにi番目の期間スロットで安全入力信号(入力データ)が入手され、i+1番目の期間スロットで入力データに基づき安全出力信号(出力データ)が演算され、i+2番目の期間スロットで安全出力信号(出力データ)が出力または送信される。したがって、メインモジュール3は、各期間スロット内で入力処理および受信処理が完了したかどうかを監視する。メインモジュール3は、各期間スロット内で演算処理が完了したかどうかを監視する。メインモジュール3は、各期間スロット内で出力処理および送信処理が完了したかどうかを監視する。期間スロット内でいずれか処理が完了しなければ、メインモジュール3は、安全出力信号を強制的にOFFに設定する。 Thus, the safety input signal (input data) is obtained in the i-th period slot, the safety output signal (output data) is calculated based on the input data in the i+1-th period slot, and the safety output signal is obtained in the i+2-th period slot. (output data) is output or transmitted. Therefore, the main module 3 monitors whether input processing and reception processing are completed within each period slot. The main module 3 monitors whether the arithmetic processing is completed within each period slot. The main module 3 monitors whether output processing and transmission processing are completed within each period slot. If any processing is not completed within the period slot, the main module 3 will force the safety output signal to OFF.

図3で示される信号経路P1における応答時間は、通信故障を考慮する必要がないため、2つ分の期間スロットの期間幅に出力までの応答時間を加えたものになる。例えば、期間スロットが1ミリ秒の場合、信号経路P1における応答時間は、2ミリ秒より長く3ミリ秒以下の一定値を設定することができる。また、図3で示される信号経路P4における応答時間は、通信故障を考慮する必要があり、2つ分の期間スロットの期間幅に出力までの応答時間を加えたものになる。例えば、期間スロットが1ミリ秒の場合、信号経路P4における応答時間は、4ミリ秒より長く5ミリ秒以下の一定値を設定することができる。 The response time in the signal path P1 shown in FIG. 3 is the sum of the period width of two period slots and the response time up to the output, since it is not necessary to consider a communication failure. For example, if the duration slot is 1 millisecond, the response time in signal path P1 can be set to a constant value greater than 2 milliseconds and less than or equal to 3 milliseconds. Also, the response time in the signal path P4 shown in FIG. 3 must take communication failure into consideration, and is the sum of the period width of two period slots and the response time up to the output. For example, if the period slot is 1 millisecond, the response time on signal path P4 can be set to a constant value greater than 4 milliseconds and less than or equal to 5 milliseconds.

(メインモジュールのMCUの機能)
図5はメインモジュール3のMCUで実現される機能を示している。図5にはMCU23aだけが示されているが、MCU24aも同じ機能を有している。信号処理部31は、メインモジュール3に接続された安全入力機器11aから安全入力信号を入力したり、メインモジュール3に接続された安全出力機器(動力源12a)に安全出力信号を出力したりする。入力処理部32は安全入力信号をアナログデジタル変換して入力データ(入力値)を求め、実行エンジン40に出力する。出力処理部33は、実行エンジン40から出力された出力データ(出力値)を安全出力信号に変換して安全出力機器に出力する。
(MCU function of main module)
FIG. 5 shows functions realized by the MCU of the main module 3. As shown in FIG. Although only MCU 23a is shown in FIG. 5, MCU 24a has the same function. The signal processing unit 31 inputs a safety input signal from the safety input device 11a connected to the main module 3, and outputs a safety output signal to the safety output device (power source 12a) connected to the main module 3. . The input processing unit 32 converts the safety input signal from analog to digital to obtain input data (input value), and outputs the input data to the execution engine 40 . The output processing unit 33 converts the output data (output value) output from the execution engine 40 into a safety output signal and outputs the safety output signal to the safety output device.

なお、入力処理部32は、入力端子と、安全プログラムにおける入力ブロックとの関連付けに基づき、ある入力端子から入力された入力信号を入力データに変換し、当該入力端子に関連付けられている入力ブロックに入力データを渡してもよい。同様に、出力処理部33は、ある出力ブロックから出力された出力データを出力信号に変換し、当該出力ブロックに関連付けられている出力端子から当該出力端子に出力してもよい。このように、信号処理部31は、安全プログラムの入出力ブロックと入出力端子との間におけるデータの橋渡しを実行してもよい。入力処理部32はノイズを低減するためのフィルタリングを実行してもよい。 Note that the input processing unit 32 converts an input signal input from a certain input terminal into input data based on the association between the input terminal and the input block in the safety program, and outputs the input signal to the input block associated with the input terminal. You can pass input data. Similarly, the output processing unit 33 may convert output data output from a certain output block into an output signal, and output the signal from an output terminal associated with the output block to the output terminal. In this way, the signal processing unit 31 may perform data bridging between the input/output blocks of the safety program and the input/output terminals. The input processor 32 may perform filtering to reduce noise.

通信処理部36はバスIF26aを介して拡張モジュール4から送信される入力データを受信したり、バスIF26aを介して拡張モジュール4へ出力データを送信したりする。入力データは、拡張モジュール4に接続された安全入力機器11bから出力された安全入力信号を伝送するデータである。出力データは、拡張モジュール4に接続された安全出力機器である動力源12bへ出力された安全出力信号を伝送するデータである。 The communication processing unit 36 receives input data transmitted from the extension module 4 via the bus IF 26a, and transmits output data to the extension module 4 via the bus IF 26a. The input data is data for transmitting the safety input signal output from the safety input device 11b connected to the extension module 4. FIG. The output data is data for transmitting a safety output signal output to the power source 12b, which is a safety output device connected to the expansion module 4. FIG.

受信処理部37は入力データについてCRCによる誤り検出を実行する。誤りが検出されると、受信処理部37は、拡張モジュール4に入力データの再送を要求する。受信処理部37は、誤りがない入力データを実行エンジン40に渡す。受信処理部37は、入力データを、安全プログラムを構成している適切な入力ブロックにわたす。入力データと入力ブロックとの関係は予め設定情報により関連付けられている。 The reception processing unit 37 performs error detection by CRC on the input data. If an error is detected, the reception processing unit 37 requests the expansion module 4 to resend the input data. The reception processing unit 37 passes error-free input data to the execution engine 40 . The reception processing unit 37 passes the input data to appropriate input blocks forming the safety program. The relationship between input data and input blocks is associated in advance by setting information.

送信処理部38は、実行エンジン40から出力されてきた出力データに対して誤り検出符号(例:CRC)を演算して付加し、バスIF26aを介して拡張モジュール4に送信する。拡張モジュール4から再送要求を受信すると、送信処理部38は、出力データを再送する。なお、送信処理部38は、ある出力ブロックから出力された出力データを、当該出力ブロックに関連付けられている、拡張モジュール4の安全出力機器に対して送信する。出力データと安全出力機器(出力端子)との関係は予め設定情報により関連付けられている。 The transmission processing unit 38 calculates and adds an error detection code (eg, CRC) to the output data output from the execution engine 40, and transmits it to the extension module 4 via the bus IF 26a. Upon receiving a resend request from the expansion module 4, the transmission processing unit 38 resends the output data. The transmission processing unit 38 transmits the output data output from a certain output block to the safety output device of the extension module 4 associated with the output block. The relationship between the output data and the safety output device (output terminal) is associated in advance by setting information.

実行エンジン40は、安全プログラムを実行することで入力データから出力データを生成する。 The execution engine 40 generates output data from input data by executing the safety program.

監視部41は、信号処理部31、通信処理部36および実行エンジン40を監視する。監視部41は、判定部50、信号設定部60および警告部70を有している。監視部41は、MCUのハードウエア故障を検知したり、ペアとなる二つMCUの安全出力信号が一致しているかどうかを監視したりすることに加え、本実施例では応答時間に関連した監視を実行する。 The monitoring unit 41 monitors the signal processing unit 31 , the communication processing unit 36 and the execution engine 40 . The monitoring unit 41 has a determination unit 50 , a signal setting unit 60 and a warning unit 70 . The monitoring unit 41 detects a hardware failure of an MCU, monitors whether the safety output signals of two MCUs forming a pair match, and, in this embodiment, performs monitoring related to response time. to run.

判定部50において第一判定部51は期間スロット内に入力データを信号処理部31および通信処理部36が入手できたかどうかを判定する。第二判定部52は、期間スロット内に安全プログラムの実行が完了したかどうかを判定する。安全プログラムの実行とは、入力データから出力データを演算することである。第三判定部53は、期間スロット内に、信号処理部31および通信処理部36による出力データの出力および送信が完了したかどうかを判定する。 In the determination unit 50, the first determination unit 51 determines whether the signal processing unit 31 and the communication processing unit 36 have obtained the input data within the period slot. The second determination unit 52 determines whether the execution of the safety program has been completed within the period slot. Execution of the safety program means computing output data from input data. The third determination unit 53 determines whether the signal processing unit 31 and the communication processing unit 36 have completed the output and transmission of the output data within the period slot.

信号設定部60において第一設定部61は、期間スロット内に入力データを入手できなかった場合に、安全出力信号を強制的にOFFに設定する。第二設定部62は、期間スロット内に安全プログラムの実行が完了しなかった場合に、安全出力信号を強制的にOFFに設定する。第三設定部63は、期間スロット内に出力データの出力および送信が完了しなかった場合に、安全出力信号を強制的にOFFに設定する。 A first setting unit 61 in the signal setting unit 60 forcibly sets the safety output signal to OFF when the input data cannot be obtained within the period slot. The second setting unit 62 forcibly sets the safety output signal to OFF when the execution of the safety program is not completed within the period slot. The third setting unit 63 forcibly sets the safety output signal to OFF when the output and transmission of the output data are not completed within the period slot.

警告部70において第一警告部71は、期間スロット内に入力データを入手できなかった場合に、表示装置5aに警告情報を出力する。第二警告部72は、期間スロット内に安全プログラムの実行が完了しなかった場合に、表示装置5aに警告情報を出力する。第三警告部73は、期間スロット内に出力データの出力および送信が完了しなかった場合に、表示装置5aに警告情報を出力する。 In the warning section 70, the first warning section 71 outputs warning information to the display device 5a when the input data cannot be obtained within the period slot. The second warning unit 72 outputs warning information to the display device 5a when the execution of the safety program is not completed within the period slot. The third warning unit 73 outputs warning information to the display device 5a when the output and transmission of the output data are not completed within the period slot.

(拡張モジュールのMCUの機能)
図6は拡張モジュール4のMCUの機能を示している。なお、図6において図5と共通または類似する機能には同一の参照符号が付与されている。
(MCU function of expansion module)
FIG. 6 shows the functions of the MCU of the extension module 4. As shown in FIG. In addition, in FIG. 6, the same reference numerals are given to functions that are common or similar to those in FIG.

入力処理部32は、拡張モジュール4に接続された安全入力機器11bから安全入力信号を入力して入力データに変換し、送信処理部38に出力する。送信処理部38は、入力データにCRC処理を施し、バスIF26bを介してメインモジュール3に送信する。 The input processing unit 32 receives a safety input signal from the safety input device 11 b connected to the extension module 4 , converts it into input data, and outputs the input data to the transmission processing unit 38 . The transmission processing unit 38 performs CRC processing on the input data and transmits it to the main module 3 via the bus IF 26b.

受信処理部37は、バスIF26bを介してメインモジュール3から出力データを受信し、CRC検査を実行し、誤りが検出されなければ出力データを出力処理部33に渡す。受信処理部37は、受信データに付与されているシーケンス番号に基づいて複数の受信データから入力データを復元してもよい。出力処理部33は、出力データを安全出力信号に変換して安全出力機器である動力源12bへ出力する。出力データに誤りが検出された場合、受信処理部37は、メインモジュール3に出力データの再送を要求して、出力データの受信をリトライする。あるいは、受信処理部37は、出力データを強制的にOFFに設定してもよい。このような強制的なOFFは、タイムアウトの発生時や二つのMCUが異なる値を出力したときなどの異常発生時に実行される。 The reception processing unit 37 receives the output data from the main module 3 via the bus IF 26b, performs a CRC check, and passes the output data to the output processing unit 33 if no error is detected. The reception processing unit 37 may restore the input data from a plurality of pieces of reception data based on the sequence numbers assigned to the reception data. The output processing unit 33 converts the output data into a safety output signal and outputs the safety output signal to the power source 12b, which is a safety output device. When an error is detected in the output data, the reception processing unit 37 requests the main module 3 to resend the output data and retries the reception of the output data. Alternatively, the reception processing unit 37 may forcibly set the output data to OFF. Such forced OFF is executed when an abnormality occurs, such as when a timeout occurs or when two MCUs output different values.

監視部41は、判定部50と信号設定部60とを有していてもよい。判定部50において第一判定部51は、入力処理部32および受信処理部37において期間スロット内に入力データを取得できたかどうかを監視する。第三判定部53は送信処理部38において期間スロット内に出力データの送信が完了したかどうかを判定する。 The monitoring section 41 may have a determination section 50 and a signal setting section 60 . A first determination unit 51 in the determination unit 50 monitors whether or not the input processing unit 32 and the reception processing unit 37 have acquired input data within the period slot. The third determination unit 53 determines whether or not the transmission processing unit 38 has completed the transmission of the output data within the period slot.

第一設定部61は、期間スロット内に入力データを入手できなかった場合に、安全出力信号を強制的にOFFに設定する。第三設定部63は、期間スロット内に出力データの送信が完了しなかった場合に、安全出力信号を強制的にOFFに設定する。 The first setting unit 61 forcibly sets the safety output signal to OFF when the input data cannot be obtained within the period slot. The third setting unit 63 forcibly sets the safety output signal to OFF when the transmission of the output data is not completed within the period slot.

(フローチャート)
図7はメインモジュール3のMCU23a(MCU24a)が実行する監視処理のフローチャートである。ここでは、実行エンジン40が繰り返す安全プログラムを実行しているものとする。
(flowchart)
FIG. 7 is a flowchart of monitoring processing executed by the MCU 23a (MCU 24a) of the main module 3. FIG. Here, it is assumed that the execution engine 40 is executing a repeating safety program.

S1でMCU23a(例:第一判定部51)は期間スロット内に入力データを入手できたかどうかを判定する。期間スロット内に入力データを入手できたのであれば、MCU23aはS2に進む。期間スロット内に入力データを入手できなかったのであれば、MCU23aはS11に進む。 In S1, the MCU 23a (eg, the first determination unit 51) determines whether or not the input data has been obtained within the period slot. If the input data can be obtained within the period slot, the MCU 23a proceeds to S2. If the input data could not be obtained within the period slot, the MCU 23a proceeds to S11.

S2でMCU23a(例:第二判定部52)は期間スロット内に安全プログラムによる出力データの演算が完了したかどうかを判定する。期間スロット内に出力データの演算が完了したのであれば、MCU23aはS3に進む。期間スロット内に出力データの演算が完了しなかったのであれば、MCU23aはS11に進む。 In S2, the MCU 23a (eg, the second determination unit 52) determines whether or not the calculation of the output data by the safety program has been completed within the period slot. If the calculation of the output data is completed within the period slot, the MCU 23a proceeds to S3. If the calculation of the output data has not been completed within the period slot, the MCU 23a proceeds to S11.

S3でMCU23a(例:第三判定部53)は期間スロット内に出力データの送信が完了したかどうかを判定する。期間スロット内に出力データの送信が完了したのであれば、MCU23aはS4に進む。期間スロット内に出力データの演算が完了しなかったのであれば、MCU23aはS11に進む。 In S3, the MCU 23a (eg, the third determination unit 53) determines whether or not the transmission of the output data has been completed within the period slot. If the transmission of the output data is completed within the period slot, the MCU 23a proceeds to S4. If the calculation of the output data has not been completed within the period slot, the MCU 23a proceeds to S11.

S4でMCU23aは監視終了条件が満たされてかどうかを判定する。監視終了条件は、たとえば、操作部6aから監視終了指示が入力されたことである。監視終了条件が満たされると、MCU23aは監視処理を終了する。監視終了条件が満たされていなければ、MCU23aはS1に戻る。 In S4, the MCU 23a determines whether or not the monitoring termination condition is satisfied. The monitoring termination condition is, for example, that a monitoring termination instruction is input from the operation unit 6a. When the monitoring end condition is satisfied, the MCU 23a ends the monitoring process. If the monitoring end condition is not satisfied, the MCU 23a returns to S1.

S11でMCU23a(信号設定部60)は、安全出力信号を強制的にOFFに設定する。これにより、メインモジュール3に接続されている動力源12aと、拡張モジュール4に接続されている動力源12bとにそれぞれ安全出力信号が出力される。これにより、動力源12a、12bは停止する。なお、信号設定部60は、出力データが安全出力信号のOFFを意味するように、出力データを変更する。 In S11, the MCU 23a (signal setting unit 60) forcibly sets the safety output signal to OFF. As a result, safety output signals are output to the power source 12a connected to the main module 3 and the power source 12b connected to the expansion module 4, respectively. As a result, the power sources 12a and 12b are stopped. Note that the signal setting unit 60 changes the output data so that the output data means that the safety output signal is OFF.

S12でMCU23a(警告部70)は表示装置5aに警告情報を出力する。ここで、警告情報は、警告情報が出力された理由を示すメッセージやエラーコードを含んでもよい。たとえば、警告情報は、どの安全入力機器からの入力信号の入手に失敗したかを示す情報を含んでもよい。また、警告情報は、どの安全出力機器への安全出力信号(出力データ)の送信に失敗したかを示す情報を含んでもよい。さらに、MCU23a(警告部70)はエラー履歴に警告情報またはエラーの内容を示す情報を書き込んでもよい。 In S12, the MCU 23a (warning unit 70) outputs warning information to the display device 5a. Here, the warning information may include a message indicating the reason for outputting the warning information and an error code. For example, the warning information may include information indicating from which safety input device the input signal failed to be obtained. The warning information may also include information indicating to which safety output device transmission of the safety output signal (output data) has failed. Furthermore, the MCU 23a (warning unit 70) may write warning information or information indicating the content of the error in the error history.

(ファンクションブロック)
図8はPC2が編集プログラムにしたがって表示装置5bに表示するUI80を示している。編集ボタン81は安全プログラムの編集を指示するためのボタンである。シミュレーションボタン82は安全プログラムのシミュレーションを指示するボタンである。リスト部83は、ユーザにより選択可能なファンクションブロック84の一覧を選択可能に表示する表示領域である。プログラム作成エリア85は、入力タイプのファンクションブロックが配置される入力配置エリア86と、演算タイプおよび出力タイプのファンクションブロックが配置されるブロック配置エリア87とを有している。ユーザは、リスト部83から任意のファンクションブロック84を選択して、入力配置エリア86またはブロック配置エリア87にドラッグアンドドロップする。入力配置エリア86およびブロック配置エリア87はスクロール表示可能となっており、より多くのファンクションブロックを配置可能となっている。
(function block)
FIG. 8 shows a UI 80 displayed on the display device 5b by the PC 2 according to the editing program. The edit button 81 is a button for instructing editing of the safety program. A simulation button 82 is a button for instructing simulation of the safety program. The list portion 83 is a display area for selectively displaying a list of function blocks 84 that can be selected by the user. The program creation area 85 has an input placement area 86 in which input type function blocks are placed, and a block placement area 87 in which operation type and output type function blocks are placed. The user selects an arbitrary function block 84 from the list portion 83 and drags and drops it to the input placement area 86 or block placement area 87 . The input placement area 86 and the block placement area 87 can be scrolled to display more function blocks.

図8によれば、入力配置エリア86には、メインモジュール3と拡張モジュール4に接続された安全入力機器11に対応する入力ブロックが配置される。図8では、入力配置エリア86には、非常停止スイッチに対応した入力ブロックと、リセットスイッチに対応した入力ブロックと、ライトカーテンXに対応した入力ブロックと、ドアスイッチに対応した入力ブロックが、リスト部83からドラッグアンドドロップされて配置されている。 According to FIG. 8, input blocks corresponding to the safety input devices 11 connected to the main module 3 and the expansion module 4 are arranged in the input arrangement area 86 . In FIG. 8, in the input arrangement area 86, an input block corresponding to the emergency stop switch, an input block corresponding to the reset switch, an input block corresponding to the light curtain X, and an input block corresponding to the door switch are listed. It is arranged by dragging and dropping from the section 83 .

ブロック配置エリア87には、二つのANDブロックと、リセットブロックと、出力ブロックとが配置されている。出力ブロックは、IOコネクタ10a~10cにおけるいずれかの出力端子に対応している。各ファンクションブロックを表すアイコンには、入力端子や出力端子が含まれている。ユーザは、あるファンクションブロックの出力端子と、他のファンクションブロックの入力端子との間に接続線88で結線することで、安全プログラムを完成させる。 Two AND blocks, a reset block, and an output block are arranged in the block arrangement area 87 . An output block corresponds to one of the output terminals of the IO connectors 10a-10c. An icon representing each function block includes an input terminal and an output terminal. The user completes the safety program by connecting the output terminal of a certain function block and the input terminal of another function block with the connection line 88 .

この事例では、非常停止ボタンが押されていない場合、リセットブロックはON(安全)を出力する。また、左側のANDブロックは、ライトカーテンがONであり、かつ、ドアスイッチがONである場合に、ONを出力する。右側のANDブロックには、リセットブロックの出力端子と、左側のANDブロックの出力端子とが接続されている。よって、右側のANDブロックの二つの入力端子にいずれもONが入力されている場合に、右側のANDブロックはONを出力ブロックに出力する。非常停止ボタンが押されると、リセットブロックにOFF(安全でない)が入力される。その結果、右側のANDブロックの出力がONからOFFに切り替わり、出力ブロックにOFFが伝搬する。リセットブロックは、リセットスイッチが押されない限り、OFF出力を維持する。リセットブロックは、リセットスイッチが押されると、出力をONに復帰させる。 In this case, if the emergency stop button has not been pressed, the reset block will output ON (safe). The left AND block outputs ON when the light curtain is ON and the door switch is ON. The output terminal of the reset block and the output terminal of the left AND block are connected to the right AND block. Therefore, when ON is input to both input terminals of the right AND block, the right AND block outputs ON to the output block. When the emergency stop button is pushed, OFF (not safe) is input to the reset block. As a result, the output of the right AND block switches from ON to OFF, and OFF is propagated to the output block. The reset block keeps the OFF output unless the reset switch is pressed. The reset block returns the output to ON when the reset switch is pressed.

PC2のCPUは、安全プログラムを構成しているファンクションブロックの種別情報およびプログラム部品と、各ファンクションブロックの接続関係を示す接続情報とを含む設定情報を作成し、PC2の記憶装置に格納する。この場合、設定情報内に安全プログラムが含まれていることになる。あるいは、CPUは、接続情報に従ってプログラム部品をリンクして安全プログラムを作成してもよい。ユーザによる転送指示が入力されると、CPUは設定情報と安全プログラムをメインモジュール3に送信して書き込む。設定情報は安全プログラムの一部であってもよい。 The CPU of the PC 2 creates setting information including type information and program parts of the function blocks constituting the safety program, and connection information indicating the connection relationship of each function block, and stores it in the storage device of the PC 2 . In this case, the safety program is included in the setting information. Alternatively, the CPU may create a safety program by linking program parts according to the connection information. When the user inputs a transfer instruction, the CPU transmits and writes the setting information and the safety program to the main module 3 . Configuration information may be part of the safety program.

このようにユーザは、任意のファンクションブロックを組み合わせることで容易に安全プログラムを作成できるようになる。なお、シミュレーションボタン82が押されると、CPUはシミュレーションUIを表示装置5bに表示する。 In this way, users can easily create safety programs by combining arbitrary function blocks. Note that when the simulation button 82 is pressed, the CPU displays the simulation UI on the display device 5b.

ここで、本実施例のファンクションブロックはそれぞれ単体での演算処理時間が保証されていてもよい。PC2は、安全コントローラ1の製品仕様書で保証された応答時間を満たすように、ユーザによる安全プログラムの作成を制限してもよい。たとえば、安全プログラムの応答時間を不定にしてしまうような複数のファンクションブロック間のループ配線(ループ処理)または分岐処理を含む安全プログラムを、ユーザがUI80上で作成しようとすると、CPUは警告情報を出力したり、そのような作成を禁止したりしてもよい。 Here, each function block of the present embodiment may be guaranteed its own arithmetic processing time. The PC 2 may limit the creation of safety programs by the user so as to satisfy the response time guaranteed by the product specifications of the safety controller 1 . For example, if the user attempts to create a safety program on the UI 80 that includes loop wiring (loop processing) or branch processing between multiple function blocks that would make the response time of the safety program undefined, the CPU will issue warning information. You may output it or prohibit such creation.

図8によれば、現在のプログラム量を表示する表示部89a、89bが示されている。CPUは、プログラムの作成に使用されるUI80の表示部89aに現在のプログラム量を表示してもよい。CPUは、バーグラフである表示部89bに、満容量に対する現在のプログラム量を示す割合を表示したりしてもよい。満容量は、製品仕様書で保証された応答時間の上限値に対応している。また、現在のプログラム量が満容量を超えた場合に、CPUは警告情報を出力してもよい。ここで、プログラム量は記憶サイズであってもよいし、プログラムを構成する複数のファンクションブロックの演算時間の合計時間であってもよい。これにより、製品仕様書で保証された応答時間を逸脱するような安全プログラムの作成を抑制することが可能となろう。 According to FIG. 8, display portions 89a and 89b for displaying the current program amount are shown. The CPU may display the current program amount on the display section 89a of the UI 80 used for creating the program. The CPU may display the ratio of the current program amount to the full capacity on the display section 89b, which is a bar graph. Full capacity corresponds to the upper limit of response time guaranteed in the product specification. Also, the CPU may output warning information when the current program amount exceeds the full capacity. Here, the program amount may be the storage size, or may be the total time of the operation times of a plurality of function blocks forming the program. As a result, it will be possible to suppress the creation of safety programs that deviate from the response time guaranteed by the product specifications.

安全コントローラ1は少なくとも一つのメインモジュール3を含むが、拡張モジュール4は必須ではない。したがって、メインモジュール3からなる安全コントローラ1の応答時間と、メインモジュール3と拡張モジュール4とからなる安全コントローラ1の応答時間とは異なる。そのため、製品仕様書には、これらのシステム構成ごとの応答時間が列挙されていてもよい。 Safety controller 1 includes at least one main module 3, but expansion module 4 is not essential. Therefore, the response time of the safety controller 1 consisting of the main module 3 and the response time of the safety controller 1 consisting of the main module 3 and the extension module 4 are different. Therefore, the product specification may list response times for each of these system configurations.

安全コントローラ1の合計応答時間Taは以下の式から算出されうる。
Ta = T0+T1+T2+T3+T4+T5・・・(1)
T0はメインモジュール3の基本応答時間(例:4.8ミリ秒)である。
T1は安全入力機器が接続される接続先機器による加算時間(例:1.7ミリ秒)である。安全入力機器がメインモジュール3に接続される場合と、拡張モジュール4に接続される場合とで、T1は異なってもよい。
T2は入力ブロックに起因した加算時間(例:0.7ミリ秒)である。入力ブロックがフィルタ処理やテスト出力を使用する場合、フィルタ処理時間やテスト出力時間に応じてT2が異なる。
T3は安全プログラムに起因した加算時間(例:4.5ミリ秒)である。ONディレイやOFFディレイなどのタイマー機能を使用する場合、タイマーによる遅延時間を加算する必要がある。また、レジスタを使用する場合も加算時間が必要となる。また、T3はテスト出力に起因した加算時間であってもよい。テスト出力とは、たとえば、非常停止ボタンが正常に動作可能であることを確認するためにテストパルスを出力することである。
T4は安全出力機器が接続される接続先機器による加算時間である。安全出力機器がメインモジュール3に接続される場合(例:0ミリ秒)と、拡張モジュール4に接続される場合(例:2.4ミリ秒)とで、T4は異なる。
T5は出力ブロックに起因した加算時間である。出力ブロックが半導体出力の場合(例:0ミリ秒)と、リレー出力の場合(例:10ミリ秒)とで、T5は異なる。
The total response time Ta of the safety controller 1 can be calculated from the following formula.
Ta = T0 + T1 + T2 + T3 + T4 + T5 (1)
T0 is the basic response time of the main module 3 (eg 4.8 ms).
T1 is the added time (eg, 1.7 milliseconds) by the destination device to which the safety input device is connected. T1 may be different between when the safety input device is connected to the main module 3 and when it is connected to the expansion module 4 .
T2 is the additional time (eg, 0.7 milliseconds) due to the input block. If the input block uses filtering or test output, T2 will vary depending on the filtering time and test output time.
T3 is the additional time (eg, 4.5 milliseconds) due to the safety program. When using a timer function such as an ON delay or an OFF delay, it is necessary to add the delay time of the timer. Also, when using a register, additional time is required. Alternatively, T3 may be an addition time resulting from the test output. The test output is, for example, outputting a test pulse to confirm that the emergency stop button can operate normally.
T4 is the addition time by the connected device to which the safety output device is connected. T4 differs between when the safety output device is connected to the main module 3 (eg 0 ms) and when it is connected to the extension module 4 (eg 2.4 ms).
T5 is the addition time due to the output block. T5 differs depending on whether the output block is a semiconductor output (eg 0 ms) or a relay output (eg 10 ms).

(1)式は、安全コントローラの入力から出力までの時間を意味しているが、これとは別に、TsとTrが別途考慮されてもよい。Tsは安全入力機器の応答時間である。Tsは安全入力機器の製品仕様書などに記載されている。Trは安全出力機器の応答時間である。Trは安全出力機器の製品仕様書などに記載されている。Tsは安全入力機器が反応してOFF信号をメインモジュール3に入力するのに要する時間である。TrはOFF信号が出力されてから機械が安全に停止するまでに要する時間である。これらはセンサや機械に依存した項目である。安全コントローラシステムの設計ではこれらも考慮されうる。 Equation (1) means the time from the input to the output of the safety controller, but apart from this, Ts and Tr may be considered separately. Ts is the response time of the safety input device. Ts is described in the product specification of the safety input device. Tr is the response time of the safety output device. Tr is described in the product specification of the safety output device. Ts is the time required for the safety input device to react and input the OFF signal to the main module 3 . Tr is the time required for the machine to stop safely after the OFF signal is output. These are sensor and machine dependent items. These may also be considered in the design of the safety controller system.

ユーザは自己が構築しようとしている安全コントローラ1について合計の応答時間Taを求めて、安全距離を計算し、適切に安全入力機器を配置することが可能となろう。 The user will be able to obtain the total response time Ta for the safety controller 1 that he/she is going to construct, calculate the safety distance, and appropriately arrange the safety input devices.

(動作モード)
メインモジュール3は複数の動作モードを有していてもよい。保証された応答時間に基づく期間スロットを用いる応答時間固定モードと、通信リトライのタイムアウト期間を増加させた耐ノイズモードと、応答時間に応じた強制OFFと警告を実行しないベストエフォートモードが採用されてもよい。MCU23aは、メモリ25に記憶されている設定データに応じていずれかの動作モードを選択してもよい。
(action mode)
The main module 3 may have multiple operating modes. A fixed response time mode that uses a period slot based on a guaranteed response time, a noise resistant mode that increases the timeout period of communication retry, and a best effort mode that does not execute forced OFF and warning according to the response time. good too. The MCU 23 a may select one of the operation modes according to setting data stored in the memory 25 .

<その他>
(プログラム作成処理)
図9はPC2により実行されるプログラム作成処理を示している。
<Others>
(Program creation process)
FIG. 9 shows the program creation process executed by the PC2.

S21でPC2のCPUはプログラムに対するファンクションブロックの追加を受け付ける。 In S21, the CPU of PC2 accepts addition of function blocks to the program.

S22でCPUは現在のプログラム量を求める。上述されたように追加対象としてユーザにより選択されたファンクションブロックごとに処理時間が予め定められている。たとえば、CPUはプログラムに含まれているファンクションブロックごとの処理時間の合計時間をプログラム量として求めてもよい。 In S22, the CPU obtains the current program amount. As described above, the processing time is predetermined for each function block selected by the user as an addition target. For example, the CPU may obtain the total processing time for each function block included in the program as the program amount.

S23でCPUは現在のプログラム量が、保証された応答時間に対応する規定量以下であるかどうかを判定する。プログラム量が規定量以下であれば、CPUはS24に進む。S24でCPUはプログラムに対するファンクションブロックの追加を許可し、S25に進む。プログラム量が規定量を超えていれば、CPUはS26に進む。S26でCPUはファンクションブロックの追加を拒否する。S27でCPUは警告情報を出力する。この警告情報は、たとえば、保証された応答時間を逸脱することを示すメッセージが含まれてもいてもよい。 At S23, the CPU determines whether the current program amount is less than or equal to the specified amount corresponding to the guaranteed response time. If the program amount is equal to or less than the specified amount, the CPU proceeds to S24. In S24, the CPU permits addition of function blocks to the program, and proceeds to S25. If the program amount exceeds the specified amount, the CPU proceeds to S26. At S26, the CPU refuses to add the function block. In S27, the CPU outputs warning information. This warning information may include, for example, a message indicating that the guaranteed response time will be exceeded.

S25でCPUはプログラムの作成が終了したかどうかを判定する。たとえば、ユーザによって終了指示が入力されると、CPUはプログラムの作成が終了したと判定し、プログラムを保存して作成処理を終了する。プログラムの作成が終了していなければ、CPUはS21に戻る。 In S25, the CPU determines whether or not the creation of the program has ended. For example, when the user inputs an end instruction, the CPU determines that the creation of the program is finished, saves the program, and ends the creation process. If the creation of the program has not ended, the CPU returns to S21.

(通信エラーに関する処理)
メインモジュール3や拡張モジュール4はそれぞれ安全入力信号や安全出力信号を通信データに変換して通信する。通信エラーが発生すると、誤った安全入力信号や安全出力信号が伝達されてしまう。この場合は、動力源12に供給される安全出力信号は強制的にOFFにされるべきである。なお、通信エラーの検出はメインモジュール3だけでなく、拡張モジュール4においても実行されるが、以下ではメインモジュール3で実行される例が説明される。また、MCU23、24がそれぞれ以下の処理を実行するが、MCU23のケースが説明される。
(Processing related to communication errors)
The main module 3 and the expansion module 4 respectively convert the safety input signal and the safety output signal into communication data for communication. If a communication error occurs, an erroneous safety input signal or safety output signal is transmitted. In this case, the safety output signal supplied to power source 12 should be forced OFF. The communication error detection is performed not only in the main module 3 but also in the expansion module 4, but an example performed in the main module 3 will be described below. Also, the MCUs 23 and 24 each execute the following processes, but the case of the MCU 23 will be explained.

S31でMCU23は拡張モジュール4から入力値(入力データ)を受信する。たとえば、バスIFに設けられた受信バッファから入力データの読み出しを試行する。 The MCU 23 receives an input value (input data) from the expansion module 4 in S31. For example, an attempt is made to read input data from a receive buffer provided in the bus IF.

S32でMCU23は拡張モジュール4から入力値が受信できたかを判断する。入力値を受信できなかった場合や、入力値は受信できたが当該入力値の通信相手が正しくなかった場合や、受信した入力値のCRCが一致しない場合は、MCU23はS33に進む。S33で、MCU23は期間スロット内の通信かどうかを判断する。期間スロット内の受信であると判断した場合は、S39に進む。S39でMCU23は受信をリトライし、S32に進む。一方、期間スロット内ではないと判断した場合は、MCU23はS40に進む。S40でMCU23は、出力を強制的にOFFにする。入力値が受信できた場合、MCU23はS34に進む。 In S32, the MCU 23 determines whether the input value has been received from the expansion module 4. If the input value could not be received, if the input value was received but the communication partner of the input value is not correct, or if the CRC of the received input value does not match, the MCU 23 proceeds to S33. In S33, the MCU 23 determines whether the communication is within the period slot. If it is determined that the reception is within the period slot, the process proceeds to S39. In S39, the MCU 23 retries the reception and proceeds to S32. On the other hand, if it is determined that it is not within the period slot, the MCU 23 proceeds to S40. In S40, the MCU 23 forcibly turns off the output. If the input value can be received, the MCU 23 proceeds to S34.

S34でMCU23は、タイムスタンプやシーケンス番号などをもとに入力値について遅延や誤配列などの通信エラーを検出する。 In S34, the MCU 23 detects a communication error such as delay or misalignment of the input value based on the time stamp, sequence number, and the like.

S35でMCU23は、通信エラーが検出されたかどうかを判定する。通信エラーが検出されない場合、MCU23はS36に進む。S36でMCU23は受信された入力値を用いてプログラムを実行し、実行結果(出力値)を求める。一方で、通信エラーが見つかった場合、MCU23はS37に進む。 In S35, the MCU 23 determines whether or not a communication error has been detected. If no communication error is detected, the MCU 23 proceeds to S36. In S36, the MCU 23 executes the program using the received input values and obtains execution results (output values). On the other hand, if a communication error is found, the MCU 23 proceeds to S37.

S37でMCU23は出力値(安全出力信号)を強制的にOFFにする。 In S37, the MCU 23 forcibly turns off the output value (safety output signal).

S38でMCU23は出力値を拡張モジュール3に送信する。 The MCU 23 transmits the output value to the expansion module 3 in S38.

ここでは受信されたデータに基づき通信エラーが検出されているが、リトライ回数が閾値を超えると、S37が実行されてもよい。 Although a communication error is detected based on the received data here, S37 may be executed when the number of retries exceeds the threshold.

(応答時間固定に関するパターン)
上述された実施形態は一例に過ぎないが、概ね三つのパターンが存在する。一つ目のパターンは、プログラムが修正されても応答時間が一定に保証されるが、拡張モジュールまたはリモートI/Oユニットの接続台数が増加すると応答時間が変化するパターンである。二つ目のパターンは、プログラムが修正されると修正後のプログラム量に応じて応答時間が増加することがあるが、拡張モジュールまたはリモートI/Oユニットの接続台数が増加しても応答時間が一定に保証されるパターンである。三つ目のパターンは、プログラムが修正されても応答時間が一定に保証され、かつ、拡張モジュールまたはリモートI/Oユニットの接続台数が増加しても応答時間が一定に保証されるパターンである。
(Pattern for fixed response time)
Although the embodiments described above are only examples, there are generally three patterns. The first pattern is a pattern in which a constant response time is guaranteed even if the program is modified, but the response time changes as the number of connected expansion modules or remote I/O units increases. In the second pattern, when the program is modified, the response time may increase according to the amount of the modified program. It is a pattern that is guaranteed to be constant. The third pattern is a pattern in which a constant response time is guaranteed even if the program is modified, and a constant response time is guaranteed even if the number of connected expansion modules or remote I/O units increases. .

プログラムが修正されても応答時間を一定に保証する技術はすでに説明されたとおりである。拡張モジュールの接続台数が増加しても応答時間を一定に保証する技術は、通信にかかる時間を監視し、通信時間(リトライ回数)が閾値を超えると、安全出力信号を強制的にOFFにすることで達成可能である。 The technique for guaranteeing a constant response time even if the program is modified has already been explained. The technology that guarantees a constant response time even if the number of connected expansion modules increases, monitors the time required for communication, and forcibly turns off the safety output signal when the communication time (number of retries) exceeds a threshold. can be achieved by

さらに、図11(A)~図11(E)が示すように、拡張モジュールの数に応じて保証される応答時間が段階的に変化してもよい。 Furthermore, as shown in FIGS. 11(A) to 11(E), the guaranteed response time may change stepwise according to the number of expansion modules.

図11(A)メインモジュール3が単体で使用されるときの保証応答時間(例:xミリ秒)と、一台以上の拡張モジュール4がメインモジュール3に接続されるときの保証応答時間(例:xミリ秒)が同一とされるケース。ユーザは、拡張モジュール4の台数を増加させても、応答時間が変化しないため、安全距離を見直す必要がない。 FIG. 11A shows the guaranteed response time (example: x milliseconds) when the main module 3 is used alone and the guaranteed response time (example: x milliseconds) when one or more extension modules 4 are connected to the main module 3. : x milliseconds) are assumed to be the same. Even if the number of expansion modules 4 is increased, the user does not need to review the safety distance because the response time does not change.

図11(B)メインモジュール3が単体で使用されるときの保証応答時間(例:xミリ秒)と、一台以上の拡張モジュール4がメインモジュール3に接続されるときの保証応答時間(例:yミリ秒)が異なるケース。ユーザは、拡張モジュール4の台数が一以上であれば、応答時間が変化しないため、安全距離を見直す必要がない。たとえば、応答時間は基本応答時間(例:x=4.8ミリ秒)に対して、拡張モジュール4の有無に応じた加算時間を考慮することで求められる。加算時間(例:1.7ミリ秒)は、拡張モジュール4の台数が一以上であれば、一定である。よって、一台以上の拡張モジュール4がメインモジュール3に接続されたときの応答時間yは、たとえば、6.5ミリ秒となる。このとき、監視部41は、メインモジュール3に接続される拡張モジュール4の台数が1台以上である第1の台数のときと、当該第1の台数とは異なる1台以上である第2の台数のときとで、安全コントローラ1の応答時間が一定に保証されるよう、実行エンジン40および通信処理部36(受信処理部37など)を監視する。 FIG. 11B shows the guaranteed response time (example: x milliseconds) when the main module 3 is used alone and the guaranteed response time (example: x milliseconds) when one or more extension modules 4 are connected to the main module 3. : y milliseconds) are different. If the number of extension modules 4 is one or more, the user does not need to review the safety distance because the response time does not change. For example, the response time is obtained by considering the additional time depending on the presence or absence of the expansion module 4 with respect to the basic response time (eg, x=4.8 milliseconds). The additional time (eg, 1.7 milliseconds) is constant as long as the number of extension modules 4 is one or more. Therefore, the response time y when one or more extension modules 4 are connected to the main module 3 is, for example, 6.5 milliseconds. At this time, the monitoring unit 41 monitors when the number of extension modules 4 connected to the main module 3 is a first number of one or more, and when the second number is one or more different from the first number. The execution engine 40 and the communication processing unit 36 (the reception processing unit 37, etc.) are monitored so that the response time of the safety controller 1 is guaranteed constant regardless of the number of units.

図11(C)メインモジュール3が単体で使用されるときの保証応答時間(例:xミリ秒)とメインモジュール3に一台の拡張モジュール4が接続されるときの保証応答時間(例:xミリ秒)とは同一であるが、二台以上の拡張モジュール4がメインモジュール3に接続されるときの保証応答時間(例:yミリ秒)は同一ではないケース。ただし、x<yとする。ユーザは、拡張モジュール4の台数が一台から二台以上に増加する場合、応答時間が増加することを認識して、安全距離を見直す必要がある。ただし、二台から三台に増加するときだけは、ユーザは安全距離を見直す必要がある。 FIG. 11C shows the guaranteed response time (example: x milliseconds) when the main module 3 is used alone and the guaranteed response time (example: x milliseconds) when one expansion module 4 is connected to the main module 3. milliseconds), but the guaranteed response time (eg y milliseconds) is not the same when two or more extension modules 4 are connected to the main module 3. However, x<y. When the number of expansion modules 4 increases from one to two or more, the user needs to recognize that the response time will increase and review the safety distance. However, the user needs to review the safety distance only when increasing from two to three.

図11(D)メインモジュール3が単体で使用されるときの保証応答時間はxミリ秒であり、メインモジュール3に1以上でN台以下の拡張モジュール4が接続されるときの保証応答時間はy1ミリ秒であり、N+1台以上でM台以下の拡張モジュール4がメインモジュール3に接続されるときの保証応答時間がy2ミリ秒であるケース。ただし、x<y1<y2とする。ユーザは、拡張モジュール4の台数が0台から一台に増加する場合、応答時間が増加することを認識して、安全距離を見直す必要がある。同様に、ユーザは、拡張モジュール4の台数がN台からN+1台に増加する場合、応答時間が増加することを認識して、安全距離を見直す必要がある。 FIG. 11(D) The guaranteed response time when the main module 3 is used alone is x milliseconds, and the guaranteed response time when the main module 3 is connected to 1 or more and N or less expansion modules 4 is A case where the guaranteed response time is y2 milliseconds when N+1 or more and M or more expansion modules 4 are connected to the main module 3 . However, x<y1<y2. When the number of expansion modules 4 increases from 0 to 1, the user needs to recognize that the response time will increase and review the safety distance. Similarly, when the number of expansion modules 4 increases from N to N+1, the user needs to recognize the increase in response time and review the safety distance.

ここでは拡張モジュール4の台数に応じて応答時間が変化するルールについて説明されたが、図11(E)のケースのように、リモートI/Oユニット8についても拡張モジュール4と同一または類似した応答時間のルールが構築されてもよい。たとえば、リモートI/Oユニット8は、応答時間の観点では拡張モジュール4と同一視されてもよい。メインモジュール3に1台以上の拡張モジュール4が接続される場合、監視部41は、リモートI/Oユニット8がメインモジュール3に接続されないときと、1台接続されたときとで、安全コントローラ1の応答時間が一定に保証されるよう、通信処理部36(受信処理部37など)を監視してもよい。受信処理部37は、リモートI/Oユニット8から入力値を受信するように構成されている。いずれにしても、応答時間を超えるような異常状態が発生したときは、安全出力信号が強制的にOFFにされる。 Here, the rule that the response time changes according to the number of expansion modules 4 has been explained, but the remote I/O unit 8 also has the same or similar response as the expansion module 4, as in the case of FIG. 11(E). A time rule may be constructed. For example, remote I/O unit 8 may be equated with expansion module 4 in terms of response time. When one or more extension modules 4 are connected to the main module 3, the monitoring unit 41 detects whether the remote I/O unit 8 is not connected to the main module 3 or when one remote I/O unit 8 is connected. The communication processing unit 36 (reception processing unit 37, etc.) may be monitored so that a constant response time is guaranteed. The reception processing section 37 is configured to receive input values from the remote I/O unit 8 . In any event, the safety output signal is forcibly turned OFF when an abnormal condition occurs that exceeds the response time.

(安全通信)
メインモジュール3と拡張モジュール4はバスIFを含む内部バス(フィールドバス)を介して通信を実行する。この通信には次のようなエラーが発生しうる。
1)反復:古いメッセージが繰り返し受信されてしまうこと
2)欠損:メッセージが消去されてしまうこと
3)挿入:別のメッセージが挿入されてしまうこと
4)誤配列:メッセージの受信順序が誤ってしまうこと
5)改ざん:メッセージの内容が書き換えられてしまうこと
6)遅延:規定の時間内に通信が完了しないこと
7)偽装:認証されていない機器から信頼できない情報が受信されること。
(safety communication)
The main module 3 and expansion module 4 communicate via an internal bus (fieldbus) including a bus IF. The following errors can occur in this communication:
1) Repetition: Old messages are received repeatedly 2) Missing: Messages are deleted 3) Insertions: Another message is inserted 4) Misorder: Messages are received out of order 5) Falsification: The content of a message is rewritten 6) Delay: Communication is not completed within a specified period of time 7) Forgery: Unreliable information is received from an unauthenticated device.

これに対して、メインモジュール3と拡張モジュール4は、送信元/受信先アドレスの同定を行う。これは、送信元/受信先アドレスをメッセージに含めることにより両者を同定し、登録されていない機器からの信用できない情報の挿入を阻止することである。メインモジュール3と拡張モジュール4は、タイムスタンプを用いてもよい。安全関連情報は一定時間内でのみ有効である。そこで、メインモジュール3と拡張モジュール4は、タイムスタンプを用いて古い安全関連情報を特定し、これらが繰り返し送信されてしまうことを抑制する。タイムスタンプは、送信側がメッセージを生成した時刻をタイムスタンプとしてメッセージに付加し、受信側がメッセージからタイムスタンプを抽出して、タイムスタンプに基づきメッセージの適時性を検査する。メインモジュール3と拡張モジュール4は、シーケンス番号を付与してもよい。シーケンス番号は、メッセージが送信された順序を示す。受信側は、メッセージに含まれるシーケンス番号に基づき、受信された複数のメッセージの前後関係を特定する。シーケンス番号に基づき、メッセージの欠損や関係ないメッセージの挿入、誤配列が判定可能となる。メインモジュール3と拡張モジュール4は受信確認を実行してもよい。受信確認では、受信側が受信メッセージを送信側に逆送信することで、送信側が送信したメッセージと逆送信されたメッセージとを比較する。これにより、受信側がメッセージを正しく受信できたかが
確認可能となる。あるいは、受信側に対応するアクノレッジなどの確認メッセージの送信を行わせることで、メッセージが正しく受信されたことを、送信側が検査してもよい。通常、許容時間内に受信側からの確認応答が得られない場合、送信側は、OFF状態へ移行する(タイムアウト機能)。
On the other hand, the main module 3 and the extension module 4 identify the sender/receiver address. This is to identify both by including the source/destination address in the message and prevent the insertion of untrusted information from unregistered devices. The main module 3 and extension module 4 may use timestamps. Safety-related information is valid only for a certain period of time. Therefore, the main module 3 and the extension module 4 use time stamps to identify old safety-related information and suppress repeated transmission of these information. The time stamp is where the sender attaches the time when the message was generated as a time stamp to the message, and the receiver extracts the time stamp from the message and checks the timeliness of the message based on the time stamp. The main module 3 and extension module 4 may be assigned sequence numbers. Sequence numbers indicate the order in which messages were sent. The receiver identifies the context of the received messages based on the sequence numbers included in the messages. Based on the sequence number, it is possible to determine missing messages, insertion of irrelevant messages, and misalignment. The main module 3 and the extension module 4 may perform acknowledgment. In acknowledgment, the receiver sends the received message back to the sender and compares the message sent by the sender with the message sent back. This makes it possible to check whether the receiving side has correctly received the message. Alternatively, the sender may verify that the message was received correctly by causing the receiver to send a corresponding acknowledgment or other confirmation message. Normally, if an acknowledgment from the receiver is not obtained within an allowable time, the sender transitions to the OFF state (timeout function).

図12、図13を用いて、メインモジュール3と拡張モジュール4とが実行する具体的な送信手順について説明する。 A specific transmission procedure executed by the main module 3 and the extension module 4 will be described with reference to FIGS. 12 and 13. FIG.

S41でメインモジュール3(通信処理部)は、データ送信命令を含むメッセージ1301を送信し、拡張モジュール4が受信する。図13が示すようにメッセージ1301は、送信先(例:拡張モジュール4a)、送信元(例:メインモジュール3)、シーケンス番号、データ送信命令、演算結果(最初のメッセージには含まれていない)、タイムスタンプ、およびCRCを含む。図13が示すように、CRCは、送信先からタイムスタンプまでのデータから演算される。このメッセージには返信期限(例:0.1ミリ秒~1.0ミリ秒)が設定されているものと仮定する。 In S41, the main module 3 (communication processing unit) transmits a message 1301 including a data transmission command, and the extension module 4 receives it. As shown in FIG. 13, a message 1301 includes a destination (eg, extension module 4a), a source (eg, main module 3), a sequence number, a data transmission command, and an operation result (not included in the first message). , timestamp, and CRC. As Figure 13 shows, the CRC is computed from the data from the destination to the timestamp. It is assumed that this message has a reply deadline (eg, 0.1 milliseconds to 1.0 milliseconds).

S42で拡張モジュール4が、受信されたメッセージのうち送信先からタイムスタンプまでのデータからCRCを演算し、メッセージに付加されていたCRCと一致するかを判定する。仮に二つのCRCが不一致であれば、S43で、拡張モジュール4がリトライ要求を送信し、メインモジュール3がメッセージを再送する。 In S42, the extension module 4 calculates a CRC from the data from the destination to the time stamp in the received message, and determines whether it matches the CRC added to the message. If the two CRCs do not match, at S43 the extension module 4 sends a retry request and the main module 3 resends the message.

S44で拡張モジュール4は安全入力機器から入力された安全入力信号を取得する。 In S44, the extension module 4 acquires the safety input signal input from the safety input device.

S45で拡張モジュール4は安全入力信号を入力値(入力データ)に変換し、データ送信のためのメッセージ1302を作成する。図13が示すように、メッセージ1302は、送信先(例:メインモジュール3)、送信元(例:拡張モジュール4a)、シーケンス番号、入力値、タイムスタンプ、およびCRCを含む。図13が示すように、CRCは、送信先からタイムスタンプまでのデータから演算される。メッセージ1302のシーケンス番号は、メッセージ1301に含まれていたシーケンス番号に1が加算されたものである。 In S45, the extension module 4 converts the safety input signal into an input value (input data) and creates a message 1302 for data transmission. As shown in FIG. 13, message 1302 includes destination (eg, main module 3), source (eg, extension module 4a), sequence number, input value, time stamp, and CRC. As Figure 13 shows, the CRC is computed from the data from the destination to the timestamp. The sequence number of message 1302 is the sequence number included in message 1301 plus one.

S46で拡張モジュール4は入力値を含むメッセージ1302をメインモジュール3に送信し、メインモジュール3がメッセージ1302を受信する。メッセージ1302には、メッセージ1301の受信が成功したことを示すアクノレッジが含まれていてもよい。 At S46, the extension module 4 sends the message 1302 including the input value to the main module 3, and the main module 3 receives the message 1302. FIG. Message 1302 may include an acknowledgment that message 1301 was successfully received.

S47でメインモジュール3はメッセージ1302についてCRCチェックを行う。メインモジュール3は受信されたメッセージ1302のうち送信先からタイムスタンプまでのデータからCRCを演算し、メッセージ1302に付加されていたCRCと一致するかを判定する。仮に二つのCRCが不一致であれば、S48で、メインモジュール3がリトライ要求を送信し、拡張モジュール4がメッセージを再送する。ここで、タイムアウト期間が2ミリ秒に設定されたと仮定すると、最大で8回のメッセージの送受信が可能となる。なお、タイムアウト期間内にエラーのないメッセージ1302が受信されなかった場合、メインモジュール3は、安全出力信号を強制的にOFFにする。 The main module 3 performs a CRC check on the message 1302 in S47. The main module 3 calculates a CRC from the data from the destination to the time stamp in the received message 1302 and determines whether it matches the CRC added to the message 1302 . If the two CRCs do not match, at S48 the main module 3 sends a retry request and the extension module 4 resends the message. Assuming that the timeout period is set to 2 milliseconds, a maximum of 8 messages can be sent and received. If no error-free message 1302 is received within the timeout period, the main module 3 forcibly turns off the safety output signal.

なお、8個のメッセージ1302が連続して送信されてもよい。この場合、メインモジュール3は、8個のメッセージ1302のうち最初にCRCチェックに合格したメッセージ1302を採用してもよい。あるいは、メインモジュール3は、8個のメッセージ1302のうち最後にCRCチェックに合格したメッセージ1302(つまり最新データ)を採用してもよい。あるいは、メインモジュール3は、8個のメッセージ1302のうちCRCチェックに合格したメッセージ1302をランダムに選択してもよい。 Note that eight messages 1302 may be sent in succession. In this case, the main module 3 may adopt the message 1302 that first passes the CRC check among the eight messages 1302 . Alternatively, the main module 3 may adopt the last message 1302 (that is, the latest data) that passed the CRC check among the eight messages 1302 . Alternatively, the main module 3 may randomly select messages 1302 that pass the CRC check among the eight messages 1302 .

S49でメインモジュール3は、メッセージ1302から抽出した入力値(安全入力信号)に基づき安全出力信号を演算して求める。演算手法はユーザプログラムによって定義されている。 In S<b>49 , the main module 3 calculates and obtains a safety output signal based on the input value (safety input signal) extracted from the message 1302 . The calculation method is defined by the user program.

S50でメインモジュール3は、演算結果(安全出力信号)を含むメッセージ1301を拡張モジュール4に送信し、拡張モジュール4がメッセージ1301を受信する。 In S50, the main module 3 transmits a message 1301 including the calculation result (safety output signal) to the extension module 4, and the extension module 4 receives the message 1301. FIG.

S51で拡張モジュール4は、演算結果(安全出力信号)を含むメッセージ1301について上述のCRCチェックを実行する。CRCが不一致であれば、S52でメッセージ1301のリトライが実行される。タイムアウト期間内にエラーのないメッセージ1302が受信されなかった場合、拡張モジュール4は、安全出力信号を強制的にOFFにする。 In S51, the expansion module 4 performs the above-described CRC check on the message 1301 including the calculation result (safety output signal). If the CRC does not match, the message 1301 is retried in S52. If no error-free message 1302 is received within the timeout period, expansion module 4 forces the safety output signal OFF.

S53で拡張モジュール4は、演算結果を安全出力信号に変換して動力源12のコンタクタなどに出力する。 In S53, the expansion module 4 converts the calculation result into a safety output signal and outputs the safety output signal to the contactor of the power source 12 or the like.

メインモジュール3は、1つのスキャンサイクル(1ミリ秒~5ミリ秒程度)が経過した時点で正しいCRCが得られなかった場合にのみ安全出力信号を強制的にOFFにする。しかし、これは一例に過ぎない。たとえば、1度でもCRCの不一致が発生すると、メインモジュール3は安全出力信号を強制的にOFFにしてもよい。 The main module 3 forcibly turns off the safety output signal only when a correct CRC is not obtained after one scan cycle (approximately 1 to 5 milliseconds) has elapsed. However, this is only an example. For example, if a CRC mismatch occurs even once, the main module 3 may forcibly turn off the safety output signal.

(シーケンス番号)
上述されたように、メッセージのシーケンス番号は、メインモジュール3と拡張モジュール4とが交互に1ずつ更新して行く。たとえば、最初にメインモジュール3がシーケンス番号に「1」を設定してデータ送信命令を送信する。
次に、拡張モジュール4は、シーケンス番号に「2」を付与して入力値を返信する。次に、メインモジュール3はシーケンス番号に「2」が付与されたデータに基づき安全出力信号を演算する。次に、メインモジュール3はシーケンス番号に「3」を付与して新たな返信期限付きのデータ送信命令と、演算結果に基づく出力信号を送信する。このようなシーケンス番号の更新と送受信を繰り返すことでデータの正しい順番が維持される。たとえば、メインモジュール3がシーケンス番号に「1」を付与してデータを送信したところ、拡張モジュール4からシーケンス番号に「3」が付与されたデータを受信したと仮定する。この場合、データのシーケンスエラーであり、強制OFFが実行される。メインモジュール3はシーケンスエラーを検出すると、エラーを表示してもよいし、エラーとなったデータを廃棄してもよい。
シーケンス番号は、メインモジュール3と拡張モジュール4との組み合わせごとに管理されている。たとえば、メインモジュール3と拡張モジュール4aとの組み合わせで管理されるシーケンス番号と、メインモジュール3と拡張モジュール4bとの組み合わせで管理されるシーケンス番号とが独立していることを意味する。
(sequence number)
As described above, the message sequence number is alternately updated by one by the main module 3 and the extension module 4 . For example, the main module 3 first sets the sequence number to "1" and transmits a data transmission command.
Next, the extension module 4 adds "2" to the sequence number and returns the input value. Next, the main module 3 calculates a safety output signal based on the data with the sequence number "2". Next, the main module 3 assigns "3" to the sequence number and transmits a new data transmission command with a reply deadline and an output signal based on the calculation result. The correct order of the data is maintained by repeating the update and transmission/reception of the sequence numbers in this way. For example, assume that the main module 3 sends data with a sequence number of "1" and receives data with a sequence number of "3" from the expansion module 4. FIG. In this case, it is a data sequence error, and forced OFF is executed. When the main module 3 detects a sequence error, it may display the error or discard the error data.
A sequence number is managed for each combination of the main module 3 and the extension module 4 . For example, it means that the sequence number managed by the combination of the main module 3 and the expansion module 4a and the sequence number managed by the combination of the main module 3 and the expansion module 4b are independent.

メインモジュール3と拡張モジュール4はタイムスタンプに基づいてデータの適時性を判定してもよい。ただし、これは、メインモジュール3と拡張モジュール4とが時刻同期していることが前提となる。 The main module 3 and extension module 4 may determine the timeliness of the data based on the timestamp. However, this assumes that the main module 3 and the extension module 4 are time-synchronized.

<まとめ>
図1が示すように、安全コントローラ1は、安全プログラムを実行するメインモジュール3と、当該メインモジュール3に接続された拡張モジュール4とを有した安全コントローラの一例である。図4が示すように、バスIF26aや受信処理部37は、一定の長さの繰り返し周期である期間スロットごとに、拡張モジュール4から入力値を受信する受信手段として機能する。実行エンジン40は、期間スロットごとに、安全プログラムを繰り返し実行する実行エンジンであって、入力値が受信されたi番目の期間スロットの次のi+1番目の期間スロットにおいて、当該入力値を用いて安全プログラムに従って出力値を演算する。安全出力IF22や出力処理部33、送信処理部38は出力値に対応する安全出力信号を安全出力機器に出力する出力手段として機能する。監視部41は、受信手段および実行エンジンを監視する監視手段として機能する。監視部41は、i番目の期間スロットにおいて受信手段による入力値の受信が完了しなかった場合、安全出力機器の動作が停止する安全出力信号を強制的に設定する。同様に、監視部41は、i+1番目の期間スロットにおいて実行エンジンによる出力値の演算が完了しなかった場合に、安全出力機器の動作が停止する安全出力信号を強制的に設定する。このように、期間スロットという概念を安全コントローラに導入することで、ユーザプログラムと通信の少なくとも一方に依存することなく、応答時間を保証または固定することが可能となる。
<Summary>
As shown in FIG. 1, the safety controller 1 is an example of a safety controller that has a main module 3 that executes a safety program and an extension module 4 connected to the main module 3 . As shown in FIG. 4, the bus IF 26a and the reception processing unit 37 function as reception means for receiving an input value from the expansion module 4 for each period slot, which is a repetition period of a certain length. Execution engine 40 is an execution engine that iteratively executes a safety program for each period slot, and in the i+1 period slot next to the i-th period slot in which the input value is received, the safety program is executed using the input value. Calculate the output value according to the program. The safety output IF 22, the output processing unit 33, and the transmission processing unit 38 function as output means for outputting a safety output signal corresponding to the output value to a safety output device. The monitoring unit 41 functions as monitoring means for monitoring the receiving means and the execution engine. The monitoring unit 41 forcibly sets a safety output signal to stop the operation of the safety output device when the reception of the input value by the receiving means is not completed in the i-th period slot. Similarly, the monitoring unit 41 forcibly sets a safety output signal that stops the operation of the safety output device when the execution engine does not complete the calculation of the output value in the i+1-th period slot. Thus, by introducing the concept of period slots into the safety controller, it is possible to guarantee or fix the response time independently of the user program and/or communication.

期間スロットはメインモジュール3のMCU23によって演算されてもよい。メインモジュール3のMCU23は、メインモジュール3に実装されている通信の種類を把握しており、さらに、どの通信が有効であるかをユーザプログラムまたは設定データから認識できるからである。 The period slots may be computed by MCU 23 of main module 3 . This is because the MCU 23 of the main module 3 is aware of the type of communication implemented in the main module 3, and can recognize which communication is valid from the user program or setting data.

図4が示すように、バスIF26aや受信処理部37は、i+1番目の期間スロットにおいて実行エンジンが出力値を求めているのと並行して、次の入力値を拡張モジュールから受信するように構成されていてもよい。 As shown in FIG. 4, the bus IF 26a and the reception processing unit 37 are configured to receive the next input value from the extension module in parallel with the execution engine obtaining the output value in the (i+1)th period slot. may have been

図5が示すように、第一判定部51はi番目の期間スロット内で入力値を受信できたかどうかを判定する第一判定手段として機能してもよい。第一設定部61はi番目の期間スロット内で入力値を受信できなかった場合に、出力値を強制的にOFF状態に設定する第一設定手段として機能してもよい。 As shown in FIG. 5, the first determination unit 51 may function as first determination means for determining whether an input value has been received within the i-th period slot. The first setting unit 61 may function as first setting means for forcibly setting the output value to the OFF state when the input value cannot be received within the i-th period slot.

図5が示すように第一警告部71はi番目の期間スロット内で入力値を受信できなかった場合に、第一警告情報を出力する第一警告手段として機能してもよい。 As shown in FIG. 5, the first warning unit 71 may function as first warning means for outputting first warning information when an input value cannot be received within the i-th period slot.

図5が示すように、第二判定部52はi+1番目の期間スロット内で出力値の演算が完了したかどうかを判定する第二判定手段として機能してもよい。第二設定部62は、i+1番目の期間スロット内で出力値の演算が完了しなかった場合に、出力値を強制的にOFF状態に設定する第二設定手段として機能してもよい。 As shown in FIG. 5, the second determination unit 52 may function as second determination means for determining whether or not the calculation of the output value has been completed within the (i+1)th period slot. The second setting unit 62 may function as second setting means for forcibly setting the output value to the OFF state when the calculation of the output value is not completed within the (i+1)th period slot.

図5が示すように、第二警告部72は、i+1番目の期間スロット内で出力値の演算が完了しなかった場合に、第二警告情報を出力する第二警告手段として機能してもよい。 As shown in FIG. 5, the second warning unit 72 may function as second warning means for outputting second warning information when the calculation of the output value is not completed within the i+1-th period slot. .

受信処理部37は、入力値の受信に成功するよう入力値の受信をリトライするように構成されていてもよい。 The reception processing unit 37 may be configured to retry the reception of the input value so as to successfully receive the input value.

受信処理部37は、入力値についてCRCチェックを行うことで改ざん検出を実行するように構成されていてもよい。 The reception processing unit 37 may be configured to detect falsification by performing a CRC check on the input value.

受信処理部37は、入力値についてシーケンス番号を用いて拡張モジュールにアクノレッジを返信するように構成されていてもよい。これにより拡張モジュール4は、アクノレッジに付与されているシーケンス番号に基づきどの入力値の送信が成功したかを把握できる。肯定応答(Ack)が返送されない場合、または、否定応答(Nack)が返送された場合、拡張モジュール4は、シーケンス番号に基づき入力値の再送を実行してもよい。 The reception processing unit 37 may be configured to return an acknowledgment to the expansion module using the sequence number for the input value. Thereby, the extension module 4 can grasp which input value has been successfully transmitted based on the sequence number attached to the acknowledge. If no positive acknowledgment (Ack) is returned, or if a negative acknowledgment (Nack) is returned, the expansion module 4 may perform retransmission of the input value based on the sequence number.

期間スロットの長さは安全プログラムの処理量とは無関係に決定されてもよい。期間スロットは、安全コントローラ1について保証された応答時間に基づき定められてもよい。この場合、ユーザにとっては安全プログラムを作成する前に、安全距離が定まる利点がもたらされる。 The length of the period slot may be determined independently of the throughput of the security program. A period slot may be defined based on a guaranteed response time for the safety controller 1 . In this case, the user has the advantage that the safety distance is determined before creating the safety program.

図4が示すように、送信処理部38は、i+1番目の期間スロットにおいて実行エンジンにより求められた出力値を、i+1番目の期間スロットの次のi+2番目の期間スロットにおいて、他の拡張モジュールに送信する送信手段として機能してもよい。 As shown in FIG. 4, the transmission processing unit 38 transmits the output value obtained by the execution engine in the i+1-th period slot to the other expansion modules in the i+2-th period slot next to the i+1-th period slot. You may function as a transmission means to transmit.

図5が示すように第三判定部53はi+2番目の期間スロット内で出力値の送信が完了したかどうかを判定する第三判定手段として機能する。第三設定部63はi+2番目の期間スロット内で出力値の送信が完了しなかった場合に、出力値を強制的にOFF状態に設定する第三設定手段として機能する。 As shown in FIG. 5, the third judging section 53 functions as a third judging means for judging whether or not the transmission of the output value is completed within the (i+2)th period slot. The third setting unit 63 functions as third setting means for forcibly setting the output value to the OFF state when the transmission of the output value is not completed within the (i+2)th period slot.

メインモジュール3は、安全入力機器と接続するコネクタ(例:IOコネクタ10a)をさらに有してもよい。実行エンジン40は、期間スロットごとに、コネクタを介して取得された入力値と、受信手段により受信された入力値とを用いて出力値を演算するように構成されていてもよい。 The main module 3 may further have a connector (eg, IO connector 10a) that connects with a safety input device. The execution engine 40 may be arranged to compute an output value for each period slot using the input values obtained via the connector and the input values received by the receiving means.

期間スロットの長さは、メインモジュール3に接続された拡張モジュールの台数に依存することなく一定の長さに決定されていてもよい。この場合、ユーザにとっては安全プログラムを作成する前に、安全距離が定まる利点がもたらされる。 The length of the period slot may be determined to be a fixed length regardless of the number of extension modules connected to the main module 3 . In this case, the user has the advantage that the safety distance is determined before creating the safety program.

図11を用いて説明されたように、メインモジュール3に接続される拡張モジュール4の数に依存することなく安全コントローラの応答時間が一定に保証されてもよい。また、メインモジュール3に拡張モジュール4が接続されないケースの応答時間は第一の応答時間xであり、メインモジュール3に一台以上の拡張モジュールが接続されるケースの応答時間は第二の応答時間yであってもよい。また、メインモジュール3に拡張モジュール4が接続されないケースの応答時間は第一の応答時間xであり、メインモジュール3に一台以上でかつN台までの拡張モジュール4が接続されるケースの応答時間は第二の応答時間y1であってもよい。また、メインモジュール3にN+1台以上の拡張モジュール4が接続されるケースの応答時間は第三の応答時間y2であってもよい。また、メインモジュール3に拡張モジュールが接続されないケースの応答時間は第一の応答時間xであり、メインモジュール3にリモートI/Oユニット8が接続されるケースの応答時間は、拡張モジュール4の接続台数に依存することなく、第二の応答時間yであり、メインモジュール3にリモートI/Oユニット8が接続されず、一台以上の拡張モジュール4が接続されるケースの応答時間は第一の応答時間xであってもよい。 As explained using FIG. 11 , a constant response time of the safety controller may be guaranteed independently of the number of extension modules 4 connected to the main module 3 . The response time x is the first response time x when the extension module 4 is not connected to the main module 3, and the second response time x is the response time when one or more extension modules are connected to the main module 3. It may be y. Also, the response time in the case where the main module 3 is not connected to the extension module 4 is the first response time x, and the response time in the case where the main module 3 is connected to one or more extension modules 4 up to N units. may be the second response time y1. Also, the response time in the case where the main module 3 is connected to N+1 or more extension modules 4 may be the third response time y2. Also, the response time in the case where the main module 3 is not connected to the expansion module is the first response time x, and the response time in the case where the main module 3 is connected to the remote I/O unit 8 is the connection of the expansion module 4. The second response time y is independent of the number of units, and the response time in the case where the remote I/O unit 8 is not connected to the main module 3 and one or more expansion modules 4 are connected is the first response time. It may be the response time x.

発明は上記の実施形態に制限されるものではなく、発明の要旨の範囲内で、種々の変形・変更が可能である。 The invention is not limited to the above embodiments, and various modifications and changes are possible within the scope of the invention.

Claims (17)

安全プログラムを実行するメインモジュールと、当該メインモジュールに接続された拡張モジュールとを有した安全コントローラであって、
前記メインモジュールは、
一定の長さの繰り返し周期である期間スロットごとに、前記拡張モジュールから入力値を受信する受信手段と、
前記期間スロットごとに、前記安全プログラムを繰り返し実行する実行エンジンであって、前記入力値が受信されたi番目の期間スロットの次のi+1番目の期間スロットにおいて、当該入力値を用いて前記安全プログラムに従って出力値を演算する実行エンジンと、
前記出力値に対応する安全出力信号を安全出力機器に出力する出力手段と、
前記受信手段および前記実行エンジンを監視する監視手段と、を有し、
前記監視手段は、前記i番目の期間スロットにおいて前記受信手段による前記入力値の受信が完了しなかった場合、または、前記i+1番目の期間スロットにおいて前記実行エンジンによる前記出力値の演算が完了しなかった場合に、前記安全出力機器の動作が停止する前記安全出力信号を強制的に設定することを特徴とする安全コントローラ。
A safety controller having a main module that executes a safety program and an expansion module connected to the main module,
The main module is
receiving means for receiving an input value from the expansion module for each period slot, which is a repetition period of a fixed length;
an execution engine that iteratively executes the safety program for each of the period slots, using the safety program in the i+1 period slot following the i period slot in which the input value was received; an execution engine that computes output values according to
output means for outputting a safety output signal corresponding to the output value to a safety output device;
monitoring means for monitoring the receiving means and the execution engine;
The monitoring means determines whether or not the reception of the input value by the receiving means has been completed in the i-th period slot, or the calculation of the output value by the execution engine has not been completed in the i+1-th period slot. a safety controller forcibly setting the safety output signal to stop the operation of the safety output device when
前記受信手段は、前記i+1番目の期間スロットにおいて前記実行エンジンが前記出力値を求めているのと並行して、次の入力値を前記拡張モジュールから受信するように構成されていることを特徴とする請求項1に記載の安全コントローラ。 The receiving means is arranged to receive the next input value from the expansion module concurrently with the execution engine determining the output value in the i+1 period slot. The safety controller of Claim 1. 前記監視手段は、
前記i番目の期間スロット内で前記入力値を受信できたかどうかを判定する第一判定手段と、
前記i番目の期間スロット内で前記入力値を受信できなかった場合に、前記出力値を強制的にOFF状態に設定する第一設定手段と
を有することを特徴とする請求項1または2に記載の安全コントローラ。
The monitoring means
a first determination means for determining whether the input value could be received within the i-th duration slot;
3. The apparatus according to claim 1, further comprising first setting means for forcibly setting the output value to an OFF state when the input value cannot be received within the i-th duration slot. safety controller.
前記i番目の期間スロット内で前記入力値を受信できなかった場合に、第一警告情報を出力する第一警告手段をさらに有することを特徴とする請求項1ないし3のいずれか一項に記載の安全コントローラ。 4. The apparatus according to any one of claims 1 to 3, further comprising first warning means for outputting first warning information if said input value is not received within said i-th duration slot. safety controller. 前記監視手段は、
前記i+1番目の期間スロット内で前記出力値の演算が完了したかどうかを判定する第二判定手段と、
前記i+1番目の期間スロット内で前記出力値の演算が完了しなかった場合に、前記出力値を強制的にOFF状態に設定する第二設定手段と
をさらに有することを特徴とする請求項1ないし4のいずれか一項に記載の安全コントローラ。
The monitoring means
a second determination means for determining whether or not the calculation of the output value has been completed within the i+1-th period slot;
2. A second setting means for forcibly setting the output value to an OFF state when the calculation of the output value is not completed within the i+1-th period slot. 5. The safety controller according to any one of Claims 4.
前記i+1番目の期間スロット内で前記出力値の演算が完了しなかった場合に、第二警告情報を出力する第二警告手段をさらに有することを特徴とする請求項1ないし5のいずれか一項に記載の安全コントローラ。 6. The apparatus according to any one of claims 1 to 5, further comprising second warning means for outputting second warning information when the calculation of said output value has not been completed within said i+1-th period slot. safety controller as described in . 前記受信手段は、前記入力値の受信に成功するよう前記入力値の受信をリトライするように構成されていることを特徴とする請求項1ないし6のいずれか一項に記載の安全コントローラ。 7. A safety controller according to any one of claims 1 to 6, wherein said receiving means is arranged to retry receiving said input value so that said input value is successfully received. 前記受信手段は、前記入力値についてCRCチェックを行うことで改ざん検出を実行するように構成されていることを特徴とする請求項1ないし7のいずれか一項に記載の安全コントローラ。 8. A safety controller according to any one of claims 1 to 7, wherein said receiving means is configured to perform tampering detection by performing a CRC check on said input value. 前記受信手段は、前記入力値についてシーケンス番号を用いて前記拡張モジュールにアクノレッジを返信するように構成されていることを特徴とする請求項1ないし8のいずれか一項に記載の安全コントローラ。 9. A safety controller according to any one of claims 1 to 8, wherein the receiving means is configured to acknowledge the input value to the expansion module using a sequence number. 前記期間スロットの長さは前記安全プログラムの処理量とは無関係に決定されていることを特徴とする請求項1ないし9のいずれか一項に記載の安全コントローラ。 10. The safety controller according to any one of claims 1 to 9, wherein the length of the period slot is determined independently of the throughput of the safety program. 前記出力手段は、前記i+1番目の期間スロットにおいて前記実行エンジンにより求められた前記出力値を、前記i+1番目の期間スロットの次のi+2番目の期間スロットにおいて、他の拡張モジュールに送信する送信手段を有することを特徴とする請求項1ないし10のいずれか一項に記載の安全コントローラ。 The output means transmits the output value obtained by the execution engine in the i+1-th period slot to another expansion module in the i+2-th period slot next to the i+1-th period slot. 11. A safety controller as claimed in any preceding claim, comprising: 前記監視手段は、
前記i+2番目の期間スロット内で前記出力値の送信が完了したかどうかを判定する第三判定手段と、
前記i+2番目の期間スロット内で前記出力値の送信が完了しなかった場合に、前記出力値を強制的にOFF状態に設定する第三設定手段と
をさらに有することを特徴とする請求項11に記載の安全コントローラ。
The monitoring means
a third determining means for determining whether or not the transmission of the output value has been completed within the i+2-th period slot;
12. The apparatus according to claim 11, further comprising third setting means for forcibly setting the output value to an OFF state when the transmission of the output value is not completed within the i+2th period slot. Safety controller as described.
前記メインモジュールは、
安全入力機器と接続するコネクタをさらに有し、
前記実行エンジンは、前記期間スロットごとに、前記コネクタを介して取得された入力値と、前記受信手段により受信された前記入力値とを用いて前記出力値を演算するように構成されていることを特徴とする請求項1ないし12のいずれか一項に記載の安全コントローラ。
The main module is
It further has a connector that connects with a safety input device,
The execution engine is configured to compute the output value using input values obtained through the connector and the input values received by the receiving means for each period slot. 13. A safety controller according to any one of claims 1 to 12, characterized in that:
前記期間スロットの長さは、前記メインモジュールに接続された拡張モジュールの台数に依存することなく一定の長さに決定されていることを特徴とする請求項1ないし13のいずれか一項に記載の安全コントローラ。 14. The length of the period slot according to any one of claims 1 to 13, characterized in that the length of the period slot is determined to be a constant length regardless of the number of extension modules connected to the main module. safety controller. 安全プログラムを実行するメインモジュールと、当該メインモジュールに接続される拡張モジュールとを有する安全コントローラであって、
前記メインモジュールは、
前記拡張モジュールから入力値を受信する受信手段と、
前記入力値を用いて前記安全プログラムに従って出力値を演算する実行エンジンと、
前記出力値に対応する安全出力信号を安全出力機器に出力する出力手段と、
前記受信手段および前記実行エンジンを監視する監視手段と、を備え、
前記監視手段は、前記メインモジュールに接続される前記拡張モジュールの台数が1台以上である第1の台数のときと、当該第1の台数とは異なる1台以上である第2の台数のときとで、前記安全コントローラの応答時間が一定に保証されるよう前記受信手段および前記実行エンジンを監視することを特徴とする安全コントローラ。
A safety controller having a main module that executes a safety program and an expansion module connected to the main module,
The main module is
receiving means for receiving input values from the expansion module;
an execution engine that uses the input values to compute an output value according to the safety program;
output means for outputting a safety output signal corresponding to the output value to a safety output device;
monitoring means for monitoring the receiving means and the execution engine;
When the number of extension modules connected to the main module is a first number of one or more, and when the number is a second number of one or more different from the first number. and monitoring said receiving means and said execution engine to ensure a constant response time of said safety controller.
前記メインモジュールに前記拡張モジュールが接続されないケースの応答時間は第一の応答時間であり、
前記メインモジュールに一台以上の前記拡張モジュールが接続されるケースの応答時間は第二の応答時間であることを特徴とする請求項15に記載の安全コントローラ。
the response time in the case where the extension module is not connected to the main module is a first response time;
16. The safety controller as claimed in claim 15, wherein the response time for a case in which one or more extension modules are connected to the main module is a second response time.
前記安全コントローラはさらに、前記メインモジュールに接続されるリモートI/Oユニットを備え、
前記受信手段は、さらに、前記リモートI/Oユニットから入力値を受信し、
前記監視手段は、前記メインモジュールに接続される前記リモートI/Oユニットが非接続のときと、前記リモートI/Oユニットが1台接続されたときとで、前記安全コントローラの応答時間が一定に保証されるよう前記受信手段を監視することを特徴とする請求項15または16に記載の安全コントローラ。
the safety controller further comprises a remote I/O unit connected to the main module;
the receiving means further receives an input value from the remote I/O unit;
The monitoring means keeps the response time of the safety controller constant when the remote I/O unit connected to the main module is not connected and when one remote I/O unit is connected. 17. Safety controller according to claim 15 or 16, characterized in that it monitors the receiving means to ensure.
JP2019209182A 2019-11-19 2019-11-19 safety controller Active JP7332442B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019209182A JP7332442B2 (en) 2019-11-19 2019-11-19 safety controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019209182A JP7332442B2 (en) 2019-11-19 2019-11-19 safety controller

Publications (2)

Publication Number Publication Date
JP2021082027A JP2021082027A (en) 2021-05-27
JP7332442B2 true JP7332442B2 (en) 2023-08-23

Family

ID=75965302

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019209182A Active JP7332442B2 (en) 2019-11-19 2019-11-19 safety controller

Country Status (1)

Country Link
JP (1) JP7332442B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023238221A1 (en) * 2022-06-07 2023-12-14 三菱電機株式会社 Extension module, operation mode switching method, and program
WO2023238220A1 (en) * 2022-06-07 2023-12-14 三菱電機株式会社 Program creation device, program creation method, and program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002098065A1 (en) 2001-05-31 2002-12-05 Omron Corporation Safety network system and safety slaves and safety controller and communication method and information gathering method and monitoring method in safety network system
WO2014041829A1 (en) 2012-09-11 2014-03-20 三菱電機株式会社 Safety arithmetic device, safety input device, safety output device, and safety controller
US20140165077A1 (en) 2011-07-14 2014-06-12 Siemens Corporation Reducing The Scan Cycle Time Of Control Applications Through Multi-Core Execution Of User Programs

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002098065A1 (en) 2001-05-31 2002-12-05 Omron Corporation Safety network system and safety slaves and safety controller and communication method and information gathering method and monitoring method in safety network system
US20140165077A1 (en) 2011-07-14 2014-06-12 Siemens Corporation Reducing The Scan Cycle Time Of Control Applications Through Multi-Core Execution Of User Programs
WO2014041829A1 (en) 2012-09-11 2014-03-20 三菱電機株式会社 Safety arithmetic device, safety input device, safety output device, and safety controller

Also Published As

Publication number Publication date
JP2021082027A (en) 2021-05-27

Similar Documents

Publication Publication Date Title
US6909923B2 (en) Safety communication on a single backplane
US8959405B2 (en) Signal transmission device for elevator
US6631476B1 (en) Safety network for industrial controller providing redundant connections on single media
JP4307776B2 (en) Safety network for industrial controllers with reduced bandwidth requirements
JP3978617B2 (en) Safety unit input device
JP7332442B2 (en) safety controller
JP3965699B2 (en) Information processing apparatus and information processing method
US7844865B2 (en) Bus module for connection to a bus system and use of such a bus module in an AS-i bus system
US10924371B2 (en) Method for monitoring a first node in a communications network and monitoring system
US20090077455A1 (en) Transmission system
JP3208060B2 (en) Parallel dual electronic interlocking device
US6487695B1 (en) Method for providing fail-safe secure data transmission between a numerical control system and a spatially separate unit
US6725419B1 (en) Automation system and method for operating an automation system
JP5123968B2 (en) Communication control method, communication control program, and master communication device
JP4247791B2 (en) Ensuring maximum reaction time for complex or distributed safety and / or non-safety systems
JP5396812B2 (en) Transmission control apparatus and transmission control method
JP5886510B2 (en) Transmission control apparatus and transmission control method
JP2005073075A (en) Remote monitoring and control system
CN115687509A (en) Synchronization method of safety computer system and corresponding system and device
Portugal et al. A simulation model based on a stochastic petri net approach for dependability evaluation of profibus-dp networks
JPS62245340A (en) Detection of abnormality for electronic controller
JPH0711080U (en) Supervisory control system
JP3786045B2 (en) Control repeater for self-report receiver
Proenza et al. A first design for CANsistant: A mechanism to prevent inconsistent omissions in CAN in the presence of multiple errors
JP2008205899A (en) Transmission failure avoiding method in transmission/reception system

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20210113

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220912

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230726

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230731

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230810

R150 Certificate of patent or registration of utility model

Ref document number: 7332442

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150