CAN总线协议到EtherCAT从站协议的转换网关设计
摘要:本文通过对实时工业以太网通信协议EtherCAT的研究,设计了CAN总线主站协议转换为EtherCAT从站协议的通信协议转换网关设备,解决了工业自动化现场CAN总线通信设备与EtherCAT主站控制系统的互连问题,从而保证现场总线设备数据更加高效、快速地传递到中央监控系统。
关键词:EtherCAT从站;CAN总线;网关;协议转换
引言
随着工业自动化的发展,大量现场设备的信息传递不再采用模拟信号电缆传送,而是替换为智能化现场设备,通过通信方式传递设备的状态和控制信息。在这个过程中,现场总线设备得到了大量的应用。而现场总线设备的多样性,导致在一个大型的自动化控制系统中设备的通信协议不同、通信速率不同、网络拓扑形式不同,给中央监控系统和这些现场设备之间的信息交互带来困扰。
为了更好地解决控制系统内自动化数据传输及互连的问题,部分国际自动化系统厂家借助以太网现有协议框架及其100M的带宽资源,在现有的以太网协议上进行相应的修改,推出了不同的实时工业以太网技术,比较流行的有EtherCAT、Sercos III、Profinet、Powerlink、Ethernet/IP等。其中,EtherCAT(Ethernet for Control Automation Technology)是开放的实时工业以太网通信协议,最初由德国倍福自动化有限公司研发。它基于标准的以太网技术,支持多种设备连接拓扑结构,具有配置简单、有效数据率高、全双工、数据传输容量大、传输速度快、时钟同步性高、成本低、开放性好等特点,是一种用于工业自动化的实时、高速以太网通信协议。EtherCAT协议使用全双工100 Mbps以太网,系统由一个通信主站和若干从站通信节点组成,主站发送以太网帧给各从站,从站从数据帧中抽取数据或将数据插入数据帧。主站使用标准的以太网控制器,协议和驱动程序由软件实现,从站通信节点使用专门的EtherCAT从站控制器。
本文设计了CAN总线主站协议转换为EtherCAT从站协议的协议转换网关设备(以下简称CAN/EtherCAT协议转换网关),实现了工业自动化现场CAN总线通信设备与EtherCAT主站控制系统的互连通信。
1 系统总体网络架构
CAN/EtherCAT协议转换网关存在两个方向的外部接口,对上通过以太网与EtherCAT主站进行数据交换,通信协议符合EtherCAT实时工业以太网技术规范要求;对下与CAN总线从站设备实现通信,包括实时数据通信、故障诊断恢复和冗余切换处理等。系统总体的网络架构如图1所示。
2.1 CAN/EtherCAT协议转换网关核心器件选型
CAN/EtherCAT协议转换网关硬件包括EtherCAT从站协议控制器、从站MCU、CAN总线协议控制器等。EtherCAT协议控制器实现EtherCAT的物理层与数据链路层的协议。从站MCU主要负责运行用户的应用程序,实现EtherCAT和CAN总线协议之间的协议及数据转换。CAN总线协议控制器实现CAN总线的物理层与数据链路层的协议。
现在市场上有多种EtherCAT协议控制器可供使用,如Beckhoff公司的ASIC芯片ET1100、ET1200,德国Hilscher公司的ComX—CA—RE模块,也可以使用IP—Core将EtherCAT通信功能集成到设备控制FPGA中。ET1200是简化版,只提供1个RJ45接口,不能满足开发需求。ComX模块提供了方便易用的接口,可以简化硬件设计,但是价格较高。FPGA可提供针对Altera和Xilinx公司的IP核,但是价格高,开发难度大。
考虑到实际应用中,开发成本及软硬件设计的实现复杂度,EtherCAT从站协议控制器选用ET1100。ET1100是一款强大的EtherCAT从站控制器ESC专用芯片,具有丰富的接口资源。它具有4个数据收发端口、8个FMMU单元、8个SM、4 KB控制寄存器、8 KB过程数据存储器、支持64位的分布时钟。
从站MCU选用LPC2292芯片。LPC2292是一款基于16/32位ARM7TDMI—S核,支持实时仿真和跟踪的MCU。LPC2292自带2路高级CAN总线通道,可节省设计成本。
2.2 CAN/EtherCAT协议转换网关硬件设计
CAN/EtherCAT协议转换网关主要由通信控制回路、Ethernet回路、CAN总线回路3部分电路构成。CAN/EtherCAT协议转换网关硬件框图如图2所示。
在EtherCAT回路中,EtherCAT协议控制器ET1100可选择使用SPI或8位、16位总线与LPC2292连接。ET1100的相关信息保存在EEPROM中。数据收发端口使用PORT0和PORT1,采用MII方式连接PHY芯片,经过网络变压器隔离,通过RJ45接口与主站或其他从站连接。
通信管理控制回路由MCU(LPC2292)、状态显示电路、外部存储器及单片机外围电路构成。CAN/EtherCAT协议转换网关的配置信息、通信数据使用256 KB外部RAM或F-RAM存储,可以显示运行状态和通信状态等信息。
CAN总线第3方通信协议中,使用LPC2292的内置CAN总线控制器,可根据需要使用1路或2路CAN总线。为了提高CAN/EtherCAT协议转换网关的电磁兼容性EMC,使用高速光耦对CAN总线通信信号进行隔离。
3 CAN/EtherCAT协议转换网关软件设计
CAN/EtherCAT协议转换网关软件由EtherCAT从站通信处理模块和CAN总线主站通信处理模块组成。CAN/EtherCAT协议转换网关软件在功能上实现EtherCAT从站通信协议和CAN总线主站通信协议功能。
CAN/EtherCAT协议转换网关软件基于不带操作系统的硬件平台,采用C语言编写。应用程序各任务串行执行,可以直接操作硬件的中断和定时器,保证了任务执行的速度和系统的性能。
3.1 EtherCAT从站报文帧结构
EtherCAT协议数据直接使用以太网数据帧传输,数据帧类型为0x88A4。数据区最大可达1 498字节。数据区由1个或多个EtherCAT子报文组成,每个子报文对应独立的设备或从站存储区域。EtherCAT从站子报文帧结构如图3所示。
EtherCAT从站 CAN总线 网关 协议转换 相关文章:
- 为什么要使用CAN总线?(05-31)
- 基于CAN总线的智能家居安防系统设计(10-11)
- 如果CAN总线中节点ID相同会怎样?(08-31)
- 恶劣电磁环境中的CAN总线接口电路设计(01-10)
- μC/OSII的CAN驱动程序设计(11-25)
- 基于ARM LPC2292 的CAN总线和以太网间的(01-13)