新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于嵌入式系统的典型雷达航迹仿真与实现

基于嵌入式系统的典型雷达航迹仿真与实现

作者:时间:2010-12-24来源:网络收藏


3 实现
嵌入式系统是指根据特定的应用及要求,采用特定的开发板和特定的操作系统运行应用程序的系统。一般来说,嵌入式系统具有软件代码小,高度自动化,响应速度快等特点,与一般的PC系统相比,特别适合于要求实时和多任务的体系。
在对航迹进行可视化时,选择Win CE嵌入式操作系统,在Visual Studio 2005开发平台上,采用Visual C#语言进行程序编写。
3.1 GDI+技术
GDI+技术指的是在.NET Framework 2.0中提供的二维图形、图像处理等功能,主要用于绘制各种图像图像,可以用于绘制各种数据图形、数学等。目前,GDI+技术是在Windows窗体应用程序中以编程方式呈现图形的基本方法。
GDI+使用Graphies类来描述一个绘图表面,并提供该表面可以进行的所有绘图工作。当所需图像包含大量基本图形时,在内存中的Bitm-ap上绘图比直接在屏幕上绘图要快的多。所以应用GDI+技术绘图时,为了消除在画图时引起的屏幕抖动,常常采用双缓冲技术。其实质即在内存中事先开辟出一块空间作为缓冲区,绘制图片,再将缓冲区里的图片绘制到用户界面或输出终端。具体步骤为:
(1)创建一个指定大小的空位图Bitmap;
(2)调用Graphics类的FromImage静态方法,从该位图创建一个Graphics对象;
(3)利用创建的Graphics对象进行绘图;
(4)释放绘图资源;
(5)调用窗体的Paint事件,刷新窗体。
3.2 航迹坐标点的定位
GDI+中的作图函数建立在一个以像素为单位的逻辑坐标系中。该逻辑坐标系的原点是显示屏幕的左上角,并且y轴向下为正方向,x轴向右为正方向,如图3所示。在对航迹进行的可视化仿真,建立在对雷达PPI显示器进行模拟的基础上。因此,在做图中,需要将PPI显示的参数换算为以像素为单位的值。

g.JPG


这里需要定义一个意义为实际距离对应屏幕距离的全局比例尺m_Globalscale,单位:像素/m。假设系统所要模拟的PPI显示界面分辨率为240×240(像素),且雷达最大作用范围为m_Range(m),则有如下关系成立:
m.jpg
将圆心与屏幕PPI显示区中心点的偏移量,定义为x_set和y_set,以航迹上的A点为例,假设在t时刻,目标到达A点。其斜距离为D,单位m;方位角为β,单位为(°)。A点对应在屏幕上的斜距离为D1,单位像素;方位角β1,单位弧度;坐标为x_cur,y_cur,单位像素。根据上述分析可以得出:
h.JPG
3.3 航迹坐标点的动态显示
航迹的显示可以在模拟PPI显示器的绘图面上,调用drawlines()方法对所有的航迹点进行连线即可。但是为了实时地了解仿真目标的空中运动情况,往往还要同时实现航迹坐标点动态显示。重绘是一种经常被采用的方法,其思想是对PPI显示模拟界面上的静态显示部分进行重绘,将已经画好的航迹坐标点覆盖掉,再在新的界面背景上绘制新的航迹坐标点。
但是考虑到嵌入式系统在内存及处理速度方面的不足,每次重绘所调用大量的资源,势必会造成CPU资源的浪费,同时影响到整个系统的时效性。为了克服上述问题,保证整个系统运行的实时性,本文采取“背景复制”的方法来解决。总体来讲,实现的思想是:创建2个绘图面,在一个绘图面(g1)上绘制轨迹后再“贴在”另个绘图面(g2)上,并在g2上绘制更新的点迹坐标,当进入下个循环时新的轨迹图又再次贴在g2上,然后再在g2绘制新的点迹坐标,这样显示在窗体上始终只有运动的轨迹和随轨迹运动的图标,即可较为丰富地实现轨迹动态显示。


关键词: 仿真

评论


相关推荐

技术专区

关闭