
Pioneer LX User's Guide, Rev. A
Page 114 of 125
Chapter 10: Communication Packet Protocol
{
c += ((unsigned char)packetBuf[i]<<8) | (unsigned char)packetBuf[i+1];
c = c & 0xffff;
n -= 2;
i += 2;
}
if (n > 0)
c = c ^ (int)((unsigned char) packetBuf[i]);
ARIA automatically verifies packet checksums when receiving and parsing robot packets from
the robot controller, and automatically provides correct checksums with client commands sent
to the robto controller.
10.2 Server Information Packets
Once a client establishes a connection and sends the OPEN command, the robot controller
automatically and periodically sends a set of Server Information Packets (SIPs) over the con-
nection back to the connected software. The SIP period is 100ms (10Hz. One type of packet,
the Standard SIP (also referred to just as “SIP”, or as “Motors Packet”), is always sent. In addi-
tion to the Standard SIP, other types of information packets may be requested via client com-
mands to include accessory or additional data. These packets are sent immediately before or
after the Standard SIP. The Standard SIP has priority, it will be sent first on each cycle.
ARIA contains classes which serve as interfaces to the data received by these packets. See the
ARIA reference documentation and examples for details.
10.3 Standard SIP contents
“byte” indicates a single byte value (usually unsigned). “int” indicates a signed 16-bit (2-byte)
integer value (LSB). “uint” indicates an unsigned 16-bit (2-byte) integer value (LSB).
Some items in the SIP are provided by other MobileRobots platforms but are not relevant or
implemented in Pioneer LX (these are shown in grey italic in the table below).
The standard SIP is automatically received and the data stored by ARIA’s ArRobot class.
File
Size
Description
ARIA Function
Packet
Header
2
bytes
Exactly 0xFA (250), 0xFB (251)
Packet Byte
Count
byte Number of packet bytes that follow,
which includes 2 bytes for checksum
(does not include preceding header
or this byte count)
Packet
Type
byte 0x32 when motors stopped or 0x33
when robot moving.
XPOS
int
Estimated robot position coordinates
(from 0,0 at robot startup) in mil-
limeters (DistConvFactor
1
= 1.0).
ArRobot::getX(), ArRobot::getPose()
with pose tranform applied.
ArRobot::getRawEncoderPose()
without transformation.
YPOS
int
ArRobot::getY(), ArRobot::getPose()
with pose tranform applied.
1
ARIA stores conversion factors in its robot parameter files for different types of robots in robot
parameter files and automatically applies the conversion when SIP is received
Содержание Pioneer LX
Страница 1: ...User s Guide Rev A November 2013...
Страница 16: ......
Страница 32: ......
Страница 36: ......
Страница 48: ......
Страница 60: ......
Страница 82: ......
Страница 103: ...Pioneer LX User s Guide Rev A Page 103 of 125 Chapter 8 Maintenance Figure 8 16 Top of Laser Rangefinder...
Страница 108: ......
Страница 125: ...10 Colrumbia Drive Amherst NH 03450 USA Phone 1 603 881 7960 www mobilerobots com...