TRIO-basic指令--MOVEMODIFY

Syntax:

 MOVEMODIFY(position) 

Parameters:

position:

Absolute position for the current move to complete at.   当前移动的绝对值位置一定要完成

Description:

MOVEMODIFY will change the absolute end position of a single axis MOVE , MOVEABS , MOVESP , MOVEABSSP or MOVEMODIFY that is in the last position in the movement buffer. If there is no motion command in the movement buffers or the last movement is not a single axis linear move then MOVEMODIFY is loaded.

MOVEMODIFY将改变单轴移动的绝对末端位置,MOVEABS、MOVESP、MOVEABSSP或MOVEMODIFY位于移动缓冲区中的最后一个位置。如果运动缓冲区中没有运动命令,或者最后一次运动不是单轴线性移动,则加载MOVEMODIFY。

If the change in end position requires a change in direction the move in MTYPE is CANCEL ed. This will use DECEL unless FASTDEC has been specified.

 

If there are multiple buffered linier moves the MOVEMODIFY will only act on the command in front of it in the buffer. 

 如果有多个缓存运动指令MOVEMODIFY将只对缓冲区最后的一个指令执行操作

MOVEMODIFY(position 位置)   个人理解:这条指令只对 MOVE , MOVEABS , MOVESP , MOVEABSSP  起作用,当他们在运动过程中遇到MOVEMODIFY的时候则会取消自身运动,执行MOVEMODIFY里面的条件。

code:

'指令测试----MOVEMODIFY
BASE(10) '定义轴
UNITS = 10 '电机转一圈的单位
SPEED = 5 '当前的速度
ACCEL=100 '加速度
DECEL=100 '减速度
CREEP=2 '爬行速度(后期有示例测试)
FE_LIMIT=999 '报警限位
FE_RANGE=999 '报警提示
SERVO=1 '闭环

'循环执行
WHILE TRUE
    IF IN(10) = ON THEN
        'OFFPOS = - DPOS AXIS(10) '重新置位
        MOVEMODIFY(MPOS AXIS(10)+100)AXIS(10) '当前位置运动置100
    ENDIF
WEND

  

Examples:

若没有清除位置,会走绝对值位置至100.

以上是对此指令的简单测试,若有问题希望大家在评论区多多留言,共同努力进步。

转载于:https://www.cnblogs.com/httpcc/p/10666131.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值