当前位置:首页 > 单片机 > 单片机
[导读]0 引 言 CAN总线是一种串行多主站局域网总线,被广泛应用于汽车控制系统、自动控制、楼宇自动化、医学设备等各个领域。其传输距离远,最远可达10 km,传输速率高,最高可达1 Mb/s,容错性能好,可靠性能高。


0 引 言
    CAN总线是一种串行多主站局域网总线,被广泛应用于汽车控制系统、自动控制、楼宇自动化、医学设备等各个领域。其传输距离远,最远可达10 km,传输速率高,最高可达1 Mb/s,容错性能好,可靠性能高。但是由于CAN驱动器的驱动能力有限,CAN总线能够驱动的节点数有限,一般在100个左右,同时会随着传输距离的增加,最高传输速率会下降,如果距离过长会引起信号丢失、反射等故障。在实验室条件下测得在5 Kb/s的通信速率下最远通信距离能达到10 km;在18 Kb/s的通信速率下最远通信距离只能达到2 km;而在42 b/s的通信速率下,最远通信距离只能达到1 km。测试条件:线缆采用线径为0.75 mm2的屏蔽双绞线,线缆为盘装,室内测试。在实验中,发现随着随着通信距离的增加,通信速率迅速下降,而CAN总线的驱动节点数量也次第下降。而在通信距离远,通信节点多的大空间场所,比如矿井、电力监控等系统需要CAN总线来传输数据和监控信息的场所,CAN总线不能满足要求。
    如果要实现通信距离远、通信速率高、总线节点数量多CAN总线系统,实现CAN总线的扩展,就需要一个CAN网关进行桥接,把CAN总线划分为几个子网,增加CAN总线通信节点,延长CAN总线的传输距离,提高CAN总线的传输速率。在研究基于PIC单片机的CAN网关设计和扩展的CAN总线网络拓扑结构。


1 CAN网关总体设计及总线拓扑结构
1.1 CAN网关总体设计
    CAN网关作为一种转发设备,连接在两个不同的CAN网络中,能够实时接收来自两个子网中的信息,根据需要筛选或者无条件地把接收到的信息转发到另外一个网络中。CAN总线层次结构分为物理层、数据链路层和应用层,工作于ISO/OSI参考模式下。CAN网关在物理层和数据链路层完成两个CAN网的连接。CAN网关结构图如图1所示。

    CAN网关可以作为透明网关和源路由网关。透明网关完全按照接收到的帧格式转发,不改变帧结构,对于用户,网关相当于透明的。而源路由网关由用户提供路由信息,网关按照路由信息对消息进行过滤和有选择性的转发。

1.2 CAN总线网络拓扑结构
    带有网关的CAN网络拓扑结构如图2所示。在这个网路中,PC机为主节点,而CAN节点作为从节点。在网络的顶层,由PC机和网关构成一个主网,在这个主网中PC机和CAN网关作为CAN节点,总线驱动器驱动能力可以带100个cAN节点左右。主网中的CAN网关再作为下一个子网中的主节点,而其他CAN网关或是CAN节点作为从节点,构成一个子网。这样通过CAN网关可以逐环把网络扩展下去,直到最底层的CAN节点。而在应用层上,用户可以把网关配置成透明网关或是源路由网光。透明网关不影响网络结构,CAN拓展网络形成一个多节点,远距离的网络。源路由网关对消息具有过滤性,根据用户的配置信息把CAN网络在应用层上划分为几个小网。

    这样,解决了节点容量、通信距离、通信速率的问题。


2 网关的硬件设计
    硬件电路开发采用集成电路,开发周期短,成本低。CPU采用Microchip公司的16位单片机dsPIC30F6011作为核心部件,其内部集成了两个CAN控制器,支持CAN 2.0A/B协议,CPU的速度可以达到30 MIPS,程序存储器空间有132 KB,内部RAM有6 144 B,数据程序存储器有2 048 B,集成的功能强大,体积小,性价比比较高。物理层采用两个CAN驱动器PCA82C250。其中一组的PCA82C250的RXD,TXD引脚不是和CPUdsPIC30F6011直接连接,而在中间用光速光藕6N137隔离。
    单片机dsPIC30F6011有两个通用的UART口,可以作为和PC机或其他上位机通信的接口来用。另外,dsPIC30F6011采用TQPF封装64引脚,利用通用I/O驱动LED灯作为指示灯,预留并行液晶显示器和 4×4行列式键盘的接口。
    CAN控制器和驱动器部分采用了光电隔离器,因此电源设计部分要求有两个隔离的5 V电源。考虑到可以会用到液晶显示器,因此一路电源设计采用输出容量1 A的开关电源LM9076,而另外一路采用隔离DC/DC模块电源。这样CAN子网之间实现了电气隔离,如果一个网络出了问题并不影响另外一个网络的正常工作,提高了CAN网络的抗干扰性能。硬件电路设计外围电路少、设计简单、成本低。设计的CAN网关硬件设计系统框图如图3所示。

3 网关的软件设计
    CAN网关作为消息的转发器,要准确、实时地接收两个CAN发送的信息,并且要实时发出去。对于不断发出信息的问题节点要及时屏蔽,避免错误信息蔓延到另一个CAN网络。如果CAN网关被设置成透明网关则直接把一个CAN网络的信息转发到另外一个网络中即可,如果CAN网关被设置成和某个区间ID相关,则要做一些信息过滤和屏蔽处理。当CAN网关检测到总线有错误时,要通过备用的UART口将错误信息上发到上位机或其他信息处理主机。
    CAN网关的信息接收通过硬件中断来完成。当总线上有消息时,引起硬件中断,进入中断程序后根据中断标志位的区别把接收到的信息存放到相应的缓冲区中。缓冲区是一个FIFO的存储区。而主程序则一直检测两个CAN控制器对应的两个接收缓冲区,当检测到缓冲区不为空时则把缓冲区内的信息顺序发送到另一个网络中。从而形成一个具有一定的错误检测能力的双向通道,完成了两个CAN网络的信息转发。CAN网关的主程序框图如图4所示,中断程序框图如图5所示。

4 结 语
    详细介绍了CAN总线扩展技术的网络拓扑结构和系统构成,给出了CAN网关的硬件设计原理及软件设计框图。这样的CAN总线扩展网络,因为引入CAN网关而增加了消息的传递时间,但是这个增加的时间很小,是微秒级的,可以忽略不计。而带来的优势明显,因为把CAN网络在物理层上划分为几个网络,彼此之间不相互影响,因而增加了CAN网络的抗干扰性,同时,扩展灵活,只需要增加一个CAN网关来增加子网即可;通信速率可通过增加网关来提高,通信距离可以扩展到很远。通过CAN网关增加了CAN总线的容量、提高了CAN总线的通信速率、扩展了CAN总线的传输距离。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭