Страница 9 из 10
Re: Программный терморегулятор на ATmega8
Добавлено: Ср фев 26, 2014 16:02:47
petro2002
P - менял, вот примеры: 90-90-90-нагрев до 708. 90-30-90-709. 50-30-90-709.
Что-то меняется, но очень незначительно.
Re: Программный терморегулятор на ATmega8
Добавлено: Ср фев 26, 2014 17:45:19
da-nie
А вы настраивали по приведённой мной методике?
Re: Программный терморегулятор на ATmega8
Добавлено: Ср фев 26, 2014 18:07:39
petro2002
А вы настраивали по приведённой мной методике?
Если Вы про интегральную, то да. Изменением интегральной удаётся отрегулировать лишь в малых пределах. Настраиваю без вмешательства, т.е. не открывая дверцу. Колебания остановить не удалось.
Re: Программный терморегулятор на ATmega8
Добавлено: Ср фев 26, 2014 18:47:16
da-nie
Нет, я про общую методику настройки ПИД-регулятора, которую я тут выкладывал.
Re: Программный терморегулятор на ATmega8
Добавлено: Ср фев 26, 2014 19:06:13
petro2002
da-nie пожалуйста, покажите где Ваша метода.
А если об настройках ПИД вообще, то есть описание методик, я пытался настраивать.
Что-бы вообще, понятия не имею - так "фирмовый" удаётся настроить по методиках довольно быстро.
Наверное потому что, там резче реакция на установки.
Re: Программный терморегулятор на ATmega8
Добавлено: Ср фев 26, 2014 19:47:58
da-nie
Вообще говоря, она на первой же странице этой темы.
А файл вот:
http://radiokot.ru/forum/download/file.php?id=112938
Re: Программный терморегулятор на ATmega8
Добавлено: Ср фев 26, 2014 19:57:17
Soir
petro2002 писал(а):P - менял, вот примеры...
Я не вижу здесь P. Вы не путаете с PG?
petro2002 писал(а):Наверное потому что, там резче реакция на установки.
"Усилил" коэффициенты. В первом варианте дифференциальную составляющую, во втором еще и пропорциональную. По названиям файлов должно быть понятно, где какая.
Re: Программный терморегулятор на ATmega8
Добавлено: Ср фев 26, 2014 21:28:37
petro2002
Я не вижу здесь P. Вы не путаете с PG?
При входе в режим установок коеффициентов наблюдаю такую очерёдность: P-PG-IG-DG. Первое, я так понимаю - мощность? Далее PG=P? IG=I? DG=D?
Re: Программный терморегулятор на ATmega8
Добавлено: Ср фев 26, 2014 22:21:12
Soir
petro2002 писал(а):Первое, я так понимаю - мощность? Далее PG=P? IG=I? DG=D?
Нет, первое (Р) это границы, ограничивающие интегральную составляющую. Интегральная составляющая производит накопление ошибки с учётом знака. Р ограничивает эту сумму ошибок, чем больше эта величина, тем больше инерционность регулятора.
Re: Программный терморегулятор на ATmega8
Добавлено: Пт фев 28, 2014 12:18:29
petro2002
Настройки по формулам и без не позволяют устранить колебания. См. вложенный файл(настройка пропорциональной). "Вялости" получить не удаётся. Нет и что-то подобного - продолжает греть до отметки и выше на 7-20 градусов! Затем инерция. Ни в одном случае небыло, чтобы нагрев был прекращён на отметке и уж тем более - ниже неё!
Re: Программный терморегулятор на ATmega8
Добавлено: Пт фев 28, 2014 12:45:42
Soir
petro2002 писал(а):...Ни в одном случае небыло, чтобы нагрев был прекращён на отметке и уж тем более - ниже неё...
Такая задача и не ставилась. Раз ничего не получается, давайте сделаем просто вкл/выкл. Достиг задания - выкл, снизилась температура ниже, скажем на 1 градус - вкл. Можно с предустановкой мощности или с автоматической оптимизацией выходной мощности... Или сделать просто пропорциональный регулятор? У меня сейчас нет возможности посмотреть прошивку, не помню, можно ли это сделать коэффициентами...
Re: Программный терморегулятор на ATmega8
Добавлено: Пт фев 28, 2014 13:47:28
petro2002
давайте сделаем просто вкл/выкл. Достиг задания - выкл, снизилась температура ниже, скажем на 1 градус - вкл. Можно с предустановкой мощности или с автоматической оптимизацией выходной мощности...
Может это будет выход из ситуации?! При снижении -1 ниже отметки, нагрев включается и температура падает не более 3-5 град. Так-же бедет нарастать. Это будет хороший результат (для температур 600-1000).
Сейчас поставил IG и DG в нуль, PG минимум- амплитуда очень большая. Постепенно увеличивая PG до 99 - размах уменьшился в небольших пределах. Перелёт был 30 градусов, стал 19.
Re: Программный терморегулятор на ATmega8
Добавлено: Пт фев 28, 2014 14:07:58
Soir
petro2002 писал(а):Постепенно увеличивая PG до 99 - размах уменьшился в небольших пределах. Перелёт был 30 градусов, стал 19.
Давайте я еще "усилю" PG (в итоге мы и придем к вкл/выкл), но вечером.
Re: Программный терморегулятор на ATmega8
Добавлено: Пт фев 28, 2014 14:33:12
Soir
Нашелся на работе этот проект, может не последняя версия, но попробуйте.
Re: Программный терморегулятор на ATmega8
Добавлено: Пт фев 28, 2014 15:25:50
petro2002
Удалось снизить колебания при 700 град. Самые маленькие они при PG- 99. Здесь откл. уже при 702 град. плюс инерция до 712 град. Похоже, что верное направление. Soir, прошу ещё усилить PG, но как то вся шкала от 1 до 99 влияет очень в малых размерах. При PG 5 - выключает на 704, а при PG -99 выкл на701-702град. Соответственно и инерция меньше. Как бы их(настройки) сделать жёще, чтоли? Для более ощутимой реакции.
Спасибо.
Re: Программный терморегулятор на ATmega8
Добавлено: Пт фев 28, 2014 16:36:56
Soir
petro2002 писал(а):Похоже, что верное направление. Soir, прошу ещё усилить PG.
В предыдущей прошивке я усилил все коэффициенты. В этой дополнительно еще PG, путем увеличения диапазона его регулировки 1-999, то есть в 10 раз (в связи с этим в меню он теперь обозначается буквой G). Но проверить не могу, попробуйте, при больших значениях может повести себя неадекватно, как раз это и надо проверить...
Re: Программный терморегулятор на ATmega8
Добавлено: Пт фев 28, 2014 19:45:10
petro2002
G понижает колебания до установки примерно 100, затем колебания минимальны и никак не меняются и до установки G-999. Первые пару всплесков переходят отметку градусов(нагрев продолжается) на 15-20. Введя IG и DG, ситуация только ухудшается.
Soir, эти колебания меня уже заколебали. Видимо не судьба, этот пид.
Ранее Вы писали про простое управление, без пид, может так и сделать?
давайте сделаем просто вкл/выкл. Достиг задания - выкл, снизилась температура ниже, скажем на 1 градус - вкл. Можно с предустановкой мощности или с автоматической оптимизацией выходной мощности...
Все прграммы из начальной версии и плавное нарастание, остануться?
Спасибо
Re: Программный терморегулятор на ATmega8
Добавлено: Пт фев 28, 2014 20:12:48
da-nie
А попробуйте-ка отключить все составляющие, кроме пропорциональной. А её настроить до начала колебаний (при этом будет недорегулирование). Затем откройте дверцу и посмотрите, начнутся ли колебания.
Re: Программный терморегулятор на ATmega8
Добавлено: Пт фев 28, 2014 21:11:23
Soir
petro2002 писал(а):Soir, эти колебания меня уже заколебали.
На выходные есть просвет по свободному времени, еще раз пересмотрю прошивку (пока вижу, что надо внимательно пройтись по работе регулятора при больших отклонениях и больших коэффициентах). С PG я переборщил, при больших значениях (больше 600) регулятор выходил из-под контроля. Я немного изменил воздействие коэффициентов, попробуйте, если терпение не лопнуло.
При значении G=600 и остальных =0 регулятор будет работать вкл/выкл при отклонении даже на 1 градус. Хотя и раньше настройками тоже можно было так выставить... Почему получаются такие перелеты - не понимаю, может слишком мощный нагреватель? или датчик слишком близко к нему установлен...?
Re: Программный терморегулятор на ATmega8
Добавлено: Пт фев 28, 2014 23:03:43
petro2002
При значении G=600 и остальных =0 регулятор будет работать вкл/выкл при отклонении даже на 1 градус.
Да, сейчас именно так и работает, вкл/выкл при отклонении на 1 градус. При первом "холодном разогреве" переходя отметку на 1 градус - выключает нагрев, но инерция разганяет температуру на 30-50 градусов. Испытано на 400, 500 и 600 градусах. Затем колебания утихают и при 600 град установленных, темп. доходит до 620-615град. Может дальше и утихнут, но слишком они велики.
Если бы мощность плавно уменьшалась, приближаясь к отметке, тогда может и небыло бы таких перелётов.