多用户水声通信仿真平台设计
2011-06-03赵极远王逸林
赵极远,王逸林,杨 威
(哈尔滨工程大学 水声工程学院,黑龙江 哈尔滨150001)
随着科学技术的进步,海洋资源的探测与开发日益受到注目。开发海洋资源需要母船、水下机器人和深海固定开发基站协同作业,因此对一个信息化、现代化的海洋通信网络有着极为迫切的需求。而声波信号是目前已知的唯一能在海洋中远距离传播的信号,由此水声通信网络应运而生。然而为构建水声通信网络进行的海洋试验,却由于海上试验高昂的费用和冗长的试验周期让人望而却步,因此设计一套可以在实验室进行模拟海洋环境的水声通信网络仿真平台有着重要的意义。
国际上,早在20世纪70年代就有较完善的仿真系统问世,我国直到20世纪90年代中期才开始有一些对于海洋声信道模型、现代先进声纳信号处理模型等仿真系统的研究。但对于水声通信网络仿真系统的研究也仅限于PC机软件模拟。由软、硬件相结合方法构建的水声通信网络仿真平台弥补了这一方面的空白,并对水声通信网络的研究有着很好的辅助和补充作用。
1 仿真平台构建
为达到模拟海洋水声信道、仿真多个用户之间水声通信的目的,仿真平台采用标准接口,可连接多个实际的水声设备,仿真其间的水声传播情况。该平台可以仿真各种海洋环境,帮助测试水声设备的功能,完成水声通信、水声定位、导航及水声对抗等试验。同时平台可以存储大量实际测量的水声数据,用以“重现”已进行的湖海试验。
由于仿真平台需模拟多个水声通信节点之间的水声通信状况,故系统采用服务器端-客户端模式。服务器端负责水声信道模型建立、人机交互界面显示等功能;客户端负责水声信号采集、数字信号处理以及信号数据转发等功能。如图1所示,以两节点通信为例,在实际的水声通信中,通信节点发射的声波信号通过水声换能器发送到海洋中,声波信号在经过水声信道后被接收方水听器接收,并传送给接收方通信节点。在仿真系统中,通过客户端、以太网传输及服务器水声信道建模来模拟声波信号离开通信节点后的传输过程。使得软、硬件结合的仿真系统可以更真实地仿真水声通信网络试验状况。
图1 水声通信实际情况与仿真情况对比
2 服务器端设计
2
.1水声信道理论建模
水声信道实际是时变、空变的信道,由于其变化缓慢,在仿真系统中近似为时不变信道。本仿真平台要求能够实时显示接收信号的畸变波形。射线声学以其计算的高精度、高速度及物理含义的显著性成为本系统的首选建模基础理论。射线声学理论体系由如下两个方程构建:
式(1)为声程方程,决定声线的传播轨迹;式(2)为强度方程,决定能量沿声线束管的传输情况。射线理论为严格波动理论的近似解,在传播声信号频率较高时,射线声学求解结果偏差极为微小。在深海水声通信中,由于海底界面影响较小,声线结构更为规律,采用射线方法计算精度更高。
多途相干水声信道的系统函数为:
其中,N为声波传播途径的总数;Ai为声波沿第i条传播途径到达接收点的信号幅度值;τi为声波沿第i条传播途径到达接收点的信号传播时延。只要能求解出Ai、τi的值,就可以近似构建所需的信道系统函数,并逼真地反映出水下声信道的传输特性。令通信节点所发射的声信号为s(t),则其经过水声信道作用后的输出信号y(t)应为s(t)与信道系统函数的卷积:
其中,n(t)为信道内的加性噪声,体现水下噪声特性。接收信号的幅度畸变、接收时延及受噪声干扰等信息均可以通过y(t)得出。由于实际运算中对于较长的信号序列使用卷积计算较为缓慢,考虑到运算的实时性,可利用FFT快速算法求解输出信号y(t)。此流程表示为:
至此,完成了水声信道模型的建立及接收波形生成的理论分析,据此设计实际使用的信道模型与波形处理软件模块。
2.2 服务器软件设计
图2所示为服务器软件功能结构图。以两个水声通信节点为例,服务器软件基本功能为通过以太网接收客户端发送的水声信号波形数据s(t),并将s(t)与水声信道建模产生的信道冲击响应h(t)进行卷积、时延等运算,得到通过模拟水声信道的信号波形数据y(t),再将y(t)传输给其他客户端,进而完成仿真任务。
图2 服务器软件功能结构图
3 客户端设计
3.1 硬件系统设计
客户端系统采用SoPC方案,主要完成信号采集、信号处理及数据转发等功能,如图3所示。FPGA芯片为系统控制及数据传输核心,对于水声信号的采集由音频CODEC完成,以太网数据传输通过FPGA内置MAC结合外部PHY芯片完成。NOR Flash用于操作系统及程序代码存储,SDRAM用于程序运行,Nand Flash用于数据存储,JTAG用于系统调试,RS232用于与GPS相连完成系统时间同步。
图3 硬件系统总体结构
3.2 FPGA内部结构设计
FPGA是系统的核心,整个系统的任务调度和管理都由FPGA来完成。图4所示为FPGA内部的总体结构图,其中I2C模块用于配置CODEC工作模式,I2S模块用于CODEC与FPGA之间数据传输。
图4 FPGA内部总体结构
图5 客户端软件程序流程图
3.3 Nios II处理器程序设计
图5所示为FPGA内部总体结构图。在Nios II处理器运行后,首先初始化μC/OS-II以及TCP/IP协议栈,然后开始运行客户端程序,Nios II处理器接收服务器的命令后通过I2C总线对CODEC进行配置,配置CODEC实现相应的A/D或D/A功能,由此程序进入正常工作的无限循环状态。
4 系统测试
对于客户端与服务器的联合测试,采用在理想水声信道模型中收发单频信号的测试方法。由一个客户端发送数据,经服务器接收并相应处理后转发给其他客户端。如图6所示,服务器接收客户端四(图中字母B指示处)数据并将其转发给另外三个客户端(图中字母A指示处)。测试现场如图7所示。
多用户水声通信仿真平台通过服务器端软件与客户端硬件的完美结合,可以最大程度地在实验室模拟海洋试验时所处的海况。在实际湖海试验前进行仿真试验对节约试验成本及缩短项目周期有着重要意义。
在多用户水声通信仿真平台中,服务器端很好地完成了信道建模、显控界面及以太网传输等功能。客户端系统采用SoPC方案,在单片FPGA中完成系统控制、信号处理及数据传输等功能,相对于传统ARM+DSP方案有着信号处理能力强、系统集成度高、硬件设计简单及系统稳定性好等优势。经实际测试,系统工作稳定,达到预期目标。