Ch. 5: Path Planning Ch. 6 Single Variable Control

1 / 24

# Ch. 5: Path Planning Ch. 6 Single Variable Control - PowerPoint PPT Presentation

Ch. 5: Path Planning Ch. 6 Single Variable Control. Updates. Lab #3 this week Lab #2 writeup due 3/22 HW #3 due today HW #4 distributed today. Insect-sized MAVs. Recent success in the Harvard Microrobotics Lab:. Path planning overview.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'Ch. 5: Path Planning Ch. 6 Single Variable Control' - derica

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### Ch. 5: Path PlanningCh. 6 Single Variable Control

ES159/259

• Lab #3 this week
• Lab #2 writeup due 3/22
• HW #3 due today
• HW #4 distributed today

ES159/259

Insect-sized MAVs
• Recent success in the Harvard Microrobotics Lab:

ES159/259

Path planning overview
• Want to find a path from an initial position to a final position
• Both are defined as vectors in the configuration space
• Initial configuration is qs and final configuration is qf
• Instead of completely defining QO or Qfree, we develop a sequence of discrete configurations that drive the configuration from qs to qf and avoid obstacles
• Definition:
• g: continuous mapping from qs to qf
• Such that:

ES159/259

The relation between workspace forces and joint torques
• When we discussed velocity kinematics we said that we could use the Jacobian to describe the mapping from joint forces and torques to end effector forces and torques:
• Jv is the velocity portion of the Jacobian (since we have only discussed workspace forces, not torques)
• The Jacobian must be derived for each origin oi, denoted Joi

ES159/259

Composing workspace forces
• The total joint torques acting on a manipulator is the sum of the torques from all attractive and repulsive potentials:
• If we add workspace forces before transforming into the configuration space, we will have incorrect torques in the configuration space

ES159/259

• Now that we can formulate the total torques acting on the joints in the configuration space due to the artificial potentials, we can formulate a path planning algorithm
• First, determine your initial configuration
• Second, given a desired point in the workspace, calculate the final configuration using the inverse kinematics
• Use this to create an attractive potential field
• Locate obstacles in the workspace
• Create a repulsive potential field
• Sum the joint torques in the configuration space
• Use gradient descent to reach your target configuration

ES159/259

Algorithm:

Notation:

qi: configuration at the ith iteration

e: region of convergence

zi:influence of attractive potential for oi. Can be different for each oi

ai:defines step size of ith iteration

hi:influence of repulsive potential for oi. Can be different for each oi

r0:distance of influence for obstacles. Can be defined differently for different obstacles

ES159/259

Instead we modify the gradient descent algorithm to add a random excitation in case we are stuck in a local minima

We are stuck in a local minima if successive iterations result in minimal changes in the configuration

If so, perform a random walk to get out

The random walk is defined by adding a uniformly distributed variable to each joint parameter

Local minima

ES159/259

Trajectory planning
• Either gradient descent or probabilistic roadmaps give us a sequence of way points
• How do we smoothly connect them?
• First, split the workspace into areas of fast and guarded motion:

ES159/259

Creating smooth trajectories
• Very simple premise: fit positions and velocities to polynomials
• The more constraints, the more terms in the polynomial
• At least two parameters (initial and final positions)
• We do this for each joint variable independently
• For example: if we specify the initial and final positions and velocities, we need four parameters:
• Cubic polynomial:
• The velocity is:
• This has determinant (tf- t0)4, thus we can invert and find unique solution

ES159/259

Creating smooth trajectories
• If we also specify accelerations, we add two other parameters
• For example: quintic polynomial
• The velocity is:

ES159/259

Creating smooth trajectories
• Therefore, for either cubic or quintic polynomials, we can use the specified parameters and solve for the a terms and create a trajectory from one way point to another
• However, what if we want to connect multiple way points, we can do one of two things:
• Use a quintic polynomial to describe the motion between qi and qi+1 such that:
• This ensures that there are no jumps in velocity (and hence acceleration and motor torques)

ES159/259

Creating smooth trajectories
• However, what if we want to connect multiple way points, we can do one of two things:
• Or we can string together multiple way points by specifying the initial and final velocities
• E.g. three way points:
• Thus we need an order-6 polynomial:
• Downsides: as the number of way points increases, the order of polynomial increases

ES159/259

Single variable control
• How do we determine the motor/actuator inputs so as to command the end effector in a desired motion?
• In general, the input voltage/current does not create instantaneous motion to a desired configuration
• Due to dynamics (inertia, etc)
• Nonlinear effects
• Backlash
• Friction
• Linear effects
• Compliance
• Thus, we need three basic pieces of information:
• Desired joint trajectory
• Description of the system (ODE)
• Measurement of actual trajectory

ES159/259

SISO overview
• Typical single input, single output (SISO) system:
• We want the robot tracks the desired trajectory and rejects external disturbances
• We already have the desired trajectory, and we assume that we can measure the actual trajectories
• Thus the first thing we need is a system description

ES159/259

SISO overview
• Need a convenient input-output description of a SISO system
• Two typical representations for the plant:
• Transfer function
• State-space
• Transfer functions represent the system dynamics in terms of the Laplace transform of the ODEs that represent the system dynamics
• For example, if we have a 1DOF system described by:
• We want the representation in the Laplace domain:
• Therefore, we give the transfer function as:

ES159/259

Review of the Laplace transform
• Laplace transform creates algebraic equations from differential equations
• The Laplace transform is defined as follows:
• For example, Laplace transform of a derivative:
• Integrating by parts:

ES159/259

Review of the Laplace transform
• Similarly, Laplace transform of a second derivative:
• Thus, if we have a generic 2nd order system described by the following ODE:
• And we want to get a transfer function representation of the system, take the Laplace transform of both sides:

ES159/259

Review of the Laplace transform
• Continuing:
• The transient response is the solution of the above ODE if the forcing function F(t) = 0
• Ignoring the transient response, we can rearrange:
• This is the input-output transfer function and the denominator is called the characteristic equation

ES159/259

Review of the Laplace transform
• Properties of the Laplace transform
• Takes an ODE to a algebraic equation
• Differentiation in the time domain is multiplication by s in the Laplace domain
• Integration in the time domain is multiplication by 1/s in the Laplace domain
• Considers initial conditions
• i.e. transient and steady-state response
• The Laplace transform is a linear operator

ES159/259

Review of the Laplace transform
• for this class, we will rely on a table of Laplace transform pairs for convenience

ES159/259

Next class…
• Continuation of single variable control
• Discussion of final projects

ES159/259