JPS63631A - ル−ル処理方式 - Google Patents

ル−ル処理方式

Info

Publication number
JPS63631A
JPS63631A JP61143082A JP14308286A JPS63631A JP S63631 A JPS63631 A JP S63631A JP 61143082 A JP61143082 A JP 61143082A JP 14308286 A JP14308286 A JP 14308286A JP S63631 A JPS63631 A JP S63631A
Authority
JP
Japan
Prior art keywords
condition
rule
section
control
internal code
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
JP61143082A
Other languages
English (en)
Inventor
Ryoji Maekawa
前川 亮二
Tsutomu Tashiro
勤 田代
Isao Toshima
都島 功
Norihisa Komoda
薦田 憲久
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 Microcomputer System Ltd
Hitachi Ltd
Original Assignee
Hitachi Ltd
Hitachi Microcomputer Engineering 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, Hitachi Microcomputer Engineering Ltd filed Critical Hitachi Ltd
Priority to JP61143082A priority Critical patent/JPS63631A/ja
Publication of JPS63631A publication Critical patent/JPS63631A/ja
Pending legal-status Critical Current

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00—Computing arrangements using knowledge-based models
    • G06N5/04—Inference or reasoning models

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Executing Machine-Instructions (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、自動化工場のような複数の設備からなるシス
テ11において、各設備の状1nを計′X″1.機に・
  取り込み、所定の制御論理に従い条件判定を行い。
条件が成立すれば制御論理で指示された制御指令を各設
備に発行するような条件判別制御に適したルール処理方
式に関する。
〔従来の技術〕
一般に。1−述の条件判別制御では1条件を判定し制御
指令を決定するための制御論理をFORTl+八N等の
汎へ言語を用いてプログラミングし制御装置I¥ヒで実
行する方式がとr)れている。
〔発明が解決しようとする問題点〕
従来の方法では、プログラムの作成、変(に時間がかか
り、更に専門のプログラミング要員を必要とするという
問題がある。このため、自動化工場等におけろ設備の植
成の変(等に際し、制御プログラムを変更することが迅
速に行えないという欠点があった。
そこで、設備群制御の実施・変更が容易な「設備群制御
方式」を提案した(特願昭58−79341号参照)。
この方式は、制御論JiltをrTI−”(条件)、T
l1l<N (論理、動作)」というルール形式(以下
、T li’−THIiNルール父は、ルールと呼ぶ)
で記述すろことにより制御プログラムを作成できるもの
であり、制御プ、ログラムの作成が容易で、制御論理の
理解、変更性にすぐれている。しかし、その方式では、
IF部の条件判定において1条件として記述された文字
列と対象の状Jルを表わす文字列とが一致した場合に条
件成立とする、肯定的なルール処理方式であった。従っ
て、ある設備が空でないといった否定の内容を条件に記
述するには、その設(イuが空という文字列とは別に空
でないという意味を表わす文字列を用意する必要がある
にのため文字列の種類が増え、設備の状態を取り込むの
に時間がかかり、対象の規模が大きくなると充分な応答
性が得られないという欠点がある。
以下、これを説明する。第:3図は、前記設備群制御方
式の機能構成図である。11は、ルール記憶部、12は
ルール運用部、13は状態記憶部、14は状態取込み部
、]5は制御対象の設備群である。第3図に示すように
、状態取込み部14は、設備群15の状態を調べ、その
状態を文字列に変換し、状態記憶部13に格納する。ル
ール運用部12は、ルールを記憶しであるルール記憶部
]1から1個ずつルールを取り出し、状態記憶部1;3
に対して条件判定を行い、条件が満足すれば。
TiI4惰部の結論を状態記憶部13に追加する。」−
記設備群制御方式は1以上の処理を繰り返すことにより
、最終的に実行すべき制御内容を決定する方式を採用し
ている。上記処理で、ルールのパラメータ部(文字列内
で’ < ’ +  ’ > ’で囲まれた部分)に数
値等の定数が指定しであるルールの場合は、I F部の
文字列のすべてに対して、状態記憶部13の文字列と一
致判定を行う。−致した場合Ti1l<N部の文字列を
そのまま状態記憶部に書き加える。
パラメータ部にW、X、Y、Z等の変数を含むルールの
場合は、IF部の文字列で変数の指定しであるパラメー
タ部を除く部分に対して、状態記憶部[3の文字列と一
致判定を行う。次に一致した状態記憶部13のすべての
文字列においてIF部の文字列で変数の指定しであるパ
ラメータ部の内容を変数値として取り込み一時記憶して
おく。
状態記憶部13に書き加えろ文字列は、THト;N部の
文字列において変数の指定しであるパラメータ部に記憶
していた変数値のうちT I=’部の複数の条件のAN
D条件を満足する変数値の組合せを代入したものである
。
以上述べたように、従来方式は、ルールの1 )暢”部
の1つの文字列と同一の文字列が状態記憶部13に存在
した時のみ条件成立とし以上の処理を進める条件を肯定
的番ご処理する方式である。このため、設備は空でない
という否定の内容を条件に記述するには、゛(設備は空
)″という文字列とは別に、空でないという意味を表わ
す文字列“(設備は空でない)″を別に用意する必要が
あり、文字列の種類が増え、設(債の状1服を状態記憶
部13に格納する処理に時間がかかる。例えば、第1図
のNα3ルールの1番1−1のT +=”部のように、
パレット1は空でないという否定的な内容を条件に記述
するには、“(パレット〈1〉は空)″という文字列と
は別に゛(パレット<1.>は空でない)″という文字
列が必要である。また、Nα5ルールの2番11のT 
I”部のように、作成可能な製品から作成ずみでない製
品を選ぶ条件を記述するには、′(製品<×〉は作成ず
み)″という文字列とは別に″(製品<X>は作成ずみ
でない)″という文字列が必要である。このため、状J
n取込み部14は、″(パレツi〜〈1〉は空)I+、
J製品〈ハ〉は作成ずみ)″といった文字列とは別に゛
(パレットく2〉は空でない)′=、LL(j製品くB
〉は空でない)″といった余分な文字列を状態記憶部1
;3に格納しなければならない。従って従来方式では、
否定的な内容の条件を多く記述したルールでは状態記憶
部L 3に格納する文字列の種類が多くなり、状態記憶
部13に格納する処理に時間がかかり、充分な応答性が
得られないという欠点があった。
本発明の目的は、このような問題を解決し、条件判別制
御の実施が容易で、かつ高速の制御応答が要求される制
御対象に対しても適用可能なルール処理方式を提供する
ことにある。
〔問題点を解決するための手段〕
上記目的を達成するため本発明では、IF部の文字列と
状態記憶部の文字列が−致した場合条件成立とする従来
の文字列を1!r定的に扱う条件判定処理に加え、IF
部の文字列と状態記憶部の文字列が−致しなかった場合
に条件成立とする文字列を否定的に扱う条件判定処理を
加える。なお9文字列を否定的に扱う処理を行う■1・
部には条件識別子“NOT”を指定し区別する。これに
より。
設備は空でないといった否定の内容を条件に記述するさ
いにも、′(設備は空)″という文字列を用い“IFN
OT(設備は空)”と記述でき、パ(設備は空でない)
′″といった文字列を必要としない。
第2図に、第1図のルールを条件識別子” N 01”
 ”を用い記述した例を示す。本例では、“(パレット
〈1〉は空でない)11,1“(製品<x>は作成ずみ
でない)″等の文字列が不要になり、パ(パレット〈2
〉は空でない)11.II(製品(B)は空でない)″
といった余分な文字列を状態記憶部に格納する必要がな
くなり、処理時間が短縮される。
〔作用〕
本発明では状態記憶部に格納する文字列の種数が削減さ
れ、設備の状態を状態記憶部13に格納する処理時+1
−I+を短縮することができる。
〔実施例〕
以下、本発明の実施例について、図面により説明する。
なお、従来の設備群制御方式において用いられている用
語等は、説明なしで以下の説明でも用いる場合があるの
で詳細は特願昭58−70341号を参照されたい。
第1図は1本発明の一実施例を示す設備群制御装置のブ
ロック構成図である。
制御装置は、記憶部601、制御部602、設備部60
3、状態信号線604、および指令信号線605から構
成される。記憶部601は、さらに、複数の情報記憶部
、すなわち人出力信号−内部コード対応情報記憶部60
(3、I li’ −TIIrr、N )’J−ル起動
情報記憶部607、I I−” −TH14Nルール情
報記憶部608、内部コード情報記憶部600、および
手続情報記憶部610の各エリアを有している。記憶部
601は、内部コード化されたrF−TIIENルール
、外部信号と内部コードの対応表等のデータを記憶して
おく部分である。制御部602は、記憶部601に格納
されている情報にもとづき、設備群603の状1ルを示
す状態信号を信号線604を介して取り込み、制御指令
を決定し、各設備60:3に信号線605を介して制御
信号を発信する。
第4図は、第1図における人出力信号−内部コード対応
情報記憶部606の詳細説明図であって。
第4図(a)が人力信号と内部コード、第4図(b)が
内部コードと出力信号の各対応テーブルである。
この記憶部606は、第1図に示す状態信号線604、
指令信号線605等の外部信号と、内部処理の間のイン
タフェースのための情報を格納しておく部分である。
第4図(a)に示す人力信号−内部コード対応テーブル
71は、状態信号a604の信号を、制御部602で取
り扱う内部コードに変換するための情報を格納しておく
テーブルである。
このテーブル7】は、状態信号線604のエントリ・ア
ドレスを格納する状態信号線エントリ・エリア、その信
号線604に信号が発生した場合に対応する設備状態を
表わす内部コードを格納しておく数値コード・エリア、
およびパラメータ部分エリアから構成されている。制御
部602は。
このテーブル71のデータにもとづき各状j原信号線6
04をアクセスし、信号が発生していれば対    応
する内部コードを作成する。作成された内部コードは、
内部コード情帽記憶部609内に格納される。ここで、
状態信号線604の信号がオンフオの2値情報の場合、
制御部602は、テーブル71に格納されている内部コ
ードをそのままの形で取り出し、内部コードを作成した
ことにする。 ゛例えば、第4図(、)のアドレスHの
内部コードがその場合を示している。状f111100
004の情報がバーコードの読み取り情報等の数値情報
の場合には、テーブルに格納されている内部コードのパ
ラメータ部分で変数(W、、 X、 Y、 7.等)が
指定されているものに、その情報を値として書き込んだ
内部コードを作成する。
例えば、第4図(a)のアドレスAの内部コードがその
場合を示している。すなわち、状態信号線アドレスAに
数値情報;34が発生している場合。
制御部602は、内部コード” 1 < 34 > ”
を作成する。内部コード″’L<34)”は、例えば。
自動化工場のワーク供給ラインの先頭にワークN034
のワークが発生したことを示している。
次に、第4図(b)にt9いて、内部コード−出力信号
対応テーブル72は、制御部602の決定した制御指令
を表わす内部コードに基づいて、設備群603に指令信
号線605を介して制御信号を発信するための情報を格
納してt9<テーブルである。なお、制御指令を表わす
内部コードは、内部コード情報記憶609内に格納され
ている。
テーブル72は、制御指令を表わす内部コードを格納す
る数値コード・エリア、パラメータ部分エリア、および
その制御指令を発信すべき指令信号@ 605のエント
リ・アドレスを格納する指令信号線エントリ・エリアか
ら構成されている。制御部602は、決定した制御指令
を表わす内部コードと、このテーブル72に格納されて
いる内部コードとを比較し、−致した内部コードに対応
する指令信号、1ft605に対し信号を発生する。そ
の場合、このテーブル72に格納されている内部コード
において、パラメータ部分に変数(W、X。
Y、Z等)が指定されてないときには、対応する信号線
アドレス上にオンオフの2値信号を出力する。2値信号
を出力する場合として、例えば第4図(b)のアドレス
■)がある。また、変数の指定がある場合には、決定さ
れた制御指令を表わす内部コードにおけるその変数に対
応するパラメータの値を、信号線アドレス上に出力する
。例えば、決定された制御指令を表オ)す内部コードが
″9< 1 ><34>< 1 >”であるときには、
信号線アドレス(:ヒに値34,1がこの順序で出力さ
れる。
内部コード゛’9<1><34><1>’″の意味は、
例えば、自動化工場の搬送台車1にワークNα34のワ
ークをステーション1に搬送することを指示する制御指
令である7 第5図は、第1図のI F −TIIENルール起動情
報記憶部607の詳S++説明図であり、第5図(、i
)はルール群起動条件テーブル、第5図(b)は使用ル
ール群番号格納エリアを示す。
この記憶部607は、発生した設備群の状11Jに応じ
て起8!11すべきルール群を指定する情報を格納して
おく部分である。ここで、″起動すべき”とは、゛制御
部602が制御指令を決定する際に使用すべき′°とい
う意味である。例えば、自動化工場の制御において、ワ
ーク供給ラインの先頭にワークが発生した際には、ワー
クを作業ステーションに割付けるためのルール群を起動
し、台車への搬送指令、作業ステーションへの作業指令
を決定する。
また、ある作業ステーションで作業が完了した場合には
、製品を払出すためのルール群を起動し。
台車への製作品払出し指令を決定する。ルール群8動条
件テーブル81は、前述のように、発生する設備群60
;3の各状態ごとに対応する起動すべきルール群を指定
するための情報を格納しておくテーブルである。このテ
ーブル81は、発生を監視すべき設備状態に対応する状
態信号線604のエントリ・アドレスを格納する状態信
チ線エンド・す・エリア、その信号Jj%604に信号
が発生した際に、起動すべきルール群の番号を指定する
起動ルール群番号エリアから構成される。使用ルール群
番号格納エリア82は、制御部6C)2が制御指令決定
に用いろべきルール群番号を記憶してオンくエリアであ
る。制御部602は、ルール群起動条件テーブル81の
データに基づき、各状態4i号線604をポーリングし
ており、信号が発生した場合、その信号t!A604に
対応する起Orルール群番号を、使用ルール群番号格納
エリア82に記憶し。
次の処理に移る。
第6図は、第1図の11・” −丁111uNルール情
報記憶部608の詳細説明図であって、第6図(,1)
がルール群ディレクトリ、第6図(b)がルール・テー
ブルである。
この記憶部608は、制御論理を記述したTF−Tll
!iNルールに関する情報を格納しておく部分である。
IP−TIIFNルールを内部コード化して扱われる。
この記憶部608には内部コード化したT F −TI
IF:、Nルールを格納する。ルールは、ワークを作業
ステーションに割付けるためのルール群。
製品を払出すためのルール群等、各ルール群ごとに区別
して格納する。
ルール群ディレクトリ91は、T F−TIIFNルー
ルが格納されているルール・テーブル92上の各ルール
群の先頭位置を指定するルール群先頭位置エリア、およ
び最終位置を指定するルール群最終位置エリアから構成
される。ルールは、各ルール群ごとに、この先頭位置か
ら最終位置までの間に格納される。各ルール群の番号は
、ルール群ディレクトリ91の行の番号と対応する。
ルール IF部、’rllEN部を区分してその内部コードをそ
れぞれT F部エリア、1’llEN部エリアに格納す
る。各エリアには、内部コードを複数〃1、格納できろ
。
TF部エリアは、内部コードの数値コードを格納する数
値コード・エリア、パラメータ部分を格納するパラメー
タ部分エリア、およびfl・部の条件1”ypsを格納
する条件1’ y p eエリアからなる。ここで、条
件Tyρ0は、11・’ gf(が1′f定の条件であ
るか、否定の条件であるかを区別するための情報であり
、条件’l’ y +)(!エリアに指定する。工1;
゛部が?’r定の条件のときはOを、11r定の条件の
ときは]をそれぞれ指定する。゛団EN部エリ/は、内
部コードの数値コードを格納する数(1^コー ド・エ
リア、パラメータ部分を格納rるパラメータ115分エ
リア、および、T F − 1’llENルールに指定
された手続名を格納する手続名工リアからなる。ここ′
C:2ルールr y 1Jeは、最終的に制御指令を決
定するためのルールと、その他のルールを区fi’lす
るための情報であり.ルールl’ypeエリアに指定す
る。最終的に制御指令を決定するルールは1,その池の
ルールは0をそれぞれ指定する。この情報は、制御部6
 0 2が制御指令の決定処理を行うに当たり,1’l
lEN部の結論(内部コード)を逐次下していく際に、
どの結論が最終的に得られる制御指令を表わすかを区別
するために用いろ。
第7図は、第1図の内部コード情報記憶部609の詳細
説明図であって、第7図(a)は先頭ポインタ・テーブ
ルとパラメータ部分格納テーブルと継続ポインタ・テー
ブルを、第7図(b)は制御指令格納テーブルを、第7
図(C)は変数値−時格納テーブルを、第10図(d)
は条件濶足変数値格納テーブルをそれぞれ示している。
この記憶部609は、取り込んだ設備群の状態を表わす
内部コードとI +” −THr:Nルールに基づいて
制御指令を決定する際に,逐次下されるTII[’:N
部の結論(内部コード)および最終的に決定された制御
指令(内部コード)、さらに変数を含むIF−TILF
Nルールを処理する際に取り込む変数の値、等の情報を
記憶しておく部分である。パラメータ部分格納テーブル
101、先頭ポインタ・テーブル102、および継続ポ
インタ・テーブル103は、外部から取り込んだ設備群
の状態を表わす内部コードおよびT F−TIIENル
ールの処理において。
逐次ドされろ結論(’rllEN部に指定されている内
部コードのうち最終的に決定された制御指令を除いたも
の)を、格納するためのワーク・テーブル群である。パ
ラメータ部分格納テーブル10〕は、それぞれの内部コ
ードのパラメータ部分を格納するテーブルである。継続
ポインタ・テーブル103は,同一数値コードを持つ内
部コードの各パラメータ部分を結合する継続ポインタを
格納するテーブルである。パラメータ部分格納テーブル
101の各行に対応する継続ポインタ・テーブル103
の各行には,継続する次の内部コードのパラメータ部分
が格納されているパラメータ部分格納テーブル101の
行の位置が格納されている。継続するパラメータ部分の
最後であることは、継続ポインタ・テーブル10:3に
ゼロを格納しておくことによって示される。また、先頭
ポインタ・テーブル】02は,先頭ポインタを格納する
テーブルである。先頭ポインタは,継続ポインタによっ
て結合された同一数値コードを持つ内部コードのバラメ
ータ部分の先頭を示す。先頭ポインタ・テーブル1.0
2の各行が、各数値コードに対応する。すなわち、数値
コード】が1行目、同2が2行L1、同3が3行目であ
る。パラメータ部分格納テーブル101に格納されてい
る同一数値コードを持つ一連のパラメータ部分の先頭行
の位置を、先頭ポインタ・テーブル102に格納する。
なお、パラメータ部分格納テーブル101の空エリアの
先頭行を空エリア先頭ポインタ・エリア104に格納し
、空エリアのすべてをポインタで結合し、そのポインタ
情報を継続ポインタ・テーブル10;3に格納し、空エ
リア位vlを管理する。第7図(b)に示す制御指全格
、納テーブル105は、制御部602によって最終的に
決定された制御指令を表わす内部コードを格納するテー
ブルである。このテーブル[05は、決定された制御指
令の内部コードの数値コードを格納する数値コード・エ
リア、パラメータ部分を格納するパラメータ部分エリア
からなる。また、第1O図(c)(d)の変数値−時格
納テーブルIQ61条件満足変数値格納テーブル1.0
7は、変数を持つI F −nipNミルNルールを行
うためのものである。変数値−時格納テーブル106は
、ルールのIF部に指定しである任意の1つの内部コー
ドと、ワーク・テーブル群(先頭ポインタ・テーブル1
02、パラメータ部分格納テーブル101.継続ポイン
タ・テーブル103)に格納されている内部コードの一
致判定を行った際に、ワーク・テーブル群に格納されて
いる内部コードで、ルールのI F’部に指定しである
内部コードと一致する内部コードのパラメータ部分のパ
ラメータ値を、ルールのIF部の内部コードのパラメー
タの部分の応答する変数の値として取り込んだものを格
納しておくテーブルである。
ワークテーブル群に格納されている内部コードで、ルー
ルのIF部に指定しである内部コードと一致するか否か
は、内部コードの数値コード31および変数指定のある
パラメータを除いたパラメータ部分で判定する。条件満
足変数格納テーブル107は、取り込んだ変数値のうち
IF部のAND条件あるいは、NOT条件を満足する変
数値を格納するテーブルである。
第8′図は、第1図の手続情報記憶部610の詳lAl
+説明図である。
この記憶部610は、I r・’−TI114’lルー
ルに指定した手続きの本体およびエン1へり・アト1ノ
スを格納しておく部分である。手続エントリ・テーブル
111は、各手続名を格納する手続名工リア、その手続
のエンi・す・アドレスを格納する手続、エントリ・エ
リアからなる6手続エントリ・テーブル】]1に指定し
・たエントリ・アドレス位置に各々の¥、続き112を
格納する。
第[」図は、第1図の制御部E; O’、’、の機能ブ
ロック(ジζ1である。
制御部602は、ルール群起動条件判定部12]、設合
;11状態内部コード発生部122、制御指令決定部1
23 、および制御指令発信部124から構成される。
情報の流れでは、1201が状13信号、1202がル
ール群番号、1203が設備状態内部コード、1204
が制御指令内部コード、1205が指令信号である。
第10図は、制御部6o2の動作フローチャートである
。
以下、第10図のフローにしたがって、第4図から第9
図までの構成を参照しながら、制御部602の動作を説
明する。
制御部602が動作を開始すると、先ずルール群起動条
件判定部121により状態信号線604のポーリングが
開始されろ。すなわち、ルール群起動条件判定部121
は、ルール群起豹J条件テーブル81に格納されている
状態信号線エントリの信号線を順次アクセスし、信号が
発生しているか否かを調べろ(ボックス131)。信号
が発生していなければサイクリックに順次信号a604
のアクセスを続ける。信号が発生していれば、ルール群
起動条件テーブル81において、その信号線604に対
応して指定される起動ルール群番号1202を使用ルー
ル群番号格納エリア82にセットし、設備状態内部コー
ド発生部[22を起動する(ボックス132)。設イイ
i?状態内部コード発生部122は、先ず先頭ポインタ
・テーブル102をゼロクリアし、空エリア先頭ポイン
タ・エリア104の値を“1″にセットする。すなわち
、ポインタを、パラメータ部分格納テーブル101の先
頭にセットする。さらに、パラメータ部分格納テーブル
のすべての行を第1行目からポインタで結合するように
継続ポインタ・テーブル103をセットする。すなわち
、ワーク・テーブル群(先頭ポインタ・テーブル102
、パラメータ部分格納テーブル101、継続ポインタ・
テーブル103)に、内部コード情報が何も格納されて
いない状態にする。次に、入力信号−内部コード対応テ
ーブル71に格納されている状態信号線エントリの信号
線を順にアクセスし、信号の発生している信号線に対し
て人力信号−内部コード対応テーブル71においてその
信号線に対応し指定されている内部コード(数値コード
とパラメータ部分)を発生させ(第1,4図説明参照)
、ワーク・テーブル群内に格納し、制御指令決定部12
3を起動する(ボックス133 )。ここで、発生させ
た内部コードのワーク・テーブル群内への格納は、次の
ように行う。先ず、発生させた内部コードの数値コード
に対応する先頭ポインタ・テーブル102の行のポイン
タからたどり始めて1発生させた内部コードのパラメー
タ部分と一致するものがパラメータ部分格納テーブル1
01に格納されているかを継続ポインタ・テーブル10
3のポインタをたどって調べろ。−致するものが既に存
在すれば、何もしない。存在しなければ、たどってきた
ポインタの最後が指す(継続ポインタがゼロになる前の
継続ポインタが指す)パラメータ部分格納テーブル10
]の行伝、空エリアの先頭の行に結合する。すなわち、
空エリア先頭ポインタ・エリア104の値を、その行に
対応するr−続ポインタ・テーブル10;3の行にセッ
トする。次に、空エリアの先頭の行に発すユさせた内部
コードのパラメータ部分を格納し、その行を最終の行と
する。つまり、その行に対応する継続ポインタ・テーブ
ル10:3の行にゼロをセットする。また、空エリア先
頭ポインタ・エリア10・1を、次の空エリアの行にセ
ットする。制御指令決定部123は、後述する手順で制
御指令を表わす内部コードを決定し、制御指令格納テー
ブル105に格納し、制御指令発信部】24を起動する
(ボックス]34)。なお、設備群の状態がI F−T
IIENルールで記述された制御論理の条件を満たして
いなければ、制御指令格納テーブル105には何も格納
されない。制御指令発信部124は、先ず、制御指令格
納テーブル105に制御指令内部コードが格納されてい
るか否かを調べろ。
何も格納されていなければ、何もせずにルール群起動条
件判定部121を起動し、再びポーリングを再開する(
ボックス131)。制御指令内部コードが格納されてい
れば、その内部コードと内部コード−出力信号対応テー
ブル72に格納されている内部コードを比軸し、−致す
る行の対応する指令信号線エントリの信号線に対し信号
を発信する(第4図の説明参照)。制御指令格納テーブ
ル】05に格納されているすべての内部コードに対し、
−ヒ述の信号発信処理を行った後に、ルール群起動条件
判定部121を起動しくボックス135)、11トびポ
ーリングを開始する(ボックス131)。
第11図は、第9図の制御指令決定部123内部の機能
ブロックとテーブルの関係を示す図である。
第11図において、実線は制御の流れ、太線は情報の流
れを示す6制御摺合決定部123は、制御指令決定制御
部141、条件判定部142、A N D条件組合わせ
発生部L43.NOT条件満足変数値選択部中間結論書
き込み部]45、および制御指令書き込み部146から
なる。
第12図は、第11図の制御指令決定部123の動作フ
ローチャートである。
制御指令決定部123が起動されると、先ず制御指令決
定制御部141に制御が渡される。
制御指令決定制御部141は、その他の機能ブロックを
用いて下記のように制御指令を決定する。
制御指令決定制御部141は、先ず、制御指令格納テー
ブル105をクリアしくボックス151)、使用ルール
群番号格納エリア82に格納されているルール群番号に
」ルづき、ルール群ディレクトリ91から使用するルー
ルのルール・テーブル92内先頭と最終位置を求める(
ボックス152)。
以下の処理は、この先頭と最終位置の間のルールだけに
ついて行う。
制御指令決定制御部]41け、Tl114N部の内部コ
ードをワーク・テーブル群内に追加する新たなルールが
もはやなくなるまで、ルール・テーブル92内のルール
typeOのすべてのルールに対して、それぞれ以下の
処理を繰り返す(ボックス15+4)。
なくなった場合、さらにルール・テーブル92内のルー
ルType】のすべてのルールに対しそれぞれ以下の処
理を繰り返した(ボックス151!’i)後、制御指令
発信部124を起動する制御指令決定制御部141は、
ある1つのルールを取り出し、そのルールのIF部に指
定しである内部コード1つ1つについて処理を行う。先
ず、条件判定部142をコールし、あるルールのIF部
の内部コードの1つと、ワーク・テーブル群内に格納さ
れている内部コードとの比較判定を行−5(ボックス1
5;()。
条件判定部142は、ルールテーブル92の条件Typ
eエリアに指定されている条件Typeにより、以下に
示すように、条件判定処理を切り変えて行う。
条件’rypcがOの場合、条件判定部142は、T 
F部の内部コードの数値に対応する先頭ポインタ・テー
ブル102の行のポインタからたどり始め、順次継続ポ
インタ・テーブル103のポインタをたどり、継続ポイ
ンタ値がゼロになるまでTF部の内部コードのパラメー
タ部分と一致するものがパラメータ部分格納テーブル1
0]に格納されているか否かを調べる。−致判定は、I
F部の内部コードのパラメータ部分の変数指定のパラメ
ータを除いた部分で行い、−致した場合、変数指定のあ
るパラメータ部に対応するパラメータ部分格納テーブル
Lot内パラメータ部分のパラメータ部の値を、IF部
に指定しである変数の値として変数値−時格納テーブル
106に格納する。この場合、パラメータ部分格納テー
ブル101内にIF部の内部コードのパラメータ部分と
一致するものが見つかる度に変数値を取り込み、変数値
−時格納テーブル106の各行に順に格納していく。な
お、TF部の内部コードのパラメータ部分のパラメータ
部に変数指定がない場合は、特に変数値は取り込まない
。以上の結果、−1ttするものが1つでもあった場合
条件成立、1つもなかった場合は条件不成立とする。
条件T芹eが1の場合、条件判定部142は、条件1’
 y p eがOの」4)合と同様に、TF部の内部コ
ードの数値に対応オろ先頭ポインタ・テーブル[02の
行のポインタからたどり始め、類次継た。tポインタ・
テーブル103のポインタをたどり、継続ポインタ値が
ゼロになるまでIF部の内部コードのパラメータ部分と
一致するものがパラメータ部分格納テーブル+01に格
納されているか否かを調べる。−致判定は、I ?’部
の内部コードのパラメータ部分の変数指定のパラメータ
を除いた部分で行い、−致した場合、変数指定のあるパ
ラメータ部に対応するパラメータ部分格納テーブル10
1内パラメータ部の値を、T[パ部に指定しである変数
の値として変数値−時格納テーブル106に格納する。
この場合、パラメータ部分格納テーブル]0】内にIF
部の内部コードのパラメータ部分と一致するものが見つ
かる度に変数値を取り込み、変数値−時格納テーブル1
06の各行に順に格納していく。なお、IF部の内部コ
ードのパラメータ部分のパラメータ部に変数指定がない
場合は、特に変数値は取り込まれない。以−ヒの結果、
パラメータ部分に変数指定がない場合は、条件Type
 Qのときとは逆に、−致するものがないときに条件成
立とし、−致するものがあるときは、条件不成立とする
。また、パラメータ部分に変数指定がある場合は、−致
、不一致にかかわらず一担条件成女として制御指令決定
制御部141に戻る(他のType OのN O′I’
の無い条件と本Type 、1. (/’) N O′
I’の付いた条件とを組み合せIF部全全体しての条件
をh21足する変数値を生成する処理は後で述べるよう
にNOT条件満足変数値選択部147が行う)。
以上の結果、条件不成立となった場合、制御指令決定制
御部141は、次のルールを取り出し再び条件判定を始
める(ボックス]54)。条件成立で、いま条件判定を
行ったIF部が条件Type 0でかつ内部コードのパ
ラメータ部分に変数指定があれば、AND条件組合せ発
生部143をコールしくボックス155)、後述の手順
によりI P部のANr)条件を満足する変数値の組合
せを生成する(ボックス156)、組合せ結果は1条件
満足変数値格納テーブル107に格納される。また、い
ま条件判定を行ったTF部が条件Typeiでかつパラ
メータ部分に変数指定があった場合は。
NOT条件変数値選択部147をコールしくボックス1
516) 、後述の手順により、IF部のNOT条件を
満足する変数値を選択する(ボックス1517)。
選択結果は、AND条件を満足する変数値の組合せ結果
と同様に、条件hカ足変数値格納テーブル107に格納
される。
上記A N ])条件組合せ発生部】43、あるいは。
NOT条件条件満足変数値選択部子47−ルした結果、
条件を満足する変数値が存在しないときには、制御指令
決定制御部141は、いま処理しているルールを放棄し
、次のルールを取り出し、再び条件判定を始める(ボッ
クス157)、なお、いま条件判定を行った■ト′部の
内部コードのパラメータ部分に変数指定のあるパラメー
タ部がなければ、以上の処理は行わない(ボックス15
4゜156)。制御指令決定制御部141は、ここまで
の処理にあろルールのIF部に指定しであるすべての内
部コードに対して行った後、次の処理に移る(ボックス
15J1)。先ず、制御指令決定制御部141は、いま
処理しているルールの1’1lEN部の」つの内部コー
ドを取り出す。ルール・テーブル92において、その内
部コードに対し手続名が指定しである場合、制御指令決
定制御部141は、手続起!l1IJ部144をコール
して指定手続を起動する(ボックス1510)。手続名
が指定してない場合には、手続起動部144はコールさ
れない(ボックス159)。手続起動部144は、内部
コードに対し指定してあった手続名の手続きのエントリ
・アドレスを手続エントリ・テーブル111から探し出
し、そのアドレスの手続きを条件満足変数値格納テーブ
ル107を引数として=1−ルする。
手続き内では1条PP;12足変数値格納テーブル10
7の値を任意に変更することができる。次に、制御指令
決定制御部[41は、いま処理しているルールのTyp
e (ルール・テーブル92内ルールType)を調べ
、Typeが0の場合、中間績、!0書き込み部】45
をコールし、いま処理しているルールの団[(N部の取
り出した1つの内部コードをワーク・テーブル群内に格
納する(ボックス+511)。Typeが1の場合5制
御指令書き込み部146をコールし、いま処理している
ルールのTH14N部の取り出した1つの内部コード制
御指令格納テーブル105に格納する(ボックス15]
2)。制御指令決定制御部141は、ここまでの処理を
TIIEN部に指定しであるすべての内部コードについ
て繰り返す(ボックス+513)。中間結論書き迷み部
145は、先ず格納しようとする内部コードにおいてパ
ラメータ部分に変数指定のあるパラメータ部があった場
合、そのパラメータ部の内容を条件満足変数値格納テー
ブル1.07に格納されているある行の対応する変数値
と置き換えた内部コードを生成する。変数指定のあるパ
ラメータ部がない場合は、格納しようとする内部コード
をそのまま用いろ。次に、中間結論書き込み部L 45
は、生成した内部コードをワーク・テーブル群に格納す
る。この格納の方法は、前述の設備状態内部コード発生
部122が、発生させた内部コードをワーク・テーブル
群内に格納する場合と同じ方法で行う。この場合、前述
の方法と同じように、格納しようとする内部コードが、
すでにワーク・テーブル群内に格納されているときには
、その内部コードを新たに格納することはしない。なお
、以−Fの処理は、条件満足変数値格納テーブル]07
の変数値が格納されているすべての行について繰り返す
。制御指令書き込み部146は、中間結論書き込み部】
45と同じように、先ず書き込むべき内部コードを生成
する。
次に、その内部コードを制御指令格納テーブル105の
先頭から順に格納していく。この場合、格納しようとす
る内部コードがすでに制御指令格納テーブル105内に
存在すれば、その内部コードは新たに書き込まない。ま
た、中間結論書き込み部145と同じように、条件満足
変数値格納テ−プル107の変数値が格納されているす
べての行について、以上の処理を繰り返す。
第13図及び、第14図は、第11図のA N I)条
件組合わせ発生部14:3の動作フローチャートである
。
A N D条件組合わせ発生部143は、IF部のある
1つの内部コードとワーク・テーブル群に格納されてい
る内部コードとの条件判定を新たに行った際に取り込ん
だ変数の値の組合わせ(変数値−時格納テーブル106
に格納されている)と、それまでに条件判定をすませた
I F部の内部コードにおいてA N I)条件あるい
は、N OT条件を満足している変数の値の組合わせ(
条件満足変数値格納テーブル107に格納されている)
とを組合わせ、新たに、条件判定を行った内部コードも
含めてANT)条件を満足する変数の値の組合わせを作
成する(再び1条件満足変数値格納テーブル107に格
納する)。すなわち、第1:3図に示すように、変数値
−時格納テーブル106の各行とAND条件満足変数値
格納テーブル107の各行のすべでの組合わせに対し、
ANr)条件を満足するか否かを判定しくボックス16
]) 、満足すれば新たにAN+”)条件をh2i足す
る変数値の組合わせを生成し、記憶しておく(ボックス
162)。最後に、記憶しておいた新しい変数値の組合
わせを再び条件満足変数値格納テーブル107に格納す
る(ボックス163 )。ここで、A N T、)条件
を満足する場合というのは、変数値−時格納テーブル1
06側と条件満足変数値格納テーブル107側で、同じ
変数名の変数において値が一致するか、または−方の変
数が値を持たない(つまり、ブランクが人ってくる)場
合である。また、新たなANI’)条件も満足する変数
値の組合わせは、変数値−時格納テーブル1.06の行
と、条件満足変数値格納テーブル107の行で、AND
条件を満足する1組の組合わせにおいて、変数値の一致
する変数はその一致する値に、また−方がブランクの変
数は値を持つ方の変数の値に直すことによって生成する
。
第17図は、A N D条件満足変数値組合わせの生成
例を示す図であって、第17図(Q)は変数値−時格納
テーブル、第L7図(b)と(Q)は条件満足変数値格
納テーブルである。
この例では、変数値−時格納テーブルの1行目の変数値
(W=a、X=ニブランクY=b、7.=ブランク)と
1条件満足変数値格納テーブルの1行目の変数値(W=
ニブランク X= Q + ’! = b tZ=ブラ
ンク)はANr)条件を満足し、新たにA N +)条
件を満足する変数値の組合わせW = Fl gX=b
、Y=b、Z=ニブランク、条件満足変数値格納テーブ
ルの1行目に生成されている。
第15図は、第11図のN OT条件満足変数値選択部
147の処理内容を示す図である。
第15図において608.f;09は、それぞれ第;3
図のT F−TIIr4Nルール情報記憶部、内部コー
ド情報記憶部で、106,107はそれぞれ第11図の
変数値−時格納テーブル106側足変数値格納テーブル
である。なお、1.50はIF−T II E Nルー
ル情報記憶部に格納されているルールの例で、151は
内部コート情報記憶に格納されている設備群の状態及び
、 TIIEN部の結論を表わす情報であり、ここでは
、分り易くするために、それぞれ文字列で表現しておく
(実際には、既に説明したように、内部コード、パラメ
ータ部分等に分離され格納されている)。
NOT条件満足変数値選択部147は、他のType 
OのNOTの無い条件と、Type 1のNOTの付い
た条件とを組み合せfF部全全体しての条件を満足する
変数値を生成する処理を行う。この処理をルール150
を用い説明する。NOT条件満足変数値選択部147は
、最初の条件“IF(ステーション<×〉は<Y>作業
可能)″で取り込んだ、各ステーションの処理可能な作
業の内から、2番[1の条件” r F  NOT’ 
(ステーション〈×〉は作業中)″で取り込んだ作業中
のステーションを取り除き、ステーションが作業中でな
いので処理可能となる作業を選び出す処理を行う。すな
わち、NO”[’頭件満足変数値選択部147は、条件
満足変数値格納テーブル107に格納されているステー
ションで処理可能な作業という条件を満足する変段値と
変数値−時格納テーブル106に格納されている作業中
のステーションという条件を満足する変数値の間で同じ
変数名の変数すなわち、ステーションにおいて値が−致
するものを。
条件満足変数値格納テーブルJ07から取り除き残った
作業中でないステーションで処理可能も作業という条件
を満足する変数値を再び1条件源足変数値格納テーブル
1071−格納オろ。
以上説明したN C) ’I’条件濶足変数値選択部1
47の動作フローチャートを第16図に示す。
N OT条件潤足変数値選択部147は1条件源足変数
111’[格納テーブル]07から変数値を1つ取り出
り、 (ボックスIF;、1)、その変数値と変数値−
時格納テーブル1.06に格納されている各変数値との
間で、同じ変数名の変数において値が−致するか否かを
判定する(ボックス162,163)。
−致した場合は、条件%’tI足変数値格納テーブル1
07から次の変数値を取り出し、上記判定を繰り返す(
ボックスIFE4)、条件満足変数値格納テーブル10
7から取り出した変数値が、変数値−時格納テーブル1
’06のどの変数値とも同じ変数名の変数において値が
−致しなければ(ボックス1.65)、その変数値を一
時記憶しておく(ボックス166)、上記処理を条件満
足変数値格納テーブル107のすべての変数1直に対し
て行い(ボックス167)、最後に一時記憶しておいた
変数値を再び条件満足変数値格納テーブル107に格納
する(ボックス168)。
第15図の例では1条件源足変数値格納テーブル107
の2行目及び、:3行目に格納されている変数値が共通
の変数Xにおいて、変数値−時格納テーブル106のど
の変数値とも同じ値とならないので残されて、再び条件
満足変数値格納テーブル10′7に格納させている。
このように本実施例では、IF部の条件を否定的に扱う
処理ができ、内部コード情報記憶部609に格納する情
報jKを大幅に削減できる。これにより、従来に比へ制
御応答速度が向1−シ、高速応答を要求されろ制御対象
の制御に対してもルールに基づく条件判別制御を適用す
ることが可能となる。
〔発明の効果3 以上説明したように、本発明では、I F部の文字列と
状態記憶部の文字列が−致しなかった場合条件成立とす
る文字列を否定的に扱う条件判定処理を行うことができ
る。これにより「あろ設備は空でない」といった否定の
内容を条件“T I?N0T(設備は空)″と記述でき
″(設備は空でない)″という余分な文字列を必要とし
ない、従って上記否定の内容を条件に多数用いたルール
の場合、状態記憶部に格納する文字列を大幅に削減し、
従来に比べ高速に制御指定の決定を行うことができる。
従って高速性が要求される制御対象の条件判別制御に対
しても、専門のプログラム開発要員が不要となり、制御
技術者みずからTF” −THI?Nルールにより制御
方式を記述し、所望の条件判別制御を容易にできる。
【図面の簡単な説明】
第1図は本発明の実施例を示す設備群制御装置のブロッ
ク構成図、第2図は条件識別子を用いたルールの記述例
を示す図、第:3図は従来の設備群制御方式の機能拾成
図、第4図は人出力信号−内部コード対応情報記憶部の
詳細図、第5図はI +”−TIII:Nルール起動情
報記憶部の詳細図、第6図はT F−TIIHNルール
情報記憶部の詳細図、第7図は内部コード情報記憶部の
詳細図、第8図は手続情報記憶部の詳細図、第9J図は
制御部の機能ブロック図、第10図は制御部の動作フロ
ーチャート。 第11図は制御指令決定部の機能ブロックと各テーブル
の関係を示す図、第12図は制御指令決定部の動作フロ
ーチャート、第13図はANI)条件組合わせ発生部の
動作フローチャート、第14図はA N I)条件組合
わせ発生部において生成されろANr)条件を満足する
変数値の組合わせ生成例、第15図はN O’r条件満
足変数(jn選択部の処理内容を示す図、第16図はN
OT条件満足変数値の動作フローチャートである。

Claims (1)

    【特許請求の範囲】
  1. 1、設備群の条件と結論からなるルールを格納するルー
    ル記憶部、設備群の状態とルールで結論された内容を格
    納する状態記憶部、該状態記憶部に格納された情報と上
    記ルール記憶部に格納された条件とを比較照合し、条件
    が満足されたルールの結論を上記状態記憶部に格納する
    ルール運用部を有し、設備群に対する制御指令を決定す
    るルール処理方式において、ルールの条件に記述された
    設備群の状態が該状態記憶部に存在しなかつた場合条件
    成立として処理することを特徴とするルール処理方式。
JP61143082A 1986-06-20 1986-06-20 ル−ル処理方式 Pending JPS63631A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61143082A JPS63631A (ja) 1986-06-20 1986-06-20 ル−ル処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61143082A JPS63631A (ja) 1986-06-20 1986-06-20 ル−ル処理方式

Publications (1)

Publication Number Publication Date
JPS63631A true JPS63631A (ja) 1988-01-05

Family

ID=15330493

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61143082A Pending JPS63631A (ja) 1986-06-20 1986-06-20 ル−ル処理方式

Country Status (1)

Country Link
JP (1) JPS63631A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0262632A (ja) * 1988-08-29 1990-03-02 Nec Corp 否定条件節を含むルールの高速処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0262632A (ja) * 1988-08-29 1990-03-02 Nec Corp 否定条件節を含むルールの高速処理装置

Similar Documents

Publication Publication Date Title
US4628435A (en) Facilities control method
US4628434A (en) Facilities control method
Bullers et al. Artificial intelligence in manufacturing planning and control
Wang et al. Intelligent reasoning for process planning
KR940001563B1 (ko) 룰 베이스 시스템
Pande et al. An expert system for automatic extraction of machining features and tooling selection for automats
Mohammadian et al. Generating fuzzy rules by genetic algorithms
Gupta et al. Expert systems and their applications in production and operations management
ES2128087T3 (es) Procedimiento para el diseño de un regulador-fuzzy.
JPS61168068A (ja) ル−ル処理方式
JP2701442B2 (ja) ファジィ表現による知識ベースを持つエキスパートシステム
JP2838991B2 (ja) 工程手順チェックシステム
JPS6320557A (ja) ル−ル処理方式
JPS61136162A (ja) 設備群制御方式
JP2000112504A (ja) 生産工場のパラメータの最適化システム及びその計算用媒体
JPS61153738A (ja) ル−ル処理方式
JPS61177547A (ja) ル−ル処理方式
JPS62117035A (ja) ル−ル処理装置
JP2814391B2 (ja) ファジィ推論ルールのプログラミング装置
JPS62297942A (ja) ル−ル処理方式
JPS61133405A (ja) ル−ル処理方式
JPS60173635A (ja) 設備群制御方式
JPH10320187A (ja) システムモデル化方式及びデータ通信方式
Chu et al. The use of artificial intelligence in process planning
Horvath et al. Modeling of manufacturing processes using object oriented extended Petri nets and advanced knowledge representations