DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1490|回复: 0
打印 上一主题 下一主题

[待整理] 一种基于FPGA的雷达波束控制系统设计

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-12 18:09:32 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
O 引言

波束控制系统的基本功能是给天线阵列中各个移相器提供所需要的控制信号。除此基本功能外,现代雷达还要求波束控制系统高速高效、低成本、小型化,并具有波束控制分系统的自检;根据工作频率,进行初相位在线补偿;天线相位码随机馈相等功能。同时,在设计生产过程中,为了配合其他系统的检测,还需要在雷达的不同工作模式下完善调试功能。另外,在雷达的长期使用过程中,要求单个组件维修时,波束控制组件驱动板能在脱机状态下正常工作。

这里展开介绍一种有源相控阵雷达波束控制系统的硬件平台及软件设计。
l 系统原理

为降低电路成本和增加系统可靠性,该系统采用设备量少、维修方便、可靠性高的集中式运算、分布式驱动体系。也就是,波束控制算法用一块电路板(称之为运算板)实现。
对工作方式,运算板接收来自雷达控制台的控制指令(包括主天线的方位和俯仰增量代码、工作频率、工作模式代码等),进行波束控相位码的计算、传输、分配与格式重排。运算板把处理后的串行波束控制码通过驱动器发往阵面的波束控制组件驱动板。在波束控制组件驱动板内再进行译码、驱动,然后送给组件单元作为控制码,从而实现波束控制系统的功能。波束控制系统的组成如图1所示。

2 系统硬件平台

该相控阵雷达系统要求波束控制系统准确可靠地控制512个天线单元,波束转换时间不大于1 ms。在此分析运算板需要哪些关键器件。运算板要在500μs内完成从雷达控制台接收指令、波束控制算法及运算结果传输的功能,必须选用FPGA器件。参与运算的补偿数据是运算的主要对象之一,要能够实时参与波束控制算法的运算过程,也可以被雷达控制台在线更新,这就需要运算板具有存储器。系统采用自定义总线接收雷达控制指令和上报阵面返回的信息。

关于驱动板的硬件设计,不仅要实现驱动、译码、系统自检等功能,还要考虑组件在单独调试时驱动板的控制功能是否可以方便实现。由于设备数量较大,在满足功能的基础上,要尽可能降低设备成本。基于这些需求,选用一片单片机和一片EPLD。图1中虚线左侧部分所示运算板硬件组成。其中,雷达控制台发送的是波束控制指令、接收的是阵面自检和检测信息;传输模块产生和发送串行波束控制码、传送所需要的时钟、定时信号。
图l中虚线右侧部分所示组件驱动板的硬件组成。其中接口电路接收波束控制运算板发来的串行波束控制码;组件单元接收的是TTL电平的控制码(包括发射移相码、接收移相码、衰减码、T/R开关控制码)。EPLD完成译码和控制分发代码,SCU完成联机自检和脱机控制调试的功能。控制和调试方式比其他提供的系统设计方法,更加多样化和灵活。
3 软件设计

3.1 运算板FPGA程序设计


波控运算板基本用途就是为满足阵面天线单元控制的需要。在此,整个天线阵面等分成四个子阵面。每个子阵面包括a×b个天线单元,如图2所示。


天线分时实现全孔径SAR模式和子孔径GMTI模式两种工作模式。雷达对空探测或者在SAR工作方式时,利用天线全阵面,形成一个波束进行发射和接收,阵面的物理中心就是阵面天线单元的坐标原点;GMTI工作方式时,全阵面形成一个发射波束,而接收时则在方位上等分四个子阵面,形成四个接收波束,此时形成四个坐标系:每个子阵面的物理中心就是每个阵面天线单元的坐标原点。

根据天线单元此分布特点的控制需求,这里选用两片FPGA,传输采用四路差分串行码(两路数据码、一路地址码、一路8 MHz时钟码),就可完成阵面天线单元对波束控制的要求。FPGA内部程序的逻辑功能框图如图3所示。其中的串口核、SRAM、FIFO全是调用FPGA内部的资源。串口核的功能是在波束控制运算板单机调试和雷达近场测试时,接收来自调试计算机的控制指令。SRAM用于当雷达工作在阵面监测方式时,存储来自雷达控制计算机的控制码;FIFO用于存储运算器计算的结果(运算板单板调试时用)或组件驱动板自检结果,此结果可以通过串口返回调试计算机,以此来判断FPGA计算的中间结果或者送出的最终结果是否正确和判断组件单元及相应的信号通路是否良好。运算、传输时钟产生和运算结果传送、读/写FLASH都在运算器中,做在同一个状态机里。波控运算状态机如图4所示。

图4中:S1为运算使能控制和状态转换条件控制及变量初始化;S2完成波束控制算法和按照格式排布计算结果;S3产生被传送数据的地址和时钟及将并行的计算结果转为串行;S4对FLASH进行写操作;S5对FLASH进行读操作;S6对SRAM进行写操作;S7先对SRAM读操作,然后按照预定格式拼位,以便跳入S3状态将SRAM中的数据传出。S1中状态机的状态转换条件即为译码得到的来自雷达控制台的控制指令。状态机将根据不同的控制指令进入相应的状态处理程序段。

其中的S2状态机实现的阵面第(m,n)个组件的移相值运算如下:


式中:m为行坐标值;n为列坐标值。当雷达工作在SAR方式和GMTI的发射方式时m=-2a,-2a+1,…,-1,0,1,…,2a-2,2a-1;n=-b/2,-b/2+1,…,-1,0,1,…,b/2-2,b/2-1。对GMTI的接收方式,m=-a/2,-a/2+1,…,-1,O,1,…,a/2-2,a/2-1;n=-b/2,-b/2+1,…,-1,O,1,…b/2-2,b/2-1。ψ0m,n(λ)为初始相位值;α,β为雷达控制计算机根据波束指向角而发送的方位递增量和俯仰递增量;φ(m,n,t)为相位误差修正量;△ψ为单位相移量,用于随机馈相。等式右端的ψ0m,n,ψ,△ψ预存在片外的FLASH中,FPGA通过对FLASH的读操作将对应地址空间的数据存入相应寄存器,在状态机的控制下参与移相值的计算。

在FPGA中,此算式的实现采用Verilog硬件描述语言编程,控制变量做加法循环即可实现该算法。对随机馈相的运算,是将按单元排列方式所对应的、预先存在FLASH中的一组随机数δi.j(其存储位数不小于4位),和波束控制系统计算的移相器量化相移值结尾相位△i.j做比较,如果△i.j大于δi.j,则移相器量化相移值加单位相移量△ψ后送给移相器,否则直接将移相器量化相移值送给移相器。

3.2 运算板调试的控制程序设计

运算板的初期调试和验证对于整个产品的实现至关重要,此阶段直接决定了产品实现的可行性和进度。在此选用ViSUalBasic 6.0开发设计程序,基于Windows的VB提供了一个MSCOMM 32.OCX串行通信控件,用串口电平转换器接上两对差分信号线,就可以实现与运算板FPGA异步串行口的通信。所设计的控制程序可以模拟产生雷达控制台的控制指令和定时器的定时信号、实现对SRAM和FLASH信息的写入和读出,完成对FPGA运算结果的回送数据校验。

根据需要,所设计的程序分为八个模块,分别为串口通信控制、雷达控制指令产生、定时信息产生、对FLASH的各种操作控制、补偿数据文件的写入/读出操作、理论运算结果显示、FPGA运算结果回送显示、自检方式所需要的控制等。

3.3 驱动板的程序设计

该驱动板程序设计的关键点和特点在于单片机和EPLD的程序既能够联机工作,又能够独立地控制组件,实现组件的单机调试功能,即装机和测试用同一个程序。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-7-26 16:26 , 耗时 0.093239 秒, 21 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表