Advanced Algorithms. Kinematics. Kinematics. Reading. Hierarchical Kinematic Modeling. Rigid Body Constraints Controlling Groups of Objects

Size: px
Start display at page:

Download "Advanced Algorithms. Kinematics. Kinematics. Reading. Hierarchical Kinematic Modeling. Rigid Body Constraints Controlling Groups of Objects"

Transcription

1 Advanced Algorithms Kinematics CMPT 466 Computer Animation Torsten Möller Hierarchical Kinematic Modeling Forward Kinematics Inverse Kinematics Rigid Body Constraints Controlling Groups of Objects particle systems flocking behaviour Reading Chapter 4 of Parents book Foley, van Dam, etc.; Angel; Watt; Glassner; Hill; Baker + Hearns Kinematics Study of object movement Dynamics?

2 Hierarchical Kinematic Modeling Terminology Parent-child spatial relationships Joint Articulation of character Plants Planets, satellites, solar system, milky way Revolute Prismatic Links End effector Frame, Pose Joint Representation Joint Representation Single degree of freedom (DOF) Multiple Degrees of Freedom Revolute or prismatic joint gimbal lock Local axis of rotation Need to transform to global coordinates Enforce joint limits?! Use axis-angle or quaternion representation! " #

3 Joint Representation Degrees of Freedom (DOFs) Note: User interface representation may not be the same used for internal representation and operations! " # Six variables x, y, and z roll, pitch, and yaw DoFs Robot Arm? Six again -base, -shoulder, -elbow, -wrist More Complex Joints DOF joints Gimbal Spherical (doesn t possess singularity) DOF joints Universal

4 Link and Node Representation transformation Transformation data geometry How to Represent Articulators Joint-Link Hierarchies Define Link data so its point of rotation is at the origin Rotate the link Position it relative to its parent link in the hierarchy Put it through all the transformations of its parent link Transformations Tree Representation Arc Transformations NodePtr Joint Node Transformations DataPtr LinkPtr[ ] Link

5 Tree Traversal Articulated Figures T 0 T. T. T. T. M = I M = T0 M = T0*T. M = T0*T.*T. M = T0*T. M = T0 M = T0*T. M = T0*T.*T. Articulated Figure Representation Hierarchy Representation Model links as nodes of a tree All body frames are local (relative to parent) Transf. affecting root affect all children Transf. affecting any node affect all its children

6 Link and Node Representation Tree Traversal Transformation (fixed) Transformation (changeable) Transformation data geometry T0 T. T. R. R. T. T. R. R. M = I M = T0 M = T0*T.*R. M = T0*T.*R.*T.*R. M = T0*T.*R. M = T0 M = T0*T.*R. M = T0*T.*T.*R. Tree Traversal Multiple DoFs at Joints T0 T. T. R. R. T. T. R. R. How do you represent more than one degree of freedom at a joint? a) Zero length segments Between DoF joints b) Multiple DoF transformation at joint

7 Forward vs. Inverse Kinematics Forward Kinematics Compute configuration (pose) given individual DOF values Inverse Kinematics Compute individual DOF values that result in specified end effector position What is Inverse Kinematics? Forward Kinematics Base!!!? x = f (","," ) = f( e) End Effector What is Inverse Kinematics? What is f? Inverse Kinematics!!! End Effector Base l! l! l!? f (","," ) End Effector Base (","," ) = e = f # (x) x = l cos(! ) + l y = l sin(! ) + l cos(! ) + l sin(! ) + l cos(! ) sin(! )

8 Forward Kinematics Forward Kinematics Hierarchical model - joints and links Joints - rotational or prismatic Joints -,, or Degree of Freedom Links - displayable objects Pose - setting parameters for all joint DoFs Pose Vector - a complete set of joint parameters Specifying A Pose Forward Kinematics $ $ $ Traverse kinematic tree and propagate transformations downward Use stack Compose parent transformation with child s Pop stack when leaf is reached High DOF models are tedious to control this way

9 Joint Transformations Rotation representation: matrix? Euler angles? Quaternions? Impose joint limits on rotations? Need complex functions to model human figure limits Could have translational joints, e.g., telescoping legs Pose vector: vector of all joint angles [!!!! n ] Interpolate between poses gimbal lock possible if DoF joints Animate a Pose Interpolate pose vectors Forward Kinematics Define Joint-Link Hierarchy Define sequence of keyposes with corresponding times For given time t, use keyposes to interpolate pose at time t Traverse tree hierarchy using pose vector to supply angles value Use key-values With key-poses - entire pose vector is specified Better to allow independent keys for each articulation variable (or avar) Sometimes called track-based frames

10 Local Frames - Denavit and Hartenberg (DH) Standard method of describing relationship of one DOF to next Used extensively in robotics Used in some early animation systems Multiple DOF joints represented by zerolength parameters Denavit and Hartenberg Revolute joints! i+ = rotation of joint i+ wrt to its z-axis relative to x-axis of joint i Denavit and Hartenberg DH notation X-axis of joint i is the line segment perpendicular to both z axes of i and i+ % i link twist parameter

11 Screw Transformations! Relationship between i+ frame and i frame are a combination i th joint parameters i+ joint parameters Screw transformations Two (translation, rotation) pairs each relative to specific axis of i th and i+ frames Screw Transformations Offset (d i+ ) and angle (! i+ ) are translation and rotation of i+ joint relative to i th joint w.r.t. z i -axis Length (a i ) and twist (% i ) are translation and rotation w.r.t. x i -axis D and H transformations D & H Transformations

12 Example Simple manipulator Example Ball and Socket Joint Ball and Socket Model as revolute joints with zero-length links between them If all angles are set to 0, we are in gimbal lock situation (z-axes of two joints are collinear) Instead, initialize middle joint angle to 90 degrees The x-axis of last frame is same as x-axis of previous frame when joint angle is zero Forward Kinematics - review Articulated linkage hierarchy of joint-link pairs Pose linkage is a specific configuration Pose Vector vector of joint angles for linkage Degrees of Freedom (DoF) of joint or of whole figure

13 Forward Kinematics - review Types of joints: revolute, prismatic Tree structure arcs & nodes Recursive traversal concatenate arc matrices Push current matrix leaving node downward Pop current matrix traversing back up to node Inverse Kinematics How do I put my fingers in my eyes? Use IK: Choose these angles! Inverse Kinematics Inverse Kinematics Set goal configuration of end effector and calculate joint angles Analytic approach simple linkage directly calculate joint angles in configuration that satifies goal Numeric approach complex linkages At each time slice, determine joint movements that take you in direction of goal position (and orientation) L!! L L! Goal End Effector

14 Inverse Kinematics - Analytic Inverse Kinematics - Analytic L L 80-!!! x + y t X (X,Y) Y Given arm configuration (L, L, ) Given desired goal position (and orientation) of end effector: [x,y] or [x,y,z, ",", "] Analytically compute goal configuration (!,!) Interpolate pose vector from initial to goal Inverse Kinematics - Analytic Inverse Kinematics Underconstrained if fewer constraints than DoFs Many solutions Overconstrained too many constraints No solution Reachable workspace volume the end effector can reach Dextrous workspace volume end effector can reach in any orientation

15 Configuration Space Configuration Space The set of all possible positions (defined by kinematics) an object can attain Work Space vs. Configuration Space Work space The space in which the object exists Dimensionality R for most things, R for planar arms Configuration space The space that defines the possible object configurations Degrees of Freedom Analytical IK Given end effector position, compute required joint angles In simple case, analytic solution exists Use trig, geometry, and algebra to solve

16 Inverse Kinematics - Analytic Law of Cosines Law of Cosines cos( " ) = " = a cos( L cos( "!" ) =! L " = acos(! x cos(80!" ) =! t t t x x " = acos( x x + y x + y )! L L + y! L L L! ( x + y! L L L x! L! ( x + y ) ) + " t L x + y! L + y ) + y! L ) Inverse Kinematics - Analytic x + y = a + a " a a cos(# "$ ) cos$ = x + y " a " a a a for greater accuracy tan $ = " cos$ = a a " x " y + a + a + cos$ a a + x + y " a " a ( ) " x + y = a + a x + y ( ) ( ) " a " a a $ = ±tan " + a x + y ( ) ( ) ( ) " x + y ( ) " a " a ( ) Two solutions: elbow up & elbow down y 0! O 0 y a & y "! (x,y) a O! x 0 x O x Solution to e = f " (x) Redundancy Our example x = l cos(! ) + l y = l sin(! ) + l cos(! ) + l sin(! ) + l Number of equation : Unknown variables : cos(! ) sin(! ) System DOF > End Effector DOF Our example x = l cos(! ) + l y = l sin(! ) + l System DOF = End Effector DOF = cos(! ) + l sin(! ) + l cos(! ) sin(! ) Infinite number of solutions!

17 Redundancy What about? A redundant system has infinite number of solutions Human skeleton has 70 DOF Ultra-super redundant How to solve highly redundant system? Inverse Kinematics - Numeric When linkage is too complex for analytic methods At each time step, determine changes to joint angles that take the end effector toward goal position and orientation Need to recompute at each time step Inverse Kinematics - Numerically #! d # x d End Effector - Compute instantaneous effect of each joint - Linear approximation to curvilinear motion - Find linear combination to take end effector towards goal position

18 Inverse Kinematics Inverse Kinematics Solution only valid for an instantaneous step Angular affect is really curved, not straight line Once a step is taken, need to recompute solution Inverse Kinematics - Math Matrix Form y = f (x,x,x,x 4,x 5,x 6 ) y = f (x,x,x,x 4,x 5,x 6 ) y = f (x,x,x,x 4,x 5,x 6 ) y 4 = f 4 (x,x,x,x 4, x 5,x 6 ) y 5 = f 5 (x,x,x,x 4,x 5,x 6 ) y 6 = f 6 (x,x,x,x 4,x 5,x 6 ) Use chain rule Y = F(X) "Y = "F "X "X "y i = "f i "x "x + "f i "x "x + "f i "x "x + "f i "x 4 "x 4 + "f i "x 5 "x 5 + "f i "x 6 "x 6

19 The Matrices The Matrices V = [ v x v y v z " x " y " z ] T # = [ #... # n ] T % $v x $v x $v... x ( ' $# $# $# * ' n * ' $v y $v y $v J =... y * ' $# $# $# n * ' * ' $" z $" z $"... z * ' * & $# $# $# n ) V = J " V linear and angular velocities J Jacobian Matrix of partials! change to joint angles N DoFs x, 6x xn, 6xN N x V = J! V linear and angular velocities J Jacobian Matrix of partials! change to joint angles Pseudo Inverse of the Jacobian Solving The Pseudo Inverse V = J " J T V = J T J " (J T J) # J T V = (J T J) # J T J " J + V = " J + = (J T J) " J T = J T (J J T ) " J + V = " J T (JJ T ) # V = " $ = (JJ T ) # V (JJ T )$ = V J T $ = " LU decomposition

20 Adding a Control Term Form of the Control Term A solution of this form Doesn t affect the desired configuration But it can be used to bias The solution vector " = (J + J # I)z V = J" V = J(J + J # I)z V = (JJ + J # J)z V = (J # J)z V = 0z V = 0 Bias to desired angles (not the same as hard joint limits) z is H differentiated n H = #" i ($ i %$ ci ) & i= Desired angles and corresponding gains are input z = ' $ H = dh d$ =& # " i($ i %$ ci ) &% n i= Some Algebraic Manipulation Solving the Equations Add this, using previous form to solution indicated by pseudo-inverse of Jacobian Rearrange and solve " = J + V + (J + J # I)$ " H " = J + V + (J + J # I)$ " H " = J + V + J + J$ " H # $ " H " = J + (V + J$ " H) # $ " H " = J T (JJ T ) # (V + J$ " H) # $ " H " = J T [(JJ T ) # (V + J$ " H)] # $ " H " = (JJ T ) # (V + J$ % H) % = J T " # $ % H V + J$ % H = (JJ T )" LU decomp.

21 Control Term Use to bias to desired mid-angle Does not enforce joint angles Does not address human-like or natural motion Only kinematic control no forces involved

Computer Animation. Lecture 2. Basics of Character Animation

Computer Animation. Lecture 2. Basics of Character Animation Computer Animation Lecture 2. Basics of Character Animation Taku Komura Overview Character Animation Posture representation Hierarchical structure of the body Joint types Translational, hinge, universal,

More information

Metrics on SO(3) and Inverse Kinematics

Metrics on SO(3) and Inverse Kinematics Mathematical Foundations of Computer Graphics and Vision Metrics on SO(3) and Inverse Kinematics Luca Ballan Institute of Visual Computing Optimization on Manifolds Descent approach d is a ascent direction

More information

Introduction to Computer Graphics Marie-Paule Cani & Estelle Duveau

Introduction to Computer Graphics Marie-Paule Cani & Estelle Duveau Introduction to Computer Graphics Marie-Paule Cani & Estelle Duveau 04/02 Introduction & projective rendering 11/02 Prodedural modeling, Interactive modeling with parametric surfaces 25/02 Introduction

More information

ME 115(b): Solution to Homework #1

ME 115(b): Solution to Homework #1 ME 115(b): Solution to Homework #1 Solution to Problem #1: To construct the hybrid Jacobian for a manipulator, you could either construct the body Jacobian, JST b, and then use the body-to-hybrid velocity

More information

Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. M.Sc. in Advanced Computer Science. Friday 18 th January 2008.

Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. M.Sc. in Advanced Computer Science. Friday 18 th January 2008. COMP60321 Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE M.Sc. in Advanced Computer Science Computer Animation Friday 18 th January 2008 Time: 09:45 11:45 Please answer any THREE Questions

More information

Simulation of Trajectories and Comparison of Joint Variables for Robotic Manipulator Using Multibody Dynamics (MBD)

Simulation of Trajectories and Comparison of Joint Variables for Robotic Manipulator Using Multibody Dynamics (MBD) Simulation of Trajectories and Comparison of Joint Variables for Robotic Manipulator Using Multibody Dynamics (MBD) Jatin Dave Assistant Professor Nirma University Mechanical Engineering Department, Institute

More information

Interactive Computer Graphics

Interactive Computer Graphics Interactive Computer Graphics Lecture 18 Kinematics and Animation Interactive Graphics Lecture 18: Slide 1 Animation of 3D models In the early days physical models were altered frame by frame to create

More information

Essential Mathematics for Computer Graphics fast

Essential Mathematics for Computer Graphics fast John Vince Essential Mathematics for Computer Graphics fast Springer Contents 1. MATHEMATICS 1 Is mathematics difficult? 3 Who should read this book? 4 Aims and objectives of this book 4 Assumptions made

More information

animation animation shape specification as a function of time

animation animation shape specification as a function of time animation animation shape specification as a function of time animation representation many ways to represent changes with time intent artistic motion physically-plausible motion efficiency control typically

More information

Kinematical Animation. lionel.reveret@inria.fr 2013-14

Kinematical Animation. lionel.reveret@inria.fr 2013-14 Kinematical Animation 2013-14 3D animation in CG Goal : capture visual attention Motion of characters Believable Expressive Realism? Controllability Limits of purely physical simulation : - little interactivity

More information

3D Tranformations. CS 4620 Lecture 6. Cornell CS4620 Fall 2013 Lecture 6. 2013 Steve Marschner (with previous instructors James/Bala)

3D Tranformations. CS 4620 Lecture 6. Cornell CS4620 Fall 2013 Lecture 6. 2013 Steve Marschner (with previous instructors James/Bala) 3D Tranformations CS 4620 Lecture 6 1 Translation 2 Translation 2 Translation 2 Translation 2 Scaling 3 Scaling 3 Scaling 3 Scaling 3 Rotation about z axis 4 Rotation about z axis 4 Rotation about x axis

More information

Constraint satisfaction and global optimization in robotics

Constraint satisfaction and global optimization in robotics Constraint satisfaction and global optimization in robotics Arnold Neumaier Universität Wien and Jean-Pierre Merlet INRIA Sophia Antipolis 1 The design, validation, and use of robots poses a number of

More information

CIS 536/636 Introduction to Computer Graphics. Kansas State University. CIS 536/636 Introduction to Computer Graphics

CIS 536/636 Introduction to Computer Graphics. Kansas State University. CIS 536/636 Introduction to Computer Graphics 2 Lecture Outline Animation 2 of 3: Rotations, Quaternions Dynamics & Kinematics William H. Hsu Department of Computing and Information Sciences, KSU KSOL course pages: http://bit.ly/hgvxlh / http://bit.ly/evizre

More information

INSTRUCTOR WORKBOOK Quanser Robotics Package for Education for MATLAB /Simulink Users

INSTRUCTOR WORKBOOK Quanser Robotics Package for Education for MATLAB /Simulink Users INSTRUCTOR WORKBOOK for MATLAB /Simulink Users Developed by: Amir Haddadi, Ph.D., Quanser Peter Martin, M.A.SC., Quanser Quanser educational solutions are powered by: CAPTIVATE. MOTIVATE. GRADUATE. PREFACE

More information

CMSC 425: Lecture 13 Animation for Games: Basics Tuesday, Mar 26, 2013

CMSC 425: Lecture 13 Animation for Games: Basics Tuesday, Mar 26, 2013 CMSC 425: Lecture 13 Animation for Games: Basics Tuesday, Mar 26, 2013 Reading: Chapt 11 of Gregory, Game Engine Architecture. Game Animation: Most computer games revolve around characters that move around

More information

animation shape specification as a function of time

animation shape specification as a function of time animation 1 animation shape specification as a function of time 2 animation representation many ways to represent changes with time intent artistic motion physically-plausible motion efficiency typically

More information

Lecture 7. Matthew T. Mason. Mechanics of Manipulation. Lecture 7. Representing Rotation. Kinematic representation: goals, overview

Lecture 7. Matthew T. Mason. Mechanics of Manipulation. Lecture 7. Representing Rotation. Kinematic representation: goals, overview Matthew T. Mason Mechanics of Manipulation Today s outline Readings, etc. We are starting chapter 3 of the text Lots of stuff online on representing rotations Murray, Li, and Sastry for matrix exponential

More information

Stirling Paatz of robot integrators Barr & Paatz describes the anatomy of an industrial robot.

Stirling Paatz of robot integrators Barr & Paatz describes the anatomy of an industrial robot. Ref BP128 Anatomy Of A Robot Stirling Paatz of robot integrators Barr & Paatz describes the anatomy of an industrial robot. The term robot stems from the Czech word robota, which translates roughly as

More information

ACTUATOR DESIGN FOR ARC WELDING ROBOT

ACTUATOR DESIGN FOR ARC WELDING ROBOT ACTUATOR DESIGN FOR ARC WELDING ROBOT 1 Anurag Verma, 2 M. M. Gor* 1 G.H Patel College of Engineering & Technology, V.V.Nagar-388120, Gujarat, India 2 Parul Institute of Engineering & Technology, Limda-391760,

More information

Given a point cloud, polygon, or sampled parametric curve, we can use transformations for several purposes:

Given a point cloud, polygon, or sampled parametric curve, we can use transformations for several purposes: 3 3.1 2D Given a point cloud, polygon, or sampled parametric curve, we can use transformations for several purposes: 1. Change coordinate frames (world, window, viewport, device, etc). 2. Compose objects

More information

INTRODUCTION. Robotics is a relatively young field of modern technology that crosses traditional

INTRODUCTION. Robotics is a relatively young field of modern technology that crosses traditional 1 INTRODUCTION Robotics is a relatively young field of modern technology that crosses traditional engineering boundaries. Understanding the complexity of robots and their applications requires knowledge

More information

This week. CENG 732 Computer Animation. Challenges in Human Modeling. Basic Arm Model

This week. CENG 732 Computer Animation. Challenges in Human Modeling. Basic Arm Model CENG 732 Computer Animation Spring 2006-2007 Week 8 Modeling and Animating Articulated Figures: Modeling the Arm, Walking, Facial Animation This week Modeling the arm Different joint structures Walking

More information

CATIA V5 Tutorials. Mechanism Design & Animation. Release 18. Nader G. Zamani. University of Windsor. Jonathan M. Weaver. University of Detroit Mercy

CATIA V5 Tutorials. Mechanism Design & Animation. Release 18. Nader G. Zamani. University of Windsor. Jonathan M. Weaver. University of Detroit Mercy CATIA V5 Tutorials Mechanism Design & Animation Release 18 Nader G. Zamani University of Windsor Jonathan M. Weaver University of Detroit Mercy SDC PUBLICATIONS Schroff Development Corporation www.schroff.com

More information

Design-Simulation-Optimization Package for a Generic 6-DOF Manipulator with a Spherical Wrist

Design-Simulation-Optimization Package for a Generic 6-DOF Manipulator with a Spherical Wrist Design-Simulation-Optimization Package for a Generic 6-DOF Manipulator with a Spherical Wrist MHER GRIGORIAN, TAREK SOBH Department of Computer Science and Engineering, U. of Bridgeport, USA ABSTRACT Robot

More information

ROBOT END EFFECTORS SCRIPT

ROBOT END EFFECTORS SCRIPT Slide 1 Slide 2 Slide 3 Slide 4 An end effector is the business end of a robot or where the work occurs. It is the device that is designed to allow the robot to interact with its environment. Similar in

More information

Figure 3.1.2 Cartesian coordinate robot

Figure 3.1.2 Cartesian coordinate robot Introduction to Robotics, H. Harry Asada Chapter Robot Mechanisms A robot is a machine capable of physical motion for interacting with the environment. Physical interactions include manipulation, locomotion,

More information

Solving Simultaneous Equations and Matrices

Solving Simultaneous Equations and Matrices Solving Simultaneous Equations and Matrices The following represents a systematic investigation for the steps used to solve two simultaneous linear equations in two unknowns. The motivation for considering

More information

Rotation and Inter interpolation Using Quaternion Representation

Rotation and Inter interpolation Using Quaternion Representation This week CENG 732 Computer Animation Spring 2006-2007 Week 2 Technical Preliminaries and Introduction to Keframing Recap from CEng 477 The Displa Pipeline Basic Transformations / Composite Transformations

More information

How To Understand The Relationship Between A Body And A Joint

How To Understand The Relationship Between A Body And A Joint Degree of Freedom No. of independent coordinates needed to define position of body How many DOF does a body in three-space (3-D) have? Definitions All of the above contain linkages which consist of: Links

More information

Lecture L3 - Vectors, Matrices and Coordinate Transformations

Lecture L3 - Vectors, Matrices and Coordinate Transformations S. Widnall 16.07 Dynamics Fall 2009 Lecture notes based on J. Peraire Version 2.0 Lecture L3 - Vectors, Matrices and Coordinate Transformations By using vectors and defining appropriate operations between

More information

Chapter. 4 Mechanism Design and Analysis

Chapter. 4 Mechanism Design and Analysis Chapter. 4 Mechanism Design and Analysis 1 All mechanical devices containing moving parts are composed of some type of mechanism. A mechanism is a group of links interacting with each other through joints

More information

Computing Euler angles from a rotation matrix

Computing Euler angles from a rotation matrix Computing Euler angles from a rotation matrix Gregory G. Slabaugh Abstract This document discusses a simple technique to find all possible Euler angles from a rotation matrix. Determination of Euler angles

More information

Motion Capture Technologies. Jessica Hodgins

Motion Capture Technologies. Jessica Hodgins Motion Capture Technologies Jessica Hodgins Motion Capture Animation Video Games Robot Control What games use motion capture? NBA live PGA tour NHL hockey Legends of Wrestling 2 Lords of Everquest Lord

More information

Robotics. Chapter 25. Chapter 25 1

Robotics. Chapter 25. Chapter 25 1 Robotics Chapter 25 Chapter 25 1 Outline Robots, Effectors, and Sensors Localization and Mapping Motion Planning Motor Control Chapter 25 2 Mobile Robots Chapter 25 3 Manipulators P R R R R R Configuration

More information

CS 4204 Computer Graphics

CS 4204 Computer Graphics CS 4204 Computer Graphics Computer Animation Adapted from notes by Yong Cao Virginia Tech 1 Outline Principles of Animation Keyframe Animation Additional challenges in animation 2 Classic animation Luxo

More information

Content. Chapter 4 Functions 61 4.1 Basic concepts on real functions 62. Credits 11

Content. Chapter 4 Functions 61 4.1 Basic concepts on real functions 62. Credits 11 Content Credits 11 Chapter 1 Arithmetic Refresher 13 1.1 Algebra 14 Real Numbers 14 Real Polynomials 19 1.2 Equations in one variable 21 Linear Equations 21 Quadratic Equations 22 1.3 Exercises 28 Chapter

More information

Path Tracking for a Miniature Robot

Path Tracking for a Miniature Robot Path Tracking for a Miniature Robot By Martin Lundgren Excerpt from Master s thesis 003 Supervisor: Thomas Hellström Department of Computing Science Umeå University Sweden 1 Path Tracking Path tracking

More information

Least-Squares Intersection of Lines

Least-Squares Intersection of Lines Least-Squares Intersection of Lines Johannes Traa - UIUC 2013 This write-up derives the least-squares solution for the intersection of lines. In the general case, a set of lines will not intersect at a

More information

A PAIR OF MEASURES OF ROTATIONAL ERROR FOR AXISYMMETRIC ROBOT END-EFFECTORS

A PAIR OF MEASURES OF ROTATIONAL ERROR FOR AXISYMMETRIC ROBOT END-EFFECTORS A PAIR OF MEASURES OF ROTATIONAL ERROR FOR AXISYMMETRIC ROBOT END-EFFECTORS Sébastien Briot, Ilian A. Bonev Department of Automated Manufacturing Engineering École de technologie supérieure (ÉTS), Montreal,

More information

Robot Task-Level Programming Language and Simulation

Robot Task-Level Programming Language and Simulation Robot Task-Level Programming Language and Simulation M. Samaka Abstract This paper presents the development of a software application for Off-line robot task programming and simulation. Such application

More information

Robot coined by Karel Capek in a 1921 science-fiction Czech play

Robot coined by Karel Capek in a 1921 science-fiction Czech play Robotics Robot coined by Karel Capek in a 1921 science-fiction Czech play Definition: A robot is a reprogrammable, multifunctional manipulator designed to move material, parts, tools, or specialized devices

More information

Fundamentals of Computer Animation

Fundamentals of Computer Animation Fundamentals of Computer Animation Quaternions as Orientations () page 1 Visualizing a Unit Quaternion Rotation in 4D Space ( ) = w + x + y z q = Norm q + q = q q [ w, v], v = ( x, y, z) w scalar q =,

More information

Physics 235 Chapter 1. Chapter 1 Matrices, Vectors, and Vector Calculus

Physics 235 Chapter 1. Chapter 1 Matrices, Vectors, and Vector Calculus Chapter 1 Matrices, Vectors, and Vector Calculus In this chapter, we will focus on the mathematical tools required for the course. The main concepts that will be covered are: Coordinate transformations

More information

Robot Dynamics and Control

Robot Dynamics and Control Robot Dynamics and Control Second Edition Mark W. Spong, Seth Hutchinson, and M. Vidyasagar January 28, 2004 2 Contents 1 INTRODUCTION 5 1.1 Robotics..................................... 5 1.2 History

More information

Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example.

Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example. An Example 2 3 4 Outline Objective: Develop methods and algorithms to mathematically model shape of real world objects Categories: Wire-Frame Representation Object is represented as as a set of points

More information

Lecture L6 - Intrinsic Coordinates

Lecture L6 - Intrinsic Coordinates S. Widnall, J. Peraire 16.07 Dynamics Fall 2009 Version 2.0 Lecture L6 - Intrinsic Coordinates In lecture L4, we introduced the position, velocity and acceleration vectors and referred them to a fixed

More information

DESIGN, IMPLEMENTATION, AND COOPERATIVE COEVOLUTION OF AN AUTONOMOUS/TELEOPERATED CONTROL SYSTEM FOR A SERPENTINE ROBOTIC MANIPULATOR

DESIGN, IMPLEMENTATION, AND COOPERATIVE COEVOLUTION OF AN AUTONOMOUS/TELEOPERATED CONTROL SYSTEM FOR A SERPENTINE ROBOTIC MANIPULATOR Proceedings of the American Nuclear Society Ninth Topical Meeting on Robotics and Remote Systems, Seattle Washington, March 2001. DESIGN, IMPLEMENTATION, AND COOPERATIVE COEVOLUTION OF AN AUTONOMOUS/TELEOPERATED

More information

Math for Game Programmers: Dual Numbers. Gino van den Bergen gino@dtecta.com

Math for Game Programmers: Dual Numbers. Gino van den Bergen gino@dtecta.com Math for Game Programmers: Dual Numbers Gino van den Bergen gino@dtecta.com Introduction Dual numbers extend real numbers, similar to complex numbers. Complex numbers adjoin an element i, for which i 2

More information

IMD4003 3D Computer Animation

IMD4003 3D Computer Animation Contents IMD4003 3D Computer Animation Strange from MoCap G03 Correcting Animation in MotionBuilder Prof. Chris Joslin Overview This document covers how to correct animation (specifically rotations) in

More information

An inertial haptic interface for robotic applications

An inertial haptic interface for robotic applications An inertial haptic interface for robotic applications Students: Andrea Cirillo Pasquale Cirillo Advisor: Ing. Salvatore Pirozzi Altera Innovate Italy Design Contest 2012 Objective Build a Low Cost Interface

More information

Kinematics of Robots. Alba Perez Gracia

Kinematics of Robots. Alba Perez Gracia Kinematics of Robots Alba Perez Gracia c Draft date August 31, 2007 Contents Contents i 1 Motion: An Introduction 3 1.1 Overview.......................................... 3 1.2 Introduction.........................................

More information

Animation. Persistence of vision: Visual closure:

Animation. Persistence of vision: Visual closure: Animation Persistence of vision: The visual system smoothes in time. This means that images presented to the eye are perceived by the visual system for a short time after they are presented. In turn, this

More information

Torgerson s Classical MDS derivation: 1: Determining Coordinates from Euclidean Distances

Torgerson s Classical MDS derivation: 1: Determining Coordinates from Euclidean Distances Torgerson s Classical MDS derivation: 1: Determining Coordinates from Euclidean Distances It is possible to construct a matrix X of Cartesian coordinates of points in Euclidean space when we know the Euclidean

More information

KINEMATICS OF PARTICLES RELATIVE MOTION WITH RESPECT TO TRANSLATING AXES

KINEMATICS OF PARTICLES RELATIVE MOTION WITH RESPECT TO TRANSLATING AXES KINEMTICS OF PRTICLES RELTIVE MOTION WITH RESPECT TO TRNSLTING XES In the previous articles, we have described particle motion using coordinates with respect to fixed reference axes. The displacements,

More information

B4 Computational Geometry

B4 Computational Geometry 3CG 2006 / B4 Computational Geometry David Murray david.murray@eng.o.ac.uk www.robots.o.ac.uk/ dwm/courses/3cg Michaelmas 2006 3CG 2006 2 / Overview Computational geometry is concerned with the derivation

More information

Chapter 1. Introduction. 1.1 The Challenge of Computer Generated Postures

Chapter 1. Introduction. 1.1 The Challenge of Computer Generated Postures Chapter 1 Introduction 1.1 The Challenge of Computer Generated Postures With advances in hardware technology, more powerful computers become available for the majority of users. A few years ago, computer

More information

INTRODUCTION. Chapter 1. 1.1 Robotics

INTRODUCTION. Chapter 1. 1.1 Robotics Chapter 1 INTRODUCTION 1.1 Robotics Robotics is a relatively young field of modern technology that crosses traditional engineering boundaries. Understanding the complexity of robots and their applications

More information

Physics 160 Biomechanics. Angular Kinematics

Physics 160 Biomechanics. Angular Kinematics Physics 160 Biomechanics Angular Kinematics Questions to think about Why do batters slide their hands up the handle of the bat to lay down a bunt but not to drive the ball? Why might an athletic trainer

More information

A linear combination is a sum of scalars times quantities. Such expressions arise quite frequently and have the form

A linear combination is a sum of scalars times quantities. Such expressions arise quite frequently and have the form Section 1.3 Matrix Products A linear combination is a sum of scalars times quantities. Such expressions arise quite frequently and have the form (scalar #1)(quantity #1) + (scalar #2)(quantity #2) +...

More information

High Accuracy Articulated Robots with CNC Control Systems

High Accuracy Articulated Robots with CNC Control Systems Copyright 2012 SAE International 2013-01-2292 High Accuracy Articulated Robots with CNC Control Systems Bradley Saund, Russell DeVlieg Electroimpact Inc. ABSTRACT A robotic arm manipulator is often an

More information

Human-like Arm Motion Generation for Humanoid Robots Using Motion Capture Database

Human-like Arm Motion Generation for Humanoid Robots Using Motion Capture Database Human-like Arm Motion Generation for Humanoid Robots Using Motion Capture Database Seungsu Kim, ChangHwan Kim and Jong Hyeon Park School of Mechanical Engineering Hanyang University, Seoul, 133-791, Korea.

More information

Design of a six Degree-of-Freedom Articulated Robotic Arm for Manufacturing Electrochromic Nanofilms

Design of a six Degree-of-Freedom Articulated Robotic Arm for Manufacturing Electrochromic Nanofilms Abstract Design of a six Degree-of-Freedom Articulated Robotic Arm for Manufacturing Electrochromic Nanofilms by Maxine Emerich Advisor: Dr. Scott Pierce The subject of this report is the development of

More information

Magnetometer Realignment: Theory and Implementation

Magnetometer Realignment: Theory and Implementation Magnetometer Realignment: heory and Implementation William Premerlani, Octoer 16, 011 Prolem A magnetometer that is separately mounted from its IMU partner needs to e carefully aligned with the IMU in

More information

Al Akhawayn University in Ifrane. School of Science and Engineering. Design and Engineering of a Robot Arm

Al Akhawayn University in Ifrane. School of Science and Engineering. Design and Engineering of a Robot Arm Al Akhawayn University in Ifrane School of Science and Engineering Design and Engineering of a Robot Arm by Ali Elouafiq Supervised by Dr. Tajjedine Rachidi and Mr. Ahmed Elouafiq I- ABSTRACT: In the scope

More information

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries First Semester Development 1A On completion of this subject students will be able to apply basic programming and problem solving skills in a 3 rd generation object-oriented programming language (such as

More information

Time Domain and Frequency Domain Techniques For Multi Shaker Time Waveform Replication

Time Domain and Frequency Domain Techniques For Multi Shaker Time Waveform Replication Time Domain and Frequency Domain Techniques For Multi Shaker Time Waveform Replication Thomas Reilly Data Physics Corporation 1741 Technology Drive, Suite 260 San Jose, CA 95110 (408) 216-8440 This paper

More information

Section 9.1 Vectors in Two Dimensions

Section 9.1 Vectors in Two Dimensions Section 9.1 Vectors in Two Dimensions Geometric Description of Vectors A vector in the plane is a line segment with an assigned direction. We sketch a vector as shown in the first Figure below with an

More information

Abstract. Introduction

Abstract. Introduction SPACECRAFT APPLICATIONS USING THE MICROSOFT KINECT Matthew Undergraduate Student Advisor: Dr. Troy Henderson Aerospace and Ocean Engineering Department Virginia Tech Abstract This experimental study involves

More information

Geometric Transformations

Geometric Transformations Geometric Transformations Definitions Def: f is a mapping (function) of a set A into a set B if for every element a of A there exists a unique element b of B that is paired with a; this pairing is denoted

More information

SOLID MECHANICS TUTORIAL MECHANISMS KINEMATICS - VELOCITY AND ACCELERATION DIAGRAMS

SOLID MECHANICS TUTORIAL MECHANISMS KINEMATICS - VELOCITY AND ACCELERATION DIAGRAMS SOLID MECHANICS TUTORIAL MECHANISMS KINEMATICS - VELOCITY AND ACCELERATION DIAGRAMS This work covers elements of the syllabus for the Engineering Council exams C105 Mechanical and Structural Engineering

More information

The elements used in commercial codes can be classified in two basic categories:

The elements used in commercial codes can be classified in two basic categories: CHAPTER 3 Truss Element 3.1 Introduction The single most important concept in understanding FEA, is the basic understanding of various finite elements that we employ in an analysis. Elements are used for

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Robotics RWTH Aachen 1 Term and History Term comes from Karel Capek s play R.U.R. Rossum s universal robots Robots comes from the Czech word for corvee Manipulators first start

More information

NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS

NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS TEST DESIGN AND FRAMEWORK September 2014 Authorized for Distribution by the New York State Education Department This test design and framework document

More information

Practical Work DELMIA V5 R20 Lecture 1. D. Chablat / S. Caro Damien.Chablat@irccyn.ec-nantes.fr Stephane.Caro@irccyn.ec-nantes.fr

Practical Work DELMIA V5 R20 Lecture 1. D. Chablat / S. Caro Damien.Chablat@irccyn.ec-nantes.fr Stephane.Caro@irccyn.ec-nantes.fr Practical Work DELMIA V5 R20 Lecture 1 D. Chablat / S. Caro Damien.Chablat@irccyn.ec-nantes.fr Stephane.Caro@irccyn.ec-nantes.fr Native languages Definition of the language for the user interface English,

More information

CS 4620 Practicum Programming Assignment 6 Animation

CS 4620 Practicum Programming Assignment 6 Animation CS 4620 Practicum Programming Assignment 6 Animation out: Friday 14th November 2014 due: : Monday 24th November 2014 1 Introduction In this assignment, we will explore a common topic in animation: key

More information

Mechanics lecture 7 Moment of a force, torque, equilibrium of a body

Mechanics lecture 7 Moment of a force, torque, equilibrium of a body G.1 EE1.el3 (EEE1023): Electronics III Mechanics lecture 7 Moment of a force, torque, equilibrium of a body Dr Philip Jackson http://www.ee.surrey.ac.uk/teaching/courses/ee1.el3/ G.2 Moments, torque and

More information

On Motion of Robot End-Effector using the Curvature Theory of Timelike Ruled Surfaces with Timelike Directrix

On Motion of Robot End-Effector using the Curvature Theory of Timelike Ruled Surfaces with Timelike Directrix Malaysian Journal of Mathematical Sciences 8(2): 89-204 (204) MALAYSIAN JOURNAL OF MATHEMATICAL SCIENCES Journal homepage: http://einspem.upm.edu.my/journal On Motion of Robot End-Effector using the Curvature

More information

Isaac Newton s (1642-1727) Laws of Motion

Isaac Newton s (1642-1727) Laws of Motion Big Picture 1 2.003J/1.053J Dynamics and Control I, Spring 2007 Professor Thomas Peacock 2/7/2007 Lecture 1 Newton s Laws, Cartesian and Polar Coordinates, Dynamics of a Single Particle Big Picture First

More information

Chapter 10 Rotational Motion. Copyright 2009 Pearson Education, Inc.

Chapter 10 Rotational Motion. Copyright 2009 Pearson Education, Inc. Chapter 10 Rotational Motion Angular Quantities Units of Chapter 10 Vector Nature of Angular Quantities Constant Angular Acceleration Torque Rotational Dynamics; Torque and Rotational Inertia Solving Problems

More information

An Application of Robotic Optimization: Design for a Tire Changing Robot

An Application of Robotic Optimization: Design for a Tire Changing Robot An Application of Robotic Optimization: Design for a Tire Changing Robot RAUL MIHALI, MHER GRIGORIAN and TAREK SOBH Department of Computer Science and Engineering, University of Bridgeport, Bridgeport,

More information

Linear Algebra Notes for Marsden and Tromba Vector Calculus

Linear Algebra Notes for Marsden and Tromba Vector Calculus Linear Algebra Notes for Marsden and Tromba Vector Calculus n-dimensional Euclidean Space and Matrices Definition of n space As was learned in Math b, a point in Euclidean three space can be thought of

More information

Course 8. An Introduction to the Kalman Filter

Course 8. An Introduction to the Kalman Filter Course 8 An Introduction to the Kalman Filter Speakers Greg Welch Gary Bishop Kalman Filters in 2 hours? Hah! No magic. Pretty simple to apply. Tolerant of abuse. Notes are a standalone reference. These

More information

RoboAnalyzer: 3D Model Based Robotic Learning Software

RoboAnalyzer: 3D Model Based Robotic Learning Software International Conference on Multi Body Dynamics 2011 Vijayawada, India. pp. 3 13 RoboAnalyzer: 3D Model Based Robotic Learning Software C. G. Rajeevlochana 1 and S. K. Saha 2 1 Research Scholar, Dept.

More information

Today. Keyframing. Procedural Animation. Physically-Based Animation. Articulated Models. Computer Animation & Particle Systems

Today. Keyframing. Procedural Animation. Physically-Based Animation. Articulated Models. Computer Animation & Particle Systems Today Computer Animation & Particle Systems Some slides courtesy of Jovan Popovic & Ronen Barzel How do we specify or generate motion? Keyframing Procedural Animation Physically-Based Animation Forward

More information

Introduction to Robotics Analysis, Systems, Applications

Introduction to Robotics Analysis, Systems, Applications Introduction to Robotics Analysis, Systems, Applications Saeed B. Niku Mechanical Engineering Department California Polytechnic State University San Luis Obispo Technische Urw/carsMt Darmstadt FACHBEREfCH

More information

CALIBRATION OF A ROBUST 2 DOF PATH MONITORING TOOL FOR INDUSTRIAL ROBOTS AND MACHINE TOOLS BASED ON PARALLEL KINEMATICS

CALIBRATION OF A ROBUST 2 DOF PATH MONITORING TOOL FOR INDUSTRIAL ROBOTS AND MACHINE TOOLS BASED ON PARALLEL KINEMATICS CALIBRATION OF A ROBUST 2 DOF PATH MONITORING TOOL FOR INDUSTRIAL ROBOTS AND MACHINE TOOLS BASED ON PARALLEL KINEMATICS E. Batzies 1, M. Kreutzer 1, D. Leucht 2, V. Welker 2, O. Zirn 1 1 Mechatronics Research

More information

Rigid body dynamics using Euler s equations, Runge-Kutta and quaternions.

Rigid body dynamics using Euler s equations, Runge-Kutta and quaternions. Rigid body dynamics using Euler s equations, Runge-Kutta and quaternions. Indrek Mandre http://www.mare.ee/indrek/ February 26, 2008 1 Motivation I became interested in the angular dynamics

More information

Lecture L2 - Degrees of Freedom and Constraints, Rectilinear Motion

Lecture L2 - Degrees of Freedom and Constraints, Rectilinear Motion S. Widnall 6.07 Dynamics Fall 009 Version.0 Lecture L - Degrees of Freedom and Constraints, Rectilinear Motion Degrees of Freedom Degrees of freedom refers to the number of independent spatial coordinates

More information

Rotation: Moment of Inertia and Torque

Rotation: Moment of Inertia and Torque Rotation: Moment of Inertia and Torque Every time we push a door open or tighten a bolt using a wrench, we apply a force that results in a rotational motion about a fixed axis. Through experience we learn

More information

Goldsmiths, University of London. Computer Animation. Goldsmiths, University of London

Goldsmiths, University of London. Computer Animation. Goldsmiths, University of London Computer Animation Goldsmiths, University of London Computer Animation Introduction Computer animation is about making things move, a key part of computer graphics. In film animations are created off-line,

More information

Unified Lecture # 4 Vectors

Unified Lecture # 4 Vectors Fall 2005 Unified Lecture # 4 Vectors These notes were written by J. Peraire as a review of vectors for Dynamics 16.07. They have been adapted for Unified Engineering by R. Radovitzky. References [1] Feynmann,

More information

In order to describe motion you need to describe the following properties.

In order to describe motion you need to describe the following properties. Chapter 2 One Dimensional Kinematics How would you describe the following motion? Ex: random 1-D path speeding up and slowing down In order to describe motion you need to describe the following properties.

More information

Cabri Geometry Application User Guide

Cabri Geometry Application User Guide Cabri Geometry Application User Guide Preview of Geometry... 2 Learning the Basics... 3 Managing File Operations... 12 Setting Application Preferences... 14 Selecting and Moving Objects... 17 Deleting

More information

Industrial Robotics. Training Objective

Industrial Robotics. Training Objective Training Objective After watching the program and reviewing this printed material, the viewer will learn the basics of industrial robot technology and how robots are used in a variety of manufacturing

More information

Design Aspects of Robot Manipulators

Design Aspects of Robot Manipulators Design Aspects of Robot Manipulators Dr. Rohan Munasinghe Dept of Electronic and Telecommunication Engineering University of Moratuwa System elements Manipulator (+ proprioceptive sensors) End-effector

More information

Origins of the Unusual Space Shuttle Quaternion Definition

Origins of the Unusual Space Shuttle Quaternion Definition 47th AIAA Aerospace Sciences Meeting Including The New Horizons Forum and Aerospace Exposition 5-8 January 2009, Orlando, Florida AIAA 2009-43 Origins of the Unusual Space Shuttle Quaternion Definition

More information

MA 323 Geometric Modelling Course Notes: Day 02 Model Construction Problem

MA 323 Geometric Modelling Course Notes: Day 02 Model Construction Problem MA 323 Geometric Modelling Course Notes: Day 02 Model Construction Problem David L. Finn November 30th, 2004 In the next few days, we will introduce some of the basic problems in geometric modelling, and

More information

Structural Axial, Shear and Bending Moments

Structural Axial, Shear and Bending Moments Structural Axial, Shear and Bending Moments Positive Internal Forces Acting Recall from mechanics of materials that the internal forces P (generic axial), V (shear) and M (moment) represent resultants

More information

Kinematics & Dynamics

Kinematics & Dynamics Overview Kinematics & Dynamics Adam Finkelstein Princeton University COS 46, Spring 005 Kinematics Considers only motion Determined by positions, velocities, accelerations Dynamics Considers underlying

More information