EtherCAT主站开发经验——基于X86或ARM
来源:网络收集 点击: 时间:2024-04-30首先要确定您的CPU,NIC(网卡)的型号,以及操作系统。X 86 的话可以是Intel公司的,如常见的I5,I7;ARM的话可以是TI,Zynq等。网卡的话首选是英特尔公司的,再者是端昱公司的。而网卡驱动可以由KPA提供,也可以由操作系统提供。而操作系统的话,首选实时操作系统如INtime,QNX,RTX,VxWorks,WinCE ,Xenomai,Linux Posix rt-preempt,而Windows或普通的Linux的非实时系统是很难达到us级别的运行速度的。


整个方案的结构框架。KPA Master包含了RPC Server(远程调用服务),内核库(即C源代码),API内核(API函数库),网卡驱动,操作系统抽象层(OSAL)等。其中,RPC Server可由KPA Studio或其它带RPC Client的工具进行调用,可进行EtherCAT网络配置,诊断或记录等功能。API内核提供了应用程序接口,开发人员可以通过这些API函数编写自己的应用程序。OSAL为源代码,用户可根据自己的需要适应到不同的操作系统中。

下面我们来看看KPA的EtherCAT可实现什么样的功能。基础版本(ClassB)的功能包括PDO,CoE,FoE,S2S等。而标准版本(ClassA)在原来ClassB的基础上又增加了EoE,SoE,AoE,VoE和最主要的DC功能。一般情况下用得最多的就是标准版本。而Premium版本和拓展版本的功能是KPA特有的,如线缆冗余,热链接,帧记录等功能也都是非常实用的。

影响主站性能的几个主要因素:
1、CPU:一个性能强大的CPU是提高EtherCAT主站性能的基础,只有CPU足够强大,后续的性能提升还有可能性。
2、NIC:EtherCAT要求网卡支持全双工通讯,理论上任何网卡都是可以运行EtherCAT的,但目前In tel的 I2xx 系列的表现是最好的。
3、NIC Driver:网卡驱动对主站的影响主要体现在优化上,KPA的网卡驱动是专门针对EtherCAT优化的,可大大减小系统的抖动,让EtherCAT网络更稳定。
4、RTOS:不同实时操作系统在实施EtherCAT主站时的表现也是不一样的,所以RTOS的选择也是相当重要的。
5、中断控制器:中断控制的准确性和实时性对EtherCAT主站性能也有一定的影响。

下面我们来看一下各种操作系统下实施EtherCAT主站的测试参数。可见,INtime,RT preempt,QNX等实时操作系统的Cycle Times都可以达到100us以内,且抖动比较小,而Windows非实时操作系统的Cycle Times只能达到1ms的级别。为了体现EtherCAT的速度优势,实时操作系统的使用是必须的。

总结:基于X86或ARM开发EtherCAT主站相比用FPGA方案来说实现起来更加容易,但性能上不及FPGA的表现。
注意事项注意影响主站性能的几个因素,选择合理的硬件和操作系统
ETHERCAT主站主站开发ARMDCX86版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_631736.html