基于FPGA的机载电力线载波通信调制解调模块设计

2022-06-01 13:17陈永红黄莉莉王友仁
计算机测量与控制 2022年5期
关键词:电力线干扰信号载波

陈永红,张 砦,黄莉莉,刘 峰,王友仁

(1.沈阳飞机设计研究所扬州协同创新研究院有限公司,江苏 扬州 225200;2.南京航空航天大学 自动化学院,南京 211106)

0 引言

机载电力线载波通信是一种以飞机机载电力线为媒介进行信息传输的通信方法,基于机载电力线的载波通信技术,可实现电缆上既供电又传输控制信号和数据信息,对于解决现有飞机环境下因分别采用独立配置供/配电网、控制信息网和数据通信网所导致的重量叠加、空间挤占、信道闲置和组网不灵活等问题有重要研究意义。

目前,国内电力线载波通信技术已在民用领域得到比较广泛的应用,但面向飞机机载环境的应用几乎是空白,主要原因是机载电力线信道的强噪声干扰、机载设备工作频率多样化等因素导致的信道复杂度高,加上机载通信要求更低的通信误码率,因此,目前机载载波通信技术仍处于研究探索和可行性实验验证阶段。本文研究以验证机载环境下电力线通信的可行性和有效性为目的,主要介绍基于FPGA的调制解调模块设计方法,并基于整个通信模块设计结果进行验证和测试。

本文设计的通信波特率为115.2 kbps,采用频移键控(FSK)技术,采用的2FSK方法具有转换速度快、抗干扰性和抗衰落性强的优点,且技术上易于实现的特点,适合用于验证机载电力线载波通信应用的可行性和有效性。基于Vivado2018.2平台和Verilog硬件编程语言,采用模块化设计方法,实现了整个调制解调系统,得到了基于FPGA的较高性能和较低误码率的调制解调器,并构建了整个电力线载波通信系统对FPGA调制解调器进行性能测试和分析。

1 调制解调模块结构

设计的机载电力线载波通信总体结构如图1所示,基于28 V直流电源线,采用主从控制方式的点对点验证方案,验证系统包含1个主节点和1个从节点,由主节点控制向从节点发送数据(写操作)或接收从节点发出的数据(读操作),主、从节点硬件电路结构完全相同,主要由FPGA模块和模拟前端(Analog Front End,简称为AFE)电路组成;与通信节点连接的上位机用于对发送/接收数据分析、显示和交互;通信节点与电力线采用耦合连接方式,耦合电路包含在通信节点内部的AFE中;系统中接入干扰设备用于验证通信可靠性。

图1 机载电力线载波通信系统组成结构图

基于FPGA的调制解调模块结构如图2所示,按通信功能可分为调制通路、解调通路和传输控制电路三大部分。调制通路包括数据发送、编码和调制3个子模块,实现发送数据处理功能,其中数据发送电路负责接收并解析上位机通过串口发送来的数据和命令,编码电路负责将要发送的数据和命令按照电力线传输协议编码成数据帧格式,调制电路负责将数据帧中的二进制编码调制成对应载波频率的方波信号,输出到AFE模块;解调通路包括解调、解码和数据接收3个子模块,实现接收数据处理功能,解调电路对AFE模块接收的信道载波信号进行解调,还原为数据帧并校验其正确性,解码电路将数据帧解析出有效数据和命令,再通过数据接收电路将其转换成串行接口数据格式,发送到上位机;传输控制电路主要实现对整个传输过程的同步、转换、差错处理等进行控制。

图2 基于FPGA的调制解调模块结构图

2 系统设计与实现

本文设计的调制解调模块属于图1和图2中FPGA模块部分,通信系统设计时,FPGA模块选用芯片Xilinx ZYNQ xc7z020clg400-2,基于Vivado2018.2平台和Verilog语言开发,该芯片系统时钟为50 MHz。

针对机载通信环境中干扰信号特点,从信号传输可靠角度,一方面保证信息传输质量,另一方面避免载波信号频率与环境干扰信号频率接近,最终载波信号频率分别选择4 MHz和2.5 MHz来表示2FSK中的高频和低频。下面分别就三大部分组成电路的设计和实现方法进行介绍。

2.1 调制通路的电路设计

调制通路中,数据发送流程如下。

1)数据发送电路。

接收由上位机发出的传输数据及目标地址信息,数据发送电路主要是一个接口电路模块,需要将上位机发出的按照串口协议格式的数据解析出传输数据和目标地址信息,主要进行数据寄存和变换;

2) 编码电路。

根据发送数据信息,编码生成按电力线传输协议格式的数据帧,包括添加数据帧相关信息和奇偶校验位。本论文方法中采用的数据帧格式有3种,分别为命令字、数据字和状态字,每种帧字由25位组成。

命令字格式:帧头(3位,为101)+接收节点地址(5位,00000~11111,支持32个通信节点)+读写位(1位,0表示读,1表示写)+数据长度(5位,表示传输数据的字节长度, 00000~11111分别对应1~32字节)+状态信息(4位,1111表示广播,其他表示点对点传输)+起停位(1位,1代表开始发送,0代表停止发送)+发送节点地址(5位,支持32个通信节点)+校验位(1位,奇校验);

数据字格式:帧头(3位,为110)+接收节点地址(5位)+数据(16位,一次传输2个字节,若要传输多个字节,则连续发送多个数据字)+校验位(1位);

状态字格式:帧头(4位,为1001)+接收节点地址(5位)+错误节点地址(5位,表示发生错误的从机的地址,若传输过程没有发生错误,则该地址无意义)+状态区别位(3位,用于表示是否有错误和错误次数,000表示无误,001~111对应同一数据帧的连续传输误码次数)+错误字类型(2位,用于区别发生传输差错的帧字类型,01表示为命令帧;10表示为数据帧)+预留(5位)+校验位(1位)。

3)调制电路:将基带信号调制成由4 MHz(表示码元“1”) 和2.5 MHz (表示码元“0”)组成的载波信号,实现原理如图3所示,用基带信号的“0”、“1”状态控制调制开关,分别选通2种不同频率载波输出,实现数字基带信号载波频率调制,调制输出信号为相同幅值、不同频率的方波信号相接的形式,本项目研究采用方波信号直接输出到AFE模块的设计方案。

图3 调制电路工作原理

图4和图5所示为示波器观测的调制信号波形。图4为调制后两种不同频率载波信号的波形图,多个高频信号表示数字量“1”,多个低频信号表示数字量“0”,连续多个周期信号的原因是载波频率远高于基带频率,本文1位码元“1”包含34个4 MHz载波周期,1位码元“0”包含21个2.5 MHz载波周期。图5所示为一个数据帧的调制波形,包含25位码元“0101111001111011110111111”,深色部分为高频载波,浅色部分为低频载波。FPGA输出的调制波形为方波信号,经模拟前端电路转换成正弦波耦合到电力线传输,接收端AFE电路负责将正弦波转换为方波,再输入到FPGA,由解调电路进行解调和校验。

图4 调制模块波形仿真图

图5 一个完整数据帧的调制波形

2.2 解调通路的电路设计

解调通路主要负责接收电力线上的载波信号(经过AFE电路后的方波信号),解调出基带信号,并进行校验,若结果正确,再将正确的数据发送给上位机。

解调通路中,数据接收流程如下:

1)解调电路:从AFE接收处理(解耦、滤波、整形)后的载波信号(方波信号),解调电路原理框图如图6所示,采用边沿(上升沿)检测法对载波信号进行检测,利用信号过零点的上升边沿数与两种载波频率的对应关系(载波频率/基带频率),在一个基带信号码元周期(本文通信波特率对应的码元周期为8.68 μs)内,对接收到的载波信号过零点次数进行计数(2.5 MHz载波共有21个上升沿,4 MHz载波共有34个上升沿),可检测出载波信号频率,实现数据帧解调。

图6 解调电路结构原理框图

2) 数据帧解码电路:按传输协议格式,对解调的数据帧进行解码。解码是编码的反向过程,首先经奇偶校验电路对数据帧传输正确性进行校验,校验无误则将正确信号通过数据接收电路发送给上位机,完成数据的传输;若校验有误,则通过状态字通知发送节点重新传输上次数据,直到传输正确或传输次数达上限阈值(通信中断)为止;若校验无误,解码电路将根据通信协议约定的数据帧类型、格式解析出相关信息,再传送给数据接收电路。

3) 数据接收电路:将解码后的数据转换成串口通信数据格式,从串口发送到上位机,与数据发送电路类似,数据接收电路也主要起接口电路作用。

图7所示为示波器观测的接收通路中传输信号波形图(AFE发送到FPGA端的信号,是经比较器输出的方波),图中实际接口通路的波形受信道影响,不是规则方波,但上升沿数目在可准确判定载波信号频率的容错范围内,由此可见,若两种载波频率的间隔越大,检波过程的容错能力越强,有利于提高解调可靠性,但这样选择不利于AFE中滤波电路设计,会因为带通频率范围大导致载波信号干扰强,本文选择的两种载波频率是通过实验后确定的。

图7 接收通路接收的载波波形

2.3 解调电路的抗干扰设计

解调电路的主要功能是实现从载波中准确解析出基带码元数据,但载波信号受到信道和负载的干扰会发生畸变,解调电路设计必须要有消除载波信号干扰的方法,这需要针对机载电力线通信环境进行设计,本文通过在仿真过程加入干扰信号(模拟实际系统的用点设备干扰和噪声干扰信号)的方式对抗干扰方法进行验证。采用的抗干扰设计方法主要包括两种:

1)设置检波容限。检波方法中,针对两种载波频率差值,设置边沿检测的容限,利用载波信号频率与基带信号频率的倍数关系,确定检波容限进行抗干扰。因信道和负载干扰影响,在基带信号码元周期8.68 μs内,上升沿计数值的个数不可能是准确的34和21,但差值为检波提供了容限范围,本文方法设置上升沿计数值在15到27之间时为载波频率2.5 MHz,上升沿计数值在27到40之间时为载波频率4 MHz,此检波容限能够消除信道上的毛刺和高频干扰,计数值超过40和低于15时,认为线上没有载波信号。

2)分时检波计数法抗干扰。载波通信技术中,载波通信中收、发节点调制解调过程普遍存在同步难的问题,准确确定有效数据帧的起始点是提高解调可靠性的关键技术,也是难点技术,本文采用在一个数据帧周期内进行多次检波计数的方法,可有效滤除非有效数据帧信号干扰,从而准确确定出有效数据帧的起始点。

图8 分时检波计数法抗干扰仿真结果

图9 控制功能软件实现流程图

本文通过对1 μs时长(码元周期为8.68 μs)进行持续上升沿检测的方式,判断接收到的载波信号是否为有效载波。解调电路在1 μs时间内持续进行上升沿计数,根据计数值判断是否为干扰信号:若1 μs内边沿计数值小于4或大于7,则认为接收到的信号是干扰信号,若介于4和7之间,则认为是可能的有效载波,将继续对下一个1 μs进行判断,如果第二个1 μs计数依然在4和7之间则认定为之前的1 μs内为有效载波,否则认定之前的1 μs内为干扰信号,以此类推进行第三个1 μs时长检测,直到8个1 μs时长检测均满足有效载波判断规则,则认定收到一个有效码元,进而按照数据帧解调方式对多个数据码元进行解调。只要中间有一个1 μs时长的检测不满足要求,则认定为干扰信号,将重新计数8个1 μs时长。

图8所示为采用上述解调模块抗干扰技术实现的解调抗干扰同步时序仿真图,从仿真结果看,能够很好达到同步(同步时间差小于1 μs),可有效排除信道上与有效载波频率相同但传输时间不完全重合的干扰信号的影响,这类信号是AFE模块中滤波电路难以滤除的。

2.4 控制电路设计

图9所示为控制电路设计时的控制功能软件实现流程图。控制电路初始化后,等待两个输入端口(上位机输入和AFE端输入)信号输入,若上位机有信号输入则进入FPGA调制解调模块中发送消息的过程,若AFE端有信号输入则进入FPGA调制解调模块中接收消息的过程。

1)发送消息过程:FPGA接收到上位机通过串口发送的消息后,首先对串口协议数据解析,得到通信用的传输信息,然后进行编码和调制,并将消息发送给AFE端,在FPGA调制解调模块对码元进行调制的同时,控制电路要将发送使能端打开,同时关闭接收使能端,以保证控制逻辑正确。为检测传输通道是否正常,发送节点在消息发送完成后,内部计数器按预设时间开始计时,若计时达到设置的上限时间,未收到返回的状态字,则认为当次传输失败,则对该条消息进行重传;若计时过程结束前有状态字返回,则进入接收消息处理过程,同时计时复位,将根据接收到的状态字消息确定下一步操作:是重传还是发送下一条消息。

接收消息过程:FPGA对AFE端传输过来的信号进行解调,解调完成后,首先对帧数据的接收节点地址进行判断,若不符合当前节点的地址,则不进行后续处理,继续等待AFE端信号;若与当前节点的地址相同,则进行帧头判断,确认数据帧类型,若判断结果表明帧头并不符合当前协议规定,即非有效帧头,则视为干扰信号,若符合协议中规定的3种类型帧头,则对帧数据进行校验。

接收到的数据帧字为开始命令字和数据字时,若校验结果出错,则记录错误次数(直到整条消息(可能由多个数据字构成)全部接收完成,才根据记录的错误次数进行处理),继续接收后面的帧数据;若校验结果正确,则不记录,也继续接收后面的帧数据;针对结束命令字,若校验结果正确,则需要查看错误次数记录的寄存器,若寄存器不为0,说明之前的帧数据有传输错误,则产生需要重传的状态字,若结束命令字正确,同时查看错误次数记录的寄存器,若寄存器不为0,则需要产生要求重传的状态字,若错误次数为0,说明消息传输正确,则产生传输正确的状态字,反馈给发送节点;若接收到的是状态字,则对状态字进行解析,若解析结果正确则说明上次消息传输正确,若解析出的信息为传输错误且达到上限次数,则告知上位机信道不通,若未达到上限次数,则FPGA调制解调模块进行重传。

3 机载电力线载波通信调制解调器实现

在Vivado中创建顶层top.v文件,对所有的硬件描述文件进行编译,通过在testbench文件中添加激励的方式观测仿真输出信号,查看功能实现的准确性。

图10所示为发送通路中FPGA调制过程仿真图,其中din为输入的基带信号,波特率为115.2 kbps,dout为调制后的信号,其中深色的为4 MHz的高频载波信号,浅色的为2.5 MHz的低频载波信号。图11所示为FPGA解调过程仿真图,ddin为载波信号,ddout_buf_demo为经过解调后的基带信号,可见解调功能正常。

4 基于FPGA的机载电力线载波通信调制解调器应用

为验证本文设计的调制解调器功能和性能,基于实验室条件搭建的机载电力线载波通信系统,应用本文设计的调制解调器模块,测试系统在电力线通信环境中的误码率和通信速率。图12所示为机载电力线载波通信验证系统框图,包括电源(28 V直流电源)、上位机和两个通信节点,每个通信节点内部集成了AFE模块和FPGA模块。上位机与通信节点之间通过串口连接;通信节点与电力线之间采用耦合连接,由AFE模块实现,通信节点和干扰设备都由直流电源供电。

为验证基于本文调制解调模块的机载电力线载波通信系统有效性,针对不同电力线长和不同干扰信号(通过外接负载和信号发生器注入的形式生成)情况进行了通信测试,通信误码率结果如表1所示。得到如下一些结论:

图10 FPGA调制过程仿真图

图11 FPGA解调过程仿真图

图12 机载电力线载波通信验证系统框图

1)电力线线长影响:针对实际需求,对长度在20 m以内的电力线进行通信实验,分别用2 m和20 m两种线长通信,误码相同,表明20 m以内线长对通信影响很小;

2)干扰信号幅值影响:任何频率下,干扰信号幅值小于300 mV(载波信号幅值为1.1 V),时,不会发生误码;若信号频率在载波频率附近,则会导致误码;

3)干扰信号频率影响:在线长选择20 m,干扰信号幅值选择300 mV时,若干扰信号频率小于2.1 MHz或大于4.5 MHz,持续加载干扰信号也对通信无影响;若持续干扰信号频率介于2.1 MHz和4.5 MHz之间,则会造成不同程度误码:幅值小于300 mV时,干扰信号幅值越小,误码率越低,但能够完成通信;幅值大于300 mV将无法正常通信;若注入随机干扰信号(频率介于2.1 MHz和4.5 MHz之间,表1中以2.5 MHz持续10 μs的方波信号模拟随机干扰,每隔40 ms发送一次),通信能够满足误码率10的设计要求。

表1 通信测试结果

5 结束语

本文详细介绍了基于FPGA的电力线载波通信调制解调器的设计和实现过程,给出了调制解调内部具体模块的设计、仿真及物理实现过程,基于设计的机载电力线载波通信系统测试验证了本文用FPGA实现的调制解调器的正确性和有效性。通过不同线长、不同幅值和不同频率干扰情况测试,验证所设计通信系统满足了误码率设计需求,信道波特率为115.2 kbps时,误码率低于10。

猜你喜欢
电力线干扰信号载波
基于小波域滤波的电子通信信道恶意干扰信号分离方法
低载波比下三电平NPC逆变器同步SVPWM算法
中国移动LTE FDD&TDD载波聚合部署建议
基于电力线信道分析的调制解调方式选择
智能天线在移动通信中的应用分析
跨越电力线施工方案的优化
为什么更快解读LTE—ACat.9三载波聚合
以PT6964芯片作为显示驱动的EFT抗干扰措施
宽带通信搭上电力线的便车