ActivMedia Robotics Operating System
CLIENT COMMANDS
AROS has a structured command format for receiving and responding to directions from a client for control and operation of your ActivMedia robot or the simulator. Client commands are comprised of a
Table 4. AROS/P2OS/PSOS client command packet protocol
COMPONENT | BYTES | VALUE | DESCRIPTION |
|
|
|
|
HEADER | 2 | 0xFA, 0xFB | Packet header; same for client and server |
BYTE COUNT | 1 | N | Number of command/argument bytes plus |
|
|
| Checksum’s two bytes, but not including Byte Count |
|
|
| itself or the header bytes. Maximum of 249. |
COMMAND | 1 | 0 - 255 | Client command number; |
NUMBER |
|
| see Table 7. |
ARGUMENT | 1 | 0x3B or | Required data type of command argument: |
TYPE |
| 0x1B or | positive integer, |
|
| 0x2B | negative or absolute integer, |
|
|
| or string (ARGSTR) |
ARGUMENT | n | data | Command argument; always |
|
|
| containing length prefix |
CHECKSUM | 2 | computed | Packet integrity checksum |
Table 5. AROS/P2OS/PSOS command set
COMMAND | # | ARGS | DESCRIPTION | AROS | P2OS | PSOS |
|
|
| Before Client Connection |
|
|
|
SYNC0 | 0 | none | Start connection. Send in sequence. AROS echoes | 1.0 | 1.0 | 3.x |
SYNC1 | 1 | none | synchronization commands back to client, and |
|
|
|
SYNC2 | 2 | none |
|
|
|
|
|
| After Established Connection |
|
|
|
PULSE | 0 | none | Resets server watchdog | 1.0 | 1.0 | 3.x |
OPEN | 1 | none | Starts the AROS servers | 1.0 | 1.0 | 3.x |
CLOSE | 2 | none | Close servers and client connection | 1.0 | 1.0 | 3.x |
POLLING | 3 | string | Change sonar polling sequence (see text) | 1.0 | 1.0 | 3.9 |
ENABLE | 4 | int | 1=enable; 0=disable the motors | 1.0 | 1.0 | – |
SETA | 5 | sint | Translational acceleration, if positive, or | 1.0 | 1.0 |
|
|
|
| deceleration, if negative; mm/sec/sec |
|
| – |
SETV | 6 | int | Sets maximum translational velocity; mm/sec | 1.0 | 1.0 | 4.8 |
SETO | 7 | none | Resets local position to 0,0,0 origin | 1.0 | 1.0 | 3.x |
MOVE | 8 | sint | Translate (+) forward or | 1.0 | 1.0 | – |
ROTATE | 9 | sint | Rotate (+) counter- or | 1.0 | 1.0 | – |
SETRV | 10 | int | Sets maximum rotational velocity; degrees/sec | 1.0 | 1.0 | 4.8 |
VEL | 11 | sint | Translate at mm/sec forward (+) or backward | 1.0 | 1.0 | 3.x |
HEAD | 12 | sint | Turn to absolute heading; ±degrees (+ = ccw ) | 1.0 | 1.0 | 4.2 |
DHEAD | 13 | sint | Turn relative to current heading; (+) counter- or | 1.0 | 1.0 | 3.x |
|
|
|
|
|
| |
SAY | 15 | string | As many as 20 pairs of duration (20 ms | 1.0 | 1.0 | 4.2 |
|
|
| increments) /tone |
|
|
|
CONFIG | 18 | none | Request configuration SIP | 1.0 | 1.4 | – |
ENCODER | 19 | int | Request one (1), a continuous stream (>1), or stop | 1.0 | 1.4 | – |
|
|
| (0) encoder SIPs |
|
|
|
RVEL | 21 | sint | Rotate at (+) counter- or | 1.0 | 1.0 | 4.2 |
|
|
| degrees/sec |
|
|
|
DCHEAD | 22 | sint | Heading setpoint relative to last setpoint; | 1.0 |
|
|
34