一种can总线拓扑结构实现系统的制作方法

文档序号:7775860阅读:590来源:国知局
专利名称:一种can总线拓扑结构实现系统的制作方法
技术领域
本发明涉及工业控制技术领域,特别涉及一种CAN总线拓扑结构实现系统。
背景技术
CAN(ControIler Area Network,控制器局域网络)总线具有实时性好、抗干扰能力强等特点,工业现场上CAN智能设备应用十分广泛。特别是铁路上联锁系统使用的驱动采集板,考虑到安全、实时等因素,大多采用CAN接口。一个规模比较大的车站,往往需要上百块驱动采集板,这样就需要一条CAN总线连接上百个CAN智能设备。同时联锁系统正向集中式联锁发展,即联锁集中站放置联锁主机,联锁主机通过总线与各个非集中站的驱动采集板连接。针对目前这种应用,有采用CAN中继实现集中站与各个非集中站设备连接的方案;也有采用联锁主机通过CAN接口转换设备实现各个站之间协议转换的方案,如以太网接口转CAN接口设备。CAN智能设备多采用CAN标准帧协议,CAN标准帧协议使用11位标识符,理论上支持2048个节点,但是CAN智能设备大多只支持部分有限的标识符。如果使用的CAN智能设备超过所能接收标识符限制的数量,就需要另外扩展一条CAN总线来实现。CAN总线最高速度1Mbps,如果采用CAN中继方式引入多个节点,网络通信任务比较繁重,会导致CAN总线通信处理周期超过处理器处理周期。如果使用以太网转CAN设备,一方面以太网协议比较复杂,很难利用单片机实现,一般需要高性能处理器,如X86、 ARM (Advanced RISC Machines,一种微处理器)等,而且需要操作系统才可以有效的运行, 软、硬件成本都很高;另一方面,以太网并不是实时总线,信号传输带来的延迟及不可控性可能会对系统造成极大的影响。

发明内容
(一)要解决的技术问题本发明要解决的技术问题是如何提供一种CAN总线拓扑结构实现系统,以克服 CAN总线传输速率较低并且节点数量受限的问题,同时降低系统实施成本。( 二 )技术方案为解决上述技术问题,本发明提供一种CAN总线拓扑结构实现系统,其包括主设备、ARCnet总线、桥设备和CAN设备;所述主设备和桥设备均连接所述ARCnet总线;所述 CAN设备通过CAN总线连接所述桥设备;所述桥设备用于实现所述ARCnet总线和CAN设备之间的数据交换,以及ARCnet协议和CAN协议之间的协议转换。优选地,所述桥设备包括=ARCnet接口、CAN接口和CPU ;所述ARCnet接口连接所述ARCnet总线和CPU ;所述CAN接口连接所述CAN设备和CPU。优选地,所述桥设备还包括=ARCnet发送缓存、ARCnet接收缓存、CAN接收缓存和 CAN发送缓存;所述ARCnet发送缓存连接所述CPU和ARCnet接口,用于将来自所述CPU的数据缓存后发送给所述ARCnet接口 ;所述ARCnet接收缓存也连接所述CPU和ARCnet接口,用于将来自所述ARCnet接口的数据缓存后发送给所述CPU ;所述CAN接收缓存连接所述CPU和CAN接口,用于将来自所述CAN接口的数据缓存后发送给所述CPU ;所述CAN发送缓存连接所述CPU和CAN接口,用于将来自所述CPU的数据缓存后发送给所述CAN接口。优选地,所述桥设备还包括用于存储所述桥设备配置信息的ROM ;所述ROM连接所述CPU。优选地,所述配置信息包括桥设备本身ARCnet地址、桥设备发送ARCnet地址、 CAN通信波特率、ARCnet通信波特率和CAN接收数据FIFO容量。优选地,所述ARCnet协议的数据帧的字段包括有效CAN包数量、实际CAN包和 CRC校验码。优选地,所述实际CAN包字段包括的子字段包括CAN卡状态、标识符、控制字和数据。优选地,所述系统包括多个与所述ARCnet总线相连接的所述桥设备。优选地,每个所述桥设备连接不超过32个所述CAN设备。优选地,所述ARCnet总线采用电缆或者光纤。(三)有益效果本发明所述CAN总线拓扑结构实现系统具有以下优势(1)、使用所述桥设备进行协议转换,ARCnet总线最多可以支持2M个节点,同时 ARCnet通信速率可以达到10M,一次通信数据508个字节,提高了可扩展的CAN设备数量、 通信容量及通信速率。(2)、ARCnet协议网络是一种令牌网络,各个节点通过传递令牌的方式通信,同时 CAN协议总线是一种短帧、多主竞争的总线。两者相结合一方面保证了主干网上所有的桥设备之间通信的可控性,另一方面可以保证与桥设备连接的CAN设备快速地响应主设备命令及反馈主设备信息。(3)、桥设备的CPU可以只有链路层和物理层两层协议,应用层不需要太复杂的协议,因此硬件上利用普通的8位、16位单片机就足以实现,软件上不需要操作系统,直接利用单片机编程就可以。相对于复杂的以太网协议转换,成本降低了很多。


图1是本发明实施例所述的CAN总线拓扑结构实现系统的结构示意图;图2是本发明实施例所述的桥设备的结构示意图;图3是本发明实施例所述系统接收CAN设备数据的流程图。
具体实施例方式下面结合附图和实施例,对本发明的具体实施方式
作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。图1是本发明实施例所述的CAN总线拓扑结构实现系统的结构示意图。如图1所示,所述系统包括主设备100、ARCnet (Attached Resource Computer net,一种网络通信标准)总线200、桥设备300和CAN设备400。所述主设备100连接所述ARCnet总线200 ; 所述ARCnet总线200连接多个所述桥设备300 ;每个所述桥设备300通过CAN总线又可以连接不超过32个所述CAN设备400。其中,所述主设备100和ARCnet总线200均运行 ARCnet协议;所述CAN设备400运行CAN协议;所述桥设备300用于实现所述ARCnet总线 200和CAN设备400之间的数据交换,以及ARCnet协议和CAN协议之间的协议转换。图2是本发明实施例所述的桥设备的结构示意图。如图2所示,所述桥设备300具体包括ARCnet 接口 301、ARCnet 发送缓存 302、CPU303、CAN 接收缓存 304、CAN 接口 305、 CAN发送缓存306、R0M(只读存储器)307和ARCnet接收缓存308。所述ARCnet接口 301分别通过所述ARCnet发送缓存302和ARCnet接收缓存308 连接所述CPU。其中,所述ARCnet发送缓存302,用于将来自所述CPU 303的数据缓存后发送给所述ARCnet接口 301 ;所述ARCnet接收缓存308,用于将来自所述ARCnet接口 301的数据缓存后发送给所述CPU 303。所述CAN接口 305分别通过所述CAN接收缓存304和CAN 发送缓存306连接所述CPU 303。其中,所述CAN接收缓存304,用于将来自所述CAN接口 305的数据缓存后发送给所述CPU303 ;所述CAN发送缓存306,用于将来自所述CPU 303的数据缓存后发送给所述CAN接口 305。所述CPU 303用于对过往数据的格式进行转换,以适应接收方的协议要求。具体地,所述系统中的主设备100和桥设备300均配置有一个独立的ARCnet地址,主设备100记录每个桥设备300的ARCnet地址以及其所连接的CAN设备,每个桥设备300都记录主设备 100的ARCnet地址;当主设备100向CAN设备400发送数据时,首先将数据发送至ARCnet 总线,与ARCnet总线连接的所有桥设备300根据数据中的目的ARCnet地址判断是否是发送给自己的数据,如果是,将数据经ARCnet接收缓存308缓存后转发给CPU 303,否则,不予理会;CPU303接收到来自ARCnet接收缓存308的数据后将数据转换为CAN协议帧格式, 以适应CAN协议的要求,而后经CAN发送缓存306缓存后发送给CAN设备400 ;当CAN设备 400向主设备100发送数据时,基本上是上述流程的逆过程,但仍有些区别。图3是本发明实施例所述系统接收CAN设备数据的流程图。如图3所示,当CAN设备400向主设备100发送数据时,也即主设备100接收来自CAN设备400的数据时,具体步骤如下A 首先由CAN 接收缓存304接收来自CAN设备400的数据;B 判断数据量是否达到桥设备300的CAN接收数据FIFO(先进先出)容量,如果达到,执行步骤D,否则,执行步骤C ;C 进一步判断等待时间是否超时,如果超时,执行步骤D,否则,返回步骤A 继续等待接收来自CAN设备400的数据;D 将数据发送给CPU 303,CPU 303接收到来自CAN接收缓存304的数据,将数据转换为ARCnet协议数据帧格式,以适应ARCnet协议的要求,然后经ARCnet发送缓存302发送至ARCnet总线200,再到达主设备100。所述CAN接收数据FIFO容量通过对所述桥设备 300配置设定。所述ROM 307连接所述CPU 303,用于存储所述桥设备300的配置信息。所述配置信息包括桥设备本身ARCnet地址、桥设备发送ARCnet地址、CAN通信波特率、ARCnet 通信波特率和CAN接收数据FIFO容量。所述桥设备发送ARCnet地址可以是主设备100的 ARCnet地址或者是其他桥设备的ARCnet地址。表1是本实施例所述ARCnet协议的数据帧格式,如表1所示,本实施例中所述 ARCnet协议的数据帧的字段包括有效CAN包数量、实际CAN包和CRC校验码。表2是所述 “实际CAN包”字段的格式,如表2所示,所述“实际CAN包”字段包括的子字段包括CAN卡状态、标识符、控制字和数据。其中“标识符”、“控制字”和“数据”子字段与CAN协议中定义完全一致,保证数据透明传输;对于“CAN卡状态”子字段,所述桥设备300查询与之连接的 CAN设备400,如果有响应,会将该字段置为“有效”;否则,会将该字段置为“无效”。ARCnet 协议数据帧最长508字节,每个“实际CAN包”字段14个字节,一帧ARCnet数据优选包含 32个“实际CAN包”字段,这样每个桥设备300优选连接不超过32个CAN设备400。假设主设备100连接一个桥设备300,该桥设备300下扩展32个CAN设备400。32个CAN设备 300参照CAN标准协议帧,每帧加上CAN协议消耗,可以达到IOObits左右的数据量,如果使用IM CAN总线传输的话,需要消耗左右的通信时间;使用ARCnet总线200传输,可以将32个CAN设备400的数据整体打包(约400字节),一次性传输给主设备100,使用IOM ARCnet有效位传输,仅消耗不到Ims的主干网通信时间。如果挂载更多的桥设备300,可以有效地减少主干网上的通信时间消耗,同时各个桥设备300挂载的CAN设备400可以并行
ififn。表IARCnet协议数据帧格式
名称有效CAN包数量第1个CAN包第2个CAN包第N个CAN包CRC字节11414142有效字段1-32参见CAN包字段格式参见CAN包字段格式参见CAN包字段格式 表2实际CAN包字段格式
名称CAN卡状态标识符控制字数据字节1418有效字段有效或者无与CAN协议有与CAN协议有与CAN协效关关议有关远距离传输使用时,各个桥设备300可能距离很远,使用电缆无法实现,ARCnet总线200可以采用光纤。ARCnet总线200具有自动识别总线节点状态的功能,可以很方便的检测到下面连接的桥设备300的状态,及时的通知主设备100。本发明实施例所述CAN总线拓扑结构实现系统具有以下优势(1)、使用所述桥设备进行协议转换,ARCnet总线最多可以支持2M个节点,同时 ARCnet通信速率可以达到10M,一次通信数据508个字节,提高了可扩展的CAN设备数量、 通信容量及通信速率。(2)、ARCnet协议网络是一种令牌网络,各个节点通过传递令牌的方式通信,同时 CAN协议总线是一种短帧、多主竞争的总线。两者相结合一方面保证了主干网上所有的桥设备之间通信的可控性,另一方面可以保证与桥设备连接的CAN设备快速地响应主设备命令及反馈主设备信息。(3)、桥设备的CPU可以只有链路层和物理层两层协议,应用层不需要太复杂的协议,因此硬件上利用普通的8位、16位单片机就足以实现,软件上不需要操作系统,直接利用单片机编程就可以。相对于复杂的以太网协议转换,成本降低了很多。以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
权利要求
1.一种CAN总线拓扑结构实现系统,其特征在于,包括主设备、ARCnet总线、桥设备和 CAN设备;所述主设备和桥设备均连接所述ARCnet总线;所述CAN设备通过CAN总线连接所述桥设备;所述桥设备用于实现所述ARCnet总线和CAN设备之间的数据交换,以及ARCnet 协议和CAN协议之间的协议转换。
2.如权利要求1所述的系统,其特征在于,所述桥设备包括=ARCnet接口、CAN接口和 CPU ;所述ARCnet接口连接所述ARCnet总线和CPU ;所述CAN接口连接所述CAN设备和CPU。
3.如权利要求2所述的系统,其特征在于,所述桥设备还包括=ARCnet发送缓存、 ARCnet接收缓存、CAN接收缓存和CAN发送缓存;所述ARCnet发送缓存连接所述CPU和 ARCnet接口,用于将来自所述CPU的数据缓存后发送给所述ARCnet接口 ;所述ARCnet接收缓存也连接所述CPU和ARCnet接口,用于将来自所述ARCnet接口的数据缓存后发送给所述CPU ;所述CAN接收缓存连接所述CPU和CAN接口,用于将来自所述CAN接口的数据缓存后发送给所述CPU ;所述CAN发送缓存连接所述CPU和CAN接口,用于将来自所述CPU的数据缓存后发送给所述CAN接口。
4.如权利要求2所述的系统,其特征在于,所述桥设备还包括用于存储所述桥设备配置信息的ROM ;所述ROM连接所述CPU。
5.如权利要求4所述的系统,其特征在于,所述配置信息包括桥设备本身ARCnet地址、桥设备发送ARCnet地址、CAN通信波特率、ARCnet通信波特率和CAN接收数据FIFO容量。
6.如权利要求1所述的系统,其特征在于,所述ARCnet协议的数据帧的字段包括有效CAN包数量、实际CAN包和CRC校验码。
7.如权利要求6所述的系统,其特征在于,所述实际CAN包字段包括的子字段包括 CAN卡状态、标识符、控制字和数据。
8.如权利要求1所述的系统,其特征在于,所述系统包括多个与所述ARCnet总线相连接的所述桥设备。
9.如权利要求1所述的系统,其特征在于,每个所述桥设备连接不超过32个所述CAN设备。
10.如权利要求1至9之一所述的系统,其特征在于,所述ARCnet总线采用电缆或者光纤。
全文摘要
本发明公开了一种CAN总线拓扑结构实现系统,涉及工业控制领域。所述系统包括主设备、ARCnet总线、桥设备和CAN设备;所述主设备和桥设备均连接所述ARCnet总线;所述CAN设备连接所述桥设备;所述桥设备用于实现所述ARCnet总线和CAN设备之间的数据交换,以及ARCnet协议和CAN协议之间的协议转换。所述系统克服了CAN总线传输速率较低并且节点数量受限的问题,同时降低了系统实施成本。
文档编号H04L12/417GK102420734SQ20111041541
公开日2012年4月18日 申请日期2011年12月13日 优先权日2011年12月13日
发明者李超, 栾庆文, 赵育东 申请人:北京交控科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1