The invention provides an automatic ID allocation method for CAN bus nodes, which is suitable for a host node and several slave nodes connected in parallel to the CAN bus network, and the host node connects several slave nodes in series to a closed loop through a signal line for node ID configuration, including: the host node sends PWM signals through the signal line to the first slave node connected with the host node; Through the signal line, the terminal slave node receives the PWM signal to judge whether the ID configuration is completed; the slave node sends the PWM signal through the signal line to the next slave or host node connected with it; the frequency of the host node and each slave node sends the PWM signal is the same but the duty ratio is different; the slave node sets the corresponding ID according to the duty ratio of the PWM signal sent by the former node.
【技术实现步骤摘要】
一种CAN总线节点ID自动分配方法及装置
本专利技术涉及一种智能控制技术,特别是一种CAN总线节点ID自动分配方法及装置。
技术介绍
CAN总线由于其具有实时性强、传输距离较远、抗电磁干扰能力强、成本低等优点,已经在电动汽车、工业自动化和智能家居等行业领域得到了广泛应用;通常CAN总线作为一种主从模式或者多主模式的总线结构,其总线协议要求其总线网络上所有节点的ID号具有唯一性;因此,如何有效地配置CAN总线网络节点ID已经成为使用CAN总线的基本问题。现有的CAN总线节点ID配置方法主要分为软件升级设置法和开关网络配置法。软件升级设置法是指在配置某节点ID时,通过软件方法修改控制器程序中节点ID值,并将程序编译后,下载到控制器的FLASH存储区进行固化;该方法只需要修改软件就可以进行配置,不需要除控制器以外其他硬件电路支持,但是,该方法导致总线每个节点都需要人工手动进行软件升级工作,随着CAN总线上节点数目增大,节点控制器软件升级的工作量将大大增加,从而增大了人工成本,不利于产品大批量生产开发。开关网络配置法是指首先将网络节点中用于ID配置的控制器IO端口通过下拉电阻连接于信号地端,再通过开关器件分别连接于电源端,而控制器通过读取此时IO端口的电平状态来配置所在节点ID值。在实际使用过程中,使用者可以通过手动切换开关网络里每个开关状态而进行CAN总线网络节点ID的配置工作;该方法不需要进行软件升级的重复性工作,减少了重复升级控制器软件的工作量,但是,使用手动开关器件也增加了硬件成本,并且手动开关器件在振动环境中容易出现连接松动或者误动作等现象,从而导致节点 ...
【技术保护点】
1.一种CAN总线节点ID自动分配方法,适用于并行连接于CAN总线网络的一个主机节点和若干从机节点,且主机节点通过用于节点ID配置的信号线将若干从机节点串联为闭合回路,其特征在于,包括:主机节点通过信号线发送PWM信号至与其相连的首位从机节点;主机节点通过信号线接收末位从机节点发送的PWM信号判断ID配置是否完成;从机节点通过信号线发送PWM信号至与其相连的下一级从机节点或主机节点;主机节点和每一从机节点发送的PWM信号频率相同但占空比不同;从机节点根据前一节点发送的PWM信号的占空比设置相应的ID。
【技术特征摘要】
1.一种CAN总线节点ID自动分配方法,适用于并行连接于CAN总线网络的一个主机节点和若干从机节点,且主机节点通过用于节点ID配置的信号线将若干从机节点串联为闭合回路,其特征在于,包括:主机节点通过信号线发送PWM信号至与其相连的首位从机节点;主机节点通过信号线接收末位从机节点发送的PWM信号判断ID配置是否完成;从机节点通过信号线发送PWM信号至与其相连的下一级从机节点或主机节点;主机节点和每一从机节点发送的PWM信号频率相同但占空比不同;从机节点根据前一节点发送的PWM信号的占空比设置相应的ID。2.根据权利要求1所述的方法,其特征在于,主机节点根据末位从机节点发送的PWM信号判断ID配置是否完成包括以下情形:(1)主机节点判断末位从机节点发送的PWM信号满足规定,启动CAN通讯广播指令要求所有从机节点回复确认,若主机节点在规定的时间内接收到所有从机节点的应答消息,则表示则所有从机节点ID分配完成;(2)主机节点未能在规定时间内正确地接收到所有从机节点发送的应答消息,则表示CAN总线节点ID配置失败,系统复位;(3)主机节点未能在规定时间内正确地接收到末尾从机节点发送的PWM信号,则表示主机节点控制器捕获失败,错误计数器自动增加一次,并重新启动接收末位从机节点工作;若错误计数器计数超出3次,则表示CAN总线节点ID配置失败,等待系统复位。3.根据权利要求2所述的方法,其特征在于,若从机节点未能在规定时间内正确地接收到相邻的从机节点发送的PWM信号,则表示从机节点控制器捕获失败,错误计数器自动增加一次,并重新启动捕获工作;若错误计数器计数超出3次,则将PWM信号设置成含有故障报警信息的特征,并输出PWM信号至相连的从机节点,等待系统复位;若从机节点未能在规定时间内正确地接收到主机节点发送的指令,则表示CAN总线节点ID配置失败,等待系统复位。4.一种CAN总线节点ID自动分配装置,其特征在于,包括并行连接于CAN总线网络的一个主机节点和若干从机节点,且主机节点通过用于节点ID配置的信号线将若干从机节点串联为闭合回路,其特征在于,每一节点包括信号检测模块、控制器单元、信号转换模块;其中每一节点的信号检测模块用于接收前一节点发射的PWM信号,每一节点的信号转换模块用于向后一节点发射PWM信号,控制器单元配置PWM信号的频率、占空比,且主机节点和每一从机节点发送的PWM信号频率相同但占空比不同,主机节点的控制器单元还根据末位从机节点发射的PWM信号判断ID配置是否完成,从机节点的还根据主机节点或上一级从机节点发射的PWM信号...
【专利技术属性】
技术研发人员:阳威,杨锡旺,
申请(专利权)人:常州索维尔电子科技有限公司,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。