CN108881505A - 一种can总线节点地址分配方法及系统 - Google Patents

一种can总线节点地址分配方法及系统 Download PDF

Info

Publication number
CN108881505A
CN108881505A CN201810542018.2A CN201810542018A CN108881505A CN 108881505 A CN108881505 A CN 108881505A CN 201810542018 A CN201810542018 A CN 201810542018A CN 108881505 A CN108881505 A CN 108881505A
Authority
CN
China
Prior art keywords
node
address
interim
bus
random number
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201810542018.2A
Other languages
English (en)
Inventor
张智雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Gao Shi Da Electric Co Ltd
Original Assignee
Wuhan Gao Shi Da Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan Gao Shi Da Electric Co Ltd filed Critical Wuhan Gao Shi Da Electric Co Ltd
Priority to CN201810542018.2A priority Critical patent/CN108881505A/zh
Publication of CN108881505A publication Critical patent/CN108881505A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5038Address allocation for local use, e.g. in LAN or USB networks, or in a controller area network [CAN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5046Resolving address allocation conflicts; Testing of addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明涉及一种CAN总线节点地址分配方法及系统,该方法包括:从节点控制器通过随机数发生器产生一组随机数,该组随机数组成该从节点的临时CAN网络节点地址;从节点向主节点发送数据帧,所述数据帧中包含该从节点的临时CAN网络节点地址和获取地址的命令;主节点接收从节点发送的数据,根据所述临时CAN网络节点地址给该从节点分配相应的地址,并对应生成存储表条目;从节点接收数据,将该从节点的临时地址修改为主节点分配的地址。该方法利用从节点自动生成随机数节点地址,并向主节点请求分配的方法,有效的解决了现有技术中采用拨码开关、上下拉电阻等方式,或者直接修改程序等方法出现的软硬件资源浪费,以及由此导致的地址分配不合理、冲突等问题。

Description

一种CAN总线节点地址分配方法及系统
技术领域
本发明涉及嵌入式领域,具体而言是一种CAN总线节点地址分配方法及系统。
背景技术
CAN是控制器局域网络(Controller Area Network)的简称,具有较高的可靠性和良好的错误检测能力,是国际上应用最广泛的现场总线之一,广泛用于汽车电子、工业测控和工业自动化等领域。
CAN网络中包含多个节点(如图1所示),它们通过CAN总线连接在一起,每个节点都可以监听CAN总线上的通信。
CAN网络中每个节点都必须有自己的地址,CAN协议中规定了地址的长度必须为11位(标准帧)或者29位(扩展帧)。但是CAN协议中没有规定地址的获取方式。
通常情况下,采用预设地址的方式进行地址分配。具体而言,在节点接入CAN网络之前,进行地址分配。例如,采用拨码开关、上下拉电阻等方式,或者直接修改程序,为各节点分配对应地址。
以上方法实现起来不仅浪费资源,而且可能出现地址分配不合理、冲突等情况。
发明内容
本发明针对现有技术中存在的技术问题,提供一种CAN总线地址分配的方法及系统,以保证CAN总线通信的正常进行。
本发明解决上述技术问题的技术方案如下:
一方面,本发明提供一种CAN总线节点地址分配方法,包括以下步骤:
步骤1,从节点控制器通过随机数发生器产生一组随机数,该组随机数组成该从节点的临时CAN网络节点地址;
步骤2,从节点向主节点发送数据帧,所述数据帧中包含该从节点的临时CAN网络节点地址和获取地址的命令;
步骤3,主节点接收从节点发送的数据,根据所述临时CAN网络节点地址给该从节点分配相应的地址,并对应生成存储表条目;
步骤4,从节点接收数据,将该从节点的临时地址修改为主节点分配的地址。
进一步,所述的一组随机数包括依次生成的11位或29位随机数,每位随机数取值0~f,由所述11位或29位随机数构成该从节点的临时CAN网络节点地址。
进一步,所述步骤3还包括:
主节点接收从节点发送的数据后,将所述临时CAN网络节点地址与存储表中已记录的从节点地址进行匹配操作,若匹配到相同的从节点地址,则主节点不响应当前从节点的节点地址分配请求。
进一步,所述步骤3后还包括:
从节点等待接收主节点分配地址超时,则跳转至步骤1,重新生成一组随机数,作为该从节点的临时CAN网络节点地址。
进一步,该方法还包括,多个从节点根据优先级获取对CAN总线的控制权,在当前从节点地址分配完毕后,释放对CAN总线的控制权。
另一方面,本发明还提供一种CAN总线节点地址分配系统,包括通过CAN总线连接的一个主节点控制器和多个从节点控制器;
所述从节点控制器包括:
一随机数发生器,用于产生一组随机数,该组随机数组成该从节点的临时CAN网络节点地址;
一数据帧封装模块,用于将该从节点的临时CAN网络节点地址和获取地址的命令封装成一个数据帧,并发送给主节点控制器;
所述主节点控制器包括:
一数据解析模块,用于解析从节点控制器发送的数据帧,获取从节点的临时CAN网络节点地址;
一地址存储表,用于存储主节点控制器已分配的从节点地址;
一地址匹配模块,用于判断获取的临时CAN网络节点地址与所述地址存储表中的从节点地址是否匹配。
进一步,所述随机发生器产生的一组随机数包括依次生成的11位或29位随机数,每位随机数取值0~f,由所述11位或29位随机数构成该从节点的临时CAN网络节点地址。
进一步,所述从节点控制器还包括一延时计数器,所述数据帧封装模块向所述主节点控制器发送数据后进行计数,当计数超过阈值时,则随机数发生器重新生成一组随机数,并由数据帧封装模块封装后发送给主节点控制器。
进一步,所述多个从节点控制器设有不同的优先级,优先级高的从节点控制器在进行节点地址请求时拥有较高的CAN总线控制权,当且仅当该从节点地址分配结束后,所述从节点控制器释放CAN总线控制权。
本发明的有益效果是:该方法利用从节点自动生成随机数节点地址,并向主节点请求分配的方法,有效的解决了现有技术中采用拨码开关、上下拉电阻等方式,或者直接修改程序等方法出现的软硬件资源浪费,以及由此导致的地址分配不合理、冲突等问题。
附图说明
图1为CAN网络结构示意图;
图2为本发明方法流程图;
图3为本发明系统结构示意图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
如图2所示,一方面,本发明提供一种CAN总线节点地址分配方法,包括以下步骤:
步骤1,从节点控制器通过随机数发生器产生一组随机数,该组随机数组成该从节点的临时CAN网络节点地址,所述的一组随机数包括依次生成的11位或29位随机数,每位随机数取值0~f,由所述11位或29位随机数构成该从节点的临时CAN网络节点地址;
步骤2,从节点向主节点发送数据帧,所述数据帧中包含该从节点的临时CAN网络节点地址和获取地址的命令;
步骤3,主节点接收从节点发送的数据,根据所述临时CAN网络节点地址给该从节点分配相应的地址,并对应生成存储表条目;
主节点接收从节点发送的数据后,将所述临时CAN网络节点地址与存储表中已记录的从节点地址进行匹配操作,若匹配到相同的从节点地址,则主节点不响应当前从节点的节点地址分配请求。
从节点等待接收主节点分配地址超时,则跳转至步骤1,重新生成一组随机数,作为该从节点的临时CAN网络节点地址。
步骤4,从节点接收数据,将该从节点的临时地址修改为主节点分配的地址。
在进行地址分配时,多个从节点根据优先级获取对CAN总线的控制权,在当前从节点地址分配完毕后,释放对CAN总线的控制权。
另一方面,本发明还提供一种CAN总线节点地址分配系统,如图3所示,包括通过CAN总线连接的一个主节点控制器和多个从节点控制器;
所述从节点控制器包括:
一随机数发生器,用于产生一组随机数,该组随机数组成该从节点的临时CAN网络节点地址;
一数据帧封装模块,用于将该从节点的临时CAN网络节点地址和获取地址的命令封装成一个数据帧,并发送给主节点控制器;
一延时计数器,所述数据帧封装模块向所述主节点控制器发送数据后进行计数,当计数超过阈值时,则随机数发生器重新生成一组随机数,并由数据帧封装模块封装后发送给主节点控制器。
所述主节点控制器包括:
一数据解析模块,用于解析从节点控制器发送的数据帧,获取从节点的临时CAN网络节点地址;
一地址存储表,用于存储主节点控制器已分配的从节点地址;
一地址匹配模块,用于判断获取的临时CAN网络节点地址与所述地址存储表中的从节点地址是否匹配。
所述多个从节点控制器设有不同的优先级,优先级高的从节点控制器在进行节点地址请求时拥有较高的CAN总线控制权,当且仅当该从节点地址分配结束后,所述从节点控制器释放CAN总线控制权。
该方法利用从节点自动生成随机数节点地址,并向主节点请求分配的方法,有效的解决了现有技术中采用拨码开关、上下拉电阻等方式,或者直接修改程序等方法出现的软硬件资源浪费,以及由此导致的地址分配不合理、冲突等问题。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种CAN总线节点地址分配方法,其特征在于,包括以下步骤:
步骤1,从节点控制器通过随机数发生器产生一组随机数,该组随机数组成该从节点的临时CAN网络节点地址;
步骤2,从节点向主节点发送数据帧,所述数据帧中包含该从节点的临时CAN网络节点地址和获取地址的命令;
步骤3,主节点接收从节点发送的数据,根据所述临时CAN网络节点地址给该从节点分配相应的地址,并对应生成存储表条目;
步骤4,从节点接收数据,将该从节点的临时地址修改为主节点分配的地址。
2.根据权利要求1所述一种CAN总线节点地址分配方法,其特征在于,所述的一组随机数包括依次生成的11位或29位随机数,每位随机数取值0~f,由所述11位或29位随机数构成该从节点的临时CAN网络节点地址。
3.根据权利要求1所述一种CAN总线节点地址分配方法,其特征在于,所述步骤3还包括:
主节点接收从节点发送的数据后,将所述临时CAN网络节点地址与存储表中已记录的从节点地址进行匹配操作,若匹配到相同的从节点地址,则主节点不响应当前从节点的节点地址分配请求。
4.根据权利要求3所述一种CAN总线节点地址分配方法,其特征在于,所述步骤3后还包括:
从节点等待接收主节点分配地址超时,则跳转至步骤1,重新生成一组随机数,作为该从节点的临时CAN网络节点地址。
5.根据权利要求1所述一种CAN总线节点地址分配方法,其特征在于,还包括,多个从节点根据优先级获取对CAN总线的控制权,在当前从节点地址分配完毕后,释放对CAN总线的控制权。
6.一种CAN总线节点地址分配系统,其特征在于,包括通过CAN总线连接的一个主节点控制器和多个从节点控制器;
所述从节点控制器包括:
一随机数发生器,用于产生一组随机数,该组随机数组成该从节点的临时CAN网络节点地址;
一数据帧封装模块,用于将该从节点的临时CAN网络节点地址和获取地址的命令封装成一个数据帧,并发送给主节点控制器;
所述主节点控制器包括:
一数据解析模块,用于解析从节点控制器发送的数据帧,获取从节点的临时CAN网络节点地址;
一地址存储表,用于存储主节点控制器已分配的从节点地址;
一地址匹配模块,用于判断获取的临时CAN网络节点地址与所述地址存储表中的从节点地址是否匹配。
7.根据权利要求6所述一种CAN总线节点地址分配系统,其特征在于,所述随机发生器产生的一组随机数包括依次生成的11位或29位随机数,每位随机数取值0~f,由所述11位或29位随机数构成该从节点的临时CAN网络节点地址。
8.根据权利要求6所述一种CAN总线节点地址分配系统,其特征在于,所述从节点控制器还包括一延时计数器,所述数据帧封装模块向所述主节点控制器发送数据后进行计数,当计数超过阈值时,则随机数发生器重新生成一组随机数,并由数据帧封装模块封装后发送给主节点控制器。
9.根据权利要求6所述一种CAN总线节点地址分配系统,其特征在于,所述多个从节点控制器设有不同的优先级,优先级高的从节点控制器在进行节点地址请求时拥有较高的CAN总线控制权,当且仅当该从节点地址分配结束后,所述从节点控制器释放CAN总线控制权。
CN201810542018.2A 2018-05-30 2018-05-30 一种can总线节点地址分配方法及系统 Pending CN108881505A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810542018.2A CN108881505A (zh) 2018-05-30 2018-05-30 一种can总线节点地址分配方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810542018.2A CN108881505A (zh) 2018-05-30 2018-05-30 一种can总线节点地址分配方法及系统

Publications (1)

Publication Number Publication Date
CN108881505A true CN108881505A (zh) 2018-11-23

Family

ID=64335926

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810542018.2A Pending CN108881505A (zh) 2018-05-30 2018-05-30 一种can总线节点地址分配方法及系统

Country Status (1)

Country Link
CN (1) CN108881505A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109474716A (zh) * 2018-12-05 2019-03-15 张洋 基于串行总线的传感器注册系统、方法和装置
CN110868343A (zh) * 2019-11-12 2020-03-06 杭州深渡科技有限公司 Knx节点自动发现方法和knx系统
CN113242170A (zh) * 2021-05-21 2021-08-10 深圳易马达科技有限公司 一种地址分配的方法和装置
CN113347283A (zh) * 2021-06-03 2021-09-03 上海钧嵌传感技术有限公司 一种节点地址的分配方法及系统
CN113556270A (zh) * 2021-07-20 2021-10-26 苏州苏试试验集团股份有限公司 Can网络
WO2022061760A1 (en) * 2020-09-25 2022-03-31 Elekta Limited Can address assignment
CN114301731A (zh) * 2021-12-31 2022-04-08 德力西电气有限公司 地址管理方法、主设备及从设备
WO2023010848A1 (zh) * 2021-08-05 2023-02-09 青岛海信日立空调系统有限公司 中央空调控制系统
CN117828648A (zh) * 2024-03-06 2024-04-05 湖南博匠信息科技有限公司 一种可信总线交互系统的实现方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101631147A (zh) * 2009-08-07 2010-01-20 华为技术有限公司 一种分配串行总线从节点地址的方法、电子装置和系统
US20140052863A1 (en) * 2012-08-20 2014-02-20 Control Techniques Limited Node Address Allocation
CN105847456A (zh) * 2015-01-13 2016-08-10 浙江大华技术股份有限公司 一种rs485自动分配地址方法、装置和系统
CN106790761A (zh) * 2017-01-05 2017-05-31 广州南盾通讯设备有限公司 ModBus总线下主节点分配、从节点获取地址的方法、总线地址自动分配方法以及装置
CN107395787A (zh) * 2017-09-01 2017-11-24 北京镁伽机器人科技有限公司 Can通信网络的地址分配方法、系统、网关和介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101631147A (zh) * 2009-08-07 2010-01-20 华为技术有限公司 一种分配串行总线从节点地址的方法、电子装置和系统
US20140052863A1 (en) * 2012-08-20 2014-02-20 Control Techniques Limited Node Address Allocation
CN105847456A (zh) * 2015-01-13 2016-08-10 浙江大华技术股份有限公司 一种rs485自动分配地址方法、装置和系统
CN106790761A (zh) * 2017-01-05 2017-05-31 广州南盾通讯设备有限公司 ModBus总线下主节点分配、从节点获取地址的方法、总线地址自动分配方法以及装置
CN107395787A (zh) * 2017-09-01 2017-11-24 北京镁伽机器人科技有限公司 Can通信网络的地址分配方法、系统、网关和介质

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109474716A (zh) * 2018-12-05 2019-03-15 张洋 基于串行总线的传感器注册系统、方法和装置
CN110868343A (zh) * 2019-11-12 2020-03-06 杭州深渡科技有限公司 Knx节点自动发现方法和knx系统
WO2022061760A1 (en) * 2020-09-25 2022-03-31 Elekta Limited Can address assignment
CN113242170A (zh) * 2021-05-21 2021-08-10 深圳易马达科技有限公司 一种地址分配的方法和装置
CN113242170B (zh) * 2021-05-21 2023-03-21 深圳易马达科技有限公司 一种地址分配的方法和装置
CN113347283B (zh) * 2021-06-03 2022-05-24 上海钧嵌传感技术有限公司 一种节点地址的分配方法及系统
CN113347283A (zh) * 2021-06-03 2021-09-03 上海钧嵌传感技术有限公司 一种节点地址的分配方法及系统
CN113556270B (zh) * 2021-07-20 2023-03-14 苏州苏试试验集团股份有限公司 Can网络
CN113556270A (zh) * 2021-07-20 2021-10-26 苏州苏试试验集团股份有限公司 Can网络
WO2023010848A1 (zh) * 2021-08-05 2023-02-09 青岛海信日立空调系统有限公司 中央空调控制系统
CN114301731A (zh) * 2021-12-31 2022-04-08 德力西电气有限公司 地址管理方法、主设备及从设备
CN114301731B (zh) * 2021-12-31 2023-12-22 德力西电气有限公司 地址管理方法、主设备及从设备
CN117828648A (zh) * 2024-03-06 2024-04-05 湖南博匠信息科技有限公司 一种可信总线交互系统的实现方法
CN117828648B (zh) * 2024-03-06 2024-05-28 湖南博匠信息科技有限公司 一种可信总线交互系统的实现方法

Similar Documents

Publication Publication Date Title
CN108881505A (zh) 一种can总线节点地址分配方法及系统
JP6431510B2 (ja) 工業インターネットブロードバンドフィールドバス技術の実現方法
WO2017095919A1 (en) Systems and methods for implementing a time-stamped controller area network (can) bus message
CN111628941A (zh) 一种网络流量的分类处理方法、装置、设备及介质
JP2017191610A (ja) ネットワークにおける電力供給方法及び装置
CN102811152B (zh) 一种多主总线网络通讯实时交易数据交换实现方法
CN105812444A (zh) 物联网云网关兼容多协议的方法及物联网云网关
CN110647392A (zh) 一种基于容器集群的智能弹性伸缩方法
CN106713010B (zh) 一种航电网络系统的通信方法及系统
CN113542277B (zh) Canopen设备通过tsn网络桥接的方法、系统、介质及装置
Cena et al. On the properties of the flexible time division multiple access technique
KR20100020253A (ko) 차량 네트워크에서의 메시지 전송 상태 진단 장치
WO2011097850A1 (zh) 一种数据的管理方法和系统
CN114035539A (zh) 实例化车型通讯矩阵生成方法、装置、设备及存储介质
CN105978779B (zh) 基于工业互联网的实时通信方法、装置及系统
CN101577845A (zh) 一种倒换控制命令处理的方法及装置
JP2003198572A (ja) 確定的フィールドバス及びその種のバスの管理方法
Prodromides et al. Performability evaluation of CSMA/CD and CSMA/DCR protocols under transient fault conditions
KR102313636B1 (ko) 차량 네트워크에서 시간 동기화를 위한 통신 노드의 동작 방법
CN106130858B (zh) 基于互联网的数据传输方法、装置及系统
CN110177032A (zh) 报文路由质量监测方法及网关控制器
KR102273410B1 (ko) Ecu를 리프로그래밍 하기 위한 장치, 시스템 및 방법
CN107171915A (zh) 一种通信协议的变更方法及装置
CN112737965B (zh) 解决并发访问网元受限问题的方法、系统及计算机可读存储介质
CN110808894B (zh) 一种基于can总线的数据传输方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20181123

RJ01 Rejection of invention patent application after publication