JP3002052B2 - プログラマブルコントローラのプログラム作成方法 - Google Patents
プログラマブルコントローラのプログラム作成方法Info
- Publication number
- JP3002052B2 JP3002052B2 JP4046798A JP4679892A JP3002052B2 JP 3002052 B2 JP3002052 B2 JP 3002052B2 JP 4046798 A JP4046798 A JP 4046798A JP 4679892 A JP4679892 A JP 4679892A JP 3002052 B2 JP3002052 B2 JP 3002052B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- symbol
- circuit
- symbol information
- information
- 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 - Fee Related
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13022—Convert source program to intermediate program
Landscapes
- Programmable Controllers (AREA)
Description
ローラのプログラム作成方法に関し、さらに詳しくは、
回路図形プログラムから中間言語へ高速にコンパイルで
きるプログラマブルコントローラのプログラム作成方法
に関する。
呼ばれ、作業現場における様々な物量的情報あるいは論
理的情報に応じて論理演算により所定の出力制御(シー
ケンス制御)を行う汎用シーケンスコントローラ(PL
C:Programable Logic Controller)がある。
来コンピュータに関してはハードウエア、ソフトウエア
共に疎遠であったユーザにとって、PLCがコンピュー
タであることを意識することなく容易にプログラムを構
築できるようにするというPLC開発当初からの目的に
基づいて、通常は、コンピュータプログラミングとは全
く異なる記述形式を伴う。
ログラムローダ)が用いられ、例えば図9に示すような
PLC化以前から現場で用いられていたa接点(常時開
接点)(同図入力1)、b接点(常時閉接点)(同図入
力2)、コイル(同図出力3)等のシンボルマークの組
合せによるリレー回路の展開接続図(ラダー図)が、液
晶表示装置等を用いて画面上に記述される。この記述さ
れたラダー図による回路図形プログラムは、プログラム
ローダによって、図形メモリ上にドットイメージで展開
される。この回路図形プログラムを外部記憶装置等に記
憶させる場合は、図形メモリ上にドットイメージで展開
された回路図形プログラムを順次に走査して得られるシ
ーケンシャルデータを記憶させる。
二次元に展開されたドットイメージ情報、又は一次元に
変換されたドット列情報であるが、この単なるドット情
報である回路図形プログラムは、一旦、中間言語に変換
(コンパイル)され、更に機械語に変換される。
にとって実行可能なプログラムがPLCに格納されるこ
とになるが、PLCには中間言語の状態で格納される場
合も多く、その場合はPLC側で中間言語を機械語に変
換する。
に展開(コンパイル)するための、従来のアルゴリズム
を示したものである。この処理では、図形メモリ上に二
次元に展開された回路図形プログラムのドットイメージ
からシンボルイメージが抽出され更にその抽出されたシ
ンボルイメージを接続している線イメージが抽出された
後、これらが解析される。
成画面の回路図情報(図形メモリ上のドットイメージ)
を全て取り出す(S21)。次にその中からラダー図1
回路分の情報を取り出し(S22)、横方向の結線の座
標とシンボルの座標とに基づいてリンク情報(接続情
報)を作成し(S23及びS24)、さらに縦方向の結
線の座標とシンボルの座標とに基づいて同様にリンク情
報を作成する(S25及びS26)。そして、それらの
シンボル情報とリンク情報とに基づいて、1回路分の中
間言語に展開する(S27)。そして、S21で取り出
した回路図情報の全回路分についてS22〜S27を繰
り返す。
は、例えば、図11(a) に示すラダー図Aについては、
縦方向の2本の結線71及び72に対してS26のリン
ク情報作成処理が2回行われる。図11(b) に示すラダ
ー図Bの場合では、縦方向の6本の結線73〜78に対
してS26のリンク情報作成処理が6回行われる。
明すると、図11(a) に示すラダー図Aについては、先
ず、図12(a) に示すようにラダー図1回路分の情報が
取り出される。そして縦結線部すなわち結線の分岐開始
部と終了部が識別されると、その識別に基づいて、同図
(b) に示すように結線の分岐開始前と終了後とにダミー
シンボルWK81及び82が挿入される。そして、同図
(c) に破線で示すように入力1とWK81のリンク情報
及びWK82と出力1のリンク情報がまず作成され、次
にWK81と入力3のリンク情報及び入力3とWK82
のリンク情報が作成され、続いてWK81と入力2のリ
ンク情報及び入力2とWK82のリンク情報が作成され
る。そして最後にそれらのリンク情報に基づいて、ラダ
ー図1回路分が同図(d) に示す中間言語に展開される。
いては、この場合も、図13(a) に示すように、先ずラ
ダー図1回路分の情報が取り出される。そして、縦結線
部が識別されて、同図(b) に示すように縦結線部の前後
にダミーシンボルWK91及び92が挿入される。続い
て先ず同図(c) に破線で示すように入力1とWK91の
リンク情報及びWK92と出力1のリンク情報が作成さ
れる。次に、WK91と入力5のリンク情報及び入力5
とWK92のリンク情報が作成され、続いて同図(d) に
示すように、入力5に対すると同様に、WK91及びW
K92と、入力4、入力3、及び入力2とのリンク情報
がそれぞれ順次作成される。そして最後にそれらのリン
ク情報に基づいて、ラダー図1回路分が同図(e) に示す
中間言語に展開される。
p1 op2 ・・・ opn)」の形になっており、
「(」は命令の始り、「F」は命令の名称、「)」は命
令の終りである。また、op1、op2等は命令のオペ
ランドであり、これらが更に命令となり得るものであ
る。
「(W」の「(」が命令の始りで「W」が命令の名称、
「(&」から「入力5))」までが第1オペランド、そ
して「出力1)」の「出力1」が第2オペランド
で「)」が命令の終りである。上記命令「(W」の第1
オペランドも命令になっており、「(&」の「(」が命
令の始りで「&」は命令の名称、「入力1」が第1オペ
ランド、「(>=1」から「入力5)」までが第2オペ
ランド、そして次の「)」が命令の終りである。更に上
記命令「(&」の第2オペランドも命令になっている。
命令「(>=1」は、その第1オペランド「入力2」か
ら第4オペランド「入力5」までの論理和演算を行なえ
という命令である。そして命令「(&」は、その第1オ
ペランド「入力1」と、第2オペランドすなわち上記論
理和演算の結果との論理積演算を行なえという命令であ
る。そして、「(W」は、その第1オペランドすなわち
上記論理積演算の結果を、第2オペランド「出力1」に
代入せよという命令である。このように、図11(b) の
ラダー図の表す機能が中間言語で表現される。
た従来の、回路図形プログラムから中間言語へのコンパ
イル方法では、一旦結線とシンボルとのリンク情報の作
成処理を行ってから中間言語にコンパイルしているため
に、図11(a) に示したラダー図Aに対する中間言語へ
のコンパイル処理(図12参照)と、図11(b) に示し
たラダー図Bに対する中間言語へのコンパイル処理(図
13参照)とを比較して明らかなように、回路の複雑さ
に対応してコンパイル時間が飛躍的に増大する。
(PLCを実際に運転させて稼動状態とラダー図とを対
比すること)によりデバック(プログラムの不良個所の
発見と修正)する際、回路図形プログラム作成終了から
PLCに中間言語又は機械語を格納するまでの処理に多
大の時間を要し、手数がかかって面倒であるばかりでな
く、プログラム作成能率が低下するという問題点を有し
ていた。
れたものであり、その目的とするところは、回路図形プ
ログラムから中間言語へ高速にコンパイルできるプログ
ラマブルコントローラのプログラム作成方法を実現する
ことにある。
である。請求項1記載の発明では、図1に示すように、
まず、シンボル情報生成手段1は、回路図形プログラム
を構成する図形の各シンボル(例えば、a接点、b接
点、コイル、並列接続線等)に対応するシンボル情報を
生成する。このシンボル情報は、少なくとも当該シンボ
ルの図形上の位置及び他のシンボルとの接続を示す特性
データを有する情報である。
情報生成手段1により生成されたシンボル情報により回
路図形プログラムAを作成する。請求項2記載の発明で
は、図2に示すように、シンボル情報生成手段1は、回
路図形プログラムを構成する図形の各シンボル(例え
ば、a接点、b接点、コイル、並列接続線等)に対応す
るシンボル情報を生成する。このシンボル情報も、請求
項1の発明と同様、少なくとも当該シンボルの図形上の
位置及び他のシンボルとの接続を示す特性データを有す
る情報である。
成手段1により生成されたシンボル情報により回路図形
プログラムAを作成する。展開手段3は、プログラム作
成手段2により作成された回路図形プログラムAのシン
ボル情報に基づいて回路図形プログラムAを中間言語に
展開する。
求項3記載のように、少なくとも接点、コイル、及び複
数の接点を並列に接続する並列接続線に対応するシンボ
ル情報を生成する。
では、回路図形プログラムを構成する図形の各部、例え
ば少なくとも接点、コイル、及び複数の接点を並列に接
続する並列接続線に対応するシンボル情報が生成され、
それらのシンボル情報により回路図形プログラムAが作
成される。また、或いは上記のようにして作成された回
路図形プログラムがそのシンボル情報に基づいて中間言
語に展開される。
が、単にラダー図がドットイメージデータとして二次元
に展開されて表現されるのではなく、ラダー図のシンボ
ルがシンボル情報として表現され、かつ並列接続線がシ
ンボル情報として表現されるので、それら各シンボル情
報の有する特性データに基づいて回路図形プログラムか
ら中間言語へ直ちにコンパイルすることができ、従っ
て、回路図形プログラムから中間言語へ高速にコンパイ
ルできるプログラマブルコントローラのプログラム作成
方法を実現することができる。
しながら説明する。図3(a)、(b) は回路図形プログラム
作成時において、特には図示しないメモリM上に順次格
納されるシンボル情報のデータ構成の例を示す図であ
る。
b接点、又はコイル等のシンボルの種別を示すシンボル
種別データ部31−0、シンボルの上部左端の表示位置
を表すXY座標部31−1、シンボルの左側(入力側)
に接続する他のシンボルについて示す左側接続部31−
2、及び右側(出力側)に接続する他のシンボルについ
て示す右側接続部31−3からなる。
列接続線であることを示すシンボル種別部32−0、シ
ンボルの上端の表示位置を表す上端XY座標部32−
1、シンボルの下端の表示位置(シンボルの長さ)を表
す下端XY座標部32−2、シンボルの左側に接続する
他の複数のシンボルについて示す左側接続部A32−
3、左側接続部B32−4、・・・、及びシンボルの右
側に接続する他の複数のシンボルについて示す右側接続
部A32−i、右側接続部B32−i+1、・・・から
なる。
路図形プログラムが、二次元に展開されたラダー図のド
ットイメージデータとしてではなく、ラダー図のシンボ
ルの種別、図形上の位置、及び他のシンボルとの接続等
の特性を示すデータからなる一連のシンボル情報として
メモリ上に記憶されるところに特徴があり、特に、ラダ
ー図で並列接続線を表す縦線イメージが、他の接点やコ
イルと同様にシンボルとしてデータ化されるところに大
きな特徴がある。
てプログラムローダがシンボル情報を生成することは、
表示画面を見ながらのラダー図手作業入力によって行わ
れる回路図形プログラミング作業に対して、処理速度低
下等の悪影響を何ら与えるものではなく、従来の回路図
形プログラミングに比較してプログラミングの能率に変
るところはない。
プログラムから、中間言語に展開(コンパイル)する処
理動作を、図4のフローチャートを用いて説明する。な
お、この処理は、プログラムローダのROM(Read Only
Memory)、RAM(Random Access Memory)等に格納され
たプログラムに基づいてマイクロプロセッサ等により行
われる。
図情報、すなわち回路図形プログラムのメモリM上のシ
ンボル情報を全て取り出す(S41)。次に、その中か
らラダー図1回路分のシンボル情報を取り出す(S4
2)。そして、各シンボル情報の有するシンボルの種
別、図形上の位置、及び他のシンボルとの接続を示す特
性データに基づいて、上記一回路分を中間言語に展開す
る(S43)。そして、S41で取り出した回路図情報
の全回路分についてS42〜S43を繰り返す。
情報が読み出された後、従来のダミーシンボルの作成及
びリンク情報の作成の処理を行うことなく直ちに中間言
語への展開が行われる。
場合、本実施例では、その回路図情報は、図5(a) に示
すように、入力1(51)、入力2(52)、入力3
(53)、及び出力1(54)がシンボル化されている
と共に、並列接続線55、及び並列接続線56もシンボ
ル化されており、これらの示す特性データから、直ちに
同図(b) に示す中間言語(図12(d) を再掲)に展開す
ることができる。
合も、同様にその回路図情報は、図6(a) に示すよう
に、入力1(61)〜入力5(65)及び出力1(6
6)がシンボル化されているばかりでなく、並列接続線
67、及び並列接続線68もシンボル化されており、そ
れらの特性情報に基づいて、ただちに同図(b) に示す中
間言語(図13(e) を再掲)に展開することができる。
ム)の記述形式については、近年、SFC(Sequencial
Functiont Chart)というPLC専用の国際規格のプロ
グラム記述形式が用いられることが多くなっている。こ
れは、例えば図7に示すように、ステップと呼ばれる箱
状の記述部とトランジションと呼ばれる短線状の記述部
とが交互に配置され、フローチャート的に図化された形
式のものである。ステップには処理が、トランジション
にはステップの選択条件が記述される。
ー図(回路図形プログラム)について説明したが、本発
明はこれに限ることなく、上記のSFC記述の場合にも
適用できる。例えば、図8に示すように、6個のステッ
プ83(ステップ1〜6)及び5個のトランジション8
2(トランジション1〜5)をシンボル情報化すると共
に、2本の分岐接続線83(分岐開始を示す上方の横
線、及び分岐終了を示す下方の横線)をもシンボル情報
化する。これによって、上述したと同様に直ちに中間言
語に展開できる。
図形プログラムの表現を、単にラダー図をドットイメー
ジデータとして二次元に展開して表現するのではなく、
ラダー図のシンボルをその特性データからなるシンボル
情報として表現し、かつ並列接続線をもその特性データ
からなるシンボル情報として表現するようにしたので、
それら各シンボル情報の特性データに基づいて回路図形
プログラムから中間言語へ直ちにコンパイルすることが
できるため、回路図形プログラムから中間言語へ高速に
コンパイルできるプログラマブルコントローラのプログ
ラム作成方法の実現が可能となる。
す図である。
パイル)する処理動作のフローチャートである。
する図(その1)、(b) はそのラダー図から展開される
中間言語を示す図(その1)である。
する図(その2)、(b) はそのラダー図から展開される
中間言語を示す図(その2)である。
式に適用した場合を説明する図である。
説明するフローチャートである。
図である。
言語に展開する処理を説明する図である。
中間言語に展開する処理を説明する図である。
Claims (3)
- 【請求項1】 回路図形プログラムを構成する図形の各
シンボルに対応させて、少なくとも該シンボルの図形上
の位置及び他のシンボルとの接続を示す特性データを有
するシンボル情報を生成するシンボル情報生成手段
(1)と、 該シンボル情報生成手段(1)により生成されたシンボ
ル情報により回路図形プログラム(A)を作成するプロ
グラム作成手段(2)と、 を有することを特徴とするプログラマブルコントローラ
のプログラム作成方法。 - 【請求項2】 回路図形プログラムを構成する図形の各
シンボルに対応させて、少なくとも該シンボルの図形上
の位置及び他のシンボルとの接続を示す特性データを有
するシンボル情報を生成するシンボル情報生成手段
(1)と、 該シンボル情報生成手段(1)により生成されたシンボ
ル情報により回路図形プログラム(A)を作成するプロ
グラム作成手段(2)と、 該プログラム作成手段(2)により作成された回路図形
プログラム(A)のシンボル情報に基づいて該回路図形
プログラム(A)を中間言語に展開する展開手段(3)
と、 を有することを特徴とするプログラマブルコントローラ
のプログラム作成方法。 - 【請求項3】 前記シンボル情報生成手段(1)は、少
なくとも接点、コイル、及び複数の接点を並列に接続す
る並列接続線に対応するシンボル情報を生成することを
特徴とする請求項1又は2記載のプログラマブルコント
ローラのプログラム作成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4046798A JP3002052B2 (ja) | 1992-03-04 | 1992-03-04 | プログラマブルコントローラのプログラム作成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4046798A JP3002052B2 (ja) | 1992-03-04 | 1992-03-04 | プログラマブルコントローラのプログラム作成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05250013A JPH05250013A (ja) | 1993-09-28 |
JP3002052B2 true JP3002052B2 (ja) | 2000-01-24 |
Family
ID=12757357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4046798A Expired - Fee Related JP3002052B2 (ja) | 1992-03-04 | 1992-03-04 | プログラマブルコントローラのプログラム作成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3002052B2 (ja) |
-
1992
- 1992-03-04 JP JP4046798A patent/JP3002052B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH05250013A (ja) | 1993-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5130932A (en) | Generating device for production system simulator | |
US5517604A (en) | Data input/output process and design supporting process | |
JP3002052B2 (ja) | プログラマブルコントローラのプログラム作成方法 | |
JPH0253102A (ja) | フアジイ・ルール発生装置および方法,ならびに確認装置および方法 | |
JP3658027B2 (ja) | 図形編集装置および図形編集方法 | |
JP2875135B2 (ja) | プログラマブルコントローラ用プログラム装置 | |
JP2971251B2 (ja) | Sfcプログラミング装置 | |
JP2006092441A (ja) | プログラマブルコントローラ | |
JPH05250011A (ja) | プログラマブルコントローラの逆コンパイル方法 | |
JP3110326B2 (ja) | 検証用テストパタン設計装置 | |
KR940000597B1 (ko) | 멀티 윈도우 시스템의 표시 제어 방법 | |
JPH1039905A (ja) | プログラム表示方法及びプログラミング装置 | |
JP2831816B2 (ja) | 設計情報間対応表示装置 | |
JPH11212606A (ja) | プログラム作成装置及びプログラムモニタ装置 | |
JP2713219B2 (ja) | 図形表示装置 | |
JP3125754B2 (ja) | 回路シンボル作成システム | |
JP2700013B2 (ja) | プログラマブルコントローラのためのユーザプログラム用コンパイラ | |
JP3051818B2 (ja) | セグメント描画方法及び該方法を用いた出力装置 | |
JPH03136172A (ja) | タイムチャート入力処理方式およびその装置 | |
JPH11175114A (ja) | プログラマブルコントローラ | |
JPH07253806A (ja) | スケジューラ定義作成装置 | |
JPH06176093A (ja) | 回路設計支援システム | |
JPH03116223A (ja) | 可変長データ入力における画面制御方式 | |
JPH08220195A (ja) | 検証用テストパタン設計方式 | |
JPH0440731B2 (ja) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19991102 |
|
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 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071112 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081112 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091112 Year of fee payment: 10 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313117 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091112 Year of fee payment: 10 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |