Термостат для Инкубатора на Микроконтроллере

Имеется дополнительные три светодиода

В [1] был описан терморегулятор, выполненный на транзисторах и операционных усилителях. Предлагаю аналогичное устройство на микроконтроллере (МК), см. рис.

Устройство питается от нестабилизированного блока "Электроника Д2-10М", предназначенного для калькуляторов. Основой устройства является микросхема DS1620 в корпусе DIP-8, представляющая собой цифровой термометр. Сигнал с вывода Тcom этой ИМС используется для управления термостатом. На выводе Тcom устанавливается высокий уровень, если температура превышает Thigh, и это состояние сохраняется до тех пор, пока температура не опустится ниже Tlow. Заданное значение температуры сохраняется в энергонезависимой памяти .

Микросхема запрограммирована до установки в устройство на температуру (37, 5…38)оС, но может использоваться и в автономном режиме, без МК. Если ИМС не запрограммирована, то будет служить в качестве цифрового термометра для измерения температуры от -55оС до +99оС с шагом в 0, 5оС. Если значение температуры составляет 0, 5оС, то на индикаторе HG2 светится запятая.

Выключатель SA1 предназначен для надежного формирования сигнала "сброс" для МК с помощью цепочки R1-С3 (включение вилки блока питания в розетку этого не гарантирует). Конденсаторы С1 и С2 улучшают запуск внутреннего генератора МК. В процессе отладки введен сглаживающий RC-фильтр R2-С4. Хотя максимальная тактовая частота DS1620 составляет 2 МГц, для уверенного запуска преобразователя температуры ее пришлось понизить на порядок.

Устройство имеет габариты 32х110х30 мм и используется в мини-инкубаторе на 56 яиц. Нагревательными элементами служат 6 ламп накаливания мощностью по 100 Вт. Остальные элементы схемы в пояснениях не нуждаются.

Индикация температуры происходит следующим образом: чередуется индикация "оC" длительностью 2 с и индикация температуры "XXx" длительностью 3 с. Для отрицательных температур высвечивается " -оC".

Карта прошивки ПЗУ МК приведена в таблице. Распределение адресов следующее:

- 0…73 - запуск преобразователя температуры;
- 74…100 - чтение температуры;
-102…179 - побитное чтение данных;
-180…249 - преобразование в десятичный код;
-250…255 - индикация температуры;
-256…273 - индикация "оC"
-280…334 - подпрограмма индикации младшего и старшего разрядов температуры;
-350…359 - данные для отображения знаков и цифр на индикаторе;

Похожие страницы: