AmigoBot-SH Operations Software
Keeping the Beat—PULSE
An AmigoSH safety watchdog expects that, once connected, your robot receives at
least one client command packet from the attached PC every
watchdog
seconds, as
defined in your robot’s FLASH (default is two seconds). Otherwise, it assumes the client-
server connection is broken and stops the robot.
Some clients—ARIA-based ones, for instance—use the good practice of sending a
PULSE
client command #0 (250, 251, 3, 0, 0, 0) just after
OPEN
. And if your client application will
be otherwise distracted for some time, periodically issue the
PULSE
command to let your
robot server know that your client is indeed alive and well. It has no other effect.
If the robot shuts down due to lack of communication with the client, it will revive upon
receipt of a client command and automatically accelerate to the last-specified speed
and heading motion setpoints.
Closing the Connection—CLOSE
To close the client-server connection, which automatically disables the motors and other
server functions like sonar, simply issue the client
CLOSE
command #2 (250, 251, 3, 2, 0, 2).
Once connected, send the
ENABLE
command
or press the black
Motors/Test
button
to enable your AmigoBot’s motors.
Most of the controller’s operating parameters return to their FLASH-based default values
upon disconnection with the client.
S
ERVER
I
NFORMATION
P
ACKETS
Once
OPEN
ed, AmigoSH automatically and repeatedly sends a packet of information
over the
HOST
serial port back to the connected client. The standard AmigoSH SIP
informs the client about a number of operating states and readings, using the order and
data types described in the nearby Table.
AmigoSH also supports several additional SIP types. See following sections for details.
C
LIENT
C
OMMANDS
AmigoSH has a structured command format for receiving and responding to directions
from a client for control and operation of your robot. Client commands are comprised of
a one-byte command number optionally
followed, if required by the command, by a
one-byte description of the argument type and then the argument value.
9
With earlier OSes, the changes persisted between sessions and reverted to the FLASH defaults only after the
controller was reset.
24