Pioneer 2 / PeopleBot manual Digout and Psupos, IOpac and Iorequest

Page 50

Pioneer 2 Operating System

sfSMessage("Port# % reads %i",sfRobot.timer, sfRobot.analog); Port# 5 reads 33

sfRobotComInt(35,2);

sfSMessage("Port# % reads %i",sfRobot.timer, sfRobot.analog); Port# 2 reads 224

DIGOUT and PSUPOS

The eight digital output ports on the P2OS controller’s User I/O connector are both reported in the standard SIP (digout) and controllable with the P2OS commands DIGOUT and PTUPOS. Electrically, the ports are digital high (1) at ~5 VDC (Vcc) and low (0) at ~0 VDC (GND).

For example, to read the state of the digital output ports with Saphira:

sfSMessage("Digout is %i",sfRobot.digout); Digout is 240

Use the P2OS DIGOUT command to select and change the state of one or more of the output ports at a time. DIGOUT takes a 2 byte (unsigned integer) argument. The first byte is a mask whose bit pattern selects (1) or ignores (0) the state of the corresponding bit in the second byte to set (1) or unset (0) the digital output port.

For example, you might use Saphira to set digital output ports 1 and 3, reset port 4, and leave all the rest alone (retain original state):

sfRobotComInt2Bytes(30, 0x19, 0x09);

The digital output ports OD0-4 may also be used for pulse-width-modulated (PWM) control of accessories, such as DC motor speed or RC-servo motor position control. Use the PTUPOS command to select a port (msbyte) and specify its pulse-width (lsbyte) in 10 µsecond units.

For example, to have a repeating one millisecond pulse appear on PWM port #1 (pin 1 on the User I/O connector):

sfRobotCom2Bytes(41,1,100);

You've got to disable a running PWM port to use it as a digital output port:

sfRobotCom2Bytes(41,1,0);

In P2OS versions 1.J and later, the duty cycle is 20ms, with a 0-2.55ms pulse corresponding to common RC-servo applications.

IOpac and IOREQUEST

P2OS 1.E introduced a new server information packet in which your P2OS-based robot controller reports all of its I/O-connected sensor input and output values in a single cycle.

Your client software must explicitly request IO packets; they normally are disabled. Use the P2OS IOREQUEST command #40 with an argument value of 0, 1, or 2. The argument 1 requests a single packet to be sent within the next cycle. The request argument value 2 tells P2OS to send IO packets continuously, at approximately one per cycle, depending on serial port speed and other pending SIPs. Use the IOREQUEST argument value 0 to stop continuous packets.

The common IOpac contains three digital input bytes, User I/O digin and two bumper state bytes, front followed by rear; one digital output byte (digout); and five analog-to- digital values corresponding to the ports AN1-5. Unlike the standard SIP, which contains

44

Image 50
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.