基于ARM的嵌入式实时EtherCAT主站构建方法技术

技术编号:15614352 阅读:171 留言:0更新日期:2017-06-14 02:55
本发明专利技术涉及基于ARM的嵌入式实时EtherCAT主站构建方法,通过CPU与ARM共用FPGA内存,实现CPU与ARM之间的数据通讯,包括以下步骤:主站进行初始化;CPU发送控制指令至FPGA的内存中,ARM从FPGA中获取控制指令与从站进行周期性通讯或非周期性通讯。本发明专利技术节约成本。本发明专利技术使用LPC4330高性能嵌入式处理器,可在原有PCI总线基础上进行更改,相比于传统基于工业PC机实现EtherCAT主站更具有成本优势。本发明专利技术实现的嵌入式EtherCAT主站可以直接集成在嵌入式系统中使用,无需修改原有数控系统软件。减轻主机运算任务,降低CPU使用率,提升运行速度。本发明专利技术实现的嵌入式EtherCAT主站可以分担由协议产生的分布时钟、状态机以及帧运算等所产生的程序任务。

【技术实现步骤摘要】
基于ARM的嵌入式实时EtherCAT主站构建方法
本专利技术涉及数控
,尤其涉及构建嵌入式实时EtherCAT主站的
,具体涉及一种基于LPC4330处理器构建嵌入式实时EtherCAT主站的方法。
技术介绍
传统现场总线通过模拟量控制方式,对DA电压,编码器反馈位置等进行控制。但是这种控制方式受环境干扰明显,且存在安装方式不灵活,调试麻烦,控制不准确,线缆成本高,系统设计复杂和驱动器从站设备数量受限等缺点。实时工业以太网因其传输速度快,数据包容量大,传输距离远,实时性高和开放互联的特点,被越来越多的应用到了数控领域。德国Beckhoff公司提出的EtherCAT(EthernetforControlAutomationTechnology)便是其中的一种,它具有高性能、低成本、应用简单、拓扑灵活的特点,并且支持100Mbps全双工,有效数据率可达90%以上,可以极大的提高数控系统的性能。现有的EtherCAT主站的实现方案大部分是采用倍福公司在Windows操作系统下基于PC机的解决方案,当然也有基于Linux操作系统和Android操作系统的嵌入式解决方案。其硬件方案绝大部分采用处理器CPU外扩网卡的芯片的通用体系架构,CPU用来分别处理EtherCAT协议的数据链路层和应用层。但是现有的这种EtherCAT主站实现方案利用CPU和网卡配合来处理数据帧的收发操作,降低了数据帧收发的稳定性,同时网卡单缓存的操作模式也降低了数据收发的效率,造成了应用于工业环境的稳定性问题和效率问题。其次,这种主站方案的EtherCAT主站不能广泛地兼容各种操作系统,移植难度较大,造成了平台资源的兼容性问题。
技术实现思路
针对上述技术不足,本专利技术提出了一种基于LPC4330处理器构建嵌入式实时EtherCAT主站的方法。本专利技术解决其技术问题所采用的技术方案是:基于ARM的嵌入式实时EtherCAT主站构建方法,通过CPU与ARM共用FPGA内存,实现CPU与ARM之间的数据通讯,包括以下步骤:主站进行初始化;CPU发送控制指令至FPGA的内存中,ARM从FPGA中获取控制指令与从站进行周期性通讯或非周期性通讯。所述主站进行初始化具体为ARM从FPGA中获取从站信息,装载初始化命令、通过状态机进行初始化,包括:进入初始化状态:ARM检测从站个数;如果个数与设定值不同,则重复检测从站个数;如相同,则执行初始化状态向预运行状态转化步骤;初始化状态向预运行状态转化:主站配置从站站点地址;配置邮箱通道参数;若收到从站返回的状态帧为预运行状态,则主站进入预运行状态,否则返回初始化状态向预运行状态转化步骤;预运行状态:检测FPGA中CPU发送的状态命令,若状态命令值表示预运行状态,则返回检测FPGA步骤;否则,进入预运行状态向安全运行状态转化步骤;预运行状态向安全运行状态转化:多次发送初始化分布时钟命令帧至从站、初始化从站邮箱、配置SM通道、配置FMMU,若收到从站返回的状态帧为安全运行状态,则主站进入安全运行状态,否则返回预运行状态向安全运行状态转化步骤;安全运行状态:检测FPGA中CPU发送的状态命令,若状态命令值表示安全运行状态,则返回检测FPGA步骤;否则,进入安全运行状态向运行状态转化步骤;安全运行状态向运行状态转化:使能周期性通讯。所述装载初始化命令具体为:根据从站的XML配置文件得到配置信息,结合FPGA中的从站设备号构成初始化命令。所述FPGA的内存分为多个地址区间,包括非周期性数据地址区间和周期性数据地址区间;非周期性数据为系统控制数据;周期性数据包括各从站的过程数据和反馈数据。所述收到从站返回的状态帧包括以下步骤:当ARM收到从站返回的状态帧,首先判断该帧是否为ECT帧;如果是,则通过该帧索引值判断该帧是否为周期性数据;如果是,则根据该帧类型的寻址方式对FPGA进行写入操作;否则根据该帧的读取从站寄存器类型采集从站信息。所述根据该帧类型的寻址方式对FPGA进行写入操作包括:当该帧类型为逻辑寻址读时,则读取反馈数据存入FPGA中相应地址区域并检查工作计数器,若工作计数器值与设定值不符,即为错误,则将错误标志位存入FPGA中相应地址区域;当该帧类型为逻辑寻址写时,则只检查工作计数器,若工作计数器值错误,则将相应错误标志位存入FPGA中相应地址区域;当该帧类型为广播寻址读时,则检查从站状态,若状态值错误,则将相应错误标志位存入FPGA中相应地址区域;另外,检查工作计数器,若工作计数器值错误,则将错误标志位存入FPGA中相应地址区域;当该帧类型为多重读写时,则读取参考时钟系统时间并转发给从站。所述否则根据该帧的寄存器类型采集从站信息包括:当该帧为设置寻址或顺序寻址、读从站状态寄存器时,则主站读取从站状态,如果自从站状态寄存器内读取的是转化后运行状态,则主站进入转化后运行状态;如果是转化前运行状态,则主站停留在转化前运行状态,并重复执行转化过程;当该帧为顺序寻址、读从站接收时间寄存器时,则主站读取参考时钟从站及其他从站帧接收时间,并得出传输延时以及初始偏移,然后写入各从站;当该帧为多重读写、从站本地时间寄存器时,则读取参考时钟系统时间并转发至各从站;当该帧为设置寻址读邮箱数据时,主站读取邮箱数据,并存入FPGA中。本专利技术具有以下有益效果及优点:1.节约成本。本专利技术使用LPC4330高性能嵌入式处理器,可在原有PCI总线基础上进行更改,相比于传统基于工业PC机实现EtherCAT主站更具有成本优势。2.节约开发时间。本专利技术实现的嵌入式EtherCAT主站可以直接集成在嵌入式系统中使用,无需修改原有数控系统软件。3.减轻主机运算任务,降低CPU使用率,提升运行速度。本专利技术实现的嵌入式EtherCAT主站可以分担由协议产生的分布时钟、状态机以及帧运算等所产生的程序任务。附图说明图1为主站结构示意图;图2为DPRAM内存分配示意图;图3为返回数据帧处理示意图;图4为FPGA芯片连接示意图。具体实施方式下面结合实施例对本专利技术做进一步的详细说明。本专利技术的LPC4330处理器将指令数据进行封装和调度,组成数据帧发送给PHY芯片;PHY芯片将其转换为差分信号,发送在EtherCAT网络之中;各个从站收到EtherCAT数据帧后进行相应的处理后返回主站,在经过网络变压器和PHY芯片后,数据帧接收模块接收网络中的数据帧;在EtherCAT协议驱动模块中对数据帧进行解析提取有效数据供CPU来进行读取状态和反馈数据。本专利技术实施包括以下步骤:1.如图1所示,构建嵌入式实时EtherCAT主站硬件平台。该装置包括PCI扩展接口、FPGA芯片、ARM芯片、PHY芯片、网络隔离变压器和EtherCAT总线接口RJ45,以上装置都搭载在CPU主控板上。2.如图4所示,FPGA用于将CPU的数据与ARM数据之间进行转换,实现CPU与ARM之间的通讯。编写FPGA芯片硬件逻辑,其中包括CPU接口选择操作模块。其中,CPU接口选择操作模块通过PCI总线与CPU相连,提供一个CPU和FPGA芯片之间的交互操作通道,供CPU对FPGA芯片进行读写和访问;ARM则通过配置自身的EMC(外部存储器控制器)与FPGA进本文档来自技高网
...
基于ARM的嵌入式实时EtherCAT主站构建方法

【技术保护点】
基于ARM的嵌入式实时EtherCAT主站构建方法,其特征在于通过CPU与ARM共用FPGA内存,实现CPU与ARM之间的数据通讯,包括以下步骤:主站进行初始化;CPU发送控制指令至FPGA的内存中,ARM从FPGA中获取控制指令与从站进行周期性通讯或非周期性通讯。

【技术特征摘要】
1.基于ARM的嵌入式实时EtherCAT主站构建方法,其特征在于通过CPU与ARM共用FPGA内存,实现CPU与ARM之间的数据通讯,包括以下步骤:主站进行初始化;CPU发送控制指令至FPGA的内存中,ARM从FPGA中获取控制指令与从站进行周期性通讯或非周期性通讯。2.根据权利要求1所述的基于ARM的嵌入式实时EtherCAT主站构建方法,其特征在于所述主站进行初始化具体为ARM从FPGA中获取从站信息,装载初始化命令、通过状态机进行初始化,包括:进入初始化状态:ARM检测从站个数;如果个数与设定值不同,则重复检测从站个数;如相同,则执行初始化状态向预运行状态转化步骤;初始化状态向预运行状态转化:主站配置从站站点地址;配置邮箱通道参数;若收到从站返回的状态帧为预运行状态,则主站进入预运行状态,否则返回初始化状态向预运行状态转化步骤;预运行状态:检测FPGA中CPU发送的状态命令,若状态命令值表示预运行状态,则返回检测FPGA步骤;否则,进入预运行状态向安全运行状态转化步骤;预运行状态向安全运行状态转化:多次发送初始化分布时钟命令帧至从站、初始化从站邮箱、配置SM通道、配置FMMU,若收到从站返回的状态帧为安全运行状态,则主站进入安全运行状态,否则返回预运行状态向安全运行状态转化步骤;安全运行状态:检测FPGA中CPU发送的状态命令,若状态命令值表示安全运行状态,则返回检测FPGA步骤;否则,进入安全运行状态向运行状态转化步骤;安全运行状态向运行状态转化:使能周期性通讯。3.根据权利要求1所述的基于ARM的嵌入式实时EtherCAT主站构建方法,其特征在于所述装载初始化命令具体为:根据从站的XML配置文件得到配置信息,结合FPGA中的从站设备号构成初始化命令。4.根据权利要求1所述的基于ARM的嵌入式实时EtherCAT主站构建方法,其特征在于所述FPGA的内存分为多个地址区间,包括非周期性数据地址区间和周期性数据地址区间;非周期性数据为...

【专利技术属性】
技术研发人员:韩文泽刘德阳葛军姜雪赵红丹李敬新
申请(专利权)人:沈阳高精数控智能技术股份有限公司
类型:发明
国别省市:辽宁,21

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1