Segnetics

Вернуться   Segnetics > Форум Segnetics

Форум Segnetics Территория общения

Ответ
 
Опции темы Поиск в этой теме
Старый 20.03.2008, 13:20   #1
vladun
Senior Member
 
Регистрация: Feb 2007
Сообщения: 174
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Скрипт подключения макросов

Арсений, а нельзя ли в ПИД регулятор подключить этакую зону "нечувствительности", чтоб при малых рассогласованиях привод не "дергало" ?
vladun вне форума   Ответить с цитированием
Старый 24.03.2008, 11:09   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 085
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Скрипт подключения макросов

Реализуется в три блока - сравнение (с дельтой нечувствительности), преобразование бул-инт и мультиплексор

Делает следующее: при входе в зону нечувствительности (блок сравнения) мультиплексор начинает подавать вход "датчика" ПИДа его "уставку". Дельта между датчиком и уставкой получается нулевая и ПИД "замирает". Когда датчик "уплывёт" за зону нечувствительности мультиплексор опять переключится и ПИД начнёт регулировать


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 24.03.2008, 12:36   #3
vladun
Senior Member
 
Регистрация: Feb 2007
Сообщения: 174
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Smile Ответ: Скрипт подключения макросов

Цитата:
Сообщение от Arsie
Реализуется в три блока - сравнение (с дельтой нечувствительности), преобразование бул-инт и мультиплексор

Делает следующее: при входе в зону нечувствительности (блок сравнения) мультиплексор начинает подавать вход "датчика" ПИДа его "уставку". Дельта между датчиком и уставкой получается нулевая и ПИД "замирает". Когда датчик "уплывёт" за зону нечувствительности мультиплексор опять переключится и ПИД начнёт регулировать
Что собсно у меня и вышло, только я ограничивал ВЫХОД регулятора....
Есть ли разница ?
Что скажете Ув. Арсений по поводу моего решения (наверняка оно "не очень" ?
Изображения
Тип файла: jpg capture_24032008_103541.jpg (42.8 Кбайт, 613 просмотров)
Тип файла: jpg capture_24032008_103935.jpg (22.9 Кбайт, 479 просмотров)
vladun вне форума   Ответить с цитированием
Старый 24.03.2008, 12:54   #4
vladun
Senior Member
 
Регистрация: Feb 2007
Сообщения: 174
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Скрипт подключения макросов

Сам себя исправляю (можно предыдущий пост удалить ), так как я делать нельзя потому, как ошибка все равно накапливается в интегральном звене и при переключении моего макроса на вход шарового клапана попадет слишком большое (малое) значение.
Арсений я прав ?
vladun вне форума   Ответить с цитированием
Старый 24.03.2008, 13:40   #5
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 157
Благодарил(а): 240 раз(а)
Поблагодарили: 165 раз(а) в 157 сообщениях
По умолчанию Ответ: Скрипт подключения макросов

по выходу можно это сделать, только нужно делать не так.
самый простой способ - уменьшить дискретность выхода.
по дефолту там макс=1000.
для начала можно сделать примерно следущее:
(int)(AOUT/10) -> (int)( * 10) - получишь на выходе туже 1000, но с дискретностью = 10(тут может быть любое натуральное число от 1 до 1000 ), а не 1. и уже привод не будет шевелиться на каждый чих регулятора...
а можно как написал Арсений, только это довольно геморно - по хорошему надо брать не только саму нейтральную зону, но и скорость входа/выхода в/из неё по всем связанным каналам регулирования. и накручивать на все это дело таймауты..


__________________
C уважением, LordN
LordN вне форума   Ответить с цитированием
Старый 24.03.2008, 15:23   #6
vladun
Senior Member
 
Регистрация: Feb 2007
Сообщения: 174
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Скрипт подключения макросов

Интересно, это новость для меня - и не думал даже о таком .... Наверное это меня не беспокоило никогда. Да и щас просто жизнь заслонке хочется продлить и не более
Т.е. сначала разделил на 10, сделал выход якобы 100 (разрешение 1%), а затем умножил на то же число ? Т.е. эту дискретность можно выбирать ?
Правда ведь - "век живи и век учись", а так же "все гениальное просто".
ЗЫ: да Коллега, не зря у Вас на сайте куча книжек умных лежит
vladun вне форума   Ответить с цитированием
Старый 24.03.2008, 19:15   #7
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 157
Благодарил(а): 240 раз(а)
Поблагодарили: 165 раз(а) в 157 сообщениях
По умолчанию Ответ: Скрипт подключения макросов

Цитата:
Сообщение от vladun
Т.е. эту дискретность можно выбирать ?
естессна, эт же цифрА - делать можно всё что хошь, только осторожно
можно даже сделать переменную дискретность, привязав её к чему-нить типа скорости изменения...
можно сделать её знакозависимой или гистерезистой...
можно всего и всякого накрутить - жизни не хватит все варианты опробовать.
у Вас какой привод? быстрый/медленный, штоковый/поворотный?
я когда макрос для векторного ваял, то обратил внимание, что если сделать 120..200 дискрет на полный вылет, то а) почти не шумит б) точности вполне хватает.
и еще, может и ни к чему это говорить - постоянная интегрирования не д.б. меньше времени полного хода. а лучше раза в два больше..

p.s. книжек давно почти не читаю. лень и некогда. к сожаленью.


__________________
C уважением, LordN
LordN вне форума   Ответить с цитированием
Старый 25.03.2008, 11:06   #8
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 085
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Скрипт подключения макросов

Примерно да. Ваш вариант не супер, т.к. не обеспечивает остановку регулятора.

Вариант с изменением шага регулирования примерно подобен вашему варианту, т.е. также не останавливает регулятор, просто арифметически "загрубляет" управление краном.

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

Вообще, правильно настроенный ПИД не требует введения зоны нечувствительности, но не всегда его возможно правильно настроить. То объект не позволяет, то руки

Я продумываю алгоритм "зоны". ЛордН правильно упомянул контроль скорости захода в зону и выхода из зоны. Но пока что это всё в теории. Практика пока не показывает приемлемых результатов. Да, кран меньше двигается, но качество регулирования страдает слишком сильно.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 25.03.2008, 14:46   #9
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 157
Благодарил(а): 240 раз(а)
Поблагодарили: 165 раз(а) в 157 сообщениях
По умолчанию Ответ: Скрипт подключения макросов

Цитата:
Сообщение от Arsie
Примерно да. Ваш вариант не супер, т.к. не обеспечивает остановку регулятора.

Вариант с изменением шага регулирования примерно подобен вашему варианту, т.е. также не останавливает регулятор, просто арифметически "загрубляет" управление краном.

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

Вообще, правильно настроенный ПИД не требует введения зоны нечувствительности, но не всегда его возможно правильно настроить. То объект не позволяет, то руки

Я продумываю алгоритм "зоны". ЛордН правильно упомянул контроль скорости захода в зону и выхода из зоны. Но пока что это всё в теории. Практика пока не показывает приемлемых результатов. Да, кран меньше двигается, но качество регулирования страдает слишком сильно.
вобщем случае, да, математика для обеспечения подавления зоны шума - не детская задача.
простыми методами можно решить лишь частные случаи...


__________________
C уважением, LordN
LordN вне форума   Ответить с цитированием
Старый 25.03.2008, 21:25   #10
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 157
Благодарил(а): 240 раз(а)
Поблагодарили: 165 раз(а) в 157 сообщениях
По умолчанию Ответ: Скрипт подключения макросов

p.s. я уже как-то давал ссылку на статейку, где про весовые коэфф-ты и т.п.

так вот, по выполнению условий входа в нейтральную зону с их помощью можно ведь не только тупо размыкать всю ОС, а можно действовать плавно и нежно отключая или просто ослабляя воздействие только конкретного члена - например Д-, как самого шумного, или П-. И- можно не трогать, т.к. пакостей всмысле шума в близи точки равновесия от него ожидать не приходится..
а по условию выхода из зоны, можно также плавненько и нежно включить всё ранее отключеное.


__________________
C уважением, LordN
LordN вне форума   Ответить с цитированием
Старый 26.03.2008, 11:23   #11
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 085
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Скрипт подключения макросов

Угу, регулятор седьмой версии готов к такому использованию

Д отключать нельзя, т.к. теряется "предвидение" ситуации. Дрейф на датчике ведь может быть и помехой и ложным возмущением и реальным возмущением, на которое _нужно_ реагировать. Загрубив Д мы получаем ошибку начала регулирования в виде заторможенного регулятора. При отношении дедтайма с времени реакции большем, чем 1:4 (а это часто в вентиляции) смысл в использовании дифференциальной составляющей, в принципе, пропадает.

Насчёт шума чуть не согласен - правильный П шумит тоже немало. Но с ним уже легче справиться, чем с Д

Самые лучшие результаты пока показывает ПИ2Д-регулятор с настраиваемыми частотами среза (типа, разная скорость отработки вверх и вниз). Но настроить 7 связанных параметров, когда не всегда ясно, что нужно крутить - это слишком сильно =)


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 26.03.2008, 12:57   #12
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 157
Благодарил(а): 240 раз(а)
Поблагодарили: 165 раз(а) в 157 сообщениях
По умолчанию Ответ: Скрипт подключения макросов

не понял, почему семь, а не четыре? вы хотите целиком менять регуляторы в зависимости от знака скорости?
Д отключается только в мертвой зоне, Д отключается только для регулятора, Д остаётся на стрёме чтоб включиться в нужный момент. естественно в моменты переключения по мертвой зоне д.б. будет пройти установление, а как без этого? приходится чем-то жертвовать - либо разгружаем механику привода, либо каждый раз при выходе из зоны ждём установления.

p.s. не помню, спрашивал или нет - ПИД регулятор для ваших макросов выполнен по такой
Out=(P+I+D)*K
или по такой
Out+=deltaOut*K
записи для регулятора?


__________________
C уважением, LordN
LordN вне форума   Ответить с цитированием
Старый 27.03.2008, 10:45   #13
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 085
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Скрипт подключения макросов

Там не чистый ПИ2Д: ПИД, ограничение скорости ввер/вниз (это четвёртый, разделённый на 2 параметра по знаку) + 2 параметра, влияющих на остановку первого и второго интеграторов.



__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.

Последний раз редактировалось Arsie, 21.01.2013 в 12:00 Причина: Поправил расположение картинки
Arsie вне форума   Ответить с цитированием
Старый 27.03.2008, 12:18   #14
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 157
Благодарил(а): 240 раз(а)
Поблагодарили: 165 раз(а) в 157 сообщениях
По умолчанию Ответ: Скрипт подключения макросов

теперь понял


__________________
C уважением, LordN
LordN вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать свои сообщения

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 08:23.


Версия vBulletin: 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2024