Robot Programming by Demonstration (Pbd) Iraj Mantegh NRC Aerospace ACAMP Robotic and Intelligent Systems Seminar June 9,2014 Introduction “Advanced manufacturing techniques and management practices that reduce cycle times are a real priority for the (aerospace) industry today”- Advanced Manufacturing, Nov 20??. “One serious social issue that should be addressed by robotics is the decrease of labor power to maintain industrial activities and social services as the elderly population continues to Increases” -K. Tanie, President, IEEE Robotics and Aut. Society, 20??) © 2014 National Research Council Canada Background Offline Programming (OLP) • Does not capture process info • Requires specific programming expertise Robot Task Definition Workcell Sequencing Off-Line Programming Resource-centred tasks & layout (robot & aux. devices) Excecution in production Validated process (with multiple resources) Robot(s) programs in native naguage(s) © 2014 National Research Council Canada Robot PBD Slide 4/17 Robot programming by demonstration (PbD) refers to transfer of skills to robots by providing solutions for the required performance through demonstrations. Traditional robot programming: (e.g. OLP software) Time consuming and cost intensive solutions (programming expert, facility, time consuming) Task specific Robot dependent Limited to structured working environment © 2014 National Research Council Canada Robot programming by demonstration: Programming by task experts Intuitive approach Adaptive for different tasks Independent of the robot platform Continually refine performance with repetition of demonstrations Robot PBD Slide 5/17 Robot PbD: quick, natural way of robot programming; reduces costs for development of industrial applications; provides framework for service robotics applications. Challenges in robot PbD: learning generic tasks, interpreting teacher’s intention, correspondence problem, robust learning, evaluation of learning performance, human-robot interaction. © 2014 National Research Council Canada Methodology 1. Perception of demonstrations using optical tracking system example: painting task Demonstrated trajectories key points 2. Selection of candidate key points (Linde-Buzo-Gray (LBG) algorithm ) © 2014 National Research Council Canada Methodology 3. Segmentation of the trajectories (with HMM) Key points: transitions between the states. 4. Temporal alignment of the key points (using DTW (dynamic time warping) algorithm) 5. Assigning weighting coefficients to key points’ clusters 6. Fitting and interpolation between the key points across all demonstrations Generalized trajectory © 2014 National Research Council Canada 8 Example • “Generalizations” drawing from multiple human demonstrations • Example manufacturing processes: • Spray painting • Sanding • Polishing / Buffing • Shot peen forming • It is shown that the generalized paths are both more consistent and more effective than the observed human demonstrations A pseudo-periodic trajectory is followed when shot peen forming an airfoil. © 2014 National Research Council Canada Experiment in Shot Peen Forming: Results task Most Consistent Human Trajectories Generalized Trajectories 1 2 © 2014 National Research Council Canada 9 Trajectory Learning: Peen Forming example Human Demonstrations Trajectories 60 40 20 0 -20 Z (mm) Z (mm) Generated trajectories are smoother, less erratic, and more consistent throughout the part -150 -200 -250 -300 -350 Y (mm) -400 Jerk 4 -100 -250 -300 -350 Y (mm) -100 0 -50 X (mm) 50 uniform coverage Velocity Acceleration Distributions 9 100 50 0 -50 X (mm) gaps in coverage Acceleration Jerk Distributions x 10 60 40 20 0 -20 -150 -200 Sonaca Montreal 10 Generated Robot Velocity Distributions 4000 1000 3500 900 8 800 3000 6 5 4 3 2000 1500 600 500 400 300 erratic (noisy) 1000 2 200 500 1 0 100 1 2 3 4 5 6 7 Test Subject 8 9 10 Gen Robot trajectorycreated directly from human demonstration 700 2500 Velocity (mm/s) Acceleration (mm/s 2) Jerk (mm/s3) 7 0 Test Subject 1 2 3 4 5 6 7 Test Subject 8 Test Subject Generalted trajectory has lowest jerks and accelerations smoothest! © 2014 National Research Council Canada 9 10 Gen 0 1 2 3 4 5 6 7 Test Subject 8 9 10 Gen Test Subject Generated trajectory’s velocities are average of all demonstrations (requirement) 100 Trajectory Learning: Complex geometry- Spray • Example: spray painting parts with more complex Demonstrated trajectories trajectory 300 z (mm) Painted surfaces 200 100 100 0 0 -200 -100 -100 0 100 200 x (mm) Robot task execution Generalized trajectory 200 z (m m ) 100 100 0 0 -200 -100 -100 0 100 200 y (mm) -200 © 2014 National Research Council Canada 300 x (mm) 300 -200 y (mm) Robot Task Planning • • • • Define a “Task Template” Robot-independent Geometry-independent Task template include trajectory patterns • Use the measured trajectory parameters • Pattern and task reusability • Invoke trajectory learned by PbD © 2014 National Research Council Canada Trajectory Reconstruction (Trajectory Generation) • • • • • Analysis of demonstrated trajectory Pattern identification Kinematic profiling Analysis of new geometry Trajectory reconstruction • • • Demonstrated Trajectory Generation of robot code Upload to robot Record and verify with optical tracking Reconstructed by PbD Executed on Robot © 2014 National Research Council Canada Trajectory Reconstruction (Trajectory Generation) • • • • • Analysis of demonstrated trajectory Pattern identification Kinematic profiling Analysis of new geometry Trajectory reconstruction Demonstrated Trajectory • • • Generation of robot code Upload to robot Record and verify with optical tracking Reconstructed by PbD Executed on Robot © 2014 National Research Council Canada Thank you Eric Lefebvre Business Development / Client Relationship Lead Tel: 613-949-7548 [email protected] www.nrc-cnrc.gc.ca 15 Dr. Iraj Mantegh Program Lead Tel: 514-283-9240 [email protected]
© Copyright 2024 ExpyDoc