李林林+孫良旭+吳建勝+王剛+劉國莉
摘 要: 智能家居是與人們日常生活關系最密切的物聯網應用,也是非常好的大學生創新、創業項目。但很多高校現有實驗室沒有足夠的軟硬件環境支持,嚴重影響了學生物聯網技術的學習和實踐。本文根據智能家居需求,設計了以智能家居為背景的物聯網應用實驗室建設方案,描述了系統網絡拓撲結構、軟硬件開發環境、通信協議、硬件模塊,并進行了部署測試。測試結果表明,系統可以實現智能家居的一般需求。通過開放軟硬件平臺,可以滿足教師進行物聯網教學和學生進行自主學習的需要。
關鍵詞: 高校; 智能家居; 物聯網; 實驗室
中圖分類號:TP391.1 文獻標志碼:A 文章編號:1006-8228(2017)11-23-03
Research on the construction of smart home IoT application laboratory in universities
Li Linlin1, Sun Liangxu1, Wu Jiansheng1, Wang Gang1, Liu Guoli2
(1. School of Software, University of Science and Technology Liaoning, Anshan, Liaoning 114051, China;
2. School of Science, University of Science and Technology Liaoning)
Abstract: Smart home is an IoT(Internet of Things)application most closed to people's daily life, and is also a very good innovation and entrepreneurship project for students. However, many colleges and universities do not have enough support to software and hardware environment, which has seriously affected the student in the learning and practice of IoT technology. According to the requirements of smart home, this paper designs a laboratory construction scheme of IoT technology for smart home application, describes the system network topology, development environment of software and hardware, hardware modules etc., and completes the deployment test. It is proved that the system can satisfy the normal requirements of smart home. The open platform of software and hardware can meet the IoT teaching and studying requirements of teachers and students.
Key words: university; smart home; IoT; laboratory
0 引言
物聯網(Internet of Things, IoT)實現了物理設備、網絡設備、智能設備、建筑物和嵌入式設備之間的互聯。通過嵌入設備中的電子器件、軟件、傳感器、執行機構和網絡連接,實現設備之間的數據采集和交換。2013年物聯網全局標準倡議組(IoT-GSI)定義物聯網為信息社會的基礎設施。很多學者將物聯網技術與高校實驗室建設和設計相結合進行了研究[1-3]。智能家居是對智能建筑里與居住需求有關的擴展,包括光照、溫度、通風、空調和安全控制,還包括通過Wi-Fi進行遠程監控的家電。系統一般包括交換機和傳感器,有時候連接到網關。通過網關提供的用戶接口,通過網關應用、移動手機APP,PC網頁進行交互,實現系統的控制。很多學者針對智能家居物聯網應用也進行了研究[4-6]。除了智能家居之外,其他物聯網應用也成為研究熱點,例如智慧農業[7]。
國務院出臺了大力推進大眾創業萬眾創新若干政策措施的意見,各個高校積極響應,面對本科生和研究生,大力開展創新創業活動。創新創業活動會遇到一些問題。
⑴ 遇到的問題
① 研究課題的相關技術缺乏先進性,不能與當下最新的研究熱點和流行技術,甚至未來發展趨勢相結合。
② 研究課題的內容缺乏具體應用背景,不能將理論研究應用到工程實踐中,解決生產生活實際問題。
③ 研究課題的軟硬件環境支持有限,尤其是硬件,嚴重影響了課題開展的可行性和可操作性,部分研究內容無法有效開展。
④ 研究課題的研究方法更多采用理論推導結合模擬仿真的方式,研究成果是否適合實際問題難以確定,實際應用可能出現的問題,并沒有得到研究和解決。
本文提出高校智能家居物聯網應用實驗室建設研究課題,為有效地解決上述問題提供了解決方案。
⑵ 解決問題的思路
① 智能家居是以物聯網技術為基礎,物聯網技術是當下最流行的技術,無論學術界還是工業界都已經成為研究熱點,是未來發展的基礎支撐技術。
② 智能家居是典型的物聯網應用,涉及目前主流多種IT技術,同時與人們生活密切相關,在實際使用中存在大量問題,可以作為非常好的研究背景。endprint
③ 智能家居實驗室可以提供豐富的軟硬件資源,為智能家居及其他物聯網應用研發提供有力支持。
④ 智能家居實驗室可以提供功能完整的物聯網實驗箱和開發板、各種類型的傳感器和其他監控設備,同時提供有線和無線網絡支持。所有的研發直接在物理設備上進行,直接解決實際應用中存在的問題,研究成果可以直接應用到實際項目中。
1 系統網絡拓撲結構
系統網絡拓撲結構如圖1所示。系統主要包括智能控制單元、環境安防單元、家電遙控單元、電動窗簾單元、門禁單元、燈光報警單元。
智能控制單元提供應用程序,使用ZigBee、GSM/GPRS、視頻和RS485不同類型的協議和信號,實現門窗控制、環境監控、家電控制、智能燈光、視頻監控和短信控制,同時還可以進行系統信息配置,主要包括電話設置、網絡設置、模式設置、燈光學習、萬能遙控、報警圖片、報警記錄和GPRS 記錄。除了能夠進行本地控制之外,單元還提供通過PC終端Web和Android手機APP,采用Wi-Fi、3G、4G通信技術,實現上述功能的遠程控制。
環境安防單元包括溫濕度、光照檢測、水浸檢測、震動檢測、紅外柵欄、人體感應、煙霧檢測和可燃氣體檢測不同類型的傳感器。通過ZigBee協議與智能控制單元進行通信,上傳傳感器數據到智能控制單元。除此之外,還包括云臺攝像機,通過RS485協議與智能控制單元進行視頻信號通信,實現視頻監控。
家電遙控單元包括紅外轉發器。通過ZigBee協議與智能控制單元進行通信。當智能控制單元執行家電遙控指令時,根據預先學習的家電遙控指令與紅外數據對應關系,下載家電遙控紅外數據到家電遙控單元,通過紅外轉發器轉發到家電設備,實現家電遙控。
電動窗簾單元包括窗簾控制器。其控制方式與家電遙控單元類似,預先學習電動窗簾遙控指令與紅外數據對應關系,由紅外轉發器轉發紅外數據到窗簾控制器,實現電動窗簾控制。
門禁單元包括門磁、電磁鎖、門禁機和出門按鈕。其中門磁和電磁鎖支持通過ZigBee協議與智能控制單元進行通信,上傳門磁狀態和下載電磁鎖命令。
燈光報警單元包括緊急按鈕、調色燈和報警燈。調色燈控制方式與家電遙控單元類似,預先學習調色燈遙控指令與紅外數據對應關系,由紅外轉發器轉發紅外數據到調色燈,實現調色燈控制。緊急按鈕和報警燈控制方式與門禁單元的門磁和電磁鎖類似,通過ZigBee協議與智能控制單元進行通信,上傳緊急按鈕狀態和下載報警燈命令。
2 系統軟硬件設計
2.1 智能控制單元
智能控制單元使用Cortex-A8開發板,預裝嵌入式Linux操作系統,內核版本2.6.35.7。在Windows下安裝Qt Creator、MinGW和Qt-Opensource-Windows配置應用程序開發環境。軟件開發采用客戶端/服務器模式,客戶端與服務器之間通信遵循Linux Socket協議。數據包格式如表1所示。
SOF:值為0xFC,標識數據開始。
CMD:命令。
LEN:DATA域實際長度。
FCS:校驗和,從CMD域到DATA域進行異或校驗計算。
系統設備分為傳感器設備和執行器設備,均支持ZigBee控制。為了描述設備,定義設備節點結構體如下:
typedef struct {
unsigned char NwkAddr[2]; //設備網絡地址
unsigned char DeviceType; //設備類型
unsigned char DeviceIndex; //設備編號
unsigned char DevicePosition; //設備位置
unsigned int DeviceValue; //設備數據
unsigned char Res; //預留
} DeviceDesp,*pDeviceDesp;
客戶端連接服務器后,服務器會自動按照此條協議上報在線設備節點、離線設備節點、狀態變化設備節點給客戶端。數據包各域分別為:
0xFC、0x01、0x0a、在線設備DeviceDesp結構體、校驗和FCS
0xFC、0x02、0x0a、離線設備DeviceDesp結構體、校驗和FCS
0xFC、0x03、0x0a、狀態改變設備DeviceDesp結構體、校驗和FCS
客戶端連接服務器后,可以發送設備節點控制命令。數據包各域為:
0xFC、0x04、0x0a、控制設備DeviceDesp結構體、校驗和FCS
2.2 傳感器感知類型單元
環境安防單元為傳感器感知類型單元。每個傳感器單元使用STM8S103FS的開發板完成對傳感器環境數據的讀取和控制指令的寫入。同時在開發板設計CC2530通訊模塊,實現與智能控制單元的ZigBee通信,完成數據和指令的傳遞,如圖2所示。
2.3 繼電器控制類型單元
家電遙控單元、電動窗簾單元、門禁單元、燈光報警單元為繼電器控制類型單元。其設計與傳感器感知類型單元類似,只是將STM8S103FS引腳PD4作為IO繼電器控制引腳,取消引腳PD3接線。將控制設備與開發板的繼電器控制端口P3進行連接,實現繼電器控制。
3 系統部署測試
3.1 智能控制單元控制程序下載
用串口線連接PC機與智能控制單元串口,以便在智能控制單元Linux系統啟動后,對Linux系統進行操作。將網線連接PC機與智能控制單元網口,以便通過TFTP協議將智能控制單元控制程序從PC機下載到智能控制單元。endprint
在Windows7系統中,打開X-SHELL軟件,新建串口終端,選擇Serial方式,配置串口為COM1,波特率為115200。按下智能控制單元電源,系統上電,啟動到Linux系統下。在PC機打開TFTP32軟件啟動TFTP服務器,將智能控制單元控制程序文件放入TFTP服務器根目錄下。在智能控制單元Linux系統下,使用tftp -g -r file ip命令下載控制程序文件,其中file為控制程序文件名,ip為PC機網口IP地址。如果控制程序文件為tar格式,需要進行解壓,然后啟動運行控制程序。
3.2 智能控制單元控制程序測試
控制程序啟動后,自動通過ZigBee協議與環境安防單元、家電遙控單元、電動窗簾單元、門禁單元和燈光報警單元進行組網,實現通信。控制程序運行界面如圖3所示,通過切換門窗、環境、家電、燈光、視頻和系統按鈕,完成環境信息的采集、家居設備的控制和系統參數配置。
4 結束語
高校學生在物聯網智能家居實驗室中,在基礎軟件和硬件支持下,了解和熟悉了物聯網的基礎理論和開發技術,按照實際工程項目要求,首先收集整理智能家居業務需求,然后進行軟件和硬件的設計,最后在實驗室中真實模擬家居生活場景,進行系統部署和測試,解決遇到的實際問題。通過這樣類型的實驗室,學生既可以學習到理論知識和開發技術,又能夠積累某種物聯網應用場景開發和實施經驗,解決高校學生開展科研遇到的軟硬件環境、研究課題背景和技術先進性等問題。實驗室的建設方案也可以為其他計算機相關專業課程提供軟硬件支持,提供一個開放平臺,支持跨專業學習和研究。硬件的高損耗和低利用率是日后實驗室建設有待解決的問題,充分利用虛擬化等最新軟件技術和科學合理的實驗內容組織,可以是解決該問題的一種方法。
參考文獻(References):
[1] 曲娜,盛桂珍,楊海波. 基于物聯網技術的智慧開放實驗室管
理系統設計[J]. 實驗技術與管理,2015.12:140-142
[2] 韓方珍,俞守華,方永美,徐東風,肖媚燕.基于物聯網技術的
實驗室管理系統設計[J].實驗室研究與探索,2015.12:238-240,259
[3] 吳蓬勃,李學海,楊斐,張金燕.基于物聯網的智能實驗室研究
與實踐[J].實驗室研究與探索,2015.3:78-85
[4] 胡軍,趙國軍.基于ZigBee的智能家居體驗中心系統組網方
案[J].實驗室研究與探索,2016.5:130-133,235
[5] 楊璐,劉寶棟,王銀濤.基于ZigBee技術的智能家居系統門窗
聯動設計與實現[J].實驗室研究與探索,2013.8:297-300,306
[6] 高同輝,劉東曉.智能家居實訓平臺開發與應用[J]. 實驗技術
與管理,2015.7:167-171
[7] 張偉,江瑩旭,阮艷鳳,季大夫.面向智慧農業的物聯網系統與
實訓平臺開發[J].實驗技術與管理,2015.5:161-164endprint