JPH04335434A - ファジィ推論と制御処理が可能な制御方法および装置 - Google Patents
ファジィ推論と制御処理が可能な制御方法および装置Info
- Publication number
- JPH04335434A JPH04335434A JP3133307A JP13330791A JPH04335434A JP H04335434 A JPH04335434 A JP H04335434A JP 3133307 A JP3133307 A JP 3133307A JP 13330791 A JP13330791 A JP 13330791A JP H04335434 A JPH04335434 A JP H04335434A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- control
- fuzzy
- unit
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims description 57
- 238000004364 calculation method Methods 0.000 claims description 23
- 230000003213 activating effect Effects 0.000 claims description 5
- 238000004148 unit process Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 10
- 238000004458 analytical method Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Landscapes
- Devices For Executing Special Programs (AREA)
- Feedback Control In General (AREA)
- Control By Computers (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】この発明は,ファジィ推論と制御
処理が可能な制御方法および装置に関する。
処理が可能な制御方法および装置に関する。
【0002】
【従来の技術】ファジィ推論演算専用のアーキテクチャ
をもつファジィ推論装置もあるが,多くのファジィ応用
技術では,マイクロ・コンピュータ等のコンピュータ・
システムをファジィ推論演算が可能なようにプログラム
することによりファジィ推論処理,ファジィ制御が行わ
れている。したがって,このコンピュータ・システムは
ファジィ推論処理とともに,このファジィ推論処理結果
に基づく機器の制御,その他のアクチュエータ等の制御
を行なうようにプログラムされていることが多い。
をもつファジィ推論装置もあるが,多くのファジィ応用
技術では,マイクロ・コンピュータ等のコンピュータ・
システムをファジィ推論演算が可能なようにプログラム
することによりファジィ推論処理,ファジィ制御が行わ
れている。したがって,このコンピュータ・システムは
ファジィ推論処理とともに,このファジィ推論処理結果
に基づく機器の制御,その他のアクチュエータ等の制御
を行なうようにプログラムされていることが多い。
【0003】
【発明が解決しようとする課題】このようなコンピュー
タ・システムでは,ファジィ推論処理と制御処理とを同
時に制御処理を実行することができないので,ファジィ
推論処理実行中は制御処理の実行が停止してしまうとい
う問題がある。
タ・システムでは,ファジィ推論処理と制御処理とを同
時に制御処理を実行することができないので,ファジィ
推論処理実行中は制御処理の実行が停止してしまうとい
う問題がある。
【0004】制御処理プログラム実行中に待機が発生し
ても同じように制御処理が停止した状態となるので,こ
れは全体からみれば無駄時間となっている。
ても同じように制御処理が停止した状態となるので,こ
れは全体からみれば無駄時間となっている。
【0005】上記の問題,とくに前者の問題があるので
,ファジィ推論処理実行時間をできるだけ短くして制御
処理実行のための時間を用意しておくために,従来はフ
ァジィ推論プログラムを小さくせざるを得なかった。 したがって,ファジィ推論の規模(入力変数の数,ルー
ルの数)を大きくすることに限界があった。
,ファジィ推論処理実行時間をできるだけ短くして制御
処理実行のための時間を用意しておくために,従来はフ
ァジィ推論プログラムを小さくせざるを得なかった。 したがって,ファジィ推論の規模(入力変数の数,ルー
ルの数)を大きくすることに限界があった。
【0006】この発明は,ファジィ推論処理と制御処理
との両方を行うシステムにおいて,これらの処理を効率
よく実行できるようにすることを目的とする。
との両方を行うシステムにおいて,これらの処理を効率
よく実行できるようにすることを目的とする。
【0007】
【課題を解決するための手段】この発明によるファジィ
推論と制御処理が可能な制御方法は,ファジィ推論処理
プログラムと制御処理プログラムを設け,上記ファジィ
推論処理プログラムを複数の単位ファジィ処理プログラ
ムに分割し,各単位ファジィ処理プログラム終了ごとに
次に実行すべき単位ファジィ処理プログラムの戻り先を
記憶して,上記制御処理プログラムの次に実行すべき処
理に移行し,上記制御処理プログラムの実行において待
機が発生した場合に次に実行すべき処理の戻り先を記憶
して,上記ファジィ推論処理プログラムの先に戻り先を
記憶した次に実行すべき単位ファジィ処理プログラムに
移行するものである。
推論と制御処理が可能な制御方法は,ファジィ推論処理
プログラムと制御処理プログラムを設け,上記ファジィ
推論処理プログラムを複数の単位ファジィ処理プログラ
ムに分割し,各単位ファジィ処理プログラム終了ごとに
次に実行すべき単位ファジィ処理プログラムの戻り先を
記憶して,上記制御処理プログラムの次に実行すべき処
理に移行し,上記制御処理プログラムの実行において待
機が発生した場合に次に実行すべき処理の戻り先を記憶
して,上記ファジィ推論処理プログラムの先に戻り先を
記憶した次に実行すべき単位ファジィ処理プログラムに
移行するものである。
【0008】この発明の一実施態様では,上記制御処理
プログラムを一定の順序で実行される複数の単位制御プ
ログラムから構成し,各単位制御プログラムの終了ごと
に次の単位制御プログラムに進むことが可能かどうかを
判定し,可能であれば次の単位制御プログラムの実行に
進み,可能でなければ次に実行すべき単位制御プログラ
ムの戻り先を記憶して,次に実行すべき単位ファジィ処
理プログラムに移行する。
プログラムを一定の順序で実行される複数の単位制御プ
ログラムから構成し,各単位制御プログラムの終了ごと
に次の単位制御プログラムに進むことが可能かどうかを
判定し,可能であれば次の単位制御プログラムの実行に
進み,可能でなければ次に実行すべき単位制御プログラ
ムの戻り先を記憶して,次に実行すべき単位ファジィ処
理プログラムに移行する。
【0009】この発明の他の実施態様では,上記単位フ
ァジィ処理プログラム実行中に割込が発生したときに,
単位ファジィ処理プログラムの次に実行すべき戻り先を
記憶して割込処理に移り,割込処理終了後,記憶した戻
り先のプログラム実行に戻る。
ァジィ処理プログラム実行中に割込が発生したときに,
単位ファジィ処理プログラムの次に実行すべき戻り先を
記憶して割込処理に移り,割込処理終了後,記憶した戻
り先のプログラム実行に戻る。
【0010】上記単位ファジィ処理プログラムは,たと
えば前件部処理,後件部処理および確定演算処理の各プ
ログラムから構成される,または各出力変数についての
ファジィ推論処理のプログラムから構成される。
えば前件部処理,後件部処理および確定演算処理の各プ
ログラムから構成される,または各出力変数についての
ファジィ推論処理のプログラムから構成される。
【0011】この発明によるファジィ推論と制御処理が
可能な制御装置は,ファジィ推論処理手段と制御処理手
段とを含み,上記ファジィ推論処理手段は,複数に分割
された単位処理終了ごとに上記制御処理手段を起動し,
上記制御処理手段は待機が発生した場合に上記ファジィ
推論処理手段を起動するように構成されている。
可能な制御装置は,ファジィ推論処理手段と制御処理手
段とを含み,上記ファジィ推論処理手段は,複数に分割
された単位処理終了ごとに上記制御処理手段を起動し,
上記制御処理手段は待機が発生した場合に上記ファジィ
推論処理手段を起動するように構成されている。
【0012】上記ファジィ推論処理手段および制御処理
手段が起動されたときに処理が始まる開始点を記憶する
ために記憶手段が設けられる。
手段が起動されたときに処理が始まる開始点を記憶する
ために記憶手段が設けられる。
【0013】この発明の一実施態様では,上記制御装置
は割込制御手段をさらに備え,この割込制御手段は,上
記ファジィ推論処理手段の動作中に割込が発生したとき
に上記ファジィ推論処理手段の動作を停止させ,対応す
る割込処理が終了したのち上記ファジィ推論処理手段を
上記の停止した処理から開始するよう起動する。
は割込制御手段をさらに備え,この割込制御手段は,上
記ファジィ推論処理手段の動作中に割込が発生したとき
に上記ファジィ推論処理手段の動作を停止させ,対応す
る割込処理が終了したのち上記ファジィ推論処理手段を
上記の停止した処理から開始するよう起動する。
【0014】この発明によるファジィ推論が可能な制御
装置は,一定の順序で結合した複数の単位制御手段と,
ファジィ推論処理手段と,上記単位制御手段による処理
が終了したときに次の単位制御手段に進むことが可能か
どうかを判定する手段と,可能であるときに次の単位制
御手段を起動し,可能でないときに上記ファジィ推論処
理手段を起動する起動手段とから構成される。
装置は,一定の順序で結合した複数の単位制御手段と,
ファジィ推論処理手段と,上記単位制御手段による処理
が終了したときに次の単位制御手段に進むことが可能か
どうかを判定する手段と,可能であるときに次の単位制
御手段を起動し,可能でないときに上記ファジィ推論処
理手段を起動する起動手段とから構成される。
【0015】この発明による制御処理が可能なファジィ
推論装置は,一定の順序で結合した複数の単位ファジィ
処理手段と,制御処理手段と,上記単位ファジィ処理手
段による処理が終了したときに上記制御処理手段を起動
する手段とから構成される。
推論装置は,一定の順序で結合した複数の単位ファジィ
処理手段と,制御処理手段と,上記単位ファジィ処理手
段による処理が終了したときに上記制御処理手段を起動
する手段とから構成される。
【0016】
【作用】ファジィ推論処理プログラムが複数の単位ファ
ジィ処理プログラムに分割される。
ジィ処理プログラムに分割される。
【0017】各単位ファジィ処理プログラム終了ごとに
次に実行すべき単位ファジィ処理プログラムの戻り先を
メモリに記憶して,制御処理プログラムの次に実行すべ
き処理に移行する。
次に実行すべき単位ファジィ処理プログラムの戻り先を
メモリに記憶して,制御処理プログラムの次に実行すべ
き処理に移行する。
【0018】他方,制御処理プログラムの実行において
待機が発生した場合には,次に実行すべき処理の戻り先
をメモリに記憶して,上記ファジィ推論処理プログラム
の先に戻り先を記憶した次に実行すべき単位ファジィ処
理プログラムに移行する。
待機が発生した場合には,次に実行すべき処理の戻り先
をメモリに記憶して,上記ファジィ推論処理プログラム
の先に戻り先を記憶した次に実行すべき単位ファジィ処
理プログラムに移行する。
【0019】このようにして,ファジィ推論処理プログ
ラムと制御処理プログラムとが交互に間断なく実行され
る。
ラムと制御処理プログラムとが交互に間断なく実行され
る。
【0020】
【発明の効果】以上のようにしてこの発明によると,フ
ァジィ推論処理プログラムが複数の単位ファジィ処理プ
ログラムに分割され,各単位ファジィ処理プログラムの
終了ごとに制御処理プログラムが実行されるので,制御
処理を適切なタイミングで行うことができる。
ァジィ推論処理プログラムが複数の単位ファジィ処理プ
ログラムに分割され,各単位ファジィ処理プログラムの
終了ごとに制御処理プログラムが実行されるので,制御
処理を適切なタイミングで行うことができる。
【0021】また,制御処理プログラムにおいて待機が
発生したときにはその時間を利用してファジィ推論処理
が行われるので,無駄時間がなく,全体の処理効率を高
めることができる。
発生したときにはその時間を利用してファジィ推論処理
が行われるので,無駄時間がなく,全体の処理効率を高
めることができる。
【0022】そして,ファジィ推論処理プログラムを大
型化しても制御処理に大きな影響を与えることがないの
で,入力変数の種類数やルール数を増大させることが可
能となる。
型化しても制御処理に大きな影響を与えることがないの
で,入力変数の種類数やルール数を増大させることが可
能となる。
【0023】
【実施例】図1はファジィ推論演算処理が可能な制御装
置または制御処理可能なファジィ推論装置の構成を示す
ものである。
置または制御処理可能なファジィ推論装置の構成を示す
ものである。
【0024】この制御装置は,コンピュータ・システム
,好ましくはマイクロ・コンピュータ・システムによっ
て実現される。制御装置は,CPUを含む制御演算部1
0,メモリ13,入力インターフェイス11,出力イン
ターフェイス12および割込インターフェイス14から
構成されている。
,好ましくはマイクロ・コンピュータ・システムによっ
て実現される。制御装置は,CPUを含む制御演算部1
0,メモリ13,入力インターフェイス11,出力イン
ターフェイス12および割込インターフェイス14から
構成されている。
【0025】メモリ13はROMおよびRAMから構成
される。このメモリ13には,後述するファジィ推論モ
ジュール(プログラム),メイン制御プログラム,割込
処理プログラム(ルーチン)等の各種プログラム,これ
らのプログラムの実行処理に用いる制御パラメータ,割
込プログラム・アドレス,ファジィ推論のためのルール
およびメンバーシップ関数を表わすデータ,その他の各
種データが記憶される。
される。このメモリ13には,後述するファジィ推論モ
ジュール(プログラム),メイン制御プログラム,割込
処理プログラム(ルーチン)等の各種プログラム,これ
らのプログラムの実行処理に用いる制御パラメータ,割
込プログラム・アドレス,ファジィ推論のためのルール
およびメンバーシップ関数を表わすデータ,その他の各
種データが記憶される。
【0026】入力インターフェイス11はセンサ,入力
装置等から与えられる入力データを取込んで制御演算部
10に与える。ファジィ推論結果を表わす出力データ,
その他の被制御機器等を制御するための制御演算部10
から出力される出力データは出力インターフェイス12
を介して出力される。
装置等から与えられる入力データを取込んで制御演算部
10に与える。ファジィ推論結果を表わす出力データ,
その他の被制御機器等を制御するための制御演算部10
から出力される出力データは出力インターフェイス12
を介して出力される。
【0027】被制御機器,その他の外部機器からの割込
要求信号は割込インターフェイス14から制御演算部1
0に入力する。
要求信号は割込インターフェイス14から制御演算部1
0に入力する。
【0028】制御演算部10は,入力インターフェイス
11から与えられる入力データを用いて,メモリ13に
設定されているルールおよびメンバーシップ関数にした
がってファジィ推論演算処理を実行するとともに,この
ファジィ推論演算処理によって得られた演算結果をその
まま,または加工して出力データとして出力インターフ
ェイス12を通して被制御機器に与えることにより,被
制御機器を制御する。また,制御演算部10は入力イン
ターフェイス11から入力する入力データに所定の加工
処理を加えて出力インターフェイス12から出力データ
として出力し,この出力データを用いて被制御機器を制
御することもできるし,そのようにしてもよい。さらに
制御演算部10は割込インターフェイス14を通して入
力する割込要求信号に応じた割込処理を行い,必要なら
ば割込処理結果を出力データとして出力インターフェイ
ス12を介して出力する。
11から与えられる入力データを用いて,メモリ13に
設定されているルールおよびメンバーシップ関数にした
がってファジィ推論演算処理を実行するとともに,この
ファジィ推論演算処理によって得られた演算結果をその
まま,または加工して出力データとして出力インターフ
ェイス12を通して被制御機器に与えることにより,被
制御機器を制御する。また,制御演算部10は入力イン
ターフェイス11から入力する入力データに所定の加工
処理を加えて出力インターフェイス12から出力データ
として出力し,この出力データを用いて被制御機器を制
御することもできるし,そのようにしてもよい。さらに
制御演算部10は割込インターフェイス14を通して入
力する割込要求信号に応じた割込処理を行い,必要なら
ば割込処理結果を出力データとして出力インターフェイ
ス12を介して出力する。
【0029】図2はメモリ13に設定されている制御パ
ラメータ・エリアの内容を示している。
ラメータ・エリアの内容を示している。
【0030】制御パラメータ・エリアには,ファジィ推
論モジュール内の単位ファジィ処理を終了したのちメイ
ン制御プログラムに移るときに,またはファジィ推論モ
ジュールを実行中に割込発生のために割込プログラムに
移るときに,これらのメイン制御プログラムまたは割込
プログラムからファジィ推論モジュールに戻るために,
次に実行すべきファジィ推論モジュール・プログラムの
格納されているメモリのアドレス(戻りアドレス)を記
憶するエリアM1が設けられている。
論モジュール内の単位ファジィ処理を終了したのちメイ
ン制御プログラムに移るときに,またはファジィ推論モ
ジュールを実行中に割込発生のために割込プログラムに
移るときに,これらのメイン制御プログラムまたは割込
プログラムからファジィ推論モジュールに戻るために,
次に実行すべきファジィ推論モジュール・プログラムの
格納されているメモリのアドレス(戻りアドレス)を記
憶するエリアM1が設けられている。
【0031】制御パラメータ・エリアには同じように,
メイン制御プログラムへの戻りアドレスを記憶するエリ
アM2が設けられている。このエリアM2は,メイン制
御プログラム内の単位制御プログラム実行を終了したの
ちファジィ推論モジュールに移るときに,またはメイン
制御プログラムを実行中に割込発生のために割込プログ
ラムに移るときに,これらのファジィ推論モジュールま
たは割込プログラムからメイン制御プログラムに戻るた
めに,次に実行すべきメイン制御プログラムの格納され
ているメモリのアドレス(戻りアドレス)を記憶するも
のである。
メイン制御プログラムへの戻りアドレスを記憶するエリ
アM2が設けられている。このエリアM2は,メイン制
御プログラム内の単位制御プログラム実行を終了したの
ちファジィ推論モジュールに移るときに,またはメイン
制御プログラムを実行中に割込発生のために割込プログ
ラムに移るときに,これらのファジィ推論モジュールま
たは割込プログラムからメイン制御プログラムに戻るた
めに,次に実行すべきメイン制御プログラムの格納され
ているメモリのアドレス(戻りアドレス)を記憶するも
のである。
【0032】制御パラメータ・エリアにはさらに,ファ
ジィ推論処理のために入力インターフェイス11を介し
て与えられる入力データを記憶するエリアM4,このエ
リアM4にすべての入力変数に関する入力データがセッ
トされているかどうかを示す入力データ・セット・フラ
グとして用いられるエリアM3,ファジィ推論モジュー
ル・プログラムにしたがうファジィ推論演算により得ら
れた結果を出力データとして記憶するエリアM6,およ
びすべての出力変数に関する出力データがエリアM6に
セットされているかどうかを示す出力データ・セット・
フラグとして用いられるエリアM5が設けられている。
ジィ推論処理のために入力インターフェイス11を介し
て与えられる入力データを記憶するエリアM4,このエ
リアM4にすべての入力変数に関する入力データがセッ
トされているかどうかを示す入力データ・セット・フラ
グとして用いられるエリアM3,ファジィ推論モジュー
ル・プログラムにしたがうファジィ推論演算により得ら
れた結果を出力データとして記憶するエリアM6,およ
びすべての出力変数に関する出力データがエリアM6に
セットされているかどうかを示す出力データ・セット・
フラグとして用いられるエリアM5が設けられている。
【0033】図7はメモリ13に設定されている割込プ
ログラム・アドレス・エリアを示すものである。
ログラム・アドレス・エリアを示すものである。
【0034】割込要求信号(割込要因)P1 〜Pn
に応じて実行すべき割込プログラム(ルーチン)がメモ
リ13にあらかじめ格納されている。この割込プログラ
ム・アドレス・エリアは割込要因ごとに,実行すべき割
込プログラムが格納されているエリアの先頭アドレスを
記憶するものである。この先頭アドレス・データを参照
して,割込が発生したときに対応する割込プログラムに
ジャンプすることができる。
に応じて実行すべき割込プログラム(ルーチン)がメモ
リ13にあらかじめ格納されている。この割込プログラ
ム・アドレス・エリアは割込要因ごとに,実行すべき割
込プログラムが格納されているエリアの先頭アドレスを
記憶するものである。この先頭アドレス・データを参照
して,割込が発生したときに対応する割込プログラムに
ジャンプすることができる。
【0035】図3はファジィ推論モジュール(プログラ
ム)の一例を示している。ファジィ推論演算処理は,前
件部処理,後件部処理および確定演算処理を含んでいる
。
ム)の一例を示している。ファジィ推論演算処理は,前
件部処理,後件部処理および確定演算処理を含んでいる
。
【0036】前件部処理は,入力データをルールによっ
て規定される対応するメンバーシップ関数に適用してメ
ンバーシップ関数に対する入力データの適合度を求める
処理,および1つのルールに属するメンバーシップ関数
ごとの適合度間で所定の演算(たとえばMIN演算)を
行いルールごとの適合度を求める処理を含む。
て規定される対応するメンバーシップ関数に適用してメ
ンバーシップ関数に対する入力データの適合度を求める
処理,および1つのルールに属するメンバーシップ関数
ごとの適合度間で所定の演算(たとえばMIN演算)を
行いルールごとの適合度を求める処理を含む。
【0037】後件部処理は,各ルールにおいて,その適
合度を後件部のメンバーシップ関数に作用させる(たと
えばトランケーション:MIN演算)ものである。後件
部の出力変数を同じくするルールが複数個存在する場合
には,それらのルールの後件部処理結果間で所定の演算
(たとえばMAX演算)が行われる。
合度を後件部のメンバーシップ関数に作用させる(たと
えばトランケーション:MIN演算)ものである。後件
部の出力変数を同じくするルールが複数個存在する場合
には,それらのルールの後件部処理結果間で所定の演算
(たとえばMAX演算)が行われる。
【0038】確定演算処理は後件部の処理結果を出力変
数ごとに非ファジィ化(たとえば重心演算)するもので
ある。
数ごとに非ファジィ化(たとえば重心演算)するもので
ある。
【0039】このようなファジィ推論モジュールが,入
力データ・セット・フラグのチェック処理(ステップ2
1),前件部処理(ステップ23),後件部処理(ステ
ップ25)および確定演算処理(ステップ27)の4つ
の単位ファジィ処理プログラムに分割され(これらの処
理にそれぞれFP1,FP2,FP3およびFP4の符
号を付けておく),各単位ファジィ処理間に状態チェッ
ク・プログラムが挿入されている(ステップ22,24
,26,29)。
力データ・セット・フラグのチェック処理(ステップ2
1),前件部処理(ステップ23),後件部処理(ステ
ップ25)および確定演算処理(ステップ27)の4つ
の単位ファジィ処理プログラムに分割され(これらの処
理にそれぞれFP1,FP2,FP3およびFP4の符
号を付けておく),各単位ファジィ処理間に状態チェッ
ク・プログラムが挿入されている(ステップ22,24
,26,29)。
【0040】ステップ21の入力データ・セット・フラ
グのチェック処理は,制御パラメータ・エリア内のエリ
アM4にすべての入力データが記憶されエリアM3のフ
ラグがオンとなっているかどうかをみるものである。ま
た,ステップ27の確定演算処理には,確定演算処理結
果を出力データとしてエリアM6に記憶する処理(ステ
ップ28)が付随している。
グのチェック処理は,制御パラメータ・エリア内のエリ
アM4にすべての入力データが記憶されエリアM3のフ
ラグがオンとなっているかどうかをみるものである。ま
た,ステップ27の確定演算処理には,確定演算処理結
果を出力データとしてエリアM6に記憶する処理(ステ
ップ28)が付随している。
【0041】状態チェック処理の具体例が図4に示され
ている。単位ファジィ処理が終了するとこの状態チェッ
ク処理に進み,終了した単位ファジィ処理の次に実行す
べき単位ファジィ処理が格納されているメモリ13のエ
リアの先頭アドレスがエリアM1に戻りアドレスとして
セットされ(ステップ31),エリアM2に格納されて
いる戻りアドレスが読出されてこのアドレスから始まる
メイン制御プログラムにジャンプする(ステップ32)
。
ている。単位ファジィ処理が終了するとこの状態チェッ
ク処理に進み,終了した単位ファジィ処理の次に実行す
べき単位ファジィ処理が格納されているメモリ13のエ
リアの先頭アドレスがエリアM1に戻りアドレスとして
セットされ(ステップ31),エリアM2に格納されて
いる戻りアドレスが読出されてこのアドレスから始まる
メイン制御プログラムにジャンプする(ステップ32)
。
【0042】すなわち,ファジィ推論モジュールを構成
する単位ファジィ処理の終了ごとにメイン制御プログラ
ムに一旦移行する訳である。
する単位ファジィ処理の終了ごとにメイン制御プログラ
ムに一旦移行する訳である。
【0043】図5はファジィ推論モジュールの他の例を
示している。ここではファジィ推論モジュールは出力変
数ごとに単位ファジィ処理に分割されている。
示している。ここではファジィ推論モジュールは出力変
数ごとに単位ファジィ処理に分割されている。
【0044】複数の出力変数に関するルールが設定され
ている場合に,上述した前件部処理,後件部処理および
確定演算処理が各出力変数yiごとに行われ(ステップ
43),1つの出力変数yiについての上記のファジィ
推論処理結果が出力データ・エリアM6にセットされ(
ステップ44),最後に出力変数の番号を示すカウンタ
の値iがインクレメントされる(ステップ45)。この
後,状態チェック処理に進む(ステップ46)。
ている場合に,上述した前件部処理,後件部処理および
確定演算処理が各出力変数yiごとに行われ(ステップ
43),1つの出力変数yiについての上記のファジィ
推論処理結果が出力データ・エリアM6にセットされ(
ステップ44),最後に出力変数の番号を示すカウンタ
の値iがインクレメントされる(ステップ45)。この
後,状態チェック処理に進む(ステップ46)。
【0045】ステップ41,42,49は図3のステッ
プ21,22,29と基本的に同じであるが,ステップ
41に関して,カウンタの値iで指定される出力変数に
関係する(ルールによって関連づけられている)入力デ
ータがセットされていれば入力データ・セット・フラグ
がオンとなる点で異なっている。全出力変数についての
処理が終了したときには上記のカウンタの値iが初期化
される(ステップ47,48)。この処理は入力データ
・セット・フラグのチェック処理(ステップ41)に付
随している。
プ21,22,29と基本的に同じであるが,ステップ
41に関して,カウンタの値iで指定される出力変数に
関係する(ルールによって関連づけられている)入力デ
ータがセットされていれば入力データ・セット・フラグ
がオンとなる点で異なっている。全出力変数についての
処理が終了したときには上記のカウンタの値iが初期化
される(ステップ47,48)。この処理は入力データ
・セット・フラグのチェック処理(ステップ41)に付
随している。
【0046】図6はメイン制御プログラムの一部を示し
ている。
ている。
【0047】メイン制御プログラムも,複数の単位制御
処理プログラム(ステップ51,53,55;これらを
CP1,CP2,CP3とする)に分割されている。単
位制御処理は,制御の機能に応じて分割されたものであ
っても,被制御機器に応じて分割されたものであっても
よい。これらの単位制御処理プログラムは一定の順序で
リンクされている。
処理プログラム(ステップ51,53,55;これらを
CP1,CP2,CP3とする)に分割されている。単
位制御処理は,制御の機能に応じて分割されたものであ
っても,被制御機器に応じて分割されたものであっても
よい。これらの単位制御処理プログラムは一定の順序で
リンクされている。
【0048】このような単位制御処理プログラムが終了
するごとに,次の単位制御プログラムに進むことが可能
かどうか(進むことができない場合は一般に待機となる
)がチェックされる(ステップ52,54,56)。
するごとに,次の単位制御プログラムに進むことが可能
かどうか(進むことができない場合は一般に待機となる
)がチェックされる(ステップ52,54,56)。
【0049】次の単位制御処理プログラムに進むことが
できない場合には,待機することなく,次に進むべき単
位制御処理プログラムが格納されているメモリ13のエ
リアの先頭アドレスが戻りアドレスとしてエリアM2に
セットされ(ステップ57),エリアM1に格納されて
いる戻りアドレスが読出され,この戻りアドレスから始
まる単位ファジィ処理プログラムへジャンプする(ステ
ップ58)。
できない場合には,待機することなく,次に進むべき単
位制御処理プログラムが格納されているメモリ13のエ
リアの先頭アドレスが戻りアドレスとしてエリアM2に
セットされ(ステップ57),エリアM1に格納されて
いる戻りアドレスが読出され,この戻りアドレスから始
まる単位ファジィ処理プログラムへジャンプする(ステ
ップ58)。
【0050】たとえば,制御処理CP1(ステップ51
)が終了したときに次の制御処理CP2に進むことがで
きるかどうかがチェックされる(ステップ52)。制御
処理CP2を実行するためにはエリアM6にファジィ推
論結果を示す出力データがセットされていることが必要
であるとすると,ステップ52ではエリアM5の出力デ
ータ・セット・フラグがチェックされる。このフラグが
オフであると制御処理CP2には進むことができない。 そこで,ファジィ推論を行うためにファジィ推論モジュ
ールに進むことになる(ステップ57,58)。
)が終了したときに次の制御処理CP2に進むことがで
きるかどうかがチェックされる(ステップ52)。制御
処理CP2を実行するためにはエリアM6にファジィ推
論結果を示す出力データがセットされていることが必要
であるとすると,ステップ52ではエリアM5の出力デ
ータ・セット・フラグがチェックされる。このフラグが
オフであると制御処理CP2には進むことができない。 そこで,ファジィ推論を行うためにファジィ推論モジュ
ールに進むことになる(ステップ57,58)。
【0051】このようにして,メイン制御プログラムで
待機せざるを得ないような事態が生じたときには,待機
することなく,ファジィ推論モジュールに移行してファ
ジィ推論処理が行われる。ファジィ推論モジュールにお
いて単位ファジィ処理終了ごとに再びメイン制御プログ
ラムに戻る。メイン制御プログラムとファジィ推論処理
とが交互に効率よく行われるようになる。
待機せざるを得ないような事態が生じたときには,待機
することなく,ファジィ推論モジュールに移行してファ
ジィ推論処理が行われる。ファジィ推論モジュールにお
いて単位ファジィ処理終了ごとに再びメイン制御プログ
ラムに戻る。メイン制御プログラムとファジィ推論処理
とが交互に効率よく行われるようになる。
【0052】ステップ57でエリアM2にセットする戻
りアドレスは単位制御処理の先頭アドレスではなく,ス
テップ52,54,56等の判定処理のアドレスでもよ
い。そうすれば,単位ファジィ処理が終了してメイン制
御プログラムに戻ってきたときに再び次の制御処理に進
むことができるかどうかが判定され,進むことができな
ければ再びファジィ推論モジュールに戻ることができる
。もっとも,各単位制御処理の先頭アドレスには,その
制御処理を開始することが可能かどうかを判定するステ
ップを格納しておくようにしてもよい。
りアドレスは単位制御処理の先頭アドレスではなく,ス
テップ52,54,56等の判定処理のアドレスでもよ
い。そうすれば,単位ファジィ処理が終了してメイン制
御プログラムに戻ってきたときに再び次の制御処理に進
むことができるかどうかが判定され,進むことができな
ければ再びファジィ推論モジュールに戻ることができる
。もっとも,各単位制御処理の先頭アドレスには,その
制御処理を開始することが可能かどうかを判定するステ
ップを格納しておくようにしてもよい。
【0053】図10(A) は従来の処理手順を示すも
のであり,単位制御処理間に待機状態が必要である。
のであり,単位制御処理間に待機状態が必要である。
【0054】これに対して図10(B) は上述した実
施例の処理手順を示すものであり,単位制御処理と単位
ファジィ処理とが交互に行われる結果,待機時間がなく
,無駄時間が省かれ,処理効率が向上している。
施例の処理手順を示すものであり,単位制御処理と単位
ファジィ処理とが交互に行われる結果,待機時間がなく
,無駄時間が省かれ,処理効率が向上している。
【0055】ファジィ推論モジュールの実行中に割込信
号が入力した場合には,実行中のファジィ推論処理を中
止して図8に示す割込処理プログラムに移る。
号が入力した場合には,実行中のファジィ推論処理を中
止して図8に示す割込処理プログラムに移る。
【0056】中止したファジィ推論モジュールの次の処
理ステップが格納されているメモリのエリアのアドレス
が戻りアドレスとしてエリアM1にセットされ(ステッ
プ61),割込解析処理に進む。この割込解析処理では
,まず割込要因がP1 〜Pn のうちのどれかが判断
される(ステップ62)。割込要因が分ると,割込プロ
グラム・アドレス・エリア(図7)を参照してその割込
要因に処理のための先頭アドレスが読出され,その先頭
アドレスにジャンプする(ステップ63)。
理ステップが格納されているメモリのエリアのアドレス
が戻りアドレスとしてエリアM1にセットされ(ステッ
プ61),割込解析処理に進む。この割込解析処理では
,まず割込要因がP1 〜Pn のうちのどれかが判断
される(ステップ62)。割込要因が分ると,割込プロ
グラム・アドレス・エリア(図7)を参照してその割込
要因に処理のための先頭アドレスが読出され,その先頭
アドレスにジャンプする(ステップ63)。
【0057】ジャンプした割込プログラムにおいては,
図9を参照して,割込要因に応じた処理が行われる(ス
テップ71)。この処理が終了したのち,エリアM1の
戻りアドレスが読出され,この戻りアドレスによって指
示されるファジィ推論モジュールのステップに戻ること
になる(ステップ72)。
図9を参照して,割込要因に応じた処理が行われる(ス
テップ71)。この処理が終了したのち,エリアM1の
戻りアドレスが読出され,この戻りアドレスによって指
示されるファジィ推論モジュールのステップに戻ること
になる(ステップ72)。
【0058】メイン制御プログラムの実行中に割込が発
生した場合にも同じようにして割込処理に移り,割込処
理の終了後,メイン制御プログラムに戻る。
生した場合にも同じようにして割込処理に移り,割込処
理の終了後,メイン制御プログラムに戻る。
【図1】ファジィ推論処理可能な制御装置の構成を示す
ブロック図である。
ブロック図である。
【図2】制御パラメータ・エリアを示す。
【図3】ファジィ推論モジュール・プログラムを示すフ
ロー・チャートである。
ロー・チャートである。
【図4】状態チェック処理を示すフロー・チャートであ
る。
る。
【図5】ファジィ推論モジュール・プログラムの他の例
を示すフロー・チャートである。
を示すフロー・チャートである。
【図6】メイン制御プログラムを示すフロー・チャート
である。
である。
【図7】割込プログラム・アドレス・エリアを示す。
【図8】割込処理プログラムを示すフロー・チャートで
ある。
ある。
【図9】割込プログラムを示すフロー・チャートである
。
。
【図10】(A) および(B) は従来例とこの発明
の処理手順を比較するものである。
の処理手順を比較するものである。
10 制御演算部
13 メモリ
Claims (12)
- 【請求項1】 ファジィ推論処理プログラムと制御処
理プログラムを設け,上記ファジィ推論処理プログラム
を複数の単位ファジィ処理プログラムに分割し,各単位
ファジィ処理プログラム終了ごとに次に実行すべき単位
ファジィ処理プログラムの戻り先を記憶して,上記制御
処理プログラムの次に実行すべき処理に移行し,上記制
御処理プログラムの実行において待機が発生した場合に
次に実行すべき処理の戻り先を記憶して,上記ファジィ
推論処理プログラムの先に戻り先を記憶した次に実行す
べき単位ファジィ処理プログラムに移行する,ファジィ
推論と制御処理が可能な制御方法。 - 【請求項2】 上記制御処理プログラムを一定の順序
で実行される複数の単位制御プログラムから構成し,各
単位制御プログラムの終了ごとに次の単位制御プログラ
ムに進むことが可能かどうかを判定し,可能であれば次
の単位制御プログラムの実行に進み,可能でなければ次
に実行すべき単位制御プログラムの戻り先を記憶して,
次に実行すべき単位ファジィ処理プログラムに移行する
,請求項1に記載の制御方法。 - 【請求項3】 上記単位ファジィ処理プログラム実行
中に割込が発生したときに,単位ファジィ処理プログラ
ムの次に実行すべき戻り先を記憶して割込処理に移り,
割込処理終了後,記憶した戻り先のプログラム実行に戻
る,請求項1に記載の制御方法。 - 【請求項4】 上記単位ファジィ処理プログラムが,
前件部処理,後件部処理および確定演算処理の各プログ
ラムを含む請求項1に記載の制御方法。 - 【請求項5】 上記単位ファジィ処理プログラムが,
各出力変数についてのファジィ推論処理のプログラムを
含む請求項1に記載の制御方法。 - 【請求項6】 ファジィ推論処理手段と制御処理手段
とを含み,上記ファジィ推論処理手段は,複数に分割さ
れた単位処理終了ごとに上記制御処理手段を起動し,上
記制御処理手段は待機が発生した場合に上記ファジィ推
論処理手段を起動する,ファジィ推論と制御処理が可能
な制御装置。 - 【請求項7】 上記ファジィ推論処理手段および制御
処理手段が起動されたときに処理が始まる開始点を記憶
する手段を備えている請求項6に記載の制御装置。 - 【請求項8】 割込制御手段をさらに備え,この割込
制御手段は,上記ファジィ推論処理手段の動作中に割込
が発生したときに上記ファジィ推論処理手段の動作を停
止させ,対応する割込処理が終了したのち上記ファジィ
推論処理手段を上記の停止した処理から開始するよう起
動する,請求項6に記載の制御装置。 - 【請求項9】 一定の順序で結合した複数の単位制御
手段と,ファジィ推論処理手段と,上記単位制御手段に
よる処理が終了したときに次の単位制御手段に進むこと
が可能かどうかを判定する手段と,可能であるときに次
の単位制御手段を起動し,可能でないときに上記ファジ
ィ推論処理手段を起動する起動手段と,を備えたファジ
ィ推論が可能な制御装置。 - 【請求項10】 一定の順序で結合した複数の単位フ
ァジィ処理手段と,制御処理手段と,上記単位ファジィ
処理手段による処理が終了したときに上記制御処理手段
を起動する手段と,を備えた制御処理が可能なファジィ
推論装置。 - 【請求項11】 上記単位ファジィ処理手段の動作中
に割込が発生したときに上記単位ファジィ処理手段の動
作を停止させ,対応する割込処理が終了したのち上記単
位ファジィ処理手段を上記の停止した処理から開始する
よう起動する割込制御手段をさらに備えている請求項1
0に記載のファジィ推論装置。 - 【請求項12】 上記複数の単位ファジィ処理手段が
,前件部処理手段,後件部処理手段および確定演算処理
手段を含んでいる請求項10に記載のファジィ推論装置
。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3133307A JPH04335434A (ja) | 1991-05-10 | 1991-05-10 | ファジィ推論と制御処理が可能な制御方法および装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3133307A JPH04335434A (ja) | 1991-05-10 | 1991-05-10 | ファジィ推論と制御処理が可能な制御方法および装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04335434A true JPH04335434A (ja) | 1992-11-24 |
Family
ID=15101612
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3133307A Pending JPH04335434A (ja) | 1991-05-10 | 1991-05-10 | ファジィ推論と制御処理が可能な制御方法および装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH04335434A (ja) |
-
1991
- 1991-05-10 JP JP3133307A patent/JPH04335434A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH06309177A (ja) | マイクロコンピュータ | |
US4722043A (en) | Control system with changable time-shared execution of ladder and non-ladder programs | |
JPS63250702A (ja) | シ−ケンスコントロ−ラ | |
JPH04335434A (ja) | ファジィ推論と制御処理が可能な制御方法および装置 | |
JPS62254208A (ja) | Pmcパラメ−タ初期化方式 | |
JPS59114602A (ja) | プログラマブルコントロ−ラ | |
US5287509A (en) | Multitasking system for in-procedure loops | |
JP3024719B2 (ja) | プログラマブルコントローラの演算処理方法 | |
JP2000207003A (ja) | プログラマブルコントロ―ラ | |
JPH082727Y2 (ja) | プログラマブルシ−ケンサ | |
JPH04235604A (ja) | プログラマブルコントローラ | |
JPH10222361A (ja) | 計算機等の処理装置におけるromプログラムモニタ装置 | |
JPS61278942A (ja) | デ−タ管理装置 | |
JPS63170703A (ja) | ロ−ダコマンド処理装置 | |
JPH02214946A (ja) | デバッグ方式 | |
JPH0581336A (ja) | データベース演算処理装置 | |
JPH05224711A (ja) | プログラマブルコントローラの制御方法 | |
JPH02236663A (ja) | データ処理装置 | |
JPH05158522A (ja) | 数値制御装置 | |
JPS60246441A (ja) | マイクロコンピユ−タ | |
JPH0820962B2 (ja) | 高級言語処理方法 | |
JPS63310003A (ja) | シ−ケンス制御方式 | |
JPH02171802A (ja) | プログラマブルコントローラ | |
JPH0358277A (ja) | 設計実行制御装置 | |
JPS615349A (ja) | プログラマブル・コントロ−ラ |