User guide
54
VTB USER GUIDE
Char 0 Command not written in the buffer (buffer full)
1 Command written in the buffer
Notes
Moveto is usually used to interpolate more than 2 axes. The speed vector is distributed on all axes to be interpolated.
When mode=2 it is calculated the presence of a multidimensional edge according to the values in sgl3d. When mode=2
the test of edge is made only on the axis of the working plane and according to the value in sglp. If the comand isn't
written in the BUFFER, we have to wait and repeat otherwise it will be lost.
Approximative reference values of parameter SGL3D
THRESHOLD in DEGREE
VALUE OF SGL3D (min-max)
5
60-90
10
125-175
20
250-350
30
300-500
45
400-700
Example (object name = OBJ)
Used variables:
VectAssi(4) long
Vel long
Test char
'*******************************************************************************
'Fast interpolation of several segments on axis X,Y holding Z and A stopped
'*******************************************************************************
vel=1000
VectAssi(0)=1000 'X
VectAssi(1)=2000 'Y
VectAssi(2)=OBJ.pc(2) 'Z remain stopped
VectAssi(3)=OBJ.pc(3) 'A remain stopped
muovi()
VectAssi(0)=4000 'X
VectAssi(1)=6000 'Y
VectAssi(2)=OBJ.pc(2) 'Z remain stopped
VectAssi(3)=OBJ.pc(3) 'A remain stopped
muovi()
VectAssi(0)=5000 'X
VectAssi(1)=2000 'Y
VectAssi(2)=OBJ.pc(2) 'Z remain stopped
VectAssi(3)=OBJ.pc(3) 'A remain stopped
muovi()
‘ *********************************************************
‘ Movement function waiting if the buffer is full
‘ *********************************************************
Function muovi() as Void
Dim test as Char
Label Move
test=Obj.moveto(vel,3,VectAssi())
if test=0
goto Move
endif
EndFunction