新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > CAN总线协议到EtherCAT从站协议的转换网关设计

CAN总线协议到EtherCAT从站协议的转换网关设计

作者: 时间:2013-04-23 来源:网络 收藏

3 CAN/EtherCAT软件设计
CAN/EtherCAT软件由通信处理模块和主站通信处理模块组成。CAN/EtherCAT软件在功能上实现通信协议和主站通信协议功能。
CAN/EtherCAT协议转换网关软件基于不带操作系统的硬件平台,采用C语言编写。应用程序各任务串行执行,可以直接操作硬件的中断和定时器,保证了任务执行的速度和系统的性能。
3.1 报文帧结构
EtherCAT协议数据直接使用以太网数据帧传输,数据帧类型为0x88A4。数据区最大可达1 498字节。数据区由1个或多个EtherCAT子报文组成,每个子报文对应独立的设备或从站存储区域。EtherCAT从站子报文帧结构如图3所示。

本文引用地址:https://www.eepw.com.cn/article/153523.htm

c.JPG


每个EtherCAT子报文包括子报文头、数据区和相应的工作计数器(Working Counter,WKC)。发送子报文的WKC初始值为0,子报文被CAN /EtherCAT协议转换网关正确处理后,增加一个增量,主站根据WKC是否正确,来判断该子报文是否被正确响应。
3.2 EtherCAT从站通信处理模块
EtherCAT从站通信处理模块实现与EtherCAT主站之间的通信,EtherCAT从站通信处理模块以EtherCAT从站控制器为核心,从站协议控制器实现EtherCAT数据的接收、发送以及错误处理。从站MCU操作EtherCAT从站协议控制器,实现应用层协议。
EtherCAT协议有2种数据交换形式:一种是周期性过程数据通信,另一种是非周期性邮箱数据通信。周期性过程数据通信用来传输数据刷新率要求较高的输入输出数据,非周期性邮箱数据通信则用来配置或读取从站的参数信息。
自动化控制系统中,系统一般要求先采集下面设备的输入数据,对输入数据进行相应的逻辑处理,然后产生输出控制信号,发送到输出设备。EtherCAT协议的状态机通信模式很好地解决了这个问题,保证了通信的安全可靠。
CAN/EtherCAT协议转换网关支持4种状态:初始化(Init)、预运行(Pre-Operational)、安全运行(Safe-Operational)和运行(Operation al)。各状态之间的转换关系如图4所示。状态机依次在不同的状态及状态转换期间完成不同的任务。

d.JPG


CAN/EtherCAT协议转换网关处于初始化状态时,主站初始化EtherCAT从站控制器的一些配置寄存器、配置邮箱通道参数。预运行状态下,CAN/EtherCAT协议转换网关与主站使用邮箱通信交换通信配置信息,此时,不允许过程数据通信。安全运行状态下,CAN/EtherCAT协议转换网关应用程序读入输入数据,但不产生输出信号,设备无输出,处于“安全状态”。运行状态下,CAN/EtherCAT协议转换网关应用程序读入输入数据,此时,主站应用程序发出的输出数据有效,CAN/EtherCAT协议转换网关产生输出信号。
3.3 主站通信处理模块
CAN总线主站通信处理模块主要实现与CAN总线从站设备之间的数据交换、参数配置和故障诊断等。数据的收发采用定时器和中断相配合的模式。
上电硬件初始化,配置好CAN总线通信的参数后,CAN总线主站通信处理模块首先请求下面各CAN总线从站设备的输入数据,所有输入数据扫描完成后,置输入数据扫描完成标志,EtherCAT主站接收到该标志后,转换CAN/EtherCAT协议转换网关状态到运行状态。此时,输出数据有效,CAN总线主站通信处理模块发送输出数据到相关CAN总线从站设备。所有的从站一轮扫描结束后,判断统计是否有从站出现通信故障,并进行相应的处理。
3.4 CAN/EtherCAT协议转换网关对象字典设计
EtherCAT协议使用对象字典实现标准的参数信息配置和输入、输出数据读写操作,每个对象字典有一个主索引和多个子索引。在CAN/Et herCAT协议转换网关采用协议转换网关和CAN总线从站设备的多级对象字典设计模式,如图5所示。

e.JPG

光耦相关文章:光耦原理




评论


相关推荐

技术专区

关闭