ファジー論理コントローラーを設計する方法
ファジー論理コントローラーは、文字通り、私たちの周りにあります。アンチロックブレーキシステムから衣類を掃除する洗濯機まで。しかし、それらは本当に機能しますか?そして、それらを使用する利点は何ですか?
図1。 最近の機械加工は、プロセスの重要な側面を制御するためにファジーロジックに依存することがよくあります。画像はMichaelSchwarzenbergerの好意により使用されました
ラダーロジックとファジーロジック
ファジーロジック制御について学習するための良い出発点は、ラダーロジックがファジーロジックと互換性があるかどうかを判断することです。ラダーロジックは、シーケンシャルロジックが必要な場合にPLC(プログラマブルロジックコントローラー)をプログラミングするために一般的に使用されるルールベースのアプローチです。ラダーロジックプログラムの各ラングは、バイナリまたは離散の論理方程式を表します。
ラダーロジックは左から右、上から下に読み取られることに注意してください。ラダーの右端は出力条件を表します。そのラングの出力条件は、出力の左側にあるラダーロジックシンボルの結果によって異なります。
基本的な例として、図2に示す単一のラングを取り上げます。A/ C(空調)は、スイッチがアクティブで、HighTempまたはHumidのいずれかがアクティブな場合にのみアクティブになることに注意してください。
図2。 A / Cシステムを制御するためのラダーロジックラング。ウィキペディアの厚意により使用された情報
原則として、このラングは次の形式になります。
A / C =スイッチAND(HighTemp OR Humid)
ラダーロジックはルールとして表現できるため、ファジーロジック制御への採用に役立ちます。これを別の考え方として考えると、結果は左側のラダーロジックシンボルで表されるIF条件に依存し、出力はTHENの結果を表します。
IF(Switch AND [HighTemp OR Humid])THEN A / C
図3。 ファジー論理システムを表すブロック図。
このアプローチは、ファジー論理ルールを使用して確実に実装できます。このような場合、鮮明な入力は温度と相対湿度になります。これらの値のセンサー読み取り値は、ファジファイアによってファジィ入力に変換されます。推論エンジンには、他のルールの中でも、上記のルールが含まれます。推論エンジンのルールに基づいて、ファジー出力セットが非ファジー化機能に提示されます。そこから、鮮明な出力が制御システムに提供されます。
つまり、ラダーロジックはファジーロジックを使用して実装できます。
ファジー論理コントローラーを設計するための基本的な手順
ファジー論理制御システム(FLCと略されることが多い)は、制御システムを開発および実装するための代替アプローチです。
図4。 ファジィ制御を実装したシンプルなフィードバック制御システム。 Boffybの好意により使用された画像
関係する仮定を認識する
FLCの設計プロセスを開始する前に、特定の重要な前提条件があります。
- 制御問題の解決策があります。
- 「最適なソリューション」の代わりに「十分に良い」ソリューションを使用できます。
- 入力、出力、および状態変数を監視して、制御に使用できます。
- 知識体系は次の形式で存在します:
- 言語規則、および/または
- ルールを抽出できる入出力データのセット。
- FLCは、許容範囲の精度を達成するように設計する必要があります。
- 安定性と最適性は明確に扱われていませんが、オープンです。
ファジー化のための変数を特定して構成する
FLCを設計する最初のステップは、関連する入力、出力、および状態変数を識別することです。次に、変数のファジーサブセットを決定します。たとえば、温度入力は5つのサブセットに分割され、それぞれに説明的な言語ラベルが付けられます:{「寒い」、「涼しい」、「名目上の」、「暖かい」、「暑い」}。
図5。 メンバーシップ関数を使用して温度を表す例。
変数のサブセットを選択したら、これらのサブセットを表すようにメンバーシップ関数を構成する必要があります。メンバーシップ関数のオプションには、三角形、台形、シグモイド、およびガウスが含まれます。これはファジファイアを構成します 鮮明な入力をファジー値に変換します。ファジーサブセットおよび関連するメンバーシップ関数も、推論エンジンの出力用に構成する必要があることに注意してください。 。
ファジー論理ルールを生成する
従来のラダーロジックコントローラーをファジーロジックコントローラーに変換することは、ファジーロジックルールを生成することから始まります。
仮定でほのめかされているように、これは、すでに存在する、または対象分野の専門家の助けを借りて開発できる言語規則の形をとることがあります。一連の入出力データを指定して、ルールを生成することもできます。また、ラダーロジックの場合、ファジーロジックルールはラダーダイアグラムから直接読み取ることができます。
結果はルールベースです ファジィシステムの場合。
推論エンジンと非ファジー化機能の実装
推論エンジンを実装するには、いくつかの異なるアプローチがあります。 。コントロールでは、2つの最も人気のあるアプローチはMamdaniとSugenoです。どちらのタイプの推論エンジンも、OR演算子を使用してルールベースからのファジー出力を結合し、その後非ファジー化します。 その出力は、鮮明な値を取得します。
ファジー論理コントローラーのアプリケーション
ファジー論理コントローラーは、非常に広く使用されています。たとえば、エレベータには、待ち時間を短縮し、フロア間の移動を最小限に抑え、エネルギー使用量を削減するファジーロジックコントローラが搭載されていることがよくあります。フロア間の移動を最小限に抑えることの追加の利点は、重要なコンポーネントの摩耗を減らし、耐用年数を延ばすことです。
ファジー制御システムのもう1つの魅力的な例には、デジタルビデオカメラとカムコーダーがあります。オペレーターは、一貫したショットを撮影しているときにカメラを動かしたり振ったりすることができますが、ファジー論理制御により自動的に補正できます。
産業環境では、ファジーロジックは産業プロセスやシステムを制御するためによく使用されます。たとえば、ファジーロジックは、金属の熱処理で使用されるような温度およびプロセスコントローラーでうまく機能します。一般的な熱処理には、正しい冶金学的特性を実現するための非常に正確な傾斜と浸漬のサイクルが含まれます。
FLCの恩恵を受ける同様の用途には、塗装面のゴムの硬化や溶剤の乾燥などがあります。さらに、これらはすべて、通常PID(比例積分微分)コントローラーを利用する制御プロセスの例です。 CNC(コンピューター数値制御)加工は、多くの自律型ロボット工学、マシンビジョン、リモートセンシングと同様に、ファジー論理コントローラーに依存することがよくあります。
図6。 ファジーPIDコントローラーのブロック図。 Mathworksの厚意により使用された画像
ファジー論理制御の長所と短所
ファジー論理制御は、不正確なデータやシステムの非線形性に直面した場合でも機能します。また、人間の経験と知識を制御システムに統合することができ、高度にカスタマイズ可能です。ファジー論理制御システムは、一般に、従来のアプローチと比較して開発が安価であり、より効率的で、堅牢で、信頼性が高い傾向があります。
具体的には、制御では、FLCは、制御システムへのより伝統的なアプローチで必要とされるように、モデルおよび/または目的を正確な用語で定式化する必要はありません。さらに、ファジー制御は他の制御システムと簡単に組み合わせることができます。
もちろん、ファジー制御システムを使用することには欠点があります。ファジーロジックは人工知能(AI)のサブセットですが、機械学習の一種ではないため、適応して学習することはできません。適応型ファジー論理コントローラーがありますが、それらの設計と複雑さは、議論されているファジーコントローラーのタイプをはるかに超えています。
さらに、最終的にはコントローラーが依存するルールを更新する必要があり、ファジーロジックコントローラーは、実装の準備ができていると見なされる前に、広範なテストと検証が必要になります。
ファジー論理コントローラーはいつ使用する必要がありますか?これらは、非常に複雑で、正確なモデルと目的を使用して表現するのが難しい制御問題の優れたオプションです。これらは、不正確なデータと非線形の動作が関係している場合にうまく機能します。また、人間の経験と専門知識をシステムに提供できる場合にも適しています。制御システムでファジーロジックをどのように使用しますか?または、PIDコントローラーのみを使用しますか?
産業用ロボット