AmigoBot-SH Operations Software
Table 6. AmigoSH motion commands
Rotation
HEAD
(#12)
Turn to absolute heading at SETRV max velocity
DHEAD
(#13),
DCHEAD
(#22)
Turn to heading relative to control point at SETRV max velocity
ROTATE
(#9)
Rotate at SETRV velocity
RVEL
(#21)
Rotate at + (counter-) or – (clockwise) deg/sec up to SETRV max
Translation
VEL
(#11)
Translate forward/reverse at prescribed velocity (SETV maximum)
MOVE
(#8) Translate
distance
at SETV max velocity
Independent Wheel
VEL
2 (#32)
Set velocity for each side of robot
AmigoBot in Motion
When AmigoBot’s controller receives a motion command, it accelerates or decelerates
the robot at the translation
SETA (
command
#5)
and rotation
SETRA
(command #23)
rates until the platform either achieves its
SETV
(command #6) maximum translation and
SETRV
(command #10) maximum rotation speeds (or
VEL2
equivalents), or nears its goal.
Accordingly, rotation headings and translation setpoints are achieved by a trapezoidal
velocity function, which AmigoSH recomputes each time a new motion command is
received.
v
e
l
o
c
i
t
y
time
max velocity
a
c
c
e
l
decel
position
achieved
short m
o v e,
max velocity
not reached
position
achieved
s
t
a
r
t
p
o
s
i
t
i
o
n
Figure 17. AmigoBot’s trapezoidal velocity profile
AmigoSH automatically limits
VEL2-
,
VEL-
, and
RVEL
-specified velocities to previously
imposed, client-modifiable
SETVEL
and
SETRV
maximums, and ultimately by absolute,
platform-dependent, FLASH-embedded constants (
TOP
values). Similarly, the distinct
acceleration and deceleration parameters for both translation and rotation are limited
by FLASH constants. AmigoSH initializes these values upon controller startup or reset from
related FLASH parameters. The speed limits, either from FLASH or when changed by
SETV
or
SETRV
commands, take effect on subsequent commands, not on current translation or
rotation. The maximums revert to their FLASH defaults when disconnected from a client.
28
11
Note that acceleration and deceleration are distinct values, settable via SETA for translation and SETRA for
rotation.