基于物聯(lián)網(wǎng)的智能冰箱設計與實現(xiàn)_第1頁
基于物聯(lián)網(wǎng)的智能冰箱設計與實現(xiàn)_第2頁
基于物聯(lián)網(wǎng)的智能冰箱設計與實現(xiàn)_第3頁
基于物聯(lián)網(wǎng)的智能冰箱設計與實現(xiàn)_第4頁
基于物聯(lián)網(wǎng)的智能冰箱設計與實現(xiàn)_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

基于物聯(lián)網(wǎng)的智能冰箱設計與實現(xiàn)引言隨著人民生活水平的飛速發(fā)展,生活節(jié)奏不斷加快,冰箱在家庭中起的作用也越來越大,但整理起來麻煩,同時也經(jīng)常弄不清楚食品是否用完或者遺忘某些食品在冰箱而造成各種生活麻煩。本設計采用射頻識別(RFID,RadioFrequencyIdentification)技術(shù),并結(jié)合互聯(lián)網(wǎng)和信息處理技術(shù),建立智能冰箱食品監(jiān)管系統(tǒng),實現(xiàn)對冰箱內(nèi)的食品記錄。那么冰箱內(nèi)食品可以通過查詢數(shù)據(jù)庫在冰箱的液晶屏上顯示,也可以通過手機發(fā)短信到冰箱查詢家里的食物,并且通過手機購買冰箱食物,滿足未來智能家居的需求。隨著物聯(lián)網(wǎng)的發(fā)展,物聯(lián)網(wǎng)方向智能家居的投入正在迅速擴大,RFID標簽的成品也不斷地降低,將來可能取代條形碼成為食品外包,而且RFID標簽以其耐用、持久、免維護著稱。隨著大多數(shù)人的家庭已達到小康水平的條件,渴望著更為方便、省事得家用電器。而本系統(tǒng)雖然只是雛形,但價格適中,而且采用較為前沿的技術(shù),比傳統(tǒng)的冰箱更為省事,為都市人群忙碌的生活提供了便捷,解決眾多生活瑣碎事情,推向市場將為大部分人所接受。1系統(tǒng)總體方案設計1.1系統(tǒng)總體方案根據(jù)智能冰箱終端的功能與技術(shù)要求情況,決定采用"硬件+軟件"的系統(tǒng)結(jié)構(gòu)來設計智能冰箱終端,應用層在OS的基礎上根據(jù)項目的不同需求來編寫,各部分簡要介紹如下:系統(tǒng)選用基于采用IntelXscalePXA270的硬件開發(fā)平臺,該平臺是以IntelXScale架構(gòu)的ARM處理器。嵌入式操作系統(tǒng)選用WindowsCE5.0.WindowsCE是高度模塊化的嵌入式操作系統(tǒng),用戶可以根據(jù)自己的設備需求通過PlatformBuilder工具進行定制和裁減。應用程序框架:qt-embedded-wince-opensource4.6具有豐富的標準庫,動態(tài)引擎,具有Widget樣式表,強大的圖形布畫和多線程功能;在WindowsCE上實現(xiàn)高性能、占位小等特點。本系統(tǒng)是作為一個家居電器,通過網(wǎng)絡可隨時對食品進行查詢和上網(wǎng),用戶可以通過短信了解到冰箱食品信息,決定是否網(wǎng)上購買。系統(tǒng)總體方案圖1如下。圖1系統(tǒng)框圖1.2系統(tǒng)模塊根據(jù)設計方案,我們將整個系統(tǒng)劃分為三個主要模塊,如圖2所示。

圖2系統(tǒng)模塊圖1.3模塊功能詳細描述(1)食品狀態(tài)模塊。表1(2)網(wǎng)上購物模塊。表2(3)菜譜模塊。表32.硬件設計圖3系統(tǒng)硬件框圖2.1RFID讀寫器、天線模塊ISO18000-6CI系列讀寫器是深圳市先施科技股份有限公司自主開發(fā)的新一代遠距離電子標簽讀寫器,讀寫器所支持的標簽主要是遵從ISO18000-6C(以下簡稱"6C")協(xié)議的無源電子標簽。用戶可以使用本讀寫器對6C電子標簽進行讀、寫、鎖定等功能操作。該讀寫器有主從、定時和觸發(fā)三種讀電子標簽的工作方式,連接主機和控制器的通信接口有RS-232、RS-485和Wiegand接口??梢灾苯优c具有標準韋根W26或W34接口的控制設備連接,也可以通過標準通信接口與控制器或PC相連,進行數(shù)據(jù)通信與交換;另外還有四路觸發(fā)信號輸入接口。當壓力傳感器檢測冰箱內(nèi)壓力發(fā)生變化時,觸發(fā)相應的函數(shù)使讀寫器掃描冰箱內(nèi)的食品標簽。同時,該模塊提供一次讀寫多個標簽,適合本項目設計。2.2GPRS/GSM模塊該模塊采用鴻鵬電子有限公司DU600,它支持多種連接模式,可以實現(xiàn)手機通信的基本功能。智能冰箱的GPRS模塊只需要短信收發(fā)并且解譯收到的短信信息,只需要DU600選擇喚醒模式等待接收短信并且可以通過解譯短信后得到的指令發(fā)送控制指令到PXA270實現(xiàn)購買功能和查詢功能。2.3壓力傳感器模塊通過89C51單片機,集成了LCD模塊、串口模塊、24位ADC模塊。該模塊主要負責感應壓力的變化,通過串口傳送中斷信號到中控平臺。壓力傳感器HX711采用了海芯科技集成電路專利技術(shù),是一款專為高精度電子秤而設計的24位A/D轉(zhuǎn)換器芯片。當壓力傳感器傳來變化時候才會發(fā)送信號到核心板說明冰箱內(nèi)有變化并開啟RFID掃描。2.4控溫模塊本模塊是基于單片機的制冷控制系統(tǒng),實時溫度顯示,制冷溫度可調(diào),最低可達零下10度。本模塊的溫度傳感器采用DS18B20.根據(jù)DS18B20的通信協(xié)議,主機(單片機)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過三個步驟:每一次讀寫之前都要對DS18B20進行復位操作,復位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對DS18B20進行預定的操作。復位要求主CPU將數(shù)據(jù)線下拉500微秒,然后釋放,當DS18B20收到信號后等待16~60微秒左右,后發(fā)出60~240微秒的存在低脈沖,主CPU收到此信號表示復位成功。同時,本模塊采用了半導體制冷片,實現(xiàn)模擬冰箱保鮮功能。

圖5控溫模塊局部原理圖3軟件設計3.1系統(tǒng)軟件框圖基于WindowsCE5.0的智能冰箱的軟件框圖如圖6所示。

圖6軟件框圖3.2應用程序開發(fā)(1)RFID實現(xiàn)過程。運用RFID的API函數(shù)中ReadID讀取在冰箱內(nèi)的RFID卡,連續(xù)多次讀取RFID卡。讀取期間運用防碰撞算法將讀取到的相同的RFID卡信息排除,然后將得到的RFID卡信息保存在數(shù)據(jù)結(jié)構(gòu)內(nèi),以便以后用數(shù)據(jù)結(jié)構(gòu)跟數(shù)據(jù)庫資料核對。完成讀取后,斷開RFID連接并且開始跟數(shù)據(jù)庫對比資料。這里我們采用了目前廣泛的二進制樹防碰撞算法。讀寫器與應答器之間進行數(shù)據(jù)交換時,往往要傳輸序列號的部分或者全部位,此時的傳輸順序定義為:先發(fā)送低位,再發(fā)送高位。在讀寫器或者應答器內(nèi)部,對數(shù)據(jù)進行比較時,遵循這樣的原則,即按位依次比較,先比較低位,再比較高位,約定0<1,根據(jù)這個比較順序,在判斷大小時,低位數(shù)據(jù)優(yōu)先,即兩數(shù)A,B相比較,從低位開始的第一個不相等位的大小決定了兩數(shù)的大小,只有當兩個數(shù)的全部位均相等時,兩數(shù)才相等。二進制樹算法執(zhí)行過程中,讀寫器會多次發(fā)送把應答器分成兩組并且多次分組后得到唯一的一個應答器命令給應答器,而且在這個分組過程中命令參數(shù)以節(jié)點的形式存儲起來成一個數(shù)據(jù)的分叉樹,從而形成"二進制樹".智能冰箱的二進制樹防碰撞算法在應答器內(nèi)進行比較,因為讀寫器可以有多個,而最后讀寫器讀到的數(shù)據(jù)發(fā)送給應答器,因此選擇應答器作為防碰撞算法的燒錄地方,這樣可以在應答器接受了讀寫器讀到的標簽排除相同后傳輸標簽數(shù)據(jù)到主控平臺PXA270。

圖7RFID讀取流程圖(2)GPRS實現(xiàn)過程當收到數(shù)據(jù)庫對比后請求購物的清單,通過QT運行以C++代碼編寫的GPRS程序。首先從QT里得到需要發(fā)送到客戶的信息數(shù)據(jù),然后用OnBnClickedBtnOpen()配置RS-232串口連接配置GPRS,等待GPRS連接成功。當連接成功后GPRS會返回"AT+OPENAT=MODE:3#"數(shù)據(jù)確認連接成功。然后通過OnBnClicked-BtnSend(string)這個函數(shù)發(fā)送信息到GPRS,然后GPRS會根據(jù)信息內(nèi)容發(fā)送到客戶的手機內(nèi)。發(fā)送成功后GPRS會待機5分鐘等待客戶發(fā)送回復確認購買。倘若5分鐘內(nèi)客戶尚未回復確認購買,則會自動取消這次食物的購買并且斷開與GPRS連接;若5分鐘內(nèi)客戶回復確認購買,則程序會返回一個確認購買的信息并且斷開GPRS連接。

圖8GPRS算法流程圖

圖9壓力傳感器算法流程圖(3)壓力傳感器實現(xiàn)過程當冰箱打開的時候,PXA270對壓力傳感器通電。壓力傳感器第一次工作時會記錄初始時候重力。當冰箱關(guān)閉時候,測量壓力傳感器的重力并對比初始時候重力,是否變化,若未變化過則關(guān)閉壓力傳感器并斷開壓力傳感ID讀寫器。(4)控溫實現(xiàn)過程由于PXA270外接插口問題,溫度傳感器基于單片機操作,不需要嵌入PAX270開發(fā)板上。溫度傳感器會伴隨著冰箱的啟動而啟動。當溫度傳感器測到的數(shù)據(jù)發(fā)送給單片機時,單片機會先將冰箱內(nèi)的溫度與設置的冰箱的溫度對比,若高于冰箱的溫度則開啟制冷裝置。制冷期間也不斷測量先冰箱的溫度并且比較設定的冰箱溫度值;若小于等于冰箱的設定的溫度值則關(guān)閉制冷裝置。單片機繼續(xù)接受從溫度傳感器傳來的冰箱的溫度并且比較設定的冰箱溫度值以準備隨時開啟制冷保持冰箱的溫度。當冰箱斷電時候單片機才會停止運行直接冰箱通電后再次開啟并從頭初始化單片機。

圖10控溫算法流程圖(5)網(wǎng)上購物過程在這一過程中,我們指定了冰箱能夠直接訪問的物聯(lián)網(wǎng)超市網(wǎng)站,從而進行對接。因此,我們本項目中,自己搭建了一個購物網(wǎng)站(ASP),為的就是與該類產(chǎn)品進行交互。通過調(diào)用系統(tǒng)自帶的頭文件中函數(shù)HINTERNETInternetOpenUrl()來打開一個完整的FTP、Gopher或HTTP網(wǎng)址的資源,從而可以獲取商品相關(guān)信息。另外,用戶需要登錄購物網(wǎng)站才能實現(xiàn)下單操作,這里,我們默認每臺智能冰箱都配有一個專用的賬號來綁定登錄,通過POST方式提交頁面。當冰箱登錄成功后,可以實現(xiàn)購買商品并下單。(6)數(shù)據(jù)庫實現(xiàn)通過SQLite,冰箱保存著食物的各種資料以便于查找。表4NowTab1NowTab1保存著上一次冰箱的食物表格,方便于與這次RFID讀取到得數(shù)據(jù)比對其中的變化,并且適當刪除或者添加NowTab1數(shù)據(jù)以便下一次的對比,也可以顯示出現(xiàn)冰箱內(nèi)有的食物。

表5HistoryTab3HistoryTab3保存著從冰箱曾經(jīng)存放過的食物,以便于客戶可以查找曾經(jīng)買過的食物。表6SureTab2SureTab2保存著冰箱基本需求的食物表。這表是為了確認如果NowTab1表的食物缺少一定量時跟SureTab2對比,某食物缺少了超過界限時,就會啟動購物程序并且購買缺少的食物防止冰箱食物缺少。表7NameTab4NameTab4保存著與編號相對應的名稱。NameTab4是為了方便從RFID讀到的信息中得出此食物的名稱。若查到不到名稱,則可以通過編號網(wǎng)上查找到名稱并且添加到AddrTab5表中以便以后查找之用。表8AddrTab5AddrTab5可以根據(jù)地址編號得出地址名。AddrTab5是為了方便從RFID讀到的信息中得出此食物的生產(chǎn)地址。若查到不到地址,則可以通過地址編號網(wǎng)上查找到地址并且添加到AddrTab5表中以便以后查找之用。表9Cookbook5可以根據(jù)Cookbook5先列出冰箱可以烹飪的食材跟菜譜。Cookbook5是數(shù)據(jù)庫存儲的菜譜,方便從冰箱現(xiàn)有食材中查找到可以烹飪的菜譜。Cookbook5可以通過網(wǎng)上下載菜譜保存到數(shù)據(jù)庫中。表10RDCookbook6可以通過RDCookbook6得到推薦的食譜。RDCookbook6是冰箱現(xiàn)有食材根據(jù)Cookbook5的菜譜得出現(xiàn)在最有可能烹飪的的菜譜羅列出來。(7)GUI界面設計本系統(tǒng)GUI采用QTE實現(xiàn)。①簡要設計概述在主界面的左邊入放置了一個groupBox控件,里面加入了四個pushBotton,它們分別代表:主界面、食品狀態(tài)、網(wǎng)上購物和食譜推薦。主界面的右邊放置的是stackedWidget控件,一共添加了五個頁面來實現(xiàn)對不同功能模塊的顯示。通過信號和槽連接按鈕實現(xiàn)相應功能界面的跳轉(zhuǎn)。②主要設計實現(xiàn)方法?!耠[藏標題欄。his->setWindowFlags(Qt::FramelessWindowHint);this->setWindowModality(Qt::ApplicationModal);●日歷的顯示。//顯示日期curFile=QDateTime::currentDateTime()。toString("dd");ui->label_9->setStyleSheet("font-size:30px");ui->label_9->setText(curFile);//顯示年月curFileyear=QDateTime::currentDateTime()。toString("2011-MM");ui->label_8->setStyleSheet("font-size:18px");ui->label_8->setText(curFileyear);●動態(tài)更新時間。QTimer*timer=newQTimer();connect(timer,SIGNAL(timeout()),this,SLOT(timerUpDate()));timer->start(1000);voidicebox::timerUpDate(){curFiletime=QDateTime::currentDat

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論