JP2014098985A - Safety slave unit, control method thereof, control program thereof, and safety control system - Google Patents
Safety slave unit, control method thereof, control program thereof, and safety control system Download PDFInfo
- Publication number
- JP2014098985A JP2014098985A JP2012249490A JP2012249490A JP2014098985A JP 2014098985 A JP2014098985 A JP 2014098985A JP 2012249490 A JP2012249490 A JP 2012249490A JP 2012249490 A JP2012249490 A JP 2012249490A JP 2014098985 A JP2014098985 A JP 2014098985A
- Authority
- JP
- Japan
- Prior art keywords
- safety
- unit
- safety controller
- communication
- execution
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 28
- 238000004891 communication Methods 0.000 claims abstract description 143
- 230000005856 abnormality Effects 0.000 claims abstract description 99
- 238000004364 calculation method Methods 0.000 claims abstract description 25
- 238000012545 processing Methods 0.000 abstract description 79
- 230000006870 function Effects 0.000 description 87
- 238000003745 diagnosis Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 20
- 238000004092 self-diagnosis Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 12
- 238000013500 data storage Methods 0.000 description 5
- 238000005520 cutting process Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Landscapes
- Safety Devices In Control Systems (AREA)
Abstract
Description
本発明は、安全スレーブユニット、その制御方法、その制御プログラム、および安全制御システムに関する。 The present invention relates to a safety slave unit, a control method thereof, a control program thereof, and a safety control system.
近年、労働安全意識の高まりと共に、各種の安全ユニットが開発されている。安全ユニットは、安全コントローラ(セーフティコントローラ)、安全I/O(入出力)ターミナル等に相当する。例えば、安全コントローラは、一般的なプログラマブルコントローラに類似するロジック演算機能、入出力制御機能に加えて、安全面の自己診断機能を内蔵させることにより、その制御において高度な安全性および信頼性を確保したものである。安全コントローラは、自己診断結果により異常を検出した場合には、自己の制御が危険につながらないように、強制的に安全側の制御を行うような機能(フェールセーフ機能)を備えている。 In recent years, various safety units have been developed along with an increase in occupational safety awareness. The safety unit corresponds to a safety controller (safety controller), a safety I / O (input / output) terminal, or the like. For example, a safety controller ensures a high degree of safety and reliability in its control by incorporating a safety self-diagnosis function in addition to a logic operation function and input / output control function similar to a general programmable controller. It is a thing. The safety controller has a function (fail-safe function) for forcibly performing the control on the safe side so that the self-control does not lead to danger when an abnormality is detected from the self-diagnosis result.
また、安全I/Oターミナルにおいても、自己診断機能を有していて、自己診断結果により異常を検出した場合には自己の制御が危険につながらない制御をするといった、フェールセーフ機能を備えている。この機能により、安全ユニットを介して接続される切削機械や切断機械やアーム付き製造機ロボット等の動作が、例えば作業者に対して危険を及ぼさないように制御されている。 The safety I / O terminal also has a self-diagnosis function, and has a fail-safe function in which, when an abnormality is detected based on the self-diagnosis result, the self-control does not lead to danger. With this function, operations of a cutting machine, a cutting machine, an armed manufacturing machine robot, and the like connected via the safety unit are controlled so as not to pose a danger to an operator, for example.
ここで言う安全は、より具体的には、規格化されている安全基準を含む意味である。規格には、例えばIEC61508やEN規格などがある。IEC61508(プログラム可能な電子システムの機能安全に関する国際電気標準委員会)では、時間あたりの危険故障確率(失敗確率:Probability of Failure per Hour)を定義し、この確率によってSILレベル(Safety Integrity Level)を4段階に分類している。また、EN規格では、機械のリスクの大きさを評価し、リスク低減策を講じるように義務づけられていて、EN954−1では5つの安全カテゴリにて規定されている。安全コントローラ等は、このような安全基準のいずれかに対応したものである。 More specifically, the term “safety” here means to include standardized safety standards. Examples of standards include IEC61508 and EN standards. IEC61508 (International Electrotechnical Commission on Functional Safety of Programmable Electronic Systems) defines the probability of failure per hour (Probability of Failure per Hour), and the SIL level (Safety Integrity Level) is determined by this probability. There are four levels. Further, EN standards require that the risk level of a machine be evaluated and risk reduction measures be taken, and EN 954-1 specifies the safety categories. A safety controller or the like corresponds to one of these safety standards.
そして、従来、安全コントローラと安全I/Oターミナルとをネットワークで結んでなる安全制御システムについても知られている。安全制御システムにおいては、安全コントローラは、安全I/Oターミナルに対してネットワーク通信する通信マスタ機能を備えており、安全マスタと称されることもある。安全I/Oターミナルは、安全コントローラの通信マスタ機能との間でネットワーク通信機能、つまり、マスタに従って制御される通信スレーブ機能を備えており、安全スレーブと称されることもある。 Conventionally, a safety control system in which a safety controller and a safety I / O terminal are connected via a network is also known. In a safety control system, a safety controller has a communication master function for performing network communication with a safety I / O terminal, and is sometimes referred to as a safety master. The safety I / O terminal has a network communication function with the communication master function of the safety controller, that is, a communication slave function controlled according to the master, and is sometimes referred to as a safety slave.
また、各安全ユニットの接続端子には、オンオフ信号を出力するスイッチ等の安全入力機器と、制御信号出力を受けて駆動される安全出力機器との少なくとも一方が接続されている。安全入力機器の例としては、非常停止スイッチ、ライトカーテン、ドアスイッチ、2ハンドスイッチ等である。また、安全出力機器の例としてはセーフティリレーやコンタクタであり、これらの安全入力機器または安全出力機器も安全規格に対応している。 Also, at least one of a safety input device such as a switch that outputs an on / off signal and a safety output device that is driven by receiving a control signal output is connected to the connection terminal of each safety unit. Examples of the safety input device include an emergency stop switch, a light curtain, a door switch, and a two-hand switch. Examples of safety output devices are safety relays and contactors, and these safety input devices or safety output devices also comply with safety standards.
安全I/Oターミナルは、接続された安全入力機器から入力された信号に基づいて制御データ(入力データ)を生成し、生成した制御データを安全コントローラへネットワーク通信する。また、安全I/Oターミナルは、安全コントローラとの間でネットワーク通信することで、安全コントローラからの制御データを受信する。そして、安全コントローラは、安全I/Oターミナルからネットワーク通信により受信した安全入力機器の入力信号を入力し、予め記憶されたロジックプログラムによってその入力信号のオンオフを論理演算する。安全コントローラは、その演算結果に基づく出力信号をネットワーク通信により安全I/Oターミナルへ出力する。安全I/Oターミナルは、その出力信号を出力機器へ出力する。この一連の動作を繰り返し実行することにより、安全コントローラによりシステム全体が制御される。なお、安全コントローラと安全I/Oターミナルとの間の通信サイクルは、安全コントローラの繰り返し実行のサイクルと同期していても良いし、非同期でも良い。 The safety I / O terminal generates control data (input data) based on a signal input from the connected safety input device, and performs network communication of the generated control data to the safety controller. The safety I / O terminal receives control data from the safety controller through network communication with the safety controller. Then, the safety controller inputs the input signal of the safety input device received from the safety I / O terminal through network communication, and performs a logical operation on / off of the input signal by a pre-stored logic program. The safety controller outputs an output signal based on the calculation result to the safety I / O terminal through network communication. The safety I / O terminal outputs the output signal to the output device. By repeating this series of operations, the entire system is controlled by the safety controller. Note that the communication cycle between the safety controller and the safety I / O terminal may be synchronized with the cycle of repeated execution of the safety controller or may be asynchronous.
安全コントローラあるいはCPU(Central Processing Unit)ユニットにおけるロジック演算処理の対象となるロジックプログラムは、プログラマーにより予め作成される。ロジックプログラムとしては、ラダー、ファンクションブロックダイアグラム、シーケンシャル・ファンクション・チャート、ストラクチャード・テキスト、インストラクション・リストなどが挙げられる。プログラミング言語でいうと、インタプリタ型言語、スクリプト言語、アセンブリ言語、高級言語、Java(登録商標)言語と呼ばれるものであってもよい。このようなプログラミング言語で書かれたソースコードを、アセンブルやコンパイルなどの処理を行なってCPUに実行させる。 A logic program to be subjected to logic operation processing in a safety controller or CPU (Central Processing Unit) unit is created in advance by a programmer. Examples of logic programs include ladders, function block diagrams, sequential function charts, structured text, and instruction lists. In terms of programming language, it may be an interpreted language, a script language, an assembly language, a high-level language, or a Java (registered trademark) language. Source code written in such a programming language is subjected to processing such as assembling and compiling to be executed by the CPU.
また、安全I/Oターミナルに接続された安全出力機器としてのセーフティリレーやコンタクタは、操作ロボットや加工機械、切断機械等につながれていて、出力機器のリレーやコンタクタの接点がオン中は操作ロボット等が動作し、接点がオフ中は操作ロボット等が停止するようになっている。すなわち、安全コントローラは、安全出力機器をオンオフ制御することで、制御対象の操作ロボット等を制御する。 Safety relays and contactors as safety output devices connected to the safety I / O terminal are connected to operating robots, processing machines, cutting machines, etc. The operation robots are in contact with the output device relays and contactors. Etc. operate and the operation robot etc. stops while the contacts are off. That is, the safety controller controls an operation robot or the like to be controlled by performing on / off control of the safety output device.
具体的には、例えば、安全コントローラは、非常停止スイッチSWが正常に操作されたことを安全I/Oターミナルから通信により入力すると、制御対象が危険な動作をしないように安全出力機器をオフするか、安全側の状態に強制制御し、直ちに必要な安全処置を探る。また、安全コントローラは、非常停止スイッチSWまたは他の安全入力機器が異常有りの診断結果を入力すると、非常停止スイッチSWの操作有無または安全入力機器のオンオフ状態に関わらず、制御対象が危険な動作をしないようにその動作を停止するよう安全出力機器をオフするか、安全側の状態に強制制御し、直ちに必要な安全処置を探る。 Specifically, for example, when the safety controller inputs that the emergency stop switch SW has been normally operated by communication from the safety I / O terminal, the safety controller turns off the safety output device so that the control target does not perform a dangerous operation. Or, forcibly control to the safe state and immediately search for necessary safety measures. In addition, when the safety controller inputs a diagnosis result indicating that the emergency stop switch SW or other safety input device is abnormal, the safety controller operates in a dangerous manner regardless of whether the emergency stop switch SW is operated or the safety input device is on / off. The safety output device is turned off so as to stop the operation so that it does not occur, or the safety output device is forcibly controlled to find a necessary safety measure immediately.
ここで、上述した安全コントローラを通信マスタ局、安全I/Oターミナルを通信スレーブ局としたマスタ・スレーブ式の安全制御システムにおいては、安全スレーブの自己診断機能の作用により、安全規格に対応した安全用途スイッチ(SW)が接続された入力端子に関して異常ありの診断結果が得られた場合には、安全マスタ側の動作安全を確保するための対応策が安全スレーブに採用されている。 Here, in the master-slave type safety control system in which the above-mentioned safety controller is the communication master station and the safety I / O terminal is the communication slave station, the safety corresponding to the safety standard is achieved by the action of the self-diagnosis function of the safety slave. When an abnormality diagnosis result is obtained for the input terminal to which the application switch (SW) is connected, a countermeasure for ensuring operational safety on the safety master side is adopted for the safety slave.
例えば、特開2006−323831号公報(特許文献1)には、生の入力信号から制御データを生成する入力処理の過程で参照される異常診断結果を、その制御データを利用する側でも参照可能とし、それにより制御データに基づく多様な安全制御を可能とする安全スレーブユニットが開示されている。 For example, in Japanese Patent Laid-Open No. 2006-323831 (Patent Document 1), an abnormality diagnosis result referred to in the course of input processing for generating control data from a raw input signal can also be referred to on the side using the control data. Thus, a safety slave unit that enables various safety controls based on control data is disclosed.
ところで、通信機能をサポートした安全コントローラは、プログラムの実行と通信開始に時間的なズレが生じる場合がある。通信を開始するためには、I/Oデータ等の実際のデータ等を通信するに先立ち通信相手(安全I/Oターミナル)との間でコネクションを確立する必要がある。これは、安全コントローラが、通信の確立を待たずにプログラムを実行したとき、ファンクションブロックで論理エラーが発生するのを防止するためである。そして、多くの相手と通信を行う場合、個々の通信相手に対して適宜の順にコネクションを確立していくため、全ての通信相手との間でコネクションが確立するまでに時間がかかる。一方、電源投入にともない安全コントローラの初期設定等が終了し、ユーザプログラムをサイクリックに実行することを開始すると、このユーザプログラムの実行時に、必ずしも全ての通信相手とコネクションが確立しているとは限らず、一部の通信相手とはI/Oデータの通信ができない状態でユーザプログラムの演算実行が進むことがある。 By the way, in the safety controller that supports the communication function, there may be a time lag between the execution of the program and the start of communication. In order to start communication, it is necessary to establish a connection with a communication partner (safety I / O terminal) prior to communicating actual data such as I / O data. This is to prevent a logic error from occurring in the function block when the safety controller executes the program without waiting for establishment of communication. And when communicating with many other parties, since connections are established in an appropriate order with respect to individual communication partners, it takes time to establish connections with all communication partners. On the other hand, when the initial setting of the safety controller is completed with the power on, and the user program is started to be executed cyclically, the connection with all communication partners is not necessarily established when the user program is executed. Not limited to this, the execution of user programs may proceed in a state where I / O data cannot be communicated with some communication partners.
このような問題を解決するために、通信開始(通信の確立)を待ってからプログラムを実行する機能を持った安全コントローラが知られている。しかし、通信開始を待ってからプログラムを実行する機能を使っても、故障などによりコネクションが確立できない相手が存在すると、ユーザプログラム全体を実行することができなくなる。この問題発生を回避するため、あらかじめ設定した時間が経過した場合は、通信の開始を待たずにプログラムを実行する。ただし、その場合は、安全I/Oターミナルから期待されるI/Oデータを受信することができないため、安全コントローラ側では盲目的に安全状態にしなければならず、不要な異常を検知することとなる。 In order to solve such a problem, a safety controller having a function of executing a program after waiting for communication start (communication establishment) is known. However, even if a function for executing a program after waiting for the start of communication is used, if there is a partner whose connection cannot be established due to a failure or the like, the entire user program cannot be executed. In order to avoid this problem, the program is executed without waiting for the start of communication when a preset time has elapsed. However, in that case, the I / O data expected from the safety I / O terminal cannot be received, so the safety controller must blindly enter a safe state and detect unnecessary abnormalities. Become.
ここで、例えば、ファンクションブロックダイアグラムでプログラミングされた安全コントローラでは、安全I/Oターミナルから送信されるI/Oデータを取り込み、ファンクションブロック演算が行われる。上述したような安全スレーブの入力端子に関する異常(短絡、断線等)がある場合、および/または安全コントローラと安全スレーブとの通信の未確立または通信異常がある場合には、安全コントローラは、ファンクションブロック演算において使用すべきでない(無効な)I/Oデータを取り込んでしまう可能性がある。したがって、これを防止するために、安全コントローラ側において、当該入力端子に関する異常に対する解決策と、当該通信異常に対する解決策とを考慮することにより、有効なI/Oデータのときのみファンクションブロックの演算を実行する機能が必要とされている。 Here, for example, in a safety controller programmed with a function block diagram, I / O data transmitted from a safety I / O terminal is taken in and a function block operation is performed. When there is an abnormality (short circuit, disconnection, etc.) related to the input terminal of the safety slave as described above and / or when communication between the safety controller and the safety slave is not established or there is a communication abnormality, the safety controller There is a possibility that I / O data that should not be used in the calculation (invalid) may be taken in. Therefore, in order to prevent this, on the safety controller side, by considering the solution to the abnormality related to the input terminal and the solution to the communication abnormality, the function block calculation is performed only when the I / O data is valid. A function to execute is needed.
本発明は、上記のような問題を解決するためになされたものであって、ある局面の目的は、安全コントローラの処理負担を軽減することが可能な安全スレーブユニット、その制御方法、その制御プログラム、および安全制御システムを提供することである。 The present invention has been made to solve the above-described problems, and an object of one aspect thereof is a safety slave unit capable of reducing the processing load of the safety controller, a control method thereof, and a control program thereof. And providing a safety control system.
ある実施の形態に従う安全スレーブユニットは、入力信号に基づいて出力信号を出力する安全コントローラと通信するための通信部を含む。安全コントローラは、入力された信号に基づいて、ユーザプログラムを実行するか否かを判定するように構成されている。安全スレーブユニットは、安全コントローラにおけるユーザプログラムの実行を制御する制御部をさらに含む。制御部は、安全コントローラとの通信が確立したか否かを判定する通信判定部と、安全スレーブユニットに接続される機器からの入力信号に基づいて、異常の有無を判定する異常判定部と、通信判定部の判定結果と異常判定部の判定結果とに基づく実行制御情報であって、安全コントローラにおけるユーザプログラムの実行を制御するための実行制御情報と、機器における動作の有無に関する動作情報とを安全コントローラに送信する通信制御部とを含む。通信制御部は、安全コントローラに対する入力信号として、実行制御情報および動作情報を安全コントローラに送信する。 A safety slave unit according to an embodiment includes a communication unit for communicating with a safety controller that outputs an output signal based on an input signal. The safety controller is configured to determine whether to execute the user program based on the input signal. The safety slave unit further includes a control unit that controls execution of the user program in the safety controller. The control unit is a communication determination unit that determines whether communication with the safety controller has been established, an abnormality determination unit that determines whether there is an abnormality based on an input signal from a device connected to the safety slave unit, Execution control information based on the determination result of the communication determination unit and the determination result of the abnormality determination unit, execution control information for controlling the execution of the user program in the safety controller, and operation information on the presence or absence of operation in the device And a communication control unit that transmits to the safety controller. The communication control unit transmits execution control information and operation information to the safety controller as input signals to the safety controller.
好ましくは、制御部は、通信判定部の判定結果と異常判定部の判定結果とに基づいて、安全コントローラにユーザプログラムを実行させるか否かを判定する実行判定部をさらに含む。実行制御情報は、実行判定部の判定結果を含む。 Preferably, the control unit further includes an execution determination unit that determines whether to cause the safety controller to execute the user program based on the determination result of the communication determination unit and the determination result of the abnormality determination unit. The execution control information includes the determination result of the execution determination unit.
好ましくは、実行判定部は、通信判定部において安全コントローラとの通信が確立しているとの判定結果、かつ異常判定部において機器に異常なしとの判定結果に基づいて、安全コントローラにユーザプログラムを実行させると判定する。 Preferably, the execution determination unit loads the user program to the safety controller based on the determination result that the communication determination unit establishes communication with the safety controller and the abnormality determination unit determines that there is no abnormality in the device. It is determined to be executed.
好ましくは、実行判定部は、通信判定部において安全コントローラとの通信が確立していないとの判定結果、および異常判定部において機器に異常ありとの判定結果の少なくともいずれかに基づいて、安全コントローラにユーザプログラムを実行させないと判定する。 Preferably, the execution determination unit is based on at least one of a determination result that the communication determination unit has not established communication with the safety controller and a determination result that the abnormality determination unit has an abnormality in the device. It is determined that the user program is not executed.
好ましくは、実行判定部は、ユーザプログラムを実行させると判定した場合には、実行制御情報の論理値を高エネルギー側の論理値に設定し、ユーザプログラムを実行させないと判定した場合には、実行制御情報の論理値を高エネルギー側でない側の論理値に設定する。 Preferably, when the execution determining unit determines that the user program is to be executed, the execution control information is set to a logical value on the high energy side, and when it is determined not to execute the user program, the execution is performed Set the logical value of the control information to the logical value on the non-high energy side.
別の実施の形態に従うと、安全スレーブユニットの制御方法が提供される。安全スレーブユニットは、ファンクションブロックダイアグラムに従って入力信号に基づいて出力信号を出力する安全コントローラと通信するための通信インターフェイスを含む。安全コントローラは、入力された信号に基づいて、ユーザプログラムを実行するか否かを判定するように構成されている。安全スレーブユニットは、安全コントローラにおけるユーザプログラムの実行を制御するプロセッサをさらに含む。プロセッサが、安全コントローラとの通信が確立したか否かを判定するステップと、プロセッサが、安全スレーブユニットに接続される機器からの入力信号に基づいて、異常の有無を判定するステップと、プロセッサが、通信が確立したか否かの判定結果と異常の有無の判定結果とに基づく実行制御情報であって、安全コントローラにおけるユーザプログラムの実行を制御するための実行制御情報と、機器における動作の有無に関する動作情報とを安全コントローラに送信するステップとを含む。送信するステップは、安全コントローラに対する入力信号として、実行制御情報および動作情報を安全コントローラに送信することを含む。 According to another embodiment, a method for controlling a safety slave unit is provided. The safety slave unit includes a communication interface for communicating with a safety controller that outputs an output signal based on an input signal according to a function block diagram. The safety controller is configured to determine whether to execute the user program based on the input signal. The safety slave unit further includes a processor that controls execution of the user program in the safety controller. A processor determining whether communication with the safety controller has been established; a processor determining whether there is an abnormality based on an input signal from a device connected to the safety slave unit; , Execution control information based on the determination result of whether or not communication has been established and the determination result of whether there is an abnormality, execution control information for controlling the execution of the user program in the safety controller, and the presence or absence of operation in the device And transmitting operational information on to the safety controller. The step of transmitting includes transmitting execution control information and operation information to the safety controller as input signals to the safety controller.
さらに別の実施の形態に従うと、安全スレーブユニットの制御プログラムが提供される。安全スレーブユニットは、ファンクションブロックダイアグラムに従って入力信号に基づいて出力信号を出力する安全コントローラと通信するための通信インターフェイスを含む。安全コントローラは、入力された信号に基づいて、ユーザプログラムを実行するか否かを判定するように構成されている。安全スレーブユニットは、安全コントローラにおけるユーザプログラムの実行を制御するプロセッサをさらに含む。制御プログラムは、プロセッサに、安全コントローラとの通信が確立したか否かを判定するステップと、安全スレーブユニットに接続される機器からの入力信号が与えられる入力端子に関する異常の有無を判定するステップと、通信が確立したか否かの判定結果と異常の有無の判定結果とに基づく実行制御情報であって、安全コントローラにおけるユーザプログラムの実行を制御するための実行制御情報と、機器における動作の有無に関する動作情報とを安全コントローラに送信するステップとを実行させる。送信するステップは、安全コントローラに対する入力信号として、実行制御情報および動作情報を安全コントローラに送信することを含む。 According to yet another embodiment, a control program for the safety slave unit is provided. The safety slave unit includes a communication interface for communicating with a safety controller that outputs an output signal based on an input signal according to a function block diagram. The safety controller is configured to determine whether to execute the user program based on the input signal. The safety slave unit further includes a processor that controls execution of the user program in the safety controller. The control program includes a step of determining whether or not communication with the safety controller is established in the processor, a step of determining whether there is an abnormality related to an input terminal to which an input signal from a device connected to the safety slave unit is provided, , Execution control information based on the determination result of whether or not communication has been established and the determination result of whether there is an abnormality, execution control information for controlling the execution of the user program in the safety controller, and the presence or absence of operation in the device And transmitting the operation information on the safety controller to the safety controller. The step of transmitting includes transmitting execution control information and operation information to the safety controller as input signals to the safety controller.
さらに別の実施の形態に従う安全制御システムは、ファンクションブロックダイアグラムに従って入力信号に基づいて出力信号を出力する安全コントローラと、安全スレーブユニットとを含む。安全スレーブユニットは、安全コントローラと通信するための通信部と、安全コントローラにおけるファンクションブロックの実行を制御する制御部とを含む。制御部は、安全コントローラとの通信が確立したか否かを判定する通信判定部と、安全スレーブユニットに接続される機器からの入力信号が与えられる入力端子に関する異常の有無を判定する異常判定部と、通信判定部の判定結果と異常判定部の判定結果とに基づく実行制御情報であって、安全コントローラにおけるユーザプログラムの実行を制御するための実行制御情報と、機器における動作の有無に関する動作情報とを安全コントローラに送信する通信制御部とを含む。通信制御部は、安全コントローラに対する入力信号として、実行制御情報および動作情報を安全コントローラに送信する。安全コントローラは、実行制御情報および動作情報を受信する受信部と、受信した実行制御情報および動作情報に基づいて、ユーザプログラムを実行する演算部とを含む。演算部は、実行制御情報に基づいてユーザプログラムを実行するか否かを判定し、ユーザプログラムを実行すると判定した場合には、動作情報に基づいてファンクションブロックを実行する。 A safety control system according to yet another embodiment includes a safety controller that outputs an output signal based on an input signal according to a function block diagram, and a safety slave unit. The safety slave unit includes a communication unit for communicating with the safety controller and a control unit for controlling execution of the function block in the safety controller. The control unit includes a communication determination unit that determines whether communication with the safety controller is established, and an abnormality determination unit that determines whether there is an abnormality related to an input terminal to which an input signal from a device connected to the safety slave unit is given. Execution control information based on the determination result of the communication determination unit and the determination result of the abnormality determination unit, the execution control information for controlling the execution of the user program in the safety controller, and the operation information on the presence or absence of the operation in the device And a communication control unit that transmits to the safety controller. The communication control unit transmits execution control information and operation information to the safety controller as input signals to the safety controller. The safety controller includes a receiving unit that receives execution control information and operation information, and a calculation unit that executes a user program based on the received execution control information and operation information. The computing unit determines whether or not to execute the user program based on the execution control information, and executes the function block based on the operation information when determining to execute the user program.
ある局面によると、安全コントローラの処理負担を軽減することが可能となる。 According to a certain situation, it becomes possible to reduce the processing load of the safety controller.
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the following description, the same parts are denoted by the same reference numerals. Their names and functions are also the same. Therefore, detailed description thereof will not be repeated.
<A.システム構成>
図1は、本実施の形態に従う安全制御システム100の全体構成を示す概略図である。
<A. System configuration>
FIG. 1 is a schematic diagram showing an overall configuration of
図1を参照して、ここでは、安全コントローラ1と安全I/Oターミナル(以下、「安全スレーブ」とも称する。)3とがバス6で結ばれたバス型ネットワークを構成した安全制御システム100が示されている。
Referring to FIG. 1, here, there is shown a
本例においては、安全コントローラ1および安全スレーブ3には複数の安全入力機器4と安全出力機器5とが配線接続されている。
In this example, a plurality of
安全コントローラ1は、例えば、CPUユニットや電源ユニットやI/Oユニットや通信マスタユニットなどの複数のユニットが連結して構成されるビルディングブロックタイプである。各ユニットは、共通内部バスに接続されていて、安全コントローラ全体の制御を司るCPUユニットと他のユニットとの間でバス通信をし、データをやりとりすることができる。
The
安全コントローラ1は、通信マスタユニットを介して安全スレーブ3からネットワーク通信により入力した安全入力機器4の入力信号を入力し、予め記憶されたロジックプログラムによってその入力信号のオンオフを論理演算する。その演算結果に基づく出力信号を通信マスタユニットを介してネットワーク通信により安全スレーブ3へ出力する。安全スレーブ3は、その出力信号を安全出力機器5へ出力する。この一連の動作を繰り返し実行することにより、安全コントローラ1によりシステム全体が制御される。なお、安全コントローラ1と安全スレーブ3との間の通信サイクルは、安全コントローラ1の繰り返し実行のサイクルと同期しても良いし、非同期でも良い。
The
安全入力機器4には、非常停止スイッチ、ライトカーテン、ドアスイッチ、リミットスイッチ等が含まれ、安全出力機器5には、セーフティリレー、コンタクタ等が含まれる。
The
なお、本例においては、安全スレーブ3と安全入力機器4と安全出力機器5とが接続された構成について主に説明するが、安全コントローラ1に対してI/Oユニットを介して安全入力機器4および安全出力機器5が接続されていてもよい。なお、安全入力機器4および安全出力機器5を総称して安全入出力機器とも称する。
In this example, the configuration in which the
安全スレーブ3は、通常のPLC(なお、通常のPLCは、安全用途以外の通常用途で使われるコントローラを言い、安全コントローラを含まない。)のスレーブユニットと同様に、通信マスタ機能に対する通信動作を行う機能、接続された安全入力機器への入力動作を行う機能、接続された安全出力機器への出力動作を行う機能に加え、入出力端子のそれぞれに関する自己診断を行う機能を備えている。
The
各安全スレーブ3が有する自己診断機能は、自己の入力端子部の異常有無の診断に関する機能、その他通信機能などの様々な機能に関する自己診断や、入出力端子と安全入出力機器との間の配線状態が短絡や断線したことによる自己診断も行なうことができる。また、自己診断機能は、他の例として、各安全スレーブ3に、入出力端子とは別のテスト出力端子により、対応する安全入出力機器に対して、テスト出力端子から適宜信号を送り、その信号が対応する安全入力機器4を経由して、正しく返送されてきたかを読み取ることによって対応する安全入力機器4の状態が正常か異常かを監視するような機能であってもよい。
The self-diagnosis function that each
図1に示すシステム構成では、安全コントローラ1と安全スレーブ2とは、バス型ネットワークを介して互いに通信する場合について説明したがこれに限られず、バックプレーンバスを介して互いに通信してもよい。より具体的には、バックプレーンと称する剛性プレート上にバックプレーンバス(BUS)を敷設すると共に、このバックプレーンバス上には適当な間隔でユニット装着用コネクタを配列し、これに1台の安全コントローラと複数台の安全スレーブとを装着することで互いに通信可能に構成してもよい。また、安全コントローラ1および安全スレーブ2に無線通信機能を設けて、互いに無線で通信する構成が用いられてもよい。
In the system configuration shown in FIG. 1, the case where the
また、バス6にはシステムを構築するためのPLC(programmable logic controller)のプログラム設計支援装置が接続されていてもよい。プログラム設計支援装置は、例えば、I/Oウィザードによる対話形式の支援プログラムが実行可能なように設けられており、図例の汎用のノート型パソコンに限らず、ネットワークに接続可能なPDA(Personal Digital Assistant)などの携帯端末装置であってもよいし、デスクトップパソコンであってもよい。
The
この場合、プログラム設計支援装置は、少なくとも、プログラム設計支援装置全体を統括し制御するCPUと、マウス操作やキーボード操作等を含む入力操作部と、プログラム設計支援装置が備える画像表示器の表示画面に対する表示処理を行う表示部と、操作入力処理、所定の演算処理、または表示画面に対する画像処理等に使用されるワークRAMと、外部への通信インターフェースとして作用する通信部と、記憶装置とを含む。これらは、プログラム設計支援装置の内部バスに接続された形態で構成されている。記憶装置の所定の記憶領域には、例えば、I/Oウィザードプログラムが格納される。 In this case, the program design support apparatus corresponds to at least a CPU that controls and controls the entire program design support apparatus, an input operation unit including a mouse operation and a keyboard operation, and a display screen of an image display included in the program design support apparatus. A display unit that performs display processing, a work RAM that is used for operation input processing, predetermined arithmetic processing, image processing on a display screen, and the like, a communication unit that functions as an external communication interface, and a storage device are included. These are configured in a form connected to the internal bus of the program design support apparatus. For example, an I / O wizard program is stored in a predetermined storage area of the storage device.
<B.ハードウェア構成>
次に、安全スレーブ3の内部ハードウェア構成について説明する。
<B. Hardware configuration>
Next, the internal hardware configuration of the
図2は、本実施の形態に従う安全スレーブ3の内部ハードウェア構成を示す概略ブロック図である。
FIG. 2 is a schematic block diagram showing an internal hardware configuration of
図2を参照して、安全スレーブ3は、バス6に接続された安全マスタ(安全コントローラ)2またはプログラム設計支援装置とのデータ送受を行う通信インターフェイス(I/F)部21と、各種演算機能や故障診断機能等を実行し、安全スレーブ3全体を統括・制御する中央演算処理部20と、端子異常診断部22a,22bと、入力端子部23aと、出力端子部23bと、設定部25と、表示部26とを含む。
Referring to FIG. 2,
中央演算処理部20は、マイクロプロセッサ(MPU)20a、RAM(Random Access Memory)20b、ROM(Read Only Memory)20cを含んでいる。これらのマイクロプロセッサ(MPU)20a、RAM20b、ROM20cは、動作信頼性を保証するために二重化されている。
The
図3は、本実施の形態に従う安全スレーブ3の中央演算処理部20の処理全体を示すゼネラルフローチャートである。
FIG. 3 is a general flowchart showing the entire processing of
図3を参照して、中央演算処理部20の全体は2台のCPU(CPUA,CPUB)から構成されており、それらのCPUは、互いに同期を取りながら並列に動作して、電源投入直後に(ステップS10a,S10b)、初期処理および自己診断処理(ステップS12a,S12b)を実行する。そして、これらのCPUは、同期処理(ステップS14a,S14b)、自己診断処理(ステップS16a,S16b)、周辺処理(ステップS18a,S18b)、I/Oリフレッシュ処理(ステップS20a,S20b)を同時並行的に実行するように構成されている。
Referring to FIG. 3, the entire
ここで、「初期処理」とは、デバイス及びデータの初期化、保存データの読み出し等を行なう処理であり、「自己診断処理」とはハードウェア診断を行う処理である(ステップS12a,12b)。「同期処理」(ステップS14a,S14b)とは、2つのCPU間の時間的な同期処理(サイクル時間を一定にするためのWait処理を含む)、データ一致確認処理等を行なう処理である。また、自己診断処理(ステップS16a,S16b)はハードウェア診断等を行う処理である。また、周辺処理(ステップS18a,S18b)とは、外部メディア(メモリカード、RTC等)に対するアクセス処理や外部デバイス、ツール等との通信処理等を行う処理である。I/Oリフレッシュ処理(ステップS20a,S20b)とは、ローカル入出力(入出力ユニットを含む)の更新処理やリモートI/O入出力のデータ更新等を行う処理である。 Here, “initial processing” is processing for initializing devices and data, reading stored data, and the like, and “self-diagnosis processing” is processing for performing hardware diagnosis (steps S12a and 12b). The “synchronization process” (steps S14a and S14b) is a process for performing a temporal synchronization process between two CPUs (including a wait process for making the cycle time constant), a data matching confirmation process, and the like. The self-diagnosis process (steps S16a and S16b) is a process for performing hardware diagnosis and the like. The peripheral processing (steps S18a and S18b) is processing for performing access processing for external media (memory card, RTC, etc.), communication processing with external devices, tools, and the like. The I / O refresh process (steps S20a and S20b) is a process for updating local input / output (including input / output units), updating remote I / O input / output data, and the like.
再び、図2を参照して、入力端子部23aは、安全仕様に設計された安全入力機器4からの入力信号が与えられる1もしくは2以上の入力端子(端子1,端子2,・・・端子n)を有している。ここで、各端子は1もしくは2以上の端子により構成される。安全入力機器4は、安全仕様となっているもので、具体的にはいわゆる安全用途スイッチなどをいう。安全用途の非常停止スイッチは、危険な状態になったときに押され、接点が開状態になってOFFとなり、LOW信号を出力する。逆に、当該スイッチは、安全な状態では押されず、接点が閉状態になってON信号(HIGH信号)を出力する。このように安全用途スイッチは、危険なときにLOW信号を出すように設計されている。
Referring to FIG. 2 again, the input terminal portion 23a is provided with one or more input terminals (
端子異常診断部22aは、入力端子部23aの各入力端子(端子1,端子2,・・・端子n)に関する異常の有無を診断するために使用されるものであって、例えば特開2004−297997公報に示されるように、様々な自己診断回路を含んでいる。ここで、「各入力端子に関する異常」とは、入力端子に接続された安全入力機器4の異常のみならず、端子自体の異常やその他様々な異常を含んでいる。端子異常診断部22aは、安全入力機器4側が自己診断機能をもっているなら、各端子に対応する安全入力機器4の自己診断結果を取り込んで、各入力機器をそれぞれ個別に異常があるか否かを診断する。また、端子異常診断部22aは、入力端子と安全入力機器4との間の配線に異常(断線、短絡など)があるか否かを各端子それぞれ別個に診断する。すなわち、端子異常診断部22aは、1系統の入力端子それぞれに別個に異常有無の状態(ステータス)を診断する。
The terminal
出力端子部23bは、それぞれ安全仕様に設計された安全出力機器5への出力信号が与えられる1もしくは2以上の出力端子(端子1,端子2,・・・端子m)を有している。
The
端子異常診断部22bは、出力端子部23bの各出力端子(端子1,端子2,・・・端子m)に関する異常の有無を診断するために使用される。この端子異常診断部22bも、各端子に対する安全出力機器5が自己診断機能を持っているなら、各機器からそれぞれの自己診断結果を取り込んで、各出力機器をそれぞれ個別に異常があるか否かを診断する。また、端子異常診断部22bは、出力端子と安全出力機器5との間の配線に異常があるか否かを各端子それぞれ別個に診断する。つまり、入力系と同時に、1系統の端子それぞれに別個に異常有無の状態(ステータス)を診断する。
The terminal abnormality diagnosis unit 22b is used for diagnosing the presence / absence of abnormality related to each output terminal (
設定部25は、当該安全コントローラの動作に関する各種の設定を行うためのものであり、テンキー、ファンクションキー、キースイッチ等々で構成されている。
The setting
表示部26は、当該安全コントローラの動作に関する各種の表示を行うためのものであり、適宜なサイズの液晶表示器、動作表示用のランプ等で構成されている。
The
なお、安全コントローラ1の内部ハードウェア構成は、安全スレーブ3の内部ハードウェア構成と同様のものを採用することができる。ただし、図3で説明した安全スレーブ3の中央演算部の処理全体を示すゼネラルフローチャートが若干異なる。具体的には、安全コントローラ1の中央演算部に含まれる2つのCPUは、図3におけるI/Oリフレッシュ処理(ステップS20a,S20b)の後に、さらに、演算処理を同時並行的に実行するように構成されている点が異なる。「演算処理」とは、ユーザが任意に作成したユーザプログラムを実行する処理である。
Note that the internal hardware configuration of the
<C.機能構成>
図4は、本実施の形態に従う安全制御システム100によって実現される機能の構成を表すブロック図である。本例では、安全コントローラ1におけるロジック演算処理の対象となるロジックプログラム(ユーザによって作成されるユーザプログラム)が、ファンクションブロックダイアグラム(以下、「FBD」とも称する。)である場合について説明する。FBDを構成するための少なくとも1つのファンクションブロックは、それぞれ、入力された少なくとも1つの信号に対して当該ファンクションロックに対して予め定められた機能に応じた所定の処理を施した少なくとも1つの信号を出力する。なお、ユーザプログラムは、FBDに限られず、ラダー、シーケンシャル・ファンクション・チャート、ストラクチャード・テキスト、インストラクション・リスト、C言語などでプログラミングされていてもよい。
<C. Functional configuration>
FIG. 4 is a block diagram showing a configuration of functions realized by
図4を参照して、まず、安全スレーブ2の機能構成について説明する。安全スレーブ2は、主たる機能構成として、通信判定部202と、異常判定部204と、取得部206と、通信制御部208と、実行判定部210と、データ格納部212とを含む。これらの機能は、基本的には、安全スレーブ2の中央演算処理部20がプログラムを実行し、安全スレーブ2の構成要素へ指令を与えることなどによって実現される。すなわち、中央演算処理部20は安全スレーブ2の動作全体を制御する制御部としての機能を有する。なお、これらの機能構成の一部または全部はハードウェアで実現されてもよい。
First, the functional configuration of the
通信判定部202は、安全コントローラ1との通信が確立したか否かを判定する。より具体的には、通信判定部202は、通信インターフェイス21を介して安全コントローラ1から送信された通信設定情報(例えば、安全コントローラ1を識別するための識別情報など)を受信した場合には、通信が確立したと判定し、当該通信設定情報を受信していない場合には、通信が確立していないと判定する。
The
異常判定部204は、安全スレーブ2に接続される機器からの入力信号に基づいて、異常の有無を判定する。異常判定部204は、ある局面では、安全入力機器4からの入力信号が与えられる入力端子に関する異常の有無を判定する。より具体的には、異常判定部204は、端子異常診断部22aに対して上述したような異常診断を実行させて、当該異常判定を行なう。
The
取得部206は、安全入力機器4における動作の有無に関する動作情報を安全入力機器4から取得する。より具体的には、取得部206は、入力端子部23aを介して安全入力機器4それぞれ個別のオンオフ動作に関する動作情報(動作有り無し信号)を取得する。
The
通信制御部208は、通信判定部202の判定結果と異常判定部204の判定結果とに基づく実行制御情報であって、安全コントローラ1におけるユーザプログラムの実行を制御するための実行制御情報と、安全入力機器4の動作情報とを安全コントローラ1に送信する。当該実行制御情報は、後述する実行判定部210の判定結果を含む。なお、通信制御部208は、実行制御情報と動作情報とをデータ格納部212に格納してもよい。
The
実行判定部210は、通信判定部202の判定結果と異常判定部204の判定結果とに基づいて、安全コントローラ1にユーザプログラムを実行させるか否かを判定する。より具体的には、実行判定部210は、通信判定部202において安全コントローラ1との通信が確立しているとの判定結果、かつ異常判定部204において安全入力機器4に異常なしとの判定結果に基づいて、安全コントローラ1にユーザプログラムを実行させると判定する。また、実行判定部210は、通信判定部202において安全コントローラ1との通信が確立していないとの判定結果、および異常判定部204において安全入力機器4に異常ありとの判定結果の少なくともいずれかに基づいて、安全コントローラ1にユーザプログラムを実行させないと判定する。
The
実行判定部210は、別の局面では、安全コントローラ1にユーザプログラムを実行させると判定した場合には、実行制御情報の論理値を高エネルギー側の”1”(”HIGH”)に設定し、当該ユーザプログラムを実行させないと判定した場合には、実行制御情報の論理値を高エネルギー側ではない側の”0”(”LOW”)に設定する。
In another aspect, when the
次に、安全コントローラ1の機能構成について説明する。安全コントローラ1は、主たる機能構成として、通信制御部102と、演算部104と、データ格納部106とを含む。また、安全コントローラ1は、ハードウェア構成として、安全スレーブ2と通信するための通信インターフェイス11を含む。これらの機能は、基本的には、安全コントローラ1の中央演算処理部10がプログラムを実行し、安全コントローラ1の構成要素へ指令を与えることなどによって実現される。すなわち、中央演算処理部10は安全コントローラ1の動作全体を制御する制御部としての機能を有する。なお、これらの機能構成の一部または全部はハードウェアで実現されていてもよい。
Next, the functional configuration of the
通信制御部102は、安全コントローラ1と安全スレーブ2との通信が確立している場合には、通信インターフェイス11を介して実行制御情報および動作情報を受信する。通信制御部102は、受信した実行制御情報と動作情報とをデータ格納部106に格納する。
The
演算部104は、受信した実行制御情報および動作情報に基づいて、ユーザプログラムを実行する。より具体的には、演算部104は、受信した実行制御情報に基づいてユーザプログラムを実行するか否かを判定する。そして、演算部104は、ユーザプログラムを実行すると判定した場合には、受信した動作情報に基づいてユーザプログラムを実行する。より具体的には、演算部104は、図5に示すような機能を有するファンクションブロックの演算を実行する。
The
図5は、本実施の形態に従うファンクションブロックの機能を説明するための図である。 FIG. 5 is a diagram for describing the function of the function block according to the present embodiment.
図5を参照して、演算部104は、「Activate」の入力の論理値が”1”(”HIGH)である場合には、当該ファンクションブロックの演算を実行し、「Activate」の入力の論理値が”0”(”LOW”)である場合には、当該ファンクションブロックの演算を実行しない。演算部104は、この「Activate」への入力信号として、実行制御情報を使用し、「Input0」への入力信号として、動作情報を使用する。したがって、演算部104は、実行制御情報の論理値が”1”である場合には、「Input0」に入力される動作情報に基づいて、ファンクションブロックを実行し、実行制御情報の論理値が”0”である場合には、ファンクションブロックを実行しないように構成されている。
Referring to FIG. 5, when the logic value of the “Activate” input is “1” (“HIGH”), the
より具体的には、演算部104は、安全入力機器4の入力端子に関して異常が無く、かつ安全コントローラ1と安全スレーブ2との通信が確立している場合には、「Input0」に入力される信号(動作情報)は有効なものであるため、ファンクションブロックの演算を実行する。一方、演算部104は、安全入力機器4の入力端子に関して異常があるか、および/または安全コントローラ1と安全スレーブ2との通信が確立していない場合には、「Input0」に入力される信号(動作情報)は無効なもの(使用すべきでないもの)であるため、ファンクションブロックの演算を実行しない。
More specifically, the
再び、図4を参照して、通信制御部102は、別の局面では、通信が確立していない、または通信異常が発生していると判断した場合には、受信した動作情報の論理値を”0”に設定してもよい(動作情報をクリアしてもよい)。これにより、安全制御システム100を安全状態に保持することができる。
Referring to FIG. 4 again, in another aspect, when
<D.処理手順>
本実施の形態に従う安全制御システム100において安全コントローラ1がファンクションブロックの演算を実行するまでの処理の流れについて説明する。
<D. Processing procedure>
The flow of processing until
図6は、本実施の形態に従う安全制御システム100において実行される制御処理手順を示すフローチャートである。以下の各ステップは、安全スレーブ2の中央演算処理部20がメモリ(ROM、RAMなど)に格納されたプログラムを実行するとともに、安全コントローラ1の中央演算処理部10がメモリ(ROM、RAMなど)に格納されたプログラムを実行することによって実現される。
FIG. 6 is a flowchart showing a control processing procedure executed in
図6を参照して、安全スレーブ2の中央演算処理部20は、安全コントローラ1との通信が確立したか否かを判定する(ステップS102)。より具体的には、中央演算処理部20は、通信インターフェイス21を介して安全コントローラ1から送信された通信設定情報を受信したか否か判定することで、当該判定を行なう。
Referring to FIG. 6,
中央演算処理部20は、通信が確立していないと判定した場合には(ステップS102においてNO)、後述するステップS110の処理を実行する。これに対して、中央演算処理部20は、通信が確立したと判定した場合には(ステップS102においてYES)、安全スレーブ2に接続された安全入力機器4の実際の動作状態を示す入力データ(動作情報)を取得する(ステップS104)。
If the
次に、中央演算処理部20は、端子異常診断部22aを介して入力端子に関する異常の有無を判定する(ステップS106)。より具体的には、中央演算処理部20は、入力端子それぞれ個別に、安全入力機器4側における自己診断結果信号を取得して異常の有無を判定するか、または配線上の異常有無などを判定する。この異常判定処理においては、安全入力機器4の異常のみならず、端子部の1つ1つの入力端子それぞれの異常、さらには必要な様々な異常の判定が行われる。
Next, the
入力端子に異常がある場合には(ステップS106においてYES)、中央演算処理部20は、安全コントローラ1におけるファンクションブロックの演算の実行を制御するための実行制御情報の論理値を”0”(”LOW”)に設定する(ステップS110)。すなわち、中央演算処理部20は、安全コントローラ1との通信が確立していないとの判定結果、または入力端子に異常があるとの判定結果を受けて、安全コントローラ1にファンクションブロックの演算を実行させないように当該実行制御情報の論理値を設定する。
If there is an abnormality in the input terminal (YES in step S106), the
これに対して、入力端子に異常がない場合には(ステップS106においてNO)、中央演算処理部20は、実行制御情報の論理値を”1”(”HIGH”)に設定する(ステップS108)。すなわち、中央演算処理部20は、安全コントローラ1との通信が確立しているとの判定結果、かつ入力端子に異常がないとの判定結果に基づいて、安全コントローラ1にファンクションブロックの演算を実行させるように当該実行制御情報の論理値を設定する。
On the other hand, when there is no abnormality in the input terminal (NO in step S106), the
次に、中央演算処理部20は、通信インターフェイス21を介して、実行制御情報および安全入力機器4から取得した動作情報を、安全コントローラ1におけるファンクションブロックに入力される入力信号として安全コントローラ1に送信する(ステップS112)。
Next, the
次に、安全コントローラ1の中央演算処理部10は、通信インターフェイス11を介して、実行制御情報および動作情報を受信する(ステップS114)。次に、中央演算処理部10は、実行制御情報の論理値が”1”に設定されているか否かを判定する(ステップS116)。すなわち、中央演算処理部10は、実行制御情報がファンクションブロックの演算を実行するように設定されているか否かを判定する。
Next, the
実行制御情報の論理値が”1”に設定されている場合には(ステップS116においてYES)、中央演算処理部20は、ファンクションブロックの演算を実行する(ステップS118)。これに対して、実行制御情報の論理値が”1”に設定されていない(つまり、論理値が”0”に設定されている)場合には(ステップS116においてNO)、中央演算処理部20は、ファンクションブロックの演算を実行しない(ステップS120)。そして、中央演算処理部20は、ファンクションブロックの演算実行までの処理を終了する。
If the logical value of the execution control information is set to “1” (YES in step S116),
中央演算処理部20は、ファンクションブロックの演算を実行した場合には、その後、ファンクションブロックの実行結果としての出力信号を安全スレーブ2に送信し、安全スレーブ2は受信した出力信号を安全出力機器5に出力する。
When the
上記では、「ファンクションブロックの演算を実行させる」ことを、実行制御情報の論理値のうち高エネルギー側の“1”(”HIGH”)に対応づけている。そのため、実行制御情報の論理値は、実際に通信が確立し、かつ入力端子に異常なしを確認した上で積極的に「ファンクションブロックの演算を実行させる」と判定されない限り、高エネルギー側の”1”にはならないため、実行制御情報は高い信頼性をもつ。例えば、電源投入直後の場合など、上記判定がなされていない状態において、ファンクションブロックの演算を実行させることを示すデータが誤って安全コントローラ1に送信されることもない。
In the above description, “execute the function block calculation” is associated with “1” (“HIGH”) on the high energy side of the logical value of the execution control information. For this reason, the logical value of the execution control information is “high-energy-side” unless it is determined that the communication is actually established and the input terminal is confirmed to be normal and the function block operation is positively executed. Since it is not 1 ″, the execution control information has high reliability. For example, in a state where the above determination has not been made, such as immediately after the power is turned on, data indicating that the calculation of the function block is executed is not erroneously transmitted to the
なお、上記では、中央演算処理部20は、ステップS102において通信確立の判定処理を実行した後に、ステップS104およびS106において、動作情報の取得処理および入力端子の異常診断処理を実行する場合について説明したが、これに限られない。中央演算処理部20は、ステップS104およびS106の処理を実行後に、ステップS102を実行する場合であってもよい。あるいは、中央演算処理部20は、ステップS102の通信判定処理とステップS106の異常判定処理とを同時並行的に実行する場合であってもよい。
In the above description, the case where the
<E.実施の形態の効果>
本実施の形態によると、安全コントローラ側では、有効な入力データのみを使用してファンクションブロックを実行するため、ファンクションブロックの不要な実行エラーを発生させずに済むため、装置の稼働率を維持することができる。
<E. Effects of the embodiment>
According to the present embodiment, since the function block is executed using only valid input data on the safety controller side, it is not necessary to generate an unnecessary execution error of the function block, so that the operation rate of the apparatus is maintained. be able to.
また、安全スレーブから通信確立の判定結果および入力端子の異常判定結果が考慮された上で、有効性が判定された入力データが送信されるため、安全コントローラ側で新たに入力データの有効性を判定するためのファンクションブロックが不要になる。そのため、安全コントローラ側の処理負担が軽減される。特に、1台の安全コントローラに対してネットワーク上に多数の安全スレーブが接続された場合でも、安全コントローラ側の処理負担が過度に増大することもない。また、ユーザのプログラミングの迷い、および誤ったプログラミングを防止することもできる。さらに、安全コントローラのメモリ消費量を増大させることもない。 In addition, since the safety slave sends the input data for which the validity has been determined after taking into consideration the communication establishment judgment result and the input terminal abnormality judgment result, the safety controller side newly increases the validity of the input data. A function block for determination is unnecessary. Therefore, the processing load on the safety controller side is reduced. In particular, even when a large number of safety slaves are connected to a single safety controller on the network, the processing load on the safety controller side does not increase excessively. In addition, it is possible to prevent user's programming error and incorrect programming. Furthermore, the memory consumption of the safety controller is not increased.
<F.その他の実施の形態>
上述した実施の形態では、安全スレーブ2に安全入力機器4が接続されている場合について説明したが、これに限られない。例えば、安全スレーブ2に接続される入力機器として、エンコーダ入力機器、温度センサなどが接続されていてもよい。この場合、安全スレーブ2は、これらの入力機器からの入力信号が与えられる入力端子に関する異常の有無を判定する。安全スレーブ2は、入力機器における動作の有無に関する動作情報を入力機器から取得し、実行制御情報と、動作情報とを安全コントローラ1に送信してもよい。
<F. Other Embodiments>
In the above-described embodiment, the case where the
また、上述した実施の形態では、入力端子部23aを介して端子異常診断部22aに安全入力機器4が接続されている場合について説明したが、これに限られない。例えば、端子異常診断部22aに、安全入力機器4が接続されており、当該安全入力機器4からの入力信号を直接取得する場合であってもよい。
Moreover, although embodiment mentioned above demonstrated the case where the
なお、安全スレーブ2は、安全出力機器5(あるいは出力機器)からの入力信号に基づいて、異常の有無を判定してもよい。安全スレーブ2は、当該出力機器における動作の有無に関する動作情報を当該出力機器から取得し、実行制御情報と、動作情報とを安全コントローラ1に送信してもよい。
The
なお、コンピュータを機能させて、上述のフローチャートで説明したような制御を実行させるプログラムを提供することもできる。このようなプログラムは、コンピュータに付属するフレキシブルディスク、CD−ROM、ROM、RAMおよびメモリカードなどの一時的でないコンピュータ読取り可能な記録媒体にて記録させて、プログラム製品として提供することもできる。あるいは、コンピュータに内蔵するハードディスクなどの記録媒体にて記録させて、プログラムを提供することもできる。また、ネットワークを介したダウンロードによって、プログラムを提供することもできる。 It is also possible to provide a program that causes a computer to function and execute control as described in the above flowchart. Such a program can be recorded on a non-transitory computer-readable recording medium such as a flexible disk, a CD-ROM, a ROM, a RAM, and a memory card attached to the computer and provided as a program product. Alternatively, the program can be provided by being recorded on a recording medium such as a hard disk built in the computer. A program can also be provided by downloading via a network.
プログラムは、コンピュータのオペレーティングシステム(OS)の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずOSと協働して処理が実行される。このようなモジュールを含まないプログラムも、本実施の形態にかかるプログラムに含まれ得る。 The program may be a program module that is provided as a part of an operating system (OS) of a computer and that calls necessary modules in a predetermined arrangement at a predetermined timing to execute processing. In that case, the program itself does not include the module, and the process is executed in cooperation with the OS. A program that does not include such a module can also be included in the program according to the present embodiment.
また、本実施の形態に従うプログラムは他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本実施の形態に従うプログラムに含まれ得る。 The program according to the present embodiment may be provided by being incorporated in a part of another program. Even in this case, the program itself does not include the module included in the other program, and the process is executed in cooperation with the other program. Such a program incorporated in another program can also be included in the program according to the present embodiment.
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
1 安全コントローラ、2 安全スレーブ、4 安全入力機器、5 安全出力機器、6 バス、10,20 中央演算処理部、11,21 通信インターフェイス、20a MPU、20b RAM、20c ROM、21 通信インターフェイス部、22a,22a,22b,22b 端子異常診断部、23a 入力端子部、23b 出力端子部、25 設定部、26 表示部、100 安全制御システム、102,208 通信制御部、104 演算部、106,212 データ格納部、202 通信判定部、204 異常判定部、206 取得部、210 実行判定部。
1 safety controller, 2 safety slave, 4 safety input device, 5 safety output device, 6 buses, 10, 20 central processing unit, 11, 21 communication interface, 20a MPU, 20b RAM, 20c ROM, 21 communication interface unit,
Claims (8)
入力信号に基づいて出力信号を出力する安全コントローラと通信するための通信部を備え、
前記安全コントローラは、入力された信号に基づいて、ユーザプログラムを実行するか否かを判定するように構成されており、
前記安全スレーブユニットは、
前記安全コントローラにおける前記ユーザプログラムの実行を制御する制御部をさらに備え、
前記制御部は、
前記安全コントローラとの通信が確立したか否かを判定する通信判定部と、
前記安全スレーブユニットに接続される機器からの入力信号に基づいて、異常の有無を判定する異常判定部と、
前記通信判定部の判定結果と前記異常判定部の判定結果とに基づく実行制御情報であって、前記安全コントローラにおける前記ユーザプログラムの実行を制御するための前記実行制御情報と、前記機器における動作の有無に関する動作情報とを前記安全コントローラに送信する通信制御部とを含み、
前記通信制御部は、前記安全コントローラに対する前記入力信号として、前記実行制御情報および前記動作情報を前記安全コントローラに送信する、安全スレーブユニット。 A safety slave unit,
A communication unit for communicating with a safety controller that outputs an output signal based on an input signal,
The safety controller is configured to determine whether to execute a user program based on an input signal,
The safety slave unit is
A control unit for controlling execution of the user program in the safety controller;
The controller is
A communication determination unit for determining whether communication with the safety controller is established;
Based on an input signal from a device connected to the safety slave unit, an abnormality determination unit that determines whether there is an abnormality,
Execution control information based on the determination result of the communication determination unit and the determination result of the abnormality determination unit, the execution control information for controlling the execution of the user program in the safety controller, and the operation of the device A communication control unit that transmits operation information on presence / absence to the safety controller,
The communication control unit is a safety slave unit that transmits the execution control information and the operation information to the safety controller as the input signal to the safety controller.
前記実行制御情報は、前記実行判定部の判定結果を含む、請求項1に記載の安全スレーブユニット。 The control unit further includes an execution determination unit that determines whether to cause the safety controller to execute the user program based on a determination result of the communication determination unit and a determination result of the abnormality determination unit,
The safety slave unit according to claim 1, wherein the execution control information includes a determination result of the execution determination unit.
前記安全スレーブユニットは、入力信号に基づいて出力信号を出力する安全コントローラと通信するための通信インターフェイスを備え、
前記安全コントローラは、入力された信号に基づいて、ユーザプログラムを実行するか否かを判定するように構成されており、
前記安全スレーブユニットは、
前記安全コントローラにおける前記ユーザプログラムの実行を制御するプロセッサをさらに備え、
前記プロセッサが、前記安全コントローラとの通信が確立したか否かを判定するステップと、
前記プロセッサが、前記安全スレーブユニットに接続される機器からの入力信号に基づいて、異常の有無を判定するステップと、
前記プロセッサが、前記通信が確立したか否かの判定結果と前記異常の有無の判定結果とに基づく実行制御情報であって、前記安全コントローラにおける前記ユーザプログラムの実行を制御するための前記実行制御情報と、前記機器における動作の有無に関する動作情報とを前記安全コントローラに送信するステップとを含み、
前記送信するステップは、前記安全コントローラに対する前記入力信号として、前記実行制御情報および前記動作情報を前記安全コントローラに送信することを含む、安全スレーブユニットの制御方法。 A method for controlling a safety slave unit,
The safety slave unit includes a communication interface for communicating with a safety controller that outputs an output signal based on an input signal,
The safety controller is configured to determine whether to execute a user program based on an input signal,
The safety slave unit is
A processor for controlling execution of the user program in the safety controller;
The processor determining whether communication with the safety controller has been established;
The processor determines whether there is an abnormality based on an input signal from a device connected to the safety slave unit; and
The execution control information for controlling execution of the user program in the safety controller, wherein the processor is execution control information based on a determination result of whether or not the communication is established and a determination result of the presence or absence of the abnormality Transmitting information and operation information regarding the presence or absence of operation in the device to the safety controller,
The step of transmitting includes transmitting the execution control information and the operation information to the safety controller as the input signal to the safety controller.
前記安全スレーブユニットは、入力信号に基づいて出力信号を出力する安全コントローラと通信するための通信インターフェイスを備え、
前記安全コントローラは、入力された信号に基づいて、ユーザプログラムを実行するか否かを判定するように構成されており、
前記安全スレーブユニットは、
前記安全コントローラにおける前記ユーザプログラムの実行を制御するプロセッサをさらに備え、
前記制御プログラムは、前記プロセッサに、
前記安全コントローラとの通信が確立したか否かを判定するステップと、
前記安全スレーブユニットに接続される機器からの入力信号に基づいて、異常の有無を判定するステップと、
前記通信が確立したか否かの判定結果と前記異常の有無の判定結果とに基づく実行制御情報であって、前記安全コントローラにおける前記ユーザプログラムの実行を制御するための前記実行制御情報と、前記機器における動作の有無に関する動作情報とを前記安全コントローラに送信するステップとを実行させ、
前記送信するステップは、前記安全コントローラに対する前記入力信号として、前記実行制御情報および前記動作情報を前記安全コントローラに送信することを含む、安全スレーブユニットの制御プログラム。 A safety slave unit control program,
The safety slave unit includes a communication interface for communicating with a safety controller that outputs an output signal based on an input signal,
The safety controller is configured to determine whether to execute a user program based on an input signal,
The safety slave unit is
A processor for controlling execution of the user program in the safety controller;
The control program is stored in the processor.
Determining whether communication with the safety controller has been established;
Determining whether there is an abnormality based on an input signal from a device connected to the safety slave unit; and
Execution control information based on a determination result on whether or not the communication has been established and a determination result on whether or not there is an abnormality, the execution control information for controlling execution of the user program in the safety controller, and Transmitting the operation information regarding the presence or absence of operation in the device to the safety controller,
The transmitting step includes transmitting the execution control information and the operation information to the safety controller as the input signal to the safety controller.
入力信号に基づいて出力信号を出力する安全コントローラと、安全スレーブユニットとを備え、
前記安全スレーブユニットは、
前記安全コントローラと通信するための通信部と、
前記安全コントローラにおけるユーザプログラムの実行を制御する制御部とを備え、
前記制御部は、
前記安全コントローラとの通信が確立したか否かを判定する通信判定部と、
前記安全スレーブユニットに接続される機器からの入力信号に基づいて、異常の有無を判定する異常判定部と、
前記通信判定部の判定結果と前記異常判定部の判定結果とに基づく実行制御情報であって、前記安全コントローラにおける前記ユーザプログラムの実行を制御するための前記実行制御情報と、前記機器における動作の有無に関する動作情報とを前記安全コントローラに送信する通信制御部とを含み、
前記通信制御部は、前記安全コントローラに対する前記入力信号として、前記実行制御情報および前記動作情報を前記安全コントローラに送信し、
前記安全コントローラは、
前記実行制御情報および前記動作情報を受信する受信部と、
受信した前記実行制御情報および前記動作情報に基づいて、前記ユーザプログラムを実行する演算部とを備え、
前記演算部は、前記実行制御情報に基づいて前記ユーザプログラムを実行するか否かを判定し、前記ユーザプログラムを実行すると判定した場合には、前記動作情報に基づいて前記ユーザプログラムを実行する、安全制御システム。 A safety control system,
A safety controller that outputs an output signal based on an input signal and a safety slave unit are provided.
The safety slave unit is
A communication unit for communicating with the safety controller;
A control unit that controls execution of a user program in the safety controller,
The controller is
A communication determination unit for determining whether communication with the safety controller is established;
Based on an input signal from a device connected to the safety slave unit, an abnormality determination unit that determines whether there is an abnormality,
Execution control information based on the determination result of the communication determination unit and the determination result of the abnormality determination unit, the execution control information for controlling the execution of the user program in the safety controller, and the operation of the device A communication control unit that transmits operation information on presence / absence to the safety controller,
The communication control unit transmits the execution control information and the operation information to the safety controller as the input signal to the safety controller,
The safety controller is
A receiving unit for receiving the execution control information and the operation information;
Based on the received execution control information and the operation information, a calculation unit that executes the user program,
The arithmetic unit determines whether to execute the user program based on the execution control information, and when determining to execute the user program, executes the user program based on the operation information; Safety control system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012249490A JP6163735B2 (en) | 2012-11-13 | 2012-11-13 | SAFE SLAVE UNIT, ITS CONTROL METHOD, CONTROL PROGRAM, AND SAFETY CONTROL SYSTEM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012249490A JP6163735B2 (en) | 2012-11-13 | 2012-11-13 | SAFE SLAVE UNIT, ITS CONTROL METHOD, CONTROL PROGRAM, AND SAFETY CONTROL SYSTEM |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014098985A true JP2014098985A (en) | 2014-05-29 |
JP6163735B2 JP6163735B2 (en) | 2017-07-19 |
Family
ID=50940967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012249490A Active JP6163735B2 (en) | 2012-11-13 | 2012-11-13 | SAFE SLAVE UNIT, ITS CONTROL METHOD, CONTROL PROGRAM, AND SAFETY CONTROL SYSTEM |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6163735B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108604084A (en) * | 2016-02-10 | 2018-09-28 | 菲尼克斯电气公司 | Method and apparatus for data processing and transmission in the theft-resistant link chain of safety system of monitoring and controlling |
JP2021534507A (en) * | 2018-08-21 | 2021-12-09 | ピルツ ゲーエムベーハー アンド コー.カーゲー | An automated system that monitors processes that require safety |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11163885A (en) * | 1997-11-28 | 1999-06-18 | Canon Inc | Serial load controller |
JP2006323831A (en) * | 2005-04-19 | 2006-11-30 | Omron Corp | Input device of safety unit |
JP2009223398A (en) * | 2008-03-13 | 2009-10-01 | Omron Corp | Industrial controller |
-
2012
- 2012-11-13 JP JP2012249490A patent/JP6163735B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11163885A (en) * | 1997-11-28 | 1999-06-18 | Canon Inc | Serial load controller |
JP2006323831A (en) * | 2005-04-19 | 2006-11-30 | Omron Corp | Input device of safety unit |
JP2009223398A (en) * | 2008-03-13 | 2009-10-01 | Omron Corp | Industrial controller |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108604084A (en) * | 2016-02-10 | 2018-09-28 | 菲尼克斯电气公司 | Method and apparatus for data processing and transmission in the theft-resistant link chain of safety system of monitoring and controlling |
JP2019508811A (en) * | 2016-02-10 | 2019-03-28 | フェニックス コンタクト ゲーエムベーハー ウント コムパニー カーゲー | Method and device for monitoring data processing and data transmission within a safety chain of a safety system |
CN108604084B (en) * | 2016-02-10 | 2021-02-12 | 菲尼克斯电气公司 | Method and device for monitoring data processing and transmission in a security chain of a security system |
JP2021534507A (en) * | 2018-08-21 | 2021-12-09 | ピルツ ゲーエムベーハー アンド コー.カーゲー | An automated system that monitors processes that require safety |
JP7267400B2 (en) | 2018-08-21 | 2023-05-01 | ピルツ ゲーエムベーハー アンド コー.カーゲー | Automated system for monitoring safety-critical processes |
US11982984B2 (en) | 2018-08-21 | 2024-05-14 | Pilz Gmbh & Co. Kg | Automation system for monitoring a safety-critical process |
Also Published As
Publication number | Publication date |
---|---|
JP6163735B2 (en) | 2017-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4893931B2 (en) | Safety controller | |
US7933663B2 (en) | Safety master | |
US10969759B2 (en) | Safety controller module | |
JP6127755B2 (en) | Information processing apparatus, control method for information processing apparatus, and control program | |
KR101778333B1 (en) | PLC System | |
JP2006323831A (en) | Input device of safety unit | |
JP2007025736A (en) | Safety plc | |
JP6139386B2 (en) | Programmable controller | |
JP4941365B2 (en) | Industrial controller | |
JP2014137621A (en) | Method, apparatus and program for supporting designing of user program of safety controller | |
CN112099412B (en) | Safety redundancy architecture of micro control unit | |
JP6163735B2 (en) | SAFE SLAVE UNIT, ITS CONTROL METHOD, CONTROL PROGRAM, AND SAFETY CONTROL SYSTEM | |
JP2019192244A (en) | Safety switch | |
JP2008027156A (en) | Simulation device | |
US10520910B2 (en) | I/O expansion for safety controller | |
JP6149393B2 (en) | Communication coupler, information processing apparatus, control method, and program | |
JP2007304939A (en) | Programmable controller and monitor | |
JP7267400B2 (en) | Automated system for monitoring safety-critical processes | |
KR101376387B1 (en) | Appartus and method for real-time diagnosis network 0f in redundant plc system | |
JP2013085427A (en) | Protection controller, diagnostic method, and diagnostic program | |
JP2020112903A (en) | Operation verification program, operation synchronization method and abnormality detection apparatus | |
JP6635238B1 (en) | Safety control device and safety control system | |
JP2017045303A (en) | Controller that can detect causes of abnormalities in functions of personal computer | |
RU103636U1 (en) | MODULAR DISTRIBUTED CONTROL SYSTEM | |
JP2007310718A (en) | Safety controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20151112 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160909 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161004 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161201 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20170523 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170605 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6163735 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |