[发明专利]一种协议转换网关的转换方法有效
申请号: | 201811366072.2 | 申请日: | 2018-11-16 |
公开(公告)号: | CN109510827B | 公开(公告)日: | 2021-03-19 |
发明(设计)人: | 戴晓强;钱金伟;高宏博 | 申请(专利权)人: | 江苏科技大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/66;H04L12/413 |
代理公司: | 南京苏高专利商标事务所(普通合伙) 32204 | 代理人: | 柏尚春 |
地址: | 212003*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 协议 转换 网关 方法 | ||
本发明公开了一种协议转换网关的转换方法,所述的转换方法主要是通过对现有网关中CSMA/CD协议的二进制指数退避(BEB)算法进行改进,对报文退避时间进行重新约束,从而实现协议转换传输。该方法能有效减小数据重载下的延迟抖动,提高数据传输的实时性。本发明还具有抗干扰性强、适合于船用等特点。
技术领域
本发明涉及通讯协议转化领域,特别是一种适用于工业以太网通信的协议转换网关的转换方法。
背景技术
现场总线技术类别丰富,如RS485、RS232、CAN总线。由于不同总线的结构和协议不同,故不同总线设备之间的通信需要通过协议转换网关转换不同的总线协议,实现不同通信接口的互联互通。因为船舶机舱(船上设备密集区域)空间狭小,布置在该空间的设备布局紧凑,信号互相干扰比较严重。同时协议转换器在对来自各个总线的处理时,需要对数据进行处理,故信号的实时性很重要,现有的协议转换网关采用的二进制指数退避(BEB)算法对数据传输的时效性地约束,其方法是:首先监听管道里发现出现了数据碰撞,数据双方都等待2n-1其中任意一个整数时间,然后再重新发送,如果又出现碰撞,则重新发送,否则,发送成功,n=0。上述BEB算法虽然能解决数据碰撞导致的延时问题,但是当n>10时,等待时间过长且数据传输延时抖动过多,不利于实时性问题的解决。此外,现有的协议转化网关在船舶领域的应用中还存在着电压不兼容、抗干扰性不强等问题。
发明内容
发明目的:本发明的目的是提供一种实时性强、抗干扰性强、适用于船舶领域应用的协议转换网关的转换方法。
技术方案:一种协议转换网关的转换方法,该方法通过网关实现所述协议的转换,该方法包括以下步骤:
步骤1:电源模块开始工作将电压降至各个模块的工作电压并驱动电路;
步骤2:上位机发送指令通过以太网模块接收,将电信号转变为数据保存至控制器模块中的接收数组中;
步骤3:控制器模块将接收数组中的数据依据协议进行数据解析提取有效数据,并将有效数据存储至控制器模块中的发送数组中;
步骤4:控制器模块中的发送数组将数据发送至数据收发模块中,经过数据隔离模块,将数据转化为差分信号传输至下位机;
步骤5:下位机接收到上位机发送的指令后应答,将数据通过总线发送至数据隔离模块中,数据隔离模块将电信号转化为数据并通过数据收发模块发送至控制器模块中的接收数组中;
步骤6:控制器模块对接收数组中的数据进行数据封装,加上以太网控制协议报头报尾,将数据封装成Modbus/TCP数据帧格式并存至控制器模块中的发送数组中;
步骤7:根据Modbus/TCP的的MAC层的CSMA/CD协议对通信信道进行载波监听,在CSMA/CD协议中,首先定义变量i表示数据帧发送冲突的次数,令i的初始值为1;定义变量attempts表示数据帧尝试发送的次数,令attempts的初始值为0;定义变量maxtimes表示最大避让指数,令maxtimes=2i-1,i=min{10,x},x≤16,令Tb为以太网的争用期时间;
步骤8:数据传输过程中,若传输信道繁忙,则打包的数据帧发送时发生冲突,数据帧将根据CSMA/CD协议要求进行报文退避,同时变量i自增1,进行下次信道监听,当i10时,下一次数据发送从[1,2i-1]Tb时间中任选一个时间进行数据发送,当i≥10时,下一次数据发送从时间中任选一个时间进行数据发送;
步骤9:重新发送的数据由以太网模块将信号传输至上位机。
针对上述对通信信道繁忙时,改进的BEB算法的报文退避时间约束方法具体原理思路如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏科技大学,未经江苏科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811366072.2/2.html,转载请声明来源钻瓜专利网。