Pioneer 2 / PeopleBot manual Server Information Packets, Client Commands

Page 38

Pioneer 2 Operating System

For some operations, however, the data do not decay as rapidly: Some commands are not overly time-sensitive—for example, those that perform such housekeeping functions as changing the sonar polling sequence. It would be useful to have a reliable packet protocol for these operations, and we are considering this for a future release of the server interface.

In the meantime, the ActivMedia Robotics client-server interface provides a simple means for dealing with ignored command packets: Most of the client commands alter state variables in the server. By examining those values in the server information packet, client software may detect ignored commands and re-issue them until achieving the correct state.

Server Information Packets

Like its Pioneer 1 PSOS predecessor, P2OS automatically sends a packet of information over the Host serial communication port to a connected client every 100 milliseconds.17 The standard P2OS Server Information Packet (SIP) informs the client about a number of operating states and readings, using the order and data types described in Table 4.

P2OS also supports several additional server information packet types, extending the capabilities of the Pioneer 2 and PeopleBot robots. These include an “alternative” SIP that currently is not supported by Saphira or ARIA.18 See following sections in this chapter for a description of the extended server information packet types.

Client Commands

P2OS has a structured command format for receiving and responding to directions from a client for control and operation of your ActivMedia robot or its simulator.

Table 5. P2OS client command packet

Component

Bytes

Value

Description

 

 

 

 

Header

2

0xFA,

Packet header; same for client and server

 

 

0xFB

 

Byte Count

1

N + 2

Number of following command bytes plus

 

 

 

Checksum’s two bytes, but not including Byte

 

 

 

Count. Maximum of 200.

Command

1

0 - 255

Client command number;

Number

 

 

see Table 4-4

Argument Type

1

 

Required data type of command argument:

(command

 

0x3B or

positive integer (sfARGINT),

dependent)

 

0x1B or

negative integer or absolute value (sfARGNINT), or

 

 

0x2B

string (sfARGSTR)

Argument

n

data

Command argument; integer or string

(command dependent)

 

 

 

Checksum

2

computed

Packet integrity checksum

The number of client commands you may send per second depends on the Host serial baud rate, average number of data bytes per command, synchronicity of the communication link, and so on. Commands are processed at a maximum rate of one per millisecond, although the P2OS servers may not be up to the task of managing a deluge of commands.

17Or 50 milliseconds. Read on.

18Indeed, if enabled, the alternative SIP apparently will “break” the client software. Read carefully.

32

Image 38
Contents Pioneer 2 / PeopleBot TM Page Important Safety Instructions Table of Contents Pioneer 2 Operating System Appendix C Basic Components all shipments IntroductionRobot Package Optional Components and Attachments partial listSoftware Additional ResourcesUser-Supplied Components / System Requirements NewsgroupsSupport Support@activmedia.comWhat Is Pioneer? Client SoftwareHttp//robots.activmedia.com ActivMedia Robotics Basic SuiteAria SaphiraPioneer 2 and PeopleBot Pioneer LegacyPioneer Page Modes of Operation Main Components Specifications & ControlsPhysical Characteristics Decks and Console Pioneer 2-AT Console and hinged DeckBody, Nose, and Accessory Panels Sonar Arrays with Gain Adjustment Motors and Position Encoders Batteries and PowerElectronics Controls, Ports, and Indicators Liquid-Crystal Display & Contrast Adjustment Reset and MotorsSerial PeopleBot Sensors and Emergency Stop Safety Watchdogs and ConfigurationPioneer 2 Arm-related SIPs and Commands Quick Start Preparative AssemblySaphira Client Installation Http//robots.activmedia.comSET SAPHIRA=C\Saphira\ver62 Saphira Client Start-UpRobot Cold Start-Up Export DISPLAY=remotecomputer0Starting Client-Server Communications Successful ConnectionOperating the Saphira Demonstration Client ConnectedQuickstart Troubleshooting Quick Start Joydrive Operation Joydrive and Self-TestsJoystick Connection Press again to begin tests Engaging Self-TestsMotors Test Left forward 13.2Gripper Sonar TestBumpers CompassUser PWMs Digin and Digout TestAnalog Tests Digin DigoutPioneer 2 Operating System Communication Packet ProtocolPacket Checksum Packet ErrorsPacket Data Types Name Data Type Description Client Commands Server Information PacketsBefore Client Connection Client Command Argument Types PtuposProgramming P2OS Saphira Client Command SupportAutoconfiguration Establishing a Client-Server Connection-SYNCClosing the Connection-CLOSE Movement CommandsKeeping the Beat-PULSE Pioneer in Motion PID ControlsSonar Position IntegrationEstop and Estall SfRobotComInt44,1Packet Processing CONFIGpac and Config CommandExtended Packets SERAUXpac and Getaux GRIPPERpac and Griprequest ENCODERpac and Encoder CommandPLAYLISTpac and Playlist Command Checksum Integer Computed checksumInput / Output I/O TCM2pac and TCM2 CommandDIGIN, TIMER, and Adsel SfSMessageDigin is %i,sfRobot.diginDigout and Psupos IOpac and IorequestPerformance PeopleBot IRs Installing the P2OS Utilities Updating & Reconfiguring P2OSWhere to Get P2OS Software Updating P2OSDownload Troubleshooting Enable FlashPut Microcontroller into Download Mode Run p2osdlChanging Configuration Parameters Configuring P2OS Operating ParametersSteps 1-3 Preparing for Configuration Run p2oscfEditing P2OS Parameters Save C\p2os\myP2DX Saving and RestoringArm Parameters Keyword PID Parameters Encoder and RevcountCalibration Tools revcountcal and compasscal Parameter DXe Performance PBCompasscal /dev/ttyS3 Batteries Maintenance & RepairDrive Lubrication Removing the Nose Alternative Battery ChargersGetting Inside Opening the Deck Remove indicated screws to remove Original Pioneer 2-AT DeckFactory Repairs Support@activmedia.com 603 924-2184 fax 603 924-9100 voiceAppendix a C166 Controller Ports & ConnectionsInternal Serial Connectors User I/O Expansion PortPerformance PeopleBot I/O Pin Label UseGeneral I/O Bus Appendix B User Power ConnectionsPower Switch J7 and Delayed Shutdown Logic Onboard Computer OptionPower-State Logic Computer PowerJoystick Connector Appendix CSpecifications Appendix DControls and Ports Index ControlsSpecifications Warranty & Liabilities Page Concord Street Peterborough, NH 603

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.