具有故障诊断功能的IEEE﹢1394b-PCI光纤接口卡的设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

September2010Vol.41No.3(serialNo.140)航空电子技术AVIONICSTECHNOLOGY32具有故障诊断功能的IEEE1394b-PCI光纤接口卡的设计郑俊杰,李立京,文怀涛(北京航空航天大学仪器科学与光电工程学院,北京100191)[摘要]针对工控领域中对现场总线传输距离、抗电磁干扰性和总线带宽提出的更高要求,设计了一种具有故障诊断功能的IEEE1394b-PCI光纤接口卡。利用此接口卡搭建光总线系统进行实验测试,并由实验得到工控机端光总线视频传输图及实验数据,从而证明接口卡能够满足实际的应用需求。同时,搭建的光总线系统能够实现故障定位,方便现场维护。[关键词]IEEE1394b;光总线;故障诊断[中图分类号]TP277[文献标识码]A[文章编号]1006-141X(2010)03-0032-05DevelopmentofIEEE1394b-PCIFiberInterfaceCardwithFunctionofFaultDiagnosisZHENGJun-jie,LILi-jing,WENHuai-tao(SchoolofInstrumentationandOptoelectronicsEngineering,BUAA,Beijing100191,China)Abstract:Consideringthehigherrequirementsoffieldbusraisedbyindustrialcontroldomainintherespectsoftransmissiondistance,Electro-MagneticInterferenceresistanceandbusbandwidth,IEEE1394b-PCIfiberinterfacecardwithfunctionoffaultdiagnosiswasdeveloped.Theopticalbussystemwasestablishedbasedonthefiberinterfacecard.Fromtheexperimentalresultsofvideotransmissiondiagramofopticalbusandanalysisofexperimentdata,itcanbeconcludedthatthefiberinterfacecardcanmeettheneedsofpracticalapplications.Atthesametime,theopticalbussystemcanrealizefaultlocationandiseasyformaintenance.Keywords:IEEE1394b;opticalbus;faultdiagnosis1引言自80年代以来,应用于工业控制领域的现场总线得到了迅猛的发展,迄今已有CAN、Bitbus、FF、HART等40多种标准。目前现场总线的发展受到了两方面的限制:一是总线标准太多,难以实现互操作性;二是目前的现场总线已达到性能的极限,不能够充分的满足工控领域对传输距离、电磁兼容性、总线带宽方面新的更高的要求[1]。IEEE1394是一种高速的串行总线,目前最高传输速度可达到3.2Gbps,且支持石英光纤、塑料光纤等多种光传输介质[2],可保证传输的光信号不受周围环境中的电磁干扰。如用单模光纤传输,信号传输距离可达数千米。因此,IEEE1394近年来不断应用于工控领域,在仪器仪表行业已经应用成功。工控领域中IEEE1394总线目前使用的传输介质主要是电缆,信号的传输距离和抗电磁干扰性能受限。基于这一考虑,本文设计了一种IEEE具有故障诊断功能的IEEE1394b-PCI光纤接口卡的设计郑俊杰等2010年9月第41卷第3期(总第140期)331394b-PCI光纤接口卡,利用此接口卡可搭建光总线系统,为工控领域内各子系统之间提供一种方便、可靠的连接方法。同时,此接口卡能够实现故障定位,方便现场维护。本文主要介绍具有故障诊断功能的IEEE1394b-PCI光纤接口卡硬件电路和故障诊断程序的设计实现。2硬件设计具有故障诊断功能的IEEE1394b-PCI光纤接口卡硬件框图如图1所示。图1接口卡硬件框图IEEE1394b-PCI光纤接口卡硬件设计中,其链路层芯片采用TI公司的TSB82AA2,符合开放式主机控制接口协议,通过内部的主机接口、先进先出存储器和物理/链路层接口来实现IEEE1394b数据包的传输和接收;物理层芯片采用TI公司的TSB81BA3,实现仲裁机制,对收发信号进行编码和解码,完成信号转发;光模块采用Finisar公司的FTLF8519P2BTL型小型热插拔收发器,可达到2.125Gbps的传输速率,负责IEEE1394b电信号与光信号的相互转换功能;电源监控芯片采用MAXIM公司的MAX6338;完成故障诊断功能则采用8bit的单片机AT89S52。3关键问题3.1PCI配置空间的初始化根据外设部件互连标准(PCI:PeripheralComponentInterconnect),每个PCI设备都要有一个256字节的PCI配置空间,配置空间是PCI设备的硬件和PCI设备的初始化软件及错误处理软件之间的信息交接区,以便软件对PCI设备进行识别和控制以及PCI设备向软件反映设备状态和要求。256字节的配置空间分为64字节的头标区和192字节的设备关联区。本文中的PCI设备TSB82AA2上电后需要初始化有关的PCI配置空间(即IEEE1394bGUID寄存器和一些PCI配置寄存器)。设计中采用FAIRCHILD提供的NM24C02LM8芯片来存储PCI配置信息。TSB82AA2上电后自动读取NM24CO2LM8中的内容,来配置供应商ID、系统ID、最长等待时间、最短获取时间和64位CUID寄存器等等。3.2光纤接口卡光电转换电路的设计本接口卡的光电转换电路部分—TSB81BA3和光模块的接口电路如图2所示。其中模块1、2为终端匹配网络,C1、C2、C3、C4为交流耦合电容,负责阻断直流信号。12R1TDISTPB++3.3V比较器光模块TPB-TPA+TPA-TSB81BA30.8V+3.3VR2R3R4TX+TX-RX-RX-R5R6R7R8C3C4C1C2图2光电转换电路在设计时需要注意以下问题:(1)IEEE1394b信号是800Mbps高速信号,所以阻抗匹配对信号完整性的影响很大。为TSB81BA3每端口的输出端TPB±和输入端TPA±分别提供一个由一对串行连接的56.2±1%Ω电阻组成的终端匹配网络。连接到输出端TPB±的匹配电阻的中间点通过并行RC网络耦合到地。RC网络中电容值的挑选十分复杂,电容值较小会导致RC时间常数过小,这样一来RC网络就类似于一个尖锐信号沿发生器,从而引起信号的过冲与下冲;反之,较大的电容值会引入更大的功耗。连接到输入端TPA±的这对匹配电阻的中间点被连接到相应的TPBIAS电压终端,这个电压终端必须通过1uF的September2010Vol.41No.3(serialNo.140)航空电子技术AVIONICSTECHNOLOGY34滤波电容来稳定[3]。(2)TSB81BA3有三个端口,分别连接到三个光模块上,其中每端口都有发送/接收的差分信号TPB±/TPA±。TSB81BA3和光模块的差分LVPECL电平的输出不能给对方差分LVPECL电平的输入提供偏置,同时TSB81BA3的差分LVPECL电平的输入为片内偏置。因此,两者之间必须采取交流耦合的方式。光模块输入端TX±的差分LVPECL电平无片内偏置,应分别由接+3.3V的电源的电阻分压网络偏置到+2V,同时电阻分压网络应满足终端匹配要求;选择合适的电阻给光模块的输出端RX±提供输出电流路径,应避免输出电流过大,且应考虑到终端匹配。采用接到略高于地但非常小的电平的戴维南终端匹配方式,这一终端匹配电压为+1.3V,可以用电阻分压网络来实现。这样输出端RX±的射极跟随器在输出静态电平+2V时也不会处于截止,同时终端匹配电阻不会从输出级汲取很大的电流。图2中R1,R2,R7和R8为130Ω,R5,R6,R3和R4为82Ω[4]。(3)为了防止光模块传递噪音,需要将阻抗匹配网络1中信号,即TPB±的共模电压值通过比较器与参考电压+0.8V作比较,当其大于参考电压+0.8V时,比较器输出为高电平,从而使光模块的TDIS引脚为高电平,允许其进行电光转换,发射光信号。4故障诊断程序设计故障诊断程序设计包括单片机底层程序的设计和工控机串口通信程序的设计。本文中使用的光模块支持在SFPMSA中定义的IIC串行通信协议,内置数字诊断收发控制器,其负责监测光模块的工作参数—光模块温度、激光器偏置电流、发射光功率、接收光功率、工作电压,并把工作参数存储在光模块内地址为A2的EEPROM中。单片机需使用单片机的六根I/O线作为SCL和SDA来模拟三对IIC线,通过三个光模块对外提供的IIC接口来分别读取上述工作参数[5]。电源监控芯片输入引脚处电平低于其输入阈值时,则在相应的输出引脚处输出低电平(+0.4V),反之则输出高电平(+4V),其高低输出电平值符合单片机的I/O引脚逻辑信号要求,可以直接把高低电平值输入单片机的I/O引脚。单片机底层程序主要完成对光模块EEPROM的访问、电源工作状态的读取及与工控机的通信,底层流程图如图3所示。初始化过程如下:晶振频率为20MHz,定时器选择T1和T0。T1的设置决定串口波特率的选择,串口需工作于8位异步通信方式,波特率为1200bps,则设置T1工作于8位自动重置定时方式,初值为0xa9;定时器T0工作于16位定时方式,初值为0,定时到则产生中断去读取电源状态。单片机底层主程序采取循环控制方式,监控是否有串口指令输入或T0定时到。采取中断方式处理串口指令,设置串口中断的优先级高于定时中断的优先级。串口有指令输入时,单片机底层主程序启动IIC总线,读取光模块相应地址中的工作参数,然后进行一定的格式转换,送至工控机。如读取工作电压时,光模块EEPROM内数字化的工作电压为16位的二进制无符号整型,而实际需要显示的电压值为十进制,阈值范围为0~6.55V,精度为±0.1V,因此需要进行转换;定时中断发生时,单片机底层主程序读取高低电平,如电平为高,则发送‘1’字符到工控机,反之则发送‘0’字符。读取光模块工作参数或执行定时中断子程序时屏蔽其它所有中断。图3单片机底层程序流程图工控机串口通信程序是整个故障诊断系统的控制程序,其提供的是一个可视化的故障诊断界具有故障诊断功能的IEEE1394b-PCI光纤接口卡的设计郑俊杰等2010年9月第41卷第3期(总第140期)35面。利用VisualC++和MFC类库开发串口通信程序时,使用MSComm控件可以为串口通信程序提供通过串行口收发数据的简便方法。在程序设计中,串口通信程序主要由初始化串口和串口读写两部分组成。初始化串口包括:选择串口、设置输入缓冲区的大小、打开串口、设置输入方式为二进制方式、设置波特率参数、设置产生串口接收事件的条件。串口读写过程包括:串口通信程序每隔700ms使用SetOutput()函数向单片机发送指令,指定要读取信息的子地址;串口事件发生时,串口通信程序使用GetInput()函数接收单片机传送过来的数据,然后进行数据格式转换,将最终结果显示在故障诊断界面上[6]。串口通信程序循环读取三个光模块的工作参数,同时以不定的时间间隔在故障诊断界面上显示电源工作状态。5光总线系统实验及分析利用具有故障诊断功能的IEEE1394b光纤接口卡搭建IEEE1394b光总线实验系统,其实验框图如图4所示。工控机1394b光纤接口卡多模光纤工控机1394b光纤接口卡图4IEEE1394b光总线实验系统框图利用工控机端应用软件可获得上述连接的拓扑图(如图5所示)。各IEEE1394b节点都是插有IEEE1394b-PCI接口卡的工控机。由图5可见,利用此

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功