Chapter 3: Kinematics Locomotion. Ross Hatton and Howie Choset

Similar documents
10/11/07 1. Motion Control (wheeled robots) Representing Robot Position ( ) ( ) [ ] T

Chapter 4 Dynamics. Part Constrained Kinematics and Dynamics. Mobile Robotics - Prof Alonzo Kelly, CMU RI

Unit 2: Locomotion Kinematics of Wheeled Robots: Part 3

CMPUT 412 Motion Control Wheeled robots. Csaba Szepesvári University of Alberta

Motion Control (wheeled robots)

A simple example. Assume we want to find the change in the rotation angles to get the end effector to G. Effect of changing s

2D/3D Geometric Transformations and Scene Graphs

Geometric Transformations

Non-holonomic Planning

Math background. 2D Geometric Transformations. Implicit representations. Explicit representations. Read: CS 4620 Lecture 6

Mobile Robot Kinematics

Robotics (Kinematics) Winter 1393 Bonab University

CHAPTER 3 MATHEMATICAL MODEL

Lecture VI: Constraints and Controllers. Parts Based on Erin Catto s Box2D Tutorial

Animation. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd 4/23/07 1

Locomotive Analysis of a Single-Input Three-Link Snake Robot

Jacobian: Velocities and Static Forces 1/4

Kinematics, Kinematics Chains CS 685

Jacobian: Velocities and Static Forces 1/4

Translations. Geometric Image Transformations. Two-Dimensional Geometric Transforms. Groups and Composition

Linear algebra deals with matrixes: two-dimensional arrays of values. Here s a matrix: [ x + 5y + 7z 9x + 3y + 11z

Kinematics of Wheeled Robots

Robot mechanics and kinematics

Control of industrial robots. Kinematic redundancy

Mobile Robots Locomotion

Time Optimal Trajectories for Bounded Velocity Differential Drive Robots

Table of Contents. Chapter 1. Modeling and Identification of Serial Robots... 1 Wisama KHALIL and Etienne DOMBRE

Chapter 3 Numerical Methods

A Simplified Vehicle and Driver Model for Vehicle Systems Development

Robot mechanics and kinematics

1 Differential Drive Kinematics

Force Modeling, Quaternion PID, and Optimization

Goals: Course Unit: Describing Moving Objects Different Ways of Representing Functions Vector-valued Functions, or Parametric Curves

1. Introduction 1 2. Mathematical Representation of Robots

Cobots

Lecture VI: Constraints and Controllers

6.837 LECTURE 7. Lecture 7 Outline Fall '01. Lecture Fall '01

Applications. Human and animal motion Robotics control Hair Plants Molecular motion

EE565:Mobile Robotics Lecture 2

11. Kinematic models of contact Mechanics of Manipulation

53:244 (58:254) Energy Principles in Structural Mechanics. virtual work, principles of stationary and minimum potential energy;

10/25/2018. Robotics and automation. Dr. Ibrahim Al-Naimi. Chapter two. Introduction To Robot Manipulators

Centre for Autonomous Systems

Structural Configurations of Manipulators

Kinematics of Closed Chains

Manipulation: Mechanisms, Grasping and Inverse Kinematics

9. Representing constraint

Configuration Space. Chapter 2

Kinematics. Kinematics analyzes the geometry of a manipulator, robot or machine motion. The essential concept is a position.

This week. CENG 732 Computer Animation. Warping an Object. Warping an Object. 2D Grid Deformation. Warping an Object.

CALCULATING TRANSFORMATIONS OF KINEMATIC CHAINS USING HOMOGENEOUS COORDINATES

Integration of automatic differentiation tools within object-oriented codes: accuracy and timings

Lesson 1: Introduction to Pro/MECHANICA Motion

MEM380 Applied Autonomous Robots Winter Robot Kinematics

3. Planar kinematics Mechanics of Manipulation

13. Polyhedral Convex Cones

What Is SimMechanics?

Optimizing Coordinate Choice for Locomoting Systems

Today. Parity. General Polygons? Non-Zero Winding Rule. Winding Numbers. CS559 Lecture 11 Polygons, Transformations

Dynamics modeling of structure-varying kinematic chains for free-flying robots

MTRX4700 Experimental Robotics

Trajectory Optimization

CS612 - Algorithms in Bioinformatics

Here are some of the more basic curves that we ll need to know how to do as well as limits on the parameter if they are required.

Recent developments in simulation, optimization and control of flexible multibody systems

Spacecraft Actuation Using CMGs and VSCMGs

15. Moment Labeling Mechanics of Manipulation

Principles of Robot Motion

3D Transformations. CS 4620 Lecture 10. Cornell CS4620 Fall 2014 Lecture Steve Marschner (with previous instructors James/Bala)

ROBOTICS 01PEEQW. Basilio Bona DAUIN Politecnico di Torino

Written exams of Robotics 2

Approximating Displacement with the Body Velocity Integral

Vector Algebra Transformations. Lecture 4

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

IntroductionToRobotics-Lecture02

Automatic Control Industrial robotics

Rotational3D Efficient modelling of 3D effects in rotational mechanics

Math 5BI: Problem Set 2 The Chain Rule

Answers. Chapter 2. 1) Give the coordinates of the following points:

METR 4202: Advanced Control & Robotics

Robotics Project. Final Report. Computer Science University of Minnesota. December 17, 2007

Autonomous Mobile Robot Design

Industrial Robots : Manipulators, Kinematics, Dynamics

Generalizing the Dubins and Reeds-Shepp cars: fastest paths for bounded-velocity mobile robots

Written exams of Robotics 1

Matrices. Chapter Matrix A Mathematical Definition Matrix Dimensions and Notation

Robots are built to accomplish complex and difficult tasks that require highly non-linear motions.

THE preceding chapters were all devoted to the analysis of images and signals which

Model Library Mechanics

Linear Algebra Part I - Linear Spaces

10. Cartesian Trajectory Planning for Robot Manipulators

Optimization of a two-link Robotic Manipulator

Lecture «Robot Dynamics»: Multi-body Kinematics

ROBOTICS 01PEEQW Laboratory Project #1. Basilio Bona DAUIN Politecnico di Torino

COMP30019 Graphics and Interaction Kinematics

Lecture «Robot Dynamics»: Kinematics 3

Kinematics of Machines. Brown Hills College of Engineering & Technology

ROBOTICS 01PEEQW Laboratory Project #1. Basilio Bona DAUIN Politecnico di Torino

DETC THREE-DIMENSIONAL KINEMATIC ANALYSIS OF THE ACTUATED SPOKE WHEEL ROBOT. September 10-13, 2006, Philadelphia, Pennsylvania, USA

9.1 Parametric Curves

Transcription:

Chapter 3: Kinematics Locomotion Ross Hatton and Howie Choset 1

(Fully/Under)Actuated Fully Actuated Control all of the DOFs of the system Controlling the joint angles completely specifies the configuration Under Actuated Cannot control all of the DOFs of the system Controlling joint angles specifies shape, but not position 2

Locomotion Shape changes can exploit physical constraints on their motions Interactions produce reaction forces restrictions on the velocities of points on the body momentum conservation laws Fluid or frictional drag Def: Process of using internal reaction forces caused by shape changes to provide position change. 3

Shape and Position 4

Kinematic Locomotion Changing the pacing or the time parameterization does not change the path traced by the position trajectory Time reparameterization Y is a smooth reparameterization of Y with respect to time, the induced position trajectories of a kinematic system have the same relationship displacement induced by a given shape trajectory is entirely a function of the geometric path it follows, and not the rate with it is executed. 5

Symmetric Linear-Kinematic Directionally Linear Locomotors Linear Kinematic Symmetric Linear-Kinematic 6

Directional Linearity and Linearity Directional Linearity Linearity 7

What linearity are these? 8

Symmetry An object is symmetric with respect to an action if when the action is applied to the object, the action preserves a property of the object Examples of geometric symmetries Notion of indistinguishable 9

Symmetry Groups Symmetry is closely linked to mathematical groups structure the set of actions under which an object is symmetric form a group Closure: Two symmetry-preserving actions can be concatenated into a third action that is also symmetry preserving Associativity: If a series of transformations is conducted, the order of operations does not matter (though left-right order may still be important). Identity: Objects are trivially symmetric under null actions Inverse: Any symmetry-preserving transformation may be undone or reversed, and concatenating this reversal with the original action produces a null action 10

Symmetry: R 1 vs S 1 Rotary joint Revolute joint: configuration of the attached link is symmetric with respect to complete revolutions Wheel: number of revolutions is important for other reasons 11

Symmetry in SE(2) under any SE(2) transformation, of the system the body-frame positions of particles in the system are unchanged characterize the system by its shape in the body frame 12

Why is symmetry good? This can allow us to reduce the number of degrees of freedom and simplify the system By removing position, think in terms of forward and sideways (lateral) velocities Use math like operators in the Lie Bracket such as 13

Examples: Diff Drive, Ackerman 14

Examples: Diff Drive, Ackerman 15

Kinematic Reconstruction Equation Local Connection 16

Non-holonomic Constraints Non-integrable constraints (does not help) restrict the velocity with which a system can move, but without restricting the accessible configurations. Rolling disk roll forward and backward or turn, but is unable to slide sideways Can displace sideways 17

More formally. a nonholonomic constraint is defined by a (possibly time-varying) function c on the system s configuration tangent bundle, TQ The zero set of this function defines the system s allowable velocities at each configuration that satisfy the constraint 18

Non-holonomic Constraint for Disk No Slide Condition World Body This constraint prevents lateral motion of the disk, but does not prevent it from achieving arbitrary net lateral displacement. By combining rolling and turning actions into a parallel parking motion, the disk can access any point in the SE(2) space despite the constraint on its velocity 19

Pfaffian Constraints A linear nonholonomic constraint c( q, q ) ( q) q m = number of independent constraints n = dim(q) m n ( q) R Null space (q) is allowable velocities Collection of these null spaces forms a distribution What s a null space? Unconstrained systems have n-dimensional distributions 20

Nonintegrability To qualify as a nonholonomic constraint function, c must not be integrable into a holonomic constraint f(q, t) = 0 + Initial conditions 21

Pfaffian Constraints on SE(2) each row of which represents a restriction on the motion of the system by mapping the configuration velocity (the body and shape velocities) to zero. Kinematic locomoting systems have Pfaffians composed of at least three independent constraints, one per degree of freedom in the position space fewer constraints gains the ability to drift through the position space without changing shape, and thus is not fully kinematic (pushing analogy bad, coasting analogy good) more constraints present than positional degrees of freedom, the system is overconstrained from a controls perspective, and only certain shape trajectories can be executed 22

M = 3 Pfaffians As many constraints as DOFs in SE(2), systems shape velocity uses up all of the local DOFs Body velocity becomes a linear function of shape velocity And viola, kinematic system! If there are more constraints (m>3), only certain shape trajectories are allowed 23

three-constraint Pfaffian (m = 3) Kinematic without being over constrained Unconstrained choices of shape trajectories 24

three-constraint Pfaffian (m = 3) We can compute the connection! 25

Differential Drive Example 26

more 27

more 28

Connection Vector Fields So, we have a local connection. How can we visualize it? First, what do the rows and columns of the matrix mean? Columns: body velocities from moving each shape variable independently Rows: dependence of each component of the body velocity on the shape velocity

Connection Vector Fields In locomotion we care about how the system s position changes for different shape inputs, so lets look at the rows Computationally, each component of the body velocity is the dot product of its corresponding row in A and the shape velocity. We can visually evaluate this dot product by looking at the alignment of the shape velocity with the vector fields formed by the rows of A. At right, a simple example using the differential drive car: When the shape change is following the x field, the car moves forward, and when it is following the y field, the car rotates CCW. When the trajectories are orthogonal to a field, the car does not move in the corresponding body direction Alternately, we can say that the rows encode the local gradient of position with respect to shape

Connection Vector Fields A more interesting example: the local connection of the Ackerman car varies over the shape space

Vectors and Covectors Vectors are generally represented as columns, and covectors as rows covector vector Many operations we learn as dot products are secretly vector-covector pairings. If we want to talk about them as dot products and still be formal, we can use musical notation (sharps and flats) to change vectors into covectors

Co-vectors

Vector-valued One Forms each element of the output is the product of one of the component covectors with the input vector Jacobians and Pfaffians 34

Directional Derivative rates of change of functions with respect to the underlying space the derivative of an implied function f with respect to the configuration space 35

Gradient Vector field pointing in the direction in which f increases the most quickly Rate of change of a function over a space is a one-form, not a velocity (recall, a vector is the velocity of something moving through the space, co-vector is the rate of change of a function over the space) Gradient vector fields are really the natural dual of the rate of change of function f may be only locally definable the local connection is the derivative of the system s position with respect to its shape, 36

Vector and Covector Visualization As part of the vector/covector distinction, some sources reserve arrows for visualizing vectors, and use planes or local contour lines to visualize covectors and covector fields. Width is always same Plane determines flow in z direction during flow along x,y Connection field elements are gradient vectors of each local plane Closeness of contours represent steepness, and orientation represents directions (closer space is more steep) Connection field elements are dual to the local contours

Vector and Covector Visualization As part of the vector/covector distinction, some sources reserve arrows for visualizing vectors, and use planes or local contour lines to visualize covectors and covector fields. Plane determines flow in z direction during flow along x,y Connection rows are really covector fields. Why not use one of these representations? Reasons we don t: 1.Plane fields are unnecessarily 3d all the information they contain can be presented in the arrow representation of their slope direction and magnitude 2.Local contour plots are space-inefficient, hard to read, and require infinitely-spaced lines for zero-magnitude covectors 3.Objections to using arrows for covectors seem to stem from naming overlap between vectors (velocities) and vectors (arrows representing directional derivatives). If we separate these concepts, then there is little trouble in plotting rows as vector fields

Full Body Locomotion Instead of a drive element and control surface Segments of the body trade-off and simultaneously act as drive surfaces and control surfaces

Three-link Locomotors Review of body velocities 40

Link 1 41

Link 3 42

The Velocities 43

Kinematic Snake No-slide constraints on the wheels

Kinematic Snake Extract terms to get Pfaffian constraints

Kinematic Snake Rearrange terms to solve for local connection

Kinematic Snake

Kinematic Snake Singularities Note singularities along alpha_1 = alpha_2 Constraints all pass through a single point: 1. System can now drift or coast, rotating around meeting point 2. Joints motions are highly restricted large opposing constraint forces in response to joint torques

The Velocities 49

Vectors and Co-vectors Tangent vectors (vectors): velocity-like terms that describe motion through the underlying space [Columns] Cotangent vectors (covectors) gradientlike terms describing how a quantity varies across the space [Rows] 50

Ackerman Car Singularities Similar situation with Ackerman car for alpha_2 = p Drive wheel forward motion constraint lines up with steering wheel lateral motion constraint Note that no such problem happens with front wheel drive front wheel is never inline with rear axle

Floating Snake Inertially-constrained system think of it as floating in space, or on an air table Pfaffian constraint is on momentum: If the system starts with zero momentum, it must maintain zero momentum for all time Could calculate momentum for each link, and use adjoints to collect momentum terms into single body frame. Easier method: If we find the kinetic energy matrix for the system, then the Pfaffian appears as the top two blocks of the matrix I(r) is the locked inertia tensor the inertia tensor if the joints are held constant

Floating Snake

Tangent and Co-Tangent Spaces v 1 * w ( w w w T Q 1, 2,..., n ) q q 2 ( v, v,..., v n ) T Q Vector fields and co-vector fields Tangent bundles and co-tangent bundles When equivalent bases are used w i = v i then they are natural duals with v b w w # v

Three-Link Swimmers Reynolds Number Low Reynolds High Reynolds 55