主权项 |
一种分布式控制系统中的地址冲突检测方法,所述方法包括:将一个上位机模块作为主机,将若干个下位机模块作为从机,采用CAN总线连接在所述主机与所述从机之间;所述主机上电或复位后,通过所述CAN总线周期性轮询预先配置的节点地址,向所述节点地址发起注册过程,其特征在于,所述注册过程包括:所述主机向所述节点地址发送请求设备序列号命令;所述节点地址上的从机对接收到请求设备序列号命令的次数进行判断,若未超过预设阈值,则向所述主机返回保存在硬件中的合法设备序列号,若超过预设阈值,则向所述主机返回固定的非法设备序列号;若所述主机接收到所述合法设备序列号,则对其进行保存,并向相应节点地址发送允许注册命令,所述相应节点地址上的从机接收到所述允许注册命令并对其中包含的设备序列号进行确认后,向所述主机返回接受注册应答并等待所述主机分配节点标识符;所述主机接收到所述接受注册应答后,向相应节点地址发送多次地址冲突测试命令,所述相应节点地址上处于等待节点标识符状态的从机对所述地址冲突测试命令不作应答,若所述相应节点地址上还存在地址冲突从机,则所述地址冲突从机接收到所述地址冲突测试命令后,向所述主机返回固定的非法设备序列号;若所述主机接收到所述非法设备序列号,则停止相应节点地址上的当前注册过程,并向所述相应节点地址重新发起注册过程;若所述主机发送多次地址冲突测试命令,均未接收到相应节点地址上的从机的应答,则向所述相应节点地址发送节点标识符;所述相应节点地址上的从机接收到所述节点标识符后,向所述主机返回注册成功应答,所述主机接收到所述注册成功应答后,判定相应节点地址的注册过程完成。 |