摘 要: 介绍了基于虚拟仪器的RailSAR测控系统的实现。该系统实现了对数字存储示波器的数据录取,经纬仪的坐标测量,步进电机的运动控制以及雷达数据的分析处理。
关键词: 虚拟仪器 RailSAR LabWindows/CVI
轨道合成孔径雷达(RailSAR)是一个非常复杂的成像雷达系统,由功能不同的几个子系统组成,包括雷达平台的运动控制,雷达回波的采集、传输和存储,雷达位置的跟踪测量以及雷达数据的成像处理等。RailSAR的系统结构如图1所示,其中步进电机实现雷达平台的步进运动,数字存储示波器完成雷达回波的数据录取,经纬仪跟踪测量雷达天线的3维坐标。RailSAR是一个自动化程度很高的测量系统,其通过计算机软件,实现对各种不同仪器设备和雷达数据的灵活控制和处理。
利用虚拟仪器系统的概念来构造特定的测量系统是一个发展趋势。虚拟仪器系统利用各种设备驱动程序和实用软件包,能够实现对各种设备的编程控制,完成数据的采集、传输和分析处理。本文介绍基于虚拟仪器系统概念设计的RailSAR测控系统的实现过程。
1 系统开发平台
虚拟仪器系统是现代计算机技术和传统仪器技术相结合的产物,它利用计算机强大的控制功能,通过软件编程,将各种不同的仪器灵活地组合在一起,形成一个实现某种特定功能的系统。软件是虚拟仪器系统的核心,特别是设备驱动程序构成了虚拟仪器系统软件的基础。目前国内外使用较为广泛的虚拟仪器开发平台是NI公司的LabVIEW和LabWindows/CVI,RailSAR系统使用的是LabWindows/CVI。
LabWindows/CVI是一种面向对象的可视化编程环境,以ANSIC为核心,以各种丰富的库函数为基础,为仪器控制、自动测试和数据采集应用提供了一个功能强大的开发平台。LabWindows/CVI应用程序的结构主要由四部分组成:①用户接口;②程序控制;③数据采集;④数据分析。LabWindows/CVI的强大功能主要依赖于它的各种库。对于用户接口,它提供了面板、菜单、按钮等用户接口库,使用户能够简单方便地作出程序界面。对于数据采集,它提供了仪器库、GPIB库、RS-232库、VISA库以及VXI库等,利用接口函数能够实现对各种仪器的灵活控制。对于数据分析,它提供了格式化I/O库、分析库以及高级分析库,能够快速地实现各种算法,还可以用用户接口库实现数据的各种表示。
2 RailSAR测控系统的实现
RailSAR在轨道上做等间隔的步进运动,每步进一次,就要进行一次雷达回波测量和天线位置测量,将测量数据以文件形式存入硬盘,测量结束后进行数据的成像处理。RailSAR系统需要主机通过各种不同的接口,实现对不同仪器的控制:通过GPIB接口控制示波器,通过并口控制步进电机,通过串口控制经纬仪。LabWindows/CVI提供了丰富的接口函数,能够方便地实现这些控制。RailSAR数据处理最主要的特性是算法复杂、数据量大。LabWindows/CVI的分析库提供了许多用C语言编写的成熟的信号处理的函数,能够迅速地生成高效的数据处理的应用程序,达到RailSAR数据处理的要求。
2.1 雷达数据录取
RailSAR正交解调接收机输出的I、Q两路信号,由数字存储示波器进行采集。RailSAR的脉冲重复频率为2kHz,每个雷达回波的数据接近1MB,总数据量高达几百MB。所以RailSAR的数据录取具有高速、大容量的特点,要求主机通过高速接口将数据从示波器传输到主机的大容量硬盘。通过接口总线(GPIB)的高速数据传输能力能够满足RailSAR数据录取的要求。
GPIB是控制器和可编程仪器之间通讯的一种总线协议,也称为IEEE 488标准,因为其使用简单,数据传输速率高,因而受到广泛地应用。GPIB的数据传输速率高达1MB/s,新的标准已经将传输速率提高到了8MB/s。主机通过GPIB接口总线和示波器连接,发送指令控制示波器的采集、传输和存储。
RailSAR系统采用的是NI公司的PCI插槽的GPIB控制卡,示波器采用的是Tektronics公司的TDS580D。GPIB卡及其驱动程序必须满足IEEE 488标准,最新版本的标准是IEEE 488.2。IEEE 488.2标准定义了GPIB仪器控制的通用命令及格式,例如读写命令IBRD和IBWRT的参数个数及类型,而命令的具体内容则根据仪器的不同而不同,由仪器的生产厂家提供。 LabWindows/CVI提供了丰富的GPIB/GPIB 488.2库,包括打开和关闭设备、读写数据等函数面板,可以很方便地调用及输入参数。
2.2 雷达运动控制
为了获取比较好的成像结果,RailSAR要求天线平台做精确的等间隔直线运动。运动的直线性由轨道的平直度保证,等间隔运动由高精度的步进电机实现。步进电机的运动是由脉冲控制的,脉冲的宽度决定一个步长的大小,即一步所转动的角度,脉冲的频率决定转动的速度。步进电机驱动器有三根控制线:一根脉冲线,输出适当占空比和频率的矩形脉冲,控制步进的大小和频率;一根方向线,控制运动的方向是正向还是反向;还有一根脱机线,用来保护步进电机。
主机选取并口的低3位信号线控制步进电机,并口地址为0x378。LabWindows/CVI的Utility库提供了INP和OUTP两个函数,用于从端口读和向端口写一个字节。步进电机的方向线和脱机线都是通过电平控制的,通过置位和复位就能够实现方向和脱机控制。脉冲线的矩形脉冲则是通过重复置位和复位来实现的。由于脉冲频率为1kHz,每一个脉冲高低电平的持续时间很短,只有0.5ms,使用常用延迟函数难以满足要求,所以我们采用了For循环来实现这种短时间延迟。步进电机对于启动、平稳运行和制动时的脉冲频率的要求是不同的,这就是步进电机的升降速曲线。在启动时,要求脉冲频率由低到高并逐步过渡到平稳运行时的固定频率;在制动时,也要求脉冲频率逐渐降低,直到停止。我们通过动态地改变For循环的终止条件,实现了步进电机的升降速曲线。
2.3 雷达坐标测量
理想的RailSAR运动是等间隔的直线运动。但是由于轨道平直度的误差以及等间隔运动的误差,RailSAR的实际运动总是偏离理想状况。运动误差直接影响着RailSAR回波的多普勒信号的相位和幅度,从而使脉冲压缩产生畸变,降低了RailSAR图像的质量,所以运动补偿是必不可少的。RailSAR采用经纬仪跟踪天线的运动,获得运动补偿的数据。
经纬仪放置在轨道的一端,反射器安装在天线附近。经纬仪根据反射器二极管的可见光跟踪天线,通过测量发射和接收激光的时间计算斜矩,通过伺服系统在水平和垂直方向的转动确定水平和垂直角。经纬仪有本地和遥控两种控制方式,RailSAR采用后一种方式。主机通过串口和经纬仪通讯,发送指令和读取测量结果。
LabWindows/CVI的RS-232库提供了一整套通讯函数,能够很方便地实现主机和经纬仪的连接。为了保证控制的可靠性,经纬仪对于主机发送的每一条指令,都会有确认字来确认指令已经被正确接收或执行。主机首先发送持续时间1秒的Break命令来远程启动经纬仪,然后设置控制方式为遥控,测量模式为跟踪方式,搜索并锁定目标,使经纬仪跟踪雷达的运动。每步进一次,主机就发出测量命令,指示经纬仪测量雷达的水平角、垂直角和斜距,主机读取雷达坐标,存入数据文件。
2.4 雷达数据处理
RailSAR主机采用一台PII400台式机,不仅要完成雷达运动控制、数据录取,还要担负数据处理的任务。RailSAR的数据处理主要分为4个部分:系统补偿、距离向脉冲压缩、运动补偿、方位向脉冲压缩或成像处理。RailSAR数据处理的算法复杂,数据量大,给数据处理带来了很大的难度。LabWindows/CVI的高级分析库提供了许多信号处理、矩阵运算、图像处理等方面的函数。这些函数都是已被证明了的成熟算法,就如Matlab的工具包一样,能够帮助用户方便迅速地实现信号处理的算法。而且由于这些函数是用C语言编写的,执行效率比Matlab要高许多倍。LabWindows/CVI的用户接口库提供的许多曲线和图像显示的函数,可以非常方便地将RailSAR结果显示出来。
虚拟仪器系统是现代测控技术的发展方向,它通过计算机软件,能够对测量仪器自由组合,实现用户特定的测量任务。RailSAR是一个复杂的测控系统,需要各种仪器协调工作,完成特殊的测量要求。本文利用虚拟仪器系统的概念,开发了RailSAR的测控软件系统,实现了RailSAR的测量要求。
参考文献
1 Getting Started with LabWindows/CVI.National Instruments
2 LabWindows/CVI Programmer Reference Manual.NationalInstruments
3 LabWindows/CVI User Manual.National Instruments
4 Chris.Pappas著,希望图书创作室译.Visual C++5参考大全.北京:中国轻工业出版社,1998
5 Winn L.Rosch著,李增民等译.微机硬件使用与维护手册.北京:科学出版社,1995