• 沒有找到結果。

基于嵌入式的船载雷达系统软件设计

N/A
N/A
Protected

Academic year: 2022

Share "基于嵌入式的船载雷达系统软件设计"

Copied!
5
0
0

加載中.... (立即查看全文)

全文

(1)

[ 计算机应用 g CA D ]

基于嵌入式的船载雷达系统软件设计

Ξ

雷 琴 耿晨歌 陈耀武 汪乐宇

(浙江大学数字技术与仪器研究所)

  [关键词]雷达;嵌入式系统; D SP

[摘 要]本文阐述的对象是基于嵌入式的船载雷达系统。 首先简要介绍系统结构,然后详细介绍了系统D SP 部分和微处理器部分的软件设计。

[中图分类号]U 675174  [文献标识码]A  [文章编号]100129855 (2003) 03200582005

Sof tware des ign of a Nav iga tion Radar System ba sed on em bedded system

L e i Q in   Geng C henge   C hen Yaow u   W ang L eyu

Keywords: rada r; em bedded sy stem ; D SP

Abstract: T h is p ap er illu st ra tes the so f tw a re design of an em bedded typ e nav iga t io n rada r. A f ter p resen t ing it s sy stem co nf igu ra t ion , the p ap er describes in deta il the sof tw a re design fo r D SP and m icrop ro cesso r.

1  引  言

船载雷达对图像显示的实时性要求比较高, 而 且雷达信号检测和雷达跟踪计算的数据处理量也都 比较大。 这些都对系统的信息处理能力提出了很高 的要求。

嵌入式系统由于具有集成度高、反应速度快、体 积小、智能化、稳定和可靠等特点, 逐渐被看作是运 行工程应用软件的高可靠平台, 被广泛应用于工业控 制、仪器仪表和军事等领域[ 1 ]。 同时D SP 作为一种高 速采集、高速存储、高速处理的有效工具, 尤其适用于 船载雷达这样的高频信号数据采集处理系统。

嵌入式软件系统具有实时性强、异步时间并发 处理等特点, 本文主要阐述基于这些特点的嵌入式 船载雷达系统软件设计。

2  系统结构

嵌入式船载雷达系统框图如图 1 所示。

在扫描单元 (俗称上单元) 中, 发射机根据用户 选择的量程和脉冲模式, 控制发射脉冲的频率和宽 度。接收机接收回波信息, 将其从高频载波信号转为 视频信号, 同时完成增益控制和杂波预处理。扫描单 元通过 T I、TUN E、B P 等接口与其他部分 (俗称下 单元) 传递信息。

对回波的视频信号进行AgD 采样是实现数字 式雷达的基础, AgD 采样的频率也决定了雷达径向 检测距离的最高分辨率。 本项目中雷达的径向检测 距离分辨率为 3M , 由此确定该系统的AgD 采样频 率为 50 M H z (50 M H z= 3×108MgS)

3M ×2 )。

本系统采用D SP 作为数据处理单元。其通过双 端口 RAM 与嵌入式微处理器进行通讯。

嵌入式微处理器选用M o to ro la 公司 Pow erPC 系列的微处理器, 同时根据系统需要配置 F lash、液 晶显示屏、控制键、GPS 等外设。

8 5

Ξ [收稿日期]2002- 9- 25

[作者简介]雷 琴(197811- ) ,,畲族,浙江建德人,研究生,从事嵌入系统软件设计。

耿晨歌(197119- ) ,,汉族,浙江宁波人,副教授,从事软件工程、虚拟仪器技术研究。

陈耀武(1969111- ) ,,汉族,浙江杭州人,教授,从事嵌入系统与远程服务。

汪乐宇(1945- ) ,,汉族,浙江临海人,教授,从事仪器系统的片上集成(SO C)虚拟仪器及可视化软件技术。

(2)

1 嵌入式船载雷达系统框图

3   D SP 软件设计

D SP 软件设计包括初始化、数据采集和数据处 理三个部分。D SP 在发射脉冲的同步信号触发下, 开始进行数据采集和处理。D SP 程序流程见图 2。以 下部分详细介绍各部分实现。

3. 1 初始化

禁止 F IFO 写允许; 同时设置 F IFO 每次读取 的数据大小M 。

根据当前用户选择的量程, 设置变量 range, 确 定对一个脉冲回波需要采集的数据个数,

定义变量 sam p_ co un t, 置为 0, 该变量用在脉 冲回波的采集和处理两个步骤中, 用于控制采集和 处理的数据个数, 通过比较该变量与变量 range 的 大小, 实现对量程以外的回波数据的忽略。同时在数 据处理过程中, 该变量记录某采样数据在整个回波 中所处的序列, 以此求出目标的径向距离。

定 义 变 量 p u lse_ co un t, 置 为 1, 该 变 量 记 录 D SP 已经处理完, 但还没有被微处理器读取的脉冲

回波串数目。

定义变量 p u lse_ sum ; 表示当 p u lse_ co un t 计数

值达到 p u lse_ sum 时, 发送 IRQ 信号。 初始值可以 根据实际情况, 在程序中调节。

经过D SP 处理的目标数据存放在双端口 RAM 中, 同时发送中断信号 IRQ , 通知微处理器读取这 些数据。因为中断调用, 传递数据都有一定的时间延 时, 每处理完一个脉冲回波就进行触发一次中断, 进 行一次数据传递是不切实际的。 所以在本系统中对 D SP 处理完的脉冲个数进行计数 (p u lse_ coun t) , 当 达到一定数值时 (p u lse_ sum ) , 才发送 IRQ 信号。

3. 2 数据采集

在发射脉冲的同步信号触发下,D SP 开始数据 采集工作。

首先允许 F IFO 写入, AgD 采样的数据此时才 开始保存进 F IFO。

D SP 从 F IFO 中读取数据, 保存至 D SP 的存储 器, 同时对计数变量 sam p_co un t 增加M , 当 sam p_

co un t 大于变量 range, 即回波数据已到量程外时, 禁止 F IFO 的写, 以放弃这之后 AgD 采样的数据, 同时清空 F IFO , 为下一次数据采集作准备。

通常, 在发射脉冲间隔期, 无用的量程外回波数 据远远多于有用的量程内回波数据, 所以必须要有 一定的机制准确控制数据采集的开始和停止。AgD 启动工作需要一定的预热时间, 不能通过控制AgD 的工作状态来控制数据采集。 所以在本系统中通过 控制 F IFO 的写允许来控制数据采集的开始和结 束。

3. 3 数据处理

数据处理是指对当前回波的采样数据进行自动 检测、坐标数据获得、跟踪运算处理, 以获得系统需 要的目标信息 (回波强度、距离、方向和跟踪状态等 信息)。D SP 的高速处理能力能够确保所有的处理 过程在下一个发射脉冲开始前结束。 以下详细说明 数据处理过程。首先从存储器中读取一个采样数据, 进行目标检测, 当检测到目标时, 保存目标回波强度 信息, 同时分别从距离计数变量 sam p_ coun t 和码 盘信号 (TU N I) 获得目标的距离和方向信息[ 2 ]。 目 标实际的径向距离 (rad ia l) 可以根据公式 1 从变量 sam p_coun t 和采样频率f 求得。

rad ia l= (1

2) ×sam p_ coun t× ( 1 f ) ×c

公式 1    (f 为 AgD 采样频率,c为光速)

(3)

  测试发现, 微处理器中绘制雷达图像的任务相 当耗时, 所以在本系统尽量把一些处理计算任务在 D SP 中进行, 比如将要提到的坐标变换模块。 这里 的坐标变换不仅仅是把实际的极坐标变换为直角坐 标, 还要进行一定的数据压缩和扩展, 最后形成可以 被微处理直接绘制的点阵。

D SP 根据屏幕大小和当前的量程把目标坐标 从极坐标转换到直角坐标。这就相当于在D SP 内存 开辟一片内存来模拟系统的液晶显示屏。 在每个象 素点对应的内存位置上保存该点上的回波强度。 雷 达的目标数据相对于一个 800×600 的液晶显示屏 来说, 数据冗余性很大。程序通过往同一个象素点上 多次写入, 和进行回波强度平均来实现数据压缩。在 屏幕的边缘有可能出现数据分裂, 要进行适当的数

据扩展, 填充屏幕边缘的象素点。

跟踪目标的历史数据记录了十个跟踪目标过去 的航迹信息、航迹外推预测点和相关波门大小。D SP 程序根据该历史数据判断当前新目标是否为跟踪目 标, 如果是跟踪目标, 则进行跟踪外推算法, 预测这 一跟踪目标下一圈扫描时的位置和相关波门, 更新 跟踪目标的历史数据。

最后, 当处理的回波脉冲计数 (p u lse_ coun t) 达 到预设值 p u lse_ sum 时, D SP 处理的结果数据传递 到双端口 RAM , 同时发送中断信号 IRQ , 通知微处 理器读取数据。

4  嵌入式微处理器软件设计

嵌入式微处理器的软件系统采用嵌入式 linux 作为操作系统, 编程中间层为基于Q T 的图形编程 接口, 最上层为雷达系统应用软件层, 划分成扫描重 绘、回波调整、参数设置、系统界面、高级功能五个模 块。 模块框图如图 3 所示。 嵌入式操作系统的一大 特点是实时性和可剪裁性, 在本系统中运行的嵌入 式 linux 就是经过重新剪裁和配置的操作系统, 符 合嵌入式系统对操作系统的要求。 因为操作系统不 是本文的叙述重点, 所以在此只是简单提及。下面详 细介绍应用软件层各个模块的实现。

3 嵌入式微处理器软件模块图

4. 1 扫描重绘

扫描重绘是雷达图像显示的基本工作, 即以雷 达天线扫描的速度, 对雷达图像进行同步的局部重 绘。因为已经在D SP 中将雷达目标信息转换为直角 坐标系上的数值, 所以扫描重绘完成的核心任务就 是根据D SP 的处理结果, 在屏幕上绘制点阵。

在扫描重绘模块中, 用一个链表来管理所有从 0

6

(4)

双端口 RAM 中读取, 但还未被绘制的数据。如图 4 所示。

每一个 b lock_ st ruct 结构体的对象对应于在一 个 IRQ 信号触发下, 从双端口 RAM 获得的一个数 据块。 该结构体中包括四个成员: data, 以数组形式 保存的雷达图像数据; length, 表示这个数据块的大 小; cu rren t, 表示当前绘制的数据点在整个数据块 中 的 位 置, 初始值为 0; nex t, 指向 下 一 个 b lock_ st ruct 对象, 使所有 b lo ck_ st ruct 对象构成一个链 表。 另外, cu rren t_b lock 指向当前正在被绘制的数 据区, new_ b lo ck 表示刚刚从双端口 RAM 读到的 数据区。

嵌入式系统软件的另一大特点是实时性, 雷达 系统的实时性比较高, 如果雷达屏幕上显示的图像 是一段时间之前的雷达扫描情况, 那么必将给航海 带来致命性的危险。在本系统的扫描重绘模块中, 尤 其注意了这一点。 雷达图像的密集程度具有不确定 性, 即雷达图像上某些区域数据密集程度很高, 某些 区域数据密度低, 如果采样定时绘制, 绘制密度高区 域时, 有可能在下一个 IRQ 信号到来之前还没有完 成当前的绘制工作, 导致扫描重绘出现累积误差。绘 制密度低区域时, 有可能因为需要绘制的数据量太 小, 而浪费 CPU 时间在等待定时结束上。 另外, 系 统响应用户的请求也要耗费一些时间, 拖延扫描重 绘工作。所以在本系统中, 扫描重绘分成取数据和绘 制数据两个进程。取数据在定时信号 IRQ 触发下进 行; 绘制数据为有数据即绘制。读取数据进程优先权 高于绘制图像进程, 以保证数据不丢失, 所以此时无 论当前是否完成绘制, 微处理器都转而运行读取数 据进程。 从双端口 RAM 读到的数据以及上文提到 的 b lock_ st ruct 链表和 cu rren t_ b lo ck 等全局变量 都放在共享内存区。 两个进程在互斥锁的制约下进 行安全的读写。 进程间利用 linux 系统的信号机制 进行通讯。 这两个进程的流程图如图 5 所示。

首先, 在 D SP 的中断信号 IRQ 的触发下, 读取 数据进程获得将要读取得数据区的大小M , 在微处

理器内存开辟M 大小的数组结构, 保存读取得数 据。然后构造一个 b lock_ st ruct 对象 new_ b lo ck 对 应于这个新的数据块, 如果这之前内存中所有的数 据都绘制完成, 则把 new_ b lock 赋 值 给 cu rren t_

b lock。否则, 把 new_ b lo ck 挂接到链表的末尾。最后 发送重绘信号 p ain t 给绘制图像进程。

  绘制图像进程, 从 cu rren t_ b lo ck 指向的数据区 的第 cu rren t 个数据开始绘制。这个开始绘制点有可能 是当前数据区 (new_ b lo ck ) , 也有可能前次数据因为 某些原因滞后, 没有绘制完成, 而在这个绘制单元中继 续绘制。 通过把 cu rren t_ b lo ck 不停地指向链表中下 一个结构体, 绘制图像进程一直运行, 直到所有数据都 绘制结束, 或者下一个 IRQ 信号再次到来。当然, 在退 出绘制图像进程前, 保存 cu rren t_ b lo ck 和 cu rren t 的 值, 用来指示下次绘制的起始点。

嵌入式系统的应用软件具有应用可固化的特 点, 即应用软件经过交叉编译调试以后, 最终必须下

(5)

载 并固化到目标系统上, (即嵌入式硬件平台的 FLA SH )。由于嵌入式系统存储容量有限, 价格相对 昂贵, 所以特别要求嵌入式软件尽量精简。在实现上 述的各个应用模块的过程中, 要时时注意这一点, 尽 量减小软件的大小。

4. 2 回波调整

回波调整包括雨雪弱化、海浪弱化、调谐控制等 功能, 这些功能主要在接收机中实现。微处理器提供 用户操作界面, 由用户选择控制级数, 将控制计数保 存到双端口 RAM 中, 同时发送中断信号 IRQ 给 D SP , D SP 从双端口 RAM 中读取这些数值, 通过 DgA 转换成电平信号传递给接收机, 调整接收机的

回波处理。

4. 3 其他模块

由于篇幅限制, 其他模块只在此简单描述。

系统设置首先提供接口给用户, 选择设置雷达 系统的一些参数, 并且将其保存在 F lash 中, 在下次 启动雷达系统时读取。

雷达界面基于图形编程中间件Q T 实现, 显示

雷达图像, 同时提供用户与系统的交互界面。

系统还实现了跟踪、测量、报警、显示模式转换 等雷达系统的高级功能。

5  结束语

本文叙述了基于嵌入式的船载雷达系统的软件 设计, 其与嵌入式硬件设备结合构造了嵌入式船载 雷达系统, 极大地发挥了嵌入式系统的高速处理和 实时性等特性, 同时使船载雷达的体积也大大减小, 提高了安装使用的方便性。 无论从性能或者使用方 便性的角度考虑, 基于嵌入式的船载雷达都将成为 同类雷达产品的佼佼者。

[ 参考文献 ]

[ 1 ] 桑楠. 嵌入式系统原理及应用开发技术[M ]. 北京航空

航天大学出版社. 2002

[ 2 ] 张润泽. 船舶导航雷达(第一册、第二册、第三册) [M ].

人民交通出版社, 1990

(上接第 31 页) 2. 4 其它有关措施

舰艇的隐身设计除了上述几个方面外, 还应注 意以下几个内容。

21411 剩余磁场的控制

现代海战不仅可用导弹、火炮、鱼雷、深水炸弹 等, 同时在情报可靠的基础上, 在敌舰航道上布放水 雷, 封锁敌方港口。在水雷战中, 声、磁引信水雷是常 用的水雷, 所以在艇隐蔽性设计中除了控制本艇的 噪声外, 舰艇的剩余磁场控制是不可忽略的一部份。

2. 4. 1. 1 按海军消磁条例定期进行消磁或磁性检 测。

2. 4. 1. 2 舰艇设计自消磁系统, 控制剩余磁场强 度, 使之满足设计指标要求。

2. 4. 1. 3 特殊用途的舰船, 其船体可选用非磁或低 磁材料制成。

21412 电子隐身的考虑

现代舰船电子设备较多, 由于舰船进行隐身性 设计, 所以其电子设备的可探测性相应降低, 为了防 止敌方的电子设备的传感器进行探测, 必须对己舰 的电磁辐射进行控制, 按需使用电子设备。

2141211 在航渡和潜伏状态, 一般电子设备应处于

静默状态, 而使用卫星导航设备完成船舶导航, 采用 雷达侦察告警设备, 侦知敌情, 或利用数据链实行资 源共享的优点, 获取敌情, 为我方分析、利用, 以便对 目标实施攻击。

2141212 在航渡和潜伏过程中, 当需要开启有关电 子设备时, 这些设备必须在技术上采取一定的措施, 使被截获概率降低, 战术上隐蔽使用。例如降低雷达 付辨, 通信设备采用自适应跳频技术等, 并结合形体 设计减少电磁波的二次辐射。

214. 3 减少舰艇对光的反射

舰艇的颜色及光洁度对光的反射强度差异是很 大的, 一艘舰船在汪洋大海中, 如果其舰艇颜色和光 洁度不考虑对光的反射, 那么极易被敌飞机发现, 实 施攻击。因此, 舰艇设计时必须注意到舰船外表的颜 色和光洁度, 使用吸光性能强, 反射性能差的颜色, 如甲板油漆用深褐色, 侧壁用深兰灰色等, 表面光洁 度不作特别要求, 这样可收到一定效果。

21414 三废处理

三废处理不仅是海洋防污染的要求, 对防止被 发现也至关重要, 敌方凭污迹就可进行航迹跟踪, 这 方面在世界海战史中有过血的教训, 所以舰艇设计 必须配置良好的三废处理设备。

2 6

參考文獻

相關文件

National Taiwan University July 9, 2005 Page 5..

當兒童以自由叙述形式披露事件後,如 內容的資料不足,調查員可用開放式問 題澄清事件的時、地、人、性質及發生 經過.. 呢件事係點發 生,幾時發生

住友商事株式會社與挪威的 Tomra 系統公司所屬的合資子公司 Tomra(日本)公 司啟動了一個回收中心系統,用於回收 PET 瓶和廢紙,該系統安裝在東京 Machida-shi 福得旺超市的

LINE 為了打出在海外的知名度,以置入行銷方式出現在劇情畫面中,除了在劇 中多次使用 LINE

在專題中,我們建立兩套以景點為主的資訊系統,一套是運行在 Android AVD (Android Virtual Device) 模擬器上的資訊系統,另外是內嵌於 Facebook

下列哪一種記憶體屬於非揮發性記憶體, 不會因電源關閉而使其中的資料消 失, 但是可以透過電壓的方式重複抹除資料, 可用於基本輸入/ 輸出系統 (Basic Input / Output System,BIOS)

 為了更進一步的提升與改善本校資訊管理系 的服務品質,我們以統計量化的方式,建立

本書立足中華文化大背景,較為深入系統地分析研究了回族傳統法文化的形成基礎、發展歷