Утилиты и решения для отопителя Планар 8ДМ-12S
planar_ctrl/planar_ctrl.ino
Прошивка для Arduino Mega 2560, для управления отопителем и получение обратной связи от него. Разрабатывалась и тестировалась на недорогом клоне ардуины от DFRobot. Выбор на столь навороченную версию пал потому, что требовалась и достаточная производительность на момент исследования, и побольше Serial портов. Напрямую подключение не получиться, т.к. уровень сигнала в RX(зеленый) линии меняется от примерно 2.5 до 5 вольт, тогда как ардуина согласна работать если LOW будет меньше 1.5В. Чтобы решить эту проблему, спаял недорогой переходник на компараторе LM2903P, на инверсный вход которого подвел 3В с переменного резистора 5кОм, а выход притянул к 5В через резистор 10кОм.
На текущий момент, удалось раскопать лишь основные команды и диагностическую информацию, что возвращает отопитель. Поддерживаются следующие команды, отправляемые с компьютера через USB-Serial:
HSTART_DIAG - запуск отопителя с помощью вектора { 0xaa, 0x03, 0x00, 0x00, 0x01, 0x9c, 0xfd }, каковую выдает программа TDT 19.12.16
HSTART_PU5 - запуск отопителя с помощью вектора { 0xaa, 0x03, 0x06, 0x00, 0x01, 0xff, 0xff, 0x04, 0x1e, 0x02, 0x09, 0x1a, 0x4e }, которую выдает механический пульт ПУ-5
HSTOP_PU5 - останов отопителя с помощью вектора { 0xaa, 0x03, 0x00, 0x00, 0x03, 0x5d, 0x7c }, которую выдает ПУ-5
HIGH_POWER - выбор максимальной мощности, вектор { 0xaa, 0x03, 0x06, 0x00, 0x02, 0xff, 0xff, 0x04, 0x1e, 0x02, 0x09, 0x1a, 0x7d } ПУ-5
MID_POWER - выбор средней мощности, вектор { 0xaa, 0x03, 0x06, 0x00, 0x02, 0xff, 0xff, 0x04, 0x17, 0x02, 0x07, 0xdc, 0x2c } ПУ-5
LOW_POWER - выбор минимальной мощности, вектор { 0xaa, 0x03, 0x06, 0x00, 0x02, 0xff, 0xff, 0x04, 0x0e, 0x02, 0x04, 0x1a, 0xbd } ПУ-5
show_hex - включить вывод дампа TX/RX
hide_hex - выключить вывод дампа TX/RX
set_temp_high XX - задать температуру, при которой снизится мощность до минимальной
set_temp_low XX - задать температуру, при которой мощность повысится до максимальной
Захват TX от пульта, также пропущенного через компаратор, предполагается через пин RXD1, а захват RX соответственно через RXD2. Отправка команд в TX соответсвенно с пина TXD1, напрямую. Прошивка также может читать температуру с сенсора DHT11, подключенного к 2-ому пину. Реализовано автоматическое снижение мощности по достижению целевой температуры, и поднятие в случае ухода ниже порога "прохладно".