JPH0385604A - ラダー図入力部の演算順序決定方法及びその装置 - Google Patents
ラダー図入力部の演算順序決定方法及びその装置Info
- Publication number
- JPH0385604A JPH0385604A JP22401589A JP22401589A JPH0385604A JP H0385604 A JPH0385604 A JP H0385604A JP 22401589 A JP22401589 A JP 22401589A JP 22401589 A JP22401589 A JP 22401589A JP H0385604 A JPH0385604 A JP H0385604A
- Authority
- JP
- Japan
- Prior art keywords
- vertex
- ladder diagram
- state
- logical value
- logical
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000010586 diagram Methods 0.000 title claims abstract description 68
- 238000000034 method Methods 0.000 title claims description 37
- 230000005540 biological transmission Effects 0.000 claims description 9
- 125000004122 cyclic group Chemical group 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 239000002253 acid Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001343 mnemonic effect Effects 0.000 description 1
Landscapes
- Programmable Controllers (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は、ラダー図によってプログラム可能なシーケン
ス制御装置において、演算を高速化するために最適な処
理順序を決定するようにしたラダー図入力部の演算順序
決定方法及びその装置に関する。
ス制御装置において、演算を高速化するために最適な処
理順序を決定するようにしたラダー図入力部の演算順序
決定方法及びその装置に関する。
(従来の技術)
従来、ラダー図によってプログラム可能なシケンスコン
トローラ内の演算装置における制御方法は、大別すると
次の2つの制御方法に分類できる。先ず第1の制御方法
は、プール代数式を“’LOAD” 、 ”AND
” 、 ”OR” 、 ”5TORE ”等のニー
モニック命令を用いてボーランド技法によってその実行
演算を制御する方法である。また第2の制御方法は、特
開昭57−705号公報に開示されている如くラダー図
をスイッチマトリクスに対応させ、列サイクリック演算
によってラダー図入力部の最終列における論理値を求め
る方法である。
トローラ内の演算装置における制御方法は、大別すると
次の2つの制御方法に分類できる。先ず第1の制御方法
は、プール代数式を“’LOAD” 、 ”AND
” 、 ”OR” 、 ”5TORE ”等のニー
モニック命令を用いてボーランド技法によってその実行
演算を制御する方法である。また第2の制御方法は、特
開昭57−705号公報に開示されている如くラダー図
をスイッチマトリクスに対応させ、列サイクリック演算
によってラダー図入力部の最終列における論理値を求め
る方法である。
(発明が解決しようとする課題)
ところが、上述した従来のボーランド技法による制御方
法においては、演算結果を得るためには”LOAD”か
ら始まり’5TORE”°によって終了する一連の二−
モニック演算を全て実行しなくてはならなかった。つま
り、第11図は第5図に示すラダー図をボーランド技法
による命令群に対応させた一例であるが、仮に第5図に
おいて接点a及び接点dが導通状態にあった場合、接点
a及び接点dの状態を調べて直ちにその結果を出力する
ことができれば、それ以外の余分な演算は省略できる。
法においては、演算結果を得るためには”LOAD”か
ら始まり’5TORE”°によって終了する一連の二−
モニック演算を全て実行しなくてはならなかった。つま
り、第11図は第5図に示すラダー図をボーランド技法
による命令群に対応させた一例であるが、仮に第5図に
おいて接点a及び接点dが導通状態にあった場合、接点
a及び接点dの状態を調べて直ちにその結果を出力する
ことができれば、それ以外の余分な演算は省略できる。
ところが、ボーランド技法による制御方法においては、
このような演算の省略による実行速度の高速化について
は考慮されていなかった。
このような演算の省略による実行速度の高速化について
は考慮されていなかった。
一方、列サイクリック演算による制御方法においても、
演算結果を得るためには、ラダー図をその各行1列の接
点部情報1分岐部情報が指定可能なスイッチマトリック
スに対応させ、各行1列において接点部情報に関する演
算と分岐部情報に関する演算を交互に実行していかなく
てはらなかった。即ち、この方式においても、出力結果
を得ることができるのはすべての演算が終了してからで
あった。例えば、第12図は第5図におけるラダー図を
スイッチマトリックスに対応させた例である。ここで、
垂直接続線上に置かれたスイッチは分岐部情報に対応し
、水平接続線上に置かれたスイッチは接続部情報に対応
している。
演算結果を得るためには、ラダー図をその各行1列の接
点部情報1分岐部情報が指定可能なスイッチマトリック
スに対応させ、各行1列において接点部情報に関する演
算と分岐部情報に関する演算を交互に実行していかなく
てはらなかった。即ち、この方式においても、出力結果
を得ることができるのはすべての演算が終了してからで
あった。例えば、第12図は第5図におけるラダー図を
スイッチマトリックスに対応させた例である。ここで、
垂直接続線上に置かれたスイッチは分岐部情報に対応し
、水平接続線上に置かれたスイッチは接続部情報に対応
している。
以上のように、ボーランド技法による制御方法及び列サ
イクリック?rii′sによる制御方法のいずれにおい
ても、演算に要する時間は主としてその制御形態(ハー
ドウェア)によって決まってしまい、同し制御形態(ハ
ードウェア)を取る限りそれ以上の演算の高速化が困難
であるという問題点があった。
イクリック?rii′sによる制御方法のいずれにおい
ても、演算に要する時間は主としてその制御形態(ハー
ドウェア)によって決まってしまい、同し制御形態(ハ
ードウェア)を取る限りそれ以上の演算の高速化が困難
であるという問題点があった。
本発明は上述のような事情から成されたものであり、本
発明の目的は、最も高速に演算結果が求まりその出力処
理を行なうことができるIA処理順序決定することが可
能なラダー図入力部の演算順序決定方法及びその装置を
提供することにある。
発明の目的は、最も高速に演算結果が求まりその出力処
理を行なうことができるIA処理順序決定することが可
能なラダー図入力部の演算順序決定方法及びその装置を
提供することにある。
(課題を解決するための手段)
本発明は、ラダー図によってプログラム可能なシーケン
ス制御装置において、演算を高速化するために最適な処
理順序を決定するようにしたラダー図入力部の演算順序
決定方法及びその装置に関するものであり、本発明の上
記目的は、プログラム内容を表わすラダー図の垂直接続
線並びに入力部及び出力部の境界線と前記ラダー図の水
平接続線との交わりをオン/オフの情報を持つ頂点に、
前記水平接続線を左から右へのみ前記オン/オフの情報
が伝達される有向辺に、前記水平接続線上のa接点及び
b接点を前記有向辺上に置かれた前記オン/オフの情報
の伝達を制御するゲートにそれぞれ対応させることによ
り前記ラダー図を有向グラフに変換し、最も左側の垂直
接続である母線に対応した頂点と前記境界線に対応した
頂点との間において情報が伝達される可能性のあるすべ
ての通路を抽出して処理の複雑さに対応した重み付けを
行ない、前記母線に対応した頂点にはオンの状態、それ
以外の頂点にはオフの状態を初期状態として設定してお
き、前記ゲートが導通状態の場合には対応する流出する
側の頂点の情報を流入する側の頂点に伝達するという処
理を1つの通路内のすへてのゲートについて繰返して当
該通路の伝達状態を求めるという処理を重みの少ない前
記通路から順に行なうことにより、前記入力部及び出力
部の境界線に対応する頂点がオンの状態であるか否かを
求めることによって達成される。また、実行オブジェク
トが格納される格納手段と、発信及び受信頂点の論理値
が格納される頂点論理値格納手段と、有向辺上の接点の
論理値が格納される接点論理値格納手段と、前記頂点論
理値格納手段に格納された前記発信頂点の論理値と前記
接点論理値格納手段に格納された対応する前記有向辺上
の接点の論理値とに基づいて論理演算を行ない受信頂点
の論理値を求める頂点間演算手段と、全体の演算制御を
行なう制御手段とを備えることによって達成される。
ス制御装置において、演算を高速化するために最適な処
理順序を決定するようにしたラダー図入力部の演算順序
決定方法及びその装置に関するものであり、本発明の上
記目的は、プログラム内容を表わすラダー図の垂直接続
線並びに入力部及び出力部の境界線と前記ラダー図の水
平接続線との交わりをオン/オフの情報を持つ頂点に、
前記水平接続線を左から右へのみ前記オン/オフの情報
が伝達される有向辺に、前記水平接続線上のa接点及び
b接点を前記有向辺上に置かれた前記オン/オフの情報
の伝達を制御するゲートにそれぞれ対応させることによ
り前記ラダー図を有向グラフに変換し、最も左側の垂直
接続である母線に対応した頂点と前記境界線に対応した
頂点との間において情報が伝達される可能性のあるすべ
ての通路を抽出して処理の複雑さに対応した重み付けを
行ない、前記母線に対応した頂点にはオンの状態、それ
以外の頂点にはオフの状態を初期状態として設定してお
き、前記ゲートが導通状態の場合には対応する流出する
側の頂点の情報を流入する側の頂点に伝達するという処
理を1つの通路内のすへてのゲートについて繰返して当
該通路の伝達状態を求めるという処理を重みの少ない前
記通路から順に行なうことにより、前記入力部及び出力
部の境界線に対応する頂点がオンの状態であるか否かを
求めることによって達成される。また、実行オブジェク
トが格納される格納手段と、発信及び受信頂点の論理値
が格納される頂点論理値格納手段と、有向辺上の接点の
論理値が格納される接点論理値格納手段と、前記頂点論
理値格納手段に格納された前記発信頂点の論理値と前記
接点論理値格納手段に格納された対応する前記有向辺上
の接点の論理値とに基づいて論理演算を行ない受信頂点
の論理値を求める頂点間演算手段と、全体の演算制御を
行なう制御手段とを備えることによって達成される。
(作用)
本発明にあっては、ラダー図を有向グラフに変換し、有
向グラフのオンの状態にある頂点からラダー図出力部と
結合される頂点に至る通路の中て最も演算実行時間の短
い通路から優先的に演算を実行することにより、不要な
演算を省略できるので回路演算をより高速に実行できる
。
向グラフのオンの状態にある頂点からラダー図出力部と
結合される頂点に至る通路の中て最も演算実行時間の短
い通路から優先的に演算を実行することにより、不要な
演算を省略できるので回路演算をより高速に実行できる
。
(実施例)
以下、図面に基づいて本発明の実施例について詳細に説
明する。
明する。
先ず、ラダー図を有向グラフに対応させる操作を具体例
を挙げて説明する。ここで、グラフとは複数の区別でき
る点または頂点とそれらの間を結ぶ辺とから構成された
図形の総称であり、有向グラフとは方向性を有する辺を
持つグラフのことをいう。
を挙げて説明する。ここで、グラフとは複数の区別でき
る点または頂点とそれらの間を結ぶ辺とから構成された
図形の総称であり、有向グラフとは方向性を有する辺を
持つグラフのことをいう。
第5図はラダー図゛の一例であり、このラダー図におい
ては垂直接続線を左から順O2■、■と番号を付けしで
ある。ラダー図入力部とラダー図出力部の境界がラダー
図の水平接続線と交わる点を便宜上の頂点と想定し、ラ
ダー図出力部と結合される頂点と呼ぶ。同図におけるラ
ダー図では、■の番号を付けた垂直接続線がラダー図出
力部と結合される頂点を兼ねている。ここで、ラダー図
入力部とは接点情報を水平、垂直の接続線によって結ん
で論理演算を実行する部分であり、接点情報としてはa
接点、b接点の論理値であるが、算術演算等の中で結果
が論理値で表わされるものをa接点、b接点の代りに直
接組込むことも考えられる。また、ラダー図出力部とは
、ラダー図入力部の演算結果に基づいて論理値の出力や
タイマ、カウンタあるいはその他の応用命令の実行を行
なう部分である。
ては垂直接続線を左から順O2■、■と番号を付けしで
ある。ラダー図入力部とラダー図出力部の境界がラダー
図の水平接続線と交わる点を便宜上の頂点と想定し、ラ
ダー図出力部と結合される頂点と呼ぶ。同図におけるラ
ダー図では、■の番号を付けた垂直接続線がラダー図出
力部と結合される頂点を兼ねている。ここで、ラダー図
入力部とは接点情報を水平、垂直の接続線によって結ん
で論理演算を実行する部分であり、接点情報としてはa
接点、b接点の論理値であるが、算術演算等の中で結果
が論理値で表わされるものをa接点、b接点の代りに直
接組込むことも考えられる。また、ラダー図出力部とは
、ラダー図入力部の演算結果に基づいて論理値の出力や
タイマ、カウンタあるいはその他の応用命令の実行を行
なう部分である。
第5図の例においては、a接点、b接点と水平接続線の
組合わせによる水平方向の接続は、左側の垂直接続線か
ら右側の垂直接続線への接続に限られている。しがたっ
て、垂直接続線を線分として捉えるよりもむしろ点と捉
えた方がより木質的な捉え方ができる。
組合わせによる水平方向の接続は、左側の垂直接続線か
ら右側の垂直接続線への接続に限られている。しがたっ
て、垂直接続線を線分として捉えるよりもむしろ点と捉
えた方がより木質的な捉え方ができる。
上述した趣旨に基づいて第5図のラダー図入力部におり
る垂直接続線を点(頂点)として捉え直したものが第6
図である。ここて、水平方向の接続線は曲線となってい
る。ところで、この水平方向の接続線を有向辺として捉
えると全体で有向グラフを形成することになるが、その
ままではラダー図との対応が不十分であるので以下の2
つの要件(八)及び(B)を付加する。
る垂直接続線を点(頂点)として捉え直したものが第6
図である。ここて、水平方向の接続線は曲線となってい
る。ところで、この水平方向の接続線を有向辺として捉
えると全体で有向グラフを形成することになるが、その
ままではラダー図との対応が不十分であるので以下の2
つの要件(八)及び(B)を付加する。
(八)グラフの頂点はオンまたはオフの状態を取り、オ
ンの状態は論理値” 1 ”とし、オフの状態は論理値
゛0′′とする。
ンの状態は論理値” 1 ”とし、オフの状態は論理値
゛0′′とする。
(B) a接点及びb接点は、頂点から頂点を結ぶ有
向辺上に置かれ情報の流れを制御するゲートの働きをす
る。
向辺上に置かれ情報の流れを制御するゲートの働きをす
る。
以上の2つの要件(八)及び(B)を加えることにより
、第5図のラダー図入力部は第6図の有向グラフとその
機能において1対1に対応する。
、第5図のラダー図入力部は第6図の有向グラフとその
機能において1対1に対応する。
上述のようにして第6図に示す有向グラフに移行された
ラダー図において、先ず頂点のオン又はオフの状態を一
時記憶しておくエリア(後述する第2図における頂点論
理値−時記憶部2に相当)を設り、母線に対応する頂点
のにのみオンの状態として論理値゛11を設定し、それ
以外の頂点の、■にはオフの状態として論理値゛0°′
を設定する。このような設定の後、2つの頂点間の演算
を第7図における(()Q−ゆ又は(ロ)〆 O+■−@あるいは(ハ)■−4→■−ゆの順番で繰返
す。この結果、頂点Oにおける論理値” 1 ”が頂点
■に伝達されれば頂点■は論理値°°1°′となり、論
理値” 1 ”が頂点■に伝達されなければ頂点■は論
理値” o ”となるので、それをラダー図入力部の演
算結果としてラダー図出力部において出力処理を行なう
。
ラダー図において、先ず頂点のオン又はオフの状態を一
時記憶しておくエリア(後述する第2図における頂点論
理値−時記憶部2に相当)を設り、母線に対応する頂点
のにのみオンの状態として論理値゛11を設定し、それ
以外の頂点の、■にはオフの状態として論理値゛0°′
を設定する。このような設定の後、2つの頂点間の演算
を第7図における(()Q−ゆ又は(ロ)〆 O+■−@あるいは(ハ)■−4→■−ゆの順番で繰返
す。この結果、頂点Oにおける論理値” 1 ”が頂点
■に伝達されれば頂点■は論理値°°1°′となり、論
理値” 1 ”が頂点■に伝達されなければ頂点■は論
理値” o ”となるので、それをラダー図入力部の演
算結果としてラダー図出力部において出力処理を行なう
。
第7図は、第6図における有向グラフを、頂点Oから頂
点■に至るまて選択し得る通路(イ)(0) 、 (
ハ)の3通りに分割して別々に記述したものである。こ
こで、通路とはグラフ上を辺または頂点を通っである頂
点から別の頂点まで辿って行くことのできる径路のこと
であり、2つの頂点間が複数の辺によって結ばれている
場合、辺ごとに別々の通路として区別をする。例えば、
第7図においては、頂点間o−〇における2つの有向辺
φ を(o) (D−ユ、 (A) Q−’−@とじて区
別している。
点■に至るまて選択し得る通路(イ)(0) 、 (
ハ)の3通りに分割して別々に記述したものである。こ
こで、通路とはグラフ上を辺または頂点を通っである頂
点から別の頂点まで辿って行くことのできる径路のこと
であり、2つの頂点間が複数の辺によって結ばれている
場合、辺ごとに別々の通路として区別をする。例えば、
第7図においては、頂点間o−〇における2つの有向辺
φ を(o) (D−ユ、 (A) Q−’−@とじて区
別している。
ところで、第7図における3通りの通路(イ)。
(ロ)、(ハ)を全て演算した後に頂点■の論理値を出
力処理すると実行オブジェクトのIA処理速度低下して
しまうので、例えば通路(イ)だけが論理値°゛1°′
を伝達してそれ以外の通路(0) 、 (ハ)は論理
値“O°′を伝達する場合、通路(イ)が論理値” t
”を伝達したことが判明した時点で、その他の通路(
ロ)、(ハ)における演算を省略して速ちに出力処理を
行なう。つまり、通路(() 、 (ロ)、(ハ)の
うちどれか1つが論理値” 1 ”を伝達したことが判
明した時点で直ちに出力処理を行なうことにより、実行
オブジェクトの処理速度を向上させる。
力処理すると実行オブジェクトのIA処理速度低下して
しまうので、例えば通路(イ)だけが論理値°゛1°′
を伝達してそれ以外の通路(0) 、 (ハ)は論理
値“O°′を伝達する場合、通路(イ)が論理値” t
”を伝達したことが判明した時点で、その他の通路(
ロ)、(ハ)における演算を省略して速ちに出力処理を
行なう。つまり、通路(() 、 (ロ)、(ハ)の
うちどれか1つが論理値” 1 ”を伝達したことが判
明した時点で直ちに出力処理を行なうことにより、実行
オブジェクトの処理速度を向上させる。
また、そのとき母線に対応する頂点からラダー図出力部
と結合される頂点に至る複数の通路のうちで、論理値の
伝達を演算するために必要とする時間の最短のものから
順番に論理値の伝達を演算する方法を取る。即ち、統計
的に考えた場合、全ての通路において論理値゛1゛を伝
達する確率と論理値” o ”を伝達する確率が一定で
あるとみなすことができるので、演算に要する時間の最
短のものから順番に論理値の伝達を演算することにより
実行オブジェクトの処理速度が更に向上する。
と結合される頂点に至る複数の通路のうちで、論理値の
伝達を演算するために必要とする時間の最短のものから
順番に論理値の伝達を演算する方法を取る。即ち、統計
的に考えた場合、全ての通路において論理値゛1゛を伝
達する確率と論理値” o ”を伝達する確率が一定で
あるとみなすことができるので、演算に要する時間の最
短のものから順番に論理値の伝達を演算することにより
実行オブジェクトの処理速度が更に向上する。
第8図は、第7図における通路(() 、 IO)。
(ハ)のそれぞれが論理値を伝達するにあたって、下記
(■)〜(■旧の演算操作を実行する際の重み付けとし
てそれぞれl/2を掛Cづて(イ)、(ロ)。
(■)〜(■旧の演算操作を実行する際の重み付けとし
てそれぞれl/2を掛Cづて(イ)、(ロ)。
(ハ)の各通路の演算に必要な重みの合計を求めたもの
である。
である。
(1)有向辺へ流出する側の頂点の0N10FF状態を
読出す操作 (I+ )有向辺上に置かれたa接点又はb接点の論理
値と接点の左側の有向辺の論理値の論理和を取り、接点
の右側の有向辺の論理値として設定する操作 (m )有向辺上における論理値演算(I+ )が終了
した時点における論理値を有向辺か流入する例の頂点に
設定する操作 ここで、重みとは複数の通路の内から最短の実行時間で
論理値の伝達を演算することのできる通路を選択するた
めに付ける便宜上のパラメータのことであり、個別の演
算(1)、(o)、(m)のそれぞれの実行時間に比例
した数値をとる。
読出す操作 (I+ )有向辺上に置かれたa接点又はb接点の論理
値と接点の左側の有向辺の論理値の論理和を取り、接点
の右側の有向辺の論理値として設定する操作 (m )有向辺上における論理値演算(I+ )が終了
した時点における論理値を有向辺か流入する例の頂点に
設定する操作 ここで、重みとは複数の通路の内から最短の実行時間で
論理値の伝達を演算することのできる通路を選択するた
めに付ける便宜上のパラメータのことであり、個別の演
算(1)、(o)、(m)のそれぞれの実行時間に比例
した数値をとる。
上述したような演算に対する重み(t fづという概念
を用いて頂点間の演算順序を決定する手段を以下に説明
する。
を用いて頂点間の演算順序を決定する手段を以下に説明
する。
第1図は頂点間の演算順序を決定する際のフローチャー
トであり、ラダー図に対応した有向グラフ上の全ての有
向辺について導通/非導通の状態をそれぞれ仮定するこ
とにより、有向グラフが取り得るあらゆる状態をシミュ
レートし、ある状態において取り得る通路のうちで重み
が最少の通路を常に選択するように演算順序を決定する
。
トであり、ラダー図に対応した有向グラフ上の全ての有
向辺について導通/非導通の状態をそれぞれ仮定するこ
とにより、有向グラフが取り得るあらゆる状態をシミュ
レートし、ある状態において取り得る通路のうちで重み
が最少の通路を常に選択するように演算順序を決定する
。
即ち、先ず初期設定として有向グラフ上の全頂点をオフ
にしくステップSl)、ラダー図上の母線に対応する頂
点である頂点Oのみをオンにして(ステップS2)、サ
ブルーチン゛’5UBI”を呼出す(ステップS3)。
にしくステップSl)、ラダー図上の母線に対応する頂
点である頂点Oのみをオンにして(ステップS2)、サ
ブルーチン゛’5UBI”を呼出す(ステップS3)。
サブルーチン゛5UBI”においては、先ず不用頂点及
び不用有向辺の削除を行なう(ステップ54)。ここで
、不用頂点とは、例えばある頂点[相]から流出する有
向辺が流入する側の頂点がずへてオンの状態をとるよう
な場合、頂点[相]から流出する有向辺を通る通路を調
べることは無意味であり、また逆にある頂点@に流入す
る有向辺によって伝達された状態がすべてオフの状態で
あれば、頂点@から流出する有向辺はオ・フの状態しか
伝えることがないために演算を行なうことが無意味であ
るような頂点[相]、■をいう。不用頂点に流入又は流
出する有向辺はすべて不用有向辺であるし、オンの状態
の頂点間を結ぶ有向辺も不用有向辺である。このように
して不用な部分を省略した残りの有向グラフにおいて、
オンの状態を持つ頂点からラダー図出力部と結合される
頂点に至る通路をすべて求めてそれぞれの通路の重み付
けを行ない(ステップ55)。それらの通路の内から最
少重みの通路を選び出す(ステップS6)。次に、選び
出した最少重み通路における発信頂点。
び不用有向辺の削除を行なう(ステップ54)。ここで
、不用頂点とは、例えばある頂点[相]から流出する有
向辺が流入する側の頂点がずへてオンの状態をとるよう
な場合、頂点[相]から流出する有向辺を通る通路を調
べることは無意味であり、また逆にある頂点@に流入す
る有向辺によって伝達された状態がすべてオフの状態で
あれば、頂点@から流出する有向辺はオ・フの状態しか
伝えることがないために演算を行なうことが無意味であ
るような頂点[相]、■をいう。不用頂点に流入又は流
出する有向辺はすべて不用有向辺であるし、オンの状態
の頂点間を結ぶ有向辺も不用有向辺である。このように
して不用な部分を省略した残りの有向グラフにおいて、
オンの状態を持つ頂点からラダー図出力部と結合される
頂点に至る通路をすべて求めてそれぞれの通路の重み付
けを行ない(ステップ55)。それらの通路の内から最
少重みの通路を選び出す(ステップS6)。次に、選び
出した最少重み通路における発信頂点。
受信頂点及びそれらを結ぶ有効辺を決定する(ステップ
57)。ここで、発信頂点は通路上でオンの状態を持つ
頂点、受信頂点は発信頂点から流出する有向辺の流入す
る頂点、有向辺は発信頂点から受信頂点への辺である。
57)。ここで、発信頂点は通路上でオンの状態を持つ
頂点、受信頂点は発信頂点から流出する有向辺の流入す
る頂点、有向辺は発信頂点から受信頂点への辺である。
即ち、例えば最少重み通路として第7図における(口)
が選はれた場合、発信頂点Oは受信頂点は■、有有向酸
」鴇と なる。
が選はれた場合、発信頂点Oは受信頂点は■、有有向酸
」鴇と なる。
以上のステップ54〜ステツプS7を経て選び出された
発信頂点、受信頂点及び有向辺について、有向辺が導通
状態にあると仮定すると受信頂点はオンの状態を有しく
ステップS9)、有向辺が非導通状態にあると仮定する
と受信頂点はオフの状態を有する(ステップ511)。
発信頂点、受信頂点及び有向辺について、有向辺が導通
状態にあると仮定すると受信頂点はオンの状態を有しく
ステップS9)、有向辺が非導通状態にあると仮定する
と受信頂点はオフの状態を有する(ステップ511)。
ステップS9及びステップSllのそれぞれの仮定のも
とてサブルーチン″’5UBI”を再帰的に呼出す(ス
テップ510)ことにより、有向グラフが取り得るあら
ゆる状態をシミュレートし、ある状態において取り得る
通路のうちで重みが最少の通路を常に選択して演算順序
を決定することができる。
とてサブルーチン″’5UBI”を再帰的に呼出す(ス
テップ510)ことにより、有向グラフが取り得るあら
ゆる状態をシミュレートし、ある状態において取り得る
通路のうちで重みが最少の通路を常に選択して演算順序
を決定することができる。
尚、ステップS8における出力IA埋の演算とは、発信
頂点としてラダー図出力部と結合される頂点しかない場
合、即ちラダー図出力部と結合される頂点がオンの状態
である場合か、あるいはラダー図出力部と結合される頂
点への通路がない場合、即ちラダー図出力部と結合され
る頂点がオフの状態しか取り得ないことが判明した場合
に、その結果をラダー図出力部において出力処理を行な
うための演算であり、ステップS5において判定するこ
とができる。
頂点としてラダー図出力部と結合される頂点しかない場
合、即ちラダー図出力部と結合される頂点がオンの状態
である場合か、あるいはラダー図出力部と結合される頂
点への通路がない場合、即ちラダー図出力部と結合され
る頂点がオフの状態しか取り得ないことが判明した場合
に、その結果をラダー図出力部において出力処理を行な
うための演算であり、ステップS5において判定するこ
とができる。
第9図は、第6図における有向グラフについて第1図の
フローチャートに基づいて頂点間演算の順序を2分枝木
の形式に書き出した例を示す図である。そこで、ステッ
プ521.S23.、S24.S27及び528におい
て頂点間演算を行ない、受信頂点がオンの状態をとれば
左の2分枝木、オフの状態をとれば右の2分枝木におけ
るステップの処理を実行し、出力処理のステップs22
.S2s、S2e、s29.s3o及び531における
処理を終了すると、第6図における有向グラフについて
の論理演算の結果が求まって次に有向グラフの論理演算
へと移ることができる。
フローチャートに基づいて頂点間演算の順序を2分枝木
の形式に書き出した例を示す図である。そこで、ステッ
プ521.S23.、S24.S27及び528におい
て頂点間演算を行ない、受信頂点がオンの状態をとれば
左の2分枝木、オフの状態をとれば右の2分枝木におけ
るステップの処理を実行し、出力処理のステップs22
.S2s、S2e、s29.s3o及び531における
処理を終了すると、第6図における有向グラフについて
の論理演算の結果が求まって次に有向グラフの論理演算
へと移ることができる。
ところが、第9図においては処理内容の重複するステッ
プが例えば出力処理のステップ522,525S26,
529,530及びS31のように存在している。この
出力処理のステップにおいては、第6図におけるラダー
図出力部と結合される頂点■のオン/オフ状態を第5図
におけるラダー図のコイル出力接点のアドレスgに書込
む操作が行なわれる。そこで、出力処理ステップS22
.S25,32B、S29,530及び531において
は全く同一の操作が行なわれるために、これらを1つに
まとめることができる。それは、ステップS24及びス
テップ528において不用頂点及び不用有向辺を除いた
有向グラフが全く同一のものとなることによる。
プが例えば出力処理のステップ522,525S26,
529,530及びS31のように存在している。この
出力処理のステップにおいては、第6図におけるラダー
図出力部と結合される頂点■のオン/オフ状態を第5図
におけるラダー図のコイル出力接点のアドレスgに書込
む操作が行なわれる。そこで、出力処理ステップS22
.S25,32B、S29,530及び531において
は全く同一の操作が行なわれるために、これらを1つに
まとめることができる。それは、ステップS24及びス
テップ528において不用頂点及び不用有向辺を除いた
有向グラフが全く同一のものとなることによる。
このようにして、同一の有向グラフにおいて同一の操作
を行なうステップを1つにまとめて第9図を書き直した
ものが第1O図である。第1O図において、演算の重複
が避けられるためにシーケンスプログラムの実行オブジ
ェクトが必要以上に膨れ上ることはない。
を行なうステップを1つにまとめて第9図を書き直した
ものが第1O図である。第1O図において、演算の重複
が避けられるためにシーケンスプログラムの実行オブジ
ェクトが必要以上に膨れ上ることはない。
本発明によるラダー図入力部の演算順序を決定するため
の方7去は、cpu (中央処理装置)のみによってソ
フトウェア的に実行するオブジェクトを作成する場合に
も、専用の演算回路を設けることによりハードウェアに
より実行するオブジェクトを作成する場合にも共に有効
である。
の方7去は、cpu (中央処理装置)のみによってソ
フトウェア的に実行するオブジェクトを作成する場合に
も、専用の演算回路を設けることによりハードウェアに
より実行するオブジェクトを作成する場合にも共に有効
である。
第2図は本発明における方法により作成された実行オブ
ジェクトをハードウェアで実現する場合のブロック図で
あり、第3図は第2図における頂点間演算部5の詳細回
路図であり、第4図は第3図におりる各信号の内容の説
明図である。
ジェクトをハードウェアで実現する場合のブロック図で
あり、第3図は第2図における頂点間演算部5の詳細回
路図であり、第4図は第3図におりる各信号の内容の説
明図である。
第2図のブロック図において、上述したような方法によ
り作成された実行オブジェクトがオブジェクトメモリ1
に格納され、CPII4がオブジェクトメモリ1からオ
ブジェクトを読出して演算を実行する。実行オブジェク
トにおける頂点間演算については、発信頂点の論理値を
頂点論理値−時記憶部2により読出して頂点間演算部5
に設定し、 0 また有向辺上の接点の論理値を接点論理値−時記憶部6
により読出して同様に頂点間演算部5に設定する。頂点
間演算部5は、それらに基づいて論理演算を行ない、そ
の結果の論理値を受信頂点の論理値として頂点論理値−
時記憶部2に設定し直す。またI10コンi・ロール部
3は、接点論理値−時記憶部6の内容に基づいて入出力
制御を行なう。
り作成された実行オブジェクトがオブジェクトメモリ1
に格納され、CPII4がオブジェクトメモリ1からオ
ブジェクトを読出して演算を実行する。実行オブジェク
トにおける頂点間演算については、発信頂点の論理値を
頂点論理値−時記憶部2により読出して頂点間演算部5
に設定し、 0 また有向辺上の接点の論理値を接点論理値−時記憶部6
により読出して同様に頂点間演算部5に設定する。頂点
間演算部5は、それらに基づいて論理演算を行ない、そ
の結果の論理値を受信頂点の論理値として頂点論理値−
時記憶部2に設定し直す。またI10コンi・ロール部
3は、接点論理値−時記憶部6の内容に基づいて入出力
制御を行なう。
次に、第3図における回路図の動作を説明する。図にお
いて、イネーブル(ENABLE)信号がオフのとき、
クロック(f;LOCK)信号のタイくングに合せて発
信頂点の論理値I10が信号線INを介してレジスタ1
1にセットされ、同時に有向辺上のa接点又はb接点の
論理値がレジスタ10にセットされる。ここで、a接点
又はb接点の数がレジスタlOの要素数よりも少ない場
合には、余ったレジスタには論理値°°1°°をセット
する。このようにした後、イネーブル信号をオンにする
とレジスタ10及びレジスタ11の論理内容は安定とな
るので、レジスタIO及びレジスタ11の全要素の論理
積を論理演算素子12により演算してその結果を信号線
OUTより取出すことができる。
いて、イネーブル(ENABLE)信号がオフのとき、
クロック(f;LOCK)信号のタイくングに合せて発
信頂点の論理値I10が信号線INを介してレジスタ1
1にセットされ、同時に有向辺上のa接点又はb接点の
論理値がレジスタ10にセットされる。ここで、a接点
又はb接点の数がレジスタlOの要素数よりも少ない場
合には、余ったレジスタには論理値°°1°°をセット
する。このようにした後、イネーブル信号をオンにする
とレジスタ10及びレジスタ11の論理内容は安定とな
るので、レジスタIO及びレジスタ11の全要素の論理
積を論理演算素子12により演算してその結果を信号線
OUTより取出すことができる。
(発明の効果)
以上のように本発明のラダー図入力部の演算順序決定方
法及びその装置によれば、ラダー図を有向グラフに変換
し、論理演算に要する時間が最少の通路から優先的に演
算していくので、シーケンスプロプラムの処理時間が実
行オブジェクト全体として高速になることを期待できる
。また、最悪の場合でも、有向グラフの全通路を演算す
ることによってラダー図出力部と結合される頂点の論理
値を必ず求めることができるので、オブジェクトの実行
速度は従来以上が保証される。
法及びその装置によれば、ラダー図を有向グラフに変換
し、論理演算に要する時間が最少の通路から優先的に演
算していくので、シーケンスプロプラムの処理時間が実
行オブジェクト全体として高速になることを期待できる
。また、最悪の場合でも、有向グラフの全通路を演算す
ることによってラダー図出力部と結合される頂点の論理
値を必ず求めることができるので、オブジェクトの実行
速度は従来以上が保証される。
第1図が本発明における演算順序を決定する際のフロー
チャート、第2図は本発明により作成された実行オブジ
ェクトをハードウェアで実現する場合のブロック図、第
3図は頂点間演算部の詳細回路図、第4図は第3図にお
ける各信号の内容の常1=オンのス不ンチ 45−
チャート、第2図は本発明により作成された実行オブジ
ェクトをハードウェアで実現する場合のブロック図、第
3図は頂点間演算部の詳細回路図、第4図は第3図にお
ける各信号の内容の常1=オンのス不ンチ 45−
Claims (1)
- 【特許請求の範囲】 1、プログラム内容を表わすラダー図の垂直接続線並び
に入力部及び出力部の境界線と前記ラダー図の水平接続
線との交わりをオン/オフの情報を持つ頂点に、前記水
平接続線を左から右へのみ前記オン/オフの情報が伝達
される有向辺に、前記水平接続線上のa接点及びb接点
を前記有向辺上に置かれた前記オン/オフの情報の伝達
を制御するゲートにそれぞれ対応させることにより前記
ラダー図を有向グラフに変換し、最も左側の垂直接続で
ある母線に対応した頂点と前記境界線に対応した頂点と
の間において情報が伝達される可能性のあるすべての通
路を抽出して処理の複雑さに対応した重み付けを行ない
、前記母線に対応した頂点にはオンの状態、それ以外の
頂点にはオフの状態を初期状態として設定しておき、前
記ゲートが導通状態の場合には対応する流出する側の頂
点の情報を流入する側の頂点に伝達するという処理を1
つの通路内のすべてのゲートについて繰返して当該通路
の伝達状態を求めるという処理を重みの少ない前記通路
から順に行なうことにより、前記入力部及び出力部の境
界線に対応する頂点がオンの状態であるか否かを求める
ようにしたことを特徴とするラダー図入力部の演算順序
決定方法。 2、前記重みとして前記通路における演算の際に要する
演算時間に比例したパラメータを採用した請求項1に記
載のラダー入力部の演算順序決定方法。 3、前記通路における演算の結果、それまでオフの状態
であった頂点がオンの状態に変化した場合には、前記通
路における重み付けを再度やり直すようにした請求項1
に記載のラダー図入力部の演算順序決定方法。 4、実行オブジェクトが格納される格納手段と、発信及
び受信頂点の論理値が格納される頂点論理値格納手段と
、有向辺上の接点の論理値が格納される接点論理値格納
手段と、前記頂点論理値格納手段に格納された前記発信
頂点の論理値と前記接点論理値格納手段に格納された対
応する前記有向辺上の接点の論理値とに基づいて論理演
算を行ない受信頂点の論理値を求める頂点間演算手段と
、全体の演算制御を行なう制御手段とを備えるように構
成したことを特徴とするラダー図入力部の演算順序決定
装置。 5、前記頂点間演算手段は、前記有向辺へ流出する側の
頂点のオン/オフ状態を論理値1/0として記憶するレ
ジスタと、前記有向辺上に置かれた1つ以上のa接点及
びb接点のそれぞれの導通/非導通状態を論理値1/0
として記憶する1つ以上のレジスタ群と、前記レジスタ
及び前記レジスタ群に記憶された論理値を入力して論理
積の演算を行なう論理演算手段とを備えるようにした請
求項4に記載のラダー図入力部の演算順序決定装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP22401589A JPH0385604A (ja) | 1989-08-30 | 1989-08-30 | ラダー図入力部の演算順序決定方法及びその装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP22401589A JPH0385604A (ja) | 1989-08-30 | 1989-08-30 | ラダー図入力部の演算順序決定方法及びその装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0385604A true JPH0385604A (ja) | 1991-04-10 |
Family
ID=16807253
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP22401589A Pending JPH0385604A (ja) | 1989-08-30 | 1989-08-30 | ラダー図入力部の演算順序決定方法及びその装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0385604A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5293525A (en) * | 1992-02-28 | 1994-03-08 | Rohm Co., Ltd. | Structure for variable electronic component |
| US5315283A (en) * | 1992-06-24 | 1994-05-24 | Rohm Co., Ltd. | Structure for variable electronic component |
| JP2024522559A (ja) * | 2021-06-04 | 2024-06-21 | ベックホフ オートメーション ゲーエムベーハー | オートメーションシステムのための制御プログラムを生成するための方法およびプログラミングツール |
-
1989
- 1989-08-30 JP JP22401589A patent/JPH0385604A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5293525A (en) * | 1992-02-28 | 1994-03-08 | Rohm Co., Ltd. | Structure for variable electronic component |
| US5315283A (en) * | 1992-06-24 | 1994-05-24 | Rohm Co., Ltd. | Structure for variable electronic component |
| JP2024522559A (ja) * | 2021-06-04 | 2024-06-21 | ベックホフ オートメーション ゲーエムベーハー | オートメーションシステムのための制御プログラムを生成するための方法およびプログラミングツール |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS5819098B2 (ja) | 電子計算機方式 | |
| JPS5927930B2 (ja) | プロセス制御方法および制御装置 | |
| JPS5921056B2 (ja) | ジユンカンテキニケタイドウスル デ−タシヨリホウホウ オヨビ ソウチ | |
| US4365312A (en) | Sequence controller | |
| JP2882426B2 (ja) | アドレス発生装置 | |
| JPH0385604A (ja) | ラダー図入力部の演算順序決定方法及びその装置 | |
| US4652991A (en) | Data transfer apparatus | |
| JP2000163384A (ja) | 半導体装置 | |
| JP2007233930A (ja) | 分散制御システム用シミュレータ | |
| JP2003067010A (ja) | ビット演算制御装置及びこれを備えるプログラマブルロジックコントローラ | |
| JPS59183434A (ja) | 命令先取り制御方式 | |
| JPH06161518A (ja) | プログラムコントローラ | |
| SU920778A2 (ru) | Комбинированна вычислительна система | |
| SU690256A1 (ru) | Программно-временное устройство дл переключени нескольких групп регенеративных теплообменников | |
| JP3190945B2 (ja) | マイクロプログラム制御回路 | |
| JPH04184535A (ja) | 並列演算装置 | |
| SU879564A1 (ru) | Устройство дл контрол программ | |
| JP2752771B2 (ja) | プログラミング実習装置 | |
| JPH0132523B2 (ja) | ||
| JPH0125094B2 (ja) | ||
| JP3036754B2 (ja) | マイクロプログラム制御装置 | |
| SU871745A3 (ru) | Устройство дл программного управлени группой станков | |
| SU690482A1 (ru) | Устройство дл отладки программ | |
| JP2555124B2 (ja) | 画像処理装置 | |
| JPH01109405A (ja) | プログラマブル・コントローラ |