У меня получились коэффициенты: float Kp = 0.1338; float Ki = 0.061; float Kd = 0.073; Так же работает в Proteus. Проблема есть когда например переключаешь уставку с 900 на 100, то температура падает до 0 и не включается/не растет несколько секунд. Но через несколько секунд растет до заданного значения 100. Пробовал ещё пару функций ПИД - везде проблемы.
А стабилизацию двигателя можно в протеусе посмотреть.?Тут наверное лучше использовать два таймера и одно прерывание по пину.И использовать аппаратно-программную задержку.А выражение a+=b*c можно трактовать как a=a+b*c?
Спасибо. В первой части дошло как работает каждое из звеньев. Смотрел до этого других, если с пропорциональной составляющей понятно и так, то с двумя другими нет токового объяснения.
Незнаю может кому интересно будет... У меня возникла необходимость прикрутить к электроплитке регулятор мощности. И как бы всё просто решается и городить ничего не надо (схема в интернете димера есть) но пришла беда от куда не ждал😂 Война у нас и почта не работает а соответственно в интернете заказать что-то нельзя)) Не нашел я резистор на 500к . Ну вот порылся в интернете и нашел у Алекса Гайвера димер для нагревателей на пропуске полупериодов, ну и переписал его под Аttiny13 всё работает... Ну так я к чему? Раз уж я заморочился то пошел дальше, избавился в ПИД регуляторе от чисел с плавающей точкой, заменил ШИМ на код димера Алекса, добавил переключение между несколькими уставками и получил регулятор на копеечной Attiny13 и копеечном NTC терморезисторе для принтера для контроля трёх заданых значений темпратуры😊 По памяти в притык, по ножкам тоже...😅 По точности в протеусе в п🎉ределах трех значений АЦП (в метале не собирал но думаю в пределах 1-2 градусов температуру держать будет) 😊
Алгоритм кастрированный. Проблема в расчёте интегральной составляющей. Вклад интегральный составляющей берётся в учет только в определенном диапазоне времени, обычно 3... 6 периодов свободных колебаний регулятора. Тогда и вылета не будет такого.
"Интегральный" значит объединяющий, например интегральная микросхема; "дифференциальный" значит разностный, например дифференциальный вход усилителя, а вот регулятор "интегрирующий", т.е. вычисляющий интеграл, или "дифференцирующий", т.е. вычисляющий производную.
Не, ну если контроллер задействован, пусть уже и коефициенты считает и сохраняет.Можно на термопереключателе сделать тогда такой регулятор, а не на мелкосхеме.
Наконец то я нашел простое и понятное обьяснение ПИД регулятора!!! Очень благодарен автору!
Пересмотрел кучу видео о ПИД и только у вас пришло понимание, в очередной раз убеждаюсь, что вы отличный преподаватель. Спасибо
У меня получились коэффициенты:
float Kp = 0.1338;
float Ki = 0.061;
float Kd = 0.073;
Так же работает в Proteus.
Проблема есть когда например переключаешь уставку с 900 на 100, то температура падает до 0 и не включается/не растет несколько секунд. Но через несколько секунд растет до заданного значения 100. Пробовал ещё пару функций ПИД - везде проблемы.
А стабилизацию двигателя можно в протеусе посмотреть.?Тут наверное лучше использовать два таймера и одно прерывание по пину.И использовать аппаратно-программную задержку.А выражение a+=b*c можно трактовать как a=a+b*c?
Спасибо. В первой части дошло как работает каждое из звеньев. Смотрел до этого других, если с пропорциональной составляющей понятно и так, то с двумя другими нет токового объяснения.
Незнаю может кому интересно будет...
У меня возникла необходимость прикрутить к электроплитке регулятор мощности. И как бы всё просто решается и городить ничего не надо (схема в интернете димера есть) но пришла беда от куда не ждал😂 Война у нас и почта не работает а соответственно в интернете заказать что-то нельзя)) Не нашел я резистор на 500к .
Ну вот порылся в интернете и нашел у Алекса Гайвера димер для нагревателей на пропуске полупериодов, ну и переписал его под Аttiny13 всё работает...
Ну так я к чему? Раз уж я заморочился то пошел дальше, избавился в ПИД регуляторе от чисел с плавающей точкой, заменил ШИМ на код димера Алекса, добавил переключение между несколькими уставками и получил регулятор на копеечной Attiny13 и копеечном NTC терморезисторе для принтера для контроля трёх заданых значений темпратуры😊
По памяти в притык, по ножкам тоже...😅 По точности в протеусе в п🎉ределах трех значений АЦП (в метале не собирал но думаю в пределах 1-2 градусов температуру держать будет) 😊
методом "научного" тыка😃😃😃
Юху!!! Будем посмотреть.
уставка и реал - это 5!
Алгоритм кастрированный. Проблема в расчёте интегральной составляющей. Вклад интегральный составляющей берётся в учет только в определенном диапазоне времени, обычно 3... 6 периодов свободных колебаний регулятора. Тогда и вылета не будет такого.
Думаю, что положение датчика температуры по отношению к тэну играет очень важное значение .
Доходчиво, спасибо.
"Интегральный" значит объединяющий, например интегральная микросхема; "дифференциальный" значит разностный, например дифференциальный вход усилителя, а вот регулятор "интегрирующий", т.е. вычисляющий интеграл, или "дифференцирующий", т.е. вычисляющий производную.
Теорию ТАУ нада штудировать, а не фигней занимаццо.Поменяються условия и все думать заново.
Доброго времени. Подскажите как при симуляции в протеусе вывести окно AVR Variables?
запускаете симуляцию и в верхнем меню - debug >> avr >> variables
В терморегуляторах Овен ТРМ1 реализован хороший алгоритм подбора коэффициентов как в ручном, так и в автоматическом режиме.
в трм1 нет там пид регулятора , если что !
@@alximedkylibin3059 Если что, читайте инструкцию. Я этот регулятор знаю как свои пять пальцев.
@@Grigrost Хорошо , покажите мне в инструкции ПИД регулятор и свои пять пальцев !
@@alximedkylibin3059 Наберите в youtube "НАСТРОЙКА ПИД-РЕГУЛЯТОРА ТРМ 251 (ОВЕН)"
@@Grigrost Вы написали ТРМ1 а не ТРМ 251 , Вы мне не интересны уже .
А какой коэффициент отвечает за перегрев ?
Уроки Ардуино. ПИД регулятор
ruclips.net/video/rIbWnB26dp0/видео.html
хорошо разобрано действие всех коэффициентов
Спасибо
делал терморегулятор ламинатора на основе нечеткой логики. код чужой, как работает, толком не понял. но работает.
если есть возможность скиньте код на почту dr.somet@yandex.ru
Никогда не слышал про Настоящее, Прошлое, Будущее. Все заумно как то говорят.
Не, ну если контроллер задействован, пусть уже и коефициенты считает и сохраняет.Можно на термопереключателе сделать тогда такой регулятор, а не на мелкосхеме.