一种基于arm的虚拟仪表盘组及其实现方法

文档序号:4141841阅读:419来源:国知局
专利名称:一种基于arm的虚拟仪表盘组及其实现方法
技术领域
本发明涉及虚拟仪表技术在航空液晶显示模块上的实现方法,具体涉及一种在航空液晶显示模块中利用ARM实现动态图形实时绘制的方法。
背景技术
仪表作为整个飞机控制系统中非常重要的部分,能够最直观的提供给飞机驾驶员所驾驶飞机的各项重要飞行 参数,是提高飞机综合性能的重要方面之一。随着计算机软硬件技术、总线技术、电子技术等的迅猛发展,传统电磁机械仪表有着复杂的接线布线、占用大的体积和重量等缺点。在一些对空间和重量要求严格的航空航天领域,虚拟仪表拥有着传统机械仪表无法替代的优势。目前虚拟仪表通常包括纯数字仪表和虚拟仪表盘两种纯数字仪表开发周期短,但功能和界面比较简单,无法最直观的反映当前飞机运行的各项参数;而现有的虚拟仪表盘技术技术较新,但受到开发成本、可扩展性、可重绘性等的制约,不利于大范围的推广与应用。

发明内容
针对传统仪表和虚拟仪表存在的不足,提出一种基于ARM的虚拟仪表盘组及其实现方法,采用ARMll架构的S3C6410作为系统的主控制器,在嵌入式Linux系统中采用开放源代码的图形界面库QT开发航空仪表应用程序。本发明是这样实现的,一种基于ARM的虚拟仪表盘组,其显示为若干虚拟仪表盘,其采用ARM控制器实现嵌入式虚拟仪表技术,该基于ARM的虚拟仪表盘组包括该ARM控制器、若干传感器、若干信号转换处理电路以及显示屏,该若干传感器感测飞行状态信息,该若干信号转换处理电路接收该飞行状态信息并由此转换成该ARM控制器能够识别的数字信号,该ARM控制器接收该数字信号并由此运行嵌入在该ARM控制器内的QT虚拟仪表程序,该QT虚拟仪表程序采用QT中二维图形引擎的基础类的QPainter类中的QPainter: :Antialiasing对该数字信号进行反走样处理,并形成若干虚拟仪表盘信息,该显示屏接收该若干虚拟仪表盘信息并显示成相应的虚拟仪表盘。作为上述方案的进一步改进,QPainter类实现虚拟仪表盘的仪表指针的运动依靠的是重绘QPaintEvent绘图事件,通过定时器QTimer的timeout O函数不断触发信号,使得重绘函数在定时器指定的时间内不断重绘。作为上述方案的进一步改进,定时器QTimer的触发时间设置到20ms以下,即每秒钟重绘超过50次。作为上述方案的进一步改进,QPainter绘制虚拟仪表盘的复杂图形使用的是drawPolygon,通过图形外围轮廓坐标点进行逐点绘制,绘制完成后QBrush类实现上色处理。作为上述方案的进一步改进,虚拟仪表盘的旋转与拉伸使用rotate O和scale O函数实现,translate Q函数能够实现平移操作。
作为上述方案的进一步改进,该飞行状态信息包括飞行时的高度、速度、经纬度、压力值,该若干传感器相应的包括高度传感器、速度传感器、经纬度传感器、压力值传感器,该虚拟仪表盘也相应的有高度表盘、速度表盘、经纬度罗盘、飞行方向表盘、机舱压力表盘,其中飞行方向表盘的信息可由经纬度传感器测得的经纬度变化率获得。本发明还涉及一种基于ARM的虚拟仪表盘组的实现方法,该基于ARM的虚拟仪表盘组显示为若干虚拟仪表盘,其采用ARM控制器实现嵌入式虚拟仪表技术,该基于ARM的虚拟仪表盘组包括该ARM控制器、若干传感器、若干信号转换处理电路以及显示屏,该若干传感器感测飞行状态信息,该若干信号转换处理电路接收该飞行状态信息并由此转换成该ARM控制器能够识别的数字信号,该ARM控制器接收该数字信号并由此运行嵌入在该ARM控制器内的QT虚拟仪表程序,该QT虚拟仪表程序采用QT中二维图形引擎的基础类的QPainter类中的QPainter: :Antialiasing对该数字信号进行反走样处理,并形成若干虚拟仪表盘信息,该显示屏接收该若干虚拟仪表盘信息并显示成相应的虚拟仪表盘。该基于ARM的虚拟仪表盘组的实现方法包括以下步骤该若干传感器采集飞行状态信息,该飞行状态信息包括飞行时的高度、速度、经纬·
该若干信号转换处理电路将该飞行状态信息转换成该ARM控制器能够识别的数
字信号;该ARM控制器接收该数字信号并由此运行嵌入在该ARM控制器内的QT虚拟仪表程序,该QT虚拟仪表程序采用QT中二维图形引擎的基础类的QPainter类中的QPainter: :Antialiasing对该数字信号进行反走样处理,QPainter类实现虚拟仪表盘的仪表指针的运动依靠的是重绘QPaintEvent绘图事件,通过定时器QTimer的timeout O函数不断触发信号,使得重绘函数在定时器指定的时间内不断重绘,使用rotateO和scale O函数实现虚拟仪表盘的旋转与拉伸,translate O函数实现平移操作,使用的是Qpainter的drawPolygon绘制虚拟仪表盘的复杂图形,通过图形外围轮廓坐标点进行逐点绘制,绘制完成后QBrush类实现上色处理,最终形成若干虚拟仪表盘信息;该显示屏接收该若干虚拟仪表盘信息并显示成相应的虚拟仪表盘。作为上述方案的进一步改进,在使用双缓冲绘图的基础上,将定时器的触发时间设置到20ms以下,即每秒钟重绘超过50次。本发明的优点在于形成的虚拟仪表盘直观性好、界面友好、读数精度高、重绘速度快,能够满足航空航天中高实时性的要求,并为飞机控制系统节省了一定的体积和质量,降低了整个控制系统的成本和臃肿度。


图I为本发明的基于ARM的虚拟仪表盘组的系统结构示意图。图2为本发明的基于ARM的虚拟仪表盘组的硬件结构示意图。图3为本发明的基于ARM的虚拟仪表盘组的实现方法的流程图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及其对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。航空虚拟仪表的基本设计思想是将飞机上安装的各类传感器采集到的数据传输ARM主控制器中,通过ARM主控制器运行嵌入式Linux系统的QT虚拟仪表应用程序,并实时在航空显示模块中显示。系统结构图如图I所示,本设计系统总体由三个部分组成信号采集对飞机上安装的各种传感器采集的速度、高度、经纬度、压力值等飞行状态信息,经过处理转换后成为控制器能够识别的数字信号;数据处理将采集到的数字信号进行必要的数据处理并保存给“黑匣子”,作为记录飞机飞行状况的重要参数;图形绘制将数据处理过的数据使用QT设计的虚拟仪表动态显示。

具体实现过程I、虚拟仪表硬件实现虚拟仪表的硬件结构图如图2所示,虚拟仪表的核心处理器采用ARMll的S3C6410芯片,其主频最高可达到667MHz,内部继承了强大的多媒体处理单元,带有3D图形硬件加速器,并支持2D图形图像的平滑缩放等操作。ARM微控制器具有丰富的指令集、编程灵活,负责图像数据和图像处理命令的调度及图像处理流程的控制。ARM主芯片外接128MBSDRAM和2GBNANDFLASH,把接收到的数据进行预处理,运行QT虚拟仪表程序,并通过连接加固后的航空显示模块来显示虚拟仪表。2、开发环境的搭建为了开发满足功能的应用程序,本发明采用的软件开发环境是VMware-Workstation虚拟机和UBuntu操作系统用来移植嵌入式Linux3. 01内核。通过编译安装QT/Embedded 4. 7. 2库用来支持虚拟仪表人机交互界面程序的开发并生成虚拟仪表系统中需要的QT库文件。3、虚拟仪表应用程序实现本虚拟仪表系统的的应用程序基于QT/E使用Q T的轻量级集成开发环境QTCreator完成开发,最后在已搭建的开发环境中编译生成可执行二进制文件,并将其移植到硬件平台中的文件系统中进行调试。虚拟仪表系统应用程序的主要工作流程如图3所示。在虚拟仪表应用程序的开发中,使用了 QT中二维图形引擎的基础类QPainter进行开发。为了得到高质量无锯齿的仪表图形,使用QPainter类中的QPainter: !Antialiasing进行反走样处理。QPainter类包含了渐变渐充、像素混合、坐标变换、线性变换等函数,利用QPainter能够完成虚拟仪表盘的绘制。QPainter类实现仪表指针的运动依靠的是重绘QPaintEvent绘图事件,通过定时器QTimer的timeout O函数不断触发信号,使得重绘函数在定时器指定的时间内不断重绘。在使用双缓冲绘图的基础上,为了更好的消除闪烁、让画面连贯清晰,可以将定时器的触发时间设置到20ms以下,即每秒钟重绘超过50次,基本上人眼无法观察到闪烁的感觉。QPainter绘制虚拟仪表盘上的复杂图形使用的是drawPolygon,通过图形外围轮廓坐标点进行逐点绘制,绘制完成后QBrush类实现上色处理。旋转与拉伸使用rotate O和scaleO函数实现,translate O函数能够实现平移操作。通过这些基本的函数就能够实现复杂图形的重绘,从而实现动态虚拟仪表的效果。QPainter类的drawText函数能够实现绘制文字,加上三种渐变函数(线性渐变、圆锥渐变、圆形渐变)等函数可以实现绘制美观的虚拟仪表盘,能够满足航空航天领域虚拟仪表盘的需求。利用本发明的基于ARM的虚拟仪表盘组及其实现方法,形成的虚拟仪表盘直观性好、界面友好、读数精度高、重绘速度快,能够满足航空航天中高实时性的要求,并为飞机控制系统节省了一定的体积和质量,降低了整个控制系统的成本和臃肿度。 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种基于ARM的虚拟仪表盘组,其显示为若干虚拟仪表盘,其特征在于,其采用ARM控制器实现嵌入式虚拟仪表技术,该基于ARM的虚拟仪表盘组包括该ARM控制器、若干传感器、若干信号转换处理电路以及显示屏,该若干传感器感测飞行状态信息,该若干信号转换处理电路接收该飞行状态信息并由此转换成该ARM控制器能够识别的数字信号,该ARM控制器接收该数字信号并由此运行嵌入在该ARM控制器内的QT虚拟仪表程序,该QT虚拟仪表程序采用QT中二维图形引擎的基础类的QPainter类中的QPainter: :Antialiasing对该数字信号进行反走样处理,并形成若干虚拟仪表盘信息,该显示屏接收该若干虚拟仪表盘信息并显示成相应的虚拟仪表盘。
2.如权利要求I所述的基于ARM的虚拟仪表盘组,其特征在于,QPainter类实现虚拟仪表盘的仪表指针的运动依靠的是重绘QPaintEvent绘图事件,通过定时器QTimer的timeout O函数不断触发信号,使得重绘函数在定时器指定的时间内不断重绘。
3.如权利要求2所述的基于ARM的虚拟仪表盘组,其特征在于,定时器QTimer的触发时间设置到20ms以下,即每秒钟重绘超过50次。
4.如权利要求I所述的基于ARM的虚拟仪表盘组,其特征在于,QPainter绘制虚拟仪表盘的复杂图形使用的是drawPolygon,通过图形外围轮廓坐标点进行逐点绘制,绘制完成后QBrush类实现上色处理。
5.如权利要求4所述的基于ARM的虚拟仪表盘组,其特征在于,虚拟仪表盘的旋转与拉伸使用rotateO和scale()函数实现,translate O函数能够实现平移操作。
6.如权利要求4所述的基于ARM的虚拟仪表盘组,其特征在于,该飞行状态信息包括飞行时的高度、速度、经纬度、压力值,该若干传感器相应的包括高度传感器、速度传感器、经纬度传感器、压力值传感器,该虚拟仪表盘也相应的有高度表盘、速度表盘、经纬度罗盘、飞行方向表盘、机舱压力表盘,其中飞行方向表盘的信息可由经纬度传感器测得的经纬度变化率获得。
7.—种如权利要求I所述的基于ARM的虚拟仪表盘组的实现方法,其特征在于,其包括以下步骤 该若干传感器采集飞行状态信息,该飞行状态信息包括飞行时的高度、速度、经纬度、压力值; 该若干信号转换处理电路将该飞行状态信息转换成该ARM控制器能够识别的数字信号; 该ARM控制器接收该数字信号并由此运行嵌入在该ARM控制器内的QT虚拟仪表程序,该QT虚拟仪表程序采用QT中二维图形引擎的基础类的QPainter类中的QPainter: :Antialiasing对该数字信号进行反走样处理,QPainter类实现虚拟仪表盘的仪表指针的运动依靠的是重绘QPaintEvent绘图事件,通过定时器QTimer的timeout O函数不断触发信号,使得重绘函数在定时器指定的时间内不断重绘,使用rotateO和scale O函数实现虚拟仪表盘的旋转与拉伸,translate O函数实现平移操作,使用的是Qpainter的drawPolygon绘制虚拟仪表盘的复杂图形,通过图形外围轮廓坐标点进行逐点绘制,绘制完成后QBrush类实现上色处理,最终形成若干虚拟仪表盘信息; 该显示屏接收该若干虚拟仪表盘信息并显示成相应的虚拟仪表盘。
8.如权利要求7所述的基于ARM的虚拟仪表盘组的实现方法,其特征在于,在使用双缓冲绘图的基础上,将定时器的触发时间设置到20ms以下,即每秒钟重绘超过50次。
全文摘要
本发明公开了一种基于ARM的虚拟仪表盘组及其实现方法,该基于ARM的虚拟仪表盘组显示为若干虚拟仪表盘,其采用ARM控制器实现嵌入式虚拟仪表技术,其中,若干传感器感测飞行状态信息,若干信号转换处理电路接收该飞行状态信息并由此转换成ARM控制器能够识别的数字信号,ARM控制器接收该数字信号并由此运行嵌入在ARM控制器内的QT虚拟仪表程序,并形成若干虚拟仪表盘信息由显示屏显示成相应的虚拟仪表盘。本发明的优点在于形成的虚拟仪表盘直观性好、界面友好、读数精度高、重绘速度快,能够满足航空航天中高实时性的要求,并为飞机控制系统节省了一定的体积和质量,降低了整个控制系统的成本和臃肿度。
文档编号B64D43/00GK102874412SQ20121039251
公开日2013年1月16日 申请日期2012年10月15日 优先权日2012年10月15日
发明者胡金, 董戴, 章小兵, 李培华 申请人:中航华东光电有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1