基于物聯(lián)網(wǎng)的智能冰箱設(shè)計(jì)與實(shí)現(xiàn)
(2)GPRS 實(shí)現(xiàn)過(guò)程
當(dāng)收到數(shù)據(jù)庫(kù)對(duì)比后請(qǐng)求購(gòu)物的清單,通過(guò)QT 運(yùn)行以C++代碼編寫(xiě)的GPRS 程序。首先從QT 里得到需要發(fā)送到客戶的信息數(shù)據(jù), 然后用OnBnClickedBtnOpen () 配置RS-232 串口連接配置GPRS, 等待GPRS 連接成功。
當(dāng)連接成功后GPRS 會(huì)返回AT+OPENAT=MODE:3# 數(shù)據(jù)確認(rèn)連接成功。然后通過(guò)OnBnClicked -BtnSend (string) 這個(gè)函數(shù)發(fā)送信息到GPRS, 然后GPRS 會(huì)根據(jù)信息內(nèi)容發(fā)送到客戶的手機(jī)內(nèi)。發(fā)送成功后GPRS 會(huì)待機(jī)5 分鐘等待客戶發(fā)送回復(fù)確認(rèn)購(gòu)買。
倘若5 分鐘內(nèi)客戶尚未回復(fù)確認(rèn)購(gòu)買, 則會(huì)自動(dòng)取消這次食物的購(gòu)買并且斷開(kāi)與GPRS 連接; 若5 分鐘內(nèi)客戶回復(fù)確認(rèn)購(gòu)買, 則程序會(huì)返回一個(gè)確認(rèn)購(gòu)買的信息并且斷開(kāi)GPRS 連接。
圖8 GPRS 算法流程圖
圖9 壓力傳感器算法流程圖
?。?)控溫實(shí)現(xiàn)過(guò)程
由于PXA270 外接插口問(wèn)題, 溫度傳感器基于單片機(jī)操作,不需要嵌入PAX270 開(kāi)發(fā)板上。溫度傳感器會(huì)伴隨著冰箱的啟動(dòng)而啟動(dòng)。當(dāng)溫度傳感器測(cè)到的數(shù)據(jù)發(fā)送給單片機(jī)時(shí), 單片機(jī)會(huì)先將冰箱內(nèi)的溫度與設(shè)置的冰箱的溫度對(duì)比, 若高于冰箱的溫度則開(kāi)啟制冷裝置。制冷期間也不斷測(cè)量先冰箱的溫度并且比較設(shè)定的冰箱溫度值;若小于等于冰箱的設(shè)定的溫度值則關(guān)閉制冷裝置。單片機(jī)繼續(xù)接受從溫度傳感器傳來(lái)的冰箱的溫度并且比較設(shè)定的冰箱溫度值以準(zhǔn)備隨時(shí)開(kāi)啟制冷保持冰箱的溫度。當(dāng)冰箱斷電時(shí)候單片機(jī)才會(huì)停止運(yùn)行直接冰箱通電后再次開(kāi)啟并從頭初始化單片機(jī)。
圖10 控溫算法流程圖
(5)網(wǎng)上購(gòu)物過(guò)程
在這一過(guò)程中, 我們指定了冰箱能夠直接訪問(wèn)的物聯(lián)網(wǎng)超市網(wǎng)站,從而進(jìn)行對(duì)接。因此,我們本項(xiàng)目中,自己搭建了一個(gè)購(gòu)物網(wǎng)站(ASP),為的就是與該類產(chǎn)品進(jìn)行交互。通過(guò)調(diào)用系統(tǒng)自帶的頭文件wininet.h>中函數(shù)HINTERNET InternetOpenUrl()來(lái)打開(kāi)一個(gè)完整的FTP、Gopher 或HTTP 網(wǎng)址的資源, 從而可以獲取商品相關(guān)信息。
另外,用戶需要登錄購(gòu)物網(wǎng)站才能實(shí)現(xiàn)下單操作,這里, 我們默認(rèn)每臺(tái)智能冰箱都配有一個(gè)專用的賬號(hào)來(lái)綁定登錄,通過(guò)POST 方式提交頁(yè)面。當(dāng)冰箱登錄成功后,可以實(shí)現(xiàn)購(gòu)買商品并下單。
?。?)數(shù)據(jù)庫(kù)實(shí)現(xiàn)
通過(guò)SQLite, 冰箱保存著食物的各種資料以便于查找。
表4 NowTab1
NowTab1 保存著上一次冰箱的食物表格, 方便于與這次RFID 讀取到得數(shù)據(jù)比對(duì)其中的變化,并且適當(dāng)刪除或者添加NowTab1 數(shù)據(jù)以便下一次的對(duì)比, 也可以顯示出現(xiàn)冰箱內(nèi)有的食物。
表5 HistoryTab3
HistoryTab3 保存著從冰箱曾經(jīng)存放過(guò)的食物,以便于客戶可以查找曾經(jīng)買過(guò)的食物。
表6 SureTab2
SureTab2 保存著冰箱基本需求的食物表。這表是為了確認(rèn)如果NowTab1 表的食物缺少一定量時(shí)跟SureTab2 對(duì)比,某食物缺少了超過(guò)界限時(shí),就會(huì)啟動(dòng)購(gòu)物程序并且購(gòu)買缺少的食物防止冰箱食物缺少。
表7 NameTab4
評(píng)論