關靜麗, 艾 紅, 陳雯柏
(北京信息科技大學 自動化學院,北京 100192)
基于樹莓派和Yeelink的開放實驗室監控系統設計
關靜麗, 艾 紅, 陳雯柏
(北京信息科技大學 自動化學院,北京 100192)

為了實現開放實驗室的安全運行,設計了一套基于樹莓派和Yeelink的開放實驗室遠程監控系統。在實驗室內部使用近距離無線通信技術ZigBee建立無線傳感網絡,實時監測實驗臺和空調電源、人體紅外和門窗磁等安防參數,樹莓派網關把ZigBee協調器發來的各項實驗室數據上傳物聯網云平臺Yeelink,PC和手機用戶即可通過Yeelink實現遠程監控,系統對開放實驗室的安全運行具有一定的實際應用價值。
樹莓派; 開放實驗室; Yeelink; 遠程監控
目前各高校都在大力提倡實驗室開放,開放實驗室為學生提供了一個寬松、便利的實驗環境,可以更好地培養其動手能力、創新能力和科學素質。但隨之而來的各種問題和安全隱患也給實驗室管理工作帶來挑戰。為了做好實驗室的開放式運行和管理,各種實驗室安全監控系統應運而生[1-3]。
樹莓派(Raspberry Pi)是2012年由英國樹莓派基金會發行的一款卡片式計算機,它采用了ARM架構處理器和Linux操作系統,在只有信用卡大小、購買成本只需200元左右的硬件電路板上實現了個人計算機的全部功能[4]。樹莓派接口豐富、可擴展性強、有著豐富的開源軟件資源,與傳統的嵌入式開發平臺相比,在速度、集成度、價格和效率上有著明顯的優勢,因而上市兩年來在嵌入式開發領域發展迅速[5-7]。
Yeelink是一個開放的公共物聯網接入平臺,提供高并發接入服務器和云存儲方案,用戶不必了解服務器實現細節和運行情況,就可以完成傳感器數據接入、存儲和展現任務,從而實現遠程獲取傳感器信息或者對設備遠程控制。
ZigBee技術是一種新興的近距離、低速率、低成本、低功耗的雙向無線通信技術[8],是適合構建低速率無線傳感器網絡的標準之一,非常適合用于智能實驗室、智能家居等無線傳感器網絡中信息和數據量較小的系統。
本文基于樹莓派、Yeelink和ZigBee技術,設計了一個開放實驗室監控系統,可以實現對開放實驗室的實時監測和遠程控制。
開放實驗室監控系統主要由樹莓派網關、ZigBee無線網絡、攝像頭模塊和系統客戶端4部分組成,系統結構如圖1所示。

圖1 系統結構圖
樹莓派作為系統網關是整個監控系統的核心,負責內部與外部網絡之間的相互通信,通過 ZigBee無線網絡對開放實驗室內各設備終端進行實時監控和管理。同時,樹莓派通過CSI接口連接一個攝像頭,對開放實驗室內部情況進行實時監控。
ZigBee無線網絡由一個協調器節點和多個終端節點組成,協調器節點負責ZigBee組網和維護、通過ZigBee網絡與終端節點交換信息、通過串口與樹莓派網關通信。ZigBee終端節點負責對各傳感器節點的數據信息進行采集和處理,包括實驗臺和空調電源監測、人體紅外探測、火焰探測、煙霧探測和門磁等,并根據指令進行相應的控制,驅動繼電器產生動作,比如關閉實驗臺和空調電源等。
實驗教師使用PC機和智能手機通過物聯網云平臺Yeelink可以遠程訪問樹莓派網關,實時了解實驗室情況,如發現學生離開實驗室后沒有關掉實驗臺或空調,可以遠程控制關閉實驗臺或空調電源,如有異常情況,監控系統也可向手機終端發送推送報警。
2.1 樹莓派網關
樹莓派網關采用樹莓派基金會2014年7月發布的B+型樹莓派,樹莓派B+板的主要部件包括片上系統SOC、內存、USB、網絡控制器和電源,如圖2所示。片上系統SOC采用博通Broadcom BCM2835芯片,其中集成了CPU和圖像處理器GPU,CPU是ARMv6架構的ARM1176JZF-S,工作頻率700 MHz。此外,樹莓派B+板提供了豐富對外接口,包括4個USB2.0接口、網絡接口、攝像頭接口、HDMI接口、SD卡接口和40針通用I/O接口等[9]。

圖2 樹莓派B+板
樹莓派網關通過串口UART與ZigBee協調器相連,樹莓派B+板提供了一個40引腳的雙排針通用I/O接口,其中除了通用GPIO引腳、電源、地信號外,還包括一些符合UART、SPI、I2C等總線接口標準的引腳,是樹莓派對外部硬件設備控制和數據交換的重要通道。在這些外部I/O接口引腳中,GPIO14為串口數據發送端UART0_TXD,GPIO15為串口數據接收端UART0_RXD,GPIO17為請求發送UART0_RTS。
攝像頭模塊采用500萬像素的OV5647鏡頭,能拍攝分辨率為2 592×1 944像素的圖片,或錄制30幀/s的1 920×1 080像素的視頻,通過串行接口CSI直接與樹莓派的圖像處理器GPU模塊相連。
2.2 ZigBee無線網絡
ZigBee無線網絡采用星型拓撲結構,由一個協調器節點和多個終端節點組成。
(1) ZigBee協調器。ZigBee協調器是ZigBee網絡的主控節點,負責啟動和維護整個網絡、接收和處理各個終端節點的數據、把網關傳達的指令發送給相應的終端節點。協調器采用 CC2530芯片為核心器件構成,CC2530是一款完全兼容8051內核,同時支持IEEE 802.15.4協議的無線射頻單片機,CC2530很好地支持了TI公司的 Z-Stack 2007協議棧,能夠方便地組建無線網絡,實現節點間的無線傳輸[10]。CC2530芯片內集成了許多特色功能模塊,其外圍電路非常簡潔,主要包括巴倫匹配電路、晶振、阻抗匹配、濾波電路、電源去耦等電路[11]。CC2530通過串口與樹莓派網關相連。
(2) ZigBee終端節點。終端節點由ZigBee模塊和采集/控制模塊組成,負責數據采集、把數據發送給協調器、根據協調器的指令控制實驗室設備。ZigBee模塊在硬件上與協調器節點相同,只是軟件設計不同。采集/控制模塊主要包括人體紅外探測、門窗磁傳感器采集模塊和實驗臺、空調電源控制模塊。
人體紅外熱釋電傳感器的作用是監測實驗室是否有人,可與門磁傳感器配合使用。在工作時段,當監測到一段時間實驗室無人而門未關好時,通知實驗室管理員前去查看是否學生離開忘記關門。在夜間,如監測到有人異常侵入,發送報警信息。紅外熱釋電傳感器模塊主要由紅外熱釋電傳感器、菲涅爾透鏡和驅動電路構成。驅動電路采用集成芯片BISS0001,其內部的放大器將來自熱釋電傳感器的信號放大后,通過比較器和定時器轉換為高低電平信號輸出至CC2530的I/O輸入口。
門磁傳感器用來檢測實驗室門的開關狀態,由永磁體和無線發射模塊兩部份組成,分別安裝在門框和門扇里,永磁體用來產生恒定的磁場,無線發射模塊內有一個常開型的干簧管,當磁體與干簧管的距離保持在1.5 cm內時,干簧管處于斷開狀態,一旦磁體與干簧管分離的距離超過1.5 cm時,干簧管就會閉合。采用MC-38型有線門磁,無線發射模塊一側有2根導線, 一根導線連接3.3 V電源,另一根導線連接CC2530的I/O輸入口。當實驗室門關閉時,門磁開關斷開,輸入為低電平;當門實驗室打開時,門磁開關導通,輸入高電平,CC2530 通過判斷輸入電平的高低即可獲取門的開關狀態。
實驗臺電源控制模塊由電流電壓檢測電路和3.3 V/5 A固態繼電器組成,如圖3所示。當實驗室長時間無人或非工作時段檢測到實驗臺電源未關閉時,可通過CC2530的I/O輸出口經光耦隔離來控制固態繼電器關閉實驗臺電源。

圖3 實驗臺電源控制模塊
空調電源控制器因入口電壓為 380 V,需采用3路繼電器來分別控制 U、V、W三相的通斷,固態繼電器也相應地選用3.3 V/10 A大功率繼電器。
3.1 樹莓派網關軟件設計
樹莓派采用Raspbian操作系統,它是一個基于Debian發行版Linux修改得到的適用于樹莓派的操作系統,具有完整的TCP/IP協議和HTTP協議,有著豐富的開源軟件資源,支持C語言、C++和Java、Python等腳本語言。
樹莓派網關作為實驗室內網和外網的連接,實現數據ZigBee協議和TCP/IP協議的相互轉換,其主線程流程如圖4所示。系統啟動后進入設備初始化、加載系統設置并啟動攝像頭,接收并處理ZigBee協調器上傳的數據后,把攝像頭采集的圖像、實驗臺電源及各傳感器數據實時上傳Yeelink網絡云平臺;當監測到非工作時段或工作時段實驗室長時間無人而實驗臺或空調電源未關閉等異常情況時,向網絡云平臺發送報警信息;當收到客戶端通過云平臺下達的命令時,向ZigBee協調器發送指令,完成客戶端的遠程控制操作,如關閉實驗臺或空調電源等。當夜間監測到門磁傳感器或人體紅外傳感器異常情況時,由子線程向網絡云平臺發送報警信息[12-13]。物聯網云平臺Yeelink提供了基于HTTP協議的API接口,可以通過HttpRequest方式上傳或查詢系統的數據。

圖4 樹莓派網關流程圖
3.2 ZigBee無線網絡軟件設計
ZigBee無線網絡軟件系統基于TI公司的Z-Stack 2007協議棧完成,采用星形網絡拓撲結構。
(1) 協調器節點軟件設計。協調器是ZigBee無線網絡的維護與管理者,負責組網并實現與樹莓派和終端節點的數據通信。協調器上電后,首先進行系統初始化,通過信道掃描,找到一個空閑的信道,生成一個工作范圍內所沒有的網絡號(PAN ID),建立ZigBee 無線網絡。然后檢測是否有入網需求的合法終端節點,等待節點加入網絡。在各終端節點都加入網絡后,實時獲取終端節點采集的各項數據[14],通過串口發送給樹莓派網關;當接收到來自網關的指令時,發送給終端節點執行相應操作。協調器節點工作流程如圖5所示。

圖5 協調器工作流程圖
(2) 終端節點軟件設計。系統中包含多個 ZigBee 終端節點,每個節點根據具體功能擴展了不同的傳感器模塊或控制模塊,負責將傳感器采集到的數據上傳給協調器,或者執行協調器下達的指令,控制相應的聯動設備動作。在無線網絡通信部分,這些終端節點的程序功能是一致的,其流程圖如圖6所示。

圖6 終端節點工作流程圖
終端節點在上電后,首先進行系統初始化,然后向協調器節點發送加入網絡請求信號,在網絡建立后即可采集傳感器數據發送給協調器,采集結束進入休眠狀態以節省電量,當采集任務定時到期時自動喚醒。處在休眠狀態的終端節點一旦接收到協調器節點發送的喚醒信標,馬上觸發中斷,進入正常工作模式,根據協調器命令指示,執行規定的數據采集任務或外部設備控制任務,任務完成后重新進入休眠狀態。
3.3 客戶端軟件
本系統采用Yeelink平臺作為云端數據處理平臺[15]。首先登錄Yeelink平臺,注冊一個個人賬號,登錄后在用戶中心界面添加設備,然后在設備管理界面添加傳感器并設置相應類型,即可獲得和用戶唯一相關的API key 和設備及傳感器ID。PC和手機終端都可通過Yeelink實現遠程監控,手機APP管理界面如圖7所示。

圖7 Yeelink平臺的手機APP界面
隨著各高校實驗室的開放式運行,各種安全隱患也隨之增加。基于樹梅派和ZigBee的開放實驗室監控系統,利用樹梅派和ZigBee技術,通過實驗臺和空調電源監測、人體紅外探測和門窗磁等安防參數的檢測,可以及時發現安全隱患,實現了實驗室的全天候遠程監控,對開放實驗室的安全運行具有一定的實際應用價值。系統目前只實現了基本功能,還有許多不足之處,比如攝像頭角度單一、圖像效果也略顯拙劣等尚需完善。
[1] 郭小丹. 基于物聯網技術的高校實驗室安防監測系統[J].實驗室研究與探索,2014,33(4):281-285.
[2] 彭 龑,何 展,鐘 文,等. 基于ZigBee的實驗室安全監控系統[J].實驗室科學,2015,18(1):68-71.
[3] 李松濤,周成虎. 基于WSN的實驗室環境遠程監測系統[J].工業控制計算機,2014,27(1):77-78.
[4] Eben Upton,Gareth Halfacree. Raspberry Pi用戶指南[M].北京:人民郵電出版社,2013.
[5] 張懷柱,姚林林,沈 揚,等. 基于樹莓派的農作物低空觀測系統設計[J]. 吉林大學學報,2015,33(6):625-631.
[6] 于志強,溫志渝,謝瑛珂,等. 基于樹莓派的多參數水質檢測儀控制系統[J]. 儀表技術與傳感器,2015(6):20-23.
[7] 劉佳誕,周 琦. 使用樹莓派實現主機遠程斷電重啟[J]. 江蘇電機工程,2014,33(6):70-72.
[8] 王小強,歐陽駿,黃寧淋. ZigBee無線傳感器網絡設計與實現[M].北京:化學工業出版社,2014.
[9] Brendan Horan. Raspberry Pi樹莓派實作應用[M].北京:人民郵電出版社,2014.
[10] ZigBee Alliance.Network specification[EB/OL].http://www.zigbee.org,2015
[11] Texas Instruments. CC2530 User Guide [EB/OL]. http://www.ti.com.cn/product/cn/ cc2530 ,2015.
[12] Simon Monk.Programming the Raspberry Pi: Getting Started with Python[M].New York: McGrawhill Education,2012.
[13] Wolfram Donat. Learn Raspberry Pi Programming with Python[M].Berkeley: Apress,2014.
[14] Shahin Farahani. ZigBeeWireless Networks and Transceivers[M]. US:NewnesPress,2008.
[15] Yeelink.物聯網云平臺Yeelink[EB/OL].http://www.yeelink.net/,2016.
·名人名言·
科學實驗是科學理論的源泉,是自然科學的根本,也是工程技術的基礎。
——張文裕
Design of the Monitoring System of Open Laboratory Based on Raspberry Pi and Yeelink
GUANJingli,AIHong,CHENWenbai
(School of Automation, Beijing Information Science and Technology University, Beijing 100192, China)
In order to realize the safety of the open laboratory,a remote monitoring system of open laboratory is designed based on Raspberry Pi and Yeelink. In the laboratory ZigBee is used to build a wireless sensor network, and security parameters such as power supply of experimental bench and air conditioner, human infrared and door status are collected in real time. Raspberry Pi is used to send the environmental data from ZigBee coordinator to cloud platform of Yeelink. PC and the mobile phone users can realize remote monitoring through Yeelink. The system has some practical values for the safety management of the open laboratory.
raspberry pi; open laboratory; Yeelink; remote monitoring
2016-07-08
北京市自然科學基金資助項目(4162025);北京科技實驗大學促進高校內涵發展項目(5111623311)
關靜麗(1973-),女,吉林乾安人,碩士,高級實驗師,主要從事嵌入式系統方面的研究。
Tel.:13681516804;E-mail:jinguanjingli@163.com
TP 302
A
1006-7167(2017)03-0116-04