APP下载

ARM处理器在测高雷达中的应用

2022-10-12刘宏宇陈建炜

制导与引信 2022年3期
关键词:串口滤波时钟

刘宏宇,黄 啸,倪 亮,陈建炜

(1.上海无线电设备研究所,上海 201109;2.上海目标识别与环境感知工程技术研究中心,上海 201109;3.中国航天科技集团有限公司交通感知雷达技术研发中心,上海 201109)

0 引言

测高雷达作为一种探测距离地面、海面相对高度的装置,必须能够实时给出高度信息,并保证测量结果的准确性。常见的测高雷达多基于数字信号处理器(DSP)实现。DSP虽然在数字信号处理方面具有优势,但其实现控制功能的能力较弱,有时需要结合现场可编程门阵列(FPGA)等其他芯片来实现,导致雷达设计的复杂度增加。

ARM处理器作为一种常用的嵌入式处理器,因具有高性能、低功耗、低成本、芯片类型丰富、第三方支持广泛等特点而受到广大用户的青睐。ARM处理器包含非常丰富的外设,能在各个领域的不同应用场景中完成精确的控制功能。相比于FPGA、DSP等处理器,ARM处理器能大大降低系统设计复杂度,提高系统集成度。STM32系列的ARM处理器内部集成了硬件浮点运算单元(FPU),支持多种DSP指令集,能够实现快速傅里叶变换(FFT)等数字运算。此外该处理器还集成了一整套专门用于软件开发的函数库,用户只需调用上层函数即可实现相应功能,并不需要进行复杂的寄存器操作,大大降低了软件的开发难度,节省了开发时间。目前ARM处理器已经广泛应用于各种嵌入式系统。

本文设计了一种基于ARM处理器STM32F407ZGT6的测高雷达,实现对地面、海面相对高度的测量以及海面测高时对海浪高度的计算,并通过机载挂飞和造波池实验,验证该雷达的连续跟踪测高能力和海浪高度计算的准确性。

1 测高雷达组成

基于ARM的测高雷达通过微波组件发射信号,并对雷达接收的目标回波信号进行放大、滤波、自动增益控制(AGC)等处理,经模数转换器(ADC)采样,通过ARM处理器运算处理后得到高度信息。测高雷达组成如图1所示。

图1中ARM处理器为雷达信号处理器的核心。通过RS422串口与控制系统通信,接收控制系统的控制指令,并将测高结果和遥测信息传递给控制系统。通过串行外设接口(SPI)配置微波组件控制参数,使其产生特定频率和带宽的线性调频信号。调频同步和功放开关信号用于实现微波组件信号发射和关闭的控制,并生成系统工作、信号处理的时序。功率控制信号用于实现测高雷达距离地面、海面不同高度时发射功率的自适应调节。收发天线具有宽波束和窄波束两种工作模式,可通过通道选择进行更改。

图1 基于ARM处理器的测高雷达组成

2 测高雷达硬件设计

基于ARM处理器的测高雷达的硬件电路主要由ARM处理器和其他外围电路组成。ARM处理器主要完成微波组件控制、控制系统通信、天线通道选择和回波信号采集处理等功能。其他外围电路包括电源模块、时钟电路、串口通信电路、滤波电路、自动增益控制电路等。其中电源模块为微波组件和ARM处理器提供电压;时钟电路为ARM处理器提供稳定的外部时钟源;串口通信电路实现ARM处理器和控制系统的RS422通信;滤波电路滤除电路中产生的噪声以及回波信号中由杂波引起的干扰;自动增益控制电路实现对回波信号强度的自适应调节,使其始终保持在一个合适的范围。

2.1 ARM处理器

本文选用ST公司的高集成度32位ARM处理器STM32F407ZGT6。该处理器采用ARM Cortex-M4F架构,工作频率最高可达168 MHz。集成了1 MB的片上闪存(Flash)、192 kB的片上静态随机存取存储器(SRAM)、114个输入输出(I/O)接口、3个12位的ADC、17个定时器、6个通用同步/异步串行接收/发送器(USART)及3个SPI。主要应用在低功耗、低成本条件下,并能取得较高的性能。

ARM处理器资源配置情况如图2所示。ARM处理器通过专用的电源接口(VDD)和外部电源模块相连,获得ARM处理器工作时所需要的稳定电压。通过时钟接口(CLK)和外部时钟电路相连,接收经时钟电路分频后的具有高稳定性和准确性的50 MHz外部时钟,随后经过芯片内部的时钟处理电路,为各个外设提供工作时钟。通过一路SPI与微波组件相连,对微波组件进行配置,产生满足要求的线性调频信号。分别通过一路I/O接口控制调频同步和功放开关信号,产生工作时序。通过一路UART与串口通信电路(RS422)相连,经RS422串口芯片完成与控制系统的双向通信。通过一路ADC与滤波电路的输出相连,完成对滤波后中频回波信号的采集。通过一路I/O接口与收发天线相连,完成天线宽、窄波束模式的选择。通过3路I/O接口完成对微波组件发射功率的控制。通过3路I/O接口连接外围自动增益控制电路实现对回波强度的自适应调节。

图2 ARM处理器资源配置框图

2.2 外围电路

(1)电源模块

电源模块为测高雷达系统提供电压,主要将控制系统提供的+28 V电压转换为+8,+5,-5 V等3种不同的电压。其中+8 V电压主要用于微波组件,+5 V和-5 V电压用于ARM处理器和其他电路。

(2)时钟电路

ARM处理器在时钟的驱动下,进行时序逻辑处理,时钟的稳定性和准确性对ARM处理器的工作性能起到至关重要的作用。STM32F4系列处理器集成了内部时钟源,同时支持外接时钟源。为了提高时钟的稳定性和抗干扰能力,采用外接时钟源(CD54HC74F),缩短时钟信号的边沿变化时间,对外部输入的50 MHz时钟进行分频,得到稳定的25 MHz时钟供ARM处理器使用。

(3)串口通信电路

串口通信电路用于实现ARM处理器与控制系统的双向通信。ADM2682串口通信芯片是一款完全集成的信号与电源隔离的数据收发器,具有±15 kV静电保护,适用于多点传输的高速通信。通过配置全双工的RS422串口通信电路实现与控制系统的高速实时双向通信。

(4)滤波电路

滤波电路分为低通滤波和高通滤波两部分。目标回波信号进入雷达,经过放大后,先进行高通滤波,滤除由地物等杂波引起的低频信号,减小地物杂波的干扰。再对高通滤波后的信号进行自动增益控制,将信号幅度控制在一个合适的范围后进行低通滤波,以减小信号被放大后的高频毛刺引起的干扰。

(5)自动增益控制电路

为了避免雷达接收到的目标回波信号经滤波处理后,信号过大饱和或过小难以检测的问题,需要控制回波信号的幅度在一定范围内自适应调节。使用可变增益放大器AD603AR对回波信号的幅度进行调整,实现信号增益在(-1~+41)dB范围内变化,满足测高雷达的工作需求。

3 测高雷达软件设计

3.1 软件设计流程

测高雷达软件的开发环境为Keil5.27,在开发环境中移植ARM处理器专用的函数库来加快开发进程。软件的主要功能为通过控制ARM处理器、外围电路及微波组件实现对地面、海面高度的测量及海浪高度的计算,软件设计流程如图3所示。

图3 软件设计流程图

测高雷达上电后,首先进行雷达的初始化,主要包括时钟、ADC、串口、SPI及I/O接口的初始化。然后开启与控制系统的通信,接收来自控制系统的开机指令和测高模式控制指令。在不同的测高模式下完成回波信号采集,并根据信号强度进行自动增益控制。对采集的信号进行FFT等运算,得出高度值,在海面测高模式下还要进行高度数据的积累,计算得到浪高值。最后将获得的高度数据和浪高数据返回给控制系统。

3.2 回波信号采集

回波信号采集是进行信号处理的基础。采用ARM处理器内部自带的ADC,对其进行配置后完成对回波信号的采集。目标回波信号经滤波之后的频率为(15~850)kHz,因此配置ADC的采样率为2 Msps,以满足奈奎斯特采样率的要求。同时为了提高采样精度,配置ADC的采样位数为12位,由于采样速率较快,开启ADC采样结果的直接存储器访问(DMA)传输,将采样后的数据直接搬移到内存中供后续处理使用。

3.3 自动增益控制

自动增益控制通过改变和自动增益控制电路相连的3个I/O接口的高低电平来实现。3个接口的不同高低电平组合,可以控制自动增益控制电路产生不同范围的增益变化。在实际工作过程中,当回波信号的强度超过设定的最高门限时,将AGC的自动调节数量减小一级以实现对信号的衰减;当回波信号的强度小于设定的最低门限时,将AGC的自动调节数量增大一级以实现对信号的增强。为了避免AGC自动调节过于灵敏,当信号强度连续8次超过范围时才对其进行调节,否则不调节。

3.4 高度计算

回波信号采集之后,通过对回波信号的处理,进行高度的计算,流程如图4所示。

图4 高度计算流程图

首先对回波信号进行FFT运算。FFT运算是整个回波信号处理的核心,信号经FFT运算后得到信号频谱,目标距测高雷达的距离可由频谱进行计算得出。通过寻找回波信号频谱中能量最强的频率即频谱的最大值,确定目标回波在频谱中的位置n,通过线性调频信号的带宽和脉宽,确定单位频率分辨率大小的频率对应的距离d,则高度h的计算公式为

在进行FFT运算时,对前4个测量周期内的回波信号取平均来保证测量结果的稳定性,后续的信号经过滑窗处理后再进行此操作。

3.5 浪高计算

在进行海面测高时,需要对海面进行精细化探测,实时计算海浪的高度。海浪高度通过对测量高度数据的积累与运算得到,根据高度测量周期,首先积累500个高度数据(约5 s),以覆盖一个完整的波浪,通过提取高度的变化信息,得到有效浪高

4 实验验证

通过机载挂飞和造波池实验,分别验证测高雷达的连续跟踪测高性能以及海浪高度测量的准确性。

机载挂飞实验时,将测高雷达安装在实验运输机上,测量爬升阶段飞机对地面的相对高度,并和飞机上搭载的全球定位系统(GPS)输出高度进行同步对比。机载挂飞实验地面测高结果如图5所示。

图5 机载挂飞实验地面测高结果

由图5可知,测高雷达在(0~1 200)m的高度范围内工作正常,能连续跟踪测量高度。与GPS的输出高度相比,测高雷达的平均测量误差为12.9 m,误差均方根为16.3 m,满足测量精度要求。

造波池实验场景如图6所示。将测高雷达固定在塔吊的吊钩上,并连接测试仪、电源等设备,然后将测高雷达置于造波池正上方某一固定高度处,对其下方造波池内的人造浪进行测量。造波池可根据需求模拟(1~3)级海情的正弦谱浪或PM谱浪。

图6 造波池实验示意图

将测高雷达置于造波池正上方15.5 m高度处,并模拟3级正弦谱浪进行测量,得到的测量高度和浪高如图7所示。

图7 3级正弦谱浪条件下的高度和浪高测量结果

由图7可以看出,测高雷达测得的高度值呈正弦波形式变化,与模拟的3级正弦谱浪相吻合,得到的浪高大多为0.4 m。由于造浪池区域受限,接触到池壁的浪涌反弹后与后续浪涌对冲,形成一个瞬时的浪峰,偶尔能测到0.5 m的浪高,按照海浪高度的划分等级,属于3级海情的浪高范围。

5 结束语

基于STM32系列ARM处理器实现的测高雷达具有集成度高、体积小、重量轻的特点。通过机载挂飞和造波池实验,验证了该雷达具有良好的连续跟踪测高性能,可实现海浪高度的精准测量,具有很好的工程应用前景。

猜你喜欢

串口滤波时钟
基于HP滤波与ARIMA-GARCH模型的柱塞泵泄漏量预测
应用于农业温度监测的几种滤波算法研究
这个时钟一根针
基于非下采样剪切波变换与引导滤波结合的遥感图像增强
MCS—51单片机中的多串口通讯技术的应用
有趣的时钟
时钟会开“花”
全国计算机等级考试机房准备工作探讨
微机串口的测试诊断
合成孔径雷达图像的最小均方误差线性最优滤波