基于OMAP3525多媒体平台的飞控系统设计

2012-02-26 05:40李文进高洪雨
兵器装备工程学报 2012年3期
关键词:寄存器控系统数据流

李文进,高洪雨

(国家电网技术学院,山东 泰安 271000)

电力系统高压输送电线路的巡检,多采用人工方式,难以发现绝缘子等设备的老化现象,效率比较低。随着航空技术尤其是综合技术的发展,小型无人驾驶直升机的控制核心向高精度和小型化发展。传统的遥控直升机自稳定性不够好,由于陀螺效应与主桨下洗气流的影响,直升机起飞时会向左或其他地方偏移,悬停时机身也会有较大的摆动。这样就会使拍摄到得视频和图片由于抖动而不够清晰。为了解决上述问题,笔者开发了基于双核OMAP3525多媒体平台的飞控系统,对绝缘子和导线等设备拍摄视频或者图片实时传输到地面基站,以便工作人员对设备状态进行精确监测。该系统通过整合高精度的GPS接收机和独立环境的高速惯性导航传感器,可精确可靠的控制飞机,能够实现精确的定点悬停,以及任意高度和空载状态下的匀速巡航控制,为直升机提供了卓越的自动稳定悬停及飞行性能。本系统采用了德州仪器公司的开放式多媒体应用平台OMAP(open multimedia applications platform)体系结构,其采用一种独特的双核结构,把高性能低功耗的DSP核与控制性能强的ARM微处理器结合起来,成为一颗高度整合性SoC[1]。它是一种开放式的、可编程的基于DSP的体系结构。由于OMAP先进独特的结构,其芯片运算处理能力强、功耗低,在无线传输及数据处理方面具有明显优势。

1 OMAP3525的硬件结构

OMAP硬件平台采用双核技术提高操作系统的效率和优化代码的执行。OMAP3525是一个高度集成的硬件和软件应用平台,它是为实现下一代嵌入式设备的应用而设计的。它具有独特的双核结构,一个具有弹性架构的600 MHz Cortex-A8内核的RISC处理器和一个实现数据处理功能的高性能、低功耗的C64x+DSP 核[2]。

1.1 Cortex-A8 内核

针对强调功耗的应用,Cortex-A8采用了一个优化的装载/存储流水线,顺序执行,同步执行的超标量处理器内核,其拥有13级主流水线,10级NEON多媒体流水线,可以提供2 DMIPS/MHZ的性能;优化的L1缓存,可以提高访存储问速度,并降低功耗;专用的L2缓存,可以把缓存当作标准的RAM进行处理,而缓存大小可以灵活配置,缓存的访问延迟也可以编程控制。在技术方面,使用了带来更高性能、功耗效率和代码密度的Thumb®-2技术[3]。首次采用了强大的NEONTM信号处理扩展集,包括Jazelle®-RCT Java加速技术,对实时(JIT)和动态调适编译(DAC)提供最优化,实现低功耗管理的IEM功能,同时减少内存占用空间高达3倍。

1.2 C64x+DSP 内核

C64x+DSP内核的主要特点是:有1个64×8位缓存队列,2个17×17位乘法器,1个40位ALU,1个16位ALU,1个40位桶形移位器和4个40位加法器[4]。另外还有12条独立的总线,即:3条数据读总线,2条数据写总线,5条数据地址总线,1条程序读取总线和1条程序地址总线,以及用户可以配置的IDLE域。基于C64x+核开发的DSP芯片,所有部件都以交换网络(SCR)为核心连接起来。SCR上的部件分为2类:Master和Slave。Master包括 Core、EDMA 以及串行高速 IO(sRIO),EMAC等外设。Master可以直接通过SCR发起到Slave的数据传输。Slave包括每一个Core的内存,DDR2外存以及其他不能直接发起数据传输的外设,Slave之间的数据传输,需要通过DMA协助完成。Serial RapidIO(SRIO)与解串器(SERDES)接口支持高效互连通信,可实现高效的与 Cortex-A8内核间的通信[5]。OMAP3525具有丰富的片内 /外资源、较低的功耗、良好的抗干扰能力和工作稳定性,以及高速的数据处理能力,所以非常适合无人机的飞控系统。

2 无人机飞控系统设计

2.1 飞控系统硬件设计

整个系统采用模块化设计管理。Cortex-A8内核是控制核心,计算飞机姿态,在自驾模式下发送控制命令,控制飞行。其主要职能为:信息采集,对锁尾陀螺仪、加速度计等参数的采集处理[6];舵机控制,负责控制4个舵机的转动以及反馈信息;串口通信,负责与全球定位系统(GPS)、航姿仪通讯。DSP内核负责控制云台,通过高清摄像头拍摄到的视频和图片可储存在8GB的SD卡中,也可通过无线模块实时传输到地面基站,以便工作人员对设备情况进行监测。地面基站通过无线通讯可以对无人机飞行状态进行监控,在目标识别的实现及紧急情况下切换至手动控制。GPS模块用于精确控制直升机的飞行路线,由指南针和GPS天线集成,安装在远离干扰的直升机尾端。主要用于接收GPS信号,测量地球磁场,并将数据传送至Cortex-A8处理器。图1所示为飞控系统图。

图1 飞控系统图

2.2 视频采集模块

无线视频采集模块由采集模块和接收端2部分组成,通过无线数据通道联系[7]。采集模块以C64x+DSP为控制核心,包括SAA7111视频解码电路、CPLD逻辑控制电路和数据发射模块Rnf2401;接收端以地面站的PC机为控制核心,包括数据接收模块、USB数据传输模块以及图像分析与处理软件。视频采集系统的工作流程如图2所示。

图2 无线视频采集模块

DSP上电以后先进行初始化,然后通过软件模拟I2C总线的时序设置SAA7111的工作模式,接到采集命令后,DSP发采样的指令由CPLD进行控制。由于DSP和SAA7111共用帧缓冲存储器的数据总线,所以在采样过程中,DSP的数据线必须保持在高阻状态。为此CPLD在接到启动采样信号后发送低电平HOLD信号,使DSP工作在HOLD模式。在收到DSP返回的HOLDA确认信号后,CPLD打开SAA7111并对其输出的视频数据进行写控制。当一帧的数据写入帧缓存以后,CPLD关闭SAA7111的视频输出并发送中断信号给 DSP,由DSP进行数据压缩处理。最后DSP将压缩后的数据通过nRF2401以无线通信的方式发送给PC机,进行后续处理。

3 系统软件设计

OMAP是一个高度集成的硬件和软件应用平台,它支持多种的嵌入式操作系统、高级语言编程以及丰富的DSP算法[8]。本系统在Cortex-A8(RISC处理器)中采用Windows CE操作系统,在C64x+DSP处理器采用DSP/BIOSII。在OMAP上开发程序通常分为2部分,一部分是使用Embedded Visual C开发ARM端程序,另一部分是使用TI CCS开发DSP端程序[9]。前者主要是为了使设计的算法与xDAIS(eXpressDSP TM算法标准)兼容,在ARM端程序中调用一些DSP/BIOS桥的API实现在DSP发出的数据流进行缓冲、暂停、继续、删除DSP任务并进行资源状态查询等。而具体的功能实现则是在DSP端完成。图3显示了Cortex-A8应用程序与C64x+DSP节点间的关系。

图3 Cortex-A8应用程序与DSP节点间的关系

3.1 处理器的交互通信

Cortex-A8和C64x+DSP之间通过一个邮箱中断机制进行通信,该机制在处理器之间提供了非常灵活的软件协议[10]。该邮箱位于系统的共享存储空间中(Cortex-A8的位地址为0x FFFC:F000,C64x+DSP的字地址为0x0F800)。系统共有4套邮箱寄存器,2套用于Cortex-A8向C64x+DSP发送信息和产生中断,另外2套用于C64x+DSP向Cortex-A8发送信息和产生中断。每套邮箱寄存器包含2个16bit寄存器和1个1bit标志寄存器,其中的1个16bit寄存器由产生中断的处理器用来传递1个数据字到被中断的处理器,另外1个16bit寄存器则用于传递命令字。

2个处理器间的通信模式为:当一个处理器将合适的命令写到寄存器后,该寄存器会产生中断,对另外一个处理器的标志寄存器进行正确设置[11]。被中断的处理器通过读标志寄存器响应中断并清空标志寄存器。每套邮箱寄存器中,还有一个附加的数据字寄存器,可以在每次中断时在处理器间传送两个字的数据,而不光只有命令字。

DSP/BIOS桥用于非对称的,由一个通用的处理器(GPP)和一个或多个DSP组成的多处理器环境。DSP/BIOS桥作为GGP和DSP的软件组合,把2个操作系统连接在一起[12]。这种连接能够使GPP端的客户与C64x+DSP上的任务交换信息和数据。连接分为2种类型的子连接,消息子连接和数据流子连接。每种子连接都按顺序传递消息,哪个消息先到消息链,哪个消息就先被传递;同样哪个数据流先到数据流链,哪个数据流就先被传递。每个子连接都独立地进行操作,例如:GPP先发送数据流,然后发送消息,如果消息有高优先级,那么消息比数据流先到C64x+DSP。

3.2 软件流程

图4所示为系统软件总体流程,主要分为4个部分:①初始化。系统软、硬件的初始化和参数预置;② 遥控遥测。接收、执行地面监测指令,同时将飞行参数和遥测数据发送回地面监测站;③自主导航。接收、处理传感器数据,进行控制解算,自主完成导航任务;④定时与中断处理。完成已规划好的相关任务。

图4 系统软件总体流程

4 结束语

以OMAP3525为核心处理器的无人机飞控系统的设计方案,通过整合高精度的GPS接收机和独立环境的高速惯性导航传感器可靠地控制飞机,能够实现精确地定点悬停,从而拍摄视频或者图片来监控输配电线路的各种电气设备的工作状态,使监控的准确性和实时性得到极大地提高。

[1] Texas Instruments.TI’s OMAP Processors Enable High-Performance Wireless Applications For 2.5G and 3G Mobile Devices[EB/OL].[2001 -01 -17].http:www.ti.com.

[2] Texas Instruments.OMAP3525 Application Processor for Wireless Devices[EB/OL].[2009 -04 -10].http://www.ti.com.

[3] 彭启琮.开放式多媒体应用平台—OMAP处理器的原理及应用[M].北京:电子工业出版社,2005.

[4] 吴明晖.基于ARM的嵌入式系统开发与应用[M].北京:人民邮电出版社,2004.

[5] 马忠梅,马广云,徐英慧.ARM嵌入式处理器结构与应用基础[M].北京:北京航空航天出版社,2002.

[6] Fielding C,Varga A,Bennani S,et al.Advanced Techniques for Clearance of Flight Control Laws[M].New York:Springer Verlag,2002.

[7] 罗姗姗,贺家李,赵辉.基于数字信号处理器的保护装置的研究[J].电力系统自动化,1999,23(13):30 -32.

[8] 谢凯.开放式的多媒体应用平台OMAP[J].电子技术应用,2001,27(11):21 -23.

[9] 姜超,刘济林,王兴国.基于OMAP的MPEG—4实时解码器的实现[J].电子技术应用,2004(11):50-53.

[10]罗毅,涂光瑜,张锦辉.变电站信息数字化综合传输[J].电力系统自动化,2001,25(8):42-44.

[11] Ye X,Zhou J,Song X.On reachability graphs of Petrinets[J].Computers and Electrical Engineering,2003(29):263-272.

[12]蔡皖东.多媒体通信技术[M].西安:西安电子科技大学出版社,2000.

[13]吴文海,高丽,周胜明.飞行控制系统设计方法现状与发展[J].海军航空工程学院学报,2010(4):421 -426.

[14]谷新宇,李宗伯.基于双DSP架构的微小型无人机飞行控制系统[J].兵工自动化,2010(8):79-84.

(责任编辑杨继森)

猜你喜欢
寄存器控系统数据流
数据流计算研究进展与概述
关于DALI灯控系统的问答精选
汽车维修数据流基础(上)
联调联试中列控系统兼容性问题探讨
汽车维修数据流基础(下)
Lite寄存器模型的设计与实现
数字电视播控系统关键技术探究
二进制翻译中动静结合的寄存器分配优化方法
基于Arduino的智能家居灯控系统设计
移位寄存器及算术运算应用