正运动技术
正运动技术
EN

协助伙伴成功,是我们的价值所在

The value of Zmotion is to bring customers more success!

首页 / 支持与服务 / 技术分享

Technical support

技术分享

强实时运动控制内核MotionRT750(四):高速贴装应用中的拱形运动


强实时运动控制内核MotionRT750

MotionRT750是正运动技术首家自主自研的x86架构Windows系统或Linux系统下独占确定CPU的强实时运动控制内核。

实时运动控制内核MotionRT750.png

该方案采用独占确定CPU内核技术实现超强性能的强实时运动控制。它将核心的运动控制、机器人算法、数控(CNC)及机器视觉等强实时的任务,集中运行在1-2个专用CPU核上。与此同时,其余CPU核则专注于处理Windows/Linux相关的非实时任务。

此外集成MotionRT750 Runtime实时层与操作系统非实时层,并利用高速共享内存进行数据交互,显著提升了运动控制与上层应用间的通信效率及函数执行速度,最终实现更稳定、更高效的智能装备控制,确保了运动控制任务的绝对实时性与系统稳定性,特别适用于半导体、电子装备等高速高精的应用场合。

实时运动控制内核MotionRT750适用产品接线图.png





MotionRT750应用优势:

1.跨平台兼容性:支持Windows/Linux系统,适配不同等级CPU。

2.开发灵活性:提供多语言编程接口,便于二次开发与功能定制。

3.实时性提升:通过CPU内核独占机制与高效LOCAL接口,实现2-3μs指令交互周期,较传统PCI/PCIe方案提速近20倍。

4.扩展能力强化:多卡多EtherCAT通道架构支持254轴运动控制及500μsEtherCAT周期。

5.系统稳定性:32轴125μsEtherCAT冗余架构消除单点故障风险,保障连续生产。

6.安全可靠性:不惧Windows系统崩溃影响,蓝屏时仍可维持急停与安全停机功能有效,确保产线安全运行。

7.功能扩展性:实时内核支持C语言程序开发,方便功能拓展与实时代码提升效率。



更多关于MotionRT750的详情介绍与使用点击→强实时运动控制内核MotionRT750(一):驱动安装、内核配置与使用。



超实时EtherCAT运动控制卡XPCIE6032H

XPCIE6032H运动控制卡集成6路独立EtherCAT主站接口。整卡最高可支持254轴运动控制;125usEtherCAT通讯周期时,两个端口配置冗余最高可支持32轴运动控制。6个EtherCAT主站各通道独立工作,多EtherCAT主站互不影响。

超实时EtherCAT运动控制卡XPCIE6032H.png

此外,对于EtherCAT接口数量需求不高的客户,我们也有衍生型号XPCIE2032H可选。同系列产品XPCIE2032H集成2路独立EtherCAT接口。整卡最高可支持至254轴运动控制;125usEtherCAT通讯周期时,单接口最高可支持32轴运动控制。2个EtherCAT主站各通道独立工作,多EtherCAT主站互不影响。

超实时EtherCAT运动控制卡XPCIE2032H.png

XPCIE6032H运动控制卡面向半导体设备、精密3C电子、生物医疗仪器、新能源装备、人形机器人及激光加工等高速高精场景,为固晶机、贴片机、分选机、锂电切叠一体机、高速异形插件设备等自动化装备提供核心运动控制支持。







XPCIE6032H硬件特性:

1.EtherCAT通讯周期可到125us(需要主机性能与实时性足够)。

2.板卡集成6路独立的EtherCAT主站接口,最多可支持254轴运动控制。

3.搭载运动控制实时内核MotionRT750。

4.相较于传统的PCI/PCIe、网口等通讯方式,速度可提升了10-100倍以上。

5.板载16路高速输入,16路高速输出。

6.板载4路高速锁存、4路硬件位置比较输出、4路通用PWM输出。



更多关于XPCIE6032H的详情介绍与使用点击→全球首创!PCIe超实时6通道EtherCAT运动控制卡上市!



PCIe EtherCAT实时运动控制卡XPCIE1032H

XPCIE1032H是一款基于PCI Express的EtherCAT总线运动控制卡,可选6-64轴运动控制,支持多路高速数字输入输出,可轻松实现多轴同步控制和高速数据传输。

PCIe EtherCAT实时运动控制卡XPCIE1032H.png

XPCIE1032H运动控制卡集成了强大的运动控制功能,结合MotionRT7运动控制实时软核,解决了高速高精应用中,PC Windows开发的非实时痛点,指令交互速度比传统的PCI/PCIe快10倍。

核间交互.png






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...





更多关于XPCIE1032H详情点击“不止10倍提速!PCIe EtherCAT实时运动控制卡XPCIE1032H 等您评测!”查看。



PCI Express实时运动控制卡XPCIE1028

PCI Express®总线运动控制卡XPCIE1028,具备位置锁存、多维高速硬件位置比较输出PSO、同步跟随、精准触发的运动控制和I/O控制功能。配合正运动技术MotionRT7实时内核使用,可高度满足高速视觉筛选机应用所需的运动控制需求。

PCI Express实时运动控制卡XPCIE1028.png

XPCIE1028运动控制卡是正运动技术专为高速视觉筛选设备设计的一款PCI Express®总线运动控制卡,内置丰富的I/O、通讯接口,可以轻松地实现与视觉筛选机通信,非常匹配使用于1-12个相机+多个高速吹气口的全自动CCD光学筛选机等设备上使用。

高速视觉筛选设备示意图.png
高速视觉筛选设备示意图
XPCIE1028自带8路高速输入和多达16路高速硬件位置比较输出,能够轻松实现视觉飞拍和高速、精准触发控制等视觉筛选机所需的多种实时性运动控制,以及高稳定性。脉冲输出+编码器反馈,可实现转盘的旋转,并实时记录编码器的实时反馈位置,帮您更加精准地控制设备。
XPCIE1028在光学筛选机上硬件方案1.png
XPCIE1028在光学筛选机上硬件方案1
8相机+8排料)
XPCIE1028在光学筛选机上硬件方案2.png

XPCIE1028在光学筛选机上硬件方案2

12相机+4排料)







XPCIE1028硬件特性:

1.支持电子凸轮、直线插补等运动控制功能。

2.板载28+2点通用输入,32+2点通用输出,其中8路高速输入和16路高速输出。

3.板载4路脉冲输出,其中一路专用脉冲轴接口(差分脉冲输出+编码器反馈)。

4.支持8路高速锁存输入口,可记录转盘来料位置。

5.多达16路精准输出、硬件位置比较输出,机器视觉飞拍检测和筛选吹气高速输出,可根据需求分配。




更多关于高速视觉筛选机方案详情点击“高速视觉筛选机PCI Express实时运动控制卡XPCIE1028”查看。








拱形运动

在高速贴装行业中,常常会有非常多的高速抬升、平移、下降动作,常规的直角门型运动在直角拐角处为了降低机台震动,不得不进行减速停止,再重新加速的过程。

常规的直角门型运动.gif

而拱形运动的优点在于:将直角拐弯处的运动轨迹处理成圆弧轨迹,不仅极大降低了减速程度,同时还保证了机台的稳定性,以及运动的连续性,提高了整体加工效率。

拱形运动.gif




拱形运动相关指令






拱形运动实现原理

拱形运动实现是将原本的门型运动里抬升、平移、下降三条直线插补,手动拆分成直线、圆弧、直线、圆弧、直线五条插补运动,再用连续插补来保证速度的连续性,这需要我们事先知道原门型运动的空间4点坐标,将直角轨迹改成圆弧轨迹。

1.门型运动轨迹

门型运动轨迹.png

2.拱形运动轨迹

拱形运动轨迹.png




C#开发流程

1.打开Visual Studio 2022软件选择创建新项目。

1.png

2.选择开发语言为“C#”和Windows窗体应用(.NET Framework)。

2.png

3.选择项目名称、文件目录位置及框架。

3.png

4.将厂商提供的C#的库文件复制到新建的项目中。

(1)Zmcaux.cs文件复制到新建的项目里面。

4.png

(2)zauxdll.dll和zmotion.dll文件放入bin\debug文件夹中。

5.png

5.打开新建的项目文件,在右边的解决方案资源管理器中点击显示所有,然后鼠标右键点击Zmcaux.cs文件,点击包括在项目中。

6.png

6.进入Form1.cs代码编辑界面,写入using cszmcaux,并声明控制器句柄g_handle。

7.png

7.至此项目新建完成,可以进行C#项目开发。




函数说明

1.连接控制器。

MotionRT750主要使用ZAux_FastOpen来获取连接句柄,建立通讯。

//LOCAL链接
private void Locallink_Click(object sender, EventArgs e)
{
    if (g_handle != (IntPtr)0)
    {
                MessageBox.Show("MotionRT750已链接!", "提示");
    }
    else
    {
                zmcaux.ZAux_FastOpen(5, "", 1000, out g_handle);
                if (g_handle != (IntPtr)0)
                {
                        MessageBox.Show("MotionRT750链接成功!", "提示");
                        timer1.Enabled = true;
                        this.Text = "MotionRT750已链接";
                }
                else
                {
                        MessageBox.Show("控制器链接失败,请检查RT750是否打开!", "警告");
                }
        }
}


2.实现拱形运动

分别设置拱形运动直线段与圆弧段的速度参数,并打开连续插补保证运动速度连续,再计算出二个直线拐角转成圆弧的起始点、圆心、结束点坐标。

//运动轨迹A->B->C->D
float[] PointA = new float[3] { Convert.ToSingle(textBox20.Text), Convert.ToSingle(textBox21.Text), Convert.ToSingle(textBox22.Text) };
float[] PointB = new float[3] { Convert.ToSingle(textBox23.Text), Convert.ToSingle(textBox24.Text), Convert.ToSingle(textBox25.Text) };
float[] PointC = new float[3] { Convert.ToSingle(textBox26.Text), Convert.ToSingle(textBox27.Text), Convert.ToSingle(textBox28.Text) };
float[] PointD = new float[3] { Convert.ToSingle(textBox29.Text), Convert.ToSingle(textBox30.Text), Convert.ToSingle(textBox31.Text) };
//空间圆弧 起始点,结束点,圆心的坐标
float[] PointNum = new float[9];
//临时数据
float[] TempPosData = new float[3];
//直线段速度和圆弧段速度
float LineSpeed = Convert.ToSingle(textBox5.Text);
float CrSpeed = Convert.ToSingle(textBox8.Text);
float Cr = Convert.ToSingle(textBox45.Text);
//设置直线段速度
zmcaux.ZAux_Direct_SetSpeed(g_handle, AxisList[0], LineSpeed);
//打开连续插补
zmcaux.ZAux_Direct_SetMerge(g_handle, AxisList[0], 1);
//运动到A点
zmcaux.ZAux_Direct_MoveAbs(g_handle, 3, AxisList, PointA);
//计算拐角1的相关数据
ZAux_Direct_AutoCham(g_handle, PointA, PointB, PointC, Cr, 100, PointNum);
//运动到拐角1的空间圆弧的起点
TempPosData[0] = PointNum[0];
TempPosData[1] = PointNum[1];
TempPosData[2] = PointNum[2];
zmcaux.ZAux_Direct_MoveAbs(g_handle, 3, AxisList, TempPosData);
//设置空间圆弧的起始速度,限制速度,结束速度
zmcaux.ZAux_Direct_SetStartMoveSpeed(g_handle, AxisList[0], CrSpeed);
zmcaux.ZAux_Direct_SetEndMoveSpeed(g_handle, AxisList[0], CrSpeed);
zmcaux.ZAux_Direct_SetForceSpeed(g_handle, AxisList[0], CrSpeed);
//开始拐角1
zmcaux.ZAux_Direct_MSphericalABSSp(g_handle, 3, AxisList, PointNum[3], PointNum[4], PointNum[5], PointNum[6], PointNum[7], PointNum[8], 1, 0, 0);
//计算拐角2的相关数据
ZAux_Direct_AutoCham(g_handle, PointB, PointC, PointD, Cr, 100, PointNum);
//运动到拐角2的空间圆弧的起点
TempPosData[0] = PointNum[0];
TempPosData[1] = PointNum[1];
TempPosData[2] = PointNum[2];
zmcaux.ZAux_Direct_MoveAbs(g_handle, 3, AxisList, TempPosData);
//设置空间圆弧的起始速度,限制速度,结束速度
zmcaux.ZAux_Direct_SetStartMoveSpeed(g_handle, AxisList[0], CrSpeed);
zmcaux.ZAux_Direct_SetEndMoveSpeed(g_handle, AxisList[0], CrSpeed);
zmcaux.ZAux_Direct_SetForceSpeed(g_handle, AxisList[0], CrSpeed);
//开始拐角2
zmcaux.ZAux_Direct_MSphericalABSSp(g_handle, 3, AxisList, PointNum[3], PointNum[4], PointNum[5], PointNum[6], PointNum[7], PointNum[8], 1, 0, 0);
//运动到D点
zmcaux.ZAux_Direct_MoveAbs(g_handle, 3, AxisList, PointD);






打开RTSys软件示波器观察轨迹

1.打开【RTSys】软件,点击【PCI/Local】的【连接】通讯上MotionRT750。

8.png

2.打开【示波器】工具。

9.png

3.设置示波器参数。数据源选择【DPOS】,编号选择对应的【轴号】,实现【显示】,显示模式选择【XYZ模式】,勾选【连续采集】,触发模式选择【自动触发】,然后点击【启动】按钮。

10.png

4.打开C#例程,连接【链接】,再点击【运动】执行拱形运动,观察示波器轨迹。

11.png
12.png



教学视频可点击→“强实时运动控制内核MotionRT750(四):高速贴装应用中的拱形运动”查看。




完整代码获取地址

代码.png

本次,正运动技术强实时运动控制内核MotionRT750(四):高速贴装应用中的拱形运动,就分享到这里。

更多精彩内容请关注“正运动小助手”公众号,需要相关开发环境与例程代码,请咨询正运动技术销售工程师:400-089-8936。

本文由正运动技术原创,欢迎大家转载,共同学习,一起提高中国智能制造水平。文章版权归正运动技术所有,如有转载请注明文章来源。

二维码.png

正运动技术专注于运动控制技术研究和通用运动控制软硬件产品的研发,是国家级高新技术企业。正运动技术汇集了来自华为、中兴等公司的优秀人才,在坚持自主创新的同时,积极联合各大高校协同运动控制基础技术的研究,是国内工控领域发展最快的企业之一,也是国内少有、完整掌握运动控制核心技术和实时工控软件平台技术的企业。主要业务有:运动控制卡_运动控制器_EtherCAT运动控制卡_EtherCAT控制器_运动控制系统_视觉控制器__运动控制PLC_运动控制_机器人控制器_视觉定位_XPCIe/XPCI系列运动控制卡等等



邮箱留言

Copyright © 2013 正运动技术有限公司 Design by Zmotion 版权所有   粤ICP备13037187号    Powered by www.zmotion.com.cn 运动控制器-运动控制卡

在线咨询