摘要:该方案采用独占确定CPU内核技术实现超强性能的强实时运动控制。它将核心的运动控制、机器人算法、数控(CNC)及机器视觉等强实时的任务,集中运行在1-2个专用CPU核上。与此同时,其余CPU核则专注于处理Windows/Linux相关的非实时任务。
强实时运动控制内核MotionRT750
MotionRT750是正运动技术首家自主自研的x86架构Windows系统或Linux系统下独占确定CPU的强实时运动控制内核。
该方案采用独占确定CPU内核技术实现超强性能的强实时运动控制。它将核心的运动控制、机器人算法、数控(CNC)及机器视觉等强实时的任务,集中运行在1-2个专用CPU核上。与此同时,其余CPU核则专注于处理Windows/Linux相关的非实时任务。
此外集成MotionRT750 Runtime实时层与操作系统非实时层,并利用高速共享内存进行数据交互,显著提升了运动控制与上层应用间的通信效率及函数执行速度,最终实现更稳定、更高效的智能装备控制,确保了运动控制任务的绝对实时性与系统稳定性,特别适用于半导体、电子装备等高速高精的应用场合。
MotionRT750应用优势:
1.跨平台兼容性:支持Windows/Linux系统,适配不同等级CPU。
2.开发灵活性:提供多语言编程接口,便于二次开发与功能定制。
3.实时性提升:通过CPU内核独占机制与高效LOCAL接口,实现2-3us指令交互周期,较传统PCI/PCIe方案提速近20倍。
4.扩展能力强化:多卡多EtherCAT通道架构支持254轴运动控制及500usEtherCAT周期。
5.系统稳定性:32轴125usEtherCAT冗余架构消除单点故障风险,保障连续生产。
6.安全可靠性:不惧Windows系统崩溃影响,蓝屏时仍可维持急停与安全停机功能有效,确保产线安全运行。
7.功能扩展性:实时内核支持C语言程序开发,方便功能拓展与实时代码提升效率。
超实时EtherCAT运动控制卡XPCIE6032H
XPCIE6032H运动控制卡集成6路独立EtherCAT主站接口。整卡最高可支持254轴运动控制;125usEtherCAT通讯周期时,两个端口配置冗余最高可支持32轴运动控制。6个EtherCAT主站各通道独立工作,多EtherCAT主站互不影响。
XPCIE6032H运动控制卡面向半导体设备、精密3C电子、生物医疗仪器、新能源装备、人形机器人及激光加工等高速高精场景,为固晶机、贴片机、分选机、锂电切叠一体机、高速异形插件设备等自动化装备提供核心运动控制支持。
XPCIE6032H硬件特性:
1.EtherCAT通讯周期可到125us(需要主机性能与实时性足够)。
2.板卡集成6路独立的EtherCAT主站接口,最多可支持254轴运动控制。
3.搭载运动控制实时内核MotionRT750。
4.相较于传统的PCI/PCIe、网口等通讯方式,速度可提升10-100倍以上。
5.板载16路高速输入,16路高速输出。
6.板载4路高速锁存,4路通用PWM输出。
超实时EtherCAT运动控制卡XPCIE2032H
XPCIE2032H集成2路独立EtherCAT接口。整卡最高可支持至254轴运动控制;125usEtherCAT通讯周期时,单接口最高可支持32轴运动控制。2个EtherCAT主站各通道独立工作,多EtherCAT主站互不影响。
双EtherCAT主站端口可任意设置为以下通道,且两个端口也设置为不同类型通道:
● 高速通道-EtherCAT通讯周期125us
● 常规通道-EtherCAT通讯周期250us-8ms
XPCIE2032H硬件特性:
1.EtherCAT通讯周期可到125us(需要主机性能与实时性足够)。
2.板卡集成2路独立的EtherCAT主站接口,最多可支持254轴运动控制。
3.搭载运动控制实时内核MotionRT750。
4.相较于传统的PCI/PCIe、网口等通讯方式,速度可提升10-100倍以上。
5.板载8路高速输入,16路高速输出。
6.板载4路高速锁存,4路通用PWM输出。
PCIe EtherCAT实时运动控制卡XPCIE1032H
XPCIE1032H是一款基于PCI Express的EtherCAT总线运动控制卡,可选6-64轴运动控制,支持多路高速数字输入输出,可轻松实现多轴同步控制和高速数据传输。
XPCIE1032H运动控制卡集成了强大的运动控制功能,结合MotionRT7运动控制实时软核,解决了高速高精应用中,PC Windows开发的非实时痛点,指令交互速度比传统的PCI/PCIe快10倍。
XPCIE1032H硬件特性:
1.6-64轴EtherCAT总线+脉冲可选,其中4路单端500KHz脉冲输出。
2.16轴EtherCAT同步周期500us,支持多卡联动。
3.板载16点通用输入,16点通用输出,其中8路高速输入和16路高速输出。
4.通过EtherCAT总线,可扩展到512个隔离输入或输出口。
5.支持PWM输出、精准输出、PSO硬件位置比较输出、视觉飞拍等。
6.支持直线插补、圆弧插补、连续轨迹加工(速度前瞻)。
7.支持电子凸轮、电子齿轮、位置锁存、同步跟随、虚拟轴、螺距补偿等功能。
8.支持30+机械手模型正逆解模型算法,比如SCARA、Delta、UVW、4轴/5轴 RTCP...
LabVIEW进行MotionRT750项目的创建与开发
1.找到厂家提供的光盘资料里面LabVIEW的VI库文件,路径如下。
(1)进入厂商提供的光盘资料找到“04PC函数”文件夹,点击进入。
(2)选择“01PC函数库V2.1”文件夹。
(3)选择“Windows平台”文件夹。
(4)选择“LabVIEW”文件夹,里面有32位和64位的动态库和例程。
2.将厂商提供的LabVIEW的VI库文件复制到LabVIEW安装路径下LabVIEW/user.lib的文件夹内。
(1)找到解压的VI库文件夹(zaudll是32位的VI库,64的VI库是newZauxDll64)。
(2)选中LabVIEW右击打开文件所在位置(这里以LabVIEW2013-32位为例演示)。
(3)将整个VI库文件夹直接复制放到user.lib该目录,然后关闭LabVIEW软件重新启动。
3.重新启动LabVIEW后,选择新建VI,然后右键点击VI程序框图空白处,选择用户库来找到添加的VI库,或者直接搜索VI,最后将需要的函数直接拖到面板上。
PC函数介绍
1.PC函数手册可在光盘资料查看,具体路径如下。
2.PC函数介绍
多种连接方式进行指令交互测试
LabVIEW编写例程调试对LOCAL方式连接、网口方式连接以及PCI方式连接时的单条或多条指令交互时间测试。
1.通过LOCAL连接按钮的事件处理,调用函数ZAux_FastOpen,选择连接类型5去连接控制器(LOCAL连接方式)。
2.通过网口连接按钮的事件处理函数,调用函数ZAux_OpenEth去连接控制器(网口连接方式)。
3.通过PCI连接按钮的事件处理函数,调用函数ZAux_FastOpen,选择连接类型4去连接控制器(PCI连接方式)。
4.通过在指令VI添加计时编程得到交互周期的耗时。(以ZAux_Direct_GetIn接口为例子)
(1)左键双击VI接口,进入VI接口前面板。
(2)点击接口VI的显示程序框图,进入程序框图界面后,右键点击空白处,选择“时间”函数,添加“高精度相对秒钟”函数两个,分别作为开始时间和结束时间的获取工具。
将两个时间函数分别放置在接口调用的前后位置,通过相减得到接口执行的时间差,从而获得该次调用的耗时数值。
(3)返回VI接口的前面板,选择前面板右上角的子VI节点模式,使用鼠标选择空白的接线端以及x-y显示控件,创建x-y显示控件的接线端。
5.通过测试按钮的事件处理函数来计算1W条指令的总耗时、交互平均耗时、单次最大耗时和单次最小耗时。(以ZAux_Direct_GetIn接口为例子)
运行效果
LOCAL、PCI、网口三种连接方式的单条指令和多条指令交互时间测试结果如下图所示。
结论与分析
一、LabVIEW数据分析
对于LOCAL方式连接、PCI方式连接以及网口方式连接时的指令交互时间测试(LabVIEW),从上面的运行效果图的数据显示来看,可以看出:
当LabVIEW进行1w次的指令交互的时候,LOCAL连接方式进行指令交互所需要的时间都是要比PCI连接和IP连接的方式更快。
二、C#数据分析
对于MotionRT750的LOCAL方式连接、PCI方式连接和控制器网口方式连接时的单条或多条指令交互时间测试(C#),从上面的表格数据显示来看,可以看出:
当C#进行1k、1w次和10w次的单指令交互或多条指令交互的时候,MotionRT750的LOCAL连接方式进行单条指令交互所需要的时间(平均2.2us左右)和一次性读取12个状态的多条指令交互所需要的时间(平均3.9us左右),都是要比PCI连接和控制器网口连接的方式更快(PCI单条平均38us左右、多条平均115us左右;网口单条平均169us、多条平均208us左右)。
三、C++数据分析
对于MotionRT750的LOCAL方式连接、PCI方式连接和控制器网口方式连接时的单条或多条指令交互时间测试(C++),从上面的表格数据显示来看,可以看出:
当C++进行1k、1w次和10w次的单指令交互或多条指令交互的时候,MotionRT750的LOCAL连接方式进行单条指令交互所需要的时间(平均2.1us左右)和一次性读取12个状态的多条指令交互所需要的时间(平均3.8us左右),都是要比PCI连接和控制器网口连接的方式更快(PCI单条平均42us左右、多条平均105us左右;网口单条平均127us、多条平均177us左右)。
以下是针对测试数据的分析总结,结合不同连接方式(LOCAL、PCI、网口)在LabVIEW与C#、C++中的多种控制指令中的性能表现:
(1)LOCAL连接方式在大多数情况下均展现出最低的指令交互耗时,这得益于其高速的数据传输通道和低延迟特性。尤其在单轴运动、单个IO读取、单轴位置读取、寄存器读取以及多个IO读取等指令执行中,LOCAL连接的平均耗时显著优于PCI和网口连接方式,表明其在处理高速、高精度的运动控制任务时具有显著优势。
(2)PCI连接方式在性能上介于LOCAL和网口之间,虽然其指令交互耗时较LOCAL连接有所增加,但仍远低于网口连接。
(3)网口连接方式虽然指令交互耗时最长,但在实际应用中仍具有其独特的价值。特别是在远程监控、分布式控制系统以及需要跨网络通信的场景中,网口连接凭借其广泛的兼容性和灵活性,成为不可或缺的通信手段。
(4)C#、C++的读写速度快于LabView的读写速度,LabView的方便易用占用了一些执行效率,用户可以根据实际需求选择不同的编程语言。
综上所述,我们可以从测试结果看出:MotionRT750的LOCAL连接方式展现卓越的实时性能,指令交互的效率也非常的稳定,指令交互时间波动不大,在延迟、稳定性上全面优于PCI和网口的连接,更加适合高精度、高实时性、高稳定性的工业运动控制场景应用。
LabVIEW例程讲解视频:
本次,正运动技术强实时运动控制内核MotionRT750(八):us级高速交互之LabVIEW,为智能装备提速,就分享到这里。
本文由正运动技术原创,欢迎大家转载,共同学习,一起提高中国智能制造水平。文章版权归正运动技术所有,如有转载请注明文章来源。
来源:正运动技术