Fuzzy Logic - spôsob, ako dosiahnuť kontrolu na základe nepresných vstupov

Vyskúšajte Náš Nástroj Na Odstránenie Problémov





V tejto dobe digitálneho riadenia sa takmer každý prístroj ovláda pomocou digitálne riadenie úroveň pomocou 1 a 0. Ale len si myslite, nie je celkom nepraktické myslieť si, že každý výstup denných procesov, na ktorý narazíte, závisí iba od dvoch stavov vstupu. Nie, určite. Len si predstavte, ako vaša matka varí nejaké chutné jedlo a nemôžete sa prestať chváliť. Ako sa teda jedlo stane také chutné? Samozrejme s pridaním prísad v správnom množstve a pomere. Ako to teda zvláda? S dokonalou numerickou znalosťou veličín? Nie vždy. Robí to so známym nápadom, ktorý prichádza so skúsenosťami. Odtiaľ pochádza myšlienka riadiacej logiky, ktorá využíva skôr stupne stavu vstupu ako samotné vstupy, logiku, ktorá nevyžaduje dokonalé vstupy, ale pracuje iba s typickým odhadom vstupov. Toto je fuzzy logika.

Čo je to Fuzzy Logic?

Fuzzy logika je základný riadiaci systém, ktorý sa spolieha na stupne stavu vstupu a výstup závisí od stavu vstupu a rýchlosti zmeny tohto stavu. Inými slovami, fuzzy logický systém pracuje na princípe priradenia konkrétneho výstupu v závislosti od pravdepodobnosti stavu vstupu.




Ako vznikla Fuzzy Logic?

Fuzzy Logic vyvinul v roku 1965 Lotfi Zadeh z Kalifornskej univerzity v Berkley ako spôsob, ako vykonávať počítačové procesy založené skôr na prírodných hodnotách ako na binárnych hodnotách. Spočiatku sa používal ako spôsob spracovania údajov a neskôr sa začal používať ako stratégia kontroly.

Ako funguje Fuzzy Logic?

Fuzzy logika pracuje na koncepcii rozhodovania o výstupe na základe predpokladov. Funguje to na základe setov. Každá množina predstavuje niektoré jazykové premenné, ktoré definujú možný stav výstupu. Každý možný stav vstupu a stupne zmeny stavu sú súčasťou množiny, v závislosti od ktorých sa predpovedá výstup. Funguje na princípe If-else-the, teda ak A A B, potom Z.



Predpokladajme, že chceme ovládať systém, kde výstup môže byť kdekoľvek v množine X, s generickou hodnotou x, takže x patrí do X. Zvážte konkrétnu množinu A, ktorá je podmnožinou X tak, že všetci členovia A patria do interval 0 a 1. Množina A je známa ako fuzzy množina a hodnota fTO(x) pri x označuje stupeň členstva x v tejto množine. O výstupe sa rozhoduje na základe stupňa príslušnosti x v množine. Toto priradenie členstva závisí od predpokladu výstupov v závislosti od vstupov a rýchlosti zmeny vstupov.

Tieto fuzzy množiny sú znázornené graficky pomocou funkcií členstva a o výstupe sa rozhoduje na základe stupňa členstva v každej časti funkcie. O členstve v množinách rozhoduje logika IF-Else.


Všeobecne platí, že premennými množiny sú stav vstupov a stupne zmien vstupu a členstvo výstupu závisí od logiky operácie AND stavu vstupu a od rýchlosti zmeny vstupu. Pre systém s viacerými vstupmi môžu byť premenné tiež rôznymi vstupmi a výstupom môže byť možný výsledok operácie AND medzi premennými.

Fuzzy riadiaci systém

Fuzzy riadiaci systém sa skladá z nasledujúcich komponentov:

Fuzzy logický riadiaci systém

Fuzzy logický riadiaci systém

Fuzzifikátor ktorá transformuje merané alebo vstupné premenné v číselných formách na jazykové premenné.

Kontrolór vykonáva fuzzy logickú operáciu priraďovania výstupov na základe jazykových informácií. Vykonáva približné usudzovanie na základe ľudského spôsobu interpretácie na dosiahnutie logiky riadenia. Ovládač sa skladá z databázy znalostí a odvodzovacieho modulu. Znalostnú základňu tvoria členské funkcie a fuzzy pravidlá, ktoré sa získavajú znalosťami fungovania systému podľa prostredia.

Defuzzifikátor prevádza tento fuzzy výstup na požadovaný výstup na riadenie systému.

Jednoduchý riadiaci systém využívajúci fuzzy logiku na riadenie rýchlosti ventilátora v závislosti od teploty vstupu.

Predpokladajme, že chcete regulovať rýchlosť ventilátora v závislosti od teploty miestnosti. Pre bežného laika, ak je teplota v miestnosti taká, že sa cíti príliš horúca, sa rýchlosť ventilátora zvýši na plnú hodnotu. Ak sa cíti trochu horúci, otáčky ventilátora sa mierne zvýšia. Ak je mu príliš chladno, otáčky ventilátora sa drasticky znížia.

Ako na to váš počítač?

Takto to môžeme dosiahnuť:

Ovládanie rýchlosti ventilátora na základe vstupnej teploty

Ovládanie rýchlosti ventilátora na základe vstupnej teploty

  • Teplotný snímač meria hodnoty teploty v miestnostiach. Získané hodnoty sa odoberajú a potom sa odovzdávajú fuzzifikátoru.
  • Fuzzifier priraďuje jazykové premenné pre každú nameranú hodnotu a rýchlosť zmeny nameranej hodnoty.

Napríklad, ak je nameraná hodnota 40 ° C a viac, je miestnosť príliš horúca

Ak je nameraná hodnota medzi 30 ° C a 40 ° C, je miestnosť dosť horúca

Ak je nameraná hodnota 22 až 28 ° C, je miestnosť mierna

Ak je nameraná hodnota 10 až 20 ° C, je miestnosť chladná

Ak je nameraná hodnota nižšia ako 10, je miestnosť príliš chladná.

  • Ďalším krokom je fungovanie znalostnej bázy, ktorá obsahuje informácie o týchto členských funkciách, ako aj základňu pravidiel.

Napríklad, ak je príliš horúca miestnosť A miestnosť sa rýchlo ohrieva, nastavte rýchlosť ventilátora na vysokú

Ak je miestnosť príliš horúca A miestnosť sa pomaly ohrieva, nastavte otáčky ventilátora na menej ako vysoké.

  • Ďalším krokom je prevod tejto jazykovej výstupnej premennej na numerické premenné alebo logické premenné používané na pohon ventilátora vodič motora .
  • Posledný krok zahŕňa kontrolu otáčok ventilátora poskytnutím správneho vstupu ovládaču motora ventilátora.

Toto je teda stručný prehľad Fuzzy logiky, akékoľvek ďalšie vstupy sú vítané a môžu byť pridané.