JPH0640282B2 - プログラマブルコントロ−ラにおけるプログラムの検証方法 - Google Patents

プログラマブルコントロ−ラにおけるプログラムの検証方法

Info

Publication number
JPH0640282B2
JPH0640282B2 JP58147211A JP14721183A JPH0640282B2 JP H0640282 B2 JPH0640282 B2 JP H0640282B2 JP 58147211 A JP58147211 A JP 58147211A JP 14721183 A JP14721183 A JP 14721183A JP H0640282 B2 JPH0640282 B2 JP H0640282B2
Authority
JP
Japan
Prior art keywords
state
program
relay
unit
state change
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.)
Expired - Lifetime
Application number
JP58147211A
Other languages
English (en)
Other versions
JPS6039202A (ja
Inventor
伸宏 大矢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP58147211A priority Critical patent/JPH0640282B2/ja
Publication of JPS6039202A publication Critical patent/JPS6039202A/ja
Publication of JPH0640282B2 publication Critical patent/JPH0640282B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/058Safety, monitoring

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、プログラマブルコントローラにおけるプログ
ラムの検証方法に関するものである。
〔従来の技術〕
プログラマブルコントローラのプログラムは、継電器の
導を模した形(以下、この模擬継電器のことを「リレ
ー」という。)で行なわれる。
リレーは、付勢及び消勢の2状態を持っており、プログ
ラマブルコントローラのプログラムは、これらのリレー
を多数組み合わせたものとして作成される。従って、そ
のプログラムに誤りがないことの検証としては、それら
の全てのリレーが付勢及び消勢双方の状態をとった場合
について正しいことが少なくともあらわにされていなけ
ればならない。
第1図は、一般のプログラマブルコントローラの構成を
示すものであり、システムの状態等を表す外部の信号
は、入力部1を通してデータメモリー部2の対応する部
分に置かれる。データメモリー部2には、プログラマブ
ルコントローラの内部変数、すなわちリレーも置かれて
いる。
利用者は、プログラミングパネル6を通してプログラム
を作成する。そのプログラムは、プログラムメモリー部
5に記憶される。演算部4は、プログラムメモリー部5
よりプログラムを読み出し、その指示するところに従っ
てデータメモリー部2の内のデータを読み、それに対し
て演算を施し、その結果をデータメモリー部2に書き込
む。データメモリー部2の内、出力に関連づけられた部
分のデータが出力部3を通して外部へ出力される。
このようなプログラマブルコントローラの動作は、第2
図のフローチャートに示すような手順で実行される。
電源が投入され、装置が始動されると、まず、ステップ
200に示す動作が行なわれ、ハードウエア・ソフトウエ
アについての各種の初期設定を行なう。
始動時の初期設定が終わると、ステップ201より作動が
開始し、ステップ205まで処理が完了すると再びステッ
プ201へ戻り、動作を繰り返す。このような方式を一般
にスキャン方式と呼んでいる。
ステップ201では、外部からの入力データを、入力部1
を通して取り込み、データメモリー部2に記憶させる。
それが完了したら、ステップ202へ進む。ここでは、プ
ログラムメモリー部5よりプログラムを読み出し、それ
に従い、更にデータメモリー部2上のデータを用いて演
算を行ない、その結果をデータメモリー部2に書き込
む。上記プログラムは、予めプログラミングパネル6を
用いてプログラムメモリー部5に書き込んでおいたもの
である。
以上の事情を、第3図のプログラム例を用いて更に詳し
く説明する。まず、第3図のプログラム例自身について
説明する。プログラマブルコントローラのプログラム
は、この図のようにリレー回路を模した形で作成される
ことが多い。リレー回路の代わりに、MILの論理記号
あるいはブール代数式などが用いられることもあるが、
ここでは第3図のリレー回路により説明する。301〜304
は接点を表し、305,306はコイルを表している。これら
に傍記した4桁の番号はリレー番号である。例えば接点
301に付記した0101はリレー番号である。コイル305(リ
レー番号0001)には、リレー0101のA接点とリレー0102
のA接点が直列に接続されており、リレー番号0002のコ
イル306には、リレー0105のA接点303とリレー0106のB
接点を並列に接続したものが接続されている。このよう
な回路がどのように動作するかについては明白であるの
で説明を省く。
さて、上記のプログラムを実行する手続きは、プログラ
ムメモリー部5よりプログラムを順次読み出しながら、
次のように行なわれる。
上記第3図のプログラム例がどのように処理されるか
を、第2図及び第4図のフローチャートに従って説明す
る。
まず、リレー0001の新状態を求める動作が第2図のステ
ップ202で行なわれる。その部分の動作を抜き出して描
いたフローチャートが第4図である。
リレー0101及びリレー0102の状態、即ち付勢であるか消
勢であるかを、データメモリー部5より読み出し、その
論理積(直列接続に当たる)を求め(ステップ401)、
それをデータメモリー部5の中のリレー0001に相当する
部分に書き込み記憶させる(ステップ402)。このと
き、リレー0001の旧状態は失われる。
リレー0001について、第2図のステップ202の処理が済
むと、ステップ203へ進み、次のリレー0002についての
処理の準備が行なわれる。更に、判断ステップ204で、
全リレーについて終了したかどうかを調べる。終了して
いなければステップ202へ戻り、新しいリレー、即ちリ
レー0002についての処理を実行する。
このようにして、全プログラムについての1回の演算が
終わると、ステップ205へ進む。ステップ205では、デー
タメモリー部5に置かれたリレーの内で、外部に出力す
べきものを出力部3を通して外部に出力する。
以上の動作を1スキャンと呼び、1スキャン分の動作が
終了したら、ステップ201へ戻り、新たなスキャンが始
められる。
一方、実開昭55-107603号公報には、シーケンスコント
ローラにおけるシミュレート装置において、入力信号を
演算制御部に与えたことによってどの出力の状態が変化
したかということを、入力信号を与えた後でも識別でき
るように、テスト用の出力表示装置中に、変化を検出す
る手段を備えたものが記載されている。
〔発明が解決しようとする課題〕
しかしながら、前述した従来のプログラマブルコントロ
ーラにおいては、上記した全てのリレーが付勢及び消勢
双方の状態をとったかどうかを明らかに記憶表示する機
能をもっていなかったため、検証が終了したかどうかの
確認は検証作業者の記憶等に頼らざるを得ず、従って検
証もれがあったり、検証の値度が不明確であった。
また、実開昭55-107603号公報に記載された装置におい
ては、変化の検出はシミュレート装置に限定されてお
り、いま操作した模擬入力スイッチの操作に応じた変化
した出力表示しかできないという問題があり、プログラ
ムのデバグ処理を行うには不都合である。
本発明は、このような従来の問題点を解消して、プログ
ラマブルコントローラの検証作業を確実に行うことを目
的とする。
〔課題を解決するための手段〕
この目的を達成するため、本発明は、少なくとも、外部
の信号を取り込む入力部と、外部へ信号を出力する出力
部と、プログラムを記憶させておくプログラムメモリー
部と、リレーの状態等を保持するデータメモリー部と、
前記プログラムメモリー部に記憶されているプログラム
を実行するとともに前記データメモリー部内のデータを
読み出して演算を行なう演算部とを有するプログラマブ
ルコントローラにおけるプログラムの検証方法におい
て、 前記プログラマブルコントローラ内のリレーのそれぞれ
に対し1ビットの状態変化記憶フラグを対応させ、該当
するリレーの状態が変化したかどうかを記憶する状態記
憶部を設け、プログラムの検証に先立って前記状態記憶
部の状態変化記憶フラグを全て0にリセットし、プログ
ラムメモリー部よりプログラムを読み出し、各リレーに
ついて新状態が付勢であるか消勢であるかを計算し、新
状態が旧状態と同じかどうかを判断し、同じでなければ
状態変化記憶部の該当部のフラグを1に書き換え、これ
を全リレーについて行い、前記状態変化記憶フラグの状
態を出力部を通して外部に表示することを特徴とする。
前記状態変化記憶フラグの状態表示は、プログラミング
パネルに全リレーあるいは任意に指定したリレーの状態
変化記憶フラグを表示することにより行なうことができ
る。
〔実施例〕
以下、本発明を第5図及び第6図に示す実施例に基づい
て説明する。
第5図は従来の第1図に、第6図は第4図に対応するも
のであり、従来と同一の構成要素には同一の符号を付し
た。
第5図の構成は、状態変化記憶部507を持つ点で第1図
に示す従来装置と異なっている。状態変化記憶部507
は、プログラムメモリー部5,データメモリー部2から
独立したハードウエア装置であってもよいし、同一のハ
ードウエア装置の異なった部分であってもよい。第5図
では、独立した記憶装置とし、更に停電時にも記憶が失
われないようにバックアップ電池508を設けている。
状態記憶部507内には、プログラマブルコントローラ内
のリレーそれぞれに対して1ビットを対応させ、そこに
そのリレーが変化したかどうかを記憶させる。これを状
態変化記憶フラグを呼ぶことにする。
次に、この装置の動作について説明する。
まず、プログラムのデバグを始める前に、プログラミン
グパネル6に設けたリセットキー(図示せず)を押すこ
とにより、状態変化記憶部507の中の全てのフラグを
“0”(初期状態)にする。これは、全てのリレーが付
勢あるいは消勢のいずれか一方の状態にあり、状態の変
化を経験していないことを意味している。すなわち、そ
のリレーに関する論理のデバグが未了であることにな
る。
プログラムのデバグが進むに従い、いくつかのリレーは
その状態が変化し、残りのリレーは変化しない。状態が
変化すると、そのリレーの状態変化記憶フラグが“1”
に書き替えられる。それは、第6図のフローチャートに
従って行なわれる。
第6図のフローチャートは、各リレーの新状態に関する
演算を計算し、データメモリー部2の該当ビットに新状
態を書き込む第4図のフローチャートに、状態変化検出
用のステップ603,状態変化記憶用のステップ604を追加
したものである。これらの追加部分について説明する。
判断ステップ603で、該当リレーがその状態を変化させ
ようとしているか、そうでないかを判別する。状態が変
化しない場合には、ステップ402へ制御が移され、第4
図の場合と同一の動作となる。状態が変化する場合に
は、ステップ604で、そのリレーの状態変化フラグに
“1”が書き込まれる。
このようにして、あるリレーの新状態の計算が行なわれ
るとき、常にその変化、不変化が検出され、変化が生じ
れば、ただちにそのリレーに対応する状態変化フラグに
“1”が書き込まれる。
このことにより、そのリレーがデバグ開始時点より変化
していなければ“0”が、変化していれば“1”が、そ
のリレーに対応する状態変化記憶フラグに残されること
になる。
従って、デバグを終了させようとするときに、状態変化
記憶部の内容をプログラミングパネル6に設けられたC
RT(図示せず)に表示させると、どのリレーが試され
ていないかを知ることができる。即ち、そのデバグ未了
のリレーについてのデバグを重点的に実行すればよいこ
とがわかる。
第7図はその表示の1例であり、リレー0000〜0099の10
0個についてその状態変化記憶フラグが表示されてい
る。最左端の列及び最上段の行はリレー番号を表す見出
しである。最左端は10位以上の桁を、最上段は1の位を
表している。行と列の交点に、各リレーの状態変化記憶
フラグが表示される。例えば0010と4列の交点にリレー
0014の状態変化記憶フラグが表示されている。第7図で
は“0”になっている。
デバグを進めていくと、プログラムに含まれている誤り
が発見される。プログラムの変更によりその誤りは修正
されるが、プログラムの改正された部分については検証
が必要であり、何等の変更も加えなかった部分について
の再検証は必要でない。このような場面で状態変化フラ
グの部分リセットが有効である。プログラミングパネル
に作業者がリレー番号を打ち込み、その状態変化フラグ
を選択的にリセットする(即ち“0”を書き込む)こと
ができる。また、プログラミングパネルからプログラム
のある部分を書き込むときに、それに含まれているリレ
ーの状態変化フラグのみをリセットし、他はそのまま保
持することも可能である。
〔発明の効果〕
上述したように本発明によれば、未検証の部位、すなわ
ち、過去に“1”と“0”の双方の状態を経験しなかっ
たコイルがどれであるかを、検証作業者の記憶に頼るこ
となく確実に知ることができ、これにより、未検証のコ
イルが皆無となるようなテストを追加することにより、
より完全なプログラムのデバグ処理を行うことができ
る。
【図面の簡単な説明】
第1図は一般のプログラマブルコントローラの構成を示
すブロック図、第2図はプログラマブルコントローラの
内部動作を示すフローチャート、第3図はプログラムの
例を示す説明図、第4図は第3図のプログラムの処理を
示すフローチャート、第5図は本発明を実施するための
プログラマブルコントローラの構成例を示すブロック
図、第6図は本発明における検証の手順を示すフローチ
ャート、第7図はリレー状態変化フラグの表示の例を示
す説明図である。 1:入力部、2:データメモリー部 3:出力部、4:演算部 5:プログラムメモリー部 507:状態変化記憶部 508:電池 6:プログラミングパネル
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭57−168307(JP,A) 特開 昭56−168129(JP,A) 特開 昭56−2008(JP,A) 特開 昭52−40286(JP,A) 特開 昭52−40287(JP,A) 特開 昭56−168214(JP,A) 特開 昭56−168219(JP,A) 特開 昭58−39307(JP,A) 実開 昭55−107603(JP,U) 実公 昭59−33041(JP,Y2)

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】少なくとも、外部の信号を取り込む入力部
    (1)と、外部へ信号を出力する出力部(3)と、プログラム
    を記憶させておくプログラムメモリー部(5)と、リレー
    の状態等を保持するデータメモリー部(2)と、前記プロ
    グラムメモリー部(5)に記憶されているプログラムを実
    行するとともに前記データメモリー部内のデータを読み
    出して演算を行なう演算部(4)とを有するプログラマブ
    ルコントローラにおけるプログラムの検証方法におい
    て、 前記プログラマブルコントローラ内のリレーのそれぞれ
    に対し1ビットの状態変化記憶フラグを対応させ、該当
    するリレーの状態が変化したかどうかを記憶する状態記
    憶部(507)を設け、 プログラムの検証に先立って前記状態記憶部(507)の状
    態変化記憶フラグを全て0にリセットし、 プログラムメモリー部(5)よりプログラムを読み出し、
    各リレーについて新状態が付勢であるか消勢であるかを
    計算し、新状態が旧状態と同じかどうかを判断し、同じ
    でなければ状態変化記憶部の該当部のフラグを1に書き
    換え、 これを全リレーについて行い、前記状態変化記憶フラグ
    の状態を出力部(3)を通して外部に表示する ことを特徴とするプログラマブルコントローラにおける
    プログラムの検証方法。
  2. 【請求項2】前記状態変化記憶フラグの状態の表示は、
    プログラミングパネルに全リレーあるいは任意に指定し
    たリレーの状態変化記憶フラグを表示するものである特
    許請求の範囲第1項記載のプログラマブルコントローラ
    におけるプログラムの検証方法。
JP58147211A 1983-08-10 1983-08-10 プログラマブルコントロ−ラにおけるプログラムの検証方法 Expired - Lifetime JPH0640282B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58147211A JPH0640282B2 (ja) 1983-08-10 1983-08-10 プログラマブルコントロ−ラにおけるプログラムの検証方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58147211A JPH0640282B2 (ja) 1983-08-10 1983-08-10 プログラマブルコントロ−ラにおけるプログラムの検証方法

Publications (2)

Publication Number Publication Date
JPS6039202A JPS6039202A (ja) 1985-03-01
JPH0640282B2 true JPH0640282B2 (ja) 1994-05-25

Family

ID=15425076

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58147211A Expired - Lifetime JPH0640282B2 (ja) 1983-08-10 1983-08-10 プログラマブルコントロ−ラにおけるプログラムの検証方法

Country Status (1)

Country Link
JP (1) JPH0640282B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5933041Y2 (ja) * 1979-01-23 1984-09-14 豊田工機株式会社 シ−ケンスコントロ−ラにおけるシミユレ−ト装置
JPS5933041U (ja) * 1982-08-24 1984-02-29 株式会社きもと マスク層を有する製版用感光材料

Also Published As

Publication number Publication date
JPS6039202A (ja) 1985-03-01

Similar Documents

Publication Publication Date Title
JPH0640282B2 (ja) プログラマブルコントロ−ラにおけるプログラムの検証方法
US5504862A (en) Logic verification method
EP0782074B1 (en) Game apparatus and method for debugging game program
JPS6146864B2 (ja)
JPH1115661A (ja) Cpuの自己診断方法
JPS5946002B2 (ja) シ−ケンス制御装置における停電時および復電時の処理方式
JPH0547842B2 (ja)
JPH0887426A (ja) 自己診断状況表示方式
JPH07253913A (ja) ログ解析プログラムの検証装置
JPH10124339A (ja) デジタル制御装置
JPH0413728B2 (ja)
JPS6017544A (ja) 擬似故障発生方式
JPS6261974B2 (ja)
JPS58158747A (ja) プログラマブル・コントロ−ラ
JPH051481B2 (ja)
JPH0571107B2 (ja)
JPH081607B2 (ja) 情報処理システムにおける擬似障害発生方式
JPH02307135A (ja) 命令実行動作監視方法
JPS60251438A (ja) 制御メモリ自己診断方式
JPS6015715A (ja) シ−ケンス制御における異常チエツク方法
JPH06301570A (ja) 試験プログラムの正常性チェック機能付きエミュレータ
JPS6160146A (ja) マイクロプログラムチエツク方式
JP2003091301A (ja) プログラマブル・コントローラのエラー防止方式
JPH02178862A (ja) 情報処理装置
JPH0293737A (ja) 回路シミュレータ