MobileRobots Inc.
around values 25-235. Our robot servers let you set realistic position boundaries (
MIN
and
MAX
) and
CENTER
offsets, so that your client-side code is portable from arm to arm. See following sections for
details.
Table 1. Pioneer Arm generic commands
C
ONTROL
M
ODE
C
OMMAND
B
YTES
D
ESCRIPTION
B
OARD
R
ESPONSE
255, 12, 1
Servo Power ON
None
255, 12, 0
Servo Power OFF
None
255, 128
Request version
number
ASCII-encoded version number,
followed by CR, LF9
255, 133
Read digital port
states
0-7 corresponding to ports 0,
1 and 2, followed by CR, LF
255, s, p
Set servo joint s=0-7
to position p=0-255
None
For example, using the generic command to turn the Pioneer Arm fully clockwise around its base
(servo #1), you may send the generic command byte sequence:
255, 1, 255
Similarly, use a three byte command to power the Pioneer Arm servos: The header (255; 0xFF),
command byte 12 (0x0C), followed by a byte value of one to enable, or zero to disable servo power.
Generic Command Communications
The Pioneer Arm’s controller is attached to the
AUX
serial port on your C166, to either the
AUX1
or
AUX2
serial port on your H8S-, or to either the
AUX1,
AUX2,
or
AUX3
serial port on your SH2-based
Pioneer controller.
TTY2
command #42 to send generic commands from your client
software to the Pioneer Arm controller through
AUX1
; command #66 (
TTY3)
for
AUX2
; or command
#60 (
TTY4
) for
AUX3
. Include the Pioneer Arm’s generic command as the integer or string argument.
To retrieve responses from the Pioneer Arm controller using generic commands, use the respective
GETAUX
commands (#43, #67, #61 for
AUX1-3
) and corresponding
SERAUXpac
(types 176, 184, and
200, respectively) server information packet.
Command and packet details are in your robot’s
Operations Manual
. MobileRobots’ ARIA client-
development environment supports these functions, too.
Pioneer Controller Arm Servers
Your robot’s controller has software with advanced control functions for safe and convenient operation
of the Pioneer Arm. These include commands to enable and disable power to the arm’s servos, to
move the arm to a new position—joint-by-joint and each at a controllable speed—and to query for
current arm positions and status. The servers also include safety watchdogs and which act to
minimize power consumption as well as help protect your Pioneer Arm and surroundings from
damage.
Client Commands
P2OS, AROS, and ARCOS all support identical servers for control of the Pioneer Arm. Commands
originate in your client software and thereby require that you establish a client-server connection
between your PC and the robot’s controller. After connecting, your client software must tell the servers
to power the Pioneer Arm’s servos before you can send position commands. Note that the arm always
starts a client-server connection in its
HOME
position and automatically returns to that position when
servo power is set to OFF, including at the termination (
CLOSE
) of a client-server connection session.
9
Carriage return (13; 0x0D) and line-feed (10; 0x0A) characters.
11
10
Depends on physical attachment and ArmPort setting in FLASH. See following chapters for details.