应用于工业检测的无线数据通讯方法与流程

文档序号:11178604阅读:242来源:国知局
应用于工业检测的无线数据通讯方法与流程

本发明涉及一种应用于工业检测的无线数据通讯方法。



背景技术:

随着科学技术的发展,数据传输网络,尤其是无线网络得到广泛应用,因而工业检测中数据通过无线网络传输被大多检测设备所首选。但是,由于大多工业生产现场环境恶劣,周围存在各种磁场、电场等干扰,无线信号的稳定性较差,严重影响数据的准确、可靠传输,一旦数据传输错误,则前期的检测作业需重复进行,或影响后期的数据分析处理,降低了生产效率,影响检测数据的正确应用。同时传统的基于tcp/ip的数据通讯是基于有线数据传输制定的,其复杂的握手、交互机制很容易发生通讯中断或长时间延迟,特别是在一些嵌入式设备中,由于协议栈实现不完善,使数据通讯不但时间长而且很不稳定,限制了工业生产现场中数据传输的应用。



技术实现要素:

本发明所要解决的技术问题是提供一种应用于工业检测的无线数据通讯方法,本方法克服工业生产现场传统数据通讯的缺陷,确保数据的准确、可靠传输,提高了工业生产效率,保证检测数据的正确应用。

为解决上述技术问题,本发明应用于工业检测的无线数据通讯方法包括如下步骤:

步骤一、数据通讯开始时由客户机向服务器发起连接握手,客户机向服务器发送连接请求数据包,服务器回复客户机连接确认数据包;

步骤二、客户机收到服务器的连接确认包后开始向服务器传输数据,数据传输时客户机采用重复发送、服务器采用冗余确认;

步骤三、数据通讯完成后,服务器向客户机发起断开握手,服务器向客户机发送所有数据已收到数据确认包,客户机接收到数据确认包后向服务器发送断开连接数据包,服务器收到断开连接数据包后数据通讯结束。

进一步,客户机向服务器发送的连接请求数据包包括传输数据的长度和传输数据块的大小,服务器根据传输数据长度和传输数据块的大小建立接收数据区和数据块接收标志区,数据块接收标志区中的每个标志对应一个数据块,数据块接收标志区中未设置标志,则表示该标志对应的数据块没有接收到,数据块接收标志区中设有标志,则表示该标志对应的数据块已经接收到。

进一步,客户机向服务器发送的连接请求数据包包括传输数据的长度和传输数据块的大小,客户机根据传输数据的长度和传输数据块的大小建立数据块确认标志区,数据块确认标志区中的每个标志对应一个数据块,数据块确认标志区中未设有标志的数据块表示该数据块没有被服务器接收,数据块确认标志区中设有标志的数据块表示该数据块已经被服务器接收。

进一步,客户机向服务器发送数据块前在数据块确认标志区中查找该数据块的标志,如该标志存在,表示该数据块已被服务器接收,无需再次发送,如该数据块无标志,表示该数据块尚未被服务器接收,需要发送。

进一步,客户机向服务器发送的数据块中包含一个id,该id对应该数据块在传输数据中的顺序位置,该id在数据块确认标志区中与该数据块的标志一一对应。

进一步,服务器向客户机发送的数据确认包中包含已接收数据块的顺序位置id和冗余确认标志id,该顺序位置id与客户机发送的该数据块id相同,并与服务器的数据块接收标志区中该数据块的标志一一对应。

进一步,客户机接收到服务器发送的数据确认包后在数据块确认标志区中标识已发送数据块id对应的标志,并且根据该数据块中服务器的冗余确认标志id标识相应的标志位。

进一步,服务器向客户机发送的数据确认包中的冗余确认标志id与顺序位置id相关,数据确认包中的顺序位置id为100,表示服务器收到客户端发来的id为100的数据块,冗余确认标志id由id为100的数据块在数据块接收标志区中该数据块位置前若干个数据块的标志组成。

由于本发明应用于工业检测的无线数据通讯方法采用了上述技术方案,即本方法在数据通讯开始时由客户机向服务器发起连接握手,客户机发送连接请求数据包,服务器回复连接确认数据包;客户机收到连接确认包后开始向服务器传输数据,数据传输时客户机采用重复发送、服务器采用冗余确认;数据通讯完成后服务器向客户机发起断开握手,服务器发送所有数据已收到数据确认包,客户机接收到数据确认包后向服务器发送断开连接数据包,服务器收到断开连接数据包后数据通讯结束。本方法克服工业生产现场传统数据通讯的缺陷,确保数据的准确、可靠传输,提高了工业生产效率,保证检测数据的正确应用。

附图说明

下面结合附图和实施方式对本发明作进一步的详细说明:

图1为本发明应用于工业检测的无线数据通讯方法示意图;

图2为本方法中数据传输示意图;

图3为本方法中数据块顺序位置id和冗余确认标志id标识示意图。

具体实施方式

实施例如图1所示,本发明应用于工业检测的无线数据通讯方法包括如下步骤:

步骤一、数据通讯开始时由客户机1向服务器2发起连接握手,客户机1向服务器2发送连接请求数据包,服务器2回复客户机1连接确认数据包;若客户机在设定时间未收到服务器的连接确认数据包可以重试连接握手或放弃连接;

步骤二、客户机1收到服务器2的连接确认包后开始向服务器2传输数据,数据传输时客户机1采用重复发送、服务器2采用冗余确认;

步骤三、数据通讯完成后,服务器2向客户机1发起断开握手,服务器2向客户机1发送所有数据已收到数据确认包,客户机1接收到数据确认包后向服务器2发送断开连接数据包,服务器2收到断开连接数据包后数据通讯结束。

优选的,客户机向服务器发送的连接请求数据包包括传输数据的长度和传输数据块的大小,服务器根据传输数据长度和传输数据块的大小建立接收数据区和数据块接收标志区,数据块接收标志区中的每个标志对应一个数据块,数据块接收标志区中未设置标志,则表示该标志对应的数据块没有接收到,数据块接收标志区中设有标志,则表示该标志对应的数据块已经接收到。

优选的,客户机向服务器发送的连接请求数据包包括传输数据的长度和传输数据块的大小,客户机根据传输数据的长度和传输数据块的大小建立数据块确认标志区,数据块确认标志区中的每个标志对应一个数据块,数据块确认标志区中未设有标志的数据块表示该数据块没有被服务器接收,数据块确认标志区中设有标志的数据块表示该数据块已经被服务器接收。

优选的,客户机向服务器发送数据块前在数据块确认标志区中查找该数据块的标志,如该标志存在,表示该数据块已被服务器接收,无需再次发送,如该数据块无标志,表示该数据块尚未被服务器接收,需要发送。

优选的,客户机向服务器发送的数据块中包含一个id,该id对应该数据块在传输数据中的顺序位置,该id在数据块确认标志区中与该数据块的标志一一对应。

优选的,服务器向客户机发送的数据确认包中包含已接收数据块的顺序位置id和冗余确认标志id,该顺序位置id与客户机发送的该数据块id相同,并与服务器的数据块接收标志区中该数据块的标志一一对应。

优选的,客户机接收到服务器发送的数据确认包后在数据块确认标志区中标识已发送数据块id对应的标志,并且根据该数据块中服务器的冗余确认标志id标识相应的标志位。

优选的,服务器向客户机发送的数据确认包中的冗余确认标志id与顺序位置id相关,数据确认包中的顺序位置id为100,表示服务器收到客户端发来的id为100的数据块,冗余确认标志id由id为100的数据块在数据块接收标志区中该数据块位置前若干个数据块的标志组成。例如,以冗余确认标志id为32位无符号整数为例,每一位对应一个数据块接收标志,表示该位置数据块是否已经接收到。

如图2所示,通讯连接建立后,客户机1根据传输数据长度和每个数据包中传输的数据块大小建立数据块确认标志区12,每个标志对应一个数据块;服务器2根据传输数据长度和每个数据包中传输的数据块大小建立数据块接收标志区22。客户机1在数据块确认标志区12查找没有确认标志的数据块,从发送数据区11取出数据块打包发送给服务器2;同时客户机1接收从服务器2发来的确认数据包,从中提取当前数据块顺序位置id及冗余确认id,在数据块确认标志区12相应位置设置确认标志;服务器2接收客户机1发来的数据包,提取数据块id,根据id在数据块接收标志区22查找是否已收到该数据块,若未收到,将该数据块放到接收数据区21相应的位置并在数据块接收标志区22设置已接收标志;同时,服务器2向客户机1发送当前数据块的确认包,确认包中不但包含当前数据块的id还包含当前数据块前若干个数据块是否已收到的标识。当服务器2检查数据块接收标志区22确认所有数据块已接收后向客户机1发送所有数据已接收数据包。客户机1发完所有数据块后,检查数据块确认标志区12,重发未设置数据确认标识的数据块,设定重复发送次数或直到收到服务器2发来的所有数据已接收确认数据包后停止。

如图3所示,数据块确认标志区12中数据块顺序位置id与数据块接收标志区22中数据块顺序位置id一一对应,同时,服务器的数据确认包中的冗余确认标志id由该数据块顺序位置id以及该数据块位置前若干个数据块的标志组成,以提供当前数据块前若干个数据块是否已收到的标识。

本方法经实际应用测试,不但能可靠地进行数据通讯,还能有效地提高数据通讯的效率,在无线环境下比传统的基于tcp/ip的数据通讯方式效率可提高数十倍,从而确保工业检测数据的准确、可靠传输,提高了工业生产效率,保证检测数据的正确应用。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1