JP2016130947A - Control system and control device - Google Patents
Control system and control device Download PDFInfo
- Publication number
- JP2016130947A JP2016130947A JP2015005007A JP2015005007A JP2016130947A JP 2016130947 A JP2016130947 A JP 2016130947A JP 2015005007 A JP2015005007 A JP 2015005007A JP 2015005007 A JP2015005007 A JP 2015005007A JP 2016130947 A JP2016130947 A JP 2016130947A
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- control device
- control
- 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
- 230000005540 biological transmission Effects 0.000 claims abstract description 33
- 238000012545 processing Methods 0.000 claims abstract description 28
- 238000013523 data management Methods 0.000 claims abstract description 12
- 238000000034 method Methods 0.000 claims description 47
- 238000004891 communication Methods 0.000 claims description 45
- 230000008569 process Effects 0.000 claims description 41
- 230000004044 response Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 abstract description 32
- 238000004364 calculation method Methods 0.000 description 16
- 238000001514 detection method Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 7
- 238000012544 monitoring process Methods 0.000 description 6
- 239000000470 constituent Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Landscapes
- Hardware Redundancy (AREA)
Abstract
Description
この発明は、機器を制御する制御装置を二重化した制御システムに関し、特に制御装置による演算結果の等値化技術に関する。 The present invention relates to a control system in which control devices for controlling devices are duplicated, and more particularly to a technique for equalizing calculation results by the control devices.
工場や各種プラント等の産業施設においては、各種操業を制御するために制御システムと呼ばれる通信システムが構築されることが多い。制御システムには、産業施設内に設置されたセンサからの監視データの収集やその収集結果に応じて電動機等の駆動制御を行う制御装置が含まれている。このような制御装置としては、DCS(Distributed
Control System:分散型制御システム或いは分散型制御装置)やプログラマブルロジックコントローラ(以下、PLC)が用いられる。一般的なFA(Factory Automation)システムでは制御装置としてPLCが用いられることが多く、高信頼性を要求されるプラント設備では制御装置としてDCSが用いられることが多い。DCSはPLCに比較して信頼性が高いからである。
In industrial facilities such as factories and various plants, a communication system called a control system is often constructed to control various operations. The control system includes a control device that collects monitoring data from sensors installed in an industrial facility and performs drive control of an electric motor or the like according to the collection result. Such control devices include DCS (Distributed).
Control System: a distributed control system or a distributed control device) or a programmable logic controller (hereinafter, PLC) is used. In a general FA (Factory Automation) system, PLC is often used as a control device, and in plant facilities that require high reliability, DCS is often used as a control device. This is because DCS is more reliable than PLC.
この種の制御システムでは、制御装置の故障に起因する操業停止を回避するために、制御装置の二重化が行われる場合がある。具体的には、制御システムに2台の制御装置を設け、その一方を稼働系、他方を待機系として動作させる、といった具合である。以下では、制御装置の二重化された制御システムを「冗長化制御システム」と呼ぶ。稼働系の制御装置は、機器制御のための所定の演算をアプリケーションプログラムにしたがって実行し、待機系の制御装置は稼働系の制御装置の停止に備える。そして、待機系の制御装置は、稼働系の制御装置が停止するとき(或いは停止したとき)には、以降、稼働系として動作する。稼働系の制御装置の停止の具体例としては、何らかの故障や不具合の発生に起因する予期せぬ停止や、保守メンテナンス等による予め計画された停止などが考えられる。待機系の制御装置はこれら2種類の停止の両方に備える。このような冗長化制御システムでは、2つの制御装置の各々が他方の状態監視を行えるようにするために、通信ケーブルを介してそれら2つの制御装置を接続することが多い。 In this type of control system, there is a case where the control device is duplicated in order to avoid the operation stop caused by the failure of the control device. Specifically, two control devices are provided in the control system, and one of them is operated as an active system and the other as a standby system. Hereinafter, a control system in which control devices are duplicated is referred to as a “redundant control system”. The active control device executes a predetermined calculation for device control according to the application program, and the standby control device prepares for the stop of the active control device. The standby control device then operates as an active system when the active control device stops (or stops). As a specific example of the stop of the active control device, an unexpected stop due to the occurrence of some failure or malfunction, a planned stop due to maintenance, etc. can be considered. The standby control device provides for both of these two types of stops. In such a redundant control system, in order to enable each of the two control devices to monitor the other state, the two control devices are often connected via a communication cable.
冗長化制御システムでは、稼働系の制御装置に故障が発生しても稼働系/待機系の切り替えを行うことで、制御対象機器の制御のための演算およびその演算結果に応じた制御を継続することが可能であるが、単に稼働系/待機系の切り替えを行うだけでは、その切り替え前後で上記演算結果が突変するなどの不具合が発生する場合がある。このような不具合の発生を回避するために、冗長化制御システムでは、稼働系における演算結果を上記通信ケーブル経由で待機系に送信し記憶させる等値化処理が周期的に実行される。より詳細に説明すると、冗長化制御システムでは、アプリケーションプログラムにしたがって実行される一連の処理(監視データの収集、その監視データに基づく制御データの演算、および制御データの送信等、以下、当該一連の処理をタクトと呼ぶ)を一区切りとし、図8に示すようにタクトとそれに後続する等値化処理とが一定の周期で繰り返し実行される。これにより、稼働系/待機系の切り替え前後で演算結果の突変が発生することを防止しつつ、制御装置の故障に起因する操業停止を回避することが可能になる。以下では、上記一定の周期を「アプリケーション実行周期」と呼び、上記通信ケーブルを「等値化ケーブル」と呼ぶ。 In the redundant control system, even if a failure occurs in the active control device, the operation system / standby system is switched to continue the operation for controlling the control target device and the control according to the operation result. However, there are cases where problems such as sudden changes in the calculation results occur before and after switching between active and standby systems. In order to avoid the occurrence of such a problem, in the redundant control system, an equalization process for transmitting and storing the operation result in the active system to the standby system via the communication cable is periodically executed. More specifically, in the redundant control system, a series of processes executed according to the application program (monitoring data collection, calculation of control data based on the monitoring data, transmission of control data, etc.) The process is called a tact), and the tact and the subsequent equalization process are repeatedly executed at a constant cycle as shown in FIG. As a result, it is possible to avoid an operation stop caused by a failure of the control device while preventing a sudden change in the calculation result before and after switching between the active system and the standby system. Hereinafter, the fixed period is referred to as an “application execution period”, and the communication cable is referred to as an “equalization cable”.
アプリケーション実行周期毎に実行される等値化処理の流れは概ね以下の通りである。稼働系の制御装置の制御部(例えば、マイクロコンピュータ)はアプリケーションプログラムにしたがった演算の結果を自身のメモリに書き込んで行く。稼働系の制御装置の制御部は、タクトの終了時点などの等値化タイミングにおいて、自身のメモリに記憶されているデータのうち等値化対象となっている記憶領域に記憶されているデータを自身の通信インタフェース部の通信バッファにコピーする。このようにして通信バッファにコピーされたデータは等値化ケーブルを介して待機系の制御装置に送信される。待機系の制御装置は等値化ケーブルを介して受信したデータを、自身のメモリにおいて等値化対象となっているメモリ領域に展開する。これにより等値化処理が完了する。 The flow of equalization processing executed every application execution cycle is as follows. A control unit (for example, a microcomputer) of the active control device writes the result of calculation according to the application program in its own memory. The control unit of the operating system control device stores the data stored in the storage area that is the target of equalization among the data stored in its own memory at the equalization timing such as the end time of the tact. Copy to the communication buffer of its own communication interface. The data copied to the communication buffer in this way is transmitted to the standby control device via the equalization cable. The standby control device expands the data received via the equalization cable in the memory area that is the target of equalization in its own memory. This completes the equalization process.
冗長化制御システムにおけるアプリケーション実行周期は、タクトの実行に要する時間と等値化処理に要する時間の和に対して充分に余裕を持たせて(すなわち、両者の和よりも長く)定められることが多い。しかし、冗長化制御システムにおいてアプリケーションプログラムにしたがって更新されるデータの更新周期とアプリケーション実行周期とは必ずしも一致せず、等値化処理の実行タイミングにおいて、等値化対象の記憶領域の一部の格納内容しか更新されない場合がある。図8に示す例では、記憶領域AREA0〜AREA3が等値化対象となっている。図8におけるアプリケーション実行周期T1では、等値化対象の記憶領域の全てについてデータが更新されているが、アプリケーション実行周期T2では記憶領域AREA0およびAREA2のデータは更新されておらず、アプリケーション実行周期T3においては等値化対象の全ての記憶領域のデータが更新されていない。 The application execution cycle in the redundant control system may be determined with a sufficient margin (that is, longer than the sum of the two) with respect to the sum of the time required for the tact execution and the time required for the equalization processing. Many. However, the update cycle of data updated in accordance with the application program in the redundant control system does not necessarily match the application execution cycle, and a part of the storage area to be equalized is stored at the execution timing of the equalization process. Only the content may be updated. In the example shown in FIG. 8, the storage areas AREA0 to AREA3 are equalization targets. In the application execution cycle T1 in FIG. 8, the data is updated for all the storage areas to be equalized, but in the application execution cycle T2, the data in the storage areas AREA0 and AREA2 is not updated, and the application execution cycle T3. In FIG. 4, data in all storage areas to be equalized is not updated.
更新されなかった記憶領域のデータについては、通信バッファへのコピーや待機系への送信を行う必要がないことは言うまでもない。しかし、従来の冗長化制御システムでは、等値化対象とされた全ての記憶領域について、データの更新の有無に拘らず、通信バッファへのコピーや待機系への送信が行われていた。つまり、従来の冗長化制御システムにおける等値化処理には無駄な処理が含まれており、当該無駄な処理を実行する分だけアプリケーション実行周期内でタクトに割り当て可能な期間(以下、アプリケーションプログラムの実行帯域)が圧迫されるという問題があり、特に、プラント制御用の冗長化制御システムにおいて、この問題は顕著であった。その理由は以下の通りである。上記のようなデータ更新周期のバラツキが発生する要因の一つとしては監視データの送信元(或いは制御データの送信先)がデジタル機器であるかアナログ機器であるかが挙げられる。一般に、データの入出力周期は機器毎に異なるが、デジタル機器のデータ入出力周期はアナログ機器のデータ入出力周期に比較して短いことが多い。プラント設備には、デジタル機器とアナログ機器の両者が含まれこと多く、また、それらの種類も多様であることに加えて、アプリケーション実行周期が200ミリ秒〜1秒とFAシステムに比較して長いため、上記問題が顕著に現れるのである。 It goes without saying that the data in the storage area that has not been updated need not be copied to the communication buffer or transmitted to the standby system. However, in the conventional redundant control system, copying to the communication buffer and transmission to the standby system have been performed for all storage areas that are targeted for equalization, regardless of whether or not the data has been updated. In other words, the equalization processing in the conventional redundancy control system includes wasteful processing, and a period (hereinafter referred to as application program) that can be allocated to tacts within the application execution cycle by the amount of execution of the wasteful processing. There is a problem that the execution band) is compressed, and this problem is particularly remarkable in a redundant control system for plant control. The reason is as follows. One of the factors that cause the variation in the data update cycle as described above is whether the monitoring data transmission source (or control data transmission destination) is a digital device or an analog device. In general, the data input / output cycle differs for each device, but the data input / output cycle of a digital device is often shorter than the data input / output cycle of an analog device. Plant facilities often include both digital devices and analog devices, and in addition to their variety, the application execution cycle is 200 milliseconds to 1 second, which is longer than FA systems. Therefore, the above problem appears remarkably.
本発明は上記課題に鑑みて為されたものであり、冗長化制御システムにおける等値化処理にて、アプリケーションプログラムの実行帯域を狭める無駄なデータ送信の発生を回避する技術を提供することを目的とする。 The present invention has been made in view of the above problems, and an object thereof is to provide a technique for avoiding the occurrence of useless data transmission that narrows the execution band of an application program in equalization processing in a redundant control system. And
上記課題を解決するために本発明は、一方が稼働系となり他方が待機系となり等値化通信手段を介して通信を行う2つの制御装置を備えた制御システムの各制御装置に、以下のアプリケーション実行手段、データ管理手段、送信手段および受信手段を設けることを特徴とする。アプリケーション実行手段は、予め定められた周期でアプリケーションプログラムを実行し、その実行過程で生成されるデータをメモリ内の記憶領域に書き込む。データ管理手段は、等値化のための前回の通信以降のデータ更新の有無を示す識別子を前記メモリの記憶領域毎に記憶する。送信手段は、メモリに記憶されているデータのうち、更新ありを示す識別子がデータ管理手段に記憶されている記憶領域のデータを読み出して他方の制御装置へ送信する送信処理を自身が稼働系である場合にアプリケーションプログラムの実行周期毎に実行する。そして、受信手段は、他方の制御装置から受信したデータで、当該データに対応するものとして自身のメモリに記憶されているデータを更新する受信処理を自身が待機系である場合に実行する。 In order to solve the above-described problems, the present invention provides the following application to each control device of a control system including two control devices, one of which is an active system and the other is a standby system and performs communication via the equalization communication means. An execution unit, a data management unit, a transmission unit, and a reception unit are provided. The application execution means executes the application program at a predetermined cycle, and writes data generated in the execution process to a storage area in the memory. The data management means stores, for each storage area of the memory, an identifier indicating whether data has been updated since the previous communication for equalization. The transmission means reads out the data in the storage area in which the identifier indicating that there is an update from the data stored in the memory and is stored in the data management means and transmits the data to the other control device by itself. In some cases, it is executed every execution cycle of the application program. The receiving means executes a receiving process for updating data stored in its own memory as data corresponding to the data received from the other control device, when it is a standby system.
本発明の制御システムにおいてアプリケーションプログラムの実行周期毎に実行される等値化のための通信では、等値化対象のデータのうち前回の等値化処理以降に更新されたデータのみが稼働系の制御装置から待機系の制御装置へ送信され、待機系の制御装置では、稼働系から受信したデータについてのみメモリへのコピーが行われる。このため、本発明の制御システムでは、従来の冗長化制御システムに比較して無駄なデータ(すなわち、前回の等値化処理以降に更新されていないデータ)の伝送およびコピーが行われることはなく、その分だけアプリケーションの実行に帯域を割り当てることができる。 In the communication for equalization executed at each execution period of the application program in the control system of the present invention, only the data updated after the previous equalization process among the data to be equalized is the active system. The data is transmitted from the control device to the standby control device, and the standby control device copies only the data received from the active system to the memory. For this reason, in the control system of the present invention, useless data (that is, data that has not been updated since the previous equalization process) is not transmitted and copied as compared with the conventional redundant control system. Therefore, it is possible to allocate bandwidth to the execution of the application.
特許文献1には、制御装置に実行させる命令の各々について現用系(稼働系)と待機系の何れを処理担当装置とするのかを命令毎に予め定めておき、稼働系と待機系とで処理分散することで稼働系の処理負荷を軽減する技術が開示されている。しかし、特許文献1に開示の技術は、稼働系から待機系への無駄なデータ送信等の発生を回避する技術ではなく、本願発明とは全く異なる技術である。
In
本発明の別の態様としては、上記送信手段に代えて、メモリに記憶されているデータと当該データに対応する前記識別子とを対にして他方の制御装置へ送信する処理を自身が稼働系である場合にアプリケーションプログラムの実行周期毎に実行する送信手段を各制御装置に設けるとともに、上記受信手段に代えて、他方の制御装置から受信したデータのうち、更新ありを示す識別子と対になっているデータで当該データに対応するものとして自身のメモリに記憶されているデータを更新する処理を自身が待機系である場合に実行する受信手段を各制御装置に設ける態様が考えられる。このような態様によっても、従来の冗長化制御システムに比較して無駄なデータ(すなわち、前回の等値化処理以降に更新されていないデータ)のコピーが行われることはなく、その分だけアプリケーションの実行に帯域を割り当てることができる。 As another aspect of the present invention, in place of the transmission means, a process of transmitting a pair of data stored in a memory and the identifier corresponding to the data to the other control device is an active system. In some cases, each control device is provided with a transmission means that executes every execution cycle of the application program, and is paired with an identifier indicating that there is an update from the data received from the other control device instead of the reception means. There may be a mode in which each control device is provided with a receiving unit that executes a process of updating data stored in its own memory as data corresponding to the data when it is a standby system. Even in such a mode, useless data (that is, data that has not been updated since the previous equalization process) is not copied as compared with the conventional redundant control system, and the application is accordingly increased. Bandwidth can be allocated to the execution of
アプリケーションプログラムの実行周期におけるアプリケーションプログラムの実行に対する帯域の割り当てと等値化処理のための帯域の割り当ての具体的な態様としては、以下の2つの態様が考えられる。第1に、1つ手前の時間区間におけるアプリケーションプログラムの実行結果についての等値化処理を行った後にアプリケーションプログラムを実行する態様である。そして、第2に、アプリケーションプログラムの実行とその実行結果についての等値化処理とをこの順に行う態様である。後者の態様の場合、アプリケーション実行手段にはアプリケーションプログラムの実行周期毎に予め定められた時間長の期間に亙ってアプリケーションプログラムを実行させるとともに、当該期間の満了時点のデータ管理手段の格納内容に応じて当該期間を延長する処理を実行させ、送信手段には、アプリケーションプログラムの実行周期において、アプリケーション実行手段によるアプリケーションプログラムの実行終了後に送信処理を実行させるようにすれば良い。また、この延長された期間においては、従前のアプリケーションプログラムの実行を継続させても良いし、予め定められた優先順位に応じて選択した他のアプリケーションプログラムを実行させても良い。 The following two modes are conceivable as specific modes of bandwidth allocation for application program execution in the execution cycle of the application program and bandwidth allocation for equalization processing. First, the application program is executed after performing equalization processing on the execution result of the application program in the immediately preceding time interval. Second, the execution of the application program and the equalization process for the execution result are performed in this order. In the case of the latter mode, the application execution unit causes the application program to be executed over a period of time determined in advance for each execution cycle of the application program, and the contents stored in the data management unit at the end of the period are stored. Accordingly, the process for extending the period may be executed, and the transmission means may be made to execute the transmission process after the execution of the application program by the application execution means in the application program execution cycle. Further, during the extended period, the execution of the previous application program may be continued, or another application program selected according to a predetermined priority order may be executed.
また、上記課題を解決するために本発明は、冗長化制御システム用の制御装置として、以下の制御装置を提供する。この制御装置は、従来の冗長化制御システムにおける制御装置と同様に、一方が稼働系となり他方が待機系となる制御装置対を形成するとともに、等値化通信手段を介して通信を行う。本発明の制御装置は、以下の制御部とメモリインタフェース回路とを有することを特徴とする。制御部は、アプリケーションプログラムの実行周期毎にアプリケーションプログラムを実行し、その実行過程で生成されるデータをメモリ内の記憶領域に書き込む。メモリインタフェース回路は、メモリと制御部との間のデータ授受を仲介する。 In order to solve the above problems, the present invention provides the following control device as a control device for a redundant control system. Like the control device in the conventional redundant control system, this control device forms a control device pair in which one is an active system and the other is a standby system, and communicates via an equalization communication means. The control device of the present invention includes the following control unit and memory interface circuit. The control unit executes the application program every execution cycle of the application program, and writes data generated in the execution process to a storage area in the memory. The memory interface circuit mediates data exchange between the memory and the control unit.
上記メモリインタフェース回路は、以下のテーブルとアドレスデコード回路とを有する。上記テーブルには、メモリの記憶領域毎に前回の等値化処理以降のデータ更新の有無を示す識別子が格納される。アドレスデコード回路は、制御部からのデータ書き込み指示に応じてメモリへのデータの書き込みを行うとともに上記テーブルの格納内容の更新を行う。また、アドレスデコード回路は、制御部から読み出しを指示されたデータをメモリから読み出し、当該データに対応する識別子とともに制御部へ返信する。そして、上記制御部は、自身が稼働系である場合には、メモリインタフェース回路を介して読み出したデータのうち、更新ありを示す識別子と対になっているデータを他方の制御装置へ送信する送信処理をアプリケーションプログラムの実行周期毎に実行する一方、待機系である場合には、他方の制御装置から受信したデータで当該データに対応する記憶領域に記憶されているデータを更新することをメモリインタフェース回路に指示する受信処理を実行する。 The memory interface circuit includes the following table and an address decoding circuit. In the table, an identifier indicating whether or not data has been updated since the previous equalization process is stored for each storage area of the memory. The address decoding circuit writes data to the memory in accordance with a data write instruction from the control unit and updates the stored contents of the table. Further, the address decoding circuit reads from the memory the data instructed to be read from the control unit, and returns it to the control unit together with an identifier corresponding to the data. When the control unit itself is an active system, the control unit transmits data that is paired with an identifier indicating that there is an update from the data read through the memory interface circuit to the other control device. A memory interface that executes processing for each execution cycle of an application program and updates data stored in a storage area corresponding to the data with data received from the other control device when the system is a standby system A reception process instructing the circuit is executed.
このような制御装置を用いて冗長化制御システムにおける制御装置対を形成すれば、従来の冗長化制御システムに比較して無駄なデータ(すなわち、前回の等値化処理以降に更新されていないデータ)の伝送およびコピーを排除し、その分だけアプリケーションの実行に帯域を割り当てることが可能になる。本態様においても、上記送信処理に代えて、メモリインタフェース回路を介して取得したデータと当該データの更新の有無を示す識別子とを対にして他方の制御装置へ送信する送信処理を実行させるとともに、上記受信処理に代えて、更新ありを示す識別子と対になっているデータで当該データに対応するものとして自身のメモリに記憶されているデータを更新することをメモリインタフェース回路に指示する受信処理を実行させるようにしても良い。 If such a control device is used to form a control device pair in a redundant control system, useless data (that is, data that has not been updated since the previous equalization process) compared to a conventional redundant control system. ) Transmission and copying, and it is possible to allocate bandwidth to application execution accordingly. Also in this aspect, instead of the transmission process, the transmission process for transmitting the data acquired via the memory interface circuit and the identifier indicating the presence / absence of the update of the data to the other control device is executed, Instead of the above reception process, a reception process for instructing the memory interface circuit to update the data stored in its own memory as data corresponding to the data paired with the identifier indicating that there is an update. You may make it perform.
本発明によれば、冗長化制御システムにおける等値化処理にてアプリケーションプログラムの実行帯域を狭める無駄なデータ送信の発生を回避することが可能になる。 ADVANTAGE OF THE INVENTION According to this invention, it becomes possible to avoid generation | occurrence | production of the useless data transmission which narrows the execution band of an application program by the equalization process in a redundancy control system.
以下、図面を参照しつつ本発明の実施形態を説明する。
図1は、本発明の一実施形態の制御装置の構成例および同制御装置を含む制御システムの構成例を示すブロック図である。この制御システムは、プラントなどの産業施設に敷設され、当該産業施設に設置されたセンサ等から収集される監視データに基づいて制御対象機器(例えば、電動機など)の駆動制御を行い、当該産業施設の操業を支援するシステムである。図1に示すように、この制御システムは、制御ネットワーク30に各々接続された制御装置10Aおよび制御装置10Bを含んでいる。図1では詳細な図示を省略したが、制御ネットワーク30には、監視データの送信元となるセンサ等と、制御対象機器とが接続されている。制御ネットワーク30に接続されるセンサや制御対象機器には、デジタル機器とアナログ機器の両者が混在していても良く、何れか一方のみであっても良い。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram illustrating a configuration example of a control device according to an embodiment of the present invention and a configuration example of a control system including the control device. This control system is laid in an industrial facility such as a plant, performs drive control of a control target device (for example, an electric motor or the like) based on monitoring data collected from a sensor or the like installed in the industrial facility, and the industrial facility It is a system that supports the operation of As shown in FIG. 1, the control system includes a
図1に示すように、制御装置10Aと制御装置10Bは等値化ケーブル20を介して互いに接続されている。図1に示す制御システムでは、制御装置10Aと制御装置10Bのうちの何れか一方が稼働系となって制御対象機器の駆動制御のための演算を行い、他方は待機系となって稼働系の故障に備える。つまり、図1に示す制御システムは冗長化制御システムである。以下では、制御装置10Aが稼働系となっている場合について説明する。制御装置10Aおよび10Bの各々は例えばDCSである。図1に示すように、制御装置10Aの構成と制御装置10Bの構成は同一である。このため、以下では、制御装置10Aと制御装置10Bを区別する必要がない場合には、「制御装置10」と表記する。本実施形態では、制御対象がプラント設備であるため、制御装置10としてDCSを用いるが、PLCを用いても勿論良い。
As shown in FIG. 1, the
制御装置10は、制御部100、メモリI/F回路110、メモリ120、および通信I/F回路130を有している。制御部100はマイクロコンピュータである。制御部100は、図示せぬ不揮発性メモリに予め記憶された制御プログラムを実行することにより、制御装置10の制御中枢として働く。例えば、制御プログラムにしたがって作動している制御部100は、制御対象機器の作動制御のための各種演算を上記不揮発性メモリに予め記憶されたアプリケーションプログラムにしたがって実行し、その演算結果のデータをメモリ120に書き込む。すなわち、制御プログラムにしたがって作動している制御部100は、アプリケーションプログラムを実行し、その実行結果のデータをメモリ120に書き込むアプリケーション実行手段として機能する。制御部100を制御プログラムにしたがって作動させることで実現される機能としては、アプリケーションプログラムを実行するアプリケーション演算機能の他に、初期化機能、および等値化データ生成・展開機能が挙げられる。
The
初期化機能とは、制御システムの立ち上げの際(より正確には制御装置10の電源投入の際)に、メモリI/F回路110、通信I/F回路130およびメモリ120の初期化(各種パラメータの設定やアドレス割り当てなど)を行う機能である。等値化データ生成・展開機能は、前述した等値化処理を実現する機能である。制御部100を制御プログラムにしたがって作動させることで実現される3つの機能のうち、本実施形態の特徴は、アプリケーション演算機能および等値化データ生成・展開機能に現れている。アプリケーション演算機能および等値化データ生成・展開機能の詳細については、重複を避けるために動作例において明らかにする。
The initialization function refers to initialization of the memory I /
メモリ120は例えばRAM(Random Access memory)などの揮発性メモリである。図1に示すように、メモリ120は、メモリI/F回路110を介して制御部100に接続されている。メモリ120には複数の記憶領域が設けられており、制御部100は初期化処理にて各記憶領域に割り当てた論理アドレス(以下、単に「アドレス」)を指定することでそのアドレスに対応する記憶領域に格納されているデータの読出しや当該記憶領域へのデータの書き込み(以下、両者をまとめて「アクセス」と呼ぶ場合がある)を行うことができる。メモリ120の複数の記憶領域のうちのいくつかには、他方の制御装置10との等値化の対象となるデータが書き込まれる。本実施形態では、等値化対象のデータが書き込まれる記憶領域に領域名AREAn(n=0〜N:Nは自然数)を付与し、これら領域名で各記憶領域を識別する。また、以下では、領域名AREAnの記憶領域には、前述した初期化機能によりアドレスadr(n)が割り当てられる場合について説明する。
The
メモリI/F回路110は、メモリ120に記憶されている各種データに対する制御部100によるアクセスを仲介するLSIである。図2は、メモリI/F回路110の構成例を示すブロック図である。図2に示すように、メモリI/F回路110は、2つのレジスタ(図2に示すようにアドレステーブルレジスタ112および更新レジスタ116)と、アドレスデコード回路114とを含んでいる。
The memory I /
アドレステーブルレジスタ112は、他方の制御装置10との等値化の対象となるデータのメモリ120における格納先を示すアドレスを格納するレジスタである。図2に示すように、アドレステーブルレジスタ112は、N(図2に示す例では、N=15)+1個の記憶領域を有しており、各記憶領域には1つのアドレスが格納される。例えば、アドレステーブルレジスタ112のn番目の記憶領域には、アドレスadr(n)が格納されるといった具合である。アドレステーブルレジスタ112への各アドレスの書き込みは、制御部100の初期化機能により実現される。
The
更新レジスタ116は、N+1ビットのレジスタである。更新レジスタ116の第nビットb(n)はアドレスadr(n)の示す記憶領域に対応する。なお、本実施形態では、更新レジスタの最上位ビットはb(15)であり、最下位ビットはb(0)である。更新レジスタ116の各ビットは、制御部100の初期化機能により、“0”に初期化される。そして、アドレスadr(n)の示す記憶領域内のデータの更新を契機として更新レジスタ116の第nビットb(n)は“1”に更新される。つまり、更新レジスタ116の第nビットb(n)は、アドレスadr(n)の示す記憶領域内のデータの更新の有無を表す識別子の役割を果たす。
The
アドレスデコード回路114は、制御部100から与えられるアドレスの示すデータのメモリ120における格納位置を特定し、当該データの読出しおよび書き込みを行う回路である。そして、アドレスデコード回路114は、制御部100からのデータ書き込み指示に応じて更新レジスタ116の格納内容を更新する処理、および、制御部100から読み出しを指示されたデータの更新の有無をアドレステーブルレジスタ114および更新レジスタ116の格納内容を参照して制御部100へ通知する処理を実行する。また、アドレスデコード回路114は、制御部100により等値化処理の完了と通知されると、更新レジスタ116の構成ビットを全て“0”にリセットする。つまり、本実施形態のアドレスデコード回路114は、等値化のための前回のデータ通信以降のデータ更新の有無を示す識別子をメモリ120の記憶領域毎に記憶するデータ管理手段の役割を果たすのである。
The
図2に示すように、アドレスデコード回路114は、アドレステーブルレジスタ112の各記憶領域に各々対応するアドレス一致検出回路1140(n)(n=0〜N)を含んでいる。なお、図2では、図が煩雑になることを避けるため、1140(0)と1140(15)以外の符号は省略されている。アドレス一致検出回路1140(n)の一方の入力端子には、データの書き込み先を指定するために制御部100からメモリI/F回路110に出力されたアドレスが与えられ、他方の入力端子にはアドレステーブルレジスタ112のn番目の記憶領域に格納されているアドレス(すなわち、adr(n)アドレス)が与えられる。アドレス一致検出回路1140(n)の具体的な構成例としては種々の態様が考えられるが、adr(n)がM(任意の自然数)ビットのアドレスである場合には、図3に示す構成が考えられる。
As shown in FIG. 2, the
図3には、M=16の場合のアドレス一致検出回路1140(n)の構成例が示されている。図3に示すように、アドレス一致検出回路1140(n)は、M個のEx−NOR回路1140a(n)(m)(m=0〜M−1)と、AND回路1140(n)bとにより構成されている。図3に示すように、Ex−NOR回路1140a(n)(m)の一方の入力端子には、制御部100から出力されたアドレスの第mビット(図3では、in(m)と表記)が与えられ、他方の入力端子にはアドレスadr(n)の第mビット(図3では、adr(n)(m)と表記)が与えられる。周知のように、Ex−NOR回路の出力信号は、両入力端子への入力信号が一致する場合に“1”となり、不一致の場合は“0”となる。図3に示すように、Ex−NOR回路1140a(n)(m)(m=0〜M−1)の出力信号はAND回路1140b(n)に与えられ、AND回路1140b(n)の出力信号がアドレス一致検出回路1140(n)の出力信号となる。このため、アドレス一致検出回路1140(n)の2つの入力端子の各々に与えられたアドレスが一致する場合には、アドレス一致検出回路1140(n)の出力信号の信号値は“1”となり、一致しない場合には、“0”となる。
FIG. 3 shows a configuration example of the address match detection circuit 1140 (n) when M = 16. As shown in FIG. 3, the address match detection circuit 1140 (n) includes
アドレス一致検出回路1140(n)の出力端子は更新レジスタ116の第nビットb(n)に接続されている。このため、アドレスadr(n)の示すデータの更新が行われると、更新レジスタ116の第nビットb(n)の値は“1”に更新される。例えば、初期化機能による初期化の後、アドレスadr(3)の示すデータとアドレスadr(1)のデータとが更新されると、更新レジスタ116の格納内容は図4のように更新される。
The output terminal of the address match detection circuit 1140 (n) is connected to the nth bit b (n) of the
図1に戻って、通信I/F回路130は、データ通信用のLSIであり、制御ネットワーク30に接続されているとともに、等値化ケーブル20を介して他方の制御装置10の通信I/F回路130に接続されている。なお、通信I/F回路130が実行するデータ通信のうち、制御ネットワーク30との間のデータ通信については、本実施形態との関連が薄く、従来の制御装置におけるものと特段に変わるところもないため、説明を省略する。図1では詳細な図示を省略したが、通信I/F回路130は、他方の制御装置10へ送信するデータを格納する送信バッファと他方の制御装置10から受信したデータが書き込まれる受信バッファとを有している。稼働系の制御装置10では、前述した等値化データ生成・展開機能によって、通信I/F回路130の送信バッファへの等値化対象のデータの書き込みが行われる。稼働系の制御装置10の通信I/F回路130は、上記の要領で送信バッファに書き込まれたデータを等値化ケーブル20を介して待機系の制御装置10へ送信する。これに対して、待機系の制御装置10の通信I/F回路130は、等値化ケーブル20を介して受信したデータを受信バッファに書き込み、待機系の制御装置10の制御部100は、このようにして受信バッファに格納されたデータを用いて自身のメモリ120に記憶されているデータの更新(すなわち、等値化)を行う。
以上が制御装置10の構成である。
Returning to FIG. 1, the communication I /
The above is the configuration of the
次いで、本実施形態の動作に即してアプリケーション演算機能および等値化データ生成・展開機能の詳細について説明する。アプリケーション演算機能は、アプリケーション実行周期における予め定められた時間長TDの期間に亙ってアプリケーションプログラムを実行する機能であり、この点は従来の制御装置におけるアプリケーション演算機能と特段に変わるところはない。本実施形態のアプリケーション演算機能は、上記期間の満了の際に更新レジスタ116の格納内容を参照し、値が“1”となっているビットが少ないほど(すなわち、未更新の等値化対象のデータが多いほど)、延長幅を長くして上記期間を延長することにその特徴がある。
Next, details of the application calculation function and the equalized data generation / expansion function will be described in accordance with the operation of the present embodiment. The application calculation function is a function for executing an application program over a period of a predetermined time length TD in the application execution cycle, and this point is not particularly different from the application calculation function in the conventional control device. The application calculation function of the present embodiment refers to the contents stored in the
図5には、N=3(すなわち、記憶領域AREA0〜AREA3の合計4つの記憶領域に格納されるデータが等値対象)、かつ、時間長TDの期間の満了時点の更新レジスタ116にて値が“0”のビットの数×時間長ΔTを延長幅とする場合の動作例が示されている。図5におけるアプリケーション実行周期T1では、時間長TDの期間の満了の時点では、等値化対象の全てのデータが更新され、更新レジスタ116の構成ビットが全て1となっているため、上記期間延長は行われない。これに対して、アプリケーション実行周期T2では、時間長TDの期間の満了の時点では、等値化対象のデータのうちの2つが更新され、更新レジスタ116の構成ビットのうちの2つは“0”であるため、2×ΔTだけ上記期間延長が延長されている。そして、アプリケーション実行周期T3では、時間長TDの期間の満了の時点では、等値化対象のデータは更新されておらず、更新レジスタ116の構成ビットの構成ビットは全て“0”であるため、4×ΔTだけ上記期間延長が延長され、等値化処理の実行が省略されている。
In FIG. 5, N = 3 (that is, data stored in the total of four storage areas AREA0 to AREA3 is a target of equality), and the value in the
ここで、更新レジスタ116の格納内容に応じた延長幅については適宜実験を行って好適な値に定めるようにすれば良い。後述するように、本実施形態の等値化データ生成・展開機能では、前回の等値化処理以降に更新のあったデータについてのみ、稼働系における送信バッファへのコピー、稼働系から待機系への送信、および待機系におけるメモリ120への展開が行われるため、未更新のデータが多いほど等値化処理に要する時間は短くなる。したがって、上記延長幅を適切に定めておけば、未更新の等値化対象のデータが多いほど延長幅を大きくしたとしても、アプリケーション実行周期内に等値化処理が完了しないなどの問題は生じることはない。本実施形態では、時間長TDの期間の満了時点の更新レジスタ116にて値が“0”のビットの数に応じた延長幅で上記期間を延長したが、上記期間の満了の際の更新レジスタ116の構成ビットの全てが“1”でなければ、予め定めた時間長ΔTだけ延長し、当該延長期間の満了時点で再延長が可能であるか否かを更新レジスタ116の格納内容に応じて判定する処理を繰り返し行うようにしても良く、再延長可能であるか否かの判定を行う時間間隔を、更新のあったデータが増えるほど狭めるようにしても良い。
Here, the extension width corresponding to the stored contents of the
次いで、等値化データ生成・展開機能について詳細に説明する。稼働系の制御装置10の制御部100は、アプリケーション演算機能によるアプリケーションプログラムの実行完了後、まず、メモリI/F回路110を介して更新レジスタ116の格納内容を読み出す。次いで、稼働系の制御装置10の制御部100は、更新レジスタ116の構成ビットに“1”が設定されている記憶領域のデータをメモリI/F回路110を介してメモリ120から読み出す。そして、稼働系の制御装置10の制御部100は、更新レジスタ116の格納内容と上記の要領でメモリ120から読み出したデータとを用いて等値化データを生成し、この等値化データを通信I/F回路130の送信バッファに書き込む。
Next, the equalized data generation / expansion function will be described in detail. The
図6(a)は、N=15の場合の等値化データの一例を示す図である。等値化データでは、図6(a)に示すように、先頭に更新レジスタ116の構成ビットを最上位ビットから順に最下位ビットまで並べたデータ識別子が配置され、これら識別子の配列に後続して各識別子に対応するデータが配置される。図6(a)には、AREA3のデータとAREA1のデータとが更新された場合の等値化データが例示されている。この場合、更新レジスタ116の格納内容は“0000000000001010”(16進数標記では、0x000A)となるため、データ識別子として0x000Aが設定されている。このデータ識別子は、当該データ識別子に2つのデータが後続していること、および当該2つのデータがAREA3およびAREA1のデータであることを示している。前述したように、稼働系の制御装置10の通信I/F部130は、送信バッファに格納されたデータ(本実施形態では、等値化データ)を等値化ケーブル20を介して待機系の制御装置10へ送信する。
FIG. 6A is a diagram showing an example of equalized data when N = 15. In the equalized data, as shown in FIG. 6A, a data identifier in which the constituent bits of the
つまり、本実施形態では、等値化対象のデータのうち、前回の等値化処理の実行以降に更新されたデータのみが稼働系の制御装置10から待機系の制御装置10へ送信され、等値化データに含まれるデータ識別子は、等値化対象のデータのうちの何れが更新されたのかを待機系の制御装置10に伝達する役割を果たすのである。なお、本実施形態では、稼働系の制御装置10から待機系の制御装置10へ送信する等値化データとして、図6(a)に示すデータ構造のデータを用いたが、図6(b)に示すように等値化対象の各データをセパレータSP(例えば、タブコードなど)で区切って配列した等値化データを用いても良い。このような等値化データにおいては、連続するセパレータはその間のデータに更新が無かったことを意味するため、上記識別子の配列を用いることなく、等値化対象のデータのうちの何れが更新されたのかを待機系の制御装置10に伝達するこが可能になる。また、稼働系の制御装置10と待機系の制御装置10との間の通信として、Syncメッセージ等による同期を行った後に、タイムスロット毎に所定のデータを送信する(例えば、Sync直後のタイムスロットをAREA15のデータ専用、その次のタイムスロットをAREA14専用・・・等)形式のデータ通信を採用し、更新のあったデータのみを送信する場合には、タイムスロットにより各データの識別が可能であるため、この場合も、上記識別子を用いる必要はない。
That is, in the present embodiment, only the data that has been updated since the previous equalization process was executed among the data to be equalized is transmitted from the
稼働系の制御装置10から待機系の制御装置10へ送信された等値化データは、待機系の制御装置10の通信I/F部130の受信バッファに格納される。待機系の制御装置10の通信I/F部130は、受信バッファに格納された等値化データを読み出し、制御部100に与える。待機系の制御装置10の制御部100は、通信I/F部130から引き渡され等値化データを参照し、当該等値化データに含まれているデータ識別子を参照して、更新されたデータを特定し、当該データに対応するものとして自身のメモリ120に格納されているデータを当該受信データで更新(上書き)する。
The equalized data transmitted from the
以上説明したように、本実施形態によれば、冗長化制御システムにおける等値化処理にて、無駄なデータコピーや無駄なデータ送信の発生を回避することができ、アプリケーションプログラムの実行帯域を最大限に割り当てることが可能になる。 As described above, according to this embodiment, it is possible to avoid occurrence of useless data copy and useless data transmission in the equalization processing in the redundancy control system, and to maximize the execution bandwidth of the application program. Can be assigned to the limit.
以上本発明の一実施形態について説明したが、この実施形態に以下の変形を加えても勿論良い。
(1)上記実施形態では、アドレステーブルレジスタ112と更新レジスタ116を別個のレジスタとしたが、図7に示すように両者を一体としたテーブル(等値化のための前回の通信以降のデータ更新の有無を示す更新識別子を前記メモリの記憶領域毎に記憶するテーブル)をメモリI/F回路110に記憶させておいても良い。このように、アドレステーブルレジスタ112と更新レジスタ116とを一体にしたとしても、メモリI/F回路110が、等値化のための前回の通信以降のデータ更新の有無を示す識別子を前記メモリの記憶領域毎に記憶するデータ管理手段として機能することには変わりないからである。
Although one embodiment of the present invention has been described above, it goes without saying that the following modifications may be added to this embodiment.
(1) In the above embodiment, the
(2)上記実施形態では、等値化対象のデータのうち、前回の等値化処理以降に更新されたデータのみを稼働系の制御装置10から待機系の制御装置10へ送信し、稼働系の制御装置10には等値化ケーブルを介して受信したデータで自装置の該当データを更新させた。しかし、等値化対象の全てのデータを更新の有無を問わずに、更新レジスタ116の各構成ビットと対にして稼働系の制御装置10から待機系の制御装置10へ送信し、待機系の制御装置10には更新有りを示すフラグと対になっているデータのみを対象として、等値化ケーブル20を介して受信したデータで自装置の該当データを更新させても良い。このような態様によっても、待機系の制御装置10における無駄なデータコピー(未更新のデータについての待機系の制御装置での受信バッファからメモリ120へのコピー)を排除して等値化処理に要する帯域を削減し、その分だけアプリケーションプログラムの実行に帯域を割り当てることが可能になるからである。
(2) In the above embodiment, only the data updated after the previous equalization process is transmitted from the
本態様は、上記実施形態に比較して稼働系の制御装置10の処理負荷は軽くなるものの、等値化ケーブルを介した稼働系の制御装置10から待機系の制御装置10へのデータ送信に広い通信帯域を要する。このため、稼働系の制御装置10の処理負荷軽減の方が優先される場合には本態様を採用することが好ましく、等値化ケーブルを介した稼働系の制御装置10から待機系の制御装置10へのデータ送信の通信帯域の削減が優先される場合には上記実施形態の態様が好ましい。
In this aspect, although the processing load of the
(3)上記実施形態では、各アプリケーション実行周期において、まず、予め定められた期間TDに亙ってアプリーションプログラムを実行し、その後、等値化処理を実行する場合について説明した。しかし、各アプリケーション実行周期において、一つ前のアプリケーション実行周期におけるアプリケーションプログラムの実行により更新されたデータの等値化を行い、残った時間をアプリケーションプログラムの実行に割り当てても良い。このような態様によっても、稼働系の制御装置10における無駄なデータコピーを排除して等値化処理に要する帯域を削減し、その分だけアプリケーションプログラムの実行に帯域を割り当てることが可能になるからである。また、このような態様では、各アプリケーション実行周期においてアプリケーションプログラムの実行に割り当て可能な期間がその実行開始前に判っているため、上記実施形態のように更新レジスタ116の格納内容を参照して当該期間の延長の可否を逐一判定する必要はない。
(3) In the above-described embodiment, a case has been described in which, in each application execution cycle, first, the application program is executed over a predetermined period TD, and then equalization processing is executed. However, in each application execution cycle, the data updated by the execution of the application program in the previous application execution cycle may be equalized, and the remaining time may be allocated to the execution of the application program. Even in such an aspect, it is possible to eliminate unnecessary data copy in the
(4)アプリケーション実行周期において制御部100に実行させるアプリケーションプログラムは1つであっても良いし、複数であっても良い。複数のアプリケーションプログラムを実行させる態様においては、アプリケーションプログラム毎に予め優先順位を定めておき、制御部100には、各アプリケーション実行周期における予め定められた時間長の期間TDおよび延長後の期間において実行するアプリケーションプログラムを優先順位にしたがって選択させるようにすれば良い。期間TDにおいては最も優先順位の高いアプリケーションプログラムを実行し、延長後の期間においてはより優先順位の低いアプリケーションプログラムを実行する、といった具合である。例えば、等値化処理を要するアプリケーションプログラムと等値化処理を要さないアプリケーションプログラムの2種類を実行させる場合には前者の優先順位を高くしておき、期間TDでは前者が実行され、延長期間で後者が実行されるようにするのである。このような態様であれば、後者のアプリケーションプログラムの実行により更新レジスタ116が更新されることはなく、等値化処理のための時間が不足するといった事態の発生を回避しつつ、アプリケーションプログラムの実行帯域を最大限に割り当てることが可能になる。
(4) One or more application programs may be executed by the
(5)上記実施形態では本発明の実施形態の一つである制御装置10により制御装置対が形成された冗長化制御システムについて説明したが、制御装置10を単体で提供(すなわち、製造・販売)しても良い。既存の冗長化制御システムにおいて制御装置対を形成している各制御装置を制御装置10で置き換えることで、既存の冗長化制御システムを本発明の制御システムとして機能させることができるからである。
(5) In the above embodiment, the redundant control system in which the control device pair is formed by the
10,10A,10B…制御装置、20…等値化ケーブル、30…制御ネットワーク、100…制御部、110…メモリI/F回路、112…アドレステーブルレジスタ、114…アドレスデコード回路、11140(n)(n=0〜N)…アドレス一致検出回路、1140a(n)(m)(m=0〜M)…EX−NOR回路、1140b(n)…AND回路、116…更新レジスタ、120…メモリ、130…通信I/F回路、
DESCRIPTION OF
Claims (6)
前記2つの制御装置の各々は、
予め定められた周期でアプリケーションプログラムを実行し、その実行過程で生成されるデータをメモリ内の記憶領域に書き込むアプリケーション実行手段と、
等値化のための前回の通信以降のデータ更新の有無を示す識別子を前記メモリの記憶領域毎に記憶するデータ管理手段と、
前記メモリに記憶されているデータのうち、更新ありを示す識別子が前記データ管理手段に記憶されている記憶領域のデータを読み出して他方の制御装置へ送信する送信処理を自身が稼働系である場合に前記アプリケーションプログラムの実行周期毎に実行する送信手段と、
他方の制御装置から受信したデータで当該データに対応するものとして自身のメモリに記憶されているデータを更新する受信処理を自身が待機系である場合に実行する受信手段と、を有する
ことを特徴とする制御システム。 A control system comprising two control devices, one of which is an active system and the other is a standby system, which communicates via an equalization communication means,
Each of the two control devices
An application execution means for executing an application program in a predetermined cycle and writing data generated in the execution process to a storage area in the memory;
Data management means for storing, for each storage area of the memory, an identifier indicating the presence or absence of data update since the previous communication for equalization;
When the data stored in the memory is an active system that performs the transmission process of reading the data in the storage area in which the identifier indicating the update is stored in the data management means and transmitting it to the other control device Transmitting means for executing each execution cycle of the application program;
Receiving means for executing a receiving process for updating data stored in its own memory as data corresponding to the data received from the other control device, when it is a standby system. And control system.
前記2つの制御装置の各々は、
予め定められた周期でアプリケーションプログラムを実行し、その実行過程で生成されるデータをメモリ内の記憶領域に書き込むアプリケーション実行手段と、
等値化のための前回の通信以降のデータ更新の有無を示す識別子を前記メモリの記憶領域毎に記憶するデータ管理手段と、
前記メモリに記憶されているデータと当該データに対応する前記識別子とを対にして他方の制御装置へ送信する送信処理を自身が稼働系である場合に前記アプリケーションプログラムの実行周期毎に実行する送信手段と、
他方の制御装置から受信したデータのうち、更新ありを示す識別子と対になっているデータで当該データに対応するものとして自身のメモリに記憶されているデータを更新する受信処理を自身が待機系である場合に実行する受信手段と、を有する
ことを特徴とする制御システム。 A control system comprising two control devices, one of which is an active system and the other is a standby system, which communicates via an equalization communication means,
Each of the two control devices
An application execution means for executing an application program in a predetermined cycle and writing data generated in the execution process to a storage area in the memory;
Data management means for storing, for each storage area of the memory, an identifier indicating the presence or absence of data update since the previous communication for equalization;
Transmission that executes transmission processing for transmitting the data stored in the memory and the identifier corresponding to the data to the other control device to the other control device every execution cycle of the application program. Means,
Among the data received from the other control device, the standby system performs a receiving process for updating the data stored in its own memory as data corresponding to the data that is paired with the identifier indicating that there is an update. And a receiving means for executing the control system.
前記送信手段は、アプリケーションプログラムの実行周期において、前記アプリケーション実行手段によるアプリケーションプログラムの実行終了後に前記送信処理を実行する
ことを特徴とする請求項1または請求項2に記載の制御システム。 The application execution unit executes the application program over a period of a predetermined time length for each execution cycle of the application program, and sets the period according to the stored contents of the data management unit at the end of the period. Execute the extension process,
The control system according to claim 1, wherein the transmission unit executes the transmission process after the execution of the application program by the application execution unit is completed in an execution cycle of the application program.
前記アプリケーション実行手段は、前記予め定められた時間長の期間および延長後の期間において実行するアプリケーションプログラムを前記優先順位にしたがって選択する
ことを特徴とする請求項3に記載の制御システム。 A plurality of application programs executed by the application execution means, each having a plurality of application programs each having a priority order;
The control system according to claim 3, wherein the application execution unit selects an application program to be executed in the predetermined time length period and the extended period according to the priority order.
予め定められた周期でアプリケーションプログラムを実行し、その実行過程で生成されるデータをメモリ内の記憶領域に書き込む制御部と、
前記メモリと前記制御部との間のデータ授受を仲介するメモリインタフェース回路と、を含み、
前記メモリインタフェース回路は、
等値化のための前回の通信以降のデータ更新の有無を示す識別子を前記メモリの記憶領域毎に記憶するテーブルと、
前記制御部からのデータ書き込み指示に応じて前記メモリへのデータの書き込みを行うとともに前記テーブルの格納内容の更新を行う一方、前記制御部から読み出しを指示されたデータを前記メモリから読み出し、当該データに対応する識別子とともに前記制御部へ返信するアドレスデコード回路と、を有し、
前記制御部は、
自身が稼働系である場合には、前記メモリインタフェース回路を介して読み出したデータのうち、更新ありを示す識別子と対になっているデータを他方の制御装置へ送信する処理をアプリケーションプログラムの実行周期毎に実行する一方、
待機系である場合には、他方の制御装置から受信したデータで当該データに対応する記憶領域に記憶されているデータを更新することを前記メモリインタフェース回路に指示する処理を実行する
ことを特徴とする制御装置。 A control device that forms a control device pair composed of two control devices in which one is an active system and the other is a standby system and communicates through an equalization communication means,
A control unit that executes an application program in a predetermined cycle and writes data generated in the execution process to a storage area in the memory;
A memory interface circuit that mediates data exchange between the memory and the control unit,
The memory interface circuit includes:
A table that stores, for each storage area of the memory, an identifier indicating the presence or absence of data update since the previous communication for equalization;
In response to a data write instruction from the control unit, data is written to the memory and the stored contents of the table are updated, while data instructed to be read from the control unit is read from the memory, and the data And an address decoding circuit that sends a reply to the control unit together with an identifier corresponding to
The controller is
If the system itself is an active system, the process of transmitting the data paired with the identifier indicating that there is an update from the data read through the memory interface circuit to the other control device While running every
In the case of a standby system, the memory interface circuit is instructed to update the data stored in the storage area corresponding to the data with the data received from the other control device. Control device.
予め定められた周期でアプリケーションプログラムを実行し、その実行過程で生成されるデータをメモリ内の記憶領域に書き込む制御部と、
前記メモリと前記制御部との間のデータ授受を仲介するメモリインタフェース回路と、を含み、
前記メモリインタフェース回路は、
等値化のための前回の通信以降のデータ更新の有無を示す識別子を前記メモリの記憶領域毎に記憶するテーブルと、
前記制御部からのデータ書き込み指示に応じて前記メモリへのデータの書き込みを行うとともに前記テーブルの格納内容の更新を行う一方、前記制御部から読み出しを指示されたデータを前記メモリから読み出し、当該データに対応する識別子とともに前記制御部へ返信するアドレスデコード回路と、を有し、
前記制御部は、
自身が稼働系である場合には、前記メモリインタフェース回路を介して読み出したデータと識別子とを対にして他方の制御装置へ送信する処理をアプリケーションプログラムの実行周期毎に実行する一方、
待機系である場合には、他方の制御装置から受信したデータのうち更新有りを示す識別子と対になっているもので当該データに対応するものとして自身のメモリに記憶されているデータを更新することを前記メモリインタフェース回路に指示する処理を実行する
ことを特徴とする制御装置。 A control device that forms a control device pair composed of two control devices in which one is an active system and the other is a standby system and communicates through an equalization communication means,
A control unit that executes an application program in a predetermined cycle and writes data generated in the execution process to a storage area in the memory;
A memory interface circuit that mediates data exchange between the memory and the control unit,
The memory interface circuit includes:
A table that stores, for each storage area of the memory, an identifier indicating the presence or absence of data update since the previous communication for equalization;
In response to a data write instruction from the control unit, data is written to the memory and the stored contents of the table are updated, while data instructed to be read from the control unit is read from the memory, and the data And an address decoding circuit that sends a reply to the control unit together with an identifier corresponding to
The controller is
If the system itself is an active system, the process of transmitting the data read through the memory interface circuit and the identifier to the other control device as a pair is executed every execution period of the application program,
In the case of the standby system, the data received from the other control device is paired with an identifier indicating that there is an update, and the data stored in its own memory is updated as corresponding to the data. A control device that executes a process for instructing the memory interface circuit to
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015005007A JP6304048B2 (en) | 2015-01-14 | 2015-01-14 | Control system and control device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015005007A JP6304048B2 (en) | 2015-01-14 | 2015-01-14 | Control system and control device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016130947A true JP2016130947A (en) | 2016-07-21 |
JP6304048B2 JP6304048B2 (en) | 2018-04-04 |
Family
ID=56415563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015005007A Active JP6304048B2 (en) | 2015-01-14 | 2015-01-14 | Control system and control device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6304048B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018042469A1 (en) * | 2016-09-05 | 2018-03-08 | Hitachi, Ltd. | Information processing system |
JP2018180723A (en) * | 2017-04-06 | 2018-11-15 | 富士電機株式会社 | Duplex system |
JP2019117482A (en) * | 2017-12-27 | 2019-07-18 | 株式会社明電舎 | Data equivalence method, programmable controller and duplexing system |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012127598A1 (en) * | 2011-03-21 | 2012-09-27 | 三菱電機株式会社 | Synchronization device, synchronization method for synchronization device and synchronization program |
-
2015
- 2015-01-14 JP JP2015005007A patent/JP6304048B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012127598A1 (en) * | 2011-03-21 | 2012-09-27 | 三菱電機株式会社 | Synchronization device, synchronization method for synchronization device and synchronization program |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018042469A1 (en) * | 2016-09-05 | 2018-03-08 | Hitachi, Ltd. | Information processing system |
JP2018180723A (en) * | 2017-04-06 | 2018-11-15 | 富士電機株式会社 | Duplex system |
JP7003432B2 (en) | 2017-04-06 | 2022-01-20 | 富士電機株式会社 | Duplex system |
JP2019117482A (en) * | 2017-12-27 | 2019-07-18 | 株式会社明電舎 | Data equivalence method, programmable controller and duplexing system |
Also Published As
Publication number | Publication date |
---|---|
JP6304048B2 (en) | 2018-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5623593B2 (en) | Rack and method for simultaneously updating a basic input / output system | |
JP6304048B2 (en) | Control system and control device | |
CN107342911B (en) | Processing device, substitute processing device, relay device, processing system, and processing method | |
JP6419400B1 (en) | PLC, network unit, CPU unit, and data transfer method | |
JPH06269068A (en) | Remote monitor system | |
WO2015174223A1 (en) | Programmable controller and arithmetic processing system | |
JP4541241B2 (en) | Plant control system | |
JP2016058835A (en) | Relay system and switch device | |
JP2017062758A (en) | Control system and control method | |
JP4273905B2 (en) | Duplex controller system and method | |
JP4442613B2 (en) | Unit expansion system | |
CN111190345B (en) | Redundant automation system with multiple processor units per hardware unit | |
JP2006236371A (en) | Control system | |
JP6356736B2 (en) | Controller system and control method | |
JP2007072980A (en) | Computer control system | |
JP2008234189A (en) | Signal transfer device, bus master device, and signal transfer method | |
JP2005285017A (en) | Duplication controller system, controllers thereof, and program | |
JP2019040331A (en) | Distributed control system and node | |
JP2015207239A (en) | Control system, control device, and program | |
JP2005094289A (en) | Repeater between scan transmission networks | |
JP2019038379A (en) | Signal security system for railway and control method | |
JP6330448B2 (en) | Control system, control device, and relay device | |
JP2008046731A (en) | Controller and duplex control program | |
KR101679936B1 (en) | Duplex Control System and Method for Controlling The Same | |
JP4286610B2 (en) | Plant monitoring and control system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170313 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171003 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171107 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180109 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180129 |
|
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: 20180206 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180219 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6304048 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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |