JPS60173635A - 設備群制御方式 - Google Patents

設備群制御方式

Info

Publication number
JPS60173635A
JPS60173635A JP59028531A JP2853184A JPS60173635A JP S60173635 A JPS60173635 A JP S60173635A JP 59028531 A JP59028531 A JP 59028531A JP 2853184 A JP2853184 A JP 2853184A JP S60173635 A JPS60173635 A JP S60173635A
Authority
JP
Japan
Prior art keywords
section
rule
internal code
condition
control command
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
Application number
JP59028531A
Other languages
English (en)
Inventor
Isao Toshima
都島 功
Tsutomu Tashiro
勤 田代
Kazuo Kaira
和郎 解良
Takeshi Kato
猛 加藤
Norihisa Komoda
薦田 憲久
Kuniaki Matsumoto
松本 邦顕
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP59028531A priority Critical patent/JPS60173635A/ja
Publication of JPS60173635A publication Critical patent/JPS60173635A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Control By Computers (AREA)
  • Programmable Controllers (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、自動化工場のような複数の設備からなるシス
テムの計算機制御に係わり、特に、各設備の状態を計算
機に取り込み、所定の制御論理に従い条件判定を行ない
、条件が成立すれば制御論理で指示された制御指令を各
設備に発するような条件判別制御に適した設備群制御方
式に関する。
〔発明の背景〕
条件判別制御の制御論理は、従来、アセンブラ等の汎用
言語を用いて実現されている。この問題点は、その実現
のためにプログラミング、コーディング作業が行なわれ
るため、ソフト技術力が相当に要求されること、そのソ
フト作成に多大の時間がかかること、既存ソフトの変更
の際、プログラムの理解が困難であるため、またある箇
所の修正が他へ影響を与えるため、修正がほとんど困難
であ、ること等である。
上記の問題点を解決するため、制御論理を日本語を使い
”IF(条件)、THEN (結論あるいは制御指令)
″のルールにより記述し、久方すれば、条件判別制御が
実現する制御方式が提案されている(例えば、特願昭5
8−79341号明細書参照)。
しかし、この方式では、ルールの条件部がシステムの状
態にマツチするかを判別する処理に時間がかかつている
ため、応答性が厳しく要求される対象には適用できない
という欠点がある。これを以下に説明する。
第1図は、前記特願昭58−7934号の制御方式の機
能構成図である。11はルール記憶部、12はルール運
用部、13は状態記憶部である。IF−THENルール
による制御指令の決定は、あるルールの結論を、更に別
のルールの条件判定に用いるということを次々と繰り返
し、最終的にTHEN部に動作(制御指令)の記述され
たルールの条件が満足されると、制御指令が決定される
という原理で行なわれる。その処理概要は、まずルール
記憶部11に記憶されたルールから1つずつルールを取
り出し、対象の状態記憶部13に対し、IF部の条件判
定を行ない、条件が満足されればTHEN部の結論を状
態記憶部13に新たに追加するという方式である。
ここで、高速処理化のため、次の2点を考慮している。
一つは、IF部、THEN部、状態の文字列の内部コー
ド化である。これを説明する前にルールについて述べる
。ルールは第2図のように、条件をIF(条件)という
文字列で書く。複数の条件を指令する場合には、IF(
条件)を続けて書く。指定した複数の条件は、AND条
件として扱われる。THEN部は、THENのあとに結
論あるいは制御指令の文字列を書<、THEN部も複数
個の設定が可能である。IE部、THEN部を構成する
文字列は条件、結論の内容を示す固定部21と、記述し
た内容と関係する設備Nα等を表わす変数を示すパラメ
ータ部22からなっており、任意の文字を記述できる。
さて、文字列の固定部は、内部処理的には他の文字列と
その文字列を区別するための情報でしかない。したがっ
て、固定部の文字列を全て扱う必要はなく、他の文字列
とその文字列の区別がつくための情報に変換して扱えば
充分である。一方、パラメータ部はその内部そのものが
運用決定のための重要な情報となる。そこで高速処理化
のため、文字列の内部コード化方式を導入している。こ
れは、同じ固定部を有する文字列を第3図に示すように
、すべて同一数値コードに変換し、文字列の固定部とパ
ラメータ部を分離して扱うことで高速化をはかるもので
ある。
第2の高速化は、IF部の条件にマツチする状態を探す
際に、その文字列に相当する状態だけを探せばよいよう
にそれらの間をポインタでつないでいる。
以上の高速化手段によりかなりの高速化が実現している
が、従来の汎用言語をつかったソフトに比べ処理速度が
遅い。そのため、前記の制御方式の適用範囲は狭い。
処理速度が遅い原因は、−ルール内に複数のIF部があ
る場合、それらのIF部の間のAND条件を満足するも
のをさがす処理の効率が低いことにある。これを第1図
の例をもとに第4図を使い説明する。
第1図のルールNα1を考える。まず、最初のIF部(
ステーション<2>ハ アキ)に該当する状態に対し、
変数Zの値が状態記憶部13がらIF部A用状態テーブ
ルTA41に取り込まれる。
本テーブルの各行には一つの状態の変数値が、該当する
変数名のもとに取り込まれる。複数個の状態があれば、
第4図のように前づめで取り込まれる。本テーブルのア
ドレスをTA(j、k)で表わす。iは行番号を示し、
k=1は変数名X、 k=2は変数名Y・・・・・・に
対応する。ルールNα1の2番目のIF部(ステーショ
ン<2>ハ<Y>サギョウ力)に該当する状態も上記の
ようにIF部B用状態データテーブルTB42に第4図
のように取り込まれる。そのテーブルのアドレスをTB
(j、k)で表わす。jは行番号を示し、k=1はX、
に=2はY・・・・・・に対応する。
以上の2つのテーブルを使い、IF部の間のANDを取
り、そのAND条件を満たす結果をI FIAND条件
満足条件満足デー−171/TAND43に入れる(そ
のテーブルのアドレスをTAND (Ω、k)で表わす
。Qは行番号を表わし、k=1はX、に=2はY・・−
・・・に対応する)。
IF部の間のANDをとるための処理を第5図を使い以
下に示す。
1番目のiF部の状態データ(本例では3個)と2番目
のIF部の状態データ(本例では4個)の全ての組合せ
(12個)のANDをとる必要がある。いま、TA41
のi行目とTB42のj行目のAND処理に着目する。
両行のに列目の変数値を比較し、少なくとも一方がブラ
ンク(その変数は考慮不要)ならばそのに列目の変数値
のAND条件が成立する(ボックス51)。両行のに列
目に具体値が入っている場合には、両者の値が一致の時
、k列目の蜜数値のAND条件が成立し、そうでない時
、不成立である(ボックス52)。
上記の判定を1列目の変数(k=1)から順次実施し、
最後の列までAND条件が満足すれば、TA41のi行
目とTB42のj行目とがAND条件を満足することに
なる。一方、ある列(変数)でAND条件が不成立なら
ばそれ以後の判定は不要のため、次の行の判定に移る(
ボックス52のNαの行先)。
以上はTA41のi行目とTB42のj行目がAND条
件を満足するか否かを判定しただけである。そこで1次
は、AND条件を満足する2つの行のANDの処理を実
施し、その結果をTAND43に書きこむ(ボックス5
3〜56)。TA41のに列目がブランクでなければ(
ボックス53)、対象としているi行目とj行目はAN
Dが成立しているのだからTA41のTA、(i、k)
のデータをTAND (Q、k)に移す(ボックス54
)。もし、TA41のに列目がブランクで、TB42の
に列目がブランクでなければ(ボックス55)、前記と
同様の理由で、TB (j、k)のデータをTAND 
CQ、k)に移す(ボックス56)。もし、TA41の
に列目がブランクで、TB42のに列目がブランクなら
ば何もしない。
上記の処理を全てのkに対して実施すると、TA41の
i行目とTB42のj行目のAND処理が完了する。
以上で述べたIF部のAND条件処理では、各IF部で
指令された変数以外のものを含め、全ての変数に対して
AND条件の判定を行なっている。
例では、変数が4種類(W、X、Y、Z)であったが、
実際には10種類はど必要であること、状態の数がかな
りの数になる例も有ることから、前述したGND条件処
理では処理時間がかかりすぎ、制御に充分な応答性が確
保できない。
〔発明の目的〕
本発明の目的は、このような問題点を解決し、条件判別
制御の実施が簡単で、かつ高速の制御応答が要求される
制御対象の制御に対しても適用可能な設備群制御方式を
提供することにある。
〔発明の概要〕
従来方式では、前述したように、IF郡部間AND処理
は、該当するIF部に関係する変数に関係なく、すべて
の状態の組合せに関し、すべての変数(例では、W、X
、Y、Z)に対し処理している。そのため、多大の処理
時間がかかつている。
本発明では、まず、IF部の間で共通な変数のアドレス
、一方のIF部にしかない変数のアドレスを予じめ計算
する0次に、各状態の組合せに対して、前述したアドレ
スをもとに該当するIF部の間で共通な変数だけを参照
し、AND条件の成立を判断する。AND条件が満足す
る場合には、前述したアドレスをもとに、結果の書き込
みを実施する。このようなAND条件処理により大巾に
処理時間が低減する。
〔発明の実施例〕
以下、本発明の一実施例を説明する。
第6図は、本発明の一実施例を示す設備群制御装置のブ
ロック構成図である。
制御装置は、記憶部601、制御部602、設備群60
3、状態信号線604、および指令信号線605から構
成される。記憶部601は、さらに、複数の情報記憶部
、すなわち入出力信号−内部コード対応情報記憶部60
6、IF−THENルール起動情報記憶部607、IF
−THENルール情報記憶部608.内部コード情報記
憶部609、および手続情報記憶部610の各エリアを
有している。記憶部601は、内部コード化されたIF
−THENルール、外部信号と内部コードの対応表等の
データを記憶しておく部分である。
制御部602は、記憶部601に格納されている情報に
もとづき、設備群603の状態を示す状態信号を信号線
604を介して取り込み、制御指令を決定し、各設備6
03に信号線605を介して制御信号を発信する。
第7図は、第6図における入出力信号−内部コード対応
情報記憶部606の詳細説明図であって、第7図(a)
が入力信号と内部コード、第7図(b)が内部コードと
出力信号の各対応テーブルである。
この記憶部606は、第6図に示す状態信号線604、
指令信号線605等の外部信号と、内部処理の間のイン
タフェースのための情報を格納しておく部分である。
第7図(a)に示す入力信号−内部コード対応テーブル
71は、状態信号線604の信号を、制御部602で取
り扱う内部コードに変換するための情報を格納しておく
テーブルである。
このテーブル71は、状態信号線604のエントリ・ア
ドレスを格納する状態信号線エントリ・エリア、その信
号線604に信号が発生した場合に対応する設備状態を
表す内部コードを格納しておく数値コード・エリア、お
よびパラメータ部分エリアから構成されている。制御部
602は、このテーブル71のデータにもとづき各状態
信号線604をアクセスし、信号が発生していれば対応
する内部コードを作成する。作成された内部コードは、
内部コード情報記憶部609内に格納される。ここで、
状態信号線604の信号がオンオフの2値情報の場合、
制御部602は、テーブル71に格納されている内部コ
ードをそのままの形で取り出し、内部コードを作成した
ことにする。
例えば、第7図(a)のアドレスBの内部コードがその
場合を示している。状態信号線604の情報がバーコー
ドの読み取り情報等の数値情報の場合には、テーブルに
格納されている内部コードのパラメータ部分で変数(w
 e x # Y 、Z等)が指定されているものに、
その情報を値として書き込んだ内部コードを作成する。
例えば、第7図(a)のアドレスAの内部コードがその
場合を示している。すなわち、状態信号線アドレスAに
数値情報3′4が発生している場合、制御部602は、
内部コード”1<34>”を作成する。内部コード”1
(34)”は、例えば、自動化工場のワーク供給ライン
の先頭にワーク&34のワークが発生したことを示して
いる。
次に、第7図(b)において、内部コード−出力信号対
応テートルア2は、制御部602の決定した制御指令を
表す内部コードに基づいて、設備群603に指令信号線
605を介して制御信号を発信するための情報を格納し
ておくテーブルである。なお、制御指令を表す内部コー
ドは、内部コード情報記憶部609内に格納されている
テーブル72は、制御指令を表す内部コードを格納する
数値コード・エリア、パラメータ部分エリア、およびそ
の制御指令を発信すべき指令信号線605のエントリ・
アドレスを格納する指令信号線エントリ・エリアから構
成されている。制御部602は、決定した制御指令を表
す内部コードと、このテーブル72に格納されている内
部コードとを比較し、一致した内部コードに対応する指
令信号線605に対し信号を発生する。その場合、この
テーブル72に格納されている内部コードにおいて、パ
ラメータ部分に変数(w、x、’y、z等)が指令され
てないときには、対応する信号線アドレス上にオンオフ
の2値信号を出力する。2値信号を出力する場合として
、例えば第7図(b)のアドレスDがある。また、変数
の指定がある場合には、決定さ九た制御指令を表す内部
コードにおけるその変数に対応するパラメータの値を、
信号線アドレス上に出力する。例えば、決定された制御
指令を表す内部コードが”9<1> <i;r>くi〉
″であるときには、信号線アドレスC上に値34,1が
この順序で出力される。内部コード”9 <1> <3
4> <1>’″の意味は、例えば、自動化工場の搬送
台車1にワークNα34のワークをステーションfに搬
送することを指令する制御指令である。
第8図は、第6図のIF−THENルール起動情報記憶
部607の詳細説明図であり、第8図(a)はルール群
起動条件テーブル、第8図(b)は使用ルール群番号格
納エリアを示す。
この記憶部607は、発生した設備群の状態に応じて起
動すべき一連のルールを指定する情報を格納しておく部
分である。ここで、″起動すべき″とは、パ制御部60
2が制御指令を決定する際に使用すべき″という意味で
ある。例えば、自動化工場の制御において、ワーク供給
ラインの先頭にワークが発生した際には、ワークを作業
ステーションに割付けるためのルール群を起動し、台車
への搬送指令、作業ステーションへの作業指令を決定す
る。
また、ある作業ステーションで作業が完了した場合には
、製品を払出すためのルール群を起動し、台車ノ\の製
作品払出し指令を決定する。ルール群起動条件テーブル
81は、前述のように、発生する設備群603の各状態
ごとに対応する起動すべきルール群を指定するための情
報を格納しておくテーブルである。このテーブル81は
、発生を監視すべき設備状態に対応する状態信号線60
4のエントリ・アドレスを格納する状S信号線エントリ
・エリア、その信号線604に信号が発生した際に、起
動すべきルール群の番号を指定する起動ルール群番号エ
リアから構成される。使用ルール群番号格納エリア82
は、制御部602が制御指令決定に用いるべきルール群
番号を記憶しておくエリアである。制御部602は、ル
ール群起動条件テーブル81のデータに基づき、各状態
信号線604をポーリングしており、信号が発生した場
合、その信号線604に対応する起動ルール群番号を、
使用ルール群番号格納エリア82に記憶し、次の処理に
移る。
第9図は、第6図のIF−THENルール情報記憶部6
08の詳細説明図であって、第9図(a)がルール群デ
ィレクトリ、第9図(b)がルール・テーブルである。
この記憶部608は、制御論理を記述したIF−THE
Nルールに関する情報を格納しておく部分である。IF
−THENルールを内部コード化して扱われる。この記
憶部608には内部コード化したI F−THENルー
ルを格納する。ルールは2例えばワークを作業ステーシ
ョンに割付けるためのルール群、製品を払出すためのル
ール群等。
各ルール群ごとに区別して格納する。
ルール群ディレクトリ91は、IF−THENルールが
格納されているルール・テーブル92上の各ルール群の
先頭位置を指定するルール群先頭位置エリア、および最
終位置を指定するルール群最終位置エリアから構成され
る。ルールは、各ルール群ごとに、この先頭位置から最
終位置までの間に格納される。各ルール群の番号は、ル
ール群ディレクトリ91の行の番号と対応する。
ルール・テーブル92において、各ルールは、IF部、
THIi:N部を区分してその内部コードをそれぞれI
F部エリア、THEN部エリチェリアする。各エリアに
は、内部コードを複数組、格納できる。IF部エリアは
、さらに内部コードの数値コードを格納する数値コード
・エリア、およびバラス・−夕部会を格納するパラメー
タ部分工11アからなる。また、THEN部エリチェリ
ア部コードの数値コードを格納する数値コード・エリア
、およびパラメータ部分を格納するバラス・−夕部分エ
リアに加えて、IF−THENルールに指定された手続
名を格納する手続名工リアからなる。ここで、ルールT
ypeは、最終的に制御指令を決定するためのルールと
、その他のルールを区別するための情報であり、ルール
Typeエリアに指定する。
最終的に制御指令を決定するルールは1、その他のルー
ルはOをそれぞれ指定する。この情報は、制御部602
が制御指令の決定処理を行うに当り、THEN部の結論
(内部コード)を逐次下していく際に、どの結論が最終
的に得られる制御指令を表す□のかを区別するために用
いる。
第1O図は、第6図の内部コード情報記憶部609の詳
細説明図であって、第10図(a)は先頭ポインタ・テ
ーブルとパラメータ部分格納テーブルと継続ポインタ・
テーブルを、第10図(b)は制御指令格納テーブルを
、第10図(c、 )は、第4図で説明した。該当IF
部に対応する状態データを格納するテーブル41.42
を示す。
第10図(d)は、TF部AND条件満足データテーブ
ル43を示す。第10図(e)は一方のIF部にしかな
い変数のアドレ、スを格納するテーブル100,107
を、第1θ図(f)は2つのIF部に共通な変数のアド
レスを格納するテーブル108を示す。
この記憶部609は、取り込んだ設備群の状態を表す内
部コードとI F−THENルールに基づいて制御指令
を決定する際に、逐次下されるT HE N部の結論(
内部コード)および最終的に決定された制御指令(内部
コード)、さらに変数を含むI F−THENルールを
処理する際に取り込む変数の値、等の情報を記憶してお
く部分である。パラメータ部分格納テーブル101.先
頭ポインタ・テーブル102、および継続ポインタ・テ
ーブル103は、外′部から取り込んだ設備群の状態を
表す内部コードおよびIF−THENルールの処理にお
いて、逐次下される結論(THEN部に指定されている
内部コードのうち最終的に決定された制御指令を除いた
もの)を格納するためのワーク・テーブル群である。パ
ラメータ部分格納テーブル101は、それぞれの内部コ
ードのパラメータ部分を格納するテーブルである。継続
ポインタ・テーブル103は、同一数値コードを持つ内
部コードの各パラメータ部分を結合する継続ポインタを
格納するテーブルである。パラメータ部分格納テーブル
101の各行に対応する継続ポインタ・テーブル103
の各行には、継続する次の内部コードのパラメータ部分
が格納されているパラメータ部分格納テーブル101の
行の位置が格納されている。継続するパラメータ部分の
最後であることは、継続ポインタ・テーブル103にゼ
ロを格納しておくことによって示される。また、先頭ポ
インタ・テーブル102は、先頭ポインタを格納するテ
ーブルである。先頭ポインタは、継続ポインタによって
結合された同一数値コードを持つ内部コードのパラメー
タ部分先頭を示す。先頭ポインタ・テーブル102の各
行が、各数値コードに対応する。すなわち、数値コード
lが1行目、2は2行目、3は3行目である。パラメー
タ部分格納テーブル101に格納されている同一数値コ
ードを持つ一連のパラメータ部分の先頭行の位置を、先
頭ポインタ・テーブル102に格納する。なお、パラメ
ータ部分格納テーブル101の空エリアの先頭行を空エ
リア先頭ポインタ・エリア104に格納し、空エリアの
すべてをポインタで結合し、そのポインタ情報を継続ポ
インタ・テーブル103に格納し、空エリア位置を管理
する。
第10図(b)に示す制御指、全格納テーブル105は
、制御部602によって最終的に決定された制御指令を
表す内部コードを格納するテーブルである。こ、のテー
ブル105は、決定された制御指令の内部コードの数値
コードを格納する数値コード・エリア、パラメータ部分
を格納するパラメータ部分エリアからなる。また、第1
0図(C)。
(d)のIF部A用状態データテーブルTA41、IF
部B川用態データテーブルTB42、IF部AND条件
満足データテーブルTAND43は、一つのIF−TH
ENJレールのANDJAIIBを粁かうためのもので
ある。テーブルTA41.テーブルTB42は、ルール
のIF部に指定しである任意の1つの内部コードと、ワ
ークテーブル群(先頭ポインタ・テーブル102、パラ
メータ部分格納テーブル101、継続ポインタ・テーブ
ル103)に格納されている内部コードの一致判定を行
なった際に、ワーク・テーブル群に格納されている内部
コードで、ルールのIF部に指定しである内部コードと
一致する内部コードのパラメータ部分のパラメータ値を
、ルールのIF部の内部コードのパラメータ部分の対応
する変数の値として取り込んだものを格納しておくテー
ブルである。
ワークテーブル群に格納されている内部コードで、ルー
ルのIF部に指定しである内部コードと一致するか否と
は、内部コードで判定する。IP部AND条件満足デー
タテーブル43は、取り込んだ変数値のうち、IF部の
AND条件を満足する変数値を格納するテーブルである
。第10図(a)は、一方のIF部にしかない変数名の
アドレスを格納するテーブル106,107であり、第
10図(f)は2つのIF部に共通な変数名のアドレス
を格納するテーブル108である。
第11図は、第6図の手続情報記憶部610の詳細説明
図である。
この記憶部610は、IF−THENルールに指定した
手続きの本体およびそのエントリ・アドレスを格納して
おく部分である0手続エントリ・テーブル111は、各
手続基を格納する手続名工リア、その手続のエントリ・
アドレスを格納する手続エントリ・エリアからなる。手
続エントリ・テーブル111に指定したエントリ・アド
レス位置に各々の手続き112を格納する。
第12図は、第6図の制御部602の機能ブロック図で
ある。
制御部602は、ルール群起動条件判定部121、設備
状態内部コード発生部122、制御指令決定部123、
および制御指令発信部124から構成される。情報の流
れでは、1201が状態信号、1202がルール群番号
、1203が設備状態内部コード、1204が制御指令
内部コード、1205が指令信号である。
第13図は、制御部602の動作フローチャートである
以下、第13図のフローにしたがって、第7図から第1
2図までの構成を参照しながら、制御部602の動作を
説明する。
制御部602が動作を開始すると、先ずルール群起動条
件判定部121により状態信号線604のポーリングが
開始される。すなわち、ルール群起動条件判定部121
は、ルール群起動条件テーブル81に格納されている状
態信号線エントリの信号線を順次アクセスし、信号が発
生しているか否かを調べる(ボックス131)。信号が
発生していなければサイクリックに順次信号線604の
アクセスを続ける。信号が発生していれば、ルール群起
動条件テーブル81において、その信号線604に対応
して指定される起動ルール群番号1202を使用ルール
群番号格納エリア82にセットし、設備状態内部コード
発生部122を起動する(ボックス132)、設備状態
内部コード発生部122は、先ず先頭ポインタ・テーブ
ル102をゼロクリアし、空エリア先頭ポインタ・エリ
ア104の値を11”にセットする。すなわち、ポイン
タを、パラメータ部分格納テーブル101の先頭にセッ
トする。さらに、パラメータ部分格納テーブルのすべて
の行を第1行目からポインタで結合するように継続ポイ
ンタ・テーブル103をセットする。すなわち、ワーク
・テーブル群(先頭ポインタ・テーブル102、パラメ
ータ部分格納テーブル101、継続ポインタ・テーブル
103)に、内部コード情報が何も格納されていない状
態にす、る0次に、入力信号−内部コード対応テーブル
71に格納されている状態信号線エントリの信号線を順
にアクセスし、信号の発生している信号線に対して入力
信号−内部コード対応テーブル71においてその信号線
に対応し指定されている内部コード(数値コードとパラ
メータ部分)を発生させ(第7図参照)、ワーク・テー
ブル群内に格納し、制御指令決定部123を起動する(
ボックス133)、ここで、発生させた内部コードのワ
ーク・テーブル群内への格納は、次のように行う、先ず
、発生させた内部コードの数値コードに対応する先頭ポ
インタ・テーブル102の行のポインタからたどり始め
て1発生させた内部コードのパラメータ部分と一致する
ものがパラメータ部分格納テーブル101に格納されて
いるかを継続ポインタ・テーブル103のポインタをた
どって調べる。一致するものが既に存在すれば、何もし
ない、存在しなければ、たどってきたポインタの最後が
指す(継続ポインタがゼロになる前の継続ポインタが指
す)パラメータ部分格納テーブル101の行を、空エリ
アの先頭の行に結合する。すなわち、空エリア先頭ポイ
ンタ・エリア104の値を、その行に対応する継続ポイ
ンタ・テーブル103の行にセットする0次に、空エリ
アの先頭の行に発生させた内部コードのパラメータ部分
を格納し、その行を最後の行とする。つまり、その行に
対応する継続ポインタ・テーブル103の行にゼロをセ
ットする。また、空エリア先頭ポインタ・エリア104
を1次の空エリアの行にセットする。制御指令決定部1
23は、後述する手順で制御指令を表す内部コードを決
定し。
制御指令格納テーブル105に格納し、制御指令発信部
124を起動する(ボックス134)。なお、設備群の
状態がI F−THENルールで記述された制御論理の
条件を満していなければ、制御指令格納テーブル105
には何も格納されない。
制御指令発信部124は、先ず、制御指令格納テーブル
105に制御指令内部コードが格納されているか否かを
調べる。
何も格納されていなければ、何もせずにルール群起動条
件判定部121を起動し、再びポーリングを再開する(
ボックス131)。制御指令内部コードが格納されてい
れば、その内部コードと内部コード−出力信号対応テー
ブル72に格納されている内部コードを比較し、一致す
る行の対応する指令信号線エントリの信号線に対し信号
を発信する(第7図参照)。制御指令格納テーブル10
5に格納されているすべての内部コードに対し、上述の
信号発信処理を行なった後に、ルール群起動条件判定部
121を起動しくボックス135)、再びポーリングを
開始する(ボックス131)。
第14図は、第12図の制御指令決定部123内部の機
能ブロックとテーブルの関係を示す図である。
第14図において、実線は制御の流れ、太線は情報の流
れを示す。制御指令決定部123は、制御指令決定制御
部1411条件判定部142゜AND条件組合わせ発生
部143、中間結論書き込み部145、および制御指令
書き込み部146からなる。
第15図は、第14図の制御指令決定部123の動作フ
ローチャートである。
第15図において、ボックス153〜158がIF部の
処理で、ボックス159〜1513がTHEN部の処理
である。
制御指令決定部123が起動されると、先ず制御指令決
定制御部141に制御が渡される。
制御指令決定制御部141は、その他の機能ブロックを
用いて下記のように制御指令を決定する。
制御指令決定制御部141は、先ず、制御指令格納テー
ブル105をクリアしくボックス151)。
使用ルール群番号格納エリア82に格納されているルー
ル群番号に基づき、ルール群ディレクトリ91から使用
するルールのルール・テーブル92内先頭と最終位置を
める(ボックス152)。
以下の処理は、この先頭と最終位置の間のルールだけに
ついて行う。
制御指令決定制御部141は、THEN部の内部コード
をワーク・テーブル群内に追加する新たなルールがもは
やなくなるまで、ルール・テーブル92内のルールTy
pe Oのすべてのルールに対して、それぞれ以下の処
理を繰り返す(ボックス1514)。なくなった場合、
さらにルール・テ” −プル92内のルールType 
1のすべてのルールに対してそれぞれ以下の処理を繰り
返した(ボックス1515)後、制御指令発信部124
を起動する。制御指令決定制御部141は、ある1つの
ルールを取り出し、そのルールのIF部に指定しである
内部コード1つ1つについて処理を行う。
先ず、条件判定部142をコールし、あるルールのIF
部の内部コードの1つと、ワーク・テーブル群内に格納
されている内部コードとの一致判定を行う(ボックス1
53)、条件判定部142は、IF部の内部コードの数
量コードに対応する先頭ポインタ・テーブル102の行
のポインタからたどり始め、順次継続ポインタ・テーブ
ル103のポインタをたどり、継続ポインタ値がゼロに
なるまでIF部の内部コードのパラメータ部分と一致す
るものがパラメータ部分格納テーブル101に格納され
ているか否かを調べる。−飲料、定は、IF部の内部コ
ードのパラメータ部分の変数指定のパラメータ部を除い
た部分で行い、一致した場合、変数指定のあるパラメー
タ部に対応するパラメータ部分格納テーブル101内パ
ラメータ部分のパラメータ部の値を、IF部に指令しで
ある変数の値としてIF部部用用状態データテーブル4
1またはIF部部用用状態データテーブル42に格納す
る。この場合、パラメータ部分格納テーブル101内に
IF部の内部コードのパラメータ部分と一致するものが
見つかる度に変数値を取り込み、I FiA用状層状態
データテーブル41たはIF部部用用状態データテーブ
ルの各行に順番;格納していく0以上の結果、一致する
ものが1つもなかった場合、制御指定決定制御部141
は、次のルールを取り出し再び条件判定を始める(ボッ
′クス154)。一致するものが1つでもあった場合に
は、さらにいま一致判定を行なったIF部の内部コード
のパラメータ部分に変数指定のあるパラメータ部があれ
ば、AND条件組合わせ発生部143をコールし、後述
の手順によりIF部のAND条件を満足する変数値の組
合わせを生成する(ボックス156)、組合わせ結果は
、AND条件満足変数値格納テーブル107に格納され
る。この場合、AND条件を満足する変数値の組合わせ
が存在しないときには、制御指令決定制御部141は、
いま処理しているルールを放棄し、次のルールを取り出
し、再び条件判定を始める(ボックス157)、なお、
いま一致判定を行ったIF部の内部コードのパラメータ
部分に変数指定のあるパラメータ部がなければ、以上の
処理は行わない(ボックス155)、制御指令決定制御
部141は、ここまでの処理をあるルールのIF部に指
定しであるすべての内部コードに対して行った後1次の
処理に移る(ボックス158)。
先ず、制御指令決定制御部141は、いま処理している
ルールのTHEN部の1つの内部コードを取り出す、ル
ール・テーブル92において、その内部コードに対し手
続名が指定しである場合、制御指令決定制御部141は
、手続起動部144をコールして指定手続を起動する(
ボックス1510)。手続名が指定してない場合には、
手続起動部144はコールされない(ボックス159)
。手続起動部144は、内部コードに対し指定してあっ
た手続名の手続きのエントリ・アドレスを手続エントリ
・テーブル111から探し出し、そのアドレスの手続き
をIF部AND条件満足データテーブル43を引数とし
てコールする。
手続き内では、JF部AND条件満足データテーブル4
3の値を任意に変更することができる1次に、制御指令
決定制御部141は、いま処理しているルールのTyp
e (ルール・テーブル92内ルールType)を調べ
、1°ypeが0の場合、中間結論書き込み部145を
コールし、いま処理しているルールのT HE N部の
取り出した1つの内部コードをワーク・テーブル群内に
格納する(ボックス1511)。Typeが1の場合、
制御指令書き込み部146をコールし、いま処理してい
るルールのT HE N部の取り出した1つの内部コー
ドを制御指令格納テーブル105に格納する(ボックス
1512)。制御指令決定制御部141は、ここまでの
処理’:x T HE N部に指定しであるすべての内
部コードについて繰り返す(ボックス15 i 3)。
内間結論書き込み部145は、先ず格納しようとする内
部コードにおいてパラメータ部分32に変数指定のある
パラメータ部があった場合、そのパラメータ部の内容を
IF部AND条件満足データテーブル43に格納されて
いるある行の苅応する変数値し置き換えた内部コードを
生成する0次に。
中間結論書き込み部145は、生成した内部コードをワ
ーク・テーブル群に格納する。この格納の方法は、前述
の設備状態内部コード発生部122が、発生させた内部
コードをワーク・テーブル群内に格納する場合と同じ方
法で行う。この場合、前述の方法と同じように、格納し
ようとする内部コードが、すでにワーク・テーブル群内
に格納されているときには、その内部コードを新たに格
納することはしない。なお、以上の処理は、IF部AN
D条件満足データテーブル43の変数値が格納されてい
るすべての行について繰り返す。制御指令書き込み部1
46は、中間結論書き込み部145と同じように、先ず
書き込むべき内部コードを生成する。次に、その内部コ
ードを制御指令格納テーブル105の先頭から順に格納
していく。
この場合、格納しようとする内部コードがすでに制御指
令格納テーブル105内に存在すれば、その内部コード
は新たに書き込まない。また、中間結論書き込み部14
5と同じように、IF部AND条件満足データテーブル
43の変数値が格納されているすべての行について、以
上の処理を繰り返す。
第16図は、第14図のAND条件組合せ発生部143
の動作フローチャートである。
AND処理は2つのIF部の処理を考えればよい。1方
をIF部A、他方をIF部Bとする。
IF部Aに対する状態データは、IF部部用用状態チー
フ/I/ 41に、T Pi!Bに対する状暦データは
IF部部用用状態データテーブル42取り込まれている
。各行に1つの状態データが取り込まれるから第1O図
の例では、12ケースのAND処理が必要である。本実
施例では、まず1両チー、プルの一行目に着目し、両I
F部の間で共通な変数名のアドレスと一方のIF部にし
が発生しない変数名のアドレスを予じめ計算する(ブロ
ック161)。
ここで、アドレスとは各テーブルの何列目かの値である
。第10図の例では、IF部Aにだけ発生する変数はな
い。IF部Bにだけ発生する変数はYであり、k=3に
相当する。両IF部に共通な変数はZであり、k=4に
相当する。
次に、上記のアドレスをもとに、必要な値だけを判定し
、各ケースのAND処理を実施する。いま、IF部部用
用状態データテーブル41i行目、IF部部用用状態デ
ータテーブル42j行目とに着目する。まず、両IF部
の間の共通変数の値が一致するかをIFsANDF件満
足データ読取位置テーブル108のアドレスをもとに調
べる(ブロック162)、もし、一致しなければ、その
ケースはAND条件を満足しないため1次のケースに進
む。もし、IF部の間の全ての共通変数の値が一致すれ
ば、次に、AND処理の結果をIF部AND条件満足デ
ータ読取位置テーブル108に書き込む。まず、共通変
数の値を書き込む(ブロック163)。次にIF部A、
IF部Bのそれぞれにしかない変数の値を、IF部部用
用データ読取位置テーブル106IF部部用用データ読
取位置テーブル107アドレスをもとに書きこむ(ブロ
ック164,165)。
このようにして、本実施例では、IF−、。
THENルールを用いて簡単に各種制御論理を記述でき
、これにもとづいて各種情報を記憶部601の各テーブ
ルに格納するだけで、簡単に各種制御論理の条件判別制
御を実施することができる。さらに、制御対象の変化、
制御方式の変化等に伴う条件判別制御の内容変更にもI
F−THENを変更することにより、簡単に対処できる
。さらに、本実施例では、従来、時間のかがっていたI
F郡部間ANDをとる処理が高速化される。これにより
、従来に比べ、制御応答速度が向上し、高速な応答を要
求される制御対象の制御に対してもルールに基づく条件
判別制御を適用することが可能となる。
〔発明の効果〕
以上説明したように、本発明によれば、高速な条件判別
制御が実現される。そのため、高速な応答性を要求され
る制御対象の制御に対しても、専門のプログラム開発要
員が不要な、ルールによる条件判別制御が実現可能とな
る。
【図面の簡単な説明】
第1図は、従来のルールによる条件判別制御方式の説明
図、第2図はIF−THENルールの例を示す図、第3
図はルールの内部コード化の例、第4図はIF部の間の
AND処理を説明するための補助図、第5図はIF部の
間のAND処理フロー図である。以上の図は従来方式を
説明するための図である。以下の図は本発明の実施例に
関する。 第6図は本発明の実施例を示す設備群制御装置のブロッ
ク構成図、第7図は入出力信号−内部コード対応情報記
憶部の詳細図、第8図はIF−THENルール起動情報
記憶部の詳細図、第9図はI F−THENルール情報
記憶部の詳細図、第10図は内部コード情報記憶部の詳
細図、第11図は手続情報記憶部の詳細図、第12図は
制御部の機能ブロック図、第13図は制御部の動作フロ
ーチャート、第14図は制御指令決定部の機能ブロック
と各テーブルの関係を示す図、第15図は制御指令決定
部の動作フローチャート、第16図はAND条件組合わ
せ発生部の動作フローチャートである。 11・・・ルール記憶部、12・・・ルール運用部、1
3・・・状態記憶部、21・・・固定部、22・・・パ
ラメータ部、41・・・IF部部用用状態データテーブ
ル42・・・I FiB用状層状態データデープル3・
・・IF部AND条件満足データテーブル、601・・
・記憶部、602・・・制御部、603・・・設備、6
04・・・状11A信号線、605・・・指令信号線、
606・・・入出力信号−内部コー・ド対応情報記憶部
、607・・・IF−T HE Nルール起動情報記憶
部、608・・・IF−THENルール情報記憶部、6
09・・・内部コード情報記憶部、610・・・手続情
報記憶部、71−人力信号−・内部コード対応テーブル
、72・・・内部コード−出力信号対応チー・プル、8
1・・・ルール群起動条件テーブル、82・・・使用ル
ール群番号格納エリア、91・・・ルール群ディレクト
リ、92・・・ルール・デープル、101・・・パラメ
ータ部分格納テーブル、102・・・先頭ポインタ・テ
ーブル、103・・・継続ポインタ・テーブル、104
・・・空エリア先頭ポインタ・エリア、105・・・制
御指令格納テーブル、106・・・IF部部用用データ
読取位置テーブル10 ”I・・・IF部部用用データ
読取位置テーブル108・・・IF部AND条件満足デ
ータ読取位置テーブル、111・・・手続エントリ・テ
ーブル、121・・・ルール起動条件判定部、122・
・・設備状態内部コード発生部、123・・・制御指令
決定部、124・・・制御指令発信部、141・・・制
御指令決定制御部、142・・・条件判定部、143・
・・AND条件組合わせ発生部、144・・・手続起動
部、145・・・中間結論書き込み部、146・・・制
御指令書き込み部。 L+−+ + −j 第6図 bor (,03 vi7図 1 第 δ 図 第11図 Ut 122 l14 % 13 12]

Claims (1)

    【特許請求の範囲】
  1. 設備群の条件と結論からなるルールを格納するルール記
    憶部、設備群の状態とルールで結論された内容を格納す
    る状態記憶部、該状態記憶部に格納された情報と上記ル
    ール記憶部に格納された条件とを比較照合し、条件が満
    足されたルールの結論を上記状態記憶部に格納するルー
    ル運用部を有し、設備群に対する制御指令を決定する設
    備群制御方式において、■ルール内の複数の条件のAN
    D処理を行なう際に、条件間で共通な変数名のアドレス
    と各条件に固有な変数名のアドレスとを予じめ計算し、
    該アドレスを基に必要な変数のみに着目して条件間のA
    ND処理を実施することを特徴とする設備群制御方式。
JP59028531A 1984-02-20 1984-02-20 設備群制御方式 Pending JPS60173635A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59028531A JPS60173635A (ja) 1984-02-20 1984-02-20 設備群制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59028531A JPS60173635A (ja) 1984-02-20 1984-02-20 設備群制御方式

Publications (1)

Publication Number Publication Date
JPS60173635A true JPS60173635A (ja) 1985-09-07

Family

ID=12251248

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59028531A Pending JPS60173635A (ja) 1984-02-20 1984-02-20 設備群制御方式

Country Status (1)

Country Link
JP (1) JPS60173635A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62204302A (ja) * 1986-03-05 1987-09-09 Hitachi Ltd プラントの制御方法及びその装置
JPS6356707A (ja) * 1986-08-28 1988-03-11 Matsushita Electric Ind Co Ltd ロボツト動作指示プログラム生成装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62204302A (ja) * 1986-03-05 1987-09-09 Hitachi Ltd プラントの制御方法及びその装置
JPS6356707A (ja) * 1986-08-28 1988-03-11 Matsushita Electric Ind Co Ltd ロボツト動作指示プログラム生成装置

Similar Documents

Publication Publication Date Title
JPH0650442B2 (ja) 設備群制御方法およびシステム
JPH0736123B2 (ja) 設備群制御方法
Davies et al. The use of expert systems in process-planning
US5471677A (en) Data retrieval using user evaluation of data presented to construct interference rules and calculate range of inputs needed for desired output and to formulate retrieval queries
Wang et al. Intelligent reasoning for process planning
Thistle Supervisory control of discrete event systems
KR940001563B1 (ko) 룰 베이스 시스템
CN106293653A (zh) 代码处理方法及装置
Gupta An expert system approach in process planning: current development and its future
KR0182361B1 (ko) 프로그래머블 콘트롤러의 프로그래밍기기, 프로그래머블 콘트롤러용 기능유닛 및 프로그래밍 기기의 메모리표시 입력방법
JPS60173635A (ja) 設備群制御方式
JPS61177547A (ja) ル−ル処理方式
JP2515719B2 (ja) 設備群制御方法
JPS6320529A (ja) 知識獲得方式
JPS61133405A (ja) ル−ル処理方式
US20040034443A1 (en) Numerical controller
JPS61136162A (ja) 設備群制御方式
JPS63631A (ja) ル−ル処理方式
JPS62297942A (ja) ル−ル処理方式
JPH0736124B2 (ja) 設備群制御方法
JPS6320557A (ja) ル−ル処理方式
Lamare et al. Integrating a temporal planner with a path planner for a mobile robot
Chu et al. The use of artificial intelligence in process planning
Wang A layered architecture for manufacturing operation planning
JPH087685B2 (ja) ル−ル動作モニタシステム