一种主从多通讯协议实现方法
技术领域
本发明涉及多通讯协议的匹配,尤其涉及的是,一种主从多通讯协议实现方法。
背景技术
目前电子设备主从通讯中,不同行业不同企业都有自己不同的标准,比如目前电表水表行业中,DLT645(97)/Cj188 /DLT645(07)等 。众多的协议彼此不兼容,给实际使用维护造成很多不必要的麻烦,导致资源极大浪费。
因此,现有技术存在缺陷,需要改进。
发明内容
本发明所要解决的技术问题是提供一种新的主从多通讯协议实现方法。
本发明的技术方案如下:一种主从多通讯协议实现方法,其包括以下步骤:从设备预存储若干协议匹配程序;从设备接收任一来自主设备的通讯数据,对其中任一协议匹配程序执行比较步骤;匹配成功时根据对应的协议匹配程序输出数据;比较步骤:与该协议匹配程序进行匹配,判断是否匹配成功,是则返回匹配成功信息,否则继续与其它协议匹配程序相比较。
优选的,所述实现方法中,所述比较步骤还包括:所述匹配成功后,还继续与其它协议匹配程序相比较,直到所有的协议匹配程序都完成比较为止。
优选的,所述实现方法中,从设备接收任一来自主设备的通讯数据,对其中各协议匹配程序顺序执行比较步骤。
优选的,所述实现方法中,从设备接收任一来自主设备的通讯数据,对其中各协议匹配程序分别执行比较步骤。
优选的,所述实现方法中,所述比较步骤还包括:当所有协议匹配程序均匹配失败,则返回错误信息。
优选的,所述实现方法中,所述匹配成功时还执行以下步骤:对其它协议匹配器进行复位。
优选的,所述实现方法中,对其它协议匹配器进行复位到初始状态。
优选的,所述实现方法还包括步骤:从设备预存储协议等待时间阈值;并且,从设备在接收任一来自主设备的通讯数据时,当等待时间超过所述协议等待时间阈值,则对所有协议匹配器进行复位。
优选的,所述实现方法中,所述从设备仅接收一来自主设备的通讯数据。
优选的,所述实现方法中,所述从设备接收所述通讯数据时,还执行鉴权步骤;所述鉴权步骤包括:判断所述通讯数据是否包含预设置的主设备身份信息,是则判断鉴权通过,执行后续的对其中任一协议匹配程序执行比较步骤。
采用上述方案,本发明提高了从设备的兼容性,能够适合各种不同协议的产品,以满足不同场合不同系统的需求,具有很好的市场应用价值。
附图说明
图1为本发明的一个实施例的示意图;
图2为本发明的又一个实施例的示意图。
具体实施方式
以下结合附图和具体实施例,对本发明进行详细说明。
本发明的一个实施例是,一种主从多通讯协议实现方法,能够实现从机多通讯协议;例如,从设备为远传水表、远传电表、远传煤气表等等,这样,就能够提高从设备的兼容性,以满足不同场合不同系统的需求。实现方法关键在于不同协议数据包的识别,并进行同步,下面说明其具体实现步骤。
从设备预存储若干协议匹配程序;协议匹配程序可以作为协议识别匹配器设置。
从设备接收任一来自主设备的通讯数据,对其中任一协议匹配程序执行比较步骤;例如,从设备接收任一来自主设备的通讯数据,对其中各协议匹配程序顺序执行比较步骤。如图2所示,从设备接收通讯数据,然后协议匹配程序1进行匹配,并判断是否匹配成功,是则复位其他匹配器并返回,否则协议匹配程序2进行匹配,并判断是否匹配成功,是则复位其他匹配器并返回,否则依序继续执行,直到协议匹配程序n进行匹配,并判断是否匹配成功,是则复位其他匹配器并返回,否则返回。优选的,所述比较步骤还包括:当所有协议匹配程序均匹配失败,则返回错误信息。即,协议匹配程序n进行匹配失败后返回错误信息。优选的,还通过发送警报通知用户,或者,还采用电信平台,通过短信息或者邮件信息,通知系统管理员。又如,从设备接收任一来自主设备的通讯数据,对其中各协议匹配程序分别执行比较步骤,即,由各协议匹配程序同步执行比较步骤。或者,还预先根据各协议匹配程序的相似程度或者前后版本关系,将各协议匹配程序分组,同组协议匹配程序同步执行比较步骤。
匹配成功时根据对应的协议匹配程序输出数据;优选的,所述匹配成功时还执行以下步骤:对其它协议匹配器进行复位。例如,如图1所示,从设备接收通讯数据,然后分别交由协议1识别匹配器(即协议匹配程序1)、协议2识别匹配器(即协议匹配程序2)、协议3识别匹配器……协议n识别匹配器进行识别,匹配成功后,实现数据包匹配成功输出;然后返回匹配成功信息,然后对其它协议匹配器进行复位控制,例如,对其它协议匹配器进行复位到初始状态。
比较步骤:与该协议匹配程序进行匹配,判断是否匹配成功,是则返回匹配成功信息,否则继续与其它协议匹配程序相比较。或者,优选的,所述比较步骤还包括:所述匹配成功后,还继续与其它协议匹配程序相比较,直到所有的协议匹配程序都完成比较为止。优选的,所述比较步骤还包括校验步骤,在匹配成功后,进行冗余匹配校验,并判断是否匹配成功,是则返回匹配成功信息,否则继续与其它协议匹配程序相比较。
又如,优选的,所述实现方法还包括步骤:从设备预存储协议等待时间阈值;并且,从设备在接收任一来自主设备的通讯数据时,当等待时间超过所述协议等待时间阈值,则对所有协议匹配器进行复位。例如,如图1所示,在通讯超时的时候,对所有协议匹配器进行复位。
优选的,所述从设备仅接收一来自主设备的通讯数据;优选的,所述从设备接收所述通讯数据时,还执行鉴权步骤;所述鉴权步骤包括:判断所述通讯数据是否包含预设置的主设备身份信息,是则判断鉴权通过,执行后续的对其中任一协议匹配程序执行比较步骤。例如,从设备只能接收某一预设权限的主设备的通讯数据,在接收所述通讯数据时,判断是否包含预设置的主设备身份信息,例如,某一预设置的ID号,例如,该ID号是一串数字或者数字与字母的组合。
又一个例子是,当从设备接收到每一个主设备发来的通讯数据,都传给各协议的匹配器(协议匹配程序)进行匹配,当某个协议匹配成功时,对其它所有协议匹配器复位到初始状态(等待接收数据包头),等待下一个数据包接收匹配。优选的,为预防失步,如果接收时间超过最长的协议等待时间时,也应对所有协议匹配器复位。
进一步地,本发明的实施例还可以是,上述各实施例的各技术特征,相互组合形成的主从多通讯协议实现方法。
需要说明的是,上述各技术特征继续相互组合,形成未在上面列举的各种实施例,均视为本发明说明书记载的范围;并且,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。