JPH1185226A - マルチスキャン方式の二重化プログラマブルコントローラ - Google Patents

マルチスキャン方式の二重化プログラマブルコントローラ

Info

Publication number
JPH1185226A
JPH1185226A JP23601297A JP23601297A JPH1185226A JP H1185226 A JPH1185226 A JP H1185226A JP 23601297 A JP23601297 A JP 23601297A JP 23601297 A JP23601297 A JP 23601297A JP H1185226 A JPH1185226 A JP H1185226A
Authority
JP
Japan
Prior art keywords
count value
hardware counter
scan
programmable controller
executes
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.)
Pending
Application number
JP23601297A
Other languages
English (en)
Inventor
Hiroyuki Yamada
裕之 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP23601297A priority Critical patent/JPH1185226A/ja
Publication of JPH1185226A publication Critical patent/JPH1185226A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Safety Devices In Control Systems (AREA)
  • Programmable Controllers (AREA)

Abstract

(57)【要約】 【課題】 二重化された演算部において、スキャン間の
データの一致性を保証するプログラマブルコントローラ
を提供する。 【解決手段】 演算部3aは共有メモリ6から相手演算
部(演算部3b)のカウント値b(スキャン間共有デー
タアクセス回数)を読み出し、ハードウェアカウンタ4
aで自演算部3aのカウント値aとカウント値bを比較
する。カウント値aとカウント値bが一致していれば、
演算部3aはカウント値aを共有メモリ6に書き込み、
高位スキャンを実行する。カウント値aがカウント値b
よりも小さければ、カウント値bをプリセット値aとし
てハードウェアカウンタ4aへ書込んで低位スキャンを
実行する。低位スキャンの実行によりカウント値aがカ
ウントアップし、プリセット値a、すなわちカウント値
bと一致すると、一致割り込みが発生し、高位スキャン
を実行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のシーケンス
処理をそれぞれ独立した周期で実行するいわゆるマルチ
スキャン方式の二重化プログラマブルコントローラに関
する。
【0002】
【従来の技術】システムの高信頼性が要求される制御シ
ステムにおいては同一構成の制御装置を2台並列に接続
する二重化構成をとることが多い。一般にこのような二
重化構成をとるプログラマブルコントローラの場合、入
力部と出力部は共通にして演算部だけを二重化する構成
となっている。すなわち、共通の入力部から入力された
データは二重化された演算部において並列処理された
後、演算結果が共通の出力部へ出力される。ここで二重
化された演算部の一方が故障しても健全なもう一方の演
算部で処理が継続されるためシステムが停止することは
ない。
【0003】しかし、このようなプログラマブルコント
ローラにおいて演算内容を複数に分割し、それぞれの演
算に優先順位と周期をもたせるいわゆるマルチスキャン
方式を実現しようとすると、二重化された演算部の同期
ずれが問題となる。すなわち、優先度の低いスキャン
(低位スキャン)に優先度の高いスキャン(高位スキャ
ン)が割り込んで実行されると、両系の演算部の同期ず
れによる割り込みアドレスの違いから、両系においてス
キャン間の共有データが不一致となり、その結果シーケ
ンス処理の動作不一致や出力データの不一致を発生する
可能性がある。
【0004】これを防止する方法として、特開昭59−
72506号公報に記載されているように、アドレス比
較器とアドレスラッチ回路を設けて両系のマイクロプロ
セッサの実行アドレスを比較し、実行アドレスの大きい
方を処理が進んでいるとみなしてホールドする一方、実
行アドレスの小さい方を処理が遅れているとみなして処
理を継続することで両系同一アドレスで割り込み処理を
実行する方法がある。
【0005】
【発明が解決しようとする課題】上述したように従来技
術では、マイクロプロセッサの1命令ごとに同期をとる
ために特殊なハードウェアを必要とするうえ、最近のマ
イクロプロセッサのように1クロックで1命令を実行す
るものを採用した場合、動作クロック周波数が高くなる
とハードウェアによる同期制御回路がマイクロプロセッ
サの動作に追従できないという問題があり、この方式の
実現は相当に困難なものとなる。
【0006】本発明の目的は、二重化された演算部にお
いて、スキャン間の共有データの一致性を保証するプロ
グラマブルコントローラを提供することである。
【0007】
【課題を解決するための手段】上記の目的を達成するた
め、本発明の、マルチスキャン方式の二重化プログラマ
ブルコントローラは、同一のユーザプログラムを実行す
る二重化された演算部と、二重化された演算部が互いに
読み書き可能な共有メモリと、それぞれの演算部で実行
されるスキャン間共有データのアクセスによりカウント
アップし、該カウント値と予め設定されたカウント値が
一致したときに一致割り込みを発生するハードウェアカ
ウンタを有し、前記各演算部は、高位スキャンの割り込
みで起動された場合、自ハードウェアのカウンタのカウ
ント値と他ハードウェアカウンタのカウント値を比較
し、両カウント値が一致していれば高位スキャンを実行
し、自ハードウェアカウント値が他ハードウェアカウン
タのカウント値よりも大きければ、他ハードウェアカウ
ンタのカウント値が自ハードウェアカウンタのカウント
値と等しくなるまで待機し、自ハードウェアカウンタの
カウンタが他ハードウェアカウンタのカウント値よりも
小さければ自ハードウェアカウンタのカウント値が他ハ
ードウェアカウンタのカウント値と等しくなるまで低位
スキャンを実行し、自ハードウェアカウンタの一致割り
込みにより高位スキャンを実行する。
【0008】低位スキャンのユーザプログラムにおい
て、スキャン間の共有データのアクセス(データの読み
出しまたはデータの書き込み)により、ハードウェアカ
ウンタがカウントアップする。高位スキャンの起動割り
込みが発生したときに、二重化された演算部のハードウ
ェアカウンタのカウント値を比較することで、両系の高
位スキャンが割り込み実行されるタイミングのずれ、す
なわち低位スキャンの実行ステップのずれが検出できる
ため、同期ずれの補正処理が可能となる。
【0009】したがって、ユーザプログラムの1ステッ
プ毎の同期制御を行うことなく、スキャン間共有データ
の一致性を保証することができる。
【0010】
【発明の実施の形態】次に、本発明の実施の形態につい
て図面を参照して説明する。
【0011】図1は本発明の一実施形態のプログラマブ
ルコントローラを示すブロック図である。プログラマブ
ルコントローラは入力部2と、二重化された演算部3
a、3bと、それぞれの演算部3a、3bに備わるハー
ドウェアカウンタ4a、4bと、出力部5と、二重化さ
れた演算部3a、3bの両方からアクセス可能な共有メ
モリ6を備えている。
【0012】図2は演算部3a、3bにおける処理を示
すフローチャートである。演算部3aは高位スキャンの
割り込みで起動されると、次の処理を実行する。
【0013】自演算部(演算部3a)のハードウェアカ
ウンタ4aからスキャン間共有データのアクセス回数で
あるカウント値aを読み出し、共有メモリ6に書き込む
(ステップ11)。共有メモリ6から相手演算部(演算
部3b)のカウント値bを読み出す(ステップ12)。
カウント値aとカウント値bを比較する(ステップ1
3)。カウント値aとカウント値bが一致していれば、
両系の演算部3a、3bの割り込みポイントが一致して
いると判断し、高位スキャンを実行する(ステップ1
4)。
【0014】カウント値aがカウント値bよりも大きけ
れば、割り込みポイントが進んでいると判断し、相手演
算部3bのカウント値を読み出しながら待つ(ステップ
12)。
【0015】カウント値aがカウント値bよりも小さけ
れば、割り込みポイントが遅れていると判断し、カウン
ト値bをプリセット値aとしてハードウェアカウンタ4
aに書き込み(ステップ15)、一致割り込み機能をイ
ネーブルにして低位スキャンに戻る(ステップ16)。
一致割り込み機能がイネーブルになって低位スキャンを
実行すると、スキャン間共有データのアクセスによりカ
ウント値aがカウントアップする。ここでカウント値a
がプリセット値a、すなわちカウント値bに一致する
と、一致割り込みが発生する(ステップ17)。一致割
り込みが発生すると、カウント値a(カウント値bと等
しい)を共有メモリ6に書き込み(ステップ18)、高
位スキャンを実行する(ステップ14)。
【0016】このように、二重化された演算部3a、3
bの高位スキャンは、低位スキャンにおける共有メモリ
6のアクセスの面で同等のステップの後に割り込んで実
行されるため、二重系においてスキャン間の共有データ
の不一致が生じることはない。
【0017】
【発明の効果】以上説明したように、本発明によれば、
マイクロプロセッサの1命令毎、あるいはユーザプログ
ラムの1ステップ毎に二重系の同期をとる必要がないた
め、二重化に伴うハードウェア/ソフトウェアの複雑化
および性能低下を防止できる効果がある。
【図面の簡単な説明】
【図1】本発明の一実施形態の、マルチスキャン方式の
二重化されたプログラマブルコントローラのブロック図
である。
【図2】図1のプログラマブルコントローラの高位スキ
ャン割り込み処理の動作を示すフローチャートである。
【符号の説明】
1 プログラマブルコントローラ 2 入力部 3a、3b 演算部 4a、4b ハードウェアカウンタ 5 出力部 6 共有メモリ 11〜18 ステップ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 複数のシーケンス処理をそれぞれ独立し
    た周期と優先順位をもって実行するマルチスキャン方式
    の二重化プログラマブルコントローラであって、 同一のユーザプログラムを実行する二重化された演算部
    と、 二重化された演算部が互いに読み書き可能な共有メモリ
    と、 それぞれの演算部で実行されるスキャン間共有データの
    アクセスによりカウントアップし、該カウント値と予め
    設定されたカウント値が一致したときに一致割り込みを
    発生するハードウェアカウンタを有し、 前記各演算部は、高位スキャンの割り込みで起動された
    場合、自ハードウェアカウンタのカウント値と他ハード
    ウェアカウンタのカウント値を比較し、両カウント値が
    一致していれば高位スキャンを実行し、自ハードウェア
    カウンタのカウント値が他ハードウェアカウンタのカウ
    ント値よりも大きければ、他ハードウェアカウンタのカ
    ウント値が自ハードウェアカウンタのカウント値と等し
    くなるまで待機し、自ハードウェアカウンタのカウント
    値が他ハードウェアカウンタのカウント値よりも小さけ
    れば自ハードウェアカウンタのカウント値が他ハードウ
    ェアカウンタのカウント値と等しくなるまで低位スキャ
    ンを実行し、自ハードウェアカウンタの一致割り込みに
    より高位スキャンを実行するプログラマブルコントロー
    ラ。
JP23601297A 1997-09-01 1997-09-01 マルチスキャン方式の二重化プログラマブルコントローラ Pending JPH1185226A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23601297A JPH1185226A (ja) 1997-09-01 1997-09-01 マルチスキャン方式の二重化プログラマブルコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23601297A JPH1185226A (ja) 1997-09-01 1997-09-01 マルチスキャン方式の二重化プログラマブルコントローラ

Publications (1)

Publication Number Publication Date
JPH1185226A true JPH1185226A (ja) 1999-03-30

Family

ID=16994480

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23601297A Pending JPH1185226A (ja) 1997-09-01 1997-09-01 マルチスキャン方式の二重化プログラマブルコントローラ

Country Status (1)

Country Link
JP (1) JPH1185226A (ja)

Similar Documents

Publication Publication Date Title
US7340574B2 (en) Method and apparatus for synchronizing an industrial controller with a redundant controller
US6226717B1 (en) System and method for exclusive access to shared storage
US20100023827A1 (en) Soft error correction method, memory control apparatus and memory system
JPH04229355A (ja) データアクセス方法及びデータ処理システム
EP3933639B1 (en) Transaction processing method, apparatus, and electronic device for blockchain
JPH02250119A (ja) 多重タイマ基準機能を有するタイマ
JPH1185226A (ja) マルチスキャン方式の二重化プログラマブルコントローラ
JP3405513B2 (ja) プログラマブルコントローラの二重化制御装置
JP2988518B2 (ja) マルチプロセッサ制御方式
JP2969844B2 (ja) プログラマブルコントローラ
JP6645467B2 (ja) マイクロコンピュータ
JPH07287608A (ja) プログラマブルコントローラの二重化同期制御装置
JPH11338712A (ja) 割込順序保存回路
JPH06324861A (ja) Cpu制御システム及び制御方法
JP2002007148A (ja) 共有資源の排他制御システム及び資源ロック方法並びに記録媒体
JPH0736820A (ja) I/o制御装置
JPH06243101A (ja) マルチプロセッサシステムにおけるcpu間通信方式
JPS5972506A (ja) シ−ケンス制御装置
JPS60220448A (ja) マルチcpuシステムの相互チエツク方法
JPH0217563A (ja) 共有メモリの初期化方法
JPS59121540A (ja) 演算制御方式
JPH05334099A (ja) 状態設定レジスタの書込回路
JPH04270441A (ja) データ処理装置
JPS63155346A (ja) Ramチエツク方式
JPH11282787A (ja) 入出力制御装置