400-035-6699
当前位置: 首页 » 技术支持 » 博文资讯 »

CAN总线与以太网融合:设计高效嵌入式网关电路方案

在当前的工业现场,将工业总线与以太网互联的需求日益增长。本文介绍了一种实现以太网与CAN现场总线之间协议转换的网关设计方法,通过采用AT89C55单片机作为核心处理器,实现了两者的无缝连接
以太网接口模块是系统的关键部分,我们选择了Atmel公司生产的AT89C55单片机,这款单片机专为测控和嵌入式应用设计,具备高效的体系结构和CPU性能。它内部集成了高达20 KB的FLASH程序存储器,兼容8051指令集,便于在线编程。此外,AT89C55具备256 B的内部RAM、32个可编程I/O口、3个16位定时/计数器以及8个中断源,支持低功耗模式。以太网接口模块使用了Realtek公司的RTL8019AS芯片,这是一款高度集成的以太网控制器,负责实现以太网MACPHY层的所有功能。
为了处理较大的以太网数据包,我们在系统中扩展了32 KB的外部RAM,这样不仅可以存储超过1 500字节的以太网包,还能提升数据传输速度。此外,RTL8019AS内部的RAM分为两部分,一部分为16 KB,用于接收和发送数据包;另一部分为32个字节,用于存储以太网物理地址
在CAN接口模块方面,我们选择了SJA1000芯片和PCA82C250芯片。SJA1000是Philips公司生产的独立CAN控制器,支持CAN 2.0B协议,主要完成CAN通信协议中的报文装配和拆分、接收信息过滤和校验等功能。PCA82C250则是CAN控制器与物理总线之间的接口,增强了系统的驱动能力,支持多达110个节点的通信,并具有优异的抗电磁干扰能力。
在设计过程中,有几个关键问题需要特别注意。首先,89C55和SJA1000都需要独立的晶振电路,不能共用时钟信号。其次,SJA1000的复位不能直接与单片机复位引脚相连,需要通过I/O引脚或复位芯片进行控制。此外,RX1引脚的电位需要保持在约0.5 VCC,以确保CAN协议的逻辑电平正确。最后,电缆终端的阻抗匹配对于CAN总线的正常工作和网络性能至关重要。
通过上述设计,我们为企业信息网络与控制网络的集成提供了一种高效可行的方法。该系统不仅提高了数据传输速度,还增强了网络的稳定性和可靠性。随着工业自动化程度的不断提高,这种类型的网关设计将在未来的工业现场发挥更加重要的作用。

  提出一种工业现场总线与以太网互联方法,介绍以太网与CAN现场总线之间协议转换网关的设计与实现,采用AT89C55作为主处理器,通过两个接口芯片实现CAN总线与以太网的互连,分别给出其硬件结构和软件设计思想。为企业信息网络与控制网络集成提供一种可行的方法。

CAN总线与以太网融合:设计高效嵌入式网关电路方案

  以太网接口模块:该系统选择了性能价格比较高的Atmel公司生产的AT89C55 单片机。它是面向测控对象和嵌入式应用的,所以它的体系结构以及CPU、指令系统、外围单元电路都是按照这种要求专门设计的。它内部带高达20 KB的FLASH程序存储器,AT89C55完全兼容8051指令集,片上FLASH方便了使用者进行在线编程工作速率最高可达33 MHz,256 B的内部RAM,32个可编程的I/O口,3个16位的定时/计数器,8个中断源,支持低功耗的空闲工作模式。以太网接口选用的是RTL8019AS芯片,它是由Realtek公司生产的一种高度集成的以太网控制器,能实现以太网媒介访问层(MAC)和物理层(PHY)的全部功能。RTL8019AS内部有两个RAM区域:一是16 KB,地址为0x4000~0x7fff,要接收和发送数据包必须通过DMA读写RTL8019AS内部的16 KB的RAM,它实际上是双端口RAM,即有两条总线与其连接,一条总线用于RTL8019AS读/写或写/读该RAM,即本地DMA;另一条总线用于单片机读或写该RAM,即远程DMA;二是32个字节,地址为0x0000~0x001F,用于存储以太网物理地址。主控芯片和以太网接口芯片的硬件接口原理图见图2。值得注意的是由于以太网的包最大可以超过1 500个字节,AT89C55的片内RAM只有256个字节,因此无法存储这么大的包,所以这里扩展了一个32 KB的外部RAM,这样同时也能提高单片机的数据传输速度。

基于CAN总线与以太网的嵌入式网关电路设计

  CAN接口模块:组成CAN系统的主要器件是CAN控制器和收发器。该设计中,CAN接口模块选用 SJA1000芯片和PCA82C250芯片。SJA1000是一个独立的CAN控制器,它是Philips公司另一个CAN控制器PCA82C200的替代产品,且增加了一种新的工作模式(Peli CAN),这种模式支持CAN 2.0B协议。SJA1000主要完成CAN的通信协议,实现报文的装配和拆分、接收信息的过滤和校验等。

基于CAN总线与以太网的嵌入式网关电路设计

  PCA82C250是CAN控制器与物理总线之间的接口,主要用于增强系统的驱动能力。采用收发器的系统中,节点数至少可以达到110个,同时还具有降低射频干扰(RFI)和很强的抗电磁干扰 (EMI)能力。在处理这部分电路时,有几个地方要特别注意:

  (1)晶振电路的问题。89C55和SJA1000都应该有各自独立的晶振电路,不能够用SJA1000的时钟输出信号CLKOUT来驱动单片机。

  (2)复位引脚的问题。虽然SJA1000的复位是低电平,但不能通过一个非门直接连接单片机的复位引脚。一般对解决复位引脚问题有两种方式:第一种是使用单片机的I/O引脚控制SJA的复位引脚,其好处是单片机可以完全控制SJA的复位过程;第二种是采用适当的复位芯片,为了降低成本,该设计采取的是第一种方法。

  (3)RX1引脚的电位必须维持在约0.5 VCC上,否则将不能形成CAN协议所要求的逻辑电平。

  (4)一定要注意电缆的终端阻抗匹配,它直接影响CAN总线是否能正常工作和网络性能。CAN接口模块的硬件电路图见图3,在PCA82C250的RS脚上接有一个斜率电阻R,可根据总线通信速度适当调整电阻的大小。

【免费咨询】获取网络规划系统模板+传输架构设计+连通性评估方案

工业现场总线相关文章

服务电话:
400-035-6699
企服商城