JPH0581032A - フアジイ制御方法 - Google Patents
フアジイ制御方法Info
- Publication number
- JPH0581032A JPH0581032A JP24325291A JP24325291A JPH0581032A JP H0581032 A JPH0581032 A JP H0581032A JP 24325291 A JP24325291 A JP 24325291A JP 24325291 A JP24325291 A JP 24325291A JP H0581032 A JPH0581032 A JP H0581032A
- Authority
- JP
- Japan
- Prior art keywords
- fuzzy
- variable
- value
- output
- membership function
- 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
Landscapes
- Feedback Control In General (AREA)
Abstract
(57)【要約】
【目的】 制御対象への出力を滑らかに変化させること
により,使用者に不快感等を与えることのないファジィ
制御方法の提供。 【構成】 ファジィ制御方法を適用したファジィ制御装
置1では,抽出された,ファジィルールの各結論部のメ
ンバシップ関数が,メンバシップ関数MS1,L1 とし
てそれぞれ修正される。一方,メモリに格納されている
前回の重心値G 1 と一致する重心値を有するメンバシッ
プ関数OMが作成される。そして,上記各メンバシップ
関数MS1 ,L1 ,OMの全てを含む複合メンバシップ
関数が合成され,その重心値Gが求められる。重心値G
は,メンバシップ関数MS1 ,L 1 のみの合成により得
た重心値G2 と比べて,より前回の重心値G1 に近くな
るので,上記重心値Gに基づいて決定されるモータへの
出力は前回の出力からの変化が滑らかになる。
により,使用者に不快感等を与えることのないファジィ
制御方法の提供。 【構成】 ファジィ制御方法を適用したファジィ制御装
置1では,抽出された,ファジィルールの各結論部のメ
ンバシップ関数が,メンバシップ関数MS1,L1 とし
てそれぞれ修正される。一方,メモリに格納されている
前回の重心値G 1 と一致する重心値を有するメンバシッ
プ関数OMが作成される。そして,上記各メンバシップ
関数MS1 ,L1 ,OMの全てを含む複合メンバシップ
関数が合成され,その重心値Gが求められる。重心値G
は,メンバシップ関数MS1 ,L 1 のみの合成により得
た重心値G2 と比べて,より前回の重心値G1 に近くな
るので,上記重心値Gに基づいて決定されるモータへの
出力は前回の出力からの変化が滑らかになる。
Description
【0001】
【産業上の利用分野】本発明は,制御対象からの入力変
数のファジィ変数を条件部とし上記制御対象への出力変
数のファジィ変数を結論部とするファジィルールと,上
記ファジィルールの入力変数及び出力変数のファジィ変
数毎に予め設定されているメンバシップ関数とを用い
て,上記制御対象の制御を行うファジィ制御方法に係
り,特に上記制御対象への出力変数値を滑らかに変化さ
せ得るファジィ制御方法に関する。
数のファジィ変数を条件部とし上記制御対象への出力変
数のファジィ変数を結論部とするファジィルールと,上
記ファジィルールの入力変数及び出力変数のファジィ変
数毎に予め設定されているメンバシップ関数とを用い
て,上記制御対象の制御を行うファジィ制御方法に係
り,特に上記制御対象への出力変数値を滑らかに変化さ
せ得るファジィ制御方法に関する。
【0002】
【従来の技術】上記したようなファジィ制御方法が適用
される制御対象の一例となる電気掃除機を図15に示
す。同図において,電気掃除機2では,図外の送風機を
内蔵した掃除機本体12に延長ホース16,延長管17
が連続され,更に延長管17の先端に吸込口部3の吸込
ノズル18が連結されている。上記吸込口部3は,図1
6に示すように,吸込ケース15内に回動自在に収容さ
れた回転ブラシ13を備え,この回転ブラシ13は吸込
ケース15に設けられたモータ6の駆動軸にベルト14
を介して連結されている。また,上記回転ブラシ13の
端部には,マグネット5が設けられ,このマグネット5
と対向する吸込ケース15の位置には,マグネット5か
らの磁力によって作動するリードスイッチ4が配備され
ている。従って,回転ブラシ13の回転は上記リードス
イッチ4により検出される。また,上記電気掃除機2で
は,回転ブラシ13駆動用のモータ6への出力や上記送
風機駆動用のモータへの出力が,ファジィ制御により調
整されるようになっている。続いて,上記回転ブラシ1
3のモータ6への出力を調整する従来のファジィ制御方
法について説明する。上記モータ6への出力は,リード
スイッチ4からのオン/オフのパルス信号によって求め
られた回転ブラシ13の回転数のバラツキと,予め設定
されている掃除条件(畳,絨毯等)に応じた回転ブラシ
13の理想回転数(目標値)と現在の回転数との偏差と
に基づいて制御される。具体的には,上記回転数のバラ
ツキ及び偏差についてそれぞれ設定されている,例えば
小さい(S),中くらい(M),大きい(L)といった
ファジィ変数を条件部とし,上記モータ6への出力のフ
ァジィ変数(例えば,MS(もっと小さい),S,M,
L,ML(もっと大きい))を結論部とするような定性
的な知識を規則化したファジィルールと,上記回転数の
バラツキ,偏差のそれぞれのファジィ変数毎に予め設定
されている三角形状もしくは台形状のメンバシップ関数
とが用いられる。そこで,上記回転数のバラツキ及び偏
差に対応するファジィ変数を条件部に備えたファジィル
ールが抽出され,この抽出されたファジィルールの条件
部のファジィ変数のメンバシップ関数値が上記回転数の
バラツキ,偏差に基づいて演算される。更に,上記モー
タ6への出力のファジィ変数のメンバシップ関数が,上
記演算された入力変数のメンバシップ関数値に基づいて
上記抽出されたファジィルール毎に修正され,この修正
されたファジィルール毎のメンバシップ関数が合成され
る。そして,上記モータ6への出力値は,上記合成され
たメンバシップ関数の重心値に基づいて決定され出力さ
れるようになっている。従って,上記したようなファジ
ィ制御方法によれば,電気掃除機2に対し定量的な制御
則ではなし得ないような微妙な,即ち定性的な制御を行
うことができる。
される制御対象の一例となる電気掃除機を図15に示
す。同図において,電気掃除機2では,図外の送風機を
内蔵した掃除機本体12に延長ホース16,延長管17
が連続され,更に延長管17の先端に吸込口部3の吸込
ノズル18が連結されている。上記吸込口部3は,図1
6に示すように,吸込ケース15内に回動自在に収容さ
れた回転ブラシ13を備え,この回転ブラシ13は吸込
ケース15に設けられたモータ6の駆動軸にベルト14
を介して連結されている。また,上記回転ブラシ13の
端部には,マグネット5が設けられ,このマグネット5
と対向する吸込ケース15の位置には,マグネット5か
らの磁力によって作動するリードスイッチ4が配備され
ている。従って,回転ブラシ13の回転は上記リードス
イッチ4により検出される。また,上記電気掃除機2で
は,回転ブラシ13駆動用のモータ6への出力や上記送
風機駆動用のモータへの出力が,ファジィ制御により調
整されるようになっている。続いて,上記回転ブラシ1
3のモータ6への出力を調整する従来のファジィ制御方
法について説明する。上記モータ6への出力は,リード
スイッチ4からのオン/オフのパルス信号によって求め
られた回転ブラシ13の回転数のバラツキと,予め設定
されている掃除条件(畳,絨毯等)に応じた回転ブラシ
13の理想回転数(目標値)と現在の回転数との偏差と
に基づいて制御される。具体的には,上記回転数のバラ
ツキ及び偏差についてそれぞれ設定されている,例えば
小さい(S),中くらい(M),大きい(L)といった
ファジィ変数を条件部とし,上記モータ6への出力のフ
ァジィ変数(例えば,MS(もっと小さい),S,M,
L,ML(もっと大きい))を結論部とするような定性
的な知識を規則化したファジィルールと,上記回転数の
バラツキ,偏差のそれぞれのファジィ変数毎に予め設定
されている三角形状もしくは台形状のメンバシップ関数
とが用いられる。そこで,上記回転数のバラツキ及び偏
差に対応するファジィ変数を条件部に備えたファジィル
ールが抽出され,この抽出されたファジィルールの条件
部のファジィ変数のメンバシップ関数値が上記回転数の
バラツキ,偏差に基づいて演算される。更に,上記モー
タ6への出力のファジィ変数のメンバシップ関数が,上
記演算された入力変数のメンバシップ関数値に基づいて
上記抽出されたファジィルール毎に修正され,この修正
されたファジィルール毎のメンバシップ関数が合成され
る。そして,上記モータ6への出力値は,上記合成され
たメンバシップ関数の重心値に基づいて決定され出力さ
れるようになっている。従って,上記したようなファジ
ィ制御方法によれば,電気掃除機2に対し定量的な制御
則ではなし得ないような微妙な,即ち定性的な制御を行
うことができる。
【0003】
【発明が解決しようとする課題】ところで,上記回転ブ
ラシ13の回転を検出するリードスイッチ4としては,
比較的検出精度の良いものが使用されている。これは,
上記リードスイッチ4からのパルス信号に異常データが
発生すると,上記回転ブラシ13の回転数に一時的なバ
ラツキを生じる場合があるからである。また,上記電気
掃除機2の掃除対象が,例えば絨毯から畳またはその逆
に切り替わったりしたときのように,掃除条件が急変す
る場合がある。ところが,上記従来のファジィ制御方法
によれば,現在検出された通りの回転ブラシ13の回転
数に基づいてモータ6への出力が制御されるので,上記
したようなそれぞれの場合には,図14の時刻T3 にお
ける破線で示すように,モータ6への出力が急激に大き
く変更されたり,或いは図13の時刻T1 ,T2 におけ
る破線で示すように,出力の変化が頻繁に行われたりす
ることがあった。このような急激な出力の変化や頻繁な
出力変化は,使用者に不快感を与えたり,ひいては危険
を伴うことも考えられる。従って,本発明の目的とする
ところは,制御対象への出力を滑らかに変化させること
により,使用者に不快感を与えることのないファジィ制
御方法を提供することにある。
ラシ13の回転を検出するリードスイッチ4としては,
比較的検出精度の良いものが使用されている。これは,
上記リードスイッチ4からのパルス信号に異常データが
発生すると,上記回転ブラシ13の回転数に一時的なバ
ラツキを生じる場合があるからである。また,上記電気
掃除機2の掃除対象が,例えば絨毯から畳またはその逆
に切り替わったりしたときのように,掃除条件が急変す
る場合がある。ところが,上記従来のファジィ制御方法
によれば,現在検出された通りの回転ブラシ13の回転
数に基づいてモータ6への出力が制御されるので,上記
したようなそれぞれの場合には,図14の時刻T3 にお
ける破線で示すように,モータ6への出力が急激に大き
く変更されたり,或いは図13の時刻T1 ,T2 におけ
る破線で示すように,出力の変化が頻繁に行われたりす
ることがあった。このような急激な出力の変化や頻繁な
出力変化は,使用者に不快感を与えたり,ひいては危険
を伴うことも考えられる。従って,本発明の目的とする
ところは,制御対象への出力を滑らかに変化させること
により,使用者に不快感を与えることのないファジィ制
御方法を提供することにある。
【0004】
【課題を解決するための手段】上記目的を達成するため
に,第1の発明が採用する主たる手段は,その要旨とす
るところが,制御対象からの入力変数のファジィ変数を
条件部とし上記制御対象への出力変数のファジィ変数を
結論部とするファジィルールと,上記ファジィルールの
入力変数及び出力変数のファジィ変数毎に予め設定され
ているメンバシップ関数とを用い,上記制御対象からの
入力変数値に対応するファジィ変数を条件部に備えたフ
ァジィルールを抽出し,上記抽出されたファジィルール
の条件部のファジィ変数のメンバシップ関数値を上記入
力変数値に基づいて演算し,上記演算されたメンバシッ
プ関数値に基づいて上記出力変数のファジィ変数のメン
バシップ関数を上記抽出されたファジィルール毎に修正
し,上記修正されたファジィルール毎のメンバシップ関
数を合成し,上記合成されたメンバシップ関数の重心値
に基づいて上記制御対象へ出力されるべき出力変数値を
決定するファジィ制御方法において,上記重心値を記憶
手段に格納し,上記記憶手段に格納された重心値と一致
する重心値を有し,制御対象に応じた形状の出力変数に
関するメンバシップ関数を作成し,新たに修正されたフ
ァジィルール毎の出力変数のファジィ変数のメンバシッ
プ関数と上記作成された出力変数のメンバシップ関数と
より複合メンバシップ関数を合成し,上記複合メンバシ
ップ関数の重心値に基づいて上記制御対象への出力変数
値を決定した点に係るファジィ制御方法である。又,上
記目的を達成するために,第2の発明が採用する主たる
手段は,その要旨とするところが,制御対象からの入力
変数のファジィ変数を条件部とし上記制御対象への出力
変数のファジィ変数を結論部とするファジィルールと,
上記ファジィルールの入力変数及び出力変数のファジィ
変数毎に予め設定されているメンバシップ関数とを用
い,上記制御対象からの入力変数値に対応するファジィ
変数を条件部に備えたファジィルールを抽出し,上記抽
出されたファジィルールの条件部のファジィ変数のメン
バシップ関数値を上記入力変数値に基づいて演算し,上
記演算されたメンバシップ関数値に基づいて上記出力変
数のファジィ変数のメンバシップ関数を上記抽出された
ファジィルール毎に修正し,上記修正されたファジィル
ール毎のメンバシップ関数を合成し,上記合成されたメ
ンバシップ関数の重心値に基づいて上記制御対象へ出力
されるべき出力変数値を決定するファジィ制御方法にお
いて,上記出力変数値を多段階の離散値に設定し,上記
出力変数値に対応する重心値を有し,制御対象に応じた
形状の出力変数に関するメンバシップ関数を上記出力変
数値毎に予め設定し,上記決定された出力変数値を記憶
手段に格納し,新たに修正されたファジィルール毎の出
力変数のファジィ変数のメンバシップ関数と上記記憶手
段に格納された出力変数値のメンバシップ関数とより複
合メンバシップ関数を合成し,上記複合メンバシップ関
数の重心値に基づいて上記制御対象への出力変数値を決
定した点に係るファジィ制御方法である。
に,第1の発明が採用する主たる手段は,その要旨とす
るところが,制御対象からの入力変数のファジィ変数を
条件部とし上記制御対象への出力変数のファジィ変数を
結論部とするファジィルールと,上記ファジィルールの
入力変数及び出力変数のファジィ変数毎に予め設定され
ているメンバシップ関数とを用い,上記制御対象からの
入力変数値に対応するファジィ変数を条件部に備えたフ
ァジィルールを抽出し,上記抽出されたファジィルール
の条件部のファジィ変数のメンバシップ関数値を上記入
力変数値に基づいて演算し,上記演算されたメンバシッ
プ関数値に基づいて上記出力変数のファジィ変数のメン
バシップ関数を上記抽出されたファジィルール毎に修正
し,上記修正されたファジィルール毎のメンバシップ関
数を合成し,上記合成されたメンバシップ関数の重心値
に基づいて上記制御対象へ出力されるべき出力変数値を
決定するファジィ制御方法において,上記重心値を記憶
手段に格納し,上記記憶手段に格納された重心値と一致
する重心値を有し,制御対象に応じた形状の出力変数に
関するメンバシップ関数を作成し,新たに修正されたフ
ァジィルール毎の出力変数のファジィ変数のメンバシッ
プ関数と上記作成された出力変数のメンバシップ関数と
より複合メンバシップ関数を合成し,上記複合メンバシ
ップ関数の重心値に基づいて上記制御対象への出力変数
値を決定した点に係るファジィ制御方法である。又,上
記目的を達成するために,第2の発明が採用する主たる
手段は,その要旨とするところが,制御対象からの入力
変数のファジィ変数を条件部とし上記制御対象への出力
変数のファジィ変数を結論部とするファジィルールと,
上記ファジィルールの入力変数及び出力変数のファジィ
変数毎に予め設定されているメンバシップ関数とを用
い,上記制御対象からの入力変数値に対応するファジィ
変数を条件部に備えたファジィルールを抽出し,上記抽
出されたファジィルールの条件部のファジィ変数のメン
バシップ関数値を上記入力変数値に基づいて演算し,上
記演算されたメンバシップ関数値に基づいて上記出力変
数のファジィ変数のメンバシップ関数を上記抽出された
ファジィルール毎に修正し,上記修正されたファジィル
ール毎のメンバシップ関数を合成し,上記合成されたメ
ンバシップ関数の重心値に基づいて上記制御対象へ出力
されるべき出力変数値を決定するファジィ制御方法にお
いて,上記出力変数値を多段階の離散値に設定し,上記
出力変数値に対応する重心値を有し,制御対象に応じた
形状の出力変数に関するメンバシップ関数を上記出力変
数値毎に予め設定し,上記決定された出力変数値を記憶
手段に格納し,新たに修正されたファジィルール毎の出
力変数のファジィ変数のメンバシップ関数と上記記憶手
段に格納された出力変数値のメンバシップ関数とより複
合メンバシップ関数を合成し,上記複合メンバシップ関
数の重心値に基づいて上記制御対象への出力変数値を決
定した点に係るファジィ制御方法である。
【0005】
【作用】第1の発明方法によれば,制御対象からの入力
変数は,予め設定された上記メンバシップ関数によっ
て,対応するファジィ変数として定性化される。このフ
ァジィ変数を条件部に含むファジィルールが抽出され,
上記ファジィ変数のメンバシップ関数値に基づいて出力
変数のメンバシップ関数が,抽出されたファジィルール
毎に修正され,更に上記修正されたメンバシップ関数が
合成されんとする。一方,上記制御対象へ出力されるべ
き出力変数値を決定するための,前回合成されたメンバ
シップ関数の重心値は,記憶手段に格納されている。そ
こで,上記修正されたファジィルール毎のメンバシップ
関数の合成に先立って,上記記憶手段に格納された前回
の重心値と一致する重心値を有し制御対象に応じた形状
の出力変数に関するメンバシップ関数が作成される。そ
して,今回新たに修正されたファジィルール毎の出力変
数のファジィ変数のメンバシップ関数と前回の重心値に
基づいて作成された出力変数のメンバシップ関数とより
複合メンバシップ関数が合成される。従って,上記複合
メンバシップ関数の重心値は,前回の重心値が反映され
て求められる。これによって,上記複合メンバシップ関
数の重心値に基づいて決定された制御対象への出力変数
値は,前回の出力変数値に,より近い値となる。一方,
第2の発明方法によれば,上記制御対象へ出力されるべ
き出力変数値としては,多段階の離散値が用いられ,出
力変数値毎にメンバシップ関数が予め設定されている。
また,上記記憶手段に格納されるのは,前回決定された
出力変数値である。そこで,今回の出力変数値を決定す
る際に,上記出力変数値を決定するための複合メンバシ
ップ関数は,今回新たに修正されたファジィルール毎の
出力変数のファジィ変数のメンバシップ関数と,前回決
定された出力変数値について設定されているメンバシッ
プ関数とを用いて合成される。従って,前回の制御結果
が今回の制御に反映されることはもとより,前回の制御
結果を反映させるための新たなメンバシップ関数を作成
する処理が省けるので,第1の発明方法と比べて演算時
間が短くなる。
変数は,予め設定された上記メンバシップ関数によっ
て,対応するファジィ変数として定性化される。このフ
ァジィ変数を条件部に含むファジィルールが抽出され,
上記ファジィ変数のメンバシップ関数値に基づいて出力
変数のメンバシップ関数が,抽出されたファジィルール
毎に修正され,更に上記修正されたメンバシップ関数が
合成されんとする。一方,上記制御対象へ出力されるべ
き出力変数値を決定するための,前回合成されたメンバ
シップ関数の重心値は,記憶手段に格納されている。そ
こで,上記修正されたファジィルール毎のメンバシップ
関数の合成に先立って,上記記憶手段に格納された前回
の重心値と一致する重心値を有し制御対象に応じた形状
の出力変数に関するメンバシップ関数が作成される。そ
して,今回新たに修正されたファジィルール毎の出力変
数のファジィ変数のメンバシップ関数と前回の重心値に
基づいて作成された出力変数のメンバシップ関数とより
複合メンバシップ関数が合成される。従って,上記複合
メンバシップ関数の重心値は,前回の重心値が反映され
て求められる。これによって,上記複合メンバシップ関
数の重心値に基づいて決定された制御対象への出力変数
値は,前回の出力変数値に,より近い値となる。一方,
第2の発明方法によれば,上記制御対象へ出力されるべ
き出力変数値としては,多段階の離散値が用いられ,出
力変数値毎にメンバシップ関数が予め設定されている。
また,上記記憶手段に格納されるのは,前回決定された
出力変数値である。そこで,今回の出力変数値を決定す
る際に,上記出力変数値を決定するための複合メンバシ
ップ関数は,今回新たに修正されたファジィルール毎の
出力変数のファジィ変数のメンバシップ関数と,前回決
定された出力変数値について設定されているメンバシッ
プ関数とを用いて合成される。従って,前回の制御結果
が今回の制御に反映されることはもとより,前回の制御
結果を反映させるための新たなメンバシップ関数を作成
する処理が省けるので,第1の発明方法と比べて演算時
間が短くなる。
【0006】
【実施例】以下添付図面を参照して,本発明を具体化し
た実施例につき説明し,本発明の理解に供する。尚,以
下の実施例は,本発明を具体化した一例であって,本発
明の技術的範囲を限定する性格のものではない。ここ
に,図1は本発明の一実施例に係るファジィ制御装置の
制御系統を示すブロック図,図2は上記ファジィ制御装
置が適用される電気掃除機の回転ブラシの回転数のバラ
ツキまたは理想回転数からの偏差に関するファジィ変数
毎に設定されたメンバシップ関数を示すグラフ図,図3
は上記回転ブラシの回転数のバラツキ及び偏差に複数の
ファジィルールを適用して条件部が満たされるファジィ
ルールの結論部のメンバシップ関数を修正する態様を示
す説明図,図4は上記修正された結論部のメンバシップ
関数等を合成してその重心を得る態様を示す説明図,図
5は上記ファジィ制御装置のメインルーチンの処理手順
を示すフローチャート,図6は演算途中での上記送風機
用モータ及び回転ブラシ用のモータの停止を防止するた
めの保留サブルーチンの処理手順を示すフローチャー
ト,図7は送風機用のモータ及び回転ブラシ用のモータ
へ出力するための出力サブルーチンの処理手順を示すフ
ローチャート,図8は上記電気掃除機のリードスイッチ
からの出力に基づいて回転ブラシの回転数を演算するた
めの計測サブルーチンの処理手順を示すフローチャー
ト,図9は上記回転ブラシの回転数のバラツキと理想回
転数からの偏差を求めるための計算サブルーチンの処理
手順を示すフローチャート,図10は上記回転ブラシ及
び送風機のそれぞれのモータへの出力を決定するための
ファジィ演算ルーチンの処理手順を示すフローチャー
ト,図11は上記ファジィ演算ルーチンにより決定され
た各モータへの出力を修正するための修正サブルーチン
の処理手順を示すフローチャート,図12は出力段階毎
に設定されたメンバシップ関数をしめすグラフ図,図1
3は上記ファジィ制御装置により制御された回転ブラシ
用のモータへの出力の変化の一例を示すグラフ図,図1
4は上記回転ブラシ用のモータへの出力の変化の別例を
示すグラフ図である。
た実施例につき説明し,本発明の理解に供する。尚,以
下の実施例は,本発明を具体化した一例であって,本発
明の技術的範囲を限定する性格のものではない。ここ
に,図1は本発明の一実施例に係るファジィ制御装置の
制御系統を示すブロック図,図2は上記ファジィ制御装
置が適用される電気掃除機の回転ブラシの回転数のバラ
ツキまたは理想回転数からの偏差に関するファジィ変数
毎に設定されたメンバシップ関数を示すグラフ図,図3
は上記回転ブラシの回転数のバラツキ及び偏差に複数の
ファジィルールを適用して条件部が満たされるファジィ
ルールの結論部のメンバシップ関数を修正する態様を示
す説明図,図4は上記修正された結論部のメンバシップ
関数等を合成してその重心を得る態様を示す説明図,図
5は上記ファジィ制御装置のメインルーチンの処理手順
を示すフローチャート,図6は演算途中での上記送風機
用モータ及び回転ブラシ用のモータの停止を防止するた
めの保留サブルーチンの処理手順を示すフローチャー
ト,図7は送風機用のモータ及び回転ブラシ用のモータ
へ出力するための出力サブルーチンの処理手順を示すフ
ローチャート,図8は上記電気掃除機のリードスイッチ
からの出力に基づいて回転ブラシの回転数を演算するた
めの計測サブルーチンの処理手順を示すフローチャー
ト,図9は上記回転ブラシの回転数のバラツキと理想回
転数からの偏差を求めるための計算サブルーチンの処理
手順を示すフローチャート,図10は上記回転ブラシ及
び送風機のそれぞれのモータへの出力を決定するための
ファジィ演算ルーチンの処理手順を示すフローチャー
ト,図11は上記ファジィ演算ルーチンにより決定され
た各モータへの出力を修正するための修正サブルーチン
の処理手順を示すフローチャート,図12は出力段階毎
に設定されたメンバシップ関数をしめすグラフ図,図1
3は上記ファジィ制御装置により制御された回転ブラシ
用のモータへの出力の変化の一例を示すグラフ図,図1
4は上記回転ブラシ用のモータへの出力の変化の別例を
示すグラフ図である。
【0007】但し,図15及び図16に示した上記電気
掃除機2と共通する要素には,同一の符号を使用すると
共に,その詳細な説明は省略する。本実施例に係るファ
ジィ制御装置1は,上記電気掃除機2の例えば掃除機本
体12に内蔵されたものであって,図1に示すように,
例えばCPUよりなる演算制御部7を中心として構成さ
れ,この演算制御部7に後述するファジィルールを格納
したファジィルールベース8と,数値データや機械語を
格納するメモリ9(記憶手段)とが入出力可能に接続さ
れている。また,上記演算制御部7からの出力側には,
回転ブラシ13駆動用のモータ6と,送風機用のモータ
19と,これらのモータ6,19の出力状態をそれぞれ
表示するLED11とが入出力ポート10を介して接続
され,上記演算制御部7への入力側には,上記回転ブラ
シ13の回転を検出するリードスイッチ4と,上記送風
機の回転を検出する例えばリードスイッチ20とが入出
力ポート10を介して連結されている。上記ファジィ制
御装置1による送風機用のモータ19への出力の制御
も,上記回転ブラシ13の回転数に基づいて行われ,回
転ブラシ13用のモータ6への出力の制御とほとんど同
様であるので,説明の便宜上,以下回転ブラシ13用の
モータ6への出力の制御につき主として説明する。 上
記ファジィルールベース8には,上記リードスイッチ4
からのパルス信号に基づいて演算制御部7により求めら
れた回転ブラシ13の回転数のバラツキW及び予め設定
されメモリ9に格納されている理想回転数からの上記回
転数の偏差Hについてそれぞれ定性的に設定されている
ファジィ変数S,M,Lを条件部とし,上記モータ6へ
の出力Pのファジィ変数MS,S,M,L,MLを結論
部とするファジィルールが格納されている。上記ファジ
ィルールは,例えば専門家の定性的な制御知識を規則化
したものであって,これらの内容を以下に例示する。 「ファジィルール例」 ファジィルール1 IF W is small (S) and H is small (S) THEN P is small (S) ファジィルール2 IF W is small (s) and H is large (L) THEN P is more small (MS) ファジィルール3 IF W is large (L) and H is large (L) THEN P is more small (MS) ファジィルール4 IF W is medium (M) and H is medium (M) THEN P is large (L)
掃除機2と共通する要素には,同一の符号を使用すると
共に,その詳細な説明は省略する。本実施例に係るファ
ジィ制御装置1は,上記電気掃除機2の例えば掃除機本
体12に内蔵されたものであって,図1に示すように,
例えばCPUよりなる演算制御部7を中心として構成さ
れ,この演算制御部7に後述するファジィルールを格納
したファジィルールベース8と,数値データや機械語を
格納するメモリ9(記憶手段)とが入出力可能に接続さ
れている。また,上記演算制御部7からの出力側には,
回転ブラシ13駆動用のモータ6と,送風機用のモータ
19と,これらのモータ6,19の出力状態をそれぞれ
表示するLED11とが入出力ポート10を介して接続
され,上記演算制御部7への入力側には,上記回転ブラ
シ13の回転を検出するリードスイッチ4と,上記送風
機の回転を検出する例えばリードスイッチ20とが入出
力ポート10を介して連結されている。上記ファジィ制
御装置1による送風機用のモータ19への出力の制御
も,上記回転ブラシ13の回転数に基づいて行われ,回
転ブラシ13用のモータ6への出力の制御とほとんど同
様であるので,説明の便宜上,以下回転ブラシ13用の
モータ6への出力の制御につき主として説明する。 上
記ファジィルールベース8には,上記リードスイッチ4
からのパルス信号に基づいて演算制御部7により求めら
れた回転ブラシ13の回転数のバラツキW及び予め設定
されメモリ9に格納されている理想回転数からの上記回
転数の偏差Hについてそれぞれ定性的に設定されている
ファジィ変数S,M,Lを条件部とし,上記モータ6へ
の出力Pのファジィ変数MS,S,M,L,MLを結論
部とするファジィルールが格納されている。上記ファジ
ィルールは,例えば専門家の定性的な制御知識を規則化
したものであって,これらの内容を以下に例示する。 「ファジィルール例」 ファジィルール1 IF W is small (S) and H is small (S) THEN P is small (S) ファジィルール2 IF W is small (s) and H is large (L) THEN P is more small (MS) ファジィルール3 IF W is large (L) and H is large (L) THEN P is more small (MS) ファジィルール4 IF W is medium (M) and H is medium (M) THEN P is large (L)
【0008】また,上記ファジィルールの入力変数とし
ての回転数のバラツキW,上記偏差H及び出力変数とし
ての上記モータ6への仮出力PBXのファジィ変数毎
に,三角形状もしくは台形状のメンバシップ関数が予め
設定されている。これらのメンバシップ関数のうち,上
記入力変数(W又はH)に関するファジィ変数S,M,
L毎のメンバシップ関数の一例を図2に示す。なお,出
力変数のメンバシップ関数についても,上記MS,S,
M,L,MLの順に大きな出力を表現するファジィ変数
が設定されており,そのうちS,M,Lが二等辺三角形
であって,MS,MLが直角三角形の形状に設定されて
いる。なお,上記各メンバシップ関数を表現するグレー
ドは0から1までの値である。また,上記モータ6(又
はモータ19)への出力は,6段階に切替え可能に変更
されるが,これらの出力段階をPB(=1〜6の整数)
(又はMM(=1〜6の整数))とする。そして,上記
モータ6は,上記出力段階PBに対応して段階毎に無負
荷時の理想回転数HY(PB)が設定されており,予め
メモリ9に格納されている。例えば,PB=1のときH
Y(1)=4500rpmの如くである。上記モータ1
9もその出力段階MMに対応して同様に理想回転数が設
定されている。本実施例のファジィ制御装置1は,上記
したように構成されている。引き続き,上記ファジィ制
御装置1による電気掃除機2の制御動作につき,図5乃
至図11のフローチャートと,図3及び図4とを用いて
以下説明する。なお,各図中のS1,S2,S3,・・
・は各動作ステップを示す。また,各フローチャートは
プログラムとして,上記メモリ9に予め格納されてい
る。
ての回転数のバラツキW,上記偏差H及び出力変数とし
ての上記モータ6への仮出力PBXのファジィ変数毎
に,三角形状もしくは台形状のメンバシップ関数が予め
設定されている。これらのメンバシップ関数のうち,上
記入力変数(W又はH)に関するファジィ変数S,M,
L毎のメンバシップ関数の一例を図2に示す。なお,出
力変数のメンバシップ関数についても,上記MS,S,
M,L,MLの順に大きな出力を表現するファジィ変数
が設定されており,そのうちS,M,Lが二等辺三角形
であって,MS,MLが直角三角形の形状に設定されて
いる。なお,上記各メンバシップ関数を表現するグレー
ドは0から1までの値である。また,上記モータ6(又
はモータ19)への出力は,6段階に切替え可能に変更
されるが,これらの出力段階をPB(=1〜6の整数)
(又はMM(=1〜6の整数))とする。そして,上記
モータ6は,上記出力段階PBに対応して段階毎に無負
荷時の理想回転数HY(PB)が設定されており,予め
メモリ9に格納されている。例えば,PB=1のときH
Y(1)=4500rpmの如くである。上記モータ1
9もその出力段階MMに対応して同様に理想回転数が設
定されている。本実施例のファジィ制御装置1は,上記
したように構成されている。引き続き,上記ファジィ制
御装置1による電気掃除機2の制御動作につき,図5乃
至図11のフローチャートと,図3及び図4とを用いて
以下説明する。なお,各図中のS1,S2,S3,・・
・は各動作ステップを示す。また,各フローチャートは
プログラムとして,上記メモリ9に予め格納されてい
る。
【0009】上記ファジィ制御装置1は,図5のメイン
ルーチンの処理手順に従って主として動作する。そこ
で,電気掃除機2の図外のメインスイッチがオンされる
と,上記メインルーチンの処理が開始され,先ず上記モ
ータ6,19への当初の出力等その他が初期設定される
(S1)。続いて,ステップS2の割込み設定により上
記メインルーチンが演算制御部7の基本的な演算機能に
対し割込み処理される。更に,上記メモリ9から演算制
御部7に機械語が読み込まれる。この機械語は後述する
計測サブルーチン(S6)においてリードスイッチ4か
らのパルス信号のカウント値読み込みの際に必要とされ
る高速演算処理を行うためのものである。また,上記メ
インルーチンは,所定時間内(例えば5秒間)に所定回
数I(I=1〜N)作動するタイマの動作毎にリードス
イッチ4(又はリードスイッチ20)から読み込まれた
パルス信号のカウント値に基づいて回転ブラシ13(又
は送風機)の回転数A(I)を演算する計測サブルーチ
ン(S6)と,上記計測サブルーチンにより演算された
回転数A(I)に基づいて上記所定時間内の平均回転数
AVA,上記回転数のバラツキW,上記理想回転数HY
(PB)からの上記平均回転数AVAの偏差Hを計算す
る計算サブルーチン(S7)と,上述したファジィルー
ルと各メンバシップ関数とを用い,上記計算サブルーチ
ンにより計算された回転数のバラツキW,偏差Hとに基
づいて上記回転ブラシ13(又は送風機)のモータ6
(又はモータ19)へのアナログ値としての仮出力値P
BX(又はMMX)を決定するファジィ演算サブルーチ
ン(S8)と,連続値としての上記仮出力値PBX(又
はMMX)を,例えば四捨五入によってこれに最も近い
離散値としての出力段階PB(又はMM)に変換する修
正サブルーチン(S9)と,上記修正サブルーチンによ
り求められた出力段階PB(又はMM)から出力段階に
応じた信号PR(PB)(又はMR(MM))を求め,
このPR(PB)等を出力値PO(又はMO)としてモ
ータ6(又はモータ19)へ出力する出力サブルーチン
(S4)とを備えている。これらのサブルーチンS4,
S6〜S9と,現在のモータ6,19の出力段階PB,
MMをLED11に表示するステップS5とが上記割り
込み設定期間中繰り返し実行される。そして,上記メイ
ンスイッチのオフにより図6に示す保留サブルーチン
(S10)が実行されて,上記割り込みが禁止され,モ
ータ6(又はモータ19)への出力が停止された後,演
算処理が終了する。なお,上記各サブルーチンS4,S
6〜S9の処理手順は,図7乃至図11のフローチャー
トに示す通りである。ただし,修正サブルーチン(図1
1)中の2点鎖線で示すステップS91は本実施例では
実行されない。本実施例装置では,特に上記ファジィ演
算サブルーチンS8に特徴的な演算処理が施されてい
る。上記ファジィ演算サブルーチンS8の基本的な処理
手法は,以下に示す如くの周知のMAX・DOT法によ
るものである。そこで,上記ファジィ演算サブルーチン
S8につき図10,図3及び図4を併用して詳述する。
ルーチンの処理手順に従って主として動作する。そこ
で,電気掃除機2の図外のメインスイッチがオンされる
と,上記メインルーチンの処理が開始され,先ず上記モ
ータ6,19への当初の出力等その他が初期設定される
(S1)。続いて,ステップS2の割込み設定により上
記メインルーチンが演算制御部7の基本的な演算機能に
対し割込み処理される。更に,上記メモリ9から演算制
御部7に機械語が読み込まれる。この機械語は後述する
計測サブルーチン(S6)においてリードスイッチ4か
らのパルス信号のカウント値読み込みの際に必要とされ
る高速演算処理を行うためのものである。また,上記メ
インルーチンは,所定時間内(例えば5秒間)に所定回
数I(I=1〜N)作動するタイマの動作毎にリードス
イッチ4(又はリードスイッチ20)から読み込まれた
パルス信号のカウント値に基づいて回転ブラシ13(又
は送風機)の回転数A(I)を演算する計測サブルーチ
ン(S6)と,上記計測サブルーチンにより演算された
回転数A(I)に基づいて上記所定時間内の平均回転数
AVA,上記回転数のバラツキW,上記理想回転数HY
(PB)からの上記平均回転数AVAの偏差Hを計算す
る計算サブルーチン(S7)と,上述したファジィルー
ルと各メンバシップ関数とを用い,上記計算サブルーチ
ンにより計算された回転数のバラツキW,偏差Hとに基
づいて上記回転ブラシ13(又は送風機)のモータ6
(又はモータ19)へのアナログ値としての仮出力値P
BX(又はMMX)を決定するファジィ演算サブルーチ
ン(S8)と,連続値としての上記仮出力値PBX(又
はMMX)を,例えば四捨五入によってこれに最も近い
離散値としての出力段階PB(又はMM)に変換する修
正サブルーチン(S9)と,上記修正サブルーチンによ
り求められた出力段階PB(又はMM)から出力段階に
応じた信号PR(PB)(又はMR(MM))を求め,
このPR(PB)等を出力値PO(又はMO)としてモ
ータ6(又はモータ19)へ出力する出力サブルーチン
(S4)とを備えている。これらのサブルーチンS4,
S6〜S9と,現在のモータ6,19の出力段階PB,
MMをLED11に表示するステップS5とが上記割り
込み設定期間中繰り返し実行される。そして,上記メイ
ンスイッチのオフにより図6に示す保留サブルーチン
(S10)が実行されて,上記割り込みが禁止され,モ
ータ6(又はモータ19)への出力が停止された後,演
算処理が終了する。なお,上記各サブルーチンS4,S
6〜S9の処理手順は,図7乃至図11のフローチャー
トに示す通りである。ただし,修正サブルーチン(図1
1)中の2点鎖線で示すステップS91は本実施例では
実行されない。本実施例装置では,特に上記ファジィ演
算サブルーチンS8に特徴的な演算処理が施されてい
る。上記ファジィ演算サブルーチンS8の基本的な処理
手法は,以下に示す如くの周知のMAX・DOT法によ
るものである。そこで,上記ファジィ演算サブルーチン
S8につき図10,図3及び図4を併用して詳述する。
【0010】先ず,上記計算サブルーチンS7において
求められた今回の回転ブラシ13の回転数のバラツキを
W1 とし,上記偏差をH1 とすると,演算制御部7は,
これらの上記バラツキW1 ,偏差H1 に対応するファジ
ィ変数(W1 についてはSとM,H1についてはMとL
である(図2)。)を条件部に備えたファジィルールを
上記ファジィルールベース8から推論により検索し抽出
する(S11)。ここでは,上記ファジィルール例のう
ち,ファジィルール2,4が抽出される。そこで,上記
抽出されたファジィルールの条件部のファジィ変数のメ
ンバシップ関数値(グレード)を上記バラツキW1 ,偏
差H1 に基づいて演算する。この場合,ファジィルール
2では,ファジィ変数SについてバラツキW1 における
交点S2 と,ファジィ変数Lについて偏差H1 における
交点L2 がそれぞれメンバシップ関数値として演算され
る。上記ファジィルール4についても,同様に交点
M4 ,M5 がメンバシップ関数値として求められる。そ
して,各ファジィルール2,4毎に,各交点のうち最小
のグレード値に基づいて,結論部の上記モータ6への仮
出力PBX(ここでは理解を容易にするためにモータ1
9については述べていないが,PBXをMMXに置き換
えると同様である。)に関するメンバシップ関数MS,
Lが上記ファジィルール2,4毎の最小のグレード値で
頭切りされた後,台形積として元のメンバシップ関数と
同じ底辺で且つ高さが上記最小のグレード値となるメン
バシップ関数MS1 ,L1 に修正される(S12)。上
記修正されたメンバシップ関数MS1 ,L1 は一旦メモ
リ9に格納される。一方,演算処理部7は前回の演算処
理時に求めた重心値G1 (第1回目の演算処理では,初
期設定値)をメモリ9から読出し(S13),この重心
値G1 と一致する重心値を有するメンバシップ関数OM
(図4)を作成する(S14)。上記メンバシップ関数
OMは,前回の重心値G1 のグレード方向の直線上に頂
点を有し上記重心値G1 を中心に出力方向に対称であっ
て,制御対象としてのモータ6(又はモータ19)に応
じた頂点の高さの三角形状に設定されている。例えば,
使用者の不快感を軽減するべく出力の変化を小さくした
い回転ブラシ13駆動用のモータ6に対しては,比較的
頂点までの高さ及び面積の大きな三角形状に設定すると
よい。
求められた今回の回転ブラシ13の回転数のバラツキを
W1 とし,上記偏差をH1 とすると,演算制御部7は,
これらの上記バラツキW1 ,偏差H1 に対応するファジ
ィ変数(W1 についてはSとM,H1についてはMとL
である(図2)。)を条件部に備えたファジィルールを
上記ファジィルールベース8から推論により検索し抽出
する(S11)。ここでは,上記ファジィルール例のう
ち,ファジィルール2,4が抽出される。そこで,上記
抽出されたファジィルールの条件部のファジィ変数のメ
ンバシップ関数値(グレード)を上記バラツキW1 ,偏
差H1 に基づいて演算する。この場合,ファジィルール
2では,ファジィ変数SについてバラツキW1 における
交点S2 と,ファジィ変数Lについて偏差H1 における
交点L2 がそれぞれメンバシップ関数値として演算され
る。上記ファジィルール4についても,同様に交点
M4 ,M5 がメンバシップ関数値として求められる。そ
して,各ファジィルール2,4毎に,各交点のうち最小
のグレード値に基づいて,結論部の上記モータ6への仮
出力PBX(ここでは理解を容易にするためにモータ1
9については述べていないが,PBXをMMXに置き換
えると同様である。)に関するメンバシップ関数MS,
Lが上記ファジィルール2,4毎の最小のグレード値で
頭切りされた後,台形積として元のメンバシップ関数と
同じ底辺で且つ高さが上記最小のグレード値となるメン
バシップ関数MS1 ,L1 に修正される(S12)。上
記修正されたメンバシップ関数MS1 ,L1 は一旦メモ
リ9に格納される。一方,演算処理部7は前回の演算処
理時に求めた重心値G1 (第1回目の演算処理では,初
期設定値)をメモリ9から読出し(S13),この重心
値G1 と一致する重心値を有するメンバシップ関数OM
(図4)を作成する(S14)。上記メンバシップ関数
OMは,前回の重心値G1 のグレード方向の直線上に頂
点を有し上記重心値G1 を中心に出力方向に対称であっ
て,制御対象としてのモータ6(又はモータ19)に応
じた頂点の高さの三角形状に設定されている。例えば,
使用者の不快感を軽減するべく出力の変化を小さくした
い回転ブラシ13駆動用のモータ6に対しては,比較的
頂点までの高さ及び面積の大きな三角形状に設定すると
よい。
【0011】続いて,上記演算制御部7は,上記修正さ
れたファジィルール2,4の仮出力に関する各ファジィ
変数MS1 ,L1 のメンバシップ関数と前回の重心値G
1 に基づいて作成されたメンバシップ関数OMとをいず
れも含む複合メンバシップ関数を合成する(S15,図
4)。更に,上記演算制御部7は,上記複合メンバシッ
プ関数をなす各メンバシップ関数につき周知の積分手法
により出力方向の重心値Gを求める(S16)。この重
心値Gはメモリ9に格納更新され(S17),次回の複
合メンバシップ関数の合成時に用いられる。そして,上
記重心値Gに対応するモータ6(又はモータ19)への
仮出力PBX(又はMMX)が決定される(S18)。
なお,上記ステップS11乃至S18において,集塵用
の送風機を駆動するモータ19に関して括弧を用いて選
択的に示したが,上記モータ19への出力は,上記ステ
ップS11〜S18のファジィ推論処理と同様に引き続
き実行されるが(S19),その説明は省略する。又,
上記した説明では,前回の制御に用いられた重心値をメ
モリ9に格納しておき(S17),これを今回の推論時
のメンバシップ関数OMの作成のために用いたが(S1
3,S14),実際上は上記重心値の横軸方向成分であ
る仮出力PBX(又はMMX)が上記メモリ9に格納さ
れており,この仮出が今回のメンバシップ関数OMの作
成時に用いられる。なお,上記モータ6への仮出力PB
Xを決定する際に,従来のように,ファジィルール2,
4の修正後のメンバシップ関数MS1 ,L1 のみを用い
て合成した場合には,図4のG2 で示す重心値となる。
しかしながら,本実施例のファジィ制御装置1によれ
ば,上記メンバシップ関数MS1 ,L1 に対し,更に前
回の重心値G1 と同じ重心値を有するメンバシップ関数
OMを加えて今回の重心値Gが求められるので,従来と
比べて,より前回の重心値G1 に近い重心値Gを得るこ
とができる。従って,回転ブラシ13のモータ6(又は
送風機のモータ19)への出力は,前回の制御を反映し
たものとなる。これによって,例えば図13及び図14
の実線に示すように,上記モータ6(又はモータ19)
への出力を滑らかに変化させることができ変化回数を少
なくすることができる。その結果,使用者の不快感を低
減化することができる。なお,前回の重心値と同じ重心
値を有するメンバシップ関数を作成する際に,図4に示
すように,三角形の高さと面積を大きくしたメンバシッ
プ関数OM3 を用いると,このときの複合メンバシップ
関数の重心値G3 は,前回の重心値G1 に近くなり,前
回からの出力の変化を小さくすることができる。逆に,
三角形の高さを小さくし底辺を広げたメンバシップ関数
OM4 を用いると,前回の重心値G1 を考慮しない場合
の重心値G2 に近づくことになる。従って,例えば,機
種の違い等による制御対象の特性に応じて上記メンバシ
ップ関数OM,OM3 ,OM4 の形状を適宜設定すれば
よい。また,上記実施例では演算された連続値としての
仮出力PBX(又はMMX)を離散値である出力段階P
B(又はMM)に変換して出力したが,上記仮出力の値
をそのまま出力してもよい。
れたファジィルール2,4の仮出力に関する各ファジィ
変数MS1 ,L1 のメンバシップ関数と前回の重心値G
1 に基づいて作成されたメンバシップ関数OMとをいず
れも含む複合メンバシップ関数を合成する(S15,図
4)。更に,上記演算制御部7は,上記複合メンバシッ
プ関数をなす各メンバシップ関数につき周知の積分手法
により出力方向の重心値Gを求める(S16)。この重
心値Gはメモリ9に格納更新され(S17),次回の複
合メンバシップ関数の合成時に用いられる。そして,上
記重心値Gに対応するモータ6(又はモータ19)への
仮出力PBX(又はMMX)が決定される(S18)。
なお,上記ステップS11乃至S18において,集塵用
の送風機を駆動するモータ19に関して括弧を用いて選
択的に示したが,上記モータ19への出力は,上記ステ
ップS11〜S18のファジィ推論処理と同様に引き続
き実行されるが(S19),その説明は省略する。又,
上記した説明では,前回の制御に用いられた重心値をメ
モリ9に格納しておき(S17),これを今回の推論時
のメンバシップ関数OMの作成のために用いたが(S1
3,S14),実際上は上記重心値の横軸方向成分であ
る仮出力PBX(又はMMX)が上記メモリ9に格納さ
れており,この仮出が今回のメンバシップ関数OMの作
成時に用いられる。なお,上記モータ6への仮出力PB
Xを決定する際に,従来のように,ファジィルール2,
4の修正後のメンバシップ関数MS1 ,L1 のみを用い
て合成した場合には,図4のG2 で示す重心値となる。
しかしながら,本実施例のファジィ制御装置1によれ
ば,上記メンバシップ関数MS1 ,L1 に対し,更に前
回の重心値G1 と同じ重心値を有するメンバシップ関数
OMを加えて今回の重心値Gが求められるので,従来と
比べて,より前回の重心値G1 に近い重心値Gを得るこ
とができる。従って,回転ブラシ13のモータ6(又は
送風機のモータ19)への出力は,前回の制御を反映し
たものとなる。これによって,例えば図13及び図14
の実線に示すように,上記モータ6(又はモータ19)
への出力を滑らかに変化させることができ変化回数を少
なくすることができる。その結果,使用者の不快感を低
減化することができる。なお,前回の重心値と同じ重心
値を有するメンバシップ関数を作成する際に,図4に示
すように,三角形の高さと面積を大きくしたメンバシッ
プ関数OM3 を用いると,このときの複合メンバシップ
関数の重心値G3 は,前回の重心値G1 に近くなり,前
回からの出力の変化を小さくすることができる。逆に,
三角形の高さを小さくし底辺を広げたメンバシップ関数
OM4 を用いると,前回の重心値G1 を考慮しない場合
の重心値G2 に近づくことになる。従って,例えば,機
種の違い等による制御対象の特性に応じて上記メンバシ
ップ関数OM,OM3 ,OM4 の形状を適宜設定すれば
よい。また,上記実施例では演算された連続値としての
仮出力PBX(又はMMX)を離散値である出力段階P
B(又はMM)に変換して出力したが,上記仮出力の値
をそのまま出力してもよい。
【0012】尚,これまで述べた実施例では,前回の推
論時に演算され記憶された重心値(図10,S16,S
17)を記憶しておき,この重心値を今回の推論時に複
合メンバシップ関数の合成(同図,S13〜S15)に
利用したが,このような過去用いた重心値を利用する方
法に代えて,制御対象としてのモータ6(又はモータ1
9)へ出力される出力段階PB(又はMM)を利用する
方法もある。このような実施例方法を以下に述べる。上
述したように,上記出力段階は6段階の離散値に設定さ
れている。そこで,例えば図12に示すように,仮出力
方向の座標成分が上記出力段階PBの値と一致する重心
値を有するメンバシップ関数OM(1)〜OM(6)を
出力段階PB(=1,2…,6)毎に予め設定し,例え
ばメモリ9に格納しておく。そこで,修正サブルーチン
(図11,S9)において,モータ6へ出力される出力
段階PBが決定されると,この出力段階PBをメモリに
格納しておく(S91)。このときの出力段階PBを例
えば2とする。そして,次回の推論時(図10,S8)
に同図のステップS13において,重心値G1 の代わり
に上記メモリ9に格納されている出力段階PBを読み出
す。なお,ステップS14においては図中の如く新たな
メンバシップ関数OMを作成することなく,当該出力段
階PB(=2)に対応したメンバシップ関数OM(2)
(図12)がメモリ9から読み出されるだけですむ。引
続き,ステップS15において,例えば先の実施例にて
述べた如く(S12)修正されたメンバシップ関数MS
1 ,L1 と上記読み出されたメンバシップ関数OM
(2)とから複合メンバシップ関数が合成され,ステッ
プS16において当該メンバシップ関数の重心値Gが求
められる。この場合,上記重心値Gをメモリ9に格納す
る必要はなくステップS17の処理は省略される。そし
て,上記重心値Gに基づいて先の実施例と同様の処理が
ステップS18〜S19において実行される。従って,
この実施例方法によれば,前回の出力段階の値を反映し
て今回の出力段階が決定されるので,先の実施例同様に
制御対象への出力を滑らかに変化させることができる。
加えて,先の実施例のファジィ演算サブルーチン(S
8)におけるメンバシップ関数OMを新たに作成するス
テップS14に係るプログラムを備える必要がないの
で,プログラムが簡素化される。その結果,演算時間の
短縮化を図ることができ,極めて実用的な制御方法とな
る。又,ひとつの出力段階には,連続値として数値幅の
ある仮出力の値が四捨五入等により含まれる。従って,
上記制御対象への出力として上記出力段階を用いた場合
は,上記仮出力の値を直接出力する場合と較べて,出力
値が前回と較べて変化する回数が少なくなる。これによ
って,モータ等の出力変化に伴った音の変化による不快
感が低減化される。尚,上記した実施例では,電気掃除
機への適用例を示したが,これに限定されず,制御対象
への出力を滑らかに変化させる場合に好適である。
論時に演算され記憶された重心値(図10,S16,S
17)を記憶しておき,この重心値を今回の推論時に複
合メンバシップ関数の合成(同図,S13〜S15)に
利用したが,このような過去用いた重心値を利用する方
法に代えて,制御対象としてのモータ6(又はモータ1
9)へ出力される出力段階PB(又はMM)を利用する
方法もある。このような実施例方法を以下に述べる。上
述したように,上記出力段階は6段階の離散値に設定さ
れている。そこで,例えば図12に示すように,仮出力
方向の座標成分が上記出力段階PBの値と一致する重心
値を有するメンバシップ関数OM(1)〜OM(6)を
出力段階PB(=1,2…,6)毎に予め設定し,例え
ばメモリ9に格納しておく。そこで,修正サブルーチン
(図11,S9)において,モータ6へ出力される出力
段階PBが決定されると,この出力段階PBをメモリに
格納しておく(S91)。このときの出力段階PBを例
えば2とする。そして,次回の推論時(図10,S8)
に同図のステップS13において,重心値G1 の代わり
に上記メモリ9に格納されている出力段階PBを読み出
す。なお,ステップS14においては図中の如く新たな
メンバシップ関数OMを作成することなく,当該出力段
階PB(=2)に対応したメンバシップ関数OM(2)
(図12)がメモリ9から読み出されるだけですむ。引
続き,ステップS15において,例えば先の実施例にて
述べた如く(S12)修正されたメンバシップ関数MS
1 ,L1 と上記読み出されたメンバシップ関数OM
(2)とから複合メンバシップ関数が合成され,ステッ
プS16において当該メンバシップ関数の重心値Gが求
められる。この場合,上記重心値Gをメモリ9に格納す
る必要はなくステップS17の処理は省略される。そし
て,上記重心値Gに基づいて先の実施例と同様の処理が
ステップS18〜S19において実行される。従って,
この実施例方法によれば,前回の出力段階の値を反映し
て今回の出力段階が決定されるので,先の実施例同様に
制御対象への出力を滑らかに変化させることができる。
加えて,先の実施例のファジィ演算サブルーチン(S
8)におけるメンバシップ関数OMを新たに作成するス
テップS14に係るプログラムを備える必要がないの
で,プログラムが簡素化される。その結果,演算時間の
短縮化を図ることができ,極めて実用的な制御方法とな
る。又,ひとつの出力段階には,連続値として数値幅の
ある仮出力の値が四捨五入等により含まれる。従って,
上記制御対象への出力として上記出力段階を用いた場合
は,上記仮出力の値を直接出力する場合と較べて,出力
値が前回と較べて変化する回数が少なくなる。これによ
って,モータ等の出力変化に伴った音の変化による不快
感が低減化される。尚,上記した実施例では,電気掃除
機への適用例を示したが,これに限定されず,制御対象
への出力を滑らかに変化させる場合に好適である。
【0013】
【発明の効果】第1の発明は上記したように構成されて
いる。従って,前回の制御結果を今回の制御に反映する
ことができる。それによって,制御対象への出力を滑ら
かに変化させることができるので,使用者に大きな不快
感,ひいては危険を与えることがない。又,第2の発明
は上記したように構成されている。それにより,上記第
1の発明による効果に加えて,制御対象へ出力される出
力変数値の変動回数が少なくなり,これによって使用者
の不快感が一層軽減される。その上,処理ステップが少
なくて済むので,演算時間が短縮化され極めて実用的な
制御方法である。
いる。従って,前回の制御結果を今回の制御に反映する
ことができる。それによって,制御対象への出力を滑ら
かに変化させることができるので,使用者に大きな不快
感,ひいては危険を与えることがない。又,第2の発明
は上記したように構成されている。それにより,上記第
1の発明による効果に加えて,制御対象へ出力される出
力変数値の変動回数が少なくなり,これによって使用者
の不快感が一層軽減される。その上,処理ステップが少
なくて済むので,演算時間が短縮化され極めて実用的な
制御方法である。
【図1】 本発明の一実施例に係るファジィ制御装置の
制御系統を示すブロック図。
制御系統を示すブロック図。
【図2】 上記ファジィ制御装置が適用される電気掃除
機の回転ブラシの回転数のバラツキまたは理想回転数か
らの偏差に関するファジィ変数毎に設定されたメンバシ
ップ関数を示すグラフ図。
機の回転ブラシの回転数のバラツキまたは理想回転数か
らの偏差に関するファジィ変数毎に設定されたメンバシ
ップ関数を示すグラフ図。
【図3】 上記回転ブラシの回転数のバラツキ及び偏差
に複数のファジィルールを適用して条件部が満たされる
ファジィルールの結論部のメンバシップ関数を修正する
態様を示す説明図。
に複数のファジィルールを適用して条件部が満たされる
ファジィルールの結論部のメンバシップ関数を修正する
態様を示す説明図。
【図4】 上記修正された結論部のメンバシップ関数等
を合成してその重心を得る態様を示す説明図。
を合成してその重心を得る態様を示す説明図。
【図5】 上記ファジィ制御装置のメインルーチンの処
理手順を示すフローチャート。
理手順を示すフローチャート。
【図6】 演算途中での上記送風機用モータ及び回転ブ
ラシ用のモータの停止を防止するための保留サブルーチ
ンの処理手順を示すフローチャート。
ラシ用のモータの停止を防止するための保留サブルーチ
ンの処理手順を示すフローチャート。
【図7】 送風機用のモータ及び回転ブラシ用のモータ
へ出力するための出力サブルーチンの処理手順を示すフ
ローチャート。
へ出力するための出力サブルーチンの処理手順を示すフ
ローチャート。
【図8】 上記電気掃除機のリードスイッチからの出力
に基づいて回転ブラシの回転数を演算するための計測サ
ブルーチンの処理手順を示すフローチャート。
に基づいて回転ブラシの回転数を演算するための計測サ
ブルーチンの処理手順を示すフローチャート。
【図9】 上記回転ブラシの回転数のバラツキと理想回
転数からの偏差を求めるための計算サブルーチンの処理
手順を示すフローチャート。
転数からの偏差を求めるための計算サブルーチンの処理
手順を示すフローチャート。
【図10】 上記回転ブラシ及び送風機のそれぞれのモ
ータへの出力を決定するためのファジィ演算ルーチンの
処理手順を示すフローチャート。
ータへの出力を決定するためのファジィ演算ルーチンの
処理手順を示すフローチャート。
【図11】 上記ファジィ演算ルーチンにより決定され
た各モータへの出力を修正するための修正サブルーチン
の処理手順を示すフローチャート。
た各モータへの出力を修正するための修正サブルーチン
の処理手順を示すフローチャート。
【図12】 出力段階毎に設定されたメンバシップ関数
を示すグラフ図。
を示すグラフ図。
【図13】 上記ファジィ制御装置により制御された回
転ブラシ用のモータへの出力の変化の一例を示すグラフ
図。
転ブラシ用のモータへの出力の変化の一例を示すグラフ
図。
【図14】 上記回転ブラシ用のモータへの出力の変化
の別例を示すグラフ図。
の別例を示すグラフ図。
【図15】 本発明の背景の一例となる従来のファジィ
制御装置を備えた電気掃除機を示す外観図。
制御装置を備えた電気掃除機を示す外観図。
【図16】 上記電気掃除機の吸込口部の上蓋を取り外
した状態を示す平面図。
した状態を示す平面図。
1…ファジィ制御装置 2…電気掃除機 3…吸込口部 4…リードスイッ
チ 5…マグネット 6…モータ 7…演算制御部 8…ファジィルー
ルベース 9…メモリ
チ 5…マグネット 6…モータ 7…演算制御部 8…ファジィルー
ルベース 9…メモリ
Claims (2)
- 【請求項1】 制御対象からの入力変数のファジィ変数
を条件部とし上記制御対象への出力変数のファジィ変数
を結論部とするファジィルールと,上記ファジィルール
の入力変数及び出力変数のファジィ変数毎に予め設定さ
れているメンバシップ関数とを用い,上記制御対象から
の入力変数値に対応するファジィ変数を条件部に備えた
ファジィルールを抽出し,上記抽出されたファジィルー
ルの条件部のファジィ変数のメンバシップ関数値を上記
入力変数値に基づいて演算し,上記演算されたメンバシ
ップ関数値に基づいて上記出力変数のファジィ変数のメ
ンバシップ関数を上記抽出されたファジィルール毎に修
正し,上記修正されたファジィルール毎のメンバシップ
関数を合成し,上記合成されたメンバシップ関数の重心
値に基づいて上記制御対象へ出力されるべき出力変数値
を決定するファジィ制御方法において, 上記重心値を記憶手段に格納し, 上記記憶手段に格納された重心値と一致する重心値を有
し,制御対象に応じた形状の出力変数に関するメンバシ
ップ関数を作成し, 新たに修正されたファジィルール毎の出力変数のファジ
ィ変数のメンバシップ関数と上記作成された出力変数の
メンバシップ関数とより複合メンバシップ関数を合成
し, 上記複合メンバシップ関数の重心値に基づいて上記制御
対象への出力変数値を決定したことを特徴とするファジ
ィ制御方法。 - 【請求項2】 制御対象からの入力変数のファジィ変数
を条件部とし上記制御対象への出力変数のファジィ変数
を結論部とするファジィルールと,上記ファジィルール
の入力変数及び出力変数のファジィ変数毎に予め設定さ
れているメンバシップ関数とを用い,上記制御対象から
の入力変数値に対応するファジィ変数を条件部に備えた
ファジィルールを抽出し,上記抽出されたファジィルー
ルの条件部のファジィ変数のメンバシップ関数値を上記
入力変数値に基づいて演算し,上記演算されたメンバシ
ップ関数値に基づいて上記出力変数のファジィ変数のメ
ンバシップ関数を上記抽出されたファジィルール毎に修
正し,上記修正されたファジィルール毎のメンバシップ
関数を合成し,上記合成されたメンバシップ関数の重心
値に基づいて上記制御対象へ出力されるべき出力変数値
を決定するファジィ制御方法において, 上記出力変数値を多段階の離散値に設定し, 上記出力変数値に対応する重心値を有し,制御対象に応
じた形状の出力変数に関するメンバシップ関数を上記出
力変数値毎に予め設定し, 上記決定された出力変数値を記憶手段に格納し, 新たに修正されたファジィルール毎の出力変数のファジ
ィ変数のメンバシップ関数と上記記憶手段に格納された
出力変数値のメンバシップ関数とより複合メンバシップ
関数を合成し, 上記複合メンバシップ関数の重心値に基づいて上記制御
対象への出力変数値を決定したことを特徴とするファジ
ィ制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24325291A JPH0581032A (ja) | 1991-09-24 | 1991-09-24 | フアジイ制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24325291A JPH0581032A (ja) | 1991-09-24 | 1991-09-24 | フアジイ制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0581032A true JPH0581032A (ja) | 1993-04-02 |
Family
ID=17101107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP24325291A Pending JPH0581032A (ja) | 1991-09-24 | 1991-09-24 | フアジイ制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0581032A (ja) |
-
1991
- 1991-09-24 JP JP24325291A patent/JPH0581032A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH09191669A (ja) | 振動波駆動装置の制御装置 | |
JPH0926813A (ja) | 自由曲線補間方式 | |
JPH0581032A (ja) | フアジイ制御方法 | |
JP3466111B2 (ja) | 数値制御装置 | |
JP6695499B1 (ja) | 同期回転機の制御装置及び機械学習装置 | |
JPH0619716A (ja) | ファジィ制御方法 | |
JPH07151096A (ja) | ファジィ送風機 | |
JPH0695294B2 (ja) | 産業用ロボットの軌跡補間方法 | |
KR100244680B1 (ko) | 로봇의 구동모터 가,감속 제어장치 및 그 방법 | |
JP3491392B2 (ja) | 交差コイル型指針装置 | |
JP4433618B2 (ja) | ロボット制御装置、ロボットの制御方法及びロボット | |
JPH06299892A (ja) | エンジンコントローラ | |
JP2806933B2 (ja) | 工具補正方法 | |
JPH0460703A (ja) | ファジイ制御装置 | |
JP2000083392A (ja) | モータ制御装置 | |
JPH0297291A (ja) | モータの自動制御装置 | |
JP3113096B2 (ja) | 歯科治療用工具の制御装置 | |
JPH0689104A (ja) | ファジィ制御装置 | |
JP3181017B2 (ja) | 指針式表示装置 | |
JP2739500B2 (ja) | ルール群の選択装置,制御装置,ファジィルール設定装置,ファジィルール設定方法,ルール群の選択方法,制御方法 | |
JPH05321728A (ja) | 内燃機関におけるスロットル開度制御方法 | |
JP2834486B2 (ja) | モータ制御装置 | |
JPH06241084A (ja) | エンジンの回転数制御装置 | |
JP3012264B2 (ja) | マッサージ機 | |
JPH03288072A (ja) | 電動弁の位置決め制御方法 |