Pioneer 2 Operating System

number of bytes you request via the GETAUX command—up to 200 bytes at a time. P2OS waits to collect the requested number of incoming AUX-port serial bytes before sending the GETAUX packet to the client. Use the GETAUX command with a zero argument to flush the P2OS circular buffer and reset its pointers.

In the code example above, a fictitious command gets sent to a serial device attached to the microcontroller's AUX port and retrieves a 10-byte response from that device (note that ellipses mark the many portions of a complete client that have been deleted for brevity).

ENCODERpac and ENCODER Command

Issue the ENCODER command #19 with an argument of 1 for a single or with an argument of 2 or more for a continuous stream of ENCODERpac (type 144; 0x90) SIPs. Discontinue the packets by sending the ENCODER command #19 with the argument 0.

Table 8. P2OS Encoder Server Information Packet Contents

Header

integer

Exactly 0xFA, 0xFB

Byte Count

byte

Number of data bytes + 2 (checksum)

Left Encoder

integer

Least significant, most significant portion of the

 

integer

current 4-byte raw encoder count from the left drive wheel

Right Encoder

integer

Least significant, most significant portion of the

 

integer

current 4-byte raw encoder count from the left drive wheel

Checksum

integer

Checksum for packet integrity

GRIPPERpac and GRIPREQUEST

To ameliorate a few shortcoming when we transferred connection and control of the P2 Gripper accessory from User I/O to the General I/O bus, P2OS 1.E introduced and we improved the new GRIPPERpac (type=224; 0xE0) packet type and related GRIPREQUEST P2OS command #37 in P2OS 1_F.

Table 9. Gripper packet contents (P2OS 1_F and later)

Header

integer

Exactly 0xFA, 0xFB

Byte Count

byte

Number of data bytes + 2 (checksum)

Type

byte

Packet type = 0xE0

HasGripper

byte

Gripper type: 0=none; 1=User; 2=General I/O

Grip_state

byte

See Table 12 and P2 Gripper Manual

Grasp_Time

byte

See P2 Gripper Manual

Checksum

integer

Computed checksum

Normally disabled, your client program must request one (command argument 1) or a continuous stream (command argument > 1) of Gripper packets. Send GRIPREQUEST with the argument value 0 to stop continuous packets.

PLAYLISTpac and PLAYLIST Command

Unlike its Pioneer and PeopleBot cousins, the AmigoBot mobile robot has onboard sound reproduction hardware and software that includes a playlist of contents. To support the ActivMedia Robotics Basic Suite that includes all ActivMedia’s robots, we’ve added the PLAYLISTpac (type = 208; 0xD0) and PLAYLIST request command #91 to P2OS 1.E. We document the command and packet here for completeness, but they have no effect on the operation or performance of your Pioneer 2 or PeopleBot Mobile Robot.

42

Page 48
Image 48
Pioneer 2 / PeopleBot manual ENCODERpac and Encoder Command, GRIPPERpac and Griprequest, Checksum Integer Computed checksum

2 / PeopleBot specifications

Pioneer 2, also known as PeopleBot, is an advanced mobile robot platform heralded for its versatile design and robust capabilities. Developed by the renowned robotics company Adept Technology, Pioneer 2 has become a staple in the field of mobile robotics, widely utilized for research, education, and practical applications in various industries.

One of the standout features of Pioneer 2 is its exceptional mobility. The robot is equipped with differential steering, allowing it to navigate complex environments with precision. Its compact and sturdy chassis enables it to traverse a variety of terrains, making it suitable for indoor and outdoor exploration. This mobility is further enhanced by an adaptable wheel configuration, allowing for smooth movement even over obstacles.

In terms of technologies, Pioneer 2 is outfitted with an array of sensors that facilitate autonomous navigation and obstacle avoidance. These sensors include laser range finders, infrared sensors, and bumpers, which work in tandem to map the surrounding environment and detect potential hazards. This capability is critical for applications in areas such as warehouse automation or reconnaissance tasks, where safe navigation is paramount.

Pioneer 2 also supports extensive software frameworks, notably the Robot Operating System (ROS). This compatibility allows researchers and developers to leverage a vast library of tools and algorithms, expediting the process of programming and deploying robotic applications. Additionally, the platform can be integrated with various payloads, such as cameras or grippers, expanding its functionality further.

Another significant characteristic of Pioneer 2 is its user-friendly design. The robot comes with an easy-to-use programming interface that empowers users with varying levels of expertise to engage with the technology. Educational institutions often employ Pioneer 2 in robotics courses to provide students with hands-on experience in programming and operating robotic systems.

Powering Pioneer 2 is a rechargeable battery system that ensures extended operation times. This feature is particularly advantageous for fieldwork applications where connectivity to a power source may not be readily available. Importantly, the robot’s modular design facilitates maintenance and upgrades, allowing users to keep their systems current with advances in technology.

Overall, Pioneer 2 (PeopleBot) exemplifies innovation in mobile robotics with its outstanding mobility, advanced sensing technologies, compatibility with leading software frameworks, and a design focused on ease of use and adaptability. It continues to be a preferred choice for researchers, educators, and professionals in the rapidly evolving landscape of robotics.