Activmedia robots in motion, Platform dependent and independent variables – Pioneer 2TM User Manual

Page 45

Advertising
background image

ActivMedia Robotics

ActivMedia Robots in Motion

ActivMedia robots use position, as opposed to velocity, motion controls to translate the

platform a certain distance and turn it to a particular heading. To achieve constant
translational (VEL), rotational (ROTATE), or independent-wheel (VEL2) velocities, the

servers simply set the target position well ahead of the robot’s current position.

When the robot controller receives a motion command, it accelerates or decelerates
the robot at the translational SETA (#5) (TR and VEL2 modes) and rotational SETRA (#23;
TR mode only) rates until the platform either achieves its SETV (#6) maximum translational

and SETRV (#10) maximum rotational speeds, or nears its goal. Accordingly, rotational

headings and translational setpoints are achieved by a trapezoidal velocity function,

which AROS recomputes each time a new motion command is received.

20

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

v

e

l

o

c

i

t

y

not r

e

a

c

h

e

d

p

o

s

i

t

i

o

n

a

c

h

i

e

v

e

d

start

position

Figure 17. ActivMedia robot’s trapezoidal velocity profile

AROS 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. Similarly, the distinct acceleration

and deceleration parameters for both translation and rotation are limited by FLASH
constants. AROS 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 previously established
velocity or heading setpoints. And the maximums persist across client-server connection

sessions until the controller is reset.

Note that the E_STOP command #55 or the STOP button that is found on some

ActivMedia robots override deceleration and immediately stop the robot in the shortest

distance and time possible. Accordingly, the robot brakes to zero translational and
rotational velocities with very high deceleration and remains stopped until it receives a

subsequent translational or rotational velocity command from the client or until the STOP

button is reset. (See E_STOP and E_STALL later in this chapter.)

Platform Dependent and Independent Variables

All client-side motion command arguments use robot-independent units of measure, in

millimeters or degrees. AROS converts these command arguments into robot-

dependent, wheel encoder-related motion values using two, user-settable parameters:
ticksmm, for translation, and revcount for rotation.

39

20

Note that acceleration and deceleration are distinct values, settable via SETA for translation and SETRA for

rotation.

Advertising
This manual is related to the following products:

3TM