Waitendmove()和$Waitendmove()使用心得
这是两个部分,程序运行部分和运动堆栈部分,waitendmove是两个部分进行交互的一个函数。
一般情况下waitendmove()速度会降到0,相当于blend等于off.
代码:
begin
cls()
userPage()
title("测试WaitEndMove函数")
resetMotion()
mNomSpeed.tvel=500
$setBoxcarFreq(10,10)
wait(isPowered())
//往前三秒
movej(jJ[0],tTool,mNomSpeed)
waitEndMove()
gotoxy(0,0)
put("往前0.9秒开始计时")
l_nNum=clock()
movej(jJ[1],tTool,mNomSpeed)
$waitEndMove(-0.9)
delay(1)
gotoxy(0,1)
put("先前0.9秒运行结束:"+toString(".3",clock()-l_nNum))
//正常
movej(jJ[0],tTool,mNomSpeed)
waitEndMove()
gotoxy(0,2)
put("开始计时")
l_nNum=clock()
movej(jJ[1],tTool,mNomSpeed)
waitEndMove()
delay(1)
gotoxy(0,3)
put("运行结束:"+toString(".3",clock()-l_nNum))
//往后三秒
movej(jJ[0],tTool,mNomSpeed)
waitEndMove()
gotoxy(0,4)
put("往后0.9秒开始计时")
l_nNum=clock()
movej(jJ[1],tTool,mNomSpeed)
$waitEndMove(0.9)
delay(1)
gotoxy(0,5)
put("往后0.9秒运行结束:"+toString(".3",clock()-l_nNum))
end
效果:
说明:
1.waitendmove(num time) 时间单位是秒。
2.通过时间来控制而非通过moveid来控制。
3.时间的值与boxcar相关。