Я стесняюсь спросить, а ради чего эти танцы с бубном? В чем практическая польза ПИД регулирования?
ТЭН, в отличии от лампы, обладает некоторой инерцией и при подаче напряжения еще не греет (а температура в инке падает), а после снятия напряжения продолжает греть воздух. В зависимости от ТЭНа и конструктивных особенностей инкубатора, качание температуры может достигать несколько градусов. Особенно это заметно когда идет набор температуры и ТЭН хорошо разогревается. ПИД регулирование позволяет "плавно" подойти к установленной температуре и по возможности устранить эти качели.
Температуру показывает естественно нормально,то есть как растет так и показывает,влажность работает без проблем,регулирует и показывает
Значит МК не завис и работает в штатном режиме. Иначе он бы ничего не показывал.
prokop29 пишет:
первый раз пошел набор после манипуляций с коэффициентами,
Похоже вся причина в настройках. В описании настройки ПИД написано: "Если наблюдается большой выбег температуры за уставку, увеличьте Дк".
Я согласен,что может быть причина в настройках,но он же может при первоначальном включении работать отлично неделю,да и потом тоже может работать отлично,но что то происходит,раз и пошел греть,перегрузили все отлично,температуру держит в ноль!!!
Дмитрий, для прошивки под ТЭН синхронизация с сетью обязательно нужна? Есть желание заменить трансформатор на импульсный БП. Где-то в архиве попадалось упоминание, что для ТЭНов применен алгоритм Брезенхэма и можно использовать МОС с cross zero. Или все же синхронизация с сетью нужна для подсчета полупериодов напряжения.
Уже точно, не помню. Привязка к переходу через 0 нужна для правильной выдачи управляющего импульса на симистор, что бы он открывался вначале полупериода. Если привязки нет, то симистор может открываться в любой момент синусоиды, что не есть хорошо. По программе идет контроль наличия синхроимпульса, если его нет в течении 11милисек., то идет регулирование без привязки к сети. Что бы симистор открывался в начале синусоиды, надо использовать вывод ten_dc который управляет оптопарой с зерокросс детектором.
Все это в теории, надо пробовать и смотреть как заработает, на данный момент можно вывод SINCHRO_SETH замкнуть на минус и посмотреть как поведет себя регулятор, хорошо бы посмотреть и в режиме набора температуры.
Собрал прошивки с подправленном ПИД, но их нужно тестировать, возможно они будут хуже, вообщем кому интересно попробуйте.
---------------------------
Мысль о глюках, prokop29, если не сложно, то попробуйте заново прошить микроконтроллер. Но перед этим обязательно стереть еепром, возможно в настройках, при прошивках новых версий в еепром записалось что нибудь не то.
Вообщем совет всем, при прошивке, предварительно стирайте весь кристал (еепром и флеш).
Конечно , записные в память .не меняются. А в коде программы:
//сброс положительного интеграла при вылете за уставку
if (Error<0)//если температура выше уставки
if (Dif>0)//если Д положителен значит идет падение Т
if (IntDel<0){//если интеграл ушел в минус
Integral=0;//то сбросить интеграл
}
Из файла: регулятор LPWM.docx
Пример. Кд=10 Уставка 37,5гр, текущая 37гр. В течении несколько измерений температура не меняется, Дифференциальная составляющая равна нулю и не изменяет выходную мощность, при этом допустим интегральная составляющая увеличила мощность и температура возросла до 37,1гр , в момент изменения Дифференциальная составляющая будет равна (37-37,1)*Кд (592-593)*10=-10. Значит мощность будет уменьшена на 10 импульсов.
Дмитрий М. пишет:
Но "интегральная" составляющая продолжает накапливаться
Доброго времени суток всем форумчанам. Такой вопрос: кто-нибудь в этой конструкции применял шаговые движки? Или вопрос к Дмитрию: возможно ли добавить в схему управление шд без отдельного драйвера, в наличии есть и биполярные и униполярные движки. Просто был отдельный драйвер на 2313, но по запарке спалил ее, а цена на эту тинку больше, чем мега 8. Сразу скажу, что в электронике волоку на 4,8 по 5 бальной, в программировании только как пользователь, пытался разобраться в программировании, но не хватает "памяти" и полного понимания (оставил эту затею для людей, которые занимаются этим на более профессиональном уровне). Так вот, по-этому согласовка узлов для меня не проблема, хочется чтобы устройство было проще (с учетом использования шд) и надежным. Спасибо, заранее, за ответы всем. С ув Роман. P.S. или изменить прошивку для выхода импульса управлением шд для схемы драйвера приложенного
К сожалению, сейчас у меня нет свободного времени.
Кто нибудь пробовал прошивку из поста #2768? Интересно поведение ПИД регулятора, хуже или лучше стало.
Здравствуйте Дмитрий и ,форумчане, подскажите как выставить фьюзы на Mega 328 проект 020419 regulytor , не могу понять. Напишите в строчку, пожалуйста. Спасибо.
Дмитрий спасибо что уделили внимание, выставляю фьюзы как рекомендуете: LOW-62; HIGH-D9;EXTENDED -FD ; если программировать BODLEVEL1 -( 0 ) , в этом положении программирование не скончаемое... пока не снять задачу программатора. Что не так делаю? И как выполнить согласование уровней на плате датчика SI7021 5v- 3,3v. Заранее благодарен и прошу помощи.
C Fuse все верно
прямые 1111 1101 0xFD
1101 1001 0xD9
0110 0010 0x62 - LOW
для ponyprog
0x02
0x26
0x9D - LOW
У Вас питание программатора 3,3В? При программировании, если на меге окажется напряжение меньше 5В, то будет как Вы описали. Можно фусы запрограммировать после прошивки.
Датчик как на картинке? На таком уже есть согласование уровней.
доброго всем времени! у меня вопросик к Дмитрию какую прошивку програмировать под датчик SI7021, и обязательно ставить два Далласа. у меня программа унипроф, тоесть мне ставить фьюзы инверсно?.
заранее благадарю
с ув. Валерий
Качайте отсюда https://yadi.sk/d/N02DbUuz3FUgk4 архив 020419regulator_пост_на_фермер_ру_2768.7z
Два датчика не обязательно. Замкните не нужные на вывод мк DS0, смотрите как это сделано на shema_mini.png, там используется всего один датчик DS18B20.
По fuse:
прямые
1111 1101 0xFD
1101 1001 0xD9
0110 0010 0x62 - LOW
Здравствуйте Дмитрий,форумчане.Хотелось бы подробней прочитать о крайней версии 020419.В схеме управлении есть: COD раз блокировки программы МК : "Чст" установки коррекции частоты МК что это , и где его брать? Может есть описание, то где ? Подскажите.Спасибо.
Эта версия без меню "COD". На картинке забыл удалить. Полностью открытая, выложена с исходниками.
"Чст" - изменяет тактовую частоту микроконтроллера. Нужно для настройки устойчивой связи с компьютером. Например, запускаете программу на компьютере, в ней должны, примерно раз в секунду, появляться данные с микроконтроллера. Далее заходите на мк в меню (любой параметр) после автоматического выхода из меню, настройки будут переданы на компьютер, заходите в меню "данные регулятора" там должна быть надпись, не помню точно, что то вроде - последнее считывание /время/.
Если данной надписи не появляется, то изменяете значение "Чст" и смотрите когда начнет появляться.
Здравствуйте Дмитрий, спасибо за быстрый ответ, все получилось,работает в тестовом режиме . Пока без проблем, надеюсь и дальше все будет хорошо, просто мы часто спешим увидеть результат нашего труда. Дальше исполнительна плата и в будущем году в бой.Спасибо за ваш не легкий труд, который нужно вознаграждать, В августе вернусь домой (я не в Курске ) и исполню свое обещание, я не забуду. В дальнейшем буду следить за вашими работами. Спасибо, и крепкого Вам здоровья. Пока.
Здравствуйте форумчане, кто делал "плату выходов" от Дмитрия, обратите внимание на включение бузера, там ошибка, Запитка бузера должна быть плюсом, а он заканчивается(+) на реле (разность т1-т2) и до конечной цели не доведен.Скорей всего упущение .Может эта ошибка уже исправлена тогда извините, но лучше повторится.До свидания, спасибо.
Здравствуйте, архив " plataotdmitriya",там две платы, одна управления со светодиодным индикатором вторая исполнительная. Вот на исполнительной плате и есть не до рисовка плюсового проводника силового питания.Если проворонить, придется корректировать рисунок проводками.В общем не критично,но без АВР сигнала, плюс поиск глюка.Спасибо alewka-76 за внимание, всегда на стаже,это приятно,всем здоровья и успехов.Пока.
Добрый день, уважаемые) Возникла у меня идея заменить старую советскую систему управления инкубатором на более современную и попал мне на глаза этот чудо блок управления, в электронике я только начинающий чайник но блок управления собрал и он работает отлично, спасибо автору за множество настроек и общую простоту) а вот по плате выходов у меня возникло несколько вопросов
1) за что отвечает реле "Разность Т1-Т2" и реле "нагрев воды"?
2) у меня инкубатор на 6000 яиц и соответственно на нагрев стоят три тена по 1-1.5кВт каждый, плюс напряжения сети крайне низкое в вечернее время поэтому три тена разбросаны на каждую фазу по одному, как это реализовать? и какой нагрев лучше использовать ШИМ или фазоимпульс исходя из практики?
буду очень благодарен за помощь начинающему электронщику)
Вывод "РАЗНОСТЬ Т1-Т2" включается, если разница температур датчиков Т1 - Т2 будет больше заданной в параметре "РАЗ" (разность), выключается при температуре равной заданной в параметре "Усt". Данный вывод служит для выравнивания температуры по всему объему, так как горячий воздух поднимается кверху, температура Т1 будет выше температуры Т2. Например, можно включать дополнительный вентилятор, для перемешивания воздуха.
Иными словами, температура нижнего датчика Т2 выравнивается по верхнему Т1
Сергей_М пишет:
за что отвечает реле "нагрев воды"?
«Поd.» - температура нагрева воды. Функция подогрева воды (для быстрого набора влажности).
Данная функция работает по датчику DS18B20 подключенному к выводу 13 (PD7)
микроконтроллера. Если температура датчика ниже на 5 гр. уставки "Поd." и если температура в
течении 2.5 минут не возрастает на 1гр, то термостатирование прекращается (предполагается, что
воды нет и тэн работает в холостую), подается тревога №9. При этом, если зайти в режим
отображения тревог и нажать клавишу МИНУС, тревога №9 будет сброшена, термостатирование
разрешено. Нажатия на другие клавиши сбросит только тревогу №9, без разрешения
термостатирования. Функция подогрева воды автоматически отключается при влажности равной
заданной в «ВLA». Если датчик отсутствует, функция подогрева запрещается, на выводе "НАГРЕВ
ВОДЫ" устанавливается логический ноль, зажигается светодиод LED_ALARM , устанавливается
тревога №9 и №3.
Сергей_М пишет:
и какой нагрев лучше использовать ШИМ или фазоимпульс
Для 3х фаз делал для prokop29, надо у него спросить о нюансах и работает оно или нет.
Было вот такое решение:
Ставиться дополнительный контроллер мега8
от регулятора выход на тиристор подключить к новой схеме к входу IN_OT_REGUL
С выводов FA FB FC брать управление на оптопары (должны быть без зерокросс детектора) .
ТЭН, в отличии от лампы, обладает некоторой инерцией и при подаче напряжения еще не греет (а температура в инке падает), а после снятия напряжения продолжает греть воздух. В зависимости от ТЭНа и конструктивных особенностей инкубатора, качание температуры может достигать несколько градусов. Особенно это заметно когда идет набор температуры и ТЭН хорошо разогревается. ПИД регулирование позволяет "плавно" подойти к установленной температуре и по возможности устранить эти качели.
Я согласен,что может быть причина в настройках,но он же может при первоначальном включении работать отлично неделю,да и потом тоже может работать отлично,но что то происходит,раз и пошел греть,перегрузили все отлично,температуру держит в ноль!!!
При первом включении настройки одни а после охлаждения они меняются . Какие у вас пид настройки?
Дмитрий, для прошивки под ТЭН синхронизация с сетью обязательно нужна? Есть желание заменить трансформатор на импульсный БП. Где-то в архиве попадалось упоминание, что для ТЭНов применен алгоритм Брезенхэма и можно использовать МОС с cross zero. Или все же синхронизация с сетью нужна для подсчета полупериодов напряжения.
Уже точно, не помню. Привязка к переходу через 0 нужна для правильной выдачи управляющего импульса на симистор, что бы он открывался вначале полупериода. Если привязки нет, то симистор может открываться в любой момент синусоиды, что не есть хорошо. По программе идет контроль наличия синхроимпульса, если его нет в течении 11милисек., то идет регулирование без привязки к сети. Что бы симистор открывался в начале синусоиды, надо использовать вывод ten_dc который управляет оптопарой с зерокросс детектором.
Все это в теории, надо пробовать и смотреть как заработает, на данный момент можно вывод SINCHRO_SETH замкнуть на минус и посмотреть как поведет себя регулятор, хорошо бы посмотреть и в режиме набора температуры.
Собрал прошивки с подправленном ПИД, но их нужно тестировать, возможно они будут хуже, вообщем кому интересно попробуйте.
---------------------------
Мысль о глюках, prokop29, если не сложно, то попробуйте заново прошить микроконтроллер. Но перед этим обязательно стереть еепром, возможно в настройках, при прошивках новых версий в еепром записалось что нибудь не то.
Вообщем совет всем, при прошивке, предварительно стирайте весь кристал (еепром и флеш).
В смысле меняются? Как они могут меняться,если они записываются в память? Вы о чем,вообще?
Конечно , записные в память .не меняются. А в коде программы:
//сброс положительного интеграла при вылете за уставку
if (Error<0)//если температура выше уставки
if (Dif>0)//если Д положителен значит идет падение Т
if (IntDel<0){//если интеграл ушел в минус
Integral=0;//то сбросить интеграл
}
Из файла: регулятор LPWM.docx
Пример. Кд=10 Уставка 37,5гр, текущая 37гр. В течении несколько измерений температура не меняется, Дифференциальная составляющая равна нулю и не изменяет выходную мощность, при этом допустим интегральная составляющая увеличила мощность и температура возросла до 37,1гр , в момент изменения Дифференциальная составляющая будет равна (37-37,1)*Кд (592-593)*10=-10. Значит мощность будет уменьшена на 10 импульсов.
Доброго времени суток всем форумчанам. Такой вопрос: кто-нибудь в этой конструкции применял шаговые движки? Или вопрос к Дмитрию: возможно ли добавить в схему управление шд без отдельного драйвера, в наличии есть и биполярные и униполярные движки. Просто был отдельный драйвер на 2313, но по запарке спалил ее, а цена на эту тинку больше, чем мега 8. Сразу скажу, что в электронике волоку на 4,8 по 5 бальной, в программировании только как пользователь, пытался разобраться в программировании, но не хватает "памяти" и полного понимания (оставил эту затею для людей, которые занимаются этим на более профессиональном уровне). Так вот, по-этому согласовка узлов для меня не проблема, хочется чтобы устройство было проще (с учетом использования шд) и надежным. Спасибо, заранее, за ответы всем. С ув Роман. P.S. или изменить прошивку для выхода импульса управлением шд для схемы драйвера приложенного
К сожалению, сейчас у меня нет свободного времени.
Кто нибудь пробовал прошивку из поста #2768? Интересно поведение ПИД регулятора, хуже или лучше стало.
Здравствуйте Дмитрий и ,форумчане, подскажите как выставить фьюзы на Mega 328 проект 020419 regulytor , не могу понять. Напишите в строчку, пожалуйста. Спасибо.
Fuse Atmega328.
Дмитрий спасибо что уделили внимание, выставляю фьюзы как рекомендуете: LOW-62; HIGH-D9;EXTENDED -FD ; если программировать BODLEVEL1 -( 0 ) , в этом положении программирование не скончаемое... пока не снять задачу программатора. Что не так делаю? И как выполнить согласование уровней на плате датчика SI7021 5v- 3,3v. Заранее благодарен и прошу помощи.
C Fuse все верно
прямые
1111 1101 0xFD
1101 1001 0xD9
0110 0010 0x62 - LOW
для ponyprog
0x02
0x26
0x9D - LOW
У Вас питание программатора 3,3В? При программировании, если на меге окажется напряжение меньше 5В, то будет как Вы описали. Можно фусы запрограммировать после прошивки.
Датчик как на картинке? На таком уже есть согласование уровней.
Дмитрий спасибо огромное, рад за Вашу отзывчивость, спасибо,должно все получиться как и раньше.
доброго всем времени! у меня вопросик к Дмитрию какую прошивку програмировать под датчик SI7021, и обязательно ставить два Далласа. у меня программа унипроф, тоесть мне ставить фьюзы инверсно?.
заранее благадарю
с ув. Валерий
Качайте отсюда https://yadi.sk/d/N02DbUuz3FUgk4 архив 020419regulator_пост_на_фермер_ру_2768.7z
Два датчика не обязательно. Замкните не нужные на вывод мк DS0, смотрите как это сделано на shema_mini.png, там используется всего один датчик DS18B20.
По fuse:
прямые
1111 1101 0xFD
1101 1001 0xD9
0110 0010 0x62 - LOW
Дмитрию! мой вам низкий поклон
с ув.
Здравствуйте Дмитрий,форумчане.Хотелось бы подробней прочитать о крайней версии 020419.В схеме управлении есть: COD раз блокировки программы МК : "Чст" установки коррекции частоты МК что это , и где его брать? Может есть описание, то где ? Подскажите.Спасибо.
Эта версия без меню "COD". На картинке забыл удалить. Полностью открытая, выложена с исходниками.
"Чст" - изменяет тактовую частоту микроконтроллера. Нужно для настройки устойчивой связи с компьютером. Например, запускаете программу на компьютере, в ней должны, примерно раз в секунду, появляться данные с микроконтроллера. Далее заходите на мк в меню (любой параметр) после автоматического выхода из меню, настройки будут переданы на компьютер, заходите в меню "данные регулятора" там должна быть надпись, не помню точно, что то вроде - последнее считывание /время/.
Если данной надписи не появляется, то изменяете значение "Чст" и смотрите когда начнет появляться.
Здравствуйте Дмитрий, спасибо за быстрый ответ, все получилось,работает в тестовом режиме . Пока без проблем, надеюсь и дальше все будет хорошо, просто мы часто спешим увидеть результат нашего труда. Дальше исполнительна плата и в будущем году в бой.Спасибо за ваш не легкий труд, который нужно вознаграждать, В августе вернусь домой (я не в Курске ) и исполню свое обещание, я не забуду. В дальнейшем буду следить за вашими работами. Спасибо, и крепкого Вам здоровья. Пока.
Здравствуйте форумчане, кто делал "плату выходов" от Дмитрия, обратите внимание на включение бузера, там ошибка, Запитка бузера должна быть плюсом, а он заканчивается(+) на реле (разность т1-т2) и до конечной цели не доведен.Скорей всего упущение .Может эта ошибка уже исправлена тогда извините, но лучше повторится.До свидания, спасибо.
Да вроде все правильно.
Здравствуйте, архив " plataotdmitriya",там две платы, одна управления со светодиодным индикатором вторая исполнительная. Вот на исполнительной плате и есть не до рисовка плюсового проводника силового питания.Если проворонить, придется корректировать рисунок проводками.В общем не критично,но без АВР сигнала, плюс поиск глюка.Спасибо alewka-76 за внимание, всегда на стаже,это приятно,всем здоровья и успехов.Пока.
Это в каком архиве? Пересмотрел вроде везде дорисовано.
C:\Users\Grom\Downloads\plataotdmitriya.rar\ вот в этом.
Это уже переделки.
Крайние изменения смотрим на http://startcd.narod.ru
Добрый день, уважаемые) Возникла у меня идея заменить старую советскую систему управления инкубатором на более современную и попал мне на глаза этот чудо блок управления, в электронике я только начинающий чайник но блок управления собрал и он работает отлично, спасибо автору за множество настроек и общую простоту) а вот по плате выходов у меня возникло несколько вопросов
1) за что отвечает реле "Разность Т1-Т2" и реле "нагрев воды"?
2) у меня инкубатор на 6000 яиц и соответственно на нагрев стоят три тена по 1-1.5кВт каждый, плюс напряжения сети крайне низкое в вечернее время поэтому три тена разбросаны на каждую фазу по одному, как это реализовать? и какой нагрев лучше использовать ШИМ или фазоимпульс исходя из практики?
буду очень благодарен за помощь начинающему электронщику)
Вывод "РАЗНОСТЬ Т1-Т2" включается, если разница температур датчиков Т1 - Т2 будет больше заданной в параметре "РАЗ" (разность), выключается при температуре равной заданной в параметре "Усt". Данный вывод служит для выравнивания температуры по всему объему, так как горячий воздух поднимается кверху, температура Т1 будет выше температуры Т2. Например, можно включать дополнительный вентилятор, для перемешивания воздуха.
Иными словами, температура нижнего датчика Т2 выравнивается по верхнему Т1
«Поd.» - температура нагрева воды. Функция подогрева воды (для быстрого набора влажности).
Данная функция работает по датчику DS18B20 подключенному к выводу 13 (PD7)
микроконтроллера. Если температура датчика ниже на 5 гр. уставки "Поd." и если температура в
течении 2.5 минут не возрастает на 1гр, то термостатирование прекращается (предполагается, что
воды нет и тэн работает в холостую), подается тревога №9. При этом, если зайти в режим
отображения тревог и нажать клавишу МИНУС, тревога №9 будет сброшена, термостатирование
разрешено. Нажатия на другие клавиши сбросит только тревогу №9, без разрешения
термостатирования. Функция подогрева воды автоматически отключается при влажности равной
заданной в «ВLA». Если датчик отсутствует, функция подогрева запрещается, на выводе "НАГРЕВ
ВОДЫ" устанавливается логический ноль, зажигается светодиод LED_ALARM , устанавливается
тревога №9 и №3.
Фазоимпульс на три фазы не подойдет .
Для 3х фаз делал для prokop29, надо у него спросить о нюансах и работает оно или нет.
Было вот такое решение:
Ставиться дополнительный контроллер мега8
от регулятора выход на тиристор подключить к новой схеме к входу IN_OT_REGUL
С выводов FA FB FC брать управление на оптопары (должны быть без зерокросс детектора) .
Да работает.Стоит на котле отопления.Все нормально,только напряжение на выходах в районе 200 вольт.Но мне хватает.