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