解决方案
目前,工业以太网EtherCAT在伺服系统中的使用越来越广泛。其从站设备大多采用硬件化的设计,或使用专用芯片,或使用FPGA来实现EtherCAT从站功能,从而能最大限度的保证从站端的实时性。但是在主站设备上,仍然采用软件协议栈的方式来实现,其性能更多的依赖于CPU处理器的性能和操作系统的实时性能。这往往导致整个系统的成本很高,且造成处理器的负担很重,性能无法达到最佳。
现在骏龙科技设计中心(CytechDesign Centre),在传统方案的基础上,推出了性能和成本更优的EtherCATMaster解决方案。该方案把传统的EtherCATMaster软件协议栈变成了可在FPGA上运行的硬件协议栈,完全用FPGA的逻辑电路取代了软件,从而大大提高了主站端的系统实时性能。使用FPGA中内置的Nios II处理器来完成实时中断处理,可以大幅降低主CPU处理器的负担,且无需花费太多精力来提高操作系统的实时处理性能。此方案再配合Altera的SoC平台,可以完美的实现数控系统的主站设计。SoC芯片中的ARMCortex-A9双核处理器可以实现UI人机界面,通过内部总线与Nios II软处理器进行通信,由Nios II负责实时数据的处理,并通过EtherCAT总线控制底层的伺服电机驱动。
另外,该方案还创新性的实现了多个主端口同时通信,并通过主站统一授时的方式,实现多个主端口下的从站同步动作。这种方式不仅可以增加系统布网的灵活性,还可以在更短的同步周期内支持更多的从站同步动作。
下图是主站方案的系统框图:
经过测试,在此平台下,可以在31.25us循环周期内实现至少两个伺服从站(4byte写/24byte读)的数据操作,还可以发送一个非周期性的数据包(最小以太网包),同时还可实现针对于伺服系统的位置与速度环的运算操作,此操作是由NiosII完成的,其主频是125MHz。
下表中列出了在31.25us循环周期内,各项数据处理的延时情况。
伺服轴数 | 周期性数据包 | 非周期性数据包 | 运算延时 | 总时长 |
1 | 8us | 5.12us | 6.3us | 19.42us |
2 | 12.16us | 5.12us | 12.26us | 29.54us |
由于NiosII的主频不高,导致其运算能力较低。如需要做大量复杂运算,可以使用SoC芯片中的ARMCortex-A9来替代NiosII。ARMCortex-A9是双核处理器,运行主频为800MHz,可以考虑采用AMP工作模式,一个处理器内核运行Linux-RT系统,另一个裸核运行,替代NiosII处理实时任务并做复杂运算。
整套参考设计的实物包括:
EtherCAT主站: Altera Cyclone V SoC开发板
Nios II
EtherCAT Master IP
EtherCAT从站: AlteraMAX10系列
Softing EtherCAT Slave IP
Cytech FOC 电流环 IP
欢迎有兴趣的客户联系骏龙科技办事处了解参考设计详情。