TRIO-basic指令--MOVEMODIFY

Syntax:

 MOVEMODIFY(position) 緩存

Parameters:

position:less

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

MOVEMODIFY將改變單軸移動的絕對末端位置,MOVEABS、MOVESP、MOVEABSSP或MOVEMODIFY位於移動緩衝區中的最後一個位置。若是運動緩衝區中沒有運動命令,或者最後一次運動不是單軸線性移動,則加載MOVEMODIFY。spa

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

 

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

 若是有多個緩存運動指令MOVEMODIFY將只對緩衝區最後的一個指令執行操做ip

MOVEMODIFY(position 位置)   我的理解:這條指令只對 MOVE , MOVEABS , MOVESP , MOVEABSSP  起做用,當他們在運動過程當中遇到MOVEMODIFY的時候則會取消自身運動,執行MOVEMODIFY裏面的條件。ci

code:it

'指令測試----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.

以上是對此指令的簡單測試,如有問題但願你們在評論區多多留言,共同努力進步。

相關文章
相關標籤/搜索