Pioneer 2 / PeopleBot manual Pioneer 2 Operating System, Communication Packet Protocol

Page 35

ActivMedia Robotics

Chapter 6 Pioneer 2 Operating System

All ActivMedia robots use a client-server

mobile robot-control architecture developed by Dr. Kurt Konolige and others at SRI International. In the model, the robot’s controller servers—the Pioneer 2 Operating System (P2OS)—work to manage all the low-level details of the mobile robot’s systems. These include operating the motors, firing the sonar, collecting sonar and wheel encoder data, and so onall on command from and reporting to a separate client application, such as ARIA or Saphira.

With this client/server architecture, robotics applications developers do not need to know many details about a particular robot server, because the client insulates them from this lowest level of control. Some of you, however, may want to write your own robotics control and reactive planning programs, or just would like to have a closer programming relationship with your robot. This chapter explains how to communicate with and control your ActivMedia robot via the P2OS client-server interface. The same P2OS functions and commands are supported in the various client-programming environments that accompany your robot or are available for separate license.

Figure 19. ActivMedia Robotics client-

server control architecture

Experienced Pioneer users can be assured that P2OS is upwardly compatible with PSOS, implementing all the same commands and information packets. P2OS, of course, extends the servers to add new functionality, improve performance, and provide additional information about the robot's state and sensing. Hence, P2OS-specific programs may not operate on original Pioneers.

Communication Packet Protocol

Table 2. Main elements of PSOS/P2OS communication packet protocol

Component

Bytes

Value

Description

Header

2

0xFA, 0xFB

Packet header; same for client and server

Byte Count

1

N + 2

Number of subsequent data bytes, including

 

 

 

the Checksum word, but not the Byte Count.

 

 

 

Maximum 200 bytes.

Data

N

command

Client command or server information

 

 

or SIP

packet (SIP)

Checksum

2

computed

Packet integrity checksum

P2OS communicates with a client application using a special packet protocol for both command packets from client to server and server information packets (SIPs) from the

29

Image 35
Contents Pioneer 2 / PeopleBot TM Page Important Safety Instructions Table of Contents Pioneer 2 Operating System Appendix C Optional Components and Attachments partial list IntroductionRobot Package Basic Components all shipmentsNewsgroups Additional ResourcesUser-Supplied Components / System Requirements SoftwareSupport@activmedia.com SupportClient Software What Is Pioneer?ActivMedia Robotics Basic Suite Http//robots.activmedia.comSaphira AriaPioneer 2 and PeopleBot Pioneer LegacyPioneer Page Modes of Operation Main Components Specifications & ControlsPhysical Characteristics Pioneer 2-AT Console and hinged Deck Decks and ConsoleBody, Nose, and Accessory Panels Sonar Arrays with Gain Adjustment Motors and Position Encoders Batteries and PowerElectronics Controls, Ports, and Indicators Reset and Motors Liquid-Crystal Display & Contrast AdjustmentSerial PeopleBot Sensors and Emergency Stop Safety Watchdogs and ConfigurationPioneer 2 Arm-related SIPs and Commands Http//robots.activmedia.com Preparative AssemblySaphira Client Installation Quick StartExport DISPLAY=remotecomputer0 Saphira Client Start-UpRobot Cold Start-Up SET SAPHIRA=C\Saphira\ver62Successful Connection Starting Client-Server CommunicationsConnected Operating the Saphira Demonstration ClientQuickstart Troubleshooting Quick Start Joydrive Operation Joydrive and Self-TestsJoystick Connection Left forward 13.2 Engaging Self-Tests Motors Test Press again to begin testsCompass Sonar TestBumpers GripperDigin Digout Digin and Digout TestAnalog Tests User PWMsCommunication Packet Protocol Pioneer 2 Operating SystemPacket Checksum Packet ErrorsPacket Data Types Name Data Type Description Server Information Packets Client CommandsBefore Client Connection Ptupos Client Command Argument TypesEstablishing a Client-Server Connection-SYNC Saphira Client Command SupportAutoconfiguration Programming P2OSClosing the Connection-CLOSE Movement CommandsKeeping the Beat-PULSE PID Controls Pioneer in MotionPosition Integration SonarSfRobotComInt44,1 Estop and EstallPacket Processing CONFIGpac and Config CommandExtended Packets SERAUXpac and Getaux Checksum Integer Computed checksum ENCODERpac and Encoder CommandPLAYLISTpac and Playlist Command GRIPPERpac and GriprequestSfSMessageDigin is %i,sfRobot.digin TCM2pac and TCM2 CommandDIGIN, TIMER, and Adsel Input / Output I/OIOpac and Iorequest Digout and PsuposPerformance PeopleBot IRs Updating P2OS Updating & Reconfiguring P2OSWhere to Get P2OS Software Installing the P2OS UtilitiesRun p2osdl Enable FlashPut Microcontroller into Download Mode Download TroubleshootingRun p2oscf Configuring P2OS Operating ParametersSteps 1-3 Preparing for Configuration Changing Configuration ParametersEditing P2OS Parameters Save C\p2os\myP2DX Saving and RestoringArm Parameters Keyword Encoder and Revcount PID ParametersParameter DXe Performance PB Calibration Tools revcountcal and compasscalCompasscal /dev/ttyS3 Batteries Maintenance & RepairDrive Lubrication Removing the Nose Alternative Battery ChargersGetting Inside Remove indicated screws to remove Original Pioneer 2-AT Deck Opening the DeckSupport@activmedia.com 603 924-2184 fax 603 924-9100 voice Factory RepairsC166 Controller Ports & Connections Appendix aUser I/O Expansion Port Internal Serial ConnectorsPin Label Use Performance PeopleBot I/OGeneral I/O Bus Onboard Computer Option User Power ConnectionsPower Switch J7 and Delayed Shutdown Logic Appendix BComputer Power Power-State LogicAppendix C Joystick ConnectorAppendix D SpecificationsControls and Ports Controls IndexSpecifications Warranty & Liabilities Page Concord Street Peterborough, NH 603