JPH0863206A - プログラマブルコントローラ - Google Patents

プログラマブルコントローラ

Info

Publication number
JPH0863206A
JPH0863206A JP6193913A JP19391394A JPH0863206A JP H0863206 A JPH0863206 A JP H0863206A JP 6193913 A JP6193913 A JP 6193913A JP 19391394 A JP19391394 A JP 19391394A JP H0863206 A JPH0863206 A JP H0863206A
Authority
JP
Japan
Prior art keywords
instruction
sequence control
power failure
program
executed
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
JP6193913A
Other languages
English (en)
Inventor
Kazuo Yoshikawa
和男 吉川
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co Ltd
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 Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP6193913A priority Critical patent/JPH0863206A/ja
Publication of JPH0863206A publication Critical patent/JPH0863206A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Programmable Controllers (AREA)
  • Power Sources (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【目的】命令実行中のいかなる時点に停電が発生して
も、不揮発性記憶手段へのデータの格納を正しく行うプ
ログラマブルコントローラを提供する。 【構成】プログラマブルコントローラ101 において、停
電検出信号ESG が停電を示す値になったことを検出する
と、処理F1において実行中の命令があれば実行を完了
し、続いて処理F2において次に実行すべき命令を読み出
し、処理F3において読みだ出された命令が実行済の命令
が属するシーケンス制御命令群と同一命令群にあるか否
かを判定し、同一命令群に属する場合は読みだ出された
命令を実行した後、処理F2に戻り、同一命令群にない場
合は処理F5において読みだ出された命令が格納されてい
た記憶手段の番地を不揮発性記憶手段の領域に格納する
停電時処理用プログラム314 を備える。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、自回路に供給する電源
の停電発生時に、制御対象の状態を記録するデータや、
シーケンス制御の途中経過を表すデータの喪失を防止す
るため、これらのデータを不揮発性記憶手段に格納する
手段を有するプログラマブルコントローラ(以下の説明
ではPCと略称する)に関する。
【0002】
【従来の技術】図4に停電発生時に、制御対象の状態を
記録するデータや、シーケンス制御の途中経過を表すデ
ータの喪失を防止する機能を有するPCの一例を示す。
なお以下の説明においては、 "0" または "1" に対応
される2値信号を単に信号と言う。図4の(a) におい
て、1はPCであり、PC1は制御演算手段2、プログ
ラム記憶手段3、不揮発性記憶手段4、揮発性記憶手段
5、信号入力回路6(以下の説明では単に入力回路6と
称する)、信号出力回路7(以下の説明では単に出力回
路7と称する)、電源回路8、停電検出回路9、表示手
段10とからなる。
【0003】プログラム記憶手段3はICROMまたは
停電時には電源が電池に切り換えられる不揮発性のRA
Mで造られ、システムプログラム31とシーケンス制御プ
ログラム32とが格納されている。制御演算手段2はプロ
グラム記憶手段3に格納されているシステムプログラム
31とシーケンス制御プログラム32とを実行し、シーケン
ス制御プログラム実行時の演算結果を制御演算手段2の
内部にある演算用レジスタ21(以下の説明ではACC21
と略記する)に残す。システムプログラム31は、入出力
や表示なとを制御する一般的なシステムプログラムと、
シーケンス制御を行うための初期設定をし、シーケンス
制御命令の実行を支援するプログラムを含む基本的なプ
ログラムである。シーケンス制御プログラム32は、PC
1によって制御される制御対象のシーケンス制御用プロ
グラムであり、シーケンス制御命令の二つ以上からなる
単位シーケンス制御命令群の1単位以上によって構成さ
れる。不揮発性記憶手4は、データの格納と読み出しが
自由に行えるRAMであって、停電時には記憶を保持す
るための電源が電池などの電源に切替えられるので、停
電しても記憶が保持される。揮発性記憶手段5はRAM
によって構成されるが、停電時には記憶か失われる。外
部から入力される信号SGは入力回路6を介して制御演算
手段2の制御のもとに入力され、信号SGが表すデータは
揮発性記憶手段5に格納される。外部に出力されるデー
タは、揮発性記憶手段5の中に設けられた出力データ領
域に格納された後、制御演算手段2の制御のもとに出力
回路7を介して出力される。電源回路8は商用の交流電
源11から電力を供給されて、PC1を構成する要素に直
流電力を供給する回路であり、交流電源11からの電力供
給が無くなった後もPC1における停電処理が完了する
のに充分な時間だけ電力を供給する能力を有する。停電
検出回路9は交流電源11の停電を半サイクル以内に検出
する能力を有する回路であり、停電の場合には、停電後
半サイクル以内に停電検出信号ESG を停電検出を表す値
にする。
【0004】図4の(b) は揮発性記憶手段4と不揮発性
記憶手段5の内部に格納されるデータの区分を示した図
である。図示のとおり、揮発性記憶手段5には、入力信
号が示すデータを格納する入力データ領域51と、内部リ
レー領域52と、出力リレー領域53と、一般のデータ領域
50とが設けられている。内部リレーはシーケンス制御プ
ログラムにおいて、電磁動作のリレーと同様な機能とし
て使用される、1ビットの記憶容量を有する記憶領域で
あり、出力リレーは外部への信号として出力される1ビ
ットのデータを保持する記憶領域である。不揮発性記憶
手段4には、キープリレー領域41と、一般の停電時にも
保持が必要なデータの領域40が設けられている。キープ
リレーはセット信号によって2値信号の1を記憶し、リ
セット信号によって0を記憶する1ビットの記憶領域で
あって、セットリセット・フリップフロップあるいは電
磁動作のキープリレーと同様な機能を有する。
【0005】上述したPC1による揮発性記憶手5に格
納されたデータを使用するシーケンス制御の一例とし
て、図5によりPC1によるモータMの始動停止制御を
示す。図5の(a) は、図4に示したPC1とPC1に入
出力される外部信号の関係を示す図であり、図におい
て、1はPC、21はACC、5は揮発性記憶手段、51は
入力データ領域、53は出力リレー領域、6は入力回路、
7は出力回路であって、図4に示した同符号のもの、あ
るいは領域と同一である。入力回路6の端子F には押し
ボタンスイッチST(以下の説明では単にスイッチSTと称
する)の常時開路接点からのモータMを始動させる信号
が入力され、端子G には押しボタンスイッチSP(以下の
説明では単にスイッチSPと称する)の常時開路接点から
のモータMを停止させる信号が入力される。
【0006】出力回路7の端子Y1からは、モータMを開
閉する電磁接触器Mtの操作信号が出力され、端子F およ
び端子G からの信号は、それぞれ揮発性記憶手段4の入
力データ領域41のビット単位のデータ領域F およびG
(以下の説明では、データ領域F の内容をデータF とい
う様に、データ領域に付けられた符号をデータの符号と
して使用する)に格納され、シーケンス制御用データと
して使用される。また端子Y1から出力される信号は、揮
発性記憶手段4の1ビット単位の出力リレー領域Y1(以
下の説明では、出力リレー領域に付けられた符号を、そ
のリレーが有するデータの符号として使用する)と同一
のデータを表す信号である。
【0007】図5の(b) はモータMを制御する、PC1
に格納されるシーケンス制御プログラムを表したNEMA(N
ational Electrical Manufactures Association U.S.
A)に準ずる表現による、ラダー図と呼ばれる表現形式
のシーケンス制御図である。図において、符号F や符号
Y1A で示される図記号は、その図記号に付記された符号
が示すデータが処理の対象となることを示し、符号G で
示される図記号はその図記号に付記された符号が示すデ
ータを反転した値のデータが処理の対象となることを表
し、符号Y1で示される図記号は、処理結果を格納する1
ビットのデータ領域を表し、図記号間を結ぶ線図によっ
て処理の内容を表す。並列接続を表す線図はオア演算の
処理を、直列接続を表す線図はアンド演算の処理を表
す。処理の順序は左上端に示される図記号のデータに対
する処理から始まり、右に向かって進行し、処理結果を
格納して一連の処理が終わる。この図で表されるシーケ
ンス制御プログラムはPC1によって次に箇条書きで示
す順序で実行される。 1)データE の内容が入力されACC21(図5の(a) を
参照)に格納される。もしスイッチSTが押されているな
らば、スイッチSTの常時開路接点が閉路し、閉路を示す
信号の1が入力されるので、データE が1になり、AC
C21の内容も1になる。 2)出力データY1と同一のデータY1A とACC21の内容
がオア演算され、演算結果がACC21に格納される。ス
イッチSTが押されているならば、ACC21の内容はやは
り1である。 3)データG を反転したデータとACC21の内容とがア
ンド演算され、結果がACC21に格納される。スイッチ
SPが押されていなければ、常時開路接点は開いたままで
あり、データG が0で、このデータを反転したデータは
1になるから、アンド演算前のACC21の内容1との演
算の結果も1となりACC21の内容は1になる。 4)ACC21の内容が出力リレーY1に格納される。AC
C21の内容が1ならば、出力リレーY1の内容も1にな
る。
【0008】PC1は、上述のシーケンス制御プログラ
ム以外のシーケンス制御用プログラムも含めて実行し、
実行の最後に出力リレー領域53(図4を参照)の内容を
外部に出力する。スイッチSTが押されれば、上述のとお
りに出力リレーY1の内容が1になっているので、この内
容を表す信号によって電磁接触器MtがモータMの電源回
路を閉路し、モータMが始動する。PC1は出力リレー
の出力が終わると再び最初に戻り、シーケンス制御プロ
グラムを繰り返し実行する。このシーケンス制御プログ
ラムを一巡するのに要する時間をサイクルタイムと言
い、サイクルタイムは普通数ミリ秒である。2巡目以後
に図5の(b) に示すシーケンス制御図のプログラムが実
行される場合は、出力リレーY1の内容が1になっている
のでデータY1A も1であり、データE とデータY1A との
オア演算の結果はスイッチの常時開路接点が開き、デー
タE が0になっても1であり、以下の演算結果も変化し
ないので、いわゆる自己保持回路が形成され、モータM
は、始動押しボタンスイッチSTを一度押す操作をすれ
ば、始動し、スイッチSTの操作が終わっても回転を続け
る。モータMの回転を停止される場合は、スイッチSPを
押す操作をする。この操作の結果データG が1になり、
図5の(b) に示すACC21とデータG を反転したデータ
とのアンド演算の結果が0になり、この値が出力リレー
Y1に格納されるので、端子Y1から電磁接触器Mtにモータ
Mの電源回路を開く信号が出力され、モータMが停止す
る。
【0009】停電が発生すると、停電検出回路9(図4
の(a) を参照)は、停電検出信号ESG の値を0にする。
PC1はこの信号が入力されると、現在実行中のシーケ
ンス制御命令の実行を完了後、次に実行すべき命令の番
地を不揮発性記憶手4に格納し、命令の実行を停止す
る。電源回復後、命令の実行を再開する場合は、PC1
は揮発性記憶手段5の内容をクリアし(0にする)、不
揮発性記憶手4に格納した停電後最初に実行すべき命令
の番地を参照して、実行再開後の最初の命令を読み出
し、この命令から実行を再開する。再開後のシーケンス
制御プログラムの実行サイクルにおいては、出力リレー
領域は揮発性記憶手段5に設けられているので、出力リ
レーY1の内容も0になっており、データE とACC21と
のオア演算結果は0となり、スイッチSTが操作されない
限りモータMが始動することがなく、停電後のシーケン
ス制御開始時の安全が確保される。
【0010】図6にPC1による不揮発性記憶手4に格
納されたデータを使用するシーケン制御の一例を示す。
図6の(a) は制御目的と制御手段とを示す図であり、S0
は搬送車TCの始発位置を検出してパルス信号SG0 を発信
するセンサ、Si(i はセンサの番号を表す1〜4の数、
図ではS3までが示されている)は搬送車TCが区間Ai(i
は区間の番号を表す1〜4の数)の走行終了地点を検出
しパルス信号SGi (iはセンサSiが発信する信号の番
号)を発信するセンサである。図6の(b) は制御内容を
表した図であり、上述のパルス信号SGi によって検出さ
れる搬送車TCの残りの走行行程を表示灯LAi(i は表示灯
の番号1〜4であり、区間の番号に対応する)によって
表示する。搬送車TCの発車時には、走行行程は全区間が
残っているので、表示灯LAi の全部がセンサS0が発信す
るパルス信号SG0 の立ち上がりが検出される結果として
点灯し、搬送車TCが区間A2にある場合は、区間A1は走行
済であるからセンサS1が発信するパルス信号SG1 の立ち
上がりが検出される結果とし表示灯A1が消灯し、区間A3
にある場合は、同様にして区間A2までは走行済であるか
ら表示灯A1,A2 が消灯し、区間A4にある場合は、区間A3
までは走行済であるから表示灯A1,A2,A3が消灯する。
【0011】図6の(c) は上述の表示制御を行うシーケ
ンス制御図である。図において、Siは揮発性記憶手段5
(図4を参照)の入力データ領域51に格納されているセ
ンサSiの信号が表すデータである。〔SET Ki] (Kiはキ
ープリレーであり、i はこのリレーの番号)はこの図記
号で示されるプログラム上の演算で、キープリレーKiの
領域に値の1が書き込まれるとキープリレーKiの内容が
1になることを示しており、〔RST Ki] はこの図記号で
示されるプログラム上の演算で、キープリレーKiの領域
に値の1が書き込まれるとキープリレーKiの内容が0に
なることを示している。キープリレーKiの内容が1にな
ると、この内容が図示外の出力リレーに転送されて出力
され、表示灯LAi が点灯し、0になるとこの内容が同じ
出力リレーに転送され、出力されて表示灯LAi が消灯す
る。
【0012】図6の(c) に示すシーケンス制御図の内容
を実行するプログラムはPC1( 図4を参照)によって
次に箇条書きにして示すとおりに実行される。 1)データSOがACC21( 図4を参照)にロードされ
る。搬送車TCが始発点を発車し信号SGとして、センサS0
からパルス信号SG0 がPC1に入力されているならばデ
ータSOは1であり、ACC21の内容は1になる。 2)ACC21の内容がキープリレーK1に格納される。 3)続けて、ACC21の内容がキープリレーK2に格納さ
れる。 4)さらに続けて、ACC21の内容がキープリレーK3に
格納される。 4)またさらに続けて、ACC21の内容がキープリレー
K4に格納される。 5)データS1がACC21( 図4を参照)にロードされ、
続いてACC21の内容がキープリレーK1のリセット入力
[RST K1] として与えられるが、搬送車TCが区間A1にあ
る間は、データS1は0なので、リレーK1はリセットされ
ず、リレーK1はの内容は引き続き1である。 6)同様にしてキープリレーK2にリセット入力[RST K2]
として0が与えられ、出力リレーK2はの内容は引き続き
1である。 7)同様にしてキープリレーK3にリセット入力[RST K3]
として0が与えられ、出力リレーK3の内容は引き続き1
である。 8)同様にしてキープリレーK4にリセット入力[RST K3]
として0が与えられ、出力リレーK4はの内容は引き続き
1である。 以上に説明のとおり、図6の(c) に示すシーケンス制御
を実行の結果、搬送車TCが区間A1にある間は表示灯LAi
の全てが点灯する。
【0013】センサS1が搬送車TCの区間A1の通過を検出
すると、データS1の内容はセンサS1から信号SGとして入
力されるパルス信号SG1 によって1になる。この信号が
出力リレーK1のリセット入力[RST K1]として与えられる
ので、リレーK1はリセットし、このリレーの内容が0に
なるので、表示灯LA1 が消灯し、搬送車TCが区間A1を通
過したことが分かる。以下同様にして、それぞれの区間
の通過ごとにその区間を表す表示灯が消える。
【0014】停電が発生した場合は、データSiは揮発性
記憶手5に格納されているので、電源回復後のシーケン
ス制御の再開時にクリアされて0になるが、キープリレ
ーKiは不揮発性記憶手段4に格納されていて、停電前の
データを保持しているので、このデータが図外の出力リ
レーに転送されて搬送車TCの位置が正しく表示される。
【0015】
【発明が解決しようとする課題】前述のとおりに、従来
のプログラマブルコントローラにおいては、停電時の最
後に実行したシーケンス制御命令の次に実行すべきシー
ケンス制御命令の番地と停電時にも記憶を続けるべきデ
ータとを、不揮発性記憶手段に格納し、停電後再開時に
は、不揮発性記憶手段に格納したデータを参照しつつ停
電時の最後に実行したシーケンス制御命令の次の命令か
ら命令の実行を再開する。ところが、図6の(c) に示し
たシーケンス制御例において、データS0の内容が1即ち
搬送車TCが区間A1にあり、〔SET K2〕に値1を書き込む
処理の実行中に停電が発生する場合には、キープリレー
K1とK2との内容は1であるが、キープリレーK3とK4の内
容は0のまま命令の実行が停止する。電源回復後シーケ
ンス制御が再開されると、この段階では搬送車TCは既に
発車してしまっているので、データSOは0であり、AC
C21の内容も0になっているから、キープリレーK3とK4
には1が書き込まれない。つまり、停電後の電源回復時
には搬送車TCが区間A1にあるにも係わらず、表示灯のLA
3 とLA4 とが点灯せず誤った表示になる。
【0016】以上に述べた事情に鑑み、本発明は、シー
ケンス制御実行中のプログラマブルコントローラの電源
の停電がシーケンス制御のどんな段階で発生しても、電
源回復後のシーケンス制御再開を正しく行うプログラマ
ブルコントローラを提供することを目的とする。
【0017】
【課題を解決するための手段】前述の目的を達成するた
め、本発明によれば、停電時の処理を行うプログラムを
含むシステムプログラムと、二つ以上のシーケンス制御
命令を単位とするシーケンス制御命令群の1単位以上か
らなるシーケンス制御プログラムとを格納するプログラ
ム記憶手段と、プログラム記憶手段に格納されているプ
ログラムを実行する制御演算手段と、停電時にも格納さ
れているデータを保持する機能を有する不揮発性記憶手
段と、停電時には格納されているデータの保持について
の機能がない揮発性記憶手段と、入力回路と、出力回路
とから成り、停電を検出する回路を備え、この停電検出
回路が発信する停電検出信号を入力されて停電時の処理
を行う機能を有するプログラマブルコントローラにおい
て、シーケンス制御プログラムを実行中に停電が検出さ
れた場合に、シーケンス制御プログラムを構成する、停
電検出時点におけるシーケンス制御命令群の次ぎにくる
命令が読み出されるまで順次命令を読み出して、停電検
出時点におけるシーケンス制御命令群に含まれる全ての
シーケンス制御命令を実行し、続いて電源回復後最初に
実行すべき命令の番地を不揮発性記憶手段に格納して、
実行中のシーケンス制御プログラムの実行を停止するこ
とを特徴とする。
【0018】また、二つの続けて実行されるシーケンス
制御命令群の境界を、二つの命令群の内、後に実行され
る命令群の先頭の命令が制御演算手段の演算用レジスタ
にデータをロードする命令であることによって判別する
と好適である。さらに、一つの制御命令群の最後の命令
を、この命令に続いて実行される命令がシーケンス制御
命令以外の命令であることを判別することにより、検知
すると好適である。
【0019】またさらに、プログラムを実行中に停電が
検出された場合に、停電検出時点においてプログラムの
実行に係わっている命令がシーケンス制御命令であるか
否かを、この命令が格納されている記憶手段の番地に基
づいて判定し、この命令がシーケンス制御命令に属さな
い命令の場合は、停電検出後最後に実行された命令に続
いて実行されるべき命令の番地を電源回復後に最初に実
行する命令の番地として、不揮発性記憶手段に格納し、
プログラムの実行を停止すると好適である。
【0020】
【作用】本発明のプログラマブルコントローラは、シー
ケンス制御プログラムの実行中に停電が検出されると、
停電検出時点が命令の実行中であればこの命令の実行を
完了し、命令の実行が終わった段階で次の命令を読み出
し、この命令が停電検出時点で実行していた命令が属す
るシーケンス制御命令群と同一の命令群に属するか否か
を判定する。このシーケンス制御命令群に属する命令で
あれば読み出された命令を実行し、この様にして停電検
出時のシーケンス制御プログラム群に属さない命令が読
み出されるまで読み出した命令を順次実行する。停電検
出時のシーケンス制御プログラム群に属さない命令が現
れると、この命令が格納されているプログラム記憶手段
の番地を不揮発性記憶手領域に格納し、命令の実行を停
止する。
【0021】また、停電検出後プログラマブルコントロ
ーラが順次読み出す命令が制御演算手段の演算用レジス
タにデータをロードする命令になったならば、この命令
を停電検出時に実行していたシーケンス制御命令プログ
ラム群に続くシーケンス制御命令プログラム群の先頭の
命令として判定する。さらに、停電検出後プログラマブ
ルコントローラが順次読み出す命令がシーケンス制御命
令に属する命令か否かを判定し、シーケンス制御制御命
令に属さない命令の場合はこの命令の前の命令を停電検
出時に実行していたシーケンス制御命令プログラム群の
最後の命令として判定する。
【0022】さらにまた、プログラムを実行中に停電が
検出された場合に、停電検出時点においてプログラムの
実行に係わっている命令が格納されている番地が、シー
ケンス制御命令に属する命令の格納番地か否かを判定
し、この命令がシーケンス制御命令に属さない命令の場
合は、停電検出後最後に実行された命令に続いて実行さ
れるべき命令の格納番地を電源回復後に最初に実行する
命令の番地として、不揮発性記憶手段に格納し、プログ
ラムの実行を停止する。
【0023】
【実施例】
(実施例1)図1は本発明の一実施例のプログラマブル
コントローラ101 (以下の説明ではPC101 と略記す
る)を表した図である。PC101 は図4に示したPC1
とプログラム記憶手段に格納されているシステムプログ
ラムの内容が異なる点を除いて同一であるので、図1の
(a) にはPC101 の内、システムプログラムの種類のみ
を示し、他の部分については図4を参照して説明する。
図において、312 は一般処理用システムプログラムであ
り、313 はシーケンス制御用システムプログラムであっ
て、図4に示したPC1のシテスムプログラム31に格納
されているプログラムと同一仕様のプログラムであり、
停電時処理用プログラム314 は前述のシテスムプログラ
ム31に格納されているプログラムとは異なる。311 は停
電時処理用プログラム314 とシーケンス制御用システム
プログラム313 と一般処理用システムプログラム312 と
を含むプログラムであり、301 はシステムプログラム31
1 と図外のシーケンス制御プログラムとを格納するプロ
グラム記憶手段であって、図4に示したプログラム記憶
手段3と格納されているシステムプログラムが異なる点
を除き同一のものである。
【0024】図1の(b) に停電時処理用システムプログ
ラム314 を実行することによるPC101 の停電検出時の
動作を表すフローチャートを示す。この図を参照してP
C101 の動作を説明する。PC101 は、シーケンス制御
プログラムを構成するシーケンス制御命令を実行中に停
電検出回路9(図4の(a) を参照)から入力される信号
ESG が停電を検知した値0になると、処理F1において、
その時点で実行中のシーケンス制御命令があれば、この
命令の実行を完了し、一つの命令の実行が区切りになる
と、処理F2において次に実行すべき命令を読み出し、処
理F3において読みだ出された命令が前の命令と同一のシ
ーケンス制御命令群に属するか否かを判定する。同一プ
ログラム群に属する場合は処理F4において、読みだ出し
た命令を実行し、この命令の実行後、処理F2に戻り次の
命令を読みだ出し、以下前述した処理と同様な処理を行
う。処理F3の結果、読みだ出された命令が同一シーケン
ス制御プログラム群に属さない場合は、この命令が格納
されているプログラム記憶手段301 中の番地を不揮発性
記憶手段4(図4の(b) を参照)の実行再開先頭命令の
番地を格納する領域42(図4の(b) を参照)に格納し、
プログラムの実行を停止する。
【0025】図2は上述の処理3 において、読みだ出さ
れた命令が前に実行されたシーケンス制御命令と同一の
シーケンス制御命令群に属するか否かを判定する方法の
一例を示した図である。図はシーケンス制御の一例を、
前述したラダー図の形式で表現した図である。ラダー図
ではシーケンス制御プログラムを、この例の点線で囲ま
れた枠B1〜B4に示すように、データを演算用レジスタに
ロードし、演算し、演算結果を格納するまでの一つの枠
で示された一連の命令群を一つの単位とする、シーケン
ス制御命令群の集合として表現し、点線で囲まれた枠B1
〜B4の一つで示されるシーケンス制御命令群を一つの回
路と称している。シーケンス制御命令群B1は図5の(b)
によって説明したところと同一の規則により、データA
を先ずACC21(図4を参照)にロードし、ACC21の
内容とデータB1を反転したデータとのアンド演算した結
果をACC21にロードし、ACC21の内容をキープリレ
ーK1に書き込む。以下同様にして、シーケンス制御命令
群B1ではデータA の内容とデータC のデータを反転した
データとのアンド演算結果をACC21を介してキープリ
レーK2に書き込み、データA の内容とデータD のデータ
を反転したデータとのアンド演算結果をACC21を介し
てキープリレーK3に書き込んでこの命令群の命令を完結
する。以下シーケンス制御命令群B2においては、ACC
21にデータEをロードする命令から始まり、シーケンス
制御命令群B3においては、ACC21にデータH をロード
する命令から始まり、シーケンス制御命令群B4において
は、ACC21にデータK をロードする命令から始まる。
この例のとおりに一つのシーケンス制御命令群の最初の
シーケンス制御命令は必ずデータをACC21にロードす
る命令であり、2番目以下のシーケンス制御命令にはデ
ータをACC21にロードする命令が現れない。そこで、
実行した命令に続く命令を読みだ出した場合に、PC21
は読みだ出した命令がデータをACC21にデータをロー
ドする命令であるか否かを判定することによって、実行
中の命令群の最終命令を判定することができる。
【0026】シーケンス制御命令群の全てを完了すると
前述したとおりに、シーケンス制御命令群の実行結果に
基づいた、出力リレーのデータを出力するなどのシーケ
ンス制御サイクル終端での処理を行う終端処理プログラ
ムBEを実行する。このプログラムの先頭は、外部に出力
するデータをロードする命令、終端処理プログラムBEの
サブルーチンに命令の実行を移す命令などのシーケンス
制御命令以外の命令である。そこで、シーケンス制御命
令群に続いて読みだ出された命令が、シーケンス制御命
令以外の命令例えば、データをロードする命令、命令の
実行順序を命令の格納番地順と異なる順序に変更する命
令などの場合は、シーケンス制御命令群の実行が終了
し、次の命令に入ったと判断する。
【0027】PC101 がシーケンス制御プログラムを実
行中に停電を検出した場合の動作例として、図6の(c)
に示したシーケンス制御図に表されたプログラムの実行
中に、データS0をACC21に格納し、キープリレーK1に
ACC21の格納を終わり、キープリレーK2にACC21の
内容を格納中に停電を検出したとする。PC101 はキー
プリレーK2にACC21を格納する命令の実行を完了し、
続いて次の命令としてキープリレーK3にACC21の内容
を格納する命令を読み出す。この命令はデータをACC
21にロードする命令ではないので、PC101 はキープリ
レーK3にACC21の内容を格納する命令を実行する。同
様にして、キープリレーK4にもACC21の内容を格納す
る命令を実行し、次の命令としてデータS1をACC21に
ロードする命令を読みだ出す。PC101 は前述のとおり
にデータS1をACC21に読み出す命令は次のシーケンス
制御命令群に属する命令と判定するので、読みだ出した
命令が格納されいたプログラム記憶手段3(図4を参
照)の番地を不揮発性記憶手段4(図4を参照)に格納
し、命令の実行を停止する。従って、このシーケンス制
御命令群の実行途中で停電が発生しても、キープリレー
K1〜K4には同一のデータが格納され、キープリレーK1〜
K4が有するデータに矛盾が生じない。
【0028】シーケンス制御命令群の処理が全て終了す
ると、終端処理プログラムBEに実行が移る。PC101
は、実行完了後のシーケンス制御命令に続く命令がデー
タをロードする命令などの終端処理プログラムBEに属す
る命令の場合には、この命令の一つ前の命令をシーケン
ス制御命令群の最後の命令として判定する。 (実施例2)図3に本発明の他の実施例を示す。図にお
いて、102 は当実施例のPCであり、PC102 は図1の
(a) に示したPC101 と停電時処理用システムプログラ
ム316 を有するシステムプログラム315 を格納したプロ
グラム記憶手段302 を備える点を除き、図1の(a) に示
したPC101 と同一である。
【0029】図3の(b) に停電時処理用システムプログ
ラム315 を実行することによる、PC102 の停電検出時
の動作を表すフローチャートを示す。この図を参照して
PC102 の動作を説明する。PC102 は、命令を実行中
に停電検出回路9(図4の(a) を参照)から入力される
信号ESG が停電を検知した値0になると、処理F0におい
て、停電検出時に実行中の命令があればこの命令の実行
を完了し、一つの命令の実行が区切りになった時点で、
次に実行すべき命令の番地を格納しているプログラム記
憶手段3(図4の(a) を参照)の番地を参照する。処理
F01 において、参照した命令番地から、次に実行すべき
命令が初期設定に属する命令か否かを判定し、初期設定
に属する命令であれば、この命令が格納れているプログ
ラム記憶手段の番地を、電源回復後最初に実行すべき命
令番地として、不揮発性記憶手段4(図4の(a) を参
照)に格納する。シーケンス制御命令の命令領域にある
場合は、図1の(b) に示した処理F3に命令の実行を移
す。
【0030】
【発明の効果】以上に説明したとおり、本発明によれ
ば、停電時の処理を行うプログラムを含むシステムプロ
グラムと、二つ以上のシーケンス制御命令を単位とする
シーケンス制御命令群の1単位以上からなるシーケンス
制御プログラムとを格納するプログラム記憶手段と、プ
ログラム記憶手段に格納されているプログラムを実行す
る制御演算手段と、停電時にも格納されているデータを
保持する機能を有する不揮発性記憶手段と、停電時には
格納されているデータの保持についての機能がない揮発
性記憶手段と、入力回路と、出力回路とから成り、停電
を検出する回路を備え、この停電検出回路が発信する停
電検出信号を入力されて停電時の処理を行う機能を有す
るプログラマブルコントローラにおいて、シーケンス制
御プログラムを実行中に停電が検出された場合に、シー
ケンス制御プログラムを構成する、停電検出時点におけ
るシーケンス制御命令群の次ぎにくる命令が読み出され
るまで順次命令を読み出して、停電検出時点におけるシ
ーケンス制御命令群に含まれる全てのシーケンス制御命
令を実行し、続いて電源回復後最初に実行すべき命令の
番地を不揮発性記憶手段に格納して、実行中のシーケン
ス制御プログラムの実行を停止するので、停電発生時に
は実行中のシーケンス制御命令群の実行を全て完了した
後で、命令の実行が停止され、電源回復後は次のシーケ
ンス制御命令群から命令の実行が再開される。従って、
停電がいかなる時点で発生しても、正常な動作時に同一
のデータを格納すべきデータ領域には必ず同一のデータ
を格納する、プログラマブルコントローラが提供され
る。
【0031】また、本発明の請求項2に記載の発明によ
れば、二つの続けて実行されるシーケンス制御命令群の
境界を、二つの命令群の内、後に実行される命令群の先
頭の命令が制御演算手段の演算用レジスタにデータをロ
ードする命令であることによって判別されるので、ラダ
ー図表現に基づいて作成された既存のプログラムをその
まま実行させても、停電発生時に正しく動作するプログ
ラマブルコントローラが提供される。
【0032】さらに、本発明の請求項3に記載の発明に
よれば、一つの制御命令群の最後の命令を、この命令に
続いて実行される命令がシーケンス制御命令以外の命令
であることを判別することにより検知するので、シーケ
ンス制御命令の実行時以外に停電が発生しても正しく動
作するプログラマブルコントローラが提供される。さら
にまた、本発明の請求項4に記載の発明によれば、プロ
グラムを実行中に停電が検出された場合に、停電検出時
点においてプログラムの実行に係わっている命令がシー
ケンス制御命令であるか否かを、この命令が格納されて
いる記憶手段の番地に基づいて判定し、この命令がシー
ケンス制御命令に属さない命令の場合は、停電検出後最
後に実行された命令に続いて実行されるべき命令の番地
を電源回復後に最初に実行する命令の番地として、不揮
発性記憶手段に格納し、プログラムの実行を停止するの
で、シーケンス制御に先立つ初期設定中に停電が発生し
ても正しく動作するプログラマブルコントローラが提供
される。
【図面の簡単な説明】
【図1】請求項1に記載した発明によるプログラマブル
コントローラの一実施例を示す図であって、(a) はプロ
グラマブルコントローラのシステムプログラムの内容を
示す図、(b) はプログラマブルコントローラの停電時の
動作を表したフローチャート
【図2】図1に示したプログラマブルコントローラにお
いて実行されるシーケンス制御プログラムの構造と、シ
ーケンス制御命令群の区切りを示す図
【図3】請求項3に記載した発明によるプログラマブル
コントローラの一実施例を示す図であって、(a) はプロ
グラマブルコントローラのシステムプログラムの内容を
示す図、(b) はプログラマブルコントローラの停電時の
動作を表したフローチャート
【図4】従来の停電時のデータ喪失を防止する機能を有
するプログラマブルコントローラの一例を示す図であ
り、(a) はプログラマブルコントローラのブロック図、
(b) はプログラマブルコントローラのデータ領域の内容
を示した図
【図5】揮発性記憶手段に格納されたデータを使用した
プログラム例を示した図であり、(a) は図4に示したプ
ログラマブルコントローラの外部接続図、(b) はプログ
ラムの内容を表したシーケンス制御図
【図6】不揮発性記憶手段に格納されたデータを使用し
たプログラム例を示した図であり、(a) は制御対象を表
した図、(b) はシーケンス制御に使用される信号と、制
御目的の関係を示した図、(c) は(b) に示した制御目的
を達成するためのシーケンス制御図
【符号の説明】
101 プログラマブルコントローラ 301 プログラム記憶手段 311 システムプログラム 314 停電時処理用システムプログラム 312 シーケンス制御用システムプログラム 313 一般処理用システムプログラム

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】停電時の処理を行うプログラムを含むシス
    テムプログラムと、二つ以上のシーケンス制御命令を単
    位とするシーケンス制御命令群の1単位以上からなるシ
    ーケンス制御プログラムとを格納するプログラム記憶手
    段と、前記プログラム記憶手段に格納されているプログ
    ラムを実行する制御演算手段と、停電時にも格納されて
    いるデータを保持する機能を有する不揮発性記憶手段
    と、停電時には格納されているデータの保持についての
    機能がない揮発性記憶手段と、入力回路と、出力回路と
    から成り、停電を検出する回路を備え、この停電検出回
    路が発信する停電検出信号を入力されて停電時の処理を
    行う機能を有するプログラマブルコントローラにおい
    て、 前記シーケンス制御プログラムを実行中に停電が検出さ
    れた場合に、前記シーケンス制御プログラムを構成す
    る、停電検出時点におけるシーケンス制御命令群の次ぎ
    にくる命令が読み出されるまで順次命令を読み出して、
    前記停電検出時点におけるシーケンス制御命令群に含ま
    れる全てのシーケンス制御命令を実行し、続いて電源回
    復後最初に実行すべき命令の番地を前記不揮発性記憶手
    段に格納して、前記実行中のシーケンス制御プログラム
    の実行を停止することを特徴とするプログラマブルコン
    トローラ。
  2. 【請求項2】請求項1に記載のプログラマブルコントロ
    ーラにおいて、二つの続けて実行されるシーケンス制御
    命令群の境界を、前記二つの命令群の内、後に実行され
    る命令群の先頭の命令が制御演算手段の演算用レジスタ
    にデータをロードする命令であることによって判別する
    ことを特徴とするプログラマブルコントローラ。
  3. 【請求項3】請求項1に記載のプログラマブルコントロ
    ーラにおいて、一つの制御命令群の最後の命令を、この
    命令に続いて実行される命令がシーケンス制御命令以外
    の命令であることを判別することにより、検知すること
    を特徴とするプログラマブルコントローラ。
  4. 【請求項4】請求項1に記載のプログラマブルコントロ
    ーラにおいて、プログラムを実行中に停電が検出された
    場合に、停電検出時点においてプログラムの実行に係わ
    っている命令がシーケンス制御命令であるか否かを、こ
    の命令が格納されている記憶手段の番地に基づいて判定
    し、この命令がシーケンス制御命令に属さない命令の場
    合は、停電検出後最後に実行された命令に続いて実行さ
    れるべき命令の番地を電源回復後に最初に実行する命令
    の番地として、不揮発性記憶手段に格納し、プログラム
    の実行を停止することを特徴とするプログラマブルコン
    トローラ。
JP6193913A 1994-08-18 1994-08-18 プログラマブルコントローラ Pending JPH0863206A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6193913A JPH0863206A (ja) 1994-08-18 1994-08-18 プログラマブルコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6193913A JPH0863206A (ja) 1994-08-18 1994-08-18 プログラマブルコントローラ

Publications (1)

Publication Number Publication Date
JPH0863206A true JPH0863206A (ja) 1996-03-08

Family

ID=16315831

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6193913A Pending JPH0863206A (ja) 1994-08-18 1994-08-18 プログラマブルコントローラ

Country Status (1)

Country Link
JP (1) JPH0863206A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007236980A (ja) * 2007-06-25 2007-09-20 Sanyo Product Co Ltd 遊技機
CN114508522A (zh) * 2022-03-03 2022-05-17 山西百一机械设备制造有限公司 一种防止数据丢失的混铁车架车机控制方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007236980A (ja) * 2007-06-25 2007-09-20 Sanyo Product Co Ltd 遊技機
CN114508522A (zh) * 2022-03-03 2022-05-17 山西百一机械设备制造有限公司 一种防止数据丢失的混铁车架车机控制方法
CN114508522B (zh) * 2022-03-03 2023-08-29 山西百一机械设备制造有限公司 一种防止数据丢失的混铁车架车机控制方法

Similar Documents

Publication Publication Date Title
JP2001123874A (ja) 電子制御装置のプログラム書換システム及びメモリ書換装置
JPH0863206A (ja) プログラマブルコントローラ
JP2009265819A (ja) 制御装置およびプログラム
JP2539264B2 (ja) シ―ケンスコントロ―ラ
JPH0611038U (ja) データ処理装置
JP3310481B2 (ja) テストモード実行装置
JPH0440725B2 (ja)
JPH0624884Y2 (ja) プログラマブルコントロ−ラ
JP2731166B2 (ja) プログラマブルコントローラ
JP3207333B2 (ja) プログラマブルコントロ−ラ
JPS603210B2 (ja) シ−ケンスコントロ−ラ
JPS5969811A (ja) プログラマブルコントロ−ラ
KR100284044B1 (ko) 연관 관계를 갖는 기능 기기들의 이상 동작 복구 방법
JPS5948402B2 (ja) シ−ケンスコントロ−ラ
GB2253720A (en) Diagnostic system for programmable controller
JPH05241621A (ja) シーケンスプログラムの照合方法
JPS63176274A (ja) エレベ−タ−の制御装置
JP4429395B2 (ja) プログラミング装置
JPS6118206B2 (ja)
JPS6118205B2 (ja)
JPH04344937A (ja) ファジー推論装置
JPH1124712A (ja) プログラマブルコントローラ
JPH04108495A (ja) 洗濯機の運転制御装置
JPS5846442A (ja) プログラマブル・コントロ−ラ
JP2006252278A (ja) マイクロコンピュータ