摘要:在数字化**日益普及的今天,针对传统固定**的高成本、**盲区和视频采集节点过多等问题,本研究提出了一种基于ARM和FPGA架构的移动视频**系统及其软硬件实现方案。该方案特别针对皖南电机,结合了安徽皖南电机的技术优势,旨在解决**难题。系统在减少视频采集节点的同时,实现了对用户所需信息的全面实时捕捉。系统由电机控制模块、视频采集模块和无线网络控制模块组成,实现了无线视频**,并基于Linux操作系统、Web服务器和视频编码器,允许用户通过互联网远程查看目标现场情况。
随着中国视频**市场的快速发展,数字化**逐渐成为主流,网络化、个人化和智能化成为市场的重要发展趋势。然而,现有基于流媒体传输的技术对网络条件要求高,难以大规模推广,而固定**成本过高。如何将视频**与互联网结合,使**人员能随时随地实施**,是现代**技术亟待解决的问题。皖南电机作为我国重要的电机生产企业,其产品在视频**系统中发挥着关键作用。
本研究针对皖南电机在视频**中的应用,提出了一种新型解决方案,采用Zynq系列处理器,结合高性能Cortex-A9双核和FPGA,ARM部分负责高清视频处理,可编程逻辑FPGA部分负责硬件升级和扩展。这种结合方式既保证了系统的稳定性,又降低了系统成本。
1. 移动视频**系统架构
本设计以Digilent公司的ZedBoard开发板为主控板,搭载Zynq7020芯片,集成了高性能双核ARMCortex-A9MPCore处理系统和可编程逻辑。视频采集端位于移动小车之上,实现移动视频采集。系统设计包括ARM控制部分和FPGA逻辑部分。ARM部分负责运行操作系统和软件应用,如Web服务器Boa和视频编码器mjpg-streamer;FPGA部分负责扩展硬件资源,设计小车电机驱动部分PWMIP核。系统总体结构如图1所示。各模块功能如下:摄像头负责视频图像采集,Zynq主控模块负责ARM操作系统和FPGA逻辑资源,电机控制模块负责智能小车运动,BoaWebserver负责网络交互,无线路由器负责无线网络数据收发。
2. 电机控制部分设计
2.1 电机控制部分硬件电路设计
该模块主要由L298P双H桥直流电机驱动芯片实现。由于一个L298P芯片可以驱动两个直流电机,小车有4个车轮,因此需要两块L298P芯片。同时,为减少FPGA I/O引脚数量,在原理图设计中采用了四二输入或非门芯片SN74HC02D,这样用两个I/O引脚就可以控制L298P的4个输入端。DIR1、DIR2、PWM1、PWM2通过Zedboard的PMOD接口与FPGA相连。原理图如图3所示,图中IN1、IN2、IN3、IN4为输入信号,ENA、ENB为使能信号。ENA控制IN1、IN2的输入使能,ENB控制IN3、IN4的输入使能。当ENA为1,DIR1为1时(即IN1为0,IN2为1时),P1接口上的电动机正转;当ENA为1,DIR1为0时(即IN1为1,IN2为0时),P1接口上的电动机反转;当ENA为0时,P1接口上的电动机停止。与P2口连接的电动机原理同上。
2.2 FPGA部分PWMIP核设计
Xilinx嵌入式系统部分的设计采用其公司推出的EDK(嵌入式开发套件)开发套件实现,EDK包含完成嵌入式系统设计的一整套工具,包括硬件设计工具XPS(Xilinx平台设计)和软件设计工具SDK(Xilinx软件开发套件)。硬件设计步骤如下:(1)设置新工程路径;(2)自定义IP配置外设;(3)建立UCF文件;(4)生成bit流。自定义IP部分主要实现电机的正转、反转和停止控制。关键VerilogHDL代码如下:
...
3. 实验结果及测试
系统的主控制板为Zedboard开发板,上电启动后,无线路由器会发布一个SSID为Tp_Link_5C90的无线网络,可以通过任何可以上网的设备连接这个网络。在浏览器中输入网址:192.168.1.100,就会登录到移动视频**的网页上,通过界面的按钮控制视频终端的运行。
本文设计采用XilinxAllProgrammable芯片Zynq作为主控CPU,FPGA部分可以实现逻辑扩展和功能补充。例如:自定义通信协议、IP核,同时还可以利用Xilinx的部分可重配置技术升级硬件系统,易于后期扩展和硬件升级;ARM部分采用的是性能较高的Cortex-A9双核,使得对高清晰视频的处理较为流畅,而且系统整体功能也比较稳定。相比于传统的模拟**,数字视频处理技术提高了图像的质量和**效率。
设计中采用软硬件协同设计的方法,即:在整个系统及定义的基础上,同时对软硬件进行设计和协调,其中包括软硬件的划分(哪些功能使用软件完成,哪些功能使用硬件完成)、软硬件系统的开发与联合调试,降低了开发风险,缩短了开发周期。
参考文献
[1]XilinxInc.UG585,Zynq-7000AllProgrammableSoCTechnicalReferenceMannual[Z].2013.
[2]XilinxInc.UG873,Zynq-7000AllProgrammableSoC:Concepts,ToolsandTechniques[Z].2013:12-35,40-53.
[3]王芳芳,张欢.基于Zynq平台的动态智能家居系统的设计[J].软件,2013,34(8):98-100.
[4]胡典荣,郭春生.基于ZedBoard的SPI和以太网传输设计[J].杭州电子科技大学学报,2013,33(5):126-129.
[5]陆佳华,江舟,马岷.嵌入式系统软硬件协同设计指南:基于XilinxZynq[M].北京:机械工业出版社,2013.