ActivMedia Robotics Pioneer 2 Operation Manual

Mobile robot
Hide thumbs Also See for Pioneer 2:
Table of Contents

Advertisement

Quick Links

Pioneer 2
M O B I L E R O B O T S
with Pioneer 2 Operating System Servers
O
PERATIONS
M
ANUAL
T
P
2 M
R
HE
IONEER
OBILE
OBOT

Advertisement

Table of Contents
loading

Summary of Contents for ActivMedia Robotics Pioneer 2

  • Page 1 Pioneer 2 M O B I L E R O B O T S with Pioneer 2 Operating System Servers PERATIONS ANUAL IONEER OBILE OBOT...
  • Page 2 EDIA OBOTICS The software on disk and on the Pioneer 2 controller ROM, which accompany the robot and / or are available for network download by Pioneer Mobile Robot customers, are solely owned and copyrighted or are products of SRI International...
  • Page 3: Table Of Contents

    Pioneer Mobile Robots Table of Contents ..........................1. CONGRATULATIONS ..................1 Pioneer Package ....................1 Basic Components (all shipments)........................1 Optional Components and Attachments (partial list) ..................1 User-Supplied Components / System Requirements...................2 Additional Resources..................... 2 Pioneer Software ............................2 Pioneer Newsgroup............................2 Support................................3 2.
  • Page 4 Step 3: Put Pioneer into Boot Mode ......................38 Step 4: Run p2osdl............................39 Download Troubleshooting.........................39 Configuring P2OS Operating Parameters..............39 Steps 1–3: Preparing Pioneer 2 for Configuration..................39 Step 4: Run p2oscf............................39 Step 5: Changing the Configuration Parameters..................39 Editing P2OS Parameters..........................40 Saving and Restoring...........................42 Calibration Tools - revcountcal and compasscal............42...
  • Page 5 Pioneer Mobile Robots User I/O Expansion Port ..................47 The General I/O Bus.................... 48 APPENDIX B ....................50 User Power Connections..................50 Onboard Computer Option................... 51 Power Switch (J7) and Delayed Shutdown Logic ..................51 Power-State Logic............................51 Computer Power ............................51 APPENDIX C ....................52 APPENDIX D ....................
  • Page 7: Congratulations

    90 days. All of these precautions ensure that you have many years to enjoy your new Pioneer 2 Mobile Robot. Even though we’ve made every effort to make your Pioneer package complete, please check the components again after you unpack them from the shipping crate.
  • Page 8: User-Supplied Components / System Requirements

    Congratulations Ÿ Range-finding Laser Ÿ GPS System Ÿ Compass Ÿ Bumper Ring Ÿ Serial cables for external connections User-Supplied Components / System Requirements Ÿ Client computer: 486-class or later PC with Microsoft Windows 95-98/NT, FreeBSD, or Linux operating system; Power-PC Macintosh with System 7.5 or later;...
  • Page 9: Support

    Pioneer Mobile Robots Support Have a problem? Can’t find the answer in this or any of the accompanying manuals? Or, do you know a way that we might improve Pioneer? Share your thoughts and questions directly with us: pioneer-support@activmedia.com Please include your robot's serial number (look for it beside the Main Power switch) -- we often need to understand your robot's configuration to best answer your question.
  • Page 10: What Is Pioneer

    A/D ports, PSU controllers and more — all accessible through a common application interface to the robot server software, P2OS. With the onboard computer option, Pioneer 2 has four additional RS-232 ports, a PCI bus and space for up to five PC104+ accessory cards. With Ethernet-ready onboard autonomy, the Pioneer becomes a plug-and- play agent for multi-intelligence work.
  • Page 11: The Pioneer Legacy

    Several clients also may share responsibility for controlling a single mobile server, which permits experimentation in distributed communication, planning, and control. Figure 2-2. In client/server mode, Pioneer 2 requires a host computer connection. The Pioneer Legacy Pioneer 1 was the original design.
  • Page 12: Modes Of Operation

    This also means that the higher level clients, such as Saphira, PAI, Ayllu, P-LOGO, and others, will work with P2OS and the host Pioneer 2 platform just as they had worked with Pioneer 1. Of course, you will have to extend your client software, as we have done with Saphira, Ayllu and others, in order to take full advantage of P2OS.
  • Page 13 For experiments in microcontroller-level operation of robotics functions, you may reprogram the onboard flash-ROM and RAM for direct and stand-alone operation of Pioneer 2. We supply the means to download, but not the microcontroller's programming software, for you to work in stand-alone mode.
  • Page 14: Specifications & Controls

    These characteristics also permit Pioneer 2 to carry extraordinary payloads: The DX can carry up to 23 Kg (50 lbs.) additional weight; the Pioneer 2 AT can carry over 40 Kg (90 lbs.) more! Yet the Pioneer 2 is light-weight enough that it is also as easy to transport as a suitcase – a task made even easier by the Pioneer 2's built-in handle.
  • Page 15: Console And Deck

    Feed-through slots behind the wheels let you conveniently route cables to the accessory panels on each side of the DX/CE or trough an access panel on top of the Pioneer 2 AT. A removable plug in the middle of the Deck gives you convenient access to the interior of the robot.
  • Page 16: Body

    Simply remove one screw from under the front sonar array, and a second screw from the bottom of the Pioneer 2, then slide the Nose away. This provides a quick and easy way to get at the PC104+ stack of accessory boards of the onboard PC, as well as to the sonar gain adjustment for the front sonar array (see Sonar Gain below).
  • Page 17: Batteries And Power

    The sonar gain control is on the underside of the sonar driver board, which is attached to the floor of each sonar module. Remove the Nose to access the front sonar module. Unlatch and open Pioneer 2's back door to access the rear sonar module.
  • Page 18: Electronics

    Specifications and Controls Similar to the CE model, the battery life of the Pioneer 2 DX and AT, of course, depends on the configuration of accessories and motor activity. Pioneer 2-AT charge life typically ranges from four to eight hours. Pioneer 2-DX can run for more than a day.
  • Page 19: Sonar Boards

    Main Power, Fuse, and Indicator A single slide-switch on the rear left panel of the Pioneer 2 DX, AT and CE models controls power to the entire robot and all its integrated accessories. Up is ON; down is OFF. A red LED on the Console indicates Main Power.
  • Page 20 It also disables the drive motors – just as if you cycle Main Power. But, unlike a cold- power restart, RESET preserves the contents of the Pioneer 2 microcontroller's RAM, so any user programs downloaded in stand-alone mode get restarted.
  • Page 21: Serial

    Pioneer Mobile Robots Under P2OS control when not connected with a client, pressing and releasing the MOTORS button alone puts Pioneer 2 into a self-test mode that exercises the robot's drive, controller, and I/O systems. (See Chapter 5, Self-Tests, for details.)
  • Page 22: Quick Start

    Saphira demonstration software. (For more details about programming and operating your Pioneer with Saphira, PAI, Ayllu, or P-LOGO, see their respective programming manuals.) The Pioneer 2 P2OS servers require a serial communication link to a client. The serial link may be: •...
  • Page 23: Saphira Client Start-Up

    Pioneer Cold Start-Up Place your Pioneer 2 on the floor in an open space. Slide the Main Power switch up to ON. The red power indicator LED beneath the FLASH switch on the Console should light. After a short P2OS initialization phase, the LCD on the control panel then displays the current status, the Console serial port baud rate, the current P2OS version number, and the battery charge, in volts.
  • Page 24: A Successful Connection

    Quick Start appear, the communication line is down or the client is malfunctioning. RESET Pioneer to return it to its waiting state. The number is a special error code indicating you have a noisy communication line; sync you must reduce the noise level before operating Saphira. Figure 4-2.
  • Page 25 Pioneer Mobile Robots Engage Pioneer 2’s motors (white MOTORS button) after connecting with a client or the robot won’t move, no matter how excited you get. The main window of the Saphira client displays a sonar map built by Saphira as the Pioneer moves through space.
  • Page 26: Disconnecting Serial Communications (Intentionally Or Unintentionally)

    Disconnecting Serial Communications (intentionally or unintentionally) When you finish playing with Pioneer 2, pull-down the Saphira client’s Connect menu with your mouse and choose the Disconnect option (Figure 4-4). Figure 4-4. Gracefully disconnect the Saphira client from the Pioneer server The Pioneer will disengage its drive motors and stop moving automatically, and its sonar should stop firing.
  • Page 27 Pioneer Mobile Robots If you access the wrong port, the Saphira demonstration program will complain, "Error opening" the selected serial port. If the robot server isn't listening, or if the serial link is severed somewhere between the client and server (cable loose, or a modem off, for instance), the client will attempt to "Syncing 0" six times and fail with a "Connection refused."...
  • Page 28: Self-Tests

    Self-Tests P2OS comes with a series of short test routines for the Pioneer 2's drive motors, sonar, and User I/O functions. To run the self-tests, start up or reset the robot into its P2OS wait state (LCD "no conn"). You may press the Reset button at any time to disable the self-tests.
  • Page 29: Digin Test

    Pioneer Mobile Robots FS:#3 034A RS:#3 7D00 12.4V* The sonars are numbered 0 through 7 regardless of whether they are located front or rear. Absent echoes return at the maximum time of 0x7D00. DIGIN Test – A third self-test lets you examine the values of the eight digital input ports (ID0 7) that come with the Pioneer.
  • Page 30: Bumps

    See Appendix A, “C166 Ports & Connections” for the location of the A/D ports on the Pioneer 2 microcontroller's User I/O connector. P2 Gripper Those of you fortunate enough to own a Gripper accessory for the Pioneer 2 get a self-test instead of the User PWM and DIGOUT self-tests. See the P2 Gripper Manual for details.
  • Page 31: Pioneer 2 Operating System

    All Pioneers use a client/server robotics architecture developed by Dr. Kurt Konolige and others at SRI International, including the Pioneer 2 Operating System (P2OS; see Figure 6-1). In the model, the server works to manage all the low-level details of the mobile robot’s systems. These include operating the motors, firing the sonar, collecting sonar and motor encoder data, and so on –...
  • Page 32: Packet Data Types

    Pioneer 2 Operating System Table 6-1. Main elements of PSOS communication packet protocol Component Bytes Value Description Header 0xFA, 0xFB Packet header; same for client and server Byte Count N + 2 Number of subsequent data bytes, including checksum word, but not Byte Count.
  • Page 33: Server Information Packets

    Unlike PSOS, however, P2OS supports several additional server information packet types, extending the capabilities of the Pioneer 2. See a following section in this chapter for a description of the extended server information packet types available with P2OS. And, a stored parameter lets you increase the communications rate to 20 per second (50ms cycle).
  • Page 34: Client Commands

    100 milliseconds or 50 milliseconds per cycle with Pioneer 2. You may exceed those rates; just do it sparingly. The client must send a command at least once every two seconds or so ( parameter;...
  • Page 35: Client Command Argument Types

    Pioneer Mobile Robots Checksum computed Packet integrity checksum The P2OS command is comprised of a one-byte command number optionally followed by, if required by the command, a one-byte description of the argument type and the argument value. Client Command Argument Types There are three different types of P2OS client command arguments: positive integers two bytes long, negative integers two bytes long, and NULL-terminated strings consisting of as many as 196 characters.
  • Page 36: Saphira Client Command Support

    When first started, the Pioneer 2 robot is in a “wait” state; P2OS listens for communication packets over its designated port. To establish a connection, the client application must send a series of three synchronization packets through the host communication port –...
  • Page 37: Autoconfiguration

    -terminated strings that comprise the robot’s name, class, and NULL subclass. You may uniquely name your Pioneer 2 with a special configuration tool we provide with the robot. The class and subclass also are parameters stored in the robot's flash PROM, but are constants not changed by the user.
  • Page 38: Pioneer In Motion

    Pioneer 2 Operating System SETRA Rotational (de)acceleration to achieve setpoint SETRV Sets rotational velocity for Colbert turn and turnto commands Translation Forward/back velocity SETA Translational (de)acceleration to achieve setpoint SETV Velocity for Colbert move command Pioneer in Motion When P2OS receives a P2OS server-translation or -rotation command, it accelerates the Pioneer robot at the SETA or SETRA rate you program, or the rates preset in the P2OS configuration parameters.
  • Page 39: Sonars

    Input / Output (I/O) Your Pioneer 2 comes with a number of I/O ports that you may use for some of Pioneer’s accessories and for your own custom attachments. See Appendix A for port locations on the Pioneer microcontroller. The various port states and reading appear in the SIP and may be manipulated with P2OS client commands.
  • Page 40: Digout And Psupos

    Port# 2 reads 224 DIGOUT and PSUPOS The eight digital output ports on the Pioneer 2 User I/O connector are both reported in the P2OS SIP (Digout value) and controllable with the P2OS commands DIGOUT and PTUPOS. Electrically, the ports express a digital high (1) state as ~5 VDC (Vcc) and low (0) at ~0 VDC (GND).
  • Page 41: Extended Packets

    BUMPSTALL requires supporting bump ring accessory. Extended Packets P2OS 1.4 introduces several new Server Information Packets to better support the Pioneer 2 robotics community. On request from the client by a related P2OS command (see Table 6-5), the P2OS server will package and send one or a continuous stream of packet types to the client over the host serial communication line.
  • Page 42: Aux Serial Packets

    Pioneer 2 Operating System AUX Serial Packets The new P2OS 1.4 implements two-way communications through the AUX serial port on the Pioneer 2 microcontroller. With earlier versions of P2OS, you are able to send a string of data (a command or otherwise) from the HOST port-connected client to an AUX port-connected serial device (TTY2 command number 42), but you could not get data back from that device.
  • Page 43: Standalone Mode

    And there is 32K RAM onboard waiting for something to do. Standalone mode also lets you perform experiments in low-level sensing and control, such as feedback control of the motors. ActivM is developing Pioneer 2 stand-alone mode support kits and materials. Stay tuned to EDIA ROBOTICS the pioneer-users newsgroups for availability.
  • Page 44: Updating & Reconfiguring P2Os

    Step 3: Put Pioneer into Boot Mode Start up or reset your Pioneer 2. After it has finished initializing, place it in its special boot mode: While pressing and holding the white MOTORS button, press and release the red RESET button. Continue holding the MOTORS button down for three or more seconds, then release it.
  • Page 45: Step 4: Run P2Osdl

    FLASH PROM in the Pioneer 2 is guaranteed for only 100 erase cycles. Steps 1–3: Preparing Pioneer 2 for Configuration Prepare your connection and Pioneer 2 for changes to its operating configuration identically to Steps 1, 2 and 3 for updating P2OS.
  • Page 46: Editing P2Os Parameters

    P2OS uses for your Pioneer 2. Some of the parameters, "Constants" in Table 7-1, currently cannot be changed. The others, "Variables" in Table 7-1, are the identifying and operating parameters that you may edit with p2oscf.
  • Page 47 Name string not_set Unique name you may give your Pioneer 2. Besides its ownership value, this parameter gets passed to a connecting client as the first argument in the SYNC2 packet, therefore useful for differentiating among multiple Pioneers. Maximum of 20 characters; no intervening spaces.
  • Page 48: Saving And Restoring

    The p2os distributions come with common configuration files for the various Pioneer 2 models, include p2dx for the Pioneer 2 DX and p2at for the Pioneer 2 AT. You may edit the file-restored parameters just as you edit those retrieved from the robot. And you may save those edited parameters back out the same file or a different one, using the p2oscf save command.
  • Page 49 See Chapter 3, "Quick Start", for additional detail. Briefly, the programs operate in two stages. First, they connect with your Pioneer 2 Mobile Robot via a Saphira-based client and retrieve its current operating parameters via the ENCODERpac and CONFIGpac extended SIPs that are newly available in P2OS 1.4 (see previous chapter).
  • Page 50: Maintenance & Repair

    (Some users may require a special power adapter.) Locate the round plug at the end of the cable that is attached to the charger and insert it into the charge socket that is just below Pioneer 2’s Main Power switch. The LEDs on the charger indicate charge status, as marked on its case.
  • Page 51: Factory Repairs

    Pioneer Mobile Robots Factory Repairs If, after reading this manual, you’re having hardware problems with your Pioneer, and you’re satisfied that it needs repair, contact us: http://www.pioneer-support@activmedia.com (603) 924-2184 fax (603) 924-9100 (voice) In the body of your e-mail or fax message, describe the problem in as much detail as possible. Also, include your name, e-mail and mail addresses, as well as phone and fax numbers.
  • Page 52: Console Serial Port

    Figure A-2. Pioneer 2 microcontroller ports and connectors Console Serial Port Use the Console DSUB-9 serial port connector for client connections to the Pioneer 2 servers and for P2OS downloads. Only three pins are active: RS232-compatible pins 2 (TxD1), 3 (RxD1), and 5 (signal ground).
  • Page 53: Internal Serial Connectors

    Ethernet, and the Pioneer electronic compass (Table A-2). The “host” serial port (connector JP8) is the serial port used by the Pioneer 2 microcontroller for client communications. It shares its transmit (TxD1) and receive (RxD1) lines with the external serial port on the Console.
  • Page 54: The General I/O Bus

    In particular, lines P2_3-6 are for controlling the additional two motors in the Pioneer AT. The analog lines P5_4-7, although not used by any Pioneer 2 configuration, are connected to and may be used for additional encoders in four-wheel drive Pioneer 2s. The digital I/O lines P3_0-7 are included in the I/O bus.
  • Page 55 Pioneer Mobile Robots Table A-5. General I/O Bus Connections Pin # Label Pin # Label P3_0 P3_1 P3_2 P3_3 P3_4 P3_5 P3_6 P3_7 CS3 (Bumpers) P2_12 P2_13 P2_14 P2_15 P5_9...
  • Page 56: User Power Connections

    The Pioneer 2 has a separate Motor-Power Board which, in conjunction with the microcontroller, provides power for the two and four motors of the Pioneer 2 DX, CE and the Pioneer 2 AT models, respectively, as well as conditioned power for the standard and accessory onboard electronics (Figure B-1). It also contains buffered pass-through connectors for the motor encoders.
  • Page 57: Onboard Computer Option

    Pioneer Mobile Robots Onboard Computer Option With the "computer-ready" option (Figure B-2) available with the DX and AT models, the Pioneer 2 Motor-Power Board is specially populated with connectors and circuits to provide separate DC-DC condi- tioned, 7A @ 5 VDC power to an onboard computer and its accessories, and enhanced (3A instead of the standard 1.5A) DC-DC conditioned 5VDC power to the other onboard systems and accessories, including...
  • Page 58: Appendix C

    Saphira consults a special parameters file to determine various operating parameters for the robot server to which it connects. All the latest Pioneer parameter files can be found in $(SAPHIRA)/params P2DX.p ;; Saphira parameters describe the Pioneer 2 DX Class Pioneer Subclass...
  • Page 59 Pioneer Mobile Robots P2AT.p ;; Parameters for the Pioneer 2 AT Mobile Robot AngleConvFactor 0.001534 ;radians per angular unit (2PI/4096) DistConvFactor 1.303 ; mm returned by P2 VelConvFactor ; mm/sec returned by P2 RobotRadius 500.0 ; radius in mm RobotDiagonal 120.0...
  • Page 60: Appendix D

    Appendix D: Specifications Appendix D Specifications Physical Characteristics Pioneer 2 Pioneer 2-AT Length 44cm 50cm Width 33cm 49cm Height (body) 22cm 24cm Body clearance 5.1cm 5.5cm Weight 14kg Payload 20kg 40kg Construction Body 1.6mm CNC fabricated aluminum Same Console & main deck 2.4mm CNC fabricated aluminum...
  • Page 61 Pioneer Mobile Robots Traversable terrains All wheelchair accessible All surfaces Sensors Front Ultrasonic Same 1 each side Same 6 forward @ 20° intervals Same Rear Ultrasonic Same 1 each side Same 6 rearward @ 20° intervals Same Position encoders 9,850 ticks per revolution 6,500 Electronics (basic onboard microcontroller) Processor...
  • Page 62: Index

    Maintenance, 43 Pioneer 2 AT User supplied, 2 Microcontroller, 6, 12 Features, 6 Computer, 10 Modes of Operation Pioneer 2 Operating System, 6 Onboard, 50 Self-Test. See Self-Test Pioneer 2DX Shutdown delay, 50 Server. See P2OS Payload, 8 Computer, 1 Standalone.
  • Page 63 DHEAD, 31 subclass, 30 Resources, 1, 2 DIGOUT, 33 Support revcount, 41 OPEN, 31 pioneer-support, 3 revcountcal, 41 Pioneer 2 Operating System, SYNC, 30 ROM, 6 SYNC0, 30 Rotation, 31 POLLING, 33 SYNC1, 30 RVEL, 31 Position integration, 32 SYNC2, 30...
  • Page 64: Warranty & Liabilities

    And under no circumstances will the developers, marketers, or manufacturers of Pioneer take responsibility for support of any special or custom modification to Pioneer or its software. Pioneer 2 Mobile Robot – Operations Manual v4 August, 1999...
  • Page 65 44 Concord Street Peterborough, NH 03458 (603) 924-9100 (603) 924-2184 fax http://www.activmedia.com/robots...

Table of Contents