background image

 

25 

 

Because of the real-time nature of client-server mobile-robotics interactions, we made a conscious decision to provide 

an unacknowledged communication packet interface.  Retransmitting server information or command packets typically 

serves no useful purpose because old data is useless in maintaining responsive robot behaviors. 
Nonetheless, the 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 respective SIPs, client software 

may detect ignored commands and re-issue them until achieving the correct state. 

T

HE 

C

LIENT

-S

ERVER 

C

ONNECTION

 

Before exerting any control, a client application must first establish a connection with the robot server via a serial link 

through  the  robot  microcontroller’s 

HOST 

serial  port  either  via  the  internal 

HOST

  or  the  User  Control  Panel 

SERIAL

 

connector.    After  establishing  the  communication  link,  the  client  then  sends  commands  to  and  receives  operating 

information from the server. 
When first started or reset, ARCOS is in a special wait state listening for communication packets to establish a client-

server  connection.

7

    To  establish  a  connection,  the  client  application  must  send  a  series  of  three  synchronization 

packets containing the 

SYNC0

SYNC1

 and 

SYNC2 

commands

 

in succession, and retrieve the server responses.  

Specifically, and as examples of the client command protocol described below, the sequence of synchronization bytes 

is: 

SYNC0:  250, 251, 3, 0, 0, 0 

SYNC1:  250, 251, 3, 1, 0, 1 

SYNC2:  250, 251, 3, 2, 0, 2 

When in wait mode, ARCOS echoes the packets verbatim back to the client.   The client should listen for the returned 

packets and only issue the next synchronization packet after it has received the appropriate echo.  

Autoconfiguration (SYNC2) 

ARCOS  automatically  sends  robot  identifying  information  back  to  the  client  following  the  last  synchronization  packet 
(

SYNC2

).  The configuration values are three NULL-terminated strings that comprise the robot’s FLASH-stored 

name

type

, and 

subtype

.  You may uniquely 

name

 your robot with the FLASH configuration tool we provide.  The 

type 

and 

subtype

 are constants set at the factory and normally not changed thereafter.  (See next chapter for details.) 

The 

type

 string typically is 

Pioneer

.  The 

subtype

 depends on your robot model; P3

DX-SH

 or P3

AT-SH,

 for example.  

Clients may use these identifying strings to self-configure their own operating parameters.  ARIA, for instance, loads and 

uses the robot’s related parameter files found in the special 

Aria/params

 directory. 

Opening the Servers—OPEN 

Once you’ve established a connection with ARCOS, your client should send the 

OPEN

 

command #1 (250, 251, 3, 1, 0, 

1) to the server, which causes the microcontroller to perform a few housekeeping functions, start its various servers, 

such as for the SONAR and motors, and begin transmitting server information to the client. 
Note that when at first connected, your robot's motors are disabled regardless of their state when last connected.  To 

enable the motors after starting a connection, you must either do it manually (press the white 

MOTORS

 button on the 

User Control Panel), from the LCD accessory’s interactive mode, or have your client send an 

ENABLE

 client command 

#4 with an integer argument of 1.  See 

Client Commands

 below. 

Once connected, send the 

ENABLE

 command 

or press the white 

MOTORS

 button on the User Control Panel 

to enable your robot’s motors. 

                                                           

7

 There also is maintenance mode for ARCOS downloads and parameter updates; see next chapter for details. 

Содержание Pioneer 3

Страница 1: ...Pioneer 3 Operations Manual P3DX SH P3AT SH with ARCOS Mobile Robots for Research and Education P3X0001 P3T0001 Revision 6 4 October 31 2013...

Страница 2: ...rolBot Seekur Seekur Jr Mapper3 MobileSim and MobileEyes are trademarks and registered trademarks of Adept MobileRobots Other names and logos for companies and products mentioned or featured in this d...

Страница 3: ...iate Operation Inappropriate Operation Inappropriate Operation Inappropriate operation voids your warranty Inappropriate operation includes but is not limited to Dropping the robot running it off a le...

Страница 4: ...iv...

Страница 5: ...wer and Status Indicators 8 Buzzer 8 Serial Port 9 Power Switches 9 Reset and Motors 9 Body Nose and Accessory Panels 9 Nose 10 Access Panels 10 SONAR 10 Multiplexed Operation 10 Sensitivity Adjustmen...

Страница 6: ...7 Closing the Connection CLOSE 27 Client Commands 27 Robots in Motion 30 Client Motion Commands 31 PID Controls 32 Position Integration 32 DriftFactor RevCount and TicksMM 33 SONAR 33 Enable Disabling...

Страница 7: ...56 Hot Swapping the Batteries 56 Charging the Batteries 56 Automated Docking Charging System 57 Alternative Battery Chargers 57 Tightening the AT Drive Belt 57 Getting Inside 58 Removing the Nose 58 O...

Страница 8: ......

Страница 9: ...form and our manufactured accessories against mechanical electronic and labor defects for one year Third party accessories are warranted by their manufacturers typically for 90 days Even though we ve...

Страница 10: ...e website are restricted to licensed customers To gain access enter the username and password written on the Registration Account Sheet that accompanied your robot Newsgroups We maintain several email...

Страница 11: ...rm at the support website http robots MobileRobots com techsupport or by email support MobileRobots com Please include your robot s serial number serial number serial number serial number look for it...

Страница 12: ...eer Server Operating System PSOS firmware The next generation of Pioneer 2 and PeopleBot V1 robots used a Siemens C166 based microcontroller with Pioneer 2 Operating System P2OS software AmigoBot intr...

Страница 13: ...configuration operation and monitoring of your Pioneer platform over the network The SONAR SONAR SONAR SONARNL NL NL NL libraries enable your SONAR based Pioneer platforms to localize and autonomously...

Страница 14: ...robot s velocity change acceleration and other operating parameters and to receive estimated position and other data from the robot See Chapter 6 below for details on connecting with software Maintena...

Страница 15: ...robots are composed of several main parts Deck Motor Stop Button optional on DX User Control Panel Body Nose and Accessory Panels SONAR Array s Motors Wheels and Encoders Batteries and Power Figure 4...

Страница 16: ...ols below Press the STOP button in to re engage motor power and stop that incessant beeping noise Note that you may also have to re enable the motors when connected with client software either by manu...

Страница 17: ...Control Panel are pushbuttons which engage or disengage power to 5 and 12 VDC connectors on the Motor Power board to which we or you attach power for various accessories For example 12 VDC power for t...

Страница 18: ...on The SONAR positions in all Pioneer 3 SONAR 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...

Страница 19: ...on cup tool to help grab and slide each battery out of its bay Spring contacts on the robot s battery power board alleviate the need for manually attaching and detaching power cables or connectors Bal...

Страница 20: ...teries are given only enough current to remain at full charge SAFETY ARCOS WATCHDOGS ARCOS contains a communications WatchDog that will halt the robot s motion if communications between a PC client an...

Страница 21: ...ster than normal When not connected with a client control program releasing the joystick fire button stops the robot However when connected with a client the client program resumes automatic operation...

Страница 22: ...can run your robot s onboard systems while properly and optimally recharging its batteries And because the charging mechanism may be operated independently of your robot s systems power you may start...

Страница 23: ...o capture and process live video INTEGRATED PC Mounted just behind the nose of the robot the Pioneer 3 integrated PC is a common EBX form factor board that comes with up to four serial ports 10 100Bas...

Страница 24: ...er manual and additional resources available at http robots mobilerobots com for additional information on the onboard computer Onboard PC Networking The RJ 45 connector on the Computer Control Panel...

Страница 25: ...average and relay rate data GYROpac 0x98 to ARIA which applies the data to correct and compute the robot s actual x y th position relieving errors due to wheel slippage for instance The gyro s calibra...

Страница 26: ...minals are making contact with the spring contacts in the robot If any batteries fail to make full contact then damage may result to the batteries or robot CAREFUL CAREFUL CAREFUL CAREFUL Always ensur...

Страница 27: ...v ttyS0 under Linux And by default demo connects with an attached laser rangefinder accessory through serial port COM3 or dev ttyS2 To change those connection options either modify the ARIA source cod...

Страница 28: ...when first connecting The amber SERIAL port indicator LEDs on the robot s User Control Panel should blink to indicate ARIA client to ARCOS server communications too OPERATING THE ARIA DEMONSTRATION CL...

Страница 29: ...ing examples subdirectory Start serverDemo just like demo with the remoteHost argument if you aren t running the software onboard ServerDemo also accepts the special command line argument connectLaser...

Страница 30: ...ch on the User Control Panel is engaged associated LED lit for example And remove any serial cable that is plugged into the User Control Panel as it may interfere with internal serial communication Wi...

Страница 31: ...OS and more recent AROS based Pioneer 2s and 3s as well as PeopleBot and PowerBot ARCOS of course extends the servers to add new functionality improve performance and provide additional information ab...

Страница 32: ...Table 4 Client command packet protocol COMPONENT BYTES VALUE DESCRIPTION header 2 0xFA 0xFB Packet header same for client and server byte count 1 N Number of command argument bytes plus Checksum s two...

Страница 33: ...for the returned packets and only issue the next synchronization packet after it has received the appropriate echo Autoconfiguration SYNC2 ARCOS automatically sends robot identifying information back...

Страница 34: ...r 1 0 R VEL int BATTERY byte Battery charge in tenths of volts 101 10 1 volts for example STALL AND BUMPERS uint Motor stall and bumper indicators Bit 0 is the left wheel stall indicator set to 1 if s...

Страница 35: ...If the robot shuts down due to lack of communication with the client it will revive upon receipt of a client command and automatically accelerate to the last specified speed and heading setpoints Clos...

Страница 36: ...c 1 0 VEL 11 int Translate at mm sec forward or backward SETV limited speed 1 0 HEAD 12 int Turn at SETRV speed to absolute heading degrees counterclockwise 1 0 DHEAD 13 int Turn at SETRV speed relati...

Страница 37: ...r either 3 bumpers contacted when robot moving in related direction 1 0 TCM2 45 int TCM2 module commands 0 module off no readings 1 compass only readings in standard SIP 2 send one TCM2 packet 3 send...

Страница 38: ...e 1 0 REVCOUNT 88 int Change working differential encoder count 1 1 DRIFTFACTOR 89 int Change working drift factor 1 0 SOUNDTOG 92 int 0 mute User Control piezo 1 enable 1 0 TICKSMM 93 int Change work...

Страница 39: ...idal velocity function which ARCOS recomputes each time it receives a new motion command 10 ARCOS automatically limits VEL2 VEL and RVEL specified velocities to previously imposed client modifiable SE...

Страница 40: ...s persist until the client disconnects Translation PID values apply to independent wheel velocity mode as well The P term value Kp increases the overall gain of the system by amplifying the position e...

Страница 41: ...r defaults to its FLASH value on start up or reset and can be changed on the fly with the DRIFTFACTOR client command 89 with signed integer argument The RevCount parameter is the differential number o...

Страница 42: ...change the cycle timing on the fly to the command integer s argument value in milliseconds Minimum and maximum values are two and 120 milliseconds respectively The default value is set in FLASH normal...

Страница 43: ...OYSTICKpac or after such as IOpac the standard SIP that ARCOS sends to your client every SipCycle milliseconds 13 The standard SIP takes priority so you may have to adjust the HOST serial baud rate to...

Страница 44: ...ks for a 180 degree revolution of the robot Watchdog int Ms time before robot automatically stops if it has not received a command from the client Restarts on restoration of connection P2mpacs byte 1...

Страница 45: ...eir respective FLASH based defaults and get reset to those values whenever the microcontroller is reset or upon client disconnection For advanced serial port management from the client side ARCOS prov...

Страница 46: ...of zero BUZZER SOUNDS Pioneer 3 robots have a piezo buzzer on the User Control Panel that aurally notifies you of system conditions such as low batteries or stalls For stealthy operation issue the SO...

Страница 47: ...12 TCM2 command 45 arguments ARCOS Command Argument TCM2 Command Action 0 Module off software only not low power standby 1 Compass only default reading in standard SIP 2 Send single TCM2 SIP 45 3 Send...

Страница 48: ...updated calibration score to the connected client It and subsequent SIPs contain that latest calibration score on which you may evaluate the calibration settings Reset Mode The reset TCM2 command arg...

Страница 49: ...ignores 0 the state of the corresponding bit in the second byte to set 1 or unset 0 the digital output port For example here s the ARCOS client command to set digital output ports zero and three OD0...

Страница 50: ...ied by the InvertBumps mask All the bumper and IR data bits appear in the IOpac packet Additionally the IR inputs may be mapped in the FLASH parameters to corresponding bumper inputs for reflexive lik...

Страница 51: ...from slipping wheels The microcontroller supports the gyro via attachment to its AN6 and AN7 analog to digital input ports To enable the gyro you must set the HasGyro FLASH parameter to either value o...

Страница 52: ...to compute the XPos YPos and ThPos in the standard SIP 15 Like ARIA s treatment the server side gyro firmware automatically detects its center point and compensates for drift Unlike the client side t...

Страница 53: ...pting to resume activity While the motors are engaged the charging mechanism cannot be deployed except by the CHARGE command For best control and safety consider also using the ARCOS CHARGE command nu...

Страница 54: ...w 0 while the batteries charge from approximately 80 to 90 of full charge from 13 8 to 14 7V The charger finally reverts to float maintaining full charge at much lower current and charger voltage 13 5...

Страница 55: ...switch its power OFF typically AUX1 When connecting from an external PC directly tether no radios its serial port to the 9 pin DSUB SERIAL connector on the User Control Panel Enabling Maintenance Mode...

Страница 56: ...with command line options Run the program from the Start menu or run Command from the Start menu then navigate to the ARCOS directory and start ARCOScf with options For example after invoking the MSDO...

Страница 57: ...yword at its command prompt Some keywords affect the operation of ARCOScf or the status of the parameters file as a whole For instance to review the list of current ARCOS FLASH variables type v or vie...

Страница 58: ...tivated when battery charge falls below this value shutdownvolts int 108 In 1 10 volts microcontroller disconnects client and signals onboard PC to shutdown when battery charge falls below this value...

Страница 59: ...t 0 Max rotational speed of gyro SPI based only 0 internal default 320 deg sec hasbrakes byte 0 1 if your robot has brakes 0 if not charger byte 0 Set to 1 if P3 PeopleBot or 2 if PowerBot autocharger...

Страница 60: ...m translation velocity joyrvelmax int 50 Joydrive maximum rotation velocity PID PARAMETERS The ARCOS configuration parameters include settings for the PID motor controls for translation and rotation o...

Страница 61: ...e average is then compared with the stallVal FLASH value If it exceeds that value in other words the motors are being given lots of power but are barely moving if at all a stall occurs Once stalled po...

Страница 62: ...d been hit Similarly IRs 5 and 6 will cause bump events on the front bumper 1 redundancy is okay We aren t using IRs 1 and 2 at least not with the front bumpers Note too that there are only six charac...

Страница 63: ...nect with the ARIA demo and engage position mode to move the robot As accurately as possible a laser line or pointer is helpful here measure its actual motion and position and use demo s direct mode t...

Страница 64: ...access the batteries 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 provide a suction cup tool to help Ins...

Страница 65: ...to use an alternative battery charger be sure to connect positive to positive and negative to negative from charger to robot An alternative AC to DC converter battery charger should sustain at least...

Страница 66: ...inged at the bottom Remove all nose retaining screws with the 3mm hex wrench supplied with your robot Unlike earlier Pioneer 2 models you do not have to remove the Gripper or the front bumper accessor...

Страница 67: ...ot s serial number robot s serial number IMPORTANT as well as name email and mail addresses along with phone and fax numbers Tell us when and how we can best contact you we will assume email is the be...

Страница 68: ...igital outputs OD0 7 Gripper dock or user custom I O USER IO GRIPPER Connector Yes if no gripper Analog input AN0 Joystick speed control USER IO GRIPPER Connector and JOYSTICK Connector Analog input A...

Страница 69: ...in 4 and for notifying the attached PC of low power condition DSR pin 6 and HRNG pin 9 The HOST serial connectors are wired DCE for direct connection straight through cable not NULL modem to a standar...

Страница 70: ...ripper or docking hardware is installed in a robot the digital I O ports used for those devices will not be available for user custom devices Indicated ports are shared on other connectors Digital inp...

Страница 71: ...t 3 Inner breakbeam IR 9 ID4 DIGIN bit 4 Left paddle contact 10 OD4 DIGOUT bit 4 inhibit 11 ID5 DIGIN bit 5 Right paddle contact 12 OD5 DIGOUT bit 5 deploy 13 ID6 DIGIN bit 6 power good 14 OD6 DIGOUT...

Страница 72: ...ect input 8 REA Right encoder channel A 9 RPWR Aux1 power enable 10 REB Right encoder channel B 11 APWR Aux2 power enable 12 LEB Left encoder channel B 13 CHRG Charge port detect 14 IR6 IR input bit 6...

Страница 73: ...SONAR PIN SIGNAL DESCRIPTION PIN SIGNAL DESCRIPTION 1 A0 disc address 2 A1 disc address 3 A2 disc address 4 BINH inhibits return signal 5 INIT starts SONAR ping 6 VCC 5 VDC 7 VCC 5 VDC 8 SGND Common 9...

Страница 74: ...ctly with the microcontroller through its respective 6 position microfit connector Indicated lines are shared on other connectors Table 31 Heading correction gyro connector PIN SIGNAL DESCRIPTION PIN...

Страница 75: ...shared on the C166 microcontroller connector Table 32 Power connector 5 pos microfit PIN FUNCTION DESCRIPTION 1 Vbat Battery power 2 Gnd Power common 3 Vcc 5 VDC for SONAR 4 Vcc 5 VDC for SONAR 5 nc N...

Страница 76: ...connector 3 position connector receptacle female with latch lock Add 20 30 AWG terminal contact pins to crimp with wire Molex part 436450300 www digikey com part WM1846 ND www mouser com part 538 436...

Страница 77: ...arate connector provides signal path for an additional four IR sensors Table 36 IR power and signal connectors 3 pos microfits PIN FUNCTION DESCRIPTION 1 Vpp Battery 12 VDC 2 IRn Switching signal 3 Gn...

Страница 78: ...ox hrs 8 10 4 6 with PC approx hrs 3 4 2 3 Recharge time hr battery std charger 6 6 High Speed 3 batteries 2 4 2 4 Mobility Mobility Mobility Mobility Wheels 2 foam filled 4 pneumatic tread knobby wav...

Страница 79: ...0 34 000 counts mm 128 49 counts rotation 33 500 22 500 Bumpers Optional Optional counts rotation 33 500 22 500 Main Power Standard Standard Controls and Ports Controls and Ports Controls and Ports Co...

Страница 80: ...rs and manufacturers of Adept MobileRobots products shall bear no liabilities for operation and use of the robot or any accompanying software except that covered by the warranty and period The develop...

Страница 81: ...client server 14 23 CLOSE command 27 Commands 27 Communication packets 23 See Packets Communication rate 25 Components Accessory Panels 10 Basic 1 Body 9 Computer 10 Console 8 Nose 10 Optional 1 User...

Страница 82: ...s 2 Nose 10 O Onboard Computer 15 Networking 16 OPEN 25 P Packet 23 Packets Checksum 24 Configuration 35 Data types 23 ENCODERpac 38 Errors 24 Extended 34 GRIPPERpac 42 IOpac 41 JOYSTICKpac 42 Process...

Страница 83: ...5 Sounds 38 Specifications 7 StallCount 53 Stalls 12 stallval 12 StallVal 53 stallwait 12 STAT LED 8 subtype 25 Support 3 SYNC 25 T TCM2 Compass 38 TCM2 Compass Calibration 39 Ticksmm 52 TicksMM 33 5...

Отзывы: