基于树莓派的移动监控系统
2017-09-23刘文浩刘一钟
刘文浩+刘一钟
摘 要:基于树莓派的移动监控系统依靠局域网,通过WIFI与手机连接,使图像信息与指令可以相互传输。通过智能手机对机器人下达指令,以及接收来自机器人的图像信息。该机器人既可以用于家庭小范围监控,又可以广泛用于机器人行业中。相比传统的监控设备而言,不用铺设线路,设备安装简单,可移动、可固定,灵活性高,监控方式多样。
关键词:物联网;图像回传;Android开发;
由西北民族大学电气工程学院"双E"项目资助(项目编号:20161826)
0 引言
随着网络和图像采集技术的不断发展与成熟,网络视频监控系统在公共安防、家庭防盗、危险环境远程监控等领域发挥着越来越重要的作用。传统的视频监控大多采用有线网络,包括前端摄像机、传输线缆、视频监控平台,导致网络布线复杂、造价高,而免付费的无线网络传输数据量少,不适合传输图像信号,而且监控范围有限,检修更加困难。
传统意义的监控主要存在以下不足:需配备大量的人力、物力现场布线复杂,设备灵活性差、工作效率低下,人员往返频繁、现场情况反馈不够及时准确,指挥人员难于快速决策、设备费用高,维修不便、无法直接上传到管理人员办公桌电脑荧屏上,更不可能上传到管理人员手机上。
本文设计的移动监控系统只需要搭建局域网,就可以使用,避免了传统的监控系统中的铺设线路问题,从而减少了该设备的使用成本。机器人可以灵活地移动,这就使我们的监控的地点不仅仅固定地监控一处位置,极大地扩大了监控范围。当今社会智能手机已经实现了基本的普及,几乎人手一部智能手机,而且手机市场中的大部分依然是安卓手机。我们的机器人通过手机来控制,操作简单易懂,更加适用广大消费者。
1、移动监控系统的系统方案以及组成结构
1.1系统方案
该项目以选用了Raspberry Pi(树莓派)板卡为核心控制器,通过计算机网络中最常用的通信协议—TCP传输协议的开发流程和框架,通过无线路由器进行视频流的访问和小车进行驱动,也就是向支持wifi的上位机终端实时传送图像信息,远处的监控人员根据小车采集的图像信息,了解监控现场的实时信息,并可以通过APP控制小车的前进、后退、转向等运动,进一步掌握监控人员想要获取的信息。系统方案如图1所示.
1.2组成结构
硬件设计主要由四部分构成,电机驱动模块、树莓派3摄像头 Camera V2、DXW90舵机、树莓派主板。系统整体结构框图如下图2所示。
从图中,树莓派主板控制了电机驱动模块、Camera V2摄像头、DXW90舵机三个模块。摄像头通过自身的小插片与树莓派表面上的插槽直接连接。舵机和电机驱动模块以及树莓派主板直接通过IO口连接。
2、移动监控系统的硬件CPU选择
树莓派是为学习计算机编程而设计的,其系统基于Linux。树莓派具有普通PC机的所有基本功能,能够满足项目的需求。树莓派三代带无线网卡,并且配置简单,传输速度快。树莓派内拥有集成的摄像头接口,便于与摄像头连接。考虑到整个系统的设计环境、设计所需时间和学习价值,最终选择树莓派主板作为本次设计的硬件CPU。
3、移动监控系统的软件设计
本文设计的移动监控系统是通过手机APP来控制机器人的,手机APP的通信原理是用网络传输中常见的Socket通信。手机与机器人连入一个局域网内,这时路由器会分配出IP地址给手机与机器人。IP地址是随机分配的,我们可以通过预先设置进行IP地址,将IP地址固定地分配给机器人与手机端。这样就为我们随后的通信创造了条件。机器人的主控树莓派先运行Socket监听端口的程序,监听来自8080端口的信息。随后手機APP发送指令,该信息通过路由器完成中转,使信息根据机器人的IP地址定向发送到机器人的8080端口,使机器人接收到信息,来完成指令的实现,该设计的系统网络图如图3所示。
4、基于MJPG-Streamer和Android的图像回传功能的实现原理
本文中的移动监控系统是利用MJPG-Streamer技术实现的。MJPG-Streamer是用于从摄像头采集图像,把它们以流的形式通过基于IP的网络传输到浏览器,这样就可以在电脑等其他拥有浏览器的移动端的平台上观看机器人捕获的视频。为了能使视频能够在手机端上进行观看,APP设计上采用了WebView控件 。Android WebView在Android平台上是一个特殊的View, 他能用来显示网页,这个类可以被用来在你的app中仅仅显示一张在线的网页,还可以用来开发浏览器。WebView内部实现是采用渲染引擎来展示View的内容,本文中的APP利用此空间来显示视频内容,更为方便快捷。
结语
本文介绍通过Socket与MJPG-Streamer技术实现的监控系统,并在嵌入式平台上成功实现,验证了设计合理性。本项目采用包含了人和物以及物与物之间通信的物联网的设计思想,对于物联网开发具有一定的参考意义。项目中传输部分仍需进一步完善,从而提高数据传输速度,甚至通过将视频流通过服务器作为中转站,来使设备可通过外网传输。通过不断地改进,来使图像接收速度更加快,从而使图像回传技术更加成熟。
参考文献:
[1]李扬.WiFi技术原理及应用[J].科技信息,2010,24(2):59-61.
[2]潘凯华,邹天思.PHP开发实战宝典[M].北京:清华大学出版社,2010.
[3]柯博文.树莓派实战指南[M].北京:清华大学出版社,2015.
[4]Matt Richardson / Shawn Wallace . 爱上Raspberry Pi 科学出版社
[5]余志龙 . Google Android SDK开发范例大全 人民出版社