Making a robot move Ville Kyrki Lappeenranta University of Technology Finland How to make a robot move? ● ● Questions to answer: – What path do you want the robot to follow? – How can you make the robot follow that path? What path? – ● Path planning and trajectory planning How to follow? – Robot control Path planning ● ● Path planning problem: Find a collision free path for the robot from one configuration to another configuration Difficult search problem – ● Exponential complexity with respect to the degrees of freedom (controllable joints) Path planning is not usually solved by computer with industrial robots as human operators plan the paths Trajectory planning ● Planned path is typically represented by viapoints – ● ● via-points = sequence of points (or end-effector poses) along the path Trajectory planning = planning a trajectory connecting two or more via points In industrial settings, teaching often done by teach-and-playback Free vs guarded motions ● Motion can often be decomposed into free and guarded motions – free motion = no obstacles near, fast motion, small inaccuracies allowed – guarded motion = obstacles near, accurate motion FREE GUARDED GUARDED Point-to-point motion ● Simplest type, two points used at a time ● Linear trajectories common ● ● ● For free motions, linear trajectories in joint space (fast) For guarded motions, linear trajectories in Cartesian space Linear segments with parabolic blends (LSPB) = Linear segments with acceleration and velocity constraints Joint space vs Cartesian space ● ● ● ● Free motions: often linear in joint space IMPORTANT: Linear joint space trajectory is not linear in Cartesian space! Thus, if linear Cartesian motion is desired (guarded motions), the linear trajectory needs to be defined in the Cartesian space Inverse kinematics are needed to convert this to joint space, as robot is controlled in the joint space Joint control ● ● ● Control problem: Determine joint inputs to execute a desired motion Joint inputs can be e.g. forces/torques or currents of motors Robot (physical) models are necessary trajectory position Controller Robot Open-loop control ● Open-loop control (see previous slide): – No feedback from the system is available – Can not reject external disturbances – Rely on accurately known model disturbance trajectory Controller + position Robot Closed-loop control ● Sensor feedback is available – ● ● Most typically the current joint angles are measured Error between reference and measured is controlled to zero Simple example: disturbance trajectory Controller + - Sensor position Robot Basic ideas of feedback control ● 1-D cart controlled by external force m ẍ b ẋ =u mass ● damping force Proportional-derivative (PD) control u=kp ekd ė e=x r −x will drive the above system to desired xr ● Good controller gains k can be calculated if system parameters are known small gain large gain Disturbance rejection ● External (not modeled) disturbance may affect the system m ẍ b ẋ d=u mass damping force disturbance u=kp ekd ėki ∫ e dt Further issues ● Control in Cartesian vs joint space – ● Jacobian (invertible) can be used for performing control in Cartesian space Robot is a nonlinear system M q q̈C q , q̇  q̇G q=F ● Feedback linearization Summary ● ● Do your trajectory planning, do not control directly by via-points! Physical models are needed for accurate motion control
© Copyright 2025 Paperzz