|
Алгоритм оптимального регулирования |
|
|
|
Jun 17 2006, 17:40
|
Участник

Группа: Новичок
Сообщений: 43
Регистрация: 17-06-06
Пользователь №: 18 139

|
Есть черный ящик (с микроконтроллером  . У ящика один аналоговый вход и один аналоговый выход. На вход ящика поступает напряжение обратной связи с объекта регулирования, ессно с запаздыванием. Необходимо установить и поддерживать выходное напряжение ящика так, чтобы напряжение обратной связи было максимальным для данного состояния объекта. Этот максимум у объекта регулирования, в зависимости от входной величины с ящика, есть. Но максимум сам по себе величина не постоянная и зависит от многих, не поддающихся управлению факторов. Интересует литература и примеры программной реализации и алгоритмы решения подобных задач на микроконтроллерах.
|
|
|
|
|
Jun 17 2006, 17:56
|
Частый гость
 
Группа: Свой
Сообщений: 181
Регистрация: 25-02-06
Пользователь №: 14 663

|
Цитата(Stefan @ Jun 17 2006, 21:40)  Этот максимум у объекта регулирования, в зависимости от входной величины с ящика, есть. Но максимум сам по себе величина не постоянная и зависит от многих, не поддающихся управлению факторов. Такие вещи делаются на основе нейроалгоритмов (англ. - neuro). Google - завались.
|
|
|
|
|
Jun 17 2006, 19:48
|
Участник

Группа: Новичок
Сообщений: 43
Регистрация: 17-06-06
Пользователь №: 18 139

|
Цитата(TED17 @ Jun 17 2006, 20:56)  Цитата(Stefan @ Jun 17 2006, 21:40)  Этот максимум у объекта регулирования, в зависимости от входной величины с ящика, есть. Но максимум сам по себе величина не постоянная и зависит от многих, не поддающихся управлению факторов.
Такие вещи делаются на основе нейроалгоритмов (англ. - neuro). Google - завались. Попробую применить алгоритмы нечеткой логики.
|
|
|
|
|
Jun 18 2006, 11:28
|
Частый гость
 
Группа: Свой
Сообщений: 181
Регистрация: 25-02-06
Пользователь №: 14 663

|
Цитата(alex_os @ Jun 18 2006, 11:38)  Интересно, а кто-нибудь здесь делал "нейро-алгоритм"?. Кажется практическая применимость их весьма невелика... Ну я делал. Распознавание специфичных ситуаций на конечном интервале из длинной последовательности отсчетов. Работало.
|
|
|
|
|
Jun 18 2006, 17:22
|
Участник

Группа: Новичок
Сообщений: 43
Регистрация: 17-06-06
Пользователь №: 18 139

|
Цитата(DS_ @ Jun 17 2006, 23:07)  Надеюсь, Вам не химическим реактором, котлом или еще чем таким управлять с такими алгоритмами. Нет, это весьма крупная печь. Сейчас ей вполне успешно управляет дядя Вася. Но Васю хотят заменить контроллером. Что касается защит от неправильного управления, то они, конечно, есть.
|
|
|
|
|
Jun 18 2006, 17:34
|
Участник

Группа: Новичок
Сообщений: 43
Регистрация: 17-06-06
Пользователь №: 18 139

|
Цитата(rezident @ Jun 18 2006, 02:01)  Если есть возможность, то нужно снять экспериментальные данные и уже по ним подобрать алгоритм управления. Ну конечно. Но есть нюанс. Параметры объекта меняются случайно в широких пределах. Объект управления - печь. Ее загрузка - величина случайная. А от этого зависят временнЫе параметры печи с загрузкой. Я предполагаю эти параметры определять(уточнять) оперативно.
|
|
|
|
|
Jun 18 2006, 18:20
|
Участник

Группа: Новичок
Сообщений: 43
Регистрация: 17-06-06
Пользователь №: 18 139

|
Цитата(NickNich @ Jun 18 2006, 01:43)  Если я правильно понял, то проектируемая система скорее "система экстремального регулирования", но никак не "система оптимального регулирования". Вот это название имеет смысл прогуглить на предмет алгоритмов реализации. Самые известные из них - способ наискорейшего спуска и способ градиента. Да уж какая там оптимальность, когда только один параметр измеряется. Ближе всего к "поисковой СЭР". Но вот сам "поиск" хочется сделать побыстрее.
|
|
|
|
|
Jun 18 2006, 18:23
|
Частый гость
 
Группа: Свой
Сообщений: 181
Регистрация: 25-02-06
Пользователь №: 14 663

|
Цитата(Stefan @ Jun 18 2006, 21:34)  Цитата(rezident @ Jun 18 2006, 02:01)  Если есть возможность, то нужно снять экспериментальные данные и уже по ним подобрать алгоритм управления.
Ну конечно. Но есть нюанс. Параметры объекта меняются случайно в широких пределах. Объект управления - печь. Ее загрузка - величина случайная.... Нейроалгоритмы помогут только если количество решений ограничено, тогда любую случайную ситуацию на конечном отрезке можно как то классифицировать. Печь - вешь довольно инерционная и поледовательность осчетов переходных процессов уже не случайна. Ну а дальше - ПИД регулятор(ы), где коэффицентами - решения нейросети.
|
|
|
|
|
Jun 19 2006, 03:01
|
Знающий
   
Группа: Свой
Сообщений: 704
Регистрация: 15-10-05
Из: г.Томск
Пользователь №: 9 686

|
Цитата Есть черный ящик (с микроконтроллером . У ящика один аналоговый вход и один аналоговый выход Stefan, а какой параметр надо регулировать = темп-ру, скорость темп. или что-то еще? мощность печи меняется дискретно или линейно? порядок мощности печи - единицы, десятки, сотни, тыщи кВт?
--------------------
|
|
|
|
|
Jun 19 2006, 04:27
|
Участник

Группа: Новичок
Сообщений: 43
Регистрация: 17-06-06
Пользователь №: 18 139

|
Цитата(LordN @ Jun 19 2006, 06:01)  Цитата Есть черный ящик (с микроконтроллером . У ящика один аналоговый вход и один аналоговый выход Stefan, а какой параметр надо регулировать = темп-ру, скорость темп. или что-то еще? мощность печи меняется дискретно или линейно? порядок мощности печи - единицы, десятки, сотни, тыщи кВт? Регулируется температура печи. Ее функция, якобы, (это я еще буду проверять) имеет экстремум(максимум), в зависимости от подачи воздуха. Мощность печи - величина переменная, порядка десятков киловатт и меняется дискретно при подаче порции сгораемого материала. После загрузки очередной порции материала, на максимум температуры нужно выйти, ессно, побыстрее.
|
|
|
|
|
Jun 19 2006, 16:20
|
Знающий
   
Группа: Свой
Сообщений: 704
Регистрация: 15-10-05
Из: г.Томск
Пользователь №: 9 686

|
Цитата Необходимы колебания для обнаружения перехода через экстремум. гы, вот их-то вводить и не потребуется, они там будут и так. посмотрите на дифф.ур-у для системы с запаздыванием и инерционностью.
--------------------
|
|
|
|
|
Jun 19 2006, 17:35
|
Участник

Группа: Новичок
Сообщений: 43
Регистрация: 17-06-06
Пользователь №: 18 139

|
Цитата(LordN @ Jun 19 2006, 09:43)  ага, кое-что проясняется... так это котел? что печка-то греет = воду или еще что? В печке горит мусор
|
|
|
|
|
Jun 19 2006, 17:58
|
Местный
  
Группа: Свой
Сообщений: 375
Регистрация: 8-11-05
Пользователь №: 10 593

|
Цитата(LordN @ Jun 19 2006, 20:20)  гы, вот их-то вводить и не потребуется Если выбран такой метод поиска максимума, то вводить потребуется. Колебания, которые появляются из-за запаздывания и инерционности являются нежелательным явлением. При проектировании любой автоматической системы стремятся сделать так, чтобы эти колебания затухали настолько быстро, насколько возможно. К тому же, амплитуда этих колебаний зависит от величины скачка, вызвавшего переходный процесс. Поэтому эти колебания непригодны как поисковое движение. Дополнительно - частота поисковых колебаний должна быть много больше характерного времени изменения положения искомого максимума. "Звон" в переходном процессе заведомо этому условию не удовлетворяет. Алгоритм, при котором в управляющий сигнал вводятся высокочастотные колебания называется алгоритмом синхронного детектирования. После сглаживания доп. движений позволяет получить вектор, сонаправленный с градиентом в текущем состоянии системы. Т.е. дает направление, в котором надо двигаться регулятору, чтобы достич максимума.
|
|
|
|
|
Jun 19 2006, 17:59
|
Участник

Группа: Новичок
Сообщений: 43
Регистрация: 17-06-06
Пользователь №: 18 139

|
Цитата(TED17 @ Jun 19 2006, 08:50)  Когда то занимался автоматикой паровых котлов. Оптимизация их термодинамики очень непроста - речь шла об улучшени на 2-3%. На эту тему существовало куча научных трактатов. Общих и простых решений тут нет. А я здесь далек от шапкозакидательства. В отличие от моего начальства  С этим объектом типичный совок. Когда сначала сделали установку, а затем поняли, что ее нужно автоматизировать. Потому что иначе ее в современных условиях можно продавать только по цене металлолома.
|
|
|
|
|
Jun 20 2006, 00:44
|
Частый гость
 
Группа: Свой
Сообщений: 181
Регистрация: 25-02-06
Пользователь №: 14 663

|
Цитата(_artem_ @ Jun 20 2006, 02:04)  Если дадю Васю симитировать надо .....А если серезно - чем Вам fuzy logic аля Вася не нравится ? Потери от дядей Васей (и подобной автоматики) из за не оптимальности режимов сгорания будут заметно превышать его зарплату. Поищите лучше спецлитературу.
|
|
|
|
|
Jun 20 2006, 17:38
|
Участник

Группа: Новичок
Сообщений: 43
Регистрация: 17-06-06
Пользователь №: 18 139

|
Цитата(_artem_ @ Jun 20 2006, 01:04)  Если дадю Васю симитировать надо , сняли бы показания с него (поставили датчик воздушного потока и измеряемой величины) за Н-ное количество человеко/бутылок а затем в виде графика на экране и все станет ясно - мусоросжигалка пятого поколения с экономией до 12 минимальных заработных плат в год.
А если серезно - чем Вам fuzy logic аля Вася не нравится ? Да Васю я запросто смоделирую  . Не впервой. Тем более с современными процессорами да C++. Но дело то интересное. Хотят получить из ... конфетку, причем это реально достижимо. Вместо рубильников ставят частотные векторные преобразователи. Тепло от сгорания мусора (что само по себе уже неплохо) идет на подогрев жилья. Т.е. энергосберегающие технологии будущего, блин... А тут я, с моделью Васи  . А если честно, порылся я по инету в поисках решений с fuzzy logic, и пришел к выводу, что эту информацию подзажимают. Даже те, кто когда-то чего-то публиковал, как-то стесняются. А если что и есть, то либо научно-популярное, либо от практики далеко
|
|
|
|
|
Jun 20 2006, 17:56
|
Гуру
     
Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250

|
Задача с печкой, по-моему классическая, и никаких хитрых алгоритмов тут не надо. Физика заключается в том, что избыток воздуха горение не усиливает, а тепло уносит. Надо замерить инерционности печки, и использовать ПИ регулятор с контролем производной.
Да, еще вспомнил - обычно в печки ставят датчик CO или кислорода в отходящих газах. Нуль концентрации этих газов и есть оптимальная подача воздуха.
--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
|
|
|
|
|
Jun 21 2006, 07:23
|

Местный
  
Группа: Свой
Сообщений: 451
Регистрация: 29-01-06
Из: Питер
Пользователь №: 13 728

|
Цитата(Tanya @ Jun 21 2006, 10:09)  Цитата(DS_ @ Jun 20 2006, 21:56)  Задача с печкой, по-моему классическая, и никаких хитрых алгоритмов тут не надо. Физика заключается в том, что избыток воздуха горение не усиливает, а тепло уносит. Надо замерить инерционности печки, и использовать ПИ регулятор с контролем производной.
Да, еще вспомнил - обычно в печки ставят датчик CO или кислорода в отходящих газах. Нуль концентрации этих газов и есть оптимальная подача воздуха.
В данном случае все намного сложнее. Загрузка импульсная. Топливо кусками. Тепломассообмен не описан. Это сложная трехмерная сопряженная (тепломасообмен + химия) задача (процесс). И нестационарный. Поэтому с памятью. Не лучше ли обратиться за помощью к специалистам по физике и химии горения? "В данном случае все намного сложнее..." - совершенно верно ! Попробую сформулировать (в первом приближении и далеко не полный) перечень параметров и характеристик, которые должны быть количественно определены для расчета системы управления: а) предпосылки - печь используется для сжигания отходов, попутная утилизация полученного тепла - задача вторичная, исходными являются показатели расхода горючего материала; б) масса и состав сжигаемых отходов величины непостоянные, следовательно должны быть определены границы допустимого диапазона и несколько точек внутри него; в) выходные параметры (нормы содержания СО, диоксинов, ... ) для продуктов горения; г) .... ..... без специалистов (как уже было сказано 'Tanya' ) не обойтись ... но, ... можно попытаться (тем более, что сама печь уже построена и работает), если: 1) произвести замеры указанных параметров и характеристик (как входных так и выходных) для различных точек диапазона загрузки сжигаемых масс; 2) вывести эмпирические зависимости указанных входных и выходных параметров от темепературы горения (а точнее - от количества и качества подаваемых в печь горючего материала и аналогичных характеристик воздуха); 3) рассчитать параметры ПИД или/и ПИ модели процесса регулирования с учетом полученных в п.2 зависимостей (примечание , управляемыми(регулируемыми) параметрами процесса могут быть - количество горючего материала, количество воздуха, оба параметра вместе); 4) реализовать полученный по п.3 регулятор на аналоге или цифре и поросимулировать этот регулятор; 5) положить результаты п.п.2-3 на макет и опробовать его на реальном процессе; 6) откорректировать коэффициенты управляющих воздействий регулятора по результатам измерений на реальном процессе и реализовать систему в железе. ------------- когда-то, довелось подшабашить, сделал по подобной методе (есствнно, без моделирования и симуляции) регулятор (взамен типового) на аналоговых элементах и реле для управления газовой котельной одной крупной больницы ... но эта задача была значительно проще поставленной перед автором этой ветки ИМХО и без претензий на ....
|
|
|
|
|
Jun 21 2006, 09:03
|
Гуру
     
Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250

|
Печка, конечно, вещь крайне сложная. И если подходить к ней по всей науке, то наверное можно будет сделать вывод, что управлять ей вообще невозможно. Кстати, заменить дядю Васю на операции определения размера порции мусора, наверное будет сложнее всего - очень трудно представить себе автоматизированную систему, которая отличит сухие древесные опилки от гнилых картофельных очисток - дядя Вася даже после пары стаканов не ошибется. Про измерение CO в качестве сбособа контроля подачи воздуха мне лет 10 назад рассказывали именно как пример правильного решения задачи оптимизации - печка большой инерцией обладает, поэтому оптимизировать по температуре сложно, а содержание газов меняется очень быстро. По моему, кстати сейчас это в любом инжекторном автомобиле есть. По печкам, я естественно, специалист никакой, но задачи управления постоянно приходится решать.
--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
|
|
|
|
|
Jun 21 2006, 09:45
|
Частый гость
 
Группа: Свой
Сообщений: 181
Регистрация: 25-02-06
Пользователь №: 14 663

|
Цитата(DS_ @ Jun 21 2006, 13:03)  ... По моему, кстати сейчас это в любом инжекторном автомобиле есть. Мусор не безин - в нем СО и хроматографом с трудом. При отсутствии внятного понммания процесса и теплодинамческих параметров печи, все же стоит обратить внимание на нечеткие и нейроалгоритмы. Обычно критерием является минимизация топлива при заднных температурных режимах.
|
|
|
|
|
Jun 25 2006, 04:45
|
Участник

Группа: Новичок
Сообщений: 43
Регистрация: 17-06-06
Пользователь №: 18 139

|
Цитата(alex_os @ Jun 22 2006, 10:23)  Цитата(Oldring @ Jun 22 2006, 09:13)  Интересен процесс запуска данной печки-буржуйки: если огонь не горит - нет электричества для вентилятора, или там есть аккумулятор для старта печи или что-нибудь вроде рукоятки для ручного раскручивания вентилятора!?  . Вообще похоже на первоапрельскую шутку, хотя статья от 27 февраля... Интересно то, что когда мы увидели эту печку, слово "буржуйка" возникло сразу  Растапливают ее в лучших традициях средневековья.
|
|
|
|
|
Jun 25 2006, 04:55
|
Участник

Группа: Новичок
Сообщений: 43
Регистрация: 17-06-06
Пользователь №: 18 139

|
Цитата(LordN @ Jun 22 2006, 19:40)  шо могу сказть про печки - на сайтике, в разделе климат, есть кое-какие книжки про печки и прочие энергетические (генерирующие) установки. гадать как и что должно работать - дело не благодарное. настроить регулятор с постоянной времени даже в сотни секунд (без запаздывания!!!) - дело не одной недели, а то и месяца, не говоря уж про тыщи и десятки тыщ. где и что искать конкретно можете поинтересоваться, например, на форуме abok.ru Так как загрузка печи и даже вид топлива изменяются в широких пределах, то для данного случая видится снятие статических и динамических характеристик объекта при разнообразных видах загрузки, что само по себе уже весьма трудоемко. А без этого - только на поклон к Василию  Благодарю за ссылку, обязательно посмотрю.
|
|
|
|
|
Jun 25 2006, 05:25
|
Участник

Группа: Новичок
Сообщений: 43
Регистрация: 17-06-06
Пользователь №: 18 139

|
Цитата(Oldring @ Jun 22 2006, 08:13)  Я видел только один из вариантов, далеко не самый большой (печи делаются разными по величине). Кубик из стали 5мм со стороной ~1.5м, разделенный на две части. Нижняя (бОльшая) часть - камера сгорания. обложена внутри шамотным кирпичом. На полу колосники в виде чугунных скамеек. Дверца для загрузки где-то 0.5х0.5м. Снизу через трубу D=15см дует вентилятор (улитка) на асинхроннике ~1квт. Труба перекрывается заслонкой с позиционером от спутниковой тарелки, управляемым дистанционно (этот воздух - наша "входная величина"). В верхней части печи - водяной теплообменник и труба. Сейчас асинхронник вентилятора включается на полную мощность, и Василий из шкафа управления с помощью позиционера регулирует подачу воздуха в печь. Предполагается заслонку с позиционером убрать, вместо нее поставить частотник, а Василия заменить (дополнить) процессором, управляющим подачей воздуха с помощью частотника.
|
|
|
|
|
Jun 27 2006, 09:25
|

Местный
  
Группа: Свой
Сообщений: 327
Регистрация: 24-06-06
Из: Томск
Пользователь №: 18 328

|
Фирма, где я сейчас работаю, занимается производством жидкостных термостатов. Конечно термостат это не данная печь, но проблемы управления периодически возникают.
Накопленный мной опыт позволяет сказать, что в данной ситуации я бы основное внимание уделил методам fuzzy управления (из описания задачи это само просится). Для этого конечно придется проследить за всеми действиями дяди Васи, которые он совершает в зависимости от текущей ситуации (если он сам это не сможет описать) и разработать базу правил, но сдается, что самое трудное будет, как уже здесь отмечалось, это ввести текущую ситуацию, которую дядя Вася видит глазами, в контроллер. Может быть здесь стоит пойти по пути не полной автоматизиции печки, а только частичной? Скажем во время загрузки очередной партии топлива надо будет нажать какую-нибудь кнопку, которая каким-либо образом связана с количеством и качеством загружаемого топлива.
|
|
|
|
|
Jul 21 2006, 08:10
|
Группа: Новичок
Сообщений: 7
Регистрация: 20-07-06
Пользователь №: 18 973

|
В ~60 годах такой вопрос был решен на базе системы нечеткой логики с использованием алгоритма Мамдани (это, как я помню, была первая практически реализованная система фази регулирования)
|
|
|
|
|
Aug 18 2006, 02:39
|
Знающий
   
Группа: Свой
Сообщений: 618
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 375

|
Цитата(Krys @ Jun 19 2006, 15:48)  Цитата(_artem_ @ Jun 19 2006, 04:12)  Как дилетант в этой области могу предположить что можно сделать систему, постоянно колебляшуюся вокруг максимума. Амплитуда колебаний может быть подстраиваемая . Если максимум не найден колебания выхода регулятора увеличивается а при каждом найденном максимуме диапазон колебаний уменьшается . Типа дельта модулятора.
К стати, недавно учёными доказано, что в системе регулирования баланса у человека специально вводится "шум" (который мы ощущаем как лёгкую, едва заметную дрожь). Где-то видел статью про это. Так что Вы весьма близки к правильному пути. Необходимы колебания для обнаружения перехода через экстремум. Рекомендую тогда прочитать Норберта Винера, книга "Я математик", заодно и "Бывший вундеркинд". Там поймете что доказано не так уж и недавно
|
|
|
|
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|