Home
Pioneer 2 / PeopleBot Robotics User Manual
Contents
1. 49 EDITING PDOS PARAMETERS e i eie tet E e eet eR 49 SAVING AND RESTORING I A NO E RE 50 ARMIPARAMETERS RING I e D EO IB 50 PID PARAMETERS aen e eee e Ud OIN 52 ENCODER AND REVCOUNT ES repete ee re re ete PE ERE e E REED E RORIS EON ee 52 CALIBRATION TOOLS REVCOUNTCAL AND COMPASSCAL ccessesssseeececeesssececececsesssaececececeensascesececeenens 53 CHAPTER 8 MAINTENANCE amp REPALIR 55 DRIVE LUBRICATION 4 55 onis oom oma asit E a i ee MC 55 BATTERIES tb oat tnnt tata eter eio cede c rS 55 Changing Batteries i a ae rre de eire 55 Hot Swapping the Batteries siete peek e d epe hoe erra nu pae gn ge Deben 55 Charging the Battery aere rede enean 55 Alternative Battery Chargers eee t deer PR RE 56 GETTING INSIDE E E a e US 56 REMOVING tlie NOSES iie e b Tr eti tuac u kanta Ce ERE RES esee ER 56 Opening thie Deck i in aed e e GER a tO RE REEL S e Tee ee Re pas ade 57 BACTORY a eere err eet ere PO ERE I EE Ete AE E E YER IE 57 BACTORY REPAIRS recess a sues saan ERE Ee ERR ERES TRENT I cae cau en AREE a aa YER
2. E 21 STARTING CLIENT SERVER COMMUNICATIONS n nn sr sansun 21 iv ActivMedia Robotics A SUCCESSEUE CONNECTION eret ete eee GE eee e bue eee Ep ere eun 21 OPERATING THE SAPHIRA DEMONSTRATION CLIENT 22 DISCONNECTING SERIAL COMMUNICATIONS INTENTIONALLY OR UNINTENTIONALLY a 23 QUICKSTART TROUBLESHOOTING s cccessseceessscecsessececessceceessesecsessececseaeeceesssecsesaececsesaeesensnsessesseseeseaaees 23 CHAPTER 5 JOYDRIVE AND SELF TESTS 25 JOYSTICK CONNECTION 20st on totes re e riter a Seed ote ee Pet mi SO bs 25 JOYDRIVE OPERATION ret E ee See ct muq ete Bede Sains re RE EE E EE i 25 ENGAGING SELE TESTS trente tet xeu de Eakins Bee tne cete edt aede dete etu i edt e d uya 26 MOTORS TEST e er e ei iut restet etes crees Fete e IE E Dr EB tete de Be 26 C LET 27 BUMPERS Inset tee e ette e et et ee tee vna rette de etes rettet de ete e hee ut A Lettre 27 GRIPPER aaa S E PE ET 27 eee ee re eb ep ires ete re 27 DIGIN AND DIGOUT TEST in ht aei eee eee ee ue ete et aeneae etae tede ee Ei eter nas 28 ANALOG T
3. a 45 PERFORMANCE PEOPLEBOT 45 CHAPTER 7 UPDATING amp RECONFIGURING P2OS 46 WHERE TO GET P2OS SOFTWARE 20 2 2 1 1 1 ense nane aee uu dune za 46 INSTALLING THE P2OS UTILITIES in Aet ete e eerie rex suu rene de E P 46 UPDATING P2OS tr rete cutter ite ce totus tus ete ra t ea eres eve ce tee Pen debate ee Dey 46 Step 1 Serial Connection from Computer to Robot eee nennen trennen 46 Step 2 47 Step 3 Put Microcontroller into Download Mode 47 Step ds Run ee ka a ES Tee EY SE ee hee kau RR pay ERES TE RECS usss 47 Download Troubleshooting eese eene i eaii iritas iana esnea VE Ee eana 47 CONFIGURING P2OS OPERATING PARAMETERS cccssssssssecececeesseaececececsessaaececececsessaaececececeeneaseeeeeeceeneas 48 Steps 1 3 Preparing for Configuration eese eese eene 48 2 n ae EE RE RUE ee Cre E Se DNE apaspay sua ua 46 Step 5 Changing Configuration Parameters eese eene nennen menn nennen 46 Step 6 Save Your
4. 2 3 aximum rotational veloc aximum rotation aximum translational aximum motor PWM period Encoder ticks mm ticks de acceleration ity deg sec aximum translation speed mm sec de acceleration deg sec mm sec 500 fully on rev x gear ratio whee l diameter x PI aximum of 20 characters time O classic 100 ms Baud rate for host connection 0 9600 1 19 installed in General I O In 1 10 volts microcont when battery charge fall client Baud rate for AUX serial port if P2 Gripper installed into User I O Parameters that you may change with p2oscf Unique name for your robot no Spaces Server information packet communication cycle 1 50 ms cycle time serial port 2238400 bps see HostBaud 2 if 200 otherwise 0 1 if front sonar array installed otherwise 0 1 if rear sonar array installed otherwise 0 roller alarm activated S below this value al encoder ticks for a The number of differenti 360 degree revolution of Ms time before robot aut has not received a comma Restarts on restoration the robot omatically stops if it nd from a client of connection 1 enables alternative SIP Otherwise O0 Maximum PWM before stall If PwmMax never Ms time after a stall fo engaged during this time Compass type O none 1 V2XG r recovery Motors not 2 2 V2XG Compass calibration X offset V2XG Compa
5. C multiplexed the sonar acquistion Pii ELE DIAT SELF PILF Siit p rate is 25 Hz 40 milliseconds per sonar 0 ds Sensitivity ranges from ten 1 centimeters six inches to nearly five meters 16 feet You may control the sonars firing pattem through software the default is left to right in 50 sequence Oto 7 foreach The driver electronics for each array is Ton calibrated at the factory However you may adjust the aray s sensitivity and range to accommodate differing operating environments The sonar gain control is on the underside of the sonar driver board which is attached to the floorof each sonarmodule Figure 12 ActivMedia robot sonararmay Sonar sensitivity adjustment controls are accessible directly although you may need to remove the Gripperto accessthe front sonar if you have that accessory attached For the front sonar for instance locate a hole nearthe front underside of the through which you can see the cap of the sonar gain adjustment potentiometer Using a small flat blade screwdriver tum the gain control counterclockwise to make the sonar less sensitive to extemal noise and false echoes Low sonargain settings reduce the robot s ability to see small objects Under some circumstances that is desirable For instance attenuate the sonar if you are operating in a noisy environment or on uneven or highl
6. Replace Saphira s default packet processor with our own that can detect and parse SERAUXpac packets void myStartupFn void sfInitProcess myPackets GetAuxPkt sfRemovetTask packets default packet processing SERAUXpac packet processor void myPackets void char packet_type if sfIsConnected while sfHaveClientPacket packet type sfReadClientByte if packet type SERAUXpac get aux serbytes into inbuf while inbufptr lt serbytes inbuf inbufptr sfReadClientByte If not SERAUXpac send along to default else sfProcessClientPacket packet type void main int argc char argv Initialize client and connect with robot sfRobotComInt 43 0 flush the aux buffer sfRobotComStrn 42 fictitious command 18 send command to AUX device inbufptr 0 serbytes 10 number of response bytes to retrieve sfRobotComInt 43 serbytes Expect a 10 byte response SERAUXpac and GETAUX 205 1 4 implemented two way communications through the AUX serial port on the microcontroller And with those 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 Now 205 maintains a circular buffer for incoming serial data from t
7. See AppendixA forthe location of the PWM portson the microcontroller 28 ActivMedia Robotics chapter 6 Pioneer 2 Operating System ActivMedia robots use a client server mobile robot control architecture developed by Dr Kurt Konolige and others A at SRI Intemational In the model the robot s controler servers the Pioneer 2 Loal Operating System P20S work to Y 7 manage all the low level details of the Server mobile robot s sysems These include operating the motors firing the sonar collecting sonar and wheel encoder data and so on all on command from and reporting to a separate client application such as ARIA or Saphira Position 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 jus 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 205 functions and commands are supported in the various Figure 19 ActivMedia Robotics client client programming environments that server control architecture accompany your robot orare available for separate license Experi
8. The Performance PeopleBot contains a large red Emergency SIOP button prominently positioned on the left column just beneath the upper Deck When pressed the button physically disconnects power from the motors and electrically shorts them to brake the motors A separate digital sense line to the microcontroller can activate an emergency stop process in 205 See E STOP and E STALL in Chapter 6 for details To release the Emergency sToP button press it in and twist Safety Watchdogs and Configuration Pioneer 25 and PeopleBot s standard onboard software P2OS contains a communications watchdog that will halt motion if communications between a client computer and the server are disrupted for a set time interval nominally two seconds watchdog parameter The robot will automatically resume activity including motion assoon ascommunications are restored 205 also contains a stall monitor If the drive exerts a PWM pulse that equals or exceeds a configurable level and the wheels fail to tum stallval motor power is cut off fora configurable amount of time stallwait The server software also notifies the client which motor is stalled When the stallwait time elapses motor power automatically switches back ON and motion continues underserver control All these failsafe mechanisms help ensure that your robot will not cause damage orbe damaged during operation You may reconfigure the communications drive current and stallwait values
9. the p2os directory of your PSOS distribution The program accepts optional arguments Table 12 the argument less default startup is to connect with your robot s P20S microcontroller through your PC s serial port dev ttysO in Linux UNIX systems or com1 with Win32 With the default you may double click to launch psoscf exe directly from your desktop rather than executing the program from the MS DOS Prompt window Table 13 p2oscf startup options Argument Description h List p2oscf argument options and quit b Batch mode series configuration command must follow Configuration changes made to FLASH parameters zn Operate p2oscf without connecting with the microcontroller Useful for editing parameter files saved to disk p Set serial port serial port name must follow immediately after argument dev ttyS1 or COM3 for example 8 Automatically save changes to disk file named path immediately following argument Step 5 Changing Configuration Parameters On start up afterpowercycle or RESET 2 5 readsa set of operating parameters from its FLASH memory and uses these values if and until you override them with explicit P2O S commands For instance a default maximum velocity is stored in the TransvelMax parameter After establishing a client server connection you may send a SEIVEL command which changesthat default maximum velocity Normally when it starts p2osc automatically
10. Ho 2 RRt Mna lo P bas Atina Rits PIONEER 2 DXE PIONEER 2 AT PEOPLEBOT D Copyright 2002 ActivMedia Robotics LLC All rights reserved Under intemational copyright laws this manual orany portion of it may not be copied or in any way duplicated without the expressed written consent of ActivMedia Robotic s The software on disk and on the microcontroller ROM which accompany the robot and are available for network download by ActivMedia Robotics customers are solely owned and copyrighted orare licensed products distributed by ActivMedia Robotics Developers and users are authorized by revocable license to develop and operate custom software for personal research and educational use only Duplication distribution reverse engineering or commercial application of the ActivMedia Robotics software and hardware without the expressed written consent of ActivMedia Robotics LLC is explicitly forbidden The various names and logos for products used in this manual are often registered trademarks or trademarks of their respective companies Mention of any third party hardware or software constitutes neither an endorsement nora recommendation ActivMedia Robotics Pioneer 2 PeopleBot Operations Manual v10 J uly 2002 ii ActivMedia Robotics Important Safety Instructions NSSSS Read the installation and operations instructions before using the equipment Avoid using power extension cords To prevent fire or shock ha
11. RearSonarAmay one each sde six rear 9 20 intervals Top Deck Sonar one each sde six rear 9 20 intervals Encoders 2 ea counts rev counts mm county rotation Controls and Ports Main Power Charge Port Joydrive DXe na 39 400 66 18 400 2 Optional DX na 39 400 76 20 000 v v Optional AT na 34 000 49 22 500 v Y Standard Mic rocontoller and Console Controls amp Ports Processor ICD Encoderinputs Audio PWM outputs Sonarinputs Digital I O A D Digital timers FLASH PROM RAM Power switches Comm ports Power intemal comm ports Logic pushbuttons Indic ator LEDs Siemens 8C 166 20 MHz 32 characters on 2 lines 4 Piezo buzzer 8 4 user available 2x8 multiplexed 16 logic ports 8 in 8 out 5 9 0 5 VDC 1024 or 256 bit resolution 8 lusec resolution 32 P20Sand robot specific parameters 32KB 1 main 1 RADIO 2 RS 232 serial intemal 1 RS 232 external 12 VDC Q 1A switched 5 VDC switched RESETand MOTORS Perf PB 76 600 128 33 500 Standard Main power RADIO power Hos SERIAL RxD and TxD ActivMedia Robotics PB V1 76 600 148 39 000 Y Y Optional CE na na 39 400 76 18 400 Y Y Optional 67 Index 43 Accessory Panels 12 ActivMedia Robotics Basic Suite 5 ADSEL 43 AmigoBot 43 Sounds 43 AmigoSounds 6 ARIA 6 Assembly
12. 19 Autoconfiguration 35 AUX 41 Batteries 14 55 Changing 55 Charging 55 Hot swap 55 Recharge port 15 Battery charger 14 Body 12 Breakbeam IR 18 45 BUMP STALL 39 Bumpers 27 Calibration tools compasscal 53 revcountcal 53 Charge Cube 14 Charger 14 Chargers Alternative 56 Checksum 30 Client commands Argument types 34 Communication rate 32 CONFIG 41 General 32 Client Server 29 CLOSE 36 Colbert 6 Cold Start 20 Communication packets 30 See Packets Communication rate 32 Communications 21 compass 27 53 compasscal 53 Components Accessory Panels 12 Basic 1 Body 12 Computer 12 Console 11 Deck 11 68 Electronics 14 Microcontroller 15 Nose 12 Optional 1 Power 15 User supplied 2 Computer 12 Onboard 63 Shutdown delay 63 Computer 1 CONFIG 41 CONFIGpac 41 Configuration 18 Configuration packets 41 Configuration parameters 48 Console 11 Contrast 16 Controller Specifications 59 Controls 10 Sonar Gain 13 Controls amp Ports Contrast 16 FLASH 17 LCD 16 Main Power 15 MOTORS 16 POWER 17 Recharge 15 SERIAL 17 STATUS LED 16 STOP 18 Data types 30 DCHEAD 36 Deck 11 Hinged 57 DHEAD 36 Digin 43 Digital Input 43 Digital Output 44 Digout 44 Dissassembly 56 Nose 56 Onboard PC 56 Download mode 47 Drive Lubrication 55 E STALL 37 39 STOP 37 39 Electronics 14 Emergency STOP 18 37 39 Encoder 52
13. 52 Pioneer 1 7 Pioneer 2 8 Pioneer 2 Operating System 8 Pioneer 2 AT 8 Pioneer 2 CE 7 Pioneer 2 DX 7 Pioneer 2 DXE 8 Pioneer AT 7 Pioneer Server Operating System 7 PLAYLIST 42 PLAYLISTpac 42 POLLING 38 Ports Joystick 65 Power 63 Fuse 15 Main 15 User 63 Power board 15 PSOS 7 PTUPOS 44 PULSE 36 PWM 44 Quick Start 19 Radio POWER 17 RC Servos 44 Recharge 15 Recharger 14 Repairs 55 58 Authorization 58 RESET 16 Resources 2 revcount 52 53 revcountcal 53 Robot parameters 49 ROM See FLASH Rotation 36 RVEL 36 Safety iii Safety Watchdog 18 Saphira 6 Connection 21 Disconnecting 23 Errors 23 Installation 19 Main display 22 Operation 22 Problems 23 Servers 29 Startup 20 Saphira h 35 Self Tests 25 Analog 28 Bumpers 27 Compass 27 Digital I O 28 Enabling 26 Gripper 27 Motors 26 PWM 28 Sonar 27 SERAUXpac 41 Serial Auxiliary port 60 Console Port 59 Host port 60 Internal ports 60 SERIAL port 17 Serial ports AUX 41 Server Information Packets 32 Servers 29 ADSEL 43 Autoconfiguration 35 BUMP STALL 39 CLOSE 36 DCHEAD 36 DHEAD 36 DIGOUT 44 E STALL 39 E STOP 39 ENCODER 42 GRIPREQUEST 42 IOREQUEST 44 OPEN 35 PLAYLIST 42 POLLING 38 Position integration 38 PTUPOS 44 PULSE 36 SETO 36 SETRA 36 SETRV 36 Shut down 35 Start up 35 SYNC 35 2 43 VEL 36 VEL2 36 SETO 36 SETRA 36 SET
14. ENCODER 42 ENCODERpac 42 Encoders 14 ePresence 5 Errors 30 Extended packets 40 FLASH 17 47 FLASH 9 Fuse 15 General I O 25 62 Gripper 25 27 GRIPPERpac 42 GRIPREQ UEST 42 High speed charger 14 IOpac 44 Joydrive 25 Joystick 25 65 Kurt Konolige Dr 4 Liquid Crystal Display 16 Maintenance 55 Mapper 6 Microcontroller 8 15 Modes Connected 17 Download 17 Joydrive 17 Self tests 17 Modes of Operation Joydrive See Joydrive Self Test See Self Test Server See P20S Standalone See Standalone Motion commands 36 Motor Power 63 Motor Power board 15 Motors 14 MOTORS 16 Motors enable 36 Navigator 5 Newsgroups 2 Nose 12 Onboard PC 63 OPEN 35 P208 8 29 Configuration parameters 48 Configuring 46 48 Critical parameters 49 Download 46 encoder pararmeter 52 Installing 46 p2oscf 48 PID parameters 52 Programming 35 Restoring parameters 50 revcount parameter 52 Saving parameters 50 Troubleshooting 47 Updating 46 2 5 commands 34 p2oscf 48 Commands 49 Restore 50 Save 50 p2osdl 47 Packets Checksum 30 CONFIGpac 41 Configuration 41 Data types 30 42 Errors 30 Extended 40 GRIPPERpac 42 IOpac 44 PLAYLISTpac 42 Processing 40 Protocols 30 SERAUXpac 41 2 43 Payloads 10 PeopleBot 8 I O 61 PeopleBot sensors 18 45 Physical characteristics 10 PID parameters
15. Your robot s name is Son of Flakey command restore p2dx command name r Your robot s name is ActivMedia P2DX command restore command name Your robot s name is Son of Flakey command restore p2dx command save command restore command name Your robot s name is ActivMedia P2DX Also notice that the last restore command is redundant Immediately after a save p2oscf sand the robot s parameters are identical Arm Parameters P20S version introduced a comprehensive set of servers for managing the ActivMedia Robotics Pioneer 2 Arm accessory Please consult the Pioneer 2 Arm Manual for details about its many operating parameters that are store in FLASH and modified through p2oscf 50 ActivMedia Robotics Table 15 Configuration parameters currently P20S 1 J with values for Pioneer 2 DX KEYWORD Type Default Description cosmams Should mot Ps changed using posc Fourwotors byte ors 17 for the four motor Pioneer DAT RotVelTop TransVelT RotAccTop int TransAccTop Encoder int op VARIABLES Name lll E SInfoCycle byte int HostBaud AuxBaud HasGripper FrontSonar RearSonar LowBattery RevCount WatchDog P2Mpacs Val Count Int int Q Com Com int tVelMax nsVelMax Acc Jj O K H K A Rot Rot Rot Rot 2200 4000
16. as well asa variety of accessory controls such asforthe PTZ robotic camera the P2 Gripper scanning laser range finder and motion gyros among many others What s more it comes with source code so that you may examine the software and modify it for yourown sensorsand applications Figure 5 ActivMedia robots require a computer typically a Windows 9x ME or RedHat Linux ba sed PC to run client software for intelligent robotics command and control operations Saphira Saphira including the Colbert language is a full featured robotics control environment developed at SRI Intemational s Artificial Intelligence Center Saphira and its ARIA foundation form the roboticscontrol and applications development foundation for 6 ActivMedia Robotics much of the ActivMedia Robotics Basic Suite and many other ventures The complete licensed Saphira robotics development environment including C C libraries GUI interface and Simulator comes bundled with yourActivMedia robot The Pioneer Legacy Commercially introduced in August of 1995 Pioneer 1 wasthe original Pioneer platform It introduced a single board 68HC 11 based robot microcontroller and the Pioneer Server Operating System PSOS software It s low cost and high performance caused an explosion in the number of researchers and developers who now have accessto a real intelligent mobile robotic platform Pioneer 1 Intended mostly for indoor use on hard flat surfaces the P
17. control powerto the motors 8 We deliberately limit the chargerpowerto avoid serious damage that can occurfrom overcharging lead acid batteries 16 ActivMedia Robotics The button and its associated green LED are under software control Normally your ActivMedia robot s motors are disabled when not connected with a client such as Navigator or Saphira When first connected with a client the motors remain disabled LED flashes until you press and release the MOTORS button Pressing and releasing the white 5 button then enables disables the motors as long as the robot remains connected with a client 1 The green LED should light continuously when the motors are enabled and blink oN and oFF when disengaged When not connected with a client pressing and releasing the MoToRs button puts your robot into joystick drive mode A subsequent press and release of the MOTORS button puts the robot into Self Test Mode that exercises the robot s drive controller and I O systems See Chapter 5 J oydrive and Self Test Modes for details Press and hold the motors button in combination with the RESET button to put the microcontroller into a special system download mode for reprogramming the onboard FLASH ROM See Pioneer 2 Operating System and Updating amp Reconfiguring P2OS Chapter6 and Chapter 7 SERIAL Your ActivMedia robot s microcontroller has two serial ports and three connectors One connector labe
18. n E A D 18 100ma 0 5 Veg s rg 3 H D H H t t U JI U O1 U BIS CO H m RIE RS RON D OH H w Oo H rg O1 Performance PeopleBot I O The left and right Tabletop IR detectors on the Performance PeopleBot are connected to the IDO and digital input ports of the User I O respectively which appear as bits 0 and 1in the digin byte of the standard P2OS Server Information Packet Normally high 1 the digital input port goes low 0 when its respective Tabletop sensor detects an object within its range of operation The left and right IR breakbeams are connected the User I O digital input ports 152 and ID3 respectively Normally high 1 the respective input port goes low 0 when an object breaksthe IR transmitter s beam to its companion receiver 61 Appendix A Microcontroller Ports and Connections Table 21 Performance PeopleBot I O User Label Use User Label Pin Pin 1 4 j RgtTableop 6 ID2 j LftBreakbeam Ss 103 RetBreakbeam 9 ID4 Josik M 10 ops 2 05 14 OD6 17 A Not used available for other User applications The General I O Bus The 34 pin IDC socket on the 205 microcontroller provides a general purpose I O bus containing Y 8read write data lin
19. See Chapter 7 Updating amp Reconfiguring P2OS for details Engaging Self Tests To enable self test mode pressthe white MOTORS button twice after startup or RESET A message should appearin the LCD Press again to begin tests 13 2 And there should be that rhythmic beeping sound coming from the Console speaker to alert you that you may have engaged joydrive and self test modes inadvertently If so pressthe red RESET button If you really intended to run the self tests move on Note that you may intenupt the current self test and move on to the next one by pressing the white motors button Or you may discontinue all testing at any time and return to the P20Sservers wait state by cycling poweror better by pressing the red RESET button on your robot s Console Motors Test The first self test exercises your ActivMedia robot s drive motors During this test the robot is not at all conscious of bystanders Please have everyone step back and remove any obstacles from within a diameterof fourto five feet around When ready pressthe white MOTORS button The motors self test begins by engaging the left drive wheel first forward then in reverse each to complete a partial tum clockwise then counterclockwise Similarly the right wheel engages firt forward then reverse to complete partial tums first counterclockwise then clockwise The Console LCD although difficult to read while the robot is in motion displays a message
20. again after fixing the serial connection Typically reboot the robot with its red RESET Console button afteran eror 54 ActivMedia Robotics chapters Maintenance amp Repair Your ActivMedia robot is built to last a lifetime and requires little maintenance Drive Lubrication The drive motors and gearbox are sealed and self lubricating so you need not fuss with grease oroil An occasional drop ortwo of oil on the axle bushings between the wheels and the case won t hurt And keep the axles clear of carpet or other strings that may wrap around and bind up your robot s drive Batteries Lead acid batteries like those in your ActivMedia robot last longest when kept fully charged In fact severe discharge is harmful to the battery so be careful not to operate the robot if the battery voltage fallsbelow 11 VDC Changing Batteries Except the Pioneer 2 CE and AmigoBot ActivMedia robots have a special battery hamess and latched doorsforeasy accessto the onboard batteries Simply unlatch the rear door swing it open and locate the one to three onboard batteries inside To remove a battery simply grasp it and pull out We also provide a suction cup tool to help Spring loaded contacts eliminate the need to detach any connecting wires Similarly insert batteries by simply sliding each one into a battery box compartment Load the batteries so that their weight gets distributed evenly across the platform Centera single ba
21. an onboard microcontroller and mobile robot server software Your ActiMedia robot also has a variety of expansion power and I O ports for attachment and close integration of additional sensors and other accessories Expansion includes an addressable I O bus for up to 16 devices two RS 232 serial ports eight digital I O ports five A D ports PSU controllers and more all accessible through a common application interface to the robot server software 2 5 With the onboard computer option your ActivMedia robot becomes an autonomous agent With Ethemet ready onboard autonomy your robot even becomesan agent for multi intelligence work Figure 3 Components and some accessories of the Pioneer 2 DX many of which are identical forthe Pioneer 2 DXE and CE Client Software Your ActivMedia robot is the server in a client server environment It handles the low level details of mobile robotics including maintaining the platform s drive speed and heading over uneven terrain acquiring sensor readings such as the sonar and 4 ActivMedia Robotics managing attached accessories like the Gripper To complete the client server architecture ActivMedia robots require a client connection software running on a computer workstation connected with the robot scontroller via a serial link that provides the high level intelligent robot controls including obstacle avoidance path planning features recognition localization and so o
22. at leas once after a reset or power cycle of the Performance PeopleBot To enable E STALL send the E sTALL P20S command 56 with argument 1 0 disablesE STALL Forexample with Saphira sfRobotComInt 56 1 Enable E STALL sfRobotComInt 56 0 Disable E STALL You may also monitorthe state of the Emergency SIOP button with or without E STALL as an analog value reported in the standard SIP You must first request that the value be included in the standard packet since it is not the default analog port The current analog port is encoded in the timer entry 39 Pioneer 2 Operating System Forexample sfRobotComInt 35 4 select AN4 to b in the standard SIP later if sfRobot timer amp Oxff 4 amp amp sfRobot analog gt 200 E Stop button pressed and engaged else E stop not engaged Extended Packets Several different additional types of server information packets come with P2OS to better support the ActivMedia Robotics community On request from the client by a related P20S command the P2OS server packages and sends one or a continuous stream one per cycle of information packets back to the client over the Host serial communication line Extended packets get intermingled with the standard SIP that P2OS sends to your client every 100 or 50 milliseconds depending on the SinfoCycle parameter Packet Processing Like the standard SIP all P2OS serve
23. b high byte string up to 200 bo length of string length prefixed b first byte of string Packet Checksum Calculate the PSOS P2OS client server packet checksum by successively adding data byte pairs high byte first to the running checksum initially zero disregarding sign and overflow If there isan odd number of data bytes the last byte is XORed to the low orderbyte of the checksum NOTE In P2OS the checksum word is placed at the end of the packet with its bytes in the reverse order of that used for arguments and data that is bo isthe high byte and bi isthe low byte Packet Errors Currently P205 ignores a client command packet whose Byte Count exceeds 200 or has an emoneous checksum The client should similarly ignore emoneous server information packets P20S doesnot acknowledge receipt of a command packet nor does it have any facility to handle client acknowledgment of a server information packet Consequently Pioneer client server communications are as reliable as the physical communication link A cable tether between the robot and client computer such as a piggyback laptop 30 ActivMedia Robotics provides very reliable links radio modem mediated communication is much less reliable Accordingly when designing client applications that may use radio modems do not expect to receive every information packet intact nor can you expect the server to accept every command Table 4 Standard 205 Server Informat
24. begins firing your robot s sonar arrays in the predefined default sequence 1 8 9 16 17 24 and 25 32 one sonar per array simultaneously 205 also begins sending the sonar ranging results to the client via the serverinformation packet Use the soNAR command to enable argument is 1 or disable argument is 0 the sonar pinging This is an all or nothing command you cannot disable a single array this way Forexample sfRobotComInt sfCOMSONAR 0 Stop the pinging when not needed Use the sonar PoLLING command to change the polling sequence of an amay Its argument is null terminated string of up to 15 sonar numbers Front sonar are numbered 001 through 1 010 octal and the rear sonar 011 through 1100 for 20 See the next chapter for details on how to enable sonararrays with p2oscf 38 ActivMedia Robotics example You may repeat a sonar number and have it ping more than once per sequence Forexample sfRobotComStrn sfCOMPOLLING 001 002 001 002 4 ping front left only Note that if the string is empty the sonar get tumed off even though you hadn t disabled the sonar with the soNAR command BUMP STALL Because the robots are programmed to climb it can take up to a second or more to detect object collisions and subsequent motor stalls With P2OS version 1 5 we introduced a responsive way to stop your robot within a few milliseconds upon collision with an obstacle BUMP STALL With the robot
25. by amplifying the position emor Large gains will have a tendency to overshoot the velocity goal small gains will limit the overshoot but cause the system to become sluggish We ve found that a fully loaded robot works best with a Kp setting of around 15 to 20 whereas lightly loaded robot may work best with Kp in the range of 20to 30 The D term Kv providesa PID gain factorthat is proportional to the output velocity It has the greatest effect on system damping and minimizing oscillations within the drive system The term usually is the first to be adjusted if you encounter unsatisfactory drive response Typically we find Kv to work best in the range of 600 to 800 for lightly to heavily loaded robots respectively The Term Ki moderates any steady state emors thereby limiting velocity fluctuations during the course of a move At rest your robot will seek to zero out any command position emor Too large of a Ki factor will cause an excessive windup of the motor when the load changes such as when climbing overa bump oraccelerating to a new speed Consequently we typically use a minimum value for Ki in the range of Oto 10 for lightly to heavily loaded robots respectively Encoder and Revcount P20 Susesthe encoder and revcount parameters to convert your platform independent speed and rotation commands typically expressed in millimeters or degrees per second respectively into platform dependent units In previous versions the encoder va
26. foreach test For example Left forward 13 2 15 Asdescribed above the first MoToRS pressand release putsthe robot into joydrive mode 26 ActivMedia Robotics Use the drive test to ensure that the drive motors are working and that the encoder cables are in their correct sockets on the motorpower board They re the same size and have the same number of pins so they can be mistakenly switched right for left or left for right In that eroneouscase the robot will spin madly place Sonar Test When the motorstest completes self tests automatically continue to the sonartests You should hear the distinctive clicking sound as each sonar pings one from each of two arrays simulta neously each in order from left to right in front and right to left in the rear The LCD displays in hexadecimal notation the sonar number and the number of microsecondsit takesto receive an echo from a nearby object such as yourhand For example this might be LCD message if you held your hand a few inches from the center sonar during itstest period FS 3 034A RS B 7000 12 4V Absent echoes retum at the maximum time of 7D00 Press the white MOTORS button to individually test each sonar in the arays 16 If you have added sonar such as with a PeopleBot a second set of sonar tests automatically commence Bumpers The next self test displays the states of the inputs from the front and rear bumpers available for Pioneer 2 and PeopleBot rob
27. 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 four types of P205 client command arguments none unsigned integers two bytes long signed integers two bytes long and NULL terminated strings consisting of as many as 196 characters The byte order where applicable is least significant byte first Negative integers are transmitted astheir absolute value unlike information packets which use sign extension 34 ActivMedia Robotics for negative integers see below The argument is an integer a string or nothing depending on the command Saphira Client Command Support Saphira as well as ARIA all support P2OS client commands with useful library functions You can find prototypes SAPHIRA handler include saphira h saphira pro Saphira s 205 command names have the prefix fCOM Not all 205 command namesare supported in Saphira See the Saphira Software Manual For example to enable the motors from the Colbert interaction window in the Saphira client GUI type sfRobotComInt 5 1 Orto have your Pioneer2 play a tune albeit rathertinny type sfRobotComStrn sfCOMSAY 1 6 2 105 4 Programming P20S You may create your own 205 interface or use the convenience functions available through the various applications devel
28. may drive your Pioneer 2 around without the niceties of a client s protective behaviors like obstacle avoidance so be careful Pioneer 2 ATs and the Performance PeopleBot come standard with a joystick connector and intemal wiring An accessory kit is available to adapt other models See Appendix C for connection deta ils Because they share ports on the User I O connector of the microcontroller older versions of the Pioneer 2 Gripper interferes with joystick operation 14 One solution is to switch the control lines with a 4PDTtoggle switch See AppendixC for details Altematively there is an accessory kit available that moves the Gripper controls to the General I O bus liberating the User I O ports for other uses including attaching a joystick Visit the Pioneer webpages http www activrobotscom and contact sales activmedia com for details Joydrive Operation To joydrive your robot when not connected with a client program like Saphira or ARIA attach a PC joystick to the 15 pin DSUB socket of the robot s joystick port Then after switching the robot s Main Power oN press the white MoToRs button once Listen for a rhythmic low tone beeping indicating joydrive mode To joydrive while connected with a client you must have the client send the P2OS command number 47 with an integer argument 1 to enable joydrive Then press and release the joystick fire button to enable self calibration mode Have your client send the P205SJ oyd
29. microcontroller operates independently from the host serial port and is for accessory attachments such asthe PIZRobotic Camera Note the additional power connections Table 19 Auxiliary Intemal Serial Port Connections AUX J P7 Pin Connection 1 0 2 12VDC switched 4 12 VDC switched s m BM 5 G s 3 WDC switched 9 Gu 10 5VDCGwithed User Expansion Port A 20 pin IDC socket on the P2OS microcontroller provides the following digital analog and power ports for user connections Y 8general pumose digital input and output ports ID O DO 7 Y 5analog to digital input ports AD1 5 60 ActivMedia Robotics 4 Pulse width modulation ports PWM 1 4 1 signal ground Gnd 1Vcc 45 VDC 1Vpp 12 VDC lt lt lt lt Note that the general purpose I O and analog to digital ports are shared with the General I O connector below and joystick circuitry and may not be available for use on all robots For example the analog lines P5 4 7 are used by the Joystick port which now comes standard with the Pioneer 2 AT and Performance PeopleBot In addition four of the A D ports and the PWM ports are shared with digital input and output lines respectively Table 20 Userl O Expansion Port D5 6 7 UO lt K JU lt e NB EE solsolso lt O ARA mm
30. monitor keyboard mouse and 10Base T Ethemet access as well as the means to reset and switch powerforthe onboard computer The ATcomes with a single accessory panel in the Deck Fastened down with finger tight screws the ATpanelisaccessible through a hinged door 6 With older Pioneer 2 models you also need to remove the Gripper before removing the Nose With the DXE and newerAT the Nose and Grippercome off together so you only need to remove the Nose smounting screws See Chapter8 Maintenance amp Repairfor details 12 ActivMedia Robotics All models come with an access port nearthe center of the Deck through which to run cablesto the intemal components Sonar Arrays with Gain Adjustment Natively ActivMedia robots support both front and rear sonar arrays each with eight transducers that provide object detection and range information for features recognition as well as navigation around obsacles With sonar expansion electronics you may add up to 16 more sonar in two additional of eight sonar each PeopleBots for instance have an additional amay at the front of the upper Deck The sonar positions in all arrays are fixed one on each side and six facing outward at 20 degree intervals Together fore and aft sonar arrays provide 360 degrees of nearly seamless sensing forthe platform Each sonar array comes with its own driver electronics for independent Front contro Each armays sonar are
31. retrieves the current identifying and operating parameters from your Pioneer 2 or PeopleBot robot Some of the parameters Constants are not to be changed The others Variables are the identifying and operating parameters that you may edit with p2oscf With p2oscf you edit a temporary copy of the parameters list Your changes are not changed in your robot s FLASH memory until you choose to explicitly save them Even then p2oscf will write to FLASH only if you have changed some parameter value Writes to the C166 FLASH are guaranteed for only 100 cycles so we caution that you reconfigure update your P2OS microcontroller only when necessary 48 ActivMedia Robotics Step 6 Save Your Work Use the save command to save your configuration changesto FLASH orto a disk file We strongly recommend that you save each of your robots parameter values to disk for later retrieval should your microcontroler get damaged or it s FLASH inadvertently erased Default parameter files come with each P2OS distribution but it is tedious to reconstruct an individual robot sunique configuration Editing P2OS Parameters To view the list of current P2OS constants or variables type a c or v respectively followed by retum Enter Similarly type or help to see a lis of p2oscf commands Table 14 p2oscf control commands keyword value Alone keyword displays current edited value Add value argument to change current value D
32. to suit your application See Chapter 7 Updating amp Reconfiguring P2OS for details 18 ActivMedia Robotics Chapter 4 Quick Start Your ActivMedia robot comes ready for action 1 This chapter describes how to operate the mobile robot with the Saphira demonstration software For more details about programming and operating your ActivMedia mobile robot with Saphira ARIA or other client software see their respective programming manuals Preparative Assembly Out of the box your ActivMedia robot comes fully assembled with its batteries fully charged just slide them into the battery box through the back door You also may need to attach an antenna or plug in an accessory that we intentionally left unatta ched so as to prevent damage during shipping Consult the Tech Notes and accessory manualsthat may accompany your robot for final assembly details Figure 14 Your robot server needs a serial link with a client computer Your robot requires a serial communication link with a client for operation The serial link may be Y Atetherfrom the robot s9 pin serial connectoron the Console to a computer Y A piggyback laptop cabled to the robot s9 pin serial connectoron the Console Y Anoptional radio modem pair one inside the robot attached to the microcontroller s host serial port and a companion radio modem connected to the serial port of the client computer Y Anintegrated onboard PC wired intemally for direct onboard control Saphi
33. 1 also work with the Pioneer zoom colorcamera with AT Further applications developed forthe Pioneer onboard PC and 1 work with little orno porting to the Pioneer 2s framegrabber for color tracking and surveillance Pioneer 2 and PeopleBot The next generation of Pioneer Mobile Robots including the Pioneer 2 DX CE and AT introduced in Fall 1998 through Summer 1999 improved upon the Pioneer 1 legacy while retaining its many important advantages Indeed in most respects particularly with applications software Pioneer 2 works identically with Pioneer 1 models 3 Price performance ratio included The much more capable and expandable Pioneer 2 wasintroduced four years later for just a few hundred dollars US more than the original Pioneer 1 Sporting a more holonomic body larger wheels and stronger motors for better indoor performance the Pioneer 2 DX and CE models like Pioneer 1 were two wheel differentia mobile robots The four wheel drive Pioneer 2 AT has independent motor drivers as well as a stall detection system And unlike its predecessor the Pioneer 2 AT comes with inflatable pneumatic tires and metal wheels for much more robust operation in rough terrain as well as the ability to nearly 30 kilograms 66 lbs of payload and climb a 60 percent grade newest version of the 2 AT introduced in mid 2001 includes an integrated joystick port for manual operation and a hinged top plate for ea
34. 20OS calibration tools revcountcal and compasscal Both tools are for helping your robot and its V 2XG compass accessory adapt to your unique operating environment The revcount calibration tool helps you redefine the differential encoder counts that describes a full 360 degree tum of yourrobot The default revcount value works fine for smooth hard surfaces but it can change dramatically for other operating environments particularly forthe Pioneer2 ATon loose outdoor versushard indoor surfaces The compass tool lets owners calibrate their integrated electronic compass for various environments and positions on the robot Note that unlike the p2oscf and p2osd1 tools the compass and revcount calibration tools use the Saphira operating environment Hence the programs need to be located in the bin directory of a licensed Saphira installation Saphira license comes with your ActivMedia Mobile Robot and you may retrieve new licensed versions from the http robots activmedia com support website See Chapter3 Quick Start foradditional detail Briefly the programs operate in two stages First they connect with your Pioneer 2 or PeopleBot robot via a Saphira based client and retrieve the robot s current operating parameters via the ENCODERpac Or CONFIGpac extended SIPs see previous chapter Following program prompts you change the orientation of the robot or compass rotate the compassand orthe robot and the program calculates a n
35. DICATORS n seen eterne nnns sess ette tensa sess eese naga assess enean 15 Main Power Fuse and Indicator enne sesese ses eses etes esee ese esses setas esee 15 Recharge Power Port i s RO Ee RR eet eie eb seo E b he Ee rM 15 Liquid Crystal Display amp Contrast Adjustment eese entren nennen rennen 16 RESET and MOTORS s ente nnne 16 SERIAL D 17 eC eot eene ee MESE 17 PASH S 17 PEOPLEBOT SENSORS AND EMERGENCY 1 4 0 0710 100000000 6000000000050 08 18 Pioneer 2 Arm related SIPs and Commands eese Error Bookmark not defined SAFETY W ATCHDOGS AND CONFIGURATIDON enne 18 CHAPTER 4 QUICK START erre sccustsseuccecsesuveetecsdccvesteceteenusdccsecdssesseoaeceubasdesedssoveeedsccssecvesvese 19 PREPARATIVE ASSEMBLY e t stets E EE E EEr e prece eaae E adea e ai oe 19 Saphira Client Installation S eite ete reete e dads does Ue ra am 19 SAPHIRA CLIENT START UP esee 20 ROBOT COLD START UP ina Sete a capere S a eee Quee 20 RADIO ON
36. Deck Gripperorbump ring may remain attached hd NEE Figure 23 Remove indicated screwsto remove original Pioneer 2 DX CE or PeopleBot Deck SU q x ly pad x ah i m x Figure 22 Remove indicated screwsto remove 57 original Pioneer 2 AT Deck Maintenance and Repair Py sl a d Figure 25 Remove indicated screws to flip open the hinged Pioneer 2 ATrear Deck Figure 26 Remove indicated screws to flip open the Pioneer 2 DXE rear Deck Factory Repairs If after reading this manual you re having hardware problems with your Pioneer or PeopleBot robot and you re satisfied that it needsrepair contact us support iactivmedia com 603 924 2184 fax 603 924 9100 voice In the body of your email or fax message describe the problem in as much detail as possible Also include your name email and mail addresses as well as phone and fax numbers Tell us when and how we can best contact you we will assume email is the best manner unless otherwise notified We will try to resolve the problem through communication If the robot must be retumed to the factory for repair obtain a shipping and repair authorization code and shipping details fro m us first 58 ActivMedia Robotics Appendix A C166 Controller Ports amp Connections This Appendix contains pinout and electrical spec
37. ENT SOPT WARE Q as m EE a iah a te e eo etes Ge ees A IB Qn idup kus 4 ActrvMedia Robotics Basio uuu haah Rr Ee 5 ARIA nd Oe EU RR ERR eut E Bis 6 ede aq ue PERI 6 THE PIONEER EEGACY irr iter trot ette oett eo ee tede ete e ree 7 PIOReer A k asuanata ahua h aap satel NG Sasu kaa 7 Pioneer ue eS UR SH autein e ee ee e 7 MODES OF tr eec t eee ete eee cops ds nc e td p eu ue e ec c Pe PR eet 9 CHAPTER 3 SPECIFICATIONS amp CONTROL 10 PHYSICAL CHARACTERISTICS iiec c dete Re e Ce preda ede eee uda eee eve anle Pda een eden ce aree e 10 MAIN COMPONENTS ernn ere ienee ie 10 Deck s and Console cte sete a EEE 11 Body Nose and Accessory Panels 12 Sonar Arrays with Gain Adjustment sees eese nee 13 Motors and Position Encod rS ss a deer He REESE ee Pre 14 B tteries ahd Powers seo SO uin te pu dirette trei bv isl ts acter RET 14 ELECTRONICS DI 14 Motor Power Board 3s eee a duc eite em ebur t end 15 Microcohntrollek Qua ESSERE EMT 15 Sonar Boards i nte ten ertet SEE SSS ree 15 CONTROLS PORTS AND IN
38. ESTS 5 rte eei cete etae 28 USER PWMS urhe ttt eee eet eee e e ex ie ce eee at 28 CHAPTER 6 PIONEER 2 OPERATING SYSTELM 29 COMMUNICATION PACKET 29 Packet Data Types siat EE CHR EN D eb 30 T cketGhecksunii i e she ids ae Nu 30 na a ce ete t tespatte 30 SERVER INFORMATION 5 RAYC sese 32 CIENT COMMANDS adea GI 32 Client Command Argument Types a Ea E aE VENE EERE EE ii 34 Saphira Client Command Support anna supaq esee eene nennen EN EESE AEE 35 PROGRAMMING P20O8 eee f erre ete e cer e eR 35 Establishing a Client Server Connection SYNC esses eene nennen eene entente 35 Autoconftg urdiion sau eate th esee deri egeo ep ere t ERE 35 Opening the Servers OPEN 5 n ge t eser qu ien de tla D HERREN 35 Keeping the Beat PULSE i as eda ee aa ren poet i REP ar 36 Closing ure e e dett uns 36 MOVEMENT COMMANDS 4 die
39. Eror opening that 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 ora modem orr for instance the client will attempt to Syncing 0 six times and fail with a Connection refused In that case reset the robot and check your serial connections Forinstance if you are using the InfoWave radio modems the DCD lamp on the host should light up If it doesn t it meansit cannot find the one in the robot Once successfully connected rememberthat the robot won t move unless its motors are engaged and that you have to manually engage the motors just after you make a connection with a client not beforehand If for some reason communications get severed between the Saphira client and P20S server but both the client and server remain active you may revive the connection with little effort If you are using radio modems first check and see if the robot is out of range To test for range limits simply pick up the robot and move it closer to the basestation radio modem If the robot was out of range the connection should resume If not checkto make sure that radio modems were not inadvertently switched orr Communications also will fail if the client and or server is somehow disabled during a session For instance if you inadvertently switch off the robot s Main Power or press the 23 Quick Start RESET button you must restart the connection Tum
40. Figure 20 Pioneer stra pezoidaltuming velocity profile setpoints Note that with P2OS version 1 8 and later you may override deceleration with the emergency stop E sTOP command number 55 or with the Emergency 5 button enabled on the Performance PeopleBot E STALL command 56 Accordingly the robot brakes to zero translational and rotational velocities with very high deceleration and remains stopped until it receives a subsequent translational or rotational velocity command from the client See E STOP and E STALL later in this chapter PID Controls The Pioneer drive servers use a common Proportional Integral Derivative PID control system to adjust the PWM pulse width at the drivers and subsequent power to the motors The motor duty cycle is 200 usec pulse width is proportional 0 500 The P2OS drive servers recalculate and adjust your robot s trajectory and speed every 10ms P2OS v1 l and earlier or every 5ms P20S1J based on feedback from the wheel encoders Note that the lattertime cycle leadsto enhanced performance ofthe robot The default PID values for both translation and rotation are stored in FLASH Beginning with P2OS1 J you may change those valueson the fly with the client commands 84 87 37 Pioneer 2 Operating System Position Integration Pioneer keeps track of its position and orientation based on dead reckoning from wheel motion which isan intemal coordinate position Registration between ext
41. RV 36 Simulator 6 Software 4 Software download 2 Software downloads 5 Sonar 38 Firing rate 13 ON OFF 38 Sonar 13 Sonar Gain 13 Specifications 10 Stalls 18 stallval 18 stallwait 18 STATUS 16 Support 3 SYNC 35 Tabletop sensors 18 TCM2 27 43 Timer 43 Trainer 6 Translation 36 Troubleshooting 23 User I O 25 43 Analog 28 Digin 28 Digout 28 PWM 28 User I O Ports 60 Analog 61 Digital 61 User power 63 Vector 2X 53 2 53 VEL 36 VEL2 36 Wait State 21 watchdog 18 WorldPass 5 69 Warranty amp Liabilities Your ActivMedia robot is fully warrantied against defective parts or assembly forone year after it is shippedto you from the factory Accessories are wanantied for 90 days This waranty explicitly does not include damage from shipping or from abuse or inappropriate operation such asif the robot is allowed to tumble or fall off a ledge or if it isoverloaded with heavy objects The developers marketers and manufacturers of ActivMedia Robotics products shall bear no liabilities for operation and use of the robot or any accompanying software except that covered by the waranty and period The developers marketers or manufacturers shall not be held responsible for any injury to persons or property involving ActivMedia Robotics products in any way They shall bear no responsibilities or liabilities for any operation or application of the robot or for support of any of those activitie
42. Saphira asthe robot moves around its environment Landmarks may be defined as Saphira recognizes and classifies certain sensor data pattems walls and openings for example In Figure 17 forexample a Pioneer 2 DX center octagon has identified a Tones Giow Shik Seni comdor and several doors Notice 2 the small dots which are recent N reflections detected by the front oor sonar array The long lines through the onscreen sonar artifacts are the une 528 calculated corridors geometry The G wr rectangles directly ahead of the A ene eet robot represent obstacle jane 528 detected and of interest to the E Y robot One of Saphira s behaviors i by the way isto have your robot seek and traverse the centerof a corridor Figure 16 The main window of a robot You may enable and disable Saphira connected Saphira client behaviors that intelligently guide your ActivMedia robot by selecting or deselecting them from menu items in the Saphira client and from the client keyboard These include manual drive operation and disabling enabling obstacle avoidance and constant velocity behaviors 22 ActivMedia Robotics When manually joysticking the robot each keypress moves the robot forward or backward faster or slower and incrementally changes its direction For instance when tuming it is often useful to press the left or right tum key rapidly sever
43. VUE 58 APPENDIX A uu u 2 59 INTERNAT SERIAL CONNECPORSs Cs au 60 USER O EXPANSION PORT iere cte aulia A E Pe GE Pre 60 PERFORMANCE PEOPLEBOT I O Suay uiaiia 61 THE GENERAL T O BUS ecce I Ede eee EE ERE e ee tiak uqa 62 P Vguduiblbqi e aaqiis aqe 63 USER POWER CONNECTIONS S ag nn eet e re ndo Gd e qiu ac on a tee 63 ONBOARD COMPUTER OPTION aqakunapa Ee Ee RE Suh dud toate 63 Power Switch J7 and Delayed Shutdown Logic eee nennen 63 Power State Logic ee eet era t tcp Abdus RE A ieee e e e e V bee 64 Compul t POWeF a ise tente ee Deck dea h eet ead 64 APPENDIX CS Q E M 65 JOYSTICKGONNECTOR 22 2 mittenda de IO eiui 65 APPENDIX D 5 E oen Ee so y ct dee Du E uw ecco se uw k Suyu m e re uwa s 66 P 66 09 Ce 68 WARRANTY amp LIABILITIES 70 vi ActivMedia Robotics Chapter 1 Introduction Congratulations on your purchase and welcome to the rapidly growing community of researchers developers and enthusi
44. a main window should open and appear on your graphics screen Otherwise diagnostic emor dialogs will inform you of the problem See Quickstart Troubleshooting below for additional tips Robot Cold Start Up Position your ActivMedia robot on the floor or ground 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 Host serial port baud rate the current 2 5 version number and the battery charge in volts Forexample no conn 19 2 kB P20S vl F 13 8 The heartbeat asterisk character following the battery voltage should be flashing oN and OFF 12 Current verxxis ver62 20 ActivMedia Robotics The same P2OS initialization sequence occurs whenever you press red RESET button Unlike the original Pioneer 1 you cannot engage the drive motors until after you have connected with a client except during self tests RADIO ON If you own radio modems for client server serial communications switch RADIO power ON Starting Client Server Communications After it starts up resets or completes its self tests your robot s onboard servers 205 enters disconnect noconn mode a quiet state in which P20S awaits connection with a client computer and software like Saphira or ARIA To establish a connection between your robo
45. al times in a row because the tum inc rement is small Disconnecting Serial Communications intentionally or unintentionally When you finish playing with your robot pull down the Saphira client S Connect menu and choose the Disconnect option Your Pioneer 2 or PeopleBot will disengage its drive motors and stop moving automatically and its sonar should stop firing The LCD also should retum to the waiting state message You may now slide the robot sMain Power switch to oFF Quickstart Troubleshooting You must have a valid Saphira license to connect with a robot Unlicensed Saphira clients may only connect with the simulator Licensed versions of Saphira come with the robot and can be downloaded by customers from the ActivMedia Figure 18 Please gracefully Robotics support website disconnect the Saphira client from the robot server http robots activmedia com Most problems occur when attempting to connect the Saphira client with a robot forthe first time Make sure you have Saphira properly installed and its related environment variables set It s also a good idea to recheck that the serial cable is plugged into a working serial port on your computer UNIX and Linux users should be sure they have permission to read wnte the connection serial port On the server side make sure your radio modem is on if that is the connection route If you access the wrong serial port the Saphira demonstration program will complain
46. ance the example below digital input DIGIN ports 1 and 5 are on the rest are OFF DIGIN 00100010 DIGOUT 01010101 The DIGOUT ports automatically and mythmically toggle oN and oFF The basic microcontroller has no attachments to the I O ports Because their normal state is floating the DIGIN readings will vary The DIGIN self test becomes useful of course when you have equipment attached to one ormore of the digital input ports See Appendix A forthe location of the digital input and output ports ANALOG Tests P2OS versions 1 2 and later let you altematively use four of the digital input ports as analog to digital A D input ports And there isone dedicated A D port on the User I O connector The ANALOG self test measures the voltage 0 5 VDC applied to each of the A D portsand display its digitized value asa single byte in hexadecimal on the LCD ANALOG 1 A9 13 2 Press the white MOTORS button to select the next analog port 2 5 Port 5 is the dedicated and default A D port Like DIGIN the measured value is unreliable unless you connect something to the port See Appendix A forthe location of the A D ports on the microcontroller User PWMs P2OS versions 1 2 and later let you altematively use four of the digital output ports as pulse width modulating sources to drive servo motors for example The User PWM self test putsa one millisecond pulse onto each of these four PWM ports Monitor them with an oscilloscope
47. and repetitive clic king Press the white MOTORS pushbutton to enable the drive motors The associated green LED should stop flashing and light continuously The amber SERIAL port indicator LEDs on the robot s Console should blink to indicate Saphira client to P2OSserver communications The Console LCD also should display a message similarto the following 13 Choose Local Port to connect with the simulator 21 Quick Start Connected P20S vi F 13 2 Operating the Saphira Demonstration Client When communications between the Saphira client and your robot s servers are established the robot becomes responsive and intelligent For example although it may drive toward an obstacle your Pioneer 2 DXe will not crash unless its obstacle avoidance behaviors have been disabled because it can detect and actively avoid collisions Collision avoidance is just one of the Table 1 Keyboard controlled behaviors many mobie robot behaviors available through Saphira and other Client software available from ActivMedia Robotics including the ActivMedia Robotics Basic Suite ARIA and others Remember this section is meant to familiarize you with your new robot Please read the Incremental right turn respective software manuals for how All stop to get the most out of your robot and software Toggle obstacle avoidance The main window of the Saphira client displays a sonar map built by
48. asa nanaii ee exe eben ee ex bee i drive ext 36 Pioheer in MOHON e fe ee Mee eos Cee owe ics Sau ree ex ERE OE ete e E Eee 37 BIDwConttols maya Sihua Sa ya Qa iet e tede 37 Position Integration spa k aha emet der etude ees rie peu eve a ka au ays 38 SONAR em 38 BUMP STALD emere rt eme Be ahua ata 39 BEZSSTOPANDE STALLE ern ertet eee Ries denter sakii 39 EXTENDED PACKETS ee eere eee reet ge e eee tiec e tes re Hye 40 Packet Processes ese ence per iere e ete geni etae depen greet 40 CONF IGpac and CONFIG Command u n eerte u na Qu una enne trennen 40 SERAUXpac and GETAUX ou us AUR EU Dr Rb ee Ua Dp Ee 41 ENCODERpac and ENCODER Command 42 GRIPPERpac and GRIPREQUEST na sasaqa nasa Suha tete tene ua nennen en 42 PLAYLISTpac and PLAYLIST Command 42 TCM2p c and TEM2 Command ueteri ete eR REHR 43 INPUT QUTP T Q 5 5 rerit Tere REL te e RR ee erecti recedet 43 PIGN TIMER and ADSEL e rt ttt ee enti eee eit 43 DIGOUT and PSUPOS s au adactus eie ee t repe CUR 44 IOp c and IOREQU PST 5 aeui a o ERR IU ERN pe EURO EI RD P PRI Ie oh e DEA 44 Pioneer 2 Arm related SIPS and Commands
49. asts of ActivMedia Robotics intelligent mobile robots This Pioneer 2 Operations Manual provides both the general and technical details you need to operate Figure 1 The Pioneer 2 DX your Pioneer 2 DX CE DXe AT or PeopleBot Mobile and ATMobile Robots first Robot and to begin developing your own Robotics hardware and software Please consult the Pioneer 2 1995 H8 orthe Performance PeopleBot manuals if you own a newer Hita chi H8S based robot Robot Package appeared commercially in Our experienced manufacturing staff put your mobile robot and accessories through a bum in period and carefully tested them before shipping the products to you In addition to the companion resources listed above we warranty your ActivMedia robot and our manufactured accessories against mechanical electronic and labor defects forone year Third party accessories are warranted by their manufacturers typically for 90 days Even though we ve made every effort to make your ActivMedia Robotics package complete please check the components carefully after you unpack them from the shipping crate Basic Components all shipments 555555 One fully assembled mobile robot with battery CD ROM containing licensed copies of ActivMedia software and documentation Hex wrenchesand assorted replacement screws Replacement fuse Set of manuals Registration and Account Sheet Optional Components and Attachments partial list Y Battery charger som
50. ation will be otherwise distracted for some time periodically issue the PULSE command to let P2OS know you are indeed alive and well If the robot shuts down due to lack of communications traffic it will revive upon receipt of a client command and automatically accelerate to the last specified soeed and heading setpoints Closing the Connection CLOSE To close the client server connection disabling the motors and sonar and resetting P20S to its wait state simply issue the client CLOSE command Movement Commands The P2OS motor control servers accept several Table 7 205 movement commands different motion com mands of two mutually exclusive types either direct wheel velocities or HEAD translational rotational I servers automatic ally DEHEAD translational or rotational direct wheel veloc ity control mode when they SETRV Sets maximum rotational velocity and is receive a VEL2 command velocity used for Colbert turn and turnto Any other motion command speeds abandon direct wheel velocity control Forward back velocity For example if P2OS is in MOVE Forward back distance direct wheel velocity VEL2 mode and is given SETA Translation de acceleration to achieve setpoint HEAD mmand it 7 bles th Pa di i dt SETV Sets maximum translational velocity and is nd ce q used for Colbert move command speed velocity mode and starts controling the heading 19 Altemativ
51. batteries are given the maximal current and trickle mode green LED indicator which the batteries are given only enough current to remain at full charge Electronics Pioneer 2 and PeopleBot standard electronics resde on two main boards a microcontroller and a motor power distribution board Each sonar also has a controller board mounted its base A special I O expansion board found inside the left column strut of the Performance PeopleBot distributes User I O for use by the robot s joystick port as well asit stabletop and breakbeam IR sensors A Main Power switch at the back of the robot controls power for the entire system Processor control switchesand indicators fit through the Console 14 ActivMedia Robotics Motor Power Board Inside the robot mounted to the battery box isthe Motor Power board It supplies both the 12 and five volts direct curent VDC power requirements of your robot s systems The standard Motor Power board has a 12 pin User Power connector that supports four sets of five and 12 VDC power ports total 1 5 ampere for custom accessories An optional computerpower section to the board supplies power forthe onboard PC It includesa special low power and power down circuit that lets you gently shut down the onboard PC without direct connection through a keyboard or monitor See Appendix B in this manual and the Computer Tech Notes that may accompany your robot for details Microcontroller The Pio
52. can carry over 30 Kg 66 lbs more Yet the Pioneer 2 is lightweight enough that it is also as easy to transport asa suitc ase a task made even easier by the DXe s built in handle Main Components ActivMedia robots are composed of several main parts Deck s and Console Body Nose and Accessory Panels Sonar Arra y s Motors and encoders Batteries and Power lt lt 4 4 lt 10 ActivMedia Robotics Deck s and Console The original Pioneer 2 DX CE and AT Decks are one piece the top plate of the robot The new DXe and AT models now have hinged top plates which let you much more easily accessthe intemal components of the robot Figure 9 Pioneer 2 AT Console and hinged Deck The robot s Deck is simply the flat surface for mounting projects and accessories such as the PTZ Robotic Camera ora laser range finder The PeopleBot s have lower and upper Decks Feed through slots on each side of the DX CE and DXe Deck let you conveniently route cablesto the accessory panels on each side of the robot A removable plug in the middle of the Deck on all models gives you convenient access to the interior of the robot In general you should try to center the robot s payload over the drive wheels If you must add a heavy accessory to the edge of the Deck counterbalance the weight with a heavy object on the opposite end A full complement of batteries helps balance the robot too The Pioneer 2 s or PeopleBot s Consol
53. ch isthe default installation path to Saphira stop level directory Then reboot Linux users should be sure they have permission to read write through their PC s serial port that connects with the robot The default is dev ttys0O Saphira also requires X Window If you have an onboard PC with Ethemet radio export the X Windows display if you are operating the Saphira GUI from a remote X terminal overthe network With bash for example sexport DISPLAY remote computer 0 where remote computeristhe known hostname etc hosts or DNSentry orIP address of the remote X terminal Saphira Client Start Up To start the Saphira client demonstration program first locate its executable It s inside the bin directory that is in the top level Saphira directory typically Saphira verxx bin or us local saphira venx bin The demonstration program is named saphira or saphira exe For instance with the mouse double click the saphira exe icon inside C Saphira ver62 bin On your Windows 9x ME desktop On your UNIX or Linux machine via X Windows terminal navigate cd to the usr local Saphira ver62 bin directory and type saphira Or saphira to execute the Saphira client software there We set the 4PATH for the onboard Linux based PC systems that we install for you so that you need only type saphira in an X Window terminal to execute the demonstration program If the demonstration program is installed and executed properly a Saphir
54. changed thereafter See next chapterfor details The Pioneer class string is simply Pioneer the subclass depends on your robot model P2DX Or P2AT for example Clients may use these identifying parameters to self configure their own operating parameters ARIA for instance loads the robot s related parameters file found in a special robot params directory Opening the Servers OPEN Once you ve established a communication link the client should send the OPEN command to the server which causes the ActivMedia robot controllerto perform a few 35 Pioneer 2 Operating System housekeeping functions start its sonar and motor controllers among other things listen for client commands and begin transmitting server information to the client Note that once connected Pioneer 2 s and PeopleBot s motors are disabled regardless of their state when last connected After starting a connection you must either enable the motors manually white button or send the 205 motors ENABLE command with the argument 1 sfRobotComInt 4 1 forexample Keeping the Beat PULSE A P2OS safety watchdog expects that the controller receives at leas one communication packet from the client every watchdog seconds default is two Otherwise it assumes the client server connection is broken and stops the robot It s good practice to have the client send a PULSE command just after opening the P20S servers And if your client applic
55. cket here for completeness but they have no effect on the operation or performance of your Pioneer 2 or PeopleBot Mobile Robot 42 ActivMedia Robotics Table 10 GRIPPERpac state byte bit Function State 0 Grip limit paddles fully open when 0 otherwise between or closed 1 Lift limit Lift fully up or down when 0 otherwise in between 2 Outer breakbeam obstructed when 0 nothing in between when 1 3 Inner breakbeam obstructed when 0 nothing in between when 1 4 Left paddle grasping when 0 5 Right paddle grasping when 0 6 Lift moving when 1 7 Gripper moving when 1 The AmigoBot Sounds playlist consists of a series of one to 255 24 byte long sound references followed by individual sound data Sound references may be NULL or redundant Sound references consist of a 16 byte sound name followed by two long integers which specify the sound data position and length in the playlist The PLAYLIST P2OScommand 91 with any or no argument responds with a packet of 25 NULL bytes telling the client that your P2OS based robot doesnot have any onboard sounds TCM2pac and TCM2 Command The TCM2 accessory is an integrated inclinometer magnetometer thermometer and compass that attaches to the AUX serial port of the 205 microcontroller When attached and enabled special ITCM2 compass servers read and report the heading as the compass byte in the standard SIP Use the TCM2 command to request additi
56. e click the program icon Instead use your mouse to successfully launch the program by dragging and dropping the nex icon 2051 H hex for example onto the psosdl exe icon But this works only if you use the default coM1 serial port and the current directory is set to the 2 5 The universal solution is to execute p2osd1 exe and pass it the proper arguments from the MS DOS Prompt program which normally resides the Programs section of the Start menu You might also Run the program from the start menu Download Troubleshooting The p2osd1 program will tell you if the download was successful or not If it was simply reboot the robot and go on to connect with a client or change its operating parameters see next section Otherwise try the download from Step 1 again to be sure you performed each step correctly Since FLASH gets erased at the beginning of a download an unsuccessful session may leave the controller empty and apparently broken although it isnot Repeat downloadsuntil suc cessfully completed 47 Updating and Reconfiguring P20S Configuring 205 Operating Parameters The program p2oscf exe is the way you view and change your Pioneer 2 s identity and operating parameters Steps 1 3 Preparing for Configuration Prepare for changing your robot s configuration parameters identically to Steps 1 2 and 3forupdating P20S described above Step 4 Run p2oscf As with p2osd1 you will find p2oscf exe
57. e consists of a liquid crystal display LCD MOTORS and RESET control buttons and indicators and an RS232 compatible serial um port with a 9 pin DSUB connector The Pioneer 2 and Figure 10 The Console is in PeopleBot V1 Consoles st at the front of the Deck The the left column ofthe Performance PeopleBot s Console is in the left column Performance PeopleBot Attached directly undemeath the Console isthe robot s microcontroller Operations details are provided in the next chapter Quick Start 5 Lower Deck of the PeopleBot s 11 Specifications and Controls Body Nose and Accessory Panels Your ActivMedia robot s sturdy but lightweight aluminum Body houses the batteries drive motors electronics and other common components including the front and rear sonar amays The Body also has sufficient room with power and signal connectors to support a variety of robotics accessories inside including an A V wireless surveillance system radio modems orradio Ethemet onboard computer and more On all models except the DE a hinged rear door gives you easy accessto the batteries which you may quickly hot swap to refresh any of up to three batteries The PeopleBot V1 has a removable pedestal mounted to its base Deck A removable back panel gives you access to intemal wiring and components including stereo speakers A V and Ethemet radios and microphone preamplifier On top of the pedestal is the upper Deck where you may add compon
58. e contain powerreceptacle and 220VAC adapters Y Onboard PC computer with PC 1044 bus hard drive and other accessories Y Radio Ethemet and or serial modems one mounted inside the robot Y Companion radio for LAN orbasestation connection Y Supplementary and replacement batteries Y 3 Battery Charge Station 110 220 VAC Y Added Y Gripper Y 5 DOF Am with gripper Y ActivMedia Color Tracking System ACTS Y Stereo Vision Systems Y Pan Tilt Zoom Surveillance Cameras Y Custom Vision System Y Range finding laser Y Global Positioning System yv Compass Y Bumper tings Congratulations Y Serialcablesforextemal connections Y User Supplied Components System Requirements Y Client computer 586 classorlater PC with Microsoft Windows 9x ME or RedHat Linux operating system Y One RS232 compatible serial port Y Fourmegabytes of available hard disk storage Additional Resources New ActivMedia Robotics Pioneer 2 and PeopleBot customer get three additional and valuable resources Y A private account on our Intemet server for downloading software updates and manuals Y Accessto private newsgroups Y Directaccessto the ActivMedia Roboticstechnical support team Software We maintain a 24 hour seven day per week Web server where customers may obtain software and support materials http robots activmedia com Some areas of the website are restricted to licensed customers To gai
59. e robot from a tethered joystick we provide some self test programs that exercise your robot s microcontroller hardware and software We examine these modes in some detail in Chapter5 J oydrive and Self Tests Specifications and Controls chapter 3 Specifications amp Controls ActivMedia s robots may be smaller than most but they pack an impressive of intelligent mobile robot capabilities that rival bigger and much more expensive machines For example the Pioneer 2 DXe with onboard PC is a fully autonomous inteligent mobile robot but unlike other commercially available robots the DXe s modest size lends itself very well to navigation in tight quarters and cluttered spaces such asclassrooms laboratories and small offices At the same time the powerful P2OS server with ActivMedia Robotics client software is fuly capable of mapping its environment finding its way home and performing other sophisticated path planning tasks Physical Characteristics Weighing only 9 kg 20 pounds with one battery the basic Pioneer 2 DXe Mobile Robot is lightweight but its strong aluminum body materials and solid construction make it virtually indestructible 2B cm seing radiua 3 a sem 5 crm Figure 8 The Pioneer 2 DXE s physical dimensions and swing radius These characteristics also permit it to carry extraordinary payloads The DXe can carry up to 23 Kg 50 lbs additional weight the Pioneer 2 AT
60. econfiguring P20S Saving and Restoring The p2oscf program lets you save and restore whole configuration sets from disk stored files Thislets you easily configure your robot for various different environments as well as maintain a record of youroriginal and test parameters To save your current configuration to a disk file get connected through p2oscf as described earlier This loads the current operating parameters into the configuration editor Then simply save your current configuration to disk For example save C p2o0s myP2DX The command doesnot change the working configuration in any way Use the p2oscf restore command to not only retrieve the current operating parameters from the robot but to load a saved parameters files from disk The P2OS distributions come with common configuration files for the all ActivMedia robot models including p2de forthe Pioneer 2 DXe p2at forthe Pioneer2 AT and so on You may edit the file restored parameters just as you edit those retrieved from the robot And you may save those edited parameters over the same file ora different one using the p2oscf save command Note that file restored configuration parameters are not necessarily the same as those stored in the robot s FLASH You must save them there separately The following sequence of p2oscf commands illustrates the restore save process Notice that the name stored on the robot doesn t change until the change is saved to FLASH command name
61. ely disable the motors with the ENABLE command argument 0 36 ActivMedia Robotics and velocity of the robot When in translation rotation TR motion control recommended separate translation and rotation servers work independently to achieve the specified forward reverse speed and heading of the robot P2OS will try to make the robot achieve the desired translational velocity and rotate to the desired heading as soon asthe commands are received Acceleration and deceleration managers which default values you may prepare and also change on the fly SETRA and SETA operate independently for translation and rotation too Pioneer in Motion When P2OS receives a translation rotation or direct wheel velocity command it accelerates the robot at the SETA both TR and VEL2 modes and SETRA TR mode only rates you program or at the rates preset in the P2OS configuration parameters Rotational headings and translational setpoints are achieved by a trapezoidal velocity function This function is recomputed each time a new motion command is received making on the fly changes possible Rotational and translational velocities are limited to the short turn maximum values set in Tm Ux rad rotational the P205 parameters or velocty which you may reset with the SETVEL and SETRV commands Maximums take affect N time N 7 on subsequent Eon cried 7 commands not previousy established velocity or heading
62. emal and intemal coordinates deteriorates rapidly with movement due to gearbox play wheel imbalance and slippage and many other real wond factors You can rely on the dead reckoning ability of the robot for just a short range on the order of several meters and one or two revolutions depending on the surface Carpets tend to be worse than hard floors Also moving either too fast or too slow tends to exacerbate the ab solute position errors Accordingly consider the robot s dead reckon ing capability as a means of tying together sensor readings taken over a short period of time not as method of keeping the robot on course in a global map 180 Figure 21 Intemal coordinate system for P20S The orientation commands HEAD and DHEAD tum the robot with respect to its intemal dead reckoned angle On start up the robot is at the origin 0 0 pointing toward the positive X axis at 0 degrees Absolute angles vary between 0 and 359 Asthe robot moves it will update this intemal position based on dead reckoning The X Y position is always positive and rolls over at about 3 000 millimeters So if the robot is at position 400 2900 and moves 400 millimeters along the Y axis and 600 millimeters along the X axis its new position will be 2800 300 You may reset the intemal coordinates to 0 0 0 with the sero P20OS command Sonar When oPENed see Opening the Servers OPEN above P20S automatically
63. enced Pioneer users can be assured that P2OS is upwardly compatible with PSOS implementing all the same commands and information packets 205 of course extends the servers to add new functionality improve performance and provide additional information about the robot s state and sensing Hence P2OSspecific programs may not operate on original Pioneers Communication Packet Protocol Table 2 Main elements of PSOS P20S communication packet protocol Header 2 OxFA OxFB Packet header same for client and server Byte Count N 2 Number of subsequent data bytes including the Checksum word but not the Byte Count Maximum 200 bytes command Client command or server information or SIP packet SIP 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 Pioneer 2 Operating System server to client Both are bit streams consisting of four main elements two byte header a one byte count of the number of subsequent packet bytes the client command and its arguments or the server information data bytes and finally a two byte checksum Packet Data Types Client commands and server information packets contain several data types as defined in Table 3 Table 3 P2OS Communication Packet Data Types Data Type Bys by low byte br high bye bo low byte
64. ents like the PTZ Robotic Camera that normally mounts to the Deck of a Pioneer 2 PeopleBot s also have an additional front sonar amay Both PeopleBot models include front and rear bump rings for stability as well as sensitive collision detection The Noses of Pioneer 2s and PeopleBots are empty except when equipped with an onboard PC The Nose is readily removable foraccess Simply remove two screws from undemeath the front sonar amay With the 2 AT a third screw holds the Nose to the bottom of the Body the DXe sNose is hinged atthe bottom Figure 11 The PeopleBot V1 hasa removable pedestal with top Deck and A rear panel gives you accessto the pedestal s intemal components and connectors Earlier Pioneer 2 models and the PeopleBots have a Nose that is secured by a single screw beneath the front sonararmay and one on the bottom of the robot Once the mounting screws are removed simply pull the Nose away from the Body This provides a quick and easy way to get to the accessory boards and disk drive of the onboard PC as well as to the sonar gain adjustment for the front sonar amay The Nose also isan ideal place for you to attach yourown custom accessonesand sensors The Pioneer 2 DX DXe CE and PeopleBot V1 robots come with removable panels on each side through which you may install accessory connectors and controls A special side panel comes with the onboard PC option for example which gives users
65. equipped with forward and or rear bumpers you can now program P2OS to immediately stop the robot and notify the client of a stall if any one of the forward orrearbump sensors get triggered Send the BUMP STALL command 44 with a integer argument of 0 to disable the behavior default on startup Use the argument value 1 to enable BUMP STALL only when a forward bump sensor gets triggered 2 for rear only BUMP STALL or 3 for both rearand forward bump ring activated stalls For example to enable BUMP STALL when any one of the five contact sensors on a forward bump ring getstriggered sfRobotComInt 44 1 E STOP and E STALL In an emergency your client may want the robot to stop quickly not subject to normal deceleration In that case send the E STOP command 55 Like BUMP STALL use P2OS built in STALL feature version 1 E or later to simulate stall when someone presses the Performance PeopleBot s Emergency STOP button An integrated switch in the button causesthe Userl O analog port 4 on the microcontroller to go high 5VDC and thereby notify P20S of the emergency condition Accordingly when enabled STALL will disable the motors in P2OS and notify your Saphira or other software client that the robot has stalled stall bytes in the standard SIP thereby avoiding the motor rush that may occur when you reactivate the emergency STOP button Since it is normally disabled you must enable E sTALL through software
66. ervers may not be up to the task of managing a deluge of commands 17 Or50 milliseconds Read on 18 Indeed if enabled the altemative SIP apparently will break the client software Read carefully 32 ActivMedia Robotics Table 6 205 505 command set _ 1 Before Client Connection L 02 SYNCO O none Start connection P2OS echoes 3 x 1 0 synchronization commands back to client _ After Established Connection PULSE O none Client pulse resets server watchdog 3x 10 ENABLE 4 int Enable 1 disable 0 the motors 1 0 SETA signed int Resets translational acceleration parameter if positive or deceleration if negative in i 2 millimeters per second int Reset maximum translational velocity in millimeters per second SETV SETO 7 none Resets server to 0 0 0 origin MOVE 8 signed int Translation distance to move in mm 7 Oona SETRV 10 int Resets maximum rotational velocity in 7 AEN VEL 11 signed int Move forward or reverse at lt 12 signed int Turn to absolute heading ee EN DHEAD 13 signed int Turn relative to current heading 3 x 1 0 E nd counterclockwise degrees SAY 15 string As many as 20 pairs of duration 20 ms 4 2 1 0 increments tone half cycle pairs int is CONFIG 118 int l RequstconfiguationSIP 14 to stop se
67. es 00 7 4 chip select lines CS 2 5 2 address lines 0 A1 Read RD and write WR lines 8 general purpose digital I O 0 7 1 analog to digital input A D P5_9 4 PWM digital output P2_12 15 2 signal ground Gnd 2 Vcc 45 VDC 1Vpp 12 VDC Table 22 General I O Bus Connections 62 ActivMedia Robotics Appendix B Motor Power Board The Pioneer 2 and PeopleBot robots have a separate Motor Power board which in conjunction with the microcontroller provides power for motors as well as conditioned power for the standard and accessory onboard electronics It also contains buffered Power User Power Main JEDE L MT Power 219 Computer To IRA Options Microcontroller Enable Figure 29 Pioneer 2 Motor Power Boa rd passthrough connectors for the motor encoders An optional power package computer ready is available forthe onboard computer system User Power Connections On the Motor Power board four sets of unswitched battery Vpp and DC DC conditioned 5 VDC Vcc power with power ground Vpp are available for accessory and custom electronics on a 12 Molex type latch lock 100mm connector Vcc gets shared with the microcontroller and accessories con nected to that board Appendix A The maximum Vcc power available with standard robot modelsis 1 5A Table 23 User Power Connector 1 Onboard Computer Op
68. ew revcount value or X and Y offsets for the electronic compass The process may be repeated indefinitely each time calculating fresh values they are not recorded or changed in your robot s FLASH In a second stage the calibration utilities let you save the last acquired parameter to your 205 microcontrollers FLASH ROM so that the new value gets used by the robot 53 Updating and Reconfiguring P20S aftereach startup You may choose not to change the FLASH ROM values Rather you record the new configuration values and set reset them using the p2oscf tool described earlier in this chapter Install either compasscal exe Or revcountcal exe into the bin directory of your Saphira distribution Connect your robot s HOST serial port to the computer by tether if you plan to save the calibration parameter to FLASH ROM Tum on the robot s Main Power From an X terminal Linux UNIX or DOS command line execute the calibration tool The default connection port isthe first serial port on your computer coM1 for Win32 systems or dev ttysO for other Linux UNIX systems Specify an altemative port by providing a startup argument For example 9 compasscal dev ttyS3 connects the compasscal calibration tool with the robot via the Linux computers dev ttyS3 serial port If the tool fails to connect the Saphira client with the robot server it will tell you Connection refused and hang Press control c to stop the program and try
69. he AUX port and sends successive portions of the bufferto your client via the Host port depending on the 41 Pioneer 2 Operating System number of bytes you request via the GETAUX 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 argument to flush the P20Scircular buffer and reset its pointers Use the GETAUX command with a zero In the code example above a fictitious command gets sent to a serial device attached to the microcontrollers AUX portand retrievesa 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 ENCOD ER Command 19 with an argument of 1 fora single or with an argument of 2 or more for a continuous stream of ENCOD ERpac type 144 0x90 SIPs Discontinue the packets by sending the ENCODER command 19 with the argument Table 8 P20S Encoder Server Information Packet Contents Header integer Exactly OxFA OxFB Byte Count 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 Least significant most significant portion of the current 4 byte raw enc
70. ifications for the extemal and intemal ports and connectors on the Pioneer 2 PeopleBot microcontroller board These include an extemal Host serial port for P2OSto client connections two intemal serial ports for Host and auxiliary AUX communications each with switched five and 12 VDC power an expansion bus Generall O and a discrete connector for custom Userl O Note that all the intemal connectors IDC sockets are numbered odd pins on top and even pins on the bottom from right to left relative to the key Figure 27 13 1119 7 15 3 I 14 12 io 8 6 4 2 Figure 27 Serial port IDC connector pins rt eeeereas 1 865F83 D D re D amp b Ert jerene preet 187 8 amp p Er Q D D MOTORS RADIO POWER 2 Microcontroller 7 SERIAL HOST 44 FLASH RESET nmm rd Sonars T bi 4 u n LJ n b u u 4 Figure 28 Pioneer 2 PeopleBot microcontroller ports and controls locations Console Serial Port Use the Console DSUB 9 serial port connector for client connections to the P2OS servers and for P20S downloads Only three pins are active RS232 compatible pins 2 TxD1 RxD1 and 5 signal ground Table 17 lists the cable connections for various host computers to this extemal serial port Most direct serial connections use a simple straight through cable such asthe one fora common PC The communication lines are shared with tho
71. in the lOpac are integers with resolution to 12 bits If either bumper is not installed its reported value can vary Table 11 lOpac packet contents Header integer Exactly OxFA OxFB Count byte Number of data bytes 2 Type byte Packet type 0xF0 Ni byte Number of digtal input bytes Digin bytes Digital input bytes No byte Number of digital output bytes Digout No bytes Digital output bytes Na byte Number of A D values A D Nj ints A D values 1 Na 0 2047 12 bit resolution 0 5 VDC Checksum integer Computed checksum Pioneer 2 Arm related SIPs and Commands Please consult the Pioneer 2 Am Manual for details Performance PeopleBot IRs Two breakbeam IR sensors sense objects which intrude into the Performance PeopleBot s profile but which may not be otherwise detected by its sonarortabletop IR sensors The left and right IR breakbeams are connected to the User I O digital input ports 1 2 and ID3 respectively Normally high 1 the respective input port goes low 0 when an object breaksthe IR transmitters beam to its companion receiver The left and right tabletop IR detectors on the Performance PeopleBot are connected to the IDO digital input ports of the User I O respectively Normally high 1 the digital input port goes low 0 when its respective tabletop IR sensor detects an object within its range of operation The tabletop and brea
72. ing the Main Power switch off and then back oN or pressing the RESET button puts the robot servers back to their wait state ready to accept client connections again If the Saphira client application is still active simply pull down the Connect menu and choose the Disconnect option Otherwise restart the application and reconnect the Saphira client with the P2OS servers 24 ActivMedia Robotics Chapter 5 JOy drive and Self Tests Beginning with P2OS version 1 C all Pioneer 2s and PeopleBots may be tethered and driven manually with a common PC analog joystick In version 1 G and later yu may also use the tethered joystick to manually drive the robot even when it is connected with a client And P20S comes with a series of short test routines for your ActivMedia robot s drive motors sonar User I O functions and accessories To run in either joydrive or self test mode start up or RESET the robot into its P2OS wait state LCD no conn You may pressthe RESET button at any time to disable self test and joydrive modes To enable joydrive while connected with a client you must send the P2OS command number 47 with the integer argument 1 See Chapter 6 Pioneer 2 Operating System for details Joystick Connection You may attach a common PC joystick to the User l O sanalog portsand manually drive your robot around without the need fora client connection and incumbent accessories But it also means that you
73. ion Packet SIP Byte Count byte Number of data bytes 2 checksum must be LN RR Status Packet Type Motors stopped Xpos unsigned integer 15 Is bits Wheel encoder integrated coordinates platform NE Ludis l dependent units multiply by DistConvFactor to convert to millimeters Th pos signed integer Orientation in platform dependent units pere multiply by AngleConvFactor for degrees Wheel velocities respectively Left and Right in platform dependent units R vel signed integer multiply by VelConvFactor currently 1 0 for 4 all to convert into millimeters per second Stall and integer Motor stall and bumper accessory indicators Bit Bumpers 0 of the Isbyte is the left wheel stall indicator 1 if stalled Bits 1 5 of that same byte correspond to the bump switch states 1 on for the rear bumpers accessory Bit 0 of the msbyte is the right wheel stall the bits 1 5 of that same msbyte correspond to the front bumpers switch states Control signed integer Setpoint of the server s angular position servo RAE Eois NN multiply by AngleConvFactor for degrees b0 motors flag 12motors enabled was PTU bl sonar flag enabled if 1 Compass Sonar Number of new sonar readings included in readings information packet readings follow number Sonar unsigned integer Sonar range multiply by RangeConvFactor currently 0 268 for all for millimeters Fest of the sonar readings Selected ana
74. ioneer 1 has solid rubber tires and a two wheel differential reversible drive system with a rear caster for balance The Pioneer 1 came standard with seven sonar range finders two side facing and five forward facing and integrated wheel encoders Software wise the Pioneer 1 initially served as a platform for SRI Intemational s Al fuzzy logic based Saphira robotics applications development But it wasn t long before it s open architecture became the popular platform for the development of a variety of altemative robotics software environments Many developers created software that interfaced directly with PSOS Others extended the capabilities of Saphira and P LOGO are two good examples while others have implemented altemative roboticscontrol architectures such as the subsumption like A yllu Functionally and programmatically identical to the Pioneer 1 the four wheel drive skid steering Pioneer AT was introduced in the Summer of 1997 for operation in uneven indoor and outdoor Figure 6 All ActivMedia environments including loose rough terrain robots may be configured with a variety of integrated Except for the drive system there are virtually no accessories including DX operational differences between the Pioneer ATand shown here a very high the Pioneer 1 The integrated sonar arrays performance laser range microcontrollers are the same The accessories finderand robotic pan tilt available forthe Pioneer
75. isplay 205 constant values User cannot change v or variables Display current edited P20S operational values may be different than values currently stored in FLASH on the robot a or arm Display current edited P20S based Arm related values May be different than those stored in FLASH on the robot r or restore Restores dited p2oscf variables to values lt pathname gt currently stored FLASH or from file if argument included save lt pathname gt Saves current edited values to FLASH and exits program or saves current edited values to disk for later reference and continues in editor Exits p2oscf without saving any changes to flash Displays commands and descriptions To see an individual parameters curent value type its keyword alone To change a 205 parameters value type its keyword followed by the replacement value That value may be a string no quotes or spaces or a decimal or hexadecimal OxN number Forexample to change the watchdog timeout to four seconds type watchdog 4000 or gt watchdog Oxfa0 The critical operating parameters for your robot are revcount encoder and the PID control parameters If you get them wrong your robot won t run properly Note too that your p2oscf edited parameters are not used by 2 5 unless and until you save them to FLASH And too you may override many of these parameters with respective P20S commandsfrom the client 49 Updating and R
76. kbeam IR sensor states appear in the standard P2OS Server Information Packet Accordingly to react to the state of an breakbeam or tabletop IR sensor in a Saphira client for example test the state of its respective bit define TTIR 0 01 define RGT TTIR 0x02 define LFT BREAKBEAM 0x04 define RGT BREAKBEAM 0x08 if sfRobot digin 6 0 Something has triggered the left column breakbeam 45 Updating and Reconfiguring P20S Chapter 7 Updating amp Reconfiguring P2OS The P2OS server software and a set of operating parameters get stored in your robot s microcontrollers FLASH ROM With special download and configuration utilities you may change and update the FLASH memory image without physically replacing any hardware Where to Get 2 5 Software Your ActivMedia robot comes preinstalled with the latest version of P2OS Thereafter stay tuned to the pioneer users newsgroup or periodically visit our support website to obtain the latest P2O Sand related documentation http robots activmedia com Installing the P2OS Utilities Software utilities for downloading a new 205 2 541 and for changing your robot s configuration parameters p2oscf come with your robot on CD ROM and in the onboard computer Fresh copies and updates also may be downloaded from the support website bundled with the P2OS image Use the version that matches your ho
77. led See the Quick Start chapterfor client connection details 10 A P20Scommand also lets you toggle the motors under client control 17 Specifications and Controls PeopleBot Sensors and Emergency STOP Performance PeopleBot stabletop sensors are very reliable diffuse IR detectors mounted to the front of the robot and which detect obstacles particularly tabletops or rope barriers that otherwise aren t detected by the sonars The tabletop IR detectors respond to any surface except glass or other mirored surfaces and can detect objects asthin as a human finger They are oriented to trigger when an object is 28 cm 11 5 inches or nearerto the front of the robot and 3 75 c m 1 5 inches at the height of the lower deck Two breakbeam IR sensors one on each side 3 75 cm 1 5 inches forward of the left and right column struts and between the top and lower Decks of the Performance PeopleBot sense objects which intrude into the robot s profile but which may not be otherwise detected by the sonarsortabletop IR sensors Since the tabletop and breakbeam IR sensors are connected to User I O digital ports their states are communicated from the P2OS server to a connected client such as Saphira in the standard Server Information Packet See the lOpac packet contents Pioneer 2 Arm related SIPs and Commands Please consult the Pioneer 2 Arm Manual for details Performance PeopleBot IRs sections in Chapter 6 and in Appendix for details
78. led SERIAL is a standard 9 pin D SUB receptacle located on the Console and is for direct RS232 compatible serial data communication between the microcontroller and a client computer This Host serial port shares its three line tra nsmit receive and ground connections with one of the two serial connectors that is inside the robot See AppendixA for pinouts and cabling connections Amber LEDs on each side of the Host serial port light during data exchange activity transmitted from or received by the microcontroller RADIO The RADIO slide switch on your robot s Console controls power to the optional radio modem or Ethemet radio It does not affect the SERIAL port functions directly but you must switch the radio modem s power orr if you use the Console SERIAL port to connect a piggyback laptop oranother extemal computerto the robot The radio modem gets power as well as signals through the intemal shared Host serial port and can interfere with Console SERIAL communications In some cases you may have to physically remove the radio serial connection from the microcontroller to eliminate that interference FLASH A slide switch labeled FLASH is recessed into the Console It write protects the FLASH ROM stored P2OS software and your robot s operating parameters see Updating and Reconfiguring 205 Chapter 7 When switched forward FLASH is enabled for writing ActivMedia s P20S maintenance utilities wam you if FLASH is disab
79. log port number 1 5 selected port Checksum see previous section t Factare caa Tahla 17 AnnandivN and Ganhira e naramatar dafinitian fila far vaiir mhat Because of the real time nature of the client server interaction we made a conscious decision to provide an unacknowledged packet interface Re transmitting server information or command packets would serve no useful purpose because old data would be virtually useless in maintaining responsive client server interaction 3l Pioneer 2 Operating System For some operations however the data do not decay asrapidly 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 P20S automatically sends a packet of information over the Host serial communication port to a connected client every 100 millisec ond s The standard P2OS Server Info
80. ltemative battery charge be sure to connect positive to positive and negative to negative from chargerto robot An altemative AC to DC converter battery charger should sustain at least 0 75A at 13 75 to 14 VDC per battery and not more than 2 2 5 amperes per battery The High Speed Charger accessory for example is a four ampere charger and should be used with at least two of the standard batteries An altemative charger also should be voltage and cument limited so that it cannot overcharge the batteries Getting Inside We normally discourage you from opening up your robot However on occasion you may need to get inside forinstance to accessthe User Power connections on the Motor Power board and attach your custom electronics Or you may need to get to your onboard computer and its accessories We describe here how to remove your robot s Nose to get at the onboard computer And we describe how to accessthe contents of the Body of your Pioneer 2 DX DXe or ATrobot Removing the Nose Pioneer 2 s and PeopleBot s onboard computer sits just behind the robot s Nose And you may have to remove the Nose to accessthe front sonararmay sgain adjustment pot For early DX CE and AT models and for the PeopleBot robots the Nose is attached to the robot with two screws one directly undemeath the front sonar bay and one on the bottom of the robot just behind the seam between the robot s Body and the Nose The new AT and the DXe model have t
81. lue wascontained in the 205 code With improvements to the motion control servers in P2OS and to support the increasing variety of ActivMedia robot configurations the encoder value is now included asa configuration parameter although unlike revcount its value isa constant The encoder value is the number of encoder pulses ticks per millimeter of wheel rotation The encoder value is of course dependent upon the wheel encoders resolution the motor to wheel gear ratio and the wheel s diameter The revcount value isthe number of encoder ticks for one full revolution of the robot It depends on a number of factors principally the length of the wheel base which may change due to payload tire wear operating surface and so on Accordingly we provide a calibration tool that lets you determine revcount for your individual robot configuration and operating conditions Table 16 Some platform dependent robot parameter values Model 52 ActivMedia Robotics Parameter DX DXe AT CE PB V1 Performance PB Encoder ticks per rev 500 500 500 100 500 500 Gear ratio 19 7 19 7 85 5 19 7 38 3 38 3 Wheel diam mm 165 191 220 165 165 191 Encoder ticks per mm 76 66 49 76 148 128 wheel rotation DistConvFactor 0 840 0 969 1 32 0 826 0 413 0 424 DiffConvFactor 0 0056 0 0057 0 0034 0 0056 0 0056 0 0060 Calibration Tools revcountcal and compasscal P2OS 1 4 introduced two new P
82. n An important benefit of ActivMedia Robotics client server architecture is that different robot servers can be run using the same high level client For example we provide a robot simulator that runs on the host machine that can look and act just like your real robot With the Simulator you may conveniently perfect your application software then run it without modification on any ActivMedia robot Several clients also may share responsibility for controlling a single mobile server which permits experimentation in distributed communication planning and control Cumently available client software and development environments for the Microsoft Win32 or Red Hat Linux based computing platform of your choice include 2 Y ActivMedia Robotics Basic Suite with WorldLink Intemet surveillance and control Y ActivMedia Robotics Interface for Applications ARIA Y ActivMedia robot simulator Y The Saphira client development suite with Colbert Versions and updates for supported computing platforms are available to password registered customers for download from our software website http robots activmedia com ActivMedia Robotics Basic Suite To better support our customers ActivMedia Robotics software designers have blended and refined the best of advanced mobile robotics software found in the many development environments into a suite of state of the art software tools and applications We call this suite ActivMedia Robotics Basic Suite a
83. n access enter the usemame and password written on the Registration amp Account Sheet that accompanied your robot Newsgroups We maintain several newsgroups through which ActivMedia robot owners share ideas software and questions about the robot Visit the support http robots activmedia com Website for more details To sign up for pioneer users forexample send an e mail message to the requests automated newsgroup server To pioneer users requestsaactivmedia c om From your retum e mail address goes here gt Subject choose one command help retums instructions lists retums list of newsgroups subscribe unsubscribe Our SmartList based listserver will respond automatically After you subscribe send your email comments suggestions and questions intended for the worldwide community of Pioneer users To pioneer usersGactivmedia com From your retum e mail address goes here gt Subject something of interest to pioneer users Access to the pioneer users newslist is limited to subscribers so your address is safe from spam However the list currently is unmoderated so please confine your comments and inquiriesto issues conceming the operation and programming of Pioneer or PeopleBot robots 1 Note Leave out the requests part of the email address when sending messages to the newsgroup 2 ActivMedia Robotics Support Have a problem Can t find the answerin
84. n power relay which isolatesthe high ampere draw ofthe robot system from the Main Power Switch Recharge Power Port Below the Main Power Switch isthe battery recharger port It provides 12 VDC powerto the robot s electronics motors and accessories even without batteries Use the recommended accessory powerchargeror equivalent You should maintain your robot s batteries in a charged state above 11 VDC as indicated on the Console LCD We recommend recharging the battery when it falls below 11 VDC even though the robot may continue to operate below 10 VDC The microcontroller will sound a waming when the battery voltage falls below that level see Chapter 7 Updating amp Reconfiguring P20S and the optional computer power circuitry 15 Specifications and Controls will automatically shut down the onboard PC Discharging the batteries below 10 VDC may permanently damage them You may continue to operate the robot while charging its batteries although that will lengthen the recharge time Because the onboard PC draws much curent even the high speed 4A charger will not be able to fully recharge the batteries unless you power down the PC 8 If you have only one battery onboard plug your robot into the charger before hot swapping the exhausted battery for a fresh one To hotswap two or three batteries replace each battery one at a time leaving at least one battery in place to supply power to the robot The Power Cube acce
85. nd it includes the following five modules plus a robot simulator Y NAVIGATOR isthe crown jewel a sophisticated Pe graphical user control module with which you access your ActivMedia robot s many intelligent capabilities from guarded teleoperation to self guided navigation along a planned path to a goal that you select onscreen with a click of the mouse Navigator also lets you remotely share connect and operate the robot from the Intemet ora local area network You can see and hear from afar what your robot sees and hears through its camera and microphone Navigator even lets you chat and exchange Figure 4 Navigatorand audio and video with others who may be WorldPass guide your connected simultaneously robot to a goal with a click of the mouse v WoripPassis a free version of Navigator that lets you share you robot with colleagues friends and family WorldPass provides all the networking and remote control functionality of Navigator including network video and audio but only connects with a robot through a host running Navigator not to one directly You may distribute WorldPassto anyone you want Some software may come bundled with your robot Otherpackagesrequire purchase forlicensing Some software also are available foraltemative operating systems such asMacintosh SunOS Solaris and BSD Unix 5 to use your robot but it will not appearon yourown menu since it copies functionalities of Navigator which you may
86. nding 0 Encoder SIPs DCHEAD 22 signed int Heading setpoint relative to last setpoint ERN d degrees counterclockwise SETRA 23 signed int Sets rotational acceleration or 1 0 EA LP o ND SONAR etna Deine te mr STOP sow Stops robot motors remain enabled 10 DIGOUT 30 int Msbits is a byte mask that selects output 4 2 1 2 port s for changes Isbits set 1 or reset 0 the selected port VEL2 32 signed int Independent wheel velocities Isb right wheel msb left wheel PSOS is in 4mm sec P2OS in 2cm sec increments GRIPPER 33 int Pioneer and Pioneer 2 Gripper server command See the Pioneer Gripper manuals for details ADSEL 35 int Select the A D port number for analog value in SIP Selected port reported in SIP Timer value GRIPPERVAL 36 int Pioneer 2 gripper server value See P2 Gripper Manual for details p ee e a to stop sending 0 Gripper SIPs 33 Pioneer 2 Operating System IOREQUEST 40 none Request 1 or a continuous stream 21 or tell to stop sending 0 IO SIPs PTUPOS 41 int msb is the port number 1 4 and Isb is the 4 5 1 2 pulse width in 100usec units PSOS 10usec units P2OS Version 1 J uses RC servo 1J 40ms duty cycle connected to AUX port on microcontroller GETAUX 43 int Request to retrieve 1 200 bytes from the 1 4 aux serial channel 0 flushes the aux serial input buffer BUMP STALL Stop and register a stall if front 1 rear 2 1 5 o
87. neer 2 PeopleBot microcontroller has a 20 MHz Siemens 88C 166 microprocessor with integrated 32K FLASH ROM It also has 32K of dynamic RAM two RS232 compatible serial ports several digital and analog to digital and PSU I O user accessible ports and an eight bit expansion bus See AppendixA forl O port details All of the I O ports except those used forthe motors encoders and sonar are available to the user for accessory hardware The embedded operating software P2OS lets you support and manage each of these I O ports Connector pinouts and electronics details appearin the Appendices Sonar Boards Associated with each sonar aray forward and rear is a sonar multiplexer firing board Wire leads to the individual sonar plug into a 16 pin connector on the board A 10 conductor power signal cable connects the sonar board with the microcontroller Controls Ports and Indicators Main Power Fuse and Indicator A single slide switch on the rear left panel of Pioneer 2 and PeopleBot robots controls power to the entire robot and all its integrated accessories Up is ON down isOFF A red LED on the Console indicates Main Power Inside on the top right side of the battery box accessible through the hinged back door isthe Main PowerFuse It isan automotive type spade terminals 15A DX DXe CE and PeopleBots or 20A AT fuse designed for tool less replacement To the left of the fuse on the same battery connection board isthe mai
88. not distribute v Mapper providesthe tools you need to construct a map of yourrobot sreal operating space world Navigatorand WorldPassuse this map floor plan to plan a path from one point to another within a space Y TRAINERisa programming editorand robot interface in which you create and perfect yourown intelligent mobile robot control programs with the simple yet powerful Colbert programming language y SMuLATOR is not a separate module of Basic Suite It isa connection option that provides a virtual replacement for your robot By connecting to the simulator instead of a realrobot you can test Colbert programs maps and so on when the real robot isn t practical or available Y AmicoSounpsisforAmigoBot only With AmigoSounds you assemble recorded sounds stored on your PC s disk into a playlist of soundsfor your Amigo Bot With AmigoSounds you may give AmigoBot different audio based personalities ARIA The ActivMedia Robotics Interface for Applications ARIA is C based open source development environment that provides a robust client side interface to a variety of intelligent robotics systems including your ActivMedia robot s controller and accessory systems ARIA is the ideal platform for integration of your own robot control software since it neatly handles the lowerlevel details of client server interactions including serial communications command and serverinformation packet processing cycle timing and multithreading
89. oder 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 205 LE introduced and we improved the new GRIPPERpac type 224 OxEO packet type and related GRIPREQUI P20S command 37 in P2OS 1 F Table 9 Gripper packet contents P2051 Fand later Header integer Exactly OxFA OxFB Byte Count byte Number of data bytes 2 checksum Type byte Packet type OxEO HasGripper byte Gripper typ 0 none 1 User 2 General Grip state byte See Table 12and P2 Gripper Manual Grasp Time byte See P2 Gripper Manual Checksum integer Computed checksum EST Normally disabled your client program must request one Command argument 1 or a continuous stream command argument gt 1 of Gripper packets Send GRIPREQUI EST with the argument value Oto 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 0 00 and PLAYLIST request command 91 to P20S 1 E We document the command and pa
90. onal information from the device in the form of the TCM2pac See the 2 Manual and supporting software that accompaniesthe device for details Input Output I O Your Pioneer 2 or PeopleBot comes with a number of I O ports that you may use for sensor and other accessories and custom attachments See Appendix A for port locations on the microcontroller The various I O states and readings appear in the standard SIP and may be manipulated with P2OS client commands 205 I1 E also introduced a new SIP for convenient access to your Pioneer 2 s I O see a subsequent section for details DIGIN TIMER and ADSEL The states of the eight digital input ports native to the controller get mapped asa single byte whose value is continuously updated and reported in each standard SIP Table 4 Forexample examine Saphira s s Robot structure value digin sfSMessage Digin is i sfRobot digin When not connected the digital input port values may vary and change without waming The digital input ports 4 7 ID4 7 also may be used as A D input ports see below Use the ADSEL client command to select the A D port that is to appear in the P2OS SIP analog Value The default port is 5 the dedicated A D port on the system P20S SIP reports the currently selected analog input port number In the following example the first Saphira statement queries for the current analog port and its A D value The second Saphira command changes the
91. opment software that come with your ActivMedia robot Establishing a Client Server Connection SYNC Before exerting any control a client application must first establish a connection to the robot server via the Host RS 232 serial port Overthat established communication link the client then sends commandsto and receives operating information from the server When first started P2OS is in a special wait noconn state listening for communication packets to establish a client server connection To establish a connection the client application must send a series of three synchronization packets through the Host communication port containing SYNCO SYNC1 and syNC2 command bytes in succession and retrieve the server responses When in wait mode 205 echoes packets back to the client The client should listen for the retumed packets and only issue the next synchronization packet after it has received the appropriate echo Autoconfiguration P20S automatically sends robot configuration information back to the client in the last synchronization packet 5 2 echoed when establishing a connection After the SYNC2 byte there are three NULL terminated strings that comprise the robot s name class and subclass You may uniquely name your Pioneer 2 with the p2oscf configuration tool we provide with the robot The ciass and subclass also are parameters stored in the robot s FLASH but are constants normally set at the factory and not
92. otor activity Pioneer 2 AT and PeopleBot charge life typically ranges from two to three hours The Pioneer 2 DX and DXe run continuously for six hours or more up to four hours with onboard computer If you don t use the motors your robot s microcontroller will run for several dayson a single battery charge IMPORTANT Batteries have a significant impact on the balance and operation of your robot Under most conditions we recommend operating with three batteries Otherwise a single battery should be mounted in the center ortwo batteries inserted on each side ofthe battery container Typical recharge time using the recommended accessory 800 mA charger varies according to the discharge state it is roughly equal to three hours per volt per battery The Power Cube accessory allows simultaneous recharge of three swappable batteries outside the robot With the optional high speed 4A maximum current charger recharge time is greatly reduced It also supplies sufficient cument to continuously operate the robot and onboard accessories such as the onboard and radios But with the highercurent charger care must be taken to charge at least two batteries at once A single battery may overcharge and thereby damage both itself and the robot Both recommended chargers are specifically designed for optimal and safe lead acid battery recharging Indicators on the module s face show fast charge mode typically an orange LED in which the discharged
93. ots The state of each bump switch ismapped into a series of eight LCD display digits The five switches in each bumper front and rear are related to the digits one through five left to right on the LCD For instance in the example below the front bumpers 1 and 5 are pressed the rest are OFF whereas in the rear bumper the second and third bumpsare oN Front 00100010 Rear 00001100 The first two and last display digits are not connected and may toggle between 0 and 1 Likewise without an attached bumper the readings may vary usually all O s Press the white MOTORS button to proceed to the next test Gripper Those of you fortunate enough to own a Gripper accessory for your Pioneer 2 or PeopleBot automatically get a self test for the accessory See the Pioneer 2 Gripper Manual for details Compass If you own a TCM2 or V 2XG compass module this self test displays its compass heading in LCD See their respective manuals for details 16 Sonar tests automatically proceeded in P2OS versions before 1 F 27 Joydrive and Self Tests DIGIN and DIGOUT Test A subsequent self test lets you examine the values of the eight digital input ID0 7 and output ODO 7 ports associated with User I O on yourActivMedia robot s microcontroller The state of each port is mapped into a series of eight digits displayed on the LCD Each digit 0 or 1 representing the oN ororr state of a port numbered right to left from 0 to 7 For inst
94. pdate your robot s configuration parameter setting so be sure to use the program that matches your current P2OS version 46 ActivMedia Robotics Step 2 Enable FLASH Locate the FLASH switch on the Console It s recessed Use a flat bladed screwdriver or other thin instrument to move the slide switch forward toward the front of your robot to enable FLASH writes Step 3 Put Microcontroller into Download Mode Start up or reset your ActivMedia robot After it has finished initializing place it in download mode The robot should not reset If it does you probably didn t hold the motors button down long enough Try again When successfully in mode notice that the heartbeat asterisk stops blinking in the LCD Step 4 Run p2osdl With Linux UNIX systems enter the p2os directory and execute p2osdl with the following arguments p2osdl p2osl J hex comm port The pathname forthe P20s HEX image file is required and may be a direct or relative path The file 2 51 J hex for example is the current P2OS version hex encoded image The comm port argument is optional It lets you specify the serial communication port that connects p2osd1 with the 205 microcontroller For Linux UNIX systems the default is dev ttyS0 To communicate through dev ttyS3 forexample use p2osdl p2osl J hex dev ttyS3 For Win32 systems you must pass the required p2osV_r hex file to 205 1 SO you cannot simply doubl
95. r either 3 bump ring contacted Off default is 0 45 2 Module commands see TCM2 Manual for details ss 46 Default is 0 OFF 1 enable docking signals 2 enable docking signals and stop the robot when docking power sensed 5 from port E ESTOP Emergency stop overrides deceleration stop overrides deceleration 4 56 Emergency stop button causes stall on PeopleBot only STEP Single step mode simulator only 3x 10 ARM 70 Please consult the Pioneer 2 Arm Manual 1 H for details 80 ROTE Change rotations proportional drive ator 1 S m Change roladon diferential drive ior 1J sa im Change rotation s integral arive facor 13 LTRANSKP 85 im Change translation proportional drive acor CTRANSKV im Change translation differential drive factor RANSK 87 im Change translation integral drive facor PLAYLIST 96 in Must be Oc request AmigoBot sound plays TE The client must send a command packet at least once every watchdog default is two seconds see next chapter Otherwise the robot s onboard drives automatically stop but will resume again on receipt of a client packet To maintain the watchdog Saphira for instance sends the action less PULSE command in the absence of other client commands A P20S command
96. r information packets get encapsulated with a header OxFA OxFB byte count packet type byte and trailing checksum Itisup to the client to parse the packets sorted by type for content Please consult the respective client application programming manuals for details Saphira for example hasan intemal parser for the PSOS P2OS packet type 0 35 S 0 2 aka standard SIP but not for the P20S extended packets we describe in this section However you are able to program and add packet handlers to Saphira either as a special plugin program as found at the http robots activmedia com support website look for details in the contributed directory or directly in your own Saphira client A sample packet processor is included with the Saphira distribution packet c in the apps directory and see the AUX serial SIP processing code in the following section CONFIGpac and CONFIG Command 2 You may have to adjust the Host port serial baud rate to accommodate the additional communications traffic 40 ActivMedia Robotics Send the CONFIG command 18 with or without an argument to have P20S send backa special server information packet containing the robot s operational parameters The CONFIGpac SIP packet type is 32 0x20 The nex chapter gives details about the configuration packet data Send commands and retrieve responses via the P20S AUX serial port define SERAUXpac 0 0 int serbytes inbufptr char inbuf 200
97. ra Client Installation The client software development environment including the Saphira demonstration program and robot Simulator comes on CD ROM with your new robot It is configured and compiled for Windows 9x ME as well as for Red Hat Linux based PCs If you have an onboard PC installed with software from the factory the Saphira demonstration program already is installed ActivMedia Robotics customers also may obtain Saphira and related software and updates for other platforms from our support website see Chapter 1 Introduction for details You will need the ID and password from your Registration Sheet in orderto access portions of our customer website http robots activmedia com When installed Saphira typically requires four megabytes of hard disk space To install the software follow the instructions the accompanying README file You may need to attach some accessoriesand the PeopleBot VI s pedestal needs to be attached 19 Quick Start For instance the Windows 9x ME version is a self extracting WinZip archive Simply double click its EXE icon and follow the extraction program s instructions The distribution archive decompressesinto a Saphira verxx directory of files 12 Windows 9x ME users also need to set an environment variable in the c boot drive autoexec bat file Load the file with a simple text processor like WordPad and add the line SET SAPHIRA C V Saphira ver62 whi
98. rive command number 47 with an integer argument of 0 to disable the joystick drive override The joystick is self calibrating When you first enable joydrive mode P2OS detects the joystick s center and extreme positions and saves these values to balance the driving action Accordingly rotate the joystick around its extreme limits and then let the joystick Identified asnasgripper 1 your robot s parameters see Chapter 7 Updating amp Reconfiguring P2O S and the Pioneer2 GripperManual version 2 orlater for details 25 Joydrive and Self Tests handle find its default centered position before starting to drive Try exiting reset and restarting joydrive mode if the joystick doesn t seem to function well The joystick s fire button button 1 acts as the joydrive deadman press it to start driving release it to stop the robot s motors The robot should drive forward and reverse and tum left or right in response and at speeds relative to the joystick s position When not connected with a client control program releasing the joystick fire button stops the robots However when connected with a client the client program resumes automatic operation of your robot s drive system So for example your robot may speed up orsow down and tum depending on the actions of your client program You may adjust the maximum translational and rotational speeds even disable joydrive mode through special P2OS configuration parameters
99. rmation Packet SIP informs the client about a number of operating states and readings using the orderand data typesdescribed 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 altemative SIP that curently is not supported by Saphira or ARIA 18 See following sections in this chapter fora 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 P20S client command packet Packet header same for client and server OxFB Byte Count 1 N 2 Number of following command bytes plus Checksum s two bytes but not including Byte Count Maximum of 200 1 Client command number see Table 4 4 Argument Type Required data type of command argument command positive integer SSARGINT dependent negative integer or absolute value string sfARGSTR Argument n Command argument integer or string command dependent 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 s
100. s And under no circumstances will the developers marketers or manufacturers of ActivMedia Robotics product take responsibility for support of any special or custom modification to ActivMedia robots or their software 70 71 44 Concord Street Peterborough NH 03458 603 924 9100 603 924 2184 fax http www activrobots com
101. se on the intemal P2OS serial port see below 59 Appendix A Microcontroller Ports and Connections Table 17 Common serial cable connectionsto Pioneer 2 Platform amp Connector Pin 3 Tx Pin 5 Rx Pin 9 Gnd Sun Sparcstation DB 25 gt gt es SGI Irix mini DIN 8 2 26 45 442 i DB 9 2 3 j PC COMn DB 25 L G 2 J 7 Macintosh mini DIN 8 a a 5 J br _ P2OS operates at the following configuration 9 600 19 200 or 38 400 bits per second data rate eight data bits one stop bit no parity orhardware handshaking DTR Internal Serial Connectors Two 10 pin serial port connectors on the P2OS microcontroller support independent RS 232 serial communications The ports also contain switched RADIO on the Console 5 and 12 VDC power 9 1 5A for accessory connections such as a radio modem radio Ethemet PIZrobotic camera orthe TCM2 electronic compass The Host serial connector J P8 is the port used by the microcontroller for client server communications It shares its transmit TxD1 and receive RxD1 lines with the extemal serial port on the Console The connectoralso hasthree data lines P3 12 14 and 15 that are used by the V 2XG compass Table 18 P20S Intemal Serial Port Connections HO ST P8 wi 4 12 VDC switched 6 06 ow P 1 _0 S VDC switched The AUX RS232 compatible serial port connector JP7 on the Pioneer 2 PeopleBot
102. selected port which value gets reported through the last Saphira command in the example 43 Pioneer 2 Operating System 9 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 controllers User I O connector are both reported in the standard SIP digout and controllable with the PROS and PTUPOS Electrically the ports are digital high 1 at 5 VDC Vcc and low 0 at 0 VDC GND Forexample to read the state ofthe digital output ports with Saphira sfSMessage Digout is i sfRobot digout Digout is 240 Use the 205 prcouT 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 first byte is a mask whose bit pattem selects 1 or ignores 0 the state of the corresponding bit in the second byte to set 1 orunset 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 ODO 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 msby
103. shutdown immediate by moving the jumpers on both J 3 and J6onthe MotorPower Board to the pins opposite their ON position Power State Logic A 9 pin DSUB receptacle P1 on the Motor Power board providesa logic level shutdown indicator DCD pin 1 which state goes low when computer power shutdown is first initiated The onboard computer may use this line state to initiate software mediated shutdown such as provided by genpowerd for RedHat Linux PCs Table 24 Power State 9 pin DSUB receptacle P1 1 2 3 4 5 6 7 8 9 DCD nc nc pin4 nc nc Gnd 10 20K adj across 4 amp 6 Computer Power Table 25 Computer powerconnector A common 4 conductor bevel keyed connector J 5 provides 5 VDC 7A powerforthe onboard computer and battery power forthe optional 12VDC fan SvbC 7A 64 ActivMedia Robotics Appendix C Joystick Connector Use a 20 wire IDC terminated ribbon cable to attach the 15 pin joystick connectorto the User I O port on the P20S microcontroller Both require P2OS version 1 c or later DSUB 15 R1 4 ZK Figure 30 Standard joyport for manual drive of a Pioneer2 or PeopleBot Mobile Robot qrr I 13 28 I iz IT RI To 13 4 i 5 n2 i z I 8 2 4 7K Te GRIP 11 11 I E 5 it I 3 4 8 To GRID 3 2 i i TOC 2G Figure 31 J oyport with signal switch for sharing Userl O ports with other accessories such a
104. sonar in four arrays for nearly seamless object detection Software wise the Pioneer 2 is upwardly compatible with Pioneer 1 The Pioneer 2 Operating System 205 software extends but does not replace the original PSOS This means that even programs that interface at the lowest communication levels will work with both Pioneer 1 and with Pioneer 2 platforms This also meansthat the higher level clients such asSaphira ARIA and others including your own software will work with P20Sand any host Pioneer 2 or PeopleBot platform just as they had worked with Pioneer 14 Of cours you will have to extend your client software as we have done with Saphira ARIA and others in orderto take full advantage of P20S 4 The two time gold medal winnersof the Intemational RoboCup robot soccer competition used Pioneer 1s one yearand quickly converted to Pioneer2sin the next year 8 ActivMedia Robotics To the relief of those who have invested years in developing software for Pioneer 1 Pioneer 2 truly does combine the best of the new mobile robot technologies with the tried and true Pioneer architecture Modes of Operation You may operate your Pioneer 2 or PeopleBot robot one of four modes Y Joydrive Y Self test Y Server Y Standalone The Pioneer 2 PeopleBot microcontroller comes with 32K flash programmable read only memory FLASH ROM as part of its Siemens 88 166 microprocessor and an additional 32K of dynamic RAM 64K total memor
105. ss calibration Y offset Rotational acceleration deg sec Rotational deceleration deg sec Proportional PID for rotation Differential PID for rotation Max rotational speed deg sec Max translational speed mm sec 0 ranslational deceleration mm sec 5 Translational acceleration mm sec Differential PID for translation Integral PID for rotation Integral PID for translation 600 Joydrive maximum translation velocity Joydrive maximum rotational velocity Proportional PID for translation 51 Updating and Reconfiguring P20S PID Parameters The 205 configuration parameters include settings for the PID motors controls for translation and rotation of the robot The translation PID values also apply to independent wheel velocities default values shown in the Table are for a moderately loaded robot Experiment with different valuesto improve the performance of yourrobot in its current environment Note that with P2OS version 1J and later the PID values have changed from earlier versions due to changes in the drive servers Overall drive performance has improved with the latter version and is much less sensitive individual PID values Consequently we recommend the listed values for all Pioneer 2 and PeopleBot robots whereas earlier P2OS versions required much more tuning of the parameters depending on robot type and configuration payload The P term value Kp increases the overall gain of the system
106. ssory is a convenient way to extemally recharge one to three of the hot swapped batteries Liquid Crystal Display amp Contrast Adjustment Information about your robots state and connections appears on a 32 character two lines liquid crystal display LCD on the Console When under control of the 205 servers for example the display shows the state of communication with the client computer along with the battery voltage and a blinking heartbeat asterisk in the second line of text Figure 13 The Console A small contrast adjusment potentiometer for the LCD is inset next to the display Make sure the Main Power switch is oN and the battery is well charged Then using a small flat blade screwdriver tum the adjustment screw to darken or lighten the screen so that the charactersare clearly visible under your lighting conditions RESET and MOTORS The RESET red and MOTORS white push button switches on the Console affect the microcontroller s logic and motor driver systems When pressed alone RESET putsthe microcontroller into its start up state disrupting any running program or client connection 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 microcontrollers RAM so any user programs downloaded in standalone mode get restarted The MOTORS pushbutton is not a power switc h it does not directly
107. st computer s environment For example use 209 r tgz for RedHat Linux or p20sV with Microsoft Windows 9x ME systems V is the version number and is the revision number 2051 J forexample The p2osV r EXE distribution is a self extracting self installing package Simply follow the on screen directions Forthe Linux UNIX versions uncompress and untar them using the appropriate system utilities For example with the Linux version 9 tar zxvf p2osl J tgz The command creates a p2os directory in the curent path and stores the 205 software there Updating P20S Use the 2 501 program that comes with each distribution to download fresh copy of PSOSto yourrobot s microcontroller s FLASH ROM 2 Step 1 Serial Connection from Computer to Robot Connect your Pioneer 2 or PeopleBot to your host computer through their respective serial ports If you have an onboard PC use it to perform the download or switch its power OFF Otherwise use a direct straight through serial tether from your PC to the 9 pin SERIAL connectoron yourrobot sConsole If you have an onboard radio modem you may have to remove its serial connector from the Host serial port on the microcontroller by reaching in with your fingers through the rectangular access port on the Deck See Appendix A for port location Somy about the inconvenience the modem interferes with the direct connection 22 The p2osdl program may u
108. sthe older yle Gripper 65 Appendix D Specifications Appendix D Specifications DXe DX AT Perf PB PB V1 CE Physical Characteristic s Length cm 44 5 44 50 47 47 44 Width cm 40 33 49 38 38 33 Height c m 24 5 22 24 124 104 22 Clearance cm 6 5 5 1 5 5 3 5 3 5 5 1 Weight kg 9 9 14 21 19 9 Payload kg 23 20 40 11 13 20 Power Batteries 12VDC lead acid 3 x 2 i xm Ie Wan 252 252 252 252 252 84 Run time hrs 8 10 8 10 4 6 na na 8 10 with PC hrs 3 4 3 4 2 3 3 4 3 4 na Recharge time hr battery 6 6 6 6 6 6 std charger Hig h Speed 3 batteries 24 24 2 4 2 4 2 4 na Mobility Wheels 2 2 solid 4 2 2 solid 2 solid pneumatic rubber pneumatic pneumatic rubber rubber diam mm 191 165 220 191 165 165 width mm 50 37 75 50 37 37 Caster mm 75 75 na 75 75 75 Steering Differential Differential Skid Differential Differential Differential Gear ratio 19 7 1 19 7 1 85 2 1 38 3 1 38 3 1 19 7 1 Swing cm 32 32 40 32 Tum cm 0 Ocm Ocm 0 ped 1 800 1 600 700 900 800 1 600 max mm sec Rotate speed max deg sec 360 300 140 150 130 300 Teele ple Step 20 20 89 15 15 20 max mm Taverable gap 89 89 127 50 50 89 max mm Trayemable nope 25 25 40 11 11 25 max grade Traversable Wheel Wheel Unconsolidated wheel WEEE Wheel chair chair chair chair chair terrains No carpets accessible accessible accessible accessible accessible 66 Sensors SonarFront Array one each sde six forward 9 20 intervals
109. sy accessto the intemal systems The PeopleBot robots were introduced in 2000 They are architecturally Pioneer 2 robots but with stronger motors and integrated human interaction features including a pedestal extension integrated voice and sound synthesis and recognition Figure 7 Nearly identicalto its research predecessor right the Performance PeopleBot left sportsan attractive body design and bundled systems including integrated Gripper forcommercial consumer human interaction applications The Performance PeopleBot is a fully redesigned but very Pioneer2 like system Because of its attractive non threatening and human accessible body Performance PeopleBot is ideal for human interaction studies as well as for commercial and consumer mobile roboticsapplications The latest Pioneer 2 the new Pioneer 2 DXe Summer 2001 replaces the DX The DXe comes with pneumatic rubber tires for better mobility and a hinged top plate for easy accessto intemal components All ActivMedia Robotics Pioneer 2 and PeopleBot robots use a high performance 20 MHz Siemens 88C166 based microcontroller with independent motor power and sonar controller boards for a versatile operating environment The controller has two RS232 standard communications ports and an expansion bus to support the many accessories available for your ActivMedia robot aswell as yourown custom attachments ActivMedia robots also supports a full complement of 32
110. t and the Saphira demonstration client pull down the Connect menu and Rees File Grow Shrink Display engage the appropriate serial port It sthe one that you connected to the robot via a Serial port P direct cable orthrough modems With the Local port onboard PC it is the first default serial TCP port 1 dev ttySO The port name varies by computer platform 3 DEDE COMA The Saphira client initiates a connection with your robot server by exchanging three synchronization packets You may monitor this process on your robot s LCD and in Sa phira s Colbert interaction window Exit MPac SPac 0 Bat 25 0 CPU 13 Disp 5 0Hz As synchronization packets are received and echoed by the communications server they appear sequentially next to the word sync on the top line of the LCD display on the robot If these numbers do not appear the communication line is down or the client is malfunctioning Press RESET to retum 205 to client connection waiting state Figure 15 Connect Saphira with your ActivMedia robot through a serial port A Successful Connection After Saphira negotiates a connection successfully the client requests various P20S servers to start their activities including sonar polling position integration and so on The microcontroller sounds an audible connection cue and you should hear the robot s sonar ping with a distinctive
111. te and specify its pulse width Isbyte in 10 units For example to have a repeating one millisecond pulse appear on PWM port 1 pin 1 on the Userl O connector sfRobotCom2Bytes 41 1 100 You ve got to disable a running PWM portto use itasa digital output port sfRobotCom2Bytes 41 1 0 In P20S versions 1 and later the duty cycle is 20ms with 0 2 55ms pulse corresponding to common RC servo applications IOREQUEST P2OS 1 E introduced a new server information packet in which your P20S based robot controller reports all of its 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 P20S roREQUEST 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 PAO S to send IO packets continuously at approximately one per Cycle depending on serial port speed and other pending SIPs Use the IOREQUEST argument value Oto stop continuous packets The common 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 ActivMedia Robotics a byte value forthe selected analog port analog values
112. thisorany ofthe accompanying manuals Or do you know a way that we might improve our robots Share your thoughts and questions directly with us 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 Your message goes directly to the ActivMedia Robotics technical support team There a staff member will help you or point you to a place where you can find help Because this is a support option not a general interest newsgroup like pioneer users we reserve the option to reply only to questions about problems with your robot or software See Chapter 8 Maintenance amp Repair for more details chapter 2 What Is Pioneer Figure 2 ActivMedia Robots Pioneer is a family of mobile robots both two wheel and four wheel drive including the Pioneer 2 DX DXe CE and AT and the PeopleBot V1 and Performance Mobile Robots All are intelligent mobile robots whose client server architecture was originally developed by Kurt Konolige Ph D of SRI Intemational Inc and Stanford University ActivMedia s robots are truly intelligent off the shelf mobile platforms containing all of the basic components for sensing and navigation in a real world environment including battery power drive motors and wheels position speed encoders integ rated sensors and accessories They are all managed by
113. tion With the computerready option the Motor Power board is specially populated with connectors and circuits to provide separate DC DC conditioned 7A 5 VDC power to an onboard computerand itsaccessories And in conjunction with software the circuit provides for automatic unattended crash less shutdown of the onboard computer either when manually powered down orwhen the battery voltage dropsbelow 10 VDC Power Switch J7 and Delayed Shutdown Logic A simple SPDT switch controls logical powerto the computerpower section of the Motor Power board When oN the switch provides Vpp to the input of a voltage comparator 63 Appendix B Motor Power Board Connectors which output controls the computers DC DC voltage converter Designed to provide for crash less shutdown of the computer in the event of a power brownout or for unattended shutdowns if Vpp drops below 10 VDC the comparator automatically initiates a two minute delay before computer power not system wide shutdown Similarly when the computer power is manually switched orr the comparator is grounded below 10 VDC of course and the same two minute delayed shutdown occurs In all cases power shutdown but not necessarily computer software shutdown is canceled if power is restored to above 10 VDC either by connecting a battery charger orby hot swapping the batteries With older Motor Power systems you may disable the two minute delay circuitry switched or low voltage
114. ttery and place two batteriesone on each side Hot Swapping the Batteries You may change the batteries on your ActivMedia robot without disrupting operation of the onboard systems except the motors of course Either connect the charger which powers the robot s systems while you change the battery or batteries Or if you have two orthree batteries swap each with a freshly charged one individually so that at least one battery isin place and providing the necessary power Charging the Battery If you have the standard charger accessory insert it into a standard 110 VAC three pronged wall power receptacle Some users may require a special power adapter Locate the round plug atthe end ofthe cable that is attached to the chargerand insert it into the charge socket that is just below your robot s Main Power switch The LEDs on the chargerindicate charge status as marked on itscase It takes fewer than 12 hours often jus a few hours depending on the level of discharge to fully charge a Pioneer 2 or PeopleBot battery using the accompanying charger roughly three hours per volt per battery Although you may operate the robot while recharging it restricts the robot s mobility 29 Maintenance and Repair Alternative Battery Chargers The center post of the charger socket isthe positive side of the battery the case isthe negative side A diode protects against the wrong charger polarity Nonetheless if you choose to use an a
115. wo screws holding the Nose to the front sonar or blank array and the DXe doesn t have the bottom screw since the Nose is hinged at the bottom Remove all Nose retaining screws with the hex wrench supplied with your robot Except with the new AT or DXe if you have either the Gripper ora front Bump Ring accessories remove it first Once loosened the DXd Nose pivots down on a hinge For the other models four pins along the Nose s back edges guide it onto the front Body of the robot Simply pry the Nose out and away from the Body Careful The computers hard drive fan and speaker have attached wire hamesses that you need to relieve before completely detaching the Nose from the Body We recommend unplugging the speaker wire and simply rotating the Nose out of the way to accessthe onboard computer 56 ActivMedia Robotics Opening the Deck The new Pioneer 2 AT and DXe models have a center hinge in the Deck which let you easly open and access intemal components without completely removing the top plate With earlier Pioneer 2 models and with the PeopleBots you need to remove the respective Deck and othercoversto accessthe robot scomponents In all cases you need to remove the selected screws completely then carefully lift the Deck or section of the Deck up off the Body Review the following figures for screw locations SAA r3 1 ES Bm ON Figure 24 Remove indicated screwsto flip open the front of the Pioneer 2 DXE or AT
116. y reflective floor a heavy shag carpet for example If the sonar are too sensitive they will see the carpet immediately ahead of the robot asan obstacle Increase the sensitivity of the sonar by tuming the gain adjustment screw clockwise making them more likely to see small objects or objects at a greater distance For instance increase the gain if you are operating in a relatively quiet and open environment with a smooth floor surface 7 t s easier to remove the DXE s Nose with Gripperattached 13 Specifications and Controls Motors and Position Encoders Pioneer 2 and PeopleBot drive sysems use high speed high torque reversible DC motors each equipped with a high resolution optical quadrature shaft encoder for precise position and speed sensing and advanced dead reckoning Motor gearhead ratios and encoderticks per revolution vary by robot model See Appendix D for details Batteries and Power Except the 2 CE Pioneer 2 and PeopleBot robots may contain up to three hot swappable seven ampere hour 12 volts direct curent VDC sealed lead acid batteries total of 252 watt hours accessible though a hinged and latched back door We provide a suction cup tool to help grab and side each battery out of its bay Spring contacts on the robot s battery power board alleviate the need for manually attaching detaching powercablesor connectors Battery life of course depends on the configuration of accessories and m
117. y space for your standalone robotics programs But we don t recommend that you start leaming C166 programming Rather the robot comesto you installed with the latest P2OS robotics server software In conjunction with client software such as ARIA or Saphira running on an onboard PC or other user supplied computer 205 lets you take advantage of modem client server and robot control technologies to perform advanced robot tasks See Chapter 6 Pioneer 2 Operating System for details Most users run their ActivMedia robot in server mode because it gives them quick easy access to its robotics functionality while working with high level software on a familiar host computer For experiments in microcontroller level operation of your robot s functions you may reprogram the onboard flash ROM and RAM for direct and standalone operation of your ActivMedia robot We supply the means to download but not the microcontrollers programming software for you to work in standalone mode In fact the download utilities we provide for you to reprogram the 88C 166 based controllers FLASH and RAM also are used to update and upgrade your 205 We typically provide the upgrades free fordownload from our website so be sure to sign up for the pioneer users email newslist That s where we notify our customers of the upgrades as well as where we provide access to Pioneer and PeopleBot users worldwide Finally we provide onboard software that lets you drive th
118. zard do not expose the equipment to rain or moisture Refrain from opening the unit or any of itsaccessories Keep wheels a way from long hair or fur Inappropriate Operation Inappropriate operation voids your waranty Inappropriate operation includes but is not limited to A A Y Dropping the robot running it off a ledge orotherwise operating it in an irresponsible manner Overloading the robot above its payload capacity Getting the robot wet Continuing to run the robot after hair yam string or any other items have become wound around the robot saxlesor wheels All other forms of inappropriate operation orcare iii Table of Contents CHAPTER 1 INTRODUCTION rao 1 ROBOT PACKAGE nore ee ee e ertet e re rune EHE Ere 1 Basic Components all Shipmehts n eese eene tentent een eene enne tenete trente trenes 1 Optional Components and Attachments partial list eese 1 User Supplied Components System Requirements essent rene 2 ADDITIONAL RESOURCGES trece n ree petere e E eee abe Ie ee RU qeu equ 2 SOWAT si erro dr eg pan qim ui ees di 2 NeWSgrOUp sa cesa S qawa ee a E Q o ia NS E 2 MUI 3 CHAPTER2 WHAT IS PIONEER os reae no re sein Os da re edo ss re esposa 4 CLI
Download Pdf Manuals
Related Search
Related Contents
Cutter HG-96176 Instructions / Assembly LEDフラッドライト SX Cómo cargar papel - Epson America, Inc. PrincetonPrincetonPrinceton Notice - Castorama StarTech.com SATDOCK22UEC New Product Summary EMP S52 Copyright © All rights reserved.
Failed to retrieve file