System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及通信,具体而言,涉及一种串口通信方法、网关、中继器、电子设备和计算机可读存储介质。
技术介绍
1、随着物联网技术的快速发展,各类工业设备的数据采集需求在不断增长。由于各类工业设备数据传输协议不同,需采用不同工业规约进行通信。相关技术中,基于串口通信的工业设备数据采集方案中,一个串口对应一种工业规约,即一个串口接一种数据传输协议;或者,一个串口对应多种工业规约,即一个串口接多种数据传输协议,通过对串口多次初始化和关闭的操作实现分时复用串口资源。
2、但是,对于一个串口对应一种工业规约的方案中,会造成串口资源浪费,并且对于串口资源紧缺的设备,可采集的工业设备有限;对于一个串口对应多种工业规约的方案中,需要频繁初始化串口和关闭串口,耗时较长。并且,由于不同工业设备的通讯参数各异,在采集前需要工作人员了解每个设备的通讯参数,存在配置工作量大的问题。
3、需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
1、本公开实施例提供一种串口通信方法、网关、中继器、电子设备和计算机可读存储介质,至少一定程度上解决相关技术存在的串口资源浪费、需要频繁初始化串口和关闭串口导致的耗时较长、以及配置工作量大的问题。
2、本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
3、根据本公开的一个方面,提供一种串口通信方法,所
4、在本公开一些实施例中,所述方法还包括:接收所述中继器发送的目标数据,所述目标数据为所述中继器解析所述目标设备根据所述协议指令返回的设备数据得到的;基于所述协议自适应策略,对所述目标数据进行解析,识别出所述目标设备的协议类型;基于所述目标设备的协议类型,将所述目标数据发送至所述目标协议组件处理,获得所述数据处理指令对应的应用数据。
5、在本公开一些实施例中,所述中继器包括一个或多个串口,所述目标串口为所述中继器的串口,所述协议自适应策略中存储各个所述串口与设备之间的连接关系。
6、在本公开一些实施例中,所述通过所述目标协议组件,基于协议自适应策略,对所述数据处理指令进行封装,获得所述数据处理指令对应的协议指令,包括:通过所述目标协议组件,将所述数据处理指令转换成与所述目标设备的协议类型相对应的协议报文;根据所述协议自适应策略中的连接关系,查询与所述目标设备连接的所述目标串口,获取所述目标串口的串口信息;对所述目标串口的串口信息和所述协议报文进行封装,获得所述协议指令。
7、在本公开一些实施例中,所述网关与所述中继器通过预设串口进行通信,所述预设串口为所述中继器的不支持自动波特率检测的串口。
8、在本公开一些实施例中,所述将所述协议指令发送至中继器,包括:通过所述预设串口,以所述预设串口的参数信息,将所述协议指令发送至所述中继器;以及,所述接收所述中继器发送的目标数据,包括:通过所述预设串口,以所述预设串口的参数信息,接收所述中继器发送的所述目标数据。
9、根据本公开的又一个方面,提供一种串口通信方法,所述方法由中继器执行,包括:接收网关发送的协议指令,所述协议指令携带目标串口的串口信息,所述目标串口与目标设备相连接;根据所述目标串口的串口信息,将所述协议指令转发至所述目标串口,以通过所述目标串口将所述协议指令发送至所述目标设备;其中,所述协议指令为所述网关通过所述目标设备对应的目标协议组件,基于协议自适应策略,对所述目标设备的数据处理指令进行封装获得的。
10、在本公开一些实施例中,所述方法还包括:接收所述目标设备根据所述协议指令返回的设备数据;对所述设备数据进行解析,获得目标数据,将所述目标数据转发至所述中继器的预设串口;通过所述预设串口,以所述预设串口的参数信息,将所述目标数据发送至所述网关,以使得所述网关基于所述协议自适应策略,通过所述目标协议组件,对所述目标数据进行处理,获得所述数据处理指令对应的应用数据。
11、在本公开一些实施例中,所述接收所述目标设备根据所述协议指令返回的设备数据,包括:通过所述中继器的支持自动波特率检测的串口,接收所述设备数据。
12、在本公开一些实施例中,所述预设串口为所述中继器的不支持自动波特率检测的串口;其中,所述对所述设备数据进行解析,获得目标数据,将所述目标数据转发至所述中继器的预设串口,包括:基于自动波特率检测策略确定所述设备数据的波特率和数据位,以所述波特率和所述数据位解析所述设备数据,获得目标数据,将所述目标数据转发至所述不支持自动波特率检测的串口。
13、根据本公开的又一个方面,提供一种网关,包括:指令生成模块,用于生成目标设备的数据处理指令,基于所述目标设备的协议类型,将所述数据处理指令发送至所述目标设备对应的目标协议组件;指令封装模块,用于通过所述目标协议组件,基于协议自适应策略,对所述数据处理指令进行封装,获得所述数据处理指令对应的协议指令,所述协议指令携带目标串口的串口信息,所述目标串口与所述目标设备相连接;指令发送模块,用于将所述协议指令发送至中继器,以使得所述中继器根据所述目标串口信息将所述协议指令转发至所述目标串口,以通过所述目标串口将所述协议指令发送至所述目标设备。
14、根据本公开的又一个方面,提供一种中继器,包括:指令接收模块,用于接收网关发送的协议指令,所述协议指令携带目标串口的串口信息,所述目标串口与目标设备相连接;指令转发模块,用于根据所述目标串口的串口信息,将所述协议指令转发至所述目标串口,以通过所述目标串口将所述协议指令发送至所述目标设备;其中,所述协议指令为所述网关通过所述目标设备对应的目标协议组件,基于协议自适应策略,对所述目标设备的数据处理指令进行封装获得的。
15、根据本公开的又一个方面,提供一种电子设备,包括:一个或多个处理器;存储装置,配置为存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中所述的串口通信方法。
16、根据本公开的又一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中所述的串口通信方法。
17、本公开实施例提供的串口通信方法中,网关可以基于目标设备的协议类型,将目标设备的数据处理指令发送至该目标设本文档来自技高网...
【技术保护点】
1.一种串口通信方法,其特征在于,所述方法由网关执行,包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述中继器包括一个或多个串口,所述目标串口为所述中继器的串口,所述协议自适应策略中存储各个所述串口与设备之间的连接关系。
4.根据权利要求3所述的方法,其特征在于,所述通过所述目标协议组件,基于协议自适应策略,对所述数据处理指令进行封装,获得所述数据处理指令对应的协议指令,包括:
5.根据权利要求2所述的方法,其特征在于,所述网关与所述中继器通过预设串口进行通信,所述预设串口为所述中继器的不支持自动波特率检测的串口。
6.根据权利要求5所述的方法,其特征在于,所述将所述协议指令发送至中继器,包括:通过所述预设串口,以所述预设串口的参数信息,将所述协议指令发送至所述中继器;
7.一种串口通信方法,其特征在于,所述方法由中继器执行,包括:
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
9.根据权利要求8所述的方法,
10.根据权利要求9所述的方法,其特征在于,所述预设串口为所述中继器的不支持自动波特率检测的串口;
11.一种网关,其特征在于,包括:
12.一种中继器,其特征在于,包括:
13.一种电子设备,其特征在于,包括:
14.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的方法;或者,实现如权利要求7至10中任一项所述的方法。
...【技术特征摘要】
1.一种串口通信方法,其特征在于,所述方法由网关执行,包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述中继器包括一个或多个串口,所述目标串口为所述中继器的串口,所述协议自适应策略中存储各个所述串口与设备之间的连接关系。
4.根据权利要求3所述的方法,其特征在于,所述通过所述目标协议组件,基于协议自适应策略,对所述数据处理指令进行封装,获得所述数据处理指令对应的协议指令,包括:
5.根据权利要求2所述的方法,其特征在于,所述网关与所述中继器通过预设串口进行通信,所述预设串口为所述中继器的不支持自动波特率检测的串口。
6.根据权利要求5所述的方法,其特征在于,所述将所述协议指令发送至中继器,包括:通过所述预设串口,以所述预设串口的参数信息,将所述协议指令发送至所述中继器...
【专利技术属性】
技术研发人员:刘奕朴,刘英双,龙腾,吴飞,谭华,
申请(专利权)人:中国电信股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。