


摘 要:隨著經(jīng)濟(jì)的快速發(fā)展,人們忙于工作和學(xué)習(xí)而經(jīng)常忘記喝水或喝不到溫度適宜的水,文章設(shè)計(jì)的智能杯墊將解決這一問(wèn)題,本設(shè)計(jì)采用Atmega328作為核心控制芯片,通過(guò)陶瓷加熱片對(duì)杯底進(jìn)行加熱,通過(guò)LM35溫度傳感器采集水杯溫度,內(nèi)置重量采集模塊,通過(guò)一塊彩屏顯示時(shí)間、溫度和飲水量,還能通過(guò)PID算法進(jìn)行智能控溫。目前在市場(chǎng)上杯墊并沒(méi)有出現(xiàn)加熱和水量測(cè)量相結(jié)合的智能杯墊。
關(guān)鍵詞:Atmega328;杯墊;PID
引言
水是生命必須的元素之一,人體每天需要補(bǔ)充2升左右的水,每天補(bǔ)充足夠的水分是維持生命體新陳代謝的重要一環(huán)。喝水的溫度也直接影響了胃腸的健康,晨起喝水,水溫與室溫相同對(duì)腸胃最佳,天冷時(shí)喝溫開(kāi)水,可以減少對(duì)胃腸的刺激。但是目前很多上班族或白領(lǐng),每天的飲水量不足,喝水時(shí)的水溫也不適宜腸胃,長(zhǎng)此以往,對(duì)身體健康影響很大,造成一些身體疾病。
在目前市場(chǎng)上,普遍的智能杯墊監(jiān)控飲水量的功能,只能監(jiān)測(cè)用戶的飲水量,但無(wú)法保證飲水時(shí)的水溫。本設(shè)計(jì)在智能杯墊的基礎(chǔ)上增加了加熱功能,很好地解決了飲水時(shí)水溫不適宜的問(wèn)題,同時(shí)也讓用戶養(yǎng)成將水杯放回杯墊的習(xí)慣,以監(jiān)測(cè)用戶飲水量。
1 硬件電路設(shè)計(jì)
1.1 系統(tǒng)硬件總體結(jié)構(gòu)
本設(shè)計(jì)的硬件部分按功能可以分為單片機(jī)主控模塊、按鍵輸入、時(shí)鐘模塊、顯示模塊、報(bào)警模塊、溫度采集、溫度控制、稱重模塊等幾個(gè)部分。硬件總體結(jié)構(gòu)框圖如圖1所示,智能杯墊以單片機(jī)為控制核心,并輔助以各種功能模塊,其中,溫度由LM35溫度傳感器采集,采集到的溫度會(huì)通過(guò)液晶屏顯示出來(lái)。用戶飲水量監(jiān)測(cè)由兩個(gè)全橋稱重傳感器進(jìn)行檢測(cè),該傳感器將重量信號(hào)轉(zhuǎn)成微弱的電壓信號(hào),再通過(guò)24位的A/D轉(zhuǎn)換器HX711轉(zhuǎn)換成數(shù)字信號(hào),控制器會(huì)對(duì)該數(shù)字信號(hào)進(jìn)行濾波,并計(jì)算出水的體積,最終將飲水量情況通過(guò)控制面板上的液晶顯示器顯示出來(lái)。整個(gè)系統(tǒng)還包括DS3231時(shí)鐘芯片、按鍵和報(bào)警電路,用于監(jiān)控每段時(shí)間的飲水量情況進(jìn)而提醒用戶。
1.2 溫度傳感器
溫度傳感器的種類比較繁雜,目前,常見(jiàn)高精度溫度傳感器有LM35和DS18B20。LM35系列是精密集成電路溫度傳感器,其輸出的電壓線性地與攝氏溫度成正比。靈敏度為10.0mV/℃,精度在0.4℃至0.8℃(-55℃至+150℃溫度范圍內(nèi)),重復(fù)性好,低輸出阻抗,線性輸出和內(nèi)部精密校準(zhǔn)使其與讀出或控制電路接口簡(jiǎn)單和方便,可單電源和正負(fù)電源工作。而DS18B20具有微型化,低功耗,高性能,抗干擾能力強(qiáng),易配微處理器等優(yōu)點(diǎn),可直接將溫度轉(zhuǎn)化成數(shù)字信號(hào)處理器處理。測(cè)量的溫度范圍是-55~125℃,測(cè)溫誤差0.5℃。考慮到DS18B20溫度轉(zhuǎn)換時(shí)間過(guò)長(zhǎng),影響對(duì)陶瓷加熱片升溫調(diào)整,最終我們采用LM35作為溫度傳感器。
1.3 稱重模塊
本設(shè)計(jì)考慮到稱重的精確度,采用了HX711數(shù)模轉(zhuǎn)換芯片,這是一款專為高精度24位A/D轉(zhuǎn)換器芯片,與同類型其它芯片相比,該芯片集成了包括穩(wěn)壓電源、片內(nèi)時(shí)鐘振蕩器等其它同類型芯片所需要的外圍電路,具有集成度高、響應(yīng)速度快、抗干擾性強(qiáng)等優(yōu)點(diǎn)。HX711配合壓電片和形變傳感器實(shí)現(xiàn)了水杯重量的采集。硬件電路連接如圖2所示。
1.4 時(shí)鐘模塊
本設(shè)計(jì)采用了DS3231作為時(shí)鐘芯片,DS3231是低成本、高精度I2C實(shí)時(shí)時(shí)鐘(RTC)。該器件連接了一顆紐扣電池,即使杯墊斷開(kāi)主電源,仍可保持長(zhǎng)時(shí)間的精確計(jì)時(shí)。DS3231中集成的晶振能提供高精度的脈沖,保障時(shí)間的精確性。
時(shí)鐘芯片能保存秒、分、時(shí)、星期、日期、月和年信息。少于31天的月份,將自動(dòng)調(diào)整月末的日期,包括了對(duì)閏年的修正。時(shí)鐘的工作格式可以由用戶選擇24小時(shí)或帶AM/PM指示的12小時(shí)格式,芯片通過(guò)I2C與單片機(jī)通信。
2 軟件功能設(shè)計(jì)
2.1 主程序模塊
杯墊上電后首先會(huì)對(duì)系統(tǒng)進(jìn)行初始化,然后循環(huán)運(yùn)行彩屏顯示、按鍵掃描、時(shí)鐘讀取、重量采集、計(jì)算用戶飲水量、飲水提醒和重置看門狗定時(shí)器等功能。本系統(tǒng)擁有一個(gè)簡(jiǎn)單的用戶界面,便于用戶對(duì)產(chǎn)品進(jìn)行操作。該界面功能包括時(shí)鐘顯示、菜單選擇和操作、加熱溫度設(shè)置、飲水情況查看、設(shè)置提醒等等。
2.2 PID溫度控制
由于陶瓷加熱的穩(wěn)定性較差,溫度曲線不夠平滑,在整個(gè)加熱過(guò)程中,受到外界各種不確定干擾的因素較多,因此必須對(duì)水溫的變化趨勢(shì)作出預(yù)測(cè),并且根據(jù)需要及時(shí)反方向抑制,以防止出現(xiàn)較大的超調(diào)量的波動(dòng)。
在PID控制中,積分環(huán)節(jié)(I)具有很強(qiáng)的滯后效應(yīng),而微分環(huán)節(jié)(D)具有預(yù)見(jiàn)性,所以該方案最終采用PD算法,能夠很好的控制超調(diào),并且穩(wěn)態(tài)誤差也很小。本套系統(tǒng)將LM35溫度傳感器采集鋁板的溫度作為當(dāng)前輸入,與設(shè)定值比較進(jìn)而得到偏差值,然后運(yùn)用PID運(yùn)算公式編寫出軟件算法后,得到fout的值決定是否加熱,加熱時(shí)間是多少,進(jìn)而控制陶瓷加熱片。
2.3 數(shù)字濾波
在單片機(jī)進(jìn)行數(shù)據(jù)采集時(shí),會(huì)遇到數(shù)據(jù)的隨機(jī)誤差,隨機(jī)誤差是由隨機(jī)干擾引起的,其特點(diǎn)是,在相同條件下測(cè)量同一量時(shí),其大小和符號(hào)會(huì)現(xiàn)無(wú)規(guī)則的變化而無(wú)法預(yù)測(cè),但多次測(cè)量的結(jié)果符合統(tǒng)計(jì)規(guī)律。為克服隨機(jī)干擾引起的誤差,需要進(jìn)行濾波。本系統(tǒng)主要存在誤差在按鍵和AD采集方面。
為了解決按鍵方面的機(jī)械誤差,我們使用定時(shí)器中斷多次掃描判斷按鍵狀態(tài),進(jìn)而確定按鍵是否按下,以防止按鍵誤按。在AD采集方面,我們采用算術(shù)平均濾波算法來(lái)去除隨機(jī)誤差,該算法對(duì)信號(hào)進(jìn)行N次采集后,算出N次采集的總和,并減去N次采集中最大值和最小值,最后求出平均AD采集值作為最終采集信號(hào),以減少誤差干擾。
2.4 水量監(jiān)測(cè)
用戶飲水的監(jiān)測(cè)是計(jì)算水杯的重量變化得到的,由于水的密度是相對(duì)不變的,因此,通過(guò)計(jì)算水杯重量的變化,就可以計(jì)算出用戶飲水的體積。通過(guò)采用校準(zhǔn)后的重量與設(shè)定重量的比較,來(lái)判斷用戶是否處于在喝水狀態(tài),從而計(jì)算出本次用戶的飲水量。另外,由于壓力傳感器形變恢復(fù)較為緩慢,因此,我們最終采用多次滯回比較算法得出用戶飲水量。滯回比較既能解決壓力傳感器形變恢復(fù)時(shí)間影響,又能過(guò)濾去一些采集誤差和減少一些不確定因素進(jìn)而對(duì)飲水量數(shù)據(jù)干擾。
3 結(jié)束語(yǔ)
本設(shè)計(jì)實(shí)現(xiàn)了水溫控制和水量監(jiān)測(cè)功能的結(jié)合,很好地解決了上班族飲水不足和飲水溫度不適的問(wèn)題。
參考文獻(xiàn)
[1]胡壽松.自動(dòng)控制原理(第五版)[M].北京:科學(xué)出版社,2007.
[2]李英順,倫淑嫻.模糊PID溫度測(cè)控儀[J].儀表技術(shù)與傳感器,2003,01.
[3]葉金晶,周健,等.基于Arduino的PM2.5和溫濕度實(shí)時(shí)檢測(cè)器設(shè)計(jì)[J].傳感器與微系統(tǒng),2016,08.