JPH0410085B2 - - Google Patents
Info
- Publication number
- JPH0410085B2 JPH0410085B2 JP56110742A JP11074281A JPH0410085B2 JP H0410085 B2 JPH0410085 B2 JP H0410085B2 JP 56110742 A JP56110742 A JP 56110742A JP 11074281 A JP11074281 A JP 11074281A JP H0410085 B2 JPH0410085 B2 JP H0410085B2
- Authority
- JP
- Japan
- Prior art keywords
- sequence
- program
- sheet
- words
- input
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/40—Data acquisition and logging
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Programmable Controllers (AREA)
Description
本発明は、シーケンス制御装置のシーケンスプ
ログラムをロジツクシンボルと結線からなるシー
ケンス図形として自動的に画面表示するシーケン
ス表示装置に係り、特に、シーケンス図形が
CRTの複数画面にわたるような場合の画面検索
を容易に行えるシーケンス表示装置に関する。
従来のシーケンス制御装置として、リレーシン
ボルによる表示装置がある。このリレーシンボル
によるCRT表示は、シーケンスが比較的簡単な
場合は適する。最近シーケンス制御装置のシーケ
ンスは、制御の高自動化につれ、ますます複雑と
なり、従来のリレーシンボルでシーケンスを表現
することは、困難になつてきた。そのため、
AND、OR等のロジツクシンボルでシーケンスを
表現するのが一般となつてきた。この場合、従来
のリレーシンボル表示を、ロジツクシンボル表示
とするのでは、その間の変換を要し、甚だ不便で
ある。
また、シーケンスの複雑化によつて、シーケン
スプログラムが大規模化し、A3サイズの手書き
シーケンス図面にして百枚近くに及ぶことも多
く、これを画面表示する場合には多数の画面に分
割表示することが必要になる。
本発明は、上記の従来技術の制約を無くし、メ
モリ内に格納されたシーケンス制御のためのプロ
グラムをロジツクシンボルと結線からなるシーケ
ンス図形に自動的にCRT画面上に表示するシー
ケンス表示装置に関し、その目的とするところ
は、シーケンス図形の表示が複数画面に及ぶよう
な場合に、プログラムの記憶領域を所定容量、例
えば手書き図面または表示画面相当のワード数単
位に区分しておき、これらの記憶領域にプログラ
ムを論理演算単位を維持して分割格納し、表示の
際にはプログラムを区分された記憶領域単位で読
みだしてシーケンス図形に変換して画面表示する
検索容易な表示装置を提供することにある。
まず、本発明の構成の基礎となる表示装置を詳
細に説明する。第1図は、ロジツクシーケンスの
一例を示したものである。本シーケンスは、三つ
の入力X001、X002の否定及びX003のANDを演
算させ、その結果を一時記憶メモリM001に記憶
させる。以下同様にそのM001と入力X114のOR
をM002に記憶させ、M002と入力X005、X006の
ANDをY001に出力するシーケンスである。
第2図は、上述のシーケンスを実行するシーケ
ンス制御装置と、第1図のシーケンスをロジツク
シンボルで表示するシーケンス表示装置の構成を
示す。
まず、シーケンス制御装置3が第1図のシーケ
ンスをどのようにして行うかを第3図A,Bを併
用して説明する。
シーケンス制御装置3への入力X001、〜X006
は入力回路31に取込まれる。この入力信号は、
主メモリ33に格納されたシーケンスプログラム
に従つて制御回路34で演算され、その結果はリ
フレツシユメモリであるアキユムレータ(ACC)
35に一時記憶される。このACC35の内容を
内部一時記憶メモリ36に出力し、記憶したり、
出力回路32を介して出力リレーY001に出力す
る。ところで、第2図の主メモリ33に格納され
たシーケンスプログラムは、第3図Aに示すよう
に命令コードとアドレスから構成される。
まずプログラムNo.で入力X001は命令コード
“S”で取り込まれ、シーケンス制御装置3の
ACC35にセツトされる。次にプログラムNo.
で制御回路34の働きによりそのACC35の値
と入力X002を取込んだ否定の値とのANDを命令
コード“/”で論理演算し、その結果をACC3
5にセツトする。プログラムNo.では、上記
ACC35の内容と、入力X003のANDを命令コー
ド“*”で論理演算し、その結果をACC35に
セツトする。次のプログラムNo.では、ACC3
5の内容を命令コード“=”で一時記憶メモリ3
6のアドレスM001にセツトする。
次のプログラムで一時記憶メモリ36のアド
レスM001の内容を命令コード“S”でとり出し、
ACC35にセツトする。次にでACC35の値
と入力X004をとり込んだ値とのORを命令コード
“+”で論理演算し、次にで、この演算結果を
一時記憶メモリ36のアドレスM002にセツトす
る。
以下同様にして、第3図Aに示すプログラムに
従つてシーケンス制御を行うが、このプログラム
を通常のシーケンス制御装置としてハード的に示
すと第3図Bのようになる。これらのプログラム
は、本発明の対象とするシーケンス制御装置では
サイクリツクに演算処理されることによつてシー
ケンス制御を行つている。
ここで、第3図で説明したプログラムの例の命
令コードの主なものを表にして示すと次のようで
ある。
The present invention relates to a sequence display device that automatically displays a sequence program of a sequence control device on a screen as a sequence figure consisting of logic symbols and connections, and particularly relates to a sequence display device that automatically displays a sequence program of a sequence control device on a screen as a sequence figure consisting of logic symbols and connections.
The present invention relates to a sequence display device that facilitates screen search when multiple CRT screens are used. As a conventional sequence control device, there is a display device using relay symbols. This CRT display using relay symbols is suitable when the sequence is relatively simple. Recently, sequences in sequence control devices have become more and more complex as control becomes highly automated, and it has become difficult to express sequences using conventional relay symbols. Therefore,
It has become common to express sequences using logic symbols such as AND and OR. In this case, changing the conventional relay symbol display to a logic symbol display requires conversion between them, which is extremely inconvenient. Additionally, as sequences become more complex, sequence programs become larger, often reaching nearly 100 A3-sized handwritten sequence drawings, and when these are to be displayed on screen, they must be divided and displayed on multiple screens. is required. The present invention relates to a sequence display device that eliminates the limitations of the prior art described above and automatically displays a program for sequence control stored in a memory as a sequence figure consisting of logic symbols and connections on a CRT screen. The purpose of this is to divide the program storage area into a predetermined capacity, such as a handwritten drawing or the number of words equivalent to the display screen, when displaying sequence figures spans multiple screens. To provide an easy-to-search display device that divides and stores a program while maintaining logical operation units, and when displaying the program, reads the program in divided storage area units, converts it into sequence figures, and displays them on the screen. be. First, a display device, which is the basis of the configuration of the present invention, will be explained in detail. FIG. 1 shows an example of a logic sequence. This sequence operates the negation of three inputs X001 and X002 and the AND of X003, and stores the result in temporary storage memory M001. Similarly, OR the M001 and input X114
is stored in M002, and input M002 and input X005, X006.
This is a sequence that outputs AND to Y001. FIG. 2 shows the configuration of a sequence control device that executes the above-described sequence and a sequence display device that displays the sequence of FIG. 1 using logic symbols. First, how the sequence control device 3 performs the sequence shown in FIG. 1 will be explained with reference to FIGS. 3A and 3B. Input to sequence control device 3 X001, ~X006
is taken into the input circuit 31. This input signal is
It is calculated by the control circuit 34 according to the sequence program stored in the main memory 33, and the result is sent to the accumulator (ACC) which is a refresh memory.
35 is temporarily stored. The contents of this ACC 35 can be output to the internal temporary storage memory 36 and stored.
It is output to output relay Y001 via output circuit 32. By the way, the sequence program stored in the main memory 33 of FIG. 2 is composed of instruction codes and addresses as shown in FIG. 3A. First, input X001 in program No. is taken in with the instruction code “S”, and the sequence control device 3
Set to ACC35. Next, program no.
Then, the control circuit 34 performs a logical AND operation on the value of ACC35 and the negative value obtained by inputting X002 using the instruction code "/", and the result is sent to ACC3.
Set to 5. In the program No., the above
A logical operation is performed on the contents of ACC35 and the input X003 using the instruction code "*", and the result is set in ACC35. In the next program No., ACC3
Temporarily store the contents of 5 in memory 3 using the instruction code “="
6 address M001. The following program retrieves the contents of address M001 of the temporary memory 36 using the instruction code "S",
Set to ACC35. Next, the value of the ACC 35 and the value taken in the input X004 are logically operated using the instruction code "+", and the result of this operation is then set at the address M002 of the temporary storage memory 36. Similarly, sequence control is performed in accordance with the program shown in FIG. 3A, but this program is shown in hardware as a normal sequence control device as shown in FIG. 3B. These programs are cyclically arithmetic processed in the sequence control device to which the present invention is applied, thereby performing sequence control. Here, the main instruction codes of the example program explained in FIG. 3 are shown in a table as follows.
【表】
以上の如くシーケンス演算処理される第1図に
示すシーケンスを第2図に示すCRT1上にロジ
ツクシンボルで表示するには次のようになされ
る。
本発明のシーケンス表示装置2のバツフアメモ
リ24は、シーケンス制御装置3の主メモリ33
に格納される第3図Aに示すようなプログラムの
作成時または画面表示時に一時記憶するために用
いられる。制御回路25はシーケンス制御装置3
の制御回路34と共同して、主メモリ33からバ
ツフアメモリ24へのプログラムの転送や、キー
ボードからのプログラムの作成、修正時に主メモ
リ33へのプログラムの格納等を制御する。ま
た、制御回路25は、シーケンスの作成、表示な
どに際し操作するモードキーを含むキーボード2
7、CRTに画面表示するためのCRT制御回路2
1、バツフアメモリ24に格納されたプログラム
をロジツクシンボルとその入出力に対応したプロ
グラムに変換するための変換プログラムを収納す
るROM26、ロジツクシンボル表示用に変換さ
れたプログラムを収納するリフレツシユメモリ2
2、およびCRTにロジツクシンボルを表示する
ためのシンボルジエネレータ23の各々を制御す
るように構成されている。
次に、主メモリ33に格納された第3図Aに示
すプログラムをCRTに表示する手順について、
第4図を用いて説明する。第13図に示すキーボ
ード27に備えられた“回路読出”キー121が
キーインされると、制御回路25は制御回路35
を介して主メモリ33に格納されたプログラムを
シーケンス表示装置2のバツフアメモリ24に取
り込む。ここに取込まれたプログラムは、ROM
26に格納された変換プログラムに従い、まずプ
ログラムの命令コードを解読し、“=”命令コー
ドを摘出する。次に“=”命令以前の“S”命令
の摘出を行う。次に“S”命令から“=”命令ま
でのステツプ数と命令コードの解読を行い入力点
数とシンボル、およびアドレスの決定を行う。こ
の様子を第3図A,Bを併用して説明する。まず
の“=”命令が摘出される。次に“S”命令は
にあり、“S”から“=”命令までのステツプ
数は3ステツプであるので、入力点数は3入力で
あることがわかる。次に、命令コードであるが
の“/”はACCと入力の否定とのAND、の
“*”はACCと入力のANDであるから、シンボ
ルはANDであることが判る。各アドレスは、入
力X001、X002、X003、AND出力はM001である
ことが判る。以上で1論理素子のシンボルが決定
された。
次に再び、上述と同手順で命令解読していく
と、に“=”命令が摘出されに“S”命令が
摘出される。“S”と“=”命令間は2ステツプ
で2入力であること、命令コードが“+”は、
ACCと入力とのORであるから2入力ORシンボ
ルで入力アドレスはM001、X004、出力アドレス
はM002であることが判る。次に、同様にして、
3入力ANDシンボルで、各入力はM002、X005、
X006、出力アドレスはY001であることが判る。
以上のようにしてロジツクシンボル表示用の変
換されたプログラムが決定されるとこれらロジツ
クシンボルをCRT上に表示することになる。
このロジツクシンボルは、第5図Aに示すよう
に、基本的な画素領域3個から構成される。まず
AND−M001がブロツク(X=3、Y=1、2、
3)に自動配置され、各入力X001、X002、X003
と一論理演算単位が自動結線される。次に、OR
−M002は、このORの第1入力がM001の出力と
直線となるようにブロツク(5−2,3,4)に
自動配置され、各入力M001、X004と次の論理演
算単位が自動結線される。次にAND−Y001は、
第1入力M002がM002の出力と直線となるように
自動配置されようとするが、そのようにすると、
第2入力X005、X006が結線入力となるので、ブ
ロツク(7−4,5,6)に自動配置され、各入
力と自動結線される。
この詳細を第7図、第8図、第9図を用いて、
具体的に説明する。第7図に示すのがその基本的
な考え方で、第7図のステツプ52、53、54につい
て詳細に表わしたものが第8図A,B,Cであ
り、第7図のステツプ56、57について、詳細に表
わしたのが第9図A,Bである。AND、OR等の
ロジツクシンボルは第8図の61,63,65に
示す様に3入力を標準とする場合2番目の入力信
号線を基準点として、配置する位置を決める。こ
の基準点により決められたのが第8図の62,6
4,66のロジツクシンボル基点である。これを
第5図Aで説明する。
M002のORシンボルを例にとるとこのM002の
ORはM001とX004の2入力のORの結果をY001
に出力するシーケンスである。M002ORシンボ
ルを配置する前の状態は、第5図Bに示すよう
に、M001ANDシンボルがブロツク(3−1,
2,3)に配置済で、第1図のCRT1に表示さ
れている状態である。M002の第1入力M001は第
5図のブロツク(4,2)の位置に配置済であ
り、第2入力X004はCRT1の画面上に初めて表
われる信号であるため第5図のブロツク(1,
4)の入力信号領域に割当てる。入力信号の位置
が決定したので、第8図Bの原理でM002ORシ
ンボルの基点はブロツク(5,2)と決定され
る。次に、このブロツクシンボル基点を中心とす
る第1図のCRT1の画面上のある空間にAND、
OR等のロジツクシンボルを配置できるかどうか
調べる。ここでいう配置可能状態とは、配置しよ
うとするCRT1上のある空間が、既に他のロジ
ツクシンボル又はロジツクシンボル間の配線等に
より使用されていない状態をいう。ロジツクシン
ボルが配置状態であれば、ロジツクシンボルの自
動位置決定は終了となるが、配置不可能状態であ
れば第9図に示す様な順序で、ロジツクシンボル
位置を補正してやる必要がある。第9図に示す様
に補正の方法は第9図のロジツクシンボル基点
SPを基に、基点Sに対し右下方向(X線(+)
方向、Y軸(−)方向)に、波絞状にCRT1の
画面上の未使用領域を捜す。ただしここでは自動
配置をしやすくするために、AND、OR等のロジ
ツクシンボルの入力数は、最大3入力迄と、制限
している。第5図B,Cの場合は(Cは
M002ORシンボル配置後、Bは配置前のCRT1
の画面の状態である。)M002ORシンボルを配置
しようとする領域(5−2,3,4)が未使用で
あるため、配置可能となり、第5図Cの様にブロ
ツク(5−2,3,4)配置される。次に第5図
CにタイマーシンボルT001を配置して第5図D
に示すようなCRT1の状態を作る場合を説明す
る。M001を入力するとT001タイマーシンボルを
配置しようとする領域(5−2,3,4)が既に
M002ORシンボルで占有されているため、シン
ボル配置位置の補正が必要となる。そこで(5−
2)をロジツクシンボル基点SPとし第9図の優
先順位で、CRT1の未使用領域を捜すと、(5−
5,6,7)の領域が選ばれる。ロジツクシンボ
ルの配置が決定すると、次に信号と信号間の結線
を行なう。第5図Dの例では第5図CとDの間
に、第5図Eの様な状態が存在する。第5図Eは
T001タイマーシンボル位置決定後で、M001と
T001が結線前の状態である。信号間の結線は直
線となるのを最優先とするから第5図Dのような
表示ができる。
次に、このような配置優先順位と結線の考え方
及び、入力の配線を直線とする考え方からすれば
入力X005、X006とM002を入力とするY001アン
ドシンボルは第5図Aに示すようにブロツク(7
−4,5,6)に配置される。この場合、入力
M002と、AND−Y001の結線が直線とならずに
自動結線されるが、この様子について、第6図を
用いて説明する。
まず第6図1に示すように同行、もしくは、同
列で2点間に何の障害もない時は、2点間は直線
で接続される。第6図2のように2点が同行同列
になく両点間に障害がない時は、(1−1,2−
1,3−1,4−1,2,3)と1曲りで接続さ
れる。第6図3のように2点が同行同列になく斜
線で示す位置に障害(他の表示でそのブロツクが
占有されていること)がある場合、3曲りまでで
結線できるときは3曲りまでを、自動結線する。
しかし、例えば第6図4のように障害が斜線に示
す位置にあり、3曲り以上(本ケースでは4曲り
せねば結線できない)となる場合は、2点間の結
線を示す文字、例えばAで2点間が結線されるこ
とを表示するのみとし、結線はしない。
これは、100%結線しようとすると処理時間に
多大の時間を要するのを制限するのに有効であ
る。
自動結線の詳細を第10図、第11図で具体的
に説明する。第10図はできるだけ少い曲りで配
線しようとする考え方で、第11図A,B,C,
Dはその具体例である。第11図A,Bは第10
図のステツプ72、73の具体例である。第11図A
は、始点SPから終点EPまでのルートをY軸を固
定し、Y軸を〜のように右から左へ移動さ
せ、結線可能なルートを捜す方法である。第11
図Bは、逆に始点SPから終点EPまでのルートを
Y軸を固定し、X軸を〜のように下から上へ
移動させ結線可能ルートを捜す方法である。第1
1図A,Bの方法は具体例の1つであり第11図
A,Bのどちらを優先して試行するか、又移動軸
の方向は、CRT1の画面の特性により任意に決
定することが可能である。第11図C,Dは第1
0図のステツプ74の具体例である。第11図C,
Dは各々第11図A,Bの移動軸,,を基
に、分岐ルートを作り出し、配線可能ルートを捜
す。第11図Cの,,は第11図Aのの
2曲りルートから、派生させたルートである。さ
らに、配線可能ルートの試行回数を減少させるた
めに、複数の試行ルートで、重複して使用される
ルートが、あることに着目し(第11図A,Bの
3、第11図C,Dの4,5,6のルート)、そ
の重複して使用されるルートが、既に使用済であ
れば、そのルートを含むルートの試行は行なわな
い。
本発明は、このようなシーケンス制御装置のプ
ログラムをロジツクシンボルと結線からなるシー
ケンス図形として自動的に画面表示するシーケン
ス表示装置において、プログラムが大きく複数の
画面にわたつて表示されるような場合、プログラ
ムは予め所定容量で区分された複数の記憶領域に
分割して記憶されている。そしてこの所定容量
を、例えば、所定サイズの手書きの図面1枚分相
当のワード数、即ち、シート単位にすると、画面
表示の際、この記憶領域単位に読み出すことで所
望の画面を直接表示させることが可能になる。ま
た、所定容量をCRT画面の1画面相当のワード
数にすると、画面とシート単位(図面1枚)が一
致し図面管理も容易で確実になる。
従来のシーケンスの検索方式としては、主メモ
リ33の番地指定方式と、出力を示すコード(例
えばY001)を指定する方式がある。しかし、前
者方式は、修正するシーケンスが主メモリ上のど
の番地にあるかを意識する必要があり、煩雑で間
違いやすいという欠点があり、また後者方式は、
シーケンス修正時の主メモリ33に格納されたシ
ーケンスプログラムの再配置の回数が多いという
欠点がある。
本発明では、その一例を第12図に示すよう
に、主メモリ33におけるプログラムの配置は所
定の記憶容量、この例では1画面相当のプログラ
ム集合、即ち、シート単位に分割され、1シート
には全て32語のワード数が割り当てられている。
1画面に表示されるシーケンス図形は、シーケン
ス画面の自動描画の方法で詳述したように、1論
理シンボルとその入出力線からなる論理演算単位
を最小としその複数となる。例えば第5図Aの画
面では第3図Aのように三の論理演算単位からな
る11語であり、1シート内にまだかなりの未使用
メモリが残されている。未使用メモリは極力少な
くなるようにプログラムを分割して配置するのが
望ましいが、論理演算単位は分割せずに同一の記
憶領域に格納されなければならないから、未使用
メモリを生ずることもある。また、大規模なシー
ケンスプログラムでは第12図のBLOCK.1〜
BLOCK.3に示すように、プログラムをその機能
等により数ブロツクに分割してそれぞれスペース
をもたせ、プログラム修正によるメモリ内の再配
置が他のブロツクに影響しないようにしている。
次に第2図のキーボード27を操作して主メモ
リ33におけるプログラム配置をシート単位に分
割する方法について説明する。第2図のキーボー
ドの一例の詳細を第13図に示す。104は16進
数字キー、105及び111〜130はシーケン
ス表示装置2の制御回路25が予め用意されてい
るプログラムに基づいて所定の機能を実行するモ
ードキーで、例えば105はプログラムの作成や
データの設定等の処理を選択するキー、121は
前述のように指定のプログラムを読出してCRT
にシーケンス画面を表示させるフアンクシヨンキ
ーである。
これらのキーを用いて第2図の主メモリ33を
シート単位に分割する方法を第14図を用いて説
明する。まずでシートサイズ変更キー116を
キーインする。次に主メモリ33をシート単位に
分割する。即ち、キー104によりで50を、
で5D0をキーインする。これで主メモリ33の
100番地から5D0番地までをブロツク1として、
その中が50シートに分割される。同様に、で80
を、でDD0を、で88を、でEF0をキーイン
する。これで主メモリ33は5D0番地からDD0番
地までをブロツク2として51シートから80シート
までの30シートに、DD0番地からFF0番地までを
ブロツク3として81シートから88シートまでの8
シートに、それぞれ分割される。次にでデータ
設定終了キー105をキーインし、主メモリ33
のメモリ分割を終了する。
このようにして、シーケンスプログラムを格納
する主メモリをシート単位に分割し、これ以後
は、シーケンスの作成及び修正は全てシート単位
で行なわれる。即ち、1シートに設定された語数
の範囲内で作成されたプログラムが回路書込キー
113をキーインして順次各シートの記憶領域に
格納される。この結果、第13図の回路読出キー
121とシート番号を入力すると、該シート番号
に対応するメモリ番地を検索して、当該メモリの
内容がシーケンス表示装置のバツフアメモリ24
に転送されてCRTに表示される。
1シートの語数が1表示画面の語数と等しくさ
れているときは、画面を見ながらキーボード27
のロジツクキー101等を操作してプログラムの
修正、追加を自由に行うことができ、修正された
シーケンスプログラムは回路書込キー113でバ
ツフアメモリ24から主メモリ33へ転送され
る。
1シートの語数は初期値として全て32語が割当
てられ、以後1シートのサイズは16語を最小増減
の単位として、シーケンスの作成及び修正時に自
動的に増減する。第15図、第16図を用いてシ
ーケンス修正時の主メモリ33上のシーケンスプ
ログラムの再配置について説明する。第15図
は、シーケンス修正で、修正前のシートサイズを
越えない場合であり、202はシーケンス制御装
置主メモリ、Aは修正前、Bは修正後、211は
修正前のシート10の使用シーケンスプログラ
ム、212は修正前のシート10の未使用メモ
リ、221は修正後のシート10の使用シーケン
スプログラム、222は修正後のシート10の未
使用メモリを示す。この具体例では、シート10
は32語であり、修正前は使用シーケンスプログラ
ム211が22語、未使用メモリ212が10語であ
つたものが、シート10に対しシーケンス修正後
は語数が28語となつた。シーケンス修正による使
用シーケンスプログラムの増加語数が6語と、シ
ート内未使用語数10語よりも小さいため、主メモ
リ33上のシーケンスプログラムの再配置は、シ
ート10の32語のみである。第16図は、シーケ
ンス修正で、修正前のシートサイズを越える場合
であり、Aは修正前、Bは修正後、203はシー
ケンス制御装置主メモリ、231は修正前のシー
ト11の使用シーケンスプログラム、232は修
正前のシート11の未使用メモリ、241は修正
後のシート11の使用シーケンスプログラム、2
42は修正後のシート11の未使用メモリを示
す。この具体例では、シート11はシートサイズ
が32語で、修正前は使用シーケンスプログラム2
31が30語、未使用メモリ232が2語である。
シート11に対しシーケンス修正を行なつた後、
使用シーケンスプログラム241の語数が40語と
なつた。シーケンス修正により、使用シーケンス
プログラム語数が10語と、シート内未使用語数で
あつた2語よりも大きいため、シートサイズは自
動的に16語の単位で増加し、48語となる。このた
めシート11以降のシートは全て、16語シフトダ
ウンされることになり、再配置の対象となる。た
だし、この再配置の対象となるシートは、第12
図のブロツク1内のシートだけである。このよう
にシーケンスの追加等で所定のシート単位を超え
る場合は特定の語数単位で当該記憶領域の容量が
自動的に増減されるので、シーケンスの修正時に
シート単位を意識することなく行える。
本発明によれば、大規模なシーケンスプログラ
ムでそのシーケンス図形がCRT上、複数の画面
にわたるような場合にも、メモリを予めA3手書
き図面1枚分相等など所定の記憶容量単位に区分
し、この区分された記憶領域単位に読み出すこと
で所望の画面を直接表示でき操作が容易になる効
果が有る。また、1画面を図面と対応させること
で図面の管理も確実に行うことができる。[Table] The sequence shown in FIG. 1, which is subjected to the sequence calculation process as described above, can be displayed as logic symbols on the CRT 1 shown in FIG. 2 as follows. The buffer memory 24 of the sequence display device 2 of the present invention is the main memory 33 of the sequence control device 3.
It is used for temporary storage when creating a program as shown in FIG. 3A or when displaying a screen. The control circuit 25 is the sequence control device 3
In cooperation with the control circuit 34, it controls the transfer of the program from the main memory 33 to the buffer memory 24, the creation of a program from the keyboard, the storage of the program in the main memory 33 at the time of modification, etc. The control circuit 25 also includes a keyboard 2 including mode keys to be operated when creating and displaying sequences.
7. CRT control circuit 2 for displaying screen on CRT
1. A ROM 26 that stores a conversion program for converting the program stored in the buffer memory 24 into a program corresponding to logic symbols and their input/output; and a refresh memory 2 that stores a program converted for displaying logic symbols.
2, and a symbol generator 23 for displaying logic symbols on a CRT. Next, regarding the procedure for displaying the program shown in FIG. 3A stored in the main memory 33 on the CRT,
This will be explained using FIG. When the "circuit read" key 121 provided on the keyboard 27 shown in FIG.
The program stored in the main memory 33 is loaded into the buffer memory 24 of the sequence display device 2 via the main memory 33. The program imported here is the ROM
According to the conversion program stored in 26, the instruction code of the program is first decoded and the "=" instruction code is extracted. Next, the "S" instruction before the "=" instruction is extracted. Next, the number of steps from the "S" instruction to the "=" instruction and the instruction code are decoded to determine the number of input points, symbols, and addresses. This situation will be explained with reference to FIGS. 3A and 3B. The first "=" instruction is extracted. Next, the "S" command is located at , and the number of steps from "S" to the "=" command is three, so it can be seen that the number of input points is three. Next, since the "/" in the instruction code is the AND of ACC and the negation of the input, and the "*" is the AND of the ACC and the input, it can be seen that the symbol is AND. It can be seen that each address is input X001, X002, X003, and the AND output is M001. The symbol of one logic element has been determined above. Next, when the instructions are decoded again in the same procedure as described above, the "=" instruction is extracted and the "S" instruction is extracted. There are 2 steps and 2 inputs between the “S” and “=" commands, and the instruction code is “+”.
Since it is an OR of ACC and the input, it can be seen that it is a 2-input OR symbol, the input address is M001, X004, and the output address is M002. Next, in the same way,
3-input AND symbol, each input is M002, X005,
It turns out that X006 and the output address are Y001. Once the converted program for displaying logic symbols is determined as described above, these logic symbols will be displayed on the CRT. This logic symbol consists of three basic pixel areas, as shown in FIG. 5A. first
AND-M001 is a block (X=3, Y=1, 2,
3) Automatically placed in each input X001, X002, X003
and one logic operation unit are automatically connected. Then, OR
-M002 is automatically placed in the block (5-2, 3, 4) so that the first input of this OR is in a straight line with the output of M001, and each input M001, X004 and the next logical operation unit are automatically connected. Ru. Next, AND−Y001 is
The first input M002 will be automatically placed in a straight line with the output of M002, but if you do so,
Since the second inputs X005 and X006 are connection inputs, they are automatically placed in blocks (7-4, 5, 6) and automatically connected to each input. The details are shown in Figures 7, 8, and 9.
I will explain in detail. The basic idea is shown in FIG. 7. Steps 52, 53, and 54 in FIG. 7 are shown in detail in FIG. 8 A, B, and C, and steps 56, 57 in FIG. This is shown in detail in FIGS. 9A and 9B. As shown in 61, 63, and 65 in FIG. 8, logic symbols such as AND and OR are arranged using the second input signal line as a reference point when three inputs are standard. The points determined by this reference point are 62 and 6 in Figure 8.
4.66 logic symbol base points. This will be explained with reference to FIG. 5A. Taking the OR symbol of M002 as an example, this M002
OR is the result of OR of two inputs of M001 and X004 to Y001
This is the sequence to be output to. In the state before placing the M002OR symbol, as shown in FIG. 5B, the M001AND symbol is in the block (3-1,
2, 3) and is displayed on the CRT 1 in FIG. The first input M001 of M002 has already been placed at the position of block (4, 2) in FIG. 5, and the second input X004 is the signal that appears for the first time on the screen of CRT1.
4) is assigned to the input signal area. Since the position of the input signal has been determined, the base point of the M002OR symbol is determined to be block (5, 2) according to the principle shown in FIG. 8B. Next, in a certain space on the CRT1 screen in Figure 1 centered on this block symbol base point, AND,
Check whether logic symbols such as OR can be placed. The placement possible state here refers to a state in which a certain space on the CRT 1 to be placed is already unused by other logic symbols or wiring between logic symbols. If the logic symbol is placed, the automatic position determination of the logic symbol ends, but if the logic symbol is not placed, it is necessary to correct the logic symbol position in the order shown in Figure 9. . As shown in Figure 9, the correction method is based on the logic symbol base point in Figure 9.
Based on SP, lower right direction (X-ray (+)
The unused area on the screen of the CRT 1 is searched in a wave pattern in the Y-axis (-) direction). However, here, in order to facilitate automatic placement, the number of inputs for logic symbols such as AND and OR is limited to a maximum of three inputs. In the case of Figure 5 B and C (C is
After M002OR symbol placement, B is CRT1 before placement
This is the state of the screen. )M002OR Since the area (5-2, 3, 4) in which the symbol is to be placed is unused, it can be placed, and blocks (5-2, 3, 4) are placed as shown in FIG. 5C. Next, place the timer symbol T001 in Figure 5C and Figure 5D.
The case of creating the state of CRT1 as shown in is explained below. When you input M001, the area (5-2, 3, 4) where you want to place the T001 timer symbol is already
Since it is occupied by the M002OR symbol, it is necessary to correct the symbol placement position. So (5-
2) as the logic symbol base point SP and searching for an unused area on CRT1 using the priority order shown in Figure 9, we get (5-
Areas 5, 6, and 7) are selected. Once the arrangement of logic symbols has been determined, the signals are then connected. In the example of FIG. 5D, a state like that of FIG. 5E exists between FIG. 5C and D. Figure 5 E is
After determining the T001 timer symbol position, M001 and
T001 is the state before wiring. Since the highest priority is given to connecting signals in a straight line, a display as shown in FIG. 5D can be obtained. Next, based on the idea of placement priority and connection, and the idea that the input wiring is a straight line, the Y001 AND symbol whose inputs are X005, X006 and M002 is a block (as shown in Figure 5A). 7
-4, 5, 6). In this case, input
The connection between M002 and AND-Y001 is not a straight line and is automatically connected, but this situation will be explained using FIG. 6. First, as shown in FIG. 6, when two points are in the same line or in the same row and there is no obstacle between them, the two points are connected by a straight line. When the two points are not on the same level and there is no obstacle between the two points as shown in Figure 6 2, (1-1, 2-
1, 3-1, 4-1, 2, 3) with one bend. As shown in Figure 6, if two points are not in the same line and there is a problem in the shaded position (the block is occupied by another display), if the connection can be made in up to 3 turns, connect up to 3 turns. , automatically connect.
However, if the fault is in the diagonally shaded position as shown in Figure 6, for example, and there are three or more bends (in this case, four bends are required to connect the line), a letter indicating the connection between two points, such as A, is used. It only indicates that two points are connected, but does not connect them. This is effective in limiting the amount of processing time required to perform 100% connection. Details of automatic wiring will be specifically explained with reference to FIGS. 10 and 11. Figure 10 shows the idea of wiring with as few bends as possible, and Figure 11 shows A, B, C,
D is a specific example. Figure 11 A and B are the 10th
This is a specific example of steps 72 and 73 in the figure. Figure 11A
This method fixes the Y-axis of the route from the starting point SP to the ending point EP, moves the Y-axis from right to left as in ~, and searches for a route that can be connected. 11th
In contrast, Figure B shows a method in which the Y-axis is fixed for the route from the start point SP to the end point EP, and the X-axis is moved from bottom to top as in ~ to search for a connectable route. 1st
The methods shown in Figures 1A and 1B are one of the concrete examples, and which of Figures 11A and 1B should be given priority and the direction of the movement axis can be arbitrarily determined depending on the characteristics of the screen of the CRT 1. It is possible. Figure 11 C and D are the first
This is a specific example of step 74 in FIG. Figure 11C,
D creates a branch route based on the movement axes, . , in FIG. 11C are routes derived from the two-curve route in FIG. 11A. Furthermore, in order to reduce the number of trials for routes that can be routed, we focused on the fact that there are routes that are used overlappingly in multiple trial routes (3 in Figure 11 A and B, Figure 11 C and D). 4, 5, and 6), if the route that is used overlappingly has already been used, the route including that route is not attempted. The present invention provides a sequence display device that automatically displays the program of such a sequence control device on the screen as a sequence figure consisting of logic symbols and connections, and in the case where the program is large and displayed over multiple screens, The program is divided and stored in a plurality of storage areas divided in advance into predetermined capacities. If this predetermined capacity is, for example, the number of words equivalent to one handwritten drawing of a predetermined size, that is, in units of sheets, when displaying on the screen, the desired screen can be directly displayed by reading out this storage area unit. becomes possible. Furthermore, if the predetermined capacity is set to the number of words equivalent to one CRT screen, the screen and sheet unit (one drawing) will match, making drawing management easy and reliable. Conventional sequence search methods include a method of specifying an address in the main memory 33 and a method of specifying a code (for example, Y001) indicating an output. However, the former method has the disadvantage that it is necessary to be aware of the address in main memory where the sequence to be modified is located, which is cumbersome and easy to make mistakes.
There is a drawback that the sequence program stored in the main memory 33 must be rearranged many times when the sequence is modified. In the present invention, as an example is shown in FIG. 12, the arrangement of programs in the main memory 33 is divided into a predetermined storage capacity, in this example a set of programs equivalent to one screen, that is, divided into sheets; All have a word count of 32 words.
As described in detail in the method for automatically drawing a sequence screen, the sequence figure displayed on one screen has a minimum logic operation unit consisting of one logic symbol and its input/output lines, and has a plurality of them. For example, in the screen shown in FIG. 5A, there are 11 words consisting of three logical operation units as shown in FIG. 3A, and a considerable amount of unused memory is still left in one sheet. It is desirable to divide the program and arrange it so as to minimize the amount of unused memory, but since logical operation units must be stored in the same storage area without being divided, unused memory may occur. In addition, in a large-scale sequence program, BLOCK.1 to BLOCK.1 in Figure 12
As shown in BLOCK.3, the program is divided into several blocks according to their functions, each with its own space, so that rearrangements in memory due to program modifications do not affect other blocks. Next, a method of dividing the program arrangement in the main memory 33 into sheets by operating the keyboard 27 of FIG. 2 will be described. Details of an example of the keyboard shown in FIG. 2 are shown in FIG. 13. 104 is a hexadecimal numeric key, 105 and 111 to 130 are mode keys for the control circuit 25 of the sequence display device 2 to execute a predetermined function based on a program prepared in advance; for example, 105 is for creating a program or updating data. The key 121 for selecting processing such as settings reads the specified program as described above and displays it on the CRT.
This is a function key that displays the sequence screen. A method of dividing the main memory 33 in FIG. 2 into sheets using these keys will be described with reference to FIG. 14. First, press the sheet size change key 116. Next, the main memory 33 is divided into sheets. That is, 50 is entered by key 104,
Key in 5D0. Now the main memory 33
Block 1 is from address 100 to address 5D0,
The inside is divided into 50 sheets. Similarly, at 80
, press DD0, press 88, and press EF0. The main memory 33 now stores 30 sheets from 51st to 80th sheets, with addresses 5D0 to DD0 as block 2, and 8 sheets, from 81st to 88th sheets, from DD0 to FF0 as block 3.
Each is divided into sheets. Next, key in the data setting end key 105, and
Ends memory partitioning. In this way, the main memory that stores the sequence program is divided into sheets, and from then on, all sequences are created and modified on a sheet-by-sheet basis. That is, a program created within the number of words set for one sheet is sequentially stored in the storage area of each sheet by pressing the circuit write key 113. As a result, when the circuit readout key 121 and sheet number in FIG.
and displayed on the CRT. When the number of words on one sheet is equal to the number of words on one display screen, press the keyboard 27 while looking at the screen.
The program can be freely modified and added by operating the logic keys 101 and the like, and the modified sequence program is transferred from the buffer memory 24 to the main memory 33 by using the circuit write key 113. The initial value of the number of words for one sheet is 32 words, and thereafter the size of one sheet will be automatically increased or decreased in units of 16 words when creating or modifying a sequence. Relocation of the sequence program on the main memory 33 when modifying the sequence will be explained using FIGS. 15 and 16. FIG. 15 shows a case where the sheet size is not exceeded before correction due to sequence correction, 202 is the main memory of the sequence controller, A is before correction, B is after correction, and 211 is the sequence program used for sheet 10 before correction. , 212 indicates the unused memory of the sheet 10 before modification, 221 indicates the usage sequence program of the sheet 10 after the modification, and 222 indicates the unused memory of the sheet 10 after the modification. In this specific example, sheet 10
The used sequence program 211 had 22 words and the unused memory 212 had 10 words before the correction, but after the sequence correction for sheet 10, the number of words became 28 words. Since the increase in the number of words in the used sequence program due to sequence modification is 6 words, which is smaller than the number of unused words in the sheet, 10 words, only 32 words of the sequence program in the sheet 10 are rearranged on the main memory 33. FIG. 16 shows a case where the sheet size exceeds the sheet size before modification due to sequence modification, where A is before modification, B is after modification, 203 is the main memory of the sequence controller, 231 is a sequence program for use of sheet 11 before modification, 232 is the unused memory of sheet 11 before modification, 241 is the use sequence program of sheet 11 after modification, 2
42 indicates the unused memory of the sheet 11 after correction. In this specific example, sheet 11 has a sheet size of 32 words, and before modification, the sequence program used is 2.
31 is 30 words, and unused memory 232 is 2 words.
After making sequence corrections to sheet 11,
The number of words of the sequence program 241 used is now 40 words. Due to the sequence correction, the number of used sequence program words is 10 words, which is larger than the number of unused words in the sheet, which was 2 words, so the sheet size is automatically increased in units of 16 words to 48 words. Therefore, all sheets after sheet 11 are shifted down by 16 words and are subject to rearrangement. However, the sheet subject to this rearrangement is the 12th
This is only the sheet in block 1 of the figure. In this way, when a predetermined sheet unit is exceeded due to the addition of a sequence, etc., the capacity of the storage area is automatically increased or decreased in units of a specific number of words, so that the sequence can be corrected without being aware of the sheet unit. According to the present invention, even when the sequence figures of a large-scale sequence program span multiple screens on a CRT, the memory is divided in advance into predetermined storage capacity units such as one A3 handwritten drawing, etc. By reading data in units of divided storage areas, a desired screen can be directly displayed, which has the effect of making operations easier. Furthermore, by associating one screen with a drawing, drawings can be managed reliably.
第1図は論理シンボル表示によるシーケンスの
一例を示す図、第2図は本発明が適用される表示
装置の一例のブロツク構成図、第3図はシーケン
スの説明図、第4図はシーケンスをCRT表示す
る考え方を説明するフロー図、第5図〜第11図
は自動作画の考え方を説明する図、第12図は本
発明における主メモリのシート割付を説明する
図、第13図はシーケンス作成用の入力キーボー
ドの一例を示す図、第14図は本発明を適用すべ
きシート登録の一例を示す図、第15図及び第1
6図はシーケンス修正時の主メモリ上シーケンス
プログラム再配置を説明する図である。
1……CRT、2……シーケンス表示装置、2
1……CRT制御回路、22……リフレツシユメ
モリ、23……シンボルジエネレータ、24……
バツフアメモリ、25……制御回路、26……
ROM、27……キーボード、3……シーケンス
制御装置、31……入力回路、32……出力回
路、33……主メモリ、34……制御回路、35
……アキユムレータ、36……一時記憶メモリ、
101……AND、or等のロジツク記号キー、1
02……JMP、RTN特殊命令キー、103……
信号名識別コードキー、104……16進数字キ
ー、105……モード・キー、106……カーソ
ル・キー、111〜130……モード・キー。
FIG. 1 is a diagram showing an example of a sequence by logical symbol display, FIG. 2 is a block diagram of an example of a display device to which the present invention is applied, FIG. 3 is an explanatory diagram of the sequence, and FIG. 4 is a diagram showing a sequence on a CRT. Flowchart explaining the idea of display, Figures 5 to 11 are diagrams explaining the idea of automatic drawing, Figure 12 is a diagram explaining sheet allocation of the main memory in the present invention, and Figure 13 is for sequence creation. FIG. 14 is a diagram showing an example of sheet registration to which the present invention is applied, FIG.
FIG. 6 is a diagram illustrating relocation of a sequence program on the main memory when modifying a sequence. 1...CRT, 2...Sequence display device, 2
1...CRT control circuit, 22...Refresh memory, 23...Symbol generator, 24...
Buffer memory, 25... Control circuit, 26...
ROM, 27...keyboard, 3...sequence control device, 31...input circuit, 32...output circuit, 33...main memory, 34...control circuit, 35
...accumulator, 36...temporary memory,
101...Logic symbol key such as AND, or, 1
02...JMP, RTN special command key, 103...
Signal name identification code key, 104...hexadecimal numeric key, 105...mode key, 106...cursor key, 111-130...mode key.
Claims (1)
ケンスプログラムを論理演算シンボルと結線から
なるシーケンス図形として表示装置に画面表示す
るシーケンス表示装置において、 前記シーケンスプログラムは論理演算の命令を
示すコードと該論理演算に対する入力信号のアド
レスとを一論理演算単位としたとき複数の論理演
算単位からなり、これらの論理演算単位を所定の
記憶容量単位に区分された複数の記憶領域に一の
論理演算単位が一の記憶領域に含まれるように分
割記憶する記憶手段と、 前記シーケンスプログラムを前記記憶手段より
前記区分された記憶領域単位で読出し、前記シー
ケンス図形に変換して画面表示する表示制御手段
と、 を具備することを特徴とするシーケンス表示装
置。[Scope of Claims] 1. A sequence display device that displays on a display device a sequence program that performs arithmetic processing for sequence control as a sequence figure made up of logical operation symbols and connections, wherein the sequence program indicates instructions for logical operation. When the code and the address of the input signal for the logical operation are taken as one logical operation unit, it is made up of multiple logical operation units, and these logical operation units are stored in multiple storage areas divided into predetermined storage capacity units. storage means for storing the sequence program dividedly so that a calculation unit is included in one storage area; and display control means for reading out the sequence program from the storage means in units of the divided storage area, converting it into the sequence figure and displaying it on a screen. A sequence display device comprising: and.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP56110742A JPS5814209A (en) | 1981-07-17 | 1981-07-17 | Sequence display device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP56110742A JPS5814209A (en) | 1981-07-17 | 1981-07-17 | Sequence display device |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2228144A Division JPH03116204A (en) | 1990-08-31 | 1990-08-31 | Sequence display device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5814209A JPS5814209A (en) | 1983-01-27 |
| JPH0410085B2 true JPH0410085B2 (en) | 1992-02-24 |
Family
ID=14543372
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP56110742A Granted JPS5814209A (en) | 1981-07-17 | 1981-07-17 | Sequence display device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS5814209A (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH02100102A (en) * | 1988-10-07 | 1990-04-12 | Fuji Electric Co Ltd | Programmable controller |
| JPH08248U (en) * | 1995-08-24 | 1996-02-06 | 富士電機株式会社 | Programmable controller |
-
1981
- 1981-07-17 JP JP56110742A patent/JPS5814209A/en active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS5814209A (en) | 1983-01-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0642137B2 (en) | Display information processing device | |
| US5986425A (en) | Numerical controller | |
| JPH0410085B2 (en) | ||
| JP2002278666A (en) | Control panel for controlling facility | |
| JPS58181108A (en) | Numerical control system | |
| JPH03116204A (en) | Sequence display device | |
| JPH11212628A (en) | Display of control system | |
| JPH0221003B2 (en) | ||
| JP3277715B2 (en) | Display unit data creation method | |
| JPH07200027A (en) | Control device for automatic assembly equipment | |
| JPS63300302A (en) | Program input display device for programmable controller | |
| JPH0679252B2 (en) | Program maintenance equipment for process control equipment | |
| JPH08278935A (en) | Programmable controller | |
| JP2001292191A (en) | Field device setting management apparatus and communication control system using the same | |
| JPH0443281B2 (en) | ||
| JPH05150932A (en) | Computer device with icon display functi0n | |
| JPH0518138B2 (en) | ||
| JPH08272571A (en) | Display device and program generation device | |
| JPH0580813A (en) | Programing device for programable controller | |
| JPH0498527A (en) | Programmable controller | |
| JP2004078481A (en) | Process monitoring control device and program | |
| JPH08166807A (en) | Control program generator | |
| JPH07281919A (en) | Service processor | |
| JPH0546220A (en) | Numerical controller | |
| JPH0561585A (en) | Information processing equipment |