周超琦 朱正羊 耿明翠
摘 要: 綜合運(yùn)用物聯(lián)網(wǎng)技術(shù)和互聯(lián)網(wǎng)技術(shù),實(shí)現(xiàn)了“應(yīng)答式洗衣機(jī)系統(tǒng)”。該系統(tǒng)通過(guò)傳感器、單片機(jī)等硬件技術(shù),以及網(wǎng)絡(luò)協(xié)議、數(shù)據(jù)庫(kù)、ASP.NET等軟件技術(shù)進(jìn)行構(gòu)建,使用Visual Studio、Keil等工具開(kāi)發(fā)實(shí)現(xiàn),最后以網(wǎng)站的形式展現(xiàn)。用戶可以通過(guò)網(wǎng)站查看洗衣機(jī)的工作狀態(tài),可在線預(yù)約和付款;可以通過(guò)微博查詢洗衣機(jī)工作狀態(tài)的剩余時(shí)間,獲得即時(shí)結(jié)果。應(yīng)用該系統(tǒng)可實(shí)現(xiàn)應(yīng)答式洗衣機(jī)的智能管理和使用。
關(guān)鍵詞: 物聯(lián)網(wǎng); 應(yīng)答式系統(tǒng); 傳感器; 洗衣機(jī); 微博
中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2015)02-10-05
Responsive washer system based on IOT
Zhou Chaoqi, Zhu Zhengyang, Geng Mingcui
(Information College, Zhejiang University of Finance and Economics, Hangzhou, Zhejiang 310018, China)
Abstract: The "responsive washer system" is realized based on the integration of IOT and Internet. The system is constructed with the sensors, wireless transmission, SCM, network protocols, database and ASP.NET. It is developed through Visual Studio, Keil and other development tools. It displays itself to the users in the form of site. Users can not only use the functions of checking washers' working condition, booking and paying, but also inquire the rest of washing time and get the result immediately, to achieve intelligent management and utilization of washing machine.
Key words: IOT; responsive system; sensor; washer; weibo
0 引言
隨著時(shí)代的發(fā)展、社會(huì)生活節(jié)奏的加快,24小時(shí)不間斷營(yíng)業(yè)、無(wú)人值守的自助經(jīng)營(yíng)模式因其自主、自助、便利的特性,正被越來(lái)越多的人所接受。
洗衣服是一項(xiàng)耗時(shí)、耗力、耗神的工作,在歐美發(fā)達(dá)國(guó)家,由于時(shí)間珍貴以及追求個(gè)性化的生活,人們?cè)缫巡辉笧槿粘O匆吕速M(fèi)時(shí)間,隨之而來(lái)的是大量洗衣房的出現(xiàn)。目前歐美、日韓生活區(qū),尤其是學(xué)生單身公寓,自助投幣洗衣機(jī)隨處可見(jiàn),在我國(guó)的大學(xué)宿舍,有的也已安裝了這種機(jī)器。但是,在大學(xué)宿舍由于自助式洗衣機(jī)數(shù)量有限,排隊(duì)等待洗衣成了讓學(xué)生頭疼的問(wèn)題。因此,我們開(kāi)發(fā)了“基于物聯(lián)網(wǎng)的應(yīng)答式洗衣機(jī)系統(tǒng)”,其目的是減少學(xué)生排隊(duì)等待而浪費(fèi)的時(shí)間。學(xué)生可以通過(guò)網(wǎng)站查看宿舍樓下洗衣機(jī)的工作狀態(tài)、洗衣機(jī)工作剩余時(shí)間、排隊(duì)人數(shù),可以在網(wǎng)上預(yù)約洗衣機(jī)。洗衣機(jī)通過(guò)微博、微信“發(fā)布”信息——“空閑”或“正在使用,剩余XX分鐘”,“XXX同學(xué),洗衣結(jié)束”等提示信息。
1 關(guān)鍵技術(shù)介紹
1.1 物聯(lián)網(wǎng)介紹
物聯(lián)網(wǎng)可定義為:通過(guò)射頻識(shí)別、紅外感應(yīng)器、全球定位系統(tǒng)、激光掃描器等信息傳感設(shè)備,按約定的協(xié)議,把物品與網(wǎng)絡(luò)連接起來(lái)進(jìn)行信息交換和通信,以實(shí)現(xiàn)智能化識(shí)別、定位、跟蹤、監(jiān)控和管理的一種網(wǎng)絡(luò)[1]。
物聯(lián)網(wǎng)雖然是基于互聯(lián)網(wǎng)的應(yīng)用,卻比互聯(lián)網(wǎng)更加龐大,任何物體只要嵌入感應(yīng)芯片,即是一個(gè)客戶端,物體數(shù)量可以達(dá)到成百上千億,而且物物之間也可“說(shuō)話”,不論何時(shí)何地都可以即時(shí)獲取它們的信息。
物聯(lián)網(wǎng)在生活和工作中的應(yīng)用,一方面提高了經(jīng)濟(jì)效益,大大降低了成本,另一方面可以為中國(guó)經(jīng)濟(jì)的提升提供技術(shù)動(dòng)力。
1.2 OAuth協(xié)議
本系統(tǒng)一大亮點(diǎn)是將網(wǎng)站上的洗衣機(jī)狀態(tài)信息公布到時(shí)下流行的社會(huì)化媒體平臺(tái)——微博上,既方便用戶對(duì)信息即時(shí)獲取,又有效地宣傳了該網(wǎng)站。同時(shí),如果用戶在微博上@WasherOnline,系統(tǒng)會(huì)自動(dòng)分析該用戶,并回復(fù)與該用戶相關(guān)的洗衣機(jī)信息,如該用戶預(yù)約的洗衣機(jī)排隊(duì)人數(shù)、剩余時(shí)間等。本系統(tǒng)對(duì)微博的一系列操作都需要先完成OAuth這一授權(quán)協(xié)議才可進(jìn)行。
OAuth協(xié)議為用戶資源的授權(quán)提供了一個(gè)安全的、開(kāi)放而又簡(jiǎn)易的標(biāo)準(zhǔn)。與以往的授權(quán)方式不同之處是OAuth的授權(quán)不會(huì)使第三方觸及到用戶的帳號(hào)信息,如用戶名與密碼,即第三方無(wú)需用戶名與密碼就可以申請(qǐng)獲得該用戶資源的授權(quán)。
Client指第三方應(yīng)用,Resource Owner指用戶,Authorization Server是授權(quán)服務(wù)器,Resource Server是API服務(wù)器。
A. 第三方應(yīng)用向用戶發(fā)送認(rèn)證請(qǐng)求,請(qǐng)求資源擁有者給予授權(quán)許可。
B. 資源擁有者根據(jù)實(shí)際情況選擇對(duì)第三方應(yīng)用授權(quán)內(nèi)容或者授權(quán)與否。
C. 第三方應(yīng)用發(fā)送資源所有者的授權(quán)信息給授權(quán)服務(wù)器。
D. 授權(quán)服務(wù)器經(jīng)過(guò)校驗(yàn)后確認(rèn)有效給予訪問(wèn)令牌。
E. 第三方應(yīng)用利用獲得的訪問(wèn)令牌訪問(wèn)資源服務(wù)器獲取資料。
F. 資源服務(wù)器以JSON或者XML的形式把資料傳送給第三方應(yīng)用。
OAuth2.0授權(quán)流程如圖1所示。
2 系統(tǒng)總體方案設(shè)計(jì)
2.1 系統(tǒng)總體方案
根據(jù)應(yīng)答式洗衣機(jī)系統(tǒng)的功能與技術(shù)要求,我們決定采用硬件+軟件的系統(tǒng)結(jié)構(gòu)來(lái)設(shè)計(jì),使用了傳感器、無(wú)線傳輸模塊、單片機(jī)等硬件技術(shù)和數(shù)據(jù)庫(kù)、ASP.NET、網(wǎng)絡(luò)協(xié)議等軟件技術(shù),通過(guò)Visual Studio、Keil等開(kāi)發(fā)工具開(kāi)發(fā)實(shí)現(xiàn)。系統(tǒng)總體方案為:洗衣機(jī)的工作信號(hào)由信號(hào)采集模塊采集,由無(wú)線傳輸模塊傳輸,由單片機(jī)信號(hào)轉(zhuǎn)換模塊加工后傳給服務(wù)器。這樣用戶既可以在網(wǎng)站上查看洗衣機(jī)的工作狀態(tài),又可以在微博上提問(wèn)來(lái)查看洗衣機(jī)的工作狀態(tài)。
2.2 系統(tǒng)模塊
根據(jù)設(shè)計(jì)方案,我們將整個(gè)系統(tǒng)劃分為六個(gè)主要模塊:信號(hào)采集模塊、無(wú)線傳輸模塊、單片機(jī)信號(hào)轉(zhuǎn)換模塊、網(wǎng)站發(fā)布信息模塊、微博發(fā)布信息模塊。洗衣機(jī)的工作信號(hào)由信號(hào)采集模塊采集后,通過(guò)無(wú)線傳輸模塊傳給單片機(jī)進(jìn)行加工轉(zhuǎn)換,之后傳給服務(wù)器進(jìn)行存儲(chǔ)?;诓杉降臄?shù)據(jù),我們?cè)O(shè)計(jì)并實(shí)現(xiàn)了一個(gè)網(wǎng)站,用戶可以通過(guò)這個(gè)網(wǎng)站來(lái)查看洗衣機(jī)的工作狀態(tài),也可以使用其他功能,例如預(yù)約、付款等。用戶還可以通過(guò)微博提問(wèn)來(lái)獲得預(yù)定的洗衣機(jī)工作的狀態(tài)。具體過(guò)程如圖2所示。
2.3 模塊功能詳細(xì)描述
⑴ 信號(hào)采集模塊
該模塊主要由一個(gè)帶TCRT5000的光傳感電路來(lái)完成。當(dāng)洗衣機(jī)工作時(shí),TCRT5000(見(jiàn)圖3)接收到光信號(hào),電路輸出一個(gè)較高的電壓;當(dāng)洗衣機(jī)空閑時(shí),TCRT5000接收不到光信號(hào),電路輸出一個(gè)較高的電壓。
⑵ 無(wú)線傳輸模塊
考慮到空間的距離,無(wú)線傳輸模塊主要作用是:利用nRF905(見(jiàn)圖4)實(shí)現(xiàn)將信號(hào)采集模塊采集到的信號(hào)傳輸給下一模塊。
⑶ 單片機(jī)信號(hào)轉(zhuǎn)換模塊
此模塊是將傳輸過(guò)來(lái)的信號(hào)作A/D轉(zhuǎn)換,即將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),再通過(guò)串口傳給下一模塊。單片機(jī)如圖5所示。
⑷ 網(wǎng)站發(fā)布信息模塊
將單片機(jī)傳送過(guò)來(lái)的信號(hào)存儲(chǔ)到數(shù)據(jù)庫(kù)中,需要用到信號(hào)采集串口傳輸存儲(chǔ)API函數(shù)。調(diào)用Microsoft Visual Studio中SerialPort類(lèi),在程序中設(shè)置一個(gè)中斷timer,每隔5秒進(jìn)行一次串口的讀取。當(dāng)在串口端讀取到一個(gè)“1”或“0”時(shí),就把數(shù)據(jù)在數(shù)據(jù)庫(kù)中存儲(chǔ)起來(lái),同時(shí)保存當(dāng)前的時(shí)間。然后可以通過(guò)網(wǎng)站和微博把數(shù)據(jù)庫(kù)中洗衣機(jī)的工作狀態(tài)信息發(fā)布出去。
在分析了其功能和業(yè)務(wù)需求后,根據(jù)數(shù)據(jù)庫(kù)設(shè)計(jì)的原理[2],設(shè)計(jì)數(shù)據(jù)庫(kù)表目錄如表1。
該模塊是將洗衣機(jī)的狀態(tài)發(fā)布到微博、微信平臺(tái),把信息公開(kāi)化,還能實(shí)時(shí)回復(fù)用戶的提問(wèn),實(shí)現(xiàn)洗衣機(jī)的“應(yīng)答”。
3 硬件設(shè)計(jì)
3.1 信號(hào)采集
采用TCRT5000一體化反射型光電探測(cè)器作為信號(hào)采集模塊,其發(fā)射器是一個(gè)砷化鎵紅外發(fā)光二極管,而接收器是一個(gè)高靈敏度的硅平面光電三極管。光傳感電路工作原理:右端為紅外線發(fā)射端,VCC端接入3.3V穩(wěn)壓電源發(fā)射紅外線,左端為紅外接收端,輸出端接單片機(jī)端口檢測(cè)10k電阻的電壓,當(dāng)檢測(cè)到紅外線時(shí)接收端三極管的壓降減小,10K電阻的分壓增大。
3.2 無(wú)線傳輸
nRF905應(yīng)用于信號(hào)采集與單片機(jī)之間的數(shù)據(jù)傳輸。nRF905采用Nordic公司的VLSI ShockBurst技術(shù),該技術(shù)使nRF905能夠提供高速的數(shù)據(jù)傳輸,而不需要昂貴的高速M(fèi)CU來(lái)進(jìn)行數(shù)據(jù)處理/時(shí)鐘覆蓋。通過(guò)將與RF協(xié)議有關(guān)的高速信號(hào)處理放到芯片內(nèi),nRF905提供給應(yīng)用的微控制器一個(gè)SPI接口,速率由微控制器自己設(shè)定的接口速度決定。nRF905通過(guò)ShockBurst工作模式在RF以最大速率進(jìn)行連接時(shí)降低數(shù)字應(yīng)用部分的速度來(lái)降低在應(yīng)用中的平均電流消耗。在ShockBurst RX模式中,地址匹配AM和數(shù)據(jù)準(zhǔn)備就緒DR信號(hào)通知MCU一個(gè)有效的地址和數(shù)據(jù)包已經(jīng)各自接收完成。在ShockBurst TX模式中,nRF905自動(dòng)產(chǎn)生前導(dǎo)碼和CRC校驗(yàn)碼,數(shù)據(jù)準(zhǔn)備就緒DR信號(hào)通知MCU數(shù)據(jù)傳輸已經(jīng)完成??傊?,這意味著降低MCU的存儲(chǔ)器需求,也就是降低MCU成本,同時(shí)又縮短軟件開(kāi)發(fā)時(shí)間。
3.3 單片機(jī)信號(hào)轉(zhuǎn)換模塊
我們可以把洗衣機(jī)的工作狀態(tài)視為模擬值,即工作狀態(tài)為“1”,空閑狀態(tài)為“0”。紅外傳感器時(shí)時(shí)檢測(cè)著洗衣機(jī)的工作指示燈,當(dāng)在狀態(tài)“1”時(shí),接收電路中分壓電阻上的電壓差會(huì)增大,通過(guò)反復(fù)測(cè)試后在2V以上,當(dāng)在狀態(tài)“0”時(shí),電壓差在2V以下。當(dāng)調(diào)用ARM單片機(jī)上的ADC功能時(shí),系統(tǒng)把接收到的電壓數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào),再次轉(zhuǎn)換成信號(hào)“1”與“0”。此時(shí)洗衣機(jī)的工作狀態(tài)就是一個(gè)方波圖形,如圖6在單片機(jī)的中斷函數(shù)中,再次調(diào)用ADC功能,讀出波形圖的上跳沿和下跳沿,每檢測(cè)到一個(gè)上跳沿,單片機(jī)就通過(guò)串口發(fā)送一個(gè)信號(hào)“1”,每檢測(cè)到一個(gè)下跳沿就發(fā)送一個(gè)信號(hào)“0”。此時(shí)單片機(jī)就成功完成了對(duì)洗衣機(jī)狀態(tài)的檢測(cè),當(dāng)洗衣機(jī)剛進(jìn)入工作狀態(tài)那一刻,單片機(jī)就通過(guò)串口發(fā)送一個(gè)“1”給服務(wù)器,剛進(jìn)入空閑狀態(tài)就發(fā)送一個(gè)“0”給服務(wù)器,見(jiàn)圖6。
4 軟件設(shè)計(jì)
4.1 系統(tǒng)軟件框圖
系統(tǒng)軟件框圖見(jiàn)圖7。
圖7 系統(tǒng)軟件框圖
4.2 應(yīng)用程序開(kāi)發(fā)
網(wǎng)站使用ASP.NET進(jìn)行開(kāi)發(fā),搭配SQL Server數(shù)據(jù)庫(kù)[3-4],功能實(shí)現(xiàn)過(guò)程如下。
⑴ 網(wǎng)站前臺(tái)主體結(jié)構(gòu)設(shè)置[5-6]
網(wǎng)站前臺(tái)主體結(jié)構(gòu)見(jiàn)圖8。
⑵ 網(wǎng)站后臺(tái)管理功能結(jié)構(gòu)設(shè)置
后臺(tái)的管理是整個(gè)平臺(tái)非常重要的一個(gè)環(huán)節(jié)。后臺(tái)功能強(qiáng)大,設(shè)計(jì)得好壞將直接影響到整個(gè)平臺(tái)的管理效率。團(tuán)隊(duì)人員對(duì)項(xiàng)目平臺(tái)進(jìn)行了詳細(xì)的策劃設(shè)計(jì),具體結(jié)構(gòu)功能的設(shè)置如圖9所示。
⑶ 洗衣機(jī)狀態(tài)顯示功能
洗衣機(jī)狀態(tài)顯示見(jiàn)圖10。
⑷ 預(yù)約功能
用戶一旦在洗衣網(wǎng)站注冊(cè)并加為好友后,預(yù)付相應(yīng)的費(fèi)用后即可獲得預(yù)約功能權(quán)限。當(dāng)用戶選擇預(yù)定功能后,網(wǎng)站會(huì)將用戶預(yù)定信息入庫(kù),并通過(guò)相應(yīng)的算法,對(duì)預(yù)定用戶進(jìn)行通知排序,一旦洗衣機(jī)空閑時(shí),網(wǎng)站便會(huì)發(fā)送信息或微博給排序最前的用戶,通知他們可以去使用洗衣機(jī),并給予15分鐘為此用戶進(jìn)行等待,若在15分鐘內(nèi)該用戶使用了洗衣機(jī),則確認(rèn)后扣除相應(yīng)的費(fèi)用;若該用戶沒(méi)有按時(shí)使用,則發(fā)送微博信息給該用戶通知預(yù)約時(shí)間已過(guò),并返還其預(yù)付的費(fèi)用,開(kāi)始通知下一個(gè)用戶使用該洗衣機(jī),依此類(lèi)推。
在預(yù)約成功并使用洗衣機(jī)時(shí),需進(jìn)行身份確認(rèn),在洗衣機(jī)的旁邊放置一個(gè)刷卡機(jī),只有當(dāng)用戶身份和預(yù)約時(shí)的身份一致時(shí),才進(jìn)行扣費(fèi),并交付使用。
預(yù)約功能如圖11所示。
⑸ 付款功能
付款功能分刷卡付款和網(wǎng)上付款兩種,刷卡付款是指,每個(gè)用戶都有相應(yīng)的身份ID卡,最常見(jiàn)的是高校中的學(xué)生一卡通,在洗衣機(jī)房?jī)?nèi)進(jìn)行刷卡付費(fèi),即可獲得該洗衣機(jī)的使用權(quán),并通過(guò)該卡的ID從而可以將該使用人的信息進(jìn)行入庫(kù),并記錄洗衣機(jī)的工作狀態(tài),發(fā)送微博通知好友用戶該洗衣機(jī)已被使用中;網(wǎng)上付款指用戶可以查詢各個(gè)洗衣機(jī)的工作狀態(tài),在某臺(tái)洗衣機(jī)上實(shí)現(xiàn)預(yù)定,并預(yù)付其洗衣費(fèi)用。用戶在實(shí)地使用洗衣時(shí),系統(tǒng)會(huì)完成扣款,若用戶超時(shí)未使用洗衣機(jī),則返還其預(yù)付費(fèi)用。
⑹ 微博發(fā)布信息
現(xiàn)在我們大都每天會(huì)關(guān)注微博,似乎微博已經(jīng)成為了我們生活中不可缺少的一部分,同時(shí)我們也看到很多利用微博營(yíng)銷(xiāo)成功的例子。
該系統(tǒng)有一個(gè)功能是專(zhuān)為發(fā)微博而設(shè)計(jì)的。通過(guò)這個(gè)功能,系統(tǒng)自動(dòng)發(fā)送微博記錄,從而實(shí)時(shí)顯示洗衣機(jī)的工作狀態(tài),網(wǎng)上用戶可以加此微博為好友,實(shí)時(shí)接收洗衣網(wǎng)站發(fā)送的內(nèi)容,內(nèi)容如下:
用戶預(yù)約洗衣機(jī)后,系統(tǒng)會(huì)自動(dòng)發(fā)微博顯示該臺(tái)洗衣機(jī)當(dāng)前的狀態(tài)“預(yù)約成功,XX地方的XX洗衣機(jī)當(dāng)前剩余XX時(shí)間,您前面還有X人”;如果輪到該用戶使用洗衣機(jī),系統(tǒng)會(huì)自動(dòng)發(fā)微博提醒用戶去洗衣服“XX地方的XX洗衣機(jī)處于空閑狀態(tài),可以去洗衣物?!薄?/p>
用戶(已注冊(cè))在微博上發(fā)“@WasherOnline”,系統(tǒng)會(huì)自動(dòng)檢索該用戶的信息,并把相關(guān)的信息發(fā)送給用戶。如該用戶正在使用洗衣機(jī),微博會(huì)發(fā)送“您當(dāng)前洗衣還剩余XX時(shí)間”;如果該用戶已預(yù)約,微博會(huì)發(fā)送“您預(yù)約的XX地方的XX洗衣機(jī)當(dāng)前剩余XX時(shí)間,您前面還有X人”。
為了實(shí)現(xiàn)這一功能,我們引用新浪提供的C#.net版本的SDK,引導(dǎo)用戶完成基于OAuth2.0的授權(quán)認(rèn)證[7]。這樣既保護(hù)了用戶的隱私,又可以通過(guò)調(diào)用微博開(kāi)發(fā)平臺(tái)的API實(shí)現(xiàn)系統(tǒng)自動(dòng)控制微博的功能。
調(diào)用的API有:
① OAuth2授權(quán)接口
oauth2/authorize 請(qǐng)求用戶授權(quán)Token
oauth2/access_token 獲取授權(quán)過(guò)的Access Token
oauth2/get_token_info 查詢用戶access_token的授權(quán)相關(guān)信息
② 微博接口
statuses/querymid 通過(guò)id獲取mid
statuses/queryid 通過(guò)mid獲取id
statuses/update 發(fā)布一條微博信息
statuses/mentions/ids 獲取@當(dāng)前用戶的最新微博的ID
statuses/show_batch 根據(jù)微博ID批量獲取微博信息
③ 評(píng)論接口
comments/create 評(píng)論一條微博
④ 用戶接口
users/show 獲取用戶信息
⑤ 關(guān)系接口
friendships/create 關(guān)注某用戶
⑥ 賬號(hào)接口
account/get_uid OAuth授權(quán)之后獲取用戶UID
當(dāng)用戶在微博上@WasherOnline,系統(tǒng)會(huì)根據(jù)當(dāng)前洗衣機(jī)的使用狀況將結(jié)果自動(dòng)回復(fù)給用戶,如圖12所示。
5 結(jié)束語(yǔ)
應(yīng)答式洗衣機(jī)系統(tǒng)利用光傳感器和單片機(jī)采集傳輸洗衣機(jī)的工作狀態(tài)信號(hào),并將信號(hào)通過(guò)服務(wù)器發(fā)布到網(wǎng)站。系統(tǒng)實(shí)時(shí)監(jiān)控,及時(shí)、有效地獲取信息,并將信息以人性化的方式發(fā)布在微博上,用戶可以快速、方便地得到信息。將微博的二維碼貼在洗衣機(jī)的顯要位置,顧客可以方便地加其為好友,查看洗衣機(jī)的工作狀態(tài)、洗衣店的位置信息等,既方便顧客,又起到了很好的宣傳作用。此外,用戶也可以在微博上與系統(tǒng)交互,系統(tǒng)將自動(dòng)回復(fù)與該用戶相關(guān)的洗衣機(jī)信息。應(yīng)答式洗衣機(jī)系統(tǒng)是利用物聯(lián)網(wǎng)技術(shù)和互聯(lián)網(wǎng)技術(shù),對(duì)現(xiàn)有的投幣洗衣機(jī)進(jìn)行了改進(jìn),使之更符合大眾的生活節(jié)奏與習(xí)慣,為現(xiàn)代家庭的健康生活提供保障,減少了社會(huì)資源浪費(fèi),符合當(dāng)代社會(huì)綠色環(huán)保的理念[8]。
參考文獻(xiàn):
[1] 嚴(yán)萍,張興敢,柏業(yè)超,杜仲林.基于物聯(lián)網(wǎng)技術(shù)的智能家居系統(tǒng)[J].南
京大學(xué)學(xué)報(bào),2012.1:26-32
[2] 王珊,陳紅.數(shù)據(jù)庫(kù)系統(tǒng)原理教程[M].清華大學(xué)出版社,1998.
[3] 張躍廷,王小科,帖凌珍.ASP.NET程序開(kāi)發(fā)范例寶典[M].人民郵電
出版社,2007.
[4] 于倩,羅靜.ASP.NET中ADO.NET對(duì)數(shù)據(jù)庫(kù)的管理[J].微計(jì)算機(jī)應(yīng)
用,2004.25(3):372-376
[5] 趙宏中,應(yīng)杭.基于ASP.NET技術(shù)的多層軟件體系架構(gòu)的實(shí)現(xiàn)[J].軟
件開(kāi)發(fā)實(shí)務(wù),2005.14:11-17
[6] Richard Anderson, Brlan FrMcis.ASP.NET高級(jí)編程[M].清華大學(xué)
出版社,2002.
[7] John Papa.Data Access Strategies Using ADO.NET and SQL[J].
MSDN Magazine,2005.20(5):101-103
[8] 吳方,袁浩杰,鐘海華,陳金安.基于物聯(lián)網(wǎng)的智能冰箱設(shè)計(jì)與實(shí)現(xiàn)[J].
現(xiàn)代計(jì)算機(jī),2011.9(1):55-61