Basilio Bona DAUIN – Politecnico di Torino 24/02/2019 ROBOTICS 01PEEQW Basilio Bona DAUIN – Politecnico di Torino di 23
24/02/2019 Trajectory Planning 2 di 23
Planning of the task space variables 24/02/2019 Planning of the task space variables Not all motions are planned in the joint space Very often the planning takes place in the task (cartesian) space, since it is more convenient for the operator This happens when a particular geometric profile must be followed (as in the case of continuous welding or glue deposition, etc. ) or when obstacles in the task space must be avoided Once the cartesian targets are determined, the inverse kinematics function must be invoked, in order to provide joint reference to the control algorithm Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016 di 23
Inverse Kinematics Convex Combination Inverse Kinematics Profile Generator Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Task space planning In the following slides we will consider only the cartesian position planning Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Task space planning: the position variables The task space position planning starts with the formal definition of the required trajectory The trajectory can be associated to a time law: e.g., it may be necessary to do a certain path with a prescribed velocity (in such tasks as continuous welding, glue deposition, etc.) When the task requires an interaction with the environment, as in manipulation, deburring, or other tasks where the TCP is subject to external forces, it is necessary to plan the position and the force at the same time. This case will not be treated here Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Task space planning: the position variables Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Task space planning: the position variables Case 1 Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Task space planning: the position variables Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Task space planning: the position variables Case 2 Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Example: arc in the plane Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Example: arc in the plane Discrete time where Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Example: simple arc in the plane angle Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Example: another arc in the plane Clockwise angle Anti-clockwise angle Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Orientation planning – 1 Orientation is defined by a rotation matrix; during the planning phase it must always remain an orthonormal matrix with positive unit determinant Hence it is wrong to plan the orientation as since Other methods must be used; the most common are three Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Orientation planning – 1 Axis –angle representation: one parameter is planned Planar sliding: two parameters are planned Euler angles: three parameters are planned Initial data common to the three approaches: Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Method 1: axis-angle Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Method 1: axis-angle Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Method 1: axis-angle axis u = -0.5774 theta = 120.0000 Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Method 2: planar sliding Do not confuse k with k Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Method 2: planar sliding Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Method 2: planar sliding Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Method 2: planar sliding Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Method 2: planar sliding Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Method 2: planar sliding Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Method 2: planar sliding Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Method 3: Euler angles Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Method 3: Euler angles Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Method 3: Euler angles axis u= -0.5774 0.5774 Delta_eul = 180 90 Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Axis-angle vs Euler comparison Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Axis-angle vs Euler comparison This is the third planned reference frame Axis-angle Euler Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Characteristics of the methods Axis –angle: is simple to implement and gives a moderately good geometrical insight in the movement performed by the robot Planar sliding: is the most complex, but provides the best geometrical insight Euler angles: is the most simple, but suffers of poor geometrical insight Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Inverse kinematics Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Inverse kinematics Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Actuators constraints Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Actuators constraints Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Micro-macro interpolation Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Micro-macro interpolation Example Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016
Micro-macro interpolation Zoom Errors True values Approximate values Basilio Bona - DAUIN - PoliTo ROBOTICS 01PEEQW - 2015/2016