Pioneer 3TM, 2TM manual PID Controls, Internal coordinate system

Page 46

ActivMedia Robotics Operating System

At the same time, AROS reports back to the client in the standard SIP the robot’s position and speed. Not all robots convert these values into platform-independent units. ARIA and Saphira clients rely on conversion factors found in your robot’s respective “.p” parameter file to make the necessary conversion.

So when you tell the robot to move a certain number of millimeters forward, measure its actual travel with a meter tape and adjust ticksmm accordingly. Similarly, turn the robot and adjust revcount to achieve the correct heading.

Then, when you are satisfied that the robot moves and turns precisely, adjust the various parameter file-based conversion factors, such as DistConvFactor, so that the client reports the robot’s position and speeds in platform-independent units.

Please see the next chapter for a detailed description of these platform-dependent variables.

PID Controls

The AROS drive servers use a common Proportional-Integral-Derivative (PID) control system to adjust the PWM pulse width at the motor drivers and subsequent power to the motors. The motor-duty cycle is 200 microseconds; pulse-width is proportional 0-500 for 0- 100% of the duty cycle.

The AROS drive servers recalculate and adjust your robot’s trajectory and speed every five milliseconds based on feedback from the wheel encoders.

0

+X

Front

+90 +Y

+270

+180

Figure 18. Internal coordinate system

The default PID values for translation and rotation and maximum PWM are stored as FLASH parameters in your robot’s H8S microcontroller and may be changed. You also may temporarily update the PID values with the AROS client commands #84 through #87. On-the-fly changes persist until the controller is reset. The translational PID values apply to independent wheel-velocity mode.

The P term value Kp increases the overall gain of the system by amplifying the position error. 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 a lightly loaded robot may work best with Kp in the range of 20 to 30.

The D term Kv provides a PID gain factor that 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 I Term Ki moderates any steady state errors thereby limiting velocity fluctuations during the course of a move. At rest, your robot will seek to “zero out” any command position error. Too large of a Ki factor will cause an excessive windup of the motor when the load changes, such as when climbing over a bump or accelerating to a new speed.

40

Image 46
Contents Pioneer H8-Series Operations Manual Page Important Safety Instructions Table of Contents Operating the Aria Demonstration Client Appendix C Basic Components all shipments IntroductionRobot Package Optional Components and Attachments partial listSupport Website User-Supplied Components / System RequirementsAdditional Resources NewsgroupsSupport Support@activmedia.comWhat Is Pioneer? Pioneer Reference PlatformPlus MOTOR-POWER Board Hitachi H8S-BASED MicrocontrollerClient Software Http//robots.activmedia.comSupporting Software Pioneer LegacyPioneer 1 and AT Pioneer 2 and PeopleBotActivMedia Robotics Modes of Operation Server ModeMaintenance and Standalone Modes Joydrive and Self Test ModesSpecifications & Controls Physical CharacteristicsMain Components Motor Stop ButtonUser Control Panel P3-DX User Control PanelBody, Nose, and Accessory Panels Sonar Arrays with Gain AdjustmentBatteries and Power Motors, Wheels, and Position EncodersBattery Indicators and Low Voltage Conditions RechargingManual Operation Robot Power and Systems on Manual Operation Robot Power OFFDOCKING/CHARGING System Radio Controls and Accessories Client-server connection optionsOnboard PC Computer Control PanelOperating the Onboard PC PC NetworkingUPS and Genpowerd Safety Aros Watchdogs Install Aria Preparative AssemblyQuick Start Starting UP Client and Server Install BatteriesClient-Server Communications Drive Self-TestDemo Startup Options IpthruSuccessful Connection Operating the Aria Demonstration ClientQuickstart Troubleshooting DisconnectingProper Connections OFF SRIsimJoydrive Mode Joydrive and Self-TestsEngaging SELF-TESTS ActivMedia Robotics Operating System CLIENT-SERVER Communication Packet ProtocolsPacket Errors Packet ChecksumServer Information Packets Multiply by DistConvFactor‡Client Commands Before Client ConnectionP2OS CLIENT-SERVER Connection Keeping the Beat-PULSE Autoconfiguration SYNC2Opening the Servers-OPEN Closing the Connection-CLOSEMotion Commands RotationActivMedia Robots in Motion Platform Dependent and Independent VariablesPID Controls Internal coordinate systemSonar Enable/Disabling SonarPosition Integration Polling Sequence and RateStalls and Emergencies 11-15 ReservedAccessory Commands and Packets Packet ProcessingSerial Port Communications CONFIGpac and Config CommandChanging Baud Rates and Autobauding Encoder Packets HOST-to-AUX Serial TransfersGripper packets Sounds TCM2Onboard PC Heading Correction GyroInput Output I/O User I/OBumper and IR I/O IO packetsDigital Port Controls Expansion I/ODOCKING/CHARGING System I/O Docking/Charging ServersMonitoring the Recharge Cycle Charge State Overcharge ~Volts Charge current ID7ActivMedia Robotics Operating System Aros Maintenance Mode Updating & Reconfiguring ArosWhere to GET Aros Software Simple Aros UpdatesUpdating and Reconfiguring Aros Starting AroscfInteractive Commands Configuring Aros Operating ParametersChanging Parameters Save Your Work PID ParametersKeyword Ticksmm and Revcount 0056 0057 0060 0034Stallval and Stallcount BumpersUpdating and Reconfiguring Aros Drive Lubrication Maintenance & RepairTire Inflation BatteriesAutomated Docking/Charging System Alternative Battery ChargersTightening the AT Drive Belt Getting Inside Removing the NoseOpening the Deck Factory RepairsH8S Ports & Connections Power ConnectorAppendix a H8S MicrocontrollerSerial Ports User I/O, Gripper, Docking/Charging PortOD7 Expansion I/O BusMotors, Encoders, and IR Sensors Bumper PortsUser Control Interface Joystick Port Configuration for Current and Temperature Sensing Pioneer 3 and 2-PLUS MOTOR-POWER BoardAppendix B Controller Power and Interface Radio, Auxiliary, and User Power ConnectorsIR Signal and Power GNDRadio Modem Settings Appendix CConsole mode Serial Ethernet SettingsAppendix D Webpage Peer-to-Peer NetworkingSpecifications Appendix EControls and Ports Warranty & Liabilities Columbia Drive Amherst, NH 603