ActivMedia Robotics
a byte value for the selected analog port, analog values in the IOpac are integers, with
resolution to 12 bits. If either bumper is not installed, its reported value can vary.
Table 11. IOpac packet contents
Header integer Exactly 0xFA, 0xFB
Count byte Number of data bytes + 2
Type byte Packet type = 0xF0
N
i
byte Number of digtal input bytes
Digin N
i
bytes Digital input bytes
N
o
byte Number of digital output bytes
Digout N
o
bytes Digital output bytes
N
a
byte Number of A/D values
A/D N
a
ints A/D values 1-Na; 0-2047 (12-bit
resolution) = 0-5 VDC
Checksum inte
g
er Com
p
uted checksum
Pioneer 2 Arm-related SIPs and Commands
Please consult the Pioneer 2 Arm Manual for details.
Performance PeopleBot IRs
Two breakbeam IR sensors sense objects which intrude into the Performance PeopleBot’s
profile, but which may not be otherwise detected by its sonar or tabletop IR sensors. The
left and right IR breakbeams are connected to the User I/O digital input ports ID2 and
ID3, respectively. Normally high (1), the respective input port goes low (0) when an
object breaks the IR transmitter’s beam to its companion receiver.
The left and right tabletop IR detectors on the Performance PeopleBot are connected to
the ID0 and ID1 digital input ports of the User I/O, respectively. Normally high (1), the
digital input port goes low (0) when its respective tabletop IR sensor detects an object
within its range of operation.
The tabletop and breakbeam IR sensor states appear in the standard P2OS Server
Information Packet. Accordingly, to react to the state of an breakbeam or tabletop IR
sensor in a Saphira client, for example, test the state of its respective bit:
#define LFT_TTIR 0x01
#define RGT_TTIR 0x02
#define LFT_BREAKBEAM 0x04
#define RGT_BREAKBEAM 0x08
if (sfRobot.digin & LFT_BREAKBEAM = = 0)
/* Something has triggered the left column breakbeam … */
45