<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > 智能電飯煲數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)*

          智能電飯煲數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)*

          作者:梁?jiǎn)⑽?,龍世瑜,李葉龍,等 時(shí)間:2020-06-29 來源:電子產(chǎn)品世界 收藏

            梁?jiǎn)⑽?sup>1,龍世瑜1,李葉龍2,譚淼泉1,葉津宏1(1.嶺南師范學(xué)院 信息工程學(xué)院,廣東 湛江 524048;2.嶺南師范學(xué)院 機(jī)電工程學(xué)院,廣東 湛江 524048)

          本文引用地址:http://www.ex-cimer.com/article/202006/414833.htm

            摘 要:分析了智能電飯煲煮飯溫度曲線的特點(diǎn),提出一種智能電飯煲數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)方案,此方案通過對(duì)電飯煲的鍋頂溫度、鍋底溫度和控制發(fā)熱盤加熱的繼電器占空比進(jìn)行數(shù)據(jù)采集,將電飯煲加熱過程曲線通過LabVIEW圖形編程軟件進(jìn)行顯示、存儲(chǔ)及回放。

            通過實(shí)驗(yàn)測(cè)試表明:該數(shù)據(jù)采集系統(tǒng)可以將電飯煲煮飯曲線及參數(shù)清晰地顯示在界面上,方便開發(fā)人員分析電飯煲煮飯溫度與加熱控制之間的關(guān)系,開發(fā)多種加熱模式,調(diào)整不同米種的加熱曲線。

            關(guān)鍵詞:;;;

            0 引言

            目前,雖然在國(guó)內(nèi)市場(chǎng)上銷售的智能電飯煲功能齊全,但不同的大米品種和海拔高度,其對(duì)應(yīng)的煮飯曲線卻是唯一的。由于大米種類不同、其吸水、海拔高度等特性也各異,使用同一個(gè)功率進(jìn)行加熱,煮出的米飯可能會(huì)出現(xiàn)夾生或口感不好等問題[1]。高端的電飯煲應(yīng)能根據(jù)不同的大米品種、軟硬口感對(duì)應(yīng)不同蒸煮曲線,各種蒸煮曲線排列組合可達(dá)數(shù)千種,各種參數(shù)數(shù)據(jù)是海量的。如何根據(jù)不同的大米選用不同的加熱曲線,保證烹飪效果,已成為行業(yè)技術(shù)研究的制高點(diǎn)。因此,面向新型產(chǎn)品研發(fā)、技術(shù)創(chuàng)新及產(chǎn)業(yè)升級(jí)的迫切需求,開發(fā)一種智能電飯煲數(shù)據(jù)采集系統(tǒng),可以提升電飯鍋行業(yè)的產(chǎn)品研發(fā)和測(cè)試水平,使企業(yè)借助系統(tǒng)研究和開發(fā)新型電飯鍋,加快研發(fā)速度、推進(jìn)高端技術(shù)研發(fā),提升產(chǎn)品技術(shù)含量和質(zhì)量,助力電飯煲產(chǎn)業(yè)的轉(zhuǎn)型升級(jí)有重要意義[2]。

            1 智能電飯煲最佳的煮飯曲線

            大米、水量和溫度是電飯煲煮出口感好、香噴美味米飯的決定性因素,而溫度控制則是煮出高質(zhì)量米飯的關(guān)鍵因素。經(jīng)煮飯專家大量的實(shí)驗(yàn)證明,要做出“香甜好米飯”, 智能電飯煲煮飯的過程必須要由:預(yù)熱、吸水、加熱、沸騰、燜飯及保溫幾個(gè)階段來實(shí)現(xiàn),最佳的加熱曲線如圖1所示[3]。

          1594189553703129.jpg

            1)預(yù)熱(吸水)階段:用小火加熱,讓溫度升高到米不會(huì)糊化的50 ℃左右。此時(shí),大米在中溫中充分吸水,使米的含水率從原來的14%~15%達(dá)到約30%,米粒吸水膨脹,便于在加熱過程中受熱均勻,這一階段大約需要8 min [4]。

            2)加熱階段:用大火加熱,大米持續(xù)吸收水分,米水混合物在較短時(shí)間內(nèi),加熱沸騰。在快速加熱的作用下,鍋內(nèi)的米水進(jìn)行強(qiáng)烈對(duì)流,讓所有大米受熱均勻,避免米飯出現(xiàn)夾生現(xiàn)象,控制加熱到沸騰時(shí)間約為10 min。

            3)沸騰階段:保持鍋內(nèi)水溫在98 ℃以上,讓大米深度吸水,將大米中難以消化的β 淀粉轉(zhuǎn)化為容易消化的α 淀粉。同時(shí),鍋內(nèi)水分進(jìn)一步減少直到鍋底水分蒸干,米飯溫度上升到150 ℃左右,停止加熱,沸騰結(jié)束,這一階段持續(xù)的時(shí)間約為20 min。

            4)燜飯階段:燜飯的目的就是要讓熱量一部分深入到米粒的內(nèi)部,使米飯內(nèi)外受熱均勻,將米飯的精華充分釋放,真正熟透,產(chǎn)生香味,而另一部分水分則蒸發(fā)掉,從而使米飯持續(xù)膨脹而變得形態(tài)飽滿、晶瑩剔透、透芯松軟,這一階段持續(xù)的時(shí)間約為14 min[5]。

            5)保溫階段:溫度高時(shí)米飯會(huì)變質(zhì)、變色、損壞米飯的味道,因此,在保溫過程中,讓米飯的溫度保持在67~78 ℃之間,保證米飯?jiān)谳^長(zhǎng)時(shí)間內(nèi)有較好的質(zhì)量。

            從煮飯的整個(gè)控制過程中可以看出,溫度的控制對(duì)米飯質(zhì)量的影響很大,所以對(duì)電飯煲數(shù)據(jù)的實(shí)時(shí)采集及分析,及時(shí)對(duì)煮飯曲線進(jìn)行溫度調(diào)節(jié),實(shí)現(xiàn)加工過程中最佳加溫曲線的控制,對(duì)提高米飯的烹調(diào)質(zhì)量具有重要的意義。

            2 數(shù)據(jù)采集系統(tǒng)的整體硬件設(shè)計(jì)

            智能電飯煲數(shù)據(jù)采集系統(tǒng)的硬件部分主要包含:電飯煲頂部接口,電飯煲底部接口,電飯煲功率控制繼電器接口,單片機(jī),串口線,PC機(jī)等部分,整體結(jié)構(gòu)框圖如圖2所示。

          1594189575121324.jpg

            在智能電飯煲中,通常在鍋底中心和鍋頂分別設(shè)置2個(gè)溫度傳感器(負(fù)溫度系數(shù)的熱敏電阻)采集信號(hào)。電飯煲頂部溫度傳感器主要負(fù)責(zé)檢測(cè)鍋內(nèi)室溫的溫度,鍋底溫度傳感器主要是檢測(cè)初期水溫和內(nèi)鍋溫度的上升率[6]。而繼電器則是控制整個(gè)電飯煲的加熱功率。因此,利用單片機(jī)STM32的I/O口獲取電飯鍋煮飯過程中采集到:鍋頂溫度、鍋底溫度及繼電器輸出電壓的數(shù)據(jù)(信號(hào)),經(jīng)過數(shù)據(jù)處理和轉(zhuǎn)換后,可通過編程實(shí)現(xiàn)鍋頂溫度曲線、鍋底溫度曲線和繼電器控制曲線的存儲(chǔ)、顯示和回放。

            從電飯煲頂部溫度傳感器、底部溫度傳感器及功率控制繼電器接口采集到的信號(hào)實(shí)際為電壓信號(hào),而不是溫度值。因此,采集到的數(shù)據(jù)須連接至STM32單片機(jī)I/O口的任意3個(gè)模擬輸入通道。經(jīng)過數(shù)據(jù)處理后,再通過串口線將STM32單片機(jī)連接連至PC機(jī)的USB接口,數(shù)據(jù)采集引腳配置如表1所示。

          1594189593662800.jpg

            3 數(shù)據(jù)采集系統(tǒng)的整體軟件設(shè)計(jì)

            在數(shù)據(jù)采集系統(tǒng)的顯示部分,可采用LabVIEW的編程來實(shí)現(xiàn)。LabVIEW程序被稱為“虛擬儀器程序”,大體上可分為3個(gè)模塊:前面板,程序框圖,圖標(biāo)/連接端口。前面板是圖形用戶界面,用戶可以在前面板上操作設(shè)計(jì)好的虛擬儀器。通過設(shè)計(jì)按鈕、開關(guān)、波形圖等圖標(biāo)出現(xiàn)在前面板上,模擬真實(shí)儀器[7]。通過編程實(shí)現(xiàn)數(shù)據(jù)及曲線的存儲(chǔ)、溫度和繼電器占空比波形顯示,程序框圖和流程圖如圖3所示。

          微信截圖_20200708142443.jpg

            3.1 數(shù)據(jù)采集的設(shè)計(jì)

            在LabVIEW中,具有專門用于串口通訊的VI函數(shù)如:VISA配置串口、寫入、關(guān)閉等,其中“VISA配置串口”VI為串口的初始化配置[8]。一方面,它可以檢測(cè)到電腦上的可用“COM”口,用于配置STM32插到電腦上的USB串口;另一方面,它可以設(shè)置好通訊所需的波特率、檢驗(yàn)位、停止位等,保證通訊的質(zhì)量;通過串口的配置,可讀出STM32通過串口傳過來的數(shù)據(jù),并暫存在它的接收緩沖區(qū)內(nèi),所以只要從它的接收緩沖區(qū)中取得數(shù)據(jù),并進(jìn)行類型轉(zhuǎn)換、數(shù)據(jù)分離、保留精度、濾波、限幅等,即可完成數(shù)據(jù)的接收、轉(zhuǎn)換、去干擾等工作。

            由單片機(jī)上傳到LabVIEW的數(shù)據(jù)格式設(shè)置為“AA+繼電器狀態(tài)+BB+頂部電壓+CC+底部電壓”,數(shù)據(jù)由COM口傳至VISA讀取VI的讀取緩存區(qū)中,由于上傳到讀取緩沖區(qū)的數(shù)據(jù)為字符串,因此利用字符串截取函數(shù)把需要的數(shù)據(jù)按索引號(hào)截取,即可分離得到繼電器狀態(tài)、頂部電壓、底部電壓數(shù)據(jù)。同時(shí)對(duì)采集到的電壓數(shù)據(jù)進(jìn)行限幅、平滑濾波處理,濾除上傳電壓數(shù)據(jù)的干擾信號(hào)。

            限幅編程,主要用到了“判定范圍并強(qiáng)制轉(zhuǎn)換”、“選擇”、“反饋節(jié)點(diǎn)”等函數(shù),根據(jù)邏輯性接線,達(dá)到限幅抗干擾的效果。由于自由空間中存在很多干擾,前一個(gè)采集的電壓與后一個(gè)采集的電壓有可能出現(xiàn)差值相差很大的情況,因此需對(duì)此情況進(jìn)行處理應(yīng)對(duì),處理方法為:設(shè)定一個(gè)限幅值,把當(dāng)前采集的電壓數(shù)據(jù)與前一個(gè)采集的電壓數(shù)據(jù)進(jìn)行比較,如果當(dāng)前電壓和前一個(gè)電壓值的差值的絕對(duì)值超過限幅值,則認(rèn)為當(dāng)前采集的電壓值為干擾項(xiàng),將其拋棄,并用前一個(gè)電壓值取代當(dāng)前采集的電壓值。平滑濾波,使用LabVIEW函數(shù)庫里的濾波器VI,用該濾波器對(duì)曲線出現(xiàn)的“毛刺”進(jìn)行濾波,使曲線更平滑。

            3.2 數(shù)據(jù)轉(zhuǎn)換的設(shè)計(jì)

            1)“電壓-溫度”關(guān)系的確定

            LabVIEW中頂部及底部的電壓轉(zhuǎn)換溫度公式,主要是通過MATLAB將多溫測(cè)試儀的實(shí)測(cè)溫度和LabVIEW所讀取的單片機(jī)串口輸入電壓,得出一條關(guān)于溫度與電壓關(guān)系的曲線,并將得到的曲線利用高階多項(xiàng)式進(jìn)行數(shù)據(jù)擬合,從而得到電壓對(duì)應(yīng)溫度的公式[9]。

            電飯鍋頂部的擬合公式為:

            Y 1 = 2 7 . 0 3 7 × Z 1 0 - 4 4 . 0 0 1 × Z 9 -75. 2 ×Z8+124.07×Z7+72.347×Z6-114. 4 ×Z5-29.174×Z4+32.891×Z3-3.0309×Z2-18.98×Z1+84.8;其中,Z=(X1-2.2979)/0.5332

            電飯鍋底部的擬合公式為:

            Y2=0.056166×Z10-0.42914×Z9+0.78139×Z8+1.3868×Z7-5.3837×Z6+1.4129×Z5+9.2972×Z4-7.7619×Z3-1.5072×Z2-14.127×Z1+90.701;其中,Z=(X1-1.4824)/0.4814。

            2)繼電器倍乘公式

            分離出“讀取緩沖區(qū)”數(shù)據(jù)端采集到的繼電器狀態(tài)以及頂部電壓、底部電壓信號(hào),將頂部電壓和底部電壓數(shù)據(jù)輸入至擬合的電壓轉(zhuǎn)溫度公式,得出鍋頂和鍋底溫度信號(hào)。繼電器狀態(tài)信號(hào)無須轉(zhuǎn)換,為了方便觀察和分析繼電器、頂部溫度和底部溫度曲線,使三種曲線在同一界面上,將繼電器的驅(qū)動(dòng)電壓信號(hào)放大60倍[10]。

            3.3 數(shù)據(jù)存儲(chǔ)程序

            用“寫入測(cè)量函數(shù)”將轉(zhuǎn)換后數(shù)據(jù)保存在PC機(jī)內(nèi)的存儲(chǔ)單元中,文件類型定義為lvm格式,用“布爾控件”來控制寫入,采集的數(shù)據(jù)保存在PC機(jī)LVM文件中。

            3.4 信號(hào)顯示程序

            1)實(shí)時(shí)顯示

            將處理好的三種數(shù)據(jù)信號(hào)輸送至VI信號(hào)收集器的輸入端,為了可以看到完整曲線變化過程,信號(hào)收集器的數(shù)據(jù)存儲(chǔ)長(zhǎng)度設(shè)為35 000點(diǎn),此長(zhǎng)度為波形圖橫坐標(biāo)能顯示的最大長(zhǎng)度,將“信號(hào)收集器”VI的輸出端接至波形圖輸入端,程序在while循環(huán)下執(zhí)行,while循環(huán)的條件設(shè)為真,使其能夠一直運(yùn)行,這樣數(shù)據(jù)就可以不斷地輸出到波形圖,實(shí)時(shí)顯示曲線的變化。

            2)波形回顯及占空比的讀取

            通過讀取PC機(jī)中已存儲(chǔ)的數(shù)據(jù)文件,創(chuàng)建顯示控件“加載完畢”,當(dāng)此控件為“真”,表明文件內(nèi)容已讀取完畢,while循環(huán)停止。此時(shí),用“波形圖”控件將曲線在界面中顯示出來。在創(chuàng)建的“加載波形”控件中,當(dāng)“加載波形”為真,內(nèi)嵌在真分支的程序執(zhí)行,為假則不執(zhí)行,以此來控制讀取文件工作。

            繼電器吸合控制電飯煲的平均加熱功率,其驅(qū)動(dòng)波形為矩形波,在采集系統(tǒng)中通過波形的提取、識(shí)別繼電器控制信號(hào)電壓的波峰與波谷,再識(shí)別出橫坐標(biāo),間接實(shí)現(xiàn)波形占空比的讀取。通過波形提取、識(shí)別波峰與波谷分界處的橫坐標(biāo)后,注釋標(biāo)識(shí),讀取占空比,完成占空比讀取。

            3.5 數(shù)據(jù)顯示界面

            數(shù)據(jù)顯示程序的流程圖如圖4所示。

          1594189645734537.jpg

            數(shù)據(jù)顯示界面采取的設(shè)計(jì)方法是:捕捉鼠標(biāo)在曲線上移動(dòng)時(shí)的坐標(biāo)值,用“字符串?dāng)?shù)據(jù)顯示”控件將捕捉到的坐標(biāo)值顯示在數(shù)據(jù)框。程序主要內(nèi)嵌在事件結(jié)構(gòu)的一個(gè)分支:“溫度波形”:鼠標(biāo)移動(dòng),而該事件結(jié)構(gòu)又內(nèi)嵌在一個(gè)while循環(huán)中,while循環(huán)“條件端子”接常量“真”,讓其一直循環(huán),檢測(cè)鼠標(biāo)移動(dòng)的事件,一旦鼠標(biāo)移動(dòng),觸發(fā)鼠標(biāo)移動(dòng)事件,內(nèi)嵌在里面的程序便會(huì)被執(zhí)行[11]。

            4 智能電飯煲溫度采集系統(tǒng)實(shí)驗(yàn)測(cè)試

            4.1 讀取波形回顯數(shù)據(jù)

            系統(tǒng)設(shè)計(jì)完成后,將電飯鍋的頂部熱敏電阻、底部熱敏電阻和繼電器的采集點(diǎn)接到STM單片機(jī)的A/D轉(zhuǎn)換I/O口,通過串口轉(zhuǎn)USB發(fā)送到PC機(jī),利用采集系統(tǒng)將電壓轉(zhuǎn)換為溫度,將采集到的數(shù)據(jù)存儲(chǔ)在PC機(jī)中,選擇“波形回顯”就可見頂部溫度、底部溫度和繼電器控制的曲線,圖5為采數(shù)據(jù)集數(shù)據(jù)的回顯。其中,上為底部溫度曲線,中為頂部溫度曲線,下為繼電器的加熱狀態(tài)曲線。由于圖中采集到的是整個(gè)煮飯過程的曲線,采集時(shí)間約為3 600 s(1 h),因此,在顯示界面中見到的繼電器控制曲線是很密集的,如需要觀測(cè)局部曲線,可利用軟件中的展開功能,將局部曲線展開進(jìn)行觀測(cè)。

          1594189685229751.jpg

            4.2 實(shí)驗(yàn)測(cè)試結(jié)果分析

            從智能電飯煲數(shù)據(jù)采集系統(tǒng)采集到的數(shù)據(jù)與多路溫度測(cè)試儀同時(shí)采集到的數(shù)據(jù)取出部分進(jìn)行對(duì)照。從測(cè)量結(jié)果分析,根據(jù)數(shù)據(jù)采集系統(tǒng)顯示的曲線與及多溫測(cè)試儀顯示的數(shù)據(jù)基本相吻合,而抽取部分關(guān)鍵數(shù)據(jù)進(jìn)行對(duì)比分析,誤差小于5%,可滿足實(shí)際要求。

            5 結(jié)語

            在系統(tǒng)設(shè)計(jì)過程中, 借助于單片機(jī)STM32及LabVIEW虛擬儀器技術(shù),設(shè)計(jì)了智能電飯煲溫度采集系統(tǒng),可靠實(shí)現(xiàn)對(duì)智能電飯煲的頂部溫度曲線、底部溫度曲線及繼電器功率控制的占空比進(jìn)行數(shù)據(jù)采集、顯示及回放,使整個(gè)測(cè)量、處理、分析數(shù)據(jù)的過程變得更加方便,數(shù)據(jù)誤差小于5%,為企業(yè)研究和開發(fā)新型電飯煲提供了便捷的測(cè)量開發(fā)工具。

            參考文獻(xiàn):

            [1] 李磊,2014.HR-FD51智能方煲溫控方案及結(jié)構(gòu)改進(jìn)設(shè)計(jì)研究[D].廣州:廣東海洋大學(xué).

            [2] 孫芳,孔美陽.我國(guó)小家電發(fā)展的現(xiàn)狀與發(fā)展趨勢(shì)研究[J].家電科技,2018(6):28-29.

            [3] 楊文龍,王春梅.IH電磁加熱電飯鍋模糊邏輯智能控制系統(tǒng)設(shè)計(jì)[J].電子設(shè)計(jì)工程,2016(19):135-138.

            [4] 林天柱,倪莉,沙立民.基于xPC_Target的電飯煲模糊推理策略研究[J].工業(yè)控制計(jì)算機(jī),2012,25(4):31-32.

            [5] 張超,2005.智能型寬電壓電磁爐的研制[D].杭州:浙江大學(xué).

            [6] 劉建華,項(xiàng)湜伍.基于DSP芯片的模糊智能電飯煲控制研究[J].上海電機(jī)學(xué)院學(xué)報(bào),2007(2):115-118.

            [7] 鄭麗娟,杜祥嶺.基于LabVIEW的數(shù)據(jù)采集系統(tǒng)[J].科技創(chuàng)業(yè)月刊,2006(7):184-185.

            [8] 劉明文.基于LabVIEW平臺(tái)編寫的串口調(diào)試助手[J].地質(zhì)裝備,2016(2):30-32.

            [9] 宋曉霞.基于MATLAB的通用數(shù)據(jù)擬合方法[J].山西大同大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,30(4):1-3.

            [10] 梁?jiǎn)⑽?龍世瑜,等.電飯鍋數(shù)據(jù)采集平臺(tái)的設(shè)計(jì)[J].電子產(chǎn)品世界,2019(1):37-38.

            [11] 王麗君,林國(guó)順.三維空間物體任意移動(dòng)算法研究[J].信息技術(shù),2015(3):141-145.

           ?。ㄗⅲ罕疚膩碓从诳萍计诳峨娮赢a(chǎn)品世界》2020年第07期第35頁,歡迎您寫論文時(shí)引用,并注明出處。)



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();