溫控器用于控制室內(nèi)暖通設(shè)備,通過(guò)暖通設(shè)備為室內(nèi)環(huán)境提供冷源和熱源,從而調(diào)節(jié)室內(nèi)溫度環(huán)境,為人們提供舒適的生活環(huán)境。
旋鈕式溫控器更為結(jié)構(gòu)簡(jiǎn)潔、操作簡(jiǎn)便,降低了用戶的使用難度,提供智能化的控制方法,實(shí)現(xiàn)節(jié)能與舒適的平衡。
航芯推出的旋鈕溫控器解決方案,采用有豐富外設(shè)功能的ACM32F0x0系列作為主控芯片,最低功耗可達(dá)0.5uA,具有高整合度、高抗干擾、高可靠性等特點(diǎn),有助于提高產(chǎn)品性能,幫助客戶加快智能溫控設(shè)備的開(kāi)發(fā)。
本文將帶你深入了解基于航芯ACM32F0x0系列如何快速搭建旋鈕溫控器項(xiàng)目,干貨滿滿,開(kāi)源分享,更多資源請(qǐng)?jiān)谖哪┇@取哦!
1. 供暖設(shè)備應(yīng)用概述
北方的供暖主要有兩種方式:集體供暖和分戶供暖,分戶供暖較受用戶歡迎,這種方式用戶可以根據(jù)自己的需求和喜好按需供暖。分戶供暖催生了很多新型供暖設(shè)備,比如電磁壁掛爐、燃?xì)獗趻鞝t、空氣能熱泵等。
這些供暖設(shè)備搭載控制器,通過(guò)旋鈕溫控器可實(shí)現(xiàn)精準(zhǔn)智能溫度控制,控制器負(fù)責(zé)接收旋鈕溫控器的RF信號(hào)來(lái)控制供暖設(shè)備的開(kāi)啟和關(guān)閉加熱,而旋鈕溫控器放置在用戶房間里,可實(shí)時(shí)檢測(cè)房間溫度變化,發(fā)送RF信號(hào)實(shí)時(shí)調(diào)節(jié)溫度,使房間溫度始終保持在用戶設(shè)定的舒適溫度范圍內(nèi)。
2. 技術(shù)規(guī)格
? 溫度控制范圍:-10℃~45℃
? 溫度顯示范圍:5℃~35℃
? 工作溫度:-20℃~55℃
? 供電方式:1.5V * 2,2節(jié)五號(hào)電池
? 待機(jī)功耗:12uA
? 遙控距離:室內(nèi)≥30m
3. 功能特點(diǎn)
? 可通過(guò)旋鈕調(diào)節(jié)設(shè)定溫度
? 實(shí)時(shí)顯示當(dāng)前環(huán)境溫度和當(dāng)前加熱狀態(tài)
? ℃/℉溫標(biāo)切換
? 0.5℃/1℃溫度差值切換
? 高、低溫報(bào)警,顯示屏溫度閃爍
? 低電量報(bào)警,顯示屏顯示低電量圖標(biāo)
4. 方案介紹
旋鈕溫控器分為遙控器和接收器,遙控器放在用戶房間,實(shí)時(shí)采集室內(nèi)溫度,顯示溫度并實(shí)時(shí)調(diào)節(jié);接收器則放在加熱裝置旁邊,用于接收遙控器的RF信號(hào),控制繼電器,從而開(kāi)啟和關(guān)閉加熱。
旋鈕溫控器的遙控器可采用ACM32F030C8T7或ACM32F070CBT7做主控,框圖如下:
? 使用ADC來(lái)實(shí)現(xiàn)對(duì)旋鈕溫度調(diào)節(jié);
? 使用IIC接口,讀取溫濕度傳感器SHT30模塊的溫濕度;
? 使用芯片的LVD模塊進(jìn)行電池低電檢測(cè);
? 使用芯片自帶的LCD驅(qū)動(dòng)來(lái)驅(qū)動(dòng)斷碼LCD屏,顯示設(shè)置溫度、實(shí)時(shí)溫度、加熱狀態(tài)等;
? 使用SPI接口和RF 433模塊通信,發(fā)送RF信號(hào)控制加熱器的開(kāi)關(guān);
? 通過(guò)TouchKey來(lái)喚醒產(chǎn)品,并實(shí)現(xiàn)℃/℉溫標(biāo)切換、0.5℃/1℃溫度差值切換,加/減設(shè)定溫度;
? 為了實(shí)現(xiàn)產(chǎn)品的低功耗,需要在低功耗下顯示LCD,所以采用stop低功耗模式,RTC定時(shí)喚醒和TouchKey喚醒。
旋鈕溫控器的接收器采用ACM32F030K8T7或ACM32F070KBT7做主控,可以通過(guò)三檔撥動(dòng)開(kāi)關(guān)來(lái)選擇常開(kāi)、常關(guān)、自動(dòng)三種工作模式,在自動(dòng)模式下根據(jù)接收遙控器發(fā)來(lái)的RF信號(hào)進(jìn)行控制繼電器的開(kāi)啟和關(guān)閉,方案框圖如下:
5. 軟件設(shè)計(jì)
01. ADC采集
正常待機(jī)下不對(duì)旋鈕進(jìn)行AD采樣,只有當(dāng)被TouchKey喚醒后定時(shí)采樣。
以下是部分代碼:
02. 讀取溫濕度傳感器SHT30
溫濕度傳感器采樣IIC接口,定時(shí)一分鐘采集一次傳感器的溫濕度數(shù)據(jù),部分代碼如下:
03. 電池低電檢測(cè)
采用芯片自帶的LVD模塊檢測(cè)電池電量,低于設(shè)定的閾值2.51V就閃爍低電圖標(biāo)報(bào)警提示,以下是部分代碼:
04. LCD顯示
使用4*24 LCD顯示,在喚醒狀態(tài)每隔200ms刷新一次LCD顯示內(nèi)容,以下是部分代碼:
05. RF 433模塊
RF模塊采用RFM300H,SPI通訊,為了方便處理RF數(shù)據(jù),采用狀態(tài)機(jī)來(lái)處理RF模塊的配置,數(shù)據(jù)發(fā)送等,以下是部分代碼:
06. TouchKey檢測(cè)
通過(guò)TouchKey可喚醒產(chǎn)品,切換溫標(biāo)、溫度差值、顯示設(shè)定溫度等,部分初始化代碼如下:
07. 低功耗處理
為了實(shí)現(xiàn)低功耗,采用stop模式,進(jìn)入休眠前先判斷休眠標(biāo)志位是否允許進(jìn)入休眠,再關(guān)閉定時(shí)器、SPI、IIC等外設(shè),設(shè)置IO口狀態(tài),配置RTC定時(shí)1min喚醒、TouchKey喚醒,以下是部分代碼:
08. 遙控器程序整體流程圖
09. 接收器程序整體流程圖
06 資源分享
旋鈕溫控器方案軟硬件資源:
https://gitee.com/acm32-mcu/acm32f0_temperature_control