基于树莓派与微信的室内物联网安防系统
- 格式:pdf
- 大小:865.54 KB
- 文档页数:4
2017年第36卷第11期 传感器与微系统(Transducer and Microsystem Technologies) 109
DOI:10.I3873/J.1000--9787(2017)11-0109-03
基于树莓派与微信的室内物联网安防系统
周炳贵,刘庆楷,邱桔
(暨南大学电气信息学院。广东珠海519070)
摘 要:为实现对室内环境的安防监控,利用传感器和摄像头对室内环境进行数据采集,并通过树莓派将 数据上传至服务器或数据库中,供用户通过微信公众平台查看。当室内环境出现异常情况时,微信公众平 台自动向用户发送报警信息,并根据时间间隔和异常情况是否得到处理确定是否重新发送报警信息。测 试结果表明:系统工作可靠,可移植性高,对室内安防具有重要意义。 关键词:物联网技术;室内安防监控;传感器阵列;树莓派;微信 ’ 中图分类号:TP277 文献标识码:A 文章编号:10004787(2017)11-0109-03
Indoor IOT security system based on Raspberry
Pi and WeChat
ZHOU Bing—gui,LIU Qing-kai,QIU Ju (College of Electrical and Information,Jinan University,Zhuhm 519070,China)
Abstract:Based on Raspberry Pi and WeChat,an interior IOT security system is designed by using sensors array and a camera to monitor the indoor environment.The sensors array and camera are used for data acquisition from indoor environment and Raspberry Pi for uploading collected data to a server or database for users to view through WeChat.Whenever an abnormal situation occurs in indoor environment,WeChat public platform automatically sends alarm information to users.It also determines whether or not to repeat sending alarm information depended on the time interval and whether abnormal conditions are processed.This system is verified to be reliable and portable,which is of great important for indoor security. Key words:Intemet of things(1OT)technology;indoor security monitoring;sensors array;Raspberry Pi;We- Chat
0引 言 室内环境的安防问题一直受到重视。随着计算机、通
信和微电子技术的飞速发展和人民生活水平的提高,对于
室内环境的安全性与可管理性也有了更高的要求…。视
频监控作为最传统的室内安防手段,在使用中暴露出来的
缺点有:缺乏对环境参数如温度,光照强度等的监控,工程
量大,成本高,需要人工关注而无法自动报警等。随着物联 网、传感器技术、现代通信技术的不断发展,室内安防也得 到了飞跃性的发展。嵌人式远程监控安防系统出现并一直 向着低功耗、多功能、高性能方向发展 J。为了实现监控 的专业化、自动化,降低成本以及提高安防系统的质量,本 文进行了以下尝试:以树莓派为主机,使用传感器阵列与摄 像头收集环境参数,以微信作为用户终端,构建了一套可操 作性强且成本较低的室内安防系统。 1系统结构 如图1所示,系统由传感器阵列、摄像头、树莓派3B、
收稿日期:2017-09-01 服务器、微信服务器、微信公众平台6个部分组成。树莓派 作为物联网服务器 I4 J,一方面负责与传感器阵列和摄像
头连接,采集环境数据与拍摄环境图像,另一方面将数据与
图像上传至服务器。当用户通过微信公众平台发起菜单事
件请求,微信服务器响应这一事件,根据事件请求的类型,
或是访问服务器的数据库以读取环境数据,或是要求服务 器上传最新的图像到微信服务器,然后将数据转发到用户
的微信公众平台。此外,对服务器设置定时任务,使得其每
隔一段时间便可以自动检查环境数据,出现危险情况时及
时通过微信公众平台的模板消息功能向用户发出警报。服 务器使用Linux虚拟主机,价格较为低廉。
物匮 蜈拍摄图像 数据上传 数据返回 数据返回 器匝藿 函 二 巫甄 2医 萋 t采集数据 访问服务器 菜单事件请求 器
一 图1
系统结构框图 11O 传感器与微系统 第36卷
2数据采集 采集的数据分为两种:传感器采集的数值型数据与摄
像头拍摄的图像数据。某些室内环境对环境参数的要求很
高,尤其存放重要电子设备的场所,环境必须受控,所以,有
必要在监控系统中加入检测环境参数传感器 。传感器 可以选用集成有微处理器的传感器,加装无线串口模块实
现与树莓派的通信。采用无线串口模块可以实现在面积较
大的室内环境中布置较多的传感器而无需考虑布线问题。
本文安防系统使用了5种数值型传感器,分别为光敏传感
器、温湿度传感器、烟雾传感器、火焰传感器和人体感应传
感器。摄像头一般仅需安装一个,通过USB线直接与树莓 派相连即可,也可以通过USB延长线在其他位置安装。软
件方面采用的是motion运动捕获软件 ,7 J,当从摄像头画
面中捕获到运动时,软件会拍摄图像并录制视频记录整个
运动过程。
3数据处理
3.1数值型数据
3.1.1数据接收与辨识
传感器通过无线串口向树莓派发送数据,树莓派将判
断串口发来的数据是否正确(有无丢包或错乱等),并判断
数据由哪一只传感器发来,将认定为正确的各传感器数据
上传至服务器MySQL数据库 中。
采用Python程序识别数据长度以及数据中的标识字
符(加在传感器数值的前面,与有效数据共同发送),以判
断数据有无丢包或错乱,同时确定数据的上传通道。如
表l所示为传感器与相应串口数据格式。相较于利用串口
号固定各传感器发送数据的上传通道,采用Python脚本判
断数据格式确定数据的上传通道更为可靠,因为在故障发
生后,失电、再上电,或者插拔无线串口,均可能改变系统识
别的串口号,导致数据上传位置错误,甚至造成脚本运行错
误,系统无法正常运行。
表1传感器与相应串口数据格式
传感器 串口数据格式 光敏传感器 火焰传感器 人体感应传感器 温湿度传感器 烟雾传感器
注:各‘X’均代表一位数字。
3.1.2数据上传服务器数据库
编写Python脚本将辨识过的数据上传至数据库中指
定的表内 ,并加上时间戳,以便确认数据的时效性。如
表2所示为数据与数据库相应表名及属性。 表2数据与数据库相应表名及属性
3.1.3数值型数据上传程序流程 系统将数据辨识和上传功能结合在一个Python程序
中。读取串口数据使用Python提供的pyserial模块,上传
数据库使用Python提供的MySQLdb模块。程序的流程如
图2所示,图中Ⅳ为最多被使用的串口数,即传感器数,文
中N=5
图2数值型数据处理与上传程序流程 3.2 图像数据 系统的图像数据包括两类,摄像头拍摄的图像和摄像
头摄录的视频。出于成本考虑,本文安防系统所用的服务
器采用低端的虚拟主机,处理速度慢、带宽小,所以图像数
据处理时仅将图像通过POST方法 上传到服务器,同时
新图像将覆盖旧图像。视频数据则仅存储本地,可以访问
树莓派的存储卡查看。采用POST方法上传图像可避免大 的数据流,对数据库读写造成过大的压力。上传到服务器
而不是直接调用微信公众平台的临时素材接口是因为这一
接口有5000次/天的调用限制 ,为了实现更好的监控效 果,刷新频率应当足够高,5000次/天的刷新频率远远不能 满足要求。
要用Python实现POST方法上传图像,需要服务器运 行服务器端(Server)程序,树莓派运行客户端(Client)程 序。服务器端脚本使用Python提供Cgi模块和BaseHT— TPRequestHandler模块。客户端脚本使用Pyt
hon提供的 第1l期 炳贵,等:基于树莓派与微信的室内物联网安防系统
Requests模块。程序流程如 3。
N
像 传功能服务器 膊流 像f.1' ̄-JJ:fi ̄徉户端程序流 图3图像上传程序流程 4数据管理
rfj l『图像在 端和本地均仅一张,按时间顺序由新的 覆盖将旧的,所以不需要进行特别的管理。 视频一般不允许轻易删除,Ⅱ其只保存在本地,不会对
服务器造成压力,所以也不需要进行特别的管理,在必要时 人为删除即可 . 考虑到服务器性能、存储空『日J的限制、查询数据库的流
畅度以及过期数据的重要性不高等原因,通过开肩MySQL 数据库的事件调度器设置定时事件0 ,对3天前的数据在
每天6:00进行定时清除。
5微信公众平台开发 5.1 功能菜单
功能菜单包含3个主菜 :运动捕获、环境信息、其他 数据,其中其他数据丰菜单 卜还有3个子菜单:人体感应、
烟雾感应、火焰感应。功能菜单通过调用微信的自定义菜 单接口产牛 .. 按下运动捕获荣 ,微信服务器将返回安防系统检测
到的上一次运动发生时的图像,旧时附带时间。 按下环境信息菜单,做信服务器将返回室内光线强度
与温湿度信息,同时附带时问。 按下其他数据下的子菜单[1『以实现烟雾传感器、火焰
传感器、人体感应传感器数据奄询,确认室内环境安全。
5.2警报推送 任服务器的指定路径下存储着能够实现警报推送功能
的PHP文件,设置crontab定时任务每隔5 S访问该文件一
次,陔文件将访问数据库查询当前最新的烟雾传感器、人体 感应传感器和火焰传感器的数据,如果符合报警条件,将会
凋H{微信的模板消息接口,向指定做信账号发送警报消息。 为避免满足报警条件时频繁的警报信息骚扰,在发出警报 的同时将向目录下的.jSOil文竹:巾写入当前时间,保证当时
问间隔到l nli rl以 寸才会发送第二次警报消息。
实现警报推送功能的PHP程序的流程如图4。 6测试结果 5为系统测试运彳『情况。系统安装在实验室中进行 :::= ≤
J发送模板消息I
图4警报推送功能程序流程 测试,对室内环境进行VY,fi量,模拟了触发人体警报、烟雾
警报和火焰警报的条件,经过测试,证明系统工作可靠,测
量数据准确,发送警报即时,对室内安防有重要意义。
人体警报 ^№!!・ 光} 强 ̄:2731rn 目阊:201 7-0610t9 44 22 t 温度29 O℃ 湿度:65 0%RH 时问:201 706・10 19:46 08 蟠霉篱报 人体蟪应321 日馏 一t— B,li.1:2017 061019 51 16 攫示-有^’ ^ 橱雾感应135 时 。’0 船。] 火焰警报t.Y I ~…“ ★ gJ丑0  ̄ll',tt7’。。 时阊:2O1 7 05 10 1 9:49:29 提示有火- I 毫. 运动捕较 坪墟信患 其他数据 运动捕获 I 境信息 翼他数懈 图5系统测试情况 7结束语 基于树莓派与微信的室内物联网安防系统利用了树莓 派微型计算机成本低廉、工作可靠的特点,配合微信服务的 稳定性、及时性,实现了室内安防的基本功能,同时保证了 数据的隐私性与安全性。系统成本较低、可移植性高,可以 根据具体使用的室内环境条件增加硬件,实现更好的服务, 对保护人员与财产安全有着重要的意义,具有广阔的市场 前景。 参考文献: [1] 杨围斌,李秋红。王太宏.基于WSNs和3G网络的无线远程 安防监控系统[J].传感器与微系统,2012,31(12): 76-78,82. [2] 林1毛屁,彭诗瑶基于多传感器的高性能监控系统设计[J]. 传感器‘鳓毁系统,2014,33(2):119-122,126. [3] 于志强,温志渝,谢瑛珂,等.基于树莓派的多参数水质检测 仪控制系统f J].仪表技术与传感器,2015(6):20-23,27. [4] 关静丽,艾红,陈雯柏.基于树莓派和Yeelink的开放实验 窀监控系统没计[J].实验室研究与探索,2017(3): ll6—1l9. [5 郭苎,郭晓冉,毛向东,等.基于GSM和WSNs的实验室温 湿度采集报警系统设计[J].传感器与微系统,2017,36(8): 92-94 (下转第122页)