一种串口以太网协议转换方法

文档序号:7550634阅读:541来源:国知局
专利名称:一种串口以太网协议转换方法
技术领域
本发明涉及一种将串口数据流转换为以太网数据帧的新技术。具体为一种将串口数据长度和串口数据时间间隔结合在一起,实现快速将串口数据流打包为以太网数据帧的技术。
背景技术
串口一般来说就是UART,它实际只定义了数据链路层的规范,也就是起始位、数据位、停止位。但是在不同的物理层又分为:TTL串口、RS232串口、RS485串口等。TTL串口:它是MCU芯片之间进行数据通信的串口,它以+5V (或者+3.3V)表示1,以GND表示O。RS232串口:它是实现设备之间通信的串口,其主要将信号电压从O 5V的电压变为±15V,电压的增加,增大了数据传输的距离和可靠性。RS485串口:它是实现远距离通信的串口,可以实现上千米的数据传输。其主要特征是用差模信号(A、B两根线之间的电压)代替了 RS232共模信号(信号线和GND之间的电压),从而能够抵抗共模干扰,实现更远距离的传输。近年来,互联网以其高速便捷传输数据的特点越来越受到人们的青睐。而在工控和通信设备中,更多的却是符合RS-232/485标准的串行口设备。与基于RS-232/485标准的串行通信相比,TCP/IP网络具有带宽、高速、远距离及通信业务广泛的优点,而且联网通信距离可以无限延长,并且相对RS-232/485标准的通信抗干扰能力差,信息传输容易出错,网络是基于复杂环境设计的,具有自动纠错功能,通信质量稳定不易受外界干扰。因此,将串口数据通过网络传输成为串口设备网络化进程的研发热点。按照ISO的7层模型(物理层、数据链路层、网络层、传输层、会话层、表示层、应用层)来分,串口实际上只包含了物理层、数据链路层,而TCP/IP协议应该属于网络层和传输层。串口数据转以太网数据,并不是简单物理层和数据链路层的转化。由于串口协议本身不具有网络层和传输层,串口数据转以太网数据实际是将串口的数据作为TCP/IP的应用层数据,用TCP/IP封装传输的方式(图1)。串口以太网协议转换器(图2)的出现使得基于TCP/IP的串口数据流传输成为可能,它可以连接多个串口设备并将串口数据流进行选择和处理,把现有的RS-232/485标准接口数据转化成IP端口数据,然后IP化管理,IP化存取,这样就能将传统的串行数据送上流行的网络通道,无需过早淘汰现有串口设备,提高设备利用率。串口以太网协议转换器是一个面向RS-232/485标准的链接和以太网通信数据存储控制器,对各种来自串口设备的数据流进行格式转换使之成为可以在以太网中传播的数据帧并对来自以太网的数据帧进行判断转换成串行数据送达相应的串口设备。(图3)
串口以太网协议转换器关键技术:1.TCP /IP协议的工作模式:
串口转以太网,并不是简单物理层和数据链路层的转化。由于串口协议本身不具有网络层和传输层,串口转以太网,实际是将串口的数据作为TCP/IP的应用层数据,用TCP/IP封装传输的方式。TCP/IP的应用层数据是TCP/IP所要传送的真正有效的数据。但是TCP/IP根据工作模式的不同,它关系到连接、关闭、监听等,这是串口转网口后需要增加处理的部分。TCP /IP的工作模式可以分为:TCP服务端模式(TCP Server),TCP客户端模式(TCP Client),UDP模式。UDP模式:UDP模式是基于非连接的模式,只要有数据发送即可发送,不需要事先连接。所以这种模式更加地接近于串口的通信方式。但是UDP协议无法保证数据不丢失,容易产生误码。TCP服务器模式:在该工作方式下,串口联网服务器作为TCP服务器端,转换器在指定的TCP端口上监听平台程序的连接请求,该方式比较适合于一个转换器与多个平台程序建立连接。TCP客户端模式:在该工作方式下,串口联网服务器作为TCP客户端,转换器上电时主动向平台程序请求连接,该方式比较适合于多个转换器同时向一个平台程序建立连接。2.串口数据分帧:
串口数据是可以连续不断发送的,而以太网数据则是以数据包为单位发送的。这样就关系到将多长的串口数据打包后作为一个以太网数据包发送的问题(图4)。3.9 位技术:
以太网数据是以字节Byte计算的每个字节都是8位,但是串口数据则有可能出现9位,第9位常常用于区分是地址帧还是数据帧,I表示地址帧O表示数据帧。那么在当串口转化为以太网之后,如何将第9位也传送出去就成了一个关键技术。串口以太网协议转换器通讯模式:1.点对点通讯模式:该模式下转换器成对的使用,一个作为服务器端,一个作为客户端,两者之间建立连接,实现数据的双向透明传输。该模式适用于将两个串口设备之间的总线连接改造为TCP/IP网络连接。2.使用虚拟串口通讯模式:该模式下一个或者多个转换器与一台电脑建立连接,实现数据的双向透明传输。由电脑上的虚拟串口软件管理下面的转换器,可以实现一个虚拟串口对应多个转换器,N个虚拟串口对应M个转换器(N〈=M )。该模式适用于串口设备由电脑控制的485总线或者232设备连接。3.基于网络通讯模式:该模式下电脑上的应用程序基于SOCKET协议编写了通讯程序,在转换器设置上直接选择支持SOCKET协议即可。串口以太网协议转换器应用领域:
它主要应用在门禁系统、考勤系统、售饭系统、POS系统、楼宇自控系统、自助银行系统电信机房监控,电力监控等。

发明内容
为了实现串口以太网协议转换器功能,本发明采用嵌入式MQX作为实时操作系统和开源的TCP/IP协议栈。串口数据分帧方式:
数据包长度分巾贞:
以太网数据包最长1500字节,所以在串口以太网协议转换器收到1024字节后必须将其打包发送到网口。数据包间隔分帧:
除了数据包长度作为串口分帧的规则外,一个更为符合逻辑的方法是通过两个数据包之间的时间间隔。当串口以太网协议转换器发现的串口数据流中出现了 T毫秒的空闲时间时(默认T设置为三个字符时间),则认为之前收到的串口数据可以作为一个以太网数据包发送了。这里的T就是用户设定的数据包间隔。数据转发方式:1.网络收到数据实时转发给串口。如果串口不可写,将数据缓存在内存中。等待串口可写时将数据发出。2.串口收到数据后做条件判断,以下两个条件达到其一及转发,收到的串口数据总数达到1024字节,或者串口空闲当前波特率下发送三个字节所需要的时间。根据波特率来计算空闲时间比固定定义多少ms更加精准的控制打包时间,提升响应速度。具体实现过程是首先配置相应设备的串口服务器IP地址、TCP通信端口号和串口参数等,这些配置通过上位机完成。系统上电初始化,初始化MCU各硬件模块,然后读取配置信息,初始化网络芯片,初始化TCP/IP协议栈。然后进入串口转以太网任务中轮询查找串口模块是否有数据需要接受,同时监听网络状态,对从网络芯片接受的数据帧进行解包分析,根据分析结果分别进入TCP/IP协议栈的ARP,I CMP, TCP, UDP等处理子程序。串口有数据发往以太网时,读取串口数据,等待一个字符的时间,时间计数器加I,数据长度增加读取到的数据长度,再次读取串口数据,如果串口有数据,时间计数器清0,等待一个字符的时间,再次读取串口数据。反复循环读取串口数据,直到时间计数器大于2或者长度超过设定值,将时间计数器清0,长度清0,将数据发往网络端。进行下一次数据接收发送。以太网收到数据发往串口,首先判断串口状态,如果串口可写,将数据直接发给串□。流程图如图5,图6,图7。


图1:串口转以太网数据流程 图2:串口以太网协议转换器 图3:串口设备IP化管理 图4:串口以太网数据转换 图5:初始化流程图 图6:网口数据转发到串口数据流程图 图7:串口数据转发到网口数据流程图
具体实施方式
:
下面结合附图3和实例对本发明作进一步说明。首先为所有需要管理的串口设备配置串口以太网协议转换器,并确定串口设备所要连接电脑的网络参数和串口设备的串口参数。然后进入串口以太网协议转换器管理界面对转换器进行配置,需要配置的串口参数包括串口波特率,数据位,停止位,校验方式等,这些参数必须与连接串口设备的参数一致,需要配置的网络参数包括以太网协议转换器的以太网IP地址,以太网子网掩码,以太网工作模式,本地端口号,需要连接电脑的以太网IP地
址,端口号。以太网协议转换器配置完成后,参见图3方式将以太网协议转换器连接到以太网拓扑中,即可完成将标准的串口总线数据(RS-485)与标准的支持TCP/IP协议的以太网数据双向传输,从而完成多个串口设备IP化管理,将传统的串行数据送上流行的网络通道,无需过早淘汰现有串口设备,提高设备利用率。
权利要求
1.一种把串口数据流转换为以太网数据帧的技术,该技术采用串口收到的数据总长度和串口数据时间间隔相结合的数据分帧方式,其特征是:在串口以太网协议转换器的串口方向收到一定长度字节数据后将其作为一个以太网数据帧发送到网口,当串口以太网协议转换器发现串口数据流中出现了 T毫秒的空闲时间时,将收到的串口数据作为一个以太网数据帧发送到网口。
2.根据权利要求1所述的串口数据流转换为以太网数据帧技术,其特征是:对各种来自串口设备的数据流进行格式转换,使之成为可以在以太网中传播的以太网数据帧,并对来自以太网的数据帧进行判断转换成串行数据,送达相应的串口设备。
3.根据权利要求1、2所述的串口数据流转换为以太网数据帧技术,其特征是:将串口设备数据转化成IP端口数据,然后实行设备的IP化存取,IP化管理。
全文摘要
本发明公开了一种把串口数据流转换为以太网数据帧的新技术,该技术可把现有的RS-232/485标准接口数据转化成IP端口数据,然后IP化管理,IP化存取,这样就能将传统的串行数据送上流行的网络通道,无需过早淘汰现有串口设备,提高设备利用率。串口以太网协议转换技术是一个面向RS-232/485标准数据和太网数据帧的链接,对各种来自串口设备的数据流进行格式转换使之成为可以在以太网中传播的数据帧并对来自以太网的数据帧进行判断转换成串行数据送达相应的串口设备。
文档编号H04L29/06GK103078871SQ20131001856
公开日2013年5月1日 申请日期2013年1月18日 优先权日2013年1月18日
发明者周厚明 申请人:武汉迈威实达软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1