Современные технологии автоматизации» («СТА») —  журнал для квалифицированных специалистов по промышленной автоматизации Форум СТА — современные технологии автоматизации Домашняя страница
Домашняя страница форума CTA Домашняя страница форума CTA > II. АСУТП и SCADA > Программное обеспечение
  Активные темы Активные темы
  FAQ FAQ  Искать в форуме   Зарегистрироваться Зарегистрироваться  Вход в систему Вход в систему

Нечеткая логика в CoDeSys

 Ответить Ответить Страница  123>
Автор
Сообщение
YuriSergeevich2 Смотреть выпадающим
Новичок
Новичок


Присоединился: 18 Май 2012
Online Status: Offline
Публикации: 10
Свойства публикации Свойства публикации   Ответить, цитируя автора - YuriSergeevich2 Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: Нечеткая логика в CoDeSys
    Опубликовано: 18 Май 2012 06:21
Доброго времени суток всем.
Задача:
Реализовать Fuzzy регулятор для ОВЕН ПЛК (желательно ОВЕН ПЛК 308) в среде программирования CoDeSys.

Подскажите пожалуйста, это вообще возможно сделать?
Ну очень нужно.
Спасибо за Ваши ответы.
Наверх
Petrov Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 15 Январь 2004
Категория: Russian Federation
Online Status: Offline
Публикации: 805
Свойства публикации Свойства публикации   Ответить, цитируя автора - Petrov Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 18 Май 2012 09:40
Возможно ли? В зависимости от того, что такое фузи-регулятор. :)
Если оно - это просто ПИД-регулятор с "нечеткими" настроечными коэффициентами, то реализуемо.

и от стальной его груди отскакивают стрелы.
Наверх
YuriSergeevich2 Смотреть выпадающим
Новичок
Новичок


Присоединился: 18 Май 2012
Online Status: Offline
Публикации: 10
Свойства публикации Свойства публикации   Ответить, цитируя автора - YuriSergeevich2 Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 18 Май 2012 11:35

Fuzzy - регулятор - это самостоятельный регулятор. ПИД здесь не затрагивается никак. 

Данный тип регулятора основан на теории "нечетких множеств". При помощи него можно строить нечеткие аналоги математических понятий и создает формальный аппарат для моделирования человеческих рассуждений и человеческого способа решения задач.

В состав регулятора входит блок с "лингвистическими правилами" типа ЕСЛИ-ТО, на основе этих правил осуществляется формирование логического решения (т.е. регулирующего воздействия на выходе регулятора). 

Проще говоря какой нибудь механик (допустим обслуживающий персонал турбоагрегата ТЭЦ) интуитивно знает как контролируется исполнительным механизмом его рабочий орган (задвижка, клапан и т.п.). Если на основании его знаний создать базу правил и внести в Fuzzy регулятор, то будет качественное регулирование данного рабочего органа.

К примеру правила следующего типа:

Если давление пара слишком высокое то задвижку следует закрыть;

Если давление пара повышается  то задвижку следует прикрывать; 

Если давление пара слишком низкое  то задвижку следует открыть;  Что-то типа того.

Как смог объяснил. 

Теперь требуется реализовать такой регулятор в CoDeSys. В мануале к XSoft-CoDeSys-2 нашел упоминания про Fuzzy - регулятор. Надеюсь, что кто-нибудь поможет. :(

Наверх
Petrov Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 15 Январь 2004
Категория: Russian Federation
Online Status: Offline
Публикации: 805
Свойства публикации Свойства публикации   Ответить, цитируя автора - Petrov Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 18 Май 2012 11:46
бред.
и от стальной его груди отскакивают стрелы.
Наверх
Petrov Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 15 Январь 2004
Категория: Russian Federation
Online Status: Offline
Публикации: 805
Свойства публикации Свойства публикации   Ответить, цитируя автора - Petrov Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 18 Май 2012 11:54
я так понимаю, что фузи-регулятор - это такой регулятор, который в зависимости от ситуации изменяет свое поведение.
грубо говоря, отслеживается не один вход, а несколько..
вес каждого входа изменяется, и вклад каждой ошибки в результирующее воздействие также изменяется в зависимости от текущего состояния.
по сути, фузи-регулятор - есть суперпозиция нескольких ПИД, каждый из которых имеет динамический вес.
и от стальной его груди отскакивают стрелы.
Наверх
YuriSergeevich2 Смотреть выпадающим
Новичок
Новичок


Присоединился: 18 Май 2012
Online Status: Offline
Публикации: 10
Свойства публикации Свойства публикации   Ответить, цитируя автора - YuriSergeevich2 Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 18 Май 2012 12:37

Прошу меня извинить, если непонятно что-то объясняю. Поскольку сам не сильно в этом разбираюсь. Честно говоря плохо понял, что Вы написали, но пытаюсь разобраться.

Попытаюсь по другому объяснить.

На вход регулятора могут поступать несколько сигналов, допустим если регулирование с ПИД-регулятором, то каждая составляющая (П, И, Д) поступает в отдельности. 

Допустим стркутурная схема Fuzzy-ПИД-регулятора выглядит следующим образом:

http://s019.radikal.ru/i604/1205/31/796e369229d6.jpg

Если предварительно не настроить регулятор, то он регулировать не будет. Т.е. он не является самонастраивающимся. Входы и выходы задаются и настраиваются пользователем.

Если на вход подать 3 составляющих ПИД регулятора - то он самостоятельно не распознает, что на него идет 3 сигнала.

Может немного понятнее Вам станет, посмотрите описание в Matlab:

http://matlab.exponenta.ru/simulink/book3/6.php

Наверх
Petrov Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 15 Январь 2004
Категория: Russian Federation
Online Status: Offline
Публикации: 805
Свойства публикации Свойства публикации   Ответить, цитируя автора - Petrov Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 18 Май 2012 13:03
ну я так понял из вашей ссылки, что фузи-регуляторы - это есть надстройка над ПИД, которая фильтрует выдачу раздельно П- И- Д- составляющих на орган в соответствии с матрицей, которую надо еще предварительно настроить? :)   Причем настроить желательно так, чтобы не мешать ПИД-регулятору работать, да?
А без ПИДов фузи бывают вообще? :)
И в чем тут суть "нечеткой" логики и чем это похоже на мышление механика?
и от стальной его груди отскакивают стрелы.
Наверх
YuriSergeevich2 Смотреть выпадающим
Новичок
Новичок


Присоединился: 18 Май 2012
Online Status: Offline
Публикации: 10
Свойства публикации Свойства публикации   Ответить, цитируя автора - YuriSergeevich2 Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 18 Май 2012 16:29

По порядку:

Верно, необходима настройка, которая заключается написании правил.

Если блок Fuzzy будет неверно настроен (допустим будет создано только 2 входа вместо 3-х), то система не будет работать. 

Как я сам понимаю, скорее всего не могут. Возможны вариации, т.е. с П-контроллер на входе, ПД, либо другие варианты.

Про мышление механика-правила с его слов можно составить. 

Может на примере регулирования воды в баке будет чуть-чуть яснее Вам, скриншот из программы Matlab:

http://s59.radikal.ru/i164/1205/6a/15be535df918.jpg

Здесь в блоке фаззи созданы 2 входа и 1 выход. Сначала настраиваем входы: задаем все возможные значения. Затем на выходе. Все я думаю понятно. В более сложных системах необходимы знания специалистов, чтобы правильно настроить блок и составить правила.




Наверх
Petrov Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 15 Январь 2004
Категория: Russian Federation
Online Status: Offline
Публикации: 805
Свойства публикации Свойства публикации   Ответить, цитируя автора - Petrov Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 18 Май 2012 17:19
написать в codesys несколько строчек кода "if then" никаких проблем не вызовет. почему вы спрашивали про codesys?
и от стальной его груди отскакивают стрелы.
Наверх
Petrov Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 15 Январь 2004
Категория: Russian Federation
Online Status: Offline
Публикации: 805
Свойства публикации Свойства публикации   Ответить, цитируя автора - Petrov Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 18 Май 2012 17:35
ну и честно говоря, не вижу никакой нечеткости в правилах "если уровень вырос, то закрыть вентиль".
вот если бы это было что-то типа "уровень растет, ну и пусть с ним, потому что тенденция роста меняется на тенденцию спада ", то да. в так - шарлатанство чистой воды. :)
и от стальной его груди отскакивают стрелы.
Наверх
 Ответить Ответить Страница  123>

Переход на форум Права доступа на форуме Смотреть выпадающим

Bulletin Board Software by Web Wiz Forums® version 9.64
Powered by Web Wiz Forums Free Express Edition
Copyright ©2001-2009 Web Wiz