陳江萍 鐘浩
摘 要:文章設計了一種基于STM32的多功能智能水杯系統(tǒng),旨在使人們養(yǎng)成良好的飲水習慣。該系統(tǒng)采用單片機控制溫度傳感器和壓力傳感器,實時測量水溫和水量。同時,通過藍牙模塊,用戶可以通過手機App獲得水溫、水量等信息。內(nèi)置在杯子中的鋰電池可以為微控制器和每個模塊提供電力。經(jīng)過調(diào)試,該系統(tǒng)能夠成功地實現(xiàn)上述功能,較好地解決了人們的飲用水問題,具有較高的性價比和應用前景。
關鍵詞:智能水杯;自動提醒;單片機
0 ? ?引言
本文設計了一種基于物聯(lián)網(wǎng)的智能水杯,用戶可以設定時間和水溫。當達到用戶設定的時間或熱水冷卻到用戶設定的水溫時,聲音提醒用戶喝水。本文設計的智能水杯具有內(nèi)置鋰電池和測量電路。鋰電池采用無線充電技術充電,使水杯更小更方便。同時還具有壓力傳感器,可以測量杯中的水量。水杯內(nèi)置藍牙模塊,微控制器通過藍牙模塊向手機App傳輸數(shù)據(jù),使用戶可以更方便地在手機App上查看飲用水記錄。
1 ? 系統(tǒng)設計
在本文所提的系統(tǒng)中,單片機通過溫度傳感器、壓力傳感器和時鐘模塊采集數(shù)據(jù),并在液晶顯示器上顯示水溫、水量和電流時間,此外,它可以通過不同的水溫點亮不同的Led燈,并可以通過按鈕設置水溫和飲水時間,微控制器檢測水溫和時間,并控制語音模塊在達到預定水溫和時間時發(fā)出聲音,它可以控制AD轉(zhuǎn)換器采集電壓并顯示在LCD上,當電池電量不足時,電池通過無線充電技術充電。系統(tǒng)中包含藍牙模塊,微控制器通過藍牙模塊向移動App發(fā)送數(shù)據(jù)[1]。
2 ? 主模塊設計
2.1 主控芯片
STM32F103C8T6集成了一個高性能的ARM cortex-m332位RISC核心,在72 MHz工作,高速嵌入式存儲器,以及各種增強的 I/O和連接到兩個APB總線的外設。該系統(tǒng)采用單片機中的12位ADC和RTC模塊實現(xiàn)電壓的采集和時鐘的顯示。 12位ADC是一個逐次逼近的模擬數(shù)字轉(zhuǎn)換器。它有多達18個多路信道允許它測量來自16個外部和兩個內(nèi)部來源的信號。各通道的A/D轉(zhuǎn)換可以采用單通道、連續(xù)通道、掃描通道或間斷通道進行。ADC的結果存儲在左對齊或右對齊的16位數(shù)據(jù)寄存器中。
2.2 觸摸鍵模塊
觸摸鍵芯片是RH6030。該芯片是一種電容式可觸摸感應開關,可替代傳統(tǒng)的機械式開關。RH6030可以通過外部引腳在多種模式下工作。當觸鍵面積增加到一定程度時,面積的持續(xù)增加幾乎不會影響靈敏度。在觸摸電極和觸摸輸入針之間連接一個電阻器,用于提高觸摸的抗干擾能力。在VDD和GND之間需要一個濾波電容來消除噪聲。電源需要穩(wěn)定。如果電源電壓漂移或快速變化,可能造成靈敏度漂移或檢測誤差。在給系統(tǒng)供電之前,應該將介質(zhì)覆蓋在觸摸電極上,因為芯片在加電時會檢測環(huán)境和初始電容。如果覆蓋層是在芯片初始化后放置的,那么系統(tǒng)可能檢測到電容的突然變化,從而導致判斷錯誤。
2.3 語音模塊
ISD1820提供高質(zhì)量、單芯片、單消息、錄音/回放解決方案,用戶可選擇持續(xù)時間。CMOS器件包括片上振蕩器、麥克風前置放大器、自動增益控制、抗混疊濾波器、多級存儲器陣列、平滑濾波器和揚聲器放大器。最小錄音/回放子系統(tǒng)可以配置一個麥克風、揚聲器、多個被動元件、兩個按鈕和一個電源。這些記錄存儲在芯片上的非揮發(fā)性記憶體存儲單元中,以提供零功率的信息存儲。
2.4 時鐘模塊
選用STM32內(nèi)部RTC時鐘作為時鐘模塊。實時時鐘是一個獨立的計時器。RTC 核心和時鐘配置(RCC _ bdcr寄存器)位于備份域,這意味著RTC設置和時間在重置或從備用模式喚醒后保持不變。重置后,將禁用對備份寄存器和 RTC的訪問,并保護備份域(BKP)免受可能的寄生寫訪問。RTC和備份寄存器由一個開關提供,該開關由VDD電源供電或由VBAT引腳供電。當VDD電源不存在時,備份寄存器(1 016位寄存器)可用于存儲數(shù)據(jù)。實時時鐘提供了一組連續(xù)運行的計數(shù)器,可以與適當?shù)能浖黄鹗褂茫蕴峁r鐘日歷功能,并提供報警中斷和周期性中斷。它由一個外部的32.768 kHz振蕩器、一個內(nèi)部的低功率RC振蕩器或一個除以128的高速外部時鐘來計時。內(nèi)部低功耗RC的典型頻率為 ? ? ?32 kHz。該RTC可以校準使用外部512赫茲輸出,以補償任何自然石英偏見。RTC有一個32位的可編程計數(shù)器,可用于長期測量使用比較寄存器生成警報[2]。
2.5 溫度模組
DS18B20數(shù)碼溫度計提供9至12攝氏度的溫度測量,并設有報警功能,具有非揮發(fā)性用戶可編程上下觸發(fā)點。DS18B20通過1線總線進行通信,根據(jù)定義,該總線只需要一條數(shù)據(jù)線(和地線)與中央微處理器進行通信。它的工作溫度范圍為-55℃至+125 ℃,精確度為± 0.5 ℃,從-10 ℃至+85 ℃。此外,DS18B20可以直接從數(shù)據(jù)線(“寄生電源”)獲得電力,而不需要外部電源。根據(jù)定義,1-Wire總線只有一條數(shù)據(jù)線。每個設備(主設備或從設備)都通過一個開放接口或三態(tài)端口連接到數(shù)據(jù)線。這允許每個設備在不傳輸數(shù)據(jù)時“釋放”數(shù)據(jù)線,因此總線可用于其他設備。DS18B20的單線端口(DQ引腳)是開放式漏極,需要大約5 kω的外部上拉電阻。DS18B20的核心功能是直接數(shù)字式溫度傳感器。用戶可以將溫度傳感器的分辨率設置為9,10,11或12位,相應的增量分別為0.5 ℃,0.25 ℃,0.125 ℃ 和0.0625 ℃。開機時的默認分辨率為12位。DS18B20在低功耗空閑狀態(tài)下啟動;要開始溫度測量和a/d轉(zhuǎn)換,主機必須發(fā)出 Convert [44h]命令。轉(zhuǎn)換后,生成的熱數(shù)據(jù)存儲在暫存器中的2字節(jié)溫度寄存器中,DS18B20返回到空閑狀態(tài)。在 DS18B20執(zhí)行溫度轉(zhuǎn)換后,將溫度值與存儲在1字節(jié)TH和TL寄存器中的用戶定義2的補碼報警觸發(fā)器值進行比較。符號位(s)表示該值是正數(shù)還是負數(shù): 對于正數(shù)s=0,對于負數(shù)s=1。TH和TL寄存器是非易失性的(EEPROM),因此當設備斷電時,它們將保留數(shù)據(jù)。
2.6 電源管理模塊
電池使用電磁感應無線充電技術充電。主要原理是在初級線圈上產(chǎn)生交流電,而次級線圈通過電磁感應產(chǎn)生一定的電流。充電基座和水杯端子分別有內(nèi)置線圈,當兩者接近時,在水杯中的接收線圈中產(chǎn)生一定的電流電磁感應。通電導線周圍產(chǎn)生的磁場方向與電流方向垂直,通常磁場很弱。然而,如果導線纏繞成一個圓圈或螺旋,同一方向的磁場就會疊加,從而形成一個強磁場。利用變化的電場產(chǎn)生變化的磁場,利用變化的磁場產(chǎn)生電場,從而將能量從發(fā)射端轉(zhuǎn)移到接收端,從而產(chǎn)生電流給裝置充電[3]。
3 ? 結語
本文介紹的智能水杯與普通水杯相比,能夠顯示水溫、水量,提醒用戶智能飲水。無線通信技術允許用戶在App上查看飲用水記錄。無線充電技術消除了充電的不便。該系統(tǒng)采用傳感器測量水杯內(nèi)的水溫和水量,誤差不超過±0.5 ℃。當水溫低于30 ℃,30 ℃~60 ℃和高于60 ℃時,分別開啟3種顏色指示燈,誤差不超過± 0.5℃。水溫通過按鍵在液晶顯示器上設定。當熱水冷卻到設定溫度時,聲音提醒用戶飲水,誤差不超過±0.5 ℃。用戶可以通過按鍵設置LCD上的時間。當設定的時間到來時,聲音提醒用戶喝水。電磁感應的無線充電技術被用來給鋰電池充電。當鋰電池電壓達到4.2 V時,斷開電路停止充電,當鋰電池電壓小于3.4 V時,系統(tǒng)提醒用戶對電池充電。藍牙模塊用于無線數(shù)據(jù)傳輸,飲用水記錄可以在移動App上查看。
[參考文獻]
[1]陳蓮芳.關于單片機溫度控制系統(tǒng)方案的探討[J].科技資訊,2019(10):11-12.
[2]王維佳.基于單片機的溫度控制系統(tǒng)設計[J].電子技術與軟件工程,2018(23):244.
[3]高敏.基于單片機的溫度控制系統(tǒng)的研究與實現(xiàn)[J].廣州城市職業(yè)學院學報,2016(4):26-29.
(編輯 何 琳)