Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 831 of 909
Change Speed on Digital Input
SmartMotors have digital I/O that can be used for many purposes. In this example, a position
move is started, and the speed is increased by 50% if input A goes low.
EIGN(W,0) 'Disable hardware limit IO
KD=10010 'Changing KD value in tuning
F 'Accept new KD value
O=0 'Reset origin
ADT=100 'Set maximum accel/decel
VT=10000 'Set maximum velocity
PT=40000 'Set final position
MP 'Set Position mode
G 'Start motion
WHILE Bt 'Loop while motion continues
IF IN(0)==0 'If input is low
IF VT==10000 'Check VT so change happens once
VT=12000 'Set new velocity
G 'Initiate new velocity
ENDIF
ENDIF
LOOP 'Loop back to WHILE
END
Pulse Output on a Given Position
It is often necessary to fire an output when a certain position is reached. There are many
ways to do this with a SmartMotor.
This example sets I/O B as an output and makes sure that it comes up to 1 by presetting the
output value. After that, the program monitors the encoder position until it exceeds 20000. It
pulses the output and then continues monitoring the position.
Part 3: Examples: Change Speed on Digital Input