System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及通信,尤其涉及一种单总线设备id的设置方法及系统。
技术介绍
1、对于can总线,rs485总线等总线上通信的设备,主节点为了更好的进行设备管理和通信,需要对设备进行编址或者设置设备id。
2、目前,一般通过地址总线进行寻址或者通过在设备上安装可以确定设备id的拨码,但是随着总线上设备数量的增加,地址线无法无限增加,有限的地址线可能导致设备id冲突,可能会有两个或更多的设备被分配到相同的地址,这会导致通信冲突和错误。
3、因此,如何正确分配io设备的设备id以确保io设备的正常通信,成为本领域亟需解决的问题。
技术实现思路
1、本申请提供了一种单总线设备id的设置方法及系统,目的在于正确分配io设备的设备id以确保io设备的正常通信。
2、为了实现上述目的,本申请提供了以下技术方案:
3、一种单总线设备id的设置系统,所述设置系统包括:控制器和n个io设备,n为大于1的正整数;
4、n个所述io设备之间串联,第一个io设备的输出端与第二个io设备的输入端连接,第n-1个io设备的输出端与第n个io设备的输入端连接,所述第一个io设备的输入端通过地址线与所述控制器连接;
5、所述控制器和n个所述io设备之间通过通信总线通信连接;
6、其中,所述控制器通过通信总线向n个所述io设备发送携带有设备id的广播包,当n个所述io设备接收到控制器发送的携带有设备id的广播包时,通过n个所述io设备检测
7、可选的,所述io设备包括:开关、第一电阻、第二电阻和第三电阻;
8、所述开关的一端与所述第一电阻的一端连接,所述第一电阻的另一端接地;
9、所述第二电阻的一端与电源连接,所述第二电阻的另一端与所述第三电阻的一端连接,所述第三电阻的另一端接地;
10、当所述io设备为第一个io设备时,所述开关的另一端与所述控制器连接,所述第二电阻的另一端与所述第三电阻的一端连接的公共端与第二个io设备的输入端连接;
11、当所述io设备为第n个io设备时,所述开关的另一端与第n-1个io设备的输出端连接。
12、可选的,n个所述io设备为4个io设备,包括:第一io设备、第二io设备、第三io设备和第四io设备;
13、所述第一io设备的输入端与所述控制器连接,所述第一io设备的输出端与所述第二io设备的输入端连接;
14、所述第二io设备的输出端与所述第三io设备的输入端连接,所述第三io设备的输出端与所述第四io设备的输入端连接。
15、可选的,n个所述io设备中均设置有单片机,所述单片机用于测量n个所述io设备自身寻址电路的电压。
16、可选的,所述第一个io设备通过固定部件与所述控制器固定连接。
17、可选的,所述固定部件包括:插槽和导轨;
18、所述导轨设置于所述控制器上,所述插槽设置于所述第一个io设备上,所述第一个io设备和所述控制器通过所述插槽和所述导轨滑动连接。
19、一种单总线设备id的设置方法,应用于上述任一所述的单总线设备id的设置系统,包括:
20、通过控制器向n个io设备发送携带设备id的广播包;
21、当接收到所述广播包时,通过n个所述io设备周期性检测自身寻址电路的电压;
22、当任一io设备的电压为预设电压,且所述io设备的逻辑id为预设id时,将所述io设备的逻辑id设置为所述设备id,并向所述控制器发送设置完成的应答信息,以及断开与其他io设备连接;其中,所述其他io设备指示除已设置设备id外的io设备;
23、当接收到所述应答信息后,通过所述控制器将所述广播包中的设备id加1,得到新的设备id;
24、通过所述控制器将所述新的设备id确定为设备id,并返回执行通过控制器向n个io设备发送携带设备id的广播包这一步骤,直至所有io设备的设备id设置完成。
25、可选的,所述通过控制器向n个io设备发送携带设备id的广播包之前,还包括:
26、当n个io设备上电时,将n个所述io设备的逻辑id设置为预设id。
27、可选的,所述当任一io设备的电压为预设电压,且所述io设备的逻辑id为预设id时,将所述io设备的逻辑id设置为所述设备id,并向所述控制器发送设置完成的应答信息,以及断开与其他io设备连接,包括:
28、当任一io设备的电压为1.5v,且所述io设备的逻辑id为0xffff时,将所述io设备的逻辑id设置为所述设备id,并向所述控制器发送设置完成的应答信息,以及所述io设备的寻址电路断开与其他io设备寻址电路之间的连接。
29、可选的,还包括:
30、当所述所有io设备的设备id设置完成后,通过所述控制器反馈所述所有io设备的设备id设置完成的应答信息。
31、本申请提供的技术方案,n个io设备之间首尾串联,第一个io设备的输出端与第二个io设备的输入端连接,第n-1个io设备的输出端与第n个io设备的输入端连接,第一个io设备的输入端通过地址线与控制器连接;控制器和n个io设备之间通过通信总线通信连接;其中,控制器通过通信总线向n个io设备发送携带有设备id的广播包,当n个io设备接收到控制器发送的携带有设备id的广播包时,通过n个io设备检测自身的电压和逻辑id,得到检测结果;根据检测结果由第n个io设备向第一个io设备的顺序,依次设置每个io设备的逻辑id。通过一根地址线就能依次设置每个io设备的设备id,无论通信总线上增加多少设备,均不会出现设备id冲突的情况,进而确保io设备的正常通信。
本文档来自技高网...【技术保护点】
1.一种单总线设备ID的设置系统,其特征在于,所述设置系统包括:控制器和N个IO设备,N为大于1的正整数;
2.根据权利要求1所述的系统,其特征在于,所述IO设备包括:开关、第一电阻、第二电阻和第三电阻;
3.根据权利要求1所述的系统,其特征在于,N个所述IO设备为4个IO设备,包括:第一IO设备、第二IO设备、第三IO设备和第四IO设备;
4.根据权利要求1-3任一所述的系统,其特征在于,N个所述IO设备中均设置有单片机,所述单片机用于测量N个所述IO设备自身寻址电路的电压。
5.根据权利要求1所述的系统,其特征在于,所述第一个IO设备通过固定部件与所述控制器固定连接。
6.根据权利要求5所述的系统,其特征在于,所述固定部件包括:插槽和导轨;
7.一种单总线设备ID的设置方法,其特征在于,应用于上述权利要求1-6任一所述的单总线设备ID的设置系统,包括:
8.根据权利要求7所述的方法,其特征在于,所述通过控制器向N个IO设备发送携带设备ID的广播包之前,还包括:
9.根据权利要求7所
10.根据权利要求7所述的方法,其特征在于,还包括:
...【技术特征摘要】
1.一种单总线设备id的设置系统,其特征在于,所述设置系统包括:控制器和n个io设备,n为大于1的正整数;
2.根据权利要求1所述的系统,其特征在于,所述io设备包括:开关、第一电阻、第二电阻和第三电阻;
3.根据权利要求1所述的系统,其特征在于,n个所述io设备为4个io设备,包括:第一io设备、第二io设备、第三io设备和第四io设备;
4.根据权利要求1-3任一所述的系统,其特征在于,n个所述io设备中均设置有单片机,所述单片机用于测量n个所述io设备自身寻址电路的电压。
5.根据权利要求1所述的系统,其特征在于,所述第一个io设备通过固定部件与所述控制器固定连接。
<...【专利技术属性】
技术研发人员:唐义文,郭磊,林样,孔繁会,董丹娜,
申请(专利权)人:中控技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。