Мазмуну:

HRV температурасы OpenHAB аркылуу ESP8266 аркылуу (Сериялык коддун мисалы!): 3 кадам
HRV температурасы OpenHAB аркылуу ESP8266 аркылуу (Сериялык коддун мисалы!): 3 кадам

Video: HRV температурасы OpenHAB аркылуу ESP8266 аркылуу (Сериялык коддун мисалы!): 3 кадам

Video: HRV температурасы OpenHAB аркылуу ESP8266 аркылуу (Сериялык коддун мисалы!): 3 кадам
Video: Zehnder HRV with Ground Source Pre-heater High-performance 2024, Ноябрь
Anonim
HRV температурасы OpenHAB аркылуу ESP8266 аркылуу (Сериялык коддун мисалы!)
HRV температурасы OpenHAB аркылуу ESP8266 аркылуу (Сериялык коддун мисалы!)
HRV температурасы OpenHAB аркылуу ESP8266 аркылуу (Сериялык коддун мисалы!)
HRV температурасы OpenHAB аркылуу ESP8266 аркылуу (Сериялык коддун мисалы!)
HRV температурасы OpenHAB аркылуу ESP8266 аркылуу (Сериялык коддун мисалы!)
HRV температурасы OpenHAB аркылуу ESP8266 аркылуу (Сериялык коддун мисалы!)

HRV - OpenHAB үчүн зымсыз

Бул көрсөтмө атайын HRV (жылытуу рециркуляциялоочу желдетүү) тутумуна ээ болгондор үчүн арналган, бирок схеманын бөлүктөрү, openhab конфигурациясы же Arduino коду (мисалы, TTL сериялык маалыматтарын окуу сыяктуу) жеке долбоорлоруңузга ыңгайлуу болушу мүмкүн же үйрөнүүгө жакшы кызмат кылышы мүмкүн. Бул сиз Arduino IDE жана ESP8266 чипи жөнүндө акылга сыярлык билимге ээ экениңизди билдирет.

Киришүү

Төмөндө HRV тутумуна туташкан жана чатыр менен үйдүн температурасын, башкаруу панелинин температурасын жана күйөрман ылдамдыгын MQTT билдирүүлөрү аркылуу OpenHABка жөнөтүүчү ESP8266 кантип куруу керектиги көрсөтүлгөн. Бул ESP8266-01 тактасы менен иштөө үчүн иштелип чыккан (бирок кандайдыр бир ESP8266 3.3V версиясы менен иштеши керек) Эгерде сизде башка сатуучудан HRV тибиндеги окшош система болсо, анда сиз маалыматтын TTL сериясы катары жөнөтүлгөнүн же жок экенин аныкташыңыз керек., маалыматтар кандай структура катары жөнөтүлөт.

OpenHAB жана Mosquitto

ESP8266 коду OpenHAB (ачык булак үй автоматташтыруу программасы) жана MQTT брокери, мисалы, Mosquitto менен иштөө үчүн атайын жазылган (жазышуу/жарыялоо түрү протоколу жеңил жана түзмөктөрдүн ортосундагы байланыш үчүн жакшы) Аттарга же кыскартуулар сизди коркутат, алар кантип иштээрин билгенден кийин колдонуу өтө жөнөкөй. Мен OpenHABты NTC C. H. I. Pде (US $ 9 компьютери) колдоном, бирок көп адамдар Raspberry Pi же ушул сыяктуу нерселерди колдонушат. Бул окуу куралы сиз OpenHABты ишке ашырдыңыз деп болжолдонууда (эгер сизге OpenHABты орнотууга жардам керек болсо, makeuseof веб -сайтынан бул эң сонун макаланы ээрчиңиз) Сиз ошондой эле Mosquitto (MQTT брокери) жана ага тиешелүү OpenHAB тутумун жүктөп алып, орнотушуңуз керек. Сиз муну тармагыңыздын башка жерине орнотсоңуз болот, бирок көпчүлүгү муну жөнөкөй кармоо үчүн OpenHAB менен бир эле машинага орнотушат.

Mosquitto орнотуу үчүн, бул шилтемеге өтүп, сиз колдонгон түзмөктүн түрүн тандап, нускамаларды аткарыңыз. C. H. I. P Debian (Jessie) программасын иштеткендиктен, эгер сиз CH. I. Pти үй автоматташтыруу түзмөгүңүз үчүн колдонуп жатсаңыз, Raspberry Pi көрсөтмөлөрүн аткарсаңыз болот (ошондой эле CLIден жүктөө үчүн CHIPти кайра конфигурациялоонун эң жакшы жолу. Бул үчүн инструкциялар бар)

OpenHAB жана Mosquitto иштеп баштагандан кийин, Arduino IDEди ESP8266 жана кодго даярдоо керек. Биринчиден, "PubSubClient" китепканасын кошуу керек. Arduino IDEде, менюдан эскизге өтүңүз, китепкананы кошуңуз, китепканаларды башкарыңыз Фильтр издөө кутусуна PubSubClient териңиз, андан кийин издөө жыйынтыгын белгилеп, Орнотууну чыкылдатыңыз (жазуу учурунда, акыркы версия 2.6.0) Ошондой эле ESP8266 тактасын Arduino IDEге кошуу керек, аны бул жердеги көрсөтмөлөрдү аткаруу менен жасаса болот

Бул мага эмне берет?

Жогоруда айтылгандай, бул долбоор сизге HRV башкаруу панелинин чатырын, үйүн, башкаруу панелинин температурасын жана күйөрман ылдамдыгын OpenHAB GUIде көрүүгө мүмкүндүк берет (реалдуу убакытта!) Сүрөттөр менин iPhone'умдан эмнеге окшош экенин көрсөтөт ар кандай температурага чейин бургулоо аркылуу жетет.

Графиктерди алуу үчүн, сиз дагы RRD4J байлоону орнотуп, конфигурациялашыңыз керек (бул абдан түз) Бул сизге "Үйдү" же "Чатырды" чыкылдатып, өткөн ар бир мезгил үчүн HRV температурасынын тарыхын алууга мүмкүндүк берет. саат, күн же жума (же конфигурацияны ылайыктуу түрдө өзгөртсөңүз) Көрсөтүлгөн сүрөттөр цельсийде, жана мен муну кылганда анын түштүк жарым шарда кышында экени анык!

Мындан тышкары, мен "Control" опциясын чыкылдатуу менен сырткы температураны (аба ырайын милдеттүү кошумча менен камсыздалган, менин учурда Wunderground колдонулган) чатыр менен үйдүн температурасын салыштырган OpenHAB көрүнүшүн түздүм (сүрөттө диаграмма көрсөтүлгөн үйдүн, чатырдын жана сырткы температуранын графиги). Мен бул маалыматтарды эрежелерде колдонууну пландаштырып, керектүү түрдө жылытуучу приборлорду күйгүзөм. Жөн гана сайт картасынын файлындагы Сиздин URL дарегиңизге Аба ырайы пунктун кошуңуз жана муну ошол эле графикке кошуңуз (мисалы:… items = houseTemp, roofTemp, weatherTemp …)

1 -кадам: Керек болгон бөлүктөр / Ассамблея

Бөлүктөр керек / Кураштыруу
Бөлүктөр керек / Кураштыруу
Бөлүктөр керек / Кураштыруу
Бөлүктөр керек / Кураштыруу
Бөлүктөр керек / Кураштыруу
Бөлүктөр керек / Кураштыруу

Сизге төмөнкү бөлүктөр керек болот

  • An RJ11 бөлүштүргүч (бул сигналды чатырдагы контроллерден башкаруу панелине жана ESP8266га бөлөт)
  • Кээ бир лента кабели жана RJ11 сайгычы (сплиттерден ESP8266га чейин зымдарды иштетүү үчүн)
  • ESP8266-01 (башка 3.3V версиялары иштеши керек)
  • TTL логикалык деңгээл конвертери (5Vдан маалыматтарды өзгөртүү үчүн -> 3.3V)
  • AMS1117 3.3V чыңалуу жөндөгүчү (же окшош, HRV 5Vдан чыңалуусун өзгөртүү үчүн -> 3.3Vдан ESP8266га чейин)
  • 1N5817 schottky диод (кандайдыр бир себептерден улам бул HRV башкаруу панелин ESPти күйгүзүүнү токтотууга жардам берди)
  • 10K ом каршылыгы (3.3 Voltage Regulator менен ESP CH_PD ортосундагы каршылашуу)
  • 10V 10uF конденсатор (же ушуга окшош, HRVден келген энергияны тегиздөө жана стабелиизациялоо үчүн)
  • 10V 1uF конденсатор (же ушуга окшош, ESPке чыккан энергияны тегиздөө жана стабелиизациялоо үчүн)
  • ESPти программалоо үчүн кошумча слайд баскычы (антпесе, GPIO0ду GNDге кол менен тартуу керек)
  • FTDI адаптери (ESPти программалоо үчүн, USBди сериялыкка айландырат)

Схемага ылайык чогултабыз

Банндын сүрөтү тетиктерди кантип чогултуу керек экенин көрсөтөт. HRV контролерунун шыпындагы лента кабелинен ылдый түшүүчү 6 пин бар экенин эске алыңыз:

1 жана 6 -пиндер 5V VCC болуп саналат

2 жана 5 -пиндер GND

3 жана 4 -пиндер маалыматтар.

Сиз 1, 2, 3 жана 6 казыктарды гана колдонушуңуз керек (1 жана 6 VCC ыйгарым укуктары ESP8266 жана TTL логикалык конвертеринин жогорку жагы, 2 жалпы жер жана 3 TTL сериялык маалыматын окуу үчүн)

Сизге керек болгон бөлгүч RJ11 бөлүүчүсү болот, анын казыктары түз болгон бөлгүч экенин текшериңиз (мисалы: 1 -пин 1 -пинге, 2 -пинге 2 -пинге ж.б.) сүрөттөрдө көрсөтүлгөн) ESPти кийинчерээк кайра программалоо үчүн FTDIди туташтыруу үчүн, жана көрсөтүлгөн которгуч аны "программалоо" режимине коёт. Бул милдеттүү эмес, бирок сунушталат (мисалы: эгер сиз WiFi сырсөзүңүздү өзгөртсөңүз, анда WiFi AP жана сырсөз кодго катуу программаланган, сиз аны ESP8266 курулгандан кийин жүктөшүңүз керек болот)

2 -кадам: Кодду жүктөө жана тестирлөө

Кодду жүктөө жана тестирлөө
Кодду жүктөө жана тестирлөө
Кодду жүктөө жана тестирлөө
Кодду жүктөө жана тестирлөө
Кодду жүктөө жана тестирлөө
Кодду жүктөө жана тестирлөө
Кодду жүктөө жана тестирлөө
Кодду жүктөө жана тестирлөө

Код өзгөрүүлөр

Жүктөө шилтемеси Arduino кодуна БУЛ ЖЕРДЕ

Arduino IDEде ачыңыз, ESP тактасы, ошондой эле PubSubClient орнотулганын жана ESP8266 тактасын тандаганыңызды текшериңиз (Tools, Board, Generic ESP8266 Board) Кодду түзөтүңүз жана WiFi AP атын жана сырсөзүн жана IP дарегин өзгөртүңүз. Сиздин MQTT брокери (буларды өзгөртүү керек болгон нерселер гана) төмөндө көрсөтүлгөндөй. "Текшерүү" баскычын чыкылдатып, анын компиляциясын камсыз кылыңыз, андан кийин туура COM порту тандалганын текшериңиз (Куралдар, Порт) жана кодду ESP8266га жүктөңүз. Муну кантип кылуу керектиги жөнүндө көптөгөн макалалар бар, мен бул жерде дөңгөлөктү кайра ойлоп таппайм.

// WiFi

const char* ssid = "your_wifi_ssid_here"; const char* password = "your_wifi_password_here"; // MQTT Broker IPAddress MQTT_SERVER (192, 168, 222, 254);

MQTT тестирлөө

Сыноо үчүн сиз FTDI адаптерин туташтырып, Arduino IDEдеги Сериялык Мониторду ача аласыз, консолдогу температура маалыматын басып чыгарган билдирүүлөрдү көрүшүңүз керек. Эгерде сиз ESP8266дан MQTT брокериңизге келген MQTT билдирүүлөрүнүн көйгөйлөрүн чечишиңиз керек болсо, анда Mosquitto серверинде кирүүчү билдирүүлөргө жазылуу үчүн төмөнкү буйруктардын бирин аткарыңыз:

mosquitto_sub -d -t openhab/hrv/status

Сиз ESP8266дан ар 30 секунд сайын "1" ("мен тирүүмүн" деген мааниси менен) аркылуу келген PUBLISH билдирүүлөрүн көрүшүңүз керек. Эгерде сиз дайыма "0" (же эч нерсе) көрсөңүз, анда эч кандай байланыш жок. 1 саны кирип жатканын көргөндөн кийин, бул ESP8266 MQTT брокери менен байланышып жатат дегенди билдирет (бул кантип иштээри жөнүндө көбүрөөк маалымат алуу үчүн "MQTT Last Will and Testament" издеңиз же бул чын эле жакшы блогго кирүүнү көрүңүз).

Сиз азыр температураны жана күйөрман ылдамдыгын көзөмөлдөп, төмөнкүлөрдүн бирине жазыла аласыз. Бирок, эгерде кандайдыр бир маалымат өзгөрсө, код температуранын маалыматын гана жөнөтөт. Ал жөнөтүлгөн акыркы температураны, желдеткичтин ылдамдыгын ж.б маалыматтарды көзөмөлдөп турат, андыктан дароо келген маалыматты көрө албайсыз.

mosquitto_sub -d -t openhab/hrv/rooftemp

mosquitto_sub -d -t openhab/hrv/housetemp

mosquitto_sub -d -t openhab/hrv/controltemp

mosquitto_sub -d -t openhab/hrv/fanspeed

Ишара: жогорудагы башкаруу панелиндеги температурага жазылыңыз, андан кийин башкаруу панелиндеги температура баскычын басыңыз, анда сиз жаңы температура орнотмосу киргенин көрөсүз.

Муну ширетүү үчүн келгенде, 3см х 7см өлчөмүндөгү ПХР HRV башкаруу панелинин артындагы сууга батып кетет. Мен муну гана сунуштайм, эгерде бул пластикалык каптоочу куту болсо, металл кутуча Wifi сигналдарына тоскоолдук кылышы мүмкүн же ПХБ тактасындагы туташууларды кыскартып коюшу мүмкүн. Же болбосо, тактаны орнотуу үчүн пластикалык 3D корпусту басып чыгара аласыз.

3 -кадам: OpenHAB өзгөртүүлөрү

OpenHAB конфигурациясы

OpenHAB талап кылынган өзгөртүүлөр төмөнкүдөй:

'items' файлы:

/* HRVNumber hrvStatus "HRV Status [MAP (status.map):%d]" (gHRV) {mqtt = "<[mqttbroker: openhab/hrv/status: state: default]"} Number houseTemp "House [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/housetemp: state: default] "} Number houseTemp_Chart_Period" Диаграмма мезгили "Number roofTemp" Roof [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/rooftemp: state: default] "} Number roofTemp_Chart_Period" Диаграмма мезгили "Сан контролуTemp" Control [%.1f C] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/controltemp: абал: демейки] "} Сап fanSpeed" Күйөрмандар ылдамдыгы [%s] "(gHRV) {mqtt =" <[mqttbroker: openhab/hrv/fanspeed: state: default] "}*/

'sitemap' файлы:

Frame label = "HRV Temperature" {Text item = roofTemp {Frame {Switch item = roofTemp_Chart_Period label = "Period" mappings = [0 = "Hour", 1 = "Day", 2 = "Week"] Image url = "https:// localhost: 8080/rrdchart-p.webp

OpenHAB үчүн кошумча сүрөтчөлөр камтылган (оң басуу жана сүрөттөрдү сактоо)

Бул файлдарды OpenHAB сервериндеги.. / OpenHAB Home / webapps / images папкасына сактаңыз

Сунушталууда: