一种LIN总线自动分配节点地址的方法、系统及SOC与流程

文档序号:31715637发布日期:2022-10-04 21:43阅读:1264来源:国知局
一种LIN总线自动分配节点地址的方法、系统及SOC与流程
一种lin总线自动分配节点地址的方法、系统及soc
技术领域
1.本技术涉及lin总线技术领域,具体涉及一种lin总线自动分配节点地址的方法、系统及soc。


背景技术:

2.lin(local interconnect network,局域互联网络)是一种低成本的串行通讯网络,用于实现汽车中的分布式电子系统控制。lin的目标是为现有汽车网络(例如can总线)提供辅助功能,因此lin总线是一种辅助的总线网络。在不需要can总线的带宽和多功能的场合,比如智能传感器和制动装置之间的通讯使用lin总线可大大节省成本。
3.一个lin网络由一个主节点以及一个或多个从节点组成,所有从节点都有一个通讯任务。该通讯任务分为发送任务和接收任务。主节点还有一个主发送任务。一个lin 网络上的通讯总是由主发送任务所发起的。这种通讯规则可以用多种方式来交换数据:由主节点到一个或多个从节点;由一个从节点到主节点或其他的从节点,通讯信号可以在从节点之间传播而不经过主节点;或者主节点广播消息到网络中的所有节点。为了实现通讯的准确性,每个从节点必须分配唯一地址后才能执行正常的通信功能。
4.传统的方法是预先设置好每个节点的地址,但是当网络中节点有变化(替换、增加、去除)时,都需要重新对整个网路进行配置调试,从而降低了节点地址的配置效率。


技术实现要素:

5.本技术为了解决上述技术问题,提出了如下技术方案:第一方面,本技术实施例提供了一种lin总线自动分配节点地址的方法,所述lin总线包括:一个主节点和多个从节点,所述主节点和所述从节点通过总线依次串联连接,所述从节点内设置有上拉电流源、第一电流感测电阻和第二电流感测电阻,对应所述第一电流感测电阻和第二电流感测电阻设置比较判决装置,所述方法包括:控制所述主节点输出低电平信号将所述总线的电平设置为低电平;确定所述从节点是否已分配节点地址;如果所述从节点已分配节点地址,则切断所述从节点的上拉电流源;或者,如果所述从节点未分配节点地址,则控制所述上拉电流源向所述总线输出电流源电流向所述主节点方向流动;通过所述比较判决装置按照预设判决门限对所述从节点位置进行确定并分配节点地址。
6.采用上述实现方式,采用两个串联的电流感测电阻,通过上拉电流源向两个感测电阻中间引入特定流向的电流,从而造成两个电阻中电流的差异。通过设定的基于倍率的判决门限,对两个电阻中电流的倍率关系进行比较。从而判断出节点在总线中的位置,识别出该节点,进而可对该节点进行地址配置。
7.结合第一方面,在第一方面第一种可能的实现方式中,所述主节点设置bus_out端,所述从节点设置bus_out端和bus_in端,所述主节点的bus_out端与距离所述主节点最近的第一从节点的bus_in端电连接,所述第一从节点的bus_out端与紧挨所述第一从节点的第二从节点的bus_in端电连接,距离所述主节点的最远的第三从节点的bus_in端与距离
所述主节点的次远的第四从节点的bus_out端电连接,所述第三从节点的bus_out端空置;每个所述从节点内所述第一电流感测电阻的第一端与所述bus_in端电连接,所述第二电流感测电阻的第一端与所述bus_out端电连接,所述第一电流感测电阻的第二端与所述第二电流感测电阻的第二端电连接;所述上拉电流源的第一端与内置电源电连接,第二端与第一开关的第一端电连接,所述第一开关的第二端与所述第一电流感测电阻的第二端电连接;所述内置电源还与第二开关的第一端电连接,所述第二开关的第二端与上拉电阻的第一端电连接,所述上拉电阻的第二端与所述bus_in端电连接。
8.结合第一方面第一种可能的实现方式,在第一方面第二种可能的实现方式中,如果所述从节点已分配节点地址,则切断所述从节点的上拉电流源,包括,如果所述从节点已分配节点地址,则控制所述第一开关和所述第二开关断开。
9.结合第一方面第一种可能的实现方式,在第一方面第三种可能的实现方式中,如果所述从节点未分配节点地址,则控制所述上拉电流源向所述总线输出电流源电流向所述主节点方向流动,包括:如果所述从节点未分配节点地址,则控制第一开关闭合,第二开关断开;控制每个所述从节点内所述电流源电流流过所述第一电流感测电阻,不流经所述第二电流感测电阻。
10.结合第一方面第一至三种任一可能的实现方式,在第一方面第四种可能的实现方式中,所述第一电流感测电阻的第一端与第三开关的第一端电连接,第二电流感测电阻的第一端与第四开关的第一端电连接,所述第一电流感测电阻的第二端和所述第二电流感测电阻的第二端与第五开关的第一端电连接;所述第三开关、第四开关和第五开关的第二端均与所述比较判决装置电连接。
11.结合第一方面第四种可能的实现方式,在第一方面第五种可能的实现方式中,通过所述比较判决装置按照预设判别门限对所述从节点位置进行确定并分配节点地址,包括:控制所述第三开关和第五开关闭合,通过所述比较判决装置确定流经所述第一电流感测电阻的第一电流;然后断开第三开关,闭合第四开关,通过所述比较判决装置确定流经所述第二电流感测电阻的第二电流;通过所述判别门限、第一电流和第二电流对节点位置进行确定;将确定节点位置的从节点分配节点地址。
12.结合第一方面第五种可能的实现方式,在第一方面第六种可能的实现方式中,通过所述判别门限、第一电流和第二电流对节点位置进行确定,包括:若每次识别一个从节点位置,则设置第一判别门限:第一电流》n*第二电流,其中4≤n≤16;通过所述第一判别门限定位在未分配地址的节点中距离所述主节点最远位置的第三从节点。
13.结合第一方面第五种可能的实现方式,在第一方面第七种可能的实现方式中,通过所述判别门限、第一电流和第二电流对节点位置进行确定,包括:若每次识别两个从节点位置,则设置第一判别门限:第一电流》n*第二电流,其中4≤n≤16和第二判别门限1.75*第二电流≤第一电流≤2.5*第二电流;通过所述第一判别门限和所述第二判别门限确定出未分配地址的节点中距离所述主节点最远位置的第三从节点和距离所述主节点次远位置的第四从节点。
14.结合第一方面第六或七种可能的实现方式,在第一方面第八种可能的实现方式中,识别出节点位置的从节点分配节点地址后,将分配节点地址后的从节点中的第一开关和第二开关控制开路,对未分配节点地址的从节点进行下一轮位置识别。
15.第二方面,本技术实施例提供了一种lin总线自动分配节点地址的系统,所述lin总线包括:一个主节点和多个从节点,所述主节点和所述从节点通过总线依次串联连接,所述从节点内设置有上拉电流源、第一电流感测电阻和第二电流感测电阻,对应所述第一电流感测电阻和第二电流感测电阻设置比较判决装置,所述系统包括:控制模块,用于控制所述主节点输出低电平信号将所述总线的电平设置为低电平;确定模块,用于确定所述从节点是否已分配节点地址;处理模块,用于如果所述从节点已分配节点地址,则切断所述从节点的上拉电流源;或者;如果所述从节点未分配节点地址,则控制所述上拉电流源向所述总线输出电流源电流向所述主节点方向流动;地址分配模块,通过所述比较判决装置按照预设判决门限对所述从节点位置进行确定并分配节点地址。
16.第三方面,本技术实施例提供了一种soc,包括存储器、处理器及存储在存储器上的计算机程序,所述soc与lin总线通信连接,当所述处理器读取所述计算机程序时,执行第一方面或第一方面任一可能实现方式所述的自动分配节点地址的方法,对所述lin总线上未分配节点地址的从节点位置进行识别并分配节点地址。
附图说明
17.图1为本技术实施例提供的一种lin总线的示意图;图2为本技术实施例提供的lin总线中从节点的结构示意图;图3为本技术实施例提供的一种lin总线自动分配节点地址的方法的流程示意图;图4为本技术实施例提供的一种lin总线自动分配节点地址的系统示意图;图5为本技术实施例提供的一种soc芯片的示意图。
具体实施方式
18.下面结合附图与具体实施方式对本方案进行阐述。
19.参见图1,本技术实施例中提供的lin总线包括:一个主节点和多个从节点,所述主节点和所述从节点通过总线依次串联连接。所述主节点设置一个bus_out端,通过bus_out端与主节点最近的第一从节点进行通信。每个从节点均设置一个bus_out端和bus_in端。第一从节点的bus_out端与紧挨所述第一从节点的第二从节点的bus_in端电连接,距离所述主节点的最远的第n从节点的bus_in端与距离所述主节点的次远的第n-1从节点的bus_out端电连接,所述第n从节点的bus_out端空置。
20.参见图2,本技术实施例提供的从节点内设置有上拉电流源、第一电流感测电阻r1和第二电流感测电阻r2,对应所述第一电流感测电阻r1和第二电流感测电阻r2设置比较判决装置,本实施例中所述第一电流感测电阻r1和第二电流感测电阻r2相同。
21.具体地,所述从节点内所述第一电流感测电阻r1的第一端与所述bus_in端电连接,所述第二电流感测电阻r2的第一端与所述bus_out端电连接,所述第一电流感测电阻r1的第二端与所述第二电流感测电阻r2的第二端电连接。所述上拉电流源的第一端与内置电源v_sub电连接,第二端与第一开关k1的第一端电连接,所述第一开关k1的第二端与所述第一电流感测电阻r1的第二端电连接;所述内置电源v_sub还与第二开关k2的第一端电连接,所述第二开关k2的第二端与上拉电阻的第一端电连接,所述上拉电阻的第二端与所述bus_in端电连接。
22.所述第一电流感测电阻r1的第一端与第三开关k3的第一端电连接,第二电流感测电阻r2的第一端与第四开关k4的第一端电连接,所述第一电流感测电阻r1的第二端和所述第二电流感测电阻r2的第二端与第五开关k5的第一端电连接;所述第三开关k3、第四开关k4和第五开关k5的第二端均与所述比较判决装置电连接。
23.进一步地,本技术实施例中的比较判决装置包括依次电连接的放大电路opa、数模转换adc电路和一个判别比较模块。放大电路opa对采集的电流信号进行放大,然后进行数模转换,最后将处理的电流值传输给判别比较模块。
24.基于上述的lin总线结构和从节点结构,如图3所示,本技术实施例中的lin总线自动分配节点地址的方法包括:s101,控制所述主节点输出低电平信号将所述总线的电平设置为低电平。
25.正常通信时,各个从节点的上拉电流源支路的第一开关k1开路,上拉电阻支路第二开关k2闭合。当进行自动寻址操作时,主机bus_out输出低电平,把整个总线拉至低电平。
26.s102,确定所述从节点是否已分配节点地址。
27.s103,如果所述从节点已分配节点地址,则切断所述从节点的上拉电流源。
28.如果从节点已分配节点地址,则不需要参与自动寻址操作。则通过控制第一开关k1和所述第二开关k2断开将已分配节点地址的从节点的上拉电流源断开,此时该从节点在整个lin主线中作为连接其他从节点之间的通信使用,不会为总线注入电流源电流。
29.s104,如果所述从节点未分配节点地址,则控制所述上拉电流源向所述总线输出电流源电流向所述主节点方向流动。
30.如果确定出从节点未分配节点地址,控制第一开关k1闭合,第二开关k2断开。控制每个所述从节点内所述电流源电流流过所述第一电流感测电阻r1,不流经所述第二电流感测电阻r2。该从节点的流出电流会流经该节点与主机之间的所有从节点的第一电流感测电阻r1和第二电流感测电阻r2。
31.离主节点最远的待分配地址的从节点,其第二电流感测电阻r2没有电流流过,第一电流感测电阻r1中电流只有本节点电流源电流i。离主机次远的待分配地址的从节点,其第二电流感测电阻r2流过电流为i(最远节点电流),而第一电流感测电阻r1电流为2i(包括本节点电流和最远节点电流),第一电流感测电阻r1中的电流与第二电流感测电阻r2中的电流比值为2。
32.依次类推,离主机第三远的待分配地址的从节点的第一电流感测电阻r1中的电流和第二电流感测电阻r2中的电流比值为3/2。从节点离主节点越近,第一电流感测电阻r1中的电流和第二电流感测电阻r2中的电流比值越小,越接近于1。
33.s105,通过所述比较判决装置按照预设判决门限对所述从节点位置进行确定并分配节点地址。
34.控制所述第三开关k3和第五开关k5闭合,通过所述比较判决装置确定流经所述第一电流感测电阻r1的第一电流。然后断开第三开关k3,闭合第四开关k4,通过所述比较判决装置确定流经所述第二电流感测电阻r2的第二电流。通过所述判别门限、第一电流和第二电流对节点位置进行确定,将确定节点位置的从节点分配节点地址。
35.一个示意性实施例,若每次识别一个从节点位置,则设置第一判别门限:第一电流》n*第二电流,其中4≤n≤16。通过所述第一判别门限定位未分配地址从节点中距离所述主
节点最远位置的第n从节点。
36.由于未分配地址从节点中距离所述主节点最远位置的第n从节点的第二电流为0,其中虽然存在部分的噪声电流,但是可以忽略不计。从上述可知,离主机次远的待分配地址的从节点,其第二电流感测电阻r2流过电流为i(最远节点电流),而第一电流感测电阻r1电流为2i(包括本节点电流和最远节点电流),第一电流感测电阻r1中的电流与第二电流感测电阻r2中的电流比值为2。从节点离主节点越近,第一电流感测电阻r1中的电流和第二电流感测电阻r2中的电流比值越小,越接近于1。
37.因此,这里将n设置为大于2的数值,本实施例中采用中4≤n≤16只是示意性举例,采用其中任意一个数值即可。由于未分配地址从节点中距离所述主节点最远位置的第n从节点的第二电流为0,第一电流感测电阻r1中电流为本节点电流源电流i。因此满足所述第一判别门限(i》n*0, 其中4≤n≤16),从而可以判定出未分配地址从节点中距离所述主节点最远位置的第n从节点,从而对其赋予新的节点地址。
38.另一个示意性实施例,若每次识别两个从节点位置,则设置第一判别门限:第一电流》n*第二电流,其中4≤n≤16和第二判别门限1.75*第二电流≤第一电流≤2.5*第二电流;通过所述第一判别门限和所述第二判别门限确定出未分配地址从节点中距离所述主节点最远位置的第n从节点和次远位置的第n-1从节点。
39.由于上面已经对如何通过第一电流》n*第二电流,其中4≤n≤16判别出未分配地址从节点中距离所述主节点最远位置的第n从节点进行了阐述,此处不再赘述。
40.采用第二判别门限1.75*第二电流≤第一电流≤2.5*第二电流判别出未分配地址从节点中距离所述主节点次远位置的第n-1从节点。上述未分配地址从节点中离主机次远的待分配地址的从节点,其第二电流感测电阻r2流过电流为i(最远节点电流),而第一电流感测电阻r1电流为2i(包括本节点电流和最远节点电流),第一电流感测电阻r1中的电流与第二电流感测电阻r2中的电流比值为2。而2处于1.75和2.5之间。这两个判别门限的数值也是可以灵活调整的。其中2.5可以取2到4之间的任一值,1.75可以取1.5到2之间的任一值。
41.以上过程一般需要进行多轮次,直至将所有待分配地址的从节点都识别出来并分配新地址。
42.已经识别出来并成功分配新地址的节点,在接下来的轮次中,作为已分配地址的节点,将分配节点地址后的从节点中的第一开关k1和第二开关k2控制开路。而对未分配节点地址的从节点则进行下一轮位置识别。
43.以上分析是基于所有从机节点均支持自动地址识别功能。若网路中还接有传统的固定地址的从机节点,这些节点不支持自动地址识别功能。这些节点的上拉电阻支路一直导通,并连接到总线上,在总线上形成一个基础的偏置电流(i
offset
)。对于此种情况,一般需要先测量出这个偏置电流ioffset。然后在自动地址识别过程中,每一次第一电流和第二电流的测量结果均需减去i
offset
。然后再进行判决比较。
44.本实施例中,第一电流感测电阻r1和第二电流感测电阻r2在集成电路中采用相同的电路结构和工艺实现,两者阻值具有相同的偏差系数,因此对于本技术中所采用的基于倍率的比较判别没有影响。另外,判别比较发生在同一个节点的第一电流感测电阻r1和第二电流感测电阻r2的电流之间,因此个体离散性和个体的工作环境等因素对比较结果也没有影响。
45.与上述实施例提供的一种lin总线自动分配节点地址的方法相对应,本技术还提供了一种lin总线自动分配节点地址的系统的实施例。
46.本实施例中,lin总线包括:一个主节点和多个从节点,所述主节点和所述从节点通过总线依次串联连接,所述从节点内设置有上拉电流源、第一电流感测电阻r1和第二电流感测电阻r2,对应所述第一电流感测电阻r1和第二电流感测电阻r2设置比较判决装置。
47.参见图4,lin总线自动分配节点地址的系统20包括:控制模块201、确定模块202、处理模块203和地址分配模块204。
48.其中,控制模块201,处于lin主节点中,用于控制所述主节点输出低电平信号将所述总线的电平设置为低电平。确定模块202、处理模块203和地址分配模块204处于lin从节点中。确定模块202,用于确定所述从节点是否已分配节点地址。处理模块203,用于如果所述从节点已分配节点地址,则切断所述从节点的上拉电流源;或者,如果所述从节点未分配节点地址,则控制所述上拉电流源向所述总线输出电流源电流向所述主节点方向流动。地址分配模块204,通过所述比较判决装置按照预设判决门限对所述从节点位置进行确定并分配节点地址。
49.本技术还提供了一种soc,参见图5,本实施例中的soc 30包括:处理器301、存储器302和通信接口303。
50.在图5中,处理器301、存储器302和通信接口303可以通过总线相互连接;总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
51.处理器301通常是控制soc 30的整体功能,例如soc的启动、以及soc启动后与lin总线进行通信,控制所述主节点输出低电平信号将所述总线的电平设置为低电平;确定所述从节点是否已分配节点地址;如果所述从节点已分配节点地址,则切断所述从节点的上拉电流源;或者,如果所述从节点未分配节点地址,则控制所述上拉电流源向所述总线输出电流源电流向所述主节点方向流动;通过所述比较判决装置按照预设判决门限对所述从节点位置进行确定并分配节点地址。
52.此外,处理器301可以是微处理器(mcu)。处理器还可以包括硬件芯片。上述硬件芯片可以是专用集成电路(asic),可编程逻辑器件(pld)或其组合。上述pld可以是复杂可编程逻辑器件(cpld),现场可编程逻辑门阵列(fpga)等。
53.存储器302被配置为存储计算机可执行指令以支持soc 30数据的操作。存储器301可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
54.通信接口303用于soc 30传输数据,例如实现与lin总线的数据通信。通信接口303包括有线通信接口,还可以包括无线通信接口。其中,有线通信接口包括usb接口、micro usb接口,还可以包括以太网接口。无线通信接口可以为wlan接口,蜂窝网络通信接口或其组合等。
55.在一个示意性实施例中,本技术实施例提供的soc 30还包括电源组件,电源组件为soc 30的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他
与为soc30生成、管理和分配电力相关联的组件。
56.通信组件,通信组件被配置为便于soc 30和lin总线之间有线或无线方式的通信。soc30可以接入基于通信标准的无线网络,如wifi,4g或5g,或它们的组合。通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。通信组件还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
57.在一个示意性实施例中,soc 30可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、终端、微终端、处理器或其他电子元件实现。
58.本技术说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于系统及soc实施例而言,由于其中的方法基本相似于方法的实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
59.需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
60.当然,上述说明也并不仅限于上述举例,本技术未经描述的技术特征可以通过或采用现有技术实现,在此不再赘述;以上实施例及附图仅用于说明本技术的技术方案并非是对本技术的限制,本技术仅结合并参照优选的实施方式进行了详细说明,本领域的普通技术人员应当理解,本技术领域的普通技术人员在本技术的实质范围内所做出的变化、改型、添加或替换都不脱离本技术的宗旨,也应属于本技术的权利要求保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1