基于ARM的智能车无线视频监控系统设计

发布者:cocolang最新更新时间:2016-04-13 来源: 21ic关键字:ARM  wifi  视频监控  web服务器 手机看文章 扫描二维码
随时随地手机看文章
移动机器人,是一个集环境感知、动态决策与规划、行为控制与执行等多功能于一体的综合系统。它集中了传感器技术、信息处理、电子工程、计算机工程、自动化控制工程以及人工智能等多学科的研究成果,代表机电一体化的最高成就,是目前科学技术发展最活跃的领域之一。随着机器人性能不断地完善,移动机器人的应用范围大为扩展,不仅在工业、农业、医疗、服务等行业中得到广泛的应用,而且在城市安全、国防和空间探测领域等有害与危险场合得到很好的应用。因此,移动机器人技术已经得到世界各国的普遍关注。

本次设计一款既具备智能终端控制也可通过上位机进行实时视频监控的视频监控小车。在本次开发的系统中,通过使用无线路由器和无线网卡组建局域网,在智能车架设mjpgstreamer网络视频服务器,同时通过无线网卡使智能车接入组建好的局域网中,既可以在PC机上使用客户端进行实时监控控制,也可以使用手机等智能终端通过无线网卡来对智能车进行控制和实时监控。

1 智能车无线视频监控系统总体设计

1.1 智能车无线视频监控系统整体框架

本次开发的系统是采用双架构结合的工作模式,内置智能车控制服务器和网络视频服务器。其中智能车内置的控制服务器,利用socket网络通信技术(UDP 协议),接受客户端发送的控制请求,并执行相应操作,如智能车的行驶命令、声频播放命令、舵机转动命令、温度获取命令等操作。而智能车内置 mjpgstreamer网络视频服务器,它从监控摄像头获取视频流,并利用网络(TCP协议)将视频流以JPEG格式发送到客户端。另外内置网页服务器 (web server),用户可以通过浏览器直接访问页面服务器,并获取视频流,从而达到视频实时监控。又由于网络视频服务器同时和智能车控制服务器建立了连接,所以也可以使用智能终端通过游览器间接访问控制智能车控制服务器。智能车系统整体框架图如图1(a)所示。

a.jpg

1.2 智能车无线视频监控系统硬件总体设计

智能车视频监控系统的无线控制结构如图2所示,本次方案由wifi通信系统、下位机控制系统、上位机控制系统3部分组成。Wi—Fi通信系统实现上位机客户端系统与下位机ARM控制系统的数据传输。上位机客户端系统通过wifi模块接受下位机ARM控制系统发送数据进行存储、分析、提取以及显示,同时也可以对下位机发送控制命令。同样下位机ARM控制系统也可以通过wifi模块收到上位机系统发送的命令并进行相应的操作,将传感器和摄像头采集的数据进行整合和发送。

b.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接口采集的数据进行硬件压缩和解码,硬件解码需要硬件有硬件解码模块、相关的驱动配合、合适的播放软件以及对播放软件正确的设置,缺一而不能开启硬件解码功能。由于以上问题,所以本文采用一款开源软件mjpeg—stream网络视频服务器代替MFC。mjpg_streamer是一款开源网络视频服务器,需要很少的CPU和内存资源就可以工作,大部分编码工作都是摄像头完成的,非常适合嵌入式环境使用。

2.1.1 网络视频服务器mjpeg—strearm的移植

从v4l2接口采集的数据的压缩与解码我们选择了网络视频服务器mjpeg—stream,我之所以不选择集成在cpu内部的MFC模块还有一个原因是因为本次设计的智能车远程无线视频监控系统要支持远程的web界面的访问操作,如果选择MFC就要移植类似Boa等的嵌入式web服务器才能进行远程访问同 MFC模块采集的视频流还需要在pc端采用开源的软件和函数库才能实现视频的播放,而mjpeg-stream网络视频服务器却可以省掉这些步骤,因为 mjpeg—stream支持实现远程的web访问。这样就降低了开发的工作量和复杂性,其下为mjpeg —stream移植编译。图3为mjpeg—stream对数据采集与发送的流程。

c.jpg

 

d.jpg

2.1.2 智能车视频监控系统数据接收与显示模块的设计

由图2(a)和图3可知mjpeg—stream网络视频服务器内部有两个服务器,http服务器和视频帧抓取服务器。http服务器将视频帧抓取服务器采集的图像帧以Http协议数据帧的形式发给客户端。所以要完成的编程工作有两部分:一是从http服务器读取Http协议数据帧 (Http协议数据帧由http协议相关的头信息和图像数据帧(jpeg格式)),二是将Http协议数据帧中的图像数据帧提取出来。本文的GUI界面采用Qt进行设计实现C/S、B/S架构的客户端和web客户端。智能车监控系统视屏界面的显示有两个部分组成:一是通过Tcp协议将传输的数据接收 (socket编程实现),二是客户端的视频图像的显示。客户端软件的设计流程图如图4所示。

e.jpg

由于我们通过编程把Http协议数据帧中的图像数据帧提取了出来并显示在客户端从而实现了视频实时监控,所以可以在主函数再起一个线程完成图像的抓取功能即拍照功能。这样在智能车对未知空间的探索进行分析提供了数据依据。

2.2 wifi功能模块的设计

本次开发的智能车无线视频监控系统的另一核心就是wifi模块的开发。构成无线网络的最基本的两个要素是:一是一台AP(Access Point),二是无线网卡。以上两点便可以构成一个简单的无线网络。因为我们要通过智能终端和pc机上的客户端对智能车远程进行控制,所以如何将智能车变成一个可移动的wifi热点是我们本次设计的重点。

嵌入式开发的一个核心的内容是在有限的硬件资源上如何使用各种开源软件完成我们需要的功能。所以将智能车变成可移动的wifi热点需要以下步骤:

1)下载安装rtl8188eu无线芯片的驱动;2)使用hostapd开源软件,使无线网卡切换为master模式,模拟AP(路由器)功能;3)使用dnsmasq开源软件动态分配IP给客户端在开发板上主要步骤实现过程如下所示:

#insmod/home/wifi/8188eu.ko

# ifconfig wlan0 192.168.137.1(启用无线网卡)

# ./hostapd rtl_hostapd_2G.conf-B(模拟AP功能)

#./dnsmasq—C dnsmasq.conf(开启DNS和DHCP功能)

通过对以上开源软件的移植开发便可以将智能车生成一个可移动的wifi热点,通过手机等智能终端便可以对智能车无线视频监控系统进行控制。图5展示了连网成功后智能车无线视频监控系统的工作状态。

f.jpg

3 结论

本文实现了以s5pv210为核心处理的智能车无线视频监控系统。本系统既可以使用智能终端通过wifi对智能车无线视频监控系统的控制,也可以通过有线连接的方式进行控制。智能车即可以实时的视频监控和拍照也可以通过开发板的上温度传感器和有害气体传感器进行周围环境的探测,因此可以在城市安全、国防和空间探测领域等有害与危险场合得到一定的应用。对于今后智能车的开发也有一定研究价值。

关键字:ARM  wifi  视频监控  web服务器 引用地址:基于ARM的智能车无线视频监控系统设计

上一篇:基于STM32F107的图像采集传输系统设计
下一篇:STM32官方固件库简析

推荐阅读最新更新时间:2024-03-16 14:50

易拉罐增强WiFi信号的方法
笔记本实验 日前,猫扑论坛上一则网帖《易拉罐自制WiFi信号放大器~~技术宅拯救世界啊!》被火速传播,网帖称,无线路由器套上一个易拉罐版的山寨信号放大器后,信号强度会增强。 “技术宅伤不起!”“强大网友有文化!”楼下跟帖者很多,但多数网友还是抱着怀疑的态度。昨日,本报好奇实验室进行了这个实验,实验证明:路由器套上易拉罐后,无论是笔记本还是手机,信号都得到加强。 潇湘晨报记者文乃斐长沙报道 实验地点:高桥大市场附近一小区 实验时间:2011年11月9日下午 实验人员:技术控杨先生 实验工具:一到两个易拉罐,一把刀,一把剪刀,一个无线路由器,一个带WiFi信号的手机,一台有无线网络的笔记本电脑 易拉罐怎么
[模拟电子]
易拉罐增强<font color='red'>WiFi</font>信号的方法
Chirp:以Arm 为基础的技术将有助于发展
——翻译自embedded-computing Chirp宣布支持Arm ®Cortex-A和基于Cortex-M体系结构,提高基于Arm®的任何具有音频功能的产品的设备到设备的连接。 Chirp的Arm SDK得益于Arm Cortex-M4和Cortex-M7处理器的DSP功能,设计了一种可靠的数据传输解决方案,无需占用大量资源,帮助连接和应用逻辑驻留在一个Arm 核心上。 SDK: 带有一个简单的API的静态库(大约740KiB),用于通过Chirp信号发送和接收数据; 使用其他层(包括加密、特定于应用程序的协议或端到端传输/QoS,如果需要的话可以放在SDK顶部)对数据超音OSI栈的物理和数据链路层进行
[物联网]
ARM学习1-LED流水灯
通过近段时间的不懈努力终于找到一个可以用来编译ARM 的Keil ,再利用Protuse软件进行模拟仿真。 开始了我的ARM学习之路 本实例是我学习ARM的第一个实例,仿真软件是利用的是Porteus,编译软件用的是Keil的RealView.MDK.3.2。 本程序是花样流水。一共有三个花样,可以通过按键选择不同的花样。通过此程序学习了ARM GPIO的处理和按键处理。 原理图: 程序代码: /*********************************************/ /* */ /* led.c: 花样流水
[单片机]
<font color='red'>ARM</font>学习1-LED流水灯
ARM启动中的分散加载
分散加载作用: 可以将代码放入不同的存储空间。 5个G的计算机,电子专业书籍分享。 链接:https://pan.baidu.com/s/1y8BnUlGmiJMujLlTyrhznA 提取码:j9na 1.基本概念 了解分散加载文件之前,首先需要了解Code、RO-Data、RW-Data、ZI-Data。 Code:程序代码 RO-Data:程序中定义的常量以及const型数据 RW-Data:已经初始化的静态变量,变量有初始值 ZI-Data:没有初始化的静态变量,变量没有初始值 #define num 10 /*RO-Data*/ char const flage = 5;
[单片机]
基于ARM的实时语音识别系统在家庭监护机器人的实现
语音是人类最常用的交流方式,也是人类和计算机交流最渴望的方式。因此用语音同计算机交流也成为了最近研究的热点,计算机对语音的理解是计算机科学中的一个引人人胜的、富有挑战性的课题。 进入90年代,随着多媒体时代的来临,迫切要求语音识别系统从实验室走向实用。许多发达国家如美国、日本、韩国以及IBM、Apple、AT&T、NTT等著名公司都为语音识别系统的实用化开发研究投以巨资。IBM公司于1997年开发出汉语ViaVoice语音识别系统,次年又开发出可以识别上海话、广东话和四川话等地方口音的语音识别系统ViaVoice’98。目前市场上已经出现了语音识别电话、语音识别记事本等产品,如美国VPTC公司的Voice Organizer
[单片机]
基于<font color='red'>ARM</font>的实时语音识别系统在家庭监护机器人的实现
ARM与嵌入式linux入门建议
由于很多人总问这个问题,所以这里做一个总结文档供大家参考。这里必须先说明,以下的步骤都是针对Linux系统的,并不面向WinCE。也许你会注意到,现在做嵌入式的人中,做linux研究的人远比做WinCE的人多,很多产家提供的资料也是以linux为主。我一直很难理解,其实WinCE的界面比linux的界面好看多了,使用起来也很方便,更为重要的是,WinCE的开发和Windows下的开发基本一样,学起来简单得多,但是学linux或者使用linux做嵌入式的人就是远比WinCE多。在和很多工作的人交流时我了解到,他们公司从没考虑使用WinCE,因为成本高,都是使用linux进行开发。我读研究生的的实验室中也没有使用WinCE的,大都研究l
[单片机]
浅析视频监控管理软件的开放化发展趋势
  本文介绍了监控管理软件的发展历程,面临的问题,提出了当今监控管理平台软件将从单一的监控平台管理管理向高度集成的大安防、高度开放的监控大联网的管理平台发展,监控软件多媒体化的观点,并结合IMOS IP多媒体应用平台对监控管理平台的发展趋势作了分析和展望。 监控管理软件的发展历程    视频监控管理软件的雏形出现于上世纪90年代末。1999年开始,随着硬件视频压缩卡的推出,以及基于硬件视频压缩卡的通用DVR数字硬盘录像机软件的开发成功,安装了硬盘录像机软件的PC式DVR开始在银行柜员机录像改造领域中进行应用,推动了视频监控从模拟监控过渡到数字监控时代。在这一阶段,监控管理平台软件并没有引起厂商和用户的重视,只是DVR/DV
[安防电子]
浅析<font color='red'>视频监控</font>管理软件的开放化发展趋势
ARM发布静态存储控制器,提供灵活全面的存储接口
ARM公司日前发布了一系列全新的PrimeCell AMBA 3 AXI静态存储控制器,以此全面支持新的和即将出现存储设备,包括NAND闪存、 NOR闪存, SRAM和高性能仿静态RAM(CellularRAM)设备。 PrimeCell AXI静态存储控制器向设计师提供了单一的IP解决方案,用于使用了CellularRAM和闪存的系统。结合了现有的支持DDR和移动DDR的PrimeCell AXI动态存储控制器,对DDR2的支持也在开发过程中,ARM公司目前已经可以向广泛的应用提供一个完整的、高性能的存储控制器解决方案。 PrimeCell AXI静态存储控制器是可配置的,在保持低成本和PrimeCells预先验证低风险的同
[新品]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved