Главная arrow Проекты arrow По группам arrow Микроконтроллеры arrow Термостат: меньше не бывает  
18.09.2024 г.
Главная
Проекты
Статьи
Начинающим
Архив новостей
Ссылки
Контакты
Поиск
Файлы
Форум
Карта сайта
Авторизация





Забыли пароль?
Ещё не зарегистрированы? Регистрация
Поддержи наш сайт!
Через WebMoney

 R785211844650
 Z210696637574
 E368177590409

Термостат: меньше не бывает Печать E-mail
Рейтинг: / 25
ХудшаяЛучшая 
Автор ARV   
25.06.2008 г.

Посвящается пользователю Toledo 

После публикации проекта Термометр: меньше не бывает на форуме было много разных мнений о недостатках этого проекта, а так же о том, как его можно улучшить. И вот, обдумав все и пойдя навстречу пожеланиям, я размещаю новый проект Термостат: меньше не бывает.

 

За основу взята схема проекта Термометр: меньше не бывает, в которую внесены следующие изменения:

  1. 15 вывод микроконтроллера (порт PB1) используется в качестве общего для дополнительных 3-х светодиодов. Разумеется, в этой цепи должен находиться резистор, как и в цепях выводов 5, 6 и 2 исходной схемы.
  2. Введены 3 светодиода, которые катодами (или анодами - в зависимости от типа примененного индикатора) соединяются вместе, а другими своими концами подключаются к выводам индикатора: к сегменту А - светодиод "Т2", к сегменту "G" - светодиод "минус" и к сегменту "D" - светодиод "Т1"
  3. К выводам контроллера 24, 25 и 26 подключаются 3 кнопки на общий провод: соответственно кнопки "ВЫБОР", "ПЛЮС" и "МИНУС"
  4. Выводы контроллера 27 и 28 используются в качестве противофазных выходов термостата

Надеюсь, этого текстового описания достаточно.

В сущности, главное, как обычно, это прошивка для контроллера, которая и реализует все новые функции. Вот полный перечень возможностей и особенностей прошивки (я говорю в единственном числе, но прошивок 2 - для индикаторов с общими анодами и катодами соответственно):

  • В качестве датчика используется DS18B20
  • Температура индицируется с точностью 0,1 °С
  • Знак минус для отрицательных температур индицируется дополнительным светодиодом "МИНУС"
  • Функция термостата с программируемым порогом срабатывания и гистерезисом
  • Точность задания границ зоны гистерезиса 0,1 °С
  • Диапазон измеряемых температур от -55.0°С до +99.9°С

Для нормальной работы контроллер, как и ранее, должен работать от встроенного генератора 8 МГц.

Теперь о том, как пользоваться термостатом.

Он имеет 3 режима работы: нормальный, который включается сразу после подачи питания, режим просмотра порогов (границ гистерезиса) и режим изменения порогов. Порогов, как вы понимаете, два: нижний Т1 и верхний Т2. Термостат "старабтывает в одну сторону", если температура превышает порог Т2, и переключается в "другую сторону" после того, как температура станет меньше порога Т1. Я умышленно говорю "срабатывает", т.к. термостат имеет 2 выхода, и уровни на них всегда противоположны. Если температура больше порога Т2, то вывод 27 имеет низкий логический уровень, а вывод 28 - высокий. Из этого и следует исходить, разбираясь с логикой переключений.

 

Переключение индикации происходит "по кругу" при нажатии кнопок ПЛЮС и МИНУС. В нормальном режиме мы видим текущую температуру датчика. После нажатия кнопки ПЛЮС - видим порог Т1. Очередное нажатие на ПЛЮС приведет к индикации порога Т2, а затем - снова к индикации температуры. Если нажать и удерживать любую кнопку, соответствующее действие будет повторяться раз в секнду.

Чтобы можно было отличать одини показания от других, введены дополнитиельные светодиоды Т1 и Т2, которые светятся в соответствующих вариантах индикации. При индикации температуры датчика кнопка ВЫБОР не действует, а вот при индикации Т1 или Т2 она включает режим редактирования порога, отображаемого на индикаторе. При входе в этот режим начинает мигать младший разряд индикатора (десятые доли градуса). В этом случае кнопки ПЛЮС и МИНУС приводят к изменению мигающего разряда либо на +1, либо на -1. Для перехода к следующему разряду надо нажать ВЫБОР. После установки всех трех разрядов числа нажатие кнопки ВЫБОР переключает в режим изменения знака - в этом случае должен мигать знак минус, но, т.к. мигающий минус не позволит толком понять включен он или нет, в этом случае мигать будет соответствующий светодиод Т1 или Т2, а знак (т.е. светодиод МИНУС) будет либо включаться, либо выключаться после нажатия ПЛЮС или МИНУС. Когда, наконец, порог введен полностью, следует нажать ВЫБОР последний раз - термостат переключится в режим индикации температуры, а введенное значение будет запомнено в EEPROM контроллера.

Можно задать пороги от -99.9 до +99.9, однако следует помнить важные 2 особенности:

  1. Порог Т2 всегда должен быть больше или равен Т1
  2. Вне зависимости от порогов, фактическое измерение ведется только от -55.0°С

Ввод некорректных порогов приведет к некорректному поведению термостата - пусть это останется на вашей совести.

Разумеется, если дополнительные элементы в схему не вводить, то прошивка будет работать просто как термометр (с учетом того, что знак минус при отрицатеьлных температурах выводиться не будет - просто некуда при трех-то разрядах индикатора).

Как обычно, прошивки в файлохранилище, обсуждение на форуме.

 

 


Добавить в любимые (4) | Просмотров: 72137

  Коментарии (3)
 1 Написал(а) Борис, в 18:53 30.10.2008
Уважаемый ARV! 
Собрал схему, только МК в корпусе TQFP? подкорректировал ноги и все вроде заработало, но температуру показывает градусов на 10 выше, чем обычные термометры. Подогрел паяльником, показала 105 градусов, выше греть не стал. И еще я отключил точку, она горела во втором разряде и вроде бы незачем. 
Что не так мог сделать?
 2 Написал(а) Дмитрий, в 10:25 13.11.2008
Добрый день ! 
А если отключить питание, то сохрянятся ли настройки верхнего/нижнего порога срабатывания ? Или надо будет заново программировать ? Спасибо.
 3 Написал(а) ARV, в 22:06 13.11.2008
для вопросов имеется форум

Только зарегистрированные пользователи могут оставлять коментарии.
Пожалуйста зарегистрируйтесь или войдите в ваш аккаунт.

 
« Пред.   След. »
Полезные материалы по сходным темам
BannerFans.com