基于ARM的智能车无线视频监控系统设计
摘要:为了实现可以进行远程无线视频监控的智能车,提出一种以嵌入式技术和无线通信技术为基础的设计方案。设计一款以S5pv210处理器为核心的智能车无线视频监控系统,系统采用C/S与B/S架构相结合的工作模式,内置控制服务器和网络视频服务器。用户可以通过上位机客户端与服务器建立连接实现对系统的控制;也可以通过wifi使用智能终端利用游览器登录web服务器实现控制操作。实际应用表明,该系统的多方位的操作手段以及可以检测周围温度和有害气体的功能,可以达到在实际的探测工作中的需求。
关键词:ARM;wifi;视频监控;web服务器
移动机器人,是一个集环境感知、动态决策与规划、行为控制与执行等多功能于一体的综合系统。它集中了传感器技术、信息处理、电子工程、计算机工程、自动化控制工程以及人工智能等多学科的研究成果,代表机电一体化的最高成就,是目前科学技术发展最活跃的领域之一。随着机器人性能不断地完善,移动机器人的应用范围大为扩展,不仅在工业、农业、医疗、服务等行业中得到广泛的应用,而且在城市安全、国防和空间探测领域等有害与危险场合得到很好的应用。因此,移动机器人技术已经得到世界各国的普遍关注。
本次设计一款既具备智能终端控制也可通过上位机进行实时视频监控的视频监控小车。在本次开发的系统中,通过使用无线路由器和无线网卡组建局域网,在智能车架设mjpgstreamer网络视频服务器,同时通过无线网卡使智能车接入组建好的局域网中,既可以在PC机上使用客户端进行实时监控控制,也可以使用手机等智能终端通过无线网卡来对智能车进行控制和实时监控。
1 智能车无线视频监控系统总体设计
1.1 智能车无线视频监控系统整体框架
本次开发的系统是采用双架构结合的工作模式,内置智能车控制服务器和网络视频服务器。其中智能车内置的控制服务器,利用socket网络通信技术(UDP 协议),接受客户端发送的控制请求,并执行相应操作,如智能车的行驶命令、声频播放命令、舵机转动命令、温度获取命令等操作。而智能车内置 mjpgstreamer网络视频服务器,它从监控摄像头获取视频流,并利用网络(TCP协议)将视频流以JPEG格式发送到客户端。另外内置网页服务器 (web server),用户可以通过浏览器直接访问页面服务器,并获取视频流,从而达到视频实时监控。又由于网络视频服务器同时和智能车控制服务器建立了连接,所以也可以使用智能终端通过游览器间接访问控制智能车控制服务器。智能车系统整体框架图如图1(a)所示。
![](../img/eep/emb/emb-52291vfxvtpjxp5e.jpg)
1.2 智能车无线视频监控系统硬件总体设计
智能车视频监控系统的无线控制结构如图2所示,本次方案由wifi通信系统、下位机控制系统、上位机控制系统3部分组成。Wi—Fi通信系统实现上位机客户端系统与下位机ARM控制系统的数据传输。上位机客户端系统通过wifi模块接受下位机ARM控制系统发送数据进行存储、分析、提取以及显示,同时也可以对下位机发送控制命令。同样下位机ARM控制系统也可以通过wifi模块收到上位机系统发送的命令并进行相应的操作,将传感器和摄像头采集的数据进行整合和发送。
![](../img/eep/emb/emb-52292qnn3fj0gcfk.jpg)
由图1(b)可知下位机主要组成部分,智能车视频监控系统以天嵌科技Cortex-A8 X210开发板作为开发平台,其处理器采用的三星S5pv210芯片,S5PV210采用了ARMCortexTM-A8内核,ARM V7指令集,主频可达1 GHZ,64/32位内部总线结构,32/32kB的数据/指令一级缓存,512 kB的二级缓存,可以实现2000DMIPS(每秒运算20亿条指令集)的高性能运算能力。其中wifi模块完成主要完成下位机与上位机的组网和远程控制功能;同时开发板上还配有检测温度和有害气体的传感器,因此可以对探测环境进行危险评估及预警。
2 智能车无线视频监控系统各功能模块设计及实现
2.1 智能车视频监控系统软件架构设计
智能车视频监控系统采用的Linux开发平台,它是一个多用户和多任务操作系统,具有良好的的开放性,遵循世界标准规范,特别是遵循开放系统的互连国际标准。具有完善的内置网络linux在通信和网络功能方面均优于其他操作系统。系统图像采集是通过ARM—Linux调度V4L2驱动程序来进行视频捕获。 V4L2是linux影像系统与嵌入式影像的基础,是linux内核里支持影像设备的一组API,linux在多媒体上的应用是目前非常热门的研究领域,其中最关键的技术就是Linux的V4L2。传统的基于ARM的远程视频监控大部分通过集成在CPU内部的MFC模块对V4L2接口采集的数据进行硬件压缩和解码,硬件解码需要硬件有硬件解码模块、相关的驱动配合、合适的播放软件以及对播放软件正确的设置,缺
- Linux嵌入式系统开发平台选型探讨(11-09)
- 基于ARM体系的嵌入式系统BSP的程序设计方案(04-11)
- 在Ubuntu上建立Arm Linux 开发环境(04-23)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- SQLite嵌入式数据库系统的研究与实现(02-20)
- 革新2410D开发板试用手记(04-21)