您的位置 首页 软件

根据PXI总线的水声方针回波模仿模块的规划

0引言目标回波模拟是通过计算机系统对水声信号进行建模,然后在计算机或其它设备上实时模拟水声目标回波并输入至信号处理器,以…

  0 导言

  方针回波模仿是通过计算机体系对水声信号进行建模,然后在计算机或其它设备上实时模仿水声方针回波并输入至信号处理器,以到达检测信号处理单元功用、功用的意图。PXI总线是PCI 在仪器范畴的扩展,它将Compact PCI 规范界说的PCI 总线技能发展成适合于实验、丈量与数据收集场合运用的机械、电气和软件规范,然后构成了新的虚拟仪器体系结构。现在,PXI 总线在测控范畴得到了越来越多的运用。

  本文介绍了自行规划研发的宽带回波模仿器,可模仿4 路水下方针回波,且各方针的方位、速度、强度、间隔等参数在计算机的操控下实时可控,为多参数回波模仿水池实验体系供给一套功用强、实时性好、运用便利的通用宽带回波模仿模块

  1 宽带水声方针回波模型

  现在声呐的发射信号很多选用宽带信号,传统的窄带回波模型现已难以习惯回波仿真的要求,有必要运用宽带回波模仿进行剖析。自动自导作业时,由发射机向方针宣布声波u(t),经方针反射后构成回波s(t)。回波s(t)携带着有关方针的一切信息,是检测和参数估计的悉数依据。因为方针的运动,发射波形与接纳波形的宽度是不同的,存在时刻紧缩效应。若方针做匀速运动,速度为v,海水中声速为c,则宽带方针回波模型如下:

  由宽带回波模型可见,回波与发射波比较,有几点改变:

  ① 振幅衰减,对慢崎岖点方针,其时刻包络为瑞利散布的随机变量。

  ② 时延,回波比较发射波推迟0 τ 。

  ③ 时刻标准 s,使得时刻包络发生弹性,即时宽和幅宽遭到紧缩或扩展。

  2 体系需求与规划结构

  2.1 体系需求

  为了满意宽带回波模仿的需求,回波模仿模块应具有以下功用:

  ① 具有更大的动态规模以模仿不同间隔的方针回波;

  ② 能够准确地模仿方针回波的强度、时延和脉冲弹性;

  ③ 能够准确地丈量并记载输入、输出信号的各项参数。

  在对以上功用进行仔细剖析后,确认回波模仿器应满意以下参数:

  ① 方针强度:0~80dB(可设定),0.375dB 档;

  ② 回波时延:0~3 秒,差错不大于0.5%;

  ③ 模仿运动速度:-30~+30kn;

  ④ 脉冲展宽可设定;

  回波模仿器将接纳到的脉冲信号通过 AD 转化保存在FIFO 中,发射时再从FIFO 里取出数据进行DA。这种办法很好地保存了接纳信号的信息,一起DA 输出时钟逐Hz 可调,能完结对回波进行脉冲展宽。通过数字衰减后输出,衰减程控可调,可用于构成回波包络。

  2.2 体系结构

  在某检测设备的研发进程中,研发了依据 PXI 总线的回波模仿模块,该模块能对发射信号进行高速收集,在准确推迟后,供给模仿回波,可使用声对接阵对声纳进行陆上测验。体系结构框图如图 1 所示:

  
图 1 回波模仿模块结构框图

  回波模仿模块包含模仿输入、数据收集、数据存储、数据回放、DDS 方波发生器、PXI接口六部分。体系结构如图1 所示。其中心部分是AD 转化、DA 输出、PCI 接口及FIFO的完结。模仿输入部分由运放直流耦合扩大电路组成,首要功用是向后级电路供给牢靠的模仿信号。体系中的AD 转化器选用Analog Device 公司出产的AD9709。采样时钟由高精度DDS 芯片AD9850供给,并由CPLD 进行操控,最高采样频率可达40MHz,并可完结逐Hz可调。数据缓存选用异步FIFO,体系选用两片512K×9 的IDT72V2113,通过深度扩展,完结1M×9 的FIFO。数据D/A 选用Burr-Brown 公司的ADS831 芯片。FIFO 的读写时钟、状况操控、AD 操控、DA 操控以及DDS 频率操控均由CPLD 完结。

  在收集波形存取中,选用了FIFO 存储发射信号,主控模块通过读写地址发生电路对波形存取的进程进行操控。时钟发生模块为读写地址发生电路供给独立的读、写FIFO 时钟,通过读、写FIFO 时钟的频率差来完结回波信号的弹性设置。FIFO 存储器的读、写时钟由数字频率合成器(DDS)AD9851 发生,它受主控模块的操控,发生设定频率的方波信号,用于发生AD 收集、FIFO 读写、DA 回放芯片的时钟信号。

  3 模块软件完结

  回波模仿模块运用 PXI 总线,可用于PXI 总线计算机中。PXI 总线规范是NI 公司于1997 年发布的[3,4,5]。PXI 这种新式模块化仪器体系是在PCI总线内核技能上增加了老练的技能规范和要求构成的。它通过增加用于多板同步的触发总线和参阅时钟、用于进行准确认时的星形触发总线、以及用于相邻模块间高速通讯的部分总线来满意实验和丈量用户的要求。

  现在 PXI 总线平台下以Windows2000、Windwos XP 为主,需求编写Windows WDM 驱动程序。该模块的驱动程序首要对接口芯片S5920 进行编程。模块软件包含驱动程序、运用程序,一起为了与NI 公司的LabView 软件兼容,还编写了与LabView 软件的接口程序。

  3.1 WDM 驱动程序编写

  3.1.1 WDM 模型简介

  WDM 模型(Windows Driver Model)是微软公司为当时干流操作体系Windows2000 和WindowsXP 的驱动程序规划的一种构架,它和传统的VXD 的驱动是彻底不同的体系结构。Window2000/XP 体系结构图如图2 所示,运用程序调用Windows 子体系win32API,这个调用由体系服务接口作用到I/O 办理器,I/O 办理器进行必要的参数匹配和操作安全性查看,然后由这个恳求构造出适宜的IRP(IO Request Package),它实践上是一个数据结构,具有丰厚的成员,关于单层的驱动程序直接承受并履行这个恳求包,并完结对硬件的操作,然后完结I/O 恳求作业,并将履行的成果通过I/O 办理器回来给运用程序,而关于多层的驱动则将驱动程序分红了若干层,每层驱动再把I/O 恳求划分红更简略的恳求,以传给更基层的驱动履行。

  3.1.2 规划办法

  体系运用 VC+DDK+Driverstudio 来进行驱动的开发。Driver Studio 为驱动程序规划供给DriverWizard 导游,能够很便利地树立一个完好的驱动程序结构。规划PCI 驱动程序根本过程为:

  ① 挑选 PCI 总线类型,填写相应的VendorID、DeviceID、SubsystemID、RevisionID,

  这些有必要和PCI 板卡上的装备信息共同,用于发生INF 文件,在装置时辨认板卡;

  ② 填写注册表信息;

  ③ 增加资源,包含I/O、Memory、IRQ、DMA 等;

  ④ 挑选设备接口办法、读写办法、电源办理办法等;

  ⑤ 增加 IOCTL 命令字,并选用相应的输入输出形式;

  ⑥ 发生结构代码,增加用户代码;

  ⑦ 编译调试。

  驱动程序规划的作业首要在过程⑥、⑦,编写驱动首要针对以下的几个方面。驱动程序结构现已在增加资源时,创立了操作资源的KMemoryRange 类和KIoRange 类的方针,如将PCI 的Base1 空间设定为一个I/O 映射的空间,这个空间实践上便是CPLD 中寄存器的空间。要读写CPLD 中的寄存器拜访双口存储器便是拜访Base1 空间,这时S5920的PTNUM[2:0]会输出001,能够运用它完结对映射到该空间双口存储器的片选使能。

  驱动程序中需求创立方针 KIoRange m_IoPortRange1;

  并在 OnStartDevice(KIrpI)函数中调用

  status = m_IoPortRange1.Initialize(

  pResListTranslated,

  pResListRaw,1);

  对该方针进行初始化。

  在驱动的其它例程中就能够运用方针 m_IoPortRange1 调用该类的成员函数ind、inw、inb、outb、outw、outd 来完结对PCI 卡的Base1 空间的DWORD、WORD 和Byte 的输入输出操作。

  3.2 运用软件编写

  3.2.1 运用程序与驱动程序的通讯办法

  运用程序与驱动程序通讯过程为:运用程序首要运用 CreatFile 函数打开设备,然后运用WriteFile、ReadFile、DeviceIoControl 与驱动程序进行通讯,最终在运用程序退出前运用CloseHandle 封闭设备。DeviceIoControl 运用不同的IOCTL 命令字来调用驱动中的不同程序,完结运用程序与驱动程序的数据交换,驱动程序依据拜访办法的不同,运用不同的办法获取运用程序的输入输出缓冲区地址。

  驱动程序与运用程序的通讯:当驱动程序获取了特定事情发生时,有时需求将这一信息告诉给运用程序,首要的办法有2 种:一种是运用DeviceIoControl 进行异步通讯,另一种是在运用程序中创立一个事情,并将该句柄传给驱动程序,然后在运用层敞开一个线程等候这个事情,驱动程序会在事情发生的时分设置事情信号状况来触发运用程序。

  3.2.2 与NI LabView 运用程序通讯

  仿真体系操控软件由 NI 公司的LabView 软件编制,为使本模块能运用该软件操控,有必要编写接口程序。接口程序实践上便是Windows 规范动态链接库。链接库能够由LabView软件调用。

  链接库导出函数界说如下:

  extern “C” __declspec(dllexport) HANDLE OpenDrv();

  extern “C” __declspec(dllexport) void CloseDrv(HANDLE hDevice);

  extern “C” __declspec(dllexport) void WriteData(HANDLE hDevice,

  ULONG freq,double frequency1,double frequency2,

  double frequency3,double frequency4,double delay,double atten);

  因为在C++中HANDLE 型界说为void *,而LabView 中没有指针型变量,用Labview调用该函数时可直接界说为ULONG 型。详细代码略。

  4 运用实例

  某型多普勒声呐发射信号频率为 300kHz,发射脉宽最大60ms,信号选用重复相位编码,编码灵敏可变,带宽到达75kHz。为了完结对该声纳的检测,需求对其回波进行模仿,考虑到回波会发生弹性效应,本模块的首要技能指标如下:

  采样频率:10MHz~40MHz

  存储深度:1MB

  D/A 频率:10MHz~40MHz

  体系总线:PXI

  模仿回波时延:2ms~3s,精度0.1ms

  该模块已用于某型多普勒声呐的检测,能够模仿不同深度、不同相对速度的海底回波信号,作业杰出,功用安稳。

  5 结束语

  宽带回波模仿模块使用 PXI 技能,在Windows 环境下能够完结杰出的人机界面,装置便利,体积小,适用规模比较广泛。模仿模块能够模仿不同推迟、不同标准弹性的宽带点方针信号。体系已用于某型宽带多普勒声呐的陆上检测,通过与水池调试、湖试数据比照,发现该模仿办法有用,成果与实践实验根本共同。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/ruanjian/237056.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部