1 / 39

Robotic Control

Robotic Control. Lecture 1 Dynamics and Modeling. A brief history…. Started as a work of fiction Czech playwright Karel Capek coined the term robot in his play Rossum’s Universal Robots. Numerical control. Developed after WWII and were designed to perform specific tasks

mira-meyers
Download Presentation

Robotic Control

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Robotic Control Lecture 1 Dynamics and Modeling

  2. A brief history… • Started as a work of fiction • Czech playwright Karel Capek coined the term robot in his play Rossum’s Universal Robots Robotic Control

  3. Numerical control • Developed after WWII and were designed to perform specific tasks • Instruction were given to machines in the form of numeric codes (NC systems) • Typically open-loop systems, relied on skill of programmers to avoid crashes Robotic Control

  4. Modern robots Mechanics Digital Computation Coordination Electronic Sensors Actuation Path Planning Learning/Adaptation Robotics Robotic Control

  5. Types of Robots • Industrial • Locomotion/Exploration • Medical • Home/Entertainment Robotic Control

  6. Industrial Robots Coating/Painting Assembly of an automobile Robotic Control Drilling/ Welding/Cutting

  7. Locomotion/Exploration Underwater exploration Space Exploration Robo-Cop Robotic Control

  8. Medical a) World's first CE-marked medical robot for head surgery b) Surgical robot used in spine surgery, redundant manual guidance. c) Autoclavable instrument guidance (4 DoF) for milling, drilling, endoscope guidance and biopsy applications Robotic Control

  9. House-hold/Entertainment Toys Asimo Robotic Control

  10. Purpose of Robotic Control • Direct control of forces or displacements of a manipulator • Path planning and navigation (mobile robots) • Compensate for robot’s dynamic properties (inertia, damping, etc.) • Avoid internal/external obstacles Robotic Control

  11. Mathematical Modeling • Local vs. Global coordinates • Translate from joint angles to end position • Jacobian • coordinate transforms • linearization • Kinematics • Dynamics Robotic Control

  12. Mechanics of Multi-link arms • Local vs. Global coordinates • Coordinate Transforms • Jacobians • Kinematics Robotic Control

  13. Local vs. Global Coordinates • Local coordinates • Describe joint angles or extension • Simple and intuitive description for each link • Global Coordinates • Typically describe the end effector / manipulator’s position and angle in space • “output” coordinates required for control of force or displacement Robotic Control

  14. Coordinate Transformation Cntd. • Homogeneous transformation • Matrix of partial derivatives • Transforms joint angles (q) into manipulator coordinates Robotic Control

  15. Coordinate Transformation • 2-link arm, relative coordinates • Step 1: Define x and y in terms of θ1 and θ2 Robotic Control

  16. Coordinate Transformation • Step 2: Take partial derivatives to find J Robotic Control

  17. Joint Singularities • Singularity condition • Loss of 1 or more DOF • J becomes singular • Occurs at: • Boundaries of workspace • Critical points (for multi-link arms Robotic Control

  18. Finding the Dynamic Model of a Robotic System • Dynamics • Lagrange Method • Equations of Motion • MATLAB Simulation Robotic Control

  19. Step 1: Identify Model Mechanics Example: 2-link robotic arm Source: Peter R. Kraus, 2-link arm dynamics Robotic Control

  20. Step 2: Identify Parameters • For each link, find or calculate • Mass, mi • Length, li • Center of gravity, lCi • Moment of Inertia, ii m1 i1=m1l12 / 3 Robotic Control

  21. Step 3: Formulate Lagrangian • Lagrangian L defined as difference between kinetic and potential energy: • L is a scalar function of q and dq/dt • L requires only first derivatives in time Robotic Control

  22. Kinetic and Potential Energies • Kinetic energy of individual links in an n-link arm • Potential energy of individual links Height of link end Robotic Control

  23. Energy Sums (2-Link Arm) • T = sum of kinetic energies: • V = sum of potential energies: Robotic Control

  24. Step 4: Equations of Motion • Calculate partial derivatives of L wrt qi, dqi/dt and plug into general equation: Non-conservative Forces (damping, inputs) Inertia (d2qi/dt2) Conservative Forces Robotic Control

  25. Equations of Motion – Structure • M – Inertia Matrix • Positive Definite • Configuration dependent • Non-linear terms: sin(θ), cos(θ) • C – Coriolis forces • Non-linear terms: sin(θ), cos(θ), (dθ/dt)2, (dθ/dt)*θ • Fg – Gravitational forces • Non-linear terms: sin(θ), cos(θ) Robotic Control Source: Peter R. Kraus, 2-link arm dynamics

  26. Equations of Motion for 2-Link Arm, Relative coordinates M- Inertia matrix Conservative forces (gravity) Coriolis forces, c(θi,dθi/dt) Robotic Control Source: Peter R. Kraus, 2-link arm dynamics

  27. Alternate Form: Absolute Joint Angles • If relative coordinates are written as θ1’,θ2’, substitute θ1=θ1’ and θ2=θ2’+θ1’ • Advantages: • M matrix is now symmetric • Cross-coupling of eliminated from C, from F matrices • Simpler equations (easier to check/solve) Robotic Control

  28. Matlab Code function xdot= robot_2link_abs(t,x) global T %parameters g = 9.8; m = [10, 10]; l = [2, 1];%segment lengths l1, l2 lc =[1, 0.5]; %distance from center i = [m(1)*l(1)^2/3, m(2)*l(2)^2/3]; %moments of inertia i1, i2, need to validate coef's c=[100,100]; xdot = zeros(4,1); %matix equations M= [m(2)*lc(1)^2+m(2)*l(1)^2+i(1), m(2)*l(1)*lc(2)^2*cos(x(1)-x(2)); m(2)*l(1)*lc(2)*cos(x(1)-x(2)),+m(2)*lc(2)^2+i(2)]; C= [-m(2)*l(1)*lc(2)*sin(x(1)-x(2))*x(4)^2; -m(2)*l(1)*lc(2)*sin(x(1)-x(2))*x(3)^2]; Fg= [(m(1)*lc(1)+m(2)*l(1))*g*cos(x(1)); m(2)*g*lc(2)*cos(x(2))]; T =[0;0]; % input torque vector tau =T+[-x(3)*c(1);-x(4)*c(2)]; %input torques, xdot(1:2,1)=x(3:4); xdot(3:4,1)= M\(tau-Fg-C); Robotic Control

  29. Matlab Code t0=0;tf=20; x0=[pi/2 0 0 0]; [t,x] = ode45('robot_2link_abs',[t0 tf],x0); figure(1) plot(t,x(:,1:2)) Title ('Robotic Arm Simulation for x0=[pi/2 0 0 0]and T=[sin(t);0] ') legend('\theta_1','\theta_2') Robotic Control

  30. Open Loop Model Validation Zero State/Input • Arm falls down and settles in that position Robotic Control

  31. Open Loop - Static Equilibrium x0= [-pi/2 pi/2 0 0] x0= [-pi/2 –pi/2 0 0] x0= [pi/2 pi/2 0 0] x0= [pi/2 -pi/2 0 0] • Arm does not change its position- Behavior is as expected Robotic Control

  32. Open Loop - Step Response Torque applied to second joint Torque applied to first joint • When torque is applied to the first joint, second joint falls down • When torque is applied to the second joint, first joint falls down Robotic Control

  33. Input (torque) as Sine function Torque applied to first joint Torque applied to first joint • When torque is applied to the first joint, the first joint oscillates and the second follows it with a delay • When torque is applied to the second joint, the second joint oscillates and the first follows it with a delay Robotic Control

  34. Robotic Control • Path Generation • Displacement Control • Force Control • Hybrid Control Robotic Control

  35. Path Generation • To find desired joint space trajectory qd(t) given the desired Cartesian trajectory using inverse kinematics • Given workspace or Cartesian trajectory in the (x, y) plane which is a function of time t. • Arm control, angles θ1, θ2, • Convenient to convert the specified Cartesian trajectory (x(t), y(t)) into a joint space trajectory (θ1(t), θ2(t)) Robotic Control

  36. Trajectory Control Types • Displacement Control • Control the displacement i.e. angles or positioning in space • Robot Manipulators • Adequate performance  rigid body • Only require desired trajectory movement • Examples: • Moving Payloads • Painting Objects Robotic Control

  37. Trajectory Control Types (cont.) • Force Control – Robotic Manipulator • Rigid “stiff” body makes if difficult • Control the force being applied by the manipulator – set-point control • Examples: • Grinding • Sanding Robotic Control

  38. Trajectory Control Types (cont.) • Hybrid Control – Robot Manipulator • Control the force and position of the manipulator • Force Control, set-point control where end effector/ manipulator position and desired force is constant. • Idea is to decouple the position and force control problems into subtasks via a task space formulation. • Example: • Writing on a chalk board Robotic Control

  39. Next Time… • Path Generation • Displacement (Position) Control • Force Control • Hybrid Control i.e. Force/Position • Feedback Linearization • Adaptive Control • Neural Network Control • 2DOF Example Robotic Control

More Related