刘福才 李 坤 张兴娟 王 猛
(燕山大学西校区电院,河北 秦皇岛 066004)
PFN(脉冲形成网络)是对储能元件缓慢充电,然后在短时间内对能量脉冲压缩、整形、匹配等处理,得到各种理想的高幅度、大功率、陡前沿的脉冲输出。脉冲形成网络技术广泛用于可控热核聚变、电热化学发射、电磁发射、高能电子加速器等[1]。它能产生很强的电磁干扰,对通信传输带来了很大的干扰,而通信对系统的监测和控制的正常运行又具有至关重要的作用,因此在强电磁环境下对通信的抗干扰能力提出了更高的要求。本文结合PFN实际应用情况,提出了一种强磁环境下的混合通信设计方法。通过把光纤通信、RS485等通信灵活地结合起来,提高了其抗干扰的能力,确保系统稳定运行。本文重点介绍PFN通信部分的设计与实现。
在PFN监控系统中主要包括以下几个单元:监控计算机(PC),基于DSP的软开关高压充电电源U1,触发控制单元U2,B探针膛内速度检测单元U3,膛外网靶速度检测单元U4等。首先,监控计算机启动高压充电电源对PFN中电容充电,当电压值达到设定电压时,停止充电。然后,由监控计算机控制触发控制单元U2对PFN放电。最后,由以TMS320F240为核心的B探针检测单元U3对B探针的信号进行采集,网靶速度检测单元U4则对网靶的信号进行采集,数据上传给监控计算机。
图1 PFN通信系统基本框图
通信系统设计原则:首先,抗干扰能力强,保证测控系统的可靠运行;其次,实时性好,响应速度快;第三,保证数据传输的误码率低,以确保人身和设备的安全[2]。
在PFN监控系统中,由一台工控机作为控制中心,完成充电控制、B探针信号检测、网靶速度检测、触发控制等任务。计算机通过串口向各个下位机下达控制命令和进行数据读取,因此通信系统需设计成一机对多机通信的方式。图1为PFN整个通信系统框图。
计算机首先通过串行口COM端发送RS232信号,由RS232转TTL模块转换成下位机可以识别的TTL信号,再由TTL转光纤模块转换为光信号接入混合通信板。
混合通信板接收到光信号后,首先由混合通信板的光纤转TTL部分转化成TTL信号,然后以两种形式发送信号。一种是由MAX1480B把TTL信号转化成RS485信号,与B探针信号检测、网靶速度检测模块以及触发模块等设备进行通信;另一种是将转化来的TTL信号原封不动地转换为光信号,与充电模块进行通信。
由混合通信板转换成的RS485信号与U2、U3、U4等之间采用RS485通信,这些模块主要用作系统的B探针信号检测、网靶速度检测以及触发控制等。RS485构成的总线型网络系统,采用主从方式进行多机通信,这里的主机是工控机,从机是DSP构成的各功能模块。
由混合通信板出来的光信号再通过充电板的光纤转TTL模块转换成TTL信号直接与充电模块进行通信。这里采用RS232通信是因为RS485通信是半双工的,不可以同时接收发送数据,在充电的时候,一些下位机模块会每隔一定时间上传数据,当发生故障时,充电模块可能因为RS485通信占线而无法顺利发送充电停止的命令,从而对设备和参试人员的安全构成威胁。为了保证其在任何情况下都保持通信的通畅,防止无法向充电模块发出停止等命令而导致危险情况,此处采用了RS232通信。
以上各通信过程均可逆,数据的接收是命令发送的逆过程。
图2 RS232转TTL信号电路
RS232是比较常见的一种通信方式。一般计算机都配有RS232串行口COM1,计算机的串口COM端输出的RS232信号,逻辑“1”是-3到-15V,逻辑“0”是+3到+15V。以DSP为核心的各个模块识别的串口信号是 TTL电平信号,逻辑“1”是5V,逻辑“0”是0V。这里选用MAX2323芯片实现RS232到TTL的电平逻辑转换,MAX2323电路图如图2所示。PCTX发送的RS232信号从R1IN输入,从R1OUT输出F240能识别的TTL电平信号TTLRX;TTLTX和PCRX同上。
光纤通信是以光波为信息载体,以光纤作为传输媒介的一种通信方式。
在光纤通信的系统中,系统传输距离主要由光纤的损耗决定。光纤损耗随波长的加长而减小,光收发器采用HP的820nm波长的HFBR-0400系列。该系列中的 HFBR-1412/HFBR-2412最长距离可以达到2700m,在1500m可以达到5M的速度。HFBR-1412调制简单,用一个低阻抗、高电流速率的外围驱动芯片SN75452就可以实现数字调制.HFBR-2412内部集成了包括PIN光电检测器和直流放大器,其输出可以直接与TTL及CMOS电平相连[3-4]。
本文中用到的TX光纤口和RX光纤口都采用HFBR-0400器件使用手册给出的光纤电路。包括计算机端的TTL与光纤转换模块,充电端的光纤转TTL信号模块和混合通信板中的光纤口。
混合通信板是计算机与所有下位机数据交换的枢纽,也是本文的重点所在。控制中心的计算机只需要用COM端就能实现与整个系统的所有下位机进行通信,简化了线路,提高了计算机的利用率。
(1)混合通信板原理图
混合通信板汇合了光纤通信、RS232通信和RS485通信。图3是混合通信板的通信原理图。
混合通信板接受到来自计算机的光信号后,首先转换成TTL信号,一部分由MAX1480B转变成RS485信号,另一部分直接由光纤口变为光信号发送给充电单元。混合通信板是整个PFN通信系统的中枢。
图3 混合通信板原理图
(2)用MAX1480B免控实现TTL信号到RS485信号的转化
MAX1480B是由美国MAXIM公司生产的完整的带光电隔离的RS485数据通信接口芯片,它的最主要特点是驱动器具有限摆率的功能,可使电磁干扰降到最小,并且能减小由于终端不匹配而引起的反射。MAX1840B由光耦合器,DC-DC转换器和RS485模块三部分构成。
RS485是半双工的,需要进行收发控制,DE端是信号发送和接收使能端。一般的设计中是采用微控制器对DE控制,但这么做有两个弊端:一是使设计成本增加,硬件电路复杂;二是需要对微控制器进行编程,波特率变化和通信协议参数变化时,要改变延时参数,很不方便[4-5]。
因此本混合系统采用了免控制的TTL/RS485转化,完全从硬件上实现对转换器收发控制,与通信速率和通信方式无关,免除了当通信协议改变时,需重新改变参数。其接线原理图如图3右半部分所示。
在TTL信号中,+5V是逻辑“1”,0V是逻辑“0”。而 RS485接口采用差分电平方式传输,当两根传输线满足A-B> =200mV时为逻辑“1”,当 A-B <= -200mV时为逻辑“0”。
图中TXD与GND经过异或门后直接接到DI端,这样TXD与DI端的逻辑是相同的。同理TXD与VCC经过异或门后直接接到DE端,TXD与DE逻辑相反。通常情况下,串口不发送数据时,TXD为逻辑“1”,DE 为逻辑“0”,接收端使能,MAX1480B 随时准备接收来自RS485方向的信号。当串口发送数据时,分为两种情况:TXD发送逻辑“0”时,DI端为“0”,DE端为“1”,MAX1480B发送使能,TTL的数据正常发送到RS485接口上,DI上的逻辑“0”发送过去,即A-B<= -200mV;当TXD发送逻辑“1”时,DI上的逻辑是“1”,而DE上的逻辑是“0”,MAX1480B发送功能关闭,DI上的逻辑“1”不能通过MAX1480B发送到RS485端,但A端和B端分别接上了上拉电阻和下拉电阻从而实现了A-B> =200mV,RS485接口接收到逻辑“1”信息,保证了TTL到RS485的正确通信。
在实际应用中,由于通信载体是双绞线,它的特征电阻为120Ω左右。因此要在位于总线两端的差分端口VA与VB之间跨接120Ω匹配电阻,以减少由于不匹配而引起的反射、吸收噪声,有效地抑制了噪声干扰[6]。
2.4.1 硬件设计
RS485部分的数据传输采用主从站的方法,如图1所示用RS485构成的总线型网络系统,采用主从方式进行多机通信。开始时所有从机复位,即处于监听状态,等待主机的呼叫[6]。从混合控制板输出的RS485信号,把所有利用RS485通信的模块并联在RS485总线上,计算机把命令发送到RS485总线上,各个模块发送数据也是发到RS485总线上。总线上的所有从站接收到报文后,把报文中的目标地址与该从站本身地址做比对,如果匹配则对报文进行处理,不匹配则不予理睬。
2.4.2 软件设计
图7 报文框架
计算机把一组数据发送到RS485总线上,所有模块均接收到该数据,数据的区分通过订制报文来解决的。图7就是实际所用的报文框架。报文头解决总线上一些乱码对数据接收和发送的干扰,发送端地址对应着数据的来源,接收端地址指定数据的去向,数据类型决定了数据是具体接收模块,报文尾是数据全部接收到的标志。总的来说,发送端地址和接收端地址是指计算机或者以DSP为核心的下位机,数据类型是对各个以DSP为核心的下位机的区分[7]。
例如:报文头用7E E7 7E,PC的代码是58,DSP下位机用F3,报文尾0D,数据类型则是每个模块都有自己的代码,例如模块1定义为01,模块2定义为02,模块N定义为N。一组报文为:7E E7 7E 58 F3 01……0D此报文是计算机发送给下位机模块1的报文,当其他模块接收到这个报文后,对比地址不是自己的,则对此报文不予理睬。下面详细介绍DSP命令报文检测程序。
以上程序说明:当下位机接收到RS485总线上的数据后,首先检测此报文前五位,最先接收到的数据依次与RED_HEAD中的数据进行比较,其中的任何一位与RXD_HEAD中的数据不相同,都返回到SCI_RX_BACK,对AR4和AR6进行初始化,再返回到主程序中。只有前五位与RXD_HRAD中的数据相同时,对JS_mark进行置位,接收数据使能。开始全部地接收数据,直到收到0D停止接收,然后对数据进行检测、判断。
RS485总线中接有电压检测和电流检测的单元,会给上位机PC上传数据,DSP向计算机发送数据首先打包,在7E E7 7E F3 58……0D中添加数据,然后发送。数据发送到RS485总线上,通过混合通信板发送给计算机,由于计算机识别的是7E E7 7E F3 58……0D格式的数据,接收地址是58的数据包,接收并处理数据。由于共用RS485总线,各RS485模块也接收到此数据,但是接收地址和发送地址不相符,各模块接收后便丢掉。
在必要的时候RS485各模块之间也可以互相发送命令,命令格式与PC发的命令格式相同,例如模块1给模块2发送命令7E E7 7E 58 F3 02……0D,此时PC接收到此格式的命令,不是它要处理的数据,就丢掉了。只有模块2会响应此命令,其他模块也不响应此命令。
混合通信板输出的光信号,发送到充电单元,由充电控制板上的光纤转TTL信号模块,将接收到的光信号转换为TTL,然后与充电单元进行通信,这里不再详述。
在PFN监控系统中,有许多参数需要测量。本文根据实际要求,给出了一种集RS232、RS485及光纤的混合通信设计方法,给出了芯片选型及电路原理图等。在PFN强电磁脉冲环境下,以一台工控机为主机,与多个DSP从机进行通信。经实验验证,采用光纤通信和RS-485组成的混合通信,数据收发正常,抗干扰性好,通信方式灵活,能适用于强电磁干扰环境下的测控场合。
[1]张柯,钟和清,林福昌,何俊佳,邹云屏.基于DSP和FIFO的多路高速数据采集系统在PFN中的应用[J].电测与仪表,2006,43(492):37~41.
[2]王志军,王少荣.基于RS485和光纤通信技术的测量系统设计与实现[J].电气应用,2006,25(9):54 ~56,70.
[3]饶文贵,田建生.DSP串行数据光纤传输系统设计[J].计算机测量与控制,2007,15(1):127 ~128,134.
[4]潘圣民,刘小宁,杨雷.基于DSP的光纤数据采集网络的研制[J].微计算机信息,2006,12(Z):106 ~108.
[5]阳世荣,王少荣.基于RS-485与光纤混合通信网络的脉冲功率测控系统[J].广东电力,2006,19(9):70 ~72,78.
[6]王琦,秦娟英,周伟.用RS485构成总线型多点数据采集系统[J].计算机自动测量与控制,2000,18(6):45 ~47,52.
[7]周凌辉,王少荣.强电磁环境下测控系统的通信系统设计[J].高电压技术,2004,30(2):43 ~44,53.