Запрошуємо, Гість
Ім'я користувача: Пароль: Запам’ятати мене

ТЕМА: Таймер-терморегулятор на мікроконтролері

Таймер-терморегулятор на мікроконтролері 09 лист. 2015 12:15 #51

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Serg81 пише:
режим термостат(отображение температуры) - жмём кнопку SET, на индикаторе высвечивается ГГР, затем кнопку "-", и попадаем опять в текущее отображение температуры. если нажать кнопку"+", после ГГР попадаем в ВПР. вот об этом я.
И я об этом. Выбор параметра для настройки кнопками "+"/"-" по кругу, после входа в настройки кнопкой Set. Когда круг заканчивается - основное окно. Круг можно пройти кнопкой "+", а можно с первого шага нажать "-" и круг закончится очень быстро.
Serg81 пише:
выяснил что в термостате не работает функция ВРВ. ВРВ+ВРО работает.
описание с сайта на всяк случай
На всякий случай, параметры ВРВ и ВРО элементы одной логики. Если какой-то из них не установлен (=0), то и второй не имеет смысла. Поэтому, как и написано - таймер в работе не участвует.
Если надо другой алгоритм - распишите.
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 09 лист. 2015 13:36 #52

  • Serg81
  • Serg81 аватар
  • Оффлайн
  • Harness is online
  • Дописи: 34
  • Подякували: 2
насчет навигации по меню понятно, на оригинале зациклена переборка эелементов по кругу, и выход с меню только автоматом через 5с. Здесь получается можно выйти из меню кнопками, так даже лучше.
насчет ВРВ и ВРО - при установленном параметре ВРО равным 0 считать паузу между включениями бесконечной, так можно сделать? Ну то есть получится так, ввели например в ВРВ 10, нагрузка включилась на 10 минут, потом выключилась насовсем. повторное включение на то же время кнопкой +
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 09 лист. 2015 14:26 #53

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Serg81 пише:
насчет ВРВ и ВРО - при установленном параметре ВРО равным 0 считать паузу между включениями бесконечной, так можно сделать? Ну то есть получится так, ввели например в ВРВ 10, нагрузка включилась на 10 минут, потом выключилась насовсем. повторное включение на то же время кнопкой +
Сделал. Но не все так просто. С работой меню мы уже разобрались, там есть особенность - кнопка "+" и так "нарасхват". Из основного состояния она изменяет настройку температуры термостата. Поэтому остается вариант - зайти в меню ВРВ и изменить параметр (можно +1 и сразу -1). Тогда произойдет перезапуск таймера. Неудобно, но иначе надо много ломать в алгоритме управления.
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 09 лист. 2015 17:15 #54

  • Serg81
  • Serg81 аватар
  • Оффлайн
  • Harness is online
  • Дописи: 34
  • Подякували: 2
а варианты
длительное нажатие PLUS
нажатие - MINUS
длительное нажатие - MINUS
тоже нельзя использовать без "много ломать в алгоритме управления."?
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 09 лист. 2015 19:19 #55

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Serg81 пише:
тоже нельзя использовать без "много ломать в алгоритме управления."?
Да, много ломать. Длительные нажатия используются для ускоренной установки параметров.
Самое простое и удобное решение, если Вам так нужны однократные запуски, добавить кнопку Start.
Можно еще как-то расширить меню выбора таймер-термостат, например символы -S-, кнопка Set -> старт.
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 09 лист. 2015 20:06 #56

  • Serg81
  • Serg81 аватар
  • Оффлайн
  • Harness is online
  • Дописи: 34
  • Подякували: 2
Soir вкл/выкл питания для перезапуска сработает?
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 09 лист. 2015 21:17 #57

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Сейчас не могу глянуть прошивку, кажется да. Вы можете это проверить сами в Proteus. Если нет - это нетрудно сделать.
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 09 лист. 2015 21:52 #58

  • Serg81
  • Serg81 аватар
  • Оффлайн
  • Harness is online
  • Дописи: 34
  • Подякували: 2
в протеусе работает, в железе завтра проверю, заодно и остальное еще раз. По сути это уже окончательный вариант. Описание закончил. Надо чтобы кто нибудь глянул :cheer:
Таймер-терморегулятор на микроконтроллере Atmega8.rar
Останнє редагування: 09 лист. 2015 21:56 від Serg81.
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 10 лист. 2015 09:48 #59

  • Serg81
  • Serg81 аватар
  • Оффлайн
  • Harness is online
  • Дописи: 34
  • Подякували: 2
Доброго дня Soir, в последней прошивке:
если в режиме "Термостат" нагрузка была включена и при этом перейти в режим "Таймер" без подтверждения кнопкой "SET", нагрузка остаётся включенной. Должна отключаться. Если перейти с подтверждением кнокпой "SET", нагрузка отключается
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 10 лист. 2015 17:00 #60

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Serg81 пише:
Если перейти с подтверждением кнокпой "SET", нагрузка отключается
Кстати, не отключается. Смотря какое текущее (предыдущее) состояние таймера.
---
Что-то придумал, проверяйте.
Долучення:
Останнє редагування: 14 лист. 2015 08:21 від Soir. Причина: Обновление прошивки.
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 10 лист. 2015 22:24 #61

  • Serg81
  • Serg81 аватар
  • Оффлайн
  • Harness is online
  • Дописи: 34
  • Подякували: 2
Проверил насколько хватило фантазии на различные комбинации, работает как надо, без изъянов.
Огромное человеческое спасибо за то что взялись делать этот проект и довели до ума!
Есть правда еще пара маленьких вопросов -
1)Во время испытаний, пару-тройку раз устройство не сохраняло текущий режим(таймер или термостат) и при отключении питания включалось в другом, проверялось в корпусе в котором стоял предыдущий термостат, там свой бп, в отличии от программатора который при проверке питал устройство от компа(линия 5в). Разница между ними в том, что в программаторе питание отключается сразу(ну если не учитывать кондер 0,1мкф стоящий в цепи атмеги), а вот в бп который стоит в корпусе, там емкость на выходе около 1000мкф, и отключал я его выдергивая из розетки, соответственно питание снижалось плавно. Насколько я знаю у атмег есть отслеживание питания, и при снижении порога там чет срабатывает защищая от глюков. включается в фьюзах. сейчас фьюзы E4 D9, и этот отслеживатель не включен. мб его включить на всякий случай? для надежности. закономерности в действиях когда не сохраняет выявить не удалось.
2)второй момент - если стоит внешний кварц и рядом импульсный источник питания, при поднесении пальца к кварцу, мегу начниает жестко колбасит вплоть до полного аута(индикатор гаснет, на кнопки не реагирует, в настройках совсем другие параметры появляются, помогает только вкл/выкл питание). нынешняя плата проверялась в том же корпусе где стоял старый термотайтер который глючил скачками температуры, так вот, тот тоже работал с внешним кварцем, только 4МГц и таких проблем с кувырканиями меги небыло. разводка плат почти таже самая, примерно тоже расположение кварца. думал кварц кривой, заменял другими, проблема все равно оставалась.
Если работает от внутреннего осциллятора, таких проблем нет. Программно с этим можно что то сделать?
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 10 лист. 2015 22:50 #62

  • Oto
  • Oto аватар
  • Оффлайн
  • Moderator
  • Дописи: 2681
  • Подякували: 1160
  • sxem.org 2019,2020,2021,2022,2023,2024 Site Sponsor 2017 Author
2) Обычно к корпусу кварца припаиваю проводок и его на общий питания, для вашего случая такое подойдет?
россия - подлая нацьiя!
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 10 лист. 2015 23:19 #63

  • Serg81
  • Serg81 аватар
  • Оффлайн
  • Harness is online
  • Дописи: 34
  • Подякували: 2
Oto а у Вас часто из за кварца микры "колбасит"?
просто я первый раз с таким сталкиваюсь, устройств достаточно много делал, как то вот не наблюдал такие выкрутасы
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 11 лист. 2015 05:49 #64

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Serg81 пише:
1)Во время испытаний, пару-тройку раз устройство не сохраняло текущий режим...
Сохранение происходит через 5-6 сек после последнего нажатия на кнопки. Если Вы выключите питание раньше - сохранение не произойдет.
Serg81 пише:
его включить на всякий случай?
Включите...
Serg81 пише:
2)второй момент - если стоит внешний кварц и рядом импульсный источник питания, при поднесении пальца к кварцу...
Никаких программных особенностей здесь нет. Выполняете требования к правильной установке кварца, разводке питания, качеству питания, а при необходимости и к экранированию устройства. Особенно в случае наличия сильного источника импульсных помех.
Наличие помех и пульсаций питания может быть и причиной п.1.
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 11 лист. 2015 08:54 #65

  • Serg81
  • Serg81 аватар
  • Оффлайн
  • Harness is online
  • Дописи: 34
  • Подякували: 2
Soir пише:
Сохранение происходит через 5-6 сек после последнего нажатия на кнопки. Если Вы выключите питание раньше - сохранение не произойдет.
этот момент учитывался
Soir пише:
Включите...
вот про это я
BODLEVEL и BODEN – контроль напряжения питания микроконтроллера (Brown-out Detector).
Если питание микроконтроллера опуститься к минимально допустимому или чуть ниже, то работа микроконтроллера будет нестабильной. Возможны ошибочные действия, потеря данных, случайное стирание EEPROM.
при плавном снижении питающего напряжения это и происходит же вроде...
Soir пише:
Никаких программных особенностей здесь нет. Выполняете требования к правильной установке кварца, разводке питания, качеству питания, а при необходимости и к экранированию устройства. Особенно в случае наличия сильного источника импульсных помех.
Наличие помех и пульсаций питания может быть и причиной п.1.
ну вот видите, на старом устройстве такого не наблюдал, хотя по сути изменились только кварц(с 4 до 8) да прошивка
Останнє редагування: 11 лист. 2015 08:55 від Serg81.
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 11 лист. 2015 09:54 #66

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
И дальше что?
Контроль напряжения питания Вы можете сами включить. На моей практике с проблемами в этой части не сталкивался, в домашнем БП, которым питается макетная плата, конденсаторы кажется 4700 мкФ или около этого.
Если есть подозрение на ложное срабатывание кнопок - тоже все в Ваших руках. Ставьте параллельно конденсаторы, подтягивайте выводы МК к +5V... Защита от дребезга программно реализована. Конечно, для обычных условий использования.
С кварцевым генератором я Вам тоже не помогу. Есть рекомендации по подключению, по конденсаторам на выводах МК.
Могу разве что собрать дома на макете и проверить работоспособность. Но эксперименты с источниками импульсных помех, электрошокерами и т.п. я проводить не буду. Кварц на макете подключается вообще без конденсаторов и против всяких правил, и рукой за него берусь - сбоев не наблюдал. Ну, это еще могу проверить на этой конкретной разработке.
Проверяйте монтаж, отмывку флюса, если МК на панельке - надежность контактов... Измерьте уровень пульсаций питающего напряжения.
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 11 лист. 2015 19:17 #67

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Собрал на макете. Раз десять подергал питание (в т.ч. и отверткой к.з.) - ничего не случилось.
С кварцем тоже поигрался. Подносил руку, касался корпуса, выводов... В конечном итоге удалось "завалить", когда долго пальцами касался одновременно обоих выводов. Привело к записи мусора в EEPROM. Еще один раз добился такого же эффекта, когда несколько раз "на ходу" вытаскивал кварц из макета и вставлял обратно. В общем, ожидаемо и предсказуемо.
Но тем не менее, немного изменил процедуру записи в EEPROM. После этого сколько ни издевался - сбоев не было. Может помогло, а может не удалось таким способом спровоцировать сбой. Более жесткие способы не пробовал - жалко МК.
Измененную прошивку перезалил в сообщение №60. Попробуйте. Если сбои будут продолжаться - считайте EEPROM программатором и выложите здесь. Посмотрю какая область страдает, приму дополнительные меры.
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 12 лист. 2015 12:32 #68

  • Serg81
  • Serg81 аватар
  • Оффлайн
  • Harness is online
  • Дописи: 34
  • Подякували: 2
Soir так и сделаю. пока отсоединил программно внешний кварц и поставил слежение за питанием. работает замечательно. новую прошивку пока не трогал, чуток с временем свободным проблемы, вечером наверно прошью и вручную симитирую сбой поднося палец к кварцу
мб разводка такая кривая у меня получилась, хотя... если у Вас есть возможность, удалите пожалуйста с этого поста печатку на всякий случай
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 12 лист. 2015 13:47 #69

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Serg81 пише:
...вручную симитирую сбой поднося палец к кварцу...
Хочу внести ясность.
Изменения в последней прошивке не влияют на саму возможность возникновение сбоя. Они направлены на сохранение работоспособности управляющей программы при сбое.

При сбое повреждается информация, хранящаяся в EEPROM. Она повреждается не программным путем, а в обход управляющей программы. То есть, что бы я не написал в программе - все это малоэффективно, при сбое программа перестает выполняется, процесс полностью неконтролируемый.
Неправильные данные из EEPROM при следующем старте программы (это может быть подача питания, может быть автоматический рестарт в следствие самого сбоя) могут привести к неработоспособности всей программы или, как минимум, к сбою в самих настройках - надо перенастраивать заново.
Сейчас я еще доработал прошивку, программа проконтролирует корректность данных в EEPROM и, если они вне дозволенных пределов - восстановит значения по умолчанию. Настройки будут утеряны, но программа останется работоспособной без перепрошивки.

Но это все борьба с последствиями за живучесть прибора. При этом может пострадать контролируемый объект, про неудобства я даже не упоминаю. Поэтому надо искать и бороться с причинами сбоев.
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 14 лист. 2015 07:40 #70

  • Serg81
  • Serg81 аватар
  • Оффлайн
  • Harness is online
  • Дописи: 34
  • Подякували: 2
режим таймер(нагрузка выкл) > SET > режим термостат(нагрев, окружающая температура меньше чем уставка) > нагрузка вкл > через несколько сек нагрузка выключается и снова включается. однократно. в симуляторе, в железе.
видео
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 14 лист. 2015 08:22 #71

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Serg81 пише:
через несколько сек нагрузка выключается и снова включается. однократно.
Исправил.
---
P.S.
Почитал описание, одно уточнение.
"ВРВ — продолжительность ... Для перезапуска требуется ВКЛ/ВЫКЛ питание устройства."
Перезапуск происходит также при изменении времени этого параметра в настройках.
И небольшая ошибка:
"Затем подать питание, После..." - или точка вместо запятой, или "п" строчная.
Останнє редагування: 14 лист. 2015 08:48 від Soir.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: snowridеr

Таймер-терморегулятор на мікроконтролері 14 лист. 2015 10:54 #72

  • Serg81
  • Serg81 аватар
  • Оффлайн
  • Harness is online
  • Дописи: 34
  • Подякували: 2
Спасибо за исправление.
Описание дополнил, исправил.
Добавил схему, фьюзы.
Ссылка
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: Skorpiom, snowridеr

Таймер-терморегулятор на мікроконтролері 01 січ. 2016 11:11 #73

  • snowridеr
  • snowridеr аватар
  • Оффлайн
  • Harness is online
  • Дописи: 31
Уважаемый Soir,
могли бы Вы немного "допилить" прошивку, поставить пьезо, по окончании таймера выдавал сигналы с помежутками в 1сек, до тех пор пока не нажмеш SET
С Уважением
Александр
Увійдіть до облікового запису, щоб писати повідомлення.

Таймер-терморегулятор на мікроконтролері 02 січ. 2016 11:11 #74

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
snowrider пише:
поставить пьезо, по окончании таймера выдавал сигналы с помежутками в 1сек, до тех пор пока не нажмеш SET
Добавил. Пищалка должна быть с встроенным генератором.
Долучення:
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: Skorpiom, Serg81, snowridеr, nickolay78

Таймер-терморегулятор на мікроконтролері 21 бер. 2016 12:04 #75

  • nickolay78
  • nickolay78 аватар
  • Оффлайн
  • Користувач
  • Дописи: 6
Доброго дня! Уважаемый Soir, а нельзя ли в этом термостате заменить реле на симистор и сделать регулировку мощности коммутируемой нагрузки?
Увійдіть до облікового запису, щоб писати повідомлення.
Модератори: Wolf, Vakula, Айнцвайдрайченко, Soir