用于多设备的地址分配方法、装置及存储介质
技术领域
本发明涉及通信设备技术领域,尤其涉及一种用于多设备的地址分配方法、装置及存储介质。
背景技术
工业通信很多场景会用到一主多从的设备通信架构,有时多个从设备可以共用一个地址,但大多数的时候多个从设备需要不同的地址。另外,当某个或某几个设备损坏需重新更换时也需要解决地址问题。
目前工业通信中的地址更换大多依靠拨码开关更换地址和上位机逐个更改。其中,拨码开关更换地址需要手动调整拨码开关的连通状态,容易出现拨码开关连通状态与预期不同,导致地址更换错误;上位机逐个更改需要大量数据交互,耗时长。
发明内容
本发明的目的在于提供一种用于多设备的地址分配方法、装置及存储介质,以解决现有技术中通信设备地址更换繁琐、容易出错的问题。
为了解决上述问题,本发明提供了一种用于多设备的地址分配方法,所述地址分配方法包括如下步骤:
主控接收待分配地址,并根据待分配地址生成第一预设数字输出信号并发送至第一从控;
第一从控接收第一预设数字输出信号并判断第一预设数字输出信号是否与第一从控的第一预设数字输入信号匹配,若是,则第一从控获取待分配地址并保存;
第一从控产生第二预设数字输出信号并将第二预设数字输出信号发送至第二从控;
第二从控接收第二预设数字输出信号并判断第二预设数字输出信号是否与第二从控的第二预设数字输入信号匹配,若是,则第二从控获取待分配地址并保存。
作为本发明的进一步改进,第二从控接收第二预设数字输出信号并判断第二预设数字输出信号是否与第二从控的第二预设数字输入信号匹配,若是,则第二从控获取待分配地址并保存的步骤之后,还包括:
主控检测第一从控、第二从控是否同时保存待分配地址,若是,则主控产生分配完成信号并发送至外部接收端。
作为本发明的进一步改进,主控检测第一从控、第二从控是否同时保存待分配地址,若是,则主控产生分配完成信号并发送至外部接收端的步骤之后,还包括:
若否,则主控检测未完成分配的从控并标记为故障从控;
主控发送故障从控的位置信息至外部接收端。
作为本发明的进一步改进,若从控的数量超过两个,则第二从控接收第二预设数字输出信号并判断第二预设数字输出信号是否与第二从控的第二预设数字输入信号匹配,若是,则第二从控获取待分配地址并保存的步骤之后,还包括:
第二从控之后的从控依次接收前一个从控的预设数字输出信号,并判断前一个从控的预设数字输出信号是否与自身从控的预设数字输入信号匹配,若是则自身从控获取待分配地址并保存;
主控检测所有从控是否同时保存待分配地址,若是,则主控产生分配完成信号并发送至外部接收端。
作为本发明的进一步改进,第一从控接收第一预设数字输出信号并判断第一预设数字输出信号是否与第一从控的第一预设数字输入信号匹配,若是,则第一从控获取待分配地址并保存的步骤之后,还包括:
若否,则第一从控不获取待分配地址,并产生错误信号发送至主控;
主控接收错误信号并发送至外部接收端。
作为本发明的进一步改进,第二从控接收第二预设数字输出信号并判断第二预设数字输出信号是否与第二从控的第二预设数字输入信号匹配,若是,则第二从控获取待分配地址并保存的步骤之后,还包括:
若否,则第二从控不获取待分配地址,并产生错误信号发送至主控;
主控接收错误信号并发送至外部接收端。
为了解决上述问题,本发明还提供一种用于多设备的地址分配装置,所述地址分配装置包括:
主控,用于接收待分配地址,并根据待分配地址生成第一预设数字输出信号发送至第一从控;
第一从控,用于接收第一预设数字输出信号并判断第一预设数字输出信号是否与第一从控的第一预设数字输入信号匹配,若是,则第一从控获取待分配地址并保存;第一从控产生第二预设数字输出信号并将第二预设数字输出信号发送至第二从控;
第二从控,用于接收第二预设数字输出信号并判断第二预设数字输出信号是否与第二从控的第二预设数字输入信号匹配,若是,则第二从控获取待分配地址并保存。
作为本发明的进一步改进,主控还用于检测第一从控、第二从控是否同时保存待分配地址,若是,则主控产生分配完成信号并发送至外部接收端;若否,则第一从控不获取待分配地址,并产生错误信号发送至主控,主控接收错误信号并发送至外部接收端。
作为本发明的进一步改进,若地址分配装置中从控的数量超过两个,则第二从控之后的从控依次接收前一个从控的预设数字输出信号,并判断前一个从控的预设数字输出信号是否与自身从控的预设数字输入信号匹配,若是则自身从控获取待分配地址并保存;主控检测所有从控是否同时保存待分配地址,若是,则主控产生分配完成信号并发送至外部接收端。
为了解决上述问题,本发明还提供了一种存储介质,其上存储有程序数据,程序数据被处理器执行时实现上述地址分配方法中的步骤。
本发明通过主控向第一从控分配地址,第一从控分别完成后由第一从控向第二从控分配地址,不需要主控逐一向各个从控分配地址,从而减少了数据交互次数,提高了分配效率,同时也避免了拨码开关更换地址和上位机逐个更改两种方法中出现的容易出错、耗时长的问题。
附图说明
图1为本发明用于多设备的地址分配方法一个实施例的流程示意图;
图2为本发明用于多设备的地址分配方法一个实施例的流程示意图;
图3为本发明用于多设备的地址分配方法一个实施例的流程示意图;
图4为本发明用于多设备的地址分配装置一个实施例的功能模块示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用来限定本发明。
图1展示了本发明用于多设备的地址分配方法的一个实施例,参见图1,在本实施例中,所述地址分配方法包括如下步骤:
步骤S1,主控接收待分配地址,并根据待分配地址生成第一预设数字输出信号并发送至第一从控。
优选地,第一预设数字输出信号可设为主控分配地址的DO(Digital Output)信号,该从主控产生的DO信号经由主控输出至第一从控。
步骤S2,第一从控接收第一预设数字输出信号并判断第一预设数字输出信号是否与第一从控的第一预设数字输入信号匹配,若是,则执行步骤S3,若否,则执行步骤S4。
优选地,第一预设数字输入信号可设为第一从控自身的DI(Digital Input)信号,第一从控收到DO信号后判断自身的DI信号与DO信号是否匹配,或判断自身DI信号是否有效。
步骤S3,第一从控获取待分配地址并保存。
优选地,第一从控的地址分配完成后,可由第一从控自身进行记录,以防止主控重复分配地址。
步骤S4,第一从控不获取待分配地址,并产生错误信号发送至主控,主控接收错误信号并发送至外部接收端。
步骤S5,第一从控产生第二预设数字输出信号并将第二预设数字输出信号发送至第二从控。
优选地,第二预设数字输出信号可设为第一从控分配地址的DO(Digital Output)信号,该从第一从控产生的DO信号经由第一从控输出至第二从控。
步骤S6,第二从控接收第二预设数字输出信号并判断第二预设数字输出信号是否与第二从控的第二预设数字输入信号匹配,若是,则执行步骤S7,若否,则执行步骤S8。
优选地,第二预设数字输入信号可设为第二从控自身的DI(Digital Input)信号,第二从控收到来自第一从控的DO信号后判断自身的DI信号与来自第一从控的DO信号是否匹配,或判断自身DI信号是否有效。
步骤S7,第二从控获取待分配地址并保存。
优选地,第二从控的地址分配完成后,可由第二从控自身进行记录,以防止第一从控重复分配地址。
步骤S8,第二从控不获取待分配地址,并产生错误信号发送至主控,主控接收错误信号并发送至外部接收端。
需要说明的是,本实例通过一个主控和两个从控的基础配置来说明多设备的地址分配方法,从控的数量可根据实际需要进行设置,本实施例中的两个从控并不用于限定从控的数量,从控的数量可设置为不少于两个。
具体地,当从控的数量超过两个时,参见图2,步骤S6之后还包括如下步骤:
步骤S61,第二从控之后的从控依次接收前一个从控的预设数字输出信号,并判断前一个从控的预设数字输出信号是否与自身从控的预设数字输入信号匹配,若是则自身从控获取待分配地址并保存。
步骤S62,主控检测所有从控是否同时保存待分配地址,若是,则主控产生分配完成信号并发送至外部接收端。
本实施例通过主控向第一从控分配地址,第一从控分别完成后由第一从控向第二从控分配地址,不需要主控逐一向各个从控分配地址,从而减少了数据交互次数,提高了分配效率,同时也避免了拨码开关更换地址和上位机逐个更改两种方法中出现的容易出错、耗时长的问题。
为了方便用户知晓地址分配是否完成,在上述实施例的基础上,参见图3,在本实施例中,步骤S6之后,还包括如下步骤:
步骤S601,主控检测第一从控、第二从控是否同时保存待分配地址,若是,则执行步骤S602,若否,则执行步骤S603。
具体地,当第一从控完成地址分配时,第一从控产生自身的DO信号并与主控的DI信号连接,若连接成功则判定为地址分配完成。同理,当第二从控完成地址分配时,第二从控产生自身的DO信号并与主控的DI信号连接,若连接成功则判定为地址分配完成,从而主控分别与第一从控、第二从控形成闭环控制。
步骤S602,主控产生分配完成信号并发送至外部接收端。
步骤S603,主控检测未完成分配的从控并标记为故障从控,主控发送故障从控的位置信息至外部接收端。
优选地,若某个从控故障无法分配地址时,则主控中止分配地址并重新分配,预设次数后若仍不成功则将当前故障的从控地址发送至外部接收端。
本实施例通过主控检测各个从控的地址是否分配完成,并在当地址分配完成时主控产生分配完成信号并发送至外部接收端,以通知用户分配完成。
图4展示了本发明用于多设备的地址分配装置的一个实施例,参见图4,在本实施例中,所述地址分配装置包括主控和至少两个从控,本实施例选择两个从控(即第一从控、第二从控)为说明对象。
其中,主控用于接收待分配地址,并根据待分配地址生成第一预设数字输出信号发送至第一从控;第一从控用于接收第一预设数字输出信号并判断第一预设数字输出信号是否与第一从控的第一预设数字输入信号匹配,若是,则第一从控获取待分配地址并保存;第一从控产生第二预设数字输出信号并将第二预设数字输出信号发送至第二从控;第二从控用于接收第二预设数字输出信号并判断第二预设数字输出信号是否与第二从控的第二预设数字输入信号匹配,若是,则第二从控获取待分配地址并保存。
具体地,若地址分配装置中从控的数量超过两个,则第二从控之后的从控依次接收前一个从控的预设数字输出信号,并判断前一个从控的预设数字输出信号是否与自身从控的预设数字输入信号匹配,若是则自身从控获取待分配地址并保存;主控检测所有从控是否同时保存待分配地址,若是,则主控产生分配完成信号并发送至外部接收端。
进一步地,主控还用于检测第一从控、第二从控是否同时保存待分配地址,若是,则主控产生分配完成信号并发送至外部接收端;若否,则第一从控不获取待分配地址,并产生错误信号发送至主控,主控接收错误信号并发送至外部接收端。
本实施例通过主控向第一从控分配地址,第一从控分别完成后由第一从控向第二从控分配地址,不需要主控逐一向各个从控分配地址,从而减少了数据交互次数,提高了分配效率,同时也避免了拨码开关更换地址和上位机逐个更改两种方法中出现的容易出错、耗时长的问题。
本发明还提供了一种存储介质,其上存储有程序数据,程序数据被处理器执行时实现上述地址分配方法中的步骤。
本实施例中的存储介质可以是只读存储器、可存储静态信息和指令的静态存储设备、随机存取存储器、或者可存储信息和指令的动态存储设备,也可以是电可擦可编程只读存储器、只读光盘、或其他光盘存储、光碟存储、磁盘存储介质或者其他磁存储设备。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以不再进行赘述,相关之处参见方法实施例的部分说明即可。
以上对发明的具体实施方式进行了详细说明,但其只作为范例,本发明并不限制于以上描述的具体实施方式。对于本领域的技术人员而言,任何对该发明进行的等同修改或替代也都在本发明的范畴之中,因此,在不脱离本发明的精神和原则范围下所作的均等变换和修改、改进等,都应涵盖在本发明的范围内。