你的位置:首頁 > 電源管理 > 正文

MCU打造智能恒溫器,輕松拿下功耗/通訊/人機(jī)介面

發(fā)布時間:2016-01-28 責(zé)任編輯:susan

【導(dǎo)讀】恒溫器在在物聯(lián)網(wǎng)的驅(qū)動下,已經(jīng)逐漸走向智能化和聯(lián)網(wǎng)方向。尤其是微控制器(MCU)開發(fā)商推出的新方案,兼?zhèn)涞凸?,段式LCD顯示控制與Wi-Fi/藍(lán)牙/ZigBee無線連結(jié)支援能力,以及256位元AES先進(jìn)加密功能,對智慧型恒溫器的發(fā)展做出創(chuàng)舉。

目前,市場上涌現(xiàn)出越來越多的物聯(lián)網(wǎng)(IoT)恒溫器產(chǎn)品。本文闡述如何使用微控制器(MCU)打造IoT恒溫器,并以愛特梅爾(Atmel)SMARTSAML22MCU為例,同時也介紹此MCU作為段式液晶顯示器(LCD)控制器平臺實(shí)現(xiàn)恒溫器應(yīng)用的功能。該MCU內(nèi)置一個主頻32MHz的ARMCortex-M0+處理器,拓展該公司現(xiàn)有的低功耗MCU系列。它專為本文描述的恒溫器等人機(jī)介面(HMI)應(yīng)用而設(shè)計(jì),內(nèi)置一個支持上至三百二十段的段式顯示控制器、一個用于實(shí)現(xiàn)按鍵、滑塊和滾輪的外接周邊設(shè)備觸摸控制器(PTC)以及USB、Timer、SERCOM等可配置為USART、SPI和I2C介面的其他眾多外接的周邊設(shè)備。低功耗/通訊/安全性IoT恒溫器必備功能

IoT應(yīng)用強(qiáng)調(diào)萬物聯(lián)網(wǎng),因此IoT恒溫器也須具備聯(lián)網(wǎng)通訊功能,此外為因應(yīng)設(shè)備功能與資料傳輸增多,其亦須符合低功耗、安全性和簡易使用的人機(jī)介面等特性。

低功耗

與其他很多IoT應(yīng)用一樣,功耗是IoT恒溫器的重要考慮因素。IoT應(yīng)用通常是電池供電型,或者用戶希望它們比之前型號在提供更多功能的同時,減少電量消耗。SAML22MCU專為低功耗應(yīng)用而設(shè)計(jì)。使用快閃記憶體進(jìn)行EEMBCCoremark測試時,其工作模式下的功耗低于39μA/MHz,待機(jī)模式下的功耗僅為1.87μA(RTC處于工作狀態(tài)時)。此MCU之所以能實(shí)現(xiàn)上述低功耗,憑藉的是其獨(dú)特設(shè)計(jì)和眾多特性。例如功率級特性讓其能為具體任務(wù)選擇正確的性能??刂破髂軐?nèi)核電壓從1.2伏特(V)迅速切換到0.9V。降低內(nèi)核電壓可大幅降低總功耗,因?yàn)橹醒胩幚砥?CPU)的功耗隨著頻率和電壓的升高而增加。當(dāng)內(nèi)核電壓為0.9V時,CPU的最大頻率為12MHz;而當(dāng)內(nèi)核電壓為1.2V時,CPU的最大頻率為32MHz。例如當(dāng)內(nèi)核電壓為0.9V,頻率為12MHz時,該MCU計(jì)算一次斐波那契數(shù)列須消耗28μA/MHz;當(dāng)內(nèi)核電壓為1.2V,頻率為32MHz時,同樣計(jì)算卻須消耗37μA/MHz。

除了一個低壓差穩(wěn)壓器(LDO)之外,該款MCU還內(nèi)置一個降壓轉(zhuǎn)換器。此前的功耗是采用降壓轉(zhuǎn)換器和3.3V電壓測量。在此電壓下,降壓轉(zhuǎn)換器的工作效率最高。這比LDO的效率高出很多,能實(shí)現(xiàn)低功耗。

此MCU的另一個優(yōu)勢是直接記憶體存取(DMA)和事件系統(tǒng)(EventSystem),它們能在無需CPU參與的情況下,實(shí)現(xiàn)資料通訊和控制外接的周邊設(shè)備。各個外接的周邊設(shè)備在獨(dú)立執(zhí)行任務(wù)或相互控制時,Cortex-M0+處理器可進(jìn)入睡眠狀態(tài)。

這款MCU的模擬功能也是專為此類低功耗應(yīng)用而設(shè)計(jì)的。12位1MSPS類比數(shù)位轉(zhuǎn)換器(ADC)可在10Ksps和單端模式下測量溫度感測器,僅需60μA用于模數(shù)轉(zhuǎn)換。

通訊

其次,IoT應(yīng)用須通過射頻(RF)與互聯(lián)網(wǎng)、智慧手機(jī)、感測器、致動器或其他IoT設(shè)備通訊。此MCU提供多個輸入/輸出(I/O)介面,用于連接各種RF模組和其他外接的周邊設(shè)備。它最多可配備六個片上SERCOM外接的周邊設(shè)備,足夠用于將更多元件連接至恒溫器。每個SERCOM外接的周邊設(shè)備可被配置為USART、UART、SPI或I2C。AtmelSmartConnectWINC3400Wi-Fi/藍(lán)牙組合解決方案或面向ZigBee設(shè)備的SAMR21都可以通過I2C或SPI連接該款MCU。內(nèi)置USB可用于實(shí)現(xiàn)其他有線通訊。該USB是一個無石英的全速USB設(shè)備,這意味著無需精準(zhǔn)的外部振蕩器,從而降低應(yīng)用的物料成本(BOM)。

安全性

所有IoT應(yīng)用都必須有重要元件:安全性。為了實(shí)現(xiàn)安全的通訊,該款MCU配有一個256位元的先進(jìn)加密標(biāo)準(zhǔn)(AES)外接的周邊設(shè)備。它可以在不增加軟體開支的情況下進(jìn)行加密和解密。此外,它還支援多種模式,如密碼段連結(jié)模式(CipherBlockChaining)、伽羅瓦計(jì)數(shù)器模式(GaloisCounterMode)等等。

AES外接的周邊設(shè)備內(nèi)置抗差分功耗分析攻擊(DifferentialPowerAnalysisAttacks)措施。通過差分功耗分析,攻擊者能得知控制器的功耗,并利用這些資料探測出加解密金鑰。

通過采用這種方法,AES外接的周邊設(shè)備能隨機(jī)增加加解密運(yùn)算的周期,加大攻擊者探測出金鑰的難度。此MCU還內(nèi)置一個真亂數(shù)產(chǎn)生器(TRNG)外接的周邊設(shè)備,它能生成真亂數(shù)的所有八十四個周期。這個數(shù)對于加密至關(guān)重要,因?yàn)檎鎭y數(shù)不能被預(yù)測,因此也不能通過數(shù)學(xué)方法被計(jì)算出來。亂數(shù)可用于通過IP網(wǎng)路進(jìn)行身份驗(yàn)證。

加密金鑰可保存在備份區(qū)暫存器、快閃記憶體或靜態(tài)隨機(jī)存取記憶體(SRAM)中。為了提高安全性,此MCU內(nèi)置一個防篡改單元,它能檢測出是否有人試圖打開恒溫器。防篡改引腳與恒溫器的外殼相連。當(dāng)攻擊者通過機(jī)械方式打開恒溫器的外殼時,防篡改線將斷裂,從而檢測到篡改攻擊。

在這種情況下,防篡改單元將發(fā)起“事件”,內(nèi)核則執(zhí)行相應(yīng)的軟體功能,刪除SRAM、串列電子抹除式可復(fù)寫唯讀記憶體(EEPROM)、快閃記憶體或其他外部記憶體中的加密金鑰或其他資料。

為進(jìn)一步增強(qiáng)安全性,該MCU還內(nèi)置活動層防護(hù)(ActiveLayerProtection)功能。

訊號通過印刷電路板(PCB)/外殼發(fā)送到防篡改輸入埠。程式將對該輸入訊號與輸出訊號進(jìn)行對比,如果不匹配,則檢測到篡改。如果攻擊者在PCB上鉆孔,并剪斷PCB上的防篡改線,該功能也將檢測到篡改,并發(fā)起“事件”。

人機(jī)介面

同樣重要的是,IoT應(yīng)用需有人機(jī)介面(HMI)或使用者介面。該IoT恒溫器功能由最終用戶通過智慧手機(jī)控制。但它須提供一個手動更改和監(jiān)測溫度的選項(xiàng),因?yàn)橹腔凼謾C(jī)有可能發(fā)生故障或者丟失。

在這種情況下,內(nèi)置的段式LCD顯示器可向使用者顯示溫度和其他資訊。段式LCD控制器最多可控制三百二十個段,而且能從五十二個LCDI/O引腳中選擇四十八個LCD引腳。設(shè)計(jì)人員還可選擇未使用的LCD引腳,用于實(shí)現(xiàn)SERCOM等協(xié)助工具或模擬功能。

此外,SLCD控制器還支持各種用于降低功耗的功能。例如可通過DMA將資料從SRAM/快閃記憶體發(fā)送到顯示器緩沖區(qū)。

硬體特征映射、自動位元映射(ABM)和閃爍(Blinking)功能能以極低的功耗改變段式LCD上顯示的內(nèi)容。這種改變無需大功率內(nèi)核。很多恒溫器在它們的顯示器上顯示當(dāng)前時間。閃爍功能用于顯示秒,同時也是段式LCD控制器的一個硬體功能。

除了能通過無線區(qū)域網(wǎng)路(WLAN)或藍(lán)牙遠(yuǎn)端更改設(shè)置或溫度之外,使用者還能在恒溫器上執(zhí)行這些任務(wù)。此MCU支援AtmelQTouch技術(shù),其中包括采用互電容觸控技術(shù)和自電容觸控技術(shù)的按鍵、滑塊和滾輪。該款MCU可為此類應(yīng)用提供足夠多的觸控通道。借助Atmel技術(shù),觸控按鍵直接整合到段式LCD的銦錫氧化物(ITO)層上。觸控輸入可用于升降溫度,或選擇其他房間中的加熱器或感測器。

智慧/觸控控制恒溫器更聰明

該款恒溫器藉由RF監(jiān)測不同房間中的無線溫度感測器,并控制其中的加熱器。使用者可通過WLAN或低功耗藍(lán)牙協(xié)議、家用網(wǎng)路或互聯(lián)網(wǎng),并使用智慧手機(jī)對其進(jìn)行控制,或直接使用觸控按鍵進(jìn)行控制。

此MCU內(nèi)置的ADC能測量恒溫器周圍的溫度,其對來自溫度感測器的外部數(shù)值進(jìn)行數(shù)位化處理。內(nèi)部溫度感測器可用于控制外部數(shù)值,以便進(jìn)行交叉核對。而MCU的內(nèi)部溫度感測器提供兩點(diǎn)測量功能,精度為±1℃(0∼60℃)。

另一條ADC通道也可用于測量電池電壓。欠壓檢測(BOD)功能可檢測出較低的電壓,并自動關(guān)閉系統(tǒng),以防出現(xiàn)故障。

相關(guān)閱讀:

芯片級尺寸的MCU如何適應(yīng)可穿戴設(shè)計(jì)中的尺寸限制?
如何快速掌握一款新的MCU?
網(wǎng)友熱議話題:MCU同步boost電路移動電源方案

要采購溫度感測器么,點(diǎn)這里了解一下價格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉