0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

EtherCAT总线运动控制器的直线插补解析

伺服与运动控制 来源:伺服与运动控制 作者:伺服与运动控制 2022-10-17 16:42 次阅读

本节课程主要通过几个部分讲解直线插补,分别为EtherCAT总线运动控制器介绍、运动控制器直线插补的原理、功能、实现方式和例程仿真演示。

01、XPLC864E2介绍

XPLC864E2是正运动技术推出的一款多轴经济型EtherCAT总线运动控制器,XPLC系列运动控制器可应用于各种需要脱机或联机运行的场合。

体积小,通讯功能全,支持RS232串口、RS485串口、网口、CAN总线、EtherCAT总线连接外设,多网口通道通过交换机扩展。

XPLC864E2支持脉冲轴和总线轴混合使用,总轴数为8,除了带EtherCAT接口之外,输出口可配置为8个脉冲信号输出,另带两路编码器输入,由输入口配置。

通过扩展最多支持12轴直线插补、电子凸轮、电子齿轮、同步跟随、虚拟轴设置等功能。

02、直线插补原理

直线插补算法采用数据采样法,插补用小段直线来逼近给定轨迹,插补输出的是下一个插补周期内各轴要运动的距离,不需要每走一个脉冲当量就插补一次,可达到很高的进给速度。

数据采样法原理是采用时间分割思想,根据进给速度f和插补周期t,将廓型曲线分割成一段段的轮廓步长l,l=ft,然后计算出每个插补周期参与插补运动的每个轴的坐标增量。

03、直线插补功能

一、直线插补特点

直线插补运动通过BASE指令选择轴号/轴组,控制多轴联动,完成直线运动。

主轴是BASE选择的第一个轴,插补运动轴参数UNITS、SPEED等均采用主轴的参数,发送MOVE直线插补运动指令,插补运动在主轴的运动缓冲区中按顺序执行,CANCEL指令取消插补运动,实现急停。

1.支持16轴直线插补运动

base(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)

2.支持多通道同时插补

BASE(0,1)

MOVE(100,200)

BASE(2,3,4)

MOVE(30,40,50)

二、插补运动参数计算

以二轴直线插补为例:轴0和轴1两轴参与直线插补运动,如下图。

二轴直线插补运动从平面的A点运动到B点,XY轴同时启动,并同时到达终点,设置轴0的运动距离为∆X,轴1的运动距离为∆Y,主轴是BASE的第一个轴(此时主轴为轴0),插补运动参数采用主轴的参数。

若插补主轴运动速度为S(主轴轴0的设置速度),各个轴的实际速度为主轴的分速度,不等于S,此时:

插补运动的距离:X=[(∆X)2+(∆Y)2]½

轴0实际速度:S0=S×∆X/X

轴1实际速度:S1=S×∆Y/X

04、直线插补实现

XPLC864E2内置直线插补算法,支持8个EtherCAT总线轴联合直线插补,可扩展支持12轴插补,采用MOVE直线插补指令,便可轻松高效完成插补运动。

一、直线插补相关指令

1.MOVE发送脉冲给驱动器,实现直线插补运动。

语法:

MOVE(distance1 [,distance2[,distance3 [,distance4.。.]]])

MOVEABS(distance1 [,distance2 [,distance3 [,distance4.。.]]])

MOVESP(distance1 [,distance2 [,distance3 [,distance4.。.]]])

MOVEABSSP(distance1 [,distance2 [,distance3 [,distance4.。.]]])

2.BASE指令选择参与插补的轴号,即MOVE运动发送给哪些轴。

语法:BASE(axis1 [,axis 2 [,axis 3 [,axis 4.。.]]])

3.直线插补运动速度比例自由控制,当前速度= SPEED*SPEED_RATIO。

语法:SPEED_RATIO(轴号) = value

4.运动暂停与恢复,MOVE_PAUSE暂停,MOVE_RESUME恢复运动。

语法:MOVE_PAUSE(mode)

5.运动取消,轴/轴组减速停止,CANCEL(2)为急停,RAPIDSTOP(2)为全部轴急停。

语法:CANCEL(mode) AXIS(主轴),RAPIDSTOP(mode)

二、直线插补类型

1.直线插补有以下三种形式可选:

(1)MOVE相对运动指令插补运动的距离参数为与当前插补起点的相对距离,采用SPEED速度。(2)MOVEABS绝对运动指令插补运动的距离参数为相对于原点的绝对距离,在相对运动指令后方加上ABS后缀,采用SPEED速度。(3)MOVESP/MOVEABSSP运动指令带SP的指令运动速度采用FORCE_SPEED强制速度参数运动,而不是SPEED参数,在相对运动指令或绝对运动指令后方加上SP后缀即可。FORCE_SPEED参数能进入运动缓冲区,方便实现动态变速。2.三类运动形式的区别采用下方例子展开说明:(1)相对运动例子

RAPIDSTOP(2)

WAIT IDLE(0)

WAIT IDLE(1)

BASE(0,1)

DPOS=0,0

ATYPE=1,1

UNITS=100,100

SPEED=100,100 ‘运动速度

ACCEL=1000,1000

DECEL=1000,1000

FORCE_SPEED=150,150 ’SP指令速度

SRAMP=100,100 ‘S曲线

TRIGGER ’自动触发示波器

MOVE(200,150) ‘第一段终点(200,150)

MOVE(100,120) ’第二段终点(300,270)

END

(2)绝对运动例子

RAPIDSTOP(2)

WAIT IDLE(0)

WAIT IDLE(1)

BASE(0,1)

DPOS=0,0

ATYPE=1,1

UNITS=100,100

SPEED=100,100 ‘运动速度

ACCEL=1000,1000

DECEL=1000,1000

SRAMP=100,100 ’S曲线

TRIGGER ‘自动触发示波器

MOVEABS(200,150) ’第一段

MOVEABS(100,120) ‘第二段运动到绝对位置(100,120)

END

(3)SP运动指令例子

RAPIDSTOP(2)

WAIT IDLE(0)

WAIT IDLE(1)

BASE(0,1)

DPOS=0,0

ATYPE=1,1

UNITS=100,100

SPEED=100,100 ’运动速度

ACCEL=1000,1000

DECEL=1000,1000

FORCE_SPEED=150,150 ‘SP指令速度

SRAMP=100,100 ’S曲线

TRIGGER ‘自动触发示波器

MOVE(200,150) ’第一段相对运动,速度100

MOVESP(100,120) ‘第二段SP相对运动,速度150

END

三、MOVESP动态变速

MOVESP直线插补运动采用FORCE_SPEED设置的速度运动,并且支持STARTMOVE_SPEED自定义每段SP运动的开始速度,ENDMOVE_SPEED自定义每段SP运动的结束速度,这两个参数不使用时请设置较大值。

例子:

RAPIDSTOP(2)

WAIT IDLE(0)

WAIT IDLE(1)

BASE(0,1) ’选择XY

DPOS = 0,0

MPOS = 0,0

ATYPE=1,1 ‘脉冲方式步进或伺服

UNITS = 100,100 ’脉冲当量

SPEED = 100,100

ACCEL = 200,200

DECEL = 200,200

SRAMP=100,100 ‘S曲线

TRIGGER

’第一段

FORCE_SPEED = 50 ‘第一段速度50

MOVESP(40,40)

’第二段

FORCE_SPEED = 60 ‘第二段速度60

MOVESP(50,50)

’第三段

FORCE_SPEED = 80 ‘第三段速度80

MOVESP(60,60)

END

速度变化曲线:从速度为0开始运动,完成三段直线插补运动,第一段插补的运动速度50,第二段运动速度60,,第三段运动速度80。

四、直线插补的速度倍率控制

直线插补运动中支持SPEED_RATIO设置当前运动速度的比例,使得当前运动速度=SPEED* SPEED_RATIO,指令发送立即生效,故可借助此命令实现动态变速。

例子:

RAPIDSTOP(2)

WAIT IDLE

BASE(0,1) ’选择轴0,1

DPOS=0,0

UNITS=1000,1000

SPEED = 100,100 ‘速度100units/s

ACCEL = 1000,1000

DECEL = 1000,1000

SRAMP = 50,50

TRIGGER

SPEED_RATIO = 1 ’速度比例为1,速度100

MOVE(100,120) ‘直线插补

DELAY(500) ’等待0.5s

SPEED_RATIO = 2 ‘速度200

WAIT UNTIL REMAIN《50 ’等待剩余距离小于50

SPEED_RATIO = 0.5 ‘速度降为50

WAIT IDLE

SPEED_RATIO=1

END

速度变化曲线:

五、直线插补运动暂停与恢复

MOVE_PAUSE运动暂停适用于插补运动,有以下几种模式:0(缺省)暂停当前运动。

20170513固件版本增加此功能

例子:

BASE(0,1) ’选择轴0,1

DPOS=0,0

UNITS=1000,1000

SPEED = 100,100 ‘速度100units/s

ACCEL = 1000,1000

DECEL = 1000,1000

SRAMP = 50,50

TRIGGER

MOVE(100,100) ’当前运动

MOVE(50,50) ‘缓冲运动

MOVE_PAUSE(1) ’模式1,当前运动完成暂停

DELAY(2000)

MOVE_RESUME ‘恢复运动,缓冲运动开始执行

END

运动曲线如下图:

05直线插补例程

一、两轴连续插补完成五角星轨迹

’总线初始化使能EtherCAT总线驱动器,脉冲型驱动器OP打开使能。

BASE(0,1)

UNITS=10000,10000

SPEED=100,100

ACCEL=1000,1000

DECEL=1000,1000

SRAMP=100,100

DPOS=0,0

MPOS=0,0

TRIGGER ‘自动触发示波器

’五角星轨迹

MOVEABS(1.4695, 1.0676)

MOVEABS(2.9389, 0.0000)

MOVEABS(2.3776, 1.7275)

MOVEABS(3.8471, 2.7951)

MOVEABS(2.0307, 2.7951)

MOVEABS(1.4695, 4.5225)

MOVEABS(0.9082, 2.7951)

MOVEABS(-0.9082, 2.7951)

MOVEABS(0.5613, 1.7275)

MOVEABS(0.0000, 0.0000)

END

示波器采样运动随时间变化的波形:

示波器采样两轴插补轨迹:

shn


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    16191

    浏览量

    177356
  • CAN总线
    +关注

    关注

    145

    文章

    1936

    浏览量

    130621
  • 总线
    +关注

    关注

    10

    文章

    2866

    浏览量

    87974

原文标题:EtherCAT总线运动控制器中简单易用的直线插补

文章出处:【微信号:伺服与运动控制,微信公众号:伺服与运动控制】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    脉冲全闭环EtherCAT运动控制器的固件升级

    固件是常用功能。推荐优先使用最新的RTSys软件。 本文以ZMC406R-V2运动控制器为例给大家介绍正运动固件升级的多种方式。 ZMC406R-V2 6轴总线
    的头像 发表于 11-07 10:58 136次阅读
    脉冲全闭环<b class='flag-5'>EtherCAT</b><b class='flag-5'>运动</b><b class='flag-5'>控制器</b>的固件升级

    SSI绝对值编码EtherCAT运动控制器中的应用

    SSI绝对值编码EtherCAT运动控制器中的应用
    的头像 发表于 10-09 10:13 431次阅读
    SSI绝对值编码<b class='flag-5'>器</b>在<b class='flag-5'>EtherCAT</b><b class='flag-5'>运动</b><b class='flag-5'>控制器</b>中的应用

    BissC绝对值编码EtherCAT运动控制器中的应用

    BissC多圈绝对值编码EtherCAT运动控制器中的应用!
    的头像 发表于 07-24 10:02 497次阅读
    BissC绝对值编码<b class='flag-5'>器</b>在<b class='flag-5'>EtherCAT</b><b class='flag-5'>运动</b><b class='flag-5'>控制器</b>中的应用

    EtherCAT运动控制器与PLC的区别

    在工业自动化领域,EtherCAT运动控制器和PLC(Programmable Logic Controller,可编程逻辑控制器)都是不可或缺的核心设备。它们各自具有独特的功能和优势
    的头像 发表于 06-12 15:47 767次阅读

    什么是EtherCAT运动控制器?它有哪些特点?

    、灵活的特点,为现代工业自动化系统提供了强有力的支持。本文将详细解析EtherCAT运动控制器的概念、特点、应用场景以及技术细节,旨在为读者提供全面而深入的了解。
    的头像 发表于 06-12 15:43 710次阅读

    多轴高性能EtherCAT总线运动控制器ZMC408CE硬件介绍

    ZMC408CE是正运动推出的一款多轴高性能EtherCAT总线运动控制器,具有EtherCAT
    发表于 04-28 12:40 668次阅读
    多轴高性能<b class='flag-5'>EtherCAT</b><b class='flag-5'>总线</b><b class='flag-5'>运动</b><b class='flag-5'>控制器</b>ZMC408CE硬件介绍

    运动控制卡/运动控制器的ZCAN总线ZMIO310扩展模块使用

    运动控制卡/运动控制器的ZCAN总线ZMIO310扩展模块使用
    的头像 发表于 04-11 11:46 626次阅读
    <b class='flag-5'>运动</b><b class='flag-5'>控制</b>卡/<b class='flag-5'>运动</b><b class='flag-5'>控制器</b>的ZCAN<b class='flag-5'>总线</b>ZMIO310扩展模块使用

    EtherCAT运动控制器在LabVIEW中的运动控制与实时数据采集

    的一款多轴高性能EtherCAT总线运动控制器,具有EtherCAT、EtherNET、RS232、CAN和U盘等通讯接口,ZMC系列
    的头像 发表于 04-08 11:45 856次阅读
    <b class='flag-5'>EtherCAT</b><b class='flag-5'>运动</b><b class='flag-5'>控制器</b>在LabVIEW中的<b class='flag-5'>运动</b><b class='flag-5'>控制</b>与实时数据采集

    EtherCAT运动控制器在ROS上的应用(下)

    运动技术动态链接库环境配置以及EtherCAT运动控制器在ROS下的单轴运动
    的头像 发表于 03-13 14:54 518次阅读
    <b class='flag-5'>EtherCAT</b><b class='flag-5'>运动</b><b class='flag-5'>控制器</b>在ROS上的应用(下)

    EtherCAT运动控制器在ROS上的应用(上)

    本文以正运动技术EtherCAT运动控制器ZMC432和ZMC408CE为例,介绍正运动技术运动
    的头像 发表于 03-06 11:47 1139次阅读
    <b class='flag-5'>EtherCAT</b><b class='flag-5'>运动</b><b class='flag-5'>控制器</b>在ROS上的应用(上)

    【正运动】高速高精,超高实时性的PCIe EtherCAT实时运动控制卡 | PCIE464

    EtherCAT总线运动控制卡,可选6-64轴运动控制,支持8路高速数字输入,8路高速数字输出
    发表于 01-24 09:48

    凌华科技基于软件控制EtherCAT运动控制器

    SuperCAT是凌华科技打造的基于软件控制EtherCAT运动控制器,其核心的控制软件来自于凌华二十多年
    的头像 发表于 01-09 11:57 849次阅读
    凌华科技基于软件<b class='flag-5'>控制</b>的<b class='flag-5'>EtherCAT</b><b class='flag-5'>运动</b><b class='flag-5'>控制器</b>

    EtherCAT总线运动控制的优势主要体现在哪?

    。利用EtherCAT技术的优异性能,可以实现用传统现场总线系统所无法实现的控制方法。 正运动技术的ZMC464运动
    发表于 12-13 11:37