关静丽, 艾 红, 陈雯柏
(北京信息科技大学 自动化学院,北京 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