Robot Motion - PowerPoint PPT Presentation

About This Presentation
Title:

Robot Motion

Description:

... in Behaviors Modeling effects of kicking motions Ball vision analysis Ball trajectory angle analysis Kick strength analysis ... Principles The digital ac ... – PowerPoint PPT presentation

Number of Views:268
Avg rating:3.0/5.0
Slides: 102
Provided by: pdx89
Learn more at: http://web.cecs.pdx.edu
Category:
Tags: analysis | motion | robot

less

Transcript and Presenter's Notes

Title: Robot Motion


1
Robot Motion
  • Forward and Inverse Kinematics Next quarter
  • PID Control
  • Frame-Based Motions on the AIBO
  • Modeling Effects of Motions

2
Automatic Control Systems, Servos, Automatic
Tracking, Feedback Control
3
  • VOCABULARY
  • Automatic Control Systems
  • Automatic able to activate, move or regulate
    itself.
  • Control command, direct, rule, check, limit,
    restrain, regulate or operate.
  • System a group or combination of interrelated,
    independent, or interacting elements forming a
    collective entity.
  • Control engineering is concerned with modifying
    the behavior of dynamical systems to achieve
    desired goals.

4
Control System Terminology
  • Input - Excitation applied to a control system
    from an external source.
  • Output - The response obtained from a system
  • Feedback - The output of a system that is
    returned to modify the input.
  • Error - The difference between the input and the
    output.

5
Types of Control Systems
  • Open-Loop
  • Simple control system which performs its function
    without concerns for initial conditions or
    external inputs.
  • Must be closely monitored.
  • Closed-Loop (feedback)
  • Uses the output of the process to modify the
    process to produce the desired result.
  • Continually adjusts the process.

6
Control Systems
7
Transducer or Sensor Factors
8
Open Loop Controller
9
(No Transcript)
10
Open Loop Controller
  1. An open-loop controller (or non-feedback
    controller) is a type of controller which
    computes its input into a system using only the
    current state and its model of the system
  2. The system does not observe the output of the
    processes that it is controlling

11
(No Transcript)
12
Open Loop Controller (cont)
  1. Open-loop control is useful for well-defined
    systems where the relationship between input and
    the resultant state can be modeled by a
    mathematical formula
  2. For example determining the voltage to be fed to
    an electric motor that drives a constant load, in
    order to achieve a desired speed would be a good
    application of open-loop control

13
Open Loop Controller (cont)
  1. An open-loop controller is often used in simple
    processes because of its simplicity and low-cost,
    especially in systems where feedback is not
    critical
  2. Generally, to obtain a more accurate or more
    adaptive control, it is necessary to feed the
    output of the system back to the inputs of the
    controller

14
Open-loop control
  • Advantages
  • Stability not a problem
  • Cheaper than closed-loop
  • Can be used even if output cannot be measured
  • Disadvantages
  • Changes in system or disturbances ? errors
  • Periodic calibration required

15
Closed Loop Controller
16
Example of a simple Control in Closed Loop
17
Closed Loop Controller
  1. Closed-loop controllers have the following
    advantages over open-loop controllers
  2. Disturbance rejection (such as unmeasured
    friction in a motor)
  3. Guaranteed performance even with model
    uncertainties, when the model structure does not
    match perfectly the real process and the model
    parameters are not exact
  4. Unstable processes can be stabilized
  5. Reduced sensitivity to parameter variations
  6. Improved reference tracking performance

18
Closed Loop Controller
  1. A closed-loop controller uses feedback to control
    states or outputs of a dynamical system
  2. Process inputs have an effect on the process
    outputs, which is measured with sensors and
    processed by the controller the result is used
    as input to the process, closing the loop

19
The General View of a Control Loop
e
u
20
Feedback or Closed Loop System
21
PID Control
  • Proportional Integral Derivative Control
  • The Basic Problem
  • We have n joints, each with a desired position
    which we have specified
  • Each joint has an actuator which is given a
    command in units of torque
  • Most common method for determining required
    torques is by feedback from joint sensors

22
What is PID Control?
  • Proportional, Integral, Derivative Control
  • Proportional Multiply current error by constant
    to try to resolve error
  • Integral Multiply sum of previous errors by
    constant to resolve steady state error (error
    after system has come to rest)
  • Derivative Multiply time derivative of error
    change by constant to resolve error as quickly as
    possible

23
Feedback Signal is subtracted
24
Motor and gears rotate the wheel
Integrated circuit with differential amplifier
Potentiometer on the wheel
Feedback Signal is subtracted
25
Proportional Controller
Control Law
Step response of the system for proportional
control only
26
Complete PID controller
Step response of the system for proportional plus
integral plus derivative (PID) control.
Control Law
Kp 20
KI 75
KD 0
time
27
Cruise Control
28
Example
V velocity, speed
29
All opposing forces
Force created by motor
Acceleration is derivative of speed
30
acceleration
speed
integrator
Two terminologies
31
(No Transcript)
32
Closed-loop (feedback) control
  • Advantages
  • Reduced sensitivity to
  • disturbance inputs
  • parameter changes
  • Can stabilize an open- loop unstable plant
  • Can change system dynamics
  • speed of response
  • accuracy
  • reduce effect of non-linearities
  • Disadvantages
  • Increased complexity and cost
  • Risk of instability

33
(No Transcript)
34
Advantages of a Closed-Loop Feedback System
  • Increased Accuracy
  • Increased ability to reproduce output with varied
    input.
  • Reduced Sensitivity to Disturbance
  • By self correcting it minimizes effects of system
    changes.
  • Smoothing and Filtering
  • System induced noise and distortion are reduced.
  • Increased Bandwidth
  • Produces satisfactory response to increased
    range of input changes.

35
In general, the control system is more complex.
36
Designing control systems is complex
simplified stages of control system design.
Humanoid robot can have more than 43 variables to
control
37
Major Types of Feedback Used
  • Position Feedback
  • Used when the output is a linear distance or
    angular measurement.
  • Rate Acceleration Feedback
  • Feeds back rate of motion or rate of change of
    motion (acceleration)
  • Motion smoothing
  • Uses a electrical/mechanical device called an
    accelerometer

38
Target Tracking
39
(No Transcript)
40
In unstable system the periodic component would
not disappear
41
Target Tracking Parameters
  • Azimuth
  • Elevation
  • Range
  • Relative Target Velocity
  • Targets motion with respect to the platforms
    motion

42
(No Transcript)
43
Five Basic Functions of Angle-Tracking Servo
Systems
  • Sense position error (magnitude and direction)
  • Provide position feedback
  • Provide velocity feedback
  • Provide data smoothing / stabilization
  • Provide a power-driving device

44
Uses of Angle-Tracking Servo Systems
  • Monotrack fire control radars
  • Homing missiles
  • Acoustic homing torpedoes
  • Aviation fire control tracking systems

45
(No Transcript)
46
Motion Control System
47
Motion Control System
  • 1. Scope of Study
  • 2. Servo System
  • 3. Mechanical Transmission
  • 4. Applications
  • The primary purpose of the servo system is to
    control the motion of the load

Motion Requirements
Mechanical transmission
Servo System
48
Motion Control System - Principles
  • The digital ac servo system is typically
    available with three modes of operation
  • Torque Control Mode
  • Velocity Control Mode
  • Position Control Mode
  • In other words, in order to control the position
    the torque and velocity should be controlled.

49
Motion Control System Example
  • 2. Speed Regulator

3. AC Motor
1. Position Regulator
AC supply
Electronic commutator
4. Power Converter
Desired output
Speed feedback
Position feedback
5. Position Sensor
The ac servo system consists of five major
components.
50
Motion Control System
  • Most applications are more complicated than
    directly driving load.
  • Common mechanical transmissions include
  • timing belts,
  • gears,
  • conveyors,
  • leadscrews, and
  • rack pinion mechanism.
  • Especially, the timing belt and gearbox can be
    utilized as a speed reducer, and the other are to
    be used as translators.

51
Motion Control System with linear motion
Change to linear motion...
  • For instance, if the application requires linear
    motion of the load
  • a leadscrew,
  • rack pinion, or
  • conveyor
  • is used to translate the motors rotary motion
    into linear motion.

Load
Tacle
Motor
Coefficient of friction
Optional Timing Belt or Gear Reducer
Ball Nut
Ball Screw
52
Linear Servo Systems
Application of linear servo system box packing
53
Troubles in Control Systems
54
Actuator Hysteresis
55
Mechanical Hysteresis
56
Mechanical Hysteresis - backlash
57
Friction
58
Electronic Hysteresis
59
Sony AIBO Robot
Joint Angle Limits
60
Intelligent Complete Robot
Perception
Cognition
Sensors
Actuators
External World
61
What is good about robots like AIBO?
  • These concepts make up the low level
    functionality of the AIBO
  • Implemented once and used repeatedly
  • For more information about PID Control and
    Forward Inverse Kinematics take Matt Masons
    Robotic Manipulation course

62
AIBO Actuators
  • 18 degrees of freedom with a continuously
    controllable range of motion
  • 3 DOF in each leg (12 total)
  • 3 DOF in the head
  • 2 DOF in the tail
  • 1 DOF in the jaw
  • Each joint is controlled by specifying to a
    desired joint angle to OVirtualRobotComm.
  • 2 binary motors for the ears
  • A speaker for general sound production

63
Motor Control
  • Each message to OVirtualRobotComm contains a set
    of target angles for the joints
  • Each target is used for a PID controller (part of
    the OS) that controls each motor
  • Each target angle is used for one 8ms motor frame
  • Each message contains at least 4 motor frames
    (32ms)

64
The Motion Interface
65
Frame-Based Motion
  • Each motion is described by a series of frames
    which specify the position of the robot, and a
    time to interpolate between frames
  • Movement between frames is calculated through
    linear interpolation of each joint

66
Kicking
  • A series of set positions for the robot
  • Linear interpolation between the frames
  • Kinematics and interpolation provided by
    CMWalkEngine
  • Set robot in desired positions and query the
    values of the joints

67
(No Transcript)
68
Use of Kicks in Behaviors
  • Modeling effects of kicking motions
  • Ball vision analysis
  • Ball trajectory angle analysis
  • Kick strength analysis
  • Kick selection for behaviors
  • Selection algorithm
  • Performance comparison

69
Kick Selection
  • Incorporate the kick models into the selection
    algorithm
  • The robot knows its position on the field
    relative to the goal and the desired ball
    trajectory
  • The robot selects appropriate kick by referencing
    the kick model
  • If no kick fits desired criteria, robot selects
    closest matching kick and turns/dribbles ball to
    appropriate position

70
Frame-Based Motion
71
Frame-Based Motion
  • Each motion is described by a series of frames
    which specify the position of the robot, and a
    time to interpolate between frames
  • Movement between frames is calculated through
    linear interpolation of each joint

72
Examples Valid Motion Frames
BodyPos(b,98,RAD(16)) HeadAng(b, 0.5, 1.5,
0.0) LegPos(b,0, 123, 85, 0) LegPos(b,1,
123,-85, 0) LegAng(b,2, 0.1, 0.0, 0.2)
LegAng(b,3, 0.1, 0.0, 0.2) mn.body b
mn.time 100 n
BodyPos(b,98,RAD(16)) HeadAng(b, 0.5, 1.5,
0.0) MouthAng(b,-.7) LegPos(b,0, 123,
85,0) LegPos(b,1, 123,-85,0) LegPos(b,2,
-80 , 75,0) LegPos(b,3, -80 ,-75,0)
mn.body b mn.time 100 n
LegAng(b,0, 0.0, 1.5, 0.0) LegAng(b,1, 0.0,
1.5, 0.0) LegAng(b,2, 0.1, 0.0, 0.2)
LegAng(b,3, 0.1, 0.0, 0.2) mn.body b
mn.time 100 n
mn.body b mn.time 100 n
73
Defining a Frame
  • The position of the robot in each frame can be
    described using any of the following
  • Position of the legs - in terms of angles of each
    joint or position of the foot in motion
    coordinates
  • Angle of the head (tilt, pan, roll)
  • Body height and angle
  • Angle of the mouth

struct BodyState BodyPosition pos
LegState leg4 HeadState head MouthState
mouth
74
Questions and Problems to Solve
75
What did we learn?
Problem 1
  • Feedback control is a fundament of robot control
  • Various kits (Lego Dacta Control Lab) have
    several demonstrations and project to explain the
    principles of feedback
  • Line following
  • Speed control
  • Temperature control (fan, lamp, sensor)
  • Find on internet some of these kits and
    explanations of projects for high school.

76
What did we learn?
Problem 2
  • Control of Many DOF robots is tough
  • In addition to classical and modern control
    theory we use
  • fuzzy control
  • genetic algorithms
  • neural control
  • bio-mimetic systems
  • Review your control knowledge (for next quarter),
    but remember that in this class all knowledge is
    through programming.
  • Describe a simple robot arm which uses fuzzy
    logic and a motor.
  • Describe a mobile robot that uses a genetic
    algorithm and a motor. How FGA is used in
    relation to a motor?

77
Your task
Problem 3
  • Learn about the particular servo that you plan to
    use. If the servo was not suggested by the
    professor, learn about servos that are available,
    calculate your project requirements for a servo
    and pick one. The more servos we order, the
    cheaper the price of one.
  • If you do not want to use one of standard servos,
    your choices are
  • build your own servo from a DC motor. This is a
    big project by itself and you must have clear
    reasons to do so
  • Use stepper motor. Remember that they are slow
    and weak, why you want to use them? You must be
    sure of your reasons

78
Your task
Problem 4
  • Use hydraulic control. Why? You need to purchase
    or build your own actuator. Think about
    redesigning our horse leg with better syringes
    and oil instead of water. How can you connect the
    syringe to a stepper motor?
  • Use pneumatic control. Read first the
    documentation of pneumatic hand or old Electric
    Horse. Talk to designers.
  • Find pistons in Mondo-Tronics or other robot
    store. They are good.
  • Use Nintinol or other similar actutors. They are
    good for face muscles or similar small and weak
    movements.
  • Can they be used for a hexapod? I doubt, but try
    to convince me
  • Before you do this, read the two-volume book of
    Conrad and Mills

Problem 5
Problem 6
79
Formulas Units useful to solve practical
problems with motors and gears
  • Unit conversions of interest
  • 1lbs 4.45 N
  • 1 inch 0.0254 meters
  • 1 in-lbs 0.11 N-m
  • 1 RPM 60 Rev / Hour 0.105 Rad / Sec
  • 1 mile 5280 X 12 inches 63,000 inches
  • Power Force (N) X Velocity (m/s)
  • Power Torque (N-m) X Angular Velocity (Rad/Sec)
  • Electrical Power Voltage X Current

80
Problems with Motor Characteristics
Problem 7
Stall Current
  • Torque v Speed Curves
  • Stall Torque (T0)
  • Stall Current (A0)
  • Free Speed (Wf)
  • Free Current (Af)

K (slope)
T0
Torque, Current
  1. Find these data for the motors that you use.
  2. Calculate the torque of your robot arm or mobile
    robot to solve problems that you want.
  3. Draw the Torque vs Speed Curve for your motor and
    check if this is what you expect.

A0
Af
Speed
Wf
Free Current
81
Slope-Intercept (YmX b)
  • YMotor Torque
  • mK (discuss later)
  • XMotor Speed
  • bStall Torque (T0)

K (slope)
T0
Torque, Current
A0
Af
Speed
Wf
What is K? It is the slope of the line. Slope
change in Y / change in X (0 - T0)/(Wf-0)
-T0/Wf K Slope -T0/Wf
How to calculate slope when the characteristic is
not linear?
82
(YmX b) Continued ...
  • YMotor Torque
  • mK -T0/Wf
  • XMotor Speed
  • bStall Torque T0

T0 (b)
K (-T0/Wf)
Torque, Current
A0
Af
Speed
Wf
Equation for a motor Torque (-T0/Wf)
Speed T0
How to calculate torque in any point of the
characteristic curve?
83
Current (Amps) and FIRST
  • What are cutoff Amps?
  • Max useable amps
  • Limited by breakers
  • Need to make assumptions

Can our Motors operate above 30 amps? -
Absolutely, but not continuous.
When designing, you want to be able to perform
continuously so finding motor info at 30 amps
could prove to be useful.
84
Torque at Amp Limit
  • T30 Torque at 30 Amps
  • W30 Speed at 30 Amps

Current Equation Current (Af-A0)/Wf Speed
A0
Motor Equation Torque (-T0/Wf) Speed T0
S _at_ 30A (W30) (30 - A0) Wf / (Af-A0) T _at_ 30A
(T30) (-T0/Wf) W30 T0
85
Power - Max vs. 30 Amps
Power Torque Speed Must give up torque for
speed Max Power occurs when T T0/2
WWf/2 What if max power occurs at a current
higher than 30A?
Pauls Tip 1 Design drive motor max power for
30A!
Power is Absolute - It determines the Torque -
Speed tradeoff!
86
Motor Comparisons
Lets Look at Some FIRST Motors
  1. Chiaphua Motor
  2. Drill Motor
  3. Johnson Electric Fisher-Price Motor

We will compare T0, Wf, A0, Af, T30, W30, max
power (Pmax), amps _at_ max power (Apmax), and power
at 30 amps (P30).
We will be using Dr. Joes motor spreadsheet
updated to handle the new motors.
87
Motor Comparisons
We will be using Dr. Joes motor spreadsheet
updated to handle the new motors.
Motor Equations 1. Fisher-Price T
(-0.51/20,000) W 0.51 2. Bosch Drill T
(-0.65/20,000) W 0.65 3. Chiaphua T
(-2.2/5,500) W 2.2
88
Combining Motors
Using multiple motors is common for drive trains.
We will look at matching the big 3 motors. I try
to match at free speed, but you can match at any
speed you like!! FP and drill will match 11 Wf
FP(drill) / Wf Chiaphua 20000/5500 40/11 Gear
ratio to match Chip FP(drill) is 40/11. We will
use an efficiency of 95 for the match gear. More
to come on Gear Ratio Efficiency in the Second
Half!
89
Combined Motor Data
Motor Equations 1. F-P Drill T
(-1.16/20,000) W 1.16 2. F-P Chip
T (-3.96/5,500) W 3.96 3. Drill Chip
T (-4.45/5,500) W 4.45 4. F-P, Drill,
Chip T (-6.21/5,500) W 6.21
90
NXT motor internals for calculations
Center of Mass of Lego Motors
91
NXT motor characteristics
92
  • The following charts show the characteristics of
    the NXT motor versus applied load.
  • For the dark blue curves, the NXT was powered at
    9V (voltage of alkaline batteries), the magenta
    ones were obtained at 7.2V (voltage of NiMH
    batteries).
  • Power level is 100 for all charts.

93
  • This curve shows that the maximum mechanical
    power is obtained at a torque load of about 15
    N.cm.
  • If you compare to the curves obtained for the RCX
    with 71427 motor, you see that the available
    mechanical power is much higher, almost 4 times!
  • Even powered with 7.2V NiMH batteries, the NXT
    can deliver more power than a RCX output with 2
    paralleled motors and 9V supply.
  • This comes with a price of course, the current
    drained at that power level is much higher - you
    better have good batteries...

94
(No Transcript)
95
(No Transcript)
96
  • The current vs. torque shows a linear increase
    with the load.
  • Because of power limitations in NXT driver, and
    thermistor trip current in NXT motor, I suggest
    that you don't exceed a 15 N.cm torque for
    extended time periods.
  • Higher loads (thus current drains) are possible
    for short periods, but the protections will soon
    reduce current and available power

97
(No Transcript)
98
(No Transcript)
99
(No Transcript)
100
(No Transcript)
101
Sources
  • Manuela Veloso
  • Paul E. Rybski
Write a Comment
User Comments (0)
About PowerShow.com