JPH05210401A - Sequence program collation method - Google Patents

Sequence program collation method

Info

Publication number
JPH05210401A
JPH05210401A JP4094340A JP9434092A JPH05210401A JP H05210401 A JPH05210401 A JP H05210401A JP 4094340 A JP4094340 A JP 4094340A JP 9434092 A JP9434092 A JP 9434092A JP H05210401 A JPH05210401 A JP H05210401A
Authority
JP
Japan
Prior art keywords
sequence
program
matrix data
block
sequence program
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.)
Granted
Application number
JP4094340A
Other languages
Japanese (ja)
Other versions
JP3059817B2 (en
Inventor
Fuyuhiko Yoshikura
冬彦 吉倉
Yasumasa Ueda
泰正 上田
Takashi Eguchi
隆志 江口
Toru Motojima
亨 本島
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor 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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP4094340A priority Critical patent/JP3059817B2/en
Publication of JPH05210401A publication Critical patent/JPH05210401A/en
Application granted granted Critical
Publication of JP3059817B2 publication Critical patent/JP3059817B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To provide the sequence program collation method capable of discriminating the coincidence of the control content even though the order on a logic circuit is different. CONSTITUTION:A sequence controller 11 controls a device 13 to be controlled according to the sequence program in a sequence storage section 17, and compares the program with the sequence program kept in a magnetic tape 12. A control section 19 loads the program to be compared on the magnetic tape 12 in a buffer memory 18. Based on the program and the program to be compared in the sequence program storage section 17, the matrix data is prepared according to the rules. In each prepared matrix data, the change of column or row and the data arrangement is performed, comparing the both sequence programs. Thus, even though the order of describing the logical content is different between the programs, the exact collation result can be obtained.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明はシーケンスコントローラ
に記憶されたシーケンスプログラムと外部記憶媒体等に
保存されたシーケンスプログラムとの照合を行うシーケ
ンスプログラム照合方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a sequence program collating method for collating a sequence program stored in a sequence controller with a sequence program stored in an external storage medium or the like.

【0002】[0002]

【従来の技術】近年、いわゆるシーケンスコントローラ
(以下、PCと略す。)の分野においては技術的進歩が
著しい。このPCは、周知のように、ラダー回路形式で
記述されたシーケンスプログラムを一旦機械語プログラ
ムに変換・記憶し、この機械語プログラムを順次実行す
ることにより所定の処理を行うものである。一般のユー
ザにとっては、このシーケンスプログラムの作成や編集
を機械語レベルで行うのは困難であるため、通常、これ
を容易化するツール(以下、プログラマと呼ぶ。)が用
意されている。
2. Description of the Related Art In recent years, technological advances have been remarkable in the field of so-called sequence controllers (hereinafter abbreviated as PC). As is well known, this PC temporarily converts / stores a sequence program described in a ladder circuit format into a machine language program, and sequentially executes the machine language program to perform predetermined processing. Since it is difficult for a general user to create and edit this sequence program at the machine language level, a tool (hereinafter, referred to as a programmer) that facilitates this is usually prepared.

【0003】このプログラマは各種の機能を備えユーザ
の便宜に資すものとなっているが、その機能の1つとし
て、プログラム照合機能がある。この機能は、PC内に
記憶されたシーケンスプログラムを、プログラマ自身、
若しくは磁気テープやフロッピィディスクのような外部
記憶媒体に保存されたシーケンスプログラムと比較・照
合するものである。このような照合が必要となるのは、
例えばPC側に記憶されているプログラムを一旦磁気テ
ープに保存したのち、PCを機械装置と結合した場合、
現場サイドで調整のためPCのプログラム自体を修正す
ることもあるからである。
This programmer has various functions and contributes to the convenience of the user. One of the functions is a program collating function. This function allows the programmer himself to execute the sequence program stored in the PC.
Alternatively, the program is compared and collated with a sequence program stored in an external storage medium such as a magnetic tape or a floppy disk. This kind of matching is required
For example, if the program stored on the PC side is once stored on a magnetic tape and then the PC is connected to a mechanical device,
This is because the PC program itself may be modified for adjustment on the site side.

【0004】図21は、従来のプログラマによるシーケ
ンスプログラム照合方法を表わしたものである。この図
に示すように、プログラマは、PC内の機械語プログラ
ムとプログラマ上または記憶媒体上に保存された機械語
プログラムとを、その登録されたメモリ番地に従って順
次1語ずつ照合していき(ステップS601、S60
2)、すべての語が一致したとき(ステップS603;
Y)、正常と判定して照合を終了する(ステップS60
4)。
FIG. 21 shows a conventional sequence program collating method by a programmer. As shown in this figure, the programmer sequentially checks the machine language program in the PC and the machine language program stored in the programmer or the storage medium one word at a time according to the registered memory address (step S601, S60
2) When all the words match (step S603;
Y), it is determined to be normal and the collation ends (step S60).
4).

【0005】一方、機械語が1語でも違っていれば(ス
テップS601;N)、照合エラーと判定して異常表示
を行い終了する(ステップS605)。
On the other hand, if even one machine language is different (step S601; N), it is judged as a collation error, an abnormality is displayed, and the process ends (step S605).

【0006】[0006]

【発明が解決しようとする課題】このように、従来の照
合方法では、相対比されるプログラムの機械語レベルで
1語でも相違していれば直ちにエラーとなるため、以下
のような問題があった。例えば、PC側及び記憶媒体側
にそれぞれ図22に示すようなシーケンスプログラムが
記憶されているものとする。この図で、X01、M0
2、M03はリレーのA接点(ノーマリーオープン)を
示し、M01はB接点(ノーマリークローズ)を示して
いる。また、M05はリレーの出力コイルを示してい
る。
As described above, the conventional collation method has the following problems because an error immediately occurs if even one word differs in the machine language level of the programs to be compared. It was For example, it is assumed that the sequence program as shown in FIG. 22 is stored in each of the PC side and the storage medium side. In this figure, X01, M0
2, M03 indicates an A contact (normally open) of the relay, and M01 indicates a B contact (normally closed). Further, M05 indicates an output coil of the relay.

【0007】同図(a)に示すように、これらの2つの
プログラムは論理的には同一の内容を表わしているが、
同図(b)に示すように、ラダーシンボルの記述順が異
なるため機械語レベルでは相違している。このため、従
来の照合方法では、2つのプログラムが実質同一である
にもかかわらず、不一致という判定がなされてしまうと
いう問題があった。
As shown in FIG. 1A, although these two programs logically represent the same contents,
As shown in FIG. 7B, the description order of the ladder symbols is different, so that they are different at the machine language level. Therefore, the conventional matching method has a problem in that the two programs are determined to be inconsistent even though the two programs are substantially the same.

【0008】従って、上記問題点を解決しなければなら
ないという課題がある。
Therefore, there is a problem that the above problems must be solved.

【0009】この発明は、係る課題を解決するためにな
されたもので、論理回路上の順序が相違している場合で
あっても、制御内容が同一であれば一致と判定すること
ができるシーケンスプログラム照合方法を得ることを目
的とする。
The present invention has been made in order to solve the above problems, and even if the order in the logic circuit is different, if the control contents are the same, it is possible to determine a sequence. The purpose is to obtain a program matching method.

【0010】[0010]

【課題を解決するための手段】この発明に係るシーケン
スプログラム照合方法は、記憶したシーケンスプログラ
ムに従って機械装置の制御を行うと共に、前記シーケン
スプログラムと外部記憶媒体等に保存されたシーケンス
プログラムとを比較照合する機能を有するシーケンスコ
ントローラにおいて、比較対象の両シーケンスプログラ
ムから所定の規則に従ってそれぞれ行列データを作成
し、各行列データ内において行同士または列同士の入換
えやデータ整理等の操作を行いながら両シーケンスプロ
グラムの比較照合を行うものである。
A sequence program collating method according to the present invention controls a machine device in accordance with a stored sequence program, and compares and collates the sequence program with a sequence program stored in an external storage medium or the like. In the sequence controller that has the function to perform, the matrix data is created from both sequence programs to be compared according to a predetermined rule, and both sequences are performed while performing operations such as swapping rows or columns in each matrix data and organizing data. This is to compare and collate programs.

【0011】[0011]

【作用】この発明に係るシーケンスプログラム照合方法
では、シーケンスプログラムを行列表現した上でそれぞ
れの行列の行または列の入換えを行うため、両シーケン
スプログラム間で論理的内容の記述順序が異なっている
場合でも正確な照合結果を得ることができる。
In the sequence program collating method according to the present invention, since the sequence program is expressed in a matrix and the rows or columns of each matrix are exchanged, the description order of the logical contents is different between the two sequence programs. Even in this case, an accurate matching result can be obtained.

【0012】[0012]

【実施例】以下、実施例につき本発明を詳細に説明す
る。
EXAMPLES The present invention will be described in detail below with reference to examples.

【0013】第1実施例 図1は、本発明の第1の実施例におけるシーケンスプロ
グラム照合方法を応用したシステムを表したものであ
る。このシステムにおいて、PC11には、メインメモ
リ15が設けられ、照合プログラム16を始めとする各
種の編集プログラムまたはシーケンスプログラム作成用
のプログラム等が格納されるようになっている。
First Embodiment FIG. 1 shows a system to which a sequence program collating method according to a first embodiment of the present invention is applied. In this system, the PC 11 is provided with a main memory 15 for storing various editing programs such as the collation program 16 or programs for creating sequence programs.

【0014】PC11には、被制御装置13を制御する
ためのシーケンスプログラムを記憶するためのシーケン
スプログラム記憶部17が設けられている。これらの照
合プログラム16やシーケンスプログラム等は制御部1
9により実行されるようになっている。また、PC11
にはバッファメモリ18が設けられ、照合プログラム1
6の実行に際し使用されるようになっている。
The PC 11 is provided with a sequence program storage unit 17 for storing a sequence program for controlling the controlled device 13. The collation program 16 and the sequence program are controlled by the control unit 1.
9 is executed. In addition, PC11
Is provided with a buffer memory 18, and the collation program 1
It is designed to be used when executing 6.

【0015】さらに、PC11には磁気テープ装置(M
T)12やディスプレイ装置(CRT)21等の装置が
接続されている。前者は必要に応じシーケンスプログラ
ム記憶部17の内容を保存するのに用いられ、後者はシ
ーケンスプログラムの作成や各種の編集時にプログラム
の表示等をするのに用いられる。
Further, a magnetic tape device (M
Devices such as a T) 12 and a display device (CRT) 21 are connected. The former is used to save the contents of the sequence program storage unit 17 as needed, and the latter is used to create the sequence program and display the program during various edits.

【0016】以上のような構成のシステムにおいて行わ
れるシーケンスプログラム照合について説明する。
The sequence program collation performed in the system having the above configuration will be described.

【0017】図2は、本実施例におけるシーケンスプロ
グラム照合方法のメインルーチンを表したものである。
シーケンスプログラム照合に先立ち、PC11の制御部
19(図1)は、磁気テープ装置12に格納された被比
較対象プログラムをバッファメモリ18へとロードす
る。そして制御部19は、シーケンスプログラム記憶部
17に格納された比較対象プログラムとバッファメモリ
18に格納された被比較対象プログラムとの比較を行
う。具体的には、まず図22(b)に示したような機械
語プログラムにつき、一語ずつ比較を行う(図2ステッ
プS101)。この結果双方が一致した場合には(ステ
ップS101;Y)、次の機械語の照合を行う(ステッ
プS102)。そしてすべての機械語についての照合の
結果が一致した場合には(ステップS103;Y)、正
常と判定し照合を終了する(ステップS105)。
FIG. 2 shows the main routine of the sequence program collating method in this embodiment.
Prior to the sequence program collation, the control unit 19 (FIG. 1) of the PC 11 loads the compared program stored in the magnetic tape device 12 into the buffer memory 18. Then, the control unit 19 compares the comparison target program stored in the sequence program storage unit 17 with the compared target program stored in the buffer memory 18. Specifically, first, the machine language programs as shown in FIG. 22B are compared word by word (step S101 in FIG. 2). As a result, if both match (step S101; Y), the next machine language is collated (step S102). When the results of the collation for all the machine words match (step S103; Y), it is determined to be normal and the collation ends (step S105).

【0018】一方、機械語が一致しなかった場合には
(ステップS101;N)、プレチェックルーチンへと
移行する(ステップS104)。
On the other hand, if the machine words do not match (step S101; N), the process moves to the pre-check routine (step S104).

【0019】例えば図7に示すように、PC側及びMT
側にそれぞれシーケンスラダープログラム31、32が
格納されているものとすると、これらの間ではOR接続
されているリレー接点X01とM01の順序が逆になっ
ており、またAND接続されているM02とM03の順
序が逆になっている。これら2つのプログラムは論理的
には同一の内容を示しているが、機械語一語ずつの比較
を行った場合には、PC側のプログラム31におけるX
01とMT側プログラム32におけるM01の部分にお
いて不一致が生ずる。このような場合に、図3に示すプ
レチェックルーチンにより、プレチェックが行われる。
For example, as shown in FIG. 7, the PC side and MT
Assuming that the sequence ladder programs 31 and 32 are stored on the respective sides, the order of the relay contacts X01 and M01 that are OR-connected between them is reversed, and the AND-connected M02 and M03 are also reversed. The order of is reversed. These two programs logically show the same content, but when comparing machine words one by one, X in the program 31 on the PC side is compared.
01 and the M01 portion of the MT side program 32 do not match. In such a case, the precheck is performed by the precheck routine shown in FIG.

【0020】すなわち、まず不一致が生じたブロックに
ついて、まず出力コイルが同一か否かを判定する(図3
ステップS201)。この場合には出力コイルがともに
M06であり一致するので、このブロックを抽出する
(ステップS202)。そして、このブロック内に含ま
れる接点の数及び名称の一覧表33,34をそれぞれ作
成する(ステップS205)。そしてこれらの一覧表3
3及び34を相互に比較し、これらの構成要素同士が順
序を除き全て一致した場合には(ステップS206;
N)、一致見込みがあるものと判断し(ステップS20
8)、本チェックルーチンへと移行する(ステップS2
09)。また、これらの一覧表33及び34の構成要素
同士に一部でも違いがあった場合には(ステップS20
6;Y)、一致見込みがないものとして照合エラーとす
る(ステップS207)。
That is, first, with respect to the block in which the mismatch occurs, it is first determined whether the output coils are the same (FIG.
Step S201). In this case, since both output coils are M06 and coincide, this block is extracted (step S202). Then, the lists 33 and 34 of the number of contacts and the names included in this block are created respectively (step S205). And these list 3
3 and 34 are compared with each other, and when these constituent elements are all identical except for the order (step S206;
N), it is determined that there is a possibility of matching (step S20).
8) and shifts to this check routine (step S2)
09). If there is any difference between the constituent elements of the lists 33 and 34 (step S20).
6; Y), and it is determined that there is no match, and a collation error is determined (step S207).

【0021】一方、データ不一致が生じたブロックにお
いて出力コイルが同一でなかった場合には(ステップS
201;N)、付近のブロックに一致する出力コイルが
あるか否かを検索する(ステップS203)。この結果
同一コイルが近傍に存在していた場合には(ステップS
204;Y)、そのブロックを抽出し(ステップS20
2)、同一コイルが近傍にも存在していなかった場合に
は(ステップS204;N)、一致見込みがないものと
して照合エラーとする(ステップS207)。
On the other hand, if the output coils are not the same in the block where the data mismatch occurs (step S
201; N), it is searched whether or not there is an output coil that matches a nearby block (step S203). As a result, if the same coil is present in the vicinity (step S
204; Y), and the block is extracted (step S20).
2) If the same coil does not exist in the vicinity (step S204; N), it is determined that there is no match and a collation error is determined (step S207).

【0022】次に、図4とともに本チェックルーチンの
内容について説明する。まず制御部19は、バッファメ
モリ18に格納された被比較対象プログラムより行列デ
ータ群Aを作成し(ステップS301)、次にシーケン
スプログラム記憶部17に格納された比較対象プログラ
ムより行列データ群Bを作成する(ステップS30
2)。ここで行列データとは、図8に示すように、デー
タの不一致の生じたブロック31に含まれる各接点を抽
出し、AND接続の接点を列方向に配置し、OR接続の
接点を行方向に配置したものである。これにより、行列
データ36が生成される。
Next, the contents of this check routine will be described with reference to FIG. First, the control unit 19 creates a matrix data group A from the compared target program stored in the buffer memory 18 (step S301), and then creates a matrix data group B from the comparison target program stored in the sequence program storage unit 17. Create (step S30
2). Here, with the matrix data, as shown in FIG. 8, each contact included in the block 31 in which the data does not match is extracted, the AND connection contacts are arranged in the column direction, and the OR connection contacts are arranged in the row direction. It is arranged. As a result, the matrix data 36 is generated.

【0023】この行列データ作成の詳細について図5と
ともに説明する。行列データ作成にあたっては、以下の
3つの原則ルールに従う。
Details of this matrix data creation will be described with reference to FIG. When creating matrix data, follow the following three principle rules.

【0024】(1)ある接点データを行列のしかるべき
位置に登録した後、その接点に対してAND接続された
接点を列方向のプラス1増分の行列データとして登録す
る。
(1) After registering certain contact data at an appropriate position in the matrix, the contact AND-connected to the contact is registered as matrix data of plus one increment in the column direction.

【0025】(2)OR接続された接点の場合には、行
方向のプラス1増分の行列のデータとして登録する。
(2) In the case of the OR-connected contacts, the data is registered as data of a matrix of +1 increment in the row direction.

【0026】(3)分岐または複数の接続系列の合流等
のような複雑な接続回路の場合には、これらの複数の接
点を一つの擬似接点(以下、ブロック接点と呼ぶ)に置
き換え、回路の簡略化を行う。
(3) In the case of a complicated connection circuit such as branching or merging of a plurality of connection series, these plurality of contacts are replaced with one pseudo contact (hereinafter referred to as a block contact). Make a simplification.

【0027】上記(3)に示したように、複雑な接続関
係にある複数の接点を一つの擬似接点であるブロック接
点に置き換えるのは、以下のような理由による。すなわ
ち、図9(a)に示すような行列データを考えた場合、
これが、同図(b)に示すシーケンスラダー回路を示す
のか、あるいは同図(c)に示すシーケンスラダー回路
を示すのかは不定となる。このため、仮に強制的にデー
タを作成したとしても、この作成したデータから、それ
ぞれのラダー回路を特定することができないこととな
る。
As shown in (3) above, the reason why a plurality of contacts having a complicated connection relationship are replaced with one block contact which is a pseudo contact is as follows. That is, when the matrix data as shown in FIG. 9A is considered,
It is uncertain whether this shows the sequence ladder circuit shown in FIG. 7B or the sequence ladder circuit shown in FIG. Therefore, even if data is forcibly created, each ladder circuit cannot be identified from the created data.

【0028】このようなケースに該当する例として、図
10に4つの例を示す。この図の(a)は、N対1で合
流するケースを表したものである。この図では、3個の
AND接続されたリレー接点と1個のリレー接点とがO
R接続で合流している。この場合には3個のAND接続
接点群41を、1個のブロック接点42に置換する処理
を行う。
As an example corresponding to such a case, FIG. 10 shows four examples. (A) of this figure shows a case where N: 1 merges. In this figure, three AND-connected relay contacts and one relay contact are O
It joins with R connection. In this case, the process of replacing the three AND connection contact groups 41 with one block contact 42 is performed.

【0029】また同図(b)は、1対Nで合流するケー
スを表したものである。この場合には上記と同様に3個
のAND接続接点群43を1個のブロック接点44に置
き換える。
Further, FIG. 7B shows a case where the flow is merged in a ratio of 1: N. In this case, similarly to the above, the three AND connection contact groups 43 are replaced with one block contact 44.

【0030】同図(c)は、M対Nで合流するケースを
表したものである。この図の場合には、2個のAND接
続接点群45を1個のブロック接点47に置き換えると
ともに、3個のAND接続接点群46を1個のブロック
接点48に置き換える操作を行う。
FIG. 3C shows a case where the M and N merge. In the case of this figure, two AND connection contact groups 45 are replaced with one block contact 47 and three AND connection contact groups 46 are replaced with one block contact 48.

【0031】同図(d)は、分岐を有するブロックの例
を表したものである。この場合には、2つのAND接続
接点群49を一つのブロック接点51に置き換えるとと
もに、このブロック接点51とこれにOR接続された接
点53とからなる接点群52を、一つのブロック接点5
4に置き換えるという処理を行う。
FIG. 3D shows an example of a block having a branch. In this case, the two AND connection contact groups 49 are replaced with one block contact 51, and the contact group 52 composed of the block contact 51 and the contact 53 connected to the OR is connected to one block contact 5.
The process of replacing with 4 is performed.

【0032】このようにして、複数の接点を一つにまと
めるブロック化の処理を繰り返すことにより、簡単な記
述に変換することができる。なおこのブロック接点を利
用して記述した場合には、行列データとして登録された
ブロック接点には、さらにその内部に行列データが含ま
れることとなる。
In this way, by repeating the process of blocking for combining a plurality of contacts into one, it is possible to convert into a simple description. When the block contact is used for description, the block contact registered as the matrix data further includes the matrix data therein.

【0033】さて、図5において、制御部19はラダー
回路図内に行列データへの直接変換不可能なデータがあ
るかをチェックする(ステップS401)。ここで直接
変換不可能なデータとは、図10で説明した4つの例を
示す。この判定の結果、ブロック内に変換不可能なデー
タがあった場合には、この変換不可能な部分をブロック
接点に置き換える処理を行い(ステップS403)、次
の変換不可能なデータの検索を行う。そして、変換不可
能なデータがなくなった時点で(ステップS401:
N)、行列データの作成を行う(ステップS402)。
行列データの作成とは、具体的には、上述した接点及び
ブロック接点の登録を意味する。
Now, in FIG. 5, the control unit 19 checks whether or not there is data that cannot be directly converted into matrix data in the ladder circuit diagram (step S401). Here, the data that cannot be directly converted refers to the four examples described in FIG. If there is unconvertible data in the block as a result of this determination, a process of replacing this unconvertible portion with a block contact is performed (step S403), and the next unconvertible data is searched. .. Then, when there is no unconvertible data (step S401:
N), matrix data is created (step S402).
The creation of matrix data specifically means registration of the above-mentioned contact and block contact.

【0034】続いて、制御部19は、作成した行列デー
タ内部にブロック接点があるか否かを判定し、ブロック
接点が含まれる場合には(ステップS404;Y)、そ
のブロック接点の内容を抽出し(ステップS405)、
その抽出した内容をもとに行列データを作成する(ステ
ップS406)。そして、引き続き行列データの作成を
行う(ステップS402)。
Subsequently, the control unit 19 judges whether or not there is a block contact inside the created matrix data, and if a block contact is included (step S404; Y), the contents of the block contact are extracted. (Step S405),
Matrix data is created based on the extracted contents (step S406). Then, the matrix data is continuously created (step S402).

【0035】以上の行列データの作成例を、図11とと
もに説明する。まず、図11(a)に示すようなシーケ
ンスラダー回路図をもとに行列データを作成する場合を
考える。この場合、図に示すように、リレー接点M03
とX03との間に接点X01の合流点が存在する。従っ
て接点M01とM03の二つをまず行列データa1 とし
て登録するとともに、接点M01,M03の二つを一つ
のブロック接点Bk1に置き換え、同図(b)に示すよ
うなシーケンスラダー回路図に変換する。
An example of creating the above matrix data will be described with reference to FIG. First, consider a case where matrix data is created based on a sequence ladder circuit diagram as shown in FIG. In this case, as shown in the figure, relay contact M03
And the junction point of the contact point X01 exists between X03 and X03. Therefore, the two contacts M01 and M03 are first registered as the matrix data a 1 , and the two contacts M01 and M03 are replaced with one block contact Bk1 and converted into the sequence ladder circuit diagram as shown in FIG. To do.

【0036】ここでさらに、リレー接点X03とM04
の間にリレー接点M02が合流接続されていることを発
見すると、ブロック接点Bk1,接点X03,X01の
3接点を一つの行列データa2 として登録するととも
に、これらの接点を一つのブロック接点Bk2として置
き換え、同図(c)に示すようなシーケンスラダー回路
図に変換する。ここで初めて、複数の合流または分岐等
の行列データへの変換不可能な部分が存在しないことと
なり、ブロック接点Bk2,接点M04,M02の3つ
を行列データa3 として登録する。
Here, further, relay contacts X03 and M04
When it is found that the relay contact M02 is merged and connected between the two, the three contacts of the block contact Bk1 and the contacts X03, X01 are registered as one matrix data a 2 , and these contacts are regarded as one block contact Bk2. It is replaced and converted into a sequence ladder circuit diagram as shown in FIG. For the first time, there is no portion that cannot be converted into matrix data, such as a plurality of merges or branches, and three block contacts Bk2, M04, M02 are registered as matrix data a 3 .

【0037】以上のようにして作成された行列データの
データ構造は、図12に示すようなものとなる。すなわ
ち、もとのシーケンスラダー回路図(a)の全体を表す
行列データとして同図(b)に示すような行列データa
3 が作成され、さらにこのうちのブロック接点Bk2の
内部を表す行列データとして同図(c)に示す行列デー
タa2 が作成される。さらにこのうちのブロック接点B
k1の内部を表す行列データとして同図(d)に示す行
列データa1 が作成される。
The data structure of the matrix data created as described above is as shown in FIG. That is, the matrix data a as shown in FIG. 2B is used as matrix data representing the entire original sequence ladder circuit diagram (a).
3 is created, and further, matrix data a 2 shown in FIG. 7C is created as matrix data representing the inside of the block contact Bk2. Block contact B of these
Matrix data a 1 shown in FIG. 9D is created as matrix data representing the inside of k1.

【0038】以上のようにして作成された各行列データ
群は、メインメモリ15(図1)上の所定の作業領域に
格納される。
Each matrix data group created as described above is stored in a predetermined work area on the main memory 15 (FIG. 1).

【0039】図13は、メインメモリ15上の所定の作
業領域に格納された行列データ群Aおよび行列データ群
Bを表したものである。ここで行列データ群Aとは、バ
ッファメモリ18に格納された被比較対象プログラムか
ら作成された行列データa1〜a3 から構成される。同
様に、行列データ群Bは、シーケンスプログラム記憶部
17に格納された比較対象プログラムから作成された行
列データb1 〜b3 から構成される。
FIG. 13 shows a matrix data group A and a matrix data group B stored in a predetermined work area on the main memory 15. Here, the matrix data group A is composed of matrix data a 1 to a 3 created from the compared program stored in the buffer memory 18. Similarly, the matrix data group B is composed of matrix data b 1 to b 3 created from the comparison target program stored in the sequence program storage unit 17.

【0040】さて、以上のようにして行列データ群A,
Bの作成が終了すると(図4ステップS301,S30
2)、次に制御部19は、比較照合ルーチンの処理を行
う(ステップS303)。以下図6とともに、この比較
照合ルーチンの詳細を説明する。
The matrix data group A,
When the creation of B is completed (steps S301 and S30 in FIG. 4).
2) Next, the control unit 19 performs a comparison and collation routine process (step S303). The details of this comparison and collation routine will be described below with reference to FIG.

【0041】制御部19は、変数iにまず“1”をセッ
トし(ステップS501)、図13に示した行列データ
群A,Bから行列データai ,bi を抽出する(ステッ
プS502)。ここではi=1であるので行列データa
1 ,b1 が抽出され、これらの比較が行われる(ステッ
プS503)。これらが一致した場合には(ステップS
504;Y)、この比較照合の終了した行列データに終
了フラグを立てる(ステップS505)。一方、これら
が一致しなかった場合には(ステップS504;N)、
行列内の一致する要素データを検索し、これが並び換え
可能か否かをチェックする(ステップS506)。並び
換え可能データが存在する場合には(ステップS50
7;Y)、行列データa1 の内容の並び換えを行う(ス
テップS508)。一方、もはや並び換えが不可能とな
った場合には(ステップS507;N),エラーフラグ
をたてる(ステップS509)。
The control section 19 first sets "1" in the variable i (step S501), and extracts the matrix data a i , b i from the matrix data groups A, B shown in FIG. 13 (step S502). Since i = 1 here, the matrix data a
1 and b 1 are extracted and compared with each other (step S503). If these match (step S
504; Y), an end flag is set to the matrix data for which this comparison and collation has been completed (step S505). On the other hand, if these do not match (step S504; N),
The matching element data in the matrix is searched, and it is checked whether this can be rearranged (step S506). If there is sortable data (step S50)
7; Y), the contents of the matrix data a 1 are rearranged (step S508). On the other hand, when rearrangement is no longer possible (step S507; N), an error flag is set (step S509).

【0042】ここで行列データの並び換えは、以下の原
則に従って行う。
Here, rearrangement of matrix data is performed according to the following principle.

【0043】(i) 行単位での並び換えを行う。(I) Sorting is performed in units of rows.

【0044】(ii)行データが空白な場合には上の行への
繰上げを行うことによりデータの整理を行う。
(Ii) When the row data is blank, the data is organized by moving up to the upper row.

【0045】(iii) 列単位の並び換えを行う。(Iii) Rearrange in units of columns.

【0046】以上の原則に基づいてデータの並び換えを
行う一例を図14とともに説明する。ここでは、被比較
対象の行列データai は同図(a)に示すようであり、
比較対象の行列データbi は同図(b)に示すようであ
るとする。この場合、行列データai と行列データbi
とは一致していないので、原則に基づき同図(c)に
示すように、第1行と第2行をそっくり入れ替える並び
換えを行う。この結果第1行の第2列及び第3列は空白
となるので、原則(ii)に従い、同図(d)に示すよう
に、第2行のデータ“B”,“C”の2つを上の行へ繰
り上げる操作を行う。さらに、原則(iii) により同図
(e)に示すように、第2列と第3列とをそっくり入れ
替えるデータ並び換えを行う。これにより、行列データ
i と行列データbi とは同一の行列データとなる。
An example of rearranging data based on the above principle will be described with reference to FIG. Here, the matrix data a i to be compared is as shown in FIG.
It is assumed that the matrix data b i to be compared is as shown in FIG. In this case, matrix data a i and matrix data b i
Therefore, in principle, the first row and the second row are rearranged so that they are rearranged as shown in FIG. As a result, the second and third columns of the first row are blank, and therefore, in accordance with the principle (ii), as shown in FIG. 7D, the two data "B" and "C" of the second row are used. To move to the line above. Further, according to the principle (iii), as shown in (e) of the figure, data rearrangement is performed so that the second column and the third column are completely interchanged. As a result, the matrix data a i and the matrix data b i become the same matrix data.

【0047】このような並び換えの後、再度行列データ
1 とb1 との内容比較が行われ(図6ステップS50
3)、これらが一致したときは(ステップS504;
Y)、ステップS505へと移行する。以上の処理は、
最終の行列データとなるまで(ステップS510;
Y)、変数iの値を順次インクリメントしながら(ステ
ップS511)、繰り返し行われる。これにより、図1
3における行列データ群Aの内容と、行列データ群Bの
内容との照合が全て行われることとなる。
After such rearrangement, the contents of the matrix data a 1 and b 1 are compared again (step S50 in FIG. 6).
3) If they match (step S504;
Y), and the process proceeds to step S505. The above processing is
Until the final matrix data is obtained (step S510;
Y), the value of the variable i is sequentially incremented (step S511) and is repeatedly performed. As a result,
In this case, the contents of the matrix data group A and the contents of the matrix data group B in 3 are all collated.

【0048】以上の照合の結果、全ての行列データ同士
が一致した場合には、照合エラーがなかったものと判定
され(図4ステップS305)、処理を終了する。一
方、比較照合の結果、不一致部分が存在していた場合に
は(ステップS304;Y)、照合エラーありと判定し
(ステップS306)、処理を終了する。
As a result of the above collation, if all the matrix data match each other, it is determined that there is no collation error (step S305 in FIG. 4), and the process is terminated. On the other hand, as a result of the comparison and collation, if there is a mismatched portion (step S304; Y), it is determined that there is a collation error (step S306), and the process ends.

【0049】以上のようにして、本実施例では、機械語
レベルで一語ずつ比較照合した結果、不一致部分を発見
した場合には、双方のシーケンスラダー回路図について
行列データ群をそれぞれ作成するとともに、作成された
個々の行列データの照合に当たっては所定のルールに従
ったデータの並び換えを行うことにより、論理的に同一
である限り同一のプログラムであると判定することがで
きる。
As described above, in this embodiment, when a mismatched portion is found as a result of comparing and collating one word at a machine language level, matrix data groups are created for both sequence ladder circuit diagrams, respectively. In collating the created individual matrix data, by rearranging the data according to a predetermined rule, it is possible to determine that the programs are the same as long as they are logically the same.

【0050】第2実施例 ところで、上記した実施例では、プレチェックルーチン
(図3)のステップS206において、PC側とMT側
の一覧表33及び34(図7)の構成要素が一部でも相
違していた場合には、一致見込みがないものとして照合
エラーとなるが、以下に示すようにさらに一致の可能性
を探る処理を付加することもできる。
Second Embodiment By the way, in the above-described embodiment, in step S206 of the pre-check routine (FIG. 3), the constituent elements of the tables 33 and 34 (FIG. 7) on the PC side and the MT side are partially different. In such a case, a collation error is generated because there is no possibility of coincidence, but it is possible to add a process for searching for a possibility of coincidence as described below.

【0051】例えば図16に示すように、PC側及びM
T側にそれぞれ格納されたシーケンスラダープログラム
61、62を比較するものとする。この図で、PC側の
ブロック63とMT側のブロック64において出力コイ
ルY01は一致しているが、他の接点は一致しない。し
かしながら、これら2つのプログラムは論理的には同一
の内容を示している。すなわち、プログラム61のブロ
ック63においては接点M05とY02のみが出力コイ
ルY01にAND接続されているが、このうち接点M0
5については、対応する出力コイルM5が隣接ブロック
65中に存在し、このブロック65中に配置された接点
群(X01,X02,X03,X04,M03)を置換
している。従って、ブロック65を考慮すると、ブロッ
ク63はMT側のプログラム62のブロック64と同一
の論理内容を表していることが判る。
For example, as shown in FIG. 16, the PC side and M
The sequence ladder programs 61 and 62 respectively stored on the T side are compared. In this figure, the output coil Y01 matches in the block 63 on the PC side and the block 64 on the MT side, but the other contacts do not match. However, these two programs logically show the same content. That is, in the block 63 of the program 61, only the contacts M05 and Y02 are AND-connected to the output coil Y01.
For No. 5, the corresponding output coil M5 exists in the adjacent block 65 and replaces the contact group (X01, X02, X03, X04, M03) arranged in this block 65. Therefore, considering the block 65, it can be seen that the block 63 represents the same logical content as the block 64 of the program 62 on the MT side.

【0052】本実施例は、このような場合における両者
の一致判定を可能とするものであり、これを、図15〜
図19を参照して説明する。
The present embodiment makes it possible to determine the coincidence between the two in such a case, and this is shown in FIG.
This will be described with reference to FIG.

【0053】まず、PC側プログラム61とMT側プロ
グラム62の比較(図2,図16ステップS101)の
結果、ブロック63とブロック64の機械語プログラム
が一致しなかった場合には(図2,図16ステップS1
01;N)、プレチェックルーチン(図15)へと移行
する(ステップS104)。
First, as a result of comparison between the PC side program 61 and the MT side program 62 (step S101 in FIG. 2, FIG. 16), if the machine language programs in the blocks 63 and 64 do not match (see FIG. 2, FIG. 16 steps S1
01; N), and shifts to the pre-check routine (FIG. 15) (step S104).

【0054】プレチェックルーチンにおいては、不一致
が生じたブロック63,64について、まず出力コイル
が同一か否かを判定する(図15ステップS601)。
出力コイルが同一であれば(ステップS601;Y)、
そのブロックを抽出し、同一でなければ(ステップS6
01;N)、付近のブロックに一致する出力コイルがあ
るか否かを検索する(ステップS603)。この結果同
一コイルが近傍に存在していた場合には(ステップS6
04;Y)、そのブロックを抽出し(ステップS60
2)、近傍にも存在していなかった場合には(ステップ
S604;N)、一致見込みがないものとして照合エラ
ーとする(ステップS619)。
In the pre-check routine, it is first determined whether or not the output coils of the blocks 63 and 64 in which the mismatches occur are the same (step S601 in FIG. 15).
If the output coils are the same (step S601; Y),
The blocks are extracted, and if they are not the same (step S6)
01; N), and it is searched whether or not there is an output coil that matches a nearby block (step S603). As a result, if the same coil is present in the vicinity (step S6)
04; Y), the block is extracted (step S60).
2) If it does not exist in the vicinity (step S604; N), it is determined that there is no match and a collation error is determined (step S619).

【0055】この場合には出力コイルがともにY01で
あり一致するので(図15,図16ステップS601;
Y)、これらのブロック63,64を抽出する(ステッ
プS602)。
In this case, the output coils are both Y01 and coincide with each other (step S601 in FIGS. 15 and 16;
Y), these blocks 63 and 64 are extracted (step S602).

【0056】次に、各ブロック内に含まれる接点の数及
び名称の一覧表65,66をそれぞれ作成し(ステップ
S605)、両者を相互に比較する。この結果、これら
の構成要素同士が、順序を除き全て一致した場合には
(ステップS606;N)、一致見込みがあるものと判
断し(ステップS607)、本チェックルーチン(図
4)へと移行する(ステップS608)。
Next, lists 65 and 66 of the numbers and names of contacts included in each block are created (step S605), and the two are compared with each other. As a result, when all of these constituent elements match each other except for the order (step S606; N), it is determined that there is a possibility of matching (step S607), and the process proceeds to this check routine (FIG. 4). (Step S608).

【0057】一方、一覧表65,66の構成要素同士に
一部でも違いがあった場合には(ステップS606;
Y)、双方の一覧表から一致部分のみを削除する表修正
を行う(ステップS609)。この場合、接点Y2が一
致するのでこれが削除され、一覧表は67,68(図1
6)のようになる。
On the other hand, if there is any difference between the constituent elements of the lists 65 and 66 (step S606;
Y), the table is corrected by deleting only the matching portion from both lists (step S609). In this case, the contact Y2 is the same and is deleted, and the list is 67, 68 (see FIG.
It becomes like 6).

【0058】一般に、上記したような接点の置換が行わ
れている場合には、その置換が行われている側の一覧表
に含まれる員数の方が少なくなる。従って、ここではP
C側の一覧表67の員数の方が少ないため、PC側にお
いて置換が行われていると推定する。ここでは、一覧表
67には接点M5のみが含まれるので、これに対応する
出力コイルM5について置換が行われていると判断す
る。そして、PC側プログラム61から出力コイルM5
を検索する(ステップS610)。該当するコイルを発
見すると(ステップS611)、そのコイルを含むブロ
ックを抽出し、その接点構成一覧表を作成する(ステッ
プS612)。この場合、コイルM5を含むブロック6
5(図17)が抽出され、その一覧表71(同図)が作
成される。次に、この一覧表71とMT側の一覧表68
との比較を行い(ステップS613)、一致しなければ
(ステップS613;Y)、ステップS609に戻って
ステップS613の処理を繰り返し行う。このような繰
り返しを所定の回数(n回)行っても一覧表が一致しな
い場合には、一致見込みなしとして照合エラーとする
(ステップS619)。
In general, when the contact is replaced as described above, the number of members included in the list on the side where the replacement is made is smaller. Therefore, here P
Since the number of members in the list 67 on the C side is smaller, it is estimated that the replacement is performed on the PC side. Here, since the list 67 includes only the contact M5, it is determined that the output coil M5 corresponding to this is replaced. Then, from the PC side program 61 to the output coil M5
Is searched (step S610). When the corresponding coil is found (step S611), the block including the coil is extracted and the contact configuration list is created (step S612). In this case, the block 6 including the coil M5
5 (FIG. 17) is extracted, and the list 71 (FIG. 17) is created. Next, this list 71 and the list 68 on the MT side
Is compared (step S613), and if they do not match (step S613; Y), the process returns to step S609 to repeat the process of step S613. If the lists do not match even after repeating such a predetermined number of times (n times), it is determined that there is no match and a matching error is generated (step S619).

【0059】一方、この一覧表71,68が一致した場
合には(ステップS613;N)、一致見込み有りと判
断し(ステップS615)、PC側のコイルM5を含む
ブロック65から接点群72を抽出し(ステップS61
6)、これを元の比較対象ブロック63の該当する接点
M5の代わりにセットする(ステップS617)。この
ようにして、結果としてブロック63とブロック65が
合成されて合成ブロック73が得られ、次の本チェック
ルーチン(図4)に移行する(ステップS608)。
On the other hand, if the lists 71 and 68 match (step S613; N), it is determined that there is a possibility of matching (step S615), and the contact group 72 is extracted from the block 65 including the coil M5 on the PC side. (Step S61
6) This is set instead of the corresponding contact M5 of the original comparison target block 63 (step S617). In this way, as a result, the block 63 and the block 65 are combined to obtain a combined block 73, and the process proceeds to the next main check routine (FIG. 4) (step S608).

【0060】そして、本チェックルーチンでは、第1の
実施例の場合と同様の処理により、PC側の合成ブロッ
ク73とMT側のブロック64が詳細に比較されること
となる。具体的には、図18(a)〜(c)に示すよう
な手順によりブロック接点を用いて行列データa1 〜a
3 を作成する。こうして得られた行列データのデータ構
造は、図19(a)〜(d)に示す通りである。
In this check routine, the combined block 73 on the PC side and the block 64 on the MT side are compared in detail by the same processing as in the first embodiment. Specifically, the matrix data a 1 to a 1 are used by using the block contacts according to the procedure shown in FIGS.
Create 3 . The data structure of the matrix data thus obtained is as shown in FIGS.

【0061】なお、第2の実施例において、本来1つの
ブロック73として表現可能なものものを敢えてブロッ
ク63,65の2つに分割して表現するのは、次のよう
な場合が該当する。
In the second embodiment, what is originally represented as one block 73 is intentionally divided into two blocks 63 and 65, and the following cases apply.

【0062】例えば図20において、生産ラインの全ユ
ニットの原位置制御ブロック75のコイルDIPは、こ
れにAND接続されそれぞれ第1〜第3ユニットの原位
置を示す接点X1〜X3がすべてメーク状態のときにの
み励磁状態となって、ジグ締めブロック76の接点DI
Pをメークする。これは、全ユニットが原位置になけれ
ばジグが締められないことを示す。従って、本来は、ブ
ロック76の接点DIPの代わりにブロック75の接点
X1〜X3を配置すれば同一動作が確保できるため、ブ
ロック75,76の2つに分割する必要はない。
For example, in FIG. 20, the coils DIP of the original position control block 75 of all the units on the production line are AND-connected to them, and all the contacts X1 to X3 indicating the original positions of the first to third units are all in the make state. Only when it is excited, the contact DI of the jig tightening block 76
Make P This indicates that the jig cannot be tightened unless all units are in place. Therefore, originally, if the contacts X1 to X3 of the block 75 are arranged in place of the contact DIP of the block 76, the same operation can be ensured, and it is not necessary to divide the blocks 75 and 76 into two.

【0063】しかしながら、例えば第4のユニットを追
加する場合には、2つのブロック75,76のうち、ブ
ロック75のAの位置に第4ユニット用の原位置表示用
接点を追加すればよく、ブロック76については何ら修
正を加える必要がない。
However, for example, when adding the fourth unit, it is sufficient to add an in-position display contact for the fourth unit to the position A of the block 75 of the two blocks 75 and 76. No modification is required for 76.

【0064】このように、複数のブロックに分割して表
現することは、標準化された回路パターンをできるだけ
損なうことなく、必要部分のみの修正で済むという利点
を有する。従って、上記した第2の実施例によれば、こ
のような利点を保持したまま、正確に照合を行うことが
できる。
As described above, the expression by dividing into a plurality of blocks has an advantage that only a necessary portion can be modified without impairing the standardized circuit pattern as much as possible. Therefore, according to the second embodiment described above, it is possible to perform the collation accurately while maintaining such advantages.

【0065】[0065]

【発明の効果】以上説明したように、本発明によれば、
シーケンスプログラムを行列表現した上でそれぞれの行
列の行または列の入換えを行いながら照合することとし
たので、両シーケンスプログラム間で論理的内容の記述
順序が異なっている場合でも、論理自体が一致している
限り、同一であるとの照合結果を得ることができる。従
って、比較照合の精度を向上させることができるという
効果がある。
As described above, according to the present invention,
Since the sequence programs are expressed as a matrix and then the rows and columns of each matrix are exchanged for matching, even if the sequence order of the logical contents is different between the sequence programs, the logic itself does not differ. As long as they are doing so, it is possible to obtain the matching result that they are the same. Therefore, there is an effect that the accuracy of comparison and collation can be improved.

【0066】また、通常、制御設計時の設計要素を流用
展開する手法として予め標準的な回路例を登録するとい
う方法をとっているが、これに本発明を適用すれば、設
計された回路内容と標準回路とを比較照合して論理的同
一性をチェックすることができ、設計の標準化にも寄与
し得るという効果がある。
Further, generally, a method of registering a standard circuit example in advance is used as a method of diverting and designing design elements at the time of control design. However, if the present invention is applied to this, the designed circuit contents And the standard circuit can be compared and checked to check the logical identity, which has an effect of contributing to the standardization of the design.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の一実施例におけるシーケンスプログラ
ム照合方法を応用したシーケンスコントローラシステム
を示すブロック図である。
FIG. 1 is a block diagram showing a sequence controller system to which a sequence program matching method according to an embodiment of the present invention is applied.

【図2】本シーケンスプログラム照合方法のメインルー
チンを示す流れ図である。
FIG. 2 is a flowchart showing a main routine of the present sequence program matching method.

【図3】図2におけるプレチェックルーチンの内容を説
明するための流れ図である。
FIG. 3 is a flow chart for explaining the contents of a pre-check routine in FIG.

【図4】図3における本チェックルーチンの内容を説明
するための流れ図である。
FIG. 4 is a flow chart for explaining the contents of a main check routine in FIG.

【図5】図4における行列データ群作成ルーチンの内容
を説明するための流れ図である。
5 is a flow chart for explaining the contents of a matrix data group creation routine in FIG.

【図6】図4における比較・照合ルーチンの内容を説明
するための流れ図である。
FIG. 6 is a flowchart for explaining the contents of the comparison / collation routine in FIG.

【図7】プレチェックの具体例を示す説明図である。FIG. 7 is an explanatory diagram showing a specific example of precheck.

【図8】行列データ作成の具体例を示す説明図である。FIG. 8 is an explanatory diagram showing a specific example of creating matrix data.

【図9】リレー接点のブロック化が必要な理由を説明す
るための説明図である。
FIG. 9 is an explanatory diagram for explaining the reason why blocking of relay contacts is necessary.

【図10】リレー接点のブロック化が必要な場合を示す
説明図である。
FIG. 10 is an explanatory diagram showing a case where blocking of relay contacts is required.

【図11】ブロック接点を含む行列データの作成例を示
す説明図である。
FIG. 11 is an explanatory diagram showing an example of creating matrix data including block contacts.

【図12】ブロック接点を含む行列データの構造を示す
説明図である。
FIG. 12 is an explanatory diagram showing a structure of matrix data including block contacts.

【図13】メインメモリの作業領域に登録された行列デ
ータ群を示す説明図である。
FIG. 13 is an explanatory diagram showing a matrix data group registered in a work area of the main memory.

【図14】行列データの行及び列の入換えとデータ整理
を伴う照合処理の具体例を示す説明図である。
FIG. 14 is an explanatory diagram showing a specific example of a matching process that involves row and column replacement of matrix data and data reduction.

【図15】本発明の第2の実施例におけるシーケンスプ
ログラム照合方法のプレチェックルーチンを説明するた
めの流れ図である。
FIG. 15 is a flowchart for explaining a pre-check routine of a sequence program matching method according to the second embodiment of the present invention.

【図16】第2の実施例におけるプレチェックの具体例
を示す説明図である。
FIG. 16 is an explanatory diagram showing a specific example of precheck in the second embodiment.

【図17】図16に接続する説明図である。FIG. 17 is an explanatory diagram connected to FIG.

【図18】第2の実施例におけるブロック接点を含む行
列データの作成例を示す説明図である。
FIG. 18 is an explanatory diagram showing an example of creating matrix data including block contacts in the second embodiment.

【図19】第2の実施例におけるブロック接点を含む行
列データの構造を示す説明図である。
FIG. 19 is an explanatory diagram showing a structure of matrix data including block contacts in the second embodiment.

【図20】第2の実施例に係るシーケンスプログラム照
合方法の適用に好適なシーケンス回路を示す回路図であ
る。
FIG. 20 is a circuit diagram showing a sequence circuit suitable for application of the sequence program matching method according to the second embodiment.

【図21】従来のシーケンスプログラム照合方法を示す
流れ図である。
FIG. 21 is a flowchart showing a conventional sequence program matching method.

【図22】従来のシーケンスプログラム照合方法の具体
例を示す説明図である。
FIG. 22 is an explanatory diagram showing a specific example of a conventional sequence program matching method.

【符号の説明】[Explanation of symbols]

11 シーケンスコントローラ 12 磁気テープ装置 13 被制御装置 15 メインメモリ 17 シーケンスプログラム記憶部 18 バッファメモリ 19 制御部 11 Sequence Controller 12 Magnetic Tape Device 13 Controlled Device 15 Main Memory 17 Sequence Program Storage 18 Buffer Memory 19 Control

───────────────────────────────────────────────────── フロントページの続き (72)発明者 本島 亨 愛知県刈谷市野田町北地蔵山1−7 豊田 工機株式会社内メカトロニクス事業部内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Toru Motojima 1-7 Kitajizoyama, Noda-cho, Kariya City, Aichi Toyota Koki Co., Ltd. Mechatronics Division

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 記憶したシーケンスプログラムに従って
機械装置の制御を行うと共に、前記シーケンスプログラ
ムと外部記憶媒体等に保存されたシーケンスプログラム
とを比較照合する機能を有するシーケンスコントローラ
において、 比較対象の両シーケンスプログラムから所定の規則に従
ってそれぞれ行列データを作成し、 各行列データ内において行同士または列同士の入換えや
データ整理等の操作を行いながら両シーケンスプログラ
ムの比較照合を行うことを特徴とするシーケンスプログ
ラム照合方法。
1. A sequence controller having a function of controlling a mechanical device according to a stored sequence program and comparing and collating the sequence program with a sequence program stored in an external storage medium or the like. The sequence program collation is characterized in that matrix data is created in accordance with a predetermined rule from the above, and both sequence programs are compared and collated while performing operations such as transposing rows or columns in each matrix data and organizing data. Method.
JP4094340A 1991-12-05 1992-04-14 Sequence program collation method Expired - Fee Related JP3059817B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4094340A JP3059817B2 (en) 1991-12-05 1992-04-14 Sequence program collation method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP3-322013 1991-12-05
JP32201391 1991-12-05
JP4094340A JP3059817B2 (en) 1991-12-05 1992-04-14 Sequence program collation method

Publications (2)

Publication Number Publication Date
JPH05210401A true JPH05210401A (en) 1993-08-20
JP3059817B2 JP3059817B2 (en) 2000-07-04

Family

ID=26435610

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4094340A Expired - Fee Related JP3059817B2 (en) 1991-12-05 1992-04-14 Sequence program collation method

Country Status (1)

Country Link
JP (1) JP3059817B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0863208A (en) * 1994-08-24 1996-03-08 Mazda Motor Corp Method and device for generating simulation program
JP2009271572A (en) * 2008-04-30 2009-11-19 Mitsubishi Electric Corp Control system development support device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5769411A (en) * 1980-10-16 1982-04-28 Toshiba Mach Co Ltd Collation system for sequence program
JPS58112106A (en) * 1981-12-25 1983-07-04 Toyoda Mach Works Ltd Method and device for collating sequence program
JPH03216703A (en) * 1990-01-22 1991-09-24 Nissan Motor Co Ltd Collation method for sequence program
JPH04205312A (en) * 1990-11-30 1992-07-27 Nissan Motor Co Ltd Method for collating sequence program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5769411A (en) * 1980-10-16 1982-04-28 Toshiba Mach Co Ltd Collation system for sequence program
JPS58112106A (en) * 1981-12-25 1983-07-04 Toyoda Mach Works Ltd Method and device for collating sequence program
JPH03216703A (en) * 1990-01-22 1991-09-24 Nissan Motor Co Ltd Collation method for sequence program
JPH04205312A (en) * 1990-11-30 1992-07-27 Nissan Motor Co Ltd Method for collating sequence program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0863208A (en) * 1994-08-24 1996-03-08 Mazda Motor Corp Method and device for generating simulation program
JP2009271572A (en) * 2008-04-30 2009-11-19 Mitsubishi Electric Corp Control system development support device

Also Published As

Publication number Publication date
JP3059817B2 (en) 2000-07-04

Similar Documents

Publication Publication Date Title
US4595981A (en) Method of testing interfaces between computer program modules
US7865344B2 (en) Method and system for automatically generating a global simulation model of an architecture
US5130932A (en) Generating device for production system simulator
US20100218154A1 (en) Method for designing cell layout of semiconductor integrated circuit
CN109936479A (en) Control plane failure diagnostic system and its implementation based on Differential Detection
Bogdanov et al. Automated test set generation for statecharts
KR20010071116A (en) Apparatus for producing software and method for producing software
JP3059817B2 (en) Sequence program collation method
JP2538630B2 (en) Automatic test item selection system
US20180074934A1 (en) Method for checking equivalence of code, non-transitory computer-readable storage medium, computer program product and computer for implementing the method
EP0828215B1 (en) Method for computer verification of a program, which is present in a language for a programmable logic control
US20090070393A1 (en) Method for operating databases
JP3248433B2 (en) Program linkage verification method
JP2006099452A (en) Si object file and si related file management system
JPH0721013A (en) System generating system
JPS6177913A (en) Automatic system generation system
JPH09114769A (en) Dynamic batch switching system for system structural definition information
JPH04344932A (en) Distributed programming method
JPH0634721A (en) Failure module discrimination method for electronic equipment
JPH0276029A (en) Coincidence checking method among source, object and load modules
CN112783913A (en) Database updating method, device, equipment and storage medium
JPH0736957A (en) Cell library verifying method
JP2001282590A (en) Multidimensional data base processing system
JPH06309391A (en) Drawing information checking method at the time of drawing
Kurihara et al. New structured and hierarchical network model for designing FA control system

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090421

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees