| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| Fuzzy Logic алгоритъм http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=4707 |
Страница 1 от 1 |
| Автор: | Yanek [ Пон Авг 27, 2007 4:59 pm ] |
| Заглавие: | Fuzzy Logic алгоритъм |
Въпроса ми е: някой реализирал ли е този алгоритъм на uC? Интересуват ме всякакви оценки: брой променливи, брой правила, вид на системата, стабилност. Целта ми е да заменя ПИД закона с Fuzzy Logic алгоритъм. Дори не съм сигурен дали е възможна пълна замяна. В случая става дума за температурно регулиране. |
|
| Автор: | Ки4о [ Пон Авг 27, 2007 6:07 pm ] |
| Заглавие: | |
Може.Виж из Гооглето.Номера е в съставяне на таблицата с правилата,което зависи от вида и структурата на ПИД регулатора.Много теория е. |
|
| Автор: | MYXATA [ Пон Авг 27, 2007 7:30 pm ] |
| Заглавие: | |
Yanek, ПИД регулатора може да работи с нулева грешка..... може би трябва да хвърлиш много пот в ученето и боя та с fuzzy logic да го подмениш:)- това си е мое скромно мнение. Друг е въпроса трябва ли ти нулева грешка |
|
| Автор: | Ки4о [ Пон Авг 27, 2007 7:41 pm ] |
| Заглавие: | |
По спомени от ТАУ - при нулева грешка регулатора не работи,т.е регулиращото и смущаващото въздействия са константни,т.е няма промяна.Ама щом казвате че може да работи и при нулева грешка... |
|
| Автор: | Yanek [ Пон Авг 27, 2007 8:15 pm ] |
| Заглавие: | |
Да, прав си, че ПИД регулатора може да работи с почти нулева грешка при внимателен подбор на коефициентите и прецизна оценка и корекция на системата. Занимавам се с ПИД регулиране около 12 години и си прав, че вероятно много пот ще излея още. Имам разработка на ПИД с автотунинг, но и той също изисква допълнителна ръчна донастройка. Целта ми не е да правя абсолютно точен регулатор, а регулатор с максимално доближение до зададената стойност без ръчна намеса. Крайната цел е адаптивен Fuzzy Logic, но това на по-следващ етап. |
|
| Автор: | MYXATA [ Пон Авг 27, 2007 8:25 pm ] |
| Заглавие: | |
тъй, ама защо на микроЦ |
|
| Автор: | Yanek [ Пон Авг 27, 2007 8:49 pm ] |
| Заглавие: | |
Защото е като отделен модул или част от управление, за което не се предвижда ПК. |
|
| Автор: | Ки4о [ Пон Авг 27, 2007 9:29 pm ] |
| Заглавие: | |
Малко офтопик по темата,ама мисля че има защо:Внимателния подбор на коефициентите на системата се прави настройвайки точно и конкретна система.Грубата настройка се прави по критерий на Зайгел-Николас или вкарвайки регулатора да самоосцилилира,измервайки някой параметри и настройка.Работата е там,че тези критерии са приблизителни.С други думи настроен регулатор по за система извън нея и сложен на мястото си в нея не гарантира оптимална настройка,даже и да е направена настройката на стенд се изисква отново намеса на оператора на място.Автотунинга е хубаво нещо,ама се исискват строги граници при него за да работи системата устойчиво.Най-трудната работа в такава система е синтеза на блока за оценяване и реакциите.До тука приемаме че си синтезирал правилно блока за наблюдение и остава да оцениш резултата на база зададени правила (грешки,допустими стойности,...) и да изработиш изходната реакция спрямо съответния обект на регулиране и ... се затъва в гювеча. За какво го написах това - всеки обект си има свой характеристики и контролер на база Fuzzy Logic не е панацея.На класическия ПИД сам си го настройваш и аутотунинга ти поддържа твойте направени настройки.Докато при Fuzzy Logic се съблюдава дали стойността която си получил попада в съответното множество,в кой слой,.... доста по сложни са връзките.В някой случаи може да се окаже че грешката при Fuzzy Logic е по-голяма от тази на ПИД-а.При ПИД-а имаш ясни и утъпкани критерии за настройка,докато при Fuzzy Logic дорде го настроиш .... Какво мога да ти предложа да направиш:Синтезираш си (след като си изясниш какво точно ще управляваш ) структурата и правилата на Fuzzy Logic контролера.Наливаш така написания софт в един проц.Настройката я правиш,като съпоставяш поведението на системата със това на класически ПИД. Вариацията на коефициентите ще ти покаже правилната посока.Но това е много четене,писане и сметки. |
|
| Страница 1 от 1 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|