DOC PREVIEW
CMU 15494 Cognitive Robotics - Navigating with the Pilot

This preview shows page 1-2-3-24-25-26 out of 26 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

02/17/10 15-494 Cognitive Robotics 1Navigating with the Pilot15-494 Cognitive RoboticsDavid S. Touretzky &Ethan Tira-ThompsonCarnegie MellonSpring 201002/17/10 15-494 Cognitive Robotics 2How Does the Robot Walk?●Multiple walk engines incorporated into Tekkotsu:–CMPack '02 AIBO walk engine from Veloso et al. (CMU), with modifications by Ethan Tira-Thompson–UPennalizers AIBO walk engine from Lee et al. (U. Penn)–XWalk engine by Ethan Tira-Thompson for the Chiara●Basic idea is the same:–Cyclic pattern of leg motions–Parameters control leg trajectory, body angle, etc.–Many different gaits are possible by varying phases of the legs–“Open loop” control: no force feedback–Can't adapt to rough terrain–Can move quickly, but not very accurately02/17/10 15-494 Cognitive Robotics 302/17/10 15-494 Cognitive Robotics 4Modified CMPack Walk Engine46 Leg Parameters:●Neutral kinematic position (3x4)●Lift velocity (3x4)●Lift time (1x4)●Down velocity (3x4)●Down time (1x4)●Sag distance (1)●Differential drive (1)5 Body Parameters:●Height of body (1)●Angle of body (1)●Hop amplitude (1)●Sway amplitude (1)●Walk period (1)Modified fom Sonia Chernova's lecture notes02/17/10 15-494 Cognitive Robotics 5Neutral Kinematic Position●Position (x,y,z) of the leg on the ground at some fixed point during the walk cycle.●Where the legs would hit the ground if the robot were pacing in place (traveling with zero velocity).Path of the leg duringone walk cycleFrom Sonia Chernova's lecture noteslift downdrive02/17/10 15-494 Cognitive Robotics 6Leg Lift and Leg Plant●Lift velocity vector (mm/sec) determines how leg is lifted off the ground●Down velocity vector (mm/sec) determines how leg is placed back on the ground.●Lift time and down time (1 value each per leg) control the order of leg motions.–Expressed as a percentage of time through the walk cycle that the leg is raised and lowered.–Governs which legs move together and which move at opposite times: pace vs. trot vs. gallop.From Sonia Chernova's lecture notes02/17/10 15-494 Cognitive Robotics 7Body Angle/Height; Hop & Sway●Body angle (radians) relative to the ground, measured at the origin of the motion coordinate frame.–Controls whether the robot is pitched up or down.●Body height (mm) relative to the ground, measured at the origin of the motion coordinate frame.●Hop and sway amplitudes (mm) constrain the body's vertical and horizontal oscillations during walking. (Usually set to 0.)From Sonia Chernova's lecture notes02/17/10 15-494 Cognitive Robotics 8Walk Period●The walk period (msec) specifies the time of one walk cycle.●Note that this is independent of speed.●To walk faster, the AIBO takes larger steps; it does not change the period of the walk cycle the way a person would do.●Chiara walks are statically stable, and period does vary with speed.From Sonia Chernova's lecture notes02/17/10 15-494 Cognitive Robotics 9New CMPack Parameter: Front & Back Leg Height Limits●Height of the air path of the front and back legs.●Upper bound: may not be reached, depending on other leg motion parameters. Air path heightFrom Sonia Chernova's lecture notes02/17/10 15-494 Cognitive Robotics 10Walk Parameter Optimization●Many RoboCup groups use machine learning techniques to optimize walk parameters.●CMPack uses a genetic algorithm.●Candidates are evaluated by having the robot walk and measuring the results.●CMPack got 20% speedup over previous hand-tuned gaits.02/17/10 15-494 Cognitive Robotics 11Tekkotsu Walk Editor●Root Control > File Access > XWalk Edit●Values are stored in a walk parameter file–Default parameter file is walk.plist02/17/10 15-494 Cognitive Robotics 12Chiara Gaits●One leg at a time (default). walk.plist–Requires the least power.–Slow: 6 beats/cycle.●Two legs at a time. walk2.plist–Intermediate speed and power.–3 beats/cycle.●Three legs at a time: tripod gait. walk3.plist–Fastest gait that is still statically stable.–Requires lots of power.–2 beats/cycle.02/17/10 15-494 Cognitive Robotics 13XWalkMC●XWalkMC is a motion command that uses the Chiara walk engine to calculate leg trajectories.●Walking is controlled by three parameters:–x velocity (forward motion)–y velocity (lateral motion: strafing)–angular velocity (rotation)02/17/10 15-494 Cognitive Robotics 14XWalkNode●Subclass of StateNode●Activates an XWalkMC on start()●Deactivates it on stop()●Provides functions to set (x,y,a) velocities●XWalkNode($, xvel, yvel, avel)–xvel, yvel in mm/sec; avel in rad/sec●XWalkNode($, xvel, xdisp, yvel, ydisp, avel, adisp)–velocities in mm/sec and rad/sec; 0 means “max speed”–displacements in mm and rad02/17/10 15-494 Cognitive Robotics 15WalkNode●For the iRobot Create, “walking” means driving.●WalkNode($, xvel, yvel, avel)–xvel = velocity in mm/sec–yvel must be zero–avel = angular velocity in radians/s●WalkNode($, xdist, ydist, adist, 1)–xdist = distance in mm–ydist must be zero–adist = angle in radians02/17/10 15-494 Cognitive Robotics 16Waypoint Engine●Takes the robot through a path defined by a series of waypoints.●Each waypoint specifies a position (x,y) and orientation.●Three waypoint types:Egocentric“Three steps forward”Offset“Three steps north”Absolute“To (30,12)”02/17/10 15-494 Cognitive Robotics 17Controlling Body OrientationangleIsRelative == trueThe angle is relative to the path, so an angle of 0 means the robot's body will follow the direction of travel.angleIsRelative == falseThe angle is relative to the world coordinate system, so the body will hold a constant heading while walking.02/17/10 15-494 Cognitive Robotics 18Arcing Trajectories●Paths can be either straight lines or arcs.●Arc parameter (in radians, not degrees) corresponds to the angle of the circle which is swept.●Don't use values > 180o.02/17/10 15-494 Cognitive Robotics 19Track Path (Error Correction)●setCurPos() function can be used to correct position if you have a localization module.●When trackPath flag is true, the robot will attempt to return to its planned path after a perturbation.●When false, it just goes straight to the destination.02/17/10 15-494 Cognitive Robotics 20Waypoint Walk Editor●Root Control > File Access > WaypointWalk Control●Allows interactive creation, execution of waypoint file.02/17/10 15-494 Cognitive Robotics 21Sample Waypoint File#WyP#add_{point|arc}


View Full Document

CMU 15494 Cognitive Robotics - Navigating with the Pilot

Download Navigating with the Pilot
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Navigating with the Pilot and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Navigating with the Pilot 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?