Добро пожаловать, Гость
Логин: Пароль: Запомнить меня

ТЕМА: Двухканальный термометр-термостат с вольтметром

Двухканальный термометр-термостат с вольтметром 06 апр 2016 13:18 #1

  • Serg81
  • Serg81 аватар
  • Не в сети
  • Harness is online
  • Сообщений: 34
  • Спасибо получено: 2
Описание:
Двухканальный термостат с возможностью установки температуры срабатывания(-55°C to +125°C), установки типа работы(нагрев HOT или охлаждение COLD), установка гистерезиса h(0-10гр).
Вольтметр с возможностью включать нагрузку при нужном установленном в настройках напряжении LIGHT ON, с настраиваемым таймером TIMER задержки(0-10sec) перед включением этой нагрузки, возможностью принудительного отключения этой нагрузки при подаче на нужный порт логической единицы(приоритетное действие), возможностью принудительного включения Р этой нагрузки при помощи кнопки, индикация вкл/откл нагрузки ON/OFF.
Индикация состояния аккумуляторной батареи BATTERY ERR, разряжена/нормально/перезарядка, с настраиваемыми нижним и верхним порогом напряжения срабатывания.
===============
Уровни напряжения для заполнения значка аккумуляторной батареи, шаг 0,5вольт:
ниже 10,7вольт - пустой значок
от 10,7 до 11,2 - 1 пиксель
от 11,2 до 11,7 - 2 пиксель
от 11,7 до 12,2 - 3 пиксель
от 12,2 до 12,7 - 4 пиксель
от 12,7 и выше - 5 пиксель
===============
Порты подключения Atmega8
дисплей
RS - PD6
E - PD5
DB4 - PB0
DB5 - PB1
DB6 - PB2
DB7 - PD7
датчики температуры, вход
PB6
PB7
кнопки SET + -
PD2
PD3
PD4
выход, термостаты
PD0
PD1
вход, внешний сигнал, логическая единица, для принудительного отключения нагрузки LIGHT ON
PC4
выход с вольтметра, логическая единица при совпадении измеряемого напряжения с напряжением уставки и его превышении
PC5
вход напряжения вольтметра для измерения
PC0
=====================
Температура одного из термостатов(индикация которого в правом нижнем углу) должна настраиватся с внешнего окна, без захода в настройки.
Работа устройства включающего нагрузку при нужном напряжении LIGHT ON:
При включении устройство находится в автоматическом режиме и сравнивает напряжение на входе с напряжением уставки. Если напряжение равно или выше уставки запускается таймер(при условии что в настройках время больше 0), работу таймера индицирует мигание значка "фара". Через установленное время, либо сразу, включается нагрузка(лог 1 на порту РС5),. Если напряжение меньше порогового, нагрузка отключается(лог 0 на порту РС5).
Нажатие на кнопку SET переводит устройство в ручной режим, нагрузка включается, на дисплее появляется буква Р. Повторное нажатие выключает нагрузку(убираем с дисплея букву Р). Третье нажатие снова включает и т.д. При переходе напряжения через порог (в ту или иную сторону) устройство переходит в автоматический режим. Если на порту РС4 присутствует высокий логический уровень, то нагрузка отключается независимо от режима работы(лог 0 на порту РС5).
Индикация уровней на порту РС5:
1 - ON
0 - OFF
Индикация принудительного включения нагрузки:
Р
Работа устройства индицирующего критические состояния аккумуляторной батареи BATTERY ERR:
при достижении нижнего уровня(LO) и дальнейшем его снижении, а так же при достижении верхнего уровня(HI) и дальнейшем его повышении - мигает значок аккумуляторной батареи. В состоянии когда напряжение находится между значениями LO и HI, значок светится не моргая.
*предусмотреть невозможность установки верхнего порога ниже нижнего порога, и невозможность установки нижнего порога выше чем верхний, так же невозможность установки одинаковых значений, должна быть минимальная разница в 0,1вольт.
Расположение элементов на дисплее:








UPD проблема с кнопками решилась заменой их на другие, предыдущие имели остаточное сопротивление 80 Ом в замкнутом состоянии
Последнее редактирование: 06 апр 2016 14:36 от Serg81.
Администратор запретил публиковать записи гостям.

Двухканальный термометр-термостат с вольтметром 06 апр 2016 15:13 #2

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1415
Serg81 пишет:
UPD проблема с кнопками решилась заменой их на другие, предыдущие имели остаточное сопротивление 80 Ом в замкнутом состоянии
Кнопки будут работать, даже если сопротивление в замкнутом состоянии будет в 100 раз больше.

В архиве проект для тестирования.
Что не так - пишите. Из того, что сам вижу - устанавливаются температуры только положительные до 99 град. Если принципиально - расширю.
Вложения:
Последнее редактирование: 07 апр 2016 20:50 от Soir. Причина: Обновление прошивки.
Администратор запретил публиковать записи гостям.
Спасибо сказали: Serg81

Двухканальный термометр-термостат с вольтметром 06 апр 2016 16:15 #3

  • Serg81
  • Serg81 аватар
  • Не в сети
  • Harness is online
  • Сообщений: 34
  • Спасибо получено: 2
Вы залили самую первую прошивку B)
Администратор запретил публиковать записи гостям.

Двухканальный термометр-термостат с вольтметром 06 апр 2016 17:04 #4

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1415
Ошибся.
Администратор запретил публиковать записи гостям.

Двухканальный термометр-термостат с вольтметром 06 апр 2016 20:18 #5

  • Serg81
  • Serg81 аватар
  • Не в сети
  • Harness is online
  • Сообщений: 34
  • Спасибо получено: 2
По термостатам - всё работает отлично.
Максимальную устанавливаемую положительную температуру увеличьте до максимально возможной, так же и максимальную отрицательную до максимально возможной. Сейчас диапазон установок 0...+99С
Отсутствует мигание значка акума по выходу напряжения за настроенные пороги HI и LO, функция BATTERY ERR.
Отсутствует логическая единица на порту РС5 при достижении установленного порога напряжения, функция LIGHT ON.
Отсутствует логическая единица на порту РС5 при принудительном включении кнопкой SET, кстати кажется это вообще не работает, потому что при нажатии кнопки SET на дисплее просто зажигается символ Р, повторное нажатие уже не убирает этот символ.
При подаче внешнего сигнала высокого уровня на порт РС4, меняется надпись OFF на ON, хотя такого не должно быть впринципе.
Напомню, надписи на дисплее OFF и ON индицируют состояние порта PC5:
если на порту лог 1 выводим ON
если на порту лог 0 выводим OFF
Остальное не имею возможности проверить по причинам вышеизложенным.
Смотрел на экран и не мог понять, почему значки больше на пиксель чем буквы текста и выглядят огромными, а оказывается стандартный текст по высоте не на все 8 пикселей в высоту...
Если возможно, переделайте пожалуйста два левых значка как на картинке, красным обозначены пустые пиксели, при такой переделке в батарейке вместо 5 пикселей остается всего 4, вот диапазон:
ниже 11,2вольт - пустой значок
от 11,2 до 11,7 - 1 пиксель
от 11,7 до 12,2 - 2 пиксель
от 12,2 до 12,7 - 3 пиксель
от 12,7 и выше - 4 пиксель

Администратор запретил публиковать записи гостям.

Двухканальный термометр-термостат с вольтметром 06 апр 2016 20:36 #6

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1415
Часть несоответствий с описанием по причине того, что последний вариант описания появился уже после написания прошивки. В первых вариантах кое-что было указано нечетко, кое-что не так. Есть и мои недоделки.

Всем этим займусь завтра.
Администратор запретил публиковать записи гостям.
Спасибо сказали: Serg81

Двухканальный термометр-термостат с вольтметром 07 апр 2016 10:34 #7

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1415
Serg81 пишет:
Максимальную устанавливаемую положительную температуру увеличьте до максимально возможной, так же и максимальную отрицательную до максимально возможной. Сейчас диапазон установок 0...+99С
Увеличил, -55...+125С. Нужно проверить.
Serg81 пишет:
Отсутствует мигание значка акума по выходу напряжения за настроенные пороги.
Сделал.
Serg81 пишет:
Отсутствует логическая единица на порту РС5 при достижении установленного порога напряжения, функция LIGHT ON.
Присутствует, там еще таймер задержки.
Serg81 пишет:
при нажатии кнопки SET на дисплее просто зажигается символ Р, повторное нажатие уже не убирает этот символ.
В описании было непонятно, я переспрашивал, Вы не ответили.
Еще все было завязано с тем же таймером задержки, теперь в описании этого нет ... и сейчас не уверен, что все правильно понял.
Изменил, проверьте.
Serg81 пишет:
Смотрел на экран и не мог понять, почему значки больше на пиксель...
Изменил, проверьте.
Администратор запретил публиковать записи гостям.

Двухканальный термометр-термостат с вольтметром 07 апр 2016 15:56 #8

  • Serg81
  • Serg81 аватар
  • Не в сети
  • Harness is online
  • Сообщений: 34
  • Спасибо получено: 2
Спасибо, сейчас затестим.
Проверил в протеусе, значок акума мигает при превышении установок, температура имеет полный диапазон, символы отлично, а вот с единичкой на РС5(OUT3) что то не то.
На скринах видно, установка напряжения включения 12,5в, по вольтметру уже 13,8, а не включается. Включение по кнопке SET тоже не происходит, символ Р появляется и исчезает при повторном нажатии(так и надо), а вот на РС5 тишина.
Еще все было завязано с тем же таймером задержки, теперь в описании этого нет ... и сейчас не уверен, что все правильно понял
при включении через кнопку SET игнорируем таймер, при выключении через кнопку сет(если была включена через эту кнопку) дальнейшая работа определяется напряжением уставки и напряжением на входе вольтметра, ну т.е. отслеживаем и вкл/откл согласно алгоритму - меньше порогового или равно=выкл, больше или равно=включаем.

Последнее редактирование: 07 апр 2016 16:18 от Serg81.
Администратор запретил публиковать записи гостям.

Двухканальный термометр-термостат с вольтметром 07 апр 2016 17:05 #9

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1415
Serg81 пишет:
На скринах видно, установка напряжения включения 12,5в, по вольтметру уже 13,8, а не включается. Включение по кнопке SET тоже не происходит, символ Р появляется и исчезает при повторном нажатии(так и надо), а вот на РС5 тишина.
Видно. Видно также, что на PC4 присутствует высокий логический уровень. Это же Вы писали:
Serg81 пишет:
Если на порту РС4 присутствует высокий логический уровень, то нагрузка отключается независимо от режима работы(лог 0 на порту РС5).


Поэтому давайте еще раз. Что не так?
Последнее редактирование: 07 апр 2016 17:06 от Soir.
Администратор запретил публиковать записи гостям.
Спасибо сказали: Serg81

Двухканальный термометр-термостат с вольтметром 07 апр 2016 17:26 #10

  • Serg81
  • Serg81 аватар
  • Не в сети
  • Harness is online
  • Сообщений: 34
  • Спасибо получено: 2
отлично! тестирование не выявило чего то неработающего, либо работающего не так как надо.
Огромное спасибо Вам Soir!
Упс, если с меню настроек выходить через кнопку SET(долгое нажатие), не сохраняет изменения в настройках, я правда незнаю, делали ли вы такой выход, с него кстати быстрей выходит, чем если ждать когда само.
Пара вопросов про работу
1) При включении, после заставки, на секунду, мб чуть меньше с обоих датчиков температуры выводится цифра 85, при этом если эта температура попадает в диапазон настройки термостата когда он должен включить(пример - режим охлаждение, температура уставки 70гр), на это время на выходах появляется лог 1(щас стоят светодиоды на макетке, видно их кратковременное зажигание), это можно как то заблокировать? Ну чтоб при включении чуток подождать с выводом температуры, пока датчики "отзвонятся"? я так понимаю это в датчиках при включении эта цифра появляется как тест инициализации?
2)Насчет гистерезиса - так как кратность показа в данном устройстве равна 1 градус, получается что и 0 и 1 в установках гистерезиса работают одинаково? или все же при установке 1 включится/отключится через 1 градус, а при установке 0 включится/отключится сразу как только температура выйдет за предел уставки
Последнее редактирование: 07 апр 2016 19:25 от Serg81.
Администратор запретил публиковать записи гостям.

Двухканальный термометр-термостат с вольтметром 07 апр 2016 20:14 #11

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1415
Serg81 пишет:
если с меню настроек выходить через кнопку SET(долгое нажатие), не сохраняет изменения в настройках, я правда незнаю, делали ли вы такой выход, с него кстати быстрей выходит, чем если ждать когда само.
Да, такой выход предусмотрен. А сохранение срабатывает независимо от способа выхода через ~10 сек от последнего нажатия на кнопки.
Serg81 пишет:
Ну чтоб при включении чуток подождать с выводом температуры, пока датчики "отзвонятся"? я так понимаю это в датчиках при включении эта цифра появляется как тест инициализации?
Такая задержка предусмотрена - сама заставка, наверно мало, хотя Proteus отрабатывает нормально. Увеличил, проверьте еще.
Serg81 пишет:
Насчет гистерезиса - так как кратность показа в данном устройстве равна 1 градус, получается что и 0 и 1 в установках гистерезиса работают одинаково?
0 в гистерезисе вообще лишен смысла, поэтому так и отрабатывает. Фактически минимальный гистерезис 1 град. Можно как-то по-другому, расписывайте. Можно выставлять от 1 град, чтобы не возникало таких вопросов.
Администратор запретил публиковать записи гостям.

Двухканальный термометр-термостат с вольтметром 07 апр 2016 20:45 #12

  • Serg81
  • Serg81 аватар
  • Не в сети
  • Harness is online
  • Сообщений: 34
  • Спасибо получено: 2
Да, такой выход предусмотрен. А сохранение срабатывает независимо от способа выхода через ~10 сек от последнего нажатия на кнопки.
а, вот оно как, я выхожу через сет, и секунды через 2 отключаю питание, не сохраняет, щас даже детектор питания ставил в фьюзах - не помогло, теперь ясно почему
Такая задержка предусмотрена - сама заставка, наверно мало, хотя Proteus отрабатывает нормально. Увеличил, проверьте еще.
ага, теперь нормально, 85 не появляется
0 в гистерезисе вообще лишен смысла, поэтому так и отрабатывает. Фактически минимальный гистерезис 1 град. Можно как-то по-другому, расписывайте. Можно выставлять от 1 град, чтобы не возникало таких вопросов.
А как по другому, если кратность 1 градус, нельзя же сделать меньше, просто возникала мысль что кратность одному градусу просто показывается на дисплее, а в самом контроллере идет замер с кратностью меньшей, 0,5 гр или 0,1, и поэтому 0 гистерезис и был бы этой самой меньшей цифрой.
Тогда 0 убрать, если это там ничему не навредит, и что то сделать с сохранением настроек по выходу через SET, чтоб сохраняло как то раньше, либо автоматом по выходу из настроек, незнаю, Вам виднее, мб что предложите
Администратор запретил публиковать записи гостям.

Двухканальный термометр-термостат с вольтметром 07 апр 2016 21:05 #13

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1415
Serg81 пишет:
Тогда 0 убрать
Убрал, но проверьте как работает.
Serg81 пишет:
и что то сделать с сохранением настроек по выходу через SET, чтоб сохраняло как то раньше, либо автоматом по выходу из настроек, незнаю, Вам виднее, мб что предложите
А что, есть необходимость сразу по завершении настроек выдергивать прибор из розетки?
Автоматически и так выходит из настроек, при этом сохраняет. Уменьшил время, но может быть другое неудобство - если замешкались в настройках. Можно сделать запись, как только что-то изменилось в настройках. Но следует понимать, что хотя число перезаписей допускается довольно таки большое, но оно не бесконечное.
Можно придумать еще одну кнопку, специально для сохранения. Или в меню пунктик, или какая-то комбинация кнопок... Но это тоже надо не забыть нажать.

Мне кажется проблема надумана. Это самый распространенный способ автоматической записи настроек. Почти всегда так делаю, в т.ч. и для своих приборов, пока никто не жаловался. Почти потому, что есть специфические случаи, например сохранение показаний одометра в автомобиле. В этом случае МК отслеживает отключение питания, чтобы как только, так и сразу записать последние значения...
Администратор запретил публиковать записи гостям.
Спасибо сказали: Serg81

Двухканальный термометр-термостат с вольтметром 07 апр 2016 21:44 #14

  • Serg81
  • Serg81 аватар
  • Не в сети
  • Harness is online
  • Сообщений: 34
  • Спасибо получено: 2
Убрал, но проверьте как работает.
работает хорошо B)
А что, есть необходимость сразу по завершении настроек выдергивать прибор из розетки?
необходимости нет конечно, из розетки я имею ввиду, в машине же будет использоваться, а там стартер, и просадка по питанию, впринципе это уже проверять когда перенесу на печатную плату с макетки, ведь вполне же может быть ситуация что после настроек, либо просто при установке температуры термостата который управляется с внешнего окна тут же завести двигатель, просадка, прибор тухнет, настройки не сохраняются. Это конечно просто мысли и предположения.
Уменьшили до ~5сек? Наверно это достаточно.
P.S. печатную плату как доделаю, сюда скину.
============================================
Устройство работает как надо, всё отлично, ещё раз большое спасибо, здоровья и долгих лет жизни Вам и вашим близким!
Последнее редактирование: 07 апр 2016 22:28 от Serg81.
Администратор запретил публиковать записи гостям.
Модераторы: wolf2000, Vakula, Айнцвайдрайченко