Программный терморегулятор на ATmega8

Обсуждаем контроллеры компании Atmel.
petro2002
Открыл глаза
Сообщения: 47
Зарегистрирован: Сб фев 04, 2012 02:53:41

Re: Программный терморегулятор на ATmega8

Сообщение petro2002 »

P - менял, вот примеры: 90-90-90-нагрев до 708. 90-30-90-709. 50-30-90-709.
Что-то меняется, но очень незначительно.
Реклама
Аватара пользователя
da-nie
Говорящий с текстолитом
Сообщения: 1590
Зарегистрирован: Вс июн 24, 2012 16:07:00
Откуда: Лен.Обл.
Контактная информация:

Re: Программный терморегулятор на ATmega8

Сообщение da-nie »

А вы настраивали по приведённой мной методике?
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Реклама
petro2002
Открыл глаза
Сообщения: 47
Зарегистрирован: Сб фев 04, 2012 02:53:41

Re: Программный терморегулятор на ATmega8

Сообщение petro2002 »

А вы настраивали по приведённой мной методике?
Если Вы про интегральную, то да. Изменением интегральной удаётся отрегулировать лишь в малых пределах. Настраиваю без вмешательства, т.е. не открывая дверцу. Колебания остановить не удалось.
Аватара пользователя
da-nie
Говорящий с текстолитом
Сообщения: 1590
Зарегистрирован: Вс июн 24, 2012 16:07:00
Откуда: Лен.Обл.
Контактная информация:

Re: Программный терморегулятор на ATmega8

Сообщение da-nie »

Нет, я про общую методику настройки ПИД-регулятора, которую я тут выкладывал.
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Реклама
Эиком - электронные компоненты и радиодетали
petro2002
Открыл глаза
Сообщения: 47
Зарегистрирован: Сб фев 04, 2012 02:53:41

Re: Программный терморегулятор на ATmega8

Сообщение petro2002 »

da-nie пожалуйста, покажите где Ваша метода.
А если об настройках ПИД вообще, то есть описание методик, я пытался настраивать.
Что-бы вообще, понятия не имею - так "фирмовый" удаётся настроить по методиках довольно быстро.
Наверное потому что, там резче реакция на установки.
Реклама
Аватара пользователя
da-nie
Говорящий с текстолитом
Сообщения: 1590
Зарегистрирован: Вс июн 24, 2012 16:07:00
Откуда: Лен.Обл.
Контактная информация:

Re: Программный терморегулятор на ATmega8

Сообщение da-nie »

Вообще говоря, она на первой же странице этой темы. :)

А файл вот: http://radiokot.ru/forum/download/file.php?id=112938
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Реклама
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Программный терморегулятор на ATmega8

Сообщение Soir »

petro2002 писал(а):P - менял, вот примеры...
Я не вижу здесь P. Вы не путаете с PG?
petro2002 писал(а):Наверное потому что, там резче реакция на установки.
"Усилил" коэффициенты. В первом варианте дифференциальную составляющую, во втором еще и пропорциональную. По названиям файлов должно быть понятно, где какая.
Вложения
Termo_ATMega8.zip
(10.35 КБ) 221 скачивание
petro2002
Открыл глаза
Сообщения: 47
Зарегистрирован: Сб фев 04, 2012 02:53:41

Re: Программный терморегулятор на ATmega8

Сообщение petro2002 »

Я не вижу здесь P. Вы не путаете с PG?
При входе в режим установок коеффициентов наблюдаю такую очерёдность: P-PG-IG-DG. Первое, я так понимаю - мощность? Далее PG=P? IG=I? DG=D?
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Программный терморегулятор на ATmega8

Сообщение Soir »

petro2002 писал(а):Первое, я так понимаю - мощность? Далее PG=P? IG=I? DG=D?
Нет, первое (Р) это границы, ограничивающие интегральную составляющую. Интегральная составляющая производит накопление ошибки с учётом знака. Р ограничивает эту сумму ошибок, чем больше эта величина, тем больше инерционность регулятора.
petro2002
Открыл глаза
Сообщения: 47
Зарегистрирован: Сб фев 04, 2012 02:53:41

Re: Программный терморегулятор на ATmega8

Сообщение petro2002 »

Настройки по формулам и без не позволяют устранить колебания. См. вложенный файл(настройка пропорциональной). "Вялости" получить не удаётся. Нет и что-то подобного - продолжает греть до отметки и выше на 7-20 градусов! Затем инерция. Ни в одном случае небыло, чтобы нагрев был прекращён на отметке и уж тем более - ниже неё!
Вложения
pid - настройка без формул.pdf
(144.55 КБ) 253 скачивания
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Программный терморегулятор на ATmega8

Сообщение Soir »

petro2002 писал(а):...Ни в одном случае небыло, чтобы нагрев был прекращён на отметке и уж тем более - ниже неё...
Такая задача и не ставилась. Раз ничего не получается, давайте сделаем просто вкл/выкл. Достиг задания - выкл, снизилась температура ниже, скажем на 1 градус - вкл. Можно с предустановкой мощности или с автоматической оптимизацией выходной мощности... Или сделать просто пропорциональный регулятор? У меня сейчас нет возможности посмотреть прошивку, не помню, можно ли это сделать коэффициентами...
petro2002
Открыл глаза
Сообщения: 47
Зарегистрирован: Сб фев 04, 2012 02:53:41

Re: Программный терморегулятор на ATmega8

Сообщение petro2002 »

давайте сделаем просто вкл/выкл. Достиг задания - выкл, снизилась температура ниже, скажем на 1 градус - вкл. Можно с предустановкой мощности или с автоматической оптимизацией выходной мощности...
Может это будет выход из ситуации?! При снижении -1 ниже отметки, нагрев включается и температура падает не более 3-5 град. Так-же бедет нарастать. Это будет хороший результат (для температур 600-1000).
Сейчас поставил IG и DG в нуль, PG минимум- амплитуда очень большая. Постепенно увеличивая PG до 99 - размах уменьшился в небольших пределах. Перелёт был 30 градусов, стал 19.
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Программный терморегулятор на ATmega8

Сообщение Soir »

petro2002 писал(а):Постепенно увеличивая PG до 99 - размах уменьшился в небольших пределах. Перелёт был 30 градусов, стал 19.
Давайте я еще "усилю" PG (в итоге мы и придем к вкл/выкл), но вечером.
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Программный терморегулятор на ATmega8

Сообщение Soir »

Нашелся на работе этот проект, может не последняя версия, но попробуйте.
Вложения
Termo_ATMega8.zip
Прошивка
(5.22 КБ) 183 скачивания
petro2002
Открыл глаза
Сообщения: 47
Зарегистрирован: Сб фев 04, 2012 02:53:41

Re: Программный терморегулятор на ATmega8

Сообщение petro2002 »

Удалось снизить колебания при 700 град. Самые маленькие они при PG- 99. Здесь откл. уже при 702 град. плюс инерция до 712 град. Похоже, что верное направление. Soir, прошу ещё усилить PG, но как то вся шкала от 1 до 99 влияет очень в малых размерах. При PG 5 - выключает на 704, а при PG -99 выкл на701-702град. Соответственно и инерция меньше. Как бы их(настройки) сделать жёще, чтоли? Для более ощутимой реакции.
Спасибо.
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Программный терморегулятор на ATmega8

Сообщение Soir »

petro2002 писал(а):Похоже, что верное направление. Soir, прошу ещё усилить PG.
В предыдущей прошивке я усилил все коэффициенты. В этой дополнительно еще PG, путем увеличения диапазона его регулировки 1-999, то есть в 10 раз (в связи с этим в меню он теперь обозначается буквой G). Но проверить не могу, попробуйте, при больших значениях может повести себя неадекватно, как раз это и надо проверить...
Вложения
Termo_ATMega8.zip
(5.28 КБ) 178 скачиваний
petro2002
Открыл глаза
Сообщения: 47
Зарегистрирован: Сб фев 04, 2012 02:53:41

Re: Программный терморегулятор на ATmega8

Сообщение petro2002 »

G понижает колебания до установки примерно 100, затем колебания минимальны и никак не меняются и до установки G-999. Первые пару всплесков переходят отметку градусов(нагрев продолжается) на 15-20. Введя IG и DG, ситуация только ухудшается.
Soir, эти колебания меня уже заколебали. Видимо не судьба, этот пид.
Ранее Вы писали про простое управление, без пид, может так и сделать?
давайте сделаем просто вкл/выкл. Достиг задания - выкл, снизилась температура ниже, скажем на 1 градус - вкл. Можно с предустановкой мощности или с автоматической оптимизацией выходной мощности...
Все прграммы из начальной версии и плавное нарастание, остануться?
Спасибо
Аватара пользователя
da-nie
Говорящий с текстолитом
Сообщения: 1590
Зарегистрирован: Вс июн 24, 2012 16:07:00
Откуда: Лен.Обл.
Контактная информация:

Re: Программный терморегулятор на ATmega8

Сообщение da-nie »

А попробуйте-ка отключить все составляющие, кроме пропорциональной. А её настроить до начала колебаний (при этом будет недорегулирование). Затем откройте дверцу и посмотрите, начнутся ли колебания.
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Программный терморегулятор на ATmega8

Сообщение Soir »

petro2002 писал(а):Soir, эти колебания меня уже заколебали.
На выходные есть просвет по свободному времени, еще раз пересмотрю прошивку (пока вижу, что надо внимательно пройтись по работе регулятора при больших отклонениях и больших коэффициентах). С PG я переборщил, при больших значениях (больше 600) регулятор выходил из-под контроля. Я немного изменил воздействие коэффициентов, попробуйте, если терпение не лопнуло.
При значении G=600 и остальных =0 регулятор будет работать вкл/выкл при отклонении даже на 1 градус. Хотя и раньше настройками тоже можно было так выставить... Почему получаются такие перелеты - не понимаю, может слишком мощный нагреватель? или датчик слишком близко к нему установлен...?
Вложения
Termo_ATMega8.zip
(5.35 КБ) 182 скачивания
petro2002
Открыл глаза
Сообщения: 47
Зарегистрирован: Сб фев 04, 2012 02:53:41

Re: Программный терморегулятор на ATmega8

Сообщение petro2002 »

При значении G=600 и остальных =0 регулятор будет работать вкл/выкл при отклонении даже на 1 градус.
Да, сейчас именно так и работает, вкл/выкл при отклонении на 1 градус. При первом "холодном разогреве" переходя отметку на 1 градус - выключает нагрев, но инерция разганяет температуру на 30-50 градусов. Испытано на 400, 500 и 600 градусах. Затем колебания утихают и при 600 град установленных, темп. доходит до 620-615град. Может дальше и утихнут, но слишком они велики.
Если бы мощность плавно уменьшалась, приближаясь к отметке, тогда может и небыло бы таких перелётов.
Ответить

Вернуться в «AVR»