工业串口光纤收发器速率自适应的一种方法
【技术领域】
[0001]本发明涉及通讯领域,涉及一种快速实时传输,速率自适应的工业协议收发器。
【背景技术】
[0002]在工业轨道、电信控制及其一些重要的控制系统中,RS232/RS485/RS422等串行通讯被人们作为熟知的工业技术行业标准,这些协议被广泛用于工业现场作为使用接口或控制接口。在使用过程中,因距离要求导致现场使用极其不方便,所以引入此光纤收发器来解决以上困难,而在使用过程中,我们之前都是使用各个算法进行编码解码然后去匹配收发设备速率,且都是通过程序去控制RS485芯片的收发转换,这样就增加了复杂的数据算法,且因为程序的增加,造成稳定性、实时性降低,且不能透明传输。
【发明内容】
[0003]技术问题
根据技术存在的问题,本发明提出一种在RS232、RS485、RS422协议下对数据进行实时转发处理,使下位机自动对上位机速率进行适应达到匹配的方法,通过光纤进行传输,在接收端进行数据解析还原的方案。该方案技术问题包括:EMC处理,协议电平转换,光纤连接是否正常,抖动检测处理,协议选择,速率匹配、实时反应,状态跟踪。
[0004]技术方案
为实现上述技术问题,本发明包括了 EMC接口电路,协议电平转换电路,状态指示电路,所述抖动检测处理、光纤连接是否正常、协议选择、速率匹配及状态跟踪是由CPLD各个模块完成此功能。通信整体线路如图1所述。
[0005]所述光纤收发器方案包括硬件设计部分及CPLD程序设计部分。
[0006]所述光纤收发器完成数据传输功能完成需成对使用,设备间通过光纤连接。
[0007]所述EMC电磁兼容部分可支持到±16KV静电防护,采用接口保护电路。如图2所
/Jn ο
[0008]所述RS422、RS485、RS232采用共用DB9或者1X8接口电路设计,减少设计成本。
[0009]所述协议要求是工业现场协议中空闲状态时默认为高电平,需对其进行空闲高电平处理如图3所示。
[0010]所述RS485协议在数据转换时通过三极管控制485IC收发状态自动切换,实现无延时自动切换,如图4所述。
[0011]所述实现上位机速率同步是通过检测数据下降沿来保证波特率同步进行,以此来让设备将上位机数据准确无误的传递给终端设备。
[0012]所述CPLD芯片的反应时间远远小于协议转换时间。
[0013]所述CPLD完成整个系统的协调工作:控制管理、协调工作,状态检测,自动速率识另Ij,状态指示及数据正常收发功能,如图6所示。
[0014]所述抖动检测模块,用CPLD实现抖动检测,来保证数据收到的正确,原理如图5所/Jn ο
[0015]所述协调工作包括将数据进行抖动处理后,将正常数据进行传输,此时,状态指示灯亮灭来实时显示数据此时传输状态。
[0016]所述状态检测,当设备任一光纤接收端没有接入光纤时会自动进行告警判断,并及时上传报告,让CPLD完成指挥工作。
[0017]本发明的有益效果在于:
本发明在数据可靠性传输基础上进行透明传输,并且在技术上省去了以前工程师设计常用的一些具体算法来对上位机速率匹配,可靠性高,实时性强。
[0018]本发明在工业环境中使用RS232/RS485/RS422协议的时候,可以在三个现场协议间自由使用,而不必去单独购买某一个协议收发器,节省成本。
[0019]本发明使用三极管对RS485IC进行收发状态控制,省去之前由于程序上不稳定问题,简化硬件电路的同时,实现无延时数据传输。
[0020]本发明使用光纤接收端自动检测是否插入来对设备进行数据控制、传输并使用CPLD进行对应数据处理。
[0021]本发明硬件电路设计简单,接口加入EMC保护,使整体效果更加稳定,可靠进行数据传输。
[0022]【附图说明】:
图1是本发明的整体结构概图。
[0023]图2是本发明的接口 EMC指示图。
[0024]图3为空闲状态,硬件在RS485/RS422协议下,处于高电平指示图。
[0025]图4为三极管配合RS485控制IC收发状态切换电路。
[0026]图5为CPLD实现抖动检测原理指示图。
[0027]图6为CPLD程序由PC/Device发送数据实现的总概略图。
[0028]图7为本发明的正常一帧数据发出后的指示图。
【具体实施方式】
[0029]以下结合附图对本发明实施例进行详细描述,以使本发明的目的、技术方案及效果更加清楚,明确。此处所描述的具体实施例仅用于解释本发明,并不用于限定本发明。
[0030]如图1所示为本发明串口光纤收发器整体通信简略示意图,该装置包括EMC接口防护电路,协议电平转换电路,CPLD控制、检测、指示电路和光纤收发电路。
[0031]以下对PC机/Device设备发送数据到光模块的发送端进行描述:
上位机按照相应协议发送数据到串行收发器的接口电路,接口电路在相应协议总线上接入相应的EMC防护器件进行EMC的防护,通过相应协议转行芯片对协议电平转换成相应的TTL电平输出到CPLD。
[0032]在使用RS485/RS422时候,为保证数据传输的正确性,在接收端防止产生误码,硬件电路上必须保证其空闲状态保持高电平状态,以便处理在上电、传输时不稳定状态。如图3所示。
[0033]当CPLD接收到数据时,通过软件抖动检测代码,对电路进行抖动判断,如果出现的是抖动则消除,否则正常传输数据。抖动采用软件模拟抖动电路进行判断。当正常数据到来时,CPLD对CLK的上升沿进行检测,因为各个协议空闲时段总线上处于高电平状态,所以当有数据传输并且有低电平数据出现时,则说明有相应数据正在传输,当检测到低电平后,我们会根据低电平恢复到高电平过程中看到低电平的时间间隔,此间隔及为一位数据传输的时间。即:只对低电平进行过滤。程序流程图如图5所示。
[0034]状态指示:数据在收发时,我们可根据数据的状态对LED进行控制,当CPLD检测到有低电平的时候,则让LED亮,当处于高电平(即:空闲状态)时,使LED处于灭状态,这样,当有数据进行传输时,则可以正常显示数据收发状态。
[0035]两设备通过光纤相连接,当光纤接收端连接正常时,光模块的Status信号自动上传一个高电平信号传给CPLD。
[0036]当CPLD检测到光模块上传到的状态有效信号并且有低电平数据到来时,则进行数据处理,将数据从CPLD输出口把有效数据输出。程序流程图如图6所示。
[0037]CPLD输出有效数据到协议转换芯片端,然后返回到PC/Device。
[0038]以上为设备接收到PC/Device数据后发送到光纤模块接口的具体描述,设备具有双向全双工功能,原理同上,不再赘述。
【主权项】
1.基于工业串口光纤收发器速率自动适应的一种方法,其特征在于,硬件电路通过协议转换芯片,将协议电平转换成TTL电平,并且总线默认空闲状态通过对应阻值的电阻上拉及下拉来确定默认状态为高电平,因为正常为数据通过上位机发送特定格式的速率(如以N,8,I发送数据)来发送数据,通过读取高低电平不同时间间隔来而后再由下位机进行解析,此时,因为我们在数据空闲状态通过硬件电路将数据设置为了高电平,通过CPLD程序我们只需对低电平数据进行检测,这样我们仍会得到高低电平的时间间隔,然后再通过此高低电平时间间隔,下位机将数据还原。
2.根据权利要求1所述方法,其特征在于,我们只需去检测下降沿到来的时刻即可确定上升沿和下降沿的时间间隔,从而解析出正确数据。
3.根据权利要求1所述方法,其特征在于,硬件电路需要对协议空闲状态通过上下拉电阻将对应的TTL电平稳定到高电平,CPLD程序部分在初始化复位状态时,为确保电路稳定,进一步对协议进行空闲状态的设定。
4.根据权利要求1所述方法,其特征在于,上电启动时,需要使用CPLD程序对上电瞬间或不稳定抖动进行处理。
5.基于工业串口光纤收发器的一种方法,其特征在于,在使用RS485协议对数据进行处理时,RS485可通过三极管的基极小电流控制开关电路实现无延时自动对数据进行数据收发状态切换。
6.根据权利要求5所述方法,其特征在于,使用PNP三极管对对RS485芯片的收发切换引脚进行控制,当电路无数据时,让RS485电路处于空闲接收状态,当有发送数据到来时,自动切换到数据发送状态,当发送完成后,恢复到接收状态。
7.基于工业串口光纤收发器的一种方法,其特征在于,用CPLD对光纤模块上传过来的状态信号来完成检测光纤接收端是否有光纤接入并对数据进行判断处理。
【专利摘要】本发明公开用于工业级串口光纤收发器速率自适应的一种方法,基于CPLD快速响应,实时转发,透明传输的技术方案,该方案包括:通过EMC保护电路,下位机接收到上位机发送的数据后,不同协议经过IC转换成相应协议电平,再由CPLD的抖动检测模块进行抖动处理,确认收到数据为正常数据后对数据流进行低电平判断处理,由此对上位机速率进行匹配,并以相同速率通过光器件电路转换为光信号后,通过光纤进行数据正常转发。通过上述技术方案,实现了在硬件基础下,加入CPLD对数据抖动进行处理,并对通信数据实时速率准确判断适应,透明传输稳定,降低硬件成本,能适合任何工业通信速率匹配、无错误帧长距离数据传输场合,尤其适用于工业领域,实时性强。
【IPC分类】G06F13-42, H04B10-40, H04B10-25, H04L1-00
【公开号】CN104660369
【申请号】CN201310601452
【发明人】赵亮, 杨国文
【申请人】北京卓越信通电子股份有限公司
【公开日】2015年5月27日
【申请日】2013年11月25日