基于LPC2194的4路CAN网桥设计

发布时间:2010-1-27 15:56    发布者:李宽
关键词: CAN , 设计 , 网桥
CAN总线以其设计独特、成本低、可靠性高、实时性和抗干扰能力强等特点,在汽车工业、机械工业、纺织工业、机器人、数控机床、医疗器械等领域得到了广泛的应用。从高速网络到低速的多路接线网络都可以使用CAN总线,其最高传输速率可以达到1 Mbps,最远传输距离可达10 km(传输速率在5 kbps以下时)。但是当要求传输速率较高且传输距离较远时,单条总线就无法完成;而且在大型的网络中,经常需要多条总线的接入。这就需要同时有中继与路由功能的CAN网桥来实现以上功能。

本文设计的4路CAN网桥可以延长CAN传输距离,扩展CAN通信网络;同时具有路由功能,可实现不同CAN网络之间的不同路由、不同通信速率的转换,能够在大型CAN网络中起到关键作用。

1 4路CAN网桥的设计方案

1.1 CAN网桥的优点

使用4路CAN网桥对网络性能的改善有着很大的帮助,在大型网络的组网中有以下优点:

①可以延长网络的传输距离,特别是经过几个CAN网桥的中继之后,可以极大地延长传输距离,能够达到几千米甚至几十千米。

②可以增大CAN网络的规模,4路CAN网桥有4个CAN支路,每条支路又可以增加新的CAN网桥,因此可以组成大规模的CAN网络。

③可以实现不同网络之间不同路由的选择,增强了CAN网络的可靠性。

1.2 设计方案

CAN网桥的设计方案一般分为单MCU和多MCU两种。单MCU速度较慢,不适用于高速网络;多MCU方案结构复杂,稳定性较差。针对以上情况,本设计采用了自带4路CAN控制器的ARM微控制器LPC2194,同时避免了MCU速度慢和多MCU网络复杂的情况。

LPC2194的特点如下:

①具有32位的ARM7微控制器,带有256 KB的嵌入式高速Flash存储器。32位代码能够在最高时钟频率下运行,且功耗极低,处理速度极快。

②自带4路互联的CAN控制器,完全支持CAN2.0B和ISO1198-1的标准,每个CAN控制器均可以实现1Mbps的速率。其全局验收滤波器可识别所有总线的11位和29位Rx标识符,相对于SJA1000的CAN控制器有着明显的优势。

2 4路CAN网桥的硬件设计

2.1 总体设计

由于LPC2194集成4路CAN控制器,因此能够方便地实现4路CAN总线接口,既减小了系统的规模,又提高了系统的稳定性。本设计采用 LPC2194作为主控芯片,具有隔离和保护的CTM8251T作为CAN收发器。系统的整体结构如图1所示。

1.gif

2.2 微控制器与CTM8251T的接口设计

CTM8251T是一款带隔离的通用CAN收发器模块。该模块内部集成了所有必需的CAN隔离及CAN收发器件,具有2 500 V的隔离功能和CAN-bus总线过压保护作用。该模块符合ISO11898标准,因此可以与其他遵从ISO11898标准的CAN收发器相互操作。由于微控制器LPC2194集成的4路CAN控制器完全相同,因此本设计中只给出1路CAN控制器与CTM8251T的连接图,如图2所示。

2.gif

3 4路CAN网桥的软件设计

4路CAN网桥不同于一般的CAN中继器,可以选择不同的路由和不同的通信速率。本设计中,4路CAN接口均可以实现与其他3路之间不同路由的选择和不同通信速率之间的转换,极大地增强了网络的可扩展性。4路CAN网桥的工作模式分为两种:配置模式,可以选择路由和不同支路的CAN通信速率;正常工作模式,根据所配置的状态来进行工作。

3.1 配置模式

配置模式的主要工作是将配置信息写入EEPROM中,在正常工作时可以读取配置的信息。配置模式的程序流程如图3所示。

3.gif

3.2 正常工作模式

在配置模式下配置好各信息后,系统重新上电可以进入正常工作模式。根据配置模式配置的状态,4路网桥对网络中的信息进行存储转发。在LPC2194 中,4路CAN控制器是同时工作的,因此能够提高系统的速度和实时性。每一路的结构和程序是相同的,因此本设计仅给出1路CAN控制器正常工作的程序设计。

为了提高系统的转换速度和稳定性,本设计采用了中断接收和查询发送的方式。系统中断接收CAN总线上的数据,并根据路由选择和标识符的分配选择发送到其他3路,从而完成网桥的工作。系统主程序和中断程序流程分别如图4和图5所示。

4.gif

4 实验结果

为了验证系统的可靠性,设计了一个通信收包率的实验。通过PC机间隔一定的时间,向CAN网桥一条支路发送8字节的数据,网桥的另一条支路向PC机回复接收到的8字节数据。通过对比发送和接收的字节数来验证收包率。分别以100 ms、10 ms、5 ms、1 ms的间隔来发送8字节的数据,发送和接收到的字节数为:

①间隔100 ms时,发送1 336个字节,接收1 336个字节,收包率为100%;

②间隔10 ms时,发送3 376个字节,接收3 376个字节,收包率为100%;

③间隔5 ms时,发送4 056个字节,接收4 056个字节,收包率为100%;

④间隔1 ms时,发送5 336个字节,接收5 336个字节,收包率为100%。

其中,间隔1 ms时的发送和接收图如图6所示。

5.gif

实验结果表明,在以不同间隔发送数据时,网桥都能很好地完成工作,可满足实际应用的需要。

结语

本文设计的4路CAN网桥采用功能强大的ARM芯片LPC2194作为主控芯片,因此能够及时地处理4路CAN总线的数据传输。通过具体实验证明,该网桥工作稳定、可靠、使用方便,完全满足现场的需求。

参考文献

1. 李正军.现场总线及其应用技术[M].北京:机械工业出版社,2006.
2. 丁恩杰,马方清.监控系统与现场总线[M].徐州:中国矿业大学出版社,2003.
3. 王亮,杜洪亮,魏衡华,等.基于多主型SPI接口的CAN总线中继器设计[J].自动化与仪表,2009(3).
4. 广州周立功单片机发展有限公司.LPC2119/2129/2194/2292/2294 使用指南,2009.

作者:金勇(杭州电子科技大学) 赵宗平,于宁宁,杜存功(中国矿业大学)  来源:《单片机与嵌入式系统应用》 2009(11)
本文地址:https://www.eechina.com/thread-8061-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关在线工具

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表