Copyright © 1993-2001, Hugh Jack
page 1
Dynamic System Modeling and Control
by
Hugh Jack
(Draft Version 2.6, Decem...
71 downloads
1650 Views
5MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Copyright © 1993-2001, Hugh Jack
page 1
Dynamic System Modeling and Control
by
Hugh Jack
(Draft Version 2.6, December 20, 2004)
© Copyright 1993-2004 Hugh Jack
page 1
PREFACE How to use the book. • read the chapters and do drill problems as you read • examine the case studies - these pull together concepts from previous chapters • problems at the ends of chapters are provided for further practice Tools that should be used include, • graphing calculator that can solve differential equations, such as a TI-85 • computer algebra software that can solve differential equations, such as Scilab Supplemental materials at the end of this book include, • a writing guide • a summary of math topics important for engineers • a table of generally useful engineering units • properties of common materials Acknowledgement to, Dr. Hal Larson for reviewing the calculus and numerical methods chapters Dr. Wendy Reffeor for reviewing the translation chapter Student background a basic circuits course a basic statics and mechanics of materials course math up to differential equations a general knowledge of physics computer programming, preferably in ’C’
Special notes - despite all common wisdom, inertia is presented as a force, this makes it easier for students attempting to learn, and keep sign conventions correct
TO BE DONE small italicize variables and important terms fix equation numbering (auto-numbering?) fix subscripts and superscripts fix problem forms to include therefores, mark FBDs, etc. check C programs for ANSI compliance big verify the phase angle relationships cos vs/ sin.
page 2
chapter rotation replace the rotational case with IC motor chapter non-linear systems develop chapter chapter magnetic consider adding/writing this chapter chapter fluids consider adding/writing this chapter chapter thermal consider adding/writing this chapter chapter c programming review section add problems
Buzzword topics: - Distributed systems - Intelligent manufacturing systems - Adaptive control - Architectures for signal processing and control algorithms - Discrete event systems - Hybrid systems - Predictive control - Robust control
page 1
1.
INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1 1.1 1.2 1.3 1.4
2.
2.3 2.4 2.5 2.6 2.7 2.8
INTRODUCTION MODELING 2.2.1 Free Body Diagrams 2.2.2 Mass and Inertia 2.2.3 Gravity and Other Fields 2.2.4 Springs 2.2.5 Damping and Drag 2.2.6 Cables And Pulleys 2.2.7 Friction 2.2.8 Contact Points And Joints SYSTEM EXAMPLES OTHER TOPICS SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
2.1 2.3 2.4 2.4 2.8 2.10 2.18 2.21 2.23 2.25 2.25 2.35 2.36 2.36 2.41 2.45
ANALYSIS OF DIFFERENTIAL EQUATIONS . . . . . . . . . . . . 3.1 3.1 3.2 3.3
3.4 3.5
3.6 3.7 3.8 3.9 3.10
4.
1.1 1.3 1.3 1.3
TRANSLATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1 2.1 2.2
3.
BASIC TERMINOLOGY EXAMPLE SYSTEM SUMMARY PRACTICE PROBLEMS
INTRODUCTION EXPLICIT SOLUTIONS RESPONSES 3.3.1 First-order 3.3.2 Second-order 3.3.3 Other Responses RESPONSE ANALYSIS NON-LINEAR SYSTEMS 3.5.1 Non-Linear Differential Equations 3.5.2 Non-Linear Equation Terms 3.5.3 Changing Systems CASE STUDY SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
3.1 3.2 3.16 3.17 3.23 3.28 3.31 3.33 3.34 3.38 3.41 3.47 3.51 3.51 3.56 3.61
NUMERICAL ANALYSIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1
page 2
4.1 4.2 4.3
4.4
DATA
4.5 4.31 4.6
4.7 4.8 4.9 4.10 4.11
5.
ADVANCED TOPICS 4.6.1 Switching Functions 4.6.2 Interpolating Tabular Data 4.6.3 Modeling Functions with Splines 4.6.4 Non-Linear Elements CASE STUDY SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
4.33 4.33 4.36 4.37 4.39 4.39 4.46 4.47 4.50 4.60
ROTATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1 5.1 5.2
5.3 5.4 5.5 5.6 5.7 5.8
6.
INTRODUCTION 4.1 THE GENERAL METHOD 4.1 4.2.1 State Variable Form 4.2 NUMERICAL INTEGRATION 4.10 4.3.1 Numerical Integration With Tools 4.10 4.3.2 Numerical Integration 4.15 4.3.3 Taylor Series 4.21 4.3.4 Runge-Kutta Integration 4.23 SYSTEM RESPONSE 4.29 4.4.1 Steady-State Response 4.30 DIFFERENTIATION AND INTEGRATION OF EXPERIMENTAL
INTRODUCTION MODELING 5.2.1 Inertia 5.2.2 Springs 5.2.3 Damping 5.2.4 Levers 5.2.5 Gears and Belts 5.2.6 Friction 5.2.7 Permanent Magnet Electric Motors OTHER TOPICS DESIGN CASE SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
5.1 5.2 5.3 5.7 5.12 5.14 5.15 5.19 5.22 5.23 5.23 5.28 5.28 5.35 5.44
INPUT-OUTPUT EQUATIONS . . . . . . . . . . . . . . . . . . . . . . . . . 6.1 6.1 6.2 6.3
INTRODUCTION THE DIFFERENTIAL OPERATOR INPUT-OUTPUT EQUATIONS
6.1 6.1 6.4
page 3
6.4 6.5 6.6 6.7 6.8 6.9
7.
6.6 6.9 6.11 6.20 6.20 6.22 6.26 6.27
ELECTRICAL SYSTEMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.1 7.1 7.2
7.3 7.4 7.5
7.6 7.7 7.8 7.9 7.10 7.11
8.
6.3.1 Converting Input-Output Equations to State Equations 6.3.2 Integrating Input-Output Equations DESIGN CASE SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSGINMENT PROBLEMS REFERENCES
INTRODUCTION MODELING 7.2.1 Resistors 7.2.2 Voltage and Current Sources 7.2.3 Capacitors 7.2.4 Inductors 7.2.5 Op-Amps IMPEDANCE EXAMPLE SYSTEMS ELECTROMECHANICAL SYSTEMS - MOTORS 7.5.1 Permanent Magnet DC Motors 7.5.2 Induction Motors 7.5.3 Brushless Servo Motors FILTERS OTHER TOPICS SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
7.1 7.1 7.2 7.4 7.8 7.10 7.11 7.16 7.18 7.26 7.26 7.28 7.29 7.32 7.33 7.33 7.34 7.38 7.43
FEEDBACK CONTROL SYSTEMS . . . . . . . . . . . . . . . . . . . . . . 8.1 8.1 8.2 8.3
8.4 8.5
INTRODUCTION TRANSFER FUNCTIONS CONTROL SYSTEMS 8.3.1 PID Control Systems 8.3.2 Manipulating Block Diagrams 8.3.3 A Motor Control System Example 8.3.4 System Error 8.3.5 Controller Transfer Functions 8.3.6 Feedforward Controllers 8.3.7 State Equation Based Systems 8.3.8 Cascade Controllers SUMMARY PRACTICE PROBLEMS
8.1 8.1 8.3 8.5 8.7 8.12 8.17 8.21 8.21 8.22 8.24 8.24 8.24
page 4
8.6 8.7
9.
9.1 9.1 9.8 9.10 9.10 9.12 9.14
INTRODUCTION BODE PLOTS SIGNAL SPECTRUMS SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS LOG SCALE GRAPH PAPER
10.1 10.5 10.21 10.22 10.22 10.25 10.35 10.36
ROOT LOCUS ANALYSIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.1 11.1 11.2 11.3 11.4 11.5 11.6
12.
INTRODUCTION PHASORS FOR STEADY-STATE ANALYSIS VIBRATIONS SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
BODE PLOTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.1 10.1 10.2 10.3 10.4 10.5 10.6 10.7 10.8
11.
8.31 8.37
PHASOR ANALYSIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.1 9.1 9.2 9.3 9.4 9.5 9.6 9.7
10.
PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
INTRODUCTION ROOT-LOCUS ANALYSIS SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
11.1 11.1 11.10 11.11 11.14 11.25
NONLINEAR SYSTEMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.1 12.1 12.2 12.3
12.4 12.5
INTRODUCTION SOURCES OF NONLINEARITY 12.2.1 Non-Linear Relationships NON-LINEAR ELEMENTS 12.3.1 Time Variant 12.3.2 Switching 12.3.3 Deadband 12.3.4 Saturation and Clipping 12.3.5 Hysteresis and Slip 12.3.6 Delays and Lags SUMMARY PRACTICE PROBLEMS
12.1 12.1 12.1 12.2 12.3 12.3 12.4 12.7 12.7 12.8 12.9 12.9
page 5
12.6 12.7
13.
12.9 12.9
ANALOG INPUTS AND OUTPUTS . . . . . . . . . . . . . . . . . . . . 13.1 13.1 13.2 13.3 13.4
13.5 13.6 13.7 13.8 13.9
14.
PRACTICE PROBLEM SOLUTIONS ASIGNMENT PROBLEMS
INTRODUCTION ANALOG INPUTS ANALOG OUTPUTS NOISE REDUCTION 13.4.1 Shielding 13.4.2 Grounding CASE STUDY SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
13.1 13.3 13.10 13.12 13.12 13.14 13.15 13.15 13.15 13.15 13.16
CONTINUOUS SENSORS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.1 14.1 14.2
INTRODUCTION 14.1 INDUSTRIAL SENSORS 14.2 14.2.1 Angular Displacement 14.3 Potentiometers 14.3 14.2.2 Encoders 14.4 Tachometers 14.8 14.2.3 Linear Position 14.8 Potentiometers 14.8 Linear Variable Differential Transformers (LVDT)14.9 Moire Fringes 14.11 Accelerometers 14.12 14.2.4 Forces and Moments 14.15 Strain Gages 14.15 Piezoelectric 14.18 14.2.5 Liquids and Gases 14.20 Pressure 14.21 Venturi Valves 14.22 Coriolis Flow Meter 14.23 Magnetic Flow Meter 14.24 Ultrasonic Flow Meter 14.24 Vortex Flow Meter 14.24 Positive Displacement Meters 14.25 Pitot Tubes 14.25 14.2.6 Temperature 14.25 Resistive Temperature Detectors (RTDs) 14.26 Thermocouples 14.26 Thermistors 14.28 Other Sensors 14.30
page 6
14.2.7
14.3 14.4 14.5 14.6 14.7 14.8 14.9
15.
Light Dependant Resistors (LDR) 14.2.8 Chemical pH Conductivity 14.2.9 Others INPUT ISSUES SENSOR GLOSSARY SUMMARY REFERENCES PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
14.30 14.30 14.31 14.31 14.31 14.32 14.32 14.37 14.38 14.39 14.39 14.40 14.42
CONTINUOUS ACTUATORS . . . . . . . . . . . . . . . . . . . . . . . . . 15.1 15.1 15.2
15.3 15.4 15.5 15.6 15.7 15.8
16.
Light
INTRODUCTION ELECTRIC MOTORS 15.2.1 Basic Brushed DC Motors 15.2.2 AC Motors 15.2.3 Brushless DC Motors 15.2.4 Stepper Motors 15.2.5 Wound Field Motors HYDRAULICS OTHER SYSTEMS SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
15.1 15.1 15.3 15.7 15.15 15.17 15.19 15.23 15.24 15.25 15.25 15.26 15.26
MOTION CONTROL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16.1 16.1 16.2
16.3
16.4 16.5 16.6 16.7 16.8 16.9
INTRODUCTION MOTION PROFILES 16.2.1 Velocity Profiles 16.2.2 Position Profiles MULTI AXIS MOTION 16.3.1 Slew Motion Interpolated Motion 16.3.2 Motion Scheduling PATH PLANNING CASE STUDIES SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
16.1 16.2 16.2 16.11 16.14 16.15 16.16 16.17 16.19 16.21 16.23 16.23 16.24 16.25
page 7
17.
LAPLACE TRANSFORMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.1 17.1 17.2 17.3 17.4 17.5 17.6
17.7
17.8 17.9 17.10 17.11 17.12 17.13
18.
INTRODUCTION APPLYING LAPLACE TRANSFORMS 17.2.1 A Few Transform Tables MODELING TRANSFER FUNCTIONS IN THE s-DOMAIN FINDING OUTPUT EQUATIONS INVERSE TRANSFORMS AND PARTIAL FRACTIONS EXAMPLES 17.6.1 Mass-Spring-Damper Vibration 17.6.2 Circuits ADVANCED TOPICS 17.7.1 Input Functions 17.7.2 Initial and Final Value Theorems A MAP OF TECHNIQUES FOR LAPLACE ANALYSIS SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS REFERENCES
17.1 17.3 17.4 17.9 17.11 17.14 17.21 17.21 17.23 17.25 17.25 17.26 17.27 17.28 17.28 17.31 17.35 17.37
CONTROL SYSTEM ANALYSIS . . . . . . . . . . . . . . . . . . . . . . 18.1 18.1 18.2
INTRODUCTION 18.1 CONTROL SYSTEMS 18.1 18.2.1 PID Control Systems 18.3 18.2.2 Analysis of PID Controlled Systems With Laplace Transforms
18.5
18.3 18.4 18.5 18.6 18.7 18.8
19.
18.2.3 Finding The System Response To An Input 18.2.4 Controller Transfer Functions ROOT-LOCUS PLOTS 18.3.1 Approximate Plotting Techniques DESIGN OF CONTINUOUS CONTROLLERS SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
18.8 18.13 18.13 18.17 18.21 18.21 18.22 18.27 18.27
CONVOLUTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19.1 19.1 19.2 19.3 19.4 19.5 19.6
INTRODUCTION UNIT IMPULSE FUNCTIONS IMPULSE RESPONSE CONVOLUTION NUMERICAL CONVOLUTION LAPLACE IMPULSE FUNCTIONS
19.1 19.1 19.3 19.5 19.6 19.9
page 8
19.7 19.8 19.9 19.10
20.
21.9 21.10 21.11 21.12 21.13 21.14
20.1 20.13 20.15 20.18 20.18 20.19 20.19 20.19 20.19
INTRODUCTION 21.1 FULL STATE FEEDBACK 21.2 OBSERVERS 21.5 SUPPLEMENTAL OBSERVERS 21.11 REGULATED CONTROL WITH OBSERVERS 21.11 LQR 21.22 LINEAR QUADRATIC GAUSSIAN (LQG) COMPENSATORS 21.24 VERIFYING CONTROL SYSTEM STABILITY 21.24 21.8.1 Stability 21.25 21.8.2 Bounded Gain 21.26 ADAPTIVE CONTROLLERS 21.28 OTHER METHODS 21.31 21.10.1 Kalman Filtering 21.32 SUMMARY 21.32 PRACTICE PROBLEMS 21.33 PRACTICE PROBLEM SOLUTIONS 21.33 ASSIGNMENT PROBLEMS 21.33
SYSTEM IDENTIFICATION . . . . . . . . . . . . . . . . . . . . . . . . . . 22.1 22.1 22.2 22.3 22.4 22.5
23.
INTRODUCTION OBSERVABILITY CONTROLLABILITY OBSERVERS SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS BIBLIOGRAPHY
STATE SPACE CONTROLLERS . . . . . . . . . . . . . . . . . . . . . . . 21.1 21.1 21.2 21.3 21.4 21.5 21.6 21.7 21.8
22.
19.10 19.10 19.10 19.10
STATE SPACE ANALYSIS . . . . . . . . . . . . . . . . . . . . . . . . . . . 20.1 20.1 20.2 20.3 20.4 20.5 20.6 20.7 20.8 20.9
21.
SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
INTRODUCTION SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
22.1 22.10 22.10 22.10 22.10
ELECTROMECHANICAL SYSTEMS . . . . . . . . . . . . . . . . . . . 23.1
page 9
23.1 23.2 23.3 23.4 23.5 23.6 23.7
24.
24.3 24.4 24.5 24.6 24.7
SUMMARY MATHEMATICAL PROPERTIES 24.2.1 Resistance 24.2.2 Capacitance 24.2.3 Power Sources EXAMPLE SYSTEMS SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEMS SOLUTIONS ASSIGNMENT PROBLEMS
24.1 24.1 24.2 24.4 24.6 24.8 24.10 24.10 24.10 24.10
THERMAL SYSTEMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.1 25.1 25.2
25.3 25.4 25.5 25.6 25.7
26.
23.1 23.1 23.1 23.9 23.16 23.16 23.16 23.16
FLUID SYSTEMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24.1 24.1 24.2
25.
INTRODUCTION MATHEMATICAL PROPERTIES 23.2.1 Induction EXAMPLE SYSTEMS SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
INTRODUCTION MATHEMATICAL PROPERTIES 25.2.1 Resistance 25.2.2 Capacitance 25.2.3 Sources EXAMPLE SYSTEMS SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
25.1 25.1 25.1 25.3 25.4 25.4 25.7 25.7 25.7 25.7
OPTIMIZATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26.1 26.1 26.2 26.3 26.4
26.5 26.6 26.7
INTRODUCTION OBJECTIVES AND CONSTRAINTS SEARCHING FOR THE OPTIMUM OPTIMIZATION ALGORITHMS 26.4.1 Random Walk 26.4.2 Gradient Decent 26.4.3 Simplex SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS
26.1 26.2 26.6 26.9 26.9 26.10 26.10 26.10 26.10 26.10
page 10
26.8
27.
INTRODUCTION COMMERCIAL CONTROLLERS REFERENCES SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
28.1 28.7 28.7 28.7 28.8 28.8 28.8
SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS REFERENCES
29.9 29.10 29.10 29.10 29.10
EMBEDDED CONTROL SYSTEM . . . . . . . . . . . . . . . . . . . . . 30.1 30.1 30.2 30.3 30.4 30.5 30.6
31.
27.1 27.2 27.4 27.12 27.13 27.13 27.13 27.13
NEURAL NETWORKS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29.1 29.1 29.2 29.3 29.4 29.5
30.
INTRODUCTION FINITE ELEMENT MODELS FINITE ELEMENT MODELS SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS BIBLIOGRAPHY
FUZZY LOGIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28.1 28.1 28.2 28.3 28.4 28.5 28.6 28.7
29.
26.10
FINITE ELEMENT ANALYSIS (FEA) . . . . . . . . . . . . . . . . . . . 27.1 27.1 27.2 27.3 27.4 27.5 27.6 27.7 27.8
28.
ASSIGNMENT PROBLEMS
INTRODUCTION CASE STUDY SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSIGNMENT PROBLEMS
30.1 30.3 30.3 30.3 30.3 30.3
WRITING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.1 31.1 31.2 31.3 31.4 31.5
FORGET WHAT YOU WERE TAUGHT BEFORE WHY WRITE REPORTS? THE TECHNICAL DEPTH OF THE REPORT TYPES OF REPORTS LABORATORY REPORTS An Example First Draft of a Report
31.1 31.2 31.3 31.3 31.3 31.5
page 11
31.6 31.7 31.8 31.9
31.10 31.11
31.12 31.13 31.14 31.15 31.16
32.
An Example Final Draft of a Report RESEARCH DRAFT REPORTS PROJECT REPORT OTHER REPORT TYPES 31.9.1 Executive 31.9.2 Consulting 31.9.3 Memo(randum) 31.9.4 Interim 31.9.5 Poster 31.9.6 Progress Report 31.9.7 Oral 31.9.8 Patent LAB BOOKS REPORT ELEMENTS 31.11.1 Figures 31.11.2 Graphs 31.11.3 Tables 31.11.4 Equations 31.11.5 Experimental Data 31.11.6 Result Summary 31.11.7 References 31.11.8 Acknowledgments 31.11.9 Abstracts 31.11.10 Appendices 31.11.11 Page Numbering 31.11.12 Numbers and Units 31.11.13 Engineering Drawings 31.11.14 Discussions 31.11.15 Conclusions 31.11.16 Recomendations 31.11.17 Appendices 31.11.18 Units GENERAL WRITING ISSUES WRITERS BLOCK TECHNICAL ENGLISH EVALUATION FORMS PATENTS
31.11 31.11 31.11 31.12 31.13 31.13 31.13 31.13 31.14 31.14 31.14 31.15 31.15 31.16 31.16 31.17 31.18 31.19 31.19 31.20 31.21 31.21 31.21 31.22 31.22 31.23 31.23 31.23 31.24 31.24 31.24 31.25 31.25 31.25 31.26 31.26 31.29 31.31
PROJECTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.1 32.1 32.2 32.3
OVERVIEW 32.2.1 The Objectives and Constraints MANAGEMENT 32.3.1 Timeline - Tentative
32.1 32.1 32.2 32.3 32.3
page 12
32.4
32.5
32.6
33.
32.4 32.5 32.5 32.5 32.6 32.6 32.7 32.8 32.8 32.9 32.9 32.10 32.10 32.10 32.18 32.19
ENGINEERING PROBLEM SOLVING . . . . . . . . . . . . . . . . . . 33.1 33.1 33.2 33.3
33.4 33.5
34.
32.3.2 Teams DELIVERABLES 32.4.1 Conceptual Design 32.4.2 EGR 345/101 Contract 32.4.3 Progress Reports 32.4.4 Design Proposal 32.4.5 The Final Report REPORT ELEMENTS 32.5.1 Gantt Charts 32.5.2 Drawings 32.5.3 Budgets and Bills of Material 32.5.4 Calculations APPENDICES 32.6.1 Appendix A - Sample System 32.6.2 Appendix B - EGR 345/101 Contract 32.6.3 Appendix C - Forms
BASIC RULES OF STYLE EXPECTED ELEMENTS SEPCIAL ELEMENTS 33.3.1 Graphs 33.3.2 EGR 345 Specific SCILAB TERMINOLOGY
33.1 33.1 33.2 33.2 33.2 33.2 33.3
MATHEMATICAL TOOLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34.1 34.1
34.2
34.3
INTRODUCTION 34.1.1 Constants and Other Stuff 34.1.2 Basic Operations Factorial 34.1.3 Exponents and Logarithms 34.1.4 Polynomial Expansions 34.1.5 Practice Problems FUNCTIONS 34.2.1 Discrete and Continuous Probability Distributions 34.2.2 Basic Polynomials 34.2.3 Partial Fractions 34.2.4 Summation and Series 34.2.5 Practice Problems SPATIAL RELATIONSHIPS 34.3.1 Trigonometry 34.3.2 Hyperbolic Functions Practice Problems 34.3.3 Geometry
34.1 34.2 34.3 34.4 34.4 34.5 34.6 34.9 34.9 34.9 34.11 34.14 34.16 34.17 34.17 34.22 34.23 34.24
page 13
34.4
34.5
34.6
34.7
34.3.4 Planes, Lines, etc. 34.41 34.3.5 Practice Problems 34.43 COORDINATE SYSTEMS 34.45 34.4.1 Complex Numbers 34.45 34.4.2 Cylindrical Coordinates 34.48 34.4.3 Spherical Coordinates 34.49 34.4.4 Practice Problems 34.50 MATRICES AND VECTORS 34.51 34.5.1 Vectors 34.51 34.5.2 Dot (Scalar) Product 34.52 34.5.3 Cross Product 34.57 34.5.4 Triple Product 34.59 34.5.5 Matrices 34.59 34.5.6 Solving Linear Equations with Matrices 34.64 34.5.7 Practice Problems 34.65 CALCULUS 34.70 34.6.1 Single Variable Functions 34.70 Differentiation 34.70 Integration 34.73 34.6.2 Vector Calculus 34.77 34.6.3 Differential Equations 34.79 First-order Differential Equations 34.80 Guessing 34.81 Separable Equations 34.81 Homogeneous Equations and Substitution 34.82 Second-order Differential Equations 34.83 Linear Homogeneous 34.83 Nonhomogeneous Linear Equations 34.84 Higher Order Differential Equations 34.86 Partial Differential Equations 34.86 34.6.4 Other Calculus Stuff 34.87 34.6.5 Practice Problems 34.87 NUMERICAL METHODS 34.93 34.7.1 Approximation of Integrals and Derivatives from Sampled Data
34.93
34.8 34.9 34.10 34.11 34.12
34.7.2 Euler First-order Integration 34.7.3 Taylor Series Integration 34.7.4 Runge-Kutta Integration 34.7.5 Newton-Raphson to Find Roots LAPLACE TRANSFORMS 34.8.1 Laplace Transform Tables z-TRANSFORMS FOURIER SERIES TOPICS NOT COVERED (YET) REFERENCES/BIBLIOGRAPHY
34.94 34.94 34.95 34.95 34.96 34.96 34.99 34.102 34.102 34.103
page 14
35.
A BASIC INTRODUCTION TO ‘C’ . . . . . . . . . . . . . . . . . . . . . 35.1 35.1 35.2 35.3 35.4 35.5 35.6
35.7 35.8
35.9
36.
WHY USE ‘C’? BACKGROUND PROGRAM PARTS HOW A ‘C’ COMPILER WORKS STRUCTURED ‘C’ CODE ARCHITECTURE OF ‘C’ PROGRAMS (TOP-DOWN) 35.6.1 How? 35.6.2 Why? CREATING TOP DOWN PROGRAMS HOW THE BEAMCAD PROGRAM WAS DESIGNED 35.8.1 Objectives: 35.8.2 Problem Definition: 35.8.3 User Interface: Screen Layout (also see figure): Input: Output: Help: Error Checking: Miscellaneous: 35.8.4 Flow Program: 35.8.5 Expand Program: 35.8.6 Testing and Debugging: 35.8.7 Documentation Users Manual: Programmers Manual: 35.8.8 Listing of BeamCAD Program. PRACTICE PROBLEMS
35.1 35.2 35.2 35.11 35.13 35.14 35.14 35.15 35.16 35.17 35.18 35.18 35.18 35.18 35.19 35.20 35.20 35.20 35.21 35.22 35.22 35.24 35.25 35.25 35.26 35.26 35.26
UNITS AND CONVERSIONS . . . . . . . . . . . . . . . . . . . . . . . . . 36.1 36.1 36.2 36.3 36.4 36.5
HOW TO USE UNITS HOW TO USE SI UNITS THE TABLE ASCII, HEX, BINARY CONVERSION G-CODES
36.1 36.2 36.2 36.6 36.8
37.
ATOMIC MATERIAL DATA . . . . . . . . . . . . . . . . . . . . . . . . . . 37.1
37.
MECHANICAL MATERIAL PROPERTIES . . . . . . . . . . . . . . 37.1 37.1
38.
FORMULA SHEET
37.4
BIBLIOGRAPHY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38.1 38.1
TEXTBOOKS 38.1.1 Slotine and Li
38.1 38.1
page 15
38.1.2
39.
VandeVegte
38.1
TOPICS IN DEVELOPMENT . . . . . . . . . . . . . . . . . . . . . . . . . . 39.1 39.1 39.2 39.3 39.4 39.5 39.6 39.7 39.8 39.9 39.10 39.11 39.12 39.13 39.14 39.15 39.16 39.17 39.18 39.19 39.20 39.21 39.22 39.23 39.24 39.25 39.26
UPDATED DC MOTOR MODEL ANOTHER DC MOTOR MODEL BLOCK DIAGRAMS AND UNITS SIGNAL FLOW GRAPHS ZERO ORDER HOLD TORSIONAL DAMPERS MISC Nyquist Plot NICHOLS CHART BESSEL POLYNOMIALS ITAE ROOT LOCUS LYAPUNOV’S LINEARIZATION METHOD XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX SUMMARY PRACTICE PROBLEMS PRACTICE PROBLEM SOLUTIONS ASSGINMENT PROBLEMS REFERENCES BIBLIOGRAPHY
39.1 39.4 39.8 39.9 39.9 39.9 39.10 39.10 39.12 39.14 39.15 39.16 39.16 39.17 39.18 39.18 39.18 39.18 39.18 39.18 39.18 39.18 39.19 39.19 39.19 39.19
introduction - 1.1
1. INTRODUCTION
Topics:
Objectives:
1.1 BASIC TERMINOLOGY • Modeling • Explicit solutions • Numerical solutions • Empirical data • Simulation • Lumped parameter (masses and springs) • Distributed parameters (stress in a solid) • Continuous vs. Discrete • Linear vs. Non-linear
introduction - 1.2
• linearity and superposition • reversibility • through and across variables • Analog vs. Digital • process vs. controllers • Basic system categories below,
Static Dynamic
Stochastic Deterministic
Figure 1.1
Distributed Lumped
Model Classifications
Non-linear Linear Continuous Discrete
introduction - 1.3
• control system types: servo vs. regulating/process control • open loop vs. closed loop • disturbances • component variations • system error • analysis vs. design • mechatronics • embedded systems • real-time systems •
1.2 EXAMPLE SYSTEM • Servo control systems • Robot
1.3 SUMMARY •
1.4 PRACTICE PROBLEMS 1.
translation - 2.1
2. TRANSLATION
Topics: • Basic laws of motion • Gravity, inertia, springs, dampers, cables and pulleys, drag, friction, FBDs • System analysis techniques • Design case Objectives: • To be able to develop differential equations that describe translating systems.
2.1 INTRODUCTION If the velocity and acceleration of a body are both zero then the body will be static. If the applied forces are balanced, and cancel each other out, the body will not accelerate. If the forces are unbalanced then the body will accelerate. If all of the forces act through the center of mass then the body will only translate. Forces that do not act through the center of mass will also cause rotation to occur. This chapter will focus only on translational systems. The equations of motion for translating bodies are shown in Figure 2.1. These state simply that velocity is the first derivative of position, and velocity is the first derivative of acceleration. Conversely the acceleration can be integrated to find velocity, and the velocity can be integrated to find position. Therefore, if we know the acceleration of a body, we can determine the velocity and position. Finally, when a force is applied to a mass, an acceleration can be found by dividing the net force by the mass.
translation - 2.2
x,v,a
F
equations of motion d v ( t ) = ----- x ( t ) dt d 2 d a ( t ) = ----- x ( t ) = ----- v ( t ) dt dt OR x ( t ) = ∫ v ( t ) dt = ∫ ∫ a ( t ) dt v(t) =
∫ a ( t ) dt
(1) (2) (3) (4)
( t )(5) a(t) = F --------M where, x, v, a = position, velocity and acceleration M = mass of the body F = an applied force
Figure 2.1
Velocity and acceleration of a translating mass
An example application of these fundamental laws is shown in Figure 2.2. The initial conditions of the system are supplied (and are normally required to solve this type of problem). These are then used to find the state of the system after a period of time. The solution begins by integrating the acceleration, and using the initial velocity value for the integration constant. So at t=0 the velocity will be equal to the initial velocity. This is then integrated once more to provide the position of the object. As before, the initial position is used for the integration constant. This equation is then used to calculate the position after a period of time. Notice that the units are used throughout the calculations, this is a good practice for any engineer.
translation - 2.3
Given an initial (t=0) state of x=5m, v=2m/s, a=3ms-2, find the system state 5 seconds later assuming constant acceleration. The initial conditions for the system at time t=0 are, x 0 = 5m Note: units are very important and should nor–1 v 0 = 2ms mally be carried through all calculations. –2 a 0 = 3ms The constant acceleration can be integrated to find the velocity as a function of time. Note: v ( t ) = ∫ a 0 dt = a 0 t + C = a 0 t + v 0 (6) v ( t ) = a0 t + C v0 = a0 ( 0 ) + C v0 = C
Next, the velocity can be integrated to find the position as a function of time. a 2 (7) x ( t ) = ∫ v ( t ) dt = ∫ ( a 0 t + v 0 ) dt = -----0- t + v 0 t + x 0 2 This can then be used to calculate the position of the mass after 5 seconds. a 2 x ( 5 ) = -----0- t + v 0 t + x 0 2 –2 2 –1 3ms = ---------------- ( 5s ) + 2ms ( 5s ) + 5m 2 = 37.5m + 10m + 5m = 52.5m
Figure 2.2
Sample calculation for a translating mass, with initial conditions
2.2 MODELING When modeling translational systems it is common to break the system into parts. These parts are then described with Free Body Diagrams (FBDs). Common components that must be considered when constructing FBDs are listed below, and are discussed in following sections. • gravity and other fields - apply non-contact forces • inertia - opposes acceleration and deceleration • springs - resist deflection • dampers and drag - resist motion • friction - opposes relative motion between bodies in contact
translation - 2.4
• cables and pulleys - redirect forces • contact points/joints - transmit forces through up to 3 degrees of freedom
2.2.1 Free Body Diagrams Free Body Diagrams (FBDs) allow us to reduce a complex mechanical system into smaller, more manageable pieces. The forces applied to the FBD can then be summed to provide an equation for the piece. These equations can then be used later to do an analysis of system behavior. These are required elements for any engineering problem involving rigid bodies. An example of FBD construction is shown in Figure 2.3. In this case there is a mass sitting atop a spring. An FBD can be drawn for the mass. In total there are two obvious forces applied to the mass, gravity pulling the mass downward, and a spring pushing the mass upwards. The FBD for the spring has two forces applied at either end. Notice that the spring force, FR1, acting on the mass, and on the spring have an equal magnitude, but opposite direction.
M = 10 kg
FBD Spring:
FBD Mass:
K = 20 N/m
FR1 FR1
Mg FR2
Figure 2.3
Free body diagram example
2.2.2 Mass and Inertia In a static system the sum of forces is zero and nothing is in motion. In a dynamic system the sum of forces is not zero and the masses accelerate. The resulting imbalance in forces acts on the mass causing it to accelerate. For the purposes of calculation we create a virtual reaction force, called the inertial force. This force is also known as D’Alembert’s (pronounced as daa-lamb-bears) force. It can be included in calculations in one of two ways. The first is to add the inertial force to the FBD and then add it into the sum of
translation - 2.5
forces, which will equal zero. The second method is known as D’Alembert’s equation where all of the forces are summed and set equal to the inertial force, as shown in Figure 2.4. The acceleration is proportional to the inertial force and inversely proportional to the mass.
∑ F = Ma ∑ F – Ma = Figure 2.4
0
(Newton’s)
(11)
(D’Alembert’s)
(12)
D’Alembert’s and Newton’s equations
An application of Newton’s equation to FBDs can be seen in Figure 2.5. In the first case an inertial force is added to the FBD. This force should be in an opposite direction (left here) to the positive direction of the mass (right). When the sum of forces equation is used then the force is added in as a normal force component. In the second case Newton’s equation is used so the force is left off the FBD, but added to the final equation. In this case the sign of the inertial force is positive if the assumed positive direction of the mass matches the positive direction for the summation.
translation - 2.6
x
D’Alemberts’s form: d 2 Ma = M ----- x dt
d- 2 ---F = F – M ∑ x dt x = 0 or d- 2 ---+ F = – F + M ∑ x dt x = 0 +
F
M
Note: If using an inertial force then the direction of the force should be opposite to the positive motion direction for the mass. x
Newton’s form:
M
d- 2 ---F = F = M + ∑ x dt x
F or
+
d- 2 ---F = – F = – M ∑ x dt x
Note: If using Newton’s form the sign of the inertial force should be positive if the positive direction for the summation and the mass are the same, otherwise if they are opposite then the sign should be negative.
Figure 2.5
Free body diagram and inertial forces
An example of the application of Newton’s equation is shown in Figure 2.6. In this example there are two unbalanced forces applied to a mass. These forces are summed and set equal to the inertial force. Solving the resulting equation results in acceleration values in the ’x’ and ’y’ directions. In this example the forces and calculations are done in vector form for convenience and brevity.
translation - 2.7
5 F 1 = –4 N 0 If both forces shown act through the center of mass, what is the acceleration of the ball?
∑F
–7 F2 = –3 N 0
M=10kg
= F 1 + F 2 = Ma
5 –7 N + –4 – 3 N = ( 10Kg )a 0 0 –2 – 0.2 – 0.2 1 Kgm 1 m - ------- = – 0.7 ---∴a = ------------- – 7 N = – 0.7 ----------2 2 10Kg Kg s s 0 0 0
Figure 2.6
Sample acceleration calculation
// A program to sum forces and calculate the acceleration // define the given forces and mass F1 = [5, -4, 0]; F2 = [-7, -3, 0]; M = 10; function foo=Sum() // The sum of the applied forces foo = F1 + F2; endfunction A = Sum() / M; printf("The acceleration is ( %f, %f, %f) m/s^2 \n", A(1), A(2), A(3)); printf("The magnitude is |A| = %f m/s^2 \n", norm(A));
Figure 2.7
A Scilab calculation example
translation - 2.8
2.2.3 Gravity and Other Fields Gravity is a weak force of attraction between masses. In our situation we are in the proximity of a large mass (the earth) which produces a large force of attraction. When analyzing forces acting on rigid bodies we add this force to our FBDs. The magnitude of the force is proportional to the mass of the object, with a direction toward the center of the earth (down). The relationship between mass and force is clear in the metric system with mass having the units Kilograms (kg), and force the units Newtons (N). The relationship between these is the gravitational constant 9.81N/kg, which will vary slightly over the surface of the earth. The Imperial units for force and mass are both the pound (lb.) which often causes confusion. To reduce this confusion the unit for force is normally modified to be, lbf. An example calculation including gravitational acceleration is shown in Figure 2.8. The 5kg mass is pulled by two forces, gravity and the arbitrary force ’F’. These forces are described in vector form, with the positive ’z’ axis pointing upwards. To find the equations of motion the forces are summed. To eliminate the second derivative on the inertia term the equation is integrated twice. The result is a set of three vector equations that describe the x, y and z components of the motion. Notice that the units have been carried through these calculations.
translation - 2.9
Assume we have a mass that is acted upon by gravity and a second constant force vector. To find the position of the mass as a function of time we first define the gravity vector and position components for the system.
0 0 N- = g = -----0 Kg 0 – 9.81 – 9.81
m---2 s
x(t) X( t) = y(t) z( t)
F
M = 5Kg Fg
g
fx F = f y fz
F g = Mg
Next, sum the forces and set them equal to inertial resistance. d- 2 ---F = Mg + F = M ∑ dt X ( t ) fx 0 x(t) d 2 m5Kg 0 ---+ f = 5Kg ----- y ( t ) y dt 2 – 9.81 s z(t) fz fx 0 x( t) –1 d- 2 m ---fy = y ( t ) 0 ----2- + 0.2Kg dt z(t) – 9.81 s fz Integrate twice to find the position components. Note: When an engineer solves a problem they vx fx 0 will always be looking 0 x(t) –1 d m at the equations and f y t + v y = ----- y ( t ) 0 ----2- + 0.2Kg dt unknowns. In this case 0 – 9.81 s z ( t ) there are three equafz vz tions, and there are 9 0 vx constants/givens fx, fy, fx x0 0 0 x ( t ) fz, vx0, vy0, xz0, x0, y0 2 1--m- + 0.2Kg – 1 ---fy t + vy t + y0 = y ( t ) 0 and z0. There are 4 2 2 0 s variables/unknowns x, – 9.81 z(t) fz z0 vz y, z and t. Therefore 2 0.1f x t + v x t + x 0 0 with 3 equations and 4 0 unknowns only one x(t) 2 value (4-3) is required m 0.1f y t + v y t + y 0 y(t) = to find all of the 0 z(t ) unknown values. 9.81- + 0.1f t 2 + v t + z –-----------z z0 0 2 Figure 2.8
Gravity vector calculations
translation - 2.10
Like gravity, magnetic and electrostatic fields can also apply forces to objects. Magnetic forces are commonly found in motors and other electrical actuators. Electrostatic forces are less common, but may need to be considered for highly charged systems.
Given, 3 F1 = 4 N 0
0 Ng = – 9.81 -----Kg 0
FBD: M = 2Kg
Find the acceleration.
F1
M
g
ans. 1.5 a = – 7.81 m ---s 0
Figure 2.9
Drill problem: find the acceleration of the FBD
2.2.4 Springs Springs are typically constructed with elastic materials such as metals and plastics, that will provide an opposing force when deformed. The properties of the spring are determined by the Young’s modulus (E) of the material and the geometry of the spring. A primitive spring is shown in Figure 2.10. In this case the spring is a solid member. The relationship between force and displacement is determined by the basic mechanics of materials relationship. In practice springs are more complex, but the parameters (E, A and L) are combined into a more convenient form. This form is known as Hooke’s Law.
translation - 2.11
L δ = ------- F EA
F
EA F = ------- δ L F = Kδ
Figure 2.10
δ
L
(Hooke’s law)
A solid member as a spring
Hooke’s law does have some limitations that engineers must consider. The basic equation is linear, but as a spring is deformed the material approaches plastic deformation, and the modulus of elasticity will change. In addition the geometry of the object changes, also changing the effective stiffness. Springs are normally assumed to be massless. This allows the inertial effects to be ignored, such as a force propagation delay. In applications with fast rates of change the spring mass may become significant, and they will no longer act as an ideal device. The cases for tension and compression are shown in Figure 2.11. In the case of compression the spring length has been made shorter than its’ normal length. This requires that a compression force be applied. For tension, both the displacement from neutral and the required force reverse direction. It is advisable when solving problems to assume a spring is either in tension or compression, and then select the displacement and force directions accordingly.
translation - 2.12
∆ x = deformed length
compression as positive:
ASIDE: a spring has a natural or undeformed length. When at this length it is neither in tension or compression
∆x
Fc
Ks
∆x
Fc
Ks
F c = –K s ∆ x
∆x
Fc
Ks tension as positive:
Fc = Ks ∆ x
F c = –K s ∆ x
Ks
Ft
Ft = Ks ∆ x
∆x Ks
Ft
Ft = –Ks ∆ x
∆x Ks
Ft
∆x
Ft = –Ks ∆ x
NOTE: the symbols for springs, resistors and inductors are quite often the same or similar. You will need to remember this when dealing with complex systems - and especially in this book where we deal with both types of components.
Figure 2.11
Sign conventions for spring forces and displacements
Previous examples have shown springs with displacements at one end only. In Figure 2.12, springs are shown that have movement at both ends. In these cases the sign of the force applied to the spring is selected with reference to the assumed compression or tension. The primary difference is that care is required to correctly construct the expressions for the tension or compression forces. In all cases the forces on the springs must be assumed and drawn as either tensile or compressive. In the first example the displacement and forces are tensile. The displacement at the left is tensile, so it will be positive, but on the right hand side the displacement is compressive so it is negative. In the second exam-
translation - 2.13
ple the force and both displacements are shown as tensile, so the terms are both positive. In the third example the force is shown as compressive, while the displacements are both shown as tensile, so both terms are negative.
F
F
F
∆x1
∆x1
∆x1
Ks
Ks
Ks
∆ x2
∆ x2
∆ x2
F
F = Ks ( ∆ x1 – ∆ x 2 )
F
F = Ks ( ∆ x 1 + ∆ x 2 )
F
F = Ks ( – ∆ x1 – ∆ x2 )
Aside: it is useful to assume that the spring is either in tension or compression, and then make all decisions based on that assumption.
Figure 2.12
Examples of forces when both sides of a spring can move
The example in Figure 2.13 shows two masses separated by a spring. In the first example the spring is assumed to be in tension. When x1 becomes positive it will put the spring in compression, so it is made negative, however a positive x2 will put the spring in tension, so it remains positive. In the second case the spring is assumed to be in compression and this time x2 will put it in tension so it is made negative.
translation - 2.14
Consider the two masses below separated by a spring. Ks M1
M2 x1
x2
The system can be reduced to free body diagrams assuming the spring is tension.
Ks ( – x1 + x2 )
M1
M2
x1
x2
Note: In this example the spring is assumed to be in tension and the signs of the magnitude are made negative for terms that result in compression for positive changes. The system can be reduced to free body diagrams assuming the spring is in compression.
Ks ( x1 – x2 )
M1 x1
Figure 2.13
M2 x2
Drawing FBDs with interconnecting springs
Sometimes the true length of a spring is important, and the deformation alone is insufficient. In these cases the deformation can be defined as a deformed and undeformed length, as shown in Figure 2.14.
translation - 2.15
∆ x = l1 – l 0 where,
∆ x = deformation l 0 = the length when undeformed l 1 = the length when deformed
Figure 2.14
Using the actual spring length
In addition to providing forces, springs may be used as energy storage devices. Figure 2.15 shows the equation for energy stored in a spring.
2
K ( ∆x ) E P = -----------------2
Figure 2.15
Energy stored in a spring
translation - 2.16
Given, Ks
NK s = 10 --m
Ks
∆ x = 0.1m
F
∆x Find F assuming the springs are normally 4m long when unloaded
10m
Aside: it can help to draw a FBD of the pin.
ans. F=2N
Figure 2.16
Drill problem: Deformation of a two spring system
translation - 2.17
Draw the FBDs and the equations of motion for the masses F
Ks M1
M2 x1
x2
ans. ·· x1 ( M1 ) + x1 ( Ks ) + x2 ( –Ks ) = F ·· x 1 ( K s ) + x2 ( –M2 ) + x2 ( – K s ) = F
Figure 2.17
Drill problem: Draw the FBDs for the masses
translation - 2.18
2.2.5 Damping and Drag A damper is a component that resists motion. The resistive force is relative to the rate of displacement. As mentioned before, springs store energy in a system but dampers dissipate energy. Dampers and springs are often used to compliment each other in designs. Damping can occur naturally in a system, or can be added by design. The physical damper pictured in Figure 2.18 uses a cylinder that contains a fluid. There is a moving rod and piston that can slide within the cylinder. As the piston moves, fluid is forced through a small orifice. When moved slowly the fluid moves easily, but when moved quickly the pressure required to force the fluid through the orifice rises. This rise in pressure results in a higher force of resistance. In ideal terms any motion would result in an opposing force. In reality there is also a break-away force that needs to be applied before motion begins. Other manufacturing variations could also lead to other small differences between dampers. Normally these cause negligible effects.
orifice motion fluid
Figure 2.18
piston
fluid
A physical damper
The basic equation for an ideal damper in compression is shown in Figure 2.19. In this case the force and displacement are both compressive. The force is calculated by multiplying the damping coefficient by the velocity, or first derivative of position. Aside from the use of the first derivative of position, the analysis of dampers in systems is similar to that of springs.
translation - 2.19
x Kd
d F = K d ----- x dt
F
(15)
Aside: The symbol shown is typically used for dampers. It is based on an old damper design called a dashpot. It was constructed using a small piston inside a larger pot filled with oil.
Figure 2.19
An ideal damper
Damping can also occur when there is relative motion between two objects. If the objects are lubricated with a viscous fluid (e.g., oil) then there will be a damping effect. In the example in Figure 2.20 two objects are shown with viscous friction (damping) between them. When the system is broken into free body diagrams the forces are shown to be a function of the relative velocities between the blocks.
x1
· · Fd = Kd ( x1 – x2 ) Kd
· · Fd = Kd ( x1 – x2 )
x2
Aside: Fluids, such as oils, have a significant viscosity. When these materials are put in shear they resist the motion. The higher the shear rate, the greater the resistance to flow. Normally these forces are small, except at high velocities.
Figure 2.20
Viscous damping between two bodies with relative motion
A damping force is proportional to the first derivative of position (velocity). Aerodynamic drag is proportional to the velocity squared. The equation for drag is shown in
translation - 2.20
Figure 2.21 in vector and scalar forms. The drag force increases as the square of velocity. Normally, the magnitude of the drag force coefficient ’D’ is approximated theoretically and/or measured experimentally. The drag coefficient is a function of material type, surface properties, object size and object geometry.
v F
Figure 2.21
F = –D v v
Aerodynamic drag
The force is acting on the cylinder, resulting in the velocities given below. What is the applied force? d- x = 0.1 m ------dt 1 s
d- x = – 0.3 m ------dt 2 s
F
F
k d = 0.1 Ns -----m
ans. F = – 0.02N
Figure 2.22
Drill problem: Find the required forces on the damper
translation - 2.21
2.2.6 Cables And Pulleys Cables are useful when transmitting tensile forces or displacements. The centerline of the cable becomes the centerline for the force. And, if the force becomes compressive, the cable becomes limp, and will not transmit force. A cable by itself can be represented as a force vector. When used in combination with pulleys, a cable can redirect a force vector or multiply a force. Typically we assume that a pulley is massless and frictionless (in the rotation chapter we will assume they are not). If this is the case then the tension in the cable on both sides of the pulley are equal, as shown in Figure 2.23.
T1 for a massless frictionless pulley T1 = T2 T2
Figure 2.23
Tension in a cable over a massless frictionless pulley
If we have a pulley that is fixed and cannot rotate, the cable must slide over the surface of the pulley. In this case we can use the coefficient of friction to determine the relative ratio of forces between the sides of the pulley, as shown in Figure 2.24.
T1
T2
Figure 2.24
∆θ
Friction of a belt over a fixed drum
T2 µ ( ∆θ ) ----- = e k T1
translation - 2.22
Given,
µ s = 0.35
µ k = 0.2
M = 1Kg Find F to start the mass moving up and down, and then the force required to maintain a low velocity motion.
M F
ans. F up = 9.81e
π 0.2 --- 2
N
9.81N F down = --------------e
Figure 2.25
π 0.2 --- 2
Drill problem: Friction forces for belts on drums
Although the discussion in this section has focused on cables and pulleys, the theory also applies to belts over drums.
translation - 2.23
2.2.7 Friction Viscous friction was discussed before, where a lubricant would provide a damping effect between two moving objects. In cases where there is no lubricant, and the touching surfaces are dry, dry coulomb friction may result. In this case the surfaces will stick in place until a maximum force is overcome. After that the object will begin to slide and a constant friction force will result. Figure 2.26 shows the classic model for (dry Coulomb) friction. The force on the horizontal axis is the force applied to the friction surfaces while the vertical axis is the resulting friction force. Beneath the slip force the object will stay in place. When the slip force is exceeded the object will begin to move, and the resulting kinetic friction force will be relatively constant. (Note: If the object begins to travel much faster then the kinetic friction force will decrease.) It is common to forget that friction forces are bidirectional, but it always opposes the applied force or motion. The friction force is a function of the coefficient of friction and the normal force across the contact surfaces. The coefficient of friction is a function of the materials, surface texture and surface shape.
F result
Block begins to slip and the applied force exceeds the resultant and acceleration begins.
Fs Fk
Fapplied
Fs
Fg N
F
Fk = µk N F k, F s
Fs ≤ µs N
Note: When solving problems with friction remember that the friction force will always equal the applied force (not the maximum force) until slip occurs. After that the friction is approximately constant. In addition, the friction forces direction opposes applied forces, and motion.
Figure 2.26
Dry friction
translation - 2.24
Many systems use kinetic friction to dissipate energy from a system as heat, sound and vibration.
Find the acceleration of the block for both angles indicated.
µ s = 0.3 µ k = 0.2
10 kg
θ
ans.
Figure 2.27
Drill problem: find the accelerations
θ1 = 5 °
θ 2 = 35 °
translation - 2.25
2.2.8 Contact Points And Joints A system is built by connecting components together. These connections can be rigid or moving. In solid connections all forces and moments are transmitted and the two pieces act as a single rigid body. In moving connections there is at least one degree of freedom. If we limit this to translation only, there are up to three degrees of freedom, x, y and z. In any direction there is a degree of freedom, a force or moment cannot be transmitted. When constructing FBDs for a system we must break all of the components into individual rigid bodies. Where the mechanism has been broken the contact forces must be added to both of the separated pieces. Consider the example in Figure 2.28. At joint A the forces are written as two components in the x and y directions. For joint B the force components with equal magnitudes but opposite directions are added to both FBDs.
F Ay
F By F Ax
A
F Bx
M1 B M1 g
M2 g
M2 F Bx F By
Figure 2.28
Note: Don’t forget that forces on connected FBDs should have equal magnitudes, but opposite directions.
FBDs for systems with connected members
2.3 SYSTEM EXAMPLES An orderly approach to system analysis can simplify the process of analyzing large systems. The list of steps below is based on general observations of good problem solving techniques.
translation - 2.26
1. Assign letters/numbers to designate force components (if not already done) this will allow you to refer to components in your calculations. 2. Define positions and directions for any moving masses. This should include the selection of reference points. 3. Draw free body diagrams for each component, and add forces (inertia is optional). 4. Write equations for each component by summing forces. 5.(next chapter) Combine the equations by eliminating unwanted variables. 6.(next chapter) Develop a final equation that relates input (forcing functions) to outputs (results).
Note: When deriving differential equations, the final value can be checked for errors using unit analysis. This method involves replacing variables with their unit equivalents. All the units should match. ·· · e.g., x 2 ( M 2 ) + x 2 ( B ) + x 2 ( K s2 ) + x 1 ( – K s2 ) = F m m Ns N N ∴----2 ( Kg ) + ---- ------ + m ---- + m – ---- = N s m m m s ∴N + ( N ) + ( N ) + ( – N ) = N
coefficient
units
F
KgmN = ----------2 s
Ks
N--m
Kd
Ns -----m
M
Kg
The units match, so there are no obvious problems.
Consider the cart in Figure 2.29. On the left is a force, it is opposed by a spring and damper on the right. The basic problem definition already contains all of the needed definitions, so no others are required. The FBD for the mass shows the applied force and the reaction forces from the spring and damper. When the forces are summed the inertia is on the right side of the equation in Newton’s form. This equation is then rearranged to a second-order non-homogeneous differential equation.
translation - 2.27
x
Given the system diagram;
Kd F M1
The FBD for the cart is
K d x·
F M 1 x··
Ks
M1
Ksx
The forces for the cart are in a single direction and can be summed as, + ∑ Fx = – F – Kd x· – Ks x = M1 x·· This equation can be rearranged to a second-order non-homogeneous diff. eqn. Kd K Fx·· + ------- x· + -------s- x = ------M1 M1 M1 Aside: later on we will solve the differential equations, or use other methods to determine how the system will behave. It is useful to have all of the ’output’ variables for the system on the left hand side, and everything else on the other.
Figure 2.29
A simple translational system example
translation - 2.28
Develop the equation relating the input force to the motion (in terms of x) of the lefthand cart for the problem below. x1 x2 K d1
K d2
F M1
Figure 2.30
K s1
M2
K s2
Drill problem: Find the differential equations
A simplified model of an elevator (M1) and a passenger (M2) are shown in Figure 2.31. In this example many of the required variables need to be defined. These are added to the FBDs. Care is also taken to ensure that all forces between bodies are equal in magnitude, but opposite in direction. The wall forces are ignored because they are statically indeterminate, and x-axis force components are irrelevant to the forces in the y-axis.
translation - 2.29
M1
M2 Kd K S2
K S1
Assign required quantities and draw the FBDs M2 g · · FD = Kd ( y2 – y1 ) ·· M1 y1
y2
M1 g F S2 = K s2 ( y 1 – y 2 ) FD
·· M2 y2 F S2
F S1 = – K s1 y 1
y1
Figure 2.31
A multi-body translating system (an elevator with a passenger)
The forces on the FBDs are summed and the equations are expanded in Figure 2.32.
translation - 2.30
Now, sum the forces in vector form, and substitute relationships,
∑ FM ∑ FM
1
2
= F S1 + F S2 + M 1 g + F D = M 1 a 1 = – F S2 + M 2 g – F D = M 2 a 2
At this point the equations are expanded d K S1 ( – y 1 ) + K S2 ( y 2 – y 1 ) + M 1 ( – 9.81 ) + K d ----- ( y 2 – y 1 ) = M 1 a y dt d – K S2 ( y 2 – y 1 ) + M 2 ( – 9.81 ) – K d ----- ( y 2 – y 1 ) = M 2 a y dt Figure 2.32
Equations for the elevator
translation - 2.31
Write the differential equations for the system below. Assume it is in motion
A
B
M2
µ k1 M1
K S1
µ k2
ans.
Figure 2.33
Drill problem: A more complex translational systems
Consider the springs shown in Figure 2.34. When two springs are combined in this manner they can be replaced with a single equivalent spring. In the parallel spring combination the overall stiffness of the spring would increase. In the series spring combination the overall stiffness would decrease.
translation - 2.32
Parallel K S1
Series
K S2 K S1
M
K S2
M
Figure 2.34
Springs in parallel and series (kinematically)
Figure 2.35 shows the calculations required to find a spring coefficient equivalent to the two springs in series. The first step is to draw a FBD for the mass at the bottom, and for a point between the two springs, P. The forces for both of these are then summed. The next process is to combine the two equations to eliminate the height variable created for point P. After this, the equation is rearranged into Hooke’s law, and the equivalent spring coefficient is found.
translation - 2.33
First, draw FBDs for P and M and sum the forces assuming the system is static. K S1 y 2
P
+ ∑ F y = K S1 y 2 – K S2 ( y 1 – y 2 ) = 0 (1) K S2 ( y 1 – y 2 )
K S1
K S2 ( y 1 – y 2 )
K S2
M +
∑ Fy
P
= K S2 ( y 1 – y 2 ) – F g = 0 (2)
Fg
M y1
Next, rearrange the equations to eliminate y2 and simplify. (1) becomes
K S2 ( y 1 – y 2 ) – Fg = 0 Fg y 1 – y 2 = --------K S2 Fg y 2 = y 1 – ---------K S2
(2) becomes
(3)
K S1 y 2 – K S2 ( y 1 – y 2 ) = 0
(4) y 2 ( K S1 + K S2 ) = y 1 K S2 Fg sub (3) into (4) y – --------- ( K + K ) = y K S2 1 S2 1 K S2 S1 Fg K S2 y 1 – ---------- = y 1 ---------------------------K S2 K S1 + K S2 K S2 F g = y 1 1 – ---------------------------- K S2 K S1 + K S2 K S1 + K S2 – K S2 F g = y 1 -------------------------------------------- K S2 K S1 + K S2 K S1 K S2 F g = y 1 ---------------------------- K S1 + K S2 Finally, consider the basic spring equation to find the equivalent spring coefficient. K S1 K S2 K equiv· = ---------------------------K S1 + K S2 Figure 2.35
Calculation of an equivalent spring coefficient for springs in series
y2
translation - 2.34
K S1
K S2
F
ans.
Figure 2.36
Drill problem: Find an equivalent spring for the springs in parallel
Consider the drill problem. When an object has no mass, the force applied to one side of the spring will also be applied to the other. The only factor that changes is displacement.
translation - 2.35
Show that a force applied to one side of a massless spring is the reaction force at the other side.
ans.
Figure 2.37
Drill problem: Prove that the force on both sides is equal
2.4 OTHER TOPICS Designing a system in terms of energy content can allow insights not easily obtained by the methods already discussed. Consider the equations in Figure 2.38. These equations show that the total energy in the system is the sum of kinetic and potential energy. Kinetic energy is half the product of mass times velocity squared. Potential energy in translating systems is a force magnitude multiplied by a distance (that force was applied over). In addition, the power, or energy transfer rate is the force applied multiplied by the velocity.
translation - 2.36
E = EP + EK 2 Mv E K = ----------2
(7)
E P = Fd = Mgd
(9)
d- E P = Fv = ---dt
(10)
Figure 2.38
(8)
Energy and power equations for translating masses
2.5 SUMMARY • FBDs are useful for reducing complex systems to simpler parts. • Equations for translation and rotation can be written for FBDs. • The equations can be integrated for dynamic cases, or solved algebraically for static cases.
2.6 PRACTICE PROBLEMS 1. If a spring has a deflection of 6 cm when exposed to a static load of 200N, what is the spring constant?
translation - 2.37
2. Derive the effective damping coefficients for the pairs below from basic principles, a)
Kd1
Kd2
b)
Kd1
Kd2
3. Write a differential equation for the mass pictured below. x
M
F
B
4. Write the differential equations for the translating system below. F
Ks M1
M2
translation - 2.38
5. Write the differential equations for the system below. x1
x2
K d1 K s1
M1
K s2
F
M2 B
6. Write the differential equations for the system given below. Kd
Ks M1
F
M2
B1
B2
7. Write the differential equations for the system below. x1
x2
K d1 K s1
M1
K s2
F
M2 B
8. Write the differential equations for the system below. x1
x2
K d1 K s1
K d2 M1
K s2
K d3 M2
F
K s3
translation - 2.39
9. Write the differential equations for the system below. x2
K s2 M2 K d1
F B x1
K s1
M1
10. Write the differential equations for the system below. x2
K s2 M2
F µ s, µ k
K d1 K s1
M1
x1
11. Write the differential equations for the system below. F x1
M1
K s1
K d1
x2
M2
K s2
K d2
translation - 2.40
12. Write the differential equations for the system below. Assume that the pulley is massless and frictionless and that the system begins undeflected. x K s1
R
M B
K s2
13. Write the differential equations for the system below. In this system the upper mass, M1, is between a spring and a cable and there is viscous damping between the mass and the floor. The suspended mass, M2, is between the cable and a damper. The cable runs over a massless, frictionless pulley. x1 Ks
R
M1 B
x2
M2
Kd
translation - 2.41
14. Write the differential equations for the system below. x1
K s1 M1
µ s, µ k
x2
M2
K s2
2.7 PRACTICE PROBLEM SOLUTIONS 1. Ks = 33.3 N/cm = 3333 N/m 2. a)
K eq = K d1 + K d2
3. F ·· · B x + x ----- = – ----M M 4. Ks –Ks ·· F x 1 + x 1 ------- + x 2 --------- = ------M1 M1 M1 Ks –Ks ·· x 2 + x 2 ------- + x 1 --------- = 0 M 2 M2
b)
K d1 K d2 K eq = -----------------------K d1 + K d2
translation - 2.42
5. K s1 + K s2 – K s2 ·· · K d1 x 1 + x 1 --------- + x 1 ----------------------- + x 2 ----------- = 0 M1 M1 M1 K s2 – K s2 ·· · B F x 2 + x 2 ------- + x 2 -------- + x 1 ----------- = ------M2 M2 M2 M2 6. Ks –K s ·· · Kd + B1 x 1 + x 1 ------------------- + x 1 ------- + x 2 --------- = 0 M1 M 1 M1 Ks –K s ·· · B2 –F x 2 + x 2 ------- + x 2 ------- + x 1 --------- = ------M2 M2 M2 M2 7. K s1 – K s2 ·· · K d1 x 1 + x 1 --------- + x 1 -------- + x 2 ----------- = 0 M1 M1 M1 Ks F ·· · B ·· · B x 1 + x 1 ------- + x 2 + x 2 ------- + x 2 ------- = ------M2 M2 M2 M2
translation - 2.43
8. ·· M 1 x1
FBDs: · – K d1 x 1
M1
– K s1 x 1 For M1:
+
· · K d2 ( x 1 – x 2 ) K s2 ( x 1 – x 2 )
· K d3 x 2 M2
F · · · ·· ∑ F = – Kd1 x1 – Ks1 x1 – Kd2 ( x1 – x2 ) – Ks2 ( x1 – x 2 ) = M1 x1
K s3 x 2 ·· M2 x2
·· · · x 1 ( M 1 ) + x 1 ( K d1 + K d2 ) + x 1 ( K s1 + K s2 ) + x 2 ( – K d2 ) + x 2 ( – K s2 ) = 0 K s1 + K s2 – K s2 ·· · K d1 + K d2 · – K d2 x 1 + x 1 ------------------------ + x 1 ----------------------- + x 2 ------------ + x 2 ----------- = 0 M1 M1 M1 M1 For M2: +
∑F
· · · · = K d2 ( x 1 – x 2 ) + K s2 ( x 1 – x 2 ) + F – K d3 x 2 – K s3 x 2 = M 2 x 2 ·· · · x 2 ( M 2 ) + x 2 ( K d2 + K d3 ) + x 2 ( K s2 + K s3 ) + x 1 ( – K d2 ) + x 1 ( – K s2 ) = F K s2 + K s3 – K s2 ·· · K d2 + K d3 · – K d2 x 2 + x 2 ------------------------ + x 2 ----------------------- + x 1 ------------ + x 1 ----------- = F M2 M2 M2 M2
9. ·· · · x 1 ( M 1 ) + x 1 ( K d1 + B ) + x 1 ( K s1 ) + x 2 ( – B ) = 0 K s1 · – B ·· · K d1 + B- - + x 2 ------- = 0 + x 1 ------x 1 + x 1 ----------------- M1 M1 M 1 ·· · · x 2 ( M 2 ) + x 2 ( B ) + x 2 ( K s2 ) + x 1 ( – B ) = F K s2 ·· · B · –B F x 2 + x 2 ------- + x 2 -------- + x 1 ------- = ------ M 2 M2 M 2 M2
translation - 2.44
10. ·· · x 1 ( M 1 ) + x 1 ( K d1 ) + x 1 ( K s1 ) = FF K s1 FF ·· · K d1 x 1 + x 1 --------- + x 1 -------- = ------ M1 M1 M1 ·· x 2 ( M 2 ) + x 2 ( K s2 ) = F – F F K s2 F – FF ·· x 2 + x 2 -------- = ---------------M2 M2 where,
FF ≤ µs M2 g
if
· · x1 = x2
· · x1 – x2 F F = µ k M 2 g -----------------· · - x1 – x2
if
· · x1 ≠ x2
11. (assuming no gravity ·· · · x 1 ( M 1 ) + x 1 ( K d1 ) + x 1 ( K s1 ) + x 2 ( – K d1 ) + x 2 ( – K s1 ) = F K s1 – K s1 ·· · K d1 · – K d1 F x 1 + x 1 --------- + x 1 -------- + x 2 ------------ + x 2 ----------- = ------ M1 M1 M1 M1 M1 ·· · · x 2 ( M 2 ) + x 2 ( K d1 + K d2 ) + x 2 ( K s1 + K s2 ) + x 1 ( – K d1 ) + x 1 ( – K s1 ) = 0 K s1 + K s2 – K s1 ·· · K d1 + K d2 · – K d1 x 2 + x 2 ------------------------ + x 2 ----------------------- + x 1 ------------ + x 1 ----------- = 0 M2 M2 M2 M2 12. if ( x ≥ 0 )
T = 0
if ( x < 0 )
T = –K s2 x
K s1 T ·· · B x + x ------- + x -------- = ------M1 M1 M1
translation - 2.45
13. Ks x 1
FBDs:
M1
· Bx 1
For M1:
+
For M2: +
For T:
·· M1 x1
· ·· ∑ F = – Ks x1 – Bx 1 + T = M1 x1 ·· · x1 ( M1 ) + x1 ( B ) + x1 ( Ks ) = T Ks ·· · B T x 1 + x 1 ------- + x 1 ------- = ------ M 1 M 1 M1
∑F
T
T
· ·· = T + Kd x2 – M2 g = –M2 x2 ·· · x2 ( – M2 ) + x2 ( –K d ) = T – M 2 g T – M2 g ·· · Kd x 2 + x 2 ------- = ------------------- M 2 –M2
if T <= 0 then T = 0N if T > 0 x1 = x2
14. if ( ( x 2 – x 1 ) < 0 )
T = 0
· if ( x 1 = 0 )
F F ≤ M 1 gµ s
· if ( x 1 ≠ 0 )
· x1 F F = M 1 gµ k ------·x1
T – FF K s1 ·· x 1 + x 1 -------- = --------------M1 M1 K s2 ·· –T x 2 + x 2 -------- = ------- – g M2 M2
2.8 ASSIGNMENT PROBLEMS
M2 M2 g
·· M2 x2 · Kd x2
differential equations - 3.1
3. ANALYSIS OF DIFFERENTIAL EQUATIONS
Topics: • First and second-order homogeneous differential equations • Non-homogeneous differential equations • First and second-order responses • Non-linear system elements • Design case Objectives: • To develop explicit equations that describe a system response. • To recognize first and second-order equation forms.
3.1 INTRODUCTION In the previous chapter we derived differential equations of motion for translating systems. These equations can be used to analyze the behavior of the system and make design decisions. The most basic method is to select a standard input type (a forcing function) and initial conditions, and then solve the differential equation. It is also possible to estimate the system response without solving the differential equation as will be discussed later. Figure 3.1 shows an abstract description of a system. The basic concept is that the system changes the inputs to outputs. Say, for example, that the system to be analyzed is an elevator. Inputs to the system would be the mass of human riders and desired elevator height. The output response of the system would be the actual height of the elevator. For analysis, the system model could be developed using differential equations for the motor, elastic lift cable, mass of the car, etc. A basic test would involve assuming that the elevator starts at the ground floor and must travel to the top floor. Using assumed initial values and input functions the differential equation could be solved to get an explicit equation for elevator height. This output response can then be used as a guide to modify design choices (parameters). In practice, many of the assumptions and tests are mandated by law or by groups such as Underwriters Laboratories (UL), Canadian Standards Association (CSA) and the European Commission (CE).
differential equations - 3.2
inputs
system
forcing function
differential equations
Figure 3.1
outputs response function
Note: By convention inputs are on the left, and outputs are on the right.
A system with and input and output response
There are several standard input types used to test a system. These are listed below in order of relative popularity with brief explanations. • step - a sudden change of input, such as very rapidly changing a desired speed from 0Hz to 50Hz. • ramp - a continuously increasing input, such as a motor speed that increases constantly at 10Hz per minute. • sinusoidal - a cyclic input that varies continuously, such as wave height that is continually oscillating at 1Hz. • parabolic - an exponentially increasing input, such as a motor speed that is 2Hz at 1 second, 4rad/s at 2 seconds, 8rad/s at 3 seconds, etc. After the system has been modeled, an input type has been chosen, and the initial conditions have been selected, the system can be analyzed to determine its behavior. The most fundamental technique is to integrate the differential equation(s) for the system.
3.2 EXPLICIT SOLUTIONS Solving a differential equation results in an explicit solution. This equation provides the general response as a function of time, but it can also be used to find frequencies and other characteristics of interest. This section will review techniques used to integrate first and second-order homogenous differential equations. These equations correspond to systems without inputs, also called unforced systems. Non-homogeneous differential equations will also be reviewed. The basic types of differential equations are shown in Figure 3.2. Each of these equations is linear. On the left hand side is the integration variable ’x’. If the right hand side is zero, then the equation is homogeneous. Each of these equations is linear because each of the terms on the left hand side is simply multiplied by a linear coefficient.
differential equations - 3.3
· Ax + Bx = 0 · Ax + Bx = Cf ( t ) ·· · Ax + Bx + Cx = 0 ·· · Ax + Bx + Cx = Df ( t )
Figure 3.2
first-order homogeneous first-order non-homogeneous second-order homogeneous second-order non-homogeneous
Standard equation forms
A general solution for a first-order homogeneous differential equation is given in Figure 3.3. The solution begins with the solution of the homogeneous equation where a general form is ’guessed’. Substitution leads to finding the value of the coefficient ’Y’. Following this, the initial conditions for the equation are used to find the value of the coefficient ’X’. Notice that the final equation will begin at the initial displacement, but approach zero as time goes to infinity. The e-to-the-x behavior is characteristic for a firstorder response.
differential equations - 3.4
Given the general form of a first-order homogeneous equation, x ( 0 ) = x0 and Ax· + Bx = 0 Guess a solution form and solve. – Yt – Yt x = Xe x· = – YX e A ( – YX e
– Yt
) + B ( Xe
– Yt
) = 0
A ( –Y ) + B = 0 Y = B --A Therefore the general form is, –B ---t A x h = Xe
initial condition
Note: The general form below is useful for finding almost all homogeneous equations x h ( t ) = Xe
Next, use the initial conditions to find the remaining unknowns. –B ---t A x h = Xe –B ---0 A x 0 = Xe x0 = X Therefore the final equation is, x ( t ) = x0 e
Figure 3.3
B – --- t A
General solution of a first-order homogeneous equation
– Yt
differential equations - 3.5
Solve the following differential equation given the initial condition. x(0) = 3 x· + 2x = 0
ans.
Figure 3.4
x ( t ) = 3e
– 2t
Drill Problem: First order homogeneous differential equation
The general solution to a second-order homogeneous equation is shown in Figure 3.5. The solution begins with a guess of the homogeneous solution, and the solution of a quadratic equation. There are three possible cases that result from the solution of the quadratic equation: different but real roots; two identical real roots; or two complex roots. The three cases result in three different forms of solutions, as shown. The complex result is the most notable because it results in sinusoidal oscillations. It is not shown, but after the homogeneous solution has been found, the initial conditions need to be used to find the remaining coefficient values.
differential equations - 3.6
Given, Ax·· + Bx· + Cx = 0
x ( 0 ) = x0
and
x· ( 0 ) = v 0
Guess a general equation form and substitute it into the differential equation, 2 Yt Yt Yt x··h = Y Xe x h = Xe x· h = YXe 2 Yt Yt Yt A ( Y Xe ) + B ( YXe ) + C ( Xe ) = 0 2 A(Y ) + B( Y) + C = 0 2 2 – B ± ( B ) – 4 ( AC ) – B ± B – 4AC Y = ---------------------------------------------------- = -----------------------------------------2A 2A Note: There are three possible outcomes of finding the roots of the equations: two different real roots, two identical real roots, or two complex roots. Therefore there are three fundamentally different results. If the values for Y are both real, but different, the general form is, R1 t R2 t xh = X1 e + X2 e Note: The initial conditions are then used to find the values for X1 and X2.
Y = R 1, R 2
If the values for Y are both real, and identical, the general form is, R1t R1 t xh = X1 e + X 2 te The initial conditions are then used to find the values for X1 and X2.
Y = R 1, R 1
If the values for Y are complex, the general form is,
σt x h = X 3 e cos ( ω t + X 4 ) The initial conditions are then used to find the values of X3 and X4.
Y = σ ± ωj
Figure 3.5
Solution of a second-order homogeneous equation
As mentioned above, a complex solution when solving the homogeneous equation results in a sinusoidal oscillation, as proven in Figure 3.6. The most notable part of the solution is that there is both a frequency of oscillation and a phase shift. This form is very useful for analyzing the frequency response of a system, as will be seen in a later chapter.
differential equations - 3.7
Consider the situation where the results of a homogeneous solution are the complex conjugate pair. Y = R ± Cj This gives the general result, as shown below: ( R + C j )t ( R – Cj )t x = X1 e + X2e Rt Cjt Rt – Cjt x = X1 e e + X2 e e Rt Cjt – Cjt x = e X1 e + X2 e Rt x = e ( X 1 ( cos ( Ct ) + j sin ( Ct ) ) + X 2 ( cos ( – C t ) + j sin ( – C t ) ) ) Rt x = e ( X 1 ( cos ( Ct ) + j sin ( Ct ) ) + X 2 ( cos ( ( Ct ) – j sin ( Ct ) ) ) ) Rt x = e ( ( X1 + X 2 ) cos ( Ct ) + j ( X 1 – X 2 ) sin ( Ct ) ) Rt x = e ( ( X1 + X 2 ) cos ( Ct ) + j ( X 1 – X 2 ) sin ( Ct ) ) 2 2 2 Rt ( X 1 + X 2 ) + j ( X 1 – X 2 ) x = e ------------------------------------------------------------------------- ( ( X 1 + X 2 ) cos ( Ct ) + j ( X 1 – X2 ) sin ( Ct ) ) 2 2 2 ( X1 + X2 ) + j ( X1 – X2 ) 2 2 2 2 X 1 + 2X 1 X 2 + X 2 – X 1 + – 2 X 1 X 2 + X 2 Rt x = e ------------------------------------------------------------------------------------------------------------- ( ( X 1 + X 2 ) cos ( Ct ) + j ( X 1 – X 2 ) sin ( C 2 2 2 2 X 1 + 2X 1 X 2 + X 2 – X 1 + – 2 X 1 X 2 + X 2 Rt 4X 1 X 2 --------------------- ( ( X 1 + X 2 ) cos ( Ct ) + j ( X 1 – X 2 ) sin ( Ct ) ) 4X 1 X 2 ( X1 – X2 ) ( X1 + X2 ) Rt x = e 4X 1 X2 ------------------------ cos ( Ct ) + j ----------------------- sin ( Ct ) 4X X 4X 1 X 2 1 2 ( X1 – X2 ) Rt x = e 4X 1 X 2 cos Ct + atan ------------------------- ( X1 + X 2 ) x = e
x = e
Rt
X3 cos ( Ct + X 4 )
frequency
Figure 3.6
phase shift
where, X = 3
4X 1 X 2 ( X1 – X2 ) X 4 = atan ------------------------- ( X 1 + X 2 )
Phase shift solution for a second-order homogeneous differential equation
differential equations - 3.8
Note: Occasionally a problem solution might consist of both a sine and cosine term with the same frequency. These should normally be combined to a single term with a phase shift as shown below. Recall the double angle formula, sin ( ωt + θ ) = sin ωt cos θ + sin θ cos ωt This can be written in a more common form, A ( sin ωt cos θ + sin θ cos ωt ) = A sin ( ωt + θ ) A cos θ sin ωt + A sin θ cos ωt = A sin ( ωt + θ ) B sin ωt + C cos ωt = A sin ( ωt + θ ) where, B C A = ------------ = ----------cos θ sin θ sin θC ----------= ---cos θ B
A =
B = A cos θ C = A sin θ
C θ = atan ---- B
2
B +C
2
Consider the example, 3 sin 5t + 4 cos 5t =
Figure 3.7
4 2 2 3 + 4 sin 5t + atan --- = 5 sin ( 5t + 0.927 ) 3
Phase shift solution form
differential equations - 3.9
Solve the following differential equation given the initial condition. · x( 0) = 1 x· ( 0 ) = 2 x·· + 2x + x = 0
–t
ans.
Figure 3.8
x ( t ) = e + 3te
–t
Drill Problem: Second order homogeneous differential equation
The methods for solving non-homogeneous differential equations builds upon the methods used for the solution of homogeneous equations. This process adds a step to find the particular solution of the equation. An example of the solution of a first-order nonhomogeneous equation is shown in Figure 3.9. To find the homogeneous solution the nonhomogeneous part of the equation is set to zero. To find the particular solution the final
differential equations - 3.10
form must be guessed. This is then substituted into the equation, and the values of the coefficients are found. Finally the homogeneous and particular solutions are added to get the final equation. The overall response of the system can be obtained by adding the homogeneous and particular parts. This is acceptable because the equations are linear, and the principle of superposition applies. The homogeneous equation deals with the response to initial conditions, and the particular solution deals with the response to forced inputs.
Generally, Ax· + Bx = Cf ( t ) x ( 0 ) = x0 First, find the homogeneous solution as before, in Figure 3.3. –B ---t A xh = x0 e Next, guess the particular solution by looking at the form of ’f(t)’. This step is highly subjective, and if an incorrect guess is made, it will be unsolvable. When this happens, just make another guess and repeat the process. An example is given below. In the case below the guess should be similar to the exponential forcing function. For example, if we are given 4t 6x· + 2x = 5e A reasonable guess for the particular solution is, 4t 4t xp = C1 e \x· p = 4C 1 e Substitute these into the differential equation and solve for A. 4t 4t 4t 6 4C 1 e + 2 C 1 e = 5e 524C 1 + 2C 1 = 5 ∴C 1 = ----26 Combine the particular and homogeneous solutions. – 6--- t 5- e 4t + x e 2 x = x p + x h = ----0 26 Figure 3.9
Solution of a first-order non-homogeneous equation
The method for finding a particular solution for a second-order non-homogeneous differential equation is shown in Figure 3.10. In this example the forcing function is sinusoidal, so the particular result should also be sinusoidal. The final result is converted into a phase shift form.
differential equations - 3.11
Generally, Ax·· + Bx· + Cx = Df ( t )
x( 0 ) = x0 and x· ( 0 ) = v 0 1. Find the homogeneous solution as before. σt x h = X 3 e cos ( ω t + X4 ) or σt σt x h = X 1 e + X 2 te or σ1 t σ2 t + X2 e xh = X1 e 2. Guess the particular solution by looking at the form of ’f(t)’. This step is highly subjective, and if an incorrect guess is made it will be unsolvable. When this happens, just make another guess and repeat the process. For the purpose of illustration an example is given below. In the case below it should be similar to the sine function. For example, if we are given 2x·· + 6x· + 2x = 2 sin ( 3t + 4 ) A reasonable guess is, x p = A sin ( 3t ) + B cos ( 3t ) x· p = 3A cos ( 3t ) – 3B sin ( 3t ) x··p = – 9A sin ( 3t ) – 9B cos ( 3t ) Substitute these into the differential equation ans solve for A and B. 2 ( – 9 A sin ( 3t ) – 9B cos ( 3t ) ) + 6 ( 3A cos ( 3t ) – 3B sin ( 3t ) ) + 2 ( A sin ( 3t ) + B cos ( 3t ) ) = 2 sin ( 3t + 4 ) ( – 18 A – 18B + 2A ) sin ( 3t ) + ( – 18 B + 18A + 2B ) cos ( 3t ) = 2 sin ( 3t + 4 ) ( – 16A – 18B ) sin ( 3t ) + ( 18A – 16B ) cos ( 3t ) = 2 ( sin 3t cos 4 + cos 3t sin 4 ) ( – 16A – 18B ) sin ( 3t ) + ( 18A – 16B ) cos ( 3t ) = ( 2 cos 4 ) sin ( 3t ) + ( 2 sin 4 ) cos ( 3t ) 18A – 16B = 2 sin 4 – 16A – 18B = 2 cos 4 – 16 – 18 A = 2 cos 4 A = – 16 –18 18 – 16 B 2 sin 4 B 18 –16
–1
– 1.307 = – 0.0109 – 1.514 0.0823
Next, rearrange the equation to phase shift form. x p = – 0.0109 sin ( 3t ) + 0.0823 cos ( 3t )
0.0823 π 2 2 – 0.0109 + 0.0823 sin 3t + atan ------------------- + --- –0.0109 2 3. Use the initial conditions to determine the coefficients in the homogeneous solution. xp =
Figure 3.10
Solution of a second-order non-homogeneous equation
differential equations - 3.12
When guessing particular solutions, the forms in Figure 3.11 can be helpful.
Forcing Function
Guess
A
C
Ax + B Ax e
Cx + D Ax or Ax Ce Cxe
B sin ( Ax )
Figure 3.11
or B cos ( Ax )
C sin ( Ax ) + D cos ( Ax ) or Cx sin ( Ax ) + xD cos ( Ax )
General forms for particular solutions
differential equations - 3.13
Solve the following differential equation given the initial condition. x· ( 0 ) = 0 x( 0) = 0 x·· + 2x· + x = 1
ans.
Figure 3.12
–t
–t
x ( t ) = – e – te + 1
Drill Problem: Second order non-homogeneous differential equation
An example of a second-order system is shown in Figure 3.13. As expected, it begins with a FBD and summation of forces. This is followed with the general solution of
differential equations - 3.14
the homogeneous equation. Real roots are assumed thus allowing the problem solution to continue in Figure 3.14.
M Assume the system illustrated to the right starts from rest at a height ’h’. At time ’t=0’ the system is released and allowed to move.
Fg Ks
y Kd
Mg My·· + K d y·
Ksy
∑ Fy
= – Mg + K s y + K d y· = – M y··
My·· + K d y· + K s y = Mg
Find the homogeneous solution. At At 2 At yh = e y· h = Ae y··h = A e My·· + K d y· + K s y = 0 2 At At At M A e + K d ( Ae ) + K s ( e ) = 0 2 MA + K d A + K s = 0 2 – K d ± K d – 4MK s A = -------------------------------------------------2M Let us assume that the values of M, Kd and Ks lead to the case of two different positive roots. This would occur if the damper value was much larger than the spring and mass values. Thus, A = R 1, R 2 R1 t R2 t y h = C1 e + C2 e Figure 3.13
Second-order system example
The solution continues by assuming a particular solution and calculating values for the coefficients using the initial conditions in Figure 3.14. The final result is a secondorder system that is overdamped, with no oscillation.
differential equations - 3.15
Next, find the particular solution. · yp = C yh = 0
·· yh = 0
M ( 0 ) + K d ( 0 ) + K s ( C ) = Mg Mg C = -------Ks Now, add the homogeneous and particular solutions and solve for the unknowns using the initial conditions. R t R t Mg y ( t ) = y p + y h = -------- + C 1 e 1 + C 2 e 2 Ks y(0) = h
y' ( 0 ) = 0
Mg 0 0 h = -------- + C 1 e + C 2 e Ks Mg C 1 + C 2 = h – -------Ks y' ( t ) = R 1 C 1 e
R1t
+ R2 C2 e
0
0 = R1 C1 e + R2 C2 e
R2 t
0
0 = R1 C 1 + R2 C2
–R2 C 1 = --------- C 2 R1
R2 Mg – ------ C 2 + C 2 = h – -------R1 Ks K s h – Mg –R1 C 2 = ----------------------- ------------------ K s R 1 – R 2
– R2 K s h – Mg –R1 C 1 = --------- ----------------------- ------------------ R1 Ks R1 – R2
Now, combine the solutions and solve for the unknowns using the initial conditions. K s h – Mg –R1 – R1 R t – R 2 K s h – Mg R t Mg y ( t ) = -------- + ----------------------- ------------------ e 1 + --------- ----------------------- ------------------ e 2 Ks R1 – R2 R1 Ks R1 – R 2 Ks K s h – Mg K s h – Mg –R1 R2 R1 t R2 t Mg y ( t ) = -------- + ----------------------- ------------------ e + ----------------------- ------------------ e Ks R1 – R2 Ks R1 – R 2 Ks
Figure 3.14
Second-order system example (continued)
differential equations - 3.16
Given,
A sin ( ω t + θ )
(the desired final form)
A ( cos ω t sin θ + sin ω t cos θ ) ( A sin θ ) cos ω t + ( A cos θ ) sin ω t B cos ω t + C sin ω t where, B = A sin θ C = A cos θ
(the form we start with)
To find theta, B- = --------------A sin θ- = tan θ --C A cos θ
θ = atan ---- C B
To find A, (method #1) B CA = ---------- = ----------sin θ cos θ To find A, (method #2) 2 2 A = B +C For example, 3 cos 5t + 4 sin 5t 2 2 3 + 4 sin 5t + atan 4--- 3 5 sin ( 5t + 0.9273 )
Figure 3.15
Proof for conversion to phase form
3.3 RESPONSES Solving differential equations tends to yield one of two basic equation forms. The e-to-the-negative-t forms are the first-order responses and slowly decay over time. They never naturally oscillate, and only oscillate if forced to do so. The second-order forms may
differential equations - 3.17
include natural oscillation.
3.3.1 First-order A first-order system is described with a first-order differential equation. The response function for these systems is natural decay or growth as shown in Figure 3.16. The time constant for the system can be found directly from the differential equation. It is a measure of how quickly the system responds to a change. When an input to a system has changed, the system output will be approximately 63% of the way to its final value when the elapsed time equals the time constant. The initial and final values of the function can be determined algebraically to find the first-order response with little effort. If we have experimental results for a system, we can calculate the time constant, initial and final values. The time constant can be found two ways, one by extending the slope of the first part of the curve until it intersects the final value line. That time at the intersection is the time constant. The other method is to look for the time when the output value has shifted 63.2% of the way from the initial to final values for the system. Assuming the change started at t=0, the time at this point corresponds to the time constant.
differential equations - 3.18
y t –-
y0
y ( t ) = y 1 + ( y 0 – y 1 )e
y· + --1- y = f ( t )
τ
τ
time constant
y1
τ OR
t
y y1
y ( τ ) = y 1 + ( y 0 – y 1 )e
y0
τ
Figure 3.16
Note: The time will be equal to the time constant when the value is 63.2% of the way to the final value, as shown below. – -t τ y ( τ ) = y 1 + ( y 0 – y 1 )e
t
–1
y ( τ ) = y 1 + ( y 0 – y 1 )0.368 y ( τ ) = 1 + ( 0 – 1 )0.368 y ( τ ) = 0.632
Typical first-order responses
The example in Figure 3.17 calculates the coefficients for a first-order differential equation given a graphical output response to an input. The differential equation is for a permanent magnet DC motor, and will be examined in a later chapter. If we consider the steady state when the speed is steady at 1400RPM, the first derivative will be zero. This simplifies the equation and allows us to calculate a value for the parameter K in the differential equation. The time constant can be found by drawing a line asymptotic to the start of the motor curve, and finding the point where it intercepts the steady-state value. This gives an approximate time constant of 0.8 s. This can then be used to calculate the remaining coefficient. Some additional numerical calculation leads to the final differential equation as shown.
differential equations - 3.19
For the motor, use the differential equation and the speed curve when Vs=10V is applied: K 2 d- K- --- ---------- dt ω + JR ω = JR V s
1400 RPM
1s
2s
3s
For steady-state –1 d- ---ω = 1400RPM = 146.6rads dt ω = 0 K 2 K 0 + ------- 146.6 = ------ 10 JR JR K = 0.0682 1400 RPM
τ ª 0.8s 1s K 2 1 ------- = ---------0.8s JR K 10.0682 ------ = -------- JR 0.8s K- = 18.328 ----JR 1ω· + -----ω = 18.328Vs 0.8
Figure 3.17
Finding an equation using experimental data
differential equations - 3.20
Find the differential equation when a step input of Vs=12V is applied: 2
1800 RPM
d- K K- --- ---- ---- dt ω + JR ω = JR V s 0.2s
0.4s
0.6s
ans.
Figure 3.18
d- 1 1800 ---ω + ---------- ω = --------------------- V s dt 0.15 12 ( 0.15 )
Drill problem: Find the constants for the equation
A simple mechanical example is given in Figure 3.19. The modeling starts with a FBD and a sum of forces. After this, the homogenous solution is found by setting the nonhomogeneous part to zero and solving. Next, the particular solution is found, and the two solutions are combined. The initial conditions are used to find the remaining unknown coefficients.
differential equations - 3.21
Find the response to the applied force if the force is applied at t=0s. Assume the system is initially deflected a height of h.
F
F y d- y = 0 + ∑ F y = – F + K s y + K d ---dt d K d ----- y Ks y dt K d y· + K s y = F Find the homogeneous solution. Bt Bt y h = Ae y· h = ABe Bt Bt K d ( ABe ) + K s ( Ae ) = 0 Kd B + K s = 0 –K B = ---------s Kd Next, find the particular solution. y· p = 0
yp = C
F∴C = ----Ks Combine the solutions, and find the remaining unknown. –Ks ---------t Kd Fy ( t ) = y p + y h = Ae + ----Ks y(0) = h 0 F F h = Ae + ----∴A = h – -----K Ks s Kd ( 0 ) + K s ( C ) = F
The final solution is, F y ( t ) = h – ----- e Ks
Figure 3.19
–Ks --------- t Kd
F + ----Ks
First-order system analysis example
Ks
Kd
differential equations - 3.22
Use the general form given below to solve the problem in Figure 3.19 without solving the differential equation. Assume the system starts at y=-20. · y + 10y = 5
y ( t ) = y 1 + ( y 0 – y 1 )e
ans.
Figure 3.20
t – -τ
y ( t ) = 0.5 – 19.5e
– 10t
Drill problem: Developing the final equation using the first-order model form
A first-order system tends to be passive, meaning it doesn’t deliver energy or power. A first-order system will not oscillate unless the input forcing function is also oscillating. The output response lags the input and the delay is determined by the system’s time constant.
differential equations - 3.23
3.3.2 Second-order A second-order system response typically contains two first-order responses, or a first-order response and a sinusoidal component. A typical sinusoidal second-order response is shown in Figure 3.21. Notice that the coefficients of the differential equation include a damping coefficient and a natural frequency. These can be used to develop the final response, given the initial conditions and forcing function. Notice that the damped frequency of oscillation is the actual frequency of oscillation. The damped frequency will be lower than the natural frequency when the damping coefficient is between 0 and 1. If the damping coefficient is greater than one the damped frequency becomes negative, and the system will not oscillate because it is overdamped.
A second-order system, and a typical response to a stepped input. 2 y·· + 2 ζω n y· + ω n y = f ( t )
σ = ζω n
y ( t ) = y ss + ( y 0 – y ss )e
–σ t
ωd = ωn 1 – ζ
2
cos ( ω d t )
y ss
y0
ωn ξ
ωd
Figure 3.21
Natural frequency of system - Approximate frequency of control system oscillations. Damping factor of system - If < 1 underdamped, and system will oscillate. If =1 critically damped. If > 1 overdamped, and never any oscillation (more like a first-order system). As damping factor approaches 0, the first peak becomes infinite in height. The actual frequency of oscillation - It is below the natural frequency because of the damping.
The general form for a second-order system
When only the damping coefficient is increased, the frequency of oscillation, and overall response time will slow, as seen in Figure 3.22. When the damping coefficient is 0 the system will oscillate indefinitely. Critical damping occurs when the damping coeffi-
differential equations - 3.24
cient is 1. At this point both roots of the differential equation are equal. The system will not oscillate if the damping coefficient is greater than or equal to 1.
ξ = 0
ξ = 0.5 (underdamped)
1- = 0.707 ξ = -----2
ξ = 1 (critical) (overdamped)
ξ»1
Figure 3.22
The effect of the damping coefficient
When observing second-order systems it is more common to use more direct measurements of the response. Some of these measures are shown in Figure 3.23. The rise
differential equations - 3.25
time is the time it takes to go from 10% to 90% of the total displacement, and is comparable to a first order time constant. The settling time indicates how long it takes for the system to pass within a tolerance band around the final value. The permissible zone shown is 2%, but if it were larger the system would have a shorter settling time. The period of oscillation can be measured directly as the time between peaks of the oscillation, the inverse is the damping frequency. (Note: don’t forget to convert to radians.) The damped frequency can also be found using the time to the first peak, as half the period. The overshoot is the height of the first peak. Using the time to the first peak, and the overshoot the damping coefficient can be found.
tp
Note: This figure is not to scale to make details near the steady-state value easier to see. f d = --1T
T e ss
0.02 ∆ x
b
0.02 ∆ x 0.9 ∆ x
tr
where, t r = rise time (from 10% to 90%) t s = settling time (to within 2-5% typ.) ∆ x = total displacement T, f d = period and frequency - damped
ts
∆x 0.5 ∆ x
b = overshoot 0.1 ∆ x
t p = time to first peak e ss = steady state error x = ∆ xe
–σ t
cos ( ω d t )
π ω d ≈ ---tp
(1)
σ = ξω n –σ tp
(2)
b- = e ----∆x 1 ξ = ----------------------------π - 2 ------ t p σ + 1 Figure 3.23
Characterizing a second-order response (not to scale)
(3) (4)
differential equations - 3.26
Note: We can calculate these relationships using the complex homogenous form, and the generic second order equation form.
2
2
A + 2ξω n A + ω n = 0 2
2
2
– 2ξω n ± 4ξ ω n – 4ω n A = ----------------------------------------------------------= σ ± jω d 2 σ ω n = -----–ξ
– 2ξωn ---------------- = σ = – ξω n 2 2
2
(1)
2
4ξ ω n – 4ω n ----------------------------------= jω d 2 2
2
2
2
4ξ ω n – 4ω n = 4 ( – 1 )ω d 2
2
2
2
ωn – ξ ωn = ωd 2
2
ωn 1 – ξ = ωd
(2)
2
σ ------ – ξ 2 σ ------ = ω 2d 2 2 ξ ξ 1 ξ = -------------------2 ωd ------ + 1 2 σ
2
ωd 1--------- + 1 = 2 2 ξ σ
(3)
The time to the first peak can be used to find the approximate decay constant x ( t ) = C1e
– σt
π ω d = ---tp b ≈ ∆xe
(4)
– σt p
(1) b ln ------ ∆x σ = – -----------------tp
Figure 3.24
cos ( ω d t + C 2 )
(5)
Second order relationships between damped and natural frequency
differential equations - 3.27
2.2 y(t) 2.0
t 0
5.0 4.0 Write a function of time for the graph. (Note: measure, using a ruler, to get values.) Find the natural frequency and damping coefficient to develop the differential equation. Using the dashed lines determine the settling time.
Figure 3.25
ans. t<4
y(t) = 0
t≥4
y(t) =
Drill problem: Find the equation given the response curve
differential equations - 3.28
3.3.3 Other Responses First-order systems have e-to-the-t type responses. Second-order systems add another e-to-the-t response or a sinusoidal excitation. As we move to higher order linear systems we typically add more e-to-the-t terms, and/or more sinusoidal terms. A possible higher order system response is seen in Figure 3.26. The underlying function is a firstorder response that drops at the beginning, but levels out. There are two sinusoidal functions superimposed, one with about one period showing, the other with a much higher frequency.
Figure 3.26
An example of a higher order system response
The basic techniques used for solving first and second-order differential equations can be applied to higher order differential equations, although the solutions will start to become complicated for systems with much higher orders. The example in Figure 3.27 shows a fourth order differential equation. In this case the resulting homogeneous solution yields four roots. The result in this case are two real roots, and a complex pair. The two real roots result in e-to-the-t terms, while the complex pair results in a damped sinusoid. The particular solution is relatively simple to find in this example because the non-homogeneous term is a constant.
differential equations - 3.29
Given the homogeneous differential equation d- 4 d 3 d 2 d ---x + 13 ----- x + 34 ----- x + 42 ----- x + 20x = 5 dt dt dt dt Guess a solution for the homogeneous equation, At xh = e 3 At d- 3 2 At ---d- 2 d- x = Ae At ---x = A e ---x = A e dt h dt h dt h
4 At d- 4 ---x = A e dt h
Substitute the values into the differential equation and find a value for the unknown. 4 At 3 At 2 At At At A e + 13A e + 34A e + 42Ae + 20e = 0 4 3 2 A + 13A + 34A + 42A + 20 = 0 A = – 1, – 10, – 1 – j, – 1 + j xh = C1 e
–t
+ C2 e
– 10t
–t + C 3 e cos ( t + C 4 )
Guess a particular solution, and the solve for the coefficient. d- 2 d- 3 d- x = 0 --- ---xp = A ---x = 0 dt p dt x p = 0 dt p 0 + 13 ( 0 ) + 34 ( 0 ) + 42 ( 0 ) + 20A = 5
Figure 3.27
d- 4 --- dt x p = 0
A = 0.25
Solution of a higher order differential equation
The example is continued in Figure 3.28 and Figure 3.29 where the initial conditions are used to find values for the coefficients in the homogeneous solution.
differential equations - 3.30
Solve for the unknowns, assuming the system starts at rest and undeflected. –t –10t –t x ( t ) = C1 e + C 2 e + C 3 e cos ( t + C 4 ) + 0.25 0 = C 1 + C 2 + C 3 cos ( C 4 ) + 0.25
(1)
(2) C 3 cos ( C 4 ) = – C 1 – C 2 – 0.25 d- x ( t ) = –C e – t – 10C e – 10t – C e – t cos ( t + C ) – C e – t sin ( t + C ) ---1 2 3 4 3 4 dt h (3) 0 = – C 1 – 10C 2 – C 3 cos ( C 4 ) – C 3 sin ( C 4 ) Equations (1) and (3) can be added to get the simplified equation below. 0 = – 9C 2 – C 3 sin ( C 4 ) + 0.25 C 3 sin ( C 4 ) = – 9C 2 + 0.25
(4)
–t – 10t –t –t d- 2 ---x ( t ) = C e + 100C e + C e cos ( t + C ) + C e 1 2 3 4 3 sin ( t + C 4 ) + dt h –t –t C 3 e sin ( t + C 4 ) – C 3 e cos ( t + C 4 ) 0 = C1 + 100C 2 + C 3 cos ( C 4 ) + C 3 sin ( C 4 ) + C 3 sin ( C 4 ) – C 3 cos ( C 4 ) (5) 0 = C 1 + 100C 2 + 2C 3 sin ( C 4 ) Equations (4) and (5) can be combined. 0 = C 1 + 100C 2 + 2 ( – 9C 2 + 0.25 ) 0 = – 17C 1 + 100C 2 + 0.5
(6)
–t – 10t –t –t d- 3 ---x ( t ) = – C 1 e + ( – 1000 )C 2 e – 2C 3 e sin ( t + C 4 ) + 2C 3 e cos ( t + C 4 ) dt h (7) 0 = – C 1 + ( – 1000 )C 2 – 2C 3 sin ( C 4 ) + 2C 3 cos ( C 4 )
Figure 3.28
Solution of a higher order differential equation
differential equations - 3.31
Equations (2 and (4) are substituted into equation (7). 0 = –C 1 + ( – 1000 )C 2 – 2 ( – 9C 2 + 0.25 ) + 2 ( – C 1 – C 2 – 0.25 ) 0 = – 3C 1 + ( – 984 )C 2 – 1 984 1 C 1 = – --------- C 2 – --3 3 Equations (6) and (8) can be combined. 984 1 0 = – 17 – --------- C 2 – --- + 100C 2 + 0.5 3 3 0 = 5676C2 + 6.1666667
(8)
C 2 = – 0.00109
984 1 C 1 = – --------- ( – 0.00109 ) – --C 1 = 0.0242 3 3 Equations (2) and (4) can be combined. C 3 sin ( C 4 ) – 9C 2 + 0.25 --------------------------- = --------------------------------------C 3 cos ( C 4 ) – C 1 – C 2 – 0.25 – 9 ( – 0.00109 ) + 0.25 C 4 = – 0.760 tan ( C 4 ) = --------------------------------------------------------------------------– ( 0.0242 ) – ( – 0.00109 ) – 0.25 Equation (4) can be used the find the remaining unknown. C 3 sin ( – 0.760 ) = – 9 ( –0.00109 ) + 0.25
C 3 = – 0.377
The final response function is, –t – 10t –t x ( t ) = 0.0242e + ( – 0.00109 )e + ( – 0.377 )e cos ( t – 0.760 ) + 0.25
Figure 3.29
Solution of a higher order differential equation (cont’d)
In some cases we will have systems with multiple differential equations, or nonlinear terms. In these cases explicit analysis of the equations may not be feasible. In these cases we may use other techniques, such as numerical integration, which will be covered in later chapters.
3.4 RESPONSE ANALYSIS Up to this point we have mostly discussed the process of calculating the system response. As an engineer, obtaining the response is important, but evaluating the results is more important. The most critical design consideration is system stability. In most cases a system should be inherently stable in all situations, such as a car "cruise control". In other
differential equations - 3.32
cases an unstable system may be the objective, such as an explosive device. Simple methods for determining the stability of a system are listed below: 1. If a step input causes the system to go to infinity, it will be inherently unstable. 2. A ramp input might cause the system to go to infinity; if this is the case, the system might not respond well to constant change. 3. If the response to a sinusoidal input grows with each cycle, the system is probably resonating, and will become unstable. Beyond establishing the stability of a system, we must also consider general performance. This includes the time constant for a first-order system, or damping coefficient and natural frequency for a second-order system. For example, assume we have designed an elevator that is a second-order system. If it is under damped the elevator will oscillate, possibly leading to motion sickness, or worse. If the elevator is over damped it will take longer to get to floors. If it is critically damped it will reach the floors quickly, without overshoot. Engineers distinguish between initial setting effects (transient) and long term effects (steady-state). The transient effects are closely related to the homogeneous solution to the differential equations and the initial conditions. The steady-state effects occur after some period of time when the system is acting in a repeatable or non-changing form. Figure 3.30 shows a system response. The transient effects at the beginning include a quick rise time and an overshoot. The steady-state response settles down to a constant amplitude sine wave.
differential equations - 3.33
Steady-state Transient
Note: the transient response is predicted with the homogeneous solution. The steady state response in mainly predicted with the particular solution, although in some cases the homogeneous solution might have steady state effects, such as a non-decaying oscillation.
Figure 3.30
A system response with transient and steady-state effects
3.5 NON-LINEAR SYSTEMS Non-linear systems cannot be described with a linear differential equation. A basic linear differential equation has coefficients that are constant, and the derivatives are all first order. Examples of non-linear differential equations are shown in Figure 3.31.
2 · x+x = 5
·2 x +x = 5
Note: the sources of nonlinearity are circled.
· x + log ( x ) = 5 · x + ( 5t )x = 5
Figure 3.31
Examples of non-linear differential equations
differential equations - 3.34
Examples of system conditions that lead to non-linear solutions are, • aerodynamic drag • forces that are a squared function of distance • devices with non-linear responses Explicitly solving non-linear differential equations can be difficult, and will typically involve complex solutions for simple problems.
3.5.1 Non-Linear Differential Equations A non-linear differential equation is presented in Figure 3.32. It involves a person ejected from an aircraft with a drag force coefficient of 0.8. (Note: This coefficient is calculated using the drag coefficient and other properties such as the speed of sound and cross sectional area.) The FBD shows the sum of forces, and the resulting differential equation. The velocity squared term makes the equation non-linear, and so it cannot be analyzed with the previous methods. In this case the terminal velocity is calculated by setting the acceleration to zero. This results in a maximum speed of 126 kph.
differential equations - 3.35
Consider the differential equation for a 100kg human ejected from an airplane. The aerodynamic drag will introduce a squared variable, therefore making the equation non-linear. 2 2 · ) 2 – Mg = – My·· 0.8 Ns --------- ( y' ) F = 0.8 ( y ∑ 2 y m 2 2 N100kgy·· + 0.8 Ns --------- ( y· ) = 100kg9.81 ----2 kg m 2 2 100kgy·· + 0.8 Ns --------- ( y· ) = 981N y 2 Mg m 2 m- -----s - ( y· ) 2 = 981kg ---m100kgy·· + 0.8kg ---2 2 2 m s s –1 2 –2 100y·· + 0.8m ( y· ) = 981ms 2 –2 –3 –1 y·· + 8 × 10 m ( y· ) = 9.81ms The terminal velocity can be found be setting the acceleration to zero. 2 –2 –3 –1 ( 0 ) + 8 × 10 m ( y· ) = 9.81ms –2 9.81ms - = ------------------9.81 - m 2 s – 2 = 35.0 m y· = --------------------------------- = 126 km ------–3 s h –3 –1 8 × 10 8 × 10 m
Figure 3.32
Development of a non-linear differential equation
The equation can also be solved using explicit integration, as shown in Figure 3.33. In this case the equation is separated and rearranged to isolate the ’v’ terms on the left, and time on the right. The term is then integrated in Figure 3.34 and Figure 3.35. The final form of the equation is non-trivial, but contains e-to-t terms, as we would expect.
differential equations - 3.36
An explicit solution can begin by replacing the position variable with a velocity variable and rewriting the equation as a separable differential equation. –1 · 2 –2 ·· 100y + 0.8m ( y ) = 981ms –1 2 –2 · 100v + 0.8m v = 981ms
dv –1 2 –2 100 ------ + 0.8m v = 981ms dt dv –2 –1 2 100 ------ = 981ms – 0.8m v dt 100 ------------------------------------------------dv = dt –2 –1 2 981ms – 0.8m v 100 -------------------–1 –0.8m -------------------------------------------∫ 981 –2 2- dv = ∫ dt -------------------- ms + v –1 – 0.8m – 125m - dv = t + C1 ∫ -------------------------------------------2 2 –2 v – 1226.25m s – 125m
- dv ∫ ----------------------------------------------------------------m m
v + 35.02 ---- v – 35.02 ---s s
Figure 3.33
Developing an integral
= t + C1
differential equations - 3.37
This can be reduced with a partial fraction expansion. A B -------------------------------- + ------------------------------- dv = t + C 1 m v + 35.02 m ---- v – 35.02 ---- s s m Av – A 35.02 ---- + Bv + B 35.02 m ---- = – 125m s s m v ( A + B ) + 35.02 ---- ( – A + B ) = – 125m s A = –B A+B = 0
∫
35.02 m ---- ( – A + B ) = – 125m s 125 - s ( – ( –B ) + B ) = – -----------35.02
B = – 1.785s A = 1.785s
∫
1.785s – 1.785s - dv = t + C --------------------------------- + ------------------------------1 v + 35.02 m v – 35.02 m ---- s s
The integral can then be solved using an identity from the integral table. In this case the integration constants can be left off because they are redundant with the one on the right hand side. 1.785s ln v + 35.02 m ---- – 1.785s ln v – 35.02 m ---- = t + C 1 s s m v + 35.02 ---s- = t + C –1 ln a + bx- + C 1.785s ln --------------------------( a + bx ) dx = ----------------------1 ∫ m b v – 35.02 ---s t -+C --------------v + 35.02 m ---1 s- = e 1.785s --------------------------v – 35.02 m ---s t --------------m C 1.785s v + 35.02 ---s- = e 1 e --------------------------v – 35.02 m ---s
Figure 3.34
Solution of the integral
differential equations - 3.38
m t --------------v + 35.02 ---1.785s s ---------------------------- = C 2 e m v – 35.02 ---s An initial velocity of zero can be assumed to find the value of the integration constant m 0 --------------0 + 35.02 ---1.785s s ---------------------------- = C 2 e m 0 – 35.02 ---s
1 = C2
This can then be simplified, and the absolute value sign eliminated. m t v + 35.02 -----------------s 1.785s ---------------------------- = ± e m v – 35.02 ---s
t ---------------
t ---------------
m m 1.785s 1.785s − v + 35.02 ---- = ± ve + 35.02 ---- e s s t
t
---------------- --------------- m m 1.785s 1.785s − --v1 − e = 35.02 e – 35.02 --- + + s s t --------------- 1.785s − m − 1 – 1 1–1 0 m e – 1 + ---------------0 = 35.02 ---- + = ------------- = --- v = 35.02 ---- ---------------------------− 1 + 1 t 2 s 1+1 s -------------- 1.785s 1− +e t -------------- 1.785s e m – 1 - v = 35.02 ---- ----------------------t s ---------------- 1.785s 1 + e
Figure 3.35
Solution of the integral and application of the initial conditions
As evident from the example, non-linear equations are involved and don’t utilize routine methods. Typically the numerical methods discussed in the next chapter are preferred.
3.5.2 Non-Linear Equation Terms If our models include a device that is non-linear and we want to use a linear tech-
differential equations - 3.39
nique to solve the equation, we will need to linearize the model before we can proceed. A non-linear system can be approximated with a linear equation using the following method. 1. Pick an operating point or range for the component. 2. Find a constant value that relates a change in the input to a change in the output. 3. Develop a linear equation. 4. Use the linear equation for the analysis. A linearized differential equation can be approximately solved using known techniques as long as the system doesn’t travel too far from the linearized point. The example in Figure 3.36 shows the linearization of a non-linear equation about a given operating point. This equation will be approximately correct as long as the first derivative doesn’t move too far from 100. When this value does, the new velocity can be calculated.
differential equations - 3.40
Assume we have the non-linear differential equation below. It can be solved by linearizing the value about the operating point Given,
2 y· + 4y = 200
y ( 0 ) = 10
We can make the equation linear by replacing the velocity squared term with the velocity times the actual velocity. As long as the system doesn’t vary too much from the given velocity the model should be reasonably accurate. y· = ± 200 – 4y y· ( 0 ) = ± 200 – 4 ( 10 ) = ± 12.65 12.65y· + 4y = 20 This system may now be solved as a linear differential equation. If the velocity (first derivative of y) changes significantly, then the differential equation should be changed to reflect this. Homogeneous: 12.65y· + 4y = 0 12.65A + 4 = 0 – 0.316t y h = Ce Particular: yp = A 12.65 ( 0 ) + 4A = 200 Initial conditions: – 0.316t y ( t ) = Ce + 50 0 10 = Ce + 50 – 0.316t y ( t ) = – 40e + 50
Figure 3.36
A = – 0.316
A = 50
C = – 40
Linearizing a differential equation
differential equations - 3.41
If the velocity (first derivative of y) changes significantly, then the differential equation should be changed to reflect this. For example we could decide to recalculate the equation value after 0.1s. y ( 0.1 ) = – 40e
– 0.316 ( 0.1 )
+ 50 = 11.24
d- y ( 0.1 ) = – 40 ( – 0.316 )e – 0.316 ( 0.1 ) = 12.25 ---dt
Note: a small change
12.25y' + 4y = 20 Now recalculate the solution to the differential equation. Homogeneous: 12.25y· + 4y = 0 12.25A + 4 = 0 – 0.327t y h = Ce
A = – 0.327
Particular: yp = A
12.25 ( 0 ) + 4A = 200 Initial conditions: – 0.327t y ( t ) = Ce + 50 0.1 11.24 = Ce + 50 – 0.316t y ( t ) = – 35.07e + 50
A = 50
C = – 35.070575
Notice that the values have shifted slightly, and as the analysis progresses the equations will adjust slowly. Higher accuracy can be obtained using smaller steps in time.
Figure 3.37
Linearizing a differential equation
3.5.3 Changing Systems In practical systems, the forces at work are continually changing. For example a system often experiences a static friction force when motion is starting, but once motion starts it is replaced with a smaller kinetic friction. Another example is tension in a cable. When in tension a cable acts as a spring. But, when in compression the force goes to zero. Consider the example in Figure 3.38. A mass is pulled by a springy cable. The
differential equations - 3.42
right hand side of the cable is being pulled at a constant rate, while the block is free to move, only restricted by friction forces and inertia. At the beginning all components are at rest and undeflected.
x2
µ k = 0.1 µ s = 0.3
NK s = 1000 --m
x 1 = 0.1 m ---- t s
M = 100kg
An FBD and equation can be developed for the system. The friction force will be left as a variable at this point.
For the cable/spring in tension x 1 – x 2 Š 0 FF ·· Ks ( x1 – x2 ) F x = – F F + K s ( x 1 – x 2 ) = Mx 2 M = 100kg ∑ ·· Mx 2 ·· N- 0.1 m – F F + 1000 ------ t – x 2 = 100kgx2 m s ·· N- x = 1000 --N- 0.1 m 100kgx 2 + 1000 ------ t – F F 2 m m s F ·· FN -x = 1 ------N -t – -------------x 2 + 10 --------kgm 2 kgs 100kg FF –2 ·· m- t – -------------x 2 + 10s x 2 = 1 ---3 100kg s For the cable/spring in compression x1 – x2 < 0 FF ·· M = 100kg ∑ Fx = –FF = Mx2 ·· ·· Mx 2 – F F = 100kgx 2 ·· 100kgx 2 = – F F FF ·· x 2 = – --------------100kg
Figure 3.38
A differential equation for a mass pulled by a springy cable
differential equations - 3.43
x2
µ k = 0.1 µ s = 0.3
NK s = 1000 --m
x 1 = 0.1 m ---- t s
M = 100kg
An FBD and equation can be developed for the system. The friction force will be left as a variable at this point. N- = 981N N = 100kg9.81 ----kg static friction
d- x £ 0 m ------dt 2 s
0N £ F F < µ s N < 294.3N kinetic friction
d- x > 0 m ------dt 2 s
F F = µ k N = 98.1N Figure 3.39
Friction forces for the mass
The analysis of the system begins by assuming the system starts at rest and undeflected. In this case the cable/spring will be undeflected with no force, and the mass will be experiencing static friction. Therefore the block will stay in place until the cable stretches enough to overcome the static friction. ·· x2 = 0 x2 = 0 F F = 294.3N FF –2 ·· m x 2 + 10s x 2 = 1 ----- t – --------------3 100kg s –2 m-t – 294.3N ----------------0 + 10s 0 = 1 ---100kg 3 s m- t = 294.3kgm -----------------------1 ---3 2 s 100kgs t = 2.943s Therefore the system is static from 0 to 2.943s Figure 3.40
Analysis of the object before motion begins
differential equations - 3.44
After motion begins the object will only experience kinetic friction, and continue to accelerate until the cable/spring becomes loose in compression. This stage of motion requires the solution of a differential equation. –2 ·· 98.1Nm- t – -------------x 2 + 10s x 2 = 1 ---3 100kg s For the homogeneous, –2 ·· x 2 + 10s x 2 = 0 –2 A + 10s = 0 x h = C 1 sin ( 3.16t + C 2 )
A = ± 3.16js
–1
For the particular, x p = At + B
· xp = A
·· xp = 0
–2
98.1Nm- t – -------------( At + B ) = 1 ---3 100kg s –2 m10s A = 1 ---3 s –2 98.1N 10s B = – --------------100kg
0 + 10s
Figure 3.41
Analysis of the object after motion begins
A = 0.1 m ---s B = – 0.0981m
differential equations - 3.45
For the initial conditions, x ( 2.943s ) = 0m
d- x ( 2.943s ) = 0 m ------dt s
x ( t ) = C 1 sin ( 3.16t + C 2 ) + 0.1 m ---- t – 0.0981m s 0 = C 1 sin ( 3.16 ( 2.943s ) + C 2 ) + 0.1 m ---- ( 2.943s ) – 0.0981m s C 1 sin ( 9.29988 + C2 ) = – 0.1962 d- x ( t ) = 3.16C cos ( 3.16t + C ) + 0.1 m ------1 2 dt s 0 = 3.16C 1 cos ( 3.16 ( 2.943 ) + C 2 ) + 0.1 m ---s C 1 cos ( 9.29988 + C 2 ) = – 0.0316 C 1 sin ( 9.29988 + C 2 ) 0.1962------------------------------------------------------ = –-----------------C 1 cos ( 9.29988 + C 2 ) – 0.0316 tan ( 9.29988 + C 2 ) = 6.209
C 2 = ( – 7.889 + π n )rad
– 0.1962 C 1 = --------------------------------------------------= –0.199m sin ( 9.29988 – 7.889 ) x ( t ) = – 0.199 m sin ( 3.16t – 7.889rad ) + 0.1 m ---- t – 0.0981m s d ----- x ( t ) = – 0.199 ( 3.16 )m cos ( 3.16t – 7.889rad ) + 0.1 m ---dt s Figure 3.42
Analysis of the object after motion begins
nŒI
differential equations - 3.46
The equation of motion changes after the cable becomes slack. This point in time can be determined when the displacement of the block equals the displacement of the cable/spring end. m m 0.1 ---- t = – 0.199 m sin ( 3.16t – 7.889rad ) + 0.1 ---- t – 0.0981m s s – 0.199 m sin ( 3.16t – 7.889rad ) = 0.0981m t = 3.328s 3.16t – 7.889 + π n = – 0.51549413 x ( 3.328 ) = 0.137m
dm ---x ( 2.333 ) = 0.648 ---dt s
After this the differential equation without the cable/spring is used. m 98.1N x 2'' = – --------------- = – 0.981 ---2100kg s · m x 2 = – 0.981 ----2 t + C 1 s m m 0.648 ---- = – 0.981 ----2 ( 3.328s ) + C 1 s s m C 1 = 3.913 ---s 0.981 m m 2 x 2 = – ------------- ----2 t + 3.913 ---- t + C 2 2 s s 0.981 m m 2 0.137m = – ------------- ---2- ( 3.328s ) + 3.913 ---- ( 3.328s ) + C 2 2 s s C 2 = – 7.453m 0.981 m 2 m x 2 ( t ) = – ------------- ----2 t + 3.913 ---- t – 7.453m 2 s s This motion continues until the block stops moving. m m 0 = –0.981 ----2 t + 3.913 --- s s t = 3.989s The solution can continue, considering when to switch the analysis conditions.
Figure 3.43
Determining when the cable become slack
differential equations - 3.47
3.6 CASE STUDY A typical vibration control system design is described in Figure 3.44.
F
M
y
Figure 3.44
The model to the left describes a piece of reciprocating industrial equipment. The mass of the equipment is 10000kg. The equipment operates such that a force of 1000N with a frequency of 2Hz is exerted on the mass. We have been asked to design a vibration isolation mounting system. The criteria we are given is that the mounts should be 30cm high when unloaded, and 25cm when loaded with the mass. In addition, the oscillations while the machine is running cannot be more than 2cm total. In total there will be four mounts mounted around the machine. Each isolator will be composed of a spring and a damper.
A vibration control system
There are a number of elements to the design and analysis of this system, but as usual the best place to begin is by developing a free body diagram, and a differential equation. This is done in Figure 3.45.
differential equations - 3.48
+
∑ Fy
F
= F – 4K s y – 4K d y· + Mg = My··
y
M
My'· + 4K d y· + 4K s y = F + Mg
4K d y· 4K s y F- + g ··y + ------------ + ------------ = ---4K s y 4K d y· M M M 4K d y· 4K s y 1000N - sin ( 2 ( 2 π )t ) + 9.81ms – 2 y·· + --------------------- + --------------------- = --------------------10000Kg 10000Kg 10000Kg
Mg
–1 –1 –2 –2 y·· + 0.0004Kg K d y· + 0.0004Kg K s y = 0.1ms sin ( 4 π t ) + 9.81ms
Figure 3.45
FBD and derivation of equation
Using the differential equation, the spring values can be found by assuming the machine is at rest. This is done in Figure 3.46.
When the system is at rest the equation is simplified; the acceleration and velocity terms both become zero. In addition, we will assume that the cyclic force is not applied for the unloaded/loaded case. This simplifies the differential equation by eliminating several terms. –1
0.0004Kg K s y = 9.81ms
–2
Now we can consider that when unloaded the spring is 0.30m long, and after loading the spring is 0.25m long. This will result in a downward compression of 0.05m, in the positive y direction. –1
0.0004Kg K s ( 0.05m ) = 9.81ms 9.81 –2 –1 K s = -------------------------------- Kgms m 0.0004 ( 0.05 )
∴K s = 491KNm Figure 3.46
–2
–1
Calculation of the spring coefficient
The remaining unknown is the damping coefficient. At this point we have determined the range of motion of the mass. This can be done by developing the particular
differential equations - 3.49
solution of the differential equation, as it will contain the steady-state oscillations caused by the forces as shown in Figure 3.47.
–1 –1 –1 –2 –2 ·· · y + 0.0004Kg K d y + 0.0004Kg ( 491KNm )y = 0.1ms sin ( 4 π t ) + 9.81ms –1 –2 –2 –2 ·· · y + 0.0004Kg K d y + 196s y = 0.1ms sin ( 4 π t ) + 9.81ms
The particular solution can now be found by guessing a value, and solving for the coefficients. (Note: The units in the expression are uniform (i.e., the same in each term) and will be omitted for brevity.) y = A sin ( 4 π t ) + B cos ( 4 π t ) + C y' = 4 π A cos ( 4 π t ) – 4 π B sin ( 4 π t ) 2
2
y'' = – 16 π A sin ( 4 π t ) – 16 π B cos ( 4 π t ) 2
2
∴( –16 π A sin ( 4 π t ) – 16 π B cos ( 4 π t ) ) + 0.0004K d ( 4 π A cos ( 4 π t ) – 4 π B sin ( 4 π t ) ) + 196 ( A sin ( 4 π t ) + B cos ( 4 π t ) + C ) = 0.1 sin ( 4 π t ) + 9.81 2
– 16 π B + 0.0004K d 4 π A + 196A = 0 –6 B = A ( 31.8 × 10 K d + 1.24 ) 2 – 16 π A + 0.0004K d ( – 4 π B ) + 196A = 0.1 2
–3
2
–6
A ( –16 π + 196 ) + B ( – 5.0 × 10 K d ) = 0.1 –3
A ( – 16 π + 196 ) + A ( 31.8 × 10 K d + 1.24 ) ( – 5.0 × 10 K d ) = 0.1 0.1 A = -------------------------------------------------------------------------------------------------------------------------------------2 –6 –3 – 16 π + 196 + ( 31.8 × 10 K d + 1.24 ) ( – 5.0 × 10 K d ) 0.1 A = -------------------------------------------------------------------------------------------------------2 –9 –3 K d ( – 159 × 10 ) + K d ( – 6.2 × 10 ) + 38.1 –6
3.18 × 10 K d – 0.124 B = -------------------------------------------------------------------------------------------------------2 –9 –3 K d ( – 159 × 10 ) + K d ( –6.2 × 10 ) + 38.1 C = 9.81ms
Figure 3.47
–2
Particular solution of the differential equation
The particular solution can be used to find a damping coefficient that will give an overall oscillation of 0.02m, as shown in Figure 3.48. In this case Mathcad was used to find the solution, although it could have also been found by factoring out the algebra, and finding the roots of the resulting polynomial.
differential equations - 3.50
In the previous particular solution the values were split into cosine and sine components. The magnitude of oscillation can be calculated with the Pythagorean formula. 2 2 A +B 2 2 –6 ( 0.1 ) + ( 3.18 ⋅ 10 )K d – 0.124 magnitude = --------------------------------------------------------------------------------------------------------------2 –9 –3 K d ( – 159 ⋅ 10 ) + K d ( – ( 6.2 ⋅ 10 ) ) + 38.1 The design requirements call for a maximum oscillation of 0.02m, or a magnitude of 0.01m. 2 2 –6 ( 0.1 ) + ( 3.18 ⋅ 10 )K d – 0.124 0.01 = --------------------------------------------------------------------------------------------------------------2 –9 –3 K d ( – 159 ⋅ 10 ) + K d ( – ( 6.2 ⋅ 10 ) ) + 38.1 A given-find block was used in Mathcad to obtain a damper value of, magnitude =
K d = 3411N ---sm
Figure 3.48
Aside: the Mathcad solution
Determining the damping coefficient
The values of the spring and damping coefficients can be used to select actual components. Some companies will design and build their own components. Components can also be acquired by searching catalogs, or requesting custom designs from other companies.
differential equations - 3.51
3.7 SUMMARY • First and second-order differential equations were analyzed explicitly. • First and second-order responses were examined. • The topic of analysis was discussed. • A case study looked at a second-order system. • Non-linear systems can be analyzed by making them linear.
3.8 PRACTICE PROBLEMS 1. The mass, M, illustrated below starts at rest. It can slide across a surface, but the motion is opposed by viscous friction (damping) with the coefficient B. Initially the system starts at rest, when a constant force, F, is applied. Write the differential equation for the mass, and solve the differential equation. Leave the results in variable form. x
M
F
B
2. The following differential equation was derived for a mass suspended with a spring. At time 0s the system is released and allowed to drop. It then oscillates. Solve the differential equation to find the motion as a function of time. + N K s = 100 ---m y
M = 1Kg
Ks y
FBD: M
Mg
∑ Fy
·· = K s y – Mg = – My
N- N ·· 100 --y – ( 1Kg ) 9.81 ------- = ( – 1Kg )y m Kg N 1 Nm -------- y·· + 100 ---- y = 9.81N 2 m s KgmKgm- ·· y = 9.81 ----------( 1Kg )y + 100 ----------2 2 s ms –2 –2 ·· y + ( 100s )y = 9.81ms –1 · y 0 = 0ms y = 0m 0
3. Solve the following differential equation with the three given cases. All of the systems have a
differential equations - 3.52
step input ’y’ and start undeflected and at rest. 2 ·· · x + 2ξωn x + ω n x = y
initial conditions
case 1:
ξ = 0.5
ω n = 10
case 2:
ξ = 1
ω n = 10
case 3:
ξ = 2
ω n = 10
· x = 0 x = 0 y = 1
4. Solve the following differential equation with the given initial conditions and draw a sketch of the first 5 seconds. The input is a step function that turns on at t=0. ·· · 0.5V o + 0.6V o + 2.1V o = 3V i + 2 initial conditions V i = 5 Vo = 0 · Vo = 0 5. Solve the following differential equation with the given initial conditions and draw a sketch of the first 5 seconds. The input is a step function that turns on at t=0. ·· · 0.5V o + 0.6V o + 2.1V o = 3V i + 2 initial conditions V i = 5 Vo = 0 · Vo = 1 6. a) Write the differential equations for the system below. Solve the equations for x assuming that
differential equations - 3.53
the system is at rest and undeflected before t=0. Also assume that gravity is present.
Kd1 = 1 Ns/m Ks1 = 1 N/m
Kd = 1 Ns/m
M = 1 kg
x1 Kd2 = 1Ns/m Ks2 = 1 N/m F=1N
x2
x
Ks = 1 N/m
F=1N b) State whether each system is first or second-order. If the system if first-order find the time constant. If it is second-order find the natural frequency and damping ratio. 7. Solve the following differential equation with the three given cases. All of the systems have a sinusoidal input ’y’ and start undeflected and at rest. · 2 ·· · initial conditions x = 0 x + 2ξωn x + ω n x = y x = 0 y = sin ( t ) ξ = 0.5 ω n = 10 case 1: case 2:
ξ = 1
ω n = 10
case 3:
ξ = 2
ω n = 10
8. A spring damper system supports a mass of 34N. If it has a spring constant of 20.6N/cm, what is the systems natural frequency? 9. Using a standard lumped parameter model the weight is 36N, stiffness is 2.06*103 N/m and damping is 100Ns/m. What are the natural frequency (Hz) and damping ratio?
differential equations - 3.54
10. What is the differential equation for a second-order system that responds to a step input with an overshoot of 20%, with a delay of 0.4 seconds to the first peak? 11. A system is to be approximated with a mass-spring-damper model using the following parameters: weight 28N, viscous damping 6Ns/m, and stiffness 36N/m. Calculate the undamped natural frequency (Hz) of the system, the damping ratio and describe the type of response you would expect if the mass were displaced and released. What additional damping would be required to make the system critically damped? · ·· Mx + K d x + K s x = F 12. Solve the differential equation below using homogeneous and particular solutions. Assume the system starts undeflected and at rest. ··· ·· · θ + 40θ + 20θ + 2θ = 4 13. What would the displacement amplitude after 100ms for a system having a natural frequency of 13 rads/sec and a damping ratio of 0.20. Assume an initial displacement of 50mm, and a steady state displacement of 0mm. (Hint: Find the response as a function of time.) 14. Determine the first order differential equation given the graphical response shown below. Assume the input is a step function. x 4
t(s) 0
1
2
3
4
15. Explain with graphs how to develop first and second-order equations using experimental data. 16. The second order response below was obtained experimentally. Determine the parameters of
differential equations - 3.55
the differential equation that resulted in the response assuming the input was a step function. 0.5s 1s
2
10
0
t(s)
17. Develop equations (function of time) for the first and second order responses shown below. x (m) 5m
0m 0.1s
0.2s
0.3s
0.4s
0.5s
0.6s
0.7s
0.8s
t (s)
x (m) 5m 0m 1s
-10m
3s
t (s)
differential equations - 3.56
3.9 PRACTICE PROBLEM SOLUTIONS 1. B -----
FM– FM- – M t F e x ( t ) = ----------– --- t + -------2 2 B B B 2. homogeneous:
guess
yh = e
· At y h = Ae
At
2 At
–2
A e + ( 100s )e 2
At
·· 2 At yh = A e
= 0
–2
A = –100s A = ± 10 js y h = C 1 cos ( 10t + C 2 ) particular:
guess
· yp = 0
yp = A –2
( 0 ) + ( 100s )A = 9.81ms –2 –2 ( 100s )A = 9.81ms –2 9.81ms = 0.0981m A = --------------------–2 100s y p = 0.0981m initial conditions:
–1
·· yp = 0 –2
y = y h + y p = C 1 cos ( 10t + C 2 ) + 0.0981m y' = – 10C 1 sin ( 10t + C 2 ) for d/dt y0 = 0m: 0 = – 10C 1 sin ( 10 ( 0 ) + C 2 ) for y0 = 0m:
C2 = 0
0 = C 1 cos ( 10 ( 0 ) + ( 0 ) ) + 0.0981m – 0.0981m = C 1 cos ( 0 ) y ( t ) = ( – 0.0981m ) cos ( 10t ) + 0.0981m
C 1 = – 0.0981m
differential equations - 3.57
3. – 5t
case 1:
x ( t ) = – 0.0115e
case 2:
x ( t ) = – 0.010e
case 3:
x ( t ) = 775 ⋅ 10 e
– 10t
cos ( 8.66t – 0.524 ) + 0.010 – 0.10te
– 6 – 37.32t
– 10t
+ 0.010
– 0.0108e
– 2.679t
+ 0.010
4.
or
V o ( t ) = – 8.465e
– 0.6t
sin ( 1.960t + 1.274 ) + 8.095
V o ( t ) = – 8.465e
– 0.6t
cos ( 1.960t – 0.2971 ) + 8.095
V 0 ( t ) = – 8.331e
– 0.6t
cos ( 1.96t – 0.238 ) + 8.095
5.
6. a)
b) –t
x1 ( t ) = e – 1
x ( t ) = – 12.485e
–t
x 2 ( t ) = 2e – 2
ζ = 0.5
τ = 1
– 0.5t
cos ( 0.866t – 0.524 ) + 10.81
ωn = 1
7. – 5t
case 1:
x ( t ) = – 0.00117e
case 2:
x ( t ) = ( 1.96 ⋅ 10 )e
case 3:
x ( t ) = ( 3.5 ⋅ 10 )e
–3
8. 24.37 rad/sec 9. fn=3.77Hz, damp.=.575
–3
sin ( 8.66t – 1.061 ) + 0.0101 sin ( t – 0.101 ) – 10t
–3
– 10t
–6
– 37.32t
+ ( 9.9 ⋅ 10 )te
– 2.679t
– ( 18 ⋅ 10 )e
–3
+ ( 9.9 ⋅ 10 ) sin ( t + 0.20 ) –3
+ ( 9.4 ⋅ 10 ) sin ( t + 0.382 )
differential equations - 3.58
10. ·· · x + 8.048x + 77.88x = F ( t ) 11. Given
s K d = 6N ---m
N K s = 36 ---m
28N M = ----------------- = 2.85kg N 9.81 -----kg The typical transfer function for a mass-spring-damper systems is, Ks F ·· · K d x + x ------ + x ----- = ---- M M M The second order parameters can be calculated from this. 2 ·· · x + x ( 2ζω n ) + x ( ω n ) = y ( t )
ωn =
Ks ----- = M
N 36 ---m = ---------------2.85kg
kgm 36 ---------2ms - = ---------------2.85kg
12.63s
–2
rad = 3.55 --------- = 0.6Hz s
K d s ----6N --- M m ξ = ------------ = --------------------------------------------- = 0.296 2ω n rad 2 ( 3.55 ) --------- 2.85kg s 2 rad ω d = ω n 1 – ξ = 3.39 --------s If pulled and released the system would have a decaying oscillation about 0.52Hz A critically damped system would require a damping coefficient of.... K -----d- Kd M ξ = ------------ = --------------------------------------------- = 1.00 2ω n rad 2 ( 3.55 ) --------- 2.85kg s
Ns K d = 20.2 -----m
12. – 6 – 39.50t
θ ( t ) = – 66 ⋅ 10 e
– 3.216e
0.1383t
+ 1.216e
– 0.3368t
+ 2.00
differential equations - 3.59
13. y ( t ) = 0.05e
– 2.6t
cos ( 12.74t ) = 0.05e
– 2.6t
π sin 12.74t + --- 2
14. x 4
t(s) 0
1 2 τ = 1 Given the equation form, · 1 x + --- x = A τ The values at steady state will be · x = 0 x = 4 So the unknown ‘A’ can be calculated. 1 A = 4 0 + --- 4 = A 1 · 1 x + --- x = 4 1 · x+x = 4 15. Key points: First-order: find initial final values find time constant with 63% or by slope use these in standard equation Second-order: find damped frequency from graph find time to first peak use these in cosine equation
3
4
differential equations - 3.60
16. For the first peak: – σt b----= e p ∆x
π ω d ≈ ---tp
2– σ0.5 ----= e 10 2 ln ------ = – σ0.5 10 2 σ = – 2 ln ------ = 3.219 10 For the damped frequency:
1 ξ = ----------------------------π - 2 ------+1 t p σ
2π ω d = ------ = 2π 1s
These values can be used to find the damping coefficient and natural frequency σ = ξω n
3.219 ω n = ------------ξ
ωd = ωn 1 – ξ
2
3.219 2 2π = ------------- 1 – ξ ξ 2 2π - 2 1 – ξ -----------= ------------2 3.219 ξ 2π - 2 1 -----------+ 1 = ----2 3.219 ξ
ξ =
1 ------------------------------ = 0.4560 2π - 2 ----------- 3.219 + 1
3.219 3.219 ω n = ------------- = ---------------- = 7.059 ξ 0.4560 This leads to the final equation using the steady state value of 10 2 ·· · x + 2ξωn x + ω n x = F 2 ·· · x + 2 ( 0.4560 ) ( 7.059 )x + ( 7.059 ) x = F ·· · x + 6.438x + 49.83x = F ( 0 ) + 6.438 ( 0 ) + 49.83 ( 10 ) = F ·· · x + 6.438x + 49.83x = 498.3
F = 498.3
differential equations - 3.61
17. –t
---------- 0.18 x(t) = 51 – e
x ( t ) = – 10e
– 0.693 t
cos ( πt )
3.10 ASSIGNMENT PROBLEMS 1. A mass-spring-damper system has a mass of 10Kg and a spring coefficient of 1KN/m. Select a damping coefficient so that the system will have an overshoot of 20% for a step input.
numerical methods - 4.1
4. NUMERICAL ANALYSIS
Topics: • State variable form for differential equations • Numerical integration with software and calculators • Numerical integration theory: first-order, Taylor series and Runge-Kutta • Using tabular data • A design case Objectives: • To be able to solve systems of differential equations using numerical methods.
4.1 INTRODUCTION For engineering analysis it is always preferable to develop explicit equations that include symbols, but this is not always practical. In cases where the equations are too costly to develop, numerical methods can be used. As their name suggests, numerical methods use numerical calculations (i.e., numbers not symbols) to develop a unique solution to a differential equation. The solution is often in the form of a set of numbers, or a graph. This can then be used to analyze a particular design case. The solution is often returned quickly so that trial and error design techniques may be used. But, without a symbolic equation the system can be harder to understand and manipulate. This chapter focuses on techniques that can be used for numerically integrating systems of differential equations.
4.2 THE GENERAL METHOD The general process of analyzing systems of differential equations involves first putting the equations into standard form, and then integrating these with one of a number of techniques. State variable equations are the most common standard equation form. In this form all of the equations are reduced to first-order differential equations. These firstorder equations are then easily integrated to provide a solution for the system of equations.
numerical methods - 4.2
4.2.1 State Variable Form At any time a system can be said to have a state. Consider a car for example, the state of the car is described by its position and velocity. Factors that are useful when identifying state variables are: • The variables should describe energy storing elements (potential or kinetic). • The variables must be independent. • They should fully describe the system elements. After the state variables of a system have been identified, they can be used to write first-order state variable equations. The general form of state variable equations is shown in Figure 4.1. Notice that the state variable equation is linear, and the value of x is used to calculate the derivative. The output equation is not always required, but it can be used to calculate new output values.
d- --- dt x = Ax + Bu y = Cx + Du
state variable equation output equation
where, x = state/output vector (variables such as position) u = input vector (variables such as input forces) A = transition matrix relating outputs/states B = matrix relating inputs to outputs/states y = non-state value that can be found directly (i.e. no integration) C = transition matrix relating outputs/states D = matrix relating inputs to outputs/states
Figure 4.1
The general state variable form
An example of a state variable equation is shown in Figure 4.2. As always, the FBD is used to develop the differential equation. The resulting differential equation is second-order, but this must be reduced to first-order. Using the velocity variable, ’v’ the second-order differential equation can be reduced to a first-order equation. An equation is also required to define the velocity as the first derivative of the position, ’x’. In the example the two state equations are manipulated into a matrix form. This form can be useful, and may be required for determining a solution. For example, HP calculators require the matrix form, while TI calculators use the equation forms. Software such as Mathcad can use either form. The main disadvantage of the matrix form is that it will only work for lin-
numerical methods - 4.3
ear differential equations.
Given the FBD shown below, the differential equation for the system is, F
K d x·
M
x Mx··
+
Ksx
∑ Fx
= – F – K d x· – K s x = Mx··
– F – K d x· – K s x = Mx··
The equation is second-order, so two state variables will be needed. One obvious choice for a state variable in this equation is ’x’. The other choice can be the velocity, ’v’. Equation (1) defines the velocity variable. The velocity variable can then be substituted into the differential equation for the system to reduce it to first-order. x· = v (1) Mx·· = – F – K d x· – K s x Mv· = – F – K d v – K s x –Ks –Kd –F v· = x --------- + v ---------- + ------ M M M
(2)
Equations (1) and (2) can also be put into a matrix form similar to that given in Figure 4.1. 0 1 0 d x = – K – K x + –F ----dt v -------------s- ---------d- v M M M Note: To have a set of differential equations that is solvable, there must be the same number of state equations as variables. If there are too few equations, then an additional equation must be developed using an unexploited relationship. If there are too many equations, a redundancy or over constraint must be eliminated.
Figure 4.2
A state variable equation example
numerical methods - 4.4
Put the equation into state variable and matrix form.
2
d- x ∑ F = F = M ---dt
ans. x· = v
F · v = ----M
0 d- x 0 1 x ---= + F dt v ----0 0 v M
Figure 4.3
Drill problem: Put the equation in state variable form
Consider the two cart problem in Figure 4.4. The carts are separated from each other and the wall by springs, and a force is applied to the left hand side. Free body diagrams are developed for each of the carts, and differential equations developed. For each cart a velocity state variable is created. The equations are then manipulated to convert the second-order differential equations to first-order state equations. The four resulting equations are then put into the state variable matrix form.
numerical methods - 4.5
x1
x2
F
K s1
K s2
M1
K s1 ( x 1 – x 2 )
F M1
K s1 ( x 1 – x 2 )
M2
·· M1 x1
M2
K s2 ( x 2 ) ·· M2 x2
+
∑ Fx
·· = F – K s1 ( x 1 – x 2 ) = M 1 x 1
·· M 1 x 1 + K s1 x 1 – K s1 x 2 = F · x1 = v1 · M 1 v 1 + K s1 x 1 – K s1 x 2 = F · F- – K s1 + K s1 v 1 = ---------------x ---------x 1 M1 M1 M1 2 +
∑ Fx
(2)
·· = K s1 ( x 1 – x 2 ) – K s2 ( x 2 ) = M 2 x 2
·· M 2 x 2 + ( K s1 + K s2 )x 2 – K s1 x 1 = 0 · x2 = v2 (3) · M 2 v 2 + ( K s1 + K s2 )x 2 – K s1 x 1 = 0 K s1 K s1 + K s2 · v 2 = ---------x – -------------------------- x 2 (4) M2 M2 1
The state equations can now be combined in a matrix form. 0 1 0 0 x1 x1 0 – K s1 K s1 ------------- 0 --------0 Fv1 v1 M1 M1 ------d = + M1 ----dt x x 0 0 0 1 2 2 0 K – K – K v2 v2 s1 s1 s2 0 --------- 0 ----------------------------- 0 M2 M2
Figure 4.4
(1)
Two cart state equation example
numerical methods - 4.6
x Kd M
Ks
ans. · x = v Ks Kd · v = v ------ + x ----- M M
Figure 4.5
Drill problem: Develop the state equations in matrix form
numerical methods - 4.7
x1
x2 K d1
F M1
K s1
K s2 M2
ans. x· = v 1 1 · x2 = v2 – K d1 – K s1 K d1 K s1 · F v 1 = v 1 ------------ + x 1 ----------- + v 2 --------- + x 2 -------- + ------M1 M1 M1 M1 M1 – K d1 – K s1 – K s2 K d1 K s1 · v 2 = v 2 ------------ + x 2 --------------------------- + v 1 --------- + x 1 -------- M2 M2 M2 M2
Figure 4.6
Drill problem: Convert the system to state equations
numerical methods - 4.8
In some cases we will develop differential equations that cannot be directly reduced because they have more than one term at the highest order. For example, if a second-order differential equation has two second derivatives it cannot be converted to a state equation in the normal manner. In this case the two high order derivatives can be replaced with a dummy variable. In mechanical systems this often happens when masses are neglected. Consider the example problem in Figure 4.7, both ’y’ and ’u’ are first derivatives. To solve this problem, the highest order terms (’y’ and ’u’) are moved to the left of the equation. A dummy variable, ’q’, is then created to replace these two variables with a single variable. This also creates an output equation as shown in Figure 4.1.
Given the equation, 3y· + 2y = 5u· Step 1: put both the first-order derivatives on the left hand side, 3y· – 5u· = – 2y Step 2: replace the left hand side with a dummy variable, q = 3y – 5u
q· = – 2y
Step 3: solve the equation using the dummy variable, then solve for y as an output eqn. q + 5u q· = – 2y y = --------------3
Figure 4.7
Using dummy variables for multiple high order terms
At other times it is possible to eliminate redundant terms through algebraic manipulation, as shown in Figure 4.8. In this case the force on both sides of the damper is the same, so it is substituted into the equation for the cart. But, the effects on the damper must also be integrated, so a dummy variable is created for the integration. An output equation was created to calculate the value for x1.
numerical methods - 4.9
x1 F
x2
Kd M
The FBDs and equations are; · · Kd ( x1 – x2 )
F
+
∑ Fx
· · = F – Kd ( x1 – x2 ) = 0
· · Kd ( x 1 – x 2 ) = F
(1)
q = x1 – x2 Kd ( q ) = F
· · Kd ( x1 – x2 ) ·· Mx 2
Fq· = -----Kd x1 = x2 + q M
+
(2) (3)
· · ·· = K d ( x 1 – x 2 ) = Mx2 ·· F = Mx 2 · x2 = v2
∑ Fx
· Fv 2 = ---M
(4) (5)
The state equations (2, 4, 5) can be put in matrix form. The output equation (2) can also be put in matrix form. F-----q q Kd 0 0 0 d x x ----- 2 = 0 0 1 2 + 0 dt v2 0 0 0 v2 F---M
Figure 4.8
A dummy variable example
q x1 = 1 1 0 x2 + 0 v2
numerical methods - 4.10
4.3 NUMERICAL INTEGRATION Repetitive calculations can be used to develop an approximate solution to a set of differential equations. Starting from given initial conditions, the equation is solved with small time steps. Smaller time steps result in a higher level of accuracy, while larger time steps give a faster solution.
4.3.1 Numerical Integration With Tools Numerical solutions can be developed with hand calculations, but this is a very time consuming task. In this section we will explore some common tools for solving state variable equations. The analysis process follows the basic steps listed below. 1. Generate the differential equations to model the process. 2. Select the state variables. 3. Rearrange the equations to state variable form. 4. Add additional equations as required. 5. Enter the equations into a computer or calculator and solve. An example in Figure 4.9 shows the first four steps for a mass-spring-damper combination. The FBD is used to develop the differential equations for the system. The state variables are then selected, in this case the position, y, and velocity, v, of the block. The equations are then rearranged into state equations. The state equations are also put into matrix form, although this is not always necessary. At this point the equations are ready for solution.
numerical methods - 4.11
Step 1: Develop equations KS
K d y·
Ks y
Kd
M y M
My··
F
d- d- 2 --- ---F = – F – K y – K y = M ∑ y d dt s dt y d d 2 F + K d ----- y + K s y + M ----- y = 0 dt dt
F Step 2: We need to identify state variables. In this case the height is clearly a defining variable. We will also need to use the vertical velocity, because the acceleration is a second derivative (we can only have first derivatives). Using the height, y, and velocity, v, as state variables we may now proceed to rewriting the equations. (Note: this is just an algebraic trick, but essential when setting up these matrices.) Step 3:
d- ---y = v dt – F – Kd v – K s y d- ---v = -------------------------------------- dt M
Step 4: We put the equations into a state variable matrix form. d- --- dt y
0 1 F= – K – K y + 0 ---S –1 M ---------- ---------d- v d- ---v M M dt
Figure 4.9
Dynamic system example
Figure 4.10 shows the method for solving state equations on a TI-86 graphing calculator. (Note: this also works on other TI-8x calculators with minor modifications.) In the example a sinusoidal input force, F, is used to make the solution more interesting. The next step is to put the equation in the form expected by the calculator. When solving with the TI calculator the state variables must be replaced with the predefined names Q1, Q2, etc. The steps that follow describe the button sequences required to enter and analyze the equations. The result is a graph that shows the solution of the equation. Points can then be taken from the graph using the cursors. (Note: large solutions can sometimes take a few minutes to solve.)
numerical methods - 4.12
First, we select some parameter values for the equations of Figure 4.9. The input force will be a decaying sine wave. d- ---y = vy dt – F – Kd vy – Ks y d- – 0.5t ---v y = ---------------------------------------- = – 4e sin ( t ) – 2v y – 5y dt M Next, the calculator requires that the state variables be Q1, Q2, ..., Q9, so we replace y with Q1 and v with Q2. Q1' = Q2 Q2' = – 4e
– 0.5t
sin ( t ) – 2Q2 – 5Q1
Now, we enter the equations into the calculator and solve. To do this roughly follow the steps below. Look at the calculator manual for additional details. 1. Put the calculator in differential equation mode [2nd][MODE][DifEq][ENTER] 2. Go to graph mode and enter the equations above [GRAPH][F1] 3. Set up the axis for the graph [GRAPH][F2] so that time and the xaxis is from 0 to 10 with a time step of 0.5, and the y height is from +3 to -3. 4. Enter the initial conditions for the system [GRAPH][F3] as Q1=0, Q2=0 5. Set the axis [GRAPH][F4] as x=t and y=Q 6. (TI-86 only) Set up the format [GRAPH][MORE][F1][FldOff][ENTER] 7. Draw the graph [GRAPH][F5] 8. Find points on the graph [GRAPH][MORE][F4]. Move the left/right cursor to move along the trace, use the up/down cursor to move between traces. Figure 4.10
Solving state equations with a TI-85 calculator
numerical methods - 4.13
First, we select some parameter values for the equations of Figure 4.9. The input force will be a decaying sine wave. d- ---y = vy dt – F – Kd vy – Ks y – 0.5t d- ---v y = -----------------------------------------= – 4e sin ( t ) – 2v y – 5y dt M Next, the calculator requires that the state variables be Q1, Q2, ..., Q9, so we replace y with Q1 and v with Q2. Q1' = Q2 Q2' = – 4e
– 0.5t
sin ( t ) – 2Q2 – 5Q1
Now, we enter the equations into the calculator and solve. To do this roughly follow the steps below. Look at the calculator manual for additional details. 1. Put the calculator in differential equation mode [2nd][MODE][DifEq][ENTER] 2. Go to graph mode and enter the equations above [GRAPH][F1] 3. Set up the axis for the graph [GRAPH][F2] so that time and the xaxis is from 0 to 10 with a time step of 0.5, and the y height is from +3 to -3. 4. Enter the initial conditions for the system [GRAPH][F3] as Q1=0, Q2=0 5. Set the axis [GRAPH][F4] as x=t and y=Q 6. (TI-86 only) Set up the format [GRAPH][MORE][F1][FldOff][ENTER] 7. Draw the graph [GRAPH][F5] 8. Find points on the graph [GRAPH][MORE][F4]. Move the left/right cursor to move along the trace, use the up/down cursor to move between traces.
UPDATE FOR TI-89
Figure 4.11
Solving state equations with a TI-89 calculator
State equations can also be solved in Mathcad using built-in functions, as shown in Figure 4.12. The first step is to enter the state equations as a function, ’D(t, Q)’, where ’t’ is the time and ’Q’ is the state variable vector. (Note: the equations are in a vector, but it is not the matrix form.) The state variables in the vector ’Q’ replace the original state variables in the equations. The ’rkfixed’ function is then used to obtain a solution. The arguments for the function, in sequence are; the state vector, the start time, the end time, the number of steps, and the state equation function. In this case the 10 second time interval is divided into 100 parts each 0.1s in duration. This time is chosen because of the general
numerical methods - 4.14
response time for the system. If the time step is too large the solution may become unstable and go to infinity. A time step that is too small will increase the computation time marginally. When in doubt, run the calculator again using a smaller time step.
Figure 4.12
Solving state variable equations with Mathcad
Note: Notice that for the TI calculators the variables start at Q1, while in Mathcad the arrays start at Q0. Many students encounter problems because they forget this.
numerical methods - 4.15
4.3.2 Numerical Integration The simplest form of numerical integration is Euler’s first-order method. Given the current value of a function and the first derivative, we can estimate the function value a short time later, as shown in Figure 4.13. (Note: Recall that the state equations allow us to calculate first-order derivatives.) The equation shown is known as Euler’s equation. Basically, using a known position and first derivative we can calculate an approximate value a short time, h, later. Notice that the function being integrated curves downward, creating an error between the actual and estimated values at time ’t+h’. If the time step, h, were smaller, the error would decrease.
y(t + h)
d y ( t + h ) ≈ y ( t ) + h ----- y ( t ) dt
d---y( t) dt
y(t)
t Figure 4.13
t+h
Note: here the h value is the time step between integrations points. A smaller time step will increase the accuracy.
First-order numerical integration
The example in Figure 4.14 shows the solution of Newton’s equation using Euler’s method. In this example we are determining velocity by integrating the acceleration caused by a force. The acceleration is put directly into Euler’s equation. This is then used to calculate values iteratively in the table. Notice that the values start before zero so that initial conditions can be used. If the system was second-order we would need two previous values for the calculations.
numerical methods - 4.16
Given the differential equation, d F = M ----- v dt we can create difference equations using simple methods. d- F --- dt v = ---M
first rearrange equation
d v ( t + h ) = v ( t ) + h ----- v ( t ) dt
put this in the Euler equation
F(t) v ( t + h ) = v ( t ) + h ---------- M
finally substitute in known terms
We can now use the equation to estimate the system response. We will assume that the system is initially at rest and that a force of 1N will be applied to the 1kg mass for 4 seconds. After this time the force will rise to 2N. A time step of 2 seconds will be used. i
t (sec)
F (N) d/dt vi
vi
-1 0 1 2 3 4 5 6 7 8
-2 0 2 4 6 8 10 12 14 16
0 1 1 2 2 2 2 2 2 2
0 0 2 4 8 12 16 20 etc
Figure 4.14
0 1 1 2 2 2 2 2 etc
First order numerical integration example
numerical methods - 4.17
Use first-order integration to solve the differential equation from 0 to 10 seconds with time steps of 1 second.
· x + 0.1x = 5
ans. x ( t + h ) = x ( t ) + h ( – 0.1x ( t ) + 5 ) x ( 10 ) =
Figure 4.15
Drill problem: Numerically integrate the differential equation
An example of solving the previous example with a traditional programming language is shown in Figure 4.16. In this example the results will be written to a text file ’out.txt’. The solution iteratively integrates from 0 to 10 seconds with time steps of 0.1s. The force value is varied over the time period with ’if’ statements. The integration is done with a separate function.
numerical methods - 4.18
double step(double, double, double); int main(){ double
h = 0.1, M = 1.0, F;
FILE *fp; double v, t; if( ( fp = fopen("out.txt", "w")) != NULL){ v = 0.0; for( t = 0.0; t < 10.0; t += h ){ if((t >= 0.0) && (t < 4.0)) F = 1.0; if(t > 4.0) F = 2.0; v = step(v, h, F/M); fprintf(fp, "%f, %f, %f\n", t, v, F, M); } } fclose(fp); } double step(double v, double h, double slope){ double v_new; v_new = v + h * slope; return v_new; }
Figure 4.16
Solving state variable equations with a C program
numerical methods - 4.19
double step(double, double, double); public class Integrate extends Object public void main() { double h = 0.1, M = 1.0, F; FileOut fp = new FileOut("out.txt"); if(fp.writeStatus != fp.IO_EXCEPTION){ double v = 0.0; for( double t = 0.0; t < 10.0; t += h ){ if((t >= 0.0) && (t < 4.0)) F = 1.0; if(t > 4.0) F = 2.0; v = step(v, h, F/M); fp.printf(fp, "%f, %f, %f\n", t, v, F, M); } fp.close(); } fclose(fp); } public double step(double v, double h, double slope){ double v_new; v_new = v + h * slope; return v_new; } }
Figure 4.17
Solving state variable equations with a Java program
The program below is for Scilab (a Matlab clone). The state variable function is defined first. This is followed by a definition of the parameters to be used for the numerical integration. Finally the function is integrated with rectangular, trapezoidal and Simpson’s rule forms.
numerical methods - 4.20
// // // // // // // // //
first_order.sce A first order integration of an accelerating mass To run this in Scilab use 'File' then 'Exec'. by: H. Jack Sept., 16, 2002
// System component values mass = 10; force = 100; x0 = 8; v0 = 12; X=[x0, v0];
// initial conditions
// define the state matrix function // the values returned are [x, v] function foo=f(state,t) foo = [ state($, 2), force/mass]; // d/dt x = v, d/dt v = F/M endfunction
// Set the time length and step size for the integration steps = 100; t_start = 1; t_end = 100; h = (t_end - t_start) / steps;
Figure 4.18
First order integration with Scilab
numerical methods - 4.21
// // Loop for integration // for i=1:steps, X = [X ; X($,:) + h*f(X, i*h)]; end printf("The value at the end of first order integration is (x, v) = (%f, %f)\n", ... X($,1), ... X($,2));
// // Explicit equation // function x=position(x0, v0, a0, t) x = (0.5 * a0 * t^2) + (v0 * t) + x0; endfunction function v=velocity(v0, a0, t) v = (a0 * t) + v0; endfunction printf("The value with integration is (x, v) = (%f, %f)\n", ... position(x0, v0, force/mass, t_end), ... velocity(v0, force/mass, t_end));
// // // // // // // // // //
The results should be first order integration = (49710, 1002) explicit = (51208, 1012) The difference is 1498 for position and 10 for velocity. This is relatively small, but shows a clear case of the innacuracy of the numerical solutions. Note: increasing the number of steps increases the accuracy
Figure 4.19
First order integration with Scilab (continued)
4.3.3 Taylor Series First-order integration works well with smooth functions. But, when a highly curved function is encountered we can use a higher order integration equation. The Taylor series equation shown in Figure 4.20 for approximating a function. Notice that the first part of the equation is identical to Euler’s equation, but the higher order terms add accuracy.
numerical methods - 4.22
d 1 2 d 2 1 3 d 3 1 4 d 4 x ( t + h ) = x ( t ) + h ----- x ( t ) + ----- h ----- x ( t ) + ----- h ----- x ( t ) + ----- h ----- x ( t ) + … dt 2! dt 3! dt 4! dt Figure 4.20
The Taylor series
An example of the application of the Taylor series is shown in Figure 4.21. Given the differential equation, we must first determine the derivatives and substitute these into Taylor’s equation. The resulting equation is then used to iteratively calculate values.
– 20t 3 x· – x = 1 + e +t
Given
– 20t 3 d +t +x We can write, ----- x = 1 + e dt – 20t 2 d- 2 ---+ 3t dt x = – e – 20t d- 3 ---x = e + 6t dt In the Taylor series this becomes, x(t + h) = x( t) + h(1 + e Thus
– 20t
3 1- h 2 ( – e – t + 3t 2 ) + ---1- h 3 ( e – t + 6t + t + x ) + ---2! 3!
x0 = 0
t (s)
x(t)
h = 0.1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
0 0
e.g., for t=0.1 1- ( 0.1 ) 2 ( – 1 ) + ---1- ( 0.1 ) 3 ( 1 ) = x ( 0 + 0.1 ) = 0 + 0.1 ( 2 ) + ---2! 3!
Figure 4.21
Integration using the Taylor series method
numerical methods - 4.23
Recall that the state variable equations are first-order equations. But, to obtain accuracy the Taylor method also requires higher order derivatives, thus making is unsuitable for use with state variable equations.
4.3.4 Runge-Kutta Integration First-order integration provides reasonable solutions to differential equations. That accuracy can be improved by using higher order derivatives to compensate for function curvature. The Runge-Kutta technique uses first-order differential equations (such as state equations) to estimate the higher order derivatives, thus providing higher accuracy without requiring other than first-order differential equations. The equations in Figure 4.22 are for fourth order Runge-Kutta integration. The function ’f()’ is the state equation or state equation vector. For each time step the values ’F1’ to ’F4’ are calculated in sequence and then used in the final equation to find the next value. The ’F1’ to ’F4’ values are calculated at different time steps, and values from previous time steps are used to ’tweak’ the estimates of the later states. The final summation equation has a remote similarity to the first order integration equation. Notice that the two central values in time are more heavily weighted.
F 1 = hf ( t, x ) F F 2 = hf t + h---, x + ------1 2 2 F F 3 = hf t + h---, x + ------2 2 2
Note: in this case the state equation function f(t, x) includes the state variables, x, and time, t. However, in simpler systems the state equations may not include time and it could be replaced with f(x).
F 4 = hf ( t + h, x + F 3 ) x ( t + h ) = x ( t ) + 1--- ( F1 + 2F 2 + 2F 3 + F 4 ) 6 where, x = the state variables f = the differential function or (d/dt) x t = current point in time h = the time step to the next integration point
Figure 4.22
Fourth order Runge-Kutta integration
numerical methods - 4.24
An example of a Runge-Kutta integration calculation is shown in Figure 4.23. The solution begins by putting the state equations in matrix form and defining initial conditions. After this, the four integrating factors are calculated. Finally, these are combined to get the final value after one time step. The number of calculations for a single time step should make obvious the necessity of computers and calculators.
d- x = v ---dt
y = 2 (assumed input)
d- v = 3 + 4v + 5y ---dt d- x = 0 1 x + 0 0 y ---dt v 0 4 v 5 3 1
v0 = 1 x0 = 3 h = 0.1
For the first time step, F 1 = 0.1 0 1 3 + 0 0 2 = 0.1 1 + 0 = 0.1 0 4 1 4 5 3 1 13 1.7 3 + 0.1 ------0 1 2 0 0 2 = 0.185 F 2 = 0.1 + 5 3 1 2.04 0 4 1 + 1.7 ------ 2 3 + 0.185 ------------0 1 2 0 0 2 = 0.202 F 3 = 0.1 + 5 3 1 2.108 0 4 1 + 2.04 --------- 2 F 4 = 0.1 0 1 3 + 0.202 + 0 0 2 = 0.3108 0 4 1 + 2.108 5 3 1 2.5432 xi + 1 vi + 1
=
xi
+ 1--- ( F1 + 2F 2 + 2F 3 + F 4 ) 6 vi
= 3 + 1--- 0.1 + 2 0.185 + 2 0.202 + 0.3108 = 3.1974667 6 1.7 vi + 1 1 2.04 2.108 2.5432 3.0898667 xi + 1
Figure 4.23
Runge-Kutta integration example
numerical methods - 4.25
d 2 F = M ----- x dt
Figure 4.24
use,
Drill problem: Integrate the acceleration function
x(0) = 1 v(0) = 2 h = 0.5 s F = 10 M=1
numerical methods - 4.26
Leave the solution in variable form, and then change values to see how the system response changes.
Kd
y
M
–1 K d = 10Nsm –1 K s = 10Nm M = 1kg
Ks
Figure 4.25
y 0 = 1m
· y 0 = 0m
Drill problem: Integrate to find the system response
The program in Figure 4.26 and Figure 4.28 is used to perform a Runge-Kutta integration of a mass-spring-damper system. The ’main’ program loops through the time steps and writes the value to a file. The ’step’ function performs one timestep integration for a
numerical methods - 4.27
second order Runge-Kutta integration. It uses the functions ’add’ and ’multiply’ to manipulate the state matrix. The ’derivative’ function updates the state matrix with the new derivative values.
/* A program to do Runge Kutta integration of a mass spring damper system */ #include <stdio.h> void void void void
multiply(double, double[], double[]); add(double[], double[], double[]); step(double, double, double[]); derivative(double, double[], double[]);
#define #define #define #define #define
SIZE Ks Kd Mass Force
int main(){ FILE
2 /* the length of the state vector */ 1000 /* the spring coefficient */ 10000 /* the damping coefficient */ 10 /* the mass coefficient */ 100 /* the applied force */
*fp;
double h = 0.001; double t; int j = 0; double X[SIZE];// create state variable list X[0] = 0;// set initial condition for x X[1] = 0;// set initial condition for v if( ( fp = fopen("out.txt", "w")) != NULL){ fprintf(fp, " t(s) x v \n\n"); for( t = 0.0; t < 50.0; t += h ){ step(t, h, X); if(j == 0) fprintf(fp, "%9.5f %9.5f %9.5f\n", t, X[0], X[1]); j++; if(j >= 10) j = 0; } } fclose(fp); }
Figure 4.26
Runge-Kutta integration C program
numerical methods - 4.28
/* First order integration done here (could be replaced with runge kutta)*/ void step(double t, double h, double X[]){ double tmp[SIZE], dX[SIZE], F1[SIZE], F2[SIZE], F3[SIZE], F4[SIZE]; /* Calculate F1 */ derivative(t, X, dX); multiply(h, dX, F1); /* Calculate F2 */ multiply(0.5, F1, tmp); add(X, tmp, tmp); derivative(t+h/2.0, tmp, dX); multiply(h, dX, F2); /* Calculate F3 */ multiply(0.5, F2, tmp); add(X, tmp, tmp); derivative(t+h/2.0, tmp, dX); multiply(h, dX, F3); /* Calculate F4 */ add(X, F3, tmp); derivative(t+h, tmp, dX); multiply(h, dX, F4); /* Calculate the weighted sum */ add(F2, F3, tmp); multiply(2.0, tmp, tmp); add(F1, tmp, tmp); add(F4, tmp, tmp); multiply(1.0/6.0, tmp, tmp); add(tmp, X, X); } /* State Equations Calculated Here */ void derivative(double t, double X[], double dX[]){ dX[0] = X[1]; dX[1] = (-Ks/Mass)*X[0] + (-Kd/Mass)*X[1] + (Force/Mass); } /* A subroutine to add vectors to simplify other equations */ void add(double X1[], double X2[], double R[]){ for(int i = 0; i < SIZE; i++) R[i] = X1[i] + X2[i]; } /* A subroutine to multiply a vector by a scalar to simplify other equations*/ void multiply(double X, double V[], double R[]){ for(int i = 0; i < SIZE; i++) R[i] = X*V[i]; }
Figure 4.27
Runge-Kutta integration C program (cont’d)
A Scilab program is given in Figure 4.28 to perform a Runge Kutta integration.
numerical methods - 4.29
// // // //
runge_kutta.sce A first order integration of an accelerating mass To run this in Scilab use 'File' then 'Exec'. by: H. Jack Sept., 15, 2003
// System component values mass = 10; force = 100; x0 = 8; v0 = 12; X=[x0, v0];
// initial conditions
// define the state matrix function // the values returned are [x, v] function foo=f(state,t) foo = [ state($, 2), force/mass]; // d/dt x = v, d/dt v = F/M endfunction // Set the time length and step size for the integration steps = 1000; t_start = 0; t_end = 100; h = (t_end - t_start) / steps; t = [t_start]; // Loop for integration for i=1:steps, t = [t ; t($,:) + h]; F1 = h * f(X($,:), t($,:)); F2 = h * f(X($,:) + F1/2.0, t($,:) + h/2.0); F3 = h * f(X($,:) + F2/2.0, t($,:) + h/2.0); F4 = h * f(X($,:) + F3, t($,:) + h); X = [X ; X($,:) + (F1 + 2.0*F2 + 2.0*F3 + F4)/6.0]; end // print some results to compare printf("The value at the end of first order integration is (x, v) = (%f, %f)\n", ... X($,1), ... X($,2)); printf("The position (using an equation) should be %f\n", 0.5*force/mass*(t_endt_start)^2.0 + v0*(t_end - t_start) + x0); // Graph the values plot2d(t, X, [-2, -5], leg="position@velocity"); // leg - the legend titles // style - draw lines with marks // nax - grid lines for the graph xtitle('Time (s)');
Figure 4.28
Runge-Kutta integration Scilab program
4.4 SYSTEM RESPONSE In most cases the result of numerical analysis is graphical or tabular. In both cases
numerical methods - 4.30
details such as time constants and damped frequencies can be obtained by the same methods used for experimental analysis. In addition to these methods there is a technique that can determine the steady-state response of the system.
4.4.1 Steady-State Response The state equations can be used to determine the steady-state response of a system by setting the derivatives to zero, and then solving the equations. Consider the example in Figure 4.29. The solution begins with a state variable matrix. (Note: this can also be done without the matrix also.) The derivatives on the left hand side are set to zero, and the equations are rearranged and solved with Cramer’s rule.
Given the state variable form:
Set the derivatives to zero
Solve for x and v
0 1 0 d x x + ----= Ks K d Fdt v ---– ------ – ------- v M M M 0 1 0 0 = x + Ks Kd F---0 – ------ – ------- v M M M 0 1 0 x = Ks Kd F – ----– ------ – ------- v M M M
0
1 F Kd F- ---– ----- – ------ M M M Fx = ------------------------------ = ------------ = -----K KS 0 1 -----s- M Ks Kd – ------ – ------M M
Figure 4.29
0 0 Ks F – ------ – ----M M 0 - = 0 v = ------------------------------ = ----------K 0 1 -----s- M Ks Kd – ------ – ------M M
Finding the steady-state response
numerical methods - 4.31
4.5 DIFFERENTIATION AND INTEGRATION OF EXPERIMENTAL DATA When doing experiments, data is often collected in the form of individual data points (not as complete functions). It is often necessary to integrate or differentiate these values. The basic equations for integrating and differentiating are shown in Figure 4.30. Given data points, y, collected at given times, t, we can integrate and differentiate using the given equations. The integral is basically the average height of the two points multiplied by the width to give an area, or integral. The first derivative is basically the slope between two points. The second derivative is the change in slope values for three points. In a computer based system the time points are often equally spaced in time, so the difference in time can be replaced with a sample period, T. Ideally the time steps would be as small as possible to increase the accuracy of the estimates.
y(t) yi + 1 yi yi – 1
ti – 1
T
ti
T
ti + 1
ti
yi + yi – 1 T ------------------------ ( t – t ≈ y ( t ) d t ∫t i i i – 1 ) = --2- ( y i + y i – 1 ) 2 i–1 y i – y i – 1 y i + 1 – y i d---y ( t i ) ≈ ------------------------ = ------------------------- = --1- ( y i – y i – 1 ) = --1- ( y i + 1 – y i ) dt T T ti – t i – 1 ti + 1 – ti --1- ( y i + 1 – y i ) – --1- ( y i – y i – 1 ) –2 yi + yi – 1 + yi + 1 2 d- T T --------------------------------------------------------------------------≈ = ----------------------------------------------------y ( t ) i dt T 2 T Figure 4.30
Integration and differentiation using data points
numerical methods - 4.32
An example of numerical integration using Scilab is given in Figure 4.31 and Figure 4.32. // // // // // // // // //
integrate.sce A simple program to integrate a function To run this in Scilab use 'File' then 'Exec'. by: H. Jack Sept., 9, 2002
// define the function function foo=f(x) foo = 5 * x + 2 * log(sin(x) / x + 2); endfunction // Set the time length and step size steps = 10; x_start = 1; x_end = 10; x_delta = (x_end - x_start) / steps;
// // Loop for rectangular integration // total = 0; // set the initial sum to zero for i=0:steps, x = x_start + i * x_delta; total = total + f(x); end total = total * x_delta; printf("Rectangular integration value %f\n", total);
Figure 4.31
Integration with a Scilab program
numerical methods - 4.33
// Loop for trapezoidal integration // total = 0; // set the initial sum to zero for i=0:steps, x = x_start + i * x_delta; if i == 0 then total = total + f(x); elseif i == steps then total = total + f(x); else total = total + 2 * f(x); end end total = total * x_delta / 2; printf("Trapezoidal integration value %f\n", total);
// // Loop for Simpson's rule integration // total = 0; // set the initial sum to zero even = 0; for i=0:steps, x = x_start + i * x_delta; if i == 0 then total = total + f(x); elseif i == steps then total = total + f(x); else even = even + 1; if even > 1 then total = total + 4 * f(x); even = 0; else total = total + 2 * f(x); end end end total = total * x_delta / 3; printf("Simpsons rule integration value %f\n", total);
Figure 4.32
Integration with a Scilab Program (cont’d)
4.6 ADVANCED TOPICS
4.6.1 Switching Functions When analyzing a system, we may need to choose an input that is more complex than inputs such as steps, ramps, sinusoids and parabolae. The easiest way to do this is to use switching functions. Switching functions turn on (have a value of 1) when their argu-
numerical methods - 4.34
ments are greater than or equal to zero, or off (a value of 0) when the argument is negative. Examples of the use of switching functions are shown in Figure 4.33. By changing the values of the arguments we can change when a function turns on or off.
u(t) 1 t u ( –t ) 1 t u(t – 1) 1 t 1 u(t + 1) 1
t
-1 u(t + 1) – u(t – 1) 1 -1 Figure 4.33
t 1
Switching function examples
These switching functions can be multiplied with other functions to create a complex function by turning parts of the function on or off. An example of a curve created with switching functions is shown in Figure 4.34.
numerical methods - 4.35
f(t) 5
t seconds 0
1
3
4
f ( t ) = 5t ( u ( t ) – ( t – 1 ) ) + 5 ( u ( t – 1 ) – u ( t – 3 ) ) + ( 20 – 5t ) ( u ( t – 3 ) – u ( t – 4 ) ) or f ( t ) = 5tu ( t ) – 5 ( t – 1 )u ( t – 1 ) – 5 ( t – 3 )u ( t – 3 ) + 5 ( t – 4 )u ( t – 4 ) Figure 4.34
Switching functions to create a non-smooth function
The unit step switching function is available in Mathcad and makes creation of complex functions relatively trivial. Step functions are also easy to implement when writing computer programs, as shown in Figure 4.35.
For the function f ( t ) = 5tu ( t ) – 5 ( t – 1 )u ( t – 1 ) – 5 ( t – 3 )u ( t – 3 ) + 5 ( t – 4 )u ( t – 4 ) double u(double t){ if(t >= 0) return 1.0; return 0.0; } double function(double t){ double f; f =
5.0 * - 5.0 - 5.0 + 5.0
t * * *
* u(t) (t - 1.0) * u(t - 1.0) (t - 3.0) * u(t - 3.0) (t - 4.0) * u(t - 4.0);
return f; }
Figure 4.35
A subroutine implementing the example in Figure 4.34
numerical methods - 4.36
4.6.2 Interpolating Tabular Data In some cases we are given tables of numbers instead of equations for a system component. These can still be used to do numerical integration by calculating coefficient values as required, in place of an equation. Tabular data consists of separate data points as seen in Figure 4.36. But, we may need values between the datapoints. A simple method for finding intermediate values is to interpolate with the "lever law". (Note: it is called this because of its’ similarity to the equation for a lever.) The table in the example only gives flow rates for a valve at 10 degree intervals, but we want flow rates at 46 and 23 degrees. A simple application of the lever law gives approximate values for the flow rates.
valve angle (deg.)
flow rate (gpm)
0 10 20 30 40 50 60 70 80 90
0 0.1 0.4 1.2 2.0 2.3 2.4 2.4 2.4 2.4
Figure 4.36
Given a valve angle of 46 degrees the flow rate is, 46 – 40 Q = 2.0 + ( 2.3 – 2.0 ) ------------------ = 2.18 50 – 40 Given a valve angle of 23 degrees the flow rate is, 23 – 20 Q = 0.4 + ( 1.2 – 0.4 ) ------------------ = 0.64 30 – 20
Using tables of values to interpolate numerical values using the lever law
The subroutine in Figure 4.37 was written to return the numerical value for the data table in Figure 4.36. In the subroutine the tabular data is examined to find the interval that the flow rate value falls inside. Once this is found the valve angle is calculated as the ratio between the two known values.
numerical methods - 4.37
#define double
SIZE 10; data[SIZE][2] = {{0.0, {10.0, {20.0, {30.0, {40.0, {50.0, {60.0, {70.0, {80.0, {90.0,
0.0}, 0.1}, 0.4}, 1.2}, 2.0}, 2.3}, 2.4}, 2.4}, 2.4}, 2.4}};
double angle(double rate){ int i; for(i = 0; i < SIZE-1; i++){ if((rate >= data[i][0]) && (rate <= data[i+1][0]){ return (data[i+1][1] - data[i][1]) * (rate - data[i][0]) / (data[i+1][0] - data[i][0]) + data[i][1]; } } printf("ERROR: rate out of range\n"); exit(1); }
Figure 4.37
A tabular interpolation subroutine example
4.6.3 Modeling Functions with Splines When greater accuracy is required, smooth curves can be fitted to interpolate points. These curves are known as splines. There are multiple methods for creating splines, but the simplest is to use a polynomial fitted to a set of points. The example in Figure 4.38 shows a spline curve being fitted for three data points. In this case a second order polynomial is used. The three data points are written out as equations, and then put into matrix form, using the coefficients as the unknown values. The matrix is then solved to obtain the coefficient values for the final equation. This equation can then be used to build a mathematical model of the system.
numerical methods - 4.38
The datapoints below might have been measured for the horsepower of an internal combustion engine on a dynamometer. S (RPM)
P (HP)
1000 4000 6000
105 205 110
In this case there are three datapoints, so we can fit the curve with a second (3-1) order polynomial. The major task is to calculate the coefficients so that the curve passes through all of the given points. 2 P ( S ) = AS + BS + C Data values can be substituted into the equation, 2 P ( 1000 ) = A1000 + B1000 + C = 105 2 P ( 4000 ) = A4000 + B4000 + C = 205 2 P ( 6000 ) = A6000 + B6000 + C = 110 This can then be put in matrix form to find the coefficients, 2 1000 1000 1 A 105 = 2 205 4000 4000 1 B 110 C 2 6000 6000 1 –1 A 1000000 1000 1 105 = B 16000000 4000 1 205 C 36000000 6000 1 110
Note: in this example the inverse matrix is used, but other methods for solving systems of equations are equally valid. If the equations were simpler, substitution might have been a better approach.
–8 –7 –7 A 6.667x10 – 1.667x10 1.000x10 105 B = –4 –3 – 4 205 – 6.667x10 1.167x10 – 5.000x10 C 110 1.600 –1.000 0.400 –5 A – 1.617x10 B = 0.114 C 7.000 –5 2 P ( S ) = ( – 1.617x10 )S + 0.114S + 7.000
Figure 4.38
A spline fitting example
numerical methods - 4.39
The order of the polynomial should match the number of points. Although, as the number of points increases, the shape of the curve will become less smooth. A common way for dealing with this problem is to fit the spline to a smaller number of points and then verify that it matches the remaining points, or use a least squares method to find the best approximation.
4.6.4 Non-Linear Elements Despite our deepest wishes for simplicity, most systems contain non-linear components. In the last chapter we looked at dealing with non-linearities by linearizing them locally. Numerical techniques will handle non-linearities easily, but smaller time steps are required for accuracy. Consider the mass and an applied force shown in Figure 4.39. As the mass moves an aerodynamic resistance force is generated that is proportional to the square of the velocity. This results in a non-linear differential equation. This equation can be numerically integrated using a technique such as Runge-Kutta. Note that the state equation matrix form cannot be used because it requires linear equations.
x F
2 20x·
M
Figure 4.39
∑ Fx
2 = F – 20x· = Mx··
x· = v
(1)
F20- v2 + ---v· = –-------M M
(2)
Developing state equations for a non-linear system
4.7 CASE STUDY Consider the simplified model of a car suspension shown in Figure 4.40. The model distributes the vehicle weight over four tires with identical suspensions, so the mass of the vehicle is divided by four. In this model the height of the road will change and drive the tire up, or allow it to drop down. The tire acts as a stiff spring, with little deflection. The upper spring and damper are the vibration isolation units. The damper has been designed to stiffen as the damper is compressed. The given table shows how the damping
numerical methods - 4.40
coefficient varies with the amount of compression.
yc
Mc
K s1
Kd
N K s1 = 50000 ---m N K s2 = 200000 ---m M c = 400Kg M t = 20Kg
Mt
yt
L = yc – yt L (cm)
Kd (Ns/m)
30 0 -20 -30
1000 1600 2000 2250
K s2 yr
Figure 4.40
A model of a car suspension system
For our purposes we will focus only on the translation of the tire, and ignore its rotational motion. The differential equations describing the system are developed in Figure 4.41.
numerical methods - 4.41
·· Mc yc
yc
Mc
· · K s1 ( y t – y c ) K d ( y t – y c ) · · · = K s1 ( y t – y c ) + K d ( y t – y c ) – M c g = M c y c ·· · · M c y c = ( K s1 )y t + ( – K s1 )y c + ( K d )y t + ( – K d )y c – M c g d- y = v ---c dt c d ----- y t = v t dt K s1 – K s1 Kd – K d · -------------------------vc = y + y + v + ---------- v + ( – g ) M c t M c c M c t M c c
∑F
(1) (2) (3)
· · Kd ( yt – yc )
K s1 ( y t – y c )
Mt
·· Mt yt
K s2 ( y r – y t ) · · ·· = K s2 ( y r – y t ) – K s1 ( y t – y c ) – K d ( y t – y c ) – M t g = M t y t ·· · · M t y t = ( K s2 )y r + ( –K s2 – K s1 )y t + ( K s1 )y c + ( – K d )y t + ( K d )y c – M t g
∑F
K s2 – K s2 – K s1 K s1 –K d K d · v t = --------- y r + ----------------------------- y t + --------- y c + ---------- v t + ------- v c + ( – g ) Mt Mt Mt Mt M t
Figure 4.41
(4)
Differential and state equations for the car suspension system
The damping force must be converted from a tabular form to equation form. This is done in Figure 4.42.
numerical methods - 4.42
There are four data points, so a third order polynomial is required. 3
2
K d ( L ) = AL + BL + CL + D
L (cm)
Kd (Ns/m)
30 0 -20 -30
1000 1600 2000 2250
The four data points can now be written in equation form, and then put into matrix form. 3
2
1000 = A ( 0.3 ) + B ( 0.3 ) + C ( 0.3 ) + D 3 2 1600 = A ( 0 ) + B ( 0 ) + C ( 0 ) + D 3
2
2000 = A ( – 0.2 ) + B ( – 0.2 ) + C ( – 0.2 ) + D 3 2 2250 = A ( – 0.3 ) + B ( – 0.3 ) + C ( – 0.3 ) + D 0.027 0.09 0.3 0 0 0 – 0.008 0.04 – 0.2 – 0.027 0.09 – 0.3
1 1 1 1
A 1000 B = 1600 C 2000 D 2250
The matrix can be solved to find the coefficients, and the final equation written. A – 2778 B = 277.8 C – 1833 D 1600 3
2
K d ( L ) = ( –2778 )L + ( 277.8 )L + ( – 1833 )L + 1600 Figure 4.42
Fitting a spline to the damping values
The system is to be tested for overall deflection when exposed to obstacles on the road. For the initial conditions we need to find the resting heights for the tire and car body. This can be done by setting the accelerations and velocities to zero, and finding the resulting heights.
numerical methods - 4.43
The initial accelerations and velocities are set to zero, assuming the car has settled to a steady state height. This then yields equations that can be used to calculate the initial deflections. Assume the road height is also zero to begin with. K s1 – K s1 Kd –K d 0 = -------- y t + ----------- y c + ------- 0 + --------- 0 + ( – g ) Mc Mc Mc Mc Mc y c = y t – g -------K s1 K s2 – K s2 – K s1 K s1 –Kd Kd 0 = -------- 0 + -------------------------- y t + -------- y c + --------- 0 + ------ 0 + ( – g ) Mt Mt Mt Mt Mt gM t = ( – K s2 – K s1 )y t + ( K s1 )y c Mc gM t = ( – K s2 – K s1 )y t + ( K s1 ) y t – g -------- K s1 Mc + Mt Mc y c = – g -------------------- – g -------K s2 K s1
Figure 4.43
Mc + Mt y t = – g -------------------K s2 Mc + Mt Mc y c = – g -------------------- + -------- K s2 K s1
Calculation of initial deflections
The resulting calculations can then be written in a computer program for analysis, as shown in Figure 4.44.
numerical methods - 4.44
#include <stdio.h> #include <math.h> #define #define #define #define #define
SIZE y_c y_t v_c v_t
4 0 1 2 3
/* define state variables */
#define N_step 10000 #define h_step 0.001 #define #define #define #define #define
Ks1 Ks2 Mc Mt grav
// number of steps // define step size
50000.0 /* define component values */ 200000.0 400.0 20.0 9.81
void integration_step(double h, double state[], double derivative[]){ int i; for(i = 0; i < SIZE; i++) state[i] += h * derivative[i]; } double damper(double L){ return (-2778*L*L*L + 277.8*L*L - 1833*L + 1600); } double y_r(double t){ /* return 0.0; /* a zero input to test the initial conditions */ /* return 0.2 * sin(t);/* a sinusoidal oscillation */ return 0.2; */ /* a step function */ /* return 0.2 * t; */ /* a ramp function */ }
Figure 4.44
Program for numerical analysis of suspension system
numerical methods - 4.45
void d_dt(double t, double state[], double derivative[]){ double Kd; Kd = damper(state[y_c] - state[y_t]); derivative[y_c] = state[v_c]; derivative[y_t] = state[v_t]; derivative[v_c] = (Ks1/Mc)*state[y_t] - (Ks1/Mc)*state[y_c] + (Kd/Mc)*state[v_t] - (Kd/Mc)*state[v_c] - grav; derivative[v_t] = (Ks2/Mt)*y_r(t) - ((Ks2+Ks1)/Mt)*state[y_t] + (Ks1/Mt)*state[y_c] - (Kd/Mt)*state[v_t] + (Kd/Mt)*state[v_c] - grav; } main(){ double state[SIZE]; double derivative[SIZE]; FILE *fp_out; double t; int i; state[y_c] state[y_t] state[v_c] state[v_t]
= = = =
- grav * ( (Mc/Ks1) + (Mt + Mc)/Ks2 ); /* initial values */ - grav * (Mt + Mc) / Ks2; 0.0; 0.0;
if((fp_out = fopen("out.txt", "w")) != NULL){ /* open the file */ fprintf(fp_out, " t Yc Yt Vc Vt \n"); for(t = 0.0, i = 0; i < N_step; i++, t += h_step){ if((i % 100) == 0) fprintf(fp_out, "%f %f %f %f t, state[y_c], state[y_t], state[v_c], state[v_t]); d_dt(t, state, derivative); integration_step(h_step, state, derivative); } } else { printf("ERROR: Could not open file \n"); } fclose(fp_out);
%f \n",
}
Figure 4.45
Program for numerical analysis of suspension system (continued)
This program was then used to test various design cases by selecting input types for changes in the road height, and then calculating how the tire and vehicle heights would change as a result. Some of these results are seen in Figure 4.46. These results were obtained by running the program, and then graphing the results in a spreadsheet program. The input of zero for the road height was used to test the program. As shown the height of the vehicle changes, indicating that the initial height calculations are correct, and the model is stable. The step function shows some oscillations that settle out to a stable final value. The oscillation is relatively slow, and is fully transmitted to the automobile. The ramp function shows that the car follows the rise of the slope with small transient effects at the start.
numerical methods - 4.46
y r ( t ) = 0.0
y r ( t ) = 0.2m 0.3
0 1
8
15
22
29
36
43
50
57
64
71
78
85
92
99 0.25
-0.02 0.2 -0.04
0.15
Series1
-0.06
Series2
0.1
Series Series
0.05 0
-0.08
1
8
15
22
29
36
43
50
57
64
71
78
85
92
99
-0.05 -0.1 -0.1 -0.12
-0.15
y r ( t ) = 0.2m sin ( t )
y r ( t ) = ( 0.2m )t
0.3
2.5
0.2 2
0.1 1.5
0 1
8
15
22
29
36
43
50
57
64
71
78
85
92
99
S eries1 S eries2
Series
1
Series
-0.1 0.5
-0.2
0
-0.3
1
-0.4
8
15
22
29
36
43
50
57
64
71
78
85
92
99
-0.5
Figure 4.46
Graphs of simulation results
4.8 SUMMARY • State variable equations are used to reduced to first order differential equations. • First order equations can be integrated numerically. • Higher order integration, such as Runge-Kutta increase the accuracy. • Switching functions allow functions terms to be turned on and off to provide more complex function. • Tabular data can be used to get numerical values.
numerical methods - 4.47
4.9 PRACTICE PROBLEMS 1. Convert the following differential equations to state variable form. ·· · x + 2x + 3x + 5y = 3 ·· · y + y + 6y + 9x = sin ( t ) 2. a) Put the differential equations given below in state variable form. b) Put the state equations in matrix form ·· · · · y 1 + 2y 1 + 3y 1 + 4y 2 + 5y 2 + 6y 3 + t + F = 0 · · ·· y 1 + 7y 1 + 8y 2 + 9y 2 + 10y 3 + 11y 3 + 5 cos ( 5t ) = 0 · ·· · y 1 + 12y 2 + 13y 3 = 0
y 1, y 2, y 3 = outputs F = input
3. Develop state equations for the mass-spring-damper system below. x Kd F M
Ks
4. The system below is comprised of two masses. There is viscous damping between the masses and between the bottom mass and the floor. The masses are also connected with a cable that is run over a massless and frictionless pulley. Write the differential equations for the system, and put them in state variable form. x1 Ks
M1 B1
x2 M2
B2
F
numerical methods - 4.48
5. Do a first order numerical integration of the derivative below from 0 to 10 seconds in one second steps. Assume the system starts undeflected. Write the equation for each time step. d2 ---x ( t ) = 5( t – 4 ) dt 6. Given the differential equation below integrate the values numerically for the first ten seconds with 1 second steps. Assume the initial value of x is 1. You may use first order or Runge Kutta integration. · x + 0.25x = 3 7. Write a Scilab program to calculate the area under the function below using a numerical method, such as Simpson’s rule. Test it by using the range from x=1 to x=1.2. Assume the sine function is in radians sin x f ( x ) = 5x + 2 ln ---------- x 8. Write a computer program in a language of your choice (C/C++, Java, Scilab script, etc.) that will numerically integrate the differential equation below. ·· · θ + 3θ + 9θ = 10 9. Given the following differential equation and initial conditions, draw a sketch of the first 5 seconds of the output response. The input is a step function that turns on at t=0. Use at least two different methods, and compare the results. ·· · initial conditions V i ( t ≥ 0 ) = 5V 0.5V o + 0.6V o + 2.1V o = 3V i + 2 V o ( 0 ) = 0V · V o ( 0 ) = 1V 10. a) For the mass-spring-damper system below solve the differential equation as a function of time. Assume the system starts at rest and undeflected. b) Also solve the problem using your calculator (and state equations) to verify your solution. Sketch the results. x Kd K s = 10 K d = 10 F M = 10 M Ks F = 10
11. The mechanical system below is a mass-spring-damper system. A force ’F’ of 100N is applied to the 10Kg cart at time t=0s. The motion is resisted by the spring and damper. The spring
numerical methods - 4.49
coefficient is 1000N/m, and the damping coefficient is to be determined. Follow the steps below to develop a solution to the problem. Assume the system always starts undeflected and at rest. a) Develop the differential equation for the system. b) Solve the differential equation using damping coefficients of 100Ns/m and 10000Ns/m. Draw a graph of the results. c) Develop the state equations for the system. d) Solve the system with a first order numerical analysis using Scilab for damping coefficients of 100Ns/m and 10000Ns/m. Draw a graph of the results. e) Solve the system with a Runge Kutta numerical analysis using Scilab for damping coefficients of 100Ns/m and 10000Ns/m. Draw a graph of the results. f) Write a computer program (in C, Java or Fortran) to do the Runge Kutta numerical integration in step e). Draw a graph of the results. g) Compare all of the solutions found in the previous steps. h) Select a damper value to give an overall system damping coefficient of 1. Verify the results by numerically integrating. x Kd F M
Ks
12. For the mechanism illustrated in the figure below the values are Ks1=Ks2=100N/m, M1=M2=1kg, F=1N. Assume that the system starts at rest, and the springs are undeformed initially. x1
x2
F
K s1 M1
K s2 M2
a. Derive the differential equations for the system. b. Put the equations in state variable form. c. Put the equations in state variable matrices. d. Use a calculator to find values for x1 and x2 over the first 10 seconds. Provide the results in a table in 1 second intervals. e. Use Scilab to plot the values for the first 10 seconds. f. Use a Scilab program and the Runge-Kutta method to produce a graph of the first 10 seconds.
numerical methods - 4.50
g. Repeat step g. using the first-order approximation method. h. Use a C program to produce a graph of points for the first 10 seconds.
4.10 PRACTICE PROBLEM SOLUTIONS 1. · x · y · v · u
= v = u = – 2v – 3x – 5y + 3 = – u – 6y – 9x + sin t
x 0 d- y ---= 0 dt v –3 u –9
0 0 –5 –6
1 0 –2 0
0 1 0 –1
x 0 y + 0 v 3 u sin t
2. · y1 · y2 · y3 · v1 · v2 · v3
= v1 = v2 = v3 = – 2v 1 – 3y 1 – 4v 2 – 5y 2 – 6v 3 – t – F – v 13 = -------1- – ------ v 3 12 12 –v1 7 8 9 11 5 = -------- – ------ y 1 – ------ v 2 – ------ y 2 – ------ y 3 – ------ cos ( 5t ) 10 10 10 10 10 10 y1 y2
d- y 3 ---= dt v 1 v2 v3
0 0 0 0 0 0 – 3 –5
0 0 0 0
0
0
0
7 9 11 – ------ – ------ – -----10 10 10
1 0 0 –2 1 – -----12 1 – -----10
0 0 1 0 0 1 –4 – 6 13 0 – -----12 8 – ------ 0 10
y1 y2 y3 v1 v2 v3
0 0 0 + –t–F 0 5 – ------ cos t 10
numerical methods - 4.51
3. x · x = v
· Kd x Ks x
F M
–K d –Ks F · v = v --------- + x --------- + ----- M M M
4. +y +x T
Ks x 1
∑F
M1
· · ·· = – T – Ks x1 – B1 ( x 1 – x2 ) = M1 x1 · v1 = x1 · v2 = x2
· · B1 ( x1 – x2 )
–K –B B –T · v 1 = x 1 ---------s + v 1 --------1- + v 2 ------1- + ------- M1 M1 M 1 M 1 · · B1 ( x1 – x2 ) T
M2
∑F
F
· · · ·· = – T + B 1 ( x1 – x2 ) + F – B2 x2 = M2 x2
B1 –B1 – B 2 –T+F · v 2 = v 1 ------- + v 2 --------------------- + ----------------- M2 M2 M2
· B2 x2
5. h = 1 x ( t + h ) = x ( t ) + h5 ( t – 4 )
2
t
x
0 1 2 3 4 5 6 7 8 9 10
0 80 125 145 150 150 155 175 220 300 425
numerical methods - 4.52
6. x' = 3 – 0.25x
t
x
x’
d x ( t + h ) = x ( t ) + h ----- x ( t ) dt
0 1 2 3 4 5 6 7 8 9 10
1 3.75 5.81 7.36 8.52 9.39 10.0 10.5 10.9 11.2 11.4
2.75 2.06 1.55 1.16 0.870 0.652 0.489 0.367 0.275 0.206
x ( t + h ) = x ( t ) + 1 ( 3 – 0.25x ( t ) ) x ( t + h ) = 0.75x ( t ) + 3
numerical methods - 4.53
7. // integrate.sce - A simple program to integrate a function // To run this in Scilab use 'File' then 'Exec'. // by: H. Jack Sept., 9, 2002 // define the function function foo=f(x) foo = 5 * x + 2 * log(sin(x) / x); endfunction // Set the time length and step size steps = 10; x_start = 1; x_end = 1.2; x_delta = (x_end - x_start) / steps; // Loop for rectangular integration total = 0; // set the initial sum to zero for i=0:steps, x = x_start + i * x_delta; total = total + f(x); end total = total * x_delta; printf("Rectangular integration value %f\n", total); // Loop for trapezoidal integration total = 0; // set the initial sum to zero for i=0:steps, x = x_start + i * x_delta; if i == 0 then total = total + f(x); elseif i == steps then total = total + f(x); else total = total + 2 * f(x); end end total = total * x_delta / 2; printf("Trapezoidal integration value %f\n", total); // Loop for Simpson's rule integration total = 0; // set the initial sum to zero even = 0; for i=0:steps, x = x_start + i * x_delta; if i == 0 then total = total + f(x); elseif i == steps then total = total + f(x); else even = even + 1; if even > 1 then total = total + 4 * f(x); even = 0; else total = total + 2 * f(x); end end end total = total * x_delta / 3; printf("Simpsons rule integration value %f\n", total);
numerical methods - 4.54
8. #include <stdio.h> int main(){ int
steps = 100, i; double theta, omega, step_t, theta_last, omega_last; theta = 0.0; omega = 0.0; step_t = 1.0; for(i = 0; i < steps; i++){ theta_last = theta; omega_last = omega; theta = theta_last + step_t * omega_last; omega = omega_last + step_t*(-3 * omega_last - 9 * theta_last + 10); printf("%f %f %f \n", i+step_t, theta, omega); }
}
numerical methods - 4.55
9. a) b)
V o ( t ) = – 8.331e · Vo = Yo
– 0.6t
cos ( 1.960t – 0.238 ) + 8.095
· Y o = – 1.2Y o – 4.2V o + 34 // assign4_1.sce // by: H. Jack Sept., 23, 2003 v0 = 0; y0 = 1; X=[v0, y0];
// initial conditions
// define the state matrix function // the values returned are [x, v] function foo=f(state,t) foo = [ state($, 2), -1.2*state($,2) - 4.2*state($,1) + 34]; endfunction
// Set the time length and step size for the integration steps = 1000; t_start = 0; t_end = 10; h = (t_end - t_start) / steps; t = [t_start];
// // Loop for integration // for i=1:steps, t = [t ; t($,:) + h]; F1 = h * f(X($,:), t($,:)); F2 = h * f(X($,:) + F1/2.0, t($,:) + h/2.0); F3 = h * f(X($,:) + F2/2.0, t($,:) + h/2.0); F4 = h * f(X($,:) + F3, t($,:) + h); X = [X ; X($,:) + (F1 + 2.0*F2 + 2.0*F3 + F4)/6.0]; end // // Graph the values // plot2d(t, X, [-2, -5], leg="position@velocity"); xtitle('Time (s)'); // // Generate points from the given function // XX = [v0]; for i=1:steps, tt = i * h; XX = [XX ; -8.331 * exp(-0.6 * tt) * cos( 1.960 * tt - 0.238) + 8.095]; end plot2d(t, XX, [-4], leg="explicit");
c) The two curves produced by the scilab program overlap, so the results agree.
numerical methods - 4.56
10. · Kd x
F M
Ks x x
· ·· = F – K d x – K s x = Mx ·· · Mx + K d x + K s x = F ·· · 10x + 10x + 10x = 10 ·· · x+x+x = 1
∑F
homogeneous: ·· · x+x+x = 0 2
A +A+1 = 0 – 1 ± 1 – 4( 1 )( 1 ) 3 A = ---------------------------------------------- = – 0.5 ± j ------2(1) 2 3 – 0.5t xh = C1 e cos ------- t + C 2 2 particular:
xp = B 0+0+B = 1 xp = 1
initial conditions: x = xh + xp = C1e
– 0.5t
3 cos ------- t + C 2 + 1 2
3 3 3 – 0.5t – 0.5t x' = – ------- C e sin ------- t + C 2 – 0.5C 1 e cos ------- t + C 2 2 2 2 1 3 x' ( 0 ) = – ------- C sin ( C 2 ) – 0.5C 1 cos ( C 2 ) = 0 2 1 3 – ------- sin ( C 2 ) = 0.5 cos ( C 2 ) 2 –1 tan ( C 2 ) = ------3
–1 C 2 = atan ------- = – 0.5236 3
x ( 0 ) = C 1 cos ( – 0.5236 ) + 1 = 0 –1 C 1 = --------------------------------- = – 1.155 cos ( –0.5236 ) x = – 1.155 e
– 0.5t
3 sin ------- t + 1.047 + 1 2
First peak is at x=1.219, t=3.63s on graph
numerical methods - 4.57
11. a) b)
c)
g)
Ks F ·· K d · x + ------ x + ----- x = ----M M M – 5t N x 1 ( t ) = – 0.115e cos ( 5 3t – 0.524 ) + 0.10 K d = 100 ---m – 0.1t – 5 – 999.9t N x 1 ( t ) = – 0.1e + 10 e + 0.10 K d = 10000 ---m 0 X0 d ----= –K dt X ---------s 1 M
1 0 X0 + –Kd F------------ X 1 M M
For 100N/m: all solutions are underdamped and overshoot at; b) 0.1163 at t = 0.363s d) 0.1166 at t = 0.361s e) 0.1163 at t = 0.363s f) 0.1163 at t = 0.360s For 10000N/m: all solutions are overdamped. The time to reach the time constant (at 0.06321) is, b) 0.06321 at t = 10.001s d) 0.06321 at t = 10.000s e) 0.06321 at t = 10.000s f) 0.06321 at t = 10.0s
h)
Ns K d = 200 -----m
(verify with numerical integration also)
numerical methods - 4.58
12. b)
· x1 = v1 – K s1 K s1 · F x 1 = x 1 ----------- + x 2 -------- + ------- M1 M1 M1 · x2 = v2 K s1 – K s1 – K s2 · x 1 = x 1 -------- + x 2 --------------------------- M2 M2
c) x1 d- v 1 ---= dt x 2 v2
0 1 – K s1 ----------- 0 M1
0 K s1 -------M1
0 0
x1 v1
0 0 0 1 x2 K s1 – K s1 – K s2 ------- 0 -------------------------- 0 v2 M2 M2
0 F ------+ M1 0 0
numerical methods - 4.59
e), f), g)
// System component values Ks1 = 100; Ks2 = 100; M1 = 1; M2 = 1; F = 1; x0 = 0; // initial conditions v0 = 0; x1 = 0; v1 = 0; X=[x0, v0, x1, v1]; // define the state matrix function the values returned are [x, v] function foo=f(state,t) foo = [ state($,2), -Ks1/M1*state($,1)+Ks1/M1*state($,3)+F/M1, state($,4), Ks1/M2*state($,1)-(Ks1+Ks2)/M2*state($,3)]; endfunction // Set the time length and step size for the integration steps = 10000; t_start = 0; t_end = 10; h = (t_end - t_start) / steps; t = [t_start]; // Loop for integration for i=1:steps, t = [t ; t($,:) + h]; F1 = h * f(X($,:), t($,:)); F2 = h * f(X($,:) + F1/2.0, t($,:) + h/2.0); F3 = h * f(X($,:) + F2/2.0, t($,:) + h/2.0); F4 = h * f(X($,:) + F3, t($,:) + h); X = [X ; X($,:) + (F1 + 2.0*F2 + 2.0*F3 + F4)/6.0]; end // Graph the values for part e) plot2d(t, X, [-2, -5, -7, -9], leg="position1@velocity1@position2@velocity2"); xtitle('Time (s)'); // printf the values for part f) printf("\n\nPart e output\n\n"); for time_count=0:20, i = (time_count/2) / h + 1; printf("Point at t=%f x1=%f, v1=%f, x2=%f, v2=%f \n", time_count/2, X(i, 1), X(i, 2), X(i, 3), X(i, 4)); end // First order integration for part h) X=[x0, v0, x1, v1]; t = [t_start]; for i=1:steps, t = [t ; t($,:) + h]; F1 = h * f(X($,:), t($,:)); X = [X ; X($,:) + F1 ]; end printf("\n\nPart g output \n\n"); for time_count=0:20, i = (time_count/2) / h + 1; printf("Point at t=%f x1=%f, v1=%f, x2=%f, v2=%f \n", time_count/2, X(i, 1), X(i, 2), X(i, 3), X(i, 4)); end
numerical methods - 4.60
The following subroutine is used in place of the subroutine in the program shown in Figure 4.26 and Figure 4.27.
h)
// // State Equations Calculated Here // void derivative(double t, double X[], double dX[]){ dX[0] = X[1]; dX[1] = -Ks1 / M1 * X[0] + Ks1 / M1 * X[2] + Force / M1; dX[2] = X[3]; dX[3] = Ks1 / M2 * X[0] - (Ks1 + Ks2) / M2 * X[2]; }
4.11 ASSIGNMENT PROBLEMS 1. Write a Scilab program to implement the following equation to calculate the value of x. i < 100
x =
∑
5iu ( i – 20 )
i=0
where, u(t) = 0
when
t≤0
u(t) = 1
when
t>0
2. Write a Scilab program to implement the following equation to calculate the value of x. 10
v =
F( t)
- dt ∫ --------M
M = 10
0
where, F ( t ) = 10
when
t≤5
F(t) = 0
when
t>5
numerical methods - 4.61
3. Write a Scilab program to implement the following equation to calculate the value of x. 10
x =
∫ f ( t ) dt
f ( t ) = 5 ln ( t )
0
4. Write a Scilab program to integrate the area under the function below using a numerical method, such as Simpson’s rule. Find the area from 1 to 2. sin x f ( x ) = 5x + 2 ln ---------- x
5. Numerically integrate one time step of the differential equation below using a) first order integration and b) Runge Kutta integration. ·· · θ + 3θ + 9θ = 10 6. Convert the third order differential equation below to state equation form. With a numerical method of your choice, find the state of the system 1 second later. Show all calculations. ··· ·· · x + 4x + 2x + 5x = 10
7. The differential equation below describes a first order system that starts with an initial value of k=20. Find the state at two milliseconds using a) explicit integration, b) first order numerical integration and c) Runge-Kutta integration. For the numerical methods use a timestep of h=0.001s. ----> The final results must be put in a table for easy comparison. · k + 10k = 5
k ( 0 ) = 20
8. For the mechanism shown in the figure below the values are Ks1=Ks2=100N/m, Kd1=10Nm/s, M1=M2=1kg, F=1N. Assume that the system starts at rest, and the springs are undeformed ini-
numerical methods - 4.62
tially. x1
x2 K d1
F M1
K s1
K s2 M2
a. Derive the differential equations for the system. b. Put the equations in state variable form. c. Put the equations in state variable matrices. d. Use a calculator or Scilab using first order integration to find values for x1 and x2 over the first 10 seconds. Provide the results in a table in 1 second intervals. e. Use Scilab to plot the values for the first 10 seconds using the values obtained in part d. f. Use a Scilab program and the Runge-Kutta method to produce a graph of the first 10 seconds. g. Use a C program to produce a list of points for the first 10 seconds. h. Compare the results found in steps d, f and g in a table. 9. Explicitly solve the following differential equation. Verify the result numerically. 2 · v + 20v = 200
rotation - 5.1
5. ROTATION
Topics: • Basic laws of motion • Inertia, springs, dampers, levers, gears and belts • Design cases Objectives: • To be able to develop and analyze differential equations for rotational systems.
5.1 INTRODUCTION The equations of motion for a rotating mass are shown in Figure 5.1. Given the angular position, the angular velocity can be found by differentiating once, the angular acceleration can be found by differentiating again. The angular acceleration can be integrated to find the angular velocity, the angular velocity can be integrated to find the angular position. The angular acceleration is proportional to an applied torque, but inversely proportional to the mass moment of inertia.
equations of motion
ω = ----- θ dt d
θ T
(2)
θ ( t ) = ∫ ω ( t ) dt =
(3)
ω ( t ) = ∫ α ( t ) dt ( t )α( t) = T --------where,
d 2
α = ----- ω = ----- θ dt dt d
OR
(1)
∫ ∫ α ( t ) dt dt
(4) (5)
JM
θ, ω, α = position, velocity and acceleration J M = second mass moment of inertia of the body T = torque applied to body
Figure 5.1
Basic properties of rotation
rotation - 5.2
Note: A ’torque’ and ’moment’ are equivalent in terms of calculations. The main difference is that ’torque’ normally refers to a rotating moment.
Given the initial state of a rotating mass, find the state 5 seconds later.
θ 0 = 1rad
rad s
ω 0 = 2 ---------
rad
α = 3 -------2 s
ans.
Figure 5.2
θ ( 5 ) = 86rad rad ω ( 5 ) = 17 --------s
Drill problem: Find the position with the given conditions
5.2 MODELING Free Body Diagrams (FBDs) are required when analyzing rotational systems, as they were for translating systems. The force components normally considered in a rotational system include, • inertia - opposes acceleration and deceleration • springs - resist deflection • dampers - oppose velocity • levers - rotate small angles • gears and belts - change rotational speeds and torques
rotation - 5.3
5.2.1 Inertia When unbalanced torques are applied to a mass it will begin to accelerate, in rotation. The sum of applied torques is equal to the inertia forces shown in Figure 5.3.
θ, ω, α
J T
∑T
= JM α
J M = I xx + I yy 2 I xx = ∫ y dM 2 I yy = ∫ x dM
(6) (7) (8) (9)
Note: The ’mass’ moment of inertia will be used when dealing with acceleration of a mass. Later we will use the ’area’ moment of inertia for torsional springs.
Figure 5.3
Summing moments and angular inertia
The mass moment of inertia determines the resistance to acceleration. This can be calculated using integration, or found in tables. When dealing with rotational acceleration it is important to use the mass moment of inertia, not the area moment of inertia. The center of rotation for free body rotation will be the centroid. Moment of inertia values are typically calculated about the centroid. If the object is constrained to rotate about some point, other than the centroid, the moment of inertia value must be recalculated. The parallel axis theorem provides the method to shift a moment of inertia from a centroid to an arbitrary center of rotation, as shown in Figure 5.4.
rotation - 5.4
2 J M = J˜M + Mr
where, J M = mass moment about the new point ˜ = mass moment about the center of mass JM M = mass of the object r = distance from the centroid to the new point
Figure 5.4
Parallel axis theorem for shifting a mass moment of inertia
2 J A = J˜A + Ar
where, J A = area moment about the new point J˜A = area moment about the centroid A = mass of the object r = distance from the centroid to the new point
Figure 5.5
Parallel axis theorem for shifting a area moment of inertia
Aside: If forces do not pass through the center of an object, it will rotate. If the object is made of a homogeneous material, the area and volume centroids can be used as the center. If the object is made of different materials then the center of mass should be used for the center. If the gravity varies over the length of the (very long) object then the center of gravity should be used.
An example of calculating a mass moment of inertia is shown in Figure 5.6. In this problem the density of the material is calculated for use in the integrals. The integrals are then developed using slices for the integration element dM. The integrals for the moments about the x and y axes, are then added to give the polar moment of inertia. This is then shifted from the centroid to the new axis using the parallel axis theorem.
rotation - 5.5
The rectangular shape to the right is constrained to rotate about point A. The total mass of the object is 10kg. The given dimensions are in meters. Find the mass moment of inertia.
4 -5
First find the density and calculate the moments of inertia about the centroid.
I xx =
∫–4 y
2
4
dM =
∫–4 y
2
-4
–1 y
3 4
ρ2 ( 5m ) dy = 1.25Kgm ----3 3
5 -1
10Kg –2 ρ = -------------------------------- = 0.125Kgm 2 ( 5m )2 ( 4m ) 4
-2.5
–4
3
( – 4m ) – 1 ( 4m ) 2 ∴ = 1.25Kgm --------------- – ------------------ = 53.33Kgm 3 3 5
I yy =
∫–5 x
2
5
dM =
∫–5 x
2
–1 x
3
ρ2 ( 4m ) dx = 1Kgm ----3
3
5
–5
3
( – 5m ) – 1 ( 5m ) 2 ∴ = 1Kgm --------------- – ------------------ = 83.33Kgm 3 3 2
2
J M = I xx + I yy = 53.33Kgm + 83.33Kgm = 136.67Kgm
2
The centroid can now be shifted to the center of rotation using the parallel axis theorem. 2 2 2 2 2 J M = J˜M + Mr = 136.67Kgm + ( 10Kg ) ( ( – 2.5m ) + ( – 1m ) ) = 209.2Kgm
Figure 5.6
Mass moment of inertia example
rotation - 5.6
The rectangular shape to the right is constrained to rotate about point A. The total mass of the object is 10kg. The given dimensions are in meters. Find the mass moment of inertia WITHOUT using the parallel axis theorem. -5
4 -2.5
5 -1 -4
ans.
Figure 5.7
Drill problem: Mass moment of inertia calculation
2
I M x = 66.33Kgm 2 I M y = 145.8Kgm 2 J M = 209.2Kgm
rotation - 5.7
The 20cm diameter 10 kg cylinder to the left is sitting in a depression that is effectively frictionless. If a torque of 10 Nm is applied for 5 seconds, what will the angular velocity be?
ans. θ ( 5s ) = 312.5rad rad ω ( 5s ) = 125 --------s Figure 5.8
Drill problem: Find the velocity of the rotating shaft
5.2.2 Springs Twisting a rotational spring will produce an opposing torque. This torque increases as the deformation increases. A simple example of a solid rod torsional spring is shown in Figure 5.9. The angle of rotation is determined by the applied torque, T, the shear modulus, G, the area moment of inertia, JA, and the length, L, of the rod. The constant parameters can be lumped into a single spring coefficient similar to that used for translational springs.
rotation - 5.8
L θ
JAG T = ---------- θ L
(8)
T = K S ( ∆θ )
(9)
T Note: Remember to use radians for these calculations. In fact you are advised to use radians for all calculations. Don’t forget to set your calculator to radians also. Note: This calculation uses the area moment of inertia.
Figure 5.9
A solid torsional spring
The spring constant for a torsional spring will be relatively constant, unless the material is deformed outside the linear elastic range, or the geometry of the spring changes significantly. When dealing with strength of material properties the area moment of inertia is required. The calculation for the area moment of inertia is similar to that for the mass moment of inertia. An example of calculating the area moment of inertia is shown in Figure 5.10, and based on the previous example in Figure 5.6. The calculations are similar to those for the mass moments of inertia, except for the formulation of the integration elements. Note the difference between the mass moment of inertia and area moment of inertia for the part. The area moment of inertia can be converted to a mass moment of inertia simply by multiplying by the density. Also note the units.
rotation - 5.9
4 -5
-2.5
First, the area moment of inertia is calculated about the centroid by integration. All dimensions are in m.
5 -1 -4
4m
4m ) 3 ( – 4m ) 3 = 10m (-------------- – ------------------- = 426.7 3 3 – 4m 5m 3 ( 5m ) 3 ( – 5m ) 3 4 5m 2 5m 2 x x 2 ( 4m ) dx = 8m ----= 8m --------------- – ------------------- = 666.7m I yy = ∫ x dA = ∫ – 5m –5m 3 3 3 – 5m 4 4 J˜A = I xx + I yy = ( 426.7 + 666.7 )m = 1093.4m I xx =
3 4m 2 4m 2 y----= y 2 ( 5m ) d y = 10m y d A ∫–4m ∫–4m 3
Next, shift the area moment of inertia from the centroid to the other point of rotation. 2 J A = J˜A + Ar 4 2 2 ∴ = 1093.4m + ( ( 4m – ( – 4m ) ) ( 5m – ( – 5m ) ) ) ( ( – 1m ) + ( – 2.5m ) ) ∴ = 1673m
4
Note: The basic definitions for the area moment of inertia are shown to the right.
I xx = I yy =
2
∫ y dA 2 ∫ x dA
J A = I xx + I yy 2 J A = J˜A + Ar
(8) (9) (10) (11)
Note: You may notice that when the area moment of inertia is multiplied by the density of the material, the mass moment of inertia is the result. Therefore if you have a table of area moments of inertia, multiplying by density will yield the mass moment of inertia. Keep track of units when doing this.
Figure 5.10
Area moment of inertia
rotation - 5.10
For a 1/2" 1020 steel rod that is 1 yard long, find the torsional spring coefficient.
ans.
Figure 5.11
Nm K s = 215 --------rad
Drill problem: Find the torsional spring coefficient
An example problem with torsional springs is shown in Figure 5.12. There are three torsional springs between two rotating masses. The right hand spring is anchored solidly in a wall, and will not move. A torque is applied to the left hand spring. Because the torsional spring is considered massless the torque will be the same at the other end of the spring, at mass J1. FBDs are drawn for both of the masses, and forces are summed. (Note: the similarity in the methods used for torsional, and for translational springs.) These equations are then rearranged into state variable equations, and finally put in matrix form.
rotation - 5.11
τ
J M1
K s1
J M2
K s2
K s3
Model the system above assuming that the center shaft is a torsional spring, and that a torque is applied to the leftmost disk. Leave the results in state variable form. θ1
K s2 ( θ 1 – θ 2 )
+
∑M
·· = τ – K s2 ( θ 1 – θ 2 ) = J M1 θ 1
·· J M1 θ 1 = – K s2 θ 1 + K s2 θ 2 + τ · θ1 = ω1 – K s2 K s2 · ω 1 = ----------- θ 1 + -------- θ 2 + τ JM JM
J M1 τ
1
θ2
K s2 ( θ 2 – θ 1 )
+
∑M
·· = – K s2 ( θ 2 – θ 1 ) – K s3 θ 2 = J M2 θ 2
– K s3 – K s2 K s2 · ω 2 = --------------------------- θ 2 + -------- θ 1 JM JM
K s3 θ 2
2
θ1 d- ω 1 ---= dt θ 2
ω2
Figure 5.12
0 1 – K s2 ----------- 0 J M1
0 K s2 -------J M1
0 0
θ1 ω1
0 0 0 1 θ2 – K s3 – K s2 K s2 -------- 0 -------------------------- 0 ω2 J M2 J M2
0 + τ 0 0
A rotational spring example
(2)
1
– K s3 – K s2 K s2 ·· θ 2 = --------------------------- θ 2 + -------- θ 1 J M2 J M 2 · θ2 = ω2
J M2
(1)
2
(3) (4)
rotation - 5.12
5.2.3 Damping Rotational damping is normally caused by viscous fluids, such as oils, used for lubrication. It opposes angular velocity with the relationships shown in Figure 5.13. The first equation is used for a system with one rotating and one stationary part. The second equation is used for damping between two rotating parts.
T = Kd ω T = Kd ( ω1 – ω2 )
Figure 5.13
The rotational damping equation
If a wheel (JM=5kg m2) is turning at 150 rpm and the damping coefficient is 1Nms/rad, what is the deceleration?
ans. rad·· θ = – 3.141 -------2 s
Figure 5.14
Drill problem: Find the deceleration
The example in Figure 5.12 is extended to include damping in Figure 5.15. The primary addition from the previous example is the addition of the damping forces to the FBDs. In this case the damping coefficients are indicated with ’B’, but ’Kd’ could have also been used. The state equations were developed in matrix form. Visual comparison of the final matrices in this and the previous example reveal that the damping terms are the
rotation - 5.13
only addition.
τ
J M1
K s1
J M2
K s2
B1
K s3
B2
Model the system above assuming that the center shaft is a torsional spring, and that a torque is applied to the leftmost disk. Leave the results in state variable form. θ1
K s2 ( θ 1 – θ 2 )
+
· B1 θ1
θ2
· ·· + ∑ M = – K s2 ( θ 2 – θ 1 ) – B 2 θ 2 – K s3 θ2 = J M 2 θ 2
K s2 ( θ 2 – θ 1 )
– K s3 – K s2 K s2 –B2 · ·· θ 2 = --------- θ 2 + --------------------------- θ 2 + -------- θ 1 JM JM J M2 2 2 · (3) θ2 = ω2
J M2 K s3 θ 2
θ1 d- ω 1 ---= dt θ 2 ω2
– B2 – K s3 – K s2 K s2 · ω 2 = --------- ω 2 + --------------------------- θ 2 + -------- θ 1 J M2 J M2 J M2
· B2 θ2 0 – K s2 ----------JM1
1 –B1 --------J M1
0 K s2 -------JM2
0
Figure 5.15
· ·· = τ – K s2 ( θ 1 – θ 2 ) – B 1 θ 1 = J M1 θ 1
·· · J M1 θ 1 = – B 1 θ 1 – K s2 θ 1 + K s2 θ 2 + τ · (1) θ1 = ω1 –B – K s2 K s2 · τ- θ + ------- θ + ------ω 1 = --------1- ω 1 + --------- JM J M 1 J M 2 J M (2) 1 1 1 1
J M1 τ
∑M
0 K s2 -------J M1
0 – K s3 – K s2 0 --------------------------J M2
0 0
θ1 ω1
1 θ2 –B2 ω 2 --------J M2
A System Example
0 τ------+ J M1 0 0
(4)
rotation - 5.14
5.2.4 Levers The lever shown in Figure 5.16 can be used to amplify forces or motion. Although theoretically a lever arm could rotate fully, it typically has a limited range of motion. The amplification is determined by the ratio of arm lengths to the left and right of the center.
F2 d1
d2 δ2
F1 δ1
F δ d1 ----- = -----2- = ----1d2 F1 δ2
Note: As the lever rotates the length ratio will be maintained because of similar triangles. This allows the lever to work over a range of angles. The lever above would become ineffective if it was vertical.
Note: The tip deflection can be related to the angle of δ1 δ - = ----2rotation of the lever if the angle of rotation is small. θ = ---d1 d2
Figure 5.16
Force transmission with a level
Given a lever set to lift a 1000 kg rock - if the lever is 2m long and the distance from the fulcrum to the rock is 10cm, how much force is required to lift it?
ans. F = 516.3N
Figure 5.17
Drill problem: Find the required force
rotation - 5.15
5.2.5 Gears and Belts While levers amplify forces and motions over limited ranges of motion, gears can rotate indefinitely. Some of the basic gear forms are listed below. Spur - Round gears with teeth parallel to the rotational axis. Rack - A straight gear (used with a small round gear called a pinion). Helical - The teeth follow a helix around the rotational axis. Bevel - The gear has a conical shape, allowing forces to be transmitted at angles. Gear teeth are carefully designed so that they will mesh smoothly as the gears rotate. The forces on gears acts at a tangential distance from the center of rotation called the pitch diameter. The ratio of motions and forces through a pair of gears is proportional to their radii, as shown in Figure 5.18. The number of teeth on a gear is proportional to the diameter. The gear ratio is used to measure the relative rotations of the shafts. For example a gear ratio of 20:1 would mean the input shaft of the gear box would have to rotate 20 times for the output shaft to rotate once.
T 1 = Fc r1
T2 = –Fc r2
Vc = ω1 r1 = –ω2 r2
n1 n ----- = ----2r1 r2
–T r n --------1- = ----1 = ----1T2 r2 n2
r –ω –α –∆ θ n ----2 = ---------1 = --------1- = ------------1 = ----2r1 ω2 α2 ∆θ 2 n1
where, n = number of teeth on respective gears r = radii of respective gears Fc = force of contact between gear teeth Vc = tangential velocity of gear teeth T = torques on gears
Figure 5.18
Basic Gear Relationships
For lower gear ratios a simple gear box with two gears can be constructed. For higher gear ratios more gears can be added. To do this, compound gear sets are required. In a compound gear set two or more gears are connected on a single shaft, as shown in Figure 5.19. In this example the gear ratio on the left is 4:1, and the ratio for the set on the right is 4:1. Together they give a gear ratio of 16:1.
rotation - 5.16
N 2 = 60 N2 N4 e = ------------- = 16 N3 N5
N 5 = 15
Output shaft
Input shaft Compound gear set
In this case the output shaft turns 16 times faster than the input shaft. If we reversed directions the output (former input) would now turn 1/16 of the input (former output) shaft speed.
N 3 = 15 N 4 = 60
Figure 5.19
A compound gear set
A manual transmission is shown in Figure 5.20. In the transmission the gear ratio is changed by sliding (left-right) some of the gears to change the sequence of gears transmitting the force. Notice that when in reverse an additional compound gear set is added to reverse the direction of rotation.
rotation - 5.17
9 clutch stem gear 2
8 7
Motor shaft reverse idler
3
4
10
11
6 5
Speed (gear)
Gear Train
1 2 3 4 reverse
2-3-6-9 2-3-5-8 2-3-4-7 bypass gear train 2-3-6-10-11-9
Figure 5.20
In this manual transmission the gear shifter will move the gears in and out of contact. At this point all of the needed gears will be meshed and turning. The final step is to engage the last gear in the gear train with the clutch (plate) and this couples the gears to the wheels.
A manual transmission
Rack and pinion gear sets are used for converting rotation to translation. A rack is a long straight gear that is driven by a small mating gear called a pinion. The basic relationships are shown in Figure 5.21.
rotation - 5.18
T = Fr
V c = ωr
∆l = r∆θ
where, r = radius of pinion F = force of contact between gear teeth Vc = tangential velocity of gear teeth and velocity of rack T = torque on pinion
Figure 5.21
Relationships for a rack and pinion gear set
Belt based systems can be analyzed with methods similar to gears (with the exception of teeth). A belt wound around a drum will act like a rack and pinion gear pair. A belt around two or more pulleys will act like gears.
A gear train has an input gear with 20 teeth, a center gear that has 100 teeth, and an output gear that has 40 teeth. If the input shaft is rotating at 5 rad/sec what is the rotation speed of the output shaft?
What if the center gear is removed? ans. rad case 1: ω 3 = 2.5 --------s rad case 2: ω 3 = – 2.5 --------s
Figure 5.22
Drill problem: Find the gear speed
rotation - 5.19
5.2.6 Friction Friction between rotating components is a major source of inefficiency in machines. It is the result of contact surface materials and geometries. Calculating friction values in rotating systems is more difficult than translating systems. Normally rotational friction will be given as static and kinetic friction torques. An example problem with rotational friction is shown in Figure 5.23. Basically these problems require that the model be analyzed as if the friction surface is fixed. If the friction force exceeds the maximum static friction the mechanism is then analyzed using the dynamic friction torque. There is friction between the shaft and the hole in the wall. The friction force is left as a variable for the derivation of the state equations. The friction value must be calculated using the appropriate state equation. The result of this calculation and the previous static or dynamic condition is then used to determine the new friction value.
rotation - 5.20
Model the system and consider the static and kinetic friction forces on the shaft on the right hand side.
JM
τ
θ Ks θ
+
JM τ FF
∑M
Ks
T s ≤ 10Nm T k = 6Nm
·· = τ – Ks θ – TF = JM θ
·· JM θ = τ – Ks θ – T F · θ = ω τ – TF Ks · ω = -------------- + ------ θ JM JM
(1) (2) (3)
Next, the torque force must be calculated, and then used to determine the new torque force. · J M ω = τ – K s θ – T test · T test = τ – K s θ – J M ω cases:
Not slipping previously T test ≤ 10Nm T test > 10Nm Slipping previously T test < 6Nm T test ≥ 6Nm
Figure 5.23
(4)
T F = T test T F = 6Nm T F = T test T F = 6Nm
A friction system example
The friction example in Figure 5.23 can be analyzed using the C program in Figure 5.24. For the purposes of the example some component values are selected and the system is assumed to be at rest initially. The program loops to integrate the state equations. Each loop the friction conditions are checked and then used for a first-order solution to the state equations.
rotation - 5.21
int main(){ double
int FILE
h = 0.1, /* time step */ theta, w, /* the state variables */ acceleration, /* the acceleration */ TF, /* friction force */ Ttest, /* the friction test force */ J = 10, /* the moment of inertia (I picked the value) */ tau = 5, /* the applied torque (I picked the value) */ Ks = 10; /* the spring constant (I picked the value) */ slip = 0; /* the system starts with no slip */ *fp;
theta = 0; w = 0;/* the initial conditions - starting at rest here */ TF = 0.0; /* set the initial friction to 0.0; */ acceleration = 0.0;/* set the initial acceleration to zero also */ if( ( fp = fopen("out.txt", "w")) != NULL){/* open a file to write the results */ for( t = 0.0; t < 10.0; t += h ){/* loop */ Ttest = tau - Ks*theta - J*acceleration; if(slip == 0){ /* not slipping */ if(Ttest >= 10){ TF = 6; slip = 1; } else { TF = Ttest; } } else { /* slipping */ if(Ttest < 6){ TF = Ttest; slip = 0; } else {TF = 6;} } acceleration = (tau - TF + Ks*theta) / J; w = w + h * acceleration; theta = theta + h * w; fprintf(fp, "%f, %f, %f\n", t, theta, w); } } fclose(fp); }
Figure 5.24
A C program for the friction example in Figure 5.23
rotation - 5.22
5.2.7 Permanent Magnet Electric Motors DC motors create a torque between the rotor (inside) and stator (outside) that is related to the applied voltage or current. In a permanent magnet motor there are magnets mounted on the stator, while the rotor consists of wound coils. When a voltage is applied to the coils the motor will accelerate. The differential equation for a motor is shown in Figure 5.25, and will be derived in a later chapter. The value of the constant ’K’ is a function of the motor design and will remain fixed. The value of the coil resistance ’R’ can be directly measured from the motor. The moment of inertia ’J’ should include the motor shaft, but when a load is added this should be added to the value of ’J’.
2 T load d K K ∴ ----- ω + ω ------ = V s ------ – ----------- JR dt JR JM where,
ω = the angular velocity of the motor K = the motor speed constant J M = the moment of inertia of the motor and attached loads R = the resistance of the motor coils T load = a torque applied to a motor shaft Figure 5.25
Model of a permanent magnet DC motor
The speed response of a permanent magnet DC motor is first-order. The steadystate velocity will be a straight line function of the torque applied to the motor, as shown in Figure 5.26. In addition the line shifts outwards as the voltage applied to the motor increases.
T
voltage/current increases
ω ss Figure 5.26
Torque speed curve for a permanent magnet DC motor
rotation - 5.23
5.3 OTHER TOPICS The energy and power relationships for rotational components are given in Figure 5.27. These can be useful when designing a system that will store and release energy.
(5)
E = E K + EP EK = JM ω
Figure 5.27
2
(6)
E P = Tθ
(7)
P = Tω
(8)
Energy and power relations for rotation
Note: The units for various rotational quantities are listed to the right. They may be used to check equations by doing a unit balance. The unit ’rad’ should be ignored as it appears/disappears sporadically.
coefficient units Ks
Nm-------rad
K d, B
Nms ----------rad
JM
Kgm
2
5.4 DESIGN CASE A large machine is to be driven by a permanent magnet electric motor. A 20:1 gear box is used to reduce the speed and increase the torque of the motor. The motor drives a 10000kg mass in translation through a rack and pinion gear set. The pinion has a pitch diameter of 6 inches. A 10 foot long shaft is required between the gear box and the rack and pinion set. The mass moves on rails with static and dynamic coefficients of friction of 0.2 and 0.1 respectively. We want to select a shaft diameter that will keep the system critically damped when a voltage step input of 20V is applied to the motor.
rotation - 5.24
To begin the analysis the velocity curve in Figure 5.28 was obtained experimentally by applying a voltage of 15V to the motor with no load attached. In addition the resistance of the motor coils was measured and found to be 40 ohms. The steady-state speed and time constant were used to determine the constants for the motor.
rpm 2400
R = 40Ω
0.5s K2 d- K T load --- ----------------ω = + ω V m J R s J R- – ---------- dt m JM M M The steady-state velocity can be used to find the value of K. 2 rot K K ( 0 ) + 2400 --------- ---------- = 15V ---------- – ( 0 ) min J M R JMR
rot- 1min 2400 -------------------- 2πrad ---------------- ( K ) = 15V min 60s 1rot 15V – 3 Vs K = ---------------------------= 39.8 × 10 --------–1 rad 120πrads The time constant can be used to find the remaining parameters. 2
K 1 –1 --------= ---------- = 2s JM R 0.5s 2
Vs- 39.8 × 10 –3 ------- rad - = 0.198005 ×10-4 = 19.8 × 10 –6 Kgm 2 J = -------------------------------------------–1 ( 40Ω ) ( 2s ) T load d- –1 –1 –2 ---ω m + ω m 2s = V s ( 50.3V s rad ) – ----------------------------------------–6 2 dt 19.8 × 10 Kgm θ m' = ω m
(1) – 1 –2
ω m' = V s 50.3V s rad – ω m 2s
–1
–1
–2
– 50505Kg m T load
(2)
rotation - 5.25
Figure 5.28
Motor speed curve and the derived differential equation
The remaining equations describing the system are developed in Figure 5.29. These calculations are done with the assumption that the inertial effects of the gears and other components are insignificant.
rotation - 5.26
The long shaft must now be analyzed. This will require that angles at both ends be defined, and the shaft be considered as a spring.
θ gear, ω gear = angular position and velocity of the shaft at the gear box θ pinion, ω pinion = angular position and velocity of the shaft at the pinion 1 θ gear = ------ θ m 20
1 ω gear = ------ ω m 20
T shaft = K s ( θ gear – θ pinion ) The rotation of the pinion is related to the displacement of the rack through the circumferential travel. This ratio can also be used to find the force applied to the mass. x mass = θpinion π6in 6in T shaft = F mass -------- 2 6in K s ( θ gear – θ pinion ) = F mass -------- 2 ·· ∑ Fmass = Fmass = Mmass xmass K s ( θ gear – θ pinion ) --------------------------------------------- = M mass θ·· pinion π6in 6in -------- 2 ·· –6 –2 –1 θ pinion = ( θ gear – θ pinion )1.768 × 10 in Kg K s ·· 1 0.0254in 2 –6 – 2 –1 θ pinion = ------ θ m – θ pinion 1.768 × 10 in Kg K s --------------------- 20 1.0m ·· 1 –9 –2 –1 θ pinion = ------ θ m – θ pinion ( 1.141 × 10 )m Kg K s 20 · θ pinion = ω pinion
(3)
· – 12 – 2 –1 –9 –2 –1 ω pinion = 57.1 × 10 m Kg K s θ m – 1.141 × 10 m Kg K s θ pinion
(4)
Figure 5.29
Additional equations to model the machine
If the gear box is assumed to have relatively small moment of inertia, then we can say that the torque load on the motor is equal to the torque in the shaft. This then allows
rotation - 5.27
the equation for the motor shaft to be put into a useful form, as shown in Figure 5.30. Having this differential equation now allows the numerical analysis to proceed. The analysis involves iteratively solving the equations and determining the point at which the system begins to overshoot, indicating critical damping.
The Tload term is eliminated from equation (2) · – 1 –2 –1 – 1 –2 ω m = V s 50.3V s rad – ω m 2s – 50505Kg m K s ( θgear – θ pinion ) · 1 – 1 –2 –1 – 1 –2 ω m = V s 50.3V s rad – ω m 2s – 50505Kg m K s ------ θm – θ pinion 20 · –1 –2 –1 – 2 ω m = ( V s 50.3V s rad ) + θ pinion ( 50505Kg m K s ) –1
–1
–2
+ ω m ( – 2 s ) + θ m ( – 2525 Kg m K s ) The state equations can then be put in matrix form for clarity. The units will be eliminated for brevity, but acknowledging that they are consistent. θm d- ω m ---= dt θ pinion ω pinion
0 –2525 K s
1 –2
0 50505K s
0
0
0
57.1 × 10
– 12
0 0
θm ωm
1 θpinion –9
K s 0 – 1.141 × 10 K s 0 ω pinion
+
0 Vs 50.3 0 0
The state equations for the system are then analyzed using a computer for the parameters below to find the Ks value that gives a response that approximates critical damping for a step input from 0 to 10V. Ks (rad/Nm)
Overshoot (rad)
100
Figure 5.30
Numerical analysis of system response
These results indicate that a spring value of XXX is required to have the system
rotation - 5.28
behave as if it is critically damped. (Note: Clearly this system is not second order, but in the absence of another characteristics we approximate it as second order.)
5.5 SUMMARY • The basic equations of motion were discussed. • Mass and area moment of inertia are used for inertia and springs. • Rotational dampers and springs. • A design case was presented.
5.6 PRACTICE PROBLEMS 1. Draw the FBDs and write the differential equations for the mechanism below. The right most shaft is fixed in a wall. Τ
θ1
θ2
JM2
JM1 Ks1
Ks2 B
rotation - 5.29
2. For the system pictured below a) write the differential equations (assume small angular deflections) and b) put the equations in state variable form.
R1
A lever arm has a force on one side, and a spring damper combination on the other side with a suspended mass.
Kd1
R2 J1
x2 F
Ks1 M1
x1
3. Draw the FBDs and write the differential equations for the mechanism below. θ2 R1 JM1
θ1 R2 JM2
Ks Kd x1 x2
M1
4. The system below consists of two masses hanging by a cable over mass ‘J’. There is a spring in the cable near M2. The cable doesn’t slip on ‘J’. a) Derive the differential equations for the following system.
rotation - 5.30
b) Convert the differential equations to state variable equations θ
R
JM
K s1
K s2 x1
M1 F M2
x2
5. Write the state equations for the system to relate the applied force ’F’ to the displacement ’x’. Note that the rotating mass also experiences a rotational damping force indicated with Kd1 K d1
F x
JM
r
θ M
K s1
K s2
K s3 K d2
6. For the system pictured below a) write the differential equations (assume small angular deflec-
rotation - 5.31
tions) and b) put the equations in state variable form.
R1
R2
R3
A round drum with a slot. The slot drives a lever arm with a suspended mass. A force is applied to a belt over the drum.
R4
J1
θ1
F1
Kd1
Ks1
M1
x1
7. For the system pictured below a) write the differential equations (assume small angular deflections) and b) put the equations in state variable form. R1
R2 J M1, N 1
x2 F1
x3
J M2, N 2
Two gears with fixed centers of rotation and lever arms.
Ks1
Kd1 M3
x1
8. For the system pictured below a) write the differential equations (assume small angular deflec-
rotation - 5.32
tions) and b) put the equations in state variable form.
A mass slides on a plane with dry kinetic friction (0.3). It is connected to a round mass that rolls and does not slip.
Kd1 Ks1 x1
M1 Ks2
x2
J M2, R 2 M2
θ3
θ2 F2
9. For the system pictured below a) write the differential equations (assume small angular deflections) and b) put the equations in state variable form.
Kd3
A pulley system has the bottom pulley anchored. A mass is hung in the middle of the arrangement with springs and dampers on either side. Assume that the cable is always tight.
Ks3
M3 Ks2
x3 F1
R2,J2,M2 x2 θ1 R1,J1
10. For the system pictured below a) write the differential equations (assume small angular
rotation - 5.33
deflections) and b) put the equations in state variable form. M1 x1 Kd1 R1
Ks1 R2 x2 Kd2
A mass is suspended over a lever arm. Forces are applied to the lower side of the moment arm through a spring damper pair.
Ks2
F1
x3
11. For the system pictured below a) write the differential equations (assume small angular deflections) and b) put the equations in state variable form. R2 R1 Two gears have a force on one side, and a mass Kd1 N on the other, both sus2 N1 pended from moment arms. There is a rotaJ1 J2 tional damping on one F1 Ks1 θ1 of the gears. θ2 M1
x1
12. Find the polar moments of inertia of area and mass for a round cross section with known radius and mass per unit area. How are they related? 13. The rotational spring is connected between a mass ‘J’, and the wall where it is rigidly held. The mass has an applied torque ‘T’, and also experiences damping ‘B’. a) Derive the differential equation for the rotational system shown. b) Put the equation in state variable form (using variables) and then plot the position (not velocity) as a function of time for the first 5 seconds with your calcula-
rotation - 5.34
tor using the parameters below. Assume the system starts at rest. Nm K s = 10 --------rad
θ
Nms B = 1 ----------rad
J M = 1Kgm
2
T T = 10Nm
J
Ks
B c) A differential equation for the rotating mass with a spring and damper is given below. Solve the differential equation to get a function of time. Assume the system starts at rest. –1 –2 –2 θ'' + ( 1s )θ' + ( 10s )θ = 10s
14. Find the response as a function of time (i.e. solve the differential equation to get a function of time.). Assume the system starts undeflected and at rest. θ τ = 10Nm τ
Ks JM
Kd
J M = 1Kgm Ns K d = 3 -----m N K s = 9 ---m
2
rotation - 5.35
5.7 PRACTICE PROBLEM SOLUTIONS 1. θ1
θ2 K s1 ( θ 1 – θ 2 )
T J M1
J M2 K s1 ( θ 1 – θ 2 )
+
∑ M1
K s2 θ 2
·· = T – K s1 ( θ1 – θ 2 ) = J M1 θ 1 K s1 – K s1 T ·· - + θ2 ---------- = -------θ 1 + θ1 ------ JM JM J M1 1 1
+
∑ M2
· ·· = K s1 ( θ 1 – θ 2 ) – Bθ 2 – K s2 θ2 = J M 2 θ 2 K s1 + K s2 – K s1 ·· · B θ 2 + θ2 -------- + θ2 ----------------------- + θ 1 ----------- = 0 JM2 J M2 J M2
2. · x1 = v1 – K s1 K s1 · x 1 = x 1 ----------- + x 2 -------- + g M1 M1 · x2 = v2 2
2
2
– R 2 K d1 – R 2 K s1 R 2 K s1 – FR 1 · v 2 = v 1 ------------------ + x 1 ------------------ + x 2 --------------- + ------------J1 J1 J1 J1
· Bθ 2
rotation - 5.36
3. T1 T2 M1
J M1 gM 1
if T1,T2,Kdx1 > 0
J M2
T1
T2
–x 1 θ 1 = -------R2
x1 θ 2 = -----R1
+
∑ Fy
·· = T 1 – gM 1 = – M 1 x 2 T1 ·· x 2 = g – ------M1
+
∑ M1
·· = – T 1 R 1 + T 2 R 1 = – J M1 θ 2 T1 R1 – T2 R1 ·· θ 2 = -----------------------------J M1
+
∑ M2
· ·· = T 2 R 2 – R 2 K d x 1 = – J M2 θ 1 T2 R2 ·· · –R 2 Kd θ 1 + x 1 ---------------- = ----------- JM JM 2
6 equations, 6 unknowns
2
· Kd x1
T1 = Ks ( x2 – x1 )
rotation - 5.37
4. θK s1 a) RT
K s2 ( x 2 – θR )
T
JM M1 RK s2 ( x 2 – θR )
F
M2 M1 g
·· ∑ FM1 = T – M1 g – F = –M1 x1 ·· ·· T = – M 1 x 1 + M 1 g + F = M 1 Rθ + M 1 g + F ·· ∑ MJ = – RT – θKs1 + RKs2 ( x2 – θR ) = JM θ
M2 g if(T < 0) T=0 if(T >= 0) Rθ = – x 1
2 2 ·· – R ( M 1 g + F ) – θ ( K s1 + R K s2 ) + ( RK s2 )x 2 = ( J M + R M 1 )θ 2
∑ FM2
–R ( M1 g + F ) K s1 + R K s2 – R K s2 ·· --------------------------- = -------------------------------+ x θ + θ ---------------------------- 2 2 JM + R2 M1 J M + R 2 M 1 JM + R M1 ·· = K s2 ( x 2 – θR ) – M 2 g = – M 2 x 2 K s2 –R K s2 ·· x 2 + x 2 -------- + θ --------------- = g M2 M2
b)
· θ = ω 2
– K s1 – R K s2 RK s2 – RM 1 g – RF · - + x 2 -------------------------- + --------------------------------- ω = θ -------------------------------- JM + R2 M1 J M + R 2 M 1 J M + R 2 M 1 · x2 = v2 RK s2 – K s2 · v 2 = θ ------------ + x 2 ----------- + g M2 M2
(1)
(2)
rotation - 5.38
5. · θ = ω 2
– K d1 K s2 r – K s1 – r K s2 Fr · ω = θ -------------------------------- + ω ------------ + x ----------- + -----J J J J M M M M · x = v K s2 r – K d2 – K s2 – K s3 · v = θ ----------- + v ------------ + x --------------------------- M M M 6. · x1 = v1 – K d1 – K s1 K d1 R 2 R 4 K s1 R2 R 4 · - + x 1 ---------- + ω 1 --------------------- + θ1 -------------------- +g v 1 = v 1 ---------- M1 M1 M1 R3 M1 R3 · θ1 = ω1 2 2
2 2
K d1 R 2 R 4 K s1 R 2 R 4 – K d1 R 2 R 4 – K s1 R2 R 4 – F 1 R 1 · - + θ 1 ----------------------- + --------------ω 1 = v 1 ---------------------- + x 1 --------------------- + ω 1 -----------------------J1 R3 J1 R3 J1 J R2 J R2 1 3
1 3
rotation - 5.39
7. θ2
θ1
· · R 2 K d1 ( x 1 – x 3 )
F1 R1 JM1 ·· J M1 θ 1
JM2 τ
θ1 N 1 = θ2 N2
N2 τ -----N1
· · K d1 ( x 1 – x 3 ) K s1 ( x 1 – x 3 )
·· J M2 θ 2 M3 R 2 K s1 ( x 1 – x 3 )
x θ 2 = -----3R2
·· M3 x1
M3g
· x1 = v1 R 2 K s1 – K d1 – K s1 R2 K d1 · v 1 = v 1 ------------ + x 1 ----------- + ω 2 --------------- + θ 1 --------------- – g M3 M3 M3 M3 · θ2 = ω2 –N2 2 2 v 1 ( R2 K d1 ) + x 1 ( R 2 K s1 ) + ω 2 ( – R 2 K d1 ) + θ 1 ( – R2 K s1 ) + F --------- R 1 N1 · ω 2 = ----------------------------------------------------------------------------------------------------------------------------------------------------------------2 N2 J M1 -----2- + J M2 N1
rotation - 5.40
8. · K d1 x 1
K s2 ( x 1 – x 2 )
K s1 x 1 x1 x1 µ k N -------x1
M1
·· M2 x2
K s2 ( x 1 – x 2 )
N = M 1 g cos ( θ 3 ) M 1 g sin ( θ 3 )
J M2, R 2 M2 Fc
x θ 2 = -----2R2
x2 θ2 F2 M 2 g sin ( θ 3 )
· x1 = v1 · v1 = · x2 = v2 · v2 =
9. · x2 = v2 2 2
2 2
2 2
R 1 R 2 ( 2F 1 + M 2 g ) R 1 R 2 K s2 R 1 R 2 ( – K s2 – K s3 ) · v 2 = x 3 ---------------------------------------------------------- + x 2 ---------------------------------------------------------- + ----------------------------------------------------------2 2 2 2 2 2 2 2 4J 4J 1 R 2 + J 2 R 1 + R 1 R 2 M 2 4J 1 R 22 + J 2 R 21 + R 21 R 22 M 2 · 1 R 2 + J 2 R 1 + R 1 R 2 M 2 x3 = v3 – K d3 – K s2 – K s3 K s2 · v 3 = v 3 ------------ + x 3 --------------------------- + x 2 -------- + g M3 M3 M3
rotation - 5.41
10. state equations
· x1 = v1 R1 + R 2 · v 1 = F 1 ------------------ R1 M1 – K s2 K s2 F1 · q = x 2 ----------- + x 3 --------- + --------K d2 K d1 K d2 – K s1 R 1 K s1 R1 + R2 · p = x 1 ----------- + x 2 -------------------------------- + F1 ------------------ K d1 ( R 1 + R 2 ) K d1 R 1 K d1
output equations
R1 + R 2 x 2 = ( x 1 – p ) ------------------ R1 x3 = – q + x2
11. · x1 = v1 – K s1 R 2 K s1 N 1 · v 1 = x 1 ----------- + θ 1 --------------------- + g M1 M1 N2 · θ1 = ω1 2
2
2
2
F1 R1 N2 R 2 K s1 N 1 N 2 – K d1 N 1 – R 2 K s1 N 1 · - + ω 1 ----------------------------- + θ 1 ----------------------------- + ----------------------------ω 1 = x 1 ----------------------------2 2 2 2 2 2 J 1 N 2 + J 2 N 1 J 1 N 2 + J 2 N 1 J 1 N 2 + J 2 N 1 J 1 N 22 + J 2 N 21 12. R
For area: J area
R
R
4
r = ∫ r dA = ∫ r ( 2πr dr ) = 2π ∫ r dr = 2π ---4 2
0
2
0
3
0
R
0
4
πR = --------2
MFor mass: ρ = M ----- = -------2 A πR R
J mass
R
R
4
r = ∫ r dM = ∫ r ( ρ2πr dr ) = 2πρ ∫ r dr = 2πρ ---4 2
0
2
0
3
0
R
0
4
2
πR MR = ρ --------- = ---------- 2 2
The mass moment can be found by multiplying the area moment by the area density.
rotation - 5.42
13. T
a)
· ·· M = T – K s θ – Bθ = J M θ + ∑ ·· · J M θ + Bθ + K s θ = T Ks T ·· · B θ + θ ------ + θ ------ = -----JM JM JM
JM · Bθ
Ks θ
B T Ks · ω = ------ – ------ θ – ------ ω JM JM JM Nm Nms 10 --------1 ----------10Nm rad rad · ω = -----------------2 – -----------------2 θ – -----------------2 ω 1Kgm 1Kgm 1Kgm
θ' = ω
b)
2 1 0 5s
Nm 10θ s · ω = -------------2- 10 – --------- – --------- ω rad rad Kgm Kgm ---------- 2 m s s- · - 10 – 10θ --------- – -------ω = --------------------ω 2 rad rad Kgm 10θ s –2 · ω = s 10 – --------- – --------- ω rad rad
rotation - 5.43
(c
homogeneous: –1 · –2 ·· θ + ( 1s )θ + ( 10s )θ = 0 · At guess: θ = e At θ h = Ae h 2 At
–1
At
·· 2 At θh = A e –2
A e + ( 1s )Ae + ( 10s )e 2
–1
A + ( 1s )A + 10s –1
–2
At
= 0 –1 2
–1
= 0
–2
–2
– 1s ± ( 1s ) – 4 ( 1 ) ( 10s ) A = ------------------------------------------------------------------------------2( 1)
–2
– 1s ± 1s – 40s –1 A = ------------------------------------------------------- = ( – 0.5 ± j3.123 )s 2(1) θh = C1 e
–1
– 0.5s t
–1
cos ( 3.123s t + C 2 )
particular: –1
–2
–2
θ'' + ( 1s )θ' + ( 10s )θ = 10s · θp = 0 θp = A guess: –1
·· θp = 0
–2
( 0 ) + ( 1s ) ( 0 ) + ( 10s ) ( A ) = 10s
–2
θp = 1
–2
10s = 1 A = -----------–2 10s
Initial conditions: θ ( t ) = C1e
–1
– 0.5s t
θ ( 0 ) = C1 e
–1
cos ( 3.123s t + C 2 ) + 1
–1
– 0.5s 0
–1
cos ( 3.123s 0 + C 2 ) + 1 = 0
C 1 cos ( C 2 ) + 1 = 0 –1
θ' ( t ) = – 0.5s C 1 e
–1
– 0.5s t
–1
–1
cos ( 3.123s t + C 2 ) – 3.123s C 1 e
–1
–1
– 0.5s t
–1
θ' ( 0 ) = – 0.5s C 1 ( 1 ) cos ( C 2 ) – 3.123s C 1 ( 1 ) sin ( C 2 ) = 0 – 0.5 cos ( C 2 ) – 3.123 sin ( C 2 ) = 0 sin ( C 2 ) – 0.5------------------- = -----------= tan ( C 2 ) cos ( C 2 ) 3.123
C 2 = – 0.159
C 1 cos ( – 0.159 ) + 1 = 0
–1 C 1 = ------------------------------ = – 1.013 cos ( – 0.159 )
θ ( t ) = – 1.013 e
–1
– 0.5s t
–1
cos ( 3.123s t – 0.159 ) + 1
14. 10 27 – 1.5t θ ( t ) = ------ + ( – 1.283 )e cos ---------- t – 0.524 9 2
–1
sin ( 3.123s t + C 2 )
rotation - 5.44
5.8 ASSIGNMENT PROBLEMS 1. for the system pictured below a) write the differential equations (assume small angular deflections) and b) put the equations in state variable form. R2 R1
θ2 N1
θ1
x2 Kd1
J1
M1
N2
x1
J2 T1
Ks1
Two gears have levers attached. On one side is a mass, the other side a spring damper pair. A torque is applied to one gear. Assume the mass remains in contact with the lever.
2. Draw FBDs for the following mechanical system containing two gears.
Ks1 J 1, R 1
J 2, R 2
y M Ks2
Kd2
rotation - 5.45
3. Draw FBDs for the following mechanical system. Consider both friction cases. τ
Ks1 J,R x Ks1 M
µ s, µ k
4. Draw FBDs for the following mechanical system. J,R Ks1 J,R y
M
Ks2
Kd2
5. Develop a differential equation of motion for the system below assuming that the cable always
rotation - 5.46
remains tight. J,R Ks1 J,R y
M
Ks2
Kd2
6. Analyze the system pictured below assuming the rope remains tight. J,R
F
F = 10N M 1 = 1kg
M1
Ks1 Kd1
M 2 = 1kg
y µk=0.2
R = 0.1m M2
θ=45 Ks2
J = 10Kgm
2
N K s1 = 100 ---m N K s2 = 100 ---m Ns K d1 = 50 -----m Ns K d2 = 50 -----m
Kd2
a) Draw FBDs and write the differential equations for the individual masses. b) Combine the equations in input-output form with y as the output and F as the input. d) Write the equations in state variable matrix form. c) Use Runge-Kutta to find the system state after 1 second.
rotation - 5.47
7. Analyze the system pictured below assuming the rope remains tight. J,R
J,R
F = 10N M 1 = 1kg M 2 = 1kg R = 0.1m J = 10Kgm
2
N K s1 = 100 ---m N K s2 = 100 ---m Ns K d1 = 50 -----m Ns K d2 = 50 -----m
J,R F
M1 Ks1 Kd1
y
M2 Ks2 Kd2
a) Draw FBDs and write the differential equations for the individual masses. b) Combine the equations in input-output form with y as the output and F as the input. c) Write the equations in state variable matrix form. d) Use Runge-Kutta to find the system state after 1 second.
input output equations - 6.1
6. INPUT-OUTPUT EQUATIONS
Topics: • The differential operator, input-output equations • Design case - vibration isolation Objectives: • To be able to develop input-output equations for mechanical systems.
6.1 INTRODUCTION To solve a set of differential equations we have two choices, solve them numerically or symbolically. For a symbolic solution the system of differential equations must be manipulated into a single differential equation. In this chapter we will look at methods for manipulating differential equations into useful forms.
6.2 THE DIFFERENTIAL OPERATOR The differential operator ’d/dt’ can be written in a number of forms. In this book there have been two forms used thus far, d/dt x and x-dot. For convenience we will add a third, ’D’. The basic definition of this operator, and related operations are shown in Figure 6.1. In basic terms the operator can be manipulated as if it is a normal variable. Multiplying by ’D’ results in a derivative, dividing by ’D’ results in an integral. The first-order axiom can be used to help solve a first-order differential equation.
input output equations - 6.2
d- x = Dx ---dt
basic definition
n n d -------- = D n dt
1- x = --D
algebraic manipulation Dx + Dy = D ( x + y ) Dx + Dy = Dy + Dx Dx + ( Dy + Dz ) = ( Dx + Dy ) + Dz n n–m D ---------x- = D x m D x--------------------( D + a )- = x (D + a)
simplification
– at at x(t) -----------------= e ∫ x ( t )e dt + C (D + a)
first-order axiom
Figure 6.1
Note:
General properties of the differential operator
· x + Ax = y ( t ) xD + Ax = y ( t ) At
At
At
e xD + e Ax = e y ( t ) At
At
At
At
xD + Ax = y ( t ) x( D + A) = y( t) y( t) x = -------------D+A
e xD = e y ( t ) e xD = e y ( t ) At
e x = x = e
∫e
–A t
At
y ( t )dt + C
at
∫ e y ( t )dt + C At
At y(t )–A t ------------= e ∫ e y ( t )dt + C D+A
Figure 6.2
d- at at d at ---( e x ) = e ----- x + ae x dt dt
Proof of the first-order axiom
at
at
De x = e Dx + ae x
∫ x dt
input output equations - 6.3
Figure 6.3 contains an example of the manipulation of a differential equation using the ’D’ operator. The solution begins by replacing the ’d/dt’ terms with the ’D’ operator. After this the equation is rearranged to simplify the expression. Notice that the manipulation follows the normal rules of algebra.
d d- 2 ---x + ----- x + 5x = 5t dt dt 2
D x + Dx + 5x = 5t 2
x ( D + D + 5 ) = 5t 5t x = -------------------------2 D +D+5 5 x = t ------------------------- 2 D +D+5
Figure 6.3
An example of simplification with the differential operator
An example of the solution of a first-order differential equation is given in Figure 6.4. This begins by replacing the differential operator and rearranging the equation. The first-order axiom is then used to obtain the solution. The initial conditions are then used to calculate the coefficient values.
input output equations - 6.4
d---x + 5x = 3t dt
Given,
x ( 0 ) = 10
Dx + 5x = 3t 3t x = ------------D+5 x = e
–5 t
x = e
∫ e
–5 t
d- 5t 5t ---( te – e ) dt
guess,
5t
5t
= 5te + e – e 5t
3tdt + C 5t
5t
te – e 3 --------------------- + C 5
Initial conditions,
= 5te
5t
5t
d- 5t 5t 5t ---( te – e ) = 5e t dt 5t
5t
–e te -------------------= 5
∫e
5t
t dt
(0)( 1) – ( 1) x ( 0 ) = ( 1 ) 3 ----------------------------- + C = 10 5 C = 10.6 x = e
–5 t
5t
5t
te – e - ------------------- 3 + 10.6 5
x = 0.6 ( t – 1 ) + 10.6e x = 0.6t – 0.6 + 10.6e
Figure 6.4
–5t –5t
An example of a solution for a first-order system
6.3 INPUT-OUTPUT EQUATIONS A typical system will be described by more than one differential equation. These equations can be solved to find a single differential equation that can then be integrated. The basic technique is to arrange the equations into an input-output form, such as that in Figure 6.5. These equations will have only a single output variable, and these are always shown on the left hand side. The input variables (there can be more than one) are all on the right hand side of the equation, and act as the non-homogeneous forcing function.
input output equations - 6.5
e.g.,
··· ·· · · ·· 2y 1 + y 1 + y 1 + 4y 1 = u 1 + u 1 + 3u 2 + u 3 + u 3 ·· · ·· · · y 2 + 6y 2 + y 2 = u 1 + 3u 2 + u 2 + 0.5u 2 + u 3
where, y = outputs u = inputs
Figure 6.5
Developing input-output equations
A sample derivation of an input-output equation from a system of differential equations is given in Figure 6.6. This begins by replacing the differential operator and combining the equations to eliminate one of the output variables. The solution ends by rearranging the equation to input-output form.
Given the differential equations, · · y 1 = – 3y 1 + 2y 2 + u1 + 2u 2 · · y 2 = 2y 1 + y 2 + u1
(1) (2)
Find the input-output equations. (1) Dy 1 = – 3y 1 + 2y 2 + u 1 + 2Du 2 ∴y 1 ( D + 3 ) = 2y 2 + u 1 + 2Du 2 D+3 ∴y 2 = y 1 ------------- – 0.5u 1 – Du 2 2 (2)
Dy 2 = 2y 1 + y 2 + Du 1 ∴y 2 ( D – 1 ) = 2y 1 + Du 1 D+3 ∴ y 1 ------------- – 0.5u 1 – Du2 ( D – 1 ) = 2y 1 + Du 1 2 2
D + 2D – 3 2 ∴y 1 ----------------------------- – 2 – 0.5Du 1 + 0.5u 1 – D u 2 + Du2 = Du 1 2 2
2
∴0.5D y 1 + Dy 1 – 3.5y 1 = Du 1 + 0.5Du 1 – 0.5u 1 + D u 2 – Du 2 ∴0.5y 1'' + y 1' – 3.5y 1 = u 1' + 0.5u1' – 0.5u 1 + u 2' – u 2'
Figure 6.6
An input output equation example
input output equations - 6.6
Find the second equation for the example in Figure 6.6 for the output y2.
Figure 6.7
Drill problem: Find the second equation in the previous example
6.3.1 Converting Input-Output Equations to State Equations In some instances we will want to numerically integrate an input-output equation. The example starting in Figure 6.8 shows the development of an input-output equation for two freely rolling masses joined by a spring. The final equation has a derivative on the right hand side that would prevent it from being analyzed in many cases. In particular if the input force ’F’ was a step function the first derivative would yield an undefined (infinite) value that could not be integrated.
input output equations - 6.7
x1 F
x2 Ks
M1
M2
Equations of motion can be derived for these masses. F
Ks ( x2 – x 1 )
M1
∑ Fx
2
= F + Ks ( x2 – x1 ) = M1 D x1 2
x1 ( M1 D + K s ) = F + Ks x2 Ks ( x2 – x 1 )
∑ Fx
M2
2
= –Ks ( x2 – x1 ) = M2 D x2 2
Ks x1 = x 2 ( M2 D + Ks ) The equations can be combined to eliminate x2. Ks x 1 2 - x 1 ( M 1 D + K s ) = F + K s ------------------------- M 2 D 2 + K s 2
2
2
2
x1 ( ( M1 D + K s ) ( M2 D + Ks ) – Ks ) = F ( M2 D + Ks ) 4
2
4
2
2
2
2
x1 ( D M1 M2 + D Ks ( M1 + M2 ) + Ks – Ks ) = F ( M 2 D + Ks ) 2
x1 ( D M1 M2 + D Ks ( M1 + M2 ) ) = F ( M2 D + Ks ) d 2 d- 4 d 2 ---x 1 M 1 M 2 + ----- x 1 K s ( M 1 + M 2 ) = ----- FM + FK s dt dt dt 2
Figure 6.8
Writing an input-output equation as a differential equation
The equation is then converted to state variable form, including a step to calculate a second derivative of the input, as shown in Figure 6.9.
input output equations - 6.8
This can then be written in state variable form by creating dummy variables for integrating the function ’F’. d- --- dt x 1 = v 1 d- ---v = a1 dt 1 d- --- dt a 1 = d 1 d- --- dt d 1 M 1 M 2 + a 1 K s ( M 1 + M 2 ) = a F M 2 + FK s – K s ( M 1 + M 2 ) Ks 1 - d ------------- ---- + aF ------ d 1 = a 1 ---------------------------------+ F M 1 M 1 M 2 dt M1 M2 The approximate value of the second derivative of a unit time step can be calculated using the time step. 1 a F0 = -----2 T 1 a F 1 = – ----2T
(when the timestep, step, it is turned on) (after the first timestep)
1 1 v F = TaF 0 + Ta F1 = T -----2 + T – ----2- = 0 T T 2
2
2
(to verify)
2
T T T 1 T 1 1 1 x F = ----- a F + ----- aF = ----- -----2 + ----- -----2 = --- + --- = 1 2 2 2 2 2 T 2 T These equations can then be written in matrix form. x1 d- v 1 ---dt a 1 d1
Figure 6.9
0 1 0 0 = 0 0
0 1 0 –Ks ( M1 + M2 ) 0 0 ----------------------------------M1 M2
0 x 0 0 1 0 0 0 v1 aF + 1 0 0 a1 F Ks 1 - ------------------0 d 1 M1 M1 M2
Writing state equations for equations with derivatives
input output equations - 6.9
6.3.2 Integrating Input-Output Equations An input-output equation is already in a form suitable for normal integration techniques, with the left hand side being the homogeneous part, and the right hand side is the particular part. If the non homogeneous part includes derivatives, these determine the values of initial conditions. An example of explicitly solving such an equation is shown in Figure 6.10 and Figure 6.11.
The solution begins by evaluating the homogeneous equation. · ·· · x + 3x + 2x = 4F + 5F The solution begins by evaluating the homogeneous equation as normal. ·· · x + 3x + 2x = 0 2
A + 3A + 2 = 0 2
–3 ± 3 – 4 ( 2 ) A = ------------------------------------- = –1, – 2 2 –t – 2t xh = C1 e + C 2 e The particular solution can also be found as normal, assuming F is unit step function. Guess,
x = A
· x = 0
·· x = 0
0 + 3 ( 0 ) + 2A = 2 ( 0 ) + 5 ( 1 )
5 A = --2 The derivative in the non-homogeneous solution must now be used to find the initial conditions. However the initial position and velocity are known to be zero. 2
d d d- ---x + 3 ----- x 0 + 2x 0 = 4 ----- F + 5F 0 dt 0 dt dt 1 2
d- d- --- --- dt x 0 + 3 ( 0 ) + 2 ( 0 ) = 4 dt 1 + 5 ( 0 )
for a step function 1 · u ( t ) = ----dt
2
d- d- --- --- dt x 0 = 4 dt 1 d---x = 4 dt 0
Figure 6.10
Note: This will be used as an initial condition
Integrating an input-output equation
input output equations - 6.10
The initial conditions can then be used to find the values of the coefficients. It will be assumed that the system starts undeflected and at rest. –t
x ( t ) = C 1 e + C2 e x ( 0 ) = C1e
–0
– 2t
+ C2e
–0
5 + --2 5 + --- = 0 2
5 C 1 = – C 2 – --2
–t – 2t · x ( t ) = – C 1 e – 2C 2 e
· x ( 0 ) = – C 1 – 2C 2 = 4 5 – – C 2 – --- – 2C 2 = 4 2
3 C 2 = – --2 3 5 C 1 = – – --- – --- = – 1 2 2
The final equation can then be written. – t 3 – 2t 5 x ( t ) = – e – --- e + --2 2
Figure 6.11
Integrating an input-output equation (cont’d)
The example in Figure 6.10 is reconsidered with a sinusoidal input in Figure 6.12. In this case the initial acceleration is found to be non-zero. In practical terms, this can be ignored because only the initial position and velocity will be used to find the coefficients.
input output equations - 6.11
Assume a sinusoidal input, with the system initially at rest. F ( t ) = sin ( t ) F(0) = 0
· F ( t ) = cos ( t ) · F(0) = 1
· d d- 2 ---x 0 + 3 ----- x 0 + 2x 0 = 4 ( F ( 0 ) ) + 5F ( 0 ) dt dt 2
d- --- dt x 0 + 3 ( 0 ) + 2 ( 0 ) = 4 ( 1 ) + 5 ( 0 ) 2
d- --- dt x 0 = 4
Figure 6.12
This indicates that the acceleration will have an initial value, but it will not affect the initial position or velocity.
Initial conditions for a sinusoidal input
6.4 DESIGN CASE The classic mass-spring-damper system is shown in Figure 6.13. In this example the forces are summed to provide an equation. The differential operator is replaced, and the equation is manipulated into transfer function form. The transfer function is given in two different forms because the system is reversible and the output could be either ’F’ or ’x’.
input output equations - 6.12
2
dxd x + K s x = – M -------2∑ Fy = – F + Kd ----dt dt
Ks
Kd
2
dx d x F = M -------2- + K d ------ + K s x dt dt x
M
2
F = MD x + K d Dx + K s x F 2 --- = MD x + K d Dx + K s x x
F OR
1 --x- = ----------------------------------------2 F MD + K d D + K s
Aside: An important concept that is ubiquitous yet largely unrecognized is the use of functional design. We look at parts of systems as self contained modules that use inputs to produce outputs. Some systems (such a mechanisms) are reversible, others are not (consider a internal combustion engine, turning the crank does not produce gasoline). An input is typically something we can change, an output is the resulting change in a system. For the example above ‘F’ over ‘x’ implies that we are changing the input ‘x’, and there is some change in ‘F’. We know this could easily be reversed mathematically and practically.
Figure 6.13
A transfer function for a mechanical system
Aside: Keep in mind that the mathematical expression ‘F/x’ is a ratio between input (displacement action) and output (reaction force). When shown with differentials it is obvious that the ratio is not simple, and is a function of time. Also keep in mind that if we were given a force applied to the system it would become the input (action force) and the output would be the displacement (resulting motion). To do this all we need to do is flip the numerators and denominators in the transfer function.
Mass-spring-damper systems are often used when doing vibration analysis and design work. The first stage of such analysis involves finding the actual displacement for a given displacement or force. A system experiencing a sinusoidal oscillating force is given in Figure 6.14. Numerical values are substituted and the homogeneous solution to the equation is found.
input output equations - 6.13
Given the component values input force, M = 1Kg
N K s = 2 ---m
Ns K d = 0.5 -----m
F = 5 sin ( 6t ) N
The differential equation for the mass-spring damper system can be written. 2 dx N d x- Ns ------1Kg 2 + 0.5 ------ ------ + 2 ---- x = 5 sin ( 6t ) N m dt m dt The homogeneous solution can be determined. 2 d x Ns dx N 1Kg -------2- + 0.5 ------ ------ + 2 ---- x = 0 m dt m dt Ns Ns 2 N – 0.5 ------ ± 0.5 ------ – 4 ( 1Kg ) 2 ---- m m m A = ------------------------------------------------------------------------------------------2 ( 1Kg ) A = 0.5 ( – 0.5 ± 0.25 – 8 )s A = ( – 0.25 ± 1.392j )s xh = C1 e Figure 6.14
– 0.25t
–1
–1
cos ( 1.392t + C2 )
Explicit analysis of a mechanical system
The solution continues in Figure 6.15 where the particular solution is found and put in phase shift form.
input output equations - 6.14
The particular solution can now be found with a guess. 2 Ns dx N d x 1Kg -------2- + 0.5 ------ ------ + 2 ---- x = 5 sin ( 6t ) N m dt m dt x p = A sin 6t + B cos 6t x p' = 6A cos 6t – 6B sin 6t x p'' = – 36 A sin 6t – 36B cos 6t –36 A sin 6t – 36B cos 6t + 0.5 ( 6A cos 6t – 6B sin 6t ) + 2 ( A sin 6t + B cos 6t ) = 5 sin ( 6t ) 34 – 36B + 3A + 2B = 0 A = ------ B 3 – 36A – 3B + 2A = 5 34 – 34 ------ B – 3B = 5 3 34 5 A = ------ ( – 0.01288 ) = – 0.1460 B = ----------------------------- = – 0.01288 3 –------------------34 ( 34 )–3 3 x p = ( – 0.1460 ) sin 6t + ( – 0.01288 ) cos 6t 2
2
( – 0.1460 ) + ( – 0.01288 ) x p = ------------------------------------------------------------------- ( ( – 0.1460 ) sin 6t + ( – 0.01288 ) cos 6t ) 2 2 ( – 0.1460 ) + ( – 0.01288 ) x p = 0.1466 ( – 0.9961 sin 6t –0.08788 cos 6t ) – 0.9961 x p = 0.1466 sin 6t + atan ---------------------- – 0.08788 x p = 0.1466 sin ( 6t + 1.483 )
Figure 6.15
Explicit analysis of a mechanical system (continued)
The system is assumed to be at rest initially, and this is used to find the constants in the homogeneous solution in Figure 6.16. Finally the displacement of the mass is used to find the force exerted through the spring on the ground. In this case there are two force frequency components at 1.392rad/s and 6rad/s. The steady-state force at 6rad/s will have a magnitude of .2932N. The transient effects have a time constant of 4 seconds (1/0.25), and should be negligible within a few seconds of starting the machine.
input output equations - 6.15
The particular and homogeneous solutions can now be combined. x = xh + xp = C1 e x' = – 0.25C 1 e
– 0.25t
– 0.25t
cos ( 1.392t + C 2 ) + 0.1466 sin ( 6t + 1.483 )
cos ( 1.392t + C 2 ) – 1.392 ( C 1 e
– 0.25t
sin ( 1.392t + C 2 ) ) + 6 ( 0.1466 cos ( 6t + 1.483 ) )
The initial conditions can be used to find the unknown constants. 0
0 = C 1 e cos ( 0 + C 2 ) + 0.1466 sin ( 0 + 1.483 ) C 1 cos ( C 2 ) = – 0.1460 – 0.1460 C 1 = -------------------cos ( C 2 ) 0
0
0 = – 0.25C 1 e cos ( 0 + C 2 ) – 1.392 ( C 1 e sin ( 0 + C 2 ) ) + 6 ( 0.1466 cos ( 0 + 1.483 ) ) 0 = – 0.25C 1 cos ( C 2 ) – 1.392 ( C 1 sin ( C 2 ) ) + 0.07713 –0.1460 – 0.1460 0 = – 0.25 -------------------- cos ( C 2 ) – 1.392 -------------------- sin ( C 2 ) + 0.07713 cos ( C 2 ) cos ( C 2 ) 0 = 0.0365 + ( 0.2032 ) tan ( C 2 ) + 0.07713 0.0365 + 0.07713 C 2 = atan ------------------------------------------ = – 0.5099 – 0.2032 – 0.1460 C 1 = --------------------------------- = – 0.1673 cos ( –0.5099 ) x = ( – 0.1673 e
– 0.25t
cos ( 1.392t – 0.5099 ) + 0.1466 sin ( 6t + 1.483 ) )m
The displacement can then be used to calculate the force transmitted to the ground, assuming the spring is massless. F = Ks x N – 0.25t F = 2 ---- ( – 0.1673 e cos ( 1.392t – 0.5099 ) + 0.1466 sin ( 6t + 1.483 ) )m m F = ( – 0.3346 e
Figure 6.16
– 0.25t
cos ( 1.392t – 0.5099 ) + 0.2932 sin ( 6t + 1.483 ) )N
Explicit analysis of a mechanical system (continued)
A decision has been made to reduce the vibration magnitude transmitted to the ground to 0.1N. This can be done by adding a mass-spring isolator, as shown in Figure 6.17. In the figure the bottom mass-spring-damper combination is the original system. The
input output equations - 6.16
mass and spring above have been added to reduce the vibration that will reach the ground. Values must be selected for the mass and spring. The design begins by developing the differential equations for both masses.
K s2
x2
M2
Kd
K s1
M1
x1 F
– K s2 x 2
∑F
· · ·· = –K s2 x 2 – K d ( x 2 – x 1 ) – K s1 ( x 2 – x 1 ) = M 2 x 2
– K s2 x 2 – K d ( x 2 D – x1 D ) – K s1 ( x 2 – x 1 ) = M 2 x 2 D
M2 · · Kd ( x2 – x1 )
K s1 ( x 2 – x 1 )
2
2
x 2 ( – K s2 – K d D – K s1 – M 2 D ) = x 1 ( – K d D – K s1 ) 2
K s2 + K d D + K s1 + M 2 D x 1 = x 2 ------------------------------------------------------------- K d D + K s1 · · Kd ( x2 – x1 )
K s1 ( x 2 – x 1 )
· · ·· = K d ( x 2 – x 1 ) + K s1 ( x 2 – x 1 ) – F = M 1 x 1
K d ( x 2 D – x 1 D ) + K s1 ( x 2 – x 1 ) – F = M 1 x 1 D
M1 F
Figure 6.17
∑F
(1)
2
2
x 1 ( – K d D – K s1 – M 1 D ) + x 2 ( K d D + K s1 ) = F
(2)
Vibration isolation system
For the design we are only interested in the upper spring, as it determines the force on the ground. An input-output equation for that spring is developed in Figure 6.18. The
input output equations - 6.17
given values for the mass-spring-damper system are used. In addition a value for the upper mass is selected. This is arbitrarily chosen to be the same as the lower mass. This choice may need to be changed later if the resulting spring constant is not practical.
The solution begins by combining equations (1) and (2) and inserting the.numerical values for the lower mass, spring and damper. We can also limit the problem by selecting a mass value for the upper mass. 2
K s2 + K d D + K s1 + M 2 D 2 x 2 ------------------------------------------------------------ ( – K d D – K s1 – M 1 D ) + x 2 ( K d D + K s1 ) = F K D + K d s1 N Ns K s1 = 2 ---K d = 0.5 -----M 1 = 1Kg M 2 = 1Kg m m 2
K s2 + 0.5D + 2 + D 2 x 2 ------------------------------------------------- ( – 0.5D – 2 – D ) + x 2 ( 0.5D + 2 ) = F 0.5D + 2 2
2
2
x 2 ( D + 0.5D + 2 + K s2 ) ( D – 0.5D – 2 ) + x 2 ( 0.5D + 2 ) = F ( 0.5D + 2 ) 4
2
1
x 2 ( D ( – 1 ) + D ( K s2 ) + D ( –0.5K s2 ) + ( – 2K s2 ) ) = F ( 0.5D + 2 ) This can now be converted back to a differential equation and combined with the force. d 4 d 2 d d – ----- x + K s2 ----- x 2 – 0.5K s2 ----- x 2 – 2K s2 x 2 = 0.5 ----- F + 2F dt 2 dt dt dt d 4 d 2 d d – ----- x + K s2 ----- x 2 – 0.5K s2 ----- x 2 – 2K s2 x 2 = 0.5 ----- 5 sin ( 6t ) + 2 ( 5 ) sin ( 6t ) dt 2 dt dt dt d 2 d d 4 – ----- x + K s2 ----- x 2 – 0.5K s2 ----- x 2 – 2K s2 x 2 = 15 cos ( 6t ) + 10 sin ( 6t ) dt dt dt 2 Figure 6.18
Developing an input output equation
This particular solution of the differential equation will yield the steady-state displacement of the upper mass. This can then be used to find the needed spring coefficient.
input output equations - 6.18
The particular solution begins with a guess. d 4 d 2 d – ----- x + K s2 ----- x 2 – 0.5K s2 ----- x 2 – 2K s2 x 2 = 15 cos ( 6t ) + 10 sin ( 6t ) dt dt dt 2 x p = A sin 6t + B cos 6t d- --- dt x p = 6A cos 6t – 6B sin 6t d- 2 ---x = – 36 A sin 6t – 36B cos 6t dt p d- 3 ---x = – 216 A cos 6t + 216B sin 6t dt p 4
d- --- dt x p = 1296A sin 6t + 1296B cos 6t sin ( 6t ) ( – 1296A – 36AK s2 + 0.5K s2 6B – 2K s2 A ) = 10 sin ( 6t ) A ( – 1296 – 38K s2 ) + B ( 3K s2 ) = 10 10 + A ( 1296 + 38K s2 ) B = -----------------------------------------------------3K s2 cos ( 6t ) ( – 1296B – 36BK s2 + ( – 0.5 )K s2 6A – 2K s2 B ) = 15 cos ( 6t ) A ( – 3K s2 ) + B ( – 1296 – 38K s2 ) = 15 10 + A ( 1296 + 38K s2 ) A ( – 3K s2 ) + ------------------------------------------------------ ( – 1296 – 38K s2 ) = 15 3K s2 2
A ( – 9K s2 ) + ( 10 + A ( 1296 + 38K s2 ) ) ( – 1296 – 38K s2 ) = 45K s2 2
45K s2 – 9K s2 A ------------------------------------------ + A ( 1296 + 38K s2 ) = ------------------------------------------ – 10 ( – 1296 – 38K s2 ) ( – 1296 – 38K s2 ) 45K s2 ----------------------------------------- – 10 ( – 1296 – 38K s2 ) A = -------------------------------------------------------------------------------------2 – 9K s2 ------------------------------------------ + ( 1296 + 38K s2 ) ( – 1296 – 38K s2 ) 45K s2 + 10 ( 1296 + 38K s2 ) A = -----------------------------------------------------------------------------------------------------2 – 9K s2 + ( 1296 + 38K s2 ) ( – 1296 – 38K s2 ) 425K 2s + 12960 A = --------------------------------------------------------------------------------2 – 1453K 2s – 98496K 2s – 1679616
Figure 6.19
Finding the particular solution
input output equations - 6.19
The value for B can then be found. 425K 2s + 12960 - ( 1296 + 38K s2 ) 10 + -------------------------------------------------------------------------------- – 1453K 22s – 98496K 2s – 1679616 B = -----------------------------------------------------------------------------------------------------------------------------------------3K s2 2
10 ( – 1453K 2s – 98496K 2s – 1679616 ) + ( 425K 2s + 12960 ) ( 1296 + 38K s2 ) B = ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------2 3K s2 ( – 1453K 2s – 98496K 2s – 1679616 ) 2
8
1620K 2s + 2.097563 ×10 K 2s B = -------------------------------------------------------------------------------------------------2 3K s2 ( – 1453K 2s – 98496K 2s – 1679616 ) 540K 2s + 69918768 B = --------------------------------------------------------------------------------2 – 1453K 2s – 98496K 2s – 1679616
Figure 6.20
Finding the particular solution (cont’d)
Finally the magnitude of the particular solution is calculated and set to the desired amplitude of 0.1N. This is then used to calculate the spring coefficient.
amplitude = 0.1 =
2
A +B
2
425K 2s + 12960 540K 2s + 69918768 2 2 - + ---------------------------------------------------------------------------------- -------------------------------------------------------------------------------- – 1453K 22s – 98496K 2s – 1679616 – 1453K 22s – 98496K 2s – 1679616
A value for the spring coefficient was then found using Mathcad to get a value of 662N/m.
Figure 6.21
Calculation of the spring coefficient
input output equations - 6.20
6.5 SUMMARY • The differential operator can be manipulated algebraically • Equations can be manipulated into input-output forms and solved as normal differential equations
6.6 PRACTICE PROBLEMS 1. Develop the input-output equation for the mechanical system below. There is viscous damping between the block and the ground. A force is applied to cause the mass the accelerate. x F M B
2. Find the input-output form for the following equations. · y+y+x = 3 · x+x+y = 0 3. Find the input-output form for the following equations. ·· · · x 1 + x 1 + 2x 1 – x 2 – x 2 = 0 · ·· · – x1 – x1 + x2 + x2 + x2 = F 4. The following differential equations were converted to the matrix form shown. Use Cramer’s rule to find an input-output equation for ‘y’. F ·· y + 2x = -----10 · ·· 7y + 4y + 9x + 3x = 0
F y = -----10 2 ( 7D + 4 ) ( 9D + 3 ) x 0 2
(D )
(2)
input output equations - 6.21
5. Find the input output equation for y2. Ignore the effects of gravity.
K s1 y1
M1
K s2 M2
y2 F
6. Find the input-output equations for the systems below. Here the input is the torque on the left hand side. θ1
τ
θ2
J1
K s1 B1
K s2
J2
B2
7. Write the input-output equations for the mechanical system below. The input is force ‘F’, and the output is ‘y’ or the angle theta (give both equations). Include the inertia of both masses, and
input output equations - 6.22
gravity for mass ‘M’. K
θ R
JM
K
y
M F
8. The applied force ‘F’ is the input to the system, and the output is the displacement ‘x’. K1 = 500 N/m K2 = 1000 N/m
x
w
M = 10kg
F
a) Find x(t), given F(t) = 10N for t >= 0 seconds. b) Using numerical methods, find the steady-state response for an applied force of F(t) = 10cos(t + 1) N ? a) Solve the differential equation to find the explicit response for an applied force of F(t) = 10cos(t + 1) N ? d) Set the acceleration to zero and find an approximate solution for an applied force of F(t) = 10cos(t + 1) N. Compare the solution to the previous solutions.
6.7 PRACTICE PROBLEM SOLUTIONS 1.
input output equations - 6.23
F ·· · B x + x ----- = ---- M M 2. ·· · x + 2x = –3 ·· · y + 2y = 3
3. d 3 d 2 d d d- 4 ---x + 2 ----- x + 3 ----- x + ----- x + x 1 = ----- F + F dt 1 dt 1 dt 1 dt 1 dt d- 4 d- 3 d- 2 d- d- 2 d- --- --- --- --- --- ---x + 2 x + 3 x + x + x = 2 dt 2 dt 2 dt 2 dt 2 dt F + dt F + 2F 4. F----10
(2)
F2 2 ----( 9D + 3 ) 2 0 ( 9D + 3 ) 10 F ( 0.9D + 0.3 ) --------------------------------------------------y = -------------------------------------------------------- = -------------------------------------------------------------= 2 2 4 2 9D + 3D – 14D – 8 D ( 9D + 3 ) – 2 ( 7D + 4 ) 2 (D ) (2) 2
( 7D + 4 ) ( 9D + 3 ) 4
2
2
y ( 9D + 3D – 14D – 8 ) = F ( 0.9D + 0.3 ) d- 4 d- 2 d- 1 d- 2 --- --- --- ---y ( 9 ) + y ( 3 ) + y ( – 14 ) + y ( – 8 ) = dt dt dt dt F ( 0.9 ) + F ( 0.3 ) d 2 1 d 2 1 d 1 – 14 –8 1 d- 4 ---y + ----- y --- + ----- y --------- + y ------ = ----- F ------ + F --- dt dt 3 dt 9 9 dt 10 3 5. K s1 K s2 d- 4 d 2 K s1 M 2 + K s2 M 2 + K s2 M 1 ---y 2 + ----- y 2 ------------------------------------------------------------- + y 2 ----------------- = dt dt M1 M2 M1 M2 M1 K s1 + K s2 d- 2 ------------- ---- + F ---------------------F dt M 1 M 2 M1 M2
input output equations - 6.24
6. d- 4 d- 3 J---------------------------d- 2 J---------------------------------------------------1 B 2 + J 2 B 1 1 K s2 + J 2 K s2 + B 1 B 2 --- --- ---- + θ θ θ + + 2 2 2 dt dt dt J1 J2 J1 J2 K s2 d B 1 K s2 + B 2 K s2 ---- θ 2 ------------------------------------ = τ -------- dt J1 J2 J1 J2 J1 B2 + J2 B1 J 1 K s2 + J 2 K s2 + B1 B 2 d- 4 d 3 d 2 ---θ 1 + ----- θ 1 ----------------------------- + ----- θ 1 ----------------------------------------------------- + dt dt dt J1 J2 J1 J2 B2 K s2 1 d- B d- 2 ---d 1 K s2 + B 2 K s2 -------------------------------------- = ---τ - + ----- τ ---------- + τ ---------- θ 1 dt dt J 1 dt J 1 J 2 J 1 J 2 J1 J2
input output equations - 6.25
7. θ
R ( K ( θR ) )
∑M
·· = – R ( K ( θR ) ) + R ( K ( – y – θR ) ) = J M θ 2 2 ·· R Kθ + RKy + R Kθ = –J M θ
JM
2
R ( K ( – y – θR ) )
K ( – y – θR )
2
2R K + J M D θ ---------------------------------- = y – RK
y
∑F
·· = K ( – y – θR ) – F – Mg = My K ( y + θR ) + F + Mg = –M yD
M
2
2
θ ( KR ) + F + Mg = y ( – MD – K ) 2
θ ( KR ) + y ( MD + K ) = – F – Mg
F+Mg for the theta output equation; 2
2
2R K + J M D 2 θ ( KR ) + θ ---------------------------------- ( MD + K ) = – F – Mg – RK 2 2 2 2 2 θ ( – K R ) + θ ( 2R K + J M D ) ( MD + K ) = FKR + MgKR 2 2
2
2
2
2
4
2
θ ( – K R + 2R MKD + 2R K + J M MD + J M KD ) = FKR + MgKR d- 4 J----------d- 4 2 2 2 M M ---- + ---θ θ ( 2R M + J M ) + θ ( K R ) = FKR + MgKR dt KR dt 2 2 2 2 4 2R 3 K KR K 3 R 3 K R MgK R d- 4 d --- θ + ----- θ ------------- + -------- + θ ------------ = F ------------ + -------------------- dt dt J M M JMM JMM JM M for the y output equation; – RK - ( KR ) + y ( MD 2 + K ) = – F – Mg y -------------------------------- 2R2 K + J M D 2 4
2
2 2 JM D M 2 JM D 2 y 2R MD + ------------------- + K2R + ------------- – R K = K K 2 2 2 JM D 2 JMD – F 2R + ------------- – Mg 2R + ------------- K K 4 2 M J J d d- ----------2 M ---- + y ( R2 K ) = y M - + ----- y 2R M + ---- dt K dt K J M d- 2 –--------2 2 ---F + F ( – 2 R ) + ( – 2 MgR ) dt K 2 R 2 K 2 d- 4 d- 2 2KR 1- --- ------------------+ + ------------ = dt y dt y J M + M y J M M – 2 KR 2 – 2 gKR2 d- 2 – 1 -------F + F ----------------- + -------------------- dt M JM M JM
input output equations - 6.26
8. K1 K 2 K2 K2 ·· x + x ----------------------------- = F ----------------------------- + g ------------------- M ( K1 + K 2 ) M ( K 1 + K2 ) K1 + K 2 a)
x ( t ) = – 0.2168 cos ( 5.774t ) + 0.2162
b)
x ( t ) = – 0.2168 cos ( 5.774t ) + 0.02 cos ( t + 1 ) + 0.1962
c)
x ( t ) = 0.02 cos ( t + 1 ) + 0.1962
6.8 ASSGINMENT PROBLEMS 1. Find the input-output equations for the differential equations below if both ’x’ and ’y’ are outputs. · y + y + 5x = 3 · x+x+y = 7
2. For the system pictured below find the output response as a function of time for y1 and y2 using a) integration to find an explicit function, b) numerical analysis using Scilab or C.
N K s1 = 100 ---m
K s1 y1
M1
K s2 M2
N K s2 = 1000 ---m M 2 = 0.1Kg
y2 F
M 1 = 1Kg
input output equations - 6.27
6.9 REFERENCES Irwin, J.D., and Graf, E.R., Industrial Noise and Vibration Control, Prentice Hall Publishers, 1979. Close, C.M. and Frederick, D.K., “Modeling and Analysis of Dynamic Systems, second edition, John Wiley and Sons, Inc., 1995.
circuits - 7.1
7. ELECTRICAL SYSTEMS
Topics: • Basic components; resistors, power sources, capacitors, inductors and op-amps • Device impedance • Example circuits Objectives: • To apply analysis techniques to circuits
7.1 INTRODUCTION A voltage is a pull or push acting on electrons. The voltage will produce a current when the electrons can flow through a conductor. The more freely the electrons can flow, the lower the resistance of a material. Most electrical components are used to control this flow.
7.2 MODELING Kirchoff’s voltage and current laws are shown in Figure 7.1. The node current law holds true because the current flow in and out of a node must total zero. If the sum of currents was not zero then electrons would be appearing and disappearing at that node, thus violating the law of conservation of matter. The loop voltage law states that the sum of all rises and drops around a loop must total zero.
∑ Inode = 0 ∑ Vloop = 0 Figure 7.1
node current loop voltage
Kirchoff’s laws
The simplest form of circuit analysis is for DC circuits, typically only requiring algebraic manipulation. In AC circuit analysis we consider the steady-state response to a
circuits - 7.2
sinusoidal input. Finally the most complex is transient analysis, often requiring integration, or similar techniques. • DC (Direct Current) - find the response for a constant input. • AC (Alternating Current) - find the steady-state response to an AC input. • Transient - find the initial response to changes. There is a wide range of components used in circuits. The simplest components are passive, such as resistors, capacitors and inductors. Active components are capable of changing their behaviors, such as op-amps and transistors. A list of components that will be discussed in this chapter are listed below. • resistors - reduce current flow as described with ohm’s law • voltage/current sources - deliver power to a circuit • capacitors - pass current based on current flow, these block DC currents • inductors - resist changes in current flow, these block high frequencies • op-amps - very high gain amplifiers useful in many forms
7.2.1 Resistors Resistance is a natural phenomenon found in all materials except superconductors. A resistor will oppose current flow as described by ohm’s law in Figure 7.2. The resistance value is assumed to be linear, but in actuality it varies with conductor temperature.
I V I = --R
+ V
R -
Figure 7.2
V = IR
Ohm’s law
The voltage divider example in Figure 7.3 illustrates the methods for analysis of circuits using resistors. In this circuit an input voltage is supplied on the left hand side. The output voltage on the right hand side will be some fraction of the input voltage. If the output resistance is very large, no current will flow, and the ratio of output to input voltages is determined by the ratio of the resistance between R1 and R2. To prove this the cur-
circuits - 7.3
rents into the center node are summed and set equal to zero. The equations are then manipulated to produce the final relationship.
I1 + I2 + I3 = 0 + R1
Vi – Vo 0 – Vo ∴ ----------------- + I 2 + --------------- = 0 R1 R2
I1
Assume the output resistance is large, so I2 is negligible.
Vi I2 R2
-
I3
+ Vo -
Vi – V o – Vo ∴ ----------------- + --------- = 0 R1 R2 1 1 1 ∴V o ------ + ------ = V i ------ R1 R2 R1 R 1 + R 2 1- - = V i ----∴V o ---------------- R 1 R2 R 1 Vo R2 ∴------ = -----------------Vi R 1 + R2
Figure 7.3
A voltage divider circuit
If two resistors are in parallel or series they can be replaced with a single equivalent resistance, as shown in Figure 7.4.
circuits - 7.4
R1 series resistors
R eq = R 1 + R 2
R2
parallel resistors R1
R2
11 1 ------= ------ + -----R eq R1 R2 1 R eq = ------------------1 1------ + ----R1 R2 R1 R 2 R eq = -----------------R1 + R2
Figure 7.4
Equivalent resistances for resistors in parallel and series
7.2.2 Voltage and Current Sources A voltage source will maintain a voltage in a circuit, by varying the current as required. A current source will supply a current to a circuit, by varying the voltage as required. The schematic symbols for voltage and current sources are shown in Figure 7.5. The supplies with ’+’ and ’-’ symbols provide DC voltages, with the symbols indicating polarity. The symbol with two horizontal lines is a battery. The circle with a sine wave is an AC voltage supply. The last symbol with an arrow inside the circle is a current supply. The arrow indicates the direction of positive current flow.
circuits - 7.5
+ V -
Figure 7.5
+ V
V+
-
V
I
-
Voltage and current sources
A circuit containing a voltage source and resistors is shown in Figure 7.6. The circuit is analyzed using the node voltage method.
Find the output voltage Vo.
R1 +
Vi
+ -
R2
R3
Vo -
Examining the circuit there are two loops, but only one node, so the node current methods is the most suitable for calculations. The currents into the upper right node, Vo, will be solved. Vo – Vi Vo Vo - + ------ + ------ = 0 = I ∑ ---------------R1 R2 R3 1 1 1 1 V o ------ + ------ + ------ = V i ------- R 1 R 2 R 3 R1 R2 R 3 + R1 R 3 + R 1 R2 1- - = V i -----V o ------------------------------------------------ R1 R 1 R2 R 3 R2 R 3 V o = Vi -------------------------------------------------- R 2 R 3 + R1 R 3 + R 1 R2 Figure 7.6
A circuit calculation
Aside: when doing node-current methods, select currents out of a node as positive, and in as negative. This will reduce the chances of careless mistakes.
circuits - 7.6
Evaluate the circuit in Figure 7.6 using the loop voltage method.
R2 R3 V o = V i -------------------------------------------------- R1 R2 + R1 R3 + R2 R3
Figure 7.7
Drill problem: Mesh solution of voltage divider
circuits - 7.7
Evaluate the voltage divider in Figure 7.3 using the loop current method. Hint: Put a voltage supply on the left, and an output resistor on the right. Remember that the output resistance should be infinite.
Figure 7.8
Drill problem: Mesh solution of voltage divider
Dependant (variable) current and voltage sources are shown in Figure 7.9. The voltage and current values of these supplies are determined by their relationship to some other circuit voltage or current. The dependant voltage source will be accompanied by a ’+’ and ’-’ symbol, while the current source has an arrow inside.
V = f( ) +
I = f( )
-
Figure 7.9
Dependant voltage sources
circuits - 7.8
2ohm
Ii
+ V1 -
Find the output current, Io, if Ii = 1A.
3ohm
+
Io
- V =f(V ) 2 1
f(V1) = 3V1
What if the input current is Ii = 1sin(2t)A?
Figure 7.10
Drill problem: Find the currents in the circuit above
7.2.3 Capacitors Capacitors are composed of two isolated metal plates very close together. When a voltage is applied across the capacitor, electrons will be forced into one plate, and forced out of the other plate. Temporarily this creates a small current flow until the plates reach equilibrium. So, any voltage change will result in some current flow. In practical terms this means that the capacitor will block any DC voltages, except for transient effects. But, high frequency AC currents will pass through the device. The equation for a capacitor and schematic symbols are given in Figure 7.11.
circuits - 7.9
+ +
d I = C ----- V = CDV dt
C V
C
I
-
Figure 7.11
Capacitors
The symbol on the left is for an electrolytic capacitor. These contain a special fluid that increases the effective capacitance of the device but requires that the positive and negative sides must be observed in the circuit. (Warning: reversing the polarity on an electrolytic capacitor can make them leak, fail and possibly explode.) The other capacitor symbol is for a regular capacitor, normally with values under a microfarad.
Find the current as a function of time. + V= 5cos(10t)V
Figure 7.12
Drill problem: Current through a capacitor
C=1uF I
circuits - 7.10
7.2.4 Inductors While a capacitor will block a DC current, an inductor will pass it. Inductors are basically coils of wire. When a current flows through the coils, a magnetic field is generated. If the current through the inductor changes then the magnetic field must change, otherwise the field is maintained without effort (i.e., no voltage). Therefore the inductor resists changes in the current. The schematic symbol and relationship for an inductor are shown in Figure 7.13.
+ L
I V
d V = L ----- I = LDI dt
-
Figure 7.13
An inductor
An inductor is normally constructed by wrapping wire in loops about a core. The core can be hollow, or be made of ferrite to increase the inductance. Inductors usually cost more than capacitors. In addition, inductors are susceptible to interference when metals or other objects disturb their magnetic fields. When possible, designers normally try to avoid using inductors in circuits.
circuits - 7.11
Find the current as a function of time. + V= 5cos(10t)V
Figure 7.14
L=1mH I
Drill problem: Current through an inductor
7.2.5 Op-Amps The ideal model of an op-amp is shown in Figure 7.15. On the left hand side are the inverting and non-inverting inputs. Both of these inputs are assumed to have infinite impedance, and so no current will flow. Op-amp application circuits are designed so that the inverting and non-inverting inputs are driven to the same voltage level. The output of the op-amp is shown on the right. In circuits op-amps are used with feedback to perform standard operations such as those listed below. • adders, subtractors, multipliers, and dividers - simple analog math operations • amplifiers - increase the amplitude of a signal • impedance isolators - hide the resistance of a circuit while passing a voltage
circuits - 7.12
I-
V+
I+ V+
Figure 7.15
Vo
Note: for analysis use, I- = I+ = 0 V- = V+
An ideal op-amp
A simple op-amp example is given in Figure 7.16. As expected both of the op-amp input voltages are the same. This is a function of the circuit design. (Note: most op-amp circuits are designed to force both inputs to have the same voltage, so it is normally reasonable to assume they are the same.) The non-inverting input is connected directly to ground, so it will force both of the inputs to 0V. When the currents are summed at the inverting input, an equation including the input and output voltages is obtained. The final equation shows the system is a simple multiplier, or amplifier. The gain of the amplifier is determined by the ratio of the input and feedback resistors.
circuits - 7.13
R2 R1 + Vi -
+
+ Vo -
The voltage at the non-inverting input will be 0V, by design the voltage at the inverting input will be the same. V + = 0V V - = V + = 0V The currents at the inverting input can be summed. V- – Vi V- – Vo ---------------- + ----------------- = 0 I = V∑ R1 R2 0 – Vi 0 – Vo -------------- + --------------- = 0 R1 R2 –R 2 Vi V o = -------------R1 –R2 V o = --------- Vi R1
Figure 7.16
A simple inverting operational amplifier configuration
An op-amp circuit that can subtract signals is shown in Figure 7.17.
circuits - 7.14
R2 Find the input/output ratio, R1 + + Vi -
Figure 7.17
R5 + Vref -
R3 R4
+ Vo -
Op-amp example
For ideal op-amp problems the node voltage method is normally the best choice. The equations for the circuit in Figure 7.17 and derived in Figure 7.18. The general approach to this solution is to sum the currents into the inverting and non-inverting input nodes. Notice that the current into the op-amp is assumed to be zero. Both the inverting and non-inverting input voltages are then set to be equal. After that, algebraic manipulation results in a final expression for the op-amp. Notice that if all of the resistor values are the same then the circuit becomes a simple subtractor.
circuits - 7.15
Note: normally node voltage methods work best with op-amp circuits, although others can be used if the non-ideal op-amp model is used. First sum the currents at the inverting and non-inverting op-amp terminals. V+ – Vi V + – V o ----------------- + ------------------ = 0 I = V+ ∑ R1 R2 1 1 1 1 V + ------ + ------ = V i ------ + V o ------ R 1 R 2 R 1 R 2 R1 + R2 1 1 V + ------------------ = V i ------ + V o ------ R1 R2 R1 R2 R2 R1 V + = V i ------------------ + V o ------------------ R1 + R2 R 1 + R2
(1)
V - – V ref V- + ------ = 0 I = ∑ V- ------------------R5 R4 1 1 1 V - ------ + ------ = V ref ------ R4 R5 R5 R4 V - = V ref ------------------ R4 + R5
(2)
Now the equations can be combined. V- = V+ R4 R2 R1 V ref ------------------ = V i ------------------ + V o ------------------ R 4 + R 5 R 1 + R 2 R1 + R 2 R1 R2 R4 V o ------------------ = Vi ------------------ – V ref ------------------ R 1 + R 2 R 1 + R 2 R 4 + R 5 R R 4 ( R 1 + R 2 ) V o = Vi -----2- – V ref ---------------------------- R 1 ( R 4 + R 5 ) R 1
Figure 7.18
(3)
Op-amp example (continued)
An op-amp (operational amplifier) has an extremely high gain, typically 100,000 times. The gain is multiplied by the difference between the inverting and non-inverting terminals to form an output. A typical op-amp will work for signals from DC up to about
circuits - 7.16
100KHz. When the op-amp is being used for high frequencies or large gains, the model of the op-amp in Figure 7.19 should be used. This model includes a large resistance between the inverting and non-inverting inputs. The voltage difference drives a dependent voltage source with a large gain. The output resistance will limit the maximum current that the device can produce, normally less than 100mA.
V– rn
V
+ A ( V+ – V- )
+
Figure 7.19
Vo ro
typically, r n > 1M Ω 5 A > 10 r o < 100 Ω
A non-ideal op-amp model
7.3 IMPEDANCE Circuit components can be represented in impedance form as shown in Figure 7.20. When represented this way the circuit solutions can focus on impedances, ’Z’, instead of resistances, ’R’. Notice that the primary difference is that the differential operator has been replaced. In this form we can use impedances as if they are resistances.
Device
Time domain
Impedance
Resistor
V ( t ) = RI ( t )
Z = R
Capacitor
1 V ( t ) = ---- ∫ I ( t ) dt C
1 Z = -------DC
Inductor
d V ( t ) = L ----- I ( t ) dt
Z = LD
Figure 7.20
Impedances for electrical components
Note: Impedance is like resistance, except that it includes time variant features also. V = ZI
circuits - 7.17
When representing component values with impedances the circuit solution is done as if all circuit components are resistors. An example of this is shown in Figure 7.21. Notice that the two impedances at the right (resistor and capacitor) are equivalent to two resistors in parallel, and the overall circuit is a voltage divider. The impedances are written beside the circuit elements.
DL t=0sec 50VDC
+ -
R 1/DC
+ Vo -
Find the equivalent for the capacitor and resistor in parallel. DL
50VDC
1 1 R -----------------------= ------------------ = ---------------------1 - --11 RCD + 1 ------------+ DC + --R R 1 - ------ DC
+ -
Treat the circuit as a voltage divider, R - -------------------- 1 + DCR R - Vo = 50V ------------------------------------------ = 50V -----------------------------------------2 R D RLC + DL + R DL + ---------------------- 1 + DCR Figure 7.21
A impedance example for a circuit
circuits - 7.18
7.4 EXAMPLE SYSTEMS The list of instructions below can be useful when approaching a circuits problem. The most important concept to remember is that a minute of thinking about the solution approach will save ten minutes of backtracking and fixing mistakes. 1. Look at the circuit to determine if it is a standard circuit type such as a voltage divider, current divider or an op-amp inverting amplifier. If so, use the standard solution to solve the problem. 2. Otherwise, consider the nodes and loops in the circuit. If the circuit contains fewer loops, select the current loop method. If the circuit contains fewer nodes, select the node voltage method. Before continuing, verify that the select method can be used for the circuit. 3. For the node voltage method define node voltages and current directions. For the current loop method define current loops and indicate voltage rises or drops by adding ’+’ or ’-’ signs. 4. Write the equations for the loops or nodes. 5. Identify the desired value and eliminate unwanted values using algebra techniques. 6. Use numerical values to find a final answer.
Note: The units for various electrical quantities are listed to the right. They may be used to check equations by doing a unit balance.
coefficient units C
As -----V
L
Vs -----A
R
V --A
The circuit in Figure 7.22 could be solved with two loops, or two nodes. An arbitrary decision is made to use the current loop method. The voltages around each loop are summed to provide equations for each loop.
circuits - 7.19
R1
+ V -
C
L I1
I2 + Vo -
R2
Note: when summing voltages in a loop remember to deal with sources that increase the voltage by flipping the sign. First, sum the voltages around the loops and then eliminate I1.
∑ VL1
= – V + R 1 I 1 + L ( DI 1 – DI 2 ) = 0
( R 1 + LD )I 1 = V + ( LD )I 2
(1)
V LD I 1 = -------------------- + -------------------- I 2 R 1 + LD R 1 + LD
(2)
I2 ------- + R2 I2 = 0 V = L ( DI – DI ) + L2 2 1 ∑ CD I2 L ( DI 2 – DI 1 ) + -------- + R 2 I 2 = 0 CD 1 ( DL )I 1 = LD + -------- + R2 I 2 CD R2 1 I 1 = 1 + --------------2 + -------- I 2 LD CLD
Figure 7.22
(3)
(4)
Example problem
The equations in Figure 7.22 are manipulated further in Figure 7.23 to develop an input-output equation for the second current loop. This current can be used to find the current through the output resistor R2. The output voltage can then be found by multiplying the R2 and I2.
circuits - 7.20
First, sum the voltages around the loops and then eliminate I1. R2 V LD 1 I 1 = -------------------- + -------------------- I 2 = 1 + --------------2 + -------- I 2 R 1 + LD R 1 + LD LD CLD R2 V 1 LD ------------------= 1 + --------------2 + -------- – -------------------- I 2 R 1 + LD LD R 1 + LD CLD 2
2
3
( CLD + 1 + CDR2 ) ( R 1 + LD ) – CL D V ------------------= -------------------------------------------------------------------------------------------------- I2 2 R 1 + LD CLD 2 CLD - V I 2 = -------------------------------------------------------------------------------------------------------------------------------- ( R 1 + LD ) ( ( CLD 2 + 1 + CDR 2 ) ( R 1 + LD ) – CL 2 D 3 ) 2 CLD - V I 2 = -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- CL ( R1 + R 2 )D 3 + L ( CR 21 + 2CR 1 R 2 + L )D 2 + R 1 ( CR1 R 2 + 2L )D + ( R 12 )
Convert it to a differential equation. 2
CL ( R 1 + R 2 )I 2''' + L ( CR1 + 2CR1 R 2 + L )I 2'' + R 1 ( CR 1 R 2 + 2L )I 2' + ( R 12 )I 2 = CLV''
Figure 7.23
Example problem (continued)
The equations can also be manipulated into state equations, as shown in Figure 7.24. In this case a dummy variable is required to replace the two first derivatives in the first equation. The dummy variable is used in place of I1, which now becomes an output variable. In the remaining state equations I1 is replaced by q1. In the final matrix form the state equations are in one matrix, and the output variable must be calculated separately.
circuits - 7.21
State equations can also be developed using equations (1) and (3). · · R 1 I 1 + LI 1 = V + LI 2 (1) becomes · · LI 1 – LI 2 = V – R 1 I 1 · · V R1 I 1 – I 2 = --- – ------ I 1 L L q1 = I1 – I2
(10)
· V R1 q 1 = --- – ------ I 1 L L (11)
I1 = q1 + I2 · V R1 q 1 = --- – ------ ( q 1 + I 2 ) L L R1 R1 · V q 1 = q 1 – ------ + I 2 – ------ + --L L L I ·· ·· · LI 2 – LI 1 + ---2- + R 2 I 2 = 0 C I2 · V – R1 I 1 + ---- + R 2 I 2 = 0 C I2 · V – R 1 ( q1 + I 2 ) + ---- = – R 2 I 2 C
(3) becomes
· 1 I 2 = I 2 – R 1 + ---- + q 1 ( – R 1 ) + V C These can be put in matrix form,
d- q 1 ---dt I 2
Figure 7.24
R1 – -----L =
R1 – -----L
1 – R 1 – R1 + ---C
q1 I2
V --+ L V
Example problem (continued)
(12)
(13)
I1 = 1 1
q1 I2
circuits - 7.22
Evaluate the circuit in Figure 7.22 using the node voltage method.
Figure 7.25
Drill problem: Use the node voltage method
circuits - 7.23
Find the equation relating the output and input voltages, Rf
Vin
Figure 7.26
C
Ri +
Drill problem: Find the state equation
Vout
circuits - 7.24
The circuit in Figure 7.27 can be evaluated as a voltage divider when the capacitor is represented as an impedance. In this case the result is a first-order differential equation.
t=0 V s = 3 cos t
C
+ -
R
+ Vo -
As normal we relate the source voltage to the output voltage. The we find the values for the various terms in the frequency domain. ZR V o = Vs ----------------- Z R + Z C
where,
ZR = R
1 Z C = -------DC
Next, we may combine the equations, and convert it to a differential equation. R V o = Vs ------------------ 1 R + -------- DC CRD V o = Vs ---------------------- CRD + 1 V o ( CRD + 1 ) = V s ( CRD ) · · V o ( CR ) + V o = Vs ( CR ) · 1 · V o + Vo -------- = V s CR
Figure 7.27
Circuit solution using impedances
The first-order differential equation in Figure 7.27 is continued in Figure 7.28 where the equation is integrated. The solution is left in variable form, except for the supply voltage.
circuits - 7.25
First, write the homogeneous solution using the known relationship. t
– -------· 1 CR yields V o + Vo -------- = 0 V = C e h 1 CR Next, the particular solution can be determined, starting with a guess.
· 1 d V o + Vo -------- = ----- ( 3 cos t ) = – 3 sin t CR dt V p = A sin t + B cos t V p' = A cos t – B sin t 1 ( A cos t – B sin t ) + ( A sin t + B cos t ) -------- = – 3 sin t CR 1 A + B -------- = 0 CR –1 A = B -------- CR 1 – B + A -------- = – 3 CR –1 1 – B + B -------- -------- = – 3 CR CR 1 B ----------- 2 2 + 1 = 3 C R 2 2 3C 2 R 2 – 1 3C R – 3 CR B = --------------------- -------- = --------------------A = --------------------2 2 2 2 CR 2 2 1+C R 1 + C R 1+C R B 2 2 A + B sin t + atan --- A The homogeneous and particular solutions can now be combined. The system will be assumed to be at rest initially. Vp =
t – -------CR
B 2 2 + A + B sin t + atan --- A B 0 2 2 0 = C 1 e + A + B sin 0 + atan --- A
V 0 = Vh + V p = C1 e
B 2 2 C 1 = – A + B sin 0 + atan --- A
Figure 7.28
Circuit solution using impedances (continued)
circuits - 7.26
7.5 ELECTROMECHANICAL SYSTEMS - MOTORS
7.5.1 Permanent Magnet DC Motors DC motors apply a torque between the rotor and stator that is related to the applied voltage/current. When a voltage is applied the torque will cause the rotor to accelerate. For any voltage and load on the motor there will tend to be a final angular velocity due to friction and drag in the motor. And, for a given voltage the ratio between steady-state torque and speed will be a straight line, as shown in Figure 7.29.
T
voltage/current increases
ω
Figure 7.29
Torque speed curve for a permanent magnet DC motor
The basic equivalent circuit model is shown in Figure 7.30, includes the rotational inertia of the rotor and any attached loads. On the left hand side is the resistance of the motor and the ’back emf’ dependent voltage source. On the right hand side the inertia components are shown. The rotational inertia J1 is the motor rotor, and the second inertia is an attached disk.
circuits - 7.27
R
I Voltage Supply
J1
J2
T, ω
+ Vm + -
Vs -
Because a motor is basically wires in a magnetic field, the electron flow (current) in the wire will push against the magnetic field. And, the torque (force) generated will be proportional to the current. Tm T m = KI ∴I = -----K Next, consider the power in the motor, P = V m I = Tω = KIω ∴V m = Kω Consider the dynamics of the rotating masses by summing moments.
∑M Figure 7.30
d = T m – T load = J ----- ω dt
d ∴T m = J ----- ω + T load dt
The torque and inertia in a basic motor model
These basic equations can be manipulated into the first-order differential equation in Figure 7.31.
The current-voltage relationship for the left hand side of the equation can be written and manipulated to relate voltage and angular velocity. Vs – V m I = -----------------R Tm V s – Kω ∴------ = -------------------R K d J ----- ω + T load dt V s – Kω ∴------------------------------------ = ------------------R K 2
T load d K K ∴ ----- ω + ω ------ = Vs ------ – -----------dt JR JR J
Figure 7.31
The first-order model of a motor
circuits - 7.28
7.5.2 Induction Motors AC induction motors are extremely common because of the low cost of construction, and compatibility with the power distribution system. The motors are constructed with windings in the stator (outside of the motor). The rotor normally has windings, or a squirrel cage. The motor does not have bushes to the rotor. The motor speed is close to, but always less than the rotating AC fields. The rotating fields generate currents, and hence opposing magnetic fields in the stator. The maximum motor speed is a function of the frequency of the AC power, and the number of pole of the machine. For example, an induction motor with three poles being used with a 60Hz AC supply would have a maximum speed of 2*(60Hz/3) = 40Hz = 2400RPM. The equivalent circuit for an AC motor is given in Figure 7.32. The slip of the motor determines the load current, IL. It is a function of the fraction, f, of full speed.
Ls
V
Rs
Lr
Lm
Rr
IL
RL
1–f R L = ---------- R r f
Figure 7.32
Basic model of an induction motor
The torque relationship for AC motors is given in Figure 7.33. These can be combined with the equivalent circuit model to determine the response of the motor to a load.
circuits - 7.29
First the torques on the motor are summed,
∑M
d = T rotor – T load = J ----- ω dt
CONTINUE TO STATE VARIABLE MODEL....
7.5.3 Brushless Servo Motors Brushless servo motors are becoming very popular because of their low maintenance requirements. The motors eliminate the need for brushes by using permanent magnets on the rotor, with windings on the stator, as shown in Figure 7.33. The windings on the stator are switched at a given frequency to produce a desired rotational speed, or held static to provide a holding torque.
Va windings on stator Vb N
Vc
Figure 7.33
The construction of a brushless servo motor
S permanent magnet rotor
circuits - 7.30
The basic relationships for brushless DC motors are given in Figure 7.34.
d V t = R m + ----- L I m + E dt E = Ke ω T = Kt Im where, V t = terminal voltage across motor windings R m = resistance of a motor winding L = phase to phase inductance I m = current in winding E = back e.m.f. of motor K e = motor speed constant
ω = motor speed
K t = motor torque constant T = motor torque
Figure 7.34
Basic relationships for a brushless motor
circuits - 7.31
d T V t = R m + ----- L ----- + K e ω dt K t dω ∑ M = T – Tload = J ---dt d T = J ----- ω + T load dt where, J = combined moments of inertia for the rotor and external loads T load = the applied torque in the system d J ----- ω + T load d dt V t = R m + ----- L ------------------------------- + K e ω Kt dt JR m d Rm LJ d 2 L d V t = ---------- ----- ω + ------ ----- ω + ------- T load + ----- ----- T load + K e ω K t dt K t dt Kt K t dt d 2 d d ( LJ ) ----- ω + ( JR m ) ----- ω + K e K t ω = K t V t – L ----- T load – R m T load dt dt dt Kt V Rm d Ke Kt Rm T load d- 2 d ---- ----- ω + ----------- ω = ----------t – 1--- ---T load – ------------------ω + ----- dt L dt LJ LJ J dt LJ
Figure 7.35
An advanced model of a brushless servo motor
To rotate the motor at a constant velocity the waveform in Figure 7.36 would be applied to each phase. Although each phase would be 120 degrees apart for a three pole motor. A more sophisticated motor controller design would smooth the waves more to approach a sinusoidal shape.
Vt
t(ms)
circuits - 7.32
Figure 7.36
Typical supply voltages
7.6 FILTERS Filters are useful when processing data signals. Low pass often used to eliminate noise, high pass filters eliminate static signals and leave dynamic signals. Band pass filters reject all frequencies outside a desired frequency band. A low pass filter is shown in Figure 7.37. At high frequencies the capacitor, C, has a very low impedance, and grounds the input signal. At low frequencies the capacitor impedance is high, increasing the gain of the op-amp circuit. This is easier to conceptualize if the R1-C pair are viewed as a voltage divider.
Rf
Ri + R1 + Vi -
Figure 7.37
C
+ Vo -
Low-Pass Filter
A high pass filter is shown in Figure 7.38. In this case the voltage divider in the previous circuit is reversed. In this circuit the gain will increase for signals with higher frequencies.
circuits - 7.33
Rf
Ri + C + Vi -
Figure 7.38
+ Vo -
R
High-Pass Filter
7.7 OTHER TOPICS The relationships in Figure 7.39 can be used to calculate the power and energy in a system. Notice that the power calculations focus on resistance, as resistances will dissipate power in the form of heat. Other devices, such as inductors and capacitors, store energy, but don’t dissipate it.
2
V P = IV = I R = -----R 2
Figure 7.39
E = Pt
Electrical power and energy
7.8 SUMMARY • Basic circuit components are resistors, capacitors, inductors op-amps. • node and loop methods can be used to analyze circuits.
circuits - 7.34
• Capacitor and inductor impedances can be used as resistors in calculations.
7.9 PRACTICE PROBLEMS 1. Derive the equations for combined values for resistors, capacitors and inductors in series and parallel. 2. Find the output voltage as a function of input voltage. R
R +
Vi
+ -
R
Vo
R
-
3. Write the differential equation for the following circuit. L
R +
Vi + -
C
Vo -
4. Consider the following circuit. +
L Vi
+
C
-
Vo
R -
a) Develop a differential equation for the circuit. b) Put the equation in state variable matrix form.
circuits - 7.35
5. Develop differential equations and the input-output equation for the electrical system below. R1 Vi
+ -
+ C
L
Vo
R2 -
6. Consider the following circuit. Develop a differential equation for the circuit. L Vi
R1
+
+
C R2
-
R3
Vo -
7. Find the input-output equation for the circuit below, and then find the natural frequency and damping coefficient.
R1 R2
Vi
C
L
+ -
+ Vo -
8. a) Find the differential equation for the circuit below where the input is Vi, and the output is Vo. L +
Vi + -
C
R
Vo -
b) Convert the equation to an input-output equation.
circuits - 7.36
c) Solve the differential equation found in part b) using the numerical values given below. Assume at time t=0, the circuit has the voltage Vo and the first derivative shown below. L = 10mH C = 1µF R = 1KΩ V i = 10V V at t=0s V o = 2V V o ′ = 3 --s 9. a) Write the differential equations for the system pictured below. b) Put the equations in input-output form. R2 R1
Vi
-
Vo
+
C
10. Given the circuit below, find the ratio of the output over the input (this is also known as a transfer function). Simplify the results. R2 Vi
R1
C +
Vo
circuits - 7.37
11. Examine the following circuit and then derive the differential equation. L
R2
R1 +
+
Vi
+ Vo
-
-
12. Examine the following circuit and then derive the differential equation.
L R2 R1 +
+
Vi
+ Vo
-
-
13. a) Find the differential equation for the circuit below. 1000Ω 1µF 0.001H
1000Ω +
Vi
+ -
+ 10Ω
Vo -
circuits - 7.38
b) Put the differential equation in state variable form and a numerical method to produce a detailed sketch of the output voltage Vo. Assume the system starts at rest, and the input is Vi=5V. 14. a) Write the differential equations for the system pictured below. b) Put the equations in state variable form. c) Use numerical methods to find the ratio between input and output voltages for a range of frequencies. The general method is put in a voltage such as Vi=1sin(___t), and see what the magnitude of the output is. Divide the magnitude of the output sine wave by the input magnitude. Note: This should act as a high pass or low pass filter. d) Plot a graph of gain against the frequency of the input. R2 R1
Vi
C
Vo
+
C=1uF R1=1K R2=1K
7.10 PRACTICE PROBLEM SOLUTIONS 1. R1 R 2 R parallel = -----------------R1 + R2
R series = R 1 + R 2
C 1 C2 C series = ------------------C1 + C 2
C parallel = C 1 + C 2
L1 L2 L parallel = -----------------L1 + L2
L series = L 1 + L 2
circuits - 7.39
2. Vo ------ = 1--5 Vi 3. ·· · R 1 1 V o + V o --- + V o ------- = V i ------- L LC LC 4. a)
·· · 1 1 1 V o + Vo -------- + V o ------- = V i ------- RC LC LC
b)
· V o = Xo · –1 –1 1 X o = Xo -------- + V o ------- + V i ------- RC LC LC
5. ·· · 1 1 1 · 1 V o + V o ---------- + ---------- + V o ------- = V i ---------- CR 1 CR 2 LC CR 1 6. R2 R2 R 3 · R2 R3 C + L ·· · V o + Vo ------------------------------- + V o ------------------------------- = V i --------------------------- LC ( R 2 + R 3 ) LC ( R2 + R 3 ) L ( R2 + R3 ) 7. a)
·· · 1 1 1 · 1 V o + Vo ---------- + ---------- + V o ------- = V i ---------- CR 1 CR2 LC CR 1
b)
ωn =
1-----LC
L ( R1 + R2 ) ζ = ------------------------------2 CR 1 R 2
circuits - 7.40
8. (a.
Sum currents at node Vo ( Vo – Vi ) ( Vo ) - + ( V o )DC + ---------- = 0 ∑ IVo = --------------------DL R V o DL 2 V o – V i + V o D LC + -------------- = 0 R 1 1 1 V o'' + Vo' -------- + V o ------- = V i ------- LC LC CR
(b.
·· · 1 1 1 V o + V o -------- + V o ------- = V i ------- CR LC LC
circuits - 7.41
(c.
–2 ·· – 2 –6 · 10 V o ( 10 10 ) + V o --------- + V o = 10 10 3 ·· · –8 –5 V o ( 10 ) + V o ( 10 ) + V o = 10
·· · L V o ( LC ) + V o --- + V o = V i R
·· · 3 8 9 V o + V o ( 10 ) + V o ( 10 ) = ( 10 ) homogeneous; 2 At
At
3
At
8
A e + Ae ( 10 ) + e ( 10 ) = 0 3 2
3
8
– 10 ± ( 10 ) – 4 ( 10 ) A + A ( 10 ) + ( 10 ) = 0 A = -------------------------------------------------------------- = – 500 ± 9987j 2 – 500t Vh = C1 e cos ( 9987t + C2 ) 2
3
particular;
8
guess 3
8
9
( 0 ) + ( 0 ) ( 10 ) + ( A ) ( 10 ) = ( 10 )
Vp = A
A = 10
V p = 10 for initial conditions, Vo = C1 e
– 500t
cos ( 9987t + C 2 ) + 10
for t=0, Vo=2V
– 500 ( 0 )
2 = C1 e cos ( 9987 ( 0 ) + C 2 ) + 10 – 8 = C 1 cos ( C 2 ) (1)
· – 500t – 500t V o = –500C 1 e cos ( 9987t + C 2 ) – 9987C 1 e sin ( 9987t + C 2 ) for t=0, d/dt Vo=3V
3 = – 500C 1 cos ( C 2 ) – 9987C 1 sin ( C 2 ) 3 = – 500C 1 cos ( C 2 ) – 9987C 1 sin ( C 2 ) –8 3 = – 4000 – 9987 -------------------- sin ( C 2 ) cos ( C 2 ) sin ( C 2 ) – 3997 - = tan ( C 2 ) -------------------- = ------------------cos ( C 2 ) 8 ( 9987 ) –8 C 1 = -------------------- = – 8.01 cos ( C 2 )
V o = – 8.01 e
– 500t
cos ( 9987t – 0.050 ) + 10
C 2 = – 0.050
circuits - 7.42
9. a)
R1 · V i + V i ( R 1 C ) + Vo ------ = 0 R 2
b)
–R 2 · Vo = V i ( – CR 2 ) + Vi --------- R1
10. Vo – R2 ------ = --------------------------------Vi R 1 + DR 1 R 2 C 11. –R · –L V o = Vi ------ + V i --------2- R 1 R1 12. R2 · · –R2 V o + Vo ------ = V i --------- L R1 13. (a. Create a node between the inductor and resistor Va, and use the node voltage method
∑ IV
A
( VA – Vi ) ( VA – V– ) = ---------------------- + -------------------------- = 0 0.001D 1000
V– = V
1000000 ( V A – V i ) + V A D = 0
+
= 0V
XXXXADD UNITSXXXXX
1000000 V A = V i ------------------------------- 1000000 + D
( V– – VA ) ( V– – Vo ) - + ------------------------- + ( V – – V o ) ( 0.000001D ) = 0 = I V ∑ – ------------------------1000 1000 –Vo ) (----------– 1 )- 1000000 (------------- + ( – V o ) ( 0.000001D ) = 0 V i ------------------------------- + 1000 1000000 + D 1000 1000000 V o ( – 1 – 0.001D ) = V i ------------------------------- 1000000 + D 2
V o ( – 1000000 – D – 1000D – 0.001D ) = 1000000V i –9
–3
V o'' ( – 10 ) + V o' ( – 1.001 ( 10 ) ) + V o ( – 1 ) = V i
circuits - 7.43
(b.
d· ---Vo = Vo dt
d- · · ---V o = – 1000000000V i – 1001000Vo – 1000000000V o dt
14. a) b) c)
–R2 · V o = Vi ( –CR 2 ) + V i --------- R1 Not a state equation assume Vi=1sin(wt) Vo =
1 2 2 1 + ( 1000ω ) sin ωt + atan ---------------- 1000ω
d)
7.11 ASSIGNMENT PROBLEMS 1. Write the differential equation for the following schematic. R
R + Vi -
L
C
+ Vo -
circuits - 7.44
2. Write the differential equation for the following schematic. L
R1 +
+
Vi
+ Vo
-
-
3. Write the differential equation for the following schematic. L R + Vi
+
C
+ Vo
-
-
4. Develop the differential equation(s) for the system below, and use them to find the response to the following inputs. Assume that the circuit is off initially. R3 + Vi R1=R2=R3=R4=1Kohm C=1uF a) V i = 5 sin ( 100t ) b) c)
V i = 5 sin ( 1000000t ) Vi = 5
+ -
Vo C
R4
R1 R2
circuits - 7.45
5. Write the input-output equation for the circuit below. C1 Vi
+ -
+
C2 R2
R1
L
Vo
-
6. Study the circuit below. Assume that for t<0s the circuit is discharged and off. Starting at t=0s an input of Vi=5sin(100,000t) is applied.
1K Vi
+ 1uF
+ Vo -
a) Write a differential equation and then a transfer function describing the circuit. b) Find the output of the circuit using explicit integration (i.e., homogeneous and particular solutions).
feedback control - 8.1
8. FEEDBACK CONTROL SYSTEMS
Topics: • Transfer functions, block diagrams and simplification • Feedback controllers • Control system design
Objectives: • To be able to represent a control system with block diagrams. • To be able to select controller parameters to meet design objectives.
8.1 INTRODUCTION Every engineered component has some function. A function can be described as a transformation of inputs to outputs. For example it could be an amplifier that accepts a signal from a sensor and amplifies it. Or, consider a mechanical gear box with an input and output shaft. A manual transmission has an input shaft from the motor and from the shifter. When analyzing systems we will often use transfer functions that describe a system as a ratio of output to input.
8.2 TRANSFER FUNCTIONS Transfer functions are used for equations with one input and one output variable. An example of a transfer function is shown below in Figure 8.1. The general form calls for output over input on the left hand side. The right hand side is comprised of constants and the ’D’ operator. In the example ’x’ is the output, while ’F’ is the input.
The general form
An example
output ----------------- = f ( D ) input
x 4+D --- = --------------------------------2 F D + 4D + 16
Figure 8.1
A transfer function example
feedback control - 8.2
If both sides of the example were inverted then the output would become ’F’, and the input ’x’. This ability to invert a transfer function is called reversibility. In reality many systems are not reversible. There is a direct relationship between transfer functions and differential equations. This is shown for the second-order differential equation in Figure 8.2. The homogeneous equation (the left hand side) ends up as the denominator of the transfer function. The nonhomogeneous solution ends up as the numerator of the expression.
f 2 · ·· x + 2ζωn x + ω n x = ----M 2 2 f xD + 2ζω n xD + ω n x = ----M 2 2 f x ( D + 2ζω n D + ω n ) = ----M 1- --- M x -- = -------------------------------------------2 2 f D + 2ζω n D + ω n
Figure 8.2
particular homogeneous
ωn
Natural frequency of system - Approximate frequency of control system oscillations.
ξ
Damping factor of system - If < 1 then underdamped, and the system will oscillate. If =1 critically damped. If < 1 overdamped, and never any oscillation (more like a first-order system). As damping factor approaches 0, the first peak becomes infinite in height.
The relationship between transfer functions and differential equations for a mass-spring-damper example
The transfer function for a first-order differential equation is shown in Figure 8.3. As before the homogeneous and non-homogeneous parts of the equation becomes the denominator and the numerator of the transfer function.
feedback control - 8.3
· 1 x + --- x = f τ 1 xD + --- x = f τ 1 x D + --- = f τ x 1 -- = ------------f 1 D + --τ
Figure 8.3
A first-order system response
8.3 CONTROL SYSTEMS Figure 8.4 shows a transfer function block for a car. The input, or control variable is the gas pedal angle. The system output, or result, is the velocity of the car. In standard operation the gas pedal angle is controlled by the driver. When a cruise control system is engaged the gas pedal must automatically be adjusted to maintain a desired velocity setpoint. To do this a control system is added, in this figure it is shown inside the dashed line. In this control system the output velocity is subtracted from the setpoint to get a system error. The subtraction occurs in the summation block (the circle on the left hand side). This error is used by the controller function to adjust the control variable in the system. Negative feedback is the term used for this type of controller.
feedback control - 8.4
Control variable INPUT (e.g. θgas)
vdesired
verror +
OUTPUT (e.g. velocity)
SYSTEM (e.g. a car)
_
control function
θgas
car
vactual
Note: The arrows in the diagram indicate directions so that outputs and inputs are unambiguous. Each block in the diagram represents a transfer function.
Figure 8.4
An automotive cruise control system
There are two main types of feedback control systems: negative feedback and positive feedback. In a positive feedback control system the setpoint and output values are added. In a negative feedback control the setpoint and output values are subtracted. As a rule negative feedback systems are more stable than positive feedback systems. Negative feedback also makes systems more immune to random variations in component values and inputs. The control function in Figure 8.4 can be defined many ways. A possible set of rules for controlling the system is given in Figure 8.5. Recall that the system error is the difference between the setpoint and actual output. When the system output matches the setpoint the error is zero. Larger differences between the setpoint and output will result in larger errors. For example if the desired velocity is 50mph and the actual velocity 60mph, the error is -10mph, and the car should be slowed down. The rules in the figure give a general idea of how a control function might work for a cruise control system.
feedback control - 8.5
Human rules to control car (also like expert system/fuzzy logic): 1. If verror is not zero, and has been positive/negative for a while, increase/decrease θgas 2. If verror is very big/small increase/decrease θgas 3. If verror is near zero, keep θgas the same 4. If verror suddenly becomes bigger/smaller, then increase/decrease θgas. 5. etc. Figure 8.5
Example control rules
In following sections we will examine mathematical control functions that are easy to implement in actual control systems.
8.3.1 PID Control Systems The Proportional Integral Derivative (PID) control function shown in Figure 8.6 is the most popular choice in industry. In the equation given the ’e’ is the system error, and there are three separate gain constants for the three terms. The result is a control variable value.
de u = K p e + K i ∫ edt + K d ------ dt Figure 8.6
A PID controller equation
Figure 8.7 shows a basic PID controller in block diagram form. In this case the potentiometer on the left is used as a voltage divider, providing a setpoint voltage. At the output the motor shaft drives a potentiometer, also used as a voltage divider. The voltages from the setpoint and output are subtracted at the summation block to calculate the feedback error. The resulting error is used in the PID function. In the proportional branch the error is multiplied by a constant, to provide a longterm output for the motor (a ballpark guess). If an error is largely positive or negative for a while the integral branch value will become large and push the system towards zero. When there is a sudden change occurs in the error value the differential branch will give a quick response. The results of all three branches are added together in the second summation block. This result is then amplified to drive the motor. The overall performance of the system can be changed by adjusting the gains in the three branches of the PID function.
feedback control - 8.6
proportional
PID function
Kp ( e )
V
V
integral e
+ -
Figure 8.7
Ki ( ∫ e )
+V
+ u
amp
motor
+
derivative d K d ----- e dt
+
-V
A PID control system
There are other variations on the basic PID controller shown in Figure 8.8. A PI controller results when the derivative gain is set to zero. (Recall the second order response.) This controller is generally good for eliminating long term errors, but it is prone to overshoot. In a P controller only the proportional gain in non-zero. This controller will generally work, but often cannot eliminate errors. The PD controller does not deal with longterm errors, but is very responsive to system changes.
For a PI Controller θ gas = K p v error + K i ∫ v error dt For a P Controller θ gas = K p v error For a PD Controller dv error θ gas = K p v error + K d ---------------- dt
Figure 8.8
Some other control equations
feedback control - 8.7
Aside: The manual process for tuning a PID controlled is to set all gains to zero. The proportional gain is then adjusted until the system is responding to input changes without excessive overshoot. After that the integral gain is increased until the longterm errors disappear. The differential gain will be increased last to make the system respond faster.
8.3.2 Manipulating Block Diagrams A block diagram for a system is not unique, meaning that it may be manipulated into new forms. Typically a block diagram will be developed for a system. The diagram will then be simplified through a process that is both graphical and algebraic. For example, equivalent blocks for a negative feedback loop are shown in Figure 8.9, along with an algebraic proof.
c +
G( D)
r
c is equal to
-
H( D)
G( D) -----------------------------------1 + G ( D )H ( D )
r
r = G ( D )e r = G ( D ) ( c – H ( D )r ) r ( 1 + G ( D )H ( D ) ) = G ( D )c G( D) r = ------------------------------------- c 1 + G ( D )H ( D )
Note: Units can be used to verify the feedback loop calculations.
Figure 8.9
A negative feedback block reduction
Other block diagram equivalencies are shown in Figure 8.10 to Figure 8.16. In all cases these operations are reversible. Proofs are provided, except for the cases where the equivalence is obvious.
feedback control - 8.8
c +
r
G( D)
c is equal to
+
G( D) -----------------------------------1 – G ( D )H ( D )
r
r = G ( D )e
H( D)
r = G ( D ) ( c + H ( D )r ) r ( 1 – G ( D )H ( D ) ) = G ( D )c G( D) r = ------------------------------------- c 1 – G ( D )H ( D )
Figure 8.10
c
A positive feedback block reduction
r
G( D)
is equal to
r
c
1 ------------G( D)
r = G ( D )c 1 c = r ------------- G(D )
Figure 8.11
c
Reversal of function blocks
r
G( D)
c
G( D)
is equal to G( D) r
Figure 8.12
r
Moving branches before blocks
r
feedback control - 8.9
c
x
G( D)
is equal to
b
H( D)
c
b
G ( D )H ( D )
x = G ( D )c b = H ( D )x b = H ( D )G ( D ) )c
Figure 8.13
c
Combining sequential function blocks
r
G( D)
c
1 ------------G( D)
is equal to c
c
Figure 8.14
c
r
G( D)
Moving branches after blocks
G( D)
e
±
c is equal to
±
±
G( D) ±
b e = ± G ( D )c ± b b e = G ( D ) ± c ± ----------------- ±G ( D )
Figure 8.15
Moving summation functions before blocks
c
1 ------------G( D)
b
e
feedback control - 8.10
c
G( D)
c
r
r
G(D)
is equal to d
r = G ( D ) ( ±c ± d )
G( D)
d
r = ± cG ( D ) ± dG ( D )
Figure 8.16
Moving summation function past blocks
Recall the example of a cruise control system for an automobile presented in Figure 8.4. This example is extended in Figure 8.17 to include mathematical models for each of the function blocks. This block diagram is first simplified by multiplying the blocks in sequence. The feedback loop is then reduced to a single block. Notice that the feedback line doesn’t have a function block on it, so by default the function is ’1’ - everything that goes in, comes out.
feedback control - 8.11
e.g. The block diagram of the car speed control system vdesired +
Ki K p + ----- + K d D D
verror
Ki K p + ----- + K d D D
-
vdesired +
verror
-
θgas
10
θgas
F
10-------MD
1-------MD
vactual
vactual
= G(D) vdesired
verror +
-
10- K + K ------------i p D + K d D MD
vactual
H(D) = 1
vdesired
Figure 8.17
10- K + K ------------i p D + K d D MD -------------------------------------------------------------------------Ki 10 1 + K p + ----- + K d D --------- ( 1 ) MD D
vactual
An example of simplifying a block diagram
The function block is further simplified in Figure 8.18 to a final transfer function for the whole system.
feedback control - 8.12
K + K -----i p D + K d D ------------------------------------------------------- K Ms - + K p + -----i + K d D ----- 10 D
vdesired
vdesired
2 D ( Kd ) + D ( K p ) + ( Ki ) ---------------------------------------------------------------------- M D 2 ---- 10- + K d + D ( K p ) + ( K i )
vactual
vactual
2 v actual D ( K d ) + D ( Kp ) + ( Ki ) ----------------- = ---------------------------------------------------------------------- v desired M D 2 ---- 10- + K d + D ( K p ) + ( K i )
Figure 8.18
An example of simplifying a block diagram (continued)
8.3.3 A Motor Control System Example Consider the example of a DC servo motor controlled by a computer. The purpose of the controller is to position the motor. The system in Figure 8.19 shows a reasonable control system arrangement. Some elements such as power supplies and commons for voltages are omitted for clarity.
feedback control - 8.13
2.2K 1K
12Vdc motor
PCI-1200 data acquisition card from National Instruments
Computer Running Labview gain Kp
X
+
+ LM675 op-amp shafts are coupled
+5V
-5V 5K potentiometer
desired position voltage Vd
Figure 8.19
A motor feedback control system
The feedback controller can be represented with the block diagram in Figure 8.20.
desired position voltage + Vd
gain Kp
op-amp
motor
potentiometer
Figure 8.20
A block diagram for the feedback controller
shaft
feedback control - 8.14
The transfer functions for each of the blocks are developed in Figure 8.21. Two of the values must be provided by the system user. The op-amp is basically an inverting amplifier with a fixed gain of -2.2 times. The potentiometer is connected as a voltage divider and the equation relates angle to voltage. Finally the velocity of the shaft is integrated to give position.
Given or selected values: - desired potentiometer voltage Vd - gain K For the op-amp:
∑ IV+
V+ – Vi V + – V o = ----------------- + ------------------ = 0 1K 2.2K
V + = V - = 0V
– Vi – V o -------- + ----------- = 0 1K 2.2K V -----o- = – 2.2 Vi For the potentiometer assume that the potentiometer has a range of 10 turns and 0 degrees is in the center of motion. So there are 5 turns in the negative and positive direction. θ V o = 5V -------------- 5 ( 2π ) V -----o- = 0.159Vrad –1 θ For the shaft, it integrates the angular velocity into position: d ω = ----- θ dt θ1 --= ---ω D
Figure 8.21
Transfer functions for the power amplifier, potentiometer and motor shaft
The basic equation for the motor is derived in Figure 8.22 using experimental data. In this case the motor was tested with the full inertia on the shaft, so there is no need to calculate ’J’.
feedback control - 8.15
For the motor use the differential equation and the speed curve when Vs=10V is applied: 2
1400 RPM
d- K K ---ω + ------ ω = ------ V s dt JR JR 1s
2s
3s
For steady-state d- –1 ---ω = 0 ω = 1400RPM = 146.6rads dt 2 K K 0 + ------ 146.6 = ------ 10 JR JR K = 0.0682
τ ≈ 0.8s 1s 2
1 K - ----= -- JR τ 1 K 0.0682 ------ = ---------JR 0.8s K----= 18.328 JR 1 Dω + ------- ω = 18.33V s 0.8 ω18.33 ---= --------------------Vs D + 1.25
Figure 8.22
Transfer function for the motor
The individual transfer functions for the system are put into the system block diagram in Figure 8.23. The block diagram is then simplified for the entire system to a single transfer function relating the desired voltage (setpoint) to the angular position (output). The transfer function contains the unknown gain value ’Kp’.
feedback control - 8.16
Vd
+
Kp
18.33 --------------------D + 1.25
-2.2
1--D
θ
0.159
Vd
+
θ
– 40.33Kp ----------------------------( D + 1.25 )D 0.159
Vd
Vd
Vd
θ
– 40.33Kp ----------------------------( D + 1.25 )D ---------------------------------------------------------– 40.33Kp 1 + ( 0.159 ) -----------------------------( D + 1.25 )D – 40.33Kp --------------------------------------------------------( D + 1.25 )D – 6.412Kp – 40.33Kp -----------------------------------------------------2 D + 1.25 D – 6.412Kp
Figure 8.23
θ
θ
The system block diagram, and simplification
The value of ’Kp’ can be selected to ’tune’ the system performance. In Figure 8.24 the gain value is calculated to give the system an overall damping factor of 1.0, or critically damped. This is done by recognizing that the bottom (homogeneous) part of the transfer function is second-order and then extracting the damping factor and natural frequency. The final result of ’Kp’ is negative, but this makes sense when the negative gain on the op-amp is considered.
feedback control - 8.17
We have specified, or been given the damping coefficient as a design objective. ξ = 1.0 The denominator of the system transfer function can be compared to the standard second-order response. 2
2
D + 1.25 D – 6.412K p = x'' + 2ξωn x' + ω n x 1.25 = 2ξω n 1.25 = 2 ( 1.0 )ω n ω n = 0.625 2
– 6.412K p = ω n – 6.412K p = 0.625
2
K p = – 0.0609
Figure 8.24
Calculating a gain Kp
8.3.4 System Error System error is often used when designing control systems. The two common types of error are system error and feedback error. The equations for calculating these errors are shown in Figure 8.25. If the feedback function ’H’ has a value of ’1’ then these errors will be the same.
e
c
r G
System error,
S = c–r
Feedback error,
e = c–b
+ -
b H
Figure 8.25
Controller errors
feedback control - 8.18
An example of calculating these errors is shown in Figure 8.26. The system is a simple integrator, with a unity feedback loop. The overall transfer function for the system is calculated and then used to find the system response. The response is then compared to the input to find the system error. In this case the error will go to zero as time approaches infinity.
Given,
Kp G ( D ) = -----D
H( D) = 1
Kp r G ∴-- = ------------------ = ---------------c 1 + GH D + Kp · ∴r + K p c = K p c c = A The homogeneous solution is, rh = C 1 e
–Kp t
The particular solution is found with a guess, rp = C 2 · rp = 0 0 + KpC2 = KpA
C2 = A
The solutions can be combined and the remaining unknown found for the system at rest initially. r = rh + r p = C 1 e
–Kp t
+A
0
0 = C1e + A C1 = –A r = –A e
–Kp t
+A
The error can now be calculated. S = c–r S = A – ( –A e Figure 8.26
–Kp t
+ A ) = Ae
–Kp t
System error calculation example for a step input
feedback control - 8.19
Solve the previous problem using a ramp input,
Figure 8.27
c = At
Drill problem: Calculate the system error for a ramp input
feedback control - 8.20
Find the system error ’e’ for the given ramp input, R. 1 G ( D ) = ----------------------------2 D + 4D + 5
Figure 8.28
H(D) = 5
Drill problem: Calculate the errors
c = 4t
feedback control - 8.21
8.3.5 Controller Transfer Functions The PID controller, and simpler variations were discussed in earlier sections. A more complete table is given in Figure 8.29.
Transfer Function
Type
Proportional (P)
Gc = K
Proportional-Integral (PI)
1 G c = K 1 + ------- τD
Proportional-Derivative (PD)
G c = K ( 1 + τD )
Proportional-Integral-Derivative (PID)
1 G c = K 1 + ------- + τD τD
Lead
1 + ατD G c = K -------------------- 1 + τD
α>1
Lag
1 + τD G c = K -------------------- 1 + ατD
α>1
Lead-Lag
1 + τ 1 D 1 + ατ 2 D - ----------------------G c = K --------------------- 1 + ατ 1 D 1 + τ 2 D
Figure 8.29
α>1 τ1 > τ2
Standard controller types
8.3.6 Feedforward Controllers When a model of a system is well known it can be used to improve the performance of a control system by adding a feedforward function, as pictured in Figure 8.30. The feedforward function is basically an inverse model of the process. When this is used together with a more traditional feedback function the overall system can outperform more traditional controllers function, such as the PID controller.
feedback control - 8.22
feedforward function feedback function
Figure 8.30
process
A feed forward controller
8.3.7 State Equation Based Systems State variable matrices were introduced before. These can also be used to form a control system, as shown in Figure 8.31.
d---X = AX + BU dt Y = CX + D
U
d---X dt
+ B
1--D
C
+
+
A
Figure 8.31
Y
+
X
D
A state variable control system
An example is shown in Figure 8.32 that implements a second order state equation. The system uses two integrators to integrate the angular acceleration, then the angular velocity, to get the position.
feedback control - 8.23
d---ω dt
+
τ
C
+
1--D
d---θ dt
θ 1--D
+
d---θ = ω dt
A
d---ω = Aω + Bθ + Cτ dt
Figure 8.32
B
A second order state variable control system
The previous block diagrams are useful for simulating systems. These can then be used in feedforward control systems to estimate system performance and then predict a useful output value.
The model, 2 K K · ω + ω ------ = V s ------ JR JR · JR V s = ω ------ + ω ( K ) K ω A
d---ω dt
State Based Controller +
JR -----K
+ K
+
K K P + -----i + DK d D Feedback
Plant
feedback control - 8.24
Figure 8.33
A state based feedforward controller
8.3.8 Cascade Controllers When controlling a multistep process a cascade controller can allow refined control of sub-loops within the larger control system. Most large processes will have some form of cascade control. For example, the inner loop may be for a heating oven, while the outer loop controls a conveyor feeding parts into the oven.
Gc1
Figure 8.34
Gc2
Gp1
Gp2
A cascade controller
8.4 SUMMARY • Transfer functions can be used to model the ratio of input to output. • Block diagrams can be used to describe and simplify systems. • Controllers can be designed to meet criteria, such as damping ratio and natural frequency. • System errors can be used to determine the long term stability and accuracy of a controlled system. • Other control types are possible for more advanced systems.
8.5 PRACTICE PROBLEMS 1. Develop differential equations and then transfer functions for the mechanical system below. There is viscous damping between the block and the ground. A force is applied to cause the
feedback control - 8.25
mass the accelerate. x
F M B
2. Develop a transfer function for the system below. The input is the force ‘F’ and the output is the voltage ‘Vo’. The mass is suspended by a spring and a damper. When the spring is undeflected y=0. The height is measured with an ultrasonic proximity sensor. When y = 0, the output Vo=0V. If y=20cm then Vo=2V and if y=-20cm then Vo=-2V. Neglect gravity.
Ks
N K s = 10 ---m
Kd
s K d = 5N ---m
M = 0.5Kg
M
F
Ultrasonic Proximity Sensor
y
3. Find the transfer functions for the systems below. Here the input is a torque, and the output is the angle of the second mass. θ1
τ
θ2
J1
K s1 B1
K s2
J2
B2
feedback control - 8.26
4. Find the transfer functions for the system below where Vi is the input and Vo is the output. C
L
+
+
Vi
R1
R2
-
Vo -
5. Given the transfer function, G(s), determine the time response output Y(t) to a step input X(t). 4 Y G = ------------- = --X ( t ) = 20 When t >= 0 D+2 X 6. Given the transfer function below, develop a mechanical system that it could represent. (Hint: Differential Equations). x(D) 1 ------------- = ----------------------F(D ) 10 + 20D
where:
x = displacement F = force
7. Given a mass supported by a spring and damper, find the displacement of the supported mass over time if it is released from neutral at t=0sec, and gravity pulls it downward. a) develop a transfer function for y/F. b) find the input function F. c) solve the input output equation to find an explicit equation of the position as a function of time for Ks = 10N/m, Kd = 5Ns/m, M=10kg. d) solve part c) numerically. 8. a) What is a Setpoint, and what is it used for? b) What does feedback do in control systems? 9. The block diagram below is for a servo motor position control system. The system uses a proportional controller. a) Draw a sketch of what the actual system might look like. Identify components. θd
V V- d -------2 rad +
Ve
K
Vm
ω 10 - rad -------------------D + 1 sV
Va
V 2 --------rad
b) Convert the system to a transfer function.
1--D
θa
feedback control - 8.27
10. Simplify the block diagram below to a transfer function.
A x
-
+
B -
+
+
y
+ C
11. Simplify the block diagram below. (Note: Vn is an input and cannot be combined in a transfer function.) +
+ A
Vi
C
-
Vo
+ Vn
12. a) Develop an equation for the system below relating the two inputs to the output. Put it in block diagram format. (Hint: think of a summation block.)
R
R Vf
Ve
R Vd
+ R
b) Develop an equation for the system below relating the input to the output. Put
feedback control - 8.28
the result in block diagram format.
1K
1K -
Vs
1K Ve
+ RP
c) The equation below can be used to model a permanent magnet DC motor with an applied torque. An equivalent block diagram is given. Prove that the block diagram is equivalent to the equation. 2
Km T load Km d- ---ω + ω ------------- = V s ------------- – ----------- dt J R R M JR J R R M Vs
K ------mRM
+
e -
RM --------------------------------2 JR RM D + Km
ω
T load d) Write the transfer function for the system below relating the input torque to the output angle theta2. Then write the transfer function for the angular velocity of mass 2. θ1 θ2
τ
K s1
J1
J2
K s2 B
e) The system below is a combination of previous components, and a tachometer
feedback control - 8.29
for velocity feedback. Simplify the block diagram. Vd
K ------mRM
2R P -------------------3 R P + 10
+ -
RM ---------------------------------2 JM RM D + Km
+
ω
-
K s2 ----------------------------------------------------------------------------------------------------------------------3 2 D ( J 1 J 2 ) + D ( BJ 1 ) + D ( Ks2 ( J 1 + J 2 ) ) + ( BK s2 ) KT
13. Find the system output, feedback error and system error when the input is a ramp with the function c(t) = 0.5t. Sketch the system errors as a function of time. C(D)
+
5 ---------------------D( D + 1)
R( D)
-
1 + 0.2D
14. Given the block diagram below, select a system gain K that will give the overall system a damping ratio of 0.7 (for a step input). What is the resulting damped frequency of the system? +
K
2 -----------------------------2 D + 3D + 2
-
15. The following system is a feedback controller for an elevator. It uses a desired height ‘d’ provided by a user, and the actual height of the elevator ‘h’. The difference between these two is called the error ‘e’. The PID controller will examine the value ‘e’ and then control the speed of the lift motor with a control voltage ‘c’. The elevator and controller are described with transfer functions, as shown below. all of these equations can be combined into a single system transfer
feedback control - 8.30
equation as shown. e = d–h
error 2
K + 1 + D - PID controller -----------------------------r- = K p + -----i + K d D = 2D D e D combine the transfer functions 2
h--10 = ---------------2 r D +D
elevator
2
10 10 ( D + 1 ) 2D + 1 + D - ---------------10 (D + 1) -r- h--- = h--- = ----------------------------= --------------------- ----------------------- = -----------------------2 2 e r D D(D + 1) e D D D +D h 10 ( D + 1 ) eliminate ‘e’ ----------= -----------------------2 d–h D 10 ( D + 1 ) h = -----------------------(d – h) 2 D 10 ( D + 1 ) 10 ( D + 1 ) = -----------------------(d) h 1 + -----------------------2 2 D D 10 ( D + 1 ) ----------------------- 2 h--D 10D + 10 system transfer function = ---------------------------------- = ----------------------------------2 10 ( D + 1 ) d D + 10D + 10 1 + ----------------------- 2 D a) Find the response of the final equation to a step input. The system starts at rest on the ground floor, and the input (desired height) changes to 20 as a step input. b) Calculate the damping coefficient and natural frequency of the results in part a). 16. Study the circuit below. Assume that for t<0s the circuit is discharged and off. Starting at t=0s an input of Vi=5sin(100,000t) is applied.
1K Vi
+ 1uF
+ Vo -
a) Write a differential equation and then a transfer function describing the circuit. b) Find the output of the circuit using explicit integration (i.e., homogeneous and particular solutions). 17. Write a C subroutine to implement the control system that is shown inside the dashed line. The subroutine arguments are the setpoint, C, and the feedback value, F. the subroutine returns the
feedback control - 8.31
new controller output value, U.
5D + C
e
+
+
U
1-----5D
Kp
R
5 F
int controller(int C, int F){
8.6 PRACTICE PROBLEM SOLUTIONS 1. 1 --x- = ---------------------------F D ( B – DM )
2. V V 10 ---- 10 ---- m m Vo y Vo ------ = ------ --- = --------------------------------------------- = --------------------------------------------------------------2 F yF 2 Ns N – MD – K d D – K s – 0.5kgD – 5 ------ D – 10 ---m m 3. θ2 K s2 ----- = -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------4 3 2 τ D ( J 1 J 2 ) + D ( B 1 J 2 + B 2 J 1 ) + D ( K s2 ( J 1 + J 2 ) + B1 B 2 ) + D ( K s2 ( B 1 + B 2 ) ) 4. Vo D ( R 1 R2 C ) ------ = -------------------------------------------------------------------------------------------------2 Vi D ( R 1 LC ) + D ( L + CR 1 R 2 ) + ( R 1 + R2 )
feedback control - 8.32
5. y ( t ) = – 40e
– 2t
+ 40
6.
N K s = 10 ---m F Ns K d = 20 -----m
7.
b)
1 --y- = ----------------------------------------2 F D M + DK d + K s F = Mg
c)
y ( t ) = – 10.13e
d)
y( t + h) = y(t) + h 0 1 y(t) + 0 v( t + h) v(t) – 1 – 0.5 v ( t ) 9.81
a)
– 0.25t
cos ( 0.968t – 0.253 ) + 9.81
8. a) A setpoint is a system input that correlates to a desired output for a system with negative feedback control. b) Feedback in a control system allows an out to be compared to an input. The difference, the error, is used to adjust the control variable and increase the accuracy.
feedback control - 8.33
9. a)
20K ---------------------------------2 D + D + 20K
b)
10. A+B -----------------------------------1 + CB + A + B
11.
Vn
--1A + +
Vi
Vo CA ------------1+A
12. R a) V + = V d ------------- = 0.5V d R + R
∑ IV
-
V- – V f V - – V e = ---------------- + ----------------- = 0 R R V e = 2V - – V f V e = 2 ( 0.5V d ) – V f Ve = Vd – Vf
Vd
+
Ve Vf
feedback control - 8.34
V- – 0 V- – V s - + ----------------- = 0 I = ∑ V- ------------3 3 10 10
b)
V - = 0.5V s
(1)
V + – V e V+ – 0 - + --------------- = 0 = I ∑ V+ ----------------3 RP 10 Ve 1 1 V+ -------3- + ------ = -------3 R P 10 10 substitute in (1) V R P + 1K - = -------e0.5V s ------------------3 3 R P ( 10 ) 10 V 2R P -----s = -------------------3 Ve R P + 10
Ve
Vs
note: a constant set by the variable resistor Rp
2
c)
2R P -------------------3 R P + 10
Km T load Km d- ---ω + ω ------------- = V s ------------- – ----------- J R R M dt JR J R R M 2
Km K m T load - = V s ------------ – -----------ω D + ----------- J R R M J R R M JR JR M K m T load - – ------------ V s -----------ω = --------------------------------JR J R R M D + K m 2 J R R M Km RM ω = ---------------------------------2- V s ------- – T load J R R M D + K m R M
feedback control - 8.35
d) K s2 ( θ 1 – θ 2 )
τ
∑M
+ J1
= τ – K s2 ( θ 1 – θ 2 ) = J 1 θ 1 D
τ – K s2 ( θ 1 – θ 2 ) = J 1 θ1 D
2
2
2
θ 1 ( J 1 D + K s2 ) + θ 2 ( – K s2 ) = τ K s2 ( θ 1 – θ 2 )
∑M
+ J2
= K s2 ( θ 1 – θ 2 ) – Bθ2 D = J 2 θ 2 D
K s2 ( θ 1 – θ 2 ) – Bθ2 D = J 2 θ 2 D Bθ 2 D
(1) 2
2
2
θ 2 ( J 2 D + K s2 + BD ) = θ 1 ( K s2 ) 2
J 2 D + K s2 + BD θ 1 = θ 2 ----------------------------------------- K s2
substitute (2) into (1) 2
J 2 D + BD + K s2 2 θ 2 ---------------------------------------- ( J 1 D + K s2 ) + θ 2 ( – K s2 ) = τ K s2 4
3
2
D ( J 1 J 2 ) + D ( BJ 1 ) + D ( K s2 ( J 1 + J 2 ) ) + D ( BK s2 ) - = τ θ 2 -----------------------------------------------------------------------------------------------------------------------------K s2 θ2 K s2 ----- = -----------------------------------------------------------------------------------------------------------------------------4 3 2 τ D ( J 1 J 2 ) + D ( BJ 1 ) + D ( K s2 ( J 1 + J 2 ) ) + D ( BK s2 ) ω 2 = Dθ 2 K s2 ω -----2- = ----------------------------------------------------------------------------------------------------------------------3 2 τ D ( J 1 J 2 ) + D ( BJ 1 ) + D ( K s2 ( J 1 + J 2 ) ) + ( BK s2 )
e)
3
2
D ( ) + D ( ) + D( ) + ( ) ω----= -----------------------------------------------------------------------------------------4 3 2 Vd D ( ) + D ( ) + D ( ) + D( ) + ( )
(2)
feedback control - 8.36
13. 15 1 1 –t R ( t ) = – 0.224e cos ---------- t – 0.464 – --- + ----2 5 2t 15 1 –t S ( t ) = 0.224e cos ---------- t – 0.464 – --2 5 15 1 –t e ( t ) = – 0.112e cos ---------- t – 0.464 + -----2 10 14. rad ω d = 1.530 --------s
K = 1.30
15. a)
h ( t ) = 2.91e
b)
ζ = 1.58
– 8.873t
– 22.91e
– 1.127t
+ 20
rad ω n = 3.162 --------s
16. a)
Vo 1000 ------ = ---------------------Vi D + 1000
b)
V o = 0.050e
– 1000t
17.
int controller(){ }
5
+ 0.050 sin ( 10 t + 1.561 )
feedback control - 8.37
8.7 ASSIGNMENT PROBLEMS 1. Develop a transfer function for the circuit below. L R Vi
R
C -
Vo
+
2. Given the transfer functions and input functions, F, use a numerical method to calculate the output of the system as a function of time for 0 to 0.5 seconds in 0.05 second intervals. Record the values in a table. 2
D --x- = ----------------------------2 F ( D + 200π )
F = 5 sin ( 62.82t )
D ( D + 2π )--x- = ----------------------------2 F ( D + 200π )
F = 5 sin ( 62.82t )
2
D ( D + 2π )--x- = ----------------------------2 F ( D + 200π )
F = 5 sin ( 62.82t )
3. Simplify the following block diagram. +
1 -----------D+1 1 -----------D+2
feedback control - 8.38
4. Simplify the following block diagram. + +
+
A
B
C
-
5. Simplify the following block diagram. 2
D + 3D + 5 + +
K ---D
+
1 -----------------------------2 D + 3D + 5
10
6. Simplify the following block diagram. 2
D + 3D + 5 + +
K--D 10
+
1 -----------------------------2 D + 3D + 5
feedback control - 8.39
7. Simplify the following block diagram. G1 C +
G2
+
G3
-
+
R
G5
G4
G6
8. Simplify the following block diagram for a crane gantry position control system. The system also includes a negative feedback loop to control the sway of an attached load encoder Cp
Cd
-
C pe
K enc C pc
θp
Vs K pwm
K pp
G motor
+
+
-
C Lc K sp
CL
K AD
VL
K pot
θL
G load
9. Write a C subroutine to implement the control system that is shown inside the dashed line. The subroutine arguments are the setpoint, C, and the feedback value, F. the subroutine returns the new controller output value, U. C
e
+
U Kp + KdD
1 -------------------2 (D + 1)
R
Ki ----D
5 F
10. Write a C subroutine to implement the control system that is shown inside the dashed line. The subroutine arguments are the setpoint, C, and the feedback value, F. the subroutine returns the
feedback control - 8.40
new controller output value, U. C
e
+
Ki K p + K d D + ----D
U
1 -------------------2 (D + 1)
5 F
R
frequency response - 9.1
9. PHASOR ANALYSIS
Topics: • Phasor forms for steady state analysis • Complex and polar calculation of steady state system responses • Vibration analysis Objectives: • To be able to analyze steady state responses using the phasor transform
9.1 INTRODUCTION When a system is stimulated by an input it will respond. Initially there is a substantial transient response, that is eventually replaced by a steady state response. Techniques for finding the combined steady state and transient responses were covered in earlier chapters. These include the integration of differential equations, and numerical solutions. Phasor analysis can be used to find the steady state response only. These techniques involve using the phasor transform on the system transfer function, input and output.
9.2 PHASORS FOR STEADY-STATE ANALYSIS When considering the differential operator we can think of it as a complex number, as in Figure 9.1. The real component of the number corresponds to the natural decay (e-tothe-t) of the system. But, the complex part corresponds to the oscillations of the system. In other words the real part of the number will represent the transient effects of the system, while the complex part will represent the sinusoidal steady-state. Therefore to do a steadystate sinusoidal analysis we can replace the ’D’ operator with jω , this is the phasor transform.
D = σ + jω
where, D = differential operator σ = decay constant ω = oscillation frequency
Figure 9.1
Phasor transform D = jω
Transient and steady-state parts of the differential operator
frequency response - 9.2
An example of the phasor transform is given in Figure 9.2. We start with a transfer function for a mass-spring-damper system. In this example numerical values are assumed to put the equation in a numerical form. The differential operator is replaced with jω, and the equation is simplified to a complex number in the denominator. This equation then described the overall response of the system to an input based upon the frequency of the input. A generic form of sinusoidal input for the system is defined, and also converted to phasor (complex) form. (Note: the frequency of the input does not show up in the complex form of the input, but it will be used later.) The steady state response of the system is then obtained by multiplying the transfer function by the input, to obtain the output.
A phasor transform can be applied to a transfer function for a mass-spring-damper system. Some component values are assumed. N Ns K s = 2000 ---K d = 3000 -----M = 1000kg m m 1 x ( D ) 1 ------------- = ------------------------------------------ = -----------------------------------------------------------2 2 F( D) 1000D + 3000D + 2000 MD + K d D + K s x(ω ) 1 1 ------------ = ---------------------------------------------------------------------= ----------------------------------------------------------------2 2 2 F( ω) 1000j ω + 3000jω + 2000 ( 2000 – 1000ω ) + j ( 3000ω ) A given input function can also be converted to phasor form. F ( t ) = A sin ( ω input t + θ input ) F ( ω ) = A ( cos θ input + j sin θ input ) F ( ω ) = A cos θ input + jA sin θ input
Note: the frequency is not used when converting an oscillating signal to complex form. But it is needed for the transfer function.
The response of the steady state output ’x’ can now be found for the given input. x(ω ) 1 - ( A cos θ input + jA sin θ input ) x ( ω ) = ------------ F ( ω ) = ---------------------------------------------------------------------2 F( ω) ( 2000 – 1000ω ) + j ( 3000ω )
Figure 9.2
A phasor transform example
To continue the example in Figure 9.2 values for the sinusoidal input force are assumed. After this the method only requires the simplification of the complex expression. In particular having a complex denominator makes analysis difficult and is undesirable. To simplify this expression it is multiplied by the complex conjugate. After this, the expression is quickly reduced to a simple complex number. The complex number is then converted to polar form, and then finally back into a function of time.
frequency response - 9.3
Assume the input to the system is, A = 10N
F ( t ) = 10 sin ( 100t + 0.5 )N
rad ω = 100 --------s
θinput = 0.5rad
These can be applied to find the steady state output response, 1 - ( 10 cos 0.5 + j10 sin 0.5 ) x ( ω ) = -----------------------------------------------------------------------------------------2 ( 2000 – 1000 ( 100 ) ) + j ( 3000 ( 100 ) ) 1 x ( ω ) = ------------------------------------------------------------ ( 8.776 + j4.794 ) ( – 9998000 ) + j ( 300000 ) 8.776 + j4.794 ( – 9998000 – j300000 ) x ( ω ) = --------------------------------------------------- -------------------------------------------------------– 9998000 + j300000 ( – 9998000 – j300000 ) Note: This is known as the complex conjugate; 1. The value is equivalent to 1 so it does not change the value of the expression 2. The complex component is now negative 3. Only the denominator is used top and bottom ( – 86304248 ) + j ( – 50563212 -) x ( ω ) = ----------------------------------------------------------------------14 1.0005 ×10 -6
-6
x ( ω ) = ( – 0.863 ×10 ) + j ( – 0.505 ×10 ) x(ω ) =
– 0.505 ×10-6 -6 2 -6 2 - + π ( – 0.863 ×10 ) + ( – 0.505 ×10 ) ∠ atan ---------------------------- – 0.863 ×10-6
Note: the signs of the components indicate that the angle is in the bottom left quadrant of the complex plane, so the angle should be between 180 and 270 degrees. To correct for this pi radians are added to the result of the calculation. -6
x ( ω ) = 0.9999 ×10 ∠3.671 This can then be converted to a function of time. -6
x ( t ) = 0.9999 ×10 sin ( 100t + 3.671 )m
Figure 9.3
A phasor transform example (cont’d)
frequency response - 9.4
Note: when dividing and multiplying complex numbers in polar form the magnitudes can be multiplied or divided, and the angles added or subtracted. Unfortunately when the numbers are only added or subtracted they need to be converted back to cartesian form to perform the operations. This method eliminates the need to multiply by the complex conjugate. B 2 2 A + B ∠ atan --- 2 2 A A + jBA +B B D --------------= ------------------------------------------------- = ----------------------- ∠ atan --- – atan ---- C + jD A C 2 2 D 2 2 C +D C + D ∠ atan ---- C A ∠θ -------------1- = A --- ∠( θ 1 – θ 2 ) B ∠θ 2 B ( A ∠θ 1 ) ( B ∠θ 2 ) = AB ∠( θ 1 + θ2 ) For example, 2+j ( 1 + j ) -------------- 3 + 4j =
5 ∠0.4636 2 ∠0.7854 ------------------------------25 ∠0.9273
2 5 = -------------- ∠0.7854 + 0.4636 – 0.9273 25 = 0.6325 ∠0.3217 = 0.6 + j0.2
Figure 9.4
Calculations in polar notation
The cartesian form of complex numbers seen in the last section are well suited to operations where complex numbers are added and subtracted. But, when complex numbers are to be multiplied and divided these become tedious and bulky. The polar form for complex numbers simplifies many calculations. The previous example started in Figure 9.2 is redone using polar notation in Figure 9.5. In this example the input is directly converted to polar form, without the need for calculation. The input frequency is substituted into the transfer function and it is then converted to polar form. After this the output is found by multiplying the transfer function by the input. The calculations for magnitudes involve simple multiplications. The angles are simply added. After this the polar form of the result is converted directly back to a function of time.
frequency response - 9.5
Consider the input function from the previous example in polar form it becomes, F ( t ) = 10 sin ( 100t + 0.5 )N F ( ω ) = 10 ∠0.5 The transfer function can also be put in polar form. x(ω) 1 1 ------------ = --------------------------------------------------= -----------------------------------------------------------------------------------------2 F(ω) – 9998000 + j300000 ( 2000 – 1000 ( 100 ) ) + j ( 3000 ( 100 ) ) x(ω) 1 ∠0 -----------= -------------------------------------------------------------------------------------------------------------------------------F(ω) 300000 2 2 ( – 9998000 ) + ( 300000 ) ∠ atan ------------------------ + π – 9998000 x ( ω ) 1 ∠ 0 1 ------------ = ------------------------------------------ = ------------------------ ∠( 0 – 3.112 ) = 0.9998 ×10-7 ∠– 3.112 F(ω) 10002500 ∠3.112 10002500 The output can now be calculated. x( ω) -7 x ( ω ) = ------------ F ( ω ) = ( 0.9998 ×10 ∠– 3.112 ) ( 10 ∠0.5 ) F(ω) -7
-6
x ( ω ) = 0.9998 ×10 ( 10 ) ∠( – 3.112 + 0.5 ) = 0.9998 ×10 ∠– 2.612 The output function can be written from this result. -6
x ( ω ) = 0.9998 ×10 sin ( 100t – 2.612 )
Re Note: recall that tan θ = ------ but the atan θ function in Im calculators and software only returns values between 90 to 90 degrees. To compensate for this the sign of the real and imaginary components must be considered to determine where the angle lies. If it lies beyond the -90 to 90 degree range the correct angle can be obtained by adding or subtracting 180 degrees.
Figure 9.5
imaginary +/-
+/+
-/-
-/+
real
Correcting quadrants for calculated angles
Consider the circuit analysis example in Figure 9.6. In this example the component values are converted to their impedances, and the input voltage is converted to phasor form. (Note: this is a useful point to convert all magnitudes to powers of 10.) After this the three output impedances are combined to a single impedance. In this case the calculations were simpler in the cartesian form.
frequency response - 9.6
Given the circuit,
10K Ω 1mH
+ -
100nF
10K Ω
+ Vo -
6 V i = 5 sin ( 10 t + 0.3 ) The impedances and input voltage can be written in phasor form. 10 5 –0.3
+ -
4 10
–3
6 10 j
1 ----------------------–7 6 10 10 j
10
4
+ Vo -
The three output impedances in parallel can then be combined. 10 5 ∠0.3
+ -
4
Z eq
+ Vo -
1 11 - -------------------------1------- + ------= -------------------+ – 3 6 4 1 Z eq 10 10 j -------------------- 10 –7 6 10 10 j 1–3 –1 –4 –4 ------= – 10 j + 10 j + 10 = ( 10 ) + j ( 0.099 ) Z eq 1 Z eq = ----------------------------------------–4 ( 10 ) + j ( 0.099 )
Figure 9.6
Phasor analysis of a circuit
The analysis continues in Figure 9.7 as the output is found using a voltage divider. In this case a combination of cartesian and polar forms are used to simplify the calculations. The final result is then converted back from phasor form to a function of time.
frequency response - 9.7
The output can be found using the voltage divider form. Z eq V o ( ω ) = ( 5 ∠0.3 ) --------------------- 10 4 + Z eq 1 ----------------------------------------- –4 ( 10 ) + j ( 0.099 ) V o ( ω ) = ( 5 ∠0.3 ) --------------------------------------------------------------- 4 1 - 10 + ----------------------------------------–4 ( 10 ) + j ( 0.099 ) 1 - V o ( ω ) = ( 5 ∠0.3 ) --------------------------------------------------------------------4 –4 ( 10 ) ( ( 10 ) + j ( 0.099 ) ) + 1 1 5 ∠0.3 5 ∠0.3 V o ( ω ) = ( 5 ∠0.3 ) -------------------- = ---------------------------------------------------- = --------------------------------------2 + j990 990 ∠1.5687761 990 2 2 2 + 990 ∠ atan --------2 5 –3 V o ( ω ) = --------- ∠( 0.3 – 1.5687761 ) = 5.05 × 10 ∠– 1.269 990 Finally, the output voltage can be written. 6
V o ( t ) = 5.05 sin ( 10 t – 1.269 ) mV
Figure 9.7
Phasor analysis of a circuit (cont’d)
Phasor analysis is applicable to systems that are linear. This means that the principle of superposition applies. Therefore, if an input signal has more than one frequency component then the system can be analyzed for each component, and then the results simply added. The example considered in Figure 9.2 is extended in Figure 9.8. In this example the input has a static component, as well as frequencies at 0.5 and 20 rad/s. The transfer function is analyzed for each of these frequencies components. The output components are found by multiplying the inputs by the response at the corresponding frequency. The results are then converted back to functions of time, and added together.
frequency response - 9.8
Given the transfer function for the system, x(ω) 1 -----------= ---------------------------------------------------------------------2 F(ω) ( 2000 – 1000ω ) + j ( 3000ω )
Note: these are gains and phase shifts that will be used heavily in Bode plots later.
and an input with multiple frequency components, F ( t ) = 1000 + 20 sin ( 20t ) + 10 sin ( ( 0.5t ) ( N ) )
the transfer function for each frequency can be calculated, x(0) 1 1 ----------- = ----------= -----------------------------------------------------------------------------= 0.0005 ∠0 2 F(0) 2000 ( 2000 – 1000 ( 0 ) ) + j ( 3000 ( 0 ) ) 1 1 ∠0 x ( 20 ) 1 - = ---------------------------------------------------------= -----------------------------------------------------------------------------------= -----------------------------------2 F ( 20 ) – 398000 + j60000 402497 ∠2.992 ( 2000 – 1000 ( 20 ) ) + j ( 3000 ( 20 ) ) x ( 0.5 )1 1 1 ∠0 --------------- = ------------------------------- = ----------------------------= --------------------------------------------------------------------------------------2 F ( 0.5 ) 1750 + j1500 2305 ∠0.709 ( 2000 – 1000 ( 0.5 ) ) + j ( 3000 ( 0.5 ) ) These can then be multiplied by the input components to find output components. x ( 0 ) = ( 0.0005 ∠0 )1000 ∠0 = 0.5 ∠0 1 ∠0 -4 x ( 20 ) = ------------------------------------ 20 ∠0 = 0.497 ×10 ∠– 2.992 402497 ∠2.992 1 ∠0 –3 x ( 0.5 ) = ------------------------------ 10 ∠0 = 4.34 × 10 ∠– 0.709 2305 ∠0.709 Therefore the output is, –6
–3
x ( t ) = 0.5 + 49.7 × 10 sin ( 20t – 2.992 ) + 4.34 × 10 sin ( 0.5t – 0.709 )
Figure 9.8
A example for a signal with multiple frequency components (based on the example in Figure 9.2)
9.3 VIBRATIONS Oscillating displacements and forces in mechanical systems will cause vibrations. In some cases these become a nuisance, or possibly lead to premature wear and failure in mechanisms. A common approach to dealing with these problems is to design vibration isolators. The equations for transmissibility and isolation is shown in Figure 9.9. These equations can compare the ratio of forces or displacements through an isolator. The calculation is easy to perform with a transfer function or Bode plot.
frequency response - 9.9
Given a vibration force in, to a force out, x out ( ω ) F out ( ω ) T = ------------------- = -----------------F in ( ω ) x in ( ω )
The gain of a transfer function gives transmissibility
%I = ( 1 – T )100%
Figure 9.9
Transmissibility
Given the transfer function for a vibration isolator below, find a value of K that will give 50% isolation for a 10Hz vibration. x out 5D + 10 --------- = ---------------------------------------2 x in 4D + 20KD + 4
Figure 9.10
Drill problem: Select a K value
frequency response - 9.10
9.4 SUMMARY • Phasor transforms and phasor representations can be used to find the steady state response of a system to a given input. • Vibration analysis determines frequency components in mechanical systems.
9.5 PRACTICE PROBLEMS 1. Develop a transfer function for the system pictured below and then find the response to an input voltage of Vi = 10sin(1,000,000 t) using phasor transforms. 1mH 1KΩ + Vi
+ -
1KΩ
1KΩ
1KΩ
Vo
-
2. A single d.o.f. model with a weight of 1.2 kN and a stiffness of 340 N/m has a steady-state harmonic excitation force applied at 95 rpm (revolutions per minute). What damper value will give a vibration isolation of 92%? 3. Four helical compression springs are used, one at each corner of a piece of equipment. The spring rate is 240 N/m for each spring and the vertical static deflection of the equipment is 10mm. Calculate the mass of the equipment and determine the amount of isolation the springs would afford if the equipment operating frequency is twice the natural frequency of the system. 4. a) For the circuit below find the transfer function and the steady state response for an input of
frequency response - 9.11
Vi=5sin(1000t)V. 1K 1uF 1mH Vi
+ -
+
+ Vo -
b) Verify the results in part a) by explicitly solving the differential equation.
frequency response - 9.12
9.6 PRACTICE PROBLEM SOLUTIONS 1. 1KΩ
Va +
1mH Vi
1KΩ
+ -
1KΩ
1KΩ
Vo
Va V a – Vo Va – Vi Va ----------------------------------------------------- = 0 I = + + + Va ∑ 1KΩ 1KΩ 0.001D 1KΩ 3 1 –1 1 Va ------------ + ------------------ + Vi ------------ = Vo ------------------ 1KΩ 0.001D 1KΩ 0.001D
∑ IVo
(1)
Vo – Va Vo - + ----------- = 0 = ----------------0.001D 1KΩ 1 1 1 V o ------------------ + ------------ = V a ------------------ 0.001D 1KΩ 0.001D 0.001D + 1KΩ V o ------------------------------------ = V a 1KΩ
(2)
substitute (2) into (1) 0.001D + 1KΩ 3 1 –1 1 V o ------------------------------------ ------------ + ------------------ + Vi ------------ = Vo ------------------ 1KΩ 1KΩ 0.001D 1KΩ 0.001D 1 ----------Vo 1KΩ ------ = ------------------------------------------------------------------------------------------------------------------Vi + 1KΩ ----------3 - ----------------1 - ----------------1 - 0.001D -----------------------------------+ – 1KΩ 0.001D 0.001D 1KΩ
frequency response - 9.13
for the given input of Vi(t) = 10sin(1,000,000 t). 1 ----------Vo 1KΩ ----------------- = ----------------------------------------------------------------------------------------------------------------------------------------------6 10 + 0j 1 + 1KΩ- ----------3 - ---------------------------1 0.001j10 - – ---------------------------- -----------------------------------------+ 6 6 1KΩ 1KΩ 0.001 ( j10 ) 0.001 ( j10 ) –3 Vo 10 ---------------- = ----------------------------------------------------------------------------------–3 –3 –3 10 + 0j ( j + 1 ) ( 3 × 10 – j10 ) + j ( 10 ) Vo 1 ---------------- = --------------------------------------10 + 0j ( j + 1)(3 – j) + j Vo 1 - 4------------– 3j- ---------------- = ------------ 10 + 0j 4 + 3j 4 – 3j 4 – 3j V o = 10 -------------- = 2 ∠– 0.644 25 6
V o ( t ) = 2.00 sin ( 10 t – 0.644 )V 2. F y
∑ Fy
M
= – K s y – K d yD – F = MyD
–1 --y- = ----------------------------------------2 F D M + DK d + K s Ks
Kd F floor = K s y + K d yD F floor ------------ = Ks + K d D y
F floor F floor y –( Ks + Kd D ) ------------- = ------------ --- = ----------------------------------------2 y F F D M + DK d + K s F floor – ( K s + K d ωj ) ------------- = ---------------------------------------------2 F – ω M + ωjK d + K s 2
2
Ks + ( K d ω ) F floor ------------ = -----------------------------------------------------------2 F 2 2 ( K s – ω M ) + ( ωK d )
2
frequency response - 9.14
(cont’d For 92% isolation, there is 100-92 = 8% transmission, at 95rpm. N K s = 340 ---m
1200N M = ----------------- = 122kg N 9.81 -----kg
rev 1min 2πrad rad ω = 95 --------- -------------- ---------------- = 9.95 -------- min 60sec rev s 2 N- 2 rad 340 -- -------+ K 9.95 d m s 0.08 = --------------------------------------------------------------------------------------------------------------------2 2 2 N- rad 340 ----------- 122kg + 9.95 rad --------- K d – 9.95 m s s 2 N- 2 rad 340 ----------- + K 9.95 d 2 2 2 m s N- rad 340 ----------- 122kg + 9.95 rad --------- K d = --------------------------------------------------------------9.95 – 2 m s s 0.08 2
2
2
2
N rad - 2 115600 N 2 99.0025 rad ( 1.377878 ×10 ) -----2- + 99.0025 ---------K d = ------------------ ------2 + K d ------------------- ---------2 2 0.0064 0.0064 m s m s 8
8
2 2
×10 - ----------------N s 2 1.197253 --------------------------------= Kd 2 15370.138 2 m rad
Ns K d = 88.3 -----m
3. a)
M = 0.979kg
b)
I = 67%
4. a)
V o ( t ) = 3536 sin ( 1000t + 0.785 )
b)
V o ( t ) = – 5000 + 2500e
9.7 ASSIGNMENT PROBLEMS 1. For the following transfer function,
– 1000t
π + 3536 sin 1000t + --- 4
frequency response - 9.15
a) Draw the Bode plot on the attached semi-log graph paper. b) Given an input of F=5sin(62.82t), find the output, x, using the Bode plot. c) Given an input of F=5sin(62.82t), find the output, x, using phasors. 2
D --x- = ----------------------------2 F ( D + 200π ) 2. For the following transfer function, a) Draw the Bode plot on the attached semi-log graph paper. b) Given an input of F=5sin(62.82t), find the output, x, using the Bode plot. c) Given an input of F=5sin(62.82t), find the output, x, using phasors. D ( D + 2π )--x- = ----------------------------2 F ( D + 200π )
3. For the following transfer function, a) Draw the Bode plot on the attached semi-log graph paper. b) Given an input of F=5sin(62.82t), find the output, x, using the Bode plot. c) Given an input of F=5sin(62.82t), find the output, x, using phasors. 2
D ( D + 2π )--x- = ----------------------------2 F ( D + 200π )
bode plots - 10.1
10. BODE PLOTS
Topics: • Bode plots Objectives: • To be able to describe the response of a system using Bode plots
10.1 INTRODUCTION When a phasor transform is applied to a transfer function the result can be expressed as a magnitude and angle that are functions of frequency. The magnitude is the gain, and the angle is the phase shift. In the previous chapter these values were calculated for a single frequency and then multiplied by the input values to get an output value. At different frequencies the transfer function value will change. The transfer function gain and phase angle can be plotted as a function of frequency to give an overall picture of system response.
bode plots - 10.2
Aside: Consider a ’graphic equalizer’ commonly found on home stereo equipment. The spectrum can be adjusted so that high or low tones are emphasized or muted. The position of the sliders adjusts the envelope that the audio signal is filtered through. The sliders trace out a Bode gain plot. In theoretical terms the equalizer can be described with a transfer function. As the slides are moved the transfer function is changed, and the bode plot shifts. In the example below the slides are positioned to pass more of the lower frequencies. The high frequencies would not be passed clearly, and might sound somewhat muffled. 40-120
120-360
360-1K
1K-3.2K
3.2K-9.7K
9.7K-20K
gain
f(Hz) Figure 10.1
Commonly seen Bode plot
The mass-spring-damper transfer function from the previous chapter is expanded in Figure 10.2. In this example the transfer function is multiplied by the complex conjugate to eliminate the complex number in the denominator. The magnitude of the resulting transfer function is the gain, and the phase shift is the angle. Note that to correct for the quadrant of the phase shift angles pi radians is subtracted for certain frequency values.
bode plots - 10.3
x(ω ) 1 -----------= ---------------------------------------------------------------------2 F( ω) j ( 3000ω ) + ( 2000 – 1000ω ) x(ω ) 1 -----------= ---------------------------------------------------------------------2 F( ω) j ( 3000ω ) + ( 2000 – 1000ω )
2
(-----------------------------------------------------------------------------– j ) ( 3000ω ) + ( 2000 – 1000ω )2 ( – j ) ( 3000ω ) + ( 2000 – 1000ω )
2
x(ω ) ( 2000 – 1000ω ) – j ( 3000ω )-----------= ------------------------------------------------------------------------2 2 2 F( ω) ( 2000 – 1000ω ) + ( 3000ω ) 2 2
2
( 2000 – 1000ω ) + ( 3000ω ) 1 x ( ω ) = ----------------------------------------------------------------------------= ----------------------------------------------------------------------------------------2 2 2 F( ω) 2 2 2 ( 2000 – 1000ω ) + ( 3000ω ) ( 2000 – 1000ω ) + ( 3000ω ) –3ω- – 3000ω = atan -----------θ = atan ----------------------------------------2 2 – 1000ω + 2000 2 –ω
for ( ω ≤ 2 )
– 3ω θ = atan ------------2- – π 2 –ω
for ( ω > 2 )
Figure 10.2
A phasor transform example
The results in Figure 10.2 are normally left in variable form so that they may be analyzed for a range of frequencies. An example of this type of analysis is done in Figure 10.3. A set of frequencies is used for calculations. These need to be converted from Hz to rad/s before use. For each one of these the gain and phase angle is calculated. The gain gives a ratio between the input sine wave and output sine wave of the system. The magnitude of the output wave can be calculated by multiplying the input wave magnitude by the gain. (Note: recall this example was used in the previous chapter) The phase angle can be added to the input wave to get the phase of the output wave. Gain is normally converted to ’dB’ so that it may cover a larger range of values while still remaining similar numerically. Also note that the frequencies are changed in multiples of tens, or magnitudes.
bode plots - 10.4
f(Hz)
(rad/sec)
0 0.001 0.01 0.1 1 10 100 1000
0 0.006283 0.06283 0.6283 6.283 62.83 628.3 6283
Gain
Gain (dB)
Note: the gain values will cover many magnitudes of values. To help keep the graphs rational we will "compress" the values by converting them to dB (decibels) using the following formula. gain db = 20 log ( gain )
θ (rad.)
θ (deg.)
Note: negative phase angles mean that the mass motion lags the force.
Note: The frequencies chosen should be chosen to cover the points with the greatest amount of change.
Figure 10.3
A phasor transform example (continued)
In this example gain is defined as x/F. Therefore F is the input to the system, and x is the resulting output. The gain means that for each unit of F input to the system, there will be gain*F=x output. If the input and output are sinusoidal, there is a difference in phase between the input and output wave of θ (the phase angle). This is shown in Figure 10.4, where an input waveform is supplied with three sinusoidal components. For each of the frequencies a gain and phase shift are calculated. These are then used to calculate the resulting output wave, relative to the input wave. The resulting output represents the steady-state response to the sinusoidal output.
bode plots - 10.5
Assuming there is excitation from two sinusoidal sources in addition to the static load, as defined by the equation, F ( t ) = 1000 + 20 sin ( 20t ) + 10 sin ( 0.5t ) ( N )
The result for each component can be evaluated separately · 2π x ( t ) = 1000 ( _________ ) sin 0t + ______ --------- 360 2π + 20 ( _________ ) sin 20t + _______ --------- 360 2π + 10 ( __________ ) sin 0.5t – ________ --------- 360 gain from calculations or Bode plot
phase angle from calculations or Bode plot
x ( t ) = 0.5 + ______ sin ( 20t + _____ ) + _______ sin ( 0.5t + ______ )
Figure 10.4
A phasor transform example (continued)
10.2 BODE PLOTS In the previous section we calculated a table of gains and phase angles over a range of frequencies. Graphs of these values are called Bode plots. These plots are normally done on semi-log graph paper, such as that seen in Figure 10.5. Along the longer axis of this paper the scale is logarithmic (base 10). This means that if the paper started at 0.1 on one side, the next major division would be 1, then 10, then 100, and finally 1000 on the other side of the paper. The basic nature of logarithmic scales prevents the frequency from being zero. Along the linear axis (the short one) the gains and phase angles are plotted, normally with two graphs side-by-side on a single sheet of paper.
bode plots - 10.6
1
2
3
4
5 6 789 1
2
3
4
5 6 789 1
2
3
4
5 6 789 1
2
3
4
5 6 789
bode plots - 10.7
Figure 10.5
4 cycle semi-log graph paper
Plot the points from Figure 10.3 in the semi-log graph paper in Figure 10.5. The general layout is pictured below. gain (dB) -40dB/dec
phase (deg)
0.1
Figure 10.6
1
10 f(Hz)
100
1000
Drill problem: Plot the points from Figure 10.3 on graph paper
bode plots - 10.8
steps_per_dec = 6; decades = 6; start_freq = 0.1; // the transfer function function foo=G(w) D = %i * w; foo = (D + 5) / (D^2 + 100*D + 10000); endfunction // this section writes the values to a datafile that may be graphed in a spreadsheet fd = mopen("data.txt", "w"); for step = 0:(steps_per_dec * decades), f = start_freq * 10 ^ (step / steps_per_dec); // calculate the next frequency w = f * 2 * %pi); // convert the frequency to radians [gain, phase] = polar(G(w));// find the gain and convert it to mag and angle gaindb = 20 * log10(gain);// convert magnitude to dB phasedeg = 180 * phase / %pi;// convert to degrees mfprint(fd, "%f, %f, %f \n", f, gaindb, phasedeg); end mclose(fd); // to graph it directly the following is used D = poly(0, ’D’); h = syslin(’c’, (D + 5) / (D^2 + 100*D + 10000) ) ; bode(h, 0.1, 1000, ’Sample Transfer Function’);
Figure 10.7
Aside: Bode Plot Example with Scilab
Use computer software, such as Mathcad or a spreadsheet, to calculate the points in Figure 10.2, and then draw Bode plots. Most software will offer options for making one axis use a log10 scale.
Figure 10.8
Drill problem: Plot the points from Figure 10.2 with a computer
bode plots - 10.9
Draw the Bode plot for the transfer function by hand or with computer.
Figure 10.9
D+3 ----------------------------------------------------2 D + 10000D + 10000
Drill problem: Draw the Bode plot for gain and phase
bode plots - 10.10
An approximate technique for constructing a gain Bode plot is shown in Figure 10.10. This method involves looking at the transfer function and reducing it to roots in the numerator and denominator. Once in that form, a straight line approximation for each term can be drawn on the graph. An initial gain is also calculated to shift the results up or down. When done, the straight line segments are added to produce a more complex straight line curve. A smooth curve is then drawn over top of this curve.
Bode plots for transfer functions can be approximated with the following steps. 1. Plot the straight line pieces. a) The gain at 0rad/sec is calculated and used to find an initial offset. For example this transfer function starts at 10(D+1)/ (D+1000)=10(0+1)/(0+1000)=0.01=-40dB. b) Put the transfer function in root form to identify corner frequencies. For example (D+1)/(D+1000) will have corner frequencies at 1 and 1000 rad/sec. c) Curves that turn up or down are drawn for each corner frequency. At each corner frequency a numerator term causes the graph to turn up, each term in the dominator causes the graph to turn down. The slope up or down is generally +/- 20dB/decade for each term. Also note that squared (second-order) terms would have a slope of +/-40dB/decade. 2. The effect of each term is added up to give the resulting straight line approximation. 3. When the smooth curve is drawn, there should commonly be a 3dB difference at the corner frequencies. In second-order systems the damping coefficient make may the corner flatter or peaked.
Figure 10.10 The method for Bode graph straight line gain approximation
bode plots - 10.11
Note: Some of the straight line approximation issues are discussed below. Why is there 3dB between a first order corner and the smooth plot, and the phase angle is 45 degrees of the way to +/- 90 degrees. 1 G ( jω ) = -----------------ω c + jω the initial gain is 1 G ( 0 ) = ----------------- = ω c + j0 at the corner frequency 1 G ( jω ) = --------------------ω c + jω c
1----ωc ωc = ω 1 1 π = ---------------------- = ------------- ∠– --π ωc 2 4 ω c 2 ∠--4
Therefore the difference is G ( jω ) 1 π 1 π π diff = --------------- = ------- ∠– --- = 20 log ------- ∠– --- = – 3.01dB ∠– -- 2 G(0) 4 4 2 4 Why does a first order pole go down at 20dB/dec? 1 G ( jω ) = -----------------ω c + jω before the corner frequency,
ω c > jω
1- = 20 log ( ω –1 ) = – 20 log ( ω ) G ( jω ) = ----c c ωc after the corner frequency, ω c < jω 1- = 20 log ( ω – 1 ) = – 20 log ( ω ) G ( jω ) = ----jω each time the frequency increases by a multiple of 10, the log value becomes 1 larger, thus resulting in a gain change of -20 dB.
Figure 10.11 Why the straight line method works
bode plots - 10.12
Why does a pole make the phase angle move by -90deg after the corner frequency? 1 1 ∠0 1 ω G ( jω ) = ------------------ = --------------------------------------------------- = ----------------------- ∠– atan ------ ω c + jω ω 2 2 2 ω 2 c ωc + ω ω c + ω ∠ atan ------ ω c before the corner frequency,
ω c > jω
0 ω angle ( G ( jω ) ) = – atan ------ = – atan ------ = 0 ωc ωc after the corner frequency, ω c < jω ω π angle ( G ( jω ) ) = – atan ------ = – atan ( ∞ ) = – -- ω c 2
Figure 10.12 Why the straight line method works (cont’d)
bode plots - 10.13
Show that the second order transfer function below would result in a slope of +/- 40 dB/decade. 1 G ( jω ) = -------------------------2( ω c + jω )
Figure 10.13 Drill problem: Slope of second order transfer functions. An example of the straight line plotting technique is shown in Figure 10.14. In this example the transfer function is first put into a root form. In total there are three roots, 1, 10 and 100 rad/sec. The single root in the numerator will cause the curve to start upward with a slope of 20dB/dec after 1rad/sec. The two roots will cause two curves downwards at -20dB/dec starting at 10 and 100 rad/sec. The initial gain of the transfer function is also calculated, and converted to decibels. The frequency axis is rad/sec by default, but if Hz are used then it is necessary to convert the values.
bode plots - 10.14
4
10 ( D + 1 ) 100D + 100 - = --------------------------------------------G ( D ) = -------------------------------------------------2 ( D + 10 ) ( D + 100 ) 0.01D + 0.11D + 10
(the equation is put in root form)
Step 1: Draw lines for each of the terms in the transfer function, Gain (dB) D+1
4
10 ( 1 ) GAIN 0 = ------------------------- = 10 = 20dB ( 10 ) ( 100 )
20dB/dec. 0dB
1
10
100 freq.(rad/sec) (could be Hz also)
-20dB/dec.
-20dB/dec. 1 --------------D + 10
1 -----------------D + 100
Figure 10.14 An approximate gain plot example The example is continued in Figure 10.15 where the straight line segments are added to produce a combined straight line curve.
bode plots - 10.15
Step 2: Sum the individual lines, and get the straight line approximation, Gain (dB) 40dB
20dB
0dB
1
10
100 freq.(rad/sec)
Figure 10.15 An approximate gain plot example (continued) Finally a smooth curve is fitted to the straight line approximation. When drawing the curve imagine that there are rubber bands at the corners that pull slightly and smooth out. For a simple first-order term there is a 3dB gap between the sharp corner and the function. Higher order functions will be discussed later.
Step 3: Draw the smooth curve (leaving 3dB at the corners), Gain (dB)
3dB
40dB
20dB
0dB
1
10
100
Figure 10.16 An approximate gain plot example (continued)
freq.(rad/sec)
bode plots - 10.16
The process for constructing phase plots is similar to that of gain plots, as seen in Figure 10.18. The transfer function is put into root form, and then straight line phase shifts are drawn for each of the terms. Each term in the numerator will cause a positive shift of 90 degrees, while terms in the denominator cause negative shifts of 90 degrees. The phase shift occurs over two decades, meaning that for a center frequency of 100, the shift would start at 10 and end at 1000. If there are any lone ’D’ terms on the top or bottom, they will each shift the initial value by 90 degrees, otherwise the phase should start at 0degrees.
Gain plots for transfer functions can be approximated with the following steps. 1. Plot the straight line segments. a) Put the transfer function in root form to identify center frequencies. For example (D+1)/(D+1000) will have center frequencies at 1 and 1000 rad/sec. This should have already been done for the gain plot. b) The phase at 0rad/sec is determined by looking for any individual D terms. Effectively they have a root of 0rad/sec. Each of these in the numerator will shift the starting phase angle up by 90deg. Each in the denominator will shift the start down by 90 deg. For example the transfer function 10(D+1)/(D+1000) would start at 0 deg while 10D(D+1)/(D+1000) would start at +90deg. c) Curves that turn up or down are drawn around each center frequency. Again terms in the numerator cause the curve to go up 90 deg, terms in the denominator cause the curves to go down 90 deg. Curves begin to shift one decade before the center frequency, and finish one decade after. 2. The effect of each term is added up to give the resulting straight line approximation. 3. The smooth curve is drawn.
Figure 10.17 The method for Bode graph straight line gain approximation The previous example started in Figure 10.14 is continued in Figure 10.18 to develop a phase plot using the approximate technique. There are three roots for the transfer function. None of these are zero, so the phase plot starts at zero degrees. The root in the numerator causes a shift of positive 90 deg, starting one decade before 1rad/sec and ending one decade later. The two roots in the denominator cause a shift downward.
bode plots - 10.17
4
10 ( D + 1 ) G ( D ) = ---------------------------------------------( D + 10 ) ( D + 100 ) Step 1: Draw lines for each of the terms in the transfer function Phase angle (deg.) D+1 +90 +45 0.1
0
1
10
100
1000 freq.(rad/sec)
-45
1 --------------D + 10
1 -----------------D + 100
-90
Figure 10.18 An approximate phase plot example The straight line segments for the phase plot are added in Figure 10.19 to produce a straight line approximation of the final plot. A smooth line approximation is drawn using the straight line as a guide. Again, the concept of an rubber band will smooth the curve.
bode plots - 10.18
Phase angle (deg.) +90 +45 0.1
0
1
10
100
1000 freq.(rad/sec)
-45 -90 Phase angle (deg.) +90 +45 0.1
0
1
10
100
1000 freq.(rad/sec)
-45 -90
Figure 10.19 An approximate phase plot example (continued) The previous example used a transfer function with real roots. In a second-order system with double real roots (overdamped) the curve can be drawn with two overlapping straight line approximations. If the roots for the transfer function are complex (underdamped the corner frequencies will become peaked. This can be handled by determining the damping coefficient and natural frequency as shown in Figure 10.20. The peak will occur at the damped frequency. The peaking effect will become more pronounced as the damping coefficient goes from 0.707 to 0 where the peak will be infinite.
bode plots - 10.19
Gain Mn
dB = A
Resonant Peak =0.1 =0.5
A ------------------------------------------------------2 2 D + ( 2ξω n )D + ( ω n ) ωd =
2
1 – ξ ωn
ξ = 0.707 -40dB/decade ωd
freq
Note: If ζ is less than 1 the roots become complex, and the Bode plots get a peak. This can be seen mathematically because the roots of the transfer function become complex.
Figure 10.20 Resonant peaks The approximate techniques do decrease the accuracy of the final solution, but they can be calculated quickly. In addition these curves provide an understanding of the system that makes design easier. For example, a designer will often describe a system with a Bode plot, and then convert this to a desired transfer function.
bode plots - 10.20
Draw the straight line approximation for the transfer function.
D+3 ----------------------------------------------------2 D + 10000D + 10000
Figure 10.21 Drill problem: Draw the straight line approximation
bode plots - 10.21
10.3 SIGNAL SPECTRUMS If a vibration signal is measured and displayed it might look like Figure 10.22. The overall sinusoidal shape is visible, along with a significant amount of ’noise’. When this is considered in greater detail it can be described with the given function. To determine the function other tools are needed to determine the frequencies, and magnitudes of the frequency components.
x(t) displacement
2π 2π 2π x ( t ) = A sin ---------- t + 0.3A sin ------------- t + 0.01A sin ---------------- t 0.01 0.005 0.0005
A
5
t (ms)
frequency 1 freq. 3 freq. 2
Figure 10.22 A vibration signal as a function of time A signal spectrum displays signal magnitude as a function of frequency, instead of time. The time based signal in Figure 10.22 is shown in the spectrum in Figure 10.23. The three frequency components are clearly identifiable spikes. The height of the peaks indicates the relative signal magnitude.
bode plots - 10.22
Amplitude A
log(freq.) (Hz or rads.) 1--------0.01
1 -----------0.005
1 --------------0.0005
=100Hz
=200Hz
=2000Hz
Figure 10.23 The spectrum for the signal in Figure 10.22
10.4 SUMMARY • Bode plots show gain and phase angle as a function of frequency. • Bode plots can be constructed by calculating point or with straight line approximations. • A signal spectrum shows the relative strengths of components at different frequencies.
10.5 PRACTICE PROBLEMS 1. Draw a Bode Plot for both of the transfer functions below using the phasor transform. ( D + 1 ) ( D + 1000 -) --------------------------------------------2 ( D + 100 )
AND
5 -----2 D
2. Given the transfer function below, y----------( D )( D + 10 ) ( D + 5 -) = --------------------------------------2 x(D ) (D + 5) a) draw the straight line approximation of the Bode (gain and phase shift) plots. b) determine the steady-state output if the input is x(t) = 20 sin(9t+0.3) using the
bode plots - 10.23
Bode plot. 3. Use the straightline approximation techniques to draw the Bode plot for the transfer function below. F D + 1000 G = --- = ----------------------------------2 x D + 5D + 100 4. Given the transfer function below, V 1000 -----o- = --------------------Vi D + 1000 a) Find the steady state response of the circuit using phasors (i.e., phasor transforms) if the input is Vi=5sin(100,000t). b) Draw an approximate Bode plot for the circuit. 5. For the transfer function, D ( D + 2π ) ---------------------------------------------------------2 2 D + 300πD + 62500π a) Use the straight line method and the attached log paper to draw an approximate Bode plot. b) Verify the Bode plot by calculating values at a few points. c) Use the Bode plot to find the response to an input of 5sin(624t) + 1sin(6.2t). 6. The applied force ‘F’ is the input to the system, and the output is the displacement ‘x’. Neglect the effects of gravity. a) find the transfer function. K1 = 500 N/m K2 = 1000 N/m
x
M = 10kg
F
b) What is the steady-state response for an applied force F(t) = 10cos(t + 1) N ? c) Give the transfer function if ‘x’ is the input. d) Draw the bode plots for the transfer function found in a). e) Find x(t), given F(t) = 10N for t >= 0 seconds.
bode plots - 10.24
f) Find x(t), given F(t) = 10N for t >= 0 seconds considering the effects of gravity. 7. The following differential equation is supplied, with initial conditions. ·· · · y + y + 7y = F y( 0) = 1 y(0) = 0 F ( t ) = 10
t>0
a) Write the equation in state variable form. b) Solve the differential equation numerically. c) Solve the differential equation using calculus techniques. d) Find the frequency response (gain and phase) for the transfer function using the phasor transform. Sketch the bode plots. 8. You are given the following differential equation for a spring damper pair. d F ( t ) = 10 sin ( 100t ) 5x + ----- x = F dt a) Write the transfer function for the differential equation if the input is F. b) Apply the phasor transform to the transfer function to find magnitude and phase as functions of frequency. c) Draw a Bode plot for the system using either approximate or exact techniques. d) Use the Bode plot to find the response to; F ( t ) = 10 sin ( 100t ) e) Put the differential equation in state variable form and use a calculator to find values in time for the given input. F = 10 sin ( 100t )
t
x
0.0 0.002 0.004 0.006 0.008 0.010 f) Give the expected ‘x’ response of this first-order system to a step function input for force F = 1N for t > 0 if the system starts at rest. Hint: Use the canonical form.
bode plots - 10.25
10.6 PRACTICE PROBLEM SOLUTIONS 1. 20dB 0dB 0dB
-20dB 1----2π
100 --------2π
1000 -----------2π
-40dB/dec
------52π
90deg
0deg
-45deg
-180deg
bode plots - 10.26
2. y----------( D )( D + 10 ) ( D + 5 -) ( D + 10 ) = --------------------------------------= --------------------2 x(D ) (D + 5) (D + 5) 6dB 0dB 0.8
1.6
0.8
1.6
90
-90 x ( t ) = 20 cos ( 9t + 0.3 ) Aside: the numbers should be obtained from the graphs, but I have calculated them y-( D + 10 ) 9j + 10 5 – 9j 50 + 81 – 45j = --------------------- = ----------------- -------------- = -------------------------------- = 1.236 – 0.425j x (D + 5) 9j + 5 5 – 9j 25 + 81 y-= x
– 0.425 2 2 1.236 + 0.425 ∠ atan ---------------- = 1.307 ∠– 0.3312rad 1.236
y-= 2.33dB ∠– 9.49° x y ( t ) = 20 ( 1.307 ) sin ( 9t + 0.3 + ( – 0.3312 ) ) y ( t ) = 26.1 sin ( 9t – 0.031 ) Aside: This can also be done entirely with phasors in cartesian notation y-( D + 10 ) 9j + 10 5 – 9j 50 + 81 – 45j = --------------------- = ----------------- -------------- = -------------------------------- = 1.236 – 0.425j 9j + 5 5 – 9j x (D + 5) 25 + 81 x = 20 ( cos ( 0.3rad ) + j sin ( 0.3rad ) ) = 19.1 + 5.91j y ---------------------------- = ( 1.236 – 0.425j ) ( 19.1 + 5.91j ) = 26.1 – 0.813j = 26.1 ∠– 0.031 19.1 + 5.91j y ( t ) = 26.11 sin ( 9t – 0.031 )
bode plots - 10.27
(cont’d Aside: This can also be done entirely with phasors in polar notation y-( D + 10 ) 9j + 10 13.45 ∠0.733 13.45 = --------------------- = ----------------- = ------------------------------- = ------------- ∠0.733 – 1.064 = 1.31 ∠– 0.331 x (D + 5) 9j + 5 10.30 ∠1.064 10.30 x = 20 ∠0.3 y ----------------= 1.31 ∠– 0.331 20 ∠0.3 y = 1.31 ( 20 ) ∠( – 0.331 + 0.3 ) = 26.2 ∠– 0.031 y ( t ) = 26.2 sin ( 9t – 0.031 )
bode plots - 10.28
3. for the numerator, (zero) for the denominator, (poles)
rad 1000 --------- = 159Hz s 2
2
2
D + 2ω n ζD + ω n = D + 5D + 100 2
ω n = 100 rad ∴ω n = 10 --------f n = 1.59Hz s 2ω n ζ = 5 5 ∴ζ = -------------- = 0.25 (underdamped) 2 ( 10 ) 2
f d = f n 1 – ζ = 1.54Hz for the initial gain
0 + 1000 G ( 0 ) = ------------------------------------= 10 = 20dB 2 0 + 5 ( 0 ) + 100
Gain (dB) 20 f(Hz)
159
0 0.1
1
1.54
10
100
1000
-40dB/dec -60
-20dB/dec
-80 phase (deg) 0.154
0 0.1 -90
-180
15.4,15.9 1
1.54
10
1590 f(Hz) 100 159
1000
bode plots - 10.29
4. 5
a)
V o ( t ) = 0.050 sin ( 10 t – 1.561 )
b)
16Hz
159Hz
1.6KHz -20dB/dec
0 deg -90 deg
5. a) b) c)
–3
8.89 sin ( 624t + 1.571 ) + 0.141 ×10 sin ( 6.2t + 2.356 )
bode plots - 10.30
6. 0.0667 - m --x- = ------------------------2 F D + 33.3 N b) ω = 1 ∴D = 1j a)
m 0.0667 –3 --x- = ---------------------------= 2.07 × 10 ∠0rad ---2 N F ( 1j ) + 33.3 F ( t ) = 10 cos ( t + 1 ) N ∴F ( ω ) = ( 10 ∠1rad )N x ------------------------------- = 2.07 × 10 –3 ∠0rad m ---( 10 ∠1rad )N N m –3 ∴x ( ω ) = 2.07 × 10 ∠0rad ---- ( 10 ∠1rad )N N –3 ∴x ( ω ) = ( 10 )2.07 × 10 ∠( 0rad + 1rad )m ∴x ( ω ) = 0.0207 ∠1radm ∴x ( t ) = 0.0207 cos ( t + 1 ) m c)
2
F + 33.3- --N--- = D ---------------------x 0.0667 m
bode plots - 10.31
d)
for the denominator, (poles)
2
2
2
D + 2ω n ζD + ω n = D + 33.3 rad ω n = 5.77 --------s ζ = 0
f n = 0.918Hz
(undamped) 2
f d = f n 1 – ζ = 0.918Hz 0.0667 G ( 0 ) = ---------------- = 2 = –54 dB 33.3
for the initial gain Gain (dB)
∞
-54 f(Hz)
0 0.1 -94
1
10
100 -40dB/dec
-134
-20dB/dec
phase (deg)
f(Hz)
0 0.1
1
-90
-180 e)
x ( t ) = ( – 0.020 cos ( 5.77t ) + 0.020 )m
f)
x ( t ) = ( – 0.2162 cos ( 5.77t ) + 0.2162 )m
10
100
bode plots - 10.32
7. a)
· y = v · v = – v – 7y + F
b) yi + 1
=
vi + 1
yi
+h
vi
given
y0 v0
0 1 yi + 0 – 7 –1 v i F
= 1 0
F = 10
using h=0.001s y1 v1
= 1 + 0.001 0 1 1 + 0 0 –7 –1 0 10
etc.. until
y 100 v 100
c)
y ( t ) = ( – 0.437e
– 0.5t
1.428m = m 0.000 ---s
cos ( 2.598t – 0.19 ) + 1.429 )m
bode plots - 10.33
d)
1 1 1 --y- = -------------------------- = ------------------------------------= ---------------------------------2 2 2 F D +D+7 ( jω ) + jω + 7 (7 – ω ) + j(ω) 1 --y- = ---------------------------------------F 2 2 2 (7 – ω ) + ω ∠0 - = ∠( 0 – angle ( ω, 7 – ω 2 ) ) = ∠– angle ( ω, 7 – ω 2 ) ∠θ = ---------------------------------------------2 ∠angle ( ω, 7 – ω )
-20dB -40dB 0.01Hz
1Hz
100Hz
0.01Hz
1Hz
100Hz
0deg
-180deg
bode plots - 10.34
8. a)
1 --x- = -----------F 5+D
b)
ω 1 1 1 ∠0 1 --x- = -----------= --------------- = ------------------------------------------------ = ---------------------- ∠– atan ---- 5 F 5+D 5 + jω 2 2 ω 2 2 5 +ω 5 + ω ∠ atan ---- 5
c)
1 initial gain = 20 log ------------ = – 14dB 5+0 5 corner freq. = ------ = 0.8Hz 2π -20dB/dec
gain(dB) -14dB
phase(deg) 0° – 45° – 90° 0.08Hz 0.8Hz d)
8Hz
100 f = --------- = 16Hz 2π From the Bode plot,
gain = – 40dB = 0.01 π phase = – 90° = – --- rad 2 π x ( t ) = 10 ( 0.01 ) sin 100t – --- 2
Aside: verified by calculations, x 1 100 ------------= --------------------------- ∠– atan --------- = 0.00999 ∠– 1.521 10 ∠0 5 2 2 5 + 100 x = ( 10 ∠0 ) ( 0.00999 ∠– 1.521 ) = 0.0999 ∠–1.521 x ( t ) = 0.0999 sin ( 100t – 1.521 )
bode plots - 10.35
e)
0.186
0.2
0
Xi
− 0.099 0.2
0
0.5
1
0
i ⋅h
0.999
– 5t
f)
1 e x = --- – --------5 5
t
x
0.0
0
0.002
9.98e-4
0.004
5.92e-3
0.006
0.015
0.008
0.026
0.010
0.041
10.7 ASSIGNMENT PROBLEMS 1. For the transfer functions below, draw the bode plots using computer software. ( D + 2π )D --------------------------------------------------------( D + 200π ) ( D + 0.02π )
( D + 2π ) ------------------------------------------------------2 2 D + 50πD + 10000π
2. Draw Bode plots for the following functions using straight line approximations. 1 -----------D+1
1 --------------2 D +1
1 --------------------2 (D + 1)
1 ----------------------------2 D + 2D + 2
3. Given the transfer function below, y----------( D )( D + 10 ) ( D + 5 ) = --------------------------------------2 x(D ) (D + 5) a) draw the straight line approximation of the bode and phase shift plots. b) determine the steady state output if the input is x(s) = 20 cos(9t+.3) using the striaght line plots. c) use an exact method to verify part b). 4. a) Convert the following differential equation to a transfer function. ·· 5x + 2x = 3F
bode plots - 10.36
b) Apply a phasor (Fourier) transform to the differential equation and develop equations for the system gain and phase shift as a function of input frequency. c) Draw a Bode plot using the equations found in part b) on the attached log paper. d) Draw a straight line approximation of the system transfer function on the attached log paper.
10.8 LOG SCALE GRAPH PAPER Please notice that there are a few sheets of 2 and 4 cycle log paper attached, make additional copies if required, and if more cycles are required, sheets can be cut and pasted together. Also note that better semi-log paper can be purchased at technical bookstores, as well at most large office supply stores.
bode plots - 10.37
1
2
3
4
5
6
7 8 9 1
2
3
4
5
6
7 8 9
bode plots - 10.38
1
2
3
4
5 6 789 1
2
3
4
5 6 789 1
2
3
4
5 6 789 1
2
3
4
5 6 789
root locus - 11.1
11. ROOT LOCUS ANALYSIS
Topics: • Root-locus plots Objectives: • To be able to predict and control system stability.
11.1 INTRODUCTION The system can also be checked for general stability when controller parameters are varied using root-locus plots.
11.2 ROOT-LOCUS ANALYSIS In a engineered system we may typically have one or more design parameters, adjustments, or user settings. It is important to determine if any of these will make the system unstable. This is generally undesirable and possibly unsafe. For example, think of a washing machine that vibrates so much that it ‘walks’ across a floor, or a high speed aircraft that fails due to resonant vibrations. Root-locus plots are used to plot the system roots over the range of a variable to determine if the system will become unstable, or oscillate. Recall the general solution to a homogeneous differential equation. Complex roots will result in a sinusoidal oscillation. If the roots are real the result will be e-to-the-t terms. If the real roots are negative then the terms will tend to decay to zero and be stable, while positive roots will result in terms that grow exponentially and become unstable. Consider the roots of a second-order homogeneous differential equation, as shown in Figure 11.1 to Figure 11.7. These roots are shown on the complex planes on the left, and a time response is shown to the right. Notice that in these figures (negative real) roots on the left hand side of the complex plane cause the response to decrease while roots on the right hand side cause it to increase. The rule is that any roots on the right hand side of the plane make a system unstable. Also note that the complex roots cause some amount of oscillation.
root locus - 11.2
R = – A, – B jw
x(t) x0
-A
-B sigma t
Figure 11.1
Negative real roots make a system stable
R = ± Aj jw A
x(t)
sigma -A
Figure 11.2
t
Complex roots make a system oscillate
R = – A ± Bj jw
x(t) B
-A sigma -B
Figure 11.3
Negative real and complex roots cause decaying oscillation
t
root locus - 11.3
R = – A ± Bj jw
x(t) B
-A sigma -B
Figure 11.4
t
More negative real and complex roots cause a faster decaying oscillation
R = – A, – A jw
x(t)
-A,-A sigma t
Figure 11.5
Overlapped roots are possible
R = A, A jw
x(t)
A,A sigma t
Figure 11.6
Positive real roots cause exponential growth and are unstable
root locus - 11.4
R = A ± Bj jw
x(t)
B A
-B
Figure 11.7
sigma
t
Complex roots with positive real parts have growing oscillations and are unstable
Next, recall that the denominator of a transfer function is the homogeneous equation. By analyzing the function in the denominator of a transfer function the general system response can be found. An example of root-locus analysis for a mass-spring-damper system is given in Figure 11.8. In this example the transfer function is found and the roots of the equation are written with the quadratic equation. At this point there are three unspecified values that can be manipulated to change the roots. The mass and damper values are fixed, and the spring value will be varied. The range of values for the spring coefficient should be determined by practical and design limitations. For example, the spring coefficient should not be zero or negative.
root locus - 11.5
x ( D )1 -----------= ----------------------------------------2 F(D) MD + K d D + K s Ks
Note: We want the form below A -------------------------------------(D + B)(D + C)
Kd
M
1---x ( D ) M ------------- = ------------------------------------F(D) Ks 2 Kd D + ------ D + ----M M
Aside: 2
ax + bx + c = ( x + A ) ( x + B )
2
–Kd K K --------- ± ------d- – 4 -----s 2 M M M -----------------------------------------B, C = 2
2
– b ± b – 4ac A, B = -------------------------------------2a
M
Kd
Ks
B
C
0 100 100 100
0 100 100 100
0 100 1000 10000
0
0
Figure 11.8
A mass-spring-damper system equation
The roots of the equation can then be plotted to provide a root locus diagram. These will show how the values of the roots change as the design parameter is varied. If any of these roots pass into the right hand plane we will know that the system is unstable. In addition complex roots will indicate oscillation.
root locus - 11.6
Imaginary
Real
Figure 11.9
Drill problem: Plot the calculated roots on the axes above
A feedback controller with a variable control function gain is shown in Figure 11.10. The variable gain ’K’ necessitates the evaluation of controller stability over the range of operating values. This analysis begins by developing a transfer function for the overall system. The root of the denominator is then calculated and plotted for a range of ’K’ values. In this case all of the roots are on the left side of the plane, so the system is stable and doesn’t oscillate. Keep in mind that gain values near zero put the control system close to the right hand plane. In real terms this will mean that the controller becomes unresponsive, and the system can go where it pleases. It would be advisable to keep the system gain greater than zero to avoid this region.
root locus - 11.7
Note: This controller has adjustable gain. After this design is built we must anticipate that all values of K will be used. It is our responsibility to make sure that none of the possible K values will lead to instability. +
1--D
K 1 K G ( D ) = ---D
H(D ) = 1
First, we must develop a transfer function for the entire control system. K- -- D G( D) K G S ( D ) = ------------------------------------- = --------------------------- = -------------1 + G ( D )H ( D ) D+K K 1 + ---- ( 1 ) D Next, we use the characteristic equation of the denominator to find the roots as the value of K varies. These can then be plotted on a complex plane. Note: the value of gain ’K’ is normally found from 0 to +infinity. D+K = 0
K
root
0 1 2 3 etc...
-0 -1 -2 -3
jω K→∞
K = 0
σ
Note: This system will always be stable because all of the roots for all values of K are negative real, and it will always have a damped response. Also, larger values of K, make the system more stable.
Figure 11.10 Root-locus analysis in controller design
root locus - 11.8
Aside: Scilab can be used to draw root locus plots for systems of the form below, where there is a simple gain, K, multiplying the openloop gain, G(s). +
1--D
K 1 1 G ( D ) = ---D
H(D ) = 1
First, we must multiply G and H 1 1 G ( s )H ( s ) = ---- ( 1 ) = --- D D The numerator and denominator of this equation are then defined and plotted using the ’evans’ function. D = poly(0, ’D’); // define the differential operator n = real(1.0); // define the numerator of GH d = real(D); // define the denominator of GH evans(n, d, 100); // plot for gains from K=0 to 100
Figure 11.11 Root-locus plotting in Scilab
root locus - 11.9
Given the system elements (assume a negative feedback controller), K H(D) = 1 G ( D ) = ----------------------------2 D + 3D + 2 First, find the characteristic equation,. and an equation for the roots, K - ( 1 ) = 0 1 + ----------------------------2 D + 3D + 2 2
D + 3D + 2 + K = 0
Note: For a negative feedback controller the denominator is, 1 + G ( D )H ( D )
– 3 ± 9 – 4(2 + K) 1 – 4K roots = ------------------------------------------------ = – 1.5 ± -------------------2 2 Next, find values for the roots and plot the values, K
roots
jω
0 1 2 3
σ
Figure 11.12 Drill problem: Complete the root-locus analysis
root locus - 11.10
K(D + 5 ) G ( D )H ( D ) = --------------------------------------2 D ( D + 4D + 8 )
Figure 11.13 Drill problem: Draw a root locus plot
11.3 SUMMARY • Root-locus plots show the roots of a transfer function denominator to determine stability
root locus - 11.11
11.4 PRACTICE PROBLEMS 1. Draw the root locus diagram for the system below. specify all points and values. +
1 --------------------2 (D + 1)
+
3.0 -
-
KdD
2. The block diagram below is for a motor position control system. The system has a proportional controller with a variable gain K. θd
2
Vd +
Ve -
K
Vs
100 -----------D+2
ω
1--D
θa
Va 2
a) Simplify the block diagram to a single transfer function. b) Draw the Root-Locus diagram for the system (as K varies). Use either the approximate or exact techniques. c) Select a K value that will result in an overall damping coefficient of 1. State if the Root-Locus diagram shows that the system is stable for the chosen K. 3. Given the system transfer function below. θo 20K ----- = --------------------------------2 θd D + D + 20K a) Draw the root locus diagram and state what values of K are acceptable. b) Select a gain value for K that has either a damping factor of 0.707 or a natural frequency of 3 rad/sec. c) Given a gain of K=10 find the steady-state response to an input step of 1 rad. d) Given a gain of K=0.01 find the response of the system to an input step of 0.1rad.
root locus - 11.12
4. A feedback control system is shown below. The system incorporates a PID controller. The closed loop transfer function is given. Y X + 3 Ki -----------K p + ----- + K d D D+9 D 4
2
D ( 3K d ) + D ( 3K p ) + ( 3K i ) --Y- = ---------------------------------------------------------------------------------------------2 X D ( 12K d + 1 ) + D ( 9 + 12K p ) + ( 12K i )
a) Verify the close loop controller function given. b) Draw a root locus plot for the controller if Kp=1 and Ki=1. Identify any values of Kd that would leave the system unstable. c) Draw a Bode plot for the feedback system if Kd=Kp=Ki=1. d) Select controller values that will result in a natural frequency of 2 rad/sec and damping coefficient of 0.5. Verify that the controller will be stable. e) For the parameters found in the last step can the initial values be found? f) If the values of Kd=1 and Ki=Kp=0, find the response to a unit ramp input as a function of time. 5. Draw a root locus plot for the control system below and determine acceptable values of K, including critical points. X
1 K 5 + ---- + D D
+ -
Y
0.1 -------------------------------------2 D + 10D + 100
+ -
10 -----D 0.01
6. The feedback loop below is for controlling a DC motor with a PID controller.
Vd
e
+
2
D + PD + 1 -----------------------------D
Vs
Va
2
100 -----------------D + 100
ω
1--D
θ
root locus - 11.13
a) Find the transfer function for the system. b) Draw a root locus diagram for the variable parameter ‘P’. c) Find the response of the system in to a unit step input using explicit integration.
root locus - 11.14
11.5 PRACTICE PROBLEM SOLUTIONS 1. +
3.0
1 -------------------2 (D + 1)
+
-
KdD
3.0 ------------------------------------2 ( D + 1 ) + Kd D
+ -
3.0 --------------------------------------------------2 D + D ( K d + 2 ) + 4.0 2
– K d – 2 ± ( K d + 2 ) – 4 ( 4.0 ) D = --------------------------------------------------------------------------2
2
D + D ( K d + 2 ) + 4.0 = 0
2
– K d – 2 ± K d + 4K d – 12 D = ----------------------------------------------------------------2
Kd
roots
0 1 2 5 10 100 1000
-1 +/- 1.732j -1.5 +/- 1.323j -2.000, -2.000 -0.628, -6.372 -0.343, -11.657 -0.039, -102.0 -0.004, -1000
Critical points: (this is simple for a quadratic) The roots becomes positive when 2
0 > – K d – 2 ± K d + 4K d – 12 2
2 + K d > ± K d + 4K d – 12 16 > 0 0 > – Kd – 2 Kd > –2 The roots becomes complex when 2
0 > K d + 4K d – 12 – 4 ± 16 – 4 ( – 12 ) K d = ----------------------------------------------2
K d = – 6, 2
Gains larger than -2 will result in a stable system. Any gains between -4 and -2 will result in oscillations.
root locus - 11.15
2. a)
200K --------------------------------------2 D + 2D + 200K
– 2 ± 4 – 4 ( 200K ) roots = ------------------------------------------------ = – 1 ± 1 – 200K 2 Im K roots
b)
0 0.001 0.005 0.1 1 5 10
c)
2
0,-2 -0.1,-1.9 -1,-1 etc.
2
K=0.005 Re -2
2
D + 2D + 200K = D + 2ζω n D + ω n
-1
∴ω n = 1
From the root locus graph this value is critically stable.
∴K = 0.005
root locus - 11.16
3. a)
2
D + D + 20K = 0 – 1 ± 1 – 4 ( 20K ) D = --------------------------------------------2
b)
K
roots
0 1/80 1 10 1000
0.000, -1.000 -0.500, -0.500 -0.5 +/- 4.444j -0.5 +/- 14.13j -0.5 +/- 141.4j
For complex roots 1 – 80K < 0 For negative real roots (stable) –-----------------------------------1 ± 1 – 80K<0 2 ± 1 – 80K < 1
Matching the second order forms, 2ω n ξ = 1
1 K > -----80
2
ω n = 20K
The gain can only be used for the natural frequency 20 20 K = -----2- = -----2- = 2.22 ωn 3
K>0
root locus - 11.17
c)
θo 20 ( 10 ) ----- = ---------------------------------------2 θd D + D + 20 ( 10 ) ·· · θ o + θd + θ d 200 = 200θd Homogeneous: 2
A + A + 200 = 0 – 1 ± 1 – 4 ( 200 ) A = -------------------------------------------2 θo ( t ) = C1 e
– 0.5t
A = – 0.5 ± 14.1j
sin ( 14.1t + C 2 )
Particular: θ = A 0 + 0 + A200 = 200 ( 1rad )
A = 1rad
θ o ( t ) = 1rad Initial Conditions (assume at rest): θo ( t ) = C1 e
– 0.5t
sin ( 14.1t + C 2 ) + 1rad
θ o ( 0 ) = C 1 ( 1 ) sin ( 14.1 ( 0 ) + C 2 ) + 1rad = 0 C 1 sin ( C 2 ) = – 1rad θ' o ( t ) = – 0.5C 1 e
– 0.5t
sin ( 14.1t + C 2 ) – 14.1C 1 e
0 = – 0.5C 1 sin ( C 2 ) – 14.1C 1 cos ( C 2 ) 14.1 cos ( C 2 ) = – 0.5 sin ( C 2 ) 14.1--------= tan ( C 2 ) – 0.5 – 1rad – 1rad C 1 = ------------------- = -------------------------- = 1.000rad sin ( C 2 ) sin ( – 1.54 ) θo ( t ) = ( e
– 0.5t
sin ( 14.1t – 1.54 ) + 1 ) ( rad )
– 0.5t
(1) cos ( 14.1t + C 2 )
C 2 = – 1.54
root locus - 11.18
d)
θo 20 ( 0.01 ) ----- = -------------------------------------------2 θd D + D + 20 ( 0.01 ) ·· · θ o + θd + θ d 0.2 = 0.2θd Homogeneous: 2
A + A + 0.2 = 0 – 1 ± 1 – 4 ( 0.2 ) A = -----------------------------------------2 θo ( t ) = C1 e
– 0.724t
A = – 0.7236068, – 0.2763932
+ C2 e
– 0.276t
Particular: θ = A 0 + 0 + A0.2 = 0.2 ( 1rad )
A = 1rad
θ o ( t ) = 1rad Initial Conditions (assume at rest): θo ( t ) = C1 e
– 0.724t
θo ( 0 ) = C1 e
– 0.724t
+ C2e
– 0.276t
+ C2 e
– 0.276t
+ 1rad + 1rad = 0 (1)
C 1 + C 2 = – 1rad θ' o ( t ) = – 0.724 ( C 1 e
– 0.724t
) – 0.276 ( C 2 e
– 0.276t
)
C 1 = – 0.381C 2 – 0.381C 2 + C 2 = – 1rad
C 2 = – 1.616rad
C 1 = – 0.381 ( – 1.616rad ) = 0.616rad θ o ( t ) = ( 0.616 )e
– 0.724t
+ ( – 1.616 )e
– 0.276t
+ 1rad
root locus - 11.19
4. (ans.
X + -
2
Kp D + K i + Kd D ------------------------------------------D
3 -----------D+9
Y
4 X + -
Y
2
3K p D + 3K i + 3K d D ----------------------------------------------------D(D + 9) 4
X
X
2
3K p D + 3K i + 3K d D ------------------------------------------------------------------------------------------2 D ( D + 9 ) + 12K p D + 12K i + 12K d D 2
3K p D + 3K i + 3K d D ---------------------------------------------------------------------------------------------2 D ( 12K d + 1 ) + D ( 9 + 12K p ) + ( 12K i )
Y
Y
root locus - 11.20
b)
2
D ( 12K d + 1 ) + D ( 9 + 12K p ) + ( 12K i ) = 0 2
– 9 – 12K p ± ( 9 + 12K p ) – 4 ( 12K d + 1 )12K i D = -----------------------------------------------------------------------------------------------------------------2 ( 12K d + 1 ) Kd
roots
-100 -10 -1 -0.1 0 1 10 100
-0.092, 0.109 -0.241, 0.418 -0.46, 2.369 -0.57, 105.6 -0.588, -20.41 -0.808 +/- 0.52j -0.087 +/- 0.303j -0.0087 +/- 0.1j
Stable for,
2
– 9 – 12K p ± ( 9 + 12K p ) – 4 ( 12K d + 1 )12K i < 0 2
± ( 9 + 12K p ) – 4 ( 12K d + 1 )12K i < 9 + 12K p 2
( 9 + 12K p ) – 4 ( 12K d + 1 )12K i < ( 9 + 12K p )
2
– 4 ( 12K d + 1 )12K i < 0 –1 K d > -----12 Becomes complex at, 2
0 > ( 9 + 12K p ) – 4 ( 12K d + 1 )12K i 2
576K d K i > ( 9 + 12K p ) – 48K i 2
( 9 + 12K p ) – 48K i K d > ----------------------------------------------576K d K i
K d > 0.682
root locus - 11.21
c)
Kp = 1
Ki = 1
Kd = 1 2
3K p D + 3K i + 3K d D --Y- = ---------------------------------------------------------------------------------------------2 X D ( 12K d + 1 ) + D ( 9 + 12K p ) + ( 12K i ) 2 2 3D + 3D + 3 3- -------------------------------------------------D +D+1 --Y- = --------------------------------------------- = 2 13 2 X D 13 + D21 + 12 D + D1.615 + 0.923
3 final gain = 20 log ------ = – 12.7 13 3 initial gain = 20 log ------ = – 12.0 12 for the numerator, ωn =
1 ξ = --------- = 0.5 2ω n
1 = 1 2
ωd = ωn 1 – ξ =
2
1 – 0.5 = 0.866
for the denominator, ωn =
0.923 = 0.961 2
1.615 ξ = ------------- = 0.840 2ω n 2
ω d = ω n 1 – ξ = 0.961 1 – 0.840 = 0.521
-12dB
root locus - 11.22
2
3K p D + 3K i + 3K d D --Y- = ---------------------------------------------------------------------------------------------2 X D ( 12K d + 1 ) + D ( 9 + 12K p ) + ( 12K i ) 12K i --------------------- = 2 12K d + 1
12K i = 48K d + 4
9 + 12K p 2ξω n = ---------------------- = 20.5 ( 2 ) 12K d + 1
24K d = 7 + 12K p
ωn =
At this point there are two equations and two unknowns, one value must be selected to continue, therefore, K p = 10 24K d = 7 + 12K p = 7 + 12 ( 10 ) = 127
K d = 5.292
12K i = 48K d + 4 = 48 ( 5.292 ) + 4 = 258.0
K i = 21.5
Now to check for stability 2
D ( 12 ( 5.292 ) + 1 ) + D ( 9 + 12 ( 10 ) ) + ( 12 ( 21.5 ) ) = 0 2
64.504D + 129D + 258 = 0 2
– 129 ± 129 – 4 ( 64.5 )258 D = --------------------------------------------------------------------- = – 1 ± 1.73j 2 ( 64.5 )
root locus - 11.23
e) Cannot be found without an assumed input and initial conditions f)
2
3 ( 0 )D + 3 ( 0 ) + 3 ( 1 )D --Y- = --------------------------------------------------------------------------------------------------2 X D ( 12 ( 1 ) + 1 ) + D ( 9 + 12 ( 0 ) ) + ( 12 ( 0 ) ) 2
3D --Y- = -------------------------2 X 13D + 9D 2
2
Y ( 13D + 9D ) = X ( 3D ) ·· · ·· Y 13 + Y 9 = X 3
X = t
· X = 1
·· X = 0
·· · 9 Y + Y ------ = 0 13 It is a first order system, Y ( t ) = C1 e
9 – ------ t 13
+ C2
Y( 0) = 0
Y' ( 0 ) = 0
0 = C11 + C2
starts at rest/undeflected
C1 = –C2 9 ------
– t 913 ----Y' ( t ) = – C e 13 1
9 0 = – ------ C 1 13 1
C1 = 0 C2 = 0
no response
root locus - 11.24
5. X
1 K 5 + ---- + D D
+
0.1 -------------------------------------2 D + 10D + 100
+
-
Y
10 -----D 0.01
X
2
5D + 1 + D K ------------------------------ D
+ -
0.1 ---------------------------------------------------------------10 2 D + 10D + 100 + 0.1 ------ D
Y
0.01 X
2
( 0.5D + 0.1 + 0.1D -) K ------------------------------------------------------3 2 D + 10D + 100D + 1
+
Y
0.01 X
X
2
K ( 0.5D + 0.1 + 0.1D ) ------------------------------------------------------------------------------------------------------------------------------------3 2 2 D + 10D + 100D + 1 + 0.01 ( K ( 0.5D + 0.1 + 0.1D ) ) 2
K ( 0.5D + 0.1 + 0.1D ) ---------------------------------------------------------------------------------------------------------------------------------------------3 2 D + D ( 10 + 0.001K ) + D ( 100 + 0.005K ) + ( 1 + 0.001K )
Y
Y
root locus - 11.25
Given the homogeneous equation for the system, 3
2
D + D ( 10 + 0.001K ) + D ( 100 + 0.005K ) + ( 1 + 0.001K ) = 0 The roots can be found with a calculator, Mathcad, or equivalent. K roots notes -100,000 -1000 -10 0 10 1000 17165.12 100,000
94.3, -3.992, -0.263 0, -4.5+/-8.65j -0.0099, -4.99+/-8.66j -0.01, -4.995+/-8.657j -0.01, -5+/-8.66j -0.019, -5.49+/-8.64j -0.099, -13.52, -13.546 -0.0174, -104.3, -5.572
roots become negative
roots become real
6. 2
a)
θ D ( 100 ) + D ( 100P ) + ( 100 ) ------ = ---------------------------------------------------------------------------------3 2 Vd D + D ( 300 ) + D ( 200P ) + ( 200 )
b) c)
11.6 ASSIGNMENT PROBLEMS 1. The systems below have a variable spring coefficient. For each of the systems below,
root locus - 11.26
a) Write the differential equation and convert it to a transfer function.
Kd = 1 Ns/m
Kd1 = 1 Ns/m Ks1
M = 1 kg M = 1kg
y F
y
F Ks
b) If the input force is a step function of magnitude 1N, calculate the time response for ‘y’ by solving a differential equation for a Ks value of 10N/m. c) Draw the poles for the transfer function on a real-complex plane. d) Draw a Bode plot for Ks = 1N/m. 2. Draw a root locus diagram for the feedback system below given the variable parameter ‘P’.
Vd
e
+ -
P
Vs
100 -----------------D + 100
ω
1--D
θ
Va 2
3. For the transfer functions below, draw the root locus plots assuming there is unity feedback, i.e., H(D) = 1. Draw an approximate time response for each for a step input. G(s) =
1 -----------D+1
1 --------------2 D +1
1 -------------------2 (D + 1)
1 -----------------------------2 D + 2D + 2
root locus - 11.27
4. Draw a root-locus plot for the following feedback control systems. C
+ K
1 --------------------2 (D + 1)
R
1 -------------------2 (D + 1)
R
2 -----2 D
C
+ K 2D
C
2
+ K 2 -----2 D
(D + 1)
2
R
nonlinear system - 12.1
12. NONLINEAR SYSTEMS
Topics: •
Objectives: •
12.1 INTRODUCTION • how they are different from linear - no transfer functions - new elements needed in block diagrams
12.2 SOURCES OF NONLINEARITY - important for analysis - can be overcome by control strategies
12.2.1 Non-Linear Relationships - input/output relationships are not linear
nonlinear system - 12.2
θ
– --π- Q ( θ ) = 8.5 e – 1
12.3 NON-LINEAR ELEMENTS • If our models include a device that is non linear we will need to linearize the model before we can proceed. • A non-linear system can be approximated with a linear equation using the following method. 1. Pick an operating point or range for the component. 2. Find a constant value that relates a change in the input to a change in the output. 3. Develop a linear equation. 4. Use the linear equation in the analysis (Laplace or other) • Consider the example below,
In this case the relationship between pressure drop and flow are non-linear. We need to develop an equation that approximates the local operating point. q ∆p ≈ R ( q – q ) ∆ ( ∆p ) R ≈ --------------∆q
∆q q R = 2 -----2K q ∆p ∆ ( ∆p )
nonlinear system - 12.3
Figure 12.1
Linearizing non-linear elements
12.3.1 Time Variant - system parameters vary as a function of time.
Kd Ks F ·· · x + x ----------------------------- + x ----------------------------- = ---------------------------- M – 0.0001t M – 0.0001t M – 0.0001t
12.3.2 Switching - system components turned on/off - cables in tension/compression - show an example where input conditions change
· y + 4y = f ( t )
f(t < 0) = 0 f ( 0 ≤ t < 5s ) = 2 f ( t ≥ 5s ) = 0
- give PWM (Pulse Width Modulation) example with ripple showing equivalent voltage. PWM is used to generate analog voltage equivalents. Show for a system with first
nonlinear system - 12.4
order response with tau = 0.1s for a frequency of 1KHz, 10Hz and 1Hz. Point out the ripple and effective voltage. - important to consider when doing system analysis
12.3.3 Deadband - Friction in all components - costs money to reduce friction, so it is better to compensate in software - small actuation signals not large enough to overcome friction - This effect is normally known as ’stiction’, a combination of the words static and friction. - Friction is common in less expensive motors, and when a motor is driving a mechanical system. - In systems there are two type of friction that must be considered. - The static friction, ’stiction’, will prevent initial motion. If the systems breaks free and starts turning, the kinetic friction will provide a roughly constant friction resistance. - relationship in figure below. - the region where the applied voltage has no effect is called the deadband.
nonlinear system - 12.5
The kinetic friction results in a different curve while slowing down
ω
Vapplied deadband
Figure 12.2
motor starts to turn as friction is overcome
Motor deadband for a bidirectional motor
- deadband compensation as shown in figure below.
Vadjusted Vstick Vwanted
-Vstick
Figure 12.3
Deadband approximation for a bidirectional motor
- equations for these are shown in figure
nonlinear system - 12.6
Cadjusted C max = 255 Cstick Cwanted
C min = – 255
C max = 255 -Cstick
if(Cwanted > 0)
C min = 255
C wanted C adjusted = C stick + ------------------ ( C max – C stick ) C max
if(Cwanted < 0)
C wanted C adjusted = – C stick + ------------------ ( C min – C stick ) C min if(Cwanted = 0) C adjusted = 0 Figure 12.4
Deadband approximation for a bidirectional motor
- c-code below
#define #define #define #define
c_stick_pos c_stick_neg c_max c_min
100 -110 /* make the value positive */ 255 -255 /* make the value positive */
int deadband(int c_wanted){ /* call this routine when updating */ int c_adjusted; if(c_wanted == 0){ /* turn off the output */ c_adjusted = 0; } else if(c_wanted > 0){ /* a positive output */ c_adjusted = c_stick_pos + (c_max - c_stick_pos) * c_wanted / c_max; if(c_adjusted > c_max) c_adjusted = c_max; } else { /* the output must be negative */ c_adjusted = -c_stick_neg (c_min - c_stick_neg) * c_wanted / c_min; if(c_adjusted < -c_min) c_adjusted = c_min; } return c_adjusted; }
Figure 12.5
Deadband compensation subroutine
nonlinear system - 12.7
12.3.4 Saturation and Clipping • Some devices have natural maximum values, such as voltage or pressure limitations caused by a regulated supply. •
12.3.5 Hysteresis and Slip - windup resulting from springiness and friction - backlash -
nonlinear system - 12.8
•
- correct by tracking the previous motion direction and taking extra steps when reversing direction
12.3.6 Delays and Lags
• Time delays are common in systems • In the simplest form this is a period of time between when an event occurs and when the effect occurs. • If an output delay is larger than the control system step time it may be necessary to predict future states and initiate outputs ahead of those. • If an input delay is larger than the control system it might be necessary to slow the control action, or build it into the control law.
nonlinear system - 12.9
12.4 SUMMARY
12.5 PRACTICE PROBLEMS 1.
12.6 PRACTICE PROBLEM SOLUTIONS
12.7 ASIGNMENT PROBLEMS
analog IO - 13.1
13. ANALOG INPUTS AND OUTPUTS Topics: • Analog inputs and outputs • Sampling issues; aliasing, quantization error, resolution
Objectives: • To understand the basics of conversion to and from analog values.
13.1 INTRODUCTION An analog value is continuous, not discrete, as shown in Figure 13.1. In the previous chapters, techniques were discussed for designing continuos control systems. In this chapter we will examine analog inputs and outputs so that we may design continuous control systems that use computers.
Voltage logical continuous t Figure 13.1
Logical and Continuous Values
Typical analog inputs and outputs for computers are listed below. Actuators and sensors that can be used with analog inputs and outputs will be discussed in later chapters. Inputs: • oven temperature • fluid pressure • fluid flow rate Outputs:
analog IO - 13.2
• fluid valve position • motor position • motor velocity A basic analog input is shown in Figure 13.2. In this type of system a physical value is converted to a voltage, current or other value by a transducer. A signal conditioner converts the signal from the transducer to a voltage or current that is read by the analog input.
physical phenomenon
Figure 13.2
transducer (ie., sensor)
signal conditioning
analog input
integer
Analog inputs
Analog to digital and digital to analog conversion uses integers within the computer. Integers limit the resolution of the numbers to a discrete, or quantized range. The effect of using integers is shown in Figure 13.3 where the desired or actual analog value is continuous, but the possible integer values are quantified with a ’staircase’ set of values. Consider when a continuous analog voltage is being read, it must be quantized into an available integer value. Likewise, a desired analog output value is limited to available quantized values. In general the difference between the analog and quantized integer value is an error based upon the resolution of the analog I/O.
analog
continuous quantized
integer
analog IO - 13.3
Figure 13.3
Quantization error
13.2 ANALOG INPUTS To input an analog voltage (into a computer) the continuous voltage value must be sampled and then converted to a numerical value by an A/D (Analog to Digital) converter (also known as ADC). Figure 13.4 shows a continuous voltage changing over time. There are three samples shown on the figure. The process of sampling the data is not instantaneous, so each sample has a start and stop time. The time required to acquire the sample is called the sampling time. A/D converters can only acquire a limited number of samples per second. The time between samples is called the sampling period T, and the inverse of the sampling period is the sampling frequency (also called sampling rate). The sampling time is often much smaller than the sampling period. The sampling frequency is specified when buying hardware, but a common sampling rate is 100KHz.
Voltage is sampled during these time periods
voltage
time T = (Sampling Frequency)-1
Figure 13.4
Sampling time
Sampling an Analog Voltage
A more realistic drawing of sampled data is shown in Figure 13.5. This data is noisier, and even between the start and end of the data sample there is a significant change in the voltage value. The data value sampled will be somewhere between the voltage at the start and end of the sample. The maximum (Vmax) and minimum (Vmin) voltages are a function of the control hardware. These are often specified when purchasing hardware, but reasonable ranges are;
analog IO - 13.4
0V to 5V 0V to 10V -5V to 5V -10V to 10V The number of bits of the A/D converter is the number of bits in the result word. If the A/D converter is 8 bit then the result can read up to 256 different voltage levels. Most A/D converters have 12 bits, 16 bit converters are used for precision measurements.
V(t) V max
V ( t2 )
V ( t1 )
V min t τ t1 t2 where, V ( t ) = the actual voltage over time
τ = sample interval for A/D converter t = time t 1, t 2 = time at start,end of sample
V ( t 1 ), V ( t 2 ) = voltage at start, end of sample V min, V max = input voltage range of A/D converter N = number of bits in the A/D converter
Figure 13.5
Parameters for an A/D Conversion
The parameters defined in Figure 13.5 can be used to calculate values for A/D converters. These equations are summarized in Figure 13.6. Equation 1 relates the number of
analog IO - 13.5
bits of an A/D converter to the resolution. Equation 2 gives the error that can be expected with an A/D converter given the range between the minimum and maximum voltages, and the resolution (this is commonly called the quantization error). Equation 3 relates the voltage range and resolution to the voltage input to estimate the integer that the A/D converter will record. Finally, equation 4 allows a conversion between the integer value from the A/ D converter, and a voltage in the computer.
R = 2
N
(1)
V max – Vmin V ERROR = ± ----------------------------- 2R
(2)
V in – V min - (R – 1) V I = INT --------------------------- V max – V min
(3)
VI V C = ------------ ( V max – V min ) + Vmin R–1
(4)
where, R = resolution of A/D converter V I = the integer value representing the input voltage V C = the voltage calculated from the integer value V ERROR = the maximum quantization error
Figure 13.6
A/D Converter Equations
Consider a simple example, a 10 bit A/D converter can read voltages between 10V and 10V. This gives a resolution of 1024, where 0 is -10V and 1023 is +10V. Because there are only 1024 steps there is a maximum error of ±9.8mV. If a voltage of 4.564V is input into the PLC, the A/D converter converts the voltage to an integer value of 746. When we convert this back to a voltage the result is 4.570V. The resulting quantization error is 4.570V-4.564V=+0.006V. This error can be reduced by selecting an A/D converter with more bits. Each bit halves the quantization error.
analog IO - 13.6
Given, N = 10 V max = 10V V min = – 10V V in = 4.564V Calculate, R = 2
N
= 1024
V max – V min V ERROR = ----------------------------- = 0.0098V 2R V in – V min - R = 746 V I = INT --------------------------- V max – V min VI V C = ----- ( V max – Vmin ) + V min = 4.570V R Figure 13.7
Sample Calculation of A/D Values
If the voltage being sampled is changing too fast we may get false readings, as shown in Figure 13.8. In the upper graph the waveform completes seven cycles, and 9 samples are taken. The bottom graph plots out the values read. The sampling frequency was too low, so the signal read appears to be different that it actually is, this is called aliasing.
analog IO - 13.7
Figure 13.8
Low Sampling Frequencies Cause Aliasing
Figure 13.9
Very Low Sampling Frequencies Produce Apparently Random
The Nyquist criterion specifies that sampling frequencies should be at least twice the frequency of the signal being measured, otherwise aliasing will occur. The example in
analog IO - 13.8
Figure 13.8 violated this principle, so the signal was aliased. If this happens in real applications the process will appear to operate erratically. In practice the sample frequency should be 4 or more times faster than the system frequency.
f AD > 2f signal
where,
f AD = sampling frequency f signal = maximum frequency of the input
There are other practical details that should be considered when designing applications with analog inputs; • Noise - Since the sampling window for a signal is short, noise will have added effect on the signal read. For example, a momentary voltage spike might result in a higher than normal reading. Shielded data cables are commonly used to reduce the noise levels. • Delay - When the sample is requested, a short period of time passes before the final sample value is obtained. • Multiplexing - Most analog input cards allow multiple inputs. These may share the A/D converter using a technique called multiplexing. If there are 4 channels using an A/D converter with a maximum sampling rate of 100Hz, the maximum sampling rate per channel is 25Hz. • Signal Conditioners - Signal conditioners are used to amplify, or filter signals coming from transducers, before they are read by the A/D converter. • Resistance - A/D converters normally have high input impedance (resistance), so they affect circuits they are measuring. • Single Ended Inputs - Voltage inputs to a PLC can use a single common for multiple inputs, these types of inputs are called single ended inputs. These tend to be more prone to noise. • Double Ended Inputs - Each double ended input has its own common. This reduces problems with electrical noise, but also tends to reduce the number of inputs by half. • Sampling Rates - The maximum number of samples that can be read each second. If reading multiple channels with a multiplexer, this may be reduced. • Quantization Error - Analog IO is limited by the binary resolution of the converter. This means that the output is at discrete levels, instead of continuous values. • Triggers - often external digital signals are used to signal the start of data collection. • Range - the typical voltages that the card can read. Typical voltage ranges are 10V to 10V, 0V to 10V, 0V to 5V, 1V to 5V, -5V to 5V, 4mA to 20mA. • DMA - a method to write large blocks of memory directly to computer memory. This is normally used for high speed data captures.
analog IO - 13.9
• Filters - some A/D input cards will provide built in functions to filter the incoming data to remove high frequency noise components. • Input impedance - most analog inputs have very high input resistances, in the range of Mohms.
ASIDE: This device is an 8 bit A/D converter. The main concept behind this is the successive approximation logic. Once the reset is toggled the converter will start by setting the most significant bit of the 8 bit number. This will be converted to a voltage Ve that is a function of the +/-Vref values. The value of Ve is compared to Vin and a simple logic check determines which is larger. If the value of Ve is larger the bit is turned off. The logic then repeats similar steps from the most to least significant bits. Once the last bit has been set on/off and checked the conversion will be complete, and a done bit can be set to indicate a valid conversion value. Vin above (+ve) or below (-ve) Ve Vin
+ -
+Vref
clock
successive approximation logic
8
D to A converter
Ve
reset
-Vref
done
8
data out
Quite often an A/D converter will multiplex between various inputs. As it switches the voltage will be sampled by a sample and hold circuit. This will then be converted to a digital value. The sample and hold circuits can be used before the multiplexer to collect data values at the same instant in time.
Figure 13.10 A Successive Approximation A/D Converter
analog IO - 13.10
13.3 ANALOG OUTPUTS Analog outputs are much simpler than analog inputs. To set an analog output an integer is converted to a voltage. This process is very fast, and does not experience the timing problems with analog inputs. But, analog outputs are subject to quantization errors. Figure 13.11 gives a summary of the important relationships. These relationships are almost identical to those of the A/D converter.
R = 2
N
V max – Vmin V ERROR = ± ----------------------------- 2R
(5) (6)
V desired – V min VI = INT ----------------------------------R Vmax – V min
(7)
VI V output = ----- ( V max – V min ) + V min R
(8)
where, R = resolution of A/D converter V ERROR = the maximum quantization error V I = the integer value representing the desired voltage V output = the voltage output using the integer value V desired = the desired output voltage
Figure 13.11 Analog Output Relationships Assume we are using an 8 bit D/A converter that outputs values between 0V and 10V. We have a resolution of 256, where 0 results in an output of 0V and 255 results in 10V. The quantization error will be 20mV. If we want to output a voltage of 6.234V, we would specify an output integer of 160, this would result in an output voltage of 6.250V. The quantization error would be 6.250V-6.234V=0.016V.
analog IO - 13.11
Given, N = 8 V max = 10V V min = 0V V desired = 6.234V Calculate, R = 2
N
= 256
V max – V min V ERROR = ----------------------------- = 0.020V 2R V in – V min - R = 160 V I = INT --------------------------- V max – V min VI V C = ----- ( V max – Vmin ) + V min = 6.250V R The current output from a D/A converter is normally limited to a small value, typically less than 20mA. This is enough for instrumentation, but for high current loads, such as motors, a current amplifier is needed. This type of interface will be discussed later. If the current limit is exceeded for 5V output, the voltage will decrease (so don’t exceed the rated voltage). If the current limit is exceeded for long periods of time the D/A output may be damaged.
analog IO - 13.12
ASIDE: 5K Ω MSB bit 3
bit 2
10K Ω
V–
-
20K Ω
V +
+
+ 0
Computer bit 1
V ss
40K Ω
Vo -
LSB bit 0
80K Ω
First we write the obvious, V
+
= 0 = V–
Next, sum the currents into the inverting input as a function of the output voltage and the input voltages from the computer, Vb3 V b2 Vb1 V b0 Vo -------------- + -------------- + -------------- + -------------- = ----------10KΩ 20KΩ 40KΩ 80KΩ 5KΩ ∴V o = 0.5V b3 + 0.25V b2 + 0.125V b1 + 0.0625Vb 0 Consider an example where the binary output is 1110, with 5V for on, ∴V o = 0.5 ( 5V ) + 0.25 ( 5V ) + 0.125 ( 5V ) + 0.625 ( 0V ) = 4.375V
Figure 13.12 A Digital-To-Analog Converter
13.4 NOISE REDUCTION
13.4.1 Shielding When a changing magnetic field cuts across a conductor, it will induce a current flow. The resistance in the circuits will convert this to a voltage. These unwanted voltages
analog IO - 13.13
result in erroneous readings from sensors, and signal to outputs. Shielding will reduce the effects of the interference. When shielding and grounding are done properly, the effects of electrical noise will be negligible. Shielding is normally used for; all logical signals in noisy environments, high speed counters or high speed circuitry, and all analog signals. There are two major approaches to reducing noise; shielding and twisted pairs. Shielding involves encasing conductors and electrical equipment with metal. As a result electrical equipment is normally housed in metal cases. Wires are normally put in cables with a metal sheath surrounding both wires. The metal sheath may be a thin film, or a woven metal mesh. Shielded wires are connected at one end to "drain" the unwanted signals into the cases of the instruments. Figure 13.13 shows a thermocouple connected with a thermocouple. The cross section of the wire contains two insulated conductors. Both of the wires are covered with a metal foil, and final covering of insulation finishes the cable. The wires are connected to the thermocouple as expected, but the shield is only connected on the amplifier end to the case. The case is then connected to the shielding ground, shown here as three diagonal lines.
Two conductor shielded cable cross section
Insulated wires Metal sheath Insulating cover
Figure 13.13 Shielding for a Thermocouple A twisted pair is shown in Figure 13.14. The two wires are twisted at regular intervals, effectively forming small loops. In this case the small loops reverse every twist, so any induced currents are cancel out for every two twists.
analog IO - 13.14
1" or less typical
Figure 13.14 A Twisted Pair When designing shielding, the following design points will reduce the effects of electromagnetic interference. • Avoid “noisy” equipment when possible. • Choose a metal cabinet that will shield the control electronics. • Use shielded cables and twisted pair wires. • Separate high current, and AC/DC wires from each other when possible. • Use current oriented methods such as sourcing and sinking for logical I/O. • Use high frequency filters to eliminate high frequency noise. • Use power line filters to eliminate noise from the power supply.
13.4.2 Grounding - ground voltages are based upon the natural voltage level in the physical ground (the earth under your feet). This will vary over a distance. Most buildings and electrical systems use a ground reference for the building. Between different points on the same building ground voltage levels may vary as much as a few hundred millivolts. This can lead to significant problems with voltage readings and system safety. - A signal can be floating, or connected to a ground - if floating a system normally has a self contained power source, or self reference such as a battery, strain gauge or thermocouple. These are usually read with double ended outputs. The potential for floating voltage levels can be minimized by connecting larger resistors (up to 100K) from the input to ground. - a grounded system uses a single common (ground) for all signals. These are normally connected to a single ended inputs. - the analog common can also be connected to the ground with a large resistor to drain off induced voltages.
analog IO - 13.15
- cable shields or grounds are normally only connected at one side to prevent ground loops.
13.5 CASE STUDY - data smoothing by averaging inputs - conversion back to an input voltage - use it to calculate an output voltage for control.
13.6 SUMMARY • A/D conversion will convert a continuous value to an integer value. • D/A conversion is easier and faster and will convert a digital value to an analog value. • Resolution limits the accuracy of A/D and D/A converters. • Sampling too slowly will alias the real signal. • Analog inputs are sensitive to noise. • Analog shielding should be used to improve the quality of electrical signals.
13.7 PRACTICE PROBLEMS 1. What is the difference between an A/D input and D/A output? 2. An analog voltage that has a range of -10V to 10V and is to be read to a precision of +/-0.05V. How is the minimum number of bits required for the A/D converter? 3. If given a 12 bit analog input with a range of -10V to 10V. If we put in 2.735V, what will the integer value be after the A/D conversion? What is the error? What voltage can we calculate?
13.8 PRACTICE PROBLEM SOLUTIONS 1. an A/D converter will convert an analog input voltage (or current) to an integer value. A D/A output will convert an integer value to an output voltage.
analog IO - 13.16
2. 10V – ( – 10V ) R = ---------------------------------- = 200 0.1V
7 bits, R = 128 8 bits, R = 256 The minimum number of bits is 8.
3. N = 12
R = 4096
V min = – 10V
V max = 10V
V in = 2.735V
V in – V min - ( R – 1 ) = 2607 V I = INT --------------------------- V max – V min VI V C = ------------ ( V max – V min ) + Vmin = 2.733V R–1 error = V c – V in = ( – 0.002 )V
13.9 ASSIGNMENT PROBLEMS 1. An analog output needs to be between -4V and 8V, in 0.005V intervals. How many bits are required for the D/A converter? 2. Discuss methods for reducing electrical noise in analog inputs.
continuous sensors - 14.1
14. CONTINUOUS SENSORS Topics: • Continuous sensor issues; accuracy, resolution, etc. • Angular measurement; potentiometers, encoders and tachometers • Linear measurement; potentiometers, LVDTs, Moire fringes and accelerometers • Force measurement; strain gages and piezoelectric • Liquid and fluid measurement; pressure and flow • Temperature measurement; RTDs, thermocouples and thermistors • Other sensors • Continuous signal inputs and wiring • Glossary Objectives: • To understand the common continuous sensor types. • To understand interfacing issues.
14.1 INTRODUCTION Continuous sensors convert physical phenomena to measurable signals, typically voltages or currents. Consider a simple temperature measuring device, there will be an increase in output voltage proportional to a temperature rise. A computer could measure the voltage, and convert it to a temperature. The basic physical phenomena typically measured with sensors include; - angular or linear position - acceleration - temperature - pressure or flow rates - stress, strain or force - light intensity - sound Most of these sensors are based on subtle electrical properties of materials and devices. As a result the signals often require signal conditioners. These are often amplifiers that boost currents and voltages to larger voltages. Sensors are also called transducers. This is because they convert an input phenomena to an output in a different form. This transformation relies upon a manufactured device with limitations and imperfection. As a result sensor limitations are often charac-
continuous sensors - 14.2
terized with; Accuracy - This is the maximum difference between the indicated and actual reading. For example, if a sensor reads a force of 100N with a ±1% accuracy, then the force could be anywhere from 99N to 101N. Resolution - Used for systems that step through readings. This is the smallest increment that the sensor can detect, this may also be incorporated into the accuracy value. For example if a sensor measures up to 10 inches of linear displacements, and it outputs a number between 0 and 100, then the resolution of the device is 0.1 inches. Repeatability - When a single sensor condition is made and repeated, there will be a small variation for that particular reading. If we take a statistical range for repeated readings (e.g., ±3 standard deviations) this will be the repeatability. For example, if a flow rate sensor has a repeatability of 0.5cfm, readings for an actual flow of 100cfm should rarely be outside 99.5cfm to 100.5cfm. Linearity - In a linear sensor the input phenomenon has a linear relationship with the output signal. In most sensors this is a desirable feature. When the relationship is not linear, the conversion from the sensor output (e.g., voltage) to a calculated quantity (e.g., force) becomes more complex. Precision - This considers accuracy, resolution and repeatability or one device relative to another. Range - Natural limits for the sensor. For example, a sensor for reading angular rotation may only rotate 200 degrees. Dynamic Response - The frequency range for regular operation of the sensor. Typically sensors will have an upper operation frequency, occasionally there will be lower frequency limits. For example, our ears hear best between 10Hz and 16KHz. Environmental - Sensors all have some limitations over factors such as temperature, humidity, dirt/oil, corrosives and pressures. For example many sensors will work in relative humidities (RH) from 10% to 80%. Calibration - When manufactured or installed, many sensors will need some calibration to determine or set the relationship between the input phenomena, and output. For example, a temperature reading sensor may need to be zeroed or adjusted so that the measured temperature matches the actual temperature. This may require special equipment, and need to be performed frequently. Cost - Generally more precision costs more. Some sensors are very inexpensive, but the signal conditioning equipment costs are significant.
14.2 INDUSTRIAL SENSORS This section describes sensors that will be of use for industrial measurements. The sections have been divided by the phenomena to be measured. Where possible details are provided.
continuous sensors - 14.3
14.2.1 Angular Displacement 14.2.1.1 - Potentiometers Potentiometers measure the angular position of a shaft using a variable resistor. A potentiometer is shown in Figure 14.1. The potentiometer is resistor, normally made with a thin film of resistive material. A wiper can be moved along the surface of the resistive film. As the wiper moves toward one end there will be a change in resistance proportional to the distance moved. If a voltage is applied across the resistor, the voltage at the wiper interpolate the voltages at the ends of the resistor.
V1 resistive film
V1 Vw
Vw
V2 wiper
V2
physical
schematic
Figure 14.1
A Potentiometer
The potentiometer in Figure 14.2 is being used as a voltage divider. As the wiper rotates the output voltage will be proportional to the angle of rotation.
continuous sensors - 14.4
V1 θ max
θw
V out
θw V out = ( V 2 – V 1 ) ----------- + V 1 θ max
V2
Figure 14.2
A Potentiometer as a Voltage Divider
Potentiometers are popular because they are inexpensive, and don’t require special signal conditioners. But, they have limited accuracy, normally in the range of 1% and they are subject to mechanical wear. Potentiometers measure absolute position, and they are calibrated by rotating them in their mounting brackets, and then tightening them in place. The range of rotation is normally limited to less than 360 degrees or multiples of 360 degrees. Some potentiometers can rotate without limits, and the wiper will jump from one end of the resistor to the other. Faults in potentiometers can be detected by designing the potentiometer to never reach the ends of the range of motion. If an output voltage from the potentiometer ever reaches either end of the range, then a problem has occurred, and the machine can be shut down. Two examples of problems that might cause this are wires that fall off, or the potentiometer rotates in its mounting.
14.2.2 Encoders Encoders use rotating disks with optical windows, as shown in Figure 14.3. The encoder contains an optical disk with fine windows etched into it. Light from emitters passes through the openings in the disk to detectors. As the encoder shaft is rotated, the light beams are broken. The encoder shown here is a quadrature encode, and it will be discussed later.
continuous sensors - 14.5
light emitters
light detectors
Shaft rotates
Note: this type of encoder is commonly used in computer mice with a roller ball.
Figure 14.3
An Encoder Disk
There are two fundamental types of encoders; absolute and incremental. An absolute encoder will measure the position of the shaft for a single rotation. The same shaft angle will always produce the same reading. The output is normally a binary or grey code number. An incremental (or relative) encoder will output two pulses that can be used to determine displacement. Logic circuits or software is used to determine the direction of rotation, and count pulses to determine the displacement. The velocity can be determined by measuring the time between pulses. Encoder disks are shown in Figure 14.4. The absolute encoder has two rings, the outer ring is the most significant digit of the encoder, the inner ring is the least significant digit. The relative encoder has two rings, with one ring rotated a few degrees ahead of the other, but otherwise the same. Both rings detect position to a quarter of the disk. To add accuracy to the absolute encoder more rings must be added to the disk, and more emitters and detectors. To add accuracy to the relative encoder we only need to add more windows to the existing two rings. Typical encoders will have from 2 to thousands of windows per ring.
continuous sensors - 14.6
sensors read across a single radial line
relative encoder (quadrature)
Figure 14.4
absolute encoder
Encoder Disks
When using absolute encoders, the position during a single rotation is measured directly. If the encoder rotates multiple times then the total number of rotations must be counted separately. When using a relative encoder, the distance of rotation is determined by counting the pulses from one of the rings. If the encoder only rotates in one direction then a simple count of pulses from one ring will determine the total distance. If the encoder can rotate both directions a second ring must be used to determine when to subtract pulses. The quadrature scheme, using two rings, is shown in Figure 14.5. The signals are set up so that one is out of phase with the other. Notice that for different directions of rotation, input B either leads or lags A.
continuous sensors - 14.7
Quad input A clockwise rotation Quad Input B
Note the change as direction is reversed
total displacement can be determined by adding/subtracting pulse counts (direction determines add/subtract)
Quad input A counterclockwise rotation Quad Input B
Note: To determine direction we can do a simple check. If both are off or on, the first to change state determines direction. Consider a point in the graphs above where both A and B are off. If A is the first input to turn on the encoder is rotating clockwise. If B is the first to turn on the rotation is counterclockwise. Aside: A circuit (or program) can be built for this circuit using an up/down counter. If the positive edge of input A is used to trigger the clock, and input B is used to drive the up/down count, the counter will keep track of the encoder position.
Figure 14.5
Quadrature Encoders
Interfaces for encoders are commonly available for PLCs and as purchased units. Newer PLCs will also allow two normal inputs to be used to decode encoder inputs.
continuous sensors - 14.8
Normally absolute and relative encoders require a calibration phase when a controller is turned on. This normally involves moving an axis until it reaches a logical sensor that marks the end of the range. The end of range is then used as the zero position. Machines using encoders, and other relative sensors, are noticeable in that they normally move to some extreme position before use.
14.2.2.1 - Tachometers Tachometers measure the velocity of a rotating shaft. A common technique is to mount a magnet to a rotating shaft. When the magnetic moves past a stationary pick-up coil, current is induced. For each rotation of the shaft there is a pulse in the coil, as shown in Figure 14.6. When the time between the pulses is measured the period for one rotation can be found, and the frequency calculated. This technique often requires some signal conditioning circuitry.
pickup coil
rotating shaft
Vout Vout t
magnet 1/f
Figure 14.6
A Magnetic Tachometer
Another common technique uses a simple permanent magnet DC generator (note: you can also use a small DC motor). The generator is hooked to the rotating shaft. The rotation of a shaft will induce a voltage proportional to the angular velocity. This technique will introduce some drag into the system, and is used where efficiency is not an issue. Both of these techniques are common, and inexpensive.
14.2.3 Linear Position 14.2.3.1 - Potentiometers
continuous sensors - 14.9
Rotational potentiometers were discussed before, but potentiometers are also available in linear/sliding form. These are capable of measuring linear displacement over long distances. Figure 14.7 shows the output voltage when using the potentiometer as a voltage divider.
V2 a Vout = V 1 + ( V 2 – V1 ) --- L V out L
a V1
Figure 14.7
Linear Potentiometer
Linear/sliding potentiometers have the same general advantages and disadvantages of rotating potentiometers.
14.2.3.2 - Linear Variable Differential Transformers (LVDT) Linear Variable Differential Transformers (LVDTs) measure linear displacements over a limited range. The basic device is shown in Figure 14.8. It consists of outer coils with an inner moving magnetic core. High frequency alternating current (AC) is applied to the center coil. This generates a magnetic field that induces a current in the two outside coils. The core will pull the magnetic field towards it, so in the figure more current will be induced in the left hand coil. The outside coils are wound in opposite directions so that when the core is in the center the induced currents cancel, and the signal out is zero (0Vac). The magnitude of the signal out voltage on either line indicates the position of the core. Near the center of motion the change in voltage is proportional to the displacement. But, further from the center the relationship becomes nonlinear.
continuous sensors - 14.10
A rod drives the sliding core
∆x ∆V = K∆x where,
AC input
∆ V = output voltage K = constant for device
∆ x = core displacement signal out
Figure 14.8
An LVDT
Aside: The circuit below can be used to produce a voltage that is proportional to position. The two diodes convert the AC wave to a half wave DC wave. The capacitor and resistor values can be selected to act as a low pass filter. The final capacitor should be large enough to smooth out the voltage ripple on the output.
Vac out Vac in
Vdc out
LVDT
Figure 14.9
A Simple Signal Conditioner for an LVDT
These devices are more accurate than linear potentiometers, and have less friction. Typical applications for these devices include measuring dimensions on parts for quality
continuous sensors - 14.11
control. They are often used for pressure measurements with Bourdon tubes and bellows/ diaphragms. A major disadvantage of these sensors is the high cost, often in the thousands.
14.2.3.3 - Moire Fringes High precision linear displacement measurements can be made with Moire Fringes, as shown in Figure 14.10. Both of the strips are transparent (or reflective), with black lines at measured intervals. The spacing of the lines determines the accuracy of the position measurements. The stationary strip is offset at an angle so that the strips interfere to give irregular patterns. As the moving strip travels by a stationary strip the patterns will move up, or down, depending upon the speed and direction of motion.
Moving
Stationary
Note: you can recreate this effect with the strips below. Photocopy the pattern twice, overlay the sheets and hold them up to the light. You will notice that shifting one sheet will cause the stripes to move up or down.
Figure 14.10 The Moire Fringe Effect A device to measure the motion of the moire fringes is shown in Figure 14.11. A light source is collimated by passing it through a narrow slit to make it one slit width. This is then passed through the fringes to be detected by light sensors. At least two light sensors are needed to detect the bright and dark locations. Two sensors, close enough, can act as a quadrature pair, and the same method used for quadrature encoders can be used to determine direction and distance of motion.
continuous sensors - 14.12
on off on off
Figure 14.11 Measuring Motion with Moire Fringes These are used in high precision applications over long distances, often meters. They can be purchased from a number of suppliers, but the cost will be high. Typical applications include Coordinate Measuring Machines (CMMs).
14.2.3.4 - Accelerometers Accelerometers measure acceleration using a mass suspended on a force sensor, as shown in Figure 14.12. When the sensor accelerates, the inertial resistance of the mass will cause the force sensor to deflect. By measuring the deflection the acceleration can be determined. In this case the mass is cantilevered on the force sensor. A base and housing enclose the sensor. A small mounting stud (a threaded shaft) is used to mount the accelerometer.
Base Mounting Stud
Force Sensor
Mass
Housing
Figure 14.12 A Cross Section of an Accelerometer Accelerometers are dynamic sensors, typically used for measuring vibrations
continuous sensors - 14.13
between 10Hz to 10KHz. Temperature variations will affect the accuracy of the sensors. Standard accelerometers can be linear up to 100,000 m/s**2: high shock designs can be used up to 1,000,000 m/s**2. There is often a trade-off between a wide frequency range and device sensitivity (note: higher sensitivity requires a larger mass). Figure 14.13 shows the sensitivity of two accelerometers with different resonant frequencies. A smaller resonant frequency limits the maximum frequency for the reading. The smaller frequency results in a smaller sensitivity. The units for sensitivity is charge per m/s**2.
resonant freq. (Hz)
sensitivity
22 KHz 180KHz
4.5 pC/(m/s**2) .004
Figure 14.13 Piezoelectric Accelerometer Sensitivities The force sensor is often a small piece of piezoelectric material (discussed later in this chapter). The piezoelectic material can be used to measure the force in shear or compression. Piezoelectric based accelerometers typically have parameters such as, -100 to 250°C operating range 1mV/g to 30V/g sensitivity operate well below one forth of the natural frequency The accelerometer is mounted on the vibration source as shown in Figure 14.14. The accelerometer is electrically isolated from the vibration source so that the sensor may be grounded at the amplifier (to reduce electrical noise). Cables are fixed to the surface of the vibration source, close to the accelerometer, and are fixed to the surface as often as possible to prevent noise from the cable striking the surface. Background vibrations can be detected by attaching control electrodes to non-vibrating surfaces. Each accelerometer is different, but some general application guidelines are; • The control vibrations should be less than 1/3 of the signal for the error to be less than 12%). • Mass of the accelerometers should be less than a tenth of the measurement mass. • These devices can be calibrated with shakers, for example a 1g shaker will hit a peak velocity of 9.81 m/s**2.
continuous sensors - 14.14
Sealant to prevent moisture hookup wire
isolated stud
accelerometer isolated wafer surface
Figure 14.14 Mounting an Accelerometer Equipment normally used when doing vibration testing is shown in Figure 14.15. The sensor needs to be mounted on the equipment to be tested. A pre-amplifier normally converts the charge generated by the accelerometer to a voltage. The voltage can then be analyzed to determine the vibration frequencies.
Sensor preamp
signal processor/ recorder
Source of vibrations, or site for vibration measurement
control system
Figure 14.15 Typical Connection for Accelerometers Accelerometers are commonly used for control systems that adjust speeds to reduce vibration and noise. Computer Controlled Milling machines now use these sensors to actively eliminate chatter, and detect tool failure. The signal from accelerometers can be
continuous sensors - 14.15
integrated to find velocity and acceleration. Currently accelerometers cost hundreds or thousands per channel. But, advances in micromachining are already beginning to provide integrated circuit accelerometers at a low cost. Their current use is for airbag deployment systems in automobiles.
14.2.4 Forces and Moments 14.2.4.1 - Strain Gages Strain gages measure strain in materials using the change in resistance of a wire. The wire is glued to the surface of a part, so that it undergoes the same strain as the part (at the mount point). Figure 14.16 shows the basic properties of the undeformed wire. Basically, the resistance of the wire is a function of the resistivity, length, and cross sectional area.
w
t
L V + I
V L L R = --- = ρ --- = ρ -----I A wt where, R = resistance of wire V, I = voltage and current L = length of wire w, t = width and thickness A = cross sectional area of conductor ρ = resistivity of material
Figure 14.16 The Electrical Properties of a Wire
continuous sensors - 14.16
After the wire in Figure 14.16 has been deformed it will take on the new dimensions and resistance shown in Figure 14.17. If a force is applied as shown, the wire will become longer, as predicted by Young’s modulus. But, the cross sectional area will decrease, as predicted by Poison’s ratio. The new length and cross sectional area can then be used to find a new resistance.
w’
t’
L’
F F σ = --- = ------ = Eε A wt
F ∴ε = ---------Ewt
L' L(1 + ε) R' = ρ -------- = ρ ---------------------------------------------- w't' w ( 1 – νε )t ( 1 – νε )
F
(1 + ε) ∴∆R = R' – R = R ---------------------------------------- – 1 ( 1 – νε ) ( 1 – νε ) where,
ν = poissons ratio for the material F = applied force E = Youngs modulus for the material σ, ε = stress and strain of material Aside: Gauge factor, as defined below, is a commonly used measure of stain gauge sensitivity. ∆R ------- R GF = ------------ε Figure 14.17 The Electrical and Mechanical Properties of the Deformed Wire
continuous sensors - 14.17
Aside: Changes in strain gauge resistance are typically small (large values would require strains that would cause the gauges to plastically deform). As a result, Wheatstone bridges are used to amplify the small change. In this circuit the variable resistor R2 would be tuned until Vo = 0V. Then the resistance of the strain gage can be calculated using the given equation. R2 R1 R strain = ------------- when Vo = 0V R3
V+
R2
R4
R1
+
Rstrain
Vo
R3 R5
Figure 14.18 Measuring Strain with a Wheatstone Bridge A strain gage must be small for accurate readings, so the wire is actually wound in a uniaxial or rosette pattern, as shown in Figure 14.19. When using uniaxial gages the direction is important, it must be placed in the direction of the normal stress. (Note: the gages cannot read shear stress.) Rosette gages are less sensitive to direction, and if a shear force is present the gage will measure the resulting normal force at 45 degrees. These gauges are sold on thin films that are glued to the surface of a part. The process of mounting strain gages involves surface cleaning. application of adhesives, and soldering leads to the strain gages.
stress direction
continuous sensors - 14.18
uniaxial
rosette
Figure 14.19 Wire Arrangements in Strain Gages A design techniques using strain gages is to design a part with a narrowed neck to mount the strain gage on, as shown in Figure 14.20. In the narrow neck the strain is proportional to the load on the member, so it may be used to measure force. These parts are often called load cells.
mounted in narrow section to increase strain effect
F
F
Figure 14.20 Using a Narrow to Increase Strain Strain gauges are inexpensive, and can be used to measure a wide range of stresses with accuracies under 1%. Gages require calibration before each use. This often involves making a reading with no load, or a known load applied. An example application includes using strain gages to measure die forces during stamping to estimate when maintenance is needed.
14.2.4.2 - Piezoelectric When a crystal undergoes strain it displaces a small amount of charge. In other words, when the distance between atoms in the crystal lattice changes some electrons are forced out or drawn in. This also changes the capacitance of the crystal. This is known as
continuous sensors - 14.19
the Piezoelectric effect. Figure 14.21 shows the relationships for a crystal undergoing a linear deformation. The charge generated is a function of the force applied, the strain in the material, and a constant specific to the material. The change in capacitance is proportional to the change in the thickness.
F
b
c
+ q a
F εab d---C = --------i = εg F c dt where, C = capacitance change a, b, c = geometry of material ε = dielectric constant (quartz typ. 4.06*10**-11 F/m) i = current generated F = force applied g = constant for material (quartz typ. 50*10**-3 Vm/N) E = Youngs modulus (quartz typ. 8.6*10**10 N/m**2)
Figure 14.21 The Piezoelectric Effect These crystals are used for force sensors, but they are also used for applications such as microphones and pressure sensors. Applying an electrical charge can induce strain, allowing them to be used as actuators, such as audio speakers. When using piezoelectric sensors charge amplifiers are needed to convert the small amount of charge to a larger voltage. These sensors are best suited to dynamic measurements, when used for static measurements they tend to drift or slowly lose charge, and the signal value will change.
continuous sensors - 14.20
14.2.5 Liquids and Gases There are a number of factors to be considered when examining liquids and gasses. • Flow velocity • Density • Viscosity • Pressure There are a number of differences factors to be considered when dealing with fluids and gases. Normally a fluid is considered incompressible, while a gas normally follows the ideal gas law. Also, given sufficiently high enough temperatures, or low enough pressures a fluid can be come a liquid.
PV = nRT where, P = the gas pressure V = the volume of the gas n = the number of moles of the gas R = the ideal gas constant = T = the gas temperature
When flowing, the flow may be smooth, or laminar. In case of high flow rates or unrestricted flow, turbulence may result. The Reynold’s number is used to determine the transition to turbulence. The equation below is for calculation the Reynold’s number for fluid flow in a pipe. A value below 2000 will result in laminar flow. At a value of about 3000 the fluid flow will become uneven. At a value between 7000 and 8000 the flow will become turbulent.
continuous sensors - 14.21
VDρ R = -----------u where, R = Reynolds number V = velocity D = pipe diameter ρ = fluid density u = viscosity
14.2.5.1 - Pressure Figure 14.22 shows different two mechanisms for pressure measurement. The Bourdon tube uses a circular pressure tube. When the pressure inside is higher than the surrounding air pressure (14.7psi approx.) the tube will straighten. A position sensor, connected to the end of the tube, will be elongated when the pressure increases.
pressure increase
pressure increase
position sensor
position sensor
pressure
pressure
a) Bourdon Tube Figure 14.22 Pressure Transducers
b) Baffle
continuous sensors - 14.22
These sensors are very common and have typical accuracies of 0.5%.
14.2.5.2 - Venturi Valves When a flowing fluid or gas passes through a narrow pipe section (neck) the pressure drops. If there is no flow the pressure before and after the neck will be the same. The faster the fluid flow, the greater the pressure difference before and after the neck. This is known as a Venturi valve. Figure 14.23 shows a Venturi valve being used to measure a fluid flow rate. The fluid flow rate will be proportional to the pressure difference before and at the neck (or after the neck) of the valve.
differential pressure transducer
fluid flow
Figure 14.23 A Venturi Valve
continuous sensors - 14.23
Aside: Bernoulli’s equation can be used to relate the pressure drop in a venturi valve. 2
v--p- + ---+ gz = C ρ 2 where,
p = pressure
ρ = density v = velocity g = gravitational constant z = height above a reference C = constant Consider the centerline of the fluid flow through the valve. Assume the fluid is incompressible, so the density does not change. And, assume that the center line of the valve does not change. This gives us a simpler equation, as shown below, that relates the velocity and pressure before and after it is compressed. 2 2 p before v before p after v after ---------------- + ------------------ + gz = C = ------------ + -------------- + gz ρ 2 ρ 2 2
2
p before v before p after v after --------------- + ------------------ = ----------- + -------------ρ 2 ρ 2 2
p before – p after
2
v after v before = ρ -------------- – ------------------ 2 2
The flow velocity v in the valve will be larger than the velocity in the larger pipe section before. So, the right hand side of the expression will be positive. This will mean that the pressure before will always be higher than the pressure after, and the difference will be proportional to the velocity squared.
Figure 14.24 The Pressure Relationship for a Venturi Valve Venturi valves allow pressures to be read without moving parts, which makes them very reliable and durable. They work well for both fluids and gases. It is also common to use Venturi valves to generate vacuums for actuators, such as suction cups.
14.2.5.3 - Coriolis Flow Meter Fluid passes through thin tubes, causing them to vibrate. As the fluid approaches the point of maximum vibration it accelerates. When leaving the point it decelerates. The
continuous sensors - 14.24
result is a distributed force that causes a bending moment, and hence twisting of the pipe. The amount of bending is proportional to the velocity of the fluid flow. These devices typically have a large constriction on the flow, and result is significant loses. Some of the devices also use bent tubes to increase the sensitivity, but this also increases the flow resistance. The typical accuracy for a Coriolis flowmeter is 0.1%.
14.2.5.4 - Magnetic Flow Meter A magnetic sensor applies a magnetic field perpendicular to the flow of a conductive fluid. As the fluid moves, the electrons in the fluid experience an electromotive force. The result is that a potential (voltage) can be measured perpendicular to the direction of the flow and the magnetic field. The higher the flow rate, the greater the voltage. The typical accuracy for these sensors is 0.5%. These flowmeters don’t oppose fluid flow, and so they don’t result in pressure drops.
14.2.5.5 - Ultrasonic Flow Meter A transmitter emits a high frequency sound at point on a tube. The signal must then pass through the fluid to a detector where it is picked up. If the fluid is flowing in the same direction as the sound it will arrive sooner. If the sound is against the flow it will take longer to arrive. In a transit time flow meter two sounds are used, one traveling forward, and the other in the opposite direction. The difference in travel time for the sounds is used to determine the flow velocity. A doppler flowmeter bounces a soundwave off particle in a flow. If the particle is moving away from the emitter and detector pair, then the detected frequency will be lowered, if it is moving towards them the frequency will be higher. The transmitter and receiver have a minimal impact on the fluid flow, and therefore don’t result in pressure drops.
14.2.5.6 - Vortex Flow Meter Fluid flowing past a large (typically flat) obstacle will shed vortices. The frequency of the vortices will be proportional to the flow rate. Measuring the frequency allows an estimate of the flow rate. These sensors tend be low cost and are popular for low accuracy applications.
continuous sensors - 14.25
14.2.5.7 - Positive Displacement Meters In some cases more precise readings of flow rates and volumes may be required. These can be obtained by using a positive displacement meter. In effect these meters are like pumps run in reverse. As the fluid is pushed through the meter it produces a measurable output, normally on a rotating shaft.
14.2.5.8 - Pitot Tubes Gas flow rates can be measured using Pitot tubes, as shown in Figure 14.25. These are small tubes that project into a flow. The diameter of the tube is small (typically less than 1/8") so that it doesn’t affect the flow.
gas flow
pitot tube connecting hose
pressure sensor
Figure 14.25 Pitot Tubes for Measuring Gas Flow Rates
14.2.6 Temperature Temperature measurements are very common with control systems. The temperature ranges are normally described with the following classifications. very low temperatures <-60 deg C - e.g. superconductors in MRI units low temperature measurement -60 to 0 deg C - e.g. freezer controls fine temperature measurements 0 to 100 deg C - e.g. environmental controls high temperature measurements <3000 deg F - e.g. metal refining/processing
continuous sensors - 14.26
very high temperatures > 2000 deg C - e.g. plasma systems
14.2.6.1 - Resistive Temperature Detectors (RTDs) When a metal wire is heated the resistance increases. So, a temperature can be measured using the resistance of a wire. Resistive Temperature Detectors (RTDs) normally use a wire or film of platinum, nickel, copper or nickel-iron alloys. The metals are wound or wrapped over an insulator, and covered for protection. The resistances of these alloys are shown in Figure 14.26.
Material
Temperature Range C (F)
Platinum -200 - 850 (-328 - 1562) Nickel -80 - 300 (-112 - 572) Copper -200 - 260 (-328 - 500) Figure 14.26 RTD Properties
Typical Resistance (ohms) 100 120 10
These devices have positive temperature coefficients that cause resistance to increase linearly with temperature. A platinum RTD might have a resistance of 100 ohms at 0C, that will increase by 0.4 ohms/°C. The total resistance of an RTD might double over the temperature range. A current must be passed through the RTD to measure the resistance. (Note: a voltage divider can be used to convert the resistance to a voltage.) The current through the RTD should be kept to a minimum to prevent self heating. These devices are more linear than thermocouples, and can have accuracies of 0.05%. But, they can be expensive
14.2.6.2 - Thermocouples Each metal has a natural potential level, and when two different metals touch there is a small potential difference, a voltage. (Note: when designing assemblies, dissimilar metals should not touch, this will lead to corrosion.) Thermocouples use a junction of dissimilar metals to generate a voltage proportional to temperature. This principle was discovered by T.J. Seebeck. The basic calculations for thermocouples are shown in Figure 14.27. This calculation provides the measured voltage using a reference temperature and a constant specific
continuous sensors - 14.27
to the device. The equation can also be rearranged to provide a temperature given a voltage.
+ - V out
measuring device
V out = α ( T – T ref ) V out ∴T = ---------- + T ref α where,
V 50 µ ------- (typical) °C T, T ref = current and reference temperatures
α = constant (V/C)
Figure 14.27 Thermocouple Calculations The list in Table 1 shows different junction types, and the normal temperature ranges. Both thermocouples, and signal conditioners are commonly available, and relatively inexpensive. For example, most PLC vendors sell thermocouple input cards that will allow multiple inputs into the PLC.
Table 1: Thermocouple Types ANSI Type
Materials
Temperature Range (°F)
Voltage Range (mV)
T
copper/constantan
-200 to 400
-5.60 to 17.82
J
iron/constantan
0 to 870
0 to 42.28
E
chromel/constantan
-200 to 900
-8.82 to 68.78
K
chromel/aluminum
-200 to 1250
-5.97 to 50.63
R
platinum-13%rhodium/platinum
0 to 1450
0 to 16.74
S
platinum-10%rhodium/platinum
0 to 1450
0 to 14.97
C
tungsten-5%rhenium/tungsten-26%rhenium
0 to 2760
0 to 37.07
continuous sensors - 14.28
mV 80
E
60
K J
C
40
20
T
R
S
0 0
500
1000
1500
2000
2500 (°F)
Figure 14.28 Thermocouple Temperature Voltage Relationships (Approximate) The junction where the thermocouple is connected to the measurement instrument is normally cooled to reduce the thermocouple effects at those junctions. When using a thermocouple for precision measurement, a second thermocouple can be kept at a known temperature for reference. A series of thermocouples connected together in series produces a higher voltage and is called a thermopile. Readings can approach an accuracy of 0.5%.
14.2.6.3 - Thermistors Thermistors are non-linear devices, their resistance will decrease with an increase in temperature. (Note: this is because the extra heat reduces electron mobility in the semiconductor.) The resistance can change by more than 1000 times. The basic calculation is shown in Figure 14.29. often metal oxide semiconductors The calculation uses a reference temperature and resistance, with a constant for the device, to predict the resistance at another temperature. The expression can be rearranged to calculate the temperature given the resistance.
continuous sensors - 14.29
Rt = Ro e
1 1 β --- – ----- T T o
βT o ∴T = --------------------------------Rt T o ln ------ + β R o where, Ro, R t = resistances at reference and measured temps. T o, T = reference and actual temperatures
β = constant for device
Figure 14.29 Thermistor Calculations
Aside: The circuit below can be used to convert the resistance of the thermistor to a voltage using a Wheatstone bridge and an inverting amplifier. +V R1
R3
R5
+ R2
R4
Figure 14.30 Thermistor Signal Conditioning Circuit
Vout
continuous sensors - 14.30
Thermistors are small, inexpensive devices that are often made as beads, or metallized surfaces. The devices respond quickly to temperature changes, and they have a higher resistance, so junction effects are not an issue. Typical accuracies are 1%, but the devices are not linear, have a limited temperature/resistance range and can be self heating.
14.2.6.4 - Other Sensors IC sensors are becoming more popular. They output a digital reading and can have accuracies better than 0.01%. But, they have limited temperature ranges, and require some knowledge of interfacing methods for serial or parallel data. Pyrometers are non-contact temperature measuring devices that use radiated heat. These are normally used for high temperature applications, or for production lines where it is not possible to mount other sensors to the material.
14.2.7 Light 14.2.7.1 - Light Dependant Resistors (LDR) Light dependant resistors (LDRs) change from high resistance (>Mohms) in bright light to low resistance (
continuous sensors - 14.31
Aside: an LDR can be used in a voltage divider to convert the change in resistance to a measurable voltage.
V high These are common in low cost night lights. V out
V low
Figure 14.31 A Light Level Detector Circuit
14.2.8 Chemical 14.2.8.1 - pH The pH of an ionic fluid can be measured over the range from a strong base (alkaline) with pH=14, to a neutral value, pH=7, to a strong acid, pH=0. These measurements are normally made with electrodes that are in direct contact with the fluids.
14.2.8.2 - Conductivity Conductivity of a material, often a liquid is often used to detect impurities. This can be measured directly be applying a voltage across two plates submerged in the liquid and measuring the current. High frequency inductive fields is another alternative.
continuous sensors - 14.32
14.2.9 Others A number of other detectors/sensors are listed below, Combustion - gases such as CO2 can be an indicator of combustion Humidity - normally in gases Dew Point - to determine when condensation will form
14.3 INPUT ISSUES Signals from sensors are often not in a form that can be directly input to a controller. In these cases it may be necessary to buy or build signal conditioners. Normally, a signal conditioner is an amplifier, but it may also include noise filters, and circuitry to convert from current to voltage. This section will discuss the electrical and electronic interfaces between sensors and controllers. Analog signal are prone to electrical noise problems. This is often caused by electromagnetic fields on the factory floor inducing currents in exposed conductors. Some of the techniques for dealing with electrical noise include; twisted pairs - the wires are twisted to reduce the noise induced by magnetic fields. shielding - shielding is used to reduce the effects of electromagnetic interference. single/double ended inputs - shared or isolated reference voltages (commons). When a signal is transmitted through a wire, it must return along another path. If the wires have an area between them the magnetic flux enclosed in the loop can induce current flow and voltages. If the wires are twisted, a few times per inch, then the amount of noise induced is reduced. This technique is common in signal wires and network cables. A shielded cable has a metal sheath, as shown in Figure 14.32. This sheath needs to be connected to the measuring device to allow induced currents to be passed to ground. This prevents electromagnetic waves to induce voltages in the signal wires.
continuous sensors - 14.33
A Shield is a metal sheath that surrounds the wires
Analog Input
Analog voltage source + -
IN1 REF1 SHLD
Figure 14.32 Cable Shielding When connecting analog voltage sources to a controller the common, or reference voltage can be connected different ways, as shown in Figure 14.33. The least expensive method uses one shared common for all analog signals, this is called single ended. The more accurate method is to use separate commons for each signal, this is called double ended. Most analog input cards allow a choice between one or the other. But, when double ended inputs are used the number of available inputs is halved. Most analog output cards are double ended.
continuous sensors - 14.34
device + #1 -
device + #1 -
Ain 0 Ain 1
device + #1 -
Ain 0 Ain 0
device + #1 -
Ain 2
Ain 1
Ain 3
Ain 1
Ain 4
Ain 2
Ain 5
Ain 2
Ain 6
Ain 3
Ain 7
Ain 3
COM Single ended - with this arrangement the signal quality can be poorer, but more inputs are available.
Double ended - with this arrangement the signal quality can be better, but fewer inputs are available.
Figure 14.33 Single and Double Ended Inputs Signals from transducers are typically too small to be read by a normal analog input card. Amplifiers are used to increase the magnitude of these signals. An example of a single ended signal amplifier is shown in Figure 14.34. The amplifier is in an inverting configuration, so the output will have an opposite sign from the input. Adjustments are provided for gain and offset adjustments.
Note: op-amps are used in this section to implement the amplifiers because they are inexpensive, common, and well suited to simple design and construction projects. When purchasing a commercial signal conditioner, the circuitry will be more complex, and include other circuitry for other factors such as temperature compensation.
continuous sensors - 14.35
+V offset
Ro
Rf
Rg
-V
Vin
gain +
Ri
Vout
Rf + Rg V out = ----------------- V in + offset Ri Figure 14.34 A Single Ended Signal Amplifier A differential amplifier with a current input is shown in Figure 14.35. Note that Rc converts a current to a voltage. The voltage is then amplified to a larger voltage.
R1 Iin
+
Rc R2
Rf
Vout R3
R4
Figure 14.35 A Current Amplifier
continuous sensors - 14.36
The circuit in Figure 14.36 will convert a differential (double ended) signal to a single ended signal. The two input op-amps are used as unity gain followers, to create a high input impedance. The following amplifier amplifies the voltage difference.
+
+
Vin
Vout + CMRR adjust
Figure 14.36 A Differential Input to Single Ended Output Amplifier The Wheatstone bridge can be used to convert a resistance to a voltage output, as shown in Figure 14.37. If the resistor values are all made the same (and close to the value of R3) then the equation can be simplified.
continuous sensors - 14.37
+V R1
R3
R5
+ R2
Vout
R4
R2 1 1 1 1 V out = V ( R 5 ) ------------------ ------ + ------ + ------ – ------ R 1 + R 2 R 3 R 4 R 5 R 3 or if R = R 1 = R 2 = R 4 = R 5 R V out = V --------- 2R 3 Figure 14.37 A Resistance to Voltage Amplifier
14.4 SENSOR GLOSSARY Ammeter - A meter to indicate electrical current. It is normally part of a DMM Bellows - This is a flexible volumed that will expand or contract with a pressure change. This often looks like a cylinder with a large radius (typ. 2") but it is very thin (type 1/4"). It can be set up so that when pressure changes, the displacement of one side can be measured to determine pressure. Bourdon tube - Widely used industrial gage to measure pressure and vacuum. It resembles a crescent moon. When the pressure inside changes the moon shape will tend to straighten out. By measuring the displacement of the tip the pressure can be measured. Chromatographic instruments - laboratory-type instruments used to analyze chemical compounds and gases. Inductance-coil pulse generator - transducer used to measure rotational speed. Out-
continuous sensors - 14.38
put is pulse train. Interferometers - These use the interference of light waves 180 degrees out of phase to determine distances. Typical sources of the monochromatic light required are lasers. Linear-Variable-Differential transformer (LVDT) electromechanical transducer used to measure angular or linear displacement. Output is Voltage Manometer - liquid column gage used widely in industry to measure pressure. Ohmmeter - meter to indicate electrical resistance Optical Pyrometer - device to measure temperature of an object at high temperatures by sensing the brightness of an objects surface. Orifice Plate - widely used flowmeter to indicate fluid flow rates Photometric Transducers - a class of transducers used to sense light, including phototubes, photodiodes, phototransistors, and photoconductors. Piezoelectric Accelerometer - Transducer used to measure vibration. Output is emf. Pitot Tube - Laboratory device used to measure flow. Positive displacement Flowmeter - Variety of transducers used to measure flow. Typical output is pulse train. Potentiometer - instrument used to measure voltage Pressure Transducers - A class of transducers used to measure pressure. Typical output is voltage. Operation of the transducer can be based on strain gages or other devices. Radiation pyrometer - device to measure temperature by sensing the thermal radiation emitted from the object. Resolver - this device is similar to an incremental encoder, except that it uses coils to generate magnetic fields. This is like a rotary transformer. Strain Gage - Widely used to indicate torque, force, pressure, and other variables. Output is change in resistance due to strain, which can be converted into voltage. Thermistor - Also called a resistance thermometer; an instrument used to measure temperature. Operation is based on change in resistance as a function of temperature. Thermocouple - widely used temperature transducer based on the Seebeck effect, in which a junction of two dissimilar metals emits emf related to temperature. Turbine Flowmeter - transducer to measure flow rate. Output is pulse train. Venturi Tube - device used to measure flow rates.
14.5 SUMMARY • Selection of continuous sensors must include issues such as accuracy and resolution. • Angular positions can be measured with potentiometers and encoders (more accurate). • Tachometers are useful for measuring angular velocity.
continuous sensors - 14.39
• Linear positions can be measured with potentiometers (limited accuracy), LVDTs (limited range), moire fringes (high accuracy). • Accelerometers measure acceleration of masses. • Strain gauges and piezoelectric elements measure force. • Pressure can be measured indirectly with bellows and Bourdon tubes. • Flow rates can be measured with Venturi valves and pitot tubes. • Temperatures can be measured with RTDs, thermocouples, and thermistors. • Input signals can be single ended for more inputs or double ended for more accuracy.
14.6 REFERENCES Bryan, L.A. and Bryan, E.A., Programmable Controllers; Theory and Implementation, Industrial Text Co., 1988. Swainston, F., A Systems Approach to Programmable Controllers, Delmar Publishers Inc., 1992.
14.7 PRACTICE PROBLEMS 1. Name two types of inputs that would be analog input values (versus a digital value). 2. Search the web for common sensor manufacturers for 5 different types of continuous sensors. If possible identify prices for the units. Sensor manufacturers include (hyde park, banner, allen bradley, omron, etc.) 3. What is the resolution of an absolute optical encoder that has six binary tracks? nine tracks? twelve tracks? 4. Suggest a couple of methods for collecting data on the factory floor 5. If a thermocouple generates a voltage of 30mV at 800F and 40mV at 1000F, what voltage will be generated at 1200F? 6. A potentiometer is to be used to measure the position of a rotating robot link (as a voltage divider). The power supply connected across the potentiometer is 5.0 V, and the total wiper travel is 300 degrees. The wiper arm is directly connected to the rotational joint so that a given rotation of the joint corresponds to an equal rotation of the wiper arm. a) If the joint is at 42 degrees, what voltage will be output from the potentiometer? b) If the joint has been moved, and the potentiometer output is 2.765V, what is the position of the potentiometer? 7. A motor has an encoder mounted on it. The motor is driving a reducing gear box with a 50:1
continuous sensors - 14.40
ratio. If the position of the geared down shaft needs to be positioned to 0.1 degrees, what is the minimum resolution of the incremental encoder? 8. What is the difference between a strain gauge and an accelerometer? How do they work? 9. Use the equations for a permanent magnet DC motor to explain how it can be used as a tachometer. 10. What are the trade-offs between encoders and potentiometers? 11. A potentiometer is connected to a PLC analog input card. The potentiometer can rotate 300 degrees, and the voltage supply for the potentiometer is +/-10V. Write a ladder logic program to read the voltage from the potentiometer and convert it to an angle in radians stored in F8:0.
14.8 PRACTICE PROBLEM SOLUTIONS 1. Temperature and displacement 2. Sensors can be found at www.ab.com, www.omron.com, etc 3. 360°/64steps, 360°/512steps, 360°/4096steps 4. data bucket, smart machines, PLCs with analog inputs and network connections 5. V out = α ( T – T ref )
0.030 = α ( 800 – T ref )
0.040 = α ( 1000 – T ref )
1000 – T ref 800 – T ref 1 --= ------------------------ = --------------------------0.030 0.040 α 800 – T ref = 750 – 0.75T ref 50 = 0.25T ref
T ref = 200F
V out = 0.00005 ( 1200 – 200 ) = 0.050V
0.040 50µV α = --------------------------- = ------------1000 – 200 F
continuous sensors - 14.41
6. a)
θw 42deg V out = ( V2 – V 1 ) ----------- + V 1 = ( 5V – 0V ) ------------------ + 0V = 0.7V θ max 300deg
b)
θw 2.765V = ( 5V – 0V ) ------------------ + 0V 300deg θw 2.765V = ( 5V – 0V ) ------------------ + 0V 300deg θ w = 165.9deg
7. deg θ output = 0.1 -------------count
θ input --------------- = 50 -----1 θ output
deg deg θ input = 50 0.1 -------------- = 5 ------------- count count
deg 360 --------rot count R = ------------------ = 72 -------------deg rot 5 -------------count 8. strain gauge measures strain in a material using a stretching wire that increases resistance - accelerometers measure acceleration with a cantilevered mass on a piezoelectric element. 9. R V = Ks ω
DMM
2
K K · ω + ω ------ = V s ------ JR JR · JR V s = ω ( K ) + ω ------ K
+ -
When the motor shaft is turned by another torque source a voltage is generated that is proportional to the angular velocity. This is the reverse emf. A dmm, or other high impedance instrument can be used to measure this, thus minizing the loses in resistor R.
continuous sensors - 14.42
10. encoders cost more but can have higher resolutions. Potentiometers have limited ranges of motion 11. FS
BT9:0/EN
BTW Rack: 0 Group: 0 Module: 0 BT Array: BT9:0 Data File: N7:0 Length: 37 Continuous: no BT9:1/EN
BT9:1/DN
BTR Rack: 0 Group: 0 Module: 0 BT Array: BT9:1 Data File: N7:37 Length: 20 Continuous: no CPT Dest F8:0 Expression "20.0 * N7:41 / 4095.0 - 10" CPT Dest F8:0 Expression "300.0 * (F8:0 + 10) / 20" RAD Source F8:0 Dest F8:1
14.9 ASSIGNMENT PROBLEMS 1. Write a simple C program to read incremental encoder inputs (A and B) to determine the current position of the encoder. Note: use the quadrature encoding to determine the position of the motor.
continuous sensors - 14.43
2. A high precision potentiometer has an accuracy of +/- 0.1% and can rotate 300degrees and is used as a voltage divider with a of 0V and 5V. The output voltage is being read by an A/D converter with a 0V to 10V input range. How many bits does the A/D converter need to accommodate the accuracy of the potentiometer? 3. The table of position and voltage values below were measured for an inexpensive potentiometer. Write a C subroutine that will accept a voltage value and interpolate the position value. theta (deg) V 0 67 145 195 213 296 315
0.1 0.6 1.6 2.4 3.4 4.2 5.0
continuous actuators - 15.1
15. CONTINUOUS ACTUATORS
Topics: • Servo Motors; AC and DC • Stepper motors • Single axis motion control • Hydraulic actuators
Objectives: • To understand the main differences between continuous actuators • Be able to select a continuous actuator • To be able to plan a motion for a single servo actuator
15.1 INTRODUCTION Continuous actuators allow a system to position or adjust outputs over a wide range of values. Even in their simplest form, continuous actuators tend to be mechanically complex devices. For example, a linear slide system might be composed of a motor with an electronic controller driving a mechanical slide with a ball screw. The cost for such actuators can easily be higher than for the control system itself. These actuators also require sophisticated control techniques that will be discussed in later chapters. In general, when there is a choice, it is better to use discrete actuators to reduce costs and complexity.
15.2 ELECTRIC MOTORS An electric motor is composed of a rotating center, called the rotor, and a stationary outside, called the stator. These motors use the attraction and repulsion of magnetic fields to induce forces, and hence motion. Typical electric motors use at least one electromagnetic coil, and sometimes permanent magnets to set up opposing fields. When a voltage is applied to these coils the result is a torque and rotation of an output shaft. There are a variety of motor configuration the yields motors suitable for different applications. Most notably, as the voltages supplied to the motors will vary the speeds and torques that they will provide.
continuous actuators - 15.2
• Motor Categories • AC motors - rotate with relatively constant speeds proportional to the frequency of the supply power induction motors - squirrel cage, wound rotor - inexpensive, efficient. synchronous - fixed speed, efficient • DC motors - have large torque and speed ranges permanent magnet - variable speed wound rotor and stator - series, shunt and compound (universal) • Hybrid brushless permanent magnet stepper motors • Contactors are used to switch motor power on/off • Drives can be used to vary motor speeds electrically. This can also be done with mechanical or hydraulic machines. • Popular drive categories • Variable Frequency Drives (VFD) - vary the frequency of the power delivered to the motor to vary speed. • DC motor controllers - variable voltage or current to vary the motor speed • Eddy Current Clutches for AC motors - low efficiency, uses a moving iron drum and windings • Wound rotor AC motor controllers - low efficiency, uses variable resistors to adjust the winding currents
A control system is required when a motor is used for an application that requires continuous position or velocity. A typical controller is shown in Figure 15.1. In any controlled system a command generator is required to specify a desired position. The controller will compare the feedback from the encoder to the desired position or velocity to determine the system error. The controller with then generate an output, based on the system error. The output is then passed through a power amplifier, which in turn drives the motor. The encoder is connected directly to the motor shaft to provide feedback of position.
continuous actuators - 15.3
command generator (e.g., PLC)
desired position or velocity voltage/ current
controller
Figure 15.1
amplified voltage/ current
power amp
encoder motor
A Typical Feedback Motor Controller
15.2.1 Basic Brushed DC Motors In a DC motor there is normally a set of coils on the rotor that turn inside a stator populated with permanent magnets. Figure 15.2 shows a simplified model of a motor. The magnetics provide a permanent magnetic field for the rotor to push against. When current is run through the wire loop it creates a magnetic field.
I I magnetic field
axis of rotation ω
continuous actuators - 15.4
Figure 15.2
A Simplified Rotor
The power is delivered to the rotor using a commutator and brushes, as shown in Figure 15.3. In the figure the power is supplied to the rotor through graphite brushes rubbing against the commutator. The commutator is split so that every half revolution the polarity of the voltage on the rotor, and the induced magnetic field reverses to push against the permanent magnets.
motor shaft
brushes
split commutator
Top
split commutator
Front
motor shaft
brushes V+
Figure 15.3
power supply
V-
A Split Ring Commutator
The direction of rotation will be determined by the polarity of the applied voltage, and the speed is proportional to the voltage. A feedback controller is used with these motors to provide motor positioning and velocity control. These motors are losing popularity to brushless motors. The brushes are subject to
continuous actuators - 15.5
wear, which increases maintenance costs. In addition, the use of brushes increases resistance, and lowers the motors efficiency.
ASIDE: The controller to drive a servo motor normally uses a Pulse Width Modulated (PWM) signal. As shown below the signal produces an effective voltage that is relative to the time that the signal is on. The percentage of time that the signal is on is called the duty cycle. When the voltage is on all the time the effective voltage delivered is the maximum voltage. So, if the voltage is only on half the time, the effective voltage is half the maximum voltage. This method is popular because it can produce a variable effective voltage efficiently. The frequency of these waves is normally above 20KHz, above the range of human hearing.
V max
50% duty cycle 50 Veff = --------- V max 100
0
t V max
20% duty cycle 20 Veff = --------- V max 100
0
t V max
100% duty cycle 100 Veff = --------- V max 100
0
t V max
0% duty cycle 0 Veff = --------- V max 100
0
t
Figure 15.4
Pulse Width Modulation (PWM) For Control
continuous actuators - 15.6
ASIDE: A PWM signal can be used to drive a motor with the circuit shown below. The PWM signal switches the NPN transistor, thus switching power to the motor. In this case the voltage polarity on the motor will always be the same direction, so the motor may only turn in one direction.
V+ V-
V+ signal source
DC motor com
Figure 15.5
PWM Unidirectional Motor Control Circuit
power supply
continuous actuators - 15.7
ASIDE: When a motor is to be controlled with PWM in two directions the H-bridge circuit (shown below) is a popular choice. These can be built with individual components, or purchased as integrated circuits for smaller motors. To turn the motor in one direction the PWM signal is applied to the Va inputs, while the Vb inputs are held low. In this arrangement the positive voltage is at the left side of the motor. To reverse the direction the PWM signal is applied to the Vb inputs, while the Va inputs are held low. This applies the positive voltage to the right side of the motor.
Figure 15.6
+Vs
Va
Vb
Vb
Va
-Vs
PWM Bidirectional Motor Control Circuit
15.2.2 AC Motors • Power is normally generated as 3-phase AC, so using this increases the efficiency of electrical drives. • In AC motors the AC current is used to create changing fields in the motor. • Typically AC motors have windings on the stator with multiple poles. Each pole is a pair of windings. As the AC current reverses, the magnetic field in the rotor appears to rotate.
continuous actuators - 15.8
L1
stator windings
rotor
Neut.
Figure 15.7
A 2 Pole Single Phase AC Motor
continuous actuators - 15.9
L2 L1
L3
Neut.
Neut. Neut.
Figure 15.8
A 6 Pole 3-Phase AC Motor
• The number of windings (poles) can be an integer multiple of the number of phases of power. More poles results in a lower rotation of the motor. • Rotor types for induction motors are listed below. Their function is to intersect changing magnetic fields from the stator. The changing field induces currents in the rotor. These currents in turn set up magnetic fields that oppose fields from the stator, generating a torque. Squirrel cage - has the shape of a wheel with end caps and bars Wound Rotor - the rotor has coils wound. These may be connected to external contacts via commutator • Induction motors require slip. If the motor turns at the precise speed of the stator field, it will not see a changing magnetic field. The result would be a collapse of the rotor magnetic field. As a result an induction motor always turns slightly slower than the stator field. The difference is called the slip. This is typically a few percent. As the motor is loaded the slip will increase until the motor stalls.
continuous actuators - 15.10
An induction motor has the windings on the stator. The rotor is normally a squirrel cage design. The squirrel cage is a cast aluminum core that when exposed to a changing magnetic field will set up an opposing field. When an AC voltage is applied to the stator coils an AC magnetic field is created, the squirrel cage sets up an opposing magnetic field and the resulting torque causes the motor to turn. The motor will turn at a frequency close to that of the applied voltage, but there is always some slip. It is possible to control the speed of the motor by controlling the frequency of the AC voltage. Synchronous motor drives control the speed of the motors by synthesizing a variable frequency AC waveform, as shown in Figure 15.9.
Controller
Figure 15.9
AC Motor Speed Control
These drives should be used for applications that only require a single rotational direction. The torque speed curve for a typical induction motor is shown in Figure 15.10. When the motor is used with a fixed frequency AC source the synchronous speed of the motor will be the frequency of AC voltage divided by the number of poles in the motor. The motor actually has the maximum torque below the synchronous speed. For example a motor 2 pole motor might have a synchronous speed of (2*60*60/2) 3600 RPM, but be rated for 3520 RPM. When a feedback controller is used the issue of slip becomes insignificant.
continuous actuators - 15.11
torque
operating range
synchronous speed speed
Figure 15.10 Torque Speed Curve for an Induction Motor
Class A
torque
speed torque Class B speed torque Class C speed torque Class D speed
Figure 15.11 NEMA Squirrel Cage Torque Speed Curves
continuous actuators - 15.12
• Wound rotor induction motors use external resistors. varying the resistance allows the motors torque speed curve to vary. As the resistance value is increased the motor torque speed curve shifts from the Class A to Class D shapes. • The figure below shows the relationship between the motor speed and applied power, slip, and number of poles. An ideal motor with no load would have a slip of 0%.
f120 S RPM = ----------- 1 – -------------- p 100% where,
f = power frequency (60Hz typ.) p = number of poles (2, 4, 6, etc...) RPM = motor speed in rotations per minute S = motor slip
• Single phase AC motors can run in either direction. To compensate for this a shading pole is used on the stator windings. It basically acts as an inductor to one side of the field which slows the filed buildup and collapse. The result is that the field strength seems to naturally rotate. • Thermal protection is normally used in motors to prevent overheating. • Universal motors were presented earlier for DC applications, but they can also be used for AC power sources. This is because the field polarity in the rotor and stator both reverse as the AC current reverses. • Synchronous motors are different from induction motors in that they are designed to rotate at the frequency of the fields, in other words there is no slip. • Synchronous motors use generated fields in the rotor to oppose the stators field. • Starting AC motors can be hard because of the low torque at low speeds. To deal with this a switching arrangement is often used. At low speeds other coils or capacitors are connected into the circuits. At higher speeds centrifugal switches disconnect these and the motor behavior switches.
continuous actuators - 15.13
• Single phase induction motors are typically used for loads under 1HP. Various types (based upon their starting and running modes) are, - split phase - there are two windings on the motor. A starting winding is used to provide torque at lower speeds. - capacitor run - capacitor start - capacitor start and run - shaded pole - these motors use a small offset coil (such as a single copper winding) to encourage the field buildup to occur asymmetrically. These motors are for low torque applications much less than 1HP. - universal motors (also used with DC) have a wound rotor and stator that are connected in series.
continuous actuators - 15.14
Split Winding
Vin
running winding
squirrel cage rotor starting winding
starting capacitor Capacitor Start
Vin
running winding
squirrel cage rotor starting winding
capacitor Capacitor Run
Vin
running winding
squirrel cage rotor capacitor winding
Figure 15.12 Single Phase Motor Configurations
continuous actuators - 15.15
running capacitor Capacitor Start and Capacitor Run Motor
Vin
running winding
starting capacitor
squirrel cage rotor starting winding
Figure 15.13 Single Phase Motor Configurations
15.2.3 Brushless DC Motors Brushless motors use a permanent magnet on the rotor, and use windings on the stator. Therefore there is no need to use brushes and a commutator to switch the polarity of the voltage on the coil. The lack of brushes means that these motors require less maintenance than the brushed DC motors. A typical Brushless DC motor could have three poles, each corresponding to one power input, as shown in Figure 15.14. Each of coils is separately controlled. The coils are switched on to attract or repel the permanent magnet rotor.
continuous actuators - 15.16
V1
V2
N
S
V3
Figure 15.14 A Brushless DC Motor To continuously rotate these motors the current in the stator coils must alternate continuously. If the power supplied to the coils was a 3-phase AC sinusoidal waveform, the motor will rotate continuously. The applied voltage can also be trapezoidal, which will give a similar effect. The changing waveforms are controller using position feedback from the motor to select switching times. The speed of the motor is proportional to the frequency of the signal. A typical torque speed curve for a brushless motor is shown in Figure 15.15.
continuous actuators - 15.17
torque
speed
Figure 15.15 Torque Speed Curve for a Brushless DC Motor
15.2.4 Stepper Motors Stepper motors are designed for positioning. They move one step at a time with a typical step size of 1.8 degrees giving 200 steps per revolution. Other motors are designed for step sizes of 1.8, 2.0, 2.5, 5, 15 and 30 degrees. There are two basic types of stepper motors, unipolar and bipolar, as shown in Figure 15.16. The unipolar uses center tapped windings and can use a single power supply. The bipolar motor is simpler but requires a positive and negative supply and more complex switching circuitry.
1 a
b
1a
1b
a
b
2a
2b
unipolar
2
bipolar
continuous actuators - 15.18
Figure 15.16 Unipolar and Bipolar Stepper Motor Windings The motors are turned by applying different voltages at the motor terminals. The voltage change patterns for a unipolar motor are shown in Figure 15.17. For example, when the motor is turned on we might apply the voltages as shown in line 1. To rotate the motor we would then output the voltages on line 2, then 3, then 4, then 1, etc. Reversing the sequence causes the motor to turn in the opposite direction. The dynamics of the motor and load limit the maximum speed of switching, this is normally a few thousand steps per second. When not turning the output voltages are held to keep the motor in position.
1a controller
2a 1b 2b
stepper motor
Step
1a
2a
1b
2b
1 2 3 4
1 0 0 1
0 1 1 0
1 1 0 0
0 0 1 1
To turn the motor the phases are stepped through 1, 2, 3, 4, and then back to 1. To reverse the direction of the motor the sequence of steps can be reversed, eg. 4, 3, 2, 1, 4, ..... If a set of outputs is kept on constantly the motor will be held in position.
Figure 15.17 Stepper Motor Control Sequence for a Unipolar Motor Stepper motors do not require feedback except when used in high reliability applications and when the dynamic conditions could lead to slip. A stepper motor slips when the holding torque is overcome, or it is accelerated too fast. When the motor slips it will move a number of degrees from the current position. The slip cannot be detected without position feedback. Stepper motors are relatively weak compared to other motor types. The torque speed curve for the motors is shown in Figure 15.18. In addition they have different static and dynamic holding torques. These motors are also prone to resonant conditions because of the stepped motion control.
continuous actuators - 15.19
torque
speed
Figure 15.18 Stepper Motor Torque Speed Curve The motors are used with controllers that perform many of the basic control functions. At the minimum a translator controller will take care of switching the coil voltages. A more sophisticated indexing controller will accept motion parameters, such as distance, and convert them to individual steps. Other types of controllers also provide finer step resolutions with a process known as microstepping. This effectively divides the logical steps described in Figure 15.17 and converts them to sinusoidal steps. translators - the user indicates maximum velocity and acceleration and a distance to move indexer - the user indicates direction and number of steps to take microstepping - each step is subdivided into smaller steps to give more resolution
15.2.5 Wound Field Motors • Uses DC power on the rotor and stator to generate the magnetic field (i.e., no permanent magnets) • Shunt motors - have the rotor and stator coils connected in parallel. - when the load on these motors is reduced the current flow increases slightly, increasing the field, and slowing the motor. - these motors have a relatively small variation in speed as they are varied, and are considered to have a relatively constant speed. - the speed of the motor can be controlled by changing the supply voltage, or by putting a rheostat/resistor in series with the stator windings.
continuous actuators - 15.20
Va I a = -----Ra T = Kt Ia φ where, I a, V a, R a = Armature current, voltage and resistance T = Torque on motor shaft K t = Motor speed constant
φ = motor field flux
ω
operating range
T
• Series motors\ - have the rotor and stator coils connected in series. - as the motor speed increases the current increases, the motor can theoreti-
continuous actuators - 15.21
cally accelerate to infinite speeds if unloaded. This makes the dangerous when used in applications where they are potentially unloaded. - these motors typically have greater starting torques that shunt motors
Va I a = ----------------Ra + Rf 2
T = Kt Ia φ = Kt Ia where, I a, V a = Armature current, voltage R a, R f = Armature and field coil resistance T = Torque on motor shaft K t = Motor speed constant
φ = motor field flux
ω
stall torque
T
continuous actuators - 15.22
The XXXXXXX
e f = r a i a + Dla i a + e m e m = K e θD T = KT ia e a = ( r a + l a D )i a + K e Dθ T e a = ( r a + l a D ) ------ + K e Dθ K T Figure 15.19 Equations for an armature controlled DC motor • Compound motors\ - have the rotor and stator coils connected in series. - differential compound motors have the shunt and series winding field aligned so that they oppose each other. - cumulative compound motors have the shunt and series winding fields aligned so that they add ω
cumulative differential
T
continuous actuators - 15.23
ef = rf if + l f if D T = KT if T --- = JD 2 + BD θ 1 --θ- = ----------------------2 T JD + BD KT θ --- = --θ- T --- = ----------------------2 if T if JD + BD KT 1 θ θi ---- = --- ----f = ----------------------- -----------------ef if ef JD 2 + BD r f + l f D i T 1 - ---- = T --- ----f = K T ---------------- r f + l f D ef if ef
Figure 15.20 Equations for a controlled field motor
15.3 HYDRAULICS Hydraulic systems are used in applications requiring a large amount of force and slow speeds. When used for continuous actuation they are mainly used with position feedback. An example system is shown in Figure 15.21. The controller examines the position of the hydraulic system, and drivers a servo valve. This controls the flow of fluid to the actuator. The remainder of the provides the hydraulic power to drive the system.
continuous actuators - 15.24
valve
controller
position sensor
hydraulic power supply
position hydraulic actuator
sump
Figure 15.21 Hydraulic Servo System The valve used in a hydraulic system is typically a solenoid controlled valve that is simply opened or closed. Newer, more expensive, valve designs use a scheme like pulse with modulation (PWM) which open/close the valve quickly to adjust the flow rate.
15.4 OTHER SYSTEMS The continuous actuators discussed earlier in the chapter are the more common types. For the purposes of completeness additional actuators are listed and described briefly below. Heaters - to control a heater with a continuous temperature a PWM scheme can be used to limit a DC voltage, or an SCR can be used to supply part of an AC waveform. Pneumatics - air controlled systems can be used for positioning with suitable feedback. Velocities can also be controlled using fast acting valves. Linear Motors - a linear motor works on the same principles as a normal rotary motor. The primary difference is that they have a limited travel and their cost is typically much higher than other linear actuators. Ball Screws - rotation is converted to linear motion using balls screws. These are low friction screws that drive nuts filled with ball bearings. These are normally used with slides to bear mechanical loads.
continuous actuators - 15.25
15.5 SUMMARY • AC motors work at higher speeds • DC motors work over a range of speeds • Motion control introduces velocity and acceleration limits to servo control • Hydraulics make positioning easy
15.6 PRACTICE PROBLEMS 1. A stepping motor is to be used to drive each of the three linear axes of a cartesian coordinate robot. The motor output shaft will be connected to a screw thread with a screw pitch of 0.125”. It is desired that the control resolution of each of the axes be 0.025” a) to achieve this control resolution how many step angles are required on the stepper motor? b) What is the corresponding step angle? c) Determine the pulse rate that will be required to drive a given joint at a velocity of 3.0”/sec. 2. For the stepper motor in the previous question, a pulse train is to be generated by the robot controller. a) How many pulses are required to rotate the motor through three complete revolutions? b) If it is desired to rotate the motor at a speed of 25 rev/min, what pulse rate must be generated by the robot controller? 3. Explain the differences between stepper motors, variable frequency induction motors and DC motors using tables.
continuous actuators - 15.26
15.7 PRACTICE PROBLEM SOLUTIONS 1. a)
in P = 0.125 ------- rot
in R = 0.025 ---------step
in 0.025 ---------R step rot θ = --- = --------------------------- = 0.2 ---------P step in 0.125 ------- rot b) c)
Thus
1 step -----------------= 5 ---------rot rot 0.2 ---------step
rot deg θ = 0.2 ---------- = 72 ---------step step in 3 ----s steps PPS = ------------------------ = 120 ------------in s 0.025 ---------step
2. a)
step pulses = ( 3rot ) 5 ---------- = 15steps rot
b)
pulses rot- step steps 1min steps step ---------------- = 25 -------5 ---------- = 125 ------------- = 125 ------------- ------------- = 2.08 --------- s min rot min 60s min s
3.
stepper motor
speed very low speeds
torque low torque
vfd
limited speed range
good at rated speed
dc motor
wide range
decreases at higher speeds
15.8 ASSIGNMENT PROBLEMS 1. A stepper motor is to be used to actuate one joint of a robot arm in a light duty pick and place application. The step angle of the motor is 10 degrees. For each pulse received from the pulse train source the motor rotates through a distance of one step angle. a) What is the resolution of the stepper motor? b) Relate this value to the definitions of control resolution, spatial resolution, and accuracy, as discussed in class. c) For the stepper motor, a pulse train is to be generated by a motion controller.
continuous actuators - 15.27
How many pulses are required to rotate the motor through three complete revolutions? If it is desired to rotate the motor at a speed of 25 rev/min, what pulse rate must be generated by the robot controller? 2. Describe the voltage ripple that would occur when using a permanent magnet DC motor as a tachometer. Hint: consider the use of the commutator to switch the polarity of the coil. 3. Compare the advantages/disadvantages of DC permanent magnet motors and AC induction motors.
multiaxis motion - 16.1
16. MOTION CONTROL
Topics: • Motion controllers • Motion profiles, trapezoidal and smooth • Gain schedulers Objectives: • To understand single and multi axis motion control systems.
16.1 INTRODUCTION A system with a feedback controller will attempt to drive the system to a state described by the desired input, such as a velocity. In earlier chapters we simply chose step inputs, ramp inputs and other simple inputs to determine the system response. In practical applications this setpoint needs to be generated automatically. A simple motion control system is used to generate setpoints over time. An example of a motion control system is shown in Figure 16.1. The motion controller will accept commands or other inputs to generate a motion profile using parameters such as distance to move, maximum acceleration and maximum velocity. The motion profile is then used to generate a set of setpoints, and times they should be output. The setpoint scheduler will then use a real-time clock to output these setpoints to the motor drive.
multiaxis motion - 16.2
motion controller Motor
motion commands
Setpoint Generator
Servo Drive
Setpoint Scheduler
setpoint schedule motion profile
ω 0.4 t 0
0.2
Figure 16.1
0.6
0.8
t (s)
setpoint
0 0.1 0.2 0.3 0.4 .....
0.0 0.2 0.4 0.4 0.4 ....
A motion controller
The combination of a motion controller, drive and actuator is called an axis. When there is more than one drive and actuator the system is said to have multiple axes. Complex motion control systems such as computer controlled milling machines (CNC) and robots have 3 to 6 axes which must be moved in coordination.
16.2 MOTION PROFILES
16.2.1 Velocity Profiles A simple example of a velocity profile for a point-to-point motion is shown in Figure 16.2. In this example the motion starts at 20 deg and ends at 100 deg. (Note: in motion controllers it is more common to used encoder pulses, instead of degrees, for positions velocities, etc.) For position control we want a motion that has a velocity of zero at the start and end of the motion, and accelerates and decelerates smoothly.
multiaxis motion - 16.3
θ ( deg ) 100
20
t (s)
Figure 16.2
An example of a desired motion (position)
A trapezoidal velocity profile is shown in Figure 16.3. The area under the curve is the total distance moved. The slope of the initial and final ramp are the maximum acceleration and deceleration. The top level of the trapezoid is the maximum velocity. Some controllers allow the user to use the acceleration and deceleration times instead of the maximum acceleration and deceleration. This profile gives a continuous acceleration, but there will be a jerk (third order derivative) at the four sharp corners.
ω ( deg ) ω max – α max
α max
t (s) 0 0 where,
t acc
t max
t dec
t total
ω max = the maximum velocity
α max = the maximum acceleration t acc, t dec = the acceleration and deceleration times t max = the times at the maximum velocity t total = the total motion time Figure 16.3
An example of a velocity profile
multiaxis motion - 16.4
The basic relationships for these variables are shown in Figure 16.4. The equations can be used to find the acceleration and deceleration times. These equations can also be used to find the time at the maximum velocity. If this time is negative it indicates that the axis will not reach the maximum velocity, and the acceleration and deceleration times must be decreased. The resulting velocity profile will be a triangle.
ω max t acc = t dec = -----------α max
(1)
t total = t acc + t max + t dec
(2)
t acc t dec 1 1 θ = --- t acc ω max + t max ω max + --- t dec ω max = ω max -------- + t max + -------- 2 2 2 2 t acc t dec θ t max = ------------ – ----------- – ----------ω max 2 2
(3) (4)
Note: if the time calculated in equation 4 is negative then the axis never reaches maximum velocity, and the velocity profile becomes a triangle.
Figure 16.4
Velocity profile basic relationships
For the example in Figure 16.5 the move starts at 100deg and ends at 20 deg. The acceleration and decelerations are completed in half a second. The system moves for 7.5 seconds at the maximum velocity.
multiaxis motion - 16.5
Given,
θ start = 100deg
θ end = 20deg
deg ω max = 10 --------s
degα max = 20 -------2 s
The times can be calculated as, t acc = t dec
deg 10 --------ω max s = ------------ = --------------- = 0.5s α max deg20 -------2 s
θ = θ end – θ start = 20deg – 100deg = – 80deg t acc t dec θ 80deg 0.5s 0.5s - – ---------- = --------------t max = ------------ – ---------– ---------- – ---------- = 7.5s ω max 2 2 deg 2 2 10 --------s t total = t acc + t max + t dec = 0.5s + 7.5s + 0.5s = 8.5s
Figure 16.5
Velocity profile example
The motion example in Figure 16.6 is so short the axis never reaches the maximum velocity. This is made obvious by the negative time at maximum velocity. In place of this the acceleration and deceleration times can be calculated by using the basic acceleration position relationship. The result in this example is a motion that accelerates for 0.316s and then decelerates for the same time.
multiaxis motion - 16.6
Given,
θ start = 20deg
θ end = 22deg
deg ω max = 10 --------s
degα max = 20 -------2 s
The times can be calculated as, deg 10 --------ω max s t acc = t dec = ------------ = --------------- = 0.5s α max deg20 -------2 s θ = θ end – θ start = 22deg – 20deg = 2deg t acc t dec θ 2deg 0.5s 0.5s t max = ------------ – ----------- – ----------- = --------------- – ---------- – ---------- = – 0.3 s ω max 2 2 deg 2 2 10 --------s The time was negative so the acceleration and deceleration times become, θ --- = 1--- α max t 2acc 2 2 t acc =
θ - = ----------αmax
2deg = --------------deg20 -------2 s
2
0.1s = 0.316s
t max = 0s
Figure 16.6
Velocity profile example without reaching maximum velocity
Given the parameters calculated for the motion, the setpoints for motion can be calculated with the equations in Figure 16.7.
multiaxis motion - 16.7
Assuming the motion starts at 0s, 0s ≤ t < t acc 1 2 θ ( t ) = --- α max t + θ start 2 t acc ≤ t < t acc + t max 1 2 θ ( t ) = --- α max t acc + ω max ( t – t acc ) + θ start 2 t acc + t max ≤ t < t acc + t max + t dec 1 1 2 2 θ ( t ) = --- α max t acc + ω max t max + --- α max ( t – t max – t acc ) + θ start 2 2 t acc + t max + t dec ≤ t θ ( t ) = θ end
Figure 16.7
Generating points given motion parameters
A subroutine that implements these is shown in Figure 16.8. In this subroutine the time is looped with fixed time steps. The position setpoint values are put into the setpoint array, which will then be used elsewhere to guide the mechanism.
multiaxis motion - 16.8
void generate_setpoint_table( double t_acc, double t_max, double t_step, double vel_max, double acc_max, double theta_start, double theta_end, double setpoint[], int *count){ double t, t_1, t_2, t_total; t_1 = t_acc; t_2 = t_acc + t_max; t_total = t_acc + t_max + t_acc; *count = 0; for(t = 0.0; t <= t_total; t += t_step){ if( t < t_1){ setpoint[*count] = 0.5*acc_max*t*t + theta_start; } else if ( (t >= t_1) && (t < t_2)){ setpoint[*count] = 0.5*acc_max*t_acc*t_acc + vel_max*(t - t_1) + theta_start; } else if ( (t >= t_2) && (t < t_total)){ setpoint[*count] = 0.5*acc_max*t_acc*t_acc + vel_max*(t_max) + 0.5*acc_max*(t-t_2)*(t-t_2) + theta_start; } else { setpoint[*count] = theta_end; } *count++; } setpoint[*count] = theta_end; *count++; }
Figure 16.8
Subroutine for calculating motion setpoints
In some cases the jerk should be minimized. This can be achieved by replacing the acceleration ramps with a smooth polynomial, as shown in Figure 16.9. In this case two quadratic polynomials will be used for the acceleration, and another two for the deceleration.
multiaxis motion - 16.9
2
ω ( t ) = At + Bt + C
ω ( deg ) ω max α max
– α max t (s)
0 0 where,
t acc
t max
t dec
t total
ω max = the maximum velocity
α max = the maximum acceleration t acc, t dec = the acceleration and deceleration times t max = the times at the maximum velocity t total = the total motion time Figure 16.9
A smooth velocity profile
An example of calculating the polynomial coefficients is given in Figure 16.10. The curve found is for the first half of the acceleration. It can then be used for the three other required curves.
multiaxis motion - 16.10
Given,
θ start
θ end
α max
ω max
The constraints for the polynomial are, t acc ω max ω( 0) = 0 ω -------- = ----------- 2 2 t d d- ------acc ----- ω ( 0 ) = 0 ---- = α max ω dt dt 2 These can be used to calculate the polynomial coefficients, 2
∴C = 0 ∴B = 0
0 = A0 + B0 + C 0 = 2A0 + B ω max = At acc
ω max A = -----------2t acc
2
α max A = -----------2t acc
α max = 2At acc ω max α max - = ----------A = ----------2 2t acc t acc
2ω max t acc = -------------αmax 2
α max α max α max A = ------------ = ------------------------ = --------------2ω max 2t acc 4ω max 2 --------------- α max The equation for the first segment is, 2
α max 2 ω ( t ) = --------------- t 4ω max
t acc 0 ≤ t < -------2
The equation for the second segment can be found using the first segment, 2
α max 2 ω ( t ) = ω max – --------------- ( t acc – t ) 4ω max 2
α max 2 2 ω ( t ) = ω max – --------------- ( t – 2t acc t + t acc ) 4ω max
Figure 16.10 A smooth velocity profile example
t acc ------- ≤ t < t acc 2
multiaxis motion - 16.11
The distance covered during acceleration, the area under the curves, is, θ acc =
t acc -------2
∫0
2
2
t acc α max 2 α max 2 -------------- t dt + ∫ ω max – -------------- ( t – 2t acc t + t 2acc ) dt tacc 4ω max 4ω max --------
2
θ acc
2
acc
3
α max 3 = ------------------ t 12ω max 2
t acc -------2
0
2
2
α max t 3 2 2 + ω max t – --------------- ---- – t acc t + t acc t 4ω max 3
t acc
t acc ------2 2 3 3 α max t acc t acc
3
3
α max t acc αmax t acc 3 t acc t acc - -------- + ω max t acc – -------------- -------- – t acc + t 3acc – ω max ------- + --------------- -------- – -------- + ------- = ----------------12ω max 8 4ω max 3 2 4ω max 24 4 2 2
2
2
θ acc
7α max 3 αmax 3 ω max t acc α max 3 = ------------------ t acc + --------------------- – ------------------ t acc – ------------------ t acc 96ω max 2 12ω max 96ω max
θ acc
– 14αmax 3 ω max t acc = --------------------- t acc + --------------------96ω max 2
2
so the time required at the maximum velocity is, ( θ – 2θ acc ) t max = --------------------------ω max
Figure 16.11 A smooth velocity profile example (cont’d)
16.2.2 Position Profiles A motion can be described using position points along a path. These methods are normally used when a controller does not have any velocity or acceleration limits. The method shown in Figure 16.12 controls motion using a parametric function ’p(u)’. The function value varies from 0 to 1 as the parameter ’u’ varies from 0 to 1. However, the parameters of the function are selected so that the motion starts and stops with a velocity of zero. In this case the final polynomial equation, (3), is fairly simple. This equation can then be used in equation (1) to generate a smooth motion path between any arbitrary start
multiaxis motion - 16.12
and end point, with arbitrary start and end times. t – t start θ ( t ) = θ start + ( θ end – θstart )p -------------------------- t end – t start
(1)
where, θ start, θ end = start and end positions of motion t start, t end = start and end times for the motion 3
2
p ( u ) = Au + Bu + Cu + D
(2)
The constraints for the polynomial are, p(0 ) = 0
p(1 ) = 1
d---p(0) = 0 dt
d---p(1 ) = 0 dt
These can be used to calculate the polynomial coefficients, 3
2
0 = A0 + B0 + C0 + D
∴D = 0
2
∴C = 0
2
3 ∴B = – --- A 2
0 = 3A0 + 2B0 + C 0 = 3A1 + 2B1 3
2
1 = A1 + B1 + ( 0 )0 + 0
∴A = – 2 ∴B = 3
3
p ( u ) = – 2 u + 3u
2
(3)
Figure 16.12 Generating smooth motion paths The example in Figure 16.13 shows the use of a trigonometric function, instead of a polynomial. This function was used to generate the points in the following sample program in Figure 16.14.
multiaxis motion - 16.13
where, p ( u ) = A sin ( Bt + C ) + D The coefficients can be calculated using the conditions used previously, d---p ( 0 ) = AB cos ( B ( 0 ) + C ) = 0 dt π ∴C = – --∴ cos ( C ) = 0 2 d---p ( 1 ) = AB cos ( B ( 1 ) + C ) = 0 dt ∴ cos ( B + C ) = 0 π ∴B + C = --2 π p ( 0 ) = A sin B ( 0 ) – --- + D = 0 2 π p ( 1 ) = A sin π ( 1 ) – --- + D = 1 2 ∴A ( 1 ) + A = 1
∴B = π ∴A = D
1 ∴A = --2
The final relationship is, 1 π 1 p ( u ) = --- sin πt – --- + --2 2 2
Figure 16.13 Generating smooth motion paths The program in Figure 16.14 generates a motion table that can then be used to update setpoints. The function ’table_init()’ must be called once when the program starts to set up global time and table values. When a new target position has been specified the ’table_generate()’ function is called to generate the setpoint table. The ’table_update()’ function is called once every interrupt scan to check the setpoint table, and update the global setpoint variable, ’point_current’ at scheduled times. This function also includes a simple clock to keep track of the system time.
multiaxis motion - 16.14
#define int int int int int
TABLE_SIZE 11 point_master[TABLE_SIZE] = {0, 24, 95, 206, 345, 500, 655, 794, 905, 976, 1000}; point_position[TABLE_SIZE]; point_time[TABLE_SIZE]; point_start_time; point_index;
int int
ticks; /* variables to keep a system clock count */ point_current; /* a global variable to track position */
int table_init(){ /* initialize the setpoint table */ ticks = 0; /* set the clock to zero */ point_current = 0; /* start the system at zero */ point_index = TABLE_SIZE; /* mark the table as empty */ }
void table_generate(int start, int end, int duration_sec){ unsigned i; point_time[0] = ticks + 10; /* delay the start slightly */ point_position[0] = start; for(i = 1; i < TABLE_SIZE; i++){ point_time[i] = point_time[0] + (unsigned long)i * duration_sec * 250 / (TABLE_SIZE - 1); point_position[i] = start + (long int)(end - start) * point_master[i] / 1000; } point_index = 0; } int table_update(){/* interrupt driven encoder update */ ticks++; /* update the clock */ if(point_index < TABLE_SIZE){ if(point_time[point_index] == ticks){ point_current = point_position[point_index++]; outint16(point_current); putch("\n"); } } return point_current; }
Figure 16.14 Subroutines for motion profile generation and use
16.3 MULTI AXIS MOTION In a machine with multiple axes the motions of individual axes must often be coordinated. A simple example would be a robot that needs to move two joints to reach a new position. We could extend the motion of the slower joints so that the motion of each joint would begin and end together.
multiaxis motion - 16.15
16.3.1 Slew Motion When the individual axis of a machine are not coordinated this is known as slew motion. Each of the axes will start moving at the same time, but finish at separate times. Consider the example in Figure 16.15. A three axis motion is required from the starting angles of (40, 80, -40)deg, and must end at (120, 0, 0)deg. The maximum absolute accelerations and decelerations are (50, 100, 150) degrees/sec/sec, and the maximum velocities are (20, 40, 50) degrees/sec.
Joint angle (degrees) 180 90 time(sec) θ3 -90
θ2
θ1
Joint velocity (degrees/sec) ω max
– α max
t acc
t max
t dec
Figure 16.15 Multi-axis slew motion The calculations for the motion parameters are shown in Figure 16.16. These are done in vector format for simplicity. All of the joints reach the maximum acceleration. The fastest motion is complete in 1.13s, while the longest motion takes 4.4s.
multiaxis motion - 16.16
The area under the velocity curve is the distance (angle in this case) travelled. First we can determine the distance covered during acceleration, and deceleration and the time during acceleration, and deceleration. ω max 20 40 50 t acc = t dec = ------------ = ------, ---------, --------- = ( 0.4, 0.4, 0.333 )sec. 50 100 150 αmax t acc ω max.vel. 0.4 ( 20 ) 0.4 ( 40 ) 0.333 ( 50 ) θ acc. = θ dec. = ---------------------------- = ------------------, ------------------, ------------------------ = ( 4, 8, 8.33 )deg. 2 2 2 2 The next step is to examine the moves specified, θ move = θ end – θ start = ( 120 – 40, 0 – 80, 0 – ( – 40 ) ) = ( 80, – 80, 40 )deg. Remove the angles covered during accel./deccel., and find the travel time at maximum velocity. θ move – 2θ acc 80 – 2 ( 4 ) 80 – 2 ( 8 ) 40 – 2 ( 8.333 ) t max = ----------------------------------- = -----------------------, -----------------------, --------------------------------- ω max 20 40 50 t max = ( 3.6, 1.6, 0.46668 )sec. t total = t acc + t max + t dec = ( 4.4, 2.4, 1.13 )s
Figure 16.16 Calculated times for the slew motion
16.3.1.1 - Interpolated Motion In interpolated motion the faster joints are slowed so that they finish in coordination with the slowest. This is essential in devices such as CNC milling machines. If this did not occur a straight line cut in the x-y plane would actually be two straight lines. The slew motion example can be extended to be slew motion where all joints finish their motion at 4.4s. This can be done by accelerating at the maximum acceleration, but setting a new maximum velocity. This is shown in the example in Figure 16.17 using the results from the example in Figure 16.16.
multiaxis motion - 16.17
The longest motion time is 4.4s for joint 1, and this can be used to prolong the other motions. The calculation begins by rewriting the velocity/position relationship using a new maximum velocity. ω max' 1 ω max' 1 ω max' ∆θ = --- ------------- ω max' + t total – 2 ------------- ω max' + --- ------------- ω max' 2 α max α max 2 α max ω max' ∴∆ θ = ω max' t total – ------------- α max 2
∴( ω max' ) + ω max' ( – t total α max ) + ∆θα max = 0 2
2
t total α max ± t total α max – 4∆θαmax ∴ω max' = -------------------------------------------------------------------------------------2 ω max' t acc' = t acc' = ------------α max A new maximum velocity can be calculated for joint 2 using this equation. 2
2
4.4 ( 100 ) ± ( 4.4 ) ( 100 ) – 4 ( 80 ) ( 100 ) ∴ω max' = -------------------------------------------------------------------------------------------------2 440 ± 401.99502 ∴ω max' = ---------------------------------------- = 421, 19.0 2 19.0 t acc' = t acc' = ---------- = 0.19s 100 A new maximum velocity can be calculated for joint 3 using this equation. 2
2
4.4 ( 150 ) ± ( 4.4 ) ( 150 ) – 4 ( 40 ) ( 150 ) ∴ω max' = -------------------------------------------------------------------------------------------------2 ∴ω max' = 651, 9.22 9.22 t acc' = t acc' = ---------- = 0.092s 100
Figure 16.17 Interpolated motion based upon Figure 16.16
16.3.2 Motion Scheduling After the setpoint schedule has been developed, it is executed by the setpoint scheduler. The setpoint scheduler will use a clock to determine when an output setpoint
multiaxis motion - 16.18
should be updated. A diagram of a scheduler is shown in Figure 16.18. In this system the setpoint scheduler is an interrupt driven subroutine that compares the system clock to the total motion time. When enough time has elapsed the routine will move to the next value in the setpoint table. The frequency of the interrupt clock should be smaller than or equal to the time steps used to calculate the setpoints. The servo drive is implemented with an algorithm such a PID control.
Time based interrupt routine Setpoint table
Choose new point from trajectory table
θ desired
Servo motor routine runs for each axis
Read θ desired
Compute error
Interrupt Clock Output actuator signal Return
Figure 16.18 A setpoint scheduler The output from the scheduler updates every time step. This then leads to a situation where the axis is always chasing the target value. This leads to small errors, as shown in Figure 16.19.
multiaxis motion - 16.19
speed actual position trajectory table
time trajectory table time step position
required actual
time
Figure 16.19 Errors in path following
16.4 PATH PLANNING • When we have simple features, paths are easy to generate. These features include, - steps - pockets - holes - etc. • Typically paths for these will repeat as shown below,
multiaxis motion - 16.20
• For complex surfaces we want to contour appropriately. These surfaces will almost always be represented with spline patches.
• Recall that a spline patch can be represented parametrically
multiaxis motion - 16.21
(u=0,v=1)
(u=1,v=1) xp p ( u, v ) = y p zp
(u=0,v=0)
(u=1,v=0)
• A simple algorithm to cut the surface is shown below.
dirn_flag = 1; a direction flag n=10 ; number of passes to cut the surface step=1.0/n ; step sizes for u and v directions start=step/2 ; the start offset in the u and v directions [xp,yp,zp] = p(start,start) ; calculate the start position print(“G00 X”,xp,” Y”,yp,” Z”,zp+0.2) ; move the tool to above the start position for i=0 to (n-1) ; will increment in the u direction for j=0 to (n-1) ; will increment in the v direction ; calculate next point if dirn_flag=-1 then [xp,yp,zp]=p(start+i*step,start+j*step) if dirn_flag=1 then [xp,yp,zp]=p(start+i*step,start+(n-j)*step) print(“G01 X”,xp,” Y”,yp,” Z”,zp) ; instruction to cut to next point next j ; make next step in v direction until done dirn_flag = -dirn_flag ; reverse direction to cut in opposite direction next i ; move to next cut line in the u direction print(“G00 Z”,zp+0.2) ; move the tool to above the end position
16.5 CASE STUDIES - the controller described in the block diagram below uses a model for a DC permanent magnet DC motor to estimate a voltage based upon a predicted velocity and position. - the desired position and velocity are given in figure xxx based upon the motion
multiaxis motion - 16.22
position control derived in the earlier section
t – t start θ ( t ) = θ start + ( θ end – θ start )p -------------------------- t end – t start 3
p ( u ) = – 2 u + 3u
2
· t – t start ω ( t ) = ( θ end – θ start )p -------------------------- t end – t start 2 · p ( u ) = – 6 u + 6u
Figure 16.20 Motion position control equation - the controller that uses the desired position and velocity is shown in figure xxxx
real-time control loop ωd
2
JRD + K -----------------------K
θd
physical system
+
+
P +
-
1---------K enc
Figure 16.21 Feedforward trajectory controller
K -----------------------2 JRD + K
K enc
θa
multiaxis motion - 16.23
16.6 SUMMARY • Axis limits can be used to calculate motion profiles. • Trapezoidal and smooth motion profiles were presented. • Motion profiles can be used to generate setpoint tables. • Values from the setpoints can then be output by a scheduler to drive an axis.
16.7 PRACTICE PROBLEMS 1. a) Develop a motion profile for a joint that moves from -100 degrees to 100 degrees with a maximum velocity of 20 deg/s and a maximum acceleration of 100deg/s/s. b) Develop a setpoint table that has values for positions every 0.5 seconds for the entire motion. 2. Consider a basic servo controller with encoder feedback. The motor will start at a position count of 100, and end the motion at a count of 3000. The motion is to have a maximum acceleration of 300 counts/s/s, and a maximum velocity of 100 counts/s. Find a motion profile that satisfies these constraints. Generate a table of setpoints for the desired position every 2 seconds.
multiaxis motion - 16.24
16.8 PRACTICE PROBLEM SOLUTIONS 1. Given, deg degα max = 100 -------ω max = 20 --------2 s s The motion times can be calculated. deg 20 --------ω max s t acc = t dec = ------------ = ------------------ = 0.2s deg α max 100 -------2 s
t max t total t (s) 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5 7.0 7.5 8.0 8.5 9.0 9.5 10.0 10.5 11.0
∆θ = 100 – ( – 100 ) = 200°
deg 200deg – 20 --------- 0.2s ∆θ – ω max t acc s = ---------------------------------- = --------------------------------------------------- = 9.8s ω max deg 20 --------s = t acc + t max + t dec = 0.2s + 9.8s + 0.2s = 10.2s angle (deg) -100 -92 -82 -72 -62 -52 -42 -32 -22 -12 -2 8 18 28 38 48 58 68 78 88 98 100 100
1 degdeg 2 ( 0.2s ) + 20 --------- ( 0.5s – 0.2s ) – 100deg θ 0.5s = --- 100 -------2 2 s s θ0.5s = – 92deg deg θ 1.0s = θ 0.5s + 20 --------- ( 0.5s ) = – 92deg + 10deg s
multiaxis motion - 16.25
2. t (s) 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30
counts 100 283 483 683 883 1083 1283 1483 1683 1883 2083 2283 2483 2683 2883 3000
16.9 ASSIGNMENT PROBLEMS 1. Find a smooth path for a robot joint that will turn from θ= 75° to θ = -35° in 10 seconds. Do this by developing an equation then calculating points every 1.0 seconds along the path for a total motion time of 10 seconds. Do not assume a maximum velocity. 2. Paths are to be planned for a three axis motion controller. Each of the joints has a maximum velocity of 20 deg/s, and a maximum acceleration of 30 deg/s/s. Assuming all of the joints start at an angle of 0 degrees. Joints 1, 2 and 3 move to 40 deg, 100deg and -50deg respectively. Develop the motion profiles assuming, a) slew motion b) interpolated motion 3. Develop a smooth velocity profile for moving a cutting tool that starts at 1000 inches and moves to -1000 inches. The maximum velocity is 100 in/s and the maximum acceleration is 50in/s/s. 4. An axis has a maximum velocity of 2.0 rad/s and a maximum acceleration/deceleration of 0.5 rad/s^2. Sketch a trapezoidal motion profile and find the motion time for a -4.0 rad motion. 5. An axis has a maximum velocity of 5m/s and an acceleration/deceleration time of 1s. Sketch a trapezoidal motion profile and find the motion time for a 25m motion. 6. Develop a smooth velocity profile for moving a cutting tool that starts at 1000 inches and
multiaxis motion - 16.26
moves to -1000 inches. The maximum velocity is 100 in/s and the maximum acceleration is 50in/s/s.
numerical methods - 17.1
17. LAPLACE TRANSFORMS
Topics: • Laplace transforms • Using tables to do Laplace transforms • Using the s-domain to find outputs • Solving Partial Fractions Objectives: • To be able to find time responses of linear systems using Laplace transforms.
17.1 INTRODUCTION Laplace transforms provide a method for representing and analyzing linear systems using algebraic methods. In systems that begin undeflected and at rest the Laplace ’s’ can directly replace the d/dt operator in differential equations. It is a superset of the phasor representation in that it has both a complex part, for the steady state response, but also a real part, representing the transient part. As with the other representations the Laplace s is related to the rate of change in the system.
D = s
(if the initial conditions/derivatives are all zero at t=0s)
s = σ + jω
Figure 17.1
The Laplace s
The basic definition of the Laplace transform is shown in Figure 17.2. The normal convention is to show the function of time with a lower case letter, while the same function in the s-domain is shown in upper case. Another useful observation is that the transform starts at t=0s. Examples of the application of the transform are shown in Figure 17.3 for a step function and in Figure 17.4 for a first order derivative.
numerical methods - 17.2
F(s) =
∞
∫0 f ( t )e
– st
dt
where, f ( t ) = the function in terms of time t F ( s ) = the function in terms of the Laplace s Figure 17.2
The Laplace transform
Aside: Proof of the step function transform. For f(t) = 5, F(s) =
Figure 17.3
∞
∫0
f ( t )e
– st
∞
dt =
∫0
5e
– st
5 –st dt = – --- e s
Proof of the step function transform
∞ 0
– s0
5 –s∞ 5 5e = – --- e – – ------------ = --s s s
numerical methods - 17.3
Aside: Proof of the first order derivative transform Given the derivative of a function g(t)=df(t)/dt, ∞ d – st G ( s ) = L [ g ( t ) ] = L ----- f ( t ) = ∫ (d/dt)f ( t )e dt dt 0 we can use integration by parts to go backwards, b
∫a
b
u dv = uv a – ∫ v du b
a
∞
∫0 (d/dt)f ( t )e
– st
dt
therefore, – st
du = df ( t )
v = e
u = f(t)
dv = – se
∞
∴∫ f ( t ) ( – s )e
– st
dt = f ( t )e
0
∞
∴∫ (d/dt)f ( t )e
– st
– st ∞ 0
dt = [ f ( t )e
– st
dt ∞
– ∫ (d/dt)f ( t )e
– ∞s
– st
dt
0
– f ( t )e
– 0s
0
∞
] + s ∫ f ( t )e
– st
dt
0
d ∴L ----- f ( t ) = – f ( 0 ) + sL [ f ( t ) ] dt
Figure 17.4
Proof of the first order derivative transform
The previous proofs were presented to establish the theoretical basis for this method, however tables of values will be presented in a later section for the most popular transforms.
17.2 APPLYING LAPLACE TRANSFORMS The process of applying Laplace transforms to analyze a linear system involves the basic steps listed below.
numerical methods - 17.4
1. Convert the system transfer function, or differential equation, to the s-domain by replacing ’D’ with ’s’. (Note: If any of the initial conditions are non-zero these must be also be added.) 2. Convert the input function(s) to the s-domain using the transform tables. 3. Algebraically combine the input and transfer function to find an output function. 4. Use partial fractions to reduce the output function to simpler components. 5. Convert the output equation back to the time-domain using the tables.
17.2.1 A Few Transform Tables Laplace transform tables are shown in Figure 17.5, Figure 17.7 and Figure 17.8. These are commonly used when analyzing systems with Laplace transforms. The transforms shown in Figure 17.5 are general properties normally used for manipulating equations, and for converting them to/from the s-domain.
numerical methods - 17.5
FREQUENCY DOMAIN
TIME DOMAIN f(t )
f(s )
Kf ( t )
KL [ f ( t ) ]
f1 ( t ) + f2 ( t ) –f3 ( t ) + … df ( t ) ----------dt
f 1 ( s ) + f 2 ( s ) –f 3 ( s ) + … –
sL [ f ( t ) ] – f ( 0 )
2
d f(t ) -------------2 dt n
d------------f ( t )n dt
–
n
n–1
s L[f(t ) ] – s
t
∫0 f ( t ) dt
L [ f ( t ) -] ---------------s
f ( t – a )u ( t – a ), a > 0
e
e
– at
f(t)
f ( at ), a > 0 tf ( t ) n
t f(t)
– as
L[ f( t )]
f(s – a) 1--- --s- f a a –-------------df ( s -) ds n
n d f(s) ( – 1 ) -------------n ds ∞
f------( t )t
∫ f ( u ) du s
Figure 17.5
–
df ( 0 ) s L [ f ( t ) ] – sf ( 0 ) – -----------------dt 2
Laplace transform tables
–
f(0 ) – s
n – 2 df ( 0
–
n–1
–
d f(0 ------------------) – … – ------------------------n dt dt
numerical methods - 17.6
·· · L [ x + 7x + 8x = 9 ] =
Figure 17.6
where,
·· x(0) = 1 · x(0) = 2 x(0) = 3
Drill Problem: Converting a differential equation to s-domain
The Laplace transform tables shown in Figure 17.7 and Figure 17.8 are normally used for converting to/from the time/s-domain.
numerical methods - 17.7
TIME DOMAIN
δ(t)
1
unit impulse
A
step
t
ramp
t
FREQUENCY DOMAIN
A --s 1 ---2
s 2 ----
2
3
s n! -----------
n
t ,n>0
s e
– at
exponential decay
sin ( ωt ) cos ( ωt )
n+1
1---------s+a ω ----------------2 2 s +ω s ----------------2
s +ω
2
– at
1 ------------------2 (s + a)
2 – at
2! -----------------3 (s + a)
te
t e
Figure 17.7
Laplace transform tables (continued)
numerical methods - 17.8
TIME DOMAIN e e
– at
sin ( ωt )
– at
cos ( ωt )
e
– at
e
FREQUENCY DOMAIN ω ------------------------------2 2 (s + a) + ω s+a ------------------------------2
(s + a) + ω
ω ------------------------------2 2 (s + a) + ω
sin ( ωt )
– at
2Ae
C – aB B cos ωt + ----------------- sin ωt ω – αt
2t A e
complex conjugate
complex conjugate
A A ------------------------------ + ------------------------------------2 2 ( s + α – βj ) ( s + α + βj )
cos ( βt + θ ) – at
– bt
( c – a )e – ( c – b )e --------------------------------------------------------b–a – at
– bt
e –e -----------------------b–a
Figure 17.8
Bs + C -------------------------------2 2 (s + a) + ω A A ----------------------+ -------------------------------------s + α – βj s + α + βj
cos ( βt + θ )
– αt
2
s+c -------------------------------( s + a)(s + b) 1 -------------------------------( s + a)(s + b)
Laplace transform tables (continued)
numerical methods - 17.9
f ( t ) = 5 sin ( 5t + 8 ) f(s ) = L[ f( t) ] =
Figure 17.9
Drill Problem: Converting from the time to s-domain
5 6 f ( s ) = --- + ----------s s+7 –1
f(t ) = L [ f(s )] =
Figure 17.10 Drill Problem: Converting from the s-domain to time domain
17.3 MODELING TRANSFER FUNCTIONS IN THE s-DOMAIN In previous chapters differential equations, and then transfer functions, were derived for mechanical and electrical systems. These can be converted to the s-domain, as
numerical methods - 17.10
shown in the mass-spring-damper example in Figure 17.11. In this case we assume the system starts undeflected and at rest, so the ’D’ operator may be directly replaced with the Laplace ’s’. If the system did not start at rest and undeflected, the ’D’ operator would be replaced with a more complex expression that includes the initial conditions.
2
F = MD x + K d Dx + K s x Ks
Kd
F ( t )2 --------= MD + K d D + K s x( t)
x
M
F(t) F( s) 2 L ---------- = ----------- = Ms + K d s + K s x( t) x(s )
F
ASIDE: Here ’D’ is simply replaced with ’s’. Although this is very convenient, it is only valid if the initial conditions are zero, otherwise the more complex form, shown below, must be used. n
–
n
–
d f ( t -) d f ( 0 )n n–1 – n – 2 df ( 0 ) ------------------ – … – ------------------L ------------= s L[f(t )] – s f(0 ) – s n n dt dt dt
Figure 17.11 A mass-spring-damper example Impedances in the s-domain are shown in Figure 17.12. As before these assume that the system starts undeflected and at rest.
Device
Time domain
Resistor
V ( t ) = RI ( t )
V ( s ) = RI ( s )
Z = R
1 V ( t ) = ---- ∫ I ( t ) dt C d V ( t ) = L ----- I ( t ) dt
1 I(s) V ( s ) = ---- -------- C s
1 Z = -----sC Z = Ls
Capacitor Inductor
s-domain
V ( s ) = LsI ( s )
Figure 17.12 Impedances of electrical components
Impedance
numerical methods - 17.11
Figure 17.13 shows an example of circuit analysis using Laplace transforms. The circuit is analyzed as a voltage divider, using the impedances of the devices. The switch that closes at t=0s ensures that the circuit starts at rest. The calculation result is a transfer function.
L t=0sec Vi
+ -
C
R
+ Vo -
Treat the circuit as a voltage divider, 1 Vi ------------------ R 1 V i ---------------------- DC + --- 1 + DCR R R V o = --------------------------------------- = ---------------------------------------------- = V i ------------------------------------------------2 2 R D R LC + DLR + R ---------------------- DLR + 1 1 + DCR DL + ------------------ 1 DC + --- R Vo R ------ = -------------------------------------------- 2 2 Vi s R LC + sLR + R
Figure 17.13 A circuit example At this point two transfer functions have been derived. To state the obvious, these relate an output and an input. To find an output response, an input is needed.
17.4 FINDING OUTPUT EQUATIONS An input to a system is normally expressed as a function of time that can be converted to the s-domain. An example of this conversion for a step function is shown in Figure 17.14.
numerical methods - 17.12
Apply a constant force of A, starting at time t=0 sec. (*Note: a force applied instantly is impossible but assumed) F(t)
= 0 for t < 0 = A for t >= 0
Perform Laplace transform using tables
A F ( s ) = L [ F ( t ) ] = --s Figure 17.14 An input function In the previous section we converted differential equations, for systems, to transfer functions in the s-domain. These transfer functions are a ratio of output divided by input. If the transfer function is multiplied by the input function, both in the s-domain, the result is the system output in the s-domain.
Given,
x ( s )1 ---------= ------------------------------------2 F( s) Ms + K d s + K s A F ( s ) = --s
Therefore,
x( s) 1 - A --x ( s ) = ----------- F ( s ) = ------------------------------------2 F ( s ) Ms + K d s + Ks s
Assume,
Ns K d = 3000 -----m N K s = 2000 ---m M = 1000kg A = 1000N
1 ∴x ( s ) = --------------------------------2 ( s + 3s + 2 )s
Figure 17.15 A transfer function multiplied by the input function Output functions normally have complex forms that are not found directly in transform tables. It is often necessary to simplify the output function before it can be converted back to the time domain. Partial fraction methods allow the functions to be broken into
numerical methods - 17.13
smaller, simpler components. The previous example in Figure 17.15 is continued in Figure 17.16 using a partial fraction expansion. In this example the roots of the third order denominator polynomial, are calculated. These provide three partial fraction terms. The residues (numerators) of the partial fraction terms must still be calculated. The example shows a method for finding resides by multiplying the output function by a root term, and then finding the limit as s approaches the root.
1 A B C 1 = ------------------------------------ = --- + ----------- + ----------x ( s ) = --------------------------------2 ( s + 1 ) ( s + 2 )s s s+1 s+2 ( s + 3s + 2 )s 1 A = lim s ------------------------------------ ( s + 1 ) ( s + 2 )s s→0
1 = --2
1 B = lim ( s + 1 ) ------------------------------------ ( s + 1 ) ( s + 2 )s s → –1
= –1
1 C = lim ( s + 2 ) ------------------------------------ ( s + 1 ) ( s + 2 )s s → –2
1 = --2
Aside: the short cut above can reduce time for simple partial fraction expansions. A simple proof for finding ‘B’ above is given in this box. 1 B - ---------C----------------------------------- = A --- + ---------+ ( s + 1 ) ( s + 2 )s s s+1 s+2 C 1 A B ( s + 1 ) ------------------------------------ = ( s + 1 ) --- + ( s + 1 ) ----------- + ( s + 1 ) ----------( s + 1 ) ( s + 2 )s s s+1 s+2 1 A C -----------------= ( s + 1 ) --- + B + ( s + 1 ) ----------( s + 2 )s s s+2 A 1 lim ------------------- = lim ( s + 1 ) --s ( s + 2 )s s → –1 s → –1
C + lim B + lim ( s + 1 ) ----------s +2 s → –1 s → –1
1 lim ------------------- = lim B = B s → – 1 ( s + 2 )s s → –1 1 0.5 –1 0.5 = ------- + ----------- + ----------x ( s ) = --------------------------------2 s s + 1 s +2 ( s + 3s + 2 )s
Figure 17.16 Partial fractions to reduce an output function After simplification with partial fraction expansion, the output function is easily
numerical methods - 17.14
converted back to a function of time as shown in Figure 17.17.
–1
x(t) = L [ x( s)] = L x(t) = L
–1
–1
0.5 – 1 - ---------0.5------- + ---------+ s s+1 s+2
0.5 –1 – 1 0.5 ------- + L –1 ---------+ L ----------s s+1 s+2 –t
x ( t ) = [ 0.5 ] + [ ( – 1 )e ] + [ ( 0.5 )e –t
x ( t ) = 0.5 – e + 0.5e
– 2t
]
– 2t
Figure 17.17 Partial fractions to reduce an output function (continued)
17.5 INVERSE TRANSFORMS AND PARTIAL FRACTIONS The flowchart in Figure 17.18 shows the general procedure for converting a function from the s-domain to a function of time. In some cases the function is simple enough to immediately use a transfer function table. Otherwise, partial fraction expansion is normally used to reduce the complexity of the function.
numerical methods - 17.15
Start with a function of ’s’. NOTE: This does not apply for transfer functions.
yes
is the function in the transform tables? no can the function be simplified?
simplify the function
yes
no Use partial fractions to break the function into smaller parts
Match the function(s) to the form in the table and convert to a time function Done
Figure 17.18 The methodology for doing an inverse transform of an output function Figure 17.19 shows the basic procedure for partial fraction expansion. In cases where the numerator is greater than the denominator, the overall order of the expression can be reduced by long division. After this the denominator can be reduced from a polynomial to multiplied roots. Calculators or computers are normally used when the order of the polynomial is greater than second order. This results in a number of terms with unknown resides that can be found using a limit or algebra based technique.
numerical methods - 17.16
start with a function that has a polynomial numerator and denominator
is the order of the numerator >= denominator?
yes
use long division to reduce the order of the numerator
no Find roots of the denominator and break the equation into partial fraction form with unknown values OR use limits technique. If there are higher order roots (repeated terms) then derivatives will be required to find solutions
use algebra technique
Done
Figure 17.19 The methodology for solving partial fractions Figure 17.20 shows an example where the order of the numerator is greater than the denominator. Long division of the numerator is used to reduce the order of the term until it is low enough to apply partial fraction techniques. This method is used infrequently because this type of output function normally occurs in systems with extremely fast response rates that are infeasible in practice.
numerical methods - 17.17
3
2
5s + 3s + 8s + 6x ( s ) = ------------------------------------------2 s +4 This cannot be solved using partial fractions because the numerator is 3rd order and the denominator is only 2nd order. Therefore long division can be used to reduce the order of the equation. 5s + 3 2
s +4
3
2
5s + 3s + 8s + 6 3 5s + 20s 2
3s – 12s + 6 2 3s + 12 – 12s – 6 This can now be used to write a new function that has a reduced portion that can be solved with partial fractions.
– 12s – 6x ( s ) = 5s + 3 + --------------------2 s +4
solve
–--------------------12s – 6A B = ------------- + ------------2 s + 2j s – 2j s +4
Figure 17.20 Partial fractions when the numerator is larger than the denominator Partial fraction expansion of a third order polynomial is shown in Figure 17.21. The s-squared term requires special treatment. Here it produces partial two partial fraction terms divided by s and s-squared. This pattern is used whenever there is a root to an exponent.
numerical methods - 17.18
A B 1 C = ---2- + --- + ----------x ( s ) = -------------------2 s s+1 s s (s + 1) 1 - C = lim ( s + 1 ) -------------------2 s → –1 s (s + 1) 1 - 2 A = lim s -------------------2 s→0 s (s + 1)
= 1
1 = lim ----------- = 1 s + 1 s→0
d 2 1 - B = lim ----- s -------------------2 ds s→0 s (s + 1)
d 1 = lim ----- ----------- ds s + 1 s→0
–2
= lim [ – ( s + 1 ) ] = – 1 s→0
Figure 17.21 A partial fraction example Figure 17.22 shows another example with a root to an exponent. In this case each of the repeated roots is given with the highest order exponent, down to the lowest order exponent. The reader will note that the order of the denominator is fifth order, so the resulting partial fraction expansion has five first order terms.
5 F ( s ) = -----------------------32 s (s + 1) 5 A B C D E ----------------------= ----2 + --- + ------------------3- + ------------------2- + ---------------3 2 s (s + 1) (s + 1) s (s + 1) s (s + 1)
Figure 17.22 Partial fractions with repeated roots Algebra techniques are a reasonable alternative for finding partial fraction residues. The example in Figure 17.23 extends the example begun in Figure 17.22. The equivalent forms are simplified algebraically, until the point where an inverse matrix solution is used to find the residues.
numerical methods - 17.19
A B C D E 5 ----------------------= ----2 + --- + ------------------3- + ------------------2- + ---------------3 2 s ( s + 1) s (s + 1) (s + 1) s (s + 1) 3
3
2
2
2
2
A ( s + 1 ) + Bs ( s + 1 ) + Cs + Ds ( s + 1 ) + Es ( s + 1 ) = ----------------------------------------------------------------------------------------------------------------------------------------3 2 s (s + 1) 4
3
2
s ( B + E ) + s ( A + 3B + D + 2E ) + s ( 3A + 3B + C + D + E ) + s ( 3A + B ) + ( A )= -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------3 2 s (s + 1) 0 1 3 3 1
1 3 3 1 0
0 0 1 0 0
0 1 1 0 0
1 2 1 0 0
A 0 B 0 = C 0 D 0 E 5
A 0 1 0 B 1 3 0 = C 3 3 1 D 3 1 0 E 1 0 0
0 1 1 0 0
1 2 1 0 0
–1
0 5 0 – 15 = 0 5 0 10 5 15
5 5 – 15 5 10 15 ----------------------= ---2- + --------- + ------------------3- + ------------------2- + ---------------3 2 s ( s + 1) s (s + 1) (s + 1) s (s + 1)
Figure 17.23 Solving partial fractions algebraically For contrast, the example in Figure 17.23 is redone in Figure 17.24 using the limit techniques. In this case the use of repeated roots required the differentiation of the output function. In these cases the algebra techniques become more attractive, despite the need to solve simultaneous equations.
numerical methods - 17.20
A B C D E 5 ----------------------= ---2- + --- + ------------------3- + ------------------2- + ---------------3 2 s ( s + 1) s (s + 1) (s + 1) s (s + 1) 5 5 2 A = lim -----------------------3- s = lim ------------------3- = 5 2 s→0 s → 0 (s + 1) s (s + 1) d 5 d 5 2 B = lim ----- -----------------------3- s = lim ----- ------------------3- 2 ds ds s→0 s→0 (s + 1) s (s + 1)
5( –3 ) = lim ------------------4- = – 15 s → 0 (s + 1)
5 5 3 C = lim -----------------------3- ( s + 1 ) = lim ----2 = 5 2 s → –1 s → –1 s s (s + 1) 5 1 d 1 d 5 1 – 2 ( 5 -) 3 D = lim ----- ----- -----------------------3- ( s + 1 ) = lim ----- ----- ---2- = lim ----- ------------= 10 s → – 1 1! ds 2 s → – 1 1! ds s s → – 1 1! s 3 s (s + 1) 1 d2 5 1 d25 1 30 3 E = lim ----- ----- -----------------------3- ( s + 1 ) = lim ----- ----- ----2 = lim ----- -----4- = 15 2 2! ds 2! ds 2! s → –1 s → –1 s → –1 s s s (s + 1) 5 5 – 15 5 10 15 ----------------------= ---2- + --------- + ------------------3- + ------------------2- + ---------------3 2 s (s + 1) s (s + 1) (s + 1) s (s + 1)
Figure 17.24 Solving partial fractions with limits An inductive proof for the limit method of solving partial fractions is shown in Figure 17.25.
5 A B C D E ----------------------= ---2- + --- + ------------------3- + ------------------2- + ---------------3 2 s (s + 1) (s + 1) s (s + 1) s (s + 1) 5 A B C D E lim -----------------------3- = ---2- + --- + ------------------3- + ------------------2- + ---------------s (s + 1) (s + 1) s → –1 2 s (s + 1) s (s + 1) 5 A B C D E 3 lim ( s + 1 ) -----------------------3- = ---2- + --- + ------------------3- + ------------------2- + ---------------- 2 s (s + 1) ( s + 1 ) s → –1 s (s + 1) s (s + 1) 3
3
5 A(s + 1) (s + 1)2 -+B ---------------------lim ---2- = ---------------------+ C + D(s + 1) + E(s + 1) 2 s s → –1 s s
numerical methods - 17.21
For C, evaluate now, 3
3
5 A ( – 1 + 1 ) - --------------------------B(– 1 + 1 ) 2 ------------- = --------------------------+ + + + C D ( – 1 + 1 ) E ( – 1 + 1 ) 2 2 –1 ( –1 ) ( –1 ) 3
3
5 A ( 0 ) - ------------B( 0) 2 ------------- = ------------+ + C + D(0) + E(0) 2 2 – 1 ( –1 ) ( –1 )
C = 5
For D, differentiate once, then evaluate 3 3 d 5 A( s + 1) - B (s + 1)2 ---------------------lim ----- ----2 = ---------------------+ + C + D ( s + 1 ) + E ( s + 1 ) 2 s s → – 1 dt s s
2 ( s + 1 ) 3 3 ( s + 1 ) 2 ( s + 1 ) 3 3 ( s + 1 ) 2 –------------2 ( 5 )----------------------------------------- + ---------------------- + D + 2E ( s + 1 ) + lim = A– + B – -----------------3 3 2 2 s s → –1 s s s s –------------2 ( 5 )= D = 10 3 ( –1 ) For E, differentiate twice, then evaluate (the terms for A and B will be ignored to save space, but these will drop out anyway). 3 3 2 5 d A ( s + 1 ) B ( s + 1 ) - + ----------------------- + C + D ( s + 1 ) + E ( s + 1 )2 lim ----- ----2 = ---------------------2 s s → – 1 dt s s d – 2 ( 5 -) = A ( … ) + B ( … ) + D + 2E ( s + 1 ) lim ----- ------------ s → – 1 dt s 3
–3 ( –2 ( 5 ) ) lim ------------------------= A ( … ) + B ( … ) + 2E 4 s → –1 s –------------------------3 ( –2 ( 5 ) ) = A ( 0 ) + B ( 0 ) + 2E 4 ( –1 )
E = 15
Figure 17.25 A proof of the need for differentiation for repeated roots
17.6 EXAMPLES
17.6.1 Mass-Spring-Damper Vibration A mass-spring-damper system is shown in Figure 17.26 with a sinusoidal input.
numerical methods - 17.22
Given,
1---x(s) M ∴----------- = --------------------------------F( s) K 2 K s + -----d- s + -----s M M Component values are, M = 1kg
N K s = 2 ---m
Ns K d = 0.5 -----m
The sinusoidal input is converted to the s-domain, F ( t ) = 5 cos ( 6t )N 5s ∴F ( s ) = --------------2 2 s +6 This can be combined with the transfer function to obtain the output function, 1-- x(s) 5s - ----------------------------1 - x ( s ) = F ( s ) ----------- = --------------2 2 F ( s ) 2 s + 6 s + 0.5s + 2 5s ∴x ( s ) = --------------------------------------------------------2 2 ( s + 36 ) ( s + 0.5s + 2 ) A B C D ∴x ( s ) = ------------- + ------------- + ------------------------------------- + ------------------------------------s + 6j s – 6j s – 0.25 + 1.39j s – 0.25 – 1.39j
Figure 17.26 A mass-spring-damper example The residues for the partial fraction in Figure 17.26 are calculated and converted to a function of time in Figure 17.27. In this case the roots of the denominator are complex, so the result has a sinusoidal component.
numerical methods - 17.23
A =
– 30j ( s + 6j ) ( 5s ) ------------------------------------------------------------------------ = ---------------------------------------------2 ( – 12j ) ( 36 – 3j + 2 ) ( s – 6j ) ( s + 6j ) ( s + 0.5s + 2 )
lim
s → – 6j
–3
∴A = 73.2 × 10 ∠3.05 *
–3
∴B = A = 73.2 × 10 ∠– 3.05 Continue on to find C, D same way –3
–3
73.2 × 10 ∠3.05 73.2 × 10 ∠– 3.05 ∴x ( s ) = ------------------------------------------- + ---------------------------------------------- + … s + 6j s – 6j Do inverse Laplace transform –3
x ( t ) = 2 ( 73.2 × 10 )e
– 0t
cos ( 6t – 3.05 ) + …
Figure 17.27 A mass-spring-damper example (continued)
17.6.2 Circuits It is not necessary to develop a transfer functions for a system. The equation for the voltage divider is shown in Figure 17.28. Impedance values and the input voltage are converted to the s-domain and written in the equation. The resulting output function is manipulated into partial fraction form and the residues calculated. An inverse Laplace transform is used to convert the equation into a function of time using the tables.
numerical methods - 17.24
3
R = 10 Ω t=0 V s = 3 cos t
+ -
+ Vo -
–3
C = 10 F
As normal, relate the source voltage to the output voltage using component values in the s-domain. ZC V o = Vs ------------------- ZR + ZC
1 3s Z C = -----ZR = R V s ( s ) = ------------sC 2 s +1 Next, equations are combined. The numerator of resulting output function must be reduced by long division. 1- ---- sC 3s 3s 3s - ---------------- = ------------------------------------------- = ------------------------------------------------------V o = ------------2 2 2 3 –3 1- s + 1 R + ----( s + 1 ) ( 1 + sRC ) ( s + 1 ) ( s10 10 + 1 ) sC The output function can be converted to a partial fraction form and the residues calculated. 2 2 3s As + B- ---------CAs + As + Bs + B + Cs + C----------------------------------------------------------------------------------= + = V o = ----------------------------------2 2 2 (s + 1 )(s + 1) s +1 s+1 (s + 1)( s + 1) 2
3s s ( A + C ) + s ( A + B ) + ( B + C )V o = ----------------------------------= ---------------------------------------------------------------------------2 2 (s + 1)(s + 1) (s + 1)(s + 1) B+C = 0 A+C = 0 A+B = 3
∴B = – C ∴A = – C ∴– C – C = 3
1.5s + 1.5- ---------– 1.5+ V o = ----------------------2 s+1 s +1
Figure 17.28 A circuit example
∴C = – 1.5
∴A = 1.5
∴B = 1.5
numerical methods - 17.25
The output function can be converted to a function of time using the transform tables, as shown below. –1
1.5s + 1.5- ---------– 1.5– 1 1.5s + 1.5 – 1.5----------------------- + L –1 ---------+ = L ----------------------2 2 s +1 s + 1 s +1 s +1 s 1 –1 –t ------------+ 1.5L ------------– 1.5e 2 2 s +1 s +1
Vo ( t ) = L [ V o ( s ) ] = L ∴V o ( t ) = 1.5L
–1
–1
∴V o ( t ) = 1.5 cos t + 1.5 sin t – 1.5e ∴V o ( t ) =
–t
1.5 2 2 –t 1.5 + 1.5 sin t + atan ------- – 1.5e 1.5
π –t ∴V o ( t ) = 2.121 sin t + --- – 1.5e 4
Figure 17.29 A circuit example (continued)
17.7 ADVANCED TOPICS
17.7.1 Input Functions In some cases a system input function is comprised of many different functions, as shown in Figure 17.30. The step function can be used to switch function on and off to create a piecewise function. This is easily converted to the s-domain using the e-to-the-s functions.
numerical methods - 17.26
f(t) 5
t seconds 0
1
3
4
f ( t ) = 5tu ( t ) – 5 ( t – 1 )u ( t – 1 ) – 5 ( t – 3 )u ( t – 3 ) + 5 ( t – 4 )u ( t – 4 ) –s
– 3s
– 4s
5 5e - 5e 5e – -----------+ -----------f ( s ) = ---2- – --------2 2 2 s s s s Figure 17.30 Switching on and off function parts
17.7.2 Initial and Final Value Theorems The initial and final values an output function can be calculated using the theorems shown in Figure 17.31.
x ( t → ∞ ) = lim [ sx ( s ) ]
Final value theorem
s→0
1s 1 1 - = ------------------------------------- = 1--∴x ( t → ∞ ) = lim --------------------------------= lim ------------------------2 2 2 2 s → 0 ( s + 3s + 2 )s s → 0 s + 3s + 2 (0 ) + 3(0) + 2 x ( t → 0 ) = lim [ sx ( s ) ]
Initial value theorem
s→∞
1(s) 1 1- = --∴x ( t → 0 ) = lim --------------------------------= ------------------------------------------= 0 2 2 ∞ s → ∞ ( s + 3s + 2 )s ( ( ∞ ) + 3( ∞) + 2 ) Figure 17.31 Final and initial values theorems
numerical methods - 17.27
17.8 A MAP OF TECHNIQUES FOR LAPLACE ANALYSIS The following map is to be used to generally identify the use of the various topics covered in the course.
System Model (differential equations)
Some input disturbance in terms of time Laplace Transform
Transfer Function
Input described with Laplace Equation
We can figure out from plots Experiments
Root-Locus for stability
Substitute
Output Function (Laplace form) Bode and Phase Plots - Straight line - Exact plot
Phasor Transform
Equations for gain and phase at different frequencies Approximate equations for steady state vibrations Steady state frequency response
Figure 17.32 A map of Laplace analysis techniques
Output Function (Laplace terms) Partial Fraction Inverse Laplace
Time based response equation
numerical methods - 17.28
17.9 SUMMARY • Transfer and input functions can be converted to the s-domain • Output functions can be calculated using input and transfer functions • Output functions can be converted back to the time domain using partial fractions.
17.10 PRACTICE PROBLEMS 1. Convert the following functions from time to laplace functions using the tables. a)
L[5]
b)
L[ e
c)
L [ 5e
d)
L [ 5te
e)
L [ 5t ]
f)
2
g)
– 3t
]
– 3t
]
– 3t
o)
·· · · L [ x + 5x + 3x ], x ( 0 ) = 8, x ( 0 ) = 7
p)
d L ----- sin ( 6t ) dt d 32 L ----- t dt
q) ]
t
∫0 y dt
r)
L
s)
L [ 3t ( t – 1 ) + e
L [ 4t ]
t)
L[u( t – 1) – u(t – 2)]
L [ cos ( 5t ) ]
u)
L[e
– 2t
v)
L[e
–( t – 3 )
cos ( 5t ) ]
w)
L [ 5e
cos ( 5t + 1 ) ]
x)
L [ cos ( 7t + 2 ) + e
–( t + 1)
3
L[ 3( t – 1 ) + e
i)
L [ 5e
– 3t
j)
L [ 5e
– 3t
k)
L [ sin ( 5t ) ]
y)
L [ cos ( 5t + 1 ) ]
l)
L [ sinh ( 3t ) ]
z)
L [ 6e
2
m)
L [ t sin ( 2t ) ]
n)
d 2 – 3t L ----- t e dt
aa)
]
u( t – 2) ]
h)
]
– 5t
– 3t
u( t – 1) ]
+ u(t – 1) – u(t – 2)]
– 2.7t
t–3
]
cos ( 9.2t + 3 ) ]
numerical methods - 17.29
2. Convert the following functions below from the laplace to time domains using the tables. a)
L
b)
L
c)
L
d)
L
–1
1---------s+1
g)
L
–1
5---------s+1
h)
L
–1
6--2 s 6---
i)
L
j)
L
–1
s e) f)
L L
–1
–1
3
s+2 -------------------------------( s + 3)( s + 4) 6 -------------
k)
L
–1
5--– 4.5s (1 – e ) s
–1
4 + 3j - ---------------------4 – 3j --------------------+ s + 1 – 2j s + 1 + 2j
–1
6- ------------6 --+ 2 4 s s +9 6 -------------------------
–1
2
–1
s + 5s + 6 6 ---------------------------------2
4s + 20s + 24
2
s +6
3. Convert the following functions below from the laplace to time domains using partial fractions and the tables. –1
s+2 -------------------------------( s + 3)( s + 4)
a)
L
b)
L [ ]
c)
L [ ]
d)
L [ ]
e) f)
–1
–1
–1
L L
–1
–1
6 ---------------2 s + 5s 2 9s + 6s + 3 ---------------------------------------3
2
s + 5s + 4s + 6
g)
L
h)
L
i)
L
j)
L
k) l)
L L
–1
–1
3
2
s---------------------------------------+ 9s + 6s + 3 3 2 s + 5s + 4s + 6 9s + 4-----------------3
–1
(s + 3) 9s + 4 ----------------------3
–1
3
s (s + 3) 2 s------------------------+ 2s + 12
–1
s + 3s + 2 2 s------------------------+ 3s + 52
–1
6s + 6 2 s------------------------+ 2s + 32
s + 2s + 1
4. Convert the output function below Y(s) to the time domain Y(t) using the tables. 5 12 - --------------------3 - ---------------------3 Y ( s ) = --- + ------------+ + s s 2 + 4 s + 2 – 3j s + 2 + 3j
numerical methods - 17.30
5. Convert the following differential equations to transfer functions. ·· · 5x + 6x + 2x = 5F a) · y + 8y = 3x b) · y – y + 5x = 0 c) 6. Given the transfer function, G(s), determine the time response output Y(t) to a step input X(t). 4 Y( s) G ( s ) = ----------- = ----------X ( t ) = 20 When t >= 0 s+2 X(s) 7. Given the following input functions and transfer functions, find the response in time. Transfer Function Input a)
x ( s )s+2 m ---------= --------------------------------- ---- F(s) ( s + 3 ) ( s + 4 ) N
F ( t ) = 5N
b)
x ( s )s+2 m ---------= --------------------------------- ---- F(s) (s + 3)(s + 4) N
x ( t ) = 5m
8. Do the following conversions as indicated. –4t L [ 5e cos ( 3t + 2 ) ] = a) – 2t
b)
L[ e
c)
d 3 d L ----- y + 2 ----- y + y = dt dt
d)
L
e)
L
+ 5t ( u ( t – 2 ) – u ( t ) ) ] =
–1
1 + j - --------------------1–j ---------------------+ = s + 3 + 4j s + 3 – 4j
–1
1 3 - = s + ----------- + ---------------------------2 s + 2 s + 4s + 40
where at t=0
y0 = 1
y 0' = 2
y 0'' = 3
y 0''' = 4
9. Convert the output function to functions of time. 3 2 a) s---------------------------------------+ 4s + 4s + 4 3 s + 4s 2 b) s +4 -----------------------------------------------------------------4
3
2
s + 10s + 35s + 50s + 24 10. Solve the differential equation using Laplace transforms. Assume the system starts undeflected and at rest. ··· ·· · θ + 40θ + 20θ + 2θ = 4
numerical methods - 17.31
17.11 PRACTICE PROBLEM SOLUTIONS 1. a)
5--s
l)
0.5- ---------0.5---------– s–3 s+3
b)
1---------s+3
m)
–4 16s 12s – 16 --------------------- + -------------------= ----------------------32 3 2 2 2 (s + 4) (s + 4) (s + 4)
c)
5---------s+3 5 ------------------
n)
2s -----------------3 (s + 3)
o)
( s x – 7s – 8 ) + 5 ( sx – 7 ) + 3x
p)
6s ----------------2 s + 36
q)
2
r)
y-s 72 1 ------ – 18 ------ + ---------5 4 s+5 s s
2
d) e) f) g) h) i) j)
k)
2
(s + 3) 5 ---2 s 8 ---3 s s ----------------2 s + 25
–1
3 e ---- – 3--- + ---------2 s s+1 s 5(s + 3) -----------------------------2 2 (s + 3) + 5 2.5 ∠1 - ---------------------2.5 ∠– 1 --------------------+ s + 3 – 5j s + 3 + 5j s( ) + = ---------------------------2 s + 6s + 34 5 ---------------2
s)
y)
z)
2
–s
– 2s
t)
e------- e--------– s s
u)
e ------------s+2
v)
e ---------s+1
w)
5 - e------- e-----------------+ – s s s+3
4 – 2s
2–s
–s
s + 25 x)
2
– 2s
–3
–3
– 0.416s – 6.37 e cos ( 2 ) s – sin ( 2 ) 7 e -------------------------------------------- + ----------- = ------------------------------------- + ----------2 2 s–1 s–1 s + 49 s + 49 s---------------------------------cos 1 – 5 sin 1 2
s + 25 3 ∠3 - ------------------------------3 ∠– 3 s( ) + -----------------------------+ = ---------------------------------------2 s + 2.7 – 9.2j s + 2.7 + 9.2j s + 5.4s + 91.93
numerical methods - 17.32
2. a) e
–t
b) 5e
–t
g)
5 – 5u ( t – 4.5 )
h)
2 ( 5 )e
i)
t + 2 sin ( 3t )
j)
6e
k)
1.5e
c) 6t d) 3t
2
e) – e f)
– 3t
+ 2e
– ( 1 )t
3 cos 2t + atan – --- 4
3
– 4t
– 2t
– 6e
– 2t
– 3t
– 1.5e
– 3t
6 sin ( 6t )
3. a)
–e
– 3t
+ 2e
– 4t
g)
b)
h)
c)
i)
d)
j)
e)
1.2 – 1.2e
f)
8.34e
– 4.4t
– 0.3t
cos ( 1.13t + 1.23 )
l)
δ ( t ) + 2te
4. y ( t ) = 5 + 6 sin ( 2t ) + 2 ( 3 )e
– 2t
5. a) b) c)
– 2t
δ( t) k) --------- + 0.834 cos ( t + 0.927 ) 6
– 5t
+ 2 ( 0.99 )e
δ(t) – e
5 --x- = ---------------------------2 F 5s + 6s + 2 y-3 = ----------x s+8 y-–5 = ----------x s–1
cos ( 3t – 0 )
–t
numerical methods - 17.33
6. y ( t ) = 40 – 40e
– 2t
7. a)
5--- 5--- – 3t 5--- – 4t + e – e 6 3 2
b)
( 5δ ( t ) + 30 – 5e
– 2t
)N
8. a)
L [ 5e
–4 t
cos ( 3t + 2 ) ] = L [ 2 A e
– αt
cos ( βt + θ ) ]
α = 4 A = 2.5
β = 3 θ = 2
A = 2.5 cos 2 + 2.5j sin 2 = – 1.040 + 2.273j complex conjugate
A A – 1.040 + 2.273j – 1.040 – 2.273j ----------------------+ -------------------------------------- = --------------------------------------- + --------------------------------------s + α – βj s + α + βj s + 4 – 3j s + 4 + 3j
b)
L[e
– 2t
+ 5t ( u ( t – 2 ) – u ( t ) ) ] = L [ e
– 2t
] + L [ 5tu ( t – 2 ) ] – L [ 5tu ( t ) ]
1 5 1 5 = ----------- + 5L [ tu ( t – 2 ) ] – ----2 = ----------- + 5L [ ( t – 2 )u ( t – 2 ) + 2u ( t – 2 ) ] – ----2 s+2 s+2 s s 5 1 = ----------- + 5L [ ( t – 2 )u ( t – 2 ) ] + 10L [ u ( t – 2 ) ] – ---2s+2 s – 2s – 2s 5 1 = ----------- + 5e L [ t ] + 10e L [ 1 ] – ----2 s+2 s – 2s – 2s 5 1 5e 10e = ----------- + -----------+ --------------- – ----2 2 s s+2 s s
c)
3
d 3 2 1 0 ---- y = s y + 1s + 2s + 3s dt d- 1 0 ---= s y+s 1 dt y d 3 d 3 2 L ----- y + 2 ----- y + y = ( s y + 1s + 2s + 3 ) + ( sy + 1 ) + ( y ) dt dt 3
2
= y ( s + s + 1 ) + ( s + 2s + 4 )
numerical methods - 17.34
d) L
–1
complex conjugate
1 + j - --------------------1–j A A –1 ---------------------+ = L ----------------------- + -------------------------------------s + 3 + 4j s + 3 – 4j s + α – βj s + α + βj 2
A =
= 2Ae
e)
2
1 + 1 = 1.141 – αt
–1 π θ = atan ------ = – --1 4
cos ( βt + θ ) = 2.282e
– 3t
α = 3
β = 4
π cos 4t – --- 4
13 1 3 - = L [ s ] + L ---------+ L ---------------------------s + ----------- + ---------------------------2 2 s + 2 s + 4s + 40 s+2 s + 4s + 40 d – 2t 3 d– 2t 6 - = ---= ----- δ ( t ) + e + L -----------------------------δ ( t ) + e + 0.5L -----------------------------2 2 dt dt ( s + 2 ) + 36 ( s + 2 ) + 36
L
–1
d – 2t – 2t = ----- δ ( t ) + e + 0.5e sin ( 6t ) dt 9. a)
3
2
s + 4s + 4s + 4 ---------------------------------------3 s + 4s
1 3 2 s + 4s + 4s + 4 3 – ( s + 4s )
3
s + 4s
2
4s + 4 2
2
4s + 4A Bs + Cs ( A + B ) + s ( C ) + ( 4A ) = 1 + ---------------= 1 + --- + --------------= 1 + ----------------------------------------------------------3 2 3 s s +4 s + 4s s + 4s 1 3s = 1 + --- + ------------s s2 + 4
= δ ( t ) + 1 + 3 cos ( 2t )
A = 1 C = 0 B = 3
numerical methods - 17.35
2
b)
A - ---------B - ---------C - ---------Ds +4 ------------------------------------------------------------------ = ---------+ + + 4 3 2 s+1 s+2 s+3 s+4 s + 10s + 35s + 50s + 24 2
s +4 5 A = lim -------------------------------------------------- = --6 s → –1 ( s + 2 ) ( s + 3 ) ( s + 4 ) 2
s +4 8 B = lim -------------------------------------------------- = -----–2 s → –2 ( s + 1 ) ( s + 3 ) ( s + 4 ) 2
s +4 13 C = lim -------------------------------------------------- = -----2 s → –3 ( s + 1 ) ( s + 2 ) ( s + 4 ) 2
s +4 20 D = lim -------------------------------------------------- = -----–6 s → –4 ( s + 1 ) ( s + 2 ) ( s + 3 ) 5--- –t – 2t 13 – 3t 10 – 4t e – 4e + ------ e – ------ e 3 6 2 10. – 6 – 39.50t
θ ( t ) = – 66 ⋅ 10 e
– 3.216e
0.1383t
+ 1.216e
– 0.3368t
+ 2.00
17.12 ASSIGNMENT PROBLEMS 1. Prove the following relationships. a)
t L f --- a
= aF ( as )
d)
b)
1 s L [ f ( at ) ] = --- F --- a a
e)
c)
L[ e
– at
f(t )] = F(s + a)
f)
lim f ( t ) = lim sF ( s )
t→∞
s→0
lim f ( t ) = lim sF ( s )
t→∞
s→0
d L [ tf ( t ) ] = – ----- F ( s ) dt
numerical methods - 17.36
2. The applied force ‘F’ is the input to the system, and the output is the displacement ‘x’. a) find the transfer function. K1 = 500 N/m K2 = 1000 N/m
x
M = 10kg
F b) What is the steady state response for an applied force F(t) = 10cos(t + 1) N ? c) Give the transfer function if ‘x’ is the input. d) Find x(t), given F(t) = 10N for t >= 0 seconds using Laplace methods. 3. The following differential equation is supplied, with initial conditions. ·· · · y + y + 7y = F y( 0) = 1 y(0) = 0 F ( t ) = 10
t>0
a) Solve the differential equation using calculus techniques. b) Write the equation in state variable form and solve it numerically. c) Find the frequency response (gain and phase) for the transfer function using the phasor transform. Roughly sketch the bode plots. d) Convert the differential equation to the Laplace domain, including initial conditions. Solve to find the time response. 4. Given the transfer functions and input functions, F, use Laplace transforms to find the output of the system as a function of time. Indicate the transient and steady state parts of the solution. 2
D --x- = ----------------------------2 F ( D + 200π )
F = 5 sin ( 62.82t )
D ( D + 2π )--x- = ----------------------------2 F ( D + 200π )
F = 5 sin ( 62.82t )
numerical methods - 17.37
2
D ( D + 2π )--x- = ----------------------------2 F ( D + 200π )
F = 5 sin ( 62.82t )
17.13 REFERENCES Irwin, J.D., and Graf, E.R., Industrial Noise and Vibration Control, Prentice Hall Publishers, 1979. Close, C.M. and Frederick, D.K., “Modeling and Analysis of Dynamic Systems, second edition, John Wiley and Sons, Inc., 1995.
linear feedback controller analysis - 18.1
18. CONTROL SYSTEM ANALYSIS
Topics:
Objectives:
18.1 INTRODUCTION
18.2 CONTROL SYSTEMS • Control systems use some output state of a system and a desired state to make control decisions. • In general we use negative feedback systems because, - they typically become more stable - they become less sensitive to variation in component values - it makes systems more immune to noise • Consider the system below, and how it is enhanced by the addition of a control system.
linear feedback controller analysis - 18.2
Control variable INPUT (e.g. θgas)
vdesired
verror +
OUTPUT (e.g. velocity)
SYSTEM (e.g. a car)
_
Driver or cruise control
θgas
car
vactual
The control system is in the box and could be a driver or a cruise control (this type is known as a feedback control system)
Figure 18.1
An example of a feedback controller
Human rules to control car (also like expert system/fuzzy logic): 1. If verror is not zero, and has been positive/negative for a while, increase/decrease θgas 2. If verror is very big/small increase/decrease θgas 3. If verror is near zero, keep θgas the same 4. If verror suddenly becomes bigger/smaller, then increase/decrease θgas. 5. etc.
Figure 18.2
Rules for a feedback controller
linear feedback controller analysis - 18.3
• Some of the things we do naturally (like the rules above) can be done with mathematics
18.2.1 PID Control Systems • The basic equation for a PID controller is shown below. This function will try to compensate for error in a controlled system (the difference between desired and actual output values).
de u = K c e + K i ∫ edt + K d ------ dt
Figure 18.3
The PID control equation
• The figure below shows a basic PID controller in block diagram form.
proportional
PID Controller
Kp ( e )
V
V
integral e
+
-
Figure 18.4
Ki ( ∫ e ) derivative d K d ----- e dt
+V
+ u
amp
+ +
-V
A block diagram of a feedback controller
motor
linear feedback controller analysis - 18.4
e.g. dv error θ gas = K c v error + K i ∫ v error dt + K d ---------------- dt Rules 2 & 3 (general difference)
Kc Ki Kd
Rule 4 (Immediate error) Rule 1 (Long term error)
Relative weights of components
This is a PID Controller Proportional Integral Derivative
For a PI Controller θ gas = K c v error + K i ∫ v error dt For a P Controller θ gas = K c v error For a PD Controller dv error θ gas = K c v error + K d ---------------- dt
• The PID controller is the most common controller on the market.
linear feedback controller analysis - 18.5
18.2.2 Analysis of PID Controlled Systems With Laplace Transforms
1. We can rewrite the control equation as a ratio of output to input. dv error θ gas = K c v error + K i ∫ v error dt + K d ---------------- dt θ gas d- ------------ = K c + K i ∫ dt + K d --- v error dt Then do a Laplace transform d---→s dt
∫ dt
1 = --s
K θ gas - = K c + -----i + K d s L -----------v error s
dx ------ → sx dt
∫ xdt
x = -s
The transfer function
linear feedback controller analysis - 18.6
2. We can also develop a transfer function for the car. F = Aθ gas = 10θ gas F--------= 10 θ gas
Transfer function for engine and transmission. (Laplace transform would be the same as initial value.) 2
d x dv F = Ma = M -------2- = M -----dt dt F d--- = M ---v dt v 1 L --- = ------F Ms
Transfer function for acceleration of car mass
3. We want to draw the system model for the car.
θgas
10
F
1-----Ms
vactual
• The ‘system model’ is shown above. • If θgas is specified directly, this is called ‘open loop control’. This is not desirable, but much simpler. • The two blocks above can be replaced with a single one.
θgas
10-----Ms
vactual
linear feedback controller analysis - 18.7
4. If we have an objective speed, and an actual speed, the difference is the ‘system error’ v error = v desired – v actual ‘set-point’ - desired system operating point
5. Finally, knowing the error is verror, and we can control θgas (the control variable), we can select a control system. verror
θgas
Controller
θ gas Ki L ------------- = K c + ----- + K d s v error s
*The coefficients can be calculated using classical techniques, but they are more commonly approximated by trial and error.
6. For all the components we can now draw a ‘block diagram’
vdesired
verror +
-
Ki K c + ----- + K d s s
θgas
10
F
1-----Ms
• A ‘negative feedback loop that is the fundamental part of this ‘closed loop control system’
vactual
linear feedback controller analysis - 18.8
18.2.3 Finding The System Response To An Input • Even though the transfer function uses the Laplace ‘s’, it is still a ratio of input to output. • Find an input in terms of the Laplace ‘s’
vdesired 100
step vdesired(t) = 100 for t >= 0 sec ramp vdesired(t) = 50t for t >= 0 sec t(sec) 0
Input type
Time function
STEP
f ( t ) = Au ( t )
RAMP
f ( t ) = Atu ( t )
SINUSOID
f ( t ) = A sin ( ωt )u ( t )
PULSE
f ( t ) = A ( u ( t ) – u ( t – t1 ) )
etc......
Laplace function A f ( s ) = --s A f ( s ) = ----2 s 2
Aω f ( s ) = ----------------2 2 s +ω f( s) =
linear feedback controller analysis - 18.9
Therefore to continue the car example, lets assume the input below, v desired ( t ) = 100
t ≥ 0 sec
100 v desired ( s ) = L [ v desired ( t ) ] = --------s Next, lets use the input, and transfer function to find the output of the system. v actual v actual = ----------------- v desired v desired
v actual
2 s ( K d ) + s ( K c ) + K i 100 = ------------------------------------------------------------- --------- M s 2 ---- s 10- + K d + s ( K c ) + K i
To go further, some numbers will be selected for the values. Kd = 10000 Kc = 10000 Ki = 1000 M = 1000 v actual
s 2 ( 10000 ) + s ( 10000 ) + 1000 100 - --------= ---------------------------------------------------------------------- s 2 ( 10100 ) + s ( 10000 ) + 1000 s
linear feedback controller analysis - 18.10
At this point we have the output function, but not in terms of time yet. To do this we break up the function into partial fractions, and then find inverse Laplace transforms for each. 2 s + s + 0.1 2 - v actual = 10 ------------------------------------------------2 s ( s ( 1.01 ) + s + 0.1 )
Aside: We must find the roots of the equation, before we can continue with the partial fraction expansion. recall the quadratic formula, 2
2
ax + bx + c = 0
2
– b ± b – 4ac x = -------------------------------------2a
– 1 ± 1 – 4 ( 1.01 ) ( 0.1 ) ∴x = ------------------------------------------------------------ = – 0.113, – 0.877 2 ( 1.01 )
2
2
10 s + s + 0.1 v actual = ---------- ---------------------------------------------------- 1.01 s ( s + 0.113 )s + 0.877 A B C v actual = --- + ---------------------- + ---------------------s s + 0.114 s + 0.795
linear feedback controller analysis - 18.11
2
2
10 s + s + 0.1 A = lim s ---------- --------------------------------------------------------- 1.01 s ( s + 0.113 ) ( s + 0.877 ) s→0
2
10 0.1 = ---------- ------------------------------------- 1.01 ( 0.113 ) ( 0.877 )
∴A = 99.9 2
B =
lim
s → – 0.113
2
10 - -------------------------------------------------------s + s + 0.1 --------- ( s + 0.113 ) 1.01 s ( s + 0.113 ) ( s + 0.877 )
2
2
10 ( – 0.113 ) + ( – 0.113 ) + 0.1 ∴B = ---------- ----------------------------------------------------------------- = 0.264 1.01 ( – 0.113 ) ( – 0.113 + 0.877 ) 2
C =
lim
s → – 0.877 2
2
10 s + s + 0.1 --------- -------------------------------------------------------- ( s + 0.877 ) 1.01 s ( s + 0.113 ) ( s + 0.877 ) 2
10 ( – 0.877 ) + ( – 0.877 ) + 0.1 ∴C = ---------- ----------------------------------------------------------------- = – 1.16 1.01 ( – 0.877 ) ( – 0.877 + 0.113 ) 99.9 0.264 1.16 v actual = ---------- + ---------------------- – ---------------------s s + 0.113 s + 0.877
linear feedback controller analysis - 18.12
Next we use a list of forward/inverse transforms to replace the terms in the partial fraction expansion. f(t )
f(s )
A
A --s
At
A ---2 s
Ae
– αt
A ----------s+α Aω ----------------2 2 s +ω
A sin ( ωt )
e
– ξω n t
2
ωn 1 – ξ --------------------------------------2 2 s + 2ξω n s + ω n
2
sin ( ω n t 1 – ξ )
for ( ξ < 1 )
etc.
To finish the problem, we simply convert each term of the partial fraction back to the time domain. 99.9 0.264 1.16 v actual = ---------- + ---------------------- – ---------------------s s + 0.113 s + 0.877
v actual = 99.9 + 0.264e
– 0.113t
– 1.16e
– 0.877t
linear feedback controller analysis - 18.13
18.2.4 Controller Transfer Functions • The table below is for typical control system types,
Type
Transfer Function
Proportional (P)
Gc = K
Proportional-Integral (PI)
1 G c = K 1 + ----- τs
Proportional-Derivative (PD)
G c = K ( 1 + τs )
Proportional-Integral-Derivative (PID)
1 G c = K 1 + ----- + τs τs
Lead Lag Lead-Lag
1 + ατs G c = K ------------------ 1 + τs
α>1
1 + τs G c = K ------------------ 1 + ατs
α>1
1 + τ 1 s 1 + ατ 2 s G c = K --------------------- --------------------- 1 + ατ 1 s 1 + τ 2 s
α>1 τ1 > τ2
18.3 ROOT-LOCUS PLOTS • Consider the basic transform tables. A superficial examination will show that the denominator (bottom terms) are the main factor in determining the final form of the solution. To explore this further, consider that the roots of the denominator directly impact the partial fraction expansion and the following inverse Laplace transfer. • When designing a controller with variable parameters (typically variable gain), we need to determine if any of the adjustable gains will lead to an unstable system. • Root locus plots allow us to determine instabilities (poles on the right hand side of the plane), overdamped systems (negative real roots) and oscillations (complex roots).
linear feedback controller analysis - 18.14
• Note: this procedure can take some time to do, but the results are very important when designing a control system. • Consider the example below,
linear feedback controller analysis - 18.15
Note: This controller has adjustable gain. After this design is built we must anticipate that all values of K will be used. It is our responsibility to make sure that none of the possible K values will lead to instability. +
1--s
K 1 K G ( s ) = ---s
H(s) = 1
First, we must develop a transfer function for the entire control system. K ---- s G ( s ) K G S ( s ) = --------------------------------- = --------------------------- = -----------1 + G ( s )H ( s ) s+K K 1 + ---- ( 1 ) s Next, we use the characteristic equation of the denominator to find the roots as the value of K varies. These can then be plotted on a complex plane. Note: the value of gain ’K’ is normally found from 0 to +infinity. s+K = 0
K 0 1 2 3 etc..
root
jω K→∞
K = 0
σ
Note: because all of the roots for all values of K are real negative this system will always be stable, and it will always tend to have a damped response. The large the value of K, the more stable the system becomes.
• Consider the previous example, the transfer function for the whole system was found, but then only the denominator was used to determine stability. So in general we do not need to find the transfer function for the whole system.
linear feedback controller analysis - 18.16
Consider the general form for a negative feedback system. G(s) G S ( s ) = --------------------------------1 + G ( s )H ( s )
Note: two assumptions that are not often clearly stated are that we are assuming that the control system is a negative feedback controller, and that when not given the feedback gain is 1.
The system response is a function of the denominator, and it’s roots. 1 + G ( s )H ( s ) = 0 It is typical, (especially in textbook problems) to be given only G(s) or G(s)H(s). The transfer function values will often be supplied in a pole zero form. K ( s + z0 ) ( s + z1 )… ( s + z m ) G ( s )H ( s ) = -----------------------------------------------------------------( s + p 0 ) ( s + p 1 )… ( s + p n )
• Consider the example,
linear feedback controller analysis - 18.17
Given the system elements (you should assume negative feedback), K G ( s ) = ------------------------2 s + 3s + 2
H(s) = 1
First, find the characteristic equation,. and an equation for the roots, K - ( 1 ) = 0 1 + ------------------------2 s + 3s + 2 2
s + 3s + 2 + K = 0 – 3 ± 9 – 4(2 + K) 1 – 4K roots = ------------------------------------------------ = – 1.5 ± -------------------2 2 Next, find values for the roots and plot the values, K
root
0 1 2 3
0 -1 -2 -3
jω σ
******CALCULATE AND PUT IN NUMBERS
18.3.1 Approximate Plotting Techniques • The basic procedure for creating root locus plots is, 1. write the characteristic equation. This includes writing the poles and zeros of the
linear feedback controller analysis - 18.18
equation. ( s + z 1 ) ( s + z 2 )… ( s + z m ) 1 + G ( s )H ( s ) = 1 + K ---------------------------------------------------------------- = 0 ( s + p1 ) ( s + p 2 )… ( s + pn ) 2. count the number of poles and zeros. The difference (n-m) will indicate how many root loci lines end at infinity (used later). 3. plot the root loci that lie on the real axis. Points will be on a root locus line if they have an odd number of poles and zeros to the right. Draw these lines in. 4. determine the asymptotes for the loci that go to infinity using the formula below. Next, determine where the asymptotes intersect the real axis using the second formula. Finally, draw the asymptotes on the graph. ± 180° ( 2k + 1 ) β ( k ) = ----------------------------------n–m
k ∈ [ 0, n – m – 1 ]
( p1 + p2 + … + pn ) ( z 1 + z2 + … + z m ) σ = -------------------------------------------------------------------------------------------n–m 5. the breakaway and breakin points are found next. Breakaway points exist between two poles on the real axis. Breakin points exist between zeros. to calculate these the following polynomial must be solved. The resulting roots are the breakin/breakout points. A = ( s + p 1 ) ( s + p 2 )… ( s + p n )
B = ( s + z 1 ) ( s + z 2 )… ( s + z m )
d- d ---A B – A ----- B = 0 ds ds 6. Find the points where the loci lines intersect the imaginary axis. To do this substitute the phasor for the laplace variable, and solve for the frequencies. Plot the asymptotic curves to pass through the imaginary axis at this point. ( jω + z 1 ) ( jω + z 2 )… ( jω + z m ) 1 + K --------------------------------------------------------------------------- = 0 ( jω + p 1 ) ( jω + p2 )… ( jω + p n ) • Consider the example in the previous section,
linear feedback controller analysis - 18.19
Given the system elements (you should assume negative feedback), K G ( s ) = ------------------------2 s + 3s + 2
H(s) = 1
Step 1: (put equation in standard form) 1 K - ( 1 ) = 1 + K -------------------------------1 + G ( s )H ( s ) = 1 + ------------------------2 ( s + 1 ) (s + 2) s + 3s + 2 Step 2: (find loci ending at infinity) m = 0
n = 2
n–m = 2
(from the poles and zeros of the previous step) (loci end at infinity)
Step 3: (plot roots) jω
σ -2
-1
Step 4: (find asymptotes angles and real axis intersection) 180° ( 2k + 1 ) β ( k ) = -------------------------------2
k ∈ I [ 0, 1 ]
jω
180° ( 2 ( 0 ) + 1 ) β ( 0 ) = ------------------------------------- = 90° 2 180° ( 2 ( 1 ) + 1 ) β ( 1 ) = ------------------------------------- = 270° 2
σ -2
-1
( 0 )( – 1 – 2) σ = ----------------------------- = 0 2 asymptotes
linear feedback controller analysis - 18.20
Step 5: (find the breakout points for the roots) jω
2
A = 1
B = s + 3s + 2
d---A = 0 ds
d---B = 2s + 3 ds
d d A ----- B – B ----- A = 0 ds ds 2
1 ( 2s + 3 ) – ( s + 3s + 2 ) ( 0 ) = 0
σ -2
-1 -1.5
2s + 3 = 0 s = – 1.5 Note: because the loci do not intersect the imaginary axis, we know the system will be stable, so step 6 is not necessary, but we it will be done for illustrative purposes.
Step 6: (find the imaginary intercepts) 1 + G ( s )H ( s ) = 0 1 - = 0 1 + K ------------------------2 s + 3s + 2 2
s + 3s + 2 + K = 0 2
( jω ) + 3 ( jω ) + 2 + K = 0 2
– ω + 3jω + 2 + K = 0 2
ω + ω ( – 3j ) + ( – 2 – K ) = 0 2
3j ± ( – 3j ) – 4 ( – 2 – K ) 3j ± – 9 + 8 + 4K 3j ± 4K – 1 ω = -------------------------------------------------------------- = ---------------------------------------------- = ------------------------------2 2 2 In this case the frequency has an imaginary value. This means that there will be no frequency that will intercept the imaginary axis.
• Plot the root locus diagram for the function below,
linear feedback controller analysis - 18.21
K( s + 5 ) G ( s )H ( s ) = --------------------------------2 s ( s + 4s + 8 )
18.4 DESIGN OF CONTINUOUS CONTROLLERS
18.5 SUMMARY •
linear feedback controller analysis - 18.22
18.6 PRACTICE PROBLEMS 3. Given the transfer function below, and the input ‘x(s)’, find the output ‘y(t)’ as a function of time. y--------( s )5 = ----------x( s) s+2
x( t) = 5
t ≥ 0 sec
8. Draw a detailed root locus diagram for the transfer function below. Be careful to specify angles of departure, ranges for breakout/breakin points, and gains and frequency at stability limits. 2
2K ( s + 0.5 ) ( s + 2s + 2 )G ( s ) = ----------------------------------------------------------3 s (s + 1)(s + 2) 10. Draw the root locus diagram for the transfer function below, 2
K(s + 4)G ( s ) = ---------------------2 s (s + 1)
11. Draw the root locus diagram for the transfer function below, K(s + 1)(s + 2) G ( s ) = ------------------------------------3 s 12. The block diagram below is for a motor position control system. The system has a proportional controller with a variable gain K. θd
2
Vd +
Ve -
K
Vs
100---------s+2
ω
1--s
Va 2
a) Simplify the block diagram to a single transfer function.
ans.
200K ----------------------------------2 s + 2s + 200K b) Draw the Root-Locus diagram for the system (as K varies). Use either the approximate or exact techniques.
θa
linear feedback controller analysis - 18.23
– 2 ± 4 – 4 ( 200K ) roots = ------------------------------------------------ = – 1 ± 1 – 200K 2 Im K r o o K=0.005 ts
ans.
0
-2
0
Re
-1
0
c) Select a K value that will result in an overall damping coefficient of 1. State if the Root-Locus diagram shows that the system is stable for the chosen K.
(ans.
2
2
∴K = 0.005
∴ω n = 1
2
s + 2s + 200K = s + 2ζωn s + ω n
From the root locus graph this value is critically stable. 13. Draw a Bode Plot for either one of the two transfer functions below. ( s + 1 ) ( s + 1000 -) ----------------------------------------2 ( s + 100 )
OR
5--2 s
15. Given the system transfer function below. θ 20K ----o- = ----------------------------2 θd s + s + 20K a) Draw the root locus diagram and state what values of K are acceptable. b) Select a gain value for K that has either a damping factor of 0.707 or a natural frequency of 3 rad/sec. c) Given a gain of K=10 find the steady state response to an input step of 1 rad. d) Given a gain of K=10 find the response of the system as 17. The equation below describes a dynamic system. The input is ‘F’ and the output is ‘V’. It has the initial values specified. The following questions ask you to find the system response to a
linear feedback controller analysis - 18.24
unit step input using various techniques. V(0) = 1 V'' + 10V' + 20V = – 20F
V' ( 0 ) = 2
a) Find the response using Laplace transforms. b) Find the response using the homogenous and particular solutions. c) Put the equation is state variable form, and solve it using your calculator. Sketch the result accurately below. 18. A feedback control system is shown below. The system incorporates a PID controller. The closed loop transfer function is given. Y X + 3Ki ---------K p + ----- + K d s s+9 s 4
2
s ( 3K d ) + s ( 3K p ) + ( 3K i ) --Y- = -----------------------------------------------------------------------------------2 X s ( 4 + 3K d ) + s ( 36 + 3K p ) + ( 3K i )
a) Verify the close loop controller function given. b) Draw a root locus plot for the controller if Kp=1 and Ki=1. Identify any values of Kd that would leave the system unstable. c) Draw a Bode plot for the feedback system if Kd=Kp=Ki=1. d) Select controller values that will result in a natural frequency of 2 rad/sec and damping coefficient of 0.5. Verify that the controller will be stable. e) For the parameters found in the last step find the initial and final values. f) If the values of Kd=1 and Ki=Kd=0, find the response to a ramp input as a function of time. 19. The following system is a feedback controller for an elevator. It uses a desired heigh ‘d’ provided by a user, and the actual height of the elevator ‘h’. The difference between these two is called the error ‘e’. The PID controller will examine the value ‘e’ and then control the speed of the lift motor with a control voltage ‘c’. The elevator and controller are described with transfer functions, as shown below. all of these equations can be combined into a single system transfer
linear feedback controller analysis - 18.25
equation as shown. e = d–h
error
2 Ki c-2s + 1 + s = K p + ----- + K d s = -------------------------s s e combine the transfer functions 2
PID controller
h--10 = -----------2 c s +s
elevator
2
10 10 ( s + 1 ) 2s + 1 + s - -----------10 (s + 1) c-- h--- = h--- = ------------------------= ------------------- ------------------- = ---------------------2 2 e c s s(s + 1 ) e s s s +s h 10 ( s + 1 ) eliminate ‘e’ ----------= ---------------------2 d–h s 10 ( s + 1 ) h = ---------------------(d – h) 2 s 10 ( s + 1 ) 10 ( s + 1 ) = ---------------------(d) h 1 + ---------------------2 2 s s 10 ( s + 1 ) --------------------- 2 h--s 10s + 10 system transfer function = -------------------------------- = ------------------------------2 10 ( s + 1 ) d s + 10s + 10 1 + --------------------- 2 s a) Find the response of the final equation to a step input. The system starts at rest on the ground floor, and the input (desired height) changes to 20 as a step input. b) Write find the damping coefficient and natural frequency of the results in part a). c) verify the solution using the initial and final value theorems.
linear feedback controller analysis - 18.26
(ans. a) h 10s + 10 --- = ------------------------------2 d s + 10s + 10
20 d ( s ) = -----s
d ( t ) = 20u ( t )
B C 10s + 10 - 20 ------ = A --- + -------------------------------- + -------------------------------h = ------------------------------2 s s + 5 – 3.873j s + 5 + 3.873j s + 10s + 10 s 200s + 200 - A = lim ------------------------------= 20 2 s → 0 s + 10s + 10 B =
200s + 200 - ---------------------------------------= – 2.5 – 22.6j s → – 5 + 3.873j s ( s + 5 + 3.873j ) lim
C = – 2.5 + 22.6j h ( t ) = 20 + L
–1
h ( t ) = 20 + 2 ( 22.73 )e b)
– 5t
2
25 1 – -----2- ω n ωn
25 2 2 15 = 1 – -----2- ω n = ω n – 25 ω n
c)
θ = 4.602 α = 5 β = 3.873
5 ζ = -----ωn
1 – ζ ωn =
ωn =
35 = 5.916
5 ζ = ---------- = 0.845 35
10s + 10 - 20 ------ = lim 10s -------- 20 = 0 h ( 0 ) = lim s ------------------------------s → ∞ s 2 + 10s + 10 s s → ∞ s2 10s + 10 - 20 10 )20------ = (---------------h ( ∞ ) = lim s ------------------------------= 20 2 s 10 s→0 s + 10s + 10
2
2
2.5 + 22.6 = 22.73
cos ( 3.873t + 4.602 )
–5 = – ωn ζ 3.873 =
A =
– 2.5 – 22.6j- -------------------------------– 2.5 + 22.6j-------------------------------+ s + 5 – 3.873j s + 5 + 3.873j
linear feedback controller analysis - 18.27
18.7 PRACTICE PROBLEM SOLUTIONS
18.8 ASSIGNMENT PROBLEMS 1. a) The block diagram below is for an angular positioning system. The setpoint is a desired angle, which is converted to a desired voltage. This is compared to a feedback voltage from a potentiometer. A PID controller is used to generate an output voltage to drive a DC motor. Simplify the block diagram. PID Controller θd
1--------0.25
Vd
e +
Ki K p + ----- + sK d s
Motor Vs
100 --------------s + 0.1
ω
1--s
θa
Potentiometer Va
1--------0.25
b) Given the transfer function below, select values for Kp, Ki and Kd that will result in a second order response that has a damping coefficient of 0.125 and a natural frequency of 10rad/s. (Hint: eliminate Ki). 2
s ( 400K d ) + s ( 400K p ) + ( 400K i ) θa ----- = ---------------------------------------------------------------------------------------------------------3 2 θd s + s ( 0.1 + 400K d ) + s ( 400K p ) + ( 400K i )
c) The function below has a step input of magnitude 1.0. Find the output as a function of time using numerical methods. Give the results in a table OR graph. θa s ( 0.9 ) + ( 4 ) ----- = ----------------------------------2 θd s + 2.5s + 100 d) The function below has a step input of magnitude 1. Find the output as a function of time by integrating the differential equation (i.e., using the homogeneous and particular solutions). θa s ( 0.9 ) + ( 4 ) ----- = -----------------------------------2 θd s + 2.5s + 100
linear feedback controller analysis - 18.28
e) The function below has a step input of magnitude 1. Find the output as a function of time using Laplace transforms. θ s ( 0.9 ) + ( 4 ) ----a- = ----------------------------------2 θd s + 2.5s + 100 f) Given the transfer function below; a) apply a phasor/Fourier transform and express the gain and phase angle as a function of frequency, b) calculate a set of values and present them in a table, c) use the values calculated in step b) to develop a frequency response plot on semi-log paper, d) draw a straight line approximation of the Bode plot on semi-log paper. θa ( 0.9 ) + ( 4 )----- = s---------------------------2 θd s +s+4
2. Select a controller transfer function, Gc, that will reduce the system to a first order system with a time constant of 0.5s, as shown below. Controller θd
1--------0.25
Vd
Motor
e
Vs
Gc + -
Potentiometer Va
desired transfer function
1--------0.25 θa 1 ----- = ----------θd s+2
100 --------------s + 0.1
ω
1--s
θa
convolution - 19.1
19. CONVOLUTION
Topics:
Objectives:
19.1 INTRODUCTION • Can be used to find normal input reponses for linear systems • It is most useful for finding an output response for a system given an arbitrary input function • It is also the basis for other methods that come later for system analysis.
19.2 UNIT IMPULSE FUNCTIONS • A unit impulse function
convolution - 19.2
Unit impulse
P(t)
1 Area = ε --- = 1 ε
1--ε
t
ε Dirac delta function δ ( t ) = lim P ( t )
This function is theoretically undefined, it goes to infinity for an instant, but it does have an area of 1.
ε→0 ∞
Area =
∫–∞ δ ( t ) dt
= 1
t 0
• For a unit step function,
u(t < 0) = 0 u(t ≥ 0) = 1 d---u( t) = δ ( t ) dt
• If we look at an input signal (force here) we can break it into very small segments in time. As the time becomes small we can approximate it with a set of impulses.
convolution - 19.3
F(t)
∆t → 0
An impulse t
Figure 19.1
An impulse as a brief duration (instant) pulse
19.3 IMPULSE RESPONSE • If we put an impulse into a system the output will be an impulse response.
F(t)
x( t)
∫ g ( t )F ( t ) dt t
Figure 19.2
Response of the system to a single pulse
• If we add all of the impulse responses together we will get a total system response. This operation is called convolution.
t
convolution - 19.4
F( t)
x(t) sum of responses t
∫ g ( t – τ )F ( τ ) dτ 0
t
t impulse responses
The convolution integral t
c(t) =
∫ g ( t – τ )r ( τ ) dτ 0
Figure 19.3
A set of pulses for a system gives summed responses to give the output
• Consider the unit impulse of a system with the given differential equation. Note: This method is only valid for trivial differential equations with only one homogeneous term. The preferred method is shown later.
convolution - 19.5
The following first order differential equation has an input ’F’. The input can be replaced with a unit impulse function. · x + 0.5x = 2F · X + 0.5X = 2δ ( t ) The homogeneous solution can be found. · X + 0.5X = 0
guess,
Xh = e
At
· At X h = Ae
A + 0.5 = 0 X h = Ce
– 0.5 t
The particular solution is found. · X + 0.5X = 2δ ( t )
guess,
Xp = A
· Xp = 0
0 + 0.5A = 2 ( 0 ) Xp = A = 0 The initial condition caused by the impulse function found, assuming a zero initial condition. 1- 1- --- --- dt X0 + 0.5 ( 0 ) = 2 dt X0 = 2 The initial condition caused by the impulse function found, assuming a zero initial condition. X ( t ) = Ce
– 0.5 t
X ( 0 ) = 2 = Ce X ( t ) = 2e
0
– 0.5 t
• Note that the derivation of the unit impulse function assumed zero initial conditions, so the process of convolution must also assume systems start at rest and undeflected.
19.4 CONVOLUTION • The following example shows the use of the convolution integral to find a num-
convolution - 19.6
ber of responses.
The unit impulse response to a step input can be calculated using the convolution integral. t
x(t) =
t
∫ X ( t – τ )F ( τ ) dτ 0
x ( t ) = 2e
– 0.5t e
0.5t
=
t
∫ ( 2e
– 0.5 ( t – τ )
) ( 1 ) dτ = 2e
– 0.5t
0 0.5 ( 0 )
∫e
0.5τ
dτ = 2e
– 0.5t e
0.5τ
---------0.5
0
t
0
---------- e-------------- = 4e –0.5t ( e 0.5t – 1 ) = 4 ( 1 – e –0.5t ) 0.5 – 0.5
The unit impulse response to a unit ramp input can be calculated using the convolution integral. t
x(t) =
t
∫ X ( t – τ )F ( τ ) dτ
=
0
x(t) =
∫ 2e
t – 0.5 ( t – τ )
τ dτ = 2e
0
– 0.5t
∫e
0.5τ
τ dτ
0
FINISH THE INTEGRAL
The unit impulse response to a sinusoidal input can be calculated using the convolution integral. t
x(t) =
∫ X ( t – τ )F ( τ ) dτ 0
x(t) =
t
=
∫ 2e
t – 0.5 ( t – τ )
sin ( τ ) dτ = 2e
0
– 0.5t
∫e
0.5τ
sin ( τ ) dτ
0
FINISH THE INTEGRAL
19.5 NUMERICAL CONVOLUTION • The convolution integral can also be solved numerically. This is particularly useful for systems with arbitrary inputs.
convolution - 19.7
n–1
x ( t ) = h ∑ X ( t – ( i + 0.5 )h )F ( ( i + 0.5 )h ) i=0
where,
t n = --- = number of steps h h = step size (s) X ( t ) = the unit impulse response function F ( t ) = the input function
• This can be applied to the previous example for a unit step input to find the system position at 10 seconds, with a 2 second time step.
convolution - 19.8
n–1
x ( t ) = h ∑ 2e
– 0.5 ( t – ( i + 0.5 )h )
F ( ( i + 0.5 )h )
i=0
10 n = ------ = 5 2
5–1
x ( 10 ) = 2 ∑ 2e
– 0.5 ( 10 – 2 ( i + 0.5 ) )
(1)
i=0 4
x ( 10 ) = 4 ∑ e
– 4.5 + i
i=0
x ( 10 ) = 4 ( e
– 4.5 + 0
x ( 10 ) = 4 ( e
– 4.5
+e
+e
– 4.5 + 1
– 3.5
+e
– 2.5
+e
– 4.5 + 2
+e
– 1.5
+e
+e
– 4.5 + 3
– 0.5
+e
– 4.5 + 4
)
)
x ( 10 ) = 4 ( 0.01111 + 0.03020 + 0.08208 + 0.22313 + 0.6065 ) x ( 10 ) = 3.81208 This value can be compared to the exact value calculated below. The accuracy of the numerical value would increase substantially if the step size were decreased. x ( 10 ) = 4 ( 1 – e
– 0.5 ( 10 )
) = 4 ( 1 – 0.006738 ) = 3.973048
• A Scilab program to perform the previous calculation numerically is shown below.
convolution - 19.9
// A numerical convolution example function foo=X(t) // The impulse response function foo = 2 * exp(-0.5*t); endfunction function foo=F(t) // The input function foo = 1; // a step function endfunction // define the variables function foo = convolution(t, h) // The integration function n = t / h; foo = 0; for i=0:n-1 foo = foo + h * X(t - (i+0.5)*h) * F((i+0.5)*h); end endfunction h = 1; // the time step for the integration t = 10; // the time point to calculate printf("The estimated value x(%fs) = %f \n", t, convolution(t, h)); x_calc = 4*(1-exp(-0.5*t)); printf("The actual value is x(%fs) = %f \n", t, x_calc);
19.6 LAPLACE IMPULSE FUNCTIONS • The convolution integral can be difficult to deal with because of the time shift. But, the Laplace transform for the convolution integral turns it into a simple multiplication.
convolution - 19.10
t
c(t) =
∫ g ( t – τ )r ( τ ) dτ 0
C ( s ) = G ( s )R ( s )
Figure 19.4
The convolution integral in the Laplace s-domain
19.7 SUMMARY •
19.8 PRACTICE PROBLEMS
19.9 PRACTICE PROBLEM SOLUTIONS
19.10 ASSIGNMENT PROBLEMS 1.
state space analysis - 20.1
20. STATE SPACE ANALYSIS
Topics:
Objectives:
20.1 INTRODUCTION - state equations can be converted to transfer functions. The derivation follows.
state space analysis - 20.2
State equations as functions of time · x = Ax + Bu y = Cx + Du In the s-domain sX – X 0 = AX + BU X ( sI – A ) = BU + X 0 –1
–1
X = ( sI – A ) BU + ( sI – A ) X 0 Y = CX + DU –1
–1
Y = C ( ( sI – A ) BU + ( sI – A ) X 0 ) + DU –1
–1
Y = ( C ( sI – A ) B + D )U + C ( sI – A ) X 0 Assuming the system starts at rest, –1
Y = ( C ( sI – A ) B + D )U Y–1 --= ( C ( sI – A ) B + D ) U
(the transfer function)
- state equation coefficient matrices can be transformed to another equivalent for, if the state vector is rearranged.
state space analysis - 20.3
State equations as functions of time · x = Ax + Bu y = Cx + Du Map one state vector to another one x = Tz This can be used to calculate new coefficient matrices –1 · z = T ( Ax + Bu ) –1 · z = T ( ATz + Bu ) –1 –1 · z = T ATz + T Bu –1 –1 · z = T ATz + T Bu
–1
–1
A = T AT
B = T B
C = CT
D = D
· z = Az + Bu The output equation becomes y = Cx + Du y = CTz + Du y = CTz + Du y = Cz + Du The equivalent set of state equations is, · z = Az + Bu
A = T AT
B = T B
y = Cz + Du
C = CT
D = D
•
–1
–1
state space analysis - 20.4
The two following transfer functions are equivalents –1
G = C ( sI – A ) B + D –1
G = C ( sI – A ) B + D This can be shown by applying the transformation matrix –1
–1
–1
–1
G = CTT ( sI – A ) TT B + TT D –1
–1
–1
G = ( CT ) ( T ( sI – A ) T ) ( T B ) + D –1
–1
G = ( CT ) ( ( sI – A ) ) ( T B ) + D –1
G = C ( ( sI – A ) )B + D = G
• The transfer function form can be put into a matrix form. In this case the denominator is the characteristic equation.
The transfer function can be said to be equivalant to the determinants of the matrix form. ( sI – A ) – B C D sI – A )D – ( – B )C------------------------------------ = (--------------------------------------------= ( sI – A )D + BC ( sI – A ) sI – A sI – A ( sI – A ) – B C D –1 poles G = C ( sI – A ) B + D = ------------------------------------ = -------------sI – A zeros sI – A = characteristic equation = homogeneous
• The free (homogeneous) response of a system can be used to find the state transition matrix.
state space analysis - 20.5
The homogeneous equation can be written in the s-domain, and then converted to time. X h = sI – A X0 –1
x h ( t ) = L [ sI – A X 0 ] xh ( t ) = L
–1
2
3
-I + A --- + A ------ + A ------ + … X 0 s s s2 s3
At
xh ( t ) = e x0
e
At
= transition matrix
aside: This expansion is a McLaurin (Taylor) series. e
At
1 22 1 33 = I + At + ----- A t + ----- A t + … 2! 3!
• The forced response (particular) response of the system can be found using convolution,
The homogeneous equation can be written in the s-domain, and then converted to time. · x = Ax + Bu t
x(t) = e x( 0) + ∫ e At
A(t – τ)
Bu ( τ ) dτ
0
y = Cx + Du
t
y ( t ) = Ce x ( 0 ) + ∫ Ce At
A(t – τ)
Bu ( τ ) dτ + Du ( t )
0
initial response
impulse response
• As an example the homogeneous/free response of the system is shown below.
state space analysis - 20.6
Given a second order differential equation, the state matrix can be found, ·· F = Mx · x = v 0 d- x ---= 01 x + 1 F A = 0 1 F · dt ---v 00 v 0 0 v = ----M M This can be used to find the inverse matrix, s 1 1s --1--- 1 ------2 2 0 s s s2 –1 s 1 0 0 1 s – 1 s ------------( sI – A ) = s – = 2 = = = 0 1 0 s 0 0 0 s s –0 1 ---- ---0 --2 2 s s s The function of time can be found assuming an initial position of 10 and velocity of 5. –1
e
At
–1
–1 –1 = L [ ( sI – A ) ] = 1 t 0 1
At x h ( t ) = x = e 10 = 1 t 10 = 10 + 5t v 5 0 1 5 5
• The forced/particular solution is shown below,
Given a second order differential equation, the state matrix can be found, ·· F = Mx
• If a matrix is diagonizable, the diagonal matrix can be found with the following technique. This can be used for more advanced analysis techniques to create diagonal (and
state space analysis - 20.7
separable) system matrices.
Given a matrix A, a purely diagonal matrix may be found, –1
T AT = Λ
A = TΛT
–1
λ1 …
Λ = … … λn
This may also be written as, e
At
Λt – 1
λ t
= Te T
e
Λt
e 1 … = … … e
λn t
This can also be applied to the 1 22 At e = I + At + ----- A t + … 2! 1 At –1 –1 2 2 e = I + TΛT t + ----- ( TΛT ) t + … 2! Eigenvalues can be found using the following relationship. If any of the Eigenvalues are repeated the Jordan normal form is required. λI – A = 0
Note: the Eigenvalues are the values found in the characteristic/homogeneous equation solution.
The Eigenvalues are then used to find the Eigenvectors, ( λI – A )v = 0
Av = λv
The Eigenvectors are then combined into a single matrix, this is the transition matrix.
• example,
state space analysis - 20.8
Given the state matrix A = –1 2 –3 4 The eigenvalues can be calculated, λI – A = λ 1 0 – – 1 2 0 1 –3 4
=
λ + 1 –2 3 λ–4 2
∴ = ( λ + 1 ) ( λ – 4 ) – ( – 6 ) = λ – 3λ + 2 = ( λ – 2 ) ( λ – 1 ) λ1 = 2
Therefore the Eigenvalues are,
λ2 = 1
An eigenvector can be calculated using the Eigenvalue 2. – 1 2 u 11 = λ u 11 = 2 u 11 1 – 3 4 u 21 u 21 u 21 – u 11 + 2u 21 = 2u 11
∴2 u 21 = 3u 11
v1 =
u 11 u 21
= 2 3
Another eigenvector can be calculated using the Eigenvalue 1. – 1 2 u 12 = λ u 12 = 1 u 12 2 – 3 4 u 22 u 22 u 22 – u 12 + 2u 22 = u 12
∴u 22 = u 12
v2 =
u 12 u 22
= 1 1
The Eigenvectors can be combined to a single matrix. T = v1 v2 = 2 1 31 To check, A
Av i = λ i v i u11 u 21
,A
u 12 u 22
= 2 2 ,1 1 3 1
–1 2 2 , – 1 2 1 = 4 , 1 –3 4 3 – 3 4 1 6 1 4, 1 = 4, 1 6 1 6 1
verified
• If there are repeated Eigenvalues in the system the Jordan Form can be used.
state space analysis - 20.9
J =
λ1 1 0 …
0
0
0 λ2 1 …
0
0
0 0 λ3 …
0
0
… … … … … … 0 0 0 … λn – 1 1 0 0 0 …
0
Jordan block
λn
Consider the example below with repeated eigenvalues. –2 1 1 A = 1 –2 1 1 1 –2 λI – A =
Find a matrix, that has repeated eigenvalues, and is not singular
λ – 2 –1 – 1 –1 λ – 2 –1 – 1 –1 λ – 2
2
= (λ + 3) (λ – 0)
state space analysis - 20.10
Solve for the Jordan block one column at a time, T 11 1 T 21 T 31
– 2 T 11 + T 21 + T 31 – 2 1 1 T 11 = 1 –2 1 T 21 = T 11 – 2T 21 + T 31 1 1 – 2 T 31 T 11 + T 21 – 2T 31 T 11 = 2T 11 + T 21 + T 31 T 21 = T 11 + 2T 21 + T 31 T 31 = T 11 + T 21 + 2T 31
T 12 1 T 22 T 32
– 2 T 12 + T 22 + T 32 – 2 1 1 T 12 = 1 –2 1 T 22 = T 12 – 2T 22 + T 32 1 1 – 2 T 32 T 12 + T 22 – 2T 32 T 12 = 2T 12 + T 22 + T 32 T 22 = T 12 + 2T 22 + T 32 T 32 = T 12 + T 22 + 2T 32
T 13 0 T 23 T 33
– 2 T 13 + T 23 + T 33 – 2 1 1 T 13 = 1 –2 1 T 23 = T 13 – 2T 23 + T 33 1 1 – 2 T 33 T 13 + T 23 – 2T 33
4T 13 = 2T 13 + T 23 + T 33 4T 23 = T 13 + 2T 23 + T 33 4T 33 = T 13 + T 23 + 2T 33
FIX
T 21 = T 21 = T 31 =
state space analysis - 20.11
• The Eigenvectors can be used to calculate the system response.
Given the following Eigen values and vectors the free response is, λ1 = 2
λ2 = 1 n
xh ( t ) =
∑ i=1
vi e
λi t
v1 = 2 3
v2 = 1 1 2t
t
2t 1t = 2 e + 1 e = 2e + e 2t t 3 1 3e + e
• zeros of state space functions can be found using the state matrices.
state space analysis - 20.12
The following relationship locates the zero frequencies in state equations. s0 I – A –B C
= 0
D
Consider the example beginning with state equations, · x = v – 5F · v = – 3x – 4v + 5F d- x ---= 0 1 x + –5 F dt v –3 – 4 v 5 A =
0 1 – 3 –4
x = 1 0 x + 0F v
B = –5 5
C = 1 0
D = 0
This can be put into the matrix form, 1 0 – 0 1 – –5 s0 0 1 –3 –4 5 1 0 s0
–1
= 0
0
5
3 s0 + 4 – 5 = 0 1 0 0 s 0 ( 0 ) – ( – 1 ) ( – 4.5 ) + 5 ( – ( s 0 + 4 ) ) = 0 – 24.5 = 5s 0 s 0 = – 4.9 There is one zero at -4.9 rad/sec. The order of the polynomial determines the number of zeros. If the polynomial has no ’s’ terms, then there are no zeros.
state space analysis - 20.13
20.2 OBSERVABILITY - a system is observable iff the system state x(t) can be found by observing the input u and output y over a period of time from x(t) to x(t+h). - If an input is to be observable it must be detectable in the output. For example consider the following state equations.
d- x ---= a b x + e u dt v c d v f y = g h x + j u v k if the parameters c, d or f were not in the final expression for y, the second state equation would be said to be not observable. This will happen when an output parameter is zero in the C matrix and an equation is decoupled in the A matrix, i.e. the same variable column is zero. For example, d- x ---= 1 0 x + 3 u dt v 0 –a v b y = 5 0 x + 6 u v G = C ( sI – A ) B + D = 5 0 s 0 – 1 0 0 s 0 –a –1
G = 5 0 s–1 0 0 s+a
G = 5 0
1---------s–1 0
0
–1
3 + 6 b
s+a 0 0 s – 1 3 3 + -------------------------------= + 6 6 5 0 ( s – 1 ) ( s + a -) b b 3 ----------15 + 6 = 5 0 s – 1 + 6 = ----------- + 6 s–1 b ---------s+a
–1
3 1- b ---------s+a
Note: the variables ’a’ and ’b’ both dissapeared because this system is not observable.
state space analysis - 20.14
• This often happens when a system has elements that are decoupled, or when a pole and zero cancel each other. • Observability can be verified formally for an LTI system with the following relationship.
The system is unobservable if the equation below is true for any state, At *
1 0 * x = 0 , 1 ,… … … 0 0
t≥0
Ce x = 0
0 0 … 1
One example, A = 1 2 3 4
C = 5 6
At *
e e
t
Ce x = 5 6
e
3t
e
2t 4t
1 0 1 0 , = ( 5e t + 6e 3t ) ( 5e 2t + 6e 4t ) , 0 1 0 1
At * Ce x = ( 5e t + 6e 3t ) ( 5e 2t + 6e 4t ) 1 , ( 5e t + 6e 3t ) ( 5e 2t + 6e 4t ) 0 0 1 At *
t
3t
2t
4t
Ce x = { ( 5e + 6e ), ( 5e + 6e ) } Both values are non-zero, so both states are observable. One example, A = 1 0 0 2
C = 3 0
t At * t Ce x = 3 0 e 0 1 , 0 = 3e t 0 1 , 0 = { 3e , 0 } 2t 0 1 0 e 0 1
The second state is not observable.
• Another theorem for testing observability is given below. If any of the states satisfies the equation it is unobservable.
state space analysis - 20.15
C CA … CA
*
x = 0
n–1
• Yet another test for observability is,
rank ( M o ) = rank
C CA … CA
= n
n–1
• If a system in unobservable, it is possible to make it observable by changing the model. • A pole-zero cancellation is often the cause of the loss of observability. • If all unstable modes are observable, the system is detectable.
20.3 CONTROLLABILITY - a system is controllable iff there is an input u(t) that will cause the system to go from any initial state to any final state in a finite time. - stabilizable if it is controllable or if the uncontrollable nodes are stable. - If an input is to be observable it must be detectable in the output. For example consider the following state equations.
state space analysis - 20.16
d- x ---= a b x + e u dt v c d v f y = g h x + j u v k if the parameters c, d or f were not in the final expression for y, the second state equation would be said to be not uncontrollable. This will happen when an output parameter is zero in the C matrix and an equation is decoupled in the A matrix, i.e. the same variable column is zero. For example, d- x ---= 1 0 x + 2 u dt v a –b v 0 y = 3 4 x + 5 u v G = C ( sI – A ) B + D = 3 4 s 0 – 1 0 0 s a –b –1
G = 3 4 s–1 0 0 s+b
G = 3 4
1---------s–1 0
–1
–1
2 + 5 0
s+B 0 0 s–1 2 2 + + 5 5 = 3 4 -------------------------------(s – 1)( s + b) 0 0
0
6 2 + 2 + 3 4 -+5 5 = ----------- ----------5 = ---------s – 1 s – 1 s + b 1- 0 0 ---------s+b
Note: the variables ’a’ and ’b’ both dissapeared because this system is not controllable.
• This can be verified with the
state space analysis - 20.17
The basic relationship is, * T At
(x ) e B = 0
t≥0
An example is, A = 1 2 3 4
B = 5 6 T
1 0 , e 0 1
1 2t 3 4
e 1t e 2t 5 5 = , 1 0 0 1 6 e 3t e 4t 6
5e 1t + 6e 2t 1t 2t 3t 4t = { 5e + 6e , 5e + 6e } 1 0, 0 1 5e 3t + 6e 4t The results are both non-zero, so both states are controllable. An example is, A = 1 0 0 2
B = 0 3 T
1 0 , e 0 1
1 0t 0 2
e 1t 0 0 0 = , 1 0 0 1 3 0 e 2t 3
0 2t 1 0 , 0 1 2t = { 0, 3e } 3e The first state has a zero, so it in not controllable.
• Another test for controllability is,
* T
( x ) B AB … A n – 1 B
• Yet another test for controllability is,
state space analysis - 20.18
rank ( M c ) = rank B AB … A n – 1 B = n
• For a system to be controllable, all of the states must be controllable. • If a system in uncontrollable, it is possible to make it observable by changing the model. • A pole-zero cancellation is often the cause of the loss of observability. • if all unstable modes are controllable, the systems is said to be stabilizable. • The principle of Duality requires that a system be completely observable to be controllable.
20.4 OBSERVERS
• Observers estimate system state variables when not all of the variables are directly observable. • Observers use a limited set of system states that are available to identify other system states that are not observable. • The separation principle ensures that the observer cannot effect the stability of the system it is observing.
20.5 SUMMARY •
state space analysis - 20.19
20.6 PRACTICE PROBLEMS
20.7 PRACTICE PROBLEM SOLUTIONS
20.8 ASSIGNMENT PROBLEMS 1.
20.9 BIBLIOGRAPHY How, J, "16.31 Feedback Control Course Notes", MIT Opencourseware website.
state space control - 21.1
21. STATE SPACE CONTROLLERS
Topics:
Objectives:
21.1 INTRODUCTION • There are a few terms to be defined, identification - the process of determining a state space (or other) model of a process. parameter identification - used to estimate model parameter values. estimatior - this tries to determine state variable values given available data. observer - a special type of estimator that uses available input and output data to estimate a system state given unknown initial conditions. This is simalar to running a system simulation in parallel with the real system. compensator - a feedback control system designed to drive a system to an arbitrary input. regulator - a feedback control system designed to drive a system to a given operating point. A special case of a compensator with a zero input.
state space control - 21.2
21.2 FULL STATE FEEDBACK
• The basic definition of a feedback controller is below,
The system state equations, with D=0, · x = Ax + Bu · y = Cx + 0u The Eigenvalues of A give the system poles u = r – Kx
r = setpoint u = control output/plant input K = proportional gain values
· x = Ax + B ( r – Kx ) · x = ( A – BK )x + Br · x = A c x + Br · y = Cx
• An example of a controller design follows,
state space control - 21.3
The controller design involves calculating K values to meet control objectives.
· x =
· y = 1 x 0
0 1 x+ 0 u – 2 –3 4
Check for controlability, M c = B AB =
0 4
0 1 0 – 2 –3 4
= 0 4 4 – 12
The rank is 2, and the order of the matrix A is 2, so the system is controllable. Check for the stability of the system without a controller, sI – A =
s 0 – 0 1 0 s – 2 –3
s –1 –2 s – 3
= 2
sI – A = s ( s – 3 ) – 2 = s – 3s – 2 = ( s – ) ( s – ) Therefore, the uncompensated system is....... Select an input vector with variables, u = – Kx = – k 1 k 2 x Ac =
0 1 0 1 – 0 0 1 – 0 0 = k1 k2 = 4k 1 4k 2 ( – 2 – 4k 1 ) ( – 3 – 4k 2 ) – 2 –3 4 –2 – 3
sI – A c =
0 1 s 0 – ( – 2 – 4k 1 ) ( – 3 – 4k 2 ) 0 s
=
s –1 s + 2 + 4k 1 s + 3 + 4k 2
2
sI – A c = s ( s + 3 + 4k 2 ) + ( s + 2 + 4k 1 ) = s + s ( 4 + 4k 2 ) + ( 2 + 4k 1 ) The system is clearly second order, so the second order methods may be used to select parameters. However for variety, why don’t we select a system that has poles at, p = 1 + 2j, 1 – 2j 2
s + s ( 4 + 4k 2 ) + ( 2 + 4k 1 ) = ( s + 1 + 2j ) ( s + 1 – 2j ) 2
2
2
2
s + s ( 4 + 4k 2 ) + ( 2 + 4k 1 ) = s + s ( 1 + 2j + 1 – 2j ) + ( ( 1 + 2j ) ( 1 – 2j ) ) s + s ( 4 + 4k 2 ) + ( 2 + 4k 1 ) = s + s ( 2 ) + ( 5 ) 4 + 4k 2 = 2
k 2 = – 0.5
2 + 4k 1 = 5
k 1 = 0.75
state space control - 21.4
r
· x
u B
+
+ -
y
x 1--s
C
+ A K
Figure 21.1
Block diagram of a state based controller
• The value of K in the previous example could also be picked using Ackermann’s formula.
–1
K = 0 0 … 1 Mc Φd ( A ) where, Φ d ( s ) = the desired response
• Consider the previous example,
state space control - 21.5
The state equations and the desired response of the system are,
· x =
· y = 1 x 0
0 1 x+ 0 u – 2 –3 4 2
Φd ( s ) = s + s ( 2 ) + ( 5 ) The Markov (?) parameter can be calculated first.
Mc =
0 4
0 1 0 –2 –3 4
K = 0 1 0 4 4 – 12
–1
= 0 4 4 – 12
0 1 – 2 –3
2
+ 0 1 ( 2 ) + ( 5 )I –2 –3
– 12 –4 –4 0 K = 0 1 ---------------------- – 2 – 3 + 0 2 + 5 0 0 – 16 6 7 –4 –6 0 5 K = 0 1 – 0.75 –0.25 3 – 1 = – 0.25 0 3 – 1 = – 0.75 0.25 – 0.25 0 2 6 2 6 NOTE: DOESN’T MATCH, TRACK DOWN ALGEBRA PROB
21.3 OBSERVERS • Observers are used to estimate the next system state. They can also be used to predict future state values. • As an example, an observer might be used for a targeting system that is tracking a moving object. The estimator can be used to direct a missle to an estimated location so that the missle and target arrive at the same time. • An observer is shown in block diagram form
state space control - 21.6
Actual Plant (and assumed state equations) U
d---X = AX + BU dt
Y
Y = CX
Observer ˆ Y
ˆˆ ˆ ˆ d- ˆ ---X = AX + BU + K( Y – Y ) dt ˆ ˆ Y = CX
Figure 21.2
Block diagram of an observer
ˆ X
state space control - 21.7
Aside: For an open loop estimator a simulation is run, while the system is running. The simulation values are compared to the actual system responses, and the model is adjusted. It is assumed that the initial value of the state is unknown. If A is stable then the estimation will eventually converge (this can be checked using the Eigenvalues). However, there is no guarantee that it will converge quickly.
The actual system d---x = Ax + Bu dt
y = Cx
C≠I
The state estimator model d- ˆ ---x = Axˆ + Bu dt The estimation error x˜ = x – xˆ d---( x – xˆ ) = A ( x – xˆ ) dt
d- ˜ ---x = Ax˜ dt
At x˜ ( t ) = e x˜ ( 0 )
• A closed loop estimatior is shown below. It uses a learning matrix L to adjust the convergence rate. A larger L value will result in faster convergence, but the exponent must
state space control - 21.8
now be checked to ensure observability. The system and estimator yˆ = Cxˆ
y = Cx The estimator error y˜ = y – yˆ = Cx˜
The estimator d- ˆ ---x = Axˆ ( t ) + Bu ( t ) + L ( y ( t ) – y˜ ( t ) ) dt yˆ ( t ) = Cxˆ ( t ) where, L = a gain matrix The convergence rate, d- ˜ ---x = ( A – LC )x˜ dt ( A – LC )t ˜ x˜ ( t ) = e x(0)
• Estimator gain selection
If a system is controllable the Eigenvalues of A-BK can be placed anywhere, rank ( A ) = rank B AB … A n – 1 B = n If a system is observable the Eigenvalues of A-LC can be placed anywhere, rank ( A ) = rank
C CA … CA
= n
n–1
• Consider the example below, for a second order system. The learning rate values are selected to determine how quickly the model converges.
state space control - 21.9
Consider the state equations, –a1 1 x1 b d- x 1 ---= + 1 u dt x –a2 0 x2 b2 2
y = 1 0
x1 x2
Find the convergence rate and then the Eigenvalues, A – LC =
– a1 1 – a2 0
sI – ( A – LC ) =
–
l1 l2
1 0 =
s + a1 + l1 –1 a2 + l2
s
– a1 – l1 1 – a2 – l2 0
= s ( s + a 1 + l 1 ) – ( –1 ) ( a 2 + l2 )
2
= s ( 1 ) + s ( a1 + l 1 ) + ( a2 + l2 )
• This can also be done with Ackermann’s formula,
T
–1
L = K e = Φ e ( s )M o
0 … 0 1
state space control - 21.10
Consider the state equations for a mass spring damper system (y is the position). 0 d x ----= –K dt v ---------s M 0 A = –K ---------s M
1 0 x + –K d 1- F ------------ v M M
1 –Kd --------M
B =
y = 1 0 x + 0 F v
0 1 ----M
C = 1 0
D = 0
First test for observability, (note: it is observable) 1 0 rank C = rank CA
0 1 0 –Ks --------M
1 –K d --------M
= rank
Consider the open loop estimator d- ˆ ---x = Axˆ + Bu dt 0 ˆ d x ----= –K dt ˆ ---------s v M
1 –Kd --------M
0 xˆ + 1- F ---vˆ M
1 0
= rank
0 1
1 0
= 2
0 1
yˆ = Cxˆ ˆ yˆ = 1 0 x vˆ
• The open loop estimator will normally ignore the response to initial conditions and will have long term errors resulting from modeling errors and random disturbances in the system.
Consider the closed loop estimator with a learning rate. d- ˆ ---x = Axˆ ( t ) + Bu ( t ) + Ly˜ ( t ) dt
yˆ ( t ) = Cxˆ ( t )
0 ˆ d x ----= –K dt ˆ ---------s v M
ˆ yˆ ( t ) = 1 0 x vˆ
1 –Kd --------M
0 l xˆ + F + 1 y˜ 1 ----l2 vˆ M
These are then simulated numerically using initial conditions of zero.
state space control - 21.11
XXXXXXXXXX Example of learning parameter estimator to obtain desired responses.
21.4 SUPPLEMENTAL OBSERVERS • In many cases some state variables can be measured directly, but others cannot. In these cases it is more efficient to only estimate the unmeasurable variable values [Eronini]. • This can be
W = KX X = C ---K
–1
Y- = M –1 ---Y---W W
M = C ---K
(Note: the inverse must exist)
Y- = MX ---W d- Y d –1 Y -------- = ----- MX = M ( AX + BU ) = MAX + MBU = MAM ---- + MBU dt dt W W The matrices can be partitioned to isolate the unmeasurable state variables. Note that the Eigenvalues of Hw must be relatively small. MAM
–1
=
… … Hy Hw
MB =
… Bw
ˆ d- ˆ ---W = H y Y + H w W + Bw U dt
21.5 REGULATED CONTROL WITH OBSERVERS • For a regulated system the control output ’u’ can be estimated using the desired
state space control - 21.12
system state. ˆ u = Kx = K y
• The system state is often difficult to measure directly, so an estimator can be used. . u = – Kx = – Kxˆ
• A regulator can use an estimate of the system state to
L
CL +
+
d- ˆ - ---x dt 1--s +
xˆ
d---x dt
u –K
A system
B estimator and regulator
1--s
B
A
y
x C
state space control - 21.13
For a regulator assume the state variables go to zero, so.... u = – Kxˆ A closed loop estimator d- ˆ ---x = Axˆ + Bu + L ( y – yˆ ) dt yˆ = Cxˆ The state model for the system is, d---x = Ax + Bu dt y = Cx These can be combined to obtain, d- ˆ ---x = Axˆ + Bu + L ( y – yˆ ) = xˆ ( A – BK – LC ) + x ( LC ) dt d---x = Ax + Bu = x ( A ) + xˆ ( – BK ) dt Resulting in the matrix, x d- x – BK ---= A ˆ dt x LC A – BK – LC xˆ
state space control - 21.14
An error variable can be introduced, and written in matrix form, x˜ = x – xˆ x x = I 0 = Tx cl ≈ x˜cl I – I x˜ x˜
–1 T = I 0 = T I –I
An error variable can be introduced, and written in matrix form, A cl = TAcl T
–1
≈ A cl
The previous matrix can be revised – BK I 0 A cl = I 0 A I – I LC A – BK – LC I – I BK A cl = I 0 A – BK I – I A – BK – A + BK + LC A cl = A – BK BK 0 A – LC The new poles for this system can be written, 2
sI – A cl = ( A – BK ) ( A – LC ) – BK ( 0 ) = A – ALC – ABK + BKLC
• The estimators and regulators can be designed separately and then combined. This is the separation principle. • The simplified block diagram for the system is,
d- ˆ ---x dt
+
+
xˆ 1--s
d---x dt
+
1--s
– BK +
A – BK – LC
A LC
x
state space control - 21.15
• The compensator,
The previous estimator equations can be combined with a compensator u = – Kxˆ d- ˆ ---x = Axˆ + Bu + L ( y – yˆ ) = Axˆ – BKxˆ + L ( y – Cxˆ ) = ( A – BK – LC )xˆ + ( L )y dt These can be used to define a new compenator state, xˆ = x c u = –Cc xc d---x = Ac xc + Bc y dt c where, A c = A – BK – LC Bc = L Cc = K
• This can be converted to a transfer function for the regulator. These can be used to define a new compenator state, sx c = A c x c + B c y x c ( sI – Ac ) = B c y Bc xc ---- = --------------y sI – A c u = –Cc xc u ---= –C c xc –C c B c u--u xc = ---- ---- = ---------------y xc y sI – A c
• The system can also be set up for a compensator by assuming the setpoint input is not zero,
state space control - 21.16
First a system error is defined. e = r–y The previously defined compensator can be used here, e = r–y u = –Cc xc u ---= –C c xc d---x = Ac xc + Bc e dt c xc Bc ---- = --------------e sI – A c –C c Bc u--u xc = ---- ---- = ---------------e xc e sI – A c The system can also be modelled, y = Cx y-= C x d---x = Ax + Bu dt B --x- = ------------u sI – A CB --y- = y-- --x- = ------------u xu sI – A The feedforward and feedback loop can be simplified, – C c B c CB y-uy = --- --- = ----------------------------------------( sI – A c ) ( sI – A ) e eu –C c B c CB ---------------------------------------– C c B c CB ( sI – A c ) ( sI – A ) y-= -------------------------------------------------- = ------------------------------------------------------------------r – C c B c CB ( sI – A c ) ( sI – A ) – C c B c CB 1 + ----------------------------------------( sI – A c ) ( sI – A )
• Consider an example of a regulator/estimator design,
state space control - 21.17
Consider the state equations for a mass-spring-damper system. 0 d x ----= –K dt v ---------s M 0 A = –K ---------s M
1 0 x + –Kd 1- F ------------ v M M
1 –Kd --------M
0 B = 1 ----M
y = 1 0 x + 0 F v
C = 1 0
D = 0
The regulator will be designed to have a response time of 0.5s and damped frequency of 2 rad/s. 1 s = ------- + j ( 2 ) = – 2 ± 2j 0.5 λ i ( A – BK ) = – 2 ± 2j 0 1 0 1 0 = λ i –K – K – 1 k1 k2 = λ i – K – k – K – k s 1 d 2 ---- ------------------- ---------s --------d - --------------------M M M M M =
0 1 s 0 – – Ks – k1 – K d – k2 0 s --------------------- ---------------------M M
=
s –1 K s + k 1 K d + k 2 ---------------- s + ---------------- M M
K d + k 2 K s + k 1 K d + k 2 K s + k 1 - + ----------------- = s s + ----------------- + ----------------= s s + ---------------- M M M M Kd + k2 Ks + k1 Kd + k2 2 – ------------------ ± ------------------ – 4 ----------------- M M M s = ------------------------------------------------------------------------------------------------2 Kd + k2 – -----------------M k 2 = 4M – Kd – 2 = --------------------2 K d + k 2 2 K s + k 1 ----------------- – 4 --------------- M M 2 = -------------------------------------------------------------2 2 16M = ( K d + k 2 ) – 4 ( K s + k 1 ) 2
4 ( K s + k 1 ) = ( K d + 4M – K d ) – 16M 2
k 1 = 4M – 4M – K s K = 4M 2 – 4M – K 4M – K s d
state space control - 21.18
To select the regulator values, component values must be selected. M = 1kg
N K s = 10 ---m
Ns K d = 1 -----m
K = 4M 2 – 4M – K 4M – K s d K = 4 ( 1 ) 2 – 4 ( 1 ) – 10 4 ( 1 ) – ( 1 ) K = – 10 3 The desired response time for the system will be a time response of approximately 0.2sec. x 1 G ( s ) = --- = ------------------------------------2 F Ms + K d s + K s 0 A cl = A – BK = – K ---------s M
1 0 1 0 – = –Kd – Ks – k1 – Kd – k2 1- k 1 k 2 -------------------------------- ---------------------M M M M
Φ e ( s ) = sI – Acl =
0 1 s 0 – – Ks – k1 – Kd – k2 0 s -------------------- ---------------------M M
=
s 1 K s + k 1 Kd + k2 ----------------- ------------------ + s M M
K d + k 2 – K s – k 1 2 - + -------------------- = ( s + 0.2 ) 2 = s + s ---------------- M M –Ks – k 1 ------------------- = ( 0.2 ) 2 M Kd + k2 ------------------ = 2 ( 0.2 ) M
k 1 = – 10.04 k 2 = – 0.6
state space control - 21.19
The estimator may then be designed using Ackermann’s formula. L = Φe ( A ) C CA
–1
0 1
0 1 = – K – K + 0.2 ---------s --------d M M 0 1 = –K – K ---------s --------d M M =
=
2
1 0
2
0 1 0 –Ks --------M
0 + 2 ( 0.2 ) –K ---------s M
1 –K d --------M
0 1
1 2 – K d + 0.2 I --------M
–Kd --------M
–Ks --------- + 0.04 M
–Kd --------- + 0.4 M 2 Kd ------2
–Ks --------- + 0.04 M
–Kd --------- + 0.4 M 2 Kd ------2
0.4K d K s K d 0.4K s – K s ------------ – ------------- --------- + -------------- + 0.04 – 2 M M M M M
=
1 1
0 1
0 0.4 0.04 0 + + – – 0.4K 0.4K 2 K s Kd –K s Kd -----------------s ----------------d0 0.04 M M ------------ --------- + ------ 2 M M2 M –Ks --------M
K s K d 0.4K s – K s 0.4K d ------------ – ------------- --------- + -------------- + 0.04 – 2 M M M M M
=
1 0
–Kd --------- + 0.4 M 2 Kd ------2
–K s 0.4K d --------- + – -------------- + 0.04 M M M
=
– 0.6 – 9.36
1 0 0 1 1 1
0 1
1 0 1 1
0 1
state space control - 21.20
The compensator coefficients may then be calculated. A c = A – BK – LC
Ac =
0 0 1 – – 0.6 – 10 3 – 1 0 1 ----– 10 –1 – 9.36 M
Ac =
0 1 – 0 0 – – 0.6 0 = 0.6 1 – 10 –1 – 10 3 – 9.36 0 9.36 –4
Bc = L =
– 0.6 – 9.36
C c = K = – 10 3 The compensator transfer function can then be written, –1
G c ( s ) = C c ( sI – A c ) B c = –10 3 s 0 – 0.6 1 0 s 9.36 – 4
–1
– 0.6 = s – 0.6 –1 – 10 3 – 9.36 – 9.36 s – 4
–1
T
– 0.6 – 9.36
s – 4 9.36 s – 0.6 – 1 –0.6 – 0.6 – 10 3 – 10 3 – 9.36 s – 4 –9.36 1 s – 0.6 – 9.36 = ------------------------------------------------------------------------------ = --------------------------------------------------------------------------( s – 0.6 ) ( s – 4 ) – ( – 1 ) ( – 9.36 ) s – 0.6 – 1 – 9.36 s – 4 s–4 1 – 0.6 – 0.6s – 6.96 – 10 3 –10 3 9.36 s – 0.6 – 9.36 – 9.36s - = ------------------------------------------------------= -----------------------------------------------------------------------2 2 1s – 4.6s – 6.96 1s – 4.6s – 6.96 – 22.08s + 69.6 = -----------------------------------2 s – 4.6s – 6.96
• This system can be implemented with a C program as shown below,
state space control - 21.21
#define PERIOD 0.001 // period of the interrupt interrupt_loop(){ // this routine is called at a regular interval PERIOD } double analog_in(){ }
d- ˆ ---x dt
+
+
xˆ 1 --s
d---x dt
+
1 --s
– BK +
A – BK – LC
A LC
x
state space control - 21.22
21.6 LQR - Linear Quadratic Regulator (LQR) allows the design of a regulating system that tends to zero, but also considers the control effort. - The basic function for evaluating the controller is defined below. The integral is evaluated to reduce the value. Ideally the state value will go to zero (it is a regulator), and the plant input will be minimized. It is assumed that D=0. Here a new state ’z’ is defined. It should reflect the system state values that should be regulated to zero.
∞
J LQR =
∫ [ (y(t) )
T
2
y ( t ) + r ( u ( t ) ) ] dt
0 T
( y ( t ) ) y ( t ) = state cost 2 ( u ( t ) ) = control cost r = control penalty z = Cz x ∞
J LQR =
∫ [ (x(t) )
T
T
2
C z C z x ( t ) + r ( u ( t ) ) ] dt
0
- the design process involves adjusting the r value to obtain the desired result. -
state space control - 21.23
Assume a simple controller form, u ( t ) = –K LQR x ( t ) Solve using an Algebraic Riccati Equation Consider a simple system · x = Ax + Bu
y = Cx
The equivalent transfer function can be written, where a(s) is the characteristic eqn. b(s) b(s) –1 C ( sI – A ) B = ---------- = ----------------a(s) sI – A This is followed by....... UNKNOWN STUFF The desired charactersitic equation n can be used to find the controller gain values.
∏ ( s – pi )
sI – A + BK LQR =
i=1 –1
∆ ( s ) = a ( s )a ( – s ) + r b ( s )b ( – s ) The poles are then found using Ackermann’s method.
2
( u ( t ) ) = control cost r = control penalty ∞
J LQR =
∫ [ (x(t) )
T
C Cx ( t ) + r ( u ( t ) ) ] dt
T
2
T
C Cx ( t ) + r ( u ( t ) ) ] dt
T
2
0 ∞
J LQR =
∫ [ (x(t) ) 0
state space control - 21.24
21.7 LINEAR QUADRATIC GAUSSIAN (LQG) COMPENSATORS • Uses an optimal regulator and estimator. • Stability is guaranteed if the model is accurate. Verification is needed • The design focuses on, A cost function for the system state, the design tries to minimize this The relative weighting for the process and sensor noise •
21.8 VERIFYING CONTROL SYSTEM STABILITY • Introduce random errors to the system model and test for stability • Use the Nyquist Stability Theorem,
state space control - 21.25
Z = N+P where, P = poles of G(s)Gc(s) in the right hand plane Z = closed loop poles in the right hand plane N = number of clockwise loops in the Nyquist Diagram about -1 Z = 0, N = – P
For stability
Note: Larger loops indicate a more stable system. Tight loops are very sensitive to parameter variations.
21.8.1 Stability • The stability function is defined using the Nyquist plot.
state space control - 21.26
Define the points for the Nyquist plot L ( s ) = G ( s )G c ( s ) L N ( s ) = G N ( s )G c ( s ) L A ( s ) = G A ( s )G c ( s ) The distance, ’d’, from the point at -1 to the calculated point is found as a function. d ( jω ) = L N ( jω ) – ( – 1 + 0j ) The sensistivity ’S’ is defined as the inverse of the distance from the point at -1. 1 1 S ( jω ) = -------------- = --------------------------d ( jω ) 1 + L N ( jω )
21.8.2 Bounded Gain
• In practical terms system gain is limited by real components. As a result it is important to ensure that the design will not exceed the maximum values available.
state space control - 21.27
The boundedness of the system can be tested by ensuring that the sensitivity always remains less than some given value ’gamma’ for all frequencies. Note: this requires that D must be smaller than gamma. S ( jω ) < γ –1
C ( jωI – A ) B + D < γ The Hamiltonian matrix is defined below. It does not have purely complex Eigenvalues. 2
–1
T
T
2
A + B( γ I – D D) D C
H =
T
2
T
–1
T
–1 T
B(γ I – D D) B
T
T
T
2
T
–1 T
– C ( I + D ( γ I – D D ) D )C – A – C D ( γ I – D D ) B Or, if D=0, T
H =
A
BB ---------2 γ
T
T
–C C –A
This matrix can then be tested, if there are no purely complex eigenvalues, the system is bounded. T
λI – H =
λ 0 – 0 λ
A
BB --------2 γ
T
T
–C C –A
T
=
BB λ – A – --------2 γ
BB T C T C 2 T = λ ( 1 ) + λ ( – A + A ) + – -------------------- 2 γ etc....
T
C C λ+A
T
state space control - 21.28
The algebraic Ricatti equation can also be used T
XBB X T T - = 0 A X + XA + C C + ----------------2 γ
21.9 ADAPTIVE CONTROLLERS • There are two basic types of adaptive control, Self Tuining Regulators Model Reference Adaptive Control (MRAC) • A self tuning regulator
Parameter Estimation
Regulator Design
Regulator
Plant
state space control - 21.29
• Parameter Adaptive MRAC
Reference Model
Adaptation Algorithm
Controller
Plant
• Signal Synthesis MRAC
Reference Model
Adaptation Algorithm +
Controller
Plant +
• Parallel MRAC
Reference Model
Adaptation Algorithm
Adjustable Plant
state space control - 21.30
• Series MRAC
Adaptation Algorithm
Reference Model
Adjustable Plant
• The basic MRAC system is defined below,
The reference model is developed from the fundamentals of the system. It should be controllable and stable. d---X = Am Xm + Bm r dt m Parameters can be adpated using, e = X m – Xp d---X = A p X p + Bp r dt p Where, A p, B p = Adjustable parameter matrices A m, B m = Reference model matrices d---X = Ap Xp + Bp ( r + ua ) dt p d---e = Am Xm + Bm r – Ap Xp – Bp ( r + ua ) = Am ( e + Xp ) + Bm r – Ap Xp – Bp ( r + ua ) dt d---e = e ( Am ) + Xp ( A m – A p ) + r ( B m – B p ) + u a ( –B p ) dt d---e = e ( Am ) + f dt
f = Xp ( Am – Ap ) + r ( Bm – Bp ) + ua ( –Bp )
state space control - 21.31
A Lyapunov can be defined for the error T
V = e Qe d dd T T T T T T ---V = ----- e Qe + e Q ----- e = ( e ( A m ) + f )Qe + e Q ( e ( A m ) + f ) dt dt dt dT T T ---V = e ( A m Q + QA m )e + 2e Qf dt dT T ---V = – e We + 2e Qf dt
T
W = – ( A m Q + QAm )
21.10 OTHER METHODS
H-infinity and mu methods are designed to shape the sensitivity plot
state space control - 21.32
21.10.1 Kalman Filtering • Kalman Filter helps settle estimators using estimates of snesor and process noise.
d---x = Ax + Bu + B w w dt y = Cx + v where, B w = process noise weighting matrix w = process noise matrix v = sensor noise N(s) –1 G yw ( s ) = C ( sI – A ) B w = ----------D( s) R D ( s )D ( – s ) ± ------w N ( s )N ( – s ) = 0 Rv where,
R w, R v = factors related to process/sensors noise
21.11 SUMMARY •
state space control - 21.33
21.12 PRACTICE PROBLEMS
21.13 PRACTICE PROBLEM SOLUTIONS
21.14 ASSIGNMENT PROBLEMS 1.
state space control - 22.1
22. SYSTEM IDENTIFICATION
Topics:
Objectives:
22.1 INTRODUCTION • A simple example
d---= AX out + BX in X dt out d---Y = CX out + DXin dt out
state space control - 22.2
Given a system model for a force applied to a mass, d---x = v dt dF ---v = ----dt M 0 d- x ---= 0 1 x + F dt v ----0 0 v M
state space control - 22.3
For an unknown second order linear system, d- x ---= a b x + e F dt v c d v f x d- x i ---= a b i + e F dt v c d vi f i The state variables can be replaced with backwards difference equations, xi – xi – 2 --------------------xi – 1 T a b e F = xi – xi – 2 + x i – 2x i – 1 + x i – 2 c d --------------------f ----------------------------------------T 2 T The equations can then be written for three different set of points to yield six equations. xi – xi – 2 xi – xi – 2 -------------------- = ax i – 1 + b -------------------- + eF T T xi – xi – 2 xi – xi – 2 a ( x i – 1 ) + b --------------------- + c ( 0 ) + d ( 0 ) + e ( F ) + f ( 0 ) = -------------------- T T xi – 3 – xi – 5 xi – 3 – xi – 5 a ( x i – 4 ) + b --------------------------- + c ( 0 ) + d ( 0 ) + e ( F ) + f ( 0 ) = --------------------------T T xi – 6 – xi – 8 xi – 6 – xi – 8 a ( x i – 7 ) + b --------------------------- + c ( 0 ) + d ( 0 ) + e ( F ) + f ( 0 ) = -------------------------- T T xi – xi – 2 x i – 2x i – 1 + x i – 2 ----------------------------------------- = cx i – 1 + d -------------------- + fF 2 T T xi – xi – 2 x i – 2x i – 1 + x i – 2 a ( 0 ) + b ( 0 ) + c ( x i – 1 ) + d --------------------- + e ( 0 ) + f ( F ) = ---------------------------------------2 T T xi – 3 – xi – 5 x i – 3 – 2x i – 4 + x i – 5 a ( 0 ) + b ( 0 ) + c ( x i – 4 ) + d --------------------------- + e ( 0 ) + f ( F ) = ----------------------------------------------2 T T x i – 6 – 2x i – 7 + x i – 8 xi – 6 – xi – 7 a ( 0 ) + b ( 0 ) + c ( x i – 7 ) + d --------------------------- + e ( 0 ) + f ( F ) = ----------------------------------------------2 T T
state space control - 22.4
The equations can be rewritten in matrix form,
0
xi – 7
xi – xi – 2 --------------------T xi – 3 – xi – 5 -------------------------T xi – 6 – xi – 8 -------------------------T
0
0
xi – 1
0
0
xi – 4
0
0
xi – 7
xi – 1 xi – 4
0
0
xi – xi – 2 --------------------0 F 0 T xi – 3 – xi – 5 --------------------------0 F 0 T a xi – 6 – xi – 8 b --------------------------0 F 0 T c = x i – 2x i – 1 + x i – 2 xi – xi – 2 d ---------------------------------------2 --------------------- 0 F T e T x i – 3 – 2x i – 4 + x i – 5 f xi – 3 – xi – 5 -------------------------------------------------------------------------- 0 F 2 T T xi – 6 – xi – 7 x i – 6 – 2x i – 7 + x i – 8 --------------------------- 0 F -----------------------------------------------T 2 T
Some sample data points can be calculated for F=1 and M=1, 1 2 1F 2 x = --- at = --- ----- t T = 1 F = 1 2 2M x(0) = 0
xi – 8 = 0
x ( 1 ) = 0.5
x i – 7 = 0.5
x(2) = 2
xi – 6 = 2
x ( 3 ) = 4.5
x i – 5 = 4.5
x(4) = 8
xi – 4 = 8
x ( 5 ) = 12.5
x i – 3 = 12.5
x ( 6 ) = 18
x i – 2 = 18
x ( 7 ) = 24.5
x i – 1 = 24.5
x ( 8 ) = 32
x i = 32
M = 1
state space control - 22.5
The values can be substituted into the matrix, and the matrix solved 32 – 18 24.5 -----------------1 12.5 – 4.5 8 -----------------------1 2----------– 00.5 1 0
0
0
0
0
0
0
0
1
0
0
1
0
0
1
32 – 18 24.5 ------------------ 0 1 12.5 – 4.5 8 ------------------------ 0 1 2 – 0.5 0.5 ---------------- 0 1
24.5 14 0 0 1 a 8 8 0 0 1 b c = 0.5 2 0 0 1 0 0 24.5 14 0 d 0 0 8 8 0 e 0 0 0.5 1.5 0 f
0 0 0 1 1 1
–1
32 – 18----------------0 1 12.5 – 4.5----------------------0 a 1 2----------– 0b 0 1 c = 32 – 2 ( 24.5 ) + 18-----------------------------------------d 2 1 1 e 12.5 – 2 ( 8 ) + 4.5---------------------------------------1 f 2 1 2 – 2 ( 0.5 ) + 0 1 ---------------------------------2 1
14 8 2 1 1 1
a 0 b 1 c = 0 d 0 e 0 f 1
Substituting these values back into the state equation results in the following expression, which matches the exact state equation. x d- x i ---= a b i + e F dt v c d vi f i x = 10 i + 0 0 F 0 0 vi 0 0 1 0
xi
state equation
output equation
This can be incorporated as a realtime algorithm to calculate the data parameters based upon realtime updates.
state space control - 22.6
xi – 1 xi – 4 a b x c = i–7 d 0 e f 0 0
xi – xi – 2 --------------------T xi – 3 – xi – 5 --------------------------T xi – 6 – xi – 8 --------------------------T 0 0 0
–1
0
0
F 0
0
0
F 0
0
0
F 0
xi – xi – 2 x i – 1 --------------------- 0 F T xi – 3 – xi – 5 x i – 4 --------------------------- 0 F T xi – 6 – xi – 7 x i – 7 --------------------------- 0 F T
xi – xi – 2 --------------------T xi – 3 – xi – 5 --------------------------T xi – 6 – xi – 8 --------------------------T x i – 2x i – 1 + x i – 2 ---------------------------------------2 T x i – 3 – 2x i – 4 + x i – 5 -----------------------------------------------2 T x i – 6 – 2x i – 7 + x i – 8 -----------------------------------------------2 T
This can then be used as a model to calculate a transfer function as shown below using the previous example.
state space control - 22.7
The state equation variables are, x d- x i ---= a b i + e F dt v c d vi f i
A = a b c d
B = e f
x = 10 i + 0 0 F C = 1 0 D = 0 0 0 0 0 0 1 v 0 0 0 0 0 i these can be used to calculate a SISO system transfer function, and its inverse. xi
G = C ( sI – A ) B + D = 1 0 s 1 0 – a b 0 0 01 c d
–1
e + 0 0 f 0 0
–1
G = 1 0 s – a –b 0 0 –c s – d
s–d b c s–a e = 1 0 -------------------------------------------- e f ( s – a ) ( s – d ) + bc f 0 0
–1
s–d b 0 0 ( s – d )e + bf e = --------------------------------------------------------------------------------------G = ( s – a ) ( s – d ) + bc f ( s – a ) ( s – d ) + bc (-------------------------------------------s – a ) ( s – d ) + bc–1 G = ( s – d )e + bf
A block diagram for the system may then be written,
G
–1
+ +
+
xd
controller 1
F
plant
xa
state space control - 22.8
Consider the controller with the previous example.
The identified coefficients for the controller are substituted into the inverse transfer func. 0 a b 1 c = 0 0 d 0 e 1 f
G
–1
( s – a ) ( s – d ) + bc (s – 0)(s – 0) + 1(0 ) 2 = --------------------------------------------- = -------------------------------------------------- = s ( s – d )e + bf ( s – 0 )0 + 1 ( 1 )
The identified coefficients for the controller are substituted into the inverse transfer func. d- 2 F F ---x = ----- = -- dt M 1 1 --x- = ---2 F s A state diagram for the system may then be written using a proportional controller, s
2
+ +
+
xd
P 1
F
1--2 s
xa
state space control - 22.9
The state diagram is simplified, s
--1P
2
+
+
+
xd
P
1--2 s
1 2
s--P
+ +
xd -
xa
P--2 s 1
2
s--P
+ +
P -------------2 s +P
xd
xd
P -------------2 s +P
2
s---+1 P
xa
xa
2
xd
+ P -------------P s------------- P 2 s +P
xa
xd
1
xa
Note: This suggests that the result is an ideal controller, however in practice there are errors, such as sensor noise, imperfect actuators, and changing system conditions such as mass. This also assumes that the force actuator can generate any requested force.
xa
state space control - 22.10
22.2 SUMMARY •
22.3 PRACTICE PROBLEMS
22.4 PRACTICE PROBLEM SOLUTIONS
22.5 ASSIGNMENT PROBLEMS 1.
electromagnetics - 23.1
23. ELECTROMECHANICAL SYSTEMS
Topics:
Objectives:
23.1 INTRODUCTION • Magnetic fields and forces are extremely useful. The fields can allow energy storage, or transmit forces. •
23.2 MATHEMATICAL PROPERTIES • Magnetic fields have direction. As a result we must pay special attention to directions, and vector calculations.
23.2.1 Induction • Magnetic fields pass through space.
electromagnetics - 23.2
• resistivity of materials decreases with temperature • Amperes Circuit Law
I =
°∫ Hdl
where, I = current flowing along a line (A) H = magnetic field intensity (A/m) l = A perpendicular path around the current flow (m) For example, at a fixed radius (r) around a wire, 2π
I =
∫0
Hr dθ
∴I = 2πHr I ∴H = --------2πr
• Flux density can be calculated for low H values. As the value climbs the relationship becomes non-linear.
B = µH = µ r µ 0 H where, B = Flux density (Wb/m*2 or T) µ = permeability of material – 7 Henry µ 0 = permeability of free space = 4π ×10 ---------------m µ r = relative permeability
• Permeability,
electromagnetics - 23.3
B µ = ---H –7 H µ 0 = 4π10 ---m µ = µr µ0
where, A H = Magnetic field intensity ---- m µ 0 = permeability of free space µ r = relative permeability of a material µ = permeability of a material
• Permeability is approximately linear for smaller electric fields, but with larger magnetic fields the materials saturate and the value of B reaches a maximum value.
B 1.5 linear
saturation
4000
Figure 23.1
Saturation for a mild steel (approximately)
H
electromagnetics - 23.4
1.5 silicon sheet steel
cast steel
1.0
B (T)
0.5 cast iron
0 0
500 H (At/m)
Figure 23.2
Magnetization curves (Sen, 1989)
• Flux density about a wire
1000
electromagnetics - 23.5
I B = --------2πr
For an infinitely long straight conductor
where, Wb B = Flux density -------2- or Tesla m I = Current in the conductor (A) r = radial distance from the conductor
• Flux and flux density,
Φ =
∫ B dA
where, Φ = Flux density ( Wb ) A = Cross section area perpendicular to flux
• When a material is used out of the saturation region the permeabilities may be written as reluctances,
L R = ------µA where, R = reluctance of a magnetic path L = length of a magnetic path A = cross section area of a magnetic path
electromagnetics - 23.6
• Electric circuit analogy
Φ
Ni F Φ = ------------- = --R l - ----- µA
F
R
• Example,
lc R c = ----------µc Ac
I lg
lc
• Faraday’s law,
lg R g = -----------µg Ag Ni Φ = -----------------Rc + R g
electromagnetics - 23.7
d e = N ----- Φ dt
For a coil
where, e = the potential voltage across the coil N = the number of turns in the coil
• Field energy,
2
2
B B W = ------ V = ------ Al 2µ 2µ
• Force can be derived from the energy,
2
B F = ------ A 2µ
• The basic property of induction is that it will (in the presence of a magnetic field) convert a changing current flowing in a conductor to a force or convert a force to a current flow from a change in the current or the path.
electromagnetics - 23.8
F = ( I × B )L
B
NOTE: As with all cross products we can use the right hand rule here.
F = ( L × B )I I, L F where, L = conductor length F = force (N) The FBD/schematic equivalent is,
I
F M
Figure 23.3
The current and force relationship
• We will also experience an induced current caused by a conductor moving in a magnetic field. This is also called emf (Electro-Motive Force)
electromagnetics - 23.9
B
e m = ( v × B )L where, e m = electromotive force (V) φ = magnetic flux (Wb - webers) v = velocity of conductor
v e
The FBD/schematic equivalent v e
Figure 23.4
+ -
M
Electromagnetically induced voltage
• Hysteresis
23.3 EXAMPLE SYSTEMS • These systems are very common, take for example a DC motor. The simplest motor has a square conductor loop rotating in a magnetic field. By applying voltage the wires push back against the magnetic field.
electromagnetics - 23.10
y
I
B
x
1
z
I
2
5 4
3
b
a axis of rotation ω
Figure 23.5
A motor winding in a magnetic field
electromagnetics - 23.11
For wire 3, r cos ( ωt ) P 3 = r sin ( ωt ) b b – --- to --2 2
V3 =
– rω sin ( ωt ) rω cos ( ωt ) 0
0 B = –B 0
de m3 = ( V × B )dL
e m3 =
b --2
∫–b--2
e m3 =
b --2
∫–b--2
– rω sin ( ωt ) 0 rω cos ( ωt ) × – B dr 0 0 0 dr 0 Brω sin ( ωt )
2
e m3
r = B ---- ω sin ( ωt ) 2
b --2
b – --2
b b 2 = Bω sin ( ωt ) --- – – --- = 0 2 2
For wires 1 and 5, By symmetry, the two wires together will act like wire 3. Therefore they both have an emf (voltage) of 0V. e m1 = e m5 = 0V
Figure 23.6
Calculation of the motor torque
electromagnetics - 23.12
For wire 2 (and 4 by symmetry), b--b cos ( ωt ) – --- ω sin ( ωt ) 2 2 P2 = b V2 = b --- sin ( ωt ) --- ω cos ( ωt ) 2 2 0toa 0
0 B = –B 0
de m2 = ( V × B )dL a
e m2 =
∫0
b – --- ω sin ( ωt ) 2 0 × b--– B dl ω cos ( ωt ) 2 0 0 0 0
a
e m2 =
∫0
b B --- ω cos ( ωt ) 2
b dl = aB --- cos ( ωt ) 2
e m4 = e m2
For the total loop, e m = e m1 + e m2 + e m3 + e m4 + e m5 b b e m = 0 + aB --- ω cos ( ωt ) + 0 + aB --- ω cos ( ωt ) + 0 2 2 e m = aBbω cos ( ωt )
Figure 23.7
Calculation of the motor torque (continued)
• As can be seen in the previous equation, as the loop is rotated a voltage will be generated (a generator), or a given voltage will cause the loop to rotate (motor). • In this arrangement we have to change the polarity on the coil every 180 deg of rotation. If we didn’t do this the loop the torque on the loop would reverse for half the motion. The result would be that the motor would swing back and forth, but not rotate fully. To make the torque push consistently in the same direction we need to reverse the
electromagnetics - 23.13
applied voltage for half the cycle. The device that does this is called a commutator. It is basically a split ring with brushes.
e m = aBbω cos ( ωt )
• Real motors also have more than a single winding (loop of wire). To add this into the equation we only need to multiply by the number of loops in the winding.
e m = NaBbω cos ( ωt )
• As with most devices the motor is coupled. This means that one change, say in torque/force will change the velocity and hence the voltage. But a change in voltage will also change the current in the windings, and hence the force, etc. • Consider a motor that is braked with a constant friction load of Tf.
F w = ( I × B )L = IBa b T w = 2 F × --- = Fb = IBab 2
∑M
= T w – T f = Jα
IBab – T f = Jα Figure 23.8
Calculation of the motor torque (continued)
• We still need to relate the voltage and current on the motor. The equivalent circuit for a motor shows the related components.
electromagnetics - 23.14
IA
RA
LA
+ em eA
+ -
-
where, I A, e A = voltage and current applied to the armature (motor supply) R A, L A = equivalent resistance and inductance of windings
∑V
d = e A – I A R A – L A ----- I A – e m = 0 dt
we can now add in the other equations, d e A – I A RA – L A ----- I A – NaBbω cos ( ωt ) = 0 dt and recall the previous equation, IBab – T f = Jα
Figure 23.9
Calculation of the motor torque (continued)
• Practice problem,
electromagnetics - 23.15
Write the transfer function relating the displacement ’x’ to the current ’I’
a
N
Ks M
S
Kd R
x I
Figure 23.10 Drill problem: Electromotive force • Consider a motor with a separately excited magnetic field (instead of a permanent magnet there is a coil that needs a voltage to create a magnetic field). The model is similar to the previous motor models, but the second coil makes the model highly nonlinear.
electromagnetics - 23.16
23.4 SUMMARY •
23.5 PRACTICE PROBLEMS 1.
23.6 PRACTICE PROBLEM SOLUTIONS
23.7 ASSIGNMENT PROBLEMS
fluids - 24.1
24. FLUID SYSTEMS
Topics:
Objectives:
24.1 SUMMARY • Fluids are a popular method for transmitting power (hydraulics). Basically, by applying a pressure at one point, we can induce flow through a pipe/value/orifice.
24.2 MATHEMATICAL PROPERTIES • Fluids do work when we have a differential pressure on a surface. The pressure may be expressed as an absolute value. More correctly we should consider atmospheric pressure (gauge pressure). • When we deal with fluids we approximate them as incompressible. • Fluids observe some basic laws,
w = flow rate p = pressure
fluids - 24.2
24.2.1 Resistance • If fluid flows freely, we say it is without resistance. In reality, every fluid flow experiences some resistance. Even a simple pipe has resistance. Of similar interest is the resistance of a value.
w = K ∆p where, w = flow rate through the pipe ∆p = pressure difference across valve/pipe K = a constant specific to the pipe/valve/orifice NOTE: In this case the relationship between pressure drop and flow are non-linear. We have two choices if we want to analyze this system. 1. We can do a non-linear analysis (e.g. integration) 2. We can approximate the equation with a linear equation. This is only good for operation near the chosen valve position. As the flow rate changes significantly the accuracy of the equation will decrease. w ∆p ≈ R ( w – w ) ∆ ( ∆p ) R ≈ --------------∆w
∆w w R = 2 -----2K w ∆p ∆ ( ∆p )
Figure 24.1
Fluid flow resistance
• Resistance may also result from valves. Valves usually restrict flow by reducing an area for fluid to flow through. • A simple form of valve is a sliding plunger. The valve below is called a two way
fluids - 24.3
valve because it will allow fluid to flow in or out.
Fluid in to cylinder
Fluid out
Figure 24.2
NOTE: For this type of valve the fluid in is typically under pressure. When the valve slide is up the pressure is applied to the cylinder, and causes it to actuate. The fluid out is typically not under pressure, and just returns fluid to a reservoir tank. When used this way a cylinder needs a spring, or some other force to return it and force the fluid out.
Fluid servo valve
• Four way valve allow fluid force to be applied in both directions of a cylinder motion.
fluids - 24.4
to reservoir
fluid in
fluid in
to reservoir
no motion
advance
Figure 24.3
retract
Fluid flow control valves
24.2.2 Capacitance • Fluids are often stored in reservoirs or tanks. In a tank we have little pressure near the top, but at the bottom the mass of the fluid above creates a hydrostatic pressure. Other factors also affect the pressure, such as the shape of the tank, or whether or not the top of the tank is open. • To calculate the pressure we need to integrate over the height of the fluid.
fluids - 24.5
A Fp h F p + Fg
Fg
Fp + Fg
F p + Fg Fg P = -----A F g = ρV = ρgAh ρgAh P = -------------- = ρgh A
Figure 24.4
Pressures on fluid elements
• Consider a tank as a capacitor. As fluid is added the height of the fluid rises, and the hydrostatic pressure increases. Hence we can pump fluid into a tank to store energy, and letting fluid out recovers the energy. A very common application of this principle is a municipal water tower. Water is pumped into these tanks. As consumers draw water through the system these tanks provide pressure to the system. When designing these tanks we should be careful to keep the cross section constant (e.g. a cylinder). If the cross section varies then the fluid pressure will not drop at a linear rate and you won’t be able to use linear analysis techniques (eg., Laplace). • The mathematical equations for a constant cross section tank are,
A C = -----ρg d w = C ----- p dt
fluids - 24.6
24.2.3 Power Sources • As with most systems we need power sources. In hydraulics these are pumps that will provide pressure and/or flow to the system. • One type of pump uses a piston.
Fluid In
Normally closed inlet valve
Fluid Out piston
Normally Closed Valve
In this common form of piston pump, the piston rod is drawn back creating suction that holds the valve closed, and pulls fluid into the chamber. When the cylinder is full of fluid the piston motion is reversed, creating a pressure, and forcing the inlet vale closed, and the outlet valve open, and the fluid is pumped out. The fluid volume can be controlled by using the cylinder size, and piston strokes
Figure 24.5
A piston driven hydraulic pump
• A geared hydraulic pump is pictured below. Other types use vanes and pistons.
fluids - 24.7
a geared hydraulic pump
Figure 24.6
A gear driven hydraulic pump
• Vane based pumps can be used to create fluid flow. As the pump rotates the vanes move to keep a good seal with the outer pump wall. The displacement on the advance and return sides are unequal (aided by the sliding vanes). The relative displacement across the pump determines the fluid flow.
Fluid in
As the center core of the pump rotates, the vanes will slide in and out. Fluid is trapped between vanes. On the inlet side the volume enclosed by the vanes expands, drawing fluid in. On the outlet side the volume between vanes decreases, forcing fluid out.
Fluid out
fluids - 24.8
Figure 24.7
A vaned hydraulic pump
• As with the resistance of valves, these are not linear devices. It is essential that we linearize the devices. To do this we look at the pressure flow curves. (Note: most motors and engines have this problem)
∆p
∆ ( ∆p ) K = --------------∆w
∆p
1 w ≈ ---- ( ∆p – ∆p ) K ∆ ( ∆p )
w ∆w Figure 24.8
Linearizing a hydraulic valve ?????
24.3 EXAMPLE SYSTEMS • We can model a simple hydraulic system using the elements from before. Consider the example below,
pump
Figure 24.9
valve
A hydraulic system example
tank
fluids - 24.9
For the pump the relationship is shown in the graph, and it will operate at the point marked.
∆p
w
For the valve the relationship is given below
w
∆p
The pipes are all equal length and have the relationships shown below.
w
∆p
Figure 24.10 A hydraulic system example (continued)
fluids - 24.10
24.4 SUMMARY •
24.5 PRACTICE PROBLEMS 1.
24.6 PRACTICE PROBLEMS SOLUTIONS
24.7 ASSIGNMENT PROBLEMS
thermal systems - 25.1
25. THERMAL SYSTEMS
Topics:
Objectives:
25.1 INTRODUCTION • Energy can be stored and transferred in materials in a number of forms. Thermal energy (heat) is stored and transmitted through all forms of matter.
25.2 MATHEMATICAL PROPERTIES
25.2.1 Resistance • A universal property of energy is that it constantly strives for equilibrium. This means that a concentration of energy will tend to dissipate. When material separates regions of different temperatures it will conduct heat energy at a rate proportional to the difference. Materials have a measurable conductivity or resistance (note: this is different than electrical conductivity and resistance.)
thermal systems - 25.2
1 q = --- ( θj – θ i ) R
dq ------ = --1- dθ ------ dl R dl
where, q = heat flow rate from j to i (J/s or watts) R = thermal resistance θ = temperature d R = ------Aα d = length of thermal conductor A = cross section area of thermal conductor α = thermal conductivity (W/mK)
Figure 25.1
Thermal resistance
• When dealing with thermal resistance there are many parallels to electrical resistance. The flow of heat (current) is proportional to the thermal difference (voltage). If we have thermal systems in parallel or series they add as normal resistors do.
R1
R2
R1 R2
11 1 ----= ------ + -----RT R1 R2
Figure 25.2
Parallel and series thermal resistance
RT = R1 + R2
thermal systems - 25.3
25.2.2 Capacitance • Heat energy is absorbed at different rates in different materials - this rate is referred to as thermal capacitance. And as long as the material has no major changes in structure (i.e., gas-solid or phase transition) this number is relatively constant.
1 ∆θ = ---- ( q in – q out ) C
dθ 1- dq ------ = -------dt C dt
where, C = thermal capacitance C = Mσ where, M = mass of thermal body σ = specific heat of material in mass
Figure 25.3
Thermal capacitance
• One consideration when dealing with heating capacitance is that the heat will not instantly disperse throughout the mass. When we want to increase the rate of heat absorption we can use a mixer (with a gas or fluid). A mixer is shown in the figure below. This mixer is just a rotating propeller that will cause the liquid to circulate.
Figure 25.4
A mixer to prevent uneven temperature distribution in thermal storage
thermal systems - 25.4
25.2.3 Sources • If we plan to design a thermal system we will need some sort of heat source. One popular heating source is an electrical heating element. • heating coils are normally made out of some high resistance metal/alloy such as nichrome (nickel and chrome) or tungsten. • If we run a current through the wire the resistance will generate heat. As these metals get hotter the resistance rises, hence the temperature is self regulating. If we control the voltage and current we can control the amount of heat delivered by the coil.
resistance
I
+ V temp P = IV where, P = power generated as heat I = current into coil V = voltage across coil
Figure 25.5
Electrical heating elements
25.3 EXAMPLE SYSTEMS • We know that as we heat materials at one point, they do not instantly heat at all points, there is some delay (consider a spoon in a hot bowl of soup). This delay is a function of heat capacitance (yes there is a parallel to the electrical description).
thermal systems - 25.5
• Consider an insulated sealed chamber with a resistive barrier between sides, and a heating element in one side.
qi
θ 1, C 1
R
θ 2, C 2
Given q 0 = heat flow into the left chamber from the heating element θ 1, C 1 = initial temperature and heat capacitance of left side θ 2, C 2 = initial temperature and heat capacitance of right side Next, q 1 = heat flow through the center barrier 1 q 1 = --- ( θ 1 – θ 2 ) R 1 d---θ 1 = ------ ( q0 – q 1 ) C1 dt
1 d---θ 2 = ------ ( q 1 ) C2 dt
1 1 sθ 1 = ------ q 0 – --- ( θ 1 – θ 2 ) C1 R
1 sθ2 = ---------- ( θ 1 – θ 2 ) RC 2
Rq o – sRC 1 θ 1 = θ 1 – θ 2
θ1 = θ 2 + sRC 2 θ 2
θ 1 ( 1 + sRC 1 ) = θ2 + Rq o θ2 + Rq o θ 1 = --------------------1 + sRC 1
Figure 25.6
A two chamber thermal system
thermal systems - 25.6
θ 2 + Rq o θ 1 = ---------------------- = θ 2 + sRC 2 θ 2 1 + sRC 1 θ 2 + Rq o ------------------------------ = 1 + sRC 1 θ 2 + sRC 2 θ 2 Rq o ------- θ2 1 ---------------------- + ---------------------- = 1 + sRC 1 1 + sRC 2 1 + sRC 2 Rq o 2 2 1 + --------- = 1 + s ( RC 1 + RC 2 ) + s R C 1 C 2 θ2 Rq o --------- = s ( RC 1 + RC 2 ) + s 2 R 2 C 1 C 2 θ2 q ----o- = s ( C1 + C 2 ) + s 2 RC 1 C 2 θ2 qo --------------- RC 1 C 2 A B θ2 = -------------------------------------- = --- + ---------------------------+ C s C C 1 2 1 + C2 - + s2 s -----------------s + ----------------- RC 1 C 2 RC 1 C 2 qo qo ------------------------------ RC C RC 1 C 2 qo 1 2 A = lim -------------------------------------- s = --------------------------------------- = ------------------ C 1 + C 2 C1 + C2 s → 0 C 1 + C 2 ----------------- s ------------------- + s 2 - + (0) RC 1 C 2 RC 1 C 2 qo qo --------------- --------------- RC 1 C 2 RC 1 C 2 C 1 + C 2 – qo lim -------------------------------------- s + ------------------- = ---------------------------- = ------------------B = RC 1 C 2 C1 + C2 C 1 + C 2 C 1 + C 2 2 1 + C 2 C s → – ----------------- ----------------------------------+ s s – RC 1 C 2 RC C RC 1 C 2 1 2 qo –qo ----------------------------------C1 + C2 C1 + C2 θ 2 = ------------------- + ---------------------------s C 1 + C2 s + -----------------RC 1 C 2 Figure 25.7
A two chamber thermal system (continued)
thermal systems - 25.7
qo 1 –1 –1 1 –1 L ( θ 2 ) = ------------------- L --- – L ---------------------------s C1 + C2 C 1 + C2 s + ------------------RC 1 C 2 C1 + C 2
– ------------------ t qo RC 1 C 2 θ 2 ( t ) = ------------------- 1 – e C1 + C 2
Figure 25.8
A two chamber thermal system (continued)
25.4 SUMMARY •
25.5 PRACTICE PROBLEMS 1.
25.6 PRACTICE PROBLEM SOLUTIONS
25.7 ASSIGNMENT PROBLEMS
multiaxis motion - 26.1
26. OPTIMIZATION
Topics: •
Objectives: •
26.1 INTRODUCTION • For simple examples use derivatives and find the maxima/minima • Consider the example below to find the
L =
• local and global optimums
multiaxis motion - 26.2
• search functions, gradient descent, random walk, simplex
26.2 OBJECTIVES AND CONSTRAINTS • Objectives are those things we want to minimize, or maximize. - money - time - mass - volume - power consumption - some combination of factors • Expressed as a function of variables that provides a value • Consider the example of building a fenced pasture. In this case when the area becomes too large, there is a reduced value. We want to maximize the value of V.
multiaxis motion - 26.3
$ C fence = 20 ---- ( 2w + 2d ) m where, C fence = cost to construct the fence ($) w = width of the pasture (m)
C land
d = depth of the pasture (m) $ = 0.35 -----2- m
where, C land = cost for the land $ - R = 0.05 ----------wd 2 m yr
wd < 300m
2
$ - 2 R = 0.01 ----------( wd – 300m ) + 60$ 2 m yr
wd ≥ 300m
2
where, R = revenue generated by pasture land V = R – C fence – C land where, V = total value
Figure 26.1
Example cost function for building a fence around a pasture
• The cost function can be written as..
multiaxis motion - 26.4
double cost(double w, double d){ double value; double cfence, cland, R; Cfence = 40*(w + d); Cland = 0.05*w*d; if (w*d < 300){ R = 0.05 * w * d; } else { R = 0.01 * (w * d - 300) + 60; } value = R - Cfence - Cland return value; }
Figure 26.2
A subroutine for cost function calculation
• Constraints are boundaries that cannot be crossed. • Example of constraints, the pasture cannot be larger than one 1600m be 1600m beacuse of the constraints of an existing road system.
w ≤ 1600m d ≤ 1600m
Figure 26.3
Example constraint functions for a pasture
• The cost function can be written as..
multiaxis motion - 26.5
double cost(double w, double d){ double value; double cfence, cland, R; Cfence = 40*(w + d); Cland = 0.05*w*d; if (w*d < 300){ R = 0.05 * w * d; } else { R = 0.01 * (w * d - 300) + 60; } value = R - Cfence - Cland if(w > 1600) value = 1000000; if(d > 1600) value = 1000000; return value; }
Figure 26.4
A subroutine for cost function calculation
• Slack variables allow constraints to be considered as part of the cost function. Helps with a system with many local minimum.
4 4 w d C penaly = ---------------- + ---------------- 1600m 1600m
V = R – C fence – C land – C penaly
Figure 26.5
Example of slack variables for including constraints
• The cost function can be written as..
multiaxis motion - 26.6
double cost(double w, double d){ double value; double cfence, cland, R; double slack; Cfence = 40*(w + d); Cland = 0.05*w*d; if (w*d < 300){ R = 0.05 * w * d; } else { R = 0.01 * (w * d - 300) + 60; } // slack variable slack = pow((w/1600), 4) + pow((d/1600), 4); value = R - Cfence - Cland - slack; return value; }
Figure 26.6
A subroutine for cost function calculation
26.3 SEARCHING FOR THE OPTIMUM • Local Search Space • A topographical map shows the relationship between search parameters and cost values.
multiaxis motion - 26.7
Maximum (or minimum)
Search path
Objective Space Constraints
Figure 26.7
Local searches
• Global Search space. In this case the system becomes ’stuck’ in a local mimina.
multiaxis motion - 26.8
Local Optima
Figure 26.8
Global Optima
Global searches
• Global Search space. In this case the system searches all maxim.
multiaxis motion - 26.9
Local Optima
Figure 26.9
Global Optima
A Global Search
26.4 OPTIMIZATION ALGORITHMS • The search algorithms change system parameters and try to lower system parameters. • The main question is how to change the system paramters to minimize the system value.
26.4.1 Random Walk
multiaxis motion - 26.10
26.4.2 Gradient Decent
26.4.3 Simplex
26.5 SUMMARY •
26.6 PRACTICE PROBLEMS 1.
26.7 PRACTICE PROBLEM SOLUTIONS 1.
26.8 ASSIGNMENT PROBLEMS 1.
state space analysis - 27.1
27. FINITE ELEMENT ANALYSIS (FEA)
Topics:
Objectives:
27.1 INTRODUCTION
state space analysis - 27.2
27.2 FINITE ELEMENT MODELS • Consider a central node ’i’ connected to neighboring nodes with springs. nb
y
Ks na
Ks
x ni
Ks nc
Fi
Ks
nd
• Equations can be written to relate the position of node i to the surrounding nodes
state space analysis - 27.3
and the applied force. Ks ( y b – yi )
+
Ks ( x i – x a ) F i = ( F i x, F i y )
Ks ( x c – xi )
= Fix – Ks ( xi – xa ) + K s ( xc – x i ) = 0
x i ( 2K s ) + x a ( – K s ) + x c ( – K s ) = F i x +
Ks ( yi – yd )
∑ Fx
∑ Fx
= F iy – K s ( y i – y d ) + K s ( y b – y i ) = 0
y i ( 2K s ) + y b ( – K s ) + y d ( – K s ) = F i y xi yi xa ya
Fix Fiy
=
2K s 0 – K s 0 0 0 – K s 0 0 0
xb
0 2K s 0 0 0 – K s 0 0 0 – K s y b xc yc xd yd
state space analysis - 27.4
27.3 FINITE ELEMENT MODELS • Consider a central node ’i’ connected to neighboring nodes with springs. na
nb Ks
Fa
Fb
Ks
Ks
y x
Ks nd
nc
Fd
Fc
• Equations can be written to relate the position of node i to the surrounding nodes and the applied force. The ’x’ and ’y’ values are deflections from the unloaded state. The ’Ks’ value is based on the material stiffness and the geometry of the elements. Ks ( xb – xa )
( F a x, F a y )
Ks ( ya – y d )
+
∑ Fx
= F ax + K s ( x b – x a ) = 0
∴F ax = x a ( K s ) + x b ( – K s ) +
∑ Fx
= F ay – K s ( y a – y d ) = 0
∴F ay = y a ( K s ) + y d ( – K s )
Ks ( xb – xa ) ( Fb x, F by ) Ks ( y b – yc )
+
∑ Fx
= Fbx – Ks ( xb – xa ) = 0
∴F bx = x a ( – K s ) + x b ( K s ) +
∑ Fx
= Fby – Ks ( yb – yc ) = 0
∴F b y = y b ( K s ) + y c ( – K s )
state space analysis - 27.5
Ks ( yb – yc )
+
Ks ( xc – xd )
∑ Fx
= F cx – Ks ( x c – x d ) = 0
∴F cx = x c ( K s ) + x d ( – K s )
( F cx, F cy )
∑ Fx
+
= F cy + Ks ( y b – y c ) = 0
∴F cy = y b ( – K s ) + y c ( K s )
Ks ( ya – yd )
+
Ks ( x c – xd )
∑ Fx
= Fdx + Ks ( xc – x d ) = 0
∴F d x = x c ( – K s ) + x d ( K s )
( F d x, F d y )
∑ Fx
+
= F dy + K s ( y a – y d ) = 0
∴F dy = y a ( – K s ) + y d ( K s )
Fax
Ks
0 –Ks 0
0
0
0
Fay
0
Ks
0
0
0
0
0 –K s ya
–Ks 0
Ks
0
0
0
0
0
xb
0
yb
0 –Ks 0
xc
Ks
0
0
yc
0 –Ks 0
Ks
0
xd
0
0
Ks
yd
Fbx Fby
0
0
0
Ks
0 –Ks 0
Fcx
0
0
0
0
Ks
Fcy
0
0
0 –Ks 0
Fdx
0
0
0
Fdy
0 –Ks 0
=
0
0
0
xa
local stiffness matrix
• This can be combined into a more
state space analysis - 27.6
• A four element mesh n2
n1
n3
Ks Ks
#1 Ks
n4
Ks n7
#3 Ks
Ks #2
Ks
Ks
n5
#4
Ks n8
Ks
Ks n6
Ks n9
state space analysis - 27.7
For element #1 Local stiffness matrix
F 1x
Ks
0 –K s 0
0
0
0
F 1y
0
Ks
0
0
0
0
0 –Ks y1
–Ks 0
Ks
0
0
0
0
0
x2
0
y2
0 –Ks 0
x4
Ks
0
0
y4
0 –Ks 0
Ks
0
x5
0
0
Ks
y5
F 2x F 2y
0
0
0
Ks
0 –K s 0
F 4x
0
0
0
0
Ks
F 4y
0
0
0 –Ks 0
F 5x
0
0
0
F 5y
0 –Ks 0
=
0
0
0
x1
Global stiffness matrix x1
F 1x F 1y F 2x F 2y F 3x
Ks
0 –Ks 0 0 0 0
0
0
0
Ks
0
0 0 0 0
0
0 –Ks 0 0 0 0 0 0
–K s 0
Ks
0 0 0 0
0
0
0 0 0 0 0 0 0 0 0 0 0 0 0 0
0
0
0
Ks 0 0 0 –K s 0
0 0 0
0 0 0
0 0 0
0 0 0 0 0 0 0 0 0 0 0 Ks
0
0
0 –Ks 0 0 0
F 5y
0
0
0
F 6x F 6y
F 3y F 4x F 4y F 5x
F 7x F 7y F 8x F 8y F 9x F 9y
=
0 0 0 0 0 0 0
y1 x2 y2 x3
y3 0 0 0 0 0 0 0 0 0 x 0 0 0 0 0 0 0 0 0 4 0 –K s 0 0 0 0 0 0 0 y4 K 0 0 0 0 0 0 0 0 x5 s
0 0 0 –Ks 0
Ks
0 –Ks 0
0 0 0 0
0
0
0 0 0 0 0 0 0 y5 K 0 0 0 0 0 0 x6
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
s
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
y6 x7 y7 x8 y8 x9 y9
state space analysis - 27.8
For element #2 local stiffness matrix
F2x
Ks
0 –Ks 0
0
0
0
F2y
0
Ks
0
0
0
0
0 –K s y2
–Ks 0
Ks
0
0
0
0
0
x3
0
y3
0 –Ks 0
x5
Ks
0
0
y5
0 –K s 0
Ks
0
x6
0
0
Ks
y6
F3x F3y
0
0
0
Ks
0 –Ks 0
F5x
0
0
0
0
Ks
F5y
0
0
0 –Ks 0
F6x
0
0
0
F6y
0 –Ks 0
=
0
0
0
x2
added to global matrix x1
F 1x F 1y
Ks
0 –K s 0
0
0
0
0
F 2x
0
Ks
0
0
0
0
– K s 0 2K s 0 – K s 0
0
0
F 2y
0
0
0
0
0 –Ks
0 0 0 0 0 0 y1 0 –K s 0 0 0 0 0 0 x2 0 0 0 0 0 0 0 0 y2 0 0 0 0 0 0 0 0 x3
F 3x
0
0
F 3y
0
0 –K s 0
Ks 0
0
0
0
0
F 4x
0
0
0
0
0 Ks 0
0
0
0
F 4y
0
0
0
0
0
0 Ks
0 –Ks 0
0
0
0 –Ks 0
0
Ks
F 5y
0
0
0
0
0
0 – K s 0 2K s 0
F 6x
0 –Ks 0
0
0
0
0
0
F 6y
0
0
0
0
0
0
0
0
F 7x
0
0
0
0
0
0
0
0
0 0 0 0 0 0 y5 0 2K s 0 0 0 0 0 0 x 6 0 0 Ks 0 0 0 0 0 y6 0 0 0 K 0 0 0 0 x7
F 7y
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
F 5x
F 8x F 8y F 9x F 9y
=
0 2K s 0
0
0
0
0
0 0 0 0 0 0 y3 0 0 0 0 0 0 x4 0 0 0 0 0 0 y4 0 0 0 0 0 0 x5
s
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
y7 x8 y8 x9 y9
state space analysis - 27.9
For element #3
F4x
Ks
0 –Ks 0
0
0
0
F4y
0
Ks
0
0
0
0
0 –K s y4
–Ks 0
Ks
0
0
0
0
0
x5
0
y5
0 –Ks 0
x7
Ks
0
0
y7
0 –Ks 0
Ks
0
x8
0
0
Ks
y8
F5x F5y
0
0
0
Ks
0 –Ks 0
F7x
0
0
0
0
Ks
F7y
0
0
0 –Ks 0
F8x
0
0
0
F8y
0 –Ks 0
=
0
0
0
x4
state space analysis - 27.10
For element #4
F5x
Ks
0 –Ks 0
0
0
0
F5y
0
Ks
0
0
0
0
0 –K s y5
–Ks 0
Ks
0
0
0
0
0
x6
0
y6
0 –Ks 0
x8
Ks
0
0
y8
0 –K s 0
Ks
0
x9
0
0
Ks
y9
F6x F6y
0
0
0
Ks
0 –Ks 0
F8x
0
0
0
0
Ks
F8y
0
0
0 –Ks 0
F9x
0
0
0
F9y
0 –K s 0
=
0
0
0
x5
• If the input forces are known, then the resulting displacements of the nodes can be calculated by inverting the matrix. Consider the matrix for a single node.
state space analysis - 27.11
Fax
Ks
0 –Ks 0
0
0
0
ya
0
Ks
0
0
0
0
0 –Ks
Fay
–Ks 0
Ks
0
0
0
0
0
Fbx
0
Fby
0 –Ks 0
F cx
Ks
0
0
F cy
0 –Ks 0
Ks
0
Fdx
0
0
Ks
Fdy
xb yb
0
0
0
Ks
0 –Ks 0
xc
0
0
0
0
Ks
yc
0
0
0 –Ks 0
xd
0
0
0
yd
0 –K s 0
=
0
0
0
–1
xa
• If we assume that node ’c’ is fixed in the ’x’ and ’y’ directions, the matrix can reflect this by setting the appropriate matrix rows to zero. xa
Ks
0 –Ks 0 0
ya
0
Ks
xb
=
–Ks 0
0
0
0 0 –K s
–1
F ax F ay
Ks 0 0
0
F bx
0
F by
yb
0
0
0 Ks 0
xd
0
0
0
0 Ks 0
F dx
yd
0 –K s 0
0 0 Ks
F dy
• The displacements can then be found by selecting values for the coefficents and solving the matrix. We can select a value of 1000 for the stiffness, and a force of 10 will be
state space analysis - 27.12
applied at point ’a’ in the positive ’x’ direction. xa ya xb yb
10
3
0 = – 10 0
0 10
3
– 10 3
0
0
10
0
0
xd
0
0
yd
0
– 10
3
3
3
–1
0
0
0
0 –10
0
0
10
3
0
0
0
0
0 10
0
0
0
3
0 3
0 10
3
10 0 0 0 0 0
• This method generates very large matrices, easily into the millions. • To reduce the matrix size techniques such as symmetry are commonly used. • Strains can be found by calculating the relative displacements of neighboring points. These can then be used to calculate the stresses. • More complex elements are commonly used depending upon the stress conditions, part geometry and other factors. • There are a variety of finite element element methods and applications Computation Fluid Dynamics Nonlinear deformation
27.4 SUMMARY •
state space analysis - 27.13
27.5 PRACTICE PROBLEMS
27.6 PRACTICE PROBLEM SOLUTIONS
27.7 ASSIGNMENT PROBLEMS 1.
27.8 BIBLIOGRAPHY How, J, "16.31 Feedback Control Course Notes", MIT Opencourseware website.
Fuzzy logic - 28.1
28. FUZZY LOGIC
Topics: • Fuzzy logic theory; sets, rules and solving • Objectives: • To understand fuzzy logic control. • Be able to implement a fuzzy logic controller.
28.1 INTRODUCTION Fuzzy logic is well suited to implementing control rules that can only be expressed verbally, or systems that cannot be modelled with linear differential equations. Rules and membership sets are used to make a decision. A simple verbal rule set is shown in Figure 28.1. These rules concern how fast to fill a bucket, based upon how full it is.
1. If (bucket is full) then (stop filling) 2. If (bucket is half full) then (fill slowly) 3. If (bucket is empty) then (fill quickly)
Figure 28.1
A Fuzzy Logic Rule Set
The outstanding question is "What does it mean when the bucket is empty, half full, or full?" And, what is meant by filling the bucket slowly or quickly. We can define sets that indicate when something is true (1), false (0), or a bit of both (0-1), as shown in Figure 28.2. Consider the bucket is full set. When the height is 0, the set membership is 0, so nobody would think the bucket is full. As the height increases more people think the bucket is full until they all think it is full. There is no definite line stating that the bucket is full. The other bucket states have similar functions. Notice that the angle function relates the valve angle to the fill rate. The sets are shifted to the right. In reality this would probably mean that the valve would have to be turned a large angle before flow begins, but after that it increases quickly.
Fuzzy logic - 28.2
1
1 bucket is full
0 1
stop filling 0 1
bucket is half full 0
fill slowly 0
1
1 bucket is empty
0
0 height Figure 28.2
fill quickly angle
Fuzzy Sets
Now, if we are given a height we can examine the rules, and find output values, as shown in Figure 28.3. This begins be comparing the bucket height to find the membership for bucket is full at 0.75, bucket is half full at 1.0 and bucket is empty at 0. Rule 3 is ignored because the membership was 0. The result for rule 1 is 0.75, so the 0.75 membership value is found on the stop filling and a value of a1 is found for the valve angle. For rule 2 the result was 1.0, so the fill slowly set is examined to find a value. In this case there is a range where fill slowly is 1.0, so the center point is chosen to get angle a2. These two results can then be combined with a weighted average to get 0.75 ( a1 ) + 1.0 ( a2 ) angle = ---------------------------------------------- . 0.75 + 1.0
Fuzzy logic - 28.3
1. If (bucket is full) then (stop filling) 1 bucket is full 0 height
1 stop filling 0 angle
a1
2. If (bucket is half full) then (fill slowly) 1
1 bucket is half full
0
fill slowly 0
height
a2
angle
3. If (bucket is empty) then (fill quickly) 1
1 bucket is empty
0
0 height
Figure 28.3
fill quickly angle
Fuzzy Rule Solving
An example of a fuzzy logic controller for controlling a servomotor is shown in Figure 28.4 [Lee and Lau, 1988]. This controller rules examines the system error, and the rate of error change to select a motor voltage. In this example the set memberships are defined with straight lines, but this will have a minimal effect on the controller performance.
Fuzzy logic - 28.4
vdesired
verror +
-
Fuzzy Vmotor Motor Imotor Logic Power Controller Amplifier
vactual Servo Motor
The rules for the fuzzy logic controller are; 1. If verror is LP and d/dtverror is any then Vmotor is LP. 2. If verror is SP and d/dtverror is SP or ZE then Vmotor is SP. 3. If verror is ZE and d/dtverror is SP then Vmotor is ZE. 4. If verror is ZE and d/dtverror is SN then Vmotor is SN. 5. If verror is SN and d/dtverror is SN then Vmotor is SN. 6. If verror is LN and d/dtverror is any then Vmotor is LN. The sets for verror, d/dtverror, and Vmotor are; d/
verror 1
LN
0 -100 -50 0 50 100
rps
0
rps
1
0 -6
0
rps
1
0 3
6
rps/s
-6
-3
0 3
6
rps/s
0
0 -6
-3
0 3
6
rps/s
0 -3
0 3
-100 -50 0 50 100
Figure 28.4
rps
12 18 24
0
6
12 18 24
0
6
12 18 24
0
0
V
V
V
V
0
6
1
0
6
1 rps/s -6
1
0
1
1 rps
0 1
0
-100 -50 0 50 100
LP
-3
1 -100 -50 0 50 100
SP
1
1 -100 -50 0 50 100
ZE
Vmotor
1
1
SN
dtverror
0
6
12 18 24
0
6
12 18 24
1
0 -6
-3
0 3
6
rps/s
0
V
A Fuzzy Logic Servo Motor Controller
Consider the case where verror = 30 rps and d/dt verror = 1 rps/s. Rule 1to 6 are calculated in Figure 28.5.
Fuzzy logic - 28.5
1. If verror is LP and d/dtverror is any then Vmotor is LP.
1
1
0 -100 -50 0 50 100
rps
1
0 -6
-3
0 3
0
rps/s
6
0
6
12 18 24
ANY VALUE (so ignore)
30rps
V
17V (could also have chosen some value above 17V)
This has about 0.6 (out of 1) membership
2. If verror is SP and d/dtverror is SP or ZE then Vmotor is SP. the AND means take the lowest of the two memberships
the OR means take the highest of the two memberships 1
1 rps
0 -100-50 0 50 100
rps/s
0 -6 -3 0 3 6
1
1
0
rps/s 0
-6 -3 0 3 6
1rps/s
V 0
6
14V
1rps/s
30rps
12 18 24
This has about 0.4 (out of 1) membership
3. If verror is ZE and d/dtverror is SP then Vmotor is ZE.
1
1
0 -100 -50 0 50 100
30rps
rps
1 rps/s
0 -6
-3
0 3
6
1rps/s
This has about 0.0 (out of 1) membership
0 0
6
12 18 24
the lowest results in 0 set membership
V
Fuzzy logic - 28.6
4. If verror is ZE and d/dtverror is SN then Vmotor is SN.
1
1
0 -100 -50 0 50 100
1
0
rps
-6
-3
0 3
1rps/s
30rps
0
rps/s
6
This has about 0.0 (out of 1) membership
0
6
V
12 18 24
the lowest results in 0 set membership
5. If verror is SN and d/dtverror is SN then Vmotor is SN.
1
1
0 -100 -50 0 50 100
rps
1
0 -6
-3
0 3
rps/s
6
0 0
6
12 18 24
V
1rps
30rps
This has about 0.0 (out of 1) membership
6. If verror is LN and d/dtverror is any then Vmotor is LN.
1
1
1
0 -100 -50 0 50 100
rps
0
30rps
-6
-3
0 3
6
rps/s
0 0
6
12 18 24
V
ANY VALUE
This has about 0 (out of 1) membership Figure 28.5
Rule Calculation
The results from the individual rules can be combined using the calculation in Figure 28.6. In this case only two of the rules matched, so only two terms are used, to give a
Fuzzy logic - 28.7
final motor control voltage of 15.8V.
n
∑ ( Vmotor ) ( membershipi ) i
V motor =
i--------------------------------------------------------------------=1 n
∑ ( membershipi ) i=1
0.6 ( 17V ) + 0.4 ( 14V ) V motor = --------------------------------------------------- = 15.8V 0.6 + 0.4 Figure 28.6
Rule Results Calculation
28.2 COMMERCIAL CONTROLLERS At the time of writing Allen Bradley did not offer any Fuzzy Logic systems for their PLCs. But, other vendors such as Omron offer commercial controllers. Their controller has 8 inputs and 2 outputs. It will accept up to 128 rules that operate on sets defined with polygons with up to 7 points. It is also possible to implement a fuzzy logic controller manually, possible in structured text.
28.3 REFERENCES Li, Y.F., and Lau, C.C., “Application of Fuzzy Control for Servo Systems”, IEEE International Conference on Robotics and Automation, Philadelphia, 1988, pp. 1511-1519.
28.4 SUMMARY • Fuzzy rules can be developed verbally to describe a controller. • Fuzzy sets can be developed statistically or by opinion. • Solving fuzzy logic involves finding fuzzy set values and then calculating a value for each rule. These values for each rule are combined with a weighted average.
Fuzzy logic - 28.8
28.5 PRACTICE PROBLEMS
28.6 PRACTICE PROBLEM SOLUTIONS
28.7 ASSIGNMENT PROBLEMS 1. Find products that include fuzzy logic controllers in their designs. 2. Suggest 5 control problems that might be suitable for fuzzy logic control. 3. Two fuzzy rules, and the sets they use are given below. If verror = 30rps, and d/dtverror = 3rps/s, find Vmotor.
1. If (verror is ZE) and (d/dtverror is ZE) then (Vmotor is ZE). 2. If (verror is SP) or (d/dtverror is SP) then (Vmotor is SP). d/
verror 1
SN
0
rps
1
1
0 -6
-3
0 3
6
rps/s
1
0 -100 -50 0 50 100
rps
1
SP
Vmotor
1 -100 -50 0 50 100
ZE
dtverror
0 -100 -50 0 50 100
0
6
12 18 24
0
6
12 18 24
V
1
0 -6
-3
0 3
6
rps/s
1 rps
0
0
V
1 rps/s
0 -6
-3
0 3
6
V
0 0
6
12 18 24
4. Develop a set of fuzzy control rules adjusting the water temperature in a sink. 5. Develop a fuzzy logic control algorithm and implement it in structured text. The fuzzy rule set below is to be used to control the speed of a motor. When the error (difference between desired and actual speeds) is large the system will respond faster. When the difference is smaller the
Fuzzy logic - 28.9
response will be smaller. Calculate the outputs for the system given errors of 5, 20 and 40. 100% Big Error error
0% 10
30
100% Small Error error
0% 10
30
20 Big Output error 50
Small Output 5 error 50 if (big error) then (big output) if (small error) then (small output)
29. NEURAL NETWORKS
Topics: • Basic laws of motion • Gravity, inertia, springs, dampers, cables and pulleys, drag, friction, FBDs • System analysis techniques • Design case Objectives: • To be able to develop differential equations that describe translating systems.
I. Introduction
Over the past decade, the artificial intelligence community has undergone a resurgence of interest in the research and development of artificial neural networks. An artificial neural network is an attempt to simulate the manner in which the brain interprets information as determined by the current knowledge of biology, physiology, and psychology [14]. Artificial neural networks behave in much the same manner as biological neural networks, giving many of the same benefits. Artificial neural nets are fault tolerant, exhibit the ability to learn and adapt to new situations, and have the ability to generalize based on a limited set of data.
This arises because of the structure which allows
neural nets to process information simultaneously, as opposed to the serial nature of traditional digital computers. This parallel nature, inherent in neural networks, achieves the increase in speed by distributing the calculations among many neurons. The network structure provides a level of fault tolerance, which allows the network to withstand component failures without having the entire network fail. This paper focuses on a popular feedforward model of neural networks. In this model a set of inputs are applied to the network, and multiplied by a set of connection weights. All of the weighted inputs to the neuron are then summed and an activation function is applied to the summed value. This activation level becomes the neuron’s output and can be either an input for other neurons, or an output for the network. Learning in this network is done by adjusting the connection weights based upon training vectors (input and corresponding desired output). When a training vector is presented to a neural net, the connection weights are adjusted to minimize the difference between the desired and actual output. After a network is trained with a set of training vectors, the network should produce a good output match for the inputs. Artificial neural networks are mainly used in two areas --- pattern recognition, and pattern matching. Pattern recognition is performed by classifying an unknown pattern through comparisons with previously learned pat-
translation - 29.2
terns. This ability is termed associative recall. An example of this is the use of neural networks to recognize handwritten digits [4]. In pattern recognition, when a particular pattern is noisy or distorted, the network can generalize and choose the closest match [3][4][10][13]. Pattern matching uses continuous input patterns to evoke continuous output patterns (i.e. one-to-one mappings). An example is the use of a neural network as a basic controller for a plant. The controller would accept the plant conditions as the inputs, and a set of control outputs would drive the current manufacturing process. This approach is discussed in more detail in [11]. This paper uses the pattern matching strategy for the inverse kinematics of a typical three link manipulator. This paper focuses on the kinematic control of a three link manipulator working in three dimensional space, within a quarter of the robot workspace. When manipulators interact with the environment, the position of the end effector must be described. Human users are more suited to working in cartesian coordinates than the joint coordinates of robots; hence, there is a need for conversion between the two coordinate systems. The conversion from world coordinates to robot joint angles is called inverse kinematics. In the past, the problem of solving the inverse kinematics has been done through the application of various methods. These methods take one of two basic forms (i) Closed form equations or, (ii) Iterative. A closed form solution is found by decoupling the joints responsible for position and those responsible for orientation. These solution types are more desirable since explicit equations are available. Iterative techniques, such as, Newton-Raphson, Newton-Gauss and Linearization are available when no closed form solutions can be obtained. Many of these solutions require that the kinematics be performed off-line because of the computational demands of the algorithms. A brief survey of these various algorithms is given in [2] and [15]. Both of the forms are generally rigid and do not account for uncontrollable variables such as manufacture tolerances, calibration error, and wear. A neural network approach could adapt to changes in the robot due to wear from extended use over time. Such algebraic and algorithmic procedures cannot incorporate these situations. Previous research in the application of neural networks to kinematic control was performed for a to a twolink planar manipulator (working in a plane), and a five degree of freedom robot working in three dimensional space. The manipulators were controlled with a high accuracy; however, the training region for the two link robot was a small square in the centre of the workspace, and the five link robot was limited to a small wedge volume within the robot workspace [5][6][7]. This paper explains research extended to investigate the performance throughout the entire work space of the robot. Investigations of a more complete representation of inverse kinematics throughout the entire workspace is provided. The paper begins with a general introduction to the artificial neuron, a brief description of feedforward neural networks, and a description of the backpropagation learning algorithm. The inverse kinematics problem is described, and the application of a two-layer neural network is discussed. The use of compensation networks is explored and the results of the experimental work are presented. The implications of the neural network approach to the kinematic control problem are presented at the conclusion of this paper.
II. The Basic Artificial Neuron The basic building block of an artificial neural network is the neuron. In a popular model which will be
translation - 29.3
used in this paper, the connection weights between neurons are adjusted. The neuron receives inputs opi from neuron ui while the network is exposed to input pattern p. Each input is multiplied by a connection weight wij, where wij is the connection between neurons ui and uj. The connection weights correspond to the strength of the influence of each of the preceding neurons. After the inputs have been multiplied by the connection weights for input pattern p, their values are summed, netpj. Included in the summation is a bias value θj to offset the basic level of the input to the activation function, f(netpj), which gives the output opj . Figure 1 shows the structure of the basic neuron.
Neuron uj
wij opi
activation function
Σ where, wij opi θj opj
≡ ≡ ≡ ≡
1
netpj
opj
opj = f(netpj) netpj
netpj = Σ wijopi + θj synaptic weight, or connection weight between neuron ui and neuron uj output of neuron ui (input of neuron uj) bias value of neuron uj output of neuron uj (function of the summation f(netpj)) Figure 1 Basic structure of an artificial neuron.
In order to establish a bias value θj, the bias term can appear as an input from a separate neuron with a fixed value (a value of +1 is common). Each neuron requiring a bias value will be connected to the same bias neuron. The bias values are then self-adjusted as the other neurons learn, without the need for extra considerations. In calculating the output of the neuron, the activation function may be in the form of a threshold function, in which the output of the neuron is +1 if a threshold level is reached and 0 otherwise. Squashing functions limit the linear output between a maximum and minimum value. These linear functions, however, do not take advantage of multi-layer networks [14]. Hyperbolic tangents and the sigmoidal functions are similar to real neural responses; however, the hyperbolic tangent is unbounded and hard to implement in hardware. In this paper, the Sigmoidal function is used because of its ability to produce continuous non-linear functions, which can be implemented in hardware in future research areas. Figure 2 shows some commonly used activation functions.
translation - 29.4
linear
sigmoidal logistic
hyperbolic tangent
1
f(netpj) =
Squashing Function
1
1 - net 1-e
linear threshold
1
1
-1 pj
Figure 2 Common activation functions. For more in depth information on neural networks, please refer to introductions to the subject in [3], [8], [14] and [16].
III. Neural Network Architectures in Feedforward Systems
A single neuron can only simulate 14 of the 16 basic boolean logic functions. It cannot emulate the X-OR, or the X-NOR gates [9]. These limitations require that more than a single neuron be used, and thus, the architecture becomes an important consideration. In Feedforward systems, networks propagate the inputs forward through the neural net. Each neuron has inputs that only come from neurons in preceding layers. A one-layer neural net consists of a layer of input neurons and a layer of output neurons. A multi-layer network consists of an input layer of neurons, one or more hidden layers, and an output layer. The circular nodes in figure 3 represent basic neurons, as described in the previous section. The input neurons are shown as squares because they only act as terminal points (i.e. opi = input). The input layer does not process information; thus, it is not considered to be a part of the structure and is numbered layer 0. A simple one-layer network can effectively map many sets of inputs to outputs. In pattern recognition problems, this depends upon the linear separability of the problem domain. In pattern matching problems, this depends upon continuity, and topography of the function. If such a set of connection weights cannot be found using one-layered networks, then multi-layered networks must be considered.
translation - 29.5
input layer
output layer
input layer
(a) one-layer network
Figure 3
hidden layer
output layer
(b) two-layer network
Simple feedforward artificial neural networks.
IV. Backpropagation of Errors
Learning methods may be either supervised, or unsupervised. Supervised learning is required for pattern matching, and backpropagation is the most popular of the supervised learning techniques. In the backpropagation Training Paradigm, the connection weights are adjusted to reduce the output error. In the initial state, the network has a random set of connection weights. When a system starts with all connection weights equal, the network begins at a sort of local optimum, and will not converge to the global solution. In order for the network to learn, a set of inputs are presented to the system and a set of outputs are calculated. A difference between the actual outputs and desired outputs is calculated and the connection weights are modified to reduce this difference [14]. After inputs have been applied and the network output solution has been calculated, the estimated error contribution, δ, by each neuron must be calculated. The calculations begin at the output layer of the network. The delta value for any output neuron is computed as, δpj = (tpj - opj) f ´(netpj)
(1)
where, tpj is the desired output of output neuron uj, and opj is the actual output, and f ´(netpj) is the first derivative of the activation function with respect to the total input (netpj) for the given input pattern p evaluated at neuron uj. For the output layer, the change in connection weights can easily be calculated since the δ of the output neurons is easily determined. With the introduction of hidden layers, the desired outputs of these hidden neurons becomes more difficult to estimate. In order to estimate the delta of a hidden neuron, the error signal from the output
translation - 29.6 layer must be propagated backwards to all preceding layers. The delta, δpj , for the hidden neurons is calculated as, δpj = f ´(netpj)
Σδpkwjk
(2)
k where, f ´(netpj) is the first derivative of the activation function with respect to netpj at hidden neuron uj, δpk is the delta value for the subsequent neuron uk, and wjk is the connection weight for the link between hidden neuron uj and subsequent neuron uk. This process of calculating the δs is performed for all layers until the input layer is reached After all the error terms have been calculated for all the neurons, the weights may be adjusted. The estimated weight change ∆pwij(n+1) is calculated for each input connection to neuron uj from neuron ui by, ∆pwij(n+1) = η δpj opi + α ∆wij(n) new delta
(3)
momentum term
where η is the learning rate, α is the smoothing term, δpj is the delta of neuron uj, opi is the output of preceding neuron ui, and ∆wij(n) is the weight change in the previous training interval. The estimated errors are used to estimate the weight changes with the least mean squares method. The backpropagation method is essentially a gradient descent approach which minimizes the errors. In order to adjust the connection weights, the gradient descent approach requires that steps be taken in weight space. If the steps are too large, then the weights will overshoot their optimum values. If the steps are too small, it may take longer to converge and may become caught in local minima. The step size is then a function of the learning rate. The learning rate, which varies between 0 and 1, should be large enough to come up with a solution in a reasonable amount of time without having the solution oscillate within weight space. By introducing the momentum term, which varies between 0 and 1, the learning rate can be increased while preventing oscillation. The momentum term is introduced by adding to the weight change some percentage of the last weight change. Common values for η range from 0.1 to 0.9, and common values of α range from 0.2 to 0.8 The training set is comprised of points which have inputs and desired outputs, which may or may not be in a random order. In this paper, the training points were chosen at random from an ordered table. This allows a weight correction after each point is trained. This method helps avoid local optimum points in weight space, by creating a random walk type of weight optimization, and gives a much faster global convergence. This process is then repeatedly performed for all training examples until a satisfactory output error is achieved. For an in-depth derivation of the back propagation method, the reader is suggested to consult Rumelhart and McClelland [14].
V. A Typical Three Link Manipulator
In order for a robotic manipulator to perform tasks within space, a user must specify a location in three dimensional space. The robotic controller must then determine the correct joint coordinates to locate the manipulator. This area of robotics, Inverse Kinematics, has been well researched and many good solutions exist. In all cases the
* note: The subscript notation (i, j, k) means that neuron ui precedes neuron uj, which precedes uk, etc.
translation - 29.7
resultant solutions are highly specific to a particular robot configuration, with exact dimensions. Such explicit solutions do not tolerate changes over time. These changes may be caused by poor tolerances in manufacture, wear over extended periods of operation, damage to the robot, and poor calibration. Computations are often complex, can be quite slow, and require a computer capable of performing complex mathematical functions. An example of a robot which may be used with an artificial neural network control system is the three link manipulator as shown in figure 4. The forward and inverse kinematic equations, used by the authors in testing, are given in the equations (4) and (5).
Z0
θ1 a2
θ2
Table 1 Link parameter table. link
variable
α
a
d
1 2 3
θ1 θ2 θ3
90o 0o 0o
0 a2 a3
0 0 0
a3
Z1
θ3 Z2
(px, py, pz) X
Denavit-Hartenburg Transformations
T3 = A1A2A3
=
c1c23 s1c23 s23
-c1s23 -s1c23 c23
s1 -c1 0
c1(a3c23 + a2c2) s1(a3c23 + a2c2) a3s23 + a2s2
0
0
0
1
Figure 4 A typical three link manipulator. The ± sign in θ2 indicates the general configuration of the robot arm. The positive sign (+ve) corresponds to an elbow down solution, and the negative sign (-ve) corresponds to an elbow up solution.
translation - 29.8
px = c1(a3c23 + a2c2) py = s1(a3c23 + a2c2)
forward kinematic equations (4)
pz = a3s23 + a2s2 py
θ1 = tan-1
px β
θ2 = tan-1
±
√
pz2
+
pz - a2s2
θ3 = tan-1
α - a 2 c2
α2
-
-
β2
-
tan-1
α pz
θ2
s1 = sin θ1 where
inverse kinematic equations (5)
c1 = cos θ1
c12 = cos (θ1 + θ2)
α = +
√px2
and
s12 = sin (θ1 + θ2)
β =
+ py 2
α2 + pz2 + a22 - a32 2a2
It should be noted that the inverse kinematics is not determinate. The sources of indeterminacy for this manipulator occur: • for Elbow up and Elbow Down Configurations, and • when the end of the arm is directly over the origin, θ1 is undefined. Other examples of indeterminacy occur in PUMA style robots where left and right arm configurations would give indeterminacy. These sources of indeterminacy may all be overcome by constraining the inverse kinematics to a particular case.
VI. Training a Neural Network for Inverse Kinematics
Neural Network solutions have the benefit of having faster processing times since information is processed in parallel. The solutions may be adaptive and still be implemented in hardware by using specialized electronics. Neural systems can generalize to approximate solutions from small training sets. Neural systems are fault tolerant and robust. The network will not fail if a few neurons are damaged, and the solutions may still retain accuracy. When implementing a neural network approach, complex computers are not essential and robot controllers need not be spe-
translation - 29.9
cific to any one manipulator. The nature of neural networks require that a set of training points be chosen which represent the nature of the inputs (x, y, z) and the corresponding outputs (θ , θ and θ ). If the training points chosen tend to be clustered, 1
2
3
then the network will be very accurate when dealing with points near the cluster. In this case, the robot should be familiar with points throughout the entire workspace; thus, points should be evenly distributed. The order in which points are presented to the network also affect the speed and quality of convergence. If the points are not presented in a random order, each training update will tend to train the network for the current section of space which the points are from. The neural network architecture chosen for this problem is a simple network with one hidden layer. The network has three input neurons for the desired position, and three output neurons for the estimated joint angles. A bias neuron (with a value of +1) is attached to all of the neurons in the hidden layer, and to all of the output neurons. The number of neurons in the hidden layer varied from 10, 20, and 40. This network architecture is pictured in figure 5.
input layer
hidden layer
output layer
x
θ1
y
θ2
z
θ3
+1 bias neuron Figure 5
29.1 SUMMARY •
Neural architecture for solving the inverse kinematic problem. For simplicity, the network is shown with a small amount of arrows; however, the network is actually fully connected.
translation - 29.10
29.2 PRACTICE PROBLEMS
29.3 PRACTICE PROBLEM SOLUTIONS
29.4 ASSIGNMENT PROBLEMS
29.5 REFERENCES
translation - 29.11
translation - 29.12
analog IO - 30.1
30. EMBEDDED CONTROL SYSTEM Topics: •
Objectives: •
30.1 INTRODUCTION • Elements of embedded systems (with program examples of each) NOTE: emphasize a top-down program structure with subroutines for each one. logical IO - digital inputs and outputs analog outputs - immediate analog inputs - delayed in (show use of nops and loop to wait), use potentiometer timers including PWM to control transisor/h-bridge for motor control, show sound generation also. counters including encoder decoding and tachometer decoding serial IO other peripherals such as displays, sounds, etc. • Control system fundamentals a simple PID feedback loop using nops and time calcs to ensure time a multiple step process that waits for an input and does a task with the PID loop. Show an executive subroutine and calls to dealing with events event types; asynchronous, delayed polling interrupts • Concurrent processes single thread vs concurrent processing how to implement a single control thread how to create multiple processes real-time the need for multiple processes non-time critical time critical; regular updates and minimum time between runs
analog IO - 30.2
priority levels hard vs. soft
• Structured Design General systems design topics show the general structure of a program with an executive routine that calls task routines. show a program that mixes an asynchronous GUI mixed with a realtime routine Modal System design show the use of global mode bits to track the mode of the system show how the mode bits changes the flow of execution in the executive routine. Flowcharts map flowchart structures to program structure using a register value to track the location in the flowchart State Diagrams show the use of state diagrams to model a process and then how the program is written for it. Failure Analysis show basic probability theory show parallel vs serial failures show failure estimation using theory for single and chained failure modes show the methods for categorizing failures as a hazard, danger, etc. • Communication Receiving and sending strings String Handling Parsing strings Composing strings Command and response structures Error Checking Non byte oriented data Networked structured, ie destination address header A full feedback control system • Other topics Keyboard multiplexing output refreshing, LEDs
analog IO - 30.3
30.2 CASE STUDY
30.3 SUMMARY •
30.4 PRACTICE PROBLEMS 1.
30.5 PRACTICE PROBLEM SOLUTIONS 1.
30.6 ASSIGNMENT PROBLEMS 1.
writing guide - 31.1
31. WRITING Reports are the most common form of document written by engineering. Report writing is an art that we often overlook, but in many cases can make a dramatic impact on how our work is perceived. Your reports are most likely to find their way to a superiors desk than you are to meet the individual.
31.1 FORGET WHAT YOU WERE TAUGHT BEFORE In my experience, most engineering students have been prepared for persuasive writing, but many of these skills become a negative when writing reports. The items listed below are the most common problems that engineering encounter when writing. Writing is the last thing you do - Students have been required to do rough drafts to clarify their thoughts and determine what they want to say. To put it simply, if you don’t know what you will say you are not ready to write. When you are ready to write it should already be clear. An author should not start to write the report until all Don’t find ’creative ways to say things’ - many student have been taught that they should not repeat themselves and find multiple ways to say things. When this is done in technical documents it leads to confusion. Authors should use precise terms (as many times as needed) and avoid trying to generate creative word choices. For example, we could increase confusion by also describing translation as motion, movement, sliding, displacing, etc. Keep it simple - In an attempt to increase the ’prestige’ of a document many authors will use ’large’ words. This often leads to confusion and should be avoided. In some cases when an author is unsure they will respond by making their writing style more complex but most readers recognize this. For example, “Electronic computer based digital readings can provided a highly accurate data source to improve the quality of the ascertained data.” could be replaced with “Computer based data collection is more accurate.” Clear, concise and to the point - In the past many students have been required to write reports with a minimum number of words. This encourages writers to break ideas into smaller pieces. But, readers appreciate shorter documents that get to the point. For example, “Readings of the pressure, as the probe was ascending up the chimney towards the top, were taken.” is better put “Pressure probe readings were taken as the probe was inserted”. There is no great opening paragraph - Over half of all student authors spent a large amount of time on the opening paragraph to set the tone for the report. In my experience the longer a student tries to write the opening paragraph, the worse it is. In most cases it can be removed entirely from the document without any negative impact. Ironically, the writing of these students often improves once they
writing guide - 31.2
get beyond the first paragraph, but they have already lost the interest of the reader. Transitions are not that important - Students are often coached to create clean transitions between sentences and paragraphs. As a result they often add unnecessary sentences and words. Words that are often warning signs are also and then. You don’t need to keep the good stuff to the end - Many authors try to write the report so that there is a ’climax’. It can be very frustrating for a reader who reads 90% of a report before they encounter some discussion of the results. (note: a report is not like a mystery novel.) Saying it more than once is acceptable- Over 3/4 of students feel that it is unacceptable to state facts more than once. In truth you want to state fact as many times as necessary to make a technical point. In the case of very important details, this will be in the abstract, introduction discussion and conclusion. A better procedure for writing engineering reports is detailed below. The method leaves writing to one of the last stages, but it becomes much easier when done this way. 1. Plan and do the work as normal. Regardless of what the report requires this will often include drawings, sketches, graphs/charts of collected data, pictures, etc. 2. Do the analysis (preferably on computer) of the data and results. These should be organized into a logical sequence. 3. Review the results to ensure they make sense and follow a logical flow.If necessary add figures to help clarify. 4. Review the materials to verify that they make sense without the text. 5. Put in point form notes to lay out the document. 6. Write the text for the report. 7. Verify that the report conforms to guidelines. 8. Proofread.
31.2 WHY WRITE REPORTS? Reports are written for a number of reasons, as listed below. In all cases they are designed to communicate technical information. Report readers are often looking for clear details that lead to a clear set of conclusions. By contrast, they are not looking for content that is highly philosophical, or riddled with artistic diversions. - (lets forget about this one) as a student you must do them to get marks - to let other engineers know the results of an experiment - to leave a record of work done so that others may continue on - as a record you may use yourself if you must do work again some time later - they are required for legal reasons (contract or legislation) - they bring closure to the project
writing guide - 31.3
31.3 THE TECHNICAL DEPTH OF THE REPORT Knowing the level of reader is very important when writing. Engineers often write reports for other engineers, or technically aware readers. As a result an engineer will often write at their own knowledge level. When necessary, appendices can be added to accommodate readers with variable backgrounds. The depth of detail is another common issue. The author should provide enough detail to allow others to follow and reproduce the results. The two questions below should form a good basis for evaluation. “What happens if I am hit by a car; could somebody pick up my report and continue?” if the answer to this question is no the report requires more detail. “Would I skip or skim this sentence/paragraph/section/report because it is so obvious?”. If the answer is yes section can be condensed, or moved to and appendix.
31.4 TYPES OF REPORTS The list below shows many of the reports written by engineers. In general, reports give necessary background, discuss details and then draw conclusions from them. The credibility of a report is based upon the evidence it contains. These then support the conclusions drawn by the author. Laboratory - Theses ‘Lab Reports’ describe one or more experiments, the results, and the conclusions drawn from them. Consulting - A summary of details, test results, observations, and a set of conclusions. Typically they will also contain a recommendation. Project - A description of work done in a project to inform other engineers who may be asked to take up further work on the project. Research - A summary of current advances in a topic. This should end with some comparison of alternatives. Interim - A report to apprise supervisors and others as to the progress of a project or other major undertaking. Executive - A brief summary of the report, and any implications for decision making at the management levels. Proposals - A technical document describing a project for the purposes of obtaining permission to proceed.
31.5 LABORATORY REPORTS • Purpose: These reports should outline your procedure and results in detail. They
writing guide - 31.4
should also contain the analysis and conclusions. The completeness of detail allows you (and others) to review these and verify the correctness of what has been done. These have been historically used for hundreds of years and are accepted as a form of scientific and legal evidence. It is completely unacceptable to make incorrect entries or leave out important steps or data. • Standard Format: 1. Title, Author, Date - these make it clear what the labs contain, who did the work, and when it was done. If the report is done for a course it should also include the course name/number, the lab instructor and the lab section. 2. Purpose - a brief one line statement that allows a quick overview of what the experiment is about. This is best written in the form of a scientific goal using the scientific methods. 3. Theory - a review of applicable theory and calculations necessary. Any design work is done at this stage 4. Equipment - a list of the required equipment will help anybody trying to replicate the procedure. Specific identifying numbers should be listed when possible. If there are problems in the data, or an instrument is found to be out of calibration, we can track the problems to specific sets of data and equipment. 5. Procedure - these are sequential operations that describe what was done during the experiment. The level of detail should be enough that somebody else could replicate the procedure. We want to use this as a scientific protocol. 6. Results (Note: sometimes procedure and results are mixed) - the results are recorded in tables, graphs, etc. as appropriate. It will also be very helpful to note other events that occur (e.g. power loss, high humidity, etc.) 7. Discussion - At this stage the results are reviewed for trends and other observations. At this point we want to consider the scientific method. 8. Conclusions - To conclude we will summarize the significant results, and make general statements either upholding or rejecting our purpose. • Style: These are meant to be written AS the work is done. As a result the work should be past tense • Laboratory reports should have one or more hypotheses that are to be tested. If testing designs these are the specifications. Examples might be, - what is the thermal capacity of a material? - what is the bandwidth of an amplifier? - will the counter increment/decrement between 0 to 9? • NOTE: These reports are much easier to write if you prepare all of the calculations, graphs, etc. before you start to write. If you sit down and decide to do things as you
writing guide - 31.5
write it will take twice as long and get you half the marks...... believe me, I have written many in the past and I mark them now.
31.5.0.1 - An Example First Draft of a Report Grand Valley State University Padnos School of Engineering EGR 345 Dynamics Systems Modeling and Control Laboratory Exercise 7 Title: The Cooling of Coffee Author: I. M. Wyred Date: Dec., 23, 1998 Purpose: To derive a theoretical model of the rate at which coffee cools and experimentally verify the model and find coefficients. Theory: When coffee is heated kinetic energy is added, when coffee is cooled kinetic energy is removed. In a typical use, coffee cools as heat is lost through convection and conduction to the air and solids in contact. The factors involved in this convection/conduction can be difficult to measure directly, but we can approximate them with a simple thermal resistance. Consider the temperature difference between the coffee and the ambient temperature. The greater the temperature difference, the higher the rate of heat flow out of the coffee. This relationship can be seen formally in the equation below. We can also assume that the atmosphere is so large that the heat transfer will not change the temperature.
writing guide - 31.6
1 q = --- ( θ coffee – θ air ) R where, q = heat flow rate from coffee to air (J/s) R = thermal resistance between air and coffee θ = temperatures in the coffee and air We can also consider that coffee has a certain thermal capacity for the heat energy. As the amount of energy rises, there will be a corresponding temperature increase. This is known as the thermal capacitance, and this value is unique for every material. The basic relationships are given below. I will assume that the energy flow rate into the coffee is negligible.
1 –1 ∆θ coffee = ---------------- ( q in – qout ) = ---------------- q C coffee C coffee where,
dθ coffee –1 ----------------- = --------------q dt C coffee
C coffee = thermal capacitance C coffee = M coffee σ coffee where, M coffee = mass of thermal body σ coffee = specific heat of material in mass The temperatures can be found by consider that the energy flowing out of the cup, and into the atmosphere is governed by the resistance. And, the temperature in the coffee and air are governed by the two capacitances. We will make two assumptions, that the thermal capacitance of the atmosphere is infinite, and that there is no energy flowing into the coffee.
writing guide - 31.7
dθ coffee –1 ----------------- = ---------------q dt C coffee dθ coffee –1 1 ∴-----------------= --------------------------------- --- ( θ coffee – θ air ) dt M coffee σ coffee R dθ coffee 1 1 ∴------------------ + ------------------------------------- θ coffee = ------------------------------------- θair dt M coffee σ coffee R M coffee σ coffee R
This differential equation can then be solved to find the temperature as a function of time.
Guess
θ = A + Be
∴BCe
Ct
Ct d---θ = BCe dt
Ct
1 1 Ct + ------------------------------------- ( A + Be ) = ------------------------------------- θ air M coffee σ coffee R M coffee σ coffee R
B A –1 Ct ∴e BC + ------------------------------------- + ------------------------------------- + ------------------------------------- θ air = 0 M coffee σ coffee R M coffee σ coffee R M coffee σ coffee R B BC + ------------------------------------- = 0 M coffee σ coffee R
–1 C = ------------------------------------M coffee σ coffee R
–1 A ------------------------------------- + ------------------------------------- θ air = 0 M coffee σ coffee R M coffee σ coffee R
A = θ air
To find B, the initial temperature of the coffee should be used, θ 0 = A + Be
C(0)
= θ air + B
B = θ 0 – θair
The final equation is, θ = θ air + ( θ 0 – θ air )e
–t ---------------------------------M coffee σ coffee R
The time constant of this problem can be taken from the differential equation
writing guide - 31.8
above.
τ = M coffee σ coffee R
Equipment: 1 ceramic coffee cup (14 oz.) 2 oz. ground coffee 1 coffee maker - Proctor Silex Model 1234A 1 thermocouple (gvsu #632357) 1 temperature meter (gvsu #234364) 1 thermometer 2 quarts of tap water 1 standard #2 coffee filter 1 clock with second hand 1 small scale (gvsu# 63424) Procedure and Results: 1. The coffee pot was filled with water and this was put into the coffee maker. The coffee filter and grounds were put into the machine, and the machine was turned on. After five minutes approximately the coffee was done, and the pot was full. 2. The mass of the empty coffee cup was measured on the scale and found to be 214g. 3. The air temperature in the room was measured with the thermometer and found to be 24C. The temperature of the coffee in the pot was measured using the thermocouple and temperature meter and found to be 70C. 4. Coffee was poured into the cup and, after allowing 1 minute for the temperature to equalize, the temperature was measured again. The temperature was 65C. Readings of the coffee temperature were taken every 10 minutes for the next 60 minutes. These values were recorded in Table 1 below. During this period the cup was left on a table top and allowed to cool in the ambient air temperature. During this period the mass of the full coffee cup was measured and found to be 478g.
writing guide - 31.9
Table 1: Coffee temperatures at 10 minute intervals time (min) 0 10 20 30 40 50 60
temperature (deg C) 65 53 43 35 30 28 26
Discussion: The difference between the temperature of the coffee in the pot and in the cup was 5C. This indicates that some of the heat energy in the coffee was lost to heating the cup. This change is significant, but I will assume that the heating of the cup was complete within the first minute, and this will have no effect on the data collected afterwards. The readings for temperature over time are graphed in Figure 1 below. These show the first-order response as expected, and from these we can graphically estimate the time constant at approximately 32 minutes.
temp (deg C) 60
40 24
t (min)
20 0
20
τ ≈ 32min
40
60
Figure 1 - A graph of coffee temperature measured at 10 minute intervals
writing guide - 31.10
We can compare the theoretical and experimental models by using plotting both on the same graph. The graph clearly shows that there is good agreement between the two curves, except for the point at 30 minutes, where there is a difference of 3.5 degrees C.
temp (deg C) experimental data mathematical model
60 max. difference of 3.5 deg. C
40
t (min)
20 0
20
40
60
Figure 2 - Comparison of experimental and modelled curves This gives an overall error of 8.5% between these two curves, compared to the total range of the data.
3.5 error = ------------------ 100 = 8.5% 65 – 24
Finally, the results can be used to calculate a thermal resistance. If we know the mass of the coffee and assume that the coffee has the same specific heat as water, and have the time constant, the thermal resistance is found to be 1731sC/J.
τ = M coffee σ coffee R sC τ R = --------------------------------- = 1731 -----J M coffee σ coffee
M coffee = 478g – 214g = 0.264Kg C σ coffee = 4.2 ---------KgJ τ = 32min = 1920s
writing guide - 31.11
Conclusion: In general the models agreed well, except for a single data point. This error was relatively small, only being 8.5% of the entire data range. This error was most likely caused by a single measurement error. The error value is greater than the theoretical value, which suggests that the temperature might have been read at a "hot spot". In the procedure the temperature measuring location was not fixed, which probably resulted in a variation in measurement location.
31.5.0.2 - An Example Final Draft of a Report • A final draft of the report is available on the course website in Mathcad format, and it will be distributed in the lab.
31.6 RESEARCH • Purpose: After looking at a technical field we use these reports to condense the important details and differences. After reading a research report another reader should be able to discuss advanced topics in general terms. • Strategy A: 1. Clearly define the objectives for the report 2. Outline what you know on a word processor in point form and find the ‘holes’ 3. Do research to find the missing information 4. Incorporate the new and old information (still in point form) 5. Rearrange the points into a logical structure 6. Convert point form into full text 7. Proof read and edit
31.7 DRAFT REPORTS - draft reports will be edited for contect. As a result they must be double spaced to make room for editing comments.
writing guide - 31.12
31.8 PROJECT REPORT
XXXXX UPDATE USING PROJECT DESCRIPTION - do exhibits first, then write Basic elements are, Title page - title of project - Department/Company (i.e., unviersity) name - course/name - author list - date of submission Executive Summary/Overview - the purpose is to let people know if they want ro read the report - write it last after all the details are done - briefly describe the purpose of the work - what were the results, be detailed - given numbers - keep it short Nomenclature - list all variables used in the report - put in alphaetical order, with upper case first - list greek and other variables separately Table of contents - list all major sections, and minor sections to a reasonable level - list page numbers - right justify the numbers Introduction - if you must include this section, it should be brief - the introduction is expected to outline details to be discussed in the report. Body............ Title page
writing guide - 31.13
• Purpose: These reports allow the developer or team to document all of the design decisions made during the course of the project. This report should also mention avenues not taken. Quite often the projects that we start will be handed off to others after a period of time. In many cases they will not have the opportunity to talk to us, or we may not have the time. These reports serve as a well known, central document that gathers all relevant information. • Strategy A: 1. Define the goals for the project clearly in point form 2. Examine available options and also add these in point form 3. Start to examine engineering aspects of the options 4. Make engineering decisions, and add point form to the document 5. As work continues on the project add notes and figures 6. When the project is complete, convert the point form to full text. 7. Proof read and edit
31.9 OTHER REPORT TYPES
31.9.1 Executive Purpose: These reports condense long topics into a very brief document, typically less than one page in length. Basically these save a manager from having to read a complete report to find the details that interest him/her.
31.9.2 Consulting Purpose: These reports are typically commissioned by an independent third party to review a difficult problem. The consultant will review the details of the problem, do tests as required, and summarize the results. The report typically ends with conclusions, suggestions or recommendations.
31.9.3 Memo(randum) Purpose: An internal business letter designed to convey a business policy or infor-
writing guide - 31.14
mation. - begin with Date, From, To, Subject:, cc:
31.9.4 Interim Purpose: This report is normally a formal report to track the progress of a project. When a project is initially planned, it will be given a timeline to follow. The interim report will indicate progress relative to the initial timeline, as well as major achievements and problems.
31.9.5 Poster Purpose: A presentation format that conveys the key concept visually so that a spectator would have a concept of the project in a glance, and be able to review the key concepts in under one minute. - use a minmimum of 16pt, or higher font. - abundant usage of figures - put on foan core backing board, or worst, a purchased cardboard backing board. - The format uses bullets (still full sentences) to abreviate the presentation. - the poster should be self-explanatory - be neat - use color in a tasteful way. Typical sections include; purpose/motivation - a brief summary of the purpose of the work. A summary of the major work detials and outcomes. approach - the work that was done conclusions - the results of the work that was assigned acknowledgements - indicate others who played a significant role in the results.
31.9.6 Progress Report Purpose: To provide details of project progress to a supervisor or customer.
writing guide - 31.15
31.9.7 Oral Purpose: Work may be presented to an audience in a formal presentation. - This can be a very effective method of comminucation when done well, but it can also be very cruel because an audience may be forced to sit through an uncomfortable experience. - use a minmimum of 16pt, or higher font. - abundant usage of figures - The format uses bullets (still full sentences) to abreviate the presentation. - the presentation should be self-explanatory - use color, visuals and sounds in a tasteful way. - present concepts, by introducing, presenting then reviewing.
31.9.8 Patent Purpose: A document to describe a design for legal purposes. - a patent documents that an individual/company owns the idea. - it gives them the right to sue those who use the idea and ’infringe’ - the patent is submitted to the patent office and reviewed. If the reviewers are satisfied, then the patent is granted, and a patent number is assigned. - a patent only gives the holder the right to sue. - Normally a patent lists the inventor (normally an engineer), but is assigned to the employer. If the inventor is an employee, they assign the rights to the employer in exchange for $1. - Patents are publically available after they are granted to encourage innovation. - Patents have a life of 20 years from the date of application. - A patent is only available for ideas that can be patented. - the patent is structured into the follwing sections; Abstract - a brief description of the patent References - A list of other patents, or other publications that are related. These are expected as most patents are built upon previous concepts. Claims - An itemized list of features that make the design unique from previous ideas. Normally the are at least a dozen claims. These are the items that are the legal basis for the patent. Description - A techibcally detailed description of the patentable work.Tihis normally includes sections such as Summary of the Invention, Description of the Drawings, Detailed Description of the Invention. It is common for the description to include drawings and equations.
writing guide - 31.16
31.10 LAB BOOKS (This is adapted from a document developed by Dr. P. Anyalebechi) Each student is required to maintain a well-kept and up-to-date laboratory notebook. This notebook should be used to record all of the details of the various experiments and tests that are performed no matter how trivial they may seem at the time. The entries should include the following: (i) Date the test was performed (ii) Objective of the test or experiment (iii) A brief description of the experimental or test apparatus or machine and the procedure used (iv) Results obtained - including visual observations and computer data file names (if the results were obtained with a data acquisition system) (v) Preliminary thoughts on the significance of the results At the end of each lab period, the notebook should be witnessed and signed by either the instructor or a laboratory assistant. The notebook should be submitted to your instructor for grading within 24 hour of the end of the lab. For team studies, every member of the team is expected to keep an independent record (in his/her own laboratory notebook) of the experimental procedure, results, and preliminary interpretation of the results. This will facilitate team discussions. Well-kept laboratory notebooks are very important. They facilitate the statistical analysis and interpretation of the data and the eventual writing of a final technical report. They provide a legal record of events and often make the difference between winning or losing legal cases on patents and on a company's right to use a certain technology in their manufacturing facilities. Losing one of these cases could bankrupt a company or cost it millions of dollars in royalty!
31.11 REPORT ELEMENTS • In reports we must back up our opinions with data, equations, drawings, etc. As a result we use a number of common items,
writing guide - 31.17
- figures - tables - equations • When these elements are included, there MUST be a mention of them in the written text. • These days it is common to cut and paste figures in software. Make sure - the resolution is appropriate - the colors print properly in the final form or print well as black and white - the smallest features are visible - scanned drawings are clean and cropped to size - scanned photographs are clear and cropped to size - digital photographs should be properly lit, and cropped to size - screen captures are clipped to include only relevant data
31.11.1 Figures • Figures include drawings, schematics, graphs, charts, etc. • They should be labelled underneath sequentially and given a brief title to distinguish it from other graphs. For example “Figure 1 - Voltage and currents for 50 ohm resistor” • In the body of the report the reference may be shortened to ‘Fig. 1’ • The figures do not need to immediately follow the reference, but they should be kept in sequence. We will often move figures to make the type setting work out better. • If drawing graphs by computer, - if fitting a line/curve to the points indicate the method used (e.g. linear regression) - try not to use more than 5 curves on the same graph - use legends that can be seen in black and white - clearly label units and scales - label axes with descriptive term. For example “Hardness (RHC)” instead of “RHC”
writing guide - 31.18
- scale the curve to make good use of the graph - avoid overly busy graphs - titles should clearly, and disctinct, indicate why the content of the figure is significant.
Figure 2 - Various Techniques for Making a Sphere with AMP
31.11.2 Graphs • Units on axes • Should have points drawn and connected with straight (or no) lines if experimental. • Smooth lines are drawn for functions or fitted curves. If a curve has been fitted the fitting method should be described. • if using graphing software don’t put a title on the graph. - titles should clearly, and disctinct, indicate why the content of the figure is signif-
writing guide - 31.19
icant.
31.11.3 Tables • Tables are often treated as figures. • They allow dense information presentation, typically numerical in nature.
Table 1: A Comparison of Toy Vehicle Properties Description
Number
Color
Shape
Material
car
3
red
rectangular
die cast
truck
6
blue
long
polyprop.
motorcycle
2
green
small
wood
• Legends can be added to tables to help condense size. • table columns should have units as appropriate - titles should clearly, and disctinct, indicate why the content of the figure is significant.
31.11.4 Equations • When presenting equations, use a good equation editor, and watch to make sure subscripts, etc are visible. • Number equations that are referred to in the text. • Box in equations of great significance. • left justify equations
writing guide - 31.20
• express results in engineering notation • use care with subscripts
+
+
∑ Fx ∑ Fy
= – T 1 sin 60° + F R sin θ R = 0
= – T 1 – T 1 cos ( 60° ) + F R cos θ R = 0
T 1 sin 60° T 1 + T 1 cos 60° ∴F R = ---------------------- = -----------------------------------sin θ R cos θ R
(1) (2) sub (1) into (2)
sin θ R sin 60° ∴--------------------------- = --------------- = tan θ R 1 + cos 60° cos θ R 0.866 ∴ tan θ R = ---------------1 + 0.5 ∴θ R = 30° 98 sin 60° = F R sin 30° ∴F R = 170N
31.11.5 Experimental Data • When analyzing the results from an experiment there are a few basic methods that may be used, Absolute difference - For example if the theoretical value is 105.8 and the measured value is 104.0 then you would say that "... the measured value was 1.8 below the theoretical value." Percent difference - Avoid using this, but if must remember to assign a sign to the percentage value. For example if the theoretical value is 100 and the measured value is 50 then you would say that "... the measured value was 50% below the theoretical value." OR "... the theoretical value was 200% of the experimental value." Mean and standard deviation - Useful for multiple data readings. Point by point - look at each point, and compare it to another.
writing guide - 31.21
• After data is presented, it should be discussed. In general a few good strategies are, - Discuss the fit between theory and measured. Explain differences in terms of hard facts and with numbers. - Don’t make vague references to human or experimental error. - Try to develop a conclusion about the quality of the experimental data. - Make a recommendation about changes that would improve that data quality.
31.11.6 Result Summary A results summary allows both the author and the reader a chance to review the resuls before a final conclusion. These should include the important results presented elsewhere in the report. It is best to use a graphical format such as a table or list.
31.11.7 References • References help provide direction to the sources of information when the information may be questioned, or the reader may want to get additional detail. • Reference formats vary between publication sources. But, the best rule is be consistent. • One popular method for references is to number them. The numbers are used in the body of the paper (eg, [14]), and the references are listed numerically at the end. • Another method is to list the author name and year (eg, [Yackish, 1997]) and then list the references at the end of the report. • Footnotes are not commonly used in engineering works. • References on the internet should include a working web address, a description of the page (normally the page title), a date viewed and the page author if available.
31.11.8 Acknowledgments • When others have contributed to the work but are not listed as authors we may
writing guide - 31.22
choose to recognize them. • Acknowledgments are brief statements that indicate who has contributed to a work.
31.11.9 Abstracts An abstract is a brief summary of the results of the project. It us used by potential readers to determine if they are interested in reading a report. It should repeat a number of key details. An abstract should not omit key findings, as if it were an advertisement for a movie.
31.11.10 Appendices Reports often include appendices to reduce bulk from the body. When putting material in an appendix it should stand alone and be referred to in the body of the report. It is customary to provide a summary of the results in the appendix, unless it is tutorial in nature. Examples of common appendices are given below. sample calculations - these are redundant numerical calculations, or a prolonged derivation of equations. The body of the report has a summary of key assumptions,sample calculations and results. The calculations are often provided so that the reader may verify the calculations. long tables of data - tables of numerical data are often put in appendices. Typically a sample of the table is included in the body for discussion purposes. These are often provided for the reader who wants to use the data beyond the uses in the report. program listings - long listings of computer programs are often put in appendices. They are referenced in the body on the report near the algorithm/calculation/ method they implement. These listings are provided for readers who want to use the program. multiple data graphs - multiple sets of data graphs are often put in appendices and summarized in a report body. The graphs are often provided so that the reader may use the graphs for verification or further analysis. reviews of basic theory - these are often referenced in the body of the report for readers who may not have seen a topic previously. These are uncommon in student reports.
writing guide - 31.23
31.11.11 Page Numbering - number all pages sequentially, roman numerals starting from ‘i)’ on the first page arabic numerals starting from ‘1’ on the - or, number pages by section. This is very useful for multi part manuals for example ‘4-7’ would be the 7th page in the 4th section - if pages are blank label them ‘this page left blank’ - number sections sequentially with roman or Arabic numerals
31.11.12 Numbers and Units - use engineering notation (move exponents 3 places) so that units are always micro, milli, kilo, mega, giga, etc. Avoid number formats such as ’0.00000456’ - use significant figures to round the numbers. For example a length of 0.345432in for a dimension measured with a ruler is ridiculous. - units are required always - greek symbols or the unit name spelled out - take care to distinguish between frequency in hertz and radians/sec - put a ’0’ before a point, 0.5 not .5 -
31.11.13 Engineering Drawings The Padnos School of Engineering basic drawing requirements are summarized below. General Requirements - a standard border - a title block with a part name, employer/client/etc, designers name, date of creation, units used, tolerances (unless noted on each dimension). Orthographic views - three views unless axial symmetry allows fewer. - the front view should be the most descriptive - aligned correctly - any hole/arc over 180 degrees must have center lines and marks - blind holes made by drilling must have a drill point shown - all parts must be manufacturable Dimensioning - The location and size of each feature must be clearly defined - critical assembly dimensions must be directly readable and not require
writing guide - 31.24
addition. - holes that form patterns must be dimensioned relative to each other and relative to a major feature - smaller dimensions should be closer to the part - chained dimensions must be aligned - hole sizes and dimensions should be on the profile view - arcs/circles more than 180 degrees are sized by diameter, otherwise radius is used. - redundant dimensions should be eliminated Tolerancing - Tolerances must be reasonable for manufacturing - Tolerances must ensure proper assembly and operation at maximum/minimum material conditions - mating parts should not have identical dimensions, they should be free running or press fits. - Smaller tolerances should be used for mating parts - a general part tolerance should be defined for the part, and smaller tolerances indicated for critical dimensions to reduce clutter
31.11.14 Discussions - discussions are expected to state all of the details. Sometines these might be obvious when the data is observed, but they must be stated.
31.11.15 Conclusions - This is the section to restate the key numbers that support the purpose of the lab. - clear, concise recommendations are needed. - You must not make statements such as ’this lab was a wonderful learning experience’ or ’all students should enjoy this lab’.
31.11.16 Recomendations - This is the section to restate the key numbers that support the purpose of the lab. - clear, concise recommendations are needed. -
writing guide - 31.25
31.11.17 Appendices - Some material is too bulky for a report body, these are normally moved to an appendix. - when material is placed in an appendix, it must be summarized in the body of the report. - The report must briefly summarize (ussually a figure or equation or more) and then refer to the appendix. - it is expected that there will be some duplication between the appendix and the summary in the appendix.
31.11.18 Units - Put a apce between numbers an units - verify that units match the numerical results] - radians are one of the units that may not observe norma; conventions.
31.12 GENERAL WRITING ISSUES This list below indicates some of the general problems students encounter when writing technical reports and some strategies for fixing these problems. Basic Spelling - A document should always be checked for spelling. Considering that utilities for checking spelling are available in most software this is expected. Be aware that ’smell checkers’ will only point out mis-spelled words, not words used inappropriately, so you should also proofread. Technical Spelling - Many technical terms are not in the dictionaries used for checking spelling. You may add these terms to the dictionary, or visually verify. Be very careful when using the ’autoreplace’ options in software. Basic Grammar - ’Grammar checkers’ can be used to look for obvious problems. Using simple sentence structures will reduce problems and speed the writing process. Grammar checking software should not be used as a replacement for proofreading. Technical Grammar - Normally grammar checking will reject text written in passive voice, but the software can often be reconfigured. This software will also be confused by the interchangeable use of nouns and verbs common in technical english, such as input. Jargon and Acronyms - A number of technical terms and acronyms have been
writing guide - 31.26
developed for efficiency and clarity. Examples include DMM, HTTP, kitted, parted, etc. All acronyms should be defined at their first use. Colloquialisms - Avoid informal language in technical reports. Use of informal language such as ’show me the beef’ will look unprofessional, confuse some readers and make material easily dated.
31.13 WRITERS BLOCK Everybody has suffered from writers block before. The obvious cause is not being sure what to write. This can be caused by a lack of understanding about the topic, or possibly how to express the point. Knowledge - In the case you are not sure what you are writing about you should spend time clarifying your knowledge before returning to writing. Reorganizing the material often helps to create clarity. Lack of knowledge - Current knowledge is based upon knowledge discovered and used before. This means that no matter how simple something apparently is, it has more layersw of knowledge than could be known by any one person. In the cases where you don’t know everything you should define what you do/don’t know. Skip that great opening paragraph - It is quite acceptable to start by writing central sections of a report. Many authors will write the abstract, introduction and conclusions last. It doesn’t need to sound impressive - Simply write what you mean to say. If you are having trouble saying it skip it and come back later, or leave it out.
31.14 TECHNICAL ENGLISH The table below indicates some good and poor choices for words and terms to use in technical papers.
Table 2: Technical Words and Phrases Good
Bad
calculated
found,
measured
read
writing guide - 31.27
Table 2: Technical Words and Phrases Good
Bad
chose
optimized
parallax error
human error
Table 3: Plain English Good was
Bad it became obvious that came in at representing
writing guide - 31.28
Table 3: Plain English Good
Generally bad phrases, in order to be needed to be ----> is needed to be used so as to decided to be can be located found to have found through it was found that
Bad
writing guide - 31.29
implementation of important precise exact perfect noted to be invoved allowed for it was found to be was looked thorough ---> reviewed along with - with also then decided on - selected found - measured, calculated
31.15 EVALUATION FORMS The forms on the following pages are examples of forms that may be used to evaluate written reports during the semester. The Lab Report Form - used to grade weekly lab reports Design Report Form - used to evaluate the final reports Peer Evaluation Form - this is used by students for team mates
writing guide - 31.30
EGR 345 - Laboratory Report Evaluation Student: Lab Number/Title: Technical: technically accurate theory section is complete complete procedure and collected data data analysis theory is verified with data conclusions based on data adequate use of numbers
A = _____ / 10 Communication: clear and concise good use of figures, graphs and tables use of english professional style passive voice/past tense suitable use of formatting
B = _____ / 10
Overall:
A * B = ______ / 100
writing guide - 31.31
EGR 345 - Design Project Evaluation Sheet
Team: no Follows defined formats and requirements
Writing style is clear and concise and has a logical flow
The paper is technically accurate and complete
The writing is professional
Overall writing quality and style
Comments:
31.16 PATENTS
United States Patent 6,368,227 Olson April 9, 2002 Method of swinging on a swing Abstract
yes
writing guide - 31.32
A method of swing on a swing is disclosed, in which a user positioned on a standard swing suspended by two chains from a substantially horizontal tree branch induces side to side motion by pulling alternately on one chain and then the other. Inventors: Olson; Steven (337 Otis Ave., St. Paul, MN 55104) Appl. No.: 715198 Filed: November 17, 2000 Current U.S. Class: 472/118 Intern'l Class: A63G 009/00 Field of Search: 472/118,119,120,121,122,123,125 References Cited [Referenced By] U.S. Patent Documents 242601Jun., 1881Clement472/118. 5413298May., 1995Perreault248/228. Primary Examiner: Nguyen; Kien T. Attorney, Agent or Firm: Olson; Peter Lowell Claims
I claim: 1. A method of swinging on a swing, the method comprising the steps of: a) suspending a seat for supporting a user between only two chains that are hung from a tree branch; b) positioning a user on the seat so that the user is facing a direction perpendicular to the tree branch; c) having the user pull alternately on one chain to induce movement of the user and the swing toward one side, and then on the other chain to induce movement of the user and the swing toward the other side; and d) repeating step c) to create side-to-side swinging motion, relative to the user, that is parallel to the tree branch. 2. The method of claim 1, wherein the method is practiced independently by the user to create the side-to-side motion from an initial dead stop. 3. The method of claim 1, wherein the method further comprises the step of: e) inducing a component of forward and back motion into the swinging motion, resulting in a swinging path that is generally shaped as an oval.
writing guide - 31.33
4. The method of claim 3, wherein the magnitude of the component of forward and back motion is less than the component of side-to-side motion. Description
TECHNICAL FIELD The present invention relates to a method of swinging on a swing. BACKGROUND OF THE INVENTION A few basic types of swings have been around for generations. Perhaps the most common is one that includes a seat suspended between two ropes or chains that are hung from a tree branch or other substantially horizontal support. These swings are often found in side-by-side sets of two or three or more on, for example, a school playground. Young children often need help to climb onto a swing, and may need a push (sometimes even an "underdog" push) to begin swinging. Others may be able to begin the swinging movement on their own by pushing with their feet against the ground, and once moving may coordinate the motion of their legs and body in what may be called "pumping" to sustain the movement of the swing. When swinging in this manner, the user travels along a path as generally shown in the cross-section of FIG. 1. Another method of swinging on a swing involves twisting the seat around repeatedly so that the chains or ropes are wound in a double helix. When allowed to unwind, the swing spins quickly, which can be entertaining for the user. These methods of swinging on a swing, although of considerable interest to some people, can lose their appeal with age and experience. A new method of swinging on a swing would therefore represent an advance of great significance and value. SUMMARY OF THE INVENTION In accordance with one embodiment of the present invention, a method is provided for swinging on a swing. The swing comprises a seat for supporting a user that is suspended between two chains that are hung from a substantially horizontal tree branch. The method comprises the steps of: a) positioning a user on the seat; and b) having the user pull alternately on one chain to induce movement of the user and the swing toward one side, and then on the other chain to induce movement of the user and the swing toward the other side, to create side-to-side motion. In another embodiment of the invention, the swinging method may be practiced independently by the user to create the side-to-side motion from an initial dead stop. These and other features of the invention are described in greater detail below. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a schematic top view of the swinging path of a swing used in accordance with conventional swinging methods.
writing guide - 31.34
FIG. 2 is a front view of a swinging path of a swing used in accordance with one embodiment of the swinging method of the present invention. FIG. 3 is a schematic top view of a swinging path of a swing used in accordance with a second embodiment of the swinging method of the present invention. DETAILED DESCRIPTION OF THE INVENTION The present inventor has created, through experimentation on a standard swing, a new and improved method of swinging. The swing is of the type described above, in which a seat is suspended between two chains that are hung from a substantially horizontal tree branch. As is apparent to those of ordinary skill in the area of swinging, the chains could be replaced with ropes, cables, or the like, or the tree branch could be replaced with another substantially horizontal support such as a metal bar or pole. The standard swing should be a single swing that is suspended sufficiently far away from obstructions to make the practice of the inventive swinging method completely safe. That is, the swing should be suspended a sufficient distance away from the trunk of the tree from which it suspended, and from any other swing, building, support, overhead wire, or other obstruction or threat to safety that may be present. The standard method of swinging on a swing is defined by oscillatory motion of the swing and the user along an axis that is substantially perpendicular to the axis of the tree branch from which the swing is suspended. This "forward and back" movement has been known for generations, and is illustrated in FIG. 1. In contrast to the conventional method of swinging, the present inventor has discovered that much greater satisfaction can be obtained by alternately pulling on one chain to move the swing and the user toward that side, and then pulling on the other chain to move the swing and the user toward that side. This side-to-side oscillatory motion of the swing and the user is thus along an axis that is substantially parallel to the axis of the tree branch from which the swing is suspended, and is illustrated in FIG. 2. This side to side swinging method has the added benefit that it can be continued for long periods of time simply by alternately pulling on one chain and then the other. The importance of sufficient clearance between the swing and any obstructions or threats to the user's safety is apparent. The present inventor has discovered certain other improvements in the art of swinging on a swing, either or both of which can be used in conjunction with the swinging method described immediately above. The first is that the inventive swinging method can be initiated from a dead stop without pushing, and without the user having to contact the ground. That is, the user can climb onto the swing, and begin from an initial dead stop to pull first on one chain, and then on the other chain, alternately until the user and the swing have begun to swing side-to-side in accordance with the inventive swinging method described herein. This enables even young users to swing independently and joyously, which is of great benefit to all. Another improvement on the swinging method described above is the induction into the side-toside swinging movement of a component of forward-and-back motion. That is, by skillful manipulation of the body, the present inventor has found it possible to add a relatively minor component
writing guide - 31.35
of forward-and-back motion to the side-to-side swinging motion, resulting in a swinging path that is generally shaped like an oval, as is shown in FIG. 3. It is preferred that the magnitude of the forward-and back motion (shown in FIG. 3 as being along the Y axis) be less than the magnitude of the side-to side motion (shown in FIG. 3 as being along the X axis), so that the latter predominates. In this manner, the motion can be more easily continued simply by alternately pulling on one chain and then the other in the manner described. Lastly, it should be noted that because pulling alternately on one chain and then the other resembles in some measure the movements one would use to swing from vines in a dense jungle forest, the swinging method of the present invention may be referred to by the present inventor and his sister as "Tarzan" swinging. The user may even choose to produce a Tarzan-type yell while swinging in the manner described, which more accurately replicates swinging on vines in a dense jungle forest. Actual jungle forestry is not required. Licenses are available from the inventor upon request.
writing guide - 32.1
32. PROJECTS
32.1 The project is intended to emphasize proper project management and team skills to produce a complex engineering system from concept to completion.
32.2 OVERVIEW Cranes are used to move large loads in industrial environments. To do this they normally lift a load and then move it to a new position. At the end of the motion the load is put down. If the load is swaying, the operator may have to pause before putting down the load. This delay is undesirable because it increases the total cycle time for the crane. This design project will endeavor to build a proof-of-concept prototype for an antisway system for a gantry crane as shown in Figure 32.1. The crane will ride on a wooden beam constructed with 2x4 lumber (actually smaller). An electric
writing guide - 32.2
motor will drive the cart left or right. The mass will hang below the cart. motor driven cart
fixed rail (wood 2x4)
pivot point
1Kg mass
Figure 32.1
The equipment
The system will use active compensation to move the cart between positions, and to move the cart to compensate for swaying of the suspended mass. The overall system performance will be evaluated on how quickly the crane can move the load, and then eliminate sway. Additional factors used in assessment of performance will be the mass, cost and overall design quality.
32.2.1 The Objectives and Constraints The design will be mounted on 2x4 lumber and controlled through a wire harness to external electronics and power supplies. The apparatus must be easily mounted and removed without damaging the experimental setup. It will be expected to carry a 1Kg mass, suspended 40cm below the top of the 2x4. The 2x4 will be oriented so that the longer dimension is vertical. The mass will be mounted with a carriage bolt that is at least 3 inches long, with a 1/4" diameter. The arm must be able to swing freely, as it is meant to be equivalent to a cable suspending the mass. The mass will be provided with a rod that will be between 1/4" and 1/2". The mass will be a cylinder that is free to rotate to reduce dynamic effects rotation. The width of the mass will be less than or equal to the
writing guide - 32.3
width of the 2x4. None of the cart, except for the arms, should be less than 2cm below the bottom of the 2x4. The objectives for the design are itemized below. The following equation will be used to assess the overall score for the design. - The equipment cost should be minimized. The goal of $150 or less has been specified as very important. - Mass should be minimized, the target value is 0.2Kg. - A clearly justified and supported design process. This will be judged before the competition. - The settling time, ts, to less than a +/- 0.5 inch margin around the commanded position. This time will be determined using the best ts/d for two arbitrary target motions. - The test will start with the mass stationary at one position. The gantry system must move the mass to another position once started. The total movement range will be 2 to 20 inches in 2 inch increments. C
M
------t s 2 -------B T 200 0.2 -score = ( 4 ) ( 10 ) ( 10 ) ( 2 ) d where, t s = the time to settle (s)
C = total cost of part ($) d = distance moved in test (m) B = build quality score assigned by judges (0=best, 1=worst) T = theory quality score assigned by judges (0=best, 1 = poor) M = mass of the apparatus (Kg)
32.3 MANAGEMENT The management details for the project are outlined below. These may evolve as the semester progresses.
32.3.1 Timeline - Tentative Sept 12 - Teams assigned Sept 12 - Teams matched with EGR 101 students Sept 14 - EGR 345 Teams visit EGR 101 lab - EC616 (6pm) to formalize contracts Sept 16 - Contract submitted
writing guide - 32.4
Oct 4 - Preliminary design concept submitted with specifications materials list estimate budget estimate Gantt charts Oct 13 - Design concept approved Oct 24 - Proposal submitted detailed drawings (CAD) materials list budget calculations/simulations Oct 29 - Proposals approved, 345/101 building begins Nov 12 - First test Nov 19 - Second test Nov 20 - First draft of report posted to the web used to determine the score for competition Nov 25 - Competition and judging Dec 4 - Final report draft posted to the web
32.3.2 Teams The teams are composed of up to 4 students from EGR 345 and one student from EGR 101. The EGR 345 teams are grouped using the skills survey attached in the appendices. Teams are expected to divided tasks for members to work in parallel. It is also expected that team members will review the work of others to ensure accuracy and completeness. This is particularly true of calculations, materials lists drawings and budgets. All team members are expected to work in a professional manner. The general rules of conduct in a team are, - treat others as you want to be treated - communicate expectations and problems clearly - be polite and accommodating - when problems arise, help to solve them, even if they are not your fault. Don’t lay the blame for problems on others. Personal conflicts must be resolved by team members in a professional manner. The performance of the team will be assessed using peer evaluations on a regular basis and may impact individual grades. In the case of non-participation the penalty may be up to 100% of the project grade. In the event that team members cannot resolve differences with a team member, the team may ’fire’ the team member by a vote (it must be unanimous, except
writing guide - 32.5
for the member in question). In this case the ’fired’ student is responsible for finding another team that will accept (or ’hire’) them. In the event they cannot find another team to join, they will be expected to perform all of the work themself. The firing mechanism is intended to deal with individuals who ’harm’ the progress of the team, not for non-participants.
32.4 DELIVERABLES The following items are to be submitted at various stages of the project.
32.4.1 Conceptual Design Concepts are normally communicated with sketches that make the overall design clear. Components that would be expected for this type of design are, - Sketches should be done using normal drafting practices. A good set of sketches will include 2-D, isometric and pictorial views. - Calculations should be provided that support the design concept. - Electrical schematics to describe the control system. - Block diagram to describe the control system. - Lists of components and budgets to indicate the major parts of the system. - Other items, such as flowcharts, are often required to clarify the design concept.
32.4.2 EGR 345/101 Contract This project involves participants from EGR 101 and 345. Although the students are at different points in their academic careers they are all considered peers, and should have equal voices in the team. To help clarify issues of differences between the EGR 101 and 345 students, a ’contract’ will be written that formalizes the responsibilities of the students in EGR 101. As with most contracts, it outlines a process that is mutually beneficial. In this case both parties are expected to benefit in an educational sense. The contract will be written in such a manner that if all requirements are satisfied work will be marked ’as-is’. In the event of a failure, marks will be deducted to hold the responsible party(s) accountable.
writing guide - 32.6
32.4.3 Progress Reports Teams are expected to submit progress reports on a weekly basis. These reports will include the following elements divided into sections with a heading for each. Point form is preferred, but complete sentences must be used. (Note: ’Parts purchased’ should be ’Parts were purchased for the cart assembly.’) Each section should include items completed since the last report, and current action items. If there is nothing to be said about a category use ’no changes’, ’nothing done’, or ’complete’ as appropriate. Cover Page - a cover sheet indicating the course, project and tema numbers. The names of all team members should be listed on the cover, including the EGR 101 team members. Gantt chart - updated on a weekly basis and included each time. Budget - when changes are made, include an updated budget. Mass Table - when changes are made, include an updated mass table. Design - Design changes should be indicated. Appropriate drawings, schematics, or equivalent should be included. When appropriate, these should normally be accompanied by a new set of models, calculations and/or simulations to verify the new design. Software - The current status of software development should be indicated, including major accomplishments and issues. Fabrication - The status of items being built/assembled should be indicated. Purchasing - The status of ordered items should be indicated. Testing - The testing progress should be indicated, including any numerical results when available. Other Issues - Items that may impact the success of the team should be indicated. Performance - A prediction of performance, including the overall performance equation. Early in the semester, other items will be requested, such as a combined timetable for all team members, and a skills inventory. These should only be included in the reports the weeks they are requested.
32.4.4 Design Proposal The design proposal is used to present all of the design details in a single document. The focus of this document is a MINIMAL AMOUNT OF TEXT, but a thorough presentation of the design details. Typical elements are listed below in a typical sequence; - a cover page indicating all of the team members and all other pertinent informa-
writing guide - 32.7
tion. - a table of contents - three view drawings of each significant part - block diagram of the control system - block diagrams showing the system architecture - circuit schematic - if a motion profile will be used, it should be documented - an assembly drawing of the mechanism, including a BOM - a budget listing each of the parts that must be purchased/acquired. Catalog pages and quotes can be used to validate the budget. In the final report, copies of receipts, or catalog pages will be required. - a weight inventory, itemized by each part of the design - additional calculations for mechanical design issues, such as stress that may result in failure. Normally these result in a factor of safety. - the equations of motion for the system - a Scilab program that verifies the operation of the system using the equations of motion. - a C program that implements the controller as designed.
32.4.5 The Final Report The final design will follow the same structure as the Design Proposal, with the addition of the following elements. - test results - the drawings, calculations, etc. should be based upon the final design. It is reasonable to write a page or less about the modifications that were required, but it is a minimal/optional part of the report. The report should concisely and clearly describe the design, as shown in the diagrams, drawings, calculations, etc. In general the format of the report is as outlined below. Sections and subsections should be numbered. Cover page Executive summary - one page or less that summarizes the design and results. Table of contents Design description - this section should describe the mechanical, electrical and software design aspects. Subsections should focus on the following elements; Drawing summary - selected isometric and assembly drawings System block diagrams Description of control scheme, such as the motion profile Schematics
writing guide - 32.8
Calculations - FBDs and differential equations Project budget and BOM Weight inventory Test results - this section should describe Simulation results The tests that were done to describe the overall performance. There should be a comparison of the device with and without sway compensation. The results of formal tests should also be described. A comparison of overall score estimates. Conclusions - A brief description of the overall results indicating what the strengths and weaknesses of the design. Reccomendations - Suggestions for improvement. Appendix - Drawings Appendix - Stress and other similar calculations Appendix - Controller C program Appendix - Simulation program Appendix - Receipts and cost evidence Final reports will be evaluated on numerous factors inculding the clarity for the design documentation (i.e., how clear is what has been done?), theory to backup the design (does the theory match the actual design?), did the theory and actual match?
32.5 REPORT ELEMENTS
32.5.1 Gantt Charts Gantt charts are used to track major project tasks, including sequencing. a brief tutorial on project management with Microsoft Project is available at http:// www.stylusinc.net/ms_project_tutorial/project_management.shtml. You may also download free project management software from http://www.smartworks.us/htm/downloads.htm. In general a Gantt chart should include, - Most project parts should have a development, and then a review stage by another team member. For example, if one task is preparing mechanical drawings, this should be followed by a review task - done by another team member. - Most tasks that stretch more than a week should be broken into smaller sub tasks. - A Gantt chart should be presented on one single sheet. If it is small enough this can be one page, otherwise a larger sheet can be used. - On a weekly basis a Gantt chart should be updated to include the completion of tasks.
writing guide - 32.9
32.5.2 Drawings All drawings will observe the standards used in EGR 101 (see the EGR 101 or 345 course pages). This includes dimensions and tolerances that can be produced using the available equipment and materials. Please note that ’sketch’ means that it is done by hand, approximately, while drawing means it is done formally in a CAD package. Normally you should create solid models, and then generate multiview drawings. Note: All drawings must have a title block. Shaded views have very little value and should be avoided, wireframe drawings are much more useful. If there is a definite need to include a shaded drawing, change the background to change the quantity of toner used.
32.5.3 Budgets and Bills of Material Budgets should list all substantial components. Consumables, such as bolts are normally listed under a ’miscellaneous’ heading. However, all other components should be listed, and prices provided. If the components have been drawn from the engineering stores, similar devices can be identified from catalogs and those prices may be used. If your design calls for parts not commonly issued to engineering students, you may be required to purchase these yourself. An excellent local source of small parts is hobby stores, such as Ryder’s Hobbies on 28th St. The budget should also list the quantity of parts/material, price, source/supplier and status (eg., not ordered, received, due 2 weeks, late 1 week). Don’t forget to include cost of the controller and other components used. Assume the power supply is provided as part of the crane system and therefore has no cost is associated. Some of the commonly available components are listed below. List simple commodity items such as wires, bolts, etc., under a miscellaneous category with a general cost estimate. 68HC11 Axiom board $89 Grayhill encoder est. $8 Power Supply, list it but do not give a price Gearhead motors assume $10 A Bill of Materials (BOM) lists all of the parts required to produce or assemble some other device. This is different from parts listed in a budget in that some of the parts will be work in process. In other words, the original material has been worked on to produce new parts. A BOM is normally found on assembly drawings. Notes; - there are different type of plastic, some are more brittle, others are tougher.
writing guide - 32.10
32.5.4 Calculations Calculations are required to justify the design work. These should follow the conventions used in EGR 345. When computer programs are written, they should be commented and included.
32.6 APPENDICES
32.6.1 Appendix A - Sample System The example system in Figure 32.2 is to control a cart with a hanging pendulum. The cart is driven by a motor. The motor has an attached encoder to measure the motor position. As the cart moves the mass underneath may sway. The position of the hanging mass is measured with a potentiometer.
68HC11
Digital in motor position Analog in mass angle
Figure 32.2
H-bridge V s Motor
PWM
cart
x
hanging θ mass mass
1--D
quadrature input encoder Vθ
ω
θ motor
potentiometer
System Architecture
A block diagram for the system is shown in Figure 32.3. A motion generator is used to generate a smooth path for the mass. There are two feedback control loops. The first loop adjusts the motor for general positioning of the system. The inner loop adjusts the output to reduce sway of the cart. The two control signals are added to produce a command signal the drives the load to the final position and then reduces vibrations.
writing guide - 32.11
Cp
generate setpoint table
update setpoints
Cd
where, C p = commanded position C d = desired position setpoint encoder K enc
Cp
Cd
-
C pe
C pc
Cc
θp
Vs
K pp
PWM
motor
+
+
-
C Lc K sp
where,
CL
A/D
VL
Figure 32.3
potentiometer K pot θ L – V zero
C pe = the position error K pp = the proportional gain for position control C p = the position count from the encoder θ p = the rotational position of the motor C pc = output command for position control C c = the combined motor control output V s = effective voltage to the motor θ p = position of the motor (cart) θ L = angle of the load from vertical V L = voltage proportional to angle of load C L = integer value for load angle C Lc = output command for sway control
System Block Diagram
- for a stationary cart
cart and mass
θL
writing guide - 32.12
·· x θL
·· M p lθ L
Fp
x l · 2 θL Mp l
·· Mc x
Fw Mc
Mp Fp θL
where,
M p g sin θ L ·· x cos θ L M p
M p g cos θ L ·· x sin θL M p
M c = mass of cart M p = mass of payload F p = force in suspension arm F w = force from wheels θ L = angle of payload from vertical l = length of suspension arm r w = radius of cart wheel ·· ·· ∑ F = – Mp g sin θL – Mp lθL – x cos θL Mp = 0 ·· ·· lθ L = – g sin θ L – x cos θL
(1)
· 2 ·· F = F – M g cos θ – θ p p L L M p l + x sin θ L M p = 0 ∑ · 2 ·· F p = M p g cos θ L + θ L M p l – x sin θ L M p
∑ Fx
·· = – M c x + F p sin θ L + F w = 0 ·· – M c x + F p sin θ L + F w = 0 ·2 ·· ·· – M c x + ( M p g cos θL + θ L M p l – x sin θ L M p ) sin θ L + F w = 0
Figure 32.4
FBDs for the suspended mass and the compensator
(2)
writing guide - 32.13
2 Fw rw · K K ω w + ω w ------ = V s ------ – -----------JR JR J
∴F w
K2 K · J = V s --------- – ω w ----- – ω w --------- r w R r w r w R
x = θw rw
given
2 K ·· J · K - ∴Fw = V s --------- – x ----2- – x ------- r w R r w r 2w R
(1) ---> 2 · 2 K ·· ·· ·· J · K - – M c x + ( M p g cos θ L + θ L M p l – x sin θ L M p ) sin θL + V s --------- – x ----2- – x ------- = 0 r w R r 2w R r w 2 J ·2 K 2 ·· · K - – x M c + ----2- + ( sin θL ) M p + cos θ L sin θ L M p g + θ L ( M p l sin θ L ) + V s --------- – x ------- = 0 r w R r 2w R rw 2 2 2 2 M c r w + J + ( sin θL ) M p r w · 2 K - · -------K - ·· ------------------------------------------------------------- -------x – x 2 = ( cos θ L sin θ L )M p g + θ L ( M p l sin θ L ) + V s 2 r w R r w R rw 2
2
M p gr w M p l sin θ L r w 2 ·· - + θ·L -------------------------------------------------------------- + x = ( cos θL sin θL ) ------------------------------------------------------------- M c r 2w + J + ( sin θL ) 2 M p r 2w M c r 2w + J + ( sin θ L )2 M p r 2w 2 Kr w –K - + x· ----------------------------------------------------------------------- V s ---------------------------------------------------------------------- R ( M c r 2w + J + ( sin θ L ) 2 M p r 2w ) R ( M c r 2w + J + ( sin θ L ) 2 M p r 2w )
Figure 32.5
Adding the differential equation for the motor
writing guide - 32.14
State Equations: · x = v 2
2 M p gr w –K · - + ( cos θ L sin θ L ) -------------------------------------------------------------- v = v ----------------------------------------------------------------------2 2 2 2 2 2 R ( M c r w + J + ( sin θ L ) M p r w ) M c r w + J + ( sin θ L ) M p r w
+ · θL = ωL
2 M p l sin θ L r w 2 - ω L ------------------------------------------------------------- M c r 2w + J + ( sin θ L ) 2 M p r 2w
Kr w - + V s ---------------------------------------------------------------------- R ( Mc r 2w + J + ( sin θ L ) 2 M p r 2w )
· v cos θ L · –-----gωL = sin θ L – ----------------l l
Figure 32.6
State equations for the system
A Scilab program that simulates the given system is given in Figure 32.7.
writing guide - 32.15
// contest.sce // System component values l = 0.4; // 40cm Mp = 1.0; // 1kg Mc = 0.2; // 200g g = 9.81; // good old gravity rw = 0.03; // 6cm dia tires K = 0.5; // motor speed constant R = 7; // motor resistance J = 0.005; // rotor inertia // System state x0 = 0; // initial conditions for position v0 = 0; theta0 = 0.0;// the initial position for the load omega0 = 0.0; X=[x0, v0, theta0, omega0]; // The controller definition PI = 3.14159; ppr = 16;// encoder pulses per revolution; Kpot = 1.72;// the angle voltage ratio Vzero = 2.5;// the voltage when the pendulum is vertical Vadmax = 5;// the A/D voltage range Vadmin = 0; Cadmax = 255;// the A/D converter output limits Cadmin = 0; tolerance = 0.5;// the tolerance for the system to settle Kpp = 20;// position feedback gain Ksp = 2;// sway feedback gain Vpwmmax = 12; // PWM output limitations in V Cpwmmax = 255; // PWM input range Cdeadpos = 100;// deadband limits Cdeadneg = 95; function foo=control(Cdesired) Cp = ppr * X($, 1)/(2*PI*rw); Cpe = Cdesired - Cp; Cpc = Kpp * Cpe; VL = Kpot * X($,3) + 2.5; // assume the zero angle is 2.5V CL = ((VL - Vadmin) / (Vadmax - Vadmin)) * (Cadmax - Cadmin); if CL > Cadmax then CL = Cadmax; end// check for voltages over limits if CL < Cadmin then CL = Cadmin; end CLc = Ksp * (CL - (Cadmax + Cadmin) / 2); Cc = Cpc + CLc; Cpwm = 0; if Cc > 0.5 then// deadband compensation Cpwm = Cdeadpos + (Cc/Cpwmmax)*(Cpwmmax - Cdeadpos); end if Cc <= -0.5 then Cpwm = -Cdeadneg + (Cc/Cpwmmax)*(Cpwmmax - Cdeadneg); end foo = Vpwmmax * (Cpwm / Cpwmmax) ; // PWM output if foo > Vpwmmax then foo = Vpwmmax; end // clip voltage if too large if foo < -Vpwmmax then foo = -Vpwmmax; end endfunction
Figure 32.7
A Scilab program to simulate the swaying mass on the crane
writing guide - 32.16
// The motion profile generator function foo=motion(t_start, t_end, t_now, C_start, C_end) if t_now < t_start then foo = C_start; elseif t_now > t_end then foo = C_end; else foo = C_start + (C_end - C_start) * (t_now - t_start ) / (t_end - t_start); end endfunction
// define the state matrix function term1 = Mc*rw^2 + J;// Precalculate these terms to save time term2 = R*term1; Xd = 10;// the setpoint 10 turns == 160 pulses Cd = ppr * Xd / (2 * PI * rw) ; function foo=derivative(state,t, h) Vs=control(motion(0, 6, t($, 1), 0, Cd)); // Vs=control(Cd); term3 = cos(state($,3));// precalculate some repeated terms to save time term4 = sin(state($,3)); term5 = term1 + Mp * (term4 * rw)^2; //printf("%f %f \n", Cd, Vs); v_dot = -state($,2)*(K^2) / (term5 * R) ...// d/dt v + term3*term4*Mp*g*rw^2 / term5 ... + state($,4)^2 * Mp*l*term4*rw^2 / term5 ... + Vs*K*rw / term5; foo = [ state($,2), ...// d/dt x = v v_dot, ... state($, 4), ...// d/dt theta -g * term4 / l - state($, 2) * term3 / l ...// d/dt omega ]; endfunction
// Integration Set the time length and step size for the integration steps = 5000;// The number of steps to use t_start = 0;// the start time - normally use zero t_end = 10;// the end time h = (t_end - t_start) / steps;// the step size t = [t_start];// an array to store time values for i=1:steps, t = [t ; t($,:) + h]; X = [X ; X($,:) + h * derivative(X($,:), t($,:), h)];// first order end
Figure 32.8
A Scilab program to simulate the swaying mass on the crane
writing guide - 32.17
// Graph the values for part e) plot2d(t, [X(:,1) + l*sin(X(:,3))], [-2], leg="mass position"); //plot2d(t, [X(:,1), 10*X(:, 3)], [-2, -5], leg="position@theta (X 10)"); xtitle('Time (s)');
// printf the values over time intervals = 20; for time_count=1:intervals, i = int((time_count - 1)/intervals * steps + 1); xmass = X(i,1) + l*sin(X(i,3)); printf("Mass location at t=%f x=%f \n", i * h, xmass); // printf("Point at t=%f x=%f, v=%f, theta=%f, omega=%f \n", i * h, X(i, 1), X(i, 2), X(i, 3), X(i, 4)); end
// find the settling time in the results array ts = 0; for i = 1:steps, xmass = X(i,1) + l*sin(X(i,3)); if xmass > (Cd + tolerance) then ts = i*h + t_start; end if xmass < (Cd - tolerance) then ts = i*h + t_start; end end printf("\nTheoretical settling time %f \n", ts);
Figure 32.9
A Scilab program to simulate the swaying mass on the crane
writing guide - 32.18
32.6.2 Appendix B - EGR 345/101 Contract The text below outlines the general form of a contract between students in EGR 101 and 345. This contract has been entered into this date by the parties of the first part Joe Junior, Pete Zaa, Anne Nyther and Robert Sochs, to be referred to as ’345 students’, with Virve Meurte, to be referred to as ’101 student(s)’. Articles: 1. The 101 student is to participate in the design and construction of a cart as outlined below. The 345 students are to prepare a design and construct a multicomponent system that uses the cart as described below. The result must be a fully functional systems that meets the published design objectives. 2. The 345 students are expected to prepare a functional design for an anti-sway system for a crane. This design will include a cart that is designed in coordination with the 101 student. The 345 students will be required to do all calculation including system dynamics and strength of materials. The 101 student will be responsible for all other design details related to the cart including the geometry, mass, budget bill of materials and construction. This design will be documented fully by the 101 student using accepted CAD practices and ProE. The design work will result in the submission of a Formal Proposal, as shown on the Schedule of Actions. 3. Dr. Jack and/or Farris will comment on the Formal Proposal. Based upon these comments the 101 and 345 students will revise the design and agree upon a design for the cart. This will be labelled Cart Build Approval. This will be signed by all parties and submitted to Dr. Farris by the Scheduled date. 4. The cart will be build according to the Cart Build Approval before the date specified on the Schedule of Actions. At the end of this period the design must be fully documented in ProE and be ready for inclusion in the Design Report Draft. 5. Both the 101 and 345 students will participate in the first tests to verify the operation of the system and develop a First List of Deficiencies. This list will be finalized and signed, according to the date on the Schedule of Actions. The First List of Deficiencies will include a list of remedies to be performed by the 101 and 345 students. 6. The 345 students will prepare the Design Report Draft using the ProE drawing submitted by the 101 student. They are responsible for submitting the report by the date in the Schedule of Actions. 7. Both the 101 and 345 students will participate in the final tests to verify the operation of the system and develop a Final List of Deficiencies. This list will be finalized and signed, according to the date on the Schedule of Actions. The Final List of Deficiencies will include a list of remedies to be performed by the 101 and 345 students. Any changes made to the design must be updated and submitted to the 345 students for inclusion in the Design Report. 8. Both the 101 and 345 students will participate in the Competition listed in the Schedule of Actions. 9. The 345 students are to submit the final report with all necessary changes by the date listed in the Schedule of Actions. 10. The 101 student is expected to produce a cart that is built to professional standards. All drawings are expected to observe professional standards. When communicating drawings, generally accessible files formats should be used. 11. The 345 students are to, at all times, maintain a functional design concept. They must ensure that this will lead to a system that functions within the rules of the competition. 12. In the event of a dispute, 101 and 345 students are expected to resolve any conflicts informally and mitigate any losses. In the event that one or both parties fundamentally breach the
writing guide - 32.19
contract Dr. Farris and Dr. Jack will acts as arbiters. If this occurs, one or both of the parties will be penalized. This may involve actions as severe as receiving a failing grade in the project. Exhibits: 1. Schedule of Actions Oct 15-24 - Cart designs are developed by 101 and 345 students resulting in submission of the Formal Proposal Oct 30, 2003 - Cart Build Approval submitted Nov 11 - Initial build completed Nov 12 - First test completed and First List of Deficiencies submitted Nov 15 - Design Report Draft submitted for review Nov 19 - Final test completed and Final List of Deficiencies submitted Nov 25 - Competition Dec 4 - Submit Final Report
32.6.3 Appendix C - Forms Skills Self Evaluation Peer Evaluations
writing guide - 32.20
Skills Self Evaluation Your Name: none Hands-on Mechanical:
proficient
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
The ability to build components with wood, plastic, metal or other materials.
Hands-on Electrical: Basic wiring skills, soldering, etc.
Hands-on Computer Usage: CAD, Spreadsheets, creating web pages, etc.
Hands-on Computer Application: Programming and computer interfacing
Mathematical Problem Solving: Ability to formulate and solve complex problems
Writing: Layout and write complex documents
Teamwork Skills: The ability to work with others in a team environment.
Leadership Skills: The ability to act as a role model that teammates will follow.
Design Skills: Work in unstructured/semistructured problem solving.
Personal/Technical Strengths: Personal/Technical Weaknesses: People you would like to work with: People you would NOT like to work with: Other Commitments (courses, work, etc. - give hours for each) Other Items of Interest:
writing guide - 32.21
EGR 101 / 345 Project Peer Evaluation Your Name: Your Class: EGR 101 / 345
Person Being Evaluated: good Communicates well:
poor
1
2
3
4
5
1
2
3
4
5
3
4
5
Did the teammate return e-mails and other forms of communication promptly? Could the teammate understand, explain and evaluate the technical aspects of the project in a clear concise manner?
Works in team environment:
Did your teammate come to meetings on time? Did the teammate participate in all aspects of the project? How much did the teammate’s efforts contribute to the overall success of the project?
Meets deadlines:
1
2
Did you teammate complete individual tasks on time? Did the teammate keep the project progressing forward in a timely manner with a consistent effort throughout the project or was the teammate only available when the team was in trouble?
Quality of work:
1
2
3
4
5
3
4
5
Was you r teammate willing to accept and carry out individual tasks on time? How well were these individual tasks carried out? Did your teammate do his or her fair share of the work?
Overall:
1
2
Would you be happy working with the person again? Would you give this person a job reference?
Would you hire this person: yes / no Other Comments:
writing guide - 32.22
Competition Check Sheet Team Number: Arms Swing Freely: arms should swing freely, with the exception of measurement apparatus
YES / NO
Height of Payload: = 40cm
40cm below the beam
Mass of Cart: not including the harness
M =
Kg
C =
$
C =
[ 0, 1 ]
T =
[ 0, 1 ]
d =
m
ts =
s
Cost: proof of costs
Build Quality: assigned by judges. 0 is the best
Technical Analysis: 0 is the best
Test Distance: the distance specified in the test
Settling Times: The time required to move within +/- 0.5in. from the target.
Overall Score: based upon other values
C
M
------t s 2 -------B T 200 0.2 score = --- ( 4 ) ( 10 ) ( 10 ) ( 2 ) d
Comments:
SCORE =
writing guide - 32.23
EGR 101 / 345 Project Judging Your Name: Work Quality:
Team Number:
average
excellent
poor
1
0
1
2
3
4
5
6 7
8
9
10
2
0
1
2
3
4
5
6
7
8
9
10
3
0
1
2
3
4
5
6
7
8
9
10
4
0
1
2
3
4
5
6
7
8
9
10
5
0
1
2
3
4
5
6
7
8
9
10
6
0
1
2
3
4
5
6
7
8
9
10
7
0
1
2
3
4
5
6
7
8
9
10
8
0
1
2
3
4
5
6
7
8
9
10
9
0
1
2
3
4
5
6
7
8
9
10
10
0
1
2
3
4
5
6
7
8
9
10
11
0
1
2
3
4
5
6
7
8
9
10
12
0
1
2
3
4
5
6
7
8
9
10
writing guide - 33.1
33. ENGINEERING PROBLEM SOLVING - solving problems is important.....
33.1 BASIC RULES OF STYLE The basic rules are listed below. - Always starts mechanics/circuits problems with FBDs or schematics - Create temporary variables when necessary, but eliminate them - Eliminate redundant variables - Always simply the results of calculations - Box final answers - Show derivations for all problems - Use green engineering paper and write your name, problem number and date on the top of each sheet. - Note: a calculator is not a method - Problems should be solved in a logical order from the top to the bottom of the page (not left to right). - Use engineering notation, not scientific notation - Don’t cram things into one page, many problems will take less than one page. - Don’t start a long problem at the bottom of a page. - Don’t just look at the final grade for an assignment, read the comments. Ussually comments will include elements that should be fixed. In later assignments these items normally result in reduced marks. - Variable subscripts are very important, don’t be careless with these.
33.2 EXPECTED ELEMENTS Students in the junior year are expected to, - Compare the results of calculations when asked to do so. This is also expected when different calculations should lead to the same result. - When comparing results, use different methods - verify that units make sense - verify that numerical magnitudes are reasonable. - Use significant figures as appropriate
writing guide - 33.2
- If answers are provided, solutions should match normally. This means if answers don’t match, students should check them.
33.3 SEPCIAL ELEMENTS
33.3.1 Graphs - Label all axis, including units - Provide a legend for surves with multiple traces - Equations are plotted as smooth functions. - Data is plotted as discrete points.
33.3.2 EGR 345 Specific - Frequency responses should be in phase angle forms.
33.4 SCILAB Basic ruules are, - when solving problems using computational tools, such as C programs, or numerical simulations, provide copies of the programs. - when used to solve problems, include program listings
writing guide - 33.3
33.5 TERMINOLOGY The terminology is significant, graph: a plot, numbers: a value equation: a function, a relationship, an expression, proof: a derivation
math guide - 34.1
34. MATHEMATICAL TOOLS ***** This contains additions and sections by Dr. Andrew Sterian. • We use math in almost every problem we solve. As a result the more relevant topics of mathematics are summarized here. • This is not intended for learning, but for reference.
34.1 INTRODUCTION • This section has been greatly enhanced, and tailored to meet our engineering requirements. • The section outlined here is not intended to teach the elements of mathematics, but it is designed to be a quick reference guide to support the engineer required to use techniques that may not have been used recently. • For those planning to write the first ABET Fundamentals of Engineering exam, the following topics are commonly on the exam. - quadratic equation - straight line equations - slop and perpendicular - conics, circles, ellipses, etc. - matrices, determinants, adjoint, inverse, cofactors, multiplication - limits, L’Hospital’s rule, small angle approximation - integration of areas - complex numbers, polar form, conjugate, addition of polar forms - maxima, minima and inflection points - first-order differential equations - guessing and separation - second-order differential equation - linear, homogeneous, non-homogeneous, second-order - triangles, sine, cosine, etc. - integration - by parts and separation - solving equations using inverse matrices, Cramer’s rule, substitution - eigenvalues, eigenvectors - dot and cross products, areas of parallelograms, angles and triple product - divergence and curl - solenoidal and conservative fields - centroids - integration of volumes
math guide - 34.2
- integration using Laplace transforms - probability - permutations and combinations - mean, standard deviation, mode, etc. - log properties - taylor series - partial fractions - basic coordinate transformations - cartesian, cylindrical, spherical - trig identities - derivative - basics, natural log, small angles approx., chain rule, partial fractions
34.1.1 Constants and Other Stuff • A good place to start a short list of mathematical relationships is with greek letters
name lower case
upper case
α β γ δ ε ζ η θ ι κ λ µ ν ξ ο π ρ σ τ υ φ χ ψ ω
Α Β Γ ∆ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο Π Ρ Σ Τ Υ Φ Χ Ψ Ω
alpha beta gamma delta epsilon zeta eta theta iota kappa lambda mu nu xi omicron pi rho sigma tau upsilon phi chi psi omega
math guide - 34.3
Figure 34.1
The greek alphabet
• The constants listed are amount some of the main ones, other values can be derived through calculation using modern calculators or computers. The values are typically given with more than 15 places of accuracy so that they can be used for double precision calculations.
1 n e = 2.7182818 = lim 1 + --- = natural logarithm base n n→∞ π = 3.1415927 = pi γ = 0.57721566 = Eulers constant 1radian = 57.29578°
Figure 34.2
Some universal constants
34.1.2 Basic Operations • These operations are generally universal, and are described in sufficient detail for our use. • Basic properties include,
commutative
a+b = b+a
distributive
a ( b + c ) = ab + ac
associative
a ( bc ) = ( ab )c
Figure 34.3
Basic algebra properties
a + (b + c) = (a + b) + c
math guide - 34.4
34.1.2.1 - Factorial • A compact representation of a series of increasing multiples.
n! = 1 ⋅ 2 ⋅ 3 ⋅ 4 ⋅ … ⋅ n 0! = 1
Figure 34.4
The basic factorial operator
34.1.3 Exponents and Logarithms • The basic properties of exponents are so important they demand some sort of mention
n
m
(x )( x ) = x
n+m
n
(x ) n–m ---------= x m (x )
0
x = 1 , if x is not 0 x
–p
1 = ----px n
n m
(x )
Figure 34.5
= x
n⋅m
1 --n
x = x
n
n
( xy ) = ( x ) ( y )
Properties of exponents
• Logarithms also have a few basic properties of use,
n
m ---n
=
n
x
n
x
m
x-- = n------xy n y
math guide - 34.5
The basic base 10 logarithm: log x = y
x = 10
y
The basic base n logarithm: log n x = y
x = n
y
The basic natural logarithm (e is a constant with a value found near the start of this section: ln x = log e x = y
Figure 34.6
x = e
y
Definitions of logarithms
• All logarithms observe a basic set of rules for their application,
logn ( xy ) = log n ( x ) + log n ( y )
logn ( n ) = 1 logn ( 1 ) = 0
x logn -- = log n ( x ) – logn ( y ) y y
log n ( x ) = ylogn ( x ) log m ( x ) log n ( x ) = ------------------logm ( n ) ln ( A ∠θ ) = ln ( A ) + ( θ + 2πk )j
Figure 34.7
Properties of logarithms
34.1.4 Polynomial Expansions • Binomial expansion for polynomials,
k∈I
math guide - 34.6
n
n
( a + x ) = a + na
Figure 34.8
n–1
n( n – 1 ) n – 2 2 n x + -------------------- a x +…+x 2!
A general expansion of a polynomial
34.1.5 Practice Problems 1. Are the following expressions equivalent?
c)
A ( 5 + B ) – C = 5A + B – C A + BA B ------------= ---- + ---C+D C D log ( ab ) = log ( a ) + log ( b )
d)
5(5 ) = 5
e)
3 log ( 4 ) = log ( 16 )
f)
( x + 6 ) ( x – 6 ) = x + 36 log ( 5 ) 10 = -----10 5 6 (-----------------x + 1 ) - = x 2 + 2x + 1
a) b)
g) h)
4
5
2
(x + 1)
2
2. Simplify the following expressions. a) b) c) d) e) f) g)
2
x ( x + 2 ) – 3x 2 (-------------------------------------x + 3 ) ( x + 1 )x -
h)
2
(x + 1) x 3 log ( x ) 64 -----16 15 3------ + ----21 28 (x y ) 2
4x – 8y
i)
5--- 4 -------5
j)
(y + 4) (y – 2)
k)
2 3 4 4
5--- 8--- 3 9
l)
3
2
x y x----------+ 1= 4 x+2
math guide - 34.7
3. Simplify the following expressions. + Ba) A -----------AB AB b) -----------A+B 4 5 3 x y )- c) (------------- 2 x d) log ( x 5 ) + log ( x 3 )
(ans. + BA B 1 1 a) A -----------= ------- + ------- = --- + --AB AB AB B A AB b) -----------A + B cannot be simplified 4 5 x y ) c) (------------- 2 - x
3
2 5 3
6 15
= (x y ) = x y
d) log ( x 5 ) + log ( x 3 ) = 5 log ( x ) + 3 log ( x ) = 8 log ( x )
4. Simplify the following expressions.
a)
(ans.
a)
2
3
4
n log ( x ) + m log ( x ) – log ( x )
2
3
4
n log ( x ) + m log ( x ) – log ( x ) 2n log ( x ) + 3m log ( x ) – 4 log ( x ) ( 2n + 3m – 4 ) log ( x ) ( 2n + 3m – 4 ) log ( x )
math guide - 34.8
5. Rearrange the following equation so that only ‘y’ is on the left hand side. y---------+ x= x+2 y+z
(ans.
y---------+ x= x+2 y+z y + x = (x + 2)(y + z) y + x = xy + xz + 2y + 2z y – xy – 2y = xz + 2z – x y ( – x – 1 ) = xz + 2z – x xz + 2z – x y = -------------------------–x–1
6. Find the limits below. a)
t3 + 5 lim ---------------- t → 0 5t 3 + 1
b)
t3 + 5 lim ---------------- t → ∞ 5t 3 + 1
(ans.
a) b)
3 t3 + 5 0 +5 ---------------------lim ---------------= = 5 3 t → 0 5t 3 + 1 5(0) + 1 3 3 t3 + 5 ∞ + 5 ∞ - = -------------- = 0.2 lim ---------------- = ----------------------3 3 t → ∞ 5t 3 + 1 5(∞) + 1 5(∞)
math guide - 34.9
34.2 FUNCTIONS
34.2.1 Discrete and Continuous Probability Distributions
Binomial P(m) =
∑ t p q n
t n–t
q = 1–p
q, p ∈ [ 0, 1 ]
t≤m
Poisson P(m) =
∑
t≤m
t –λ
λe -----------t!
λ>0
Hypergeometric
r s t n – t P ( m ) = ∑ ----------------------r + s t≤m n
Normal 1 x –t2 P ( x ) = ---------- ∫ e dt 2π –∞
Figure 34.9
Distribution functions
34.2.2 Basic Polynomials • The quadratic equation appears in almost every engineering discipline, therefore is of great importance.
2
ax + bx + c = 0 = a ( x – r 1 ) ( x – r 2 )
Figure 34.10 Quadratic equation
2
– b ± b – 4ac r 1, r 2 = -------------------------------------2a
math guide - 34.10
• Cubic equations also appear on a regular basic, and as a result should also be considered.
3
2
x + ax + bx + c = 0 = ( x – r 1 ) ( x – r 2 ) ( x – r 3 ) First, calculate, 2
3
3b – a Q = ----------------9
9ab – 27c – 2a R = --------------------------------------54
S =
3
3
R+ Q +R
2
T =
3
3
R– Q +R
2
Then the roots, a r 1 = S + T – --3
S+T a j 3 r 2 = ------------ – --- + --------- ( S – T ) 2 3 2
S+T a j 3 r 3 = ------------ – --- – --------- ( S – T ) 2 3 2
Figure 34.11 Cubic equations • On a few occasions a quartic equation will also have to be solved. This can be done by first reducing the equation to a quadratic,
4
3
2
x + ax + bx + cx + d = 0 = ( x – r 1 ) ( x – r 2 ) ( x – r 3 ) ( x – r 4 ) First, solve the equation below to get a real root (call it ‘y’), 3
2
2
2
y – by + ( ac – 4d )y + ( 4bd – c – a d ) = 0 Next, find the roots of the 2 equations below, a + a 2 – 4b + 4y y + y2 – 4d r 1, r 2 = z + ------------------------------------------- z + ------------------------------ = 0 2 2 2
2 y – y2 – 4d 2 a – a – 4b + 4y r 3, r 4 = z + ------------------------------------------- z + ------------------------------ = 0 2 2
Figure 34.12 Quartic equations
math guide - 34.11
34.2.3 Partial Fractions • The next is a flowchart for partial fraction expansions.
start with a function that has a polynomial numerator and denominator
is the order of the numerator >= denominator?
yes
use long division to reduce the order of the numerator
no Find roots of the denominator and break the equation into partial fraction form with unknown values OR use limits technique. If there are higher order roots (repeated terms) then derivatives will be required to find solutions
use algebra technique
Done
Figure 34.13 The methodolgy for solving partial fractions • The partial fraction expansion for,
math guide - 34.12
A B 1 C x ( s ) = -------------------= ----2 + --- + ----------2 s s+1 s s (s + 1) 1 - C = lim ( s + 1 ) -------------------2 s → –1 s (s + 1) 1 - 2 A = lim s -------------------2 s→0 s (s + 1)
= 1
1 = lim ----------- = 1 s→0 s + 1
d 2 1 - B = lim ----- s -------------------2 s → 0 ds s (s + 1)
d 1 = lim ----- ----------- s → 0 ds s + 1
–2
= lim [ – ( s + 1 ) ] = – 1 s→0
Figure 34.14 A partial fraction example • Consider the example below where the order of the numerator is larger than the denominator.
math guide - 34.13
3
2
5s + 3s + 8s + 6x ( s ) = ------------------------------------------2 s +4 This cannot be solved using partial fractions because the numerator is 3rd order and the denominator is only 2nd order. Therefore long division can be used to reduce the order of the equation. 5s + 3 2
s +4
3
2
5s + 3s + 8s + 6 3 5s + 20s 2
3s – 12s + 6 2 3s + 12 – 12s – 6 This can now be used to write a new function that has a reduced portion that can be solved with partial fractions.
– 12s – 6x ( s ) = 5s + 3 + --------------------2 s +4
solve
–--------------------12s – 6A B = ------------- + ------------2 s + 2j s – 2j s +4
Figure 34.15 Solving partial fractions when the numerator order is greater than the denominator • When the order of the denominator terms is greater than 1 it requires an expanded partial fraction form, as shown below.
5 F ( s ) = -----------------------32 s (s + 1) 5 A B C D E ----------------------= ----2 + --- + ------------------3- + ------------------2- + ---------------3 2 s (s + 1) (s + 1) s (s + 1) s (s + 1)
Figure 34.16 Partial fractions with repeated roots
math guide - 34.14
• We can solve the previous problem using the algebra technique.
5 A B C D E ------------------------ = ---+ --- + ------------------3- + ------------------2- + ---------------3 2 2 s ( s + 1) s (s + 1) (s + 1) s (s + 1) 3
3
2
2
2
2
A ( s + 1 ) + Bs ( s + 1 ) + Cs + Ds ( s + 1 ) + Es ( s + 1 ) = ----------------------------------------------------------------------------------------------------------------------------------------3 2 s (s + 1) 4
3
2
s ( B + E ) + s ( A + 3B + D + 2E ) + s ( 3A + 3B + C + D + E ) + s ( 3A + B ) + ( A )= -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------3 2 s (s + 1) 0 1 3 3 1
1 3 3 1 0
0 0 1 0 0
0 1 1 0 0
1 2 1 0 0
A 0 B 0 C = 0 D 0 E 5
A 0 1 0 B 1 3 0 C = 3 3 1 D 3 1 0 E 1 0 0
0 1 1 0 0
1 2 1 0 0
–1
0 5 0 – 15 0 = 5 0 10 5 15
5 5 – 15 5 10 15 ------------------------ = ---- + --------- + ------------------- + ------------------- + ---------------3 2 3 2 (s + 1) 2 s s (s + 1) (s + 1) s (s + 1)
Figure 34.17 An algebra solution to partial fractions
34.2.4 Summation and Series b
∑ xi
• The notation
is equivalent to x a + x a + 1 + x a + 2 + … + x b assuming a
i=a
and b are integers and b ≥ a . The index variable i is a placeholder whose name does not matter. • Operations on summations: b
∑ xi i=a
a
=
∑ xi i=b
math guide - 34.15
b
b
∑ αxi i=a b
= α ∑ xi i=a b
b
∑ xi + ∑ yj i=a b
j=a c
∑ xi + ∑ i=a
=
∑ ( xi + yi ) i=a c
xi =
i = b+1
x y = ∑ i ∑ j i = a j = c b
d
∑ xi i=a b
d
∑ ∑ xi yj i=a j=c
• Some common summations: N
∑i
1 = --- N ( N + 1 ) 2
i=1
1 – αN ----------------, α ≠ 1 for both real and complex α . ∑ α = 1 – α i=0 N, α = 1
N–1
i
∞
∑α
i
1 = ------------, α < 1 for both real and complex α . For α ≥ 1 , the summation 1–α
i=0
does not converge.
math guide - 34.16
34.2.5 Practice Problems 1. Convert the following polynomials to multiplied terms as shown in the example. e.g.,
x + 2x + 1 = ( x + 1 ) ( x + 1 )
a)
x – 2x + 1
b)
x –1
c)
x +1
2 2
d)
2
2
x + x + 10
e)
2
f)
2. Solve the following equation to find ‘x’. 2
2x + 8x = –8
(ans.
2
2x + 8x = – 8 2
x + 4x + 4 = 0 2 (x + 2) = 0 x = – 2, – 2 3. Reduce the following expression to partial fraction form. x + 4---------------2 x + 8x
(ans.
x+4 A BAx + 8A + Bxx + 4------------------------------------ + -----------------------------------------= = = 2 2 x(x + 8) x x+8 x + 8x x + 8x ( 1 )x + 4 = ( A + B )x + 8A 8A = 4
A = 0.5
1 = A+B B = 0.5 x+4 0.5 ----------------- = 0.5 ------- + ----------2 x x +8 x + 8x
math guide - 34.17
34.3 SPATIAL RELATIONSHIPS
34.3.1 Trigonometry • The basic trigonometry functions are,
y 1 sin θ = -- = ----------r csc θ x 1 cos θ = -- = ----------r sec θ
r y
y 1 sin θ tan θ = -- = ----------- = -----------x cot θ cos θ Pythagorean Formula: 2
2
r = x +y
θ
2
x
• Graphs of these functions are given below,
Sine - sin 1
-270°
-180°
-90°
0° -1
90°
180°
270°
360°
450°
math guide - 34.18
Cosine - cos 1
-270°
-180°
-90°
0°
90°
180°
270°
360°
450°
-1
Tangent - tan 1
-270°
-180°
-90°
0° -1
90°
180°
270°
360°
450°
Cosecant - csc
1
-270°
-180°
-90°
0° -1
90°
180°
270°
360°
450°
math guide - 34.19
Secant - sec 1
-270°
-180°
-90°
0°
90°
180°
270°
360°
450°
-1
Cotangent - cot
1
-270°
-180°
-90°
0° -1
90°
180°
270°
360°
450°
• NOTE: Keep in mind when finding these trig values, that any value that does not lie in the right hand quadrants of cartesian space, may need additions of ±90° or ±180°.
math guide - 34.20
Cosine Law: 2
2
2
c = a + b – 2ab cos θ c c
θA
Sine Law:
b
b c a ------------= -------------- = -------------sin θ A sin θ B sin θ C θC
θB
a • Now a group of trigonometric relationships will be given. These are often best used when attempting to manipulate equations.
math guide - 34.21
sin ( – θ ) = – sin θ
cos ( – θ ) = cos θ
tan ( – θ ) = – tan θ
sin θ = cos ( θ – 90° ) = cos ( 90° – θ ) = etc. sin ( θ 1 ± θ 2 ) = sin θ 1 cos θ 2 ± cos θ 1 sin θ 2
OR
sin ( 2θ ) = 2 sin θ cos θ
− sin θ sin θ cos ( θ1 ± θ 2 ) = cos θ 1 cos θ 2 + 1 2
OR
cos ( 2θ ) = ( cos θ ) + ( sin θ )
tan θ 1 ± tan θ 2 tan ( θ 1 ± θ 2 ) = -----------------------------------1− + tan θ 1 tan θ 2 cot θ 1 cot θ2 − +1 cot ( θ 1 ± θ 2 ) = ------------------------------------tan θ 2 ± tan θ 1 θ – cos θsin --- = ± 1-------------------2 2
-ve if in left hand quadrants
θ + cos θcos --- = ± 1-------------------2 2 θ sin θ 1 – cos θ tan --- = --------------------- = --------------------2 1 + cos θ sin θ 2
2
( cos θ ) + ( sin θ ) = 1
• Numerical values for these functions are given below.
θ (deg) -90 -60 -45 -30 0 30 45 60 90
sin θ
cos θ
tan θ
-1.0 -0.866 -0.707 -0.5 0 0.5 0.707 0.866 1.0
0.0 0.5 0.707 0.866 1 0.866 0.707 0.5 0.0
-infinity -1 0 1 infinity
2
2
math guide - 34.22
• These can also be related to complex exponents,
jθ
–jθ
jθ
e +e cos θ = ---------------------2
–j θ
e –e sin θ = --------------------2j
34.3.2 Hyperbolic Functions • The basic definitions are given below,
x
–x
e –e sinh ( x ) = ------------------ = hyperbolic sine of x 2 x
–x
e +e cosh ( x ) = ------------------ = hyperbolic cosine of x 2 x
–x
sinh ( x ) e –e - = hyperbolic tangent of x tanh ( x ) = ------------------- = ----------------x –x cosh ( x ) e +e 1 2 = hyperbolic cosecant of x csch ( x ) = ------------------ = ----------------x –x sinh ( x ) e –e 1 2 - = hyperbolic secant of x sech ( x ) = ------------------- = ----------------x –x cosh ( x ) e +e x
–x
cosh ( x ) e +e = hyperbolic cotangent of x coth ( x ) = ------------------- = ----------------x –x sinh ( x ) e –e
• some of the basic relationships are,
math guide - 34.23
sinh ( – x ) = – sinh ( x ) cosh ( –x ) = cosh ( x ) tanh ( – x ) = – tanh ( x ) csch ( – x ) = – csch ( x ) sech ( – x ) = sech ( x ) coth ( –x ) = – coth ( x )
• Some of the more advanced relationships are,
2
2
2
2
2
2
( cosh x ) – ( sinh x ) = ( sech x ) + ( tanh x ) = ( coth x ) – ( csch x ) = 1 sinh ( x ± y ) = sinh ( x ) cosh ( y ) ± cosh ( x ) sinh ( y ) cosh ( x ± y ) = cosh ( x ) cosh ( y ) ± sinh ( x ) sinh ( y ) tanh ( x ) ± tanh ( y ) tanh ( x ± y ) = ----------------------------------------------1 ± tanh ( x ) tanh ( y ) • Some of the relationships between the hyperbolic, and normal trigonometry functions are,
sin ( jx ) = j sinh ( x )
j sin ( x ) = sinh ( jx )
cos ( jx ) = cosh ( x )
cos ( x ) = cosh ( jx )
tan ( jx ) = j tanh ( x )
j tan ( x ) = tanh ( jx )
34.3.2.1 - Practice Problems
math guide - 34.24
1. Find all of the missing side lengths and corner angles on the two triangles below.
5
5
3
3 10°
2. Simplify the following expressions. cos θ cos θ – sin θ sin θ =
(ans.
2
( s + 3j ) ( s – 3j ) ( s + 2j ) =
cos θ cos θ – sin θ sin θ = cos ( θ + θ ) = cos ( 2θ ) 2
2
2
2
2
( s + 3j ) ( s – 3j ) ( s + 2j ) = ( s – 9j ) ( s + 4js + 4j ) 4
3
2 2
2 2
2
2
s + 4js + 4j s – 9j s – 9j 4js – 9j 4j 4
3
2
2
s + ( 4j )s + ( 5 )s + ( 36j )s + ( – 36 ) 3. Solve the following partial fraction 1 Note: there was a typo here, so --------------an acceptable answer is also. x + 0.5
4 -------------------------= 2 x + 3x + 2
(ans.
A B Ax + 2A + Bx + B( 2A + B ) + ( A + B )x 4 -------------------------= ------------ + ------------ = -----------------------------------------= ------------------------------------------------2 2 2 x + 1 x + 2 x + 3x + 2 x + 3x + 2 x + 3x + 2 A+B = 0
A = –B
2A + B = 4 = – 2B + B = –B
B = –4
A = 4
4 - ----------–4 ----------+ x+1 x+2
34.3.3 Geometry • A set of the basic 2D and 3D geometric primitives are given, and the notation used is described below,
math guide - 34.25
A = contained area P = perimeter distance V = contained volume S = surface area x, y, z = centre of mass x, y, z = centroid I x, I y, I z = moment of inertia of area (or second moment of inertia)
AREA PROPERTIES:
∫y
Ix =
2
dA = the second moment of inertia about the y-axis
A
∫x
Iy =
2
dA = the second moment of inertia about the x-axis
A
∫ xy dA
I xy =
= the product of inertia
A
∫r
JO =
2
dA =
A
∫ (x
2
2
+ y ) dA = I x + I y = The polar moment of inertia
A
∫ x dA A - = centroid location along the x-axis x = -----------∫ dA A
∫ y dA A - = centroid location along the y-axis y = -----------∫ dA A
math guide - 34.26
y
Rectangle/Square: A = ab P = 2a + 2b
a x
Centroid:
Moment of Inertia (about centroid axes): 3
b x = --2
ba I x = -------12 3
a y = --2
b Moment of Inertia (about origin axes): 3
ba I x = -------3 3
b a I y = -------12
b a I y = -------3
I xy = 0
b a I xy = ----------4
2 2
math guide - 34.27
Triangle:
y bh A = -----2
a
P =
θ
h x b
Moment of Inertia (about centroid axes):
Centroid: a+b x = -----------3 h y = --3
Moment of Inertia (about origin axes):
3
3
bh I x = -------36
bh I x = -------12
bh 2 2 I y = ------ ( a + b – ab ) 36
bh 2 2 I y = ------ ( a + b – ab ) 12
2
2
bh I xy = -------- ( 2a – b ) 72
Circle:
bh I xy = -------- ( 2a – b ) 24
y A = πr
r
2
P = 2πr x
Centroid:
Moment of Inertia Moment of Inertia (about centroid axes): (about origin axes): 4
x = r
πr I x = -------4
y = r
πr I y = -------4 I xy = 0
Mass Moment of Inertia (about centroid): 2
Ix =
4
Iy = I xy =
Mr J z = ---------2
math guide - 34.28
Half Circle:
y
2
πr A = -------2 P = πr + 2r
r x Centroid: x = r 4r y = -----3π
Moment of Inertia (about origin axes):
Moment of Inertia (about centroid axes): π 8 4 I x = --- – ------ r 8 9π
4
πr I x = -------8
4
πr I y = -------8
4
πr I y = -------8 I xy = 0
I xy = 0
Quarter Circle:
y
2
πr A = -------4 πr P = ----- + 2r 2
r x Centroid:
Moment of Inertia (about centroid axes):
4r x = -----3π
I x = 0.05488r
4r y = -----3π
I y = 0.05488r
4
4
πr I y = -------16
4
I xy = – 0.01647 r
Moment of Inertia (about origin axes): 4 πr ------Ix = 16
4
4
I xy
r = ---8
math guide - 34.29
Circular Arc:
y 2
θr A = -------2 P = θr + 2r
r x θ
Centroid: θ 2r sin --2 x = ----------------3θ y = 0
Moment of Inertia (about centroid axes):
Moment of Inertia (about origin axes): 4
Ix =
r I x = ---- ( θ – sin θ ) 8
Iy =
r I y = ---- ( θ + sin θ ) 8
I xy =
I xy = 0
4
math guide - 34.30
Ellipse:
y
r1
A = πr 1 r 2 P = 4r 1 ∫
π --2
0
2
r2 2
2
r1 + r 2 2 1 – -------------------- ( sin θ ) dθ a
x
2
r 1 + r2 P ≈ 2π --------------2 Centroid:
Moment of Inertia Moment of Inertia (about centroid axes): (about origin axes): 3
x = r2 y = r1
πr 1 r 2 I x = ------------4 3 πr 1 r 2 I y = ------------4 I xy =
Ix = Iy = I xy =
math guide - 34.31
Half Ellipse:
y
πr 1 r 2 A = -----------2 P = 2r 1 ∫
π --2
0
2
2 r1
r1
2 r2
+ 2 1 – -------------------- ( sin θ ) dθ + 2r 2 a
r2
x
2
r 1 + r2 P ≈ π --------------- + 2r 2 2 Centroid: x = r2 4r 1 y = -------3π
Moment of Inertia (about centroid axes):
Moment of Inertia (about origin axes): 3
3
I x = 0.05488r 2 r 1 3
I y = 0.05488r 2 r 1 2 2
I xy = – 0.01647r 1 r 2
πr 2 r 1 I x = -----------16 3 πr 2 r 1 -----------Iy = 16 2 2 r1 r2 I xy = --------8
math guide - 34.32
Quarter Ellipse: πr 1 r 2 A = ------------4
P =
r1 ∫
π --2
0
2
y
2
r1
2
r1 + r 2 2 1 – -------------------- ( sin θ ) dθ + 2r 2 a
r2
x
2
π r 1 + r2 P ≈ --- --------------- + 2r 2 2 2 Centroid:
Moment of Inertia (about centroid axes):
Moment of Inertia (about origin axes):
4r 2 x = -------3π
Ix =
I x = πr 2 r 1
4r 1 y = -------3π
Iy =
I y = πr 2 r 1
I xy =
r2 r1 = --------8
3
3
2 2
I xy
Parabola:
y
2 A = --- ab 3 a
4a + b + 16a b b + 16a P = --------------------------- + ------ ln ---------------------------------------- 2 b 8a 2
2
2
2
2
x b
Centroid:
Moment of Inertia (about centroid axes):
Moment of Inertia (about origin axes):
b x = --2
Ix =
Ix =
2a y = -----5
Iy =
Iy =
I xy =
I xy =
math guide - 34.33
Half Parabola:
y
ab A = -----3 a
4a + b2 + 16a 2 b + 16a b P = --------------------------- + --------- ln ---------------------------------------- 4 16a b 2
2
2
x b
Centroid: 3b x = -----8 2a y = -----5
Moment of Inertia Moment of Inertia (about centroid axes): (about origin axes): 3 3 8ba 2ba I x = -----------I x = -----------175 7 3
19b a I y = --------------480 2 2
b a I xy = ----------60
3
2b a I y = -----------15 2 2
b a I xy = ----------6
• A general class of geometries are conics. This for is shown below, and can be used to represent many of the simple shapes represented by a polynomial.
math guide - 34.34
2
2
Ax + 2Bxy + Cy + 2Dx + 2Ey + F = 0 Conditions
A = B = C = 0 B = 0, A = C 2 B – AC < 0 2 B – AC = 0 2 B – AC > 0
straight line circle ellipse parabola hyperbola
math guide - 34.35
VOLUME PROPERTIES: Ix =
∫ rx
2
dV = the moment of inertia about the x-axis
V
Iy =
∫ ry
2
dV = the moment of inertia about the y-axis
V
Iz =
∫ rz
2
dV = the moment of inertia about the z-axis
V
∫ x dV V - = centroid location along the x-axis x = -----------∫ dV V
∫ y dV V - = centroid location along the y-axis y = -----------∫ dV V
∫ z dV V - = centroid location along the z-axis z = -----------∫ dV V
math guide - 34.36
Parallelepiped (box):
y
V = abc
c
z
S = 2 ( ab + ac + bc ) b
x a
Moment of Inertia (about centroid axes):
Centroid: a x = --2
M(a + b ) I x = --------------------------12
b y = --2
M(a + c ) I y = --------------------------12
c z = --2
M(b + a ) I z = --------------------------12
2
2
2
Moment of Inertia (about origin axes):
Mass Moment of Inertia (about centroid):
2
Ix =
Jx =
Iy =
Jy =
Iz =
Jz =
2
2
Sphere:
y
r
4 3 V = --- πr 3 S = 4πr
Centroid:
z
2
x Moment of Inertia (about centroid axes):
Moment of Inertia (about origin axes):
2
x = r
2Mr I x = ------------5
y = r
2Mr I y = ------------5
z = r
2Mr I z = ------------5
Mass Moment of Inertia (about centroid): 2
Ix =
2Mr J x = ------------5
Iy =
2Mr J y = ------------5
Iz =
2Mr J z = ------------5
2
2
2
2
math guide - 34.37
Hemisphere:
y
2 3 V = --- πr 3 z r
S =
Centroid:
x = r
Moment of Inertia (about centroid axes):
x
Moment of Inertia (about origin axes):
83 2 I x = --------- Mr 320
Ix =
2
3r y = ----8 z = r
2Mr I y = ------------5
Iy =
83 2 I z = --------- Mr 320
Iz =
Cap of a Sphere:
y h
1 2 V = --- πh ( 3r – h ) 3 z r
S = 2πrh
Centroid:
x = r y = z = r
Moment of Inertia (about centroid axes):
Moment of Inertia (about origin axes):
Ix =
Ix =
Iy =
Iy =
Iz =
Iz =
x
math guide - 34.38
Cylinder:
y
V = hπr
r
2
h
S = 2πrh + 2πr
z
2
x
Centroid:
Moment of Inertia (about centroid axis):
x = r
h r I x = M ------ + ---- 12 4
h y = --2
Mr I y = ---------2
z = r
r h I z = M ------ + ---- 12 4
2
2
Moment of Inertia (about origin axis): 2
Mass Moment of Inertia (about centroid):
2
2
2
2
2
h r I x = M ----- + ---- 3 4
M ( 3r + h ) J x = -----------------------------12
Iy =
Mr J y = ---------2
2
2
2
2
2
2
M ( 3r + h ) J z = -----------------------------12
r h I z = M ----- + ---- 3 4
Cone:
y
1 2 V = --- πr h 3 2
S = πr r + h
2
z
Centroid:
Moment of Inertia (about centroid axes): 3
h
Moment of Inertia (about origin axes):
2
x = r
3h 3r I x = M -------- + -------- 80 20
h y = --4
3Mr I y = ------------10
z = r
3h 3r I z = M -------- + -------- 80 20
Ix =
2
Iy = 3
r
2
Iz =
x
math guide - 34.39
Tetrahedron:
y
z
1 V = --- Ah 3
h A Centroid:
Moment of Inertia (about origin axes):
Moment of Inertia (about centroid axes):
x =
Ix =
Ix =
h y = --4
Iy =
Iy =
Iz =
Iz =
z =
Torus:
x
y r2
1 2 2 V = --- π ( r 1 + r 2 ) ( r 2 – r 1 ) 4
r1
z 2
2
2
S = π ( r2 – r1 )
x
Centroid:
Moment of Inertia (about centroid axes):
Moment of Inertia (about origin axes):
x = r2
Ix =
Ix =
r 2 – r 1 y = ------------- 2
Iy =
Iy =
Iz =
Iz =
z = r2
math guide - 34.40
Ellipsoid:
y r2
4 V = --- πr 1 r 2 r 3 3
r3 r1
z S =
x
Centroid:
x = r1 y = r2 z = r3
Moment of Inertia (about origin axes):
Moment of Inertia (about centroid axes): Ix =
Ix =
Iy =
Iy =
Iz =
Iz =
Paraboloid:
y
1 2 V = --- πr h 2
h z r
S =
Centroid:
x = r y = z = r
Moment of Inertia (about centroid axes):
Moment of Inertia (about origin axes):
Ix =
Ix =
Iy =
Iy =
Iz =
Iz =
x
math guide - 34.41
34.3.4 Planes, Lines, etc. • The most fundamental mathematical geometry is a line. The basic relationships are given below,
y = mx + b
defined with a slope and intercept
1 m perpendicular = ---m
a slope perpendicular to a line
y2 – y1 m = ---------------x2 – x1
the slope using two points
--x- + --y- = 1 a b
as defined by two intercepts
• If we assume a line is between two points in space, and that at one end we have a local reference frame, there are some basic relationships that can be derived.
math guide - 34.42
y θβ
( x 2, y 2, z 2 )
d
( x 1, y 1, z 1 ) d =
2
2
( x2 – x1 ) + ( y2 – y1 ) + ( z2 – z1 )
θγ
2
θα x
( x 0, y 0, z 0 )
z The direction cosines of the angles are, x2 – x1 θ α = acos ---------------- d 2
y2 – y1 θ β = acos ---------------- d 2
z2 – z1 θ γ = acos --------------- d
2
( cos θ α ) + ( cos θ β ) + ( cos θ γ ) = 1 The equation of the line is, y – y1 z–z x – x1 --------------- = --------------- = --------------1x2 – x1 y2 – y1 z2 – z1 ( x, y, z ) = ( x 1, y 1, z 1 ) + t ( ( x 2, y 2, z 2 ) – ( x 1, y 1, z 1 ) )
• The relationships for a plane are,
Explicit
Parametric t=[0,1]
math guide - 34.43
y b
The explicit equation for a plane is, Ax + By + Cz + D = 0
P 1 = ( x 1, y 1, z 1 ) where the coefficients defined by the intercepts are, 1 A = --a
1 B = --b
1 C = --c
N P 2 = ( x 2, y 2, z 2 )
D = –1
P 3 = ( x 3, y 3, z 3 )
a
x
c
z The determinant can also be used, x – x1 y – y1 z – z1 det x – x 2 y – y 2 z – z 2 = 0 x – x3 y – y3 z – z3 ∴det
y2 – y1 z2 – z1 y3 – y1 z3 – z1
( x – x 1 ) + det
+ det
z2 – z1 x2 – x1 z3 – z1 x3 – x1
x2 – x1 y2 – y1 x3 – x1 y3 – y1
( y – y1 )
( z – z1 ) = 0
The normal to the plane (through the origin) is, ( x, y, z ) = t ( A , B , C )
34.3.5 Practice Problems 1. What is the circumferenece of a circle? What is the area? What is the ratio of the area to the circumference?
math guide - 34.44
2. What is the equation of a line that passes through the points below? a) (0, 0) to (2, 2) b) (1, 0) to (0, 1) c) (3, 4) to (2. 9) 3. Find a line that is perpendicular to the line through the points (2, 1) and (1, 2). The perpendicular line passes through (3, 5). 4. Manipulate the following equations to solve for ‘x’. a) x 2 + 3x = – 2 b) sin x = cos x
(ans. a) x 2 + 3x = – 2 2
x + 3x + 2 = 0 2
– 3 ± 3 – 4( 1)( 2 ) –3± 9–8 –3±1 x = ------------------------------------------------ = ------------------------------ = ---------------- = – 1, – 2 2(1 ) 2 2 b) sin x = cos x sin x---------= 1 cos x tan x = 1 x = atan 1 x = …, –135°, 45°, 225°, … 5. Simplify the following expressions. a)
(ans.
a)
2
( cos 2θ ) sin 2θ ---------------------- + sin 2θ sin 2θ
2
( cos 2θ ) 2 2 sin 2θ ---------------------- + sin 2θ = ( cos 2θ ) + ( sin 2θ ) = 1 sin 2θ
math guide - 34.45
6. A line that passes through the point (1, 2) and has a slope of 2. Find the equation for the line, and for a line perpendicular to it.
(ans.
given, y = mx + b m = 2 x = 1 y = 2 substituting 2 = 2(1) + b y = 2x
b = 0
perpendicular 1 m perp = – ---- = – 0.5 m y = – 0.5 x
34.4 COORDINATE SYSTEMS
34.4.1 Complex Numbers • In this section, as in all others, ‘j’ will be the preferred notation for the complex number, this is to help minimize confusion with the ‘i’ used for current in electrical engineering. • The basic algebraic properties of these numbers are,
math guide - 34.46
The Complex Number: j =
2
–1
j = –1
Complex Numbers: a + bj
where,
a and b are both real numbers
Complex Conjugates (denoted by adding an asterisk ‘*’ the variable): N = a + bj
N* = a – bj
Basic Properties: ( a + bj ) + ( c + dj ) = ( a + c ) + ( b + d )j ( a + bj ) – ( c + dj ) = ( a – c ) + ( b – d )j ( a + bj ) ⋅ ( c + dj ) = ( ac – bd ) + ( ad + bc )j Na + bj N N* a + bj c – dj ac + bd bc – ad ---- + ------------------ j = -------------- = ----- ------- = -------------- ------------- = ----------------2 2 2 2 M c + dj M N* c + dj c – dj c +d c +d • We can also show complex numbers graphically. These representations lead to alternative representations. If it in not obvious above, please consider the notation above uses a cartesian notation, but a polar notation can also be very useful when doing large calculations.
math guide - 34.47
CARTESIAN FORM
Ij imaginary (j) N = R + Ij R real
A =
2
R +I
2
I θ = atan --- R POLAR FORM
R = A cos θ I = A sin θ
Ij imaginary (j) N = A ∠θ θ
R real A = amplitude θ = phase angle
• We can also do calculations using polar notation (this is well suited to multiplication and division, whereas cartesian notation is easier for addition and subtraction),
math guide - 34.48
A ∠θ = A ( cos θ + j sin θ ) = Ae
jθ
( A 1 ∠θ 1 ) ( A 2 ∠θ 2 ) = ( A 1 A 2 ) ∠( θ 1 + θ 2 ) ( A 1 ∠θ 1 ) A --------------------- = -----1- ∠( θ 1 – θ 2 ) A 2 ( A 2 ∠θ 2 ) n
n
( A ∠θ ) = ( A ) ∠( nθ )
(DeMoivre’s theorem)
• Note that DeMoivre’s theorem can be used to find exponents (including roots) of complex numbers
• Euler’s formula: e
jθ
= cos θ + j sin θ
• From the above, the following useful identities arise: jθ
– jθ
e +e cos θ = ---------------------2 jθ
– jθ
e –e sin θ = --------------------2j
34.4.2 Cylindrical Coordinates • Basically, these coordinates appear as if the cartesian box has been replaced with a cylinder,
math guide - 34.49
z
z ( x, y, z ) ↔ ( r, θ, z )
z z y
r
x x
y
θ 2
x +y
2
x = r cos θ
r =
y = r sin θ
y θ = atan -- x
34.4.3 Spherical Coordinates • This system replaces the cartesian box with a sphere,
math guide - 34.50
z
z ( x, y, z ) ↔ ( r, θ, φ )
φ
r z
y x x
y
θ r =
x = r sin θ cos φ y = r sin θ sin φ
z φ = acos - r
34.4.4 Practice Problems 1. Simplify the following expressions.
b) c)
16 -------------------2 ( 4j + 4 ) 3j + 5 --------------------2 ( 4j + 3 ) ( 3 + 5j )4j
2
y θ = atan -- x
z = r cos θ
a)
2
x +y +z
where,
j =
–1
2
math guide - 34.51
(ans. a)
16 16 16--------------------- = ------------------------------------ = ------= – 0.5j 2 – 16 + 32j + 16 32j ( 4j + 4 )
3j + 5 3j + 5 3j + 5 – 7 – 24j – 35 – 141j + 72 37 – 141j b) -------------------- = --------------------------------= --------------------- --------------------- = --------------------------------------- = ----------------------2 – 16 + 24j + 9 – 7 + 24j – 7 – 24j 49 + 576 625 ( 4j + 3 ) c) ( 3 + 5j )4j = 12j + 20j 2 = 12j – 20
2. For the shape defined below, y
y = (x + 2)
2
a) find the area of the shape. b) find the centroid of the shape. c) find the moment of inertia of the shape about the centroid. x 4
34.5 MATRICES AND VECTORS
34.5.1 Vectors • Vectors are often drawn with arrows, as shown below,
head terminus A vector is said to have magnitude (length or strength) and direction. origin tail
math guide - 34.52
• Cartesian notation is also a common form of usage.
y
j x
i
z
k becomes y
z
j
k
x
i
• Vectors can be added and subtracted, numerically and graphically,
A = ( 2, 3, 4 )
A + B = ( 2 + 7, 3 + 8, 4 + 9 )
B = ( 7, 8, 9 )
A – B = ( 2 – 7, 3 – 8, 4 – 9 )
B A+B
Parallelogram Law A
A
B
34.5.2 Dot (Scalar) Product • We can use a dot product to find the angle between two vectors
math guide - 34.53
F2 = 5i + 3j
y F1 • F2 cos θ = ----------------F1 F2
F1 = 2i + 4j
θ
( 2 ) ( 5 ) + ( 4 )( 3) ∴θ = acos ------------------------------------------- 2 2 + 4 2 5 2 + 3 2 22 ∴θ = acos ----------------------- = 32.5° ( 4.47 ) ( 6 )
x
• We can use a dot product to project one vector onto another vector.
z We want to find the component of force F1 that projects onto the vector V. To do this we first convert V to a unit vector, if we do not, the component we find will be multiplied by the magnitude of V.
F 1 = ( – 3i + 4j + 5k )N
V = 1j + 1k y
x
λV
F1
1j + 1k V = ------ = --------------------- = 0.707j + 0.707k V 2 2 1 +1
F 1V = λ V • F 1 = ( 0.707j + 0.707k ) • ( – 3i + 4j + 5k )N ∴F 1V = ( 0 ) ( – 3 ) + ( 0.707 ) ( 4 ) + ( 0.707 ) ( 5 ) = 6N
V
F 1V
• We can consider the basic properties of the dot product and units vectors.
math guide - 34.54
Unit vectors are useful when breaking up vector magnitudes and direction. As an example consider the vector, and the displaced x-y axes shown below as x’-y’.
F = 10N
y y’
x’
45° 60° x We could write out 5 vectors here, relative to the x-y axis, x axis = 2i y axis = 3j x‘ axis = 1i + 1j y‘ axis = – 1i + 1j F = 10N ∠60° = ( 10 cos 60° )i + ( 10 sin 60° )j None of these vectors has a magnitude of 1, and hence they are not unit vectors. But, if we find the equivalent vectors with a magnitude of one we can simplify many tasks. In particular if we want to find the x and y components of F relative to the x-y axis we can use the dot product. λ x = 1i + 0j (unit vector for the x-axis) F x = λ x • F = ( 1i + 0j ) • [ ( 10 cos 60° )i + ( 10 sin 60° )j ] ∴ = ( 1 ) ( 10 cos 60° ) + ( 0 ) ( 10 sin 60° ) = 10N cos 60° This result is obvious, but consider the other obvious case where we want to project a vector onto itself,
math guide - 34.55
10 cos 60°i + 10 sin 60°j F λ F = ------ = --------------------------------------------------------- = cos 60°i + sin 60°j F 10
Incorrect - Not using a unit vector FF = F • F = ( ( 10 cos 60° )i + ( 10 sin 60° )j ) • ( ( 10 cos 60° )i + ( 10 sin 60° )j ) = ( 10 cos 60° ) ( 10 cos 60° ) + ( 10 sin 60° ) ( 10 sin 60° ) 2
2
= 100 ( ( cos 60° ) + ( sin 60° ) ) = 100 Using a unit vector FF = F • λF = ( ( 10 cos 60° )i + ( 10 sin 60° )j ) • ( ( cos 60° )i + ( sin 60° )j ) = ( 10 cos 60° ) ( cos 60° ) + ( 10 sin 60° ) ( sin 60° ) 2
2
= 10 ( ( cos 60° ) + ( sin 60° ) ) = 10
Correct Now consider the case where we find the component of F in the x’ direction. Again, this can be done using the dot product to project F onto a unit vector. u x' = cos 45°i + sin 45°j F x' = F • λ x' = ( ( 10 cos 60° )i + ( 10 sin 60° )j ) • ( ( cos 45° )i + ( sin 45° )j ) = ( 10 cos 60° ) ( cos 45° ) + ( 10 sin 60° ) ( sin 45° ) = 10 ( cos 60° cos 45° + sin 60° sin 45° ) = 10 ( cos ( 60° – 45° ) ) Here we see a few cases where the dot product has been applied to find the vector projected onto a unit vector. Now finally consider the more general case,
math guide - 34.56
y
V2 V1 θ2
V 2V 1 θ1 x
First, by inspection, we can see that the component of V2 (projected) in the direction of V1 will be, V 2V 1 = V 2 cos ( θ 2 – θ1 ) Next, we can manipulate this expression into the dot product form, = V 2 ( cos θ 1 cos θ2 + sin θ 1 sin θ2 ) = V 2 [ ( cos θ 1 i + sin θ 1 j ) • ( cos θ 2 i + sin θ 2 j ) ] V1 V2 V 1 • V2 V1 • V2 = V 2 --------- • --------- = V 2 ------------------ = ------------------ = V2 • λ V1 V1 V2 V1 V2 V1 Or more generally, V1 • V 2 V2 V 1 = V 2 cos ( θ2 – θ 1 ) = V 2 -----------------V1 V2 V1 • V2 ∴ V 2 cos ( θ 2 – θ1 ) = V 2 -----------------V1 V2 V1 • V2 ∴ cos ( θ 2 – θ 1 ) = -----------------V 1 V2 *Note that the dot product also works in 3D, and similar proofs are used.
math guide - 34.57
34.5.3 Cross Product • First, consider an example,
F = ( – 6.43i + 7.66j + 0k )N d = ( 2i + 0j + 0k )m i M = d×F =
j
k
2m 0m 0m – 6.43N 7.66N 0N
NOTE: note that the cross product here is for the right hand rule coordinates. If the left handed coordinate system is used F and d should be reversed.
∴M = ( 0m0N – 0m ( 7.66N ) )i – ( 2m0N – 0m ( – 6.43N ) ) j + ( 2m ( 7.66N ) – 0m ( –6.43N ) )k = 15.3k ( mN ) NOTE: there are two things to note about the solution. First, it is a vector. Here there is only a z component because this vector points out of the page, and a rotation about this vector would rotate on the plane of the page. Second, this result is positive, because the positive sense is defined by the vector system. In this right handed system find the positive rotation by pointing your right hand thumb towards the positive axis (the ‘k’ means that the vector is about the z-axis here), and curl your fingers, that is the positive direction.
• The basic properties of the cross product are,
math guide - 34.58
The cross (or vector) product of two vectors will yield a new vector perpendicular to both vectors, with a magnitude that is a product of the two magnitudes. V1 × V2 V1
V2
V1 × V2 = ( x 1 i + y1 j + z1 k ) × ( x2 i + y 2 j + z 2 k ) i j k V1 × V2 =
x1 y1 z1 x2 y2 z2
V 1 × V 2 = ( y 1 z 2 – z 1 y 2 )i + ( z 1 x 2 – x 1 z 2 )j + ( x 1 y 2 – y 1 x 2 )k We can also find a unit vector normal ‘n’ to the vectors ‘V1’ and ‘V2’ using a cross product, divided by the magnitude. V1 × V2 λ n = --------------------V1 × V2 • When using a left/right handed coordinate system,
The positive orientation of angles and moments about an axis can be determined by pointing the thumb of the right hand along the axis of rotation. The fingers curl in the positive direction. y
x
x
z
+ z
z
y
+ y
• The properties of the cross products are,
+ x
math guide - 34.59
The cross product is distributive, but not associative. This allows us to collect terms in a cross product operation, but we cannot change the order of the cross product. r 1 × F + r 2 × F = ( r 1 + r2 ) × F
DISTRIBUTIVE
r×F≠F×r but r × F = –( F × r )
NOT ASSOCIATIVE
34.5.4 Triple Product
When we want to do a cross product, followed by a dot product (called the mixed triple product), we can do both steps in one operation by finding the determinant of the following. An example of a problem that would use this shortcut is when a moment is found about one point on a pipe, and then the moment component twisting the pipe is found using the dot product.
ux uy uz ( d × F) • u =
dx dy dz F x F y Fz
34.5.5 Matrices • Matrices allow simple equations that drive a large number of repetitive calculations - as a result they are found in many computer applications. • A matrix has the form seen below,
math guide - 34.60
n columns a 11 a21 … a n1 a 12 a22 … a n2 … … … … a 1m a 2m … a nm
m rows
If n=m then the matrix is said to be square. Many applications require square matrices. We may also represent a matrix as a 1-by-3 for a vector.
• Matrix operations are available for many of the basic algebraic expressions, examples are given below. There are also many restrictions - many of these are indicated.
A = 2
3 4 5 B = 6 7 8 9 10 11
12 13 14 C = 15 16 17 18 19 20
Addition/Subtraction
3+2 4+2 5+2 A+B = 6+2 7+2 8+2 9 + 2 10 + 2 11 + 2
21 D = 22 23
E = 24 25 26
3 + 12 4 + 13 5 + 14 B + C = 6 + 15 7 + 16 8 + 17 9 + 18 10 + 19 11 + 20
B + D = not valid 3–2 4–2 5–2 B–A = 6–2 7–2 8–2 9 – 2 10 – 2 11 – 2 B – D = not valid
3 – 12 4 – 13 5 – 14 B + C = 6 – 15 7 – 16 8 – 17 9 – 18 10 – 19 11 – 20
math guide - 34.61
Multiplication/Division 3--2 B --- = 6--A 2 9--2
3(2 ) 4(2 ) 5(2) A ⋅ B = 6(2 ) 7(2 ) 8(2) 9 ( 2 ) 10 ( 2 ) 11 ( 2 )
B⋅D =
B⋅C =
( 3 ⋅ 21 + 4 ⋅ 22 + 5 ⋅ 23 ) ( 6 ⋅ 21 + 7 ⋅ 22 + 8 ⋅ 23 ) ( 9 ⋅ 21 + 10 ⋅ 22 + 11 ⋅ 23 )
4--2 7--2 10 -----2
5--2 8--2 11 -----2
D ⋅ E = 21 ⋅ 24 + 22 ⋅ 25 + 23 ⋅ 26
( 3 ⋅ 12 + 4 ⋅ 15 + 5 ⋅ 18 ) ( 3 ⋅ 13 + 4 ⋅ 16 + 5 ⋅ 19 ) ( 3 ⋅ 14 + 4 ⋅ 17 + 5 ⋅ 20 ) ( 6 ⋅ 12 + 7 ⋅ 15 + 8 ⋅ 18 ) ( 6 ⋅ 13 + 7 ⋅ 16 + 8 ⋅ 19 ) ( 6 ⋅ 14 + 7 ⋅ 17 + 8 ⋅ 20 ) ( 9 ⋅ 12 + 10 ⋅ 15 + 11 ⋅ 18 ) ( 9 ⋅ 13 + 10 ⋅ 16 + 11 ⋅ 19 ) ( 9 ⋅ 14 + 10 ⋅ 17 + 11 ⋅ 20 ) B- --B D --, -, ---- , etc = not allowed (see inverse) C D B Note: To multiply matrices, the first matrix must have the same number of columns as the second matrix has rows.
math guide - 34.62
Determinant B = 3⋅
7 8 –4⋅ 6 8 +5⋅ 6 7 10 11 9 11 9 10
7 8 10 11
= ( 7 ⋅ 11 ) – ( 8 ⋅ 10 ) = – 3
6 8 9 11
= ( 6 ⋅ 11 ) – ( 8 ⋅ 9 ) = – 6
6 7 9 10
= ( 6 ⋅ 10 ) – ( 7 ⋅ 9 ) = – 3
= 3 ⋅ ( – 3 ) – 4 ⋅ ( –6 ) + 5 ⋅ ( – 3 ) = 0
D , E = not valid (matrices not square)
Transpose
3 6 9 T B = 4 7 10 5 8 11
T
D = 21 22 23
24 T E = 25 26
math guide - 34.63
Adjoint
T
7 8 10 11 B = – 4 5 10 11 4 5 7 8
– 6 8 10 11 3 5 9 11
6 7 9 10 – 3 4 9 10
– 3 5 6 8
3 4 6 7
The matrix of determinant to the left is made up by getting rid of the row and column of the element, and then finding the determinant of what is left. Note the sign changes on alternating elements.
D = invalid (must be square)
Inverse x D = B⋅ y z
To solve this equation for x,y,z we need to move B to the left hand side. To do this we use the inverse.
–1
B D = B
–1
x ⋅B⋅ y z
x x –1 B D = I⋅ y = y z z
B
D
–1
–1
B = --------B
In this case B is singular, so the inverse is undetermined, and the matrix is indeterminate.
= invalid (must be square)
math guide - 34.64
Identity Matrix This is a square matrix that is the matrix equivalent to ‘1’. B⋅I = I⋅B = B D⋅I = I⋅D = D B
–1
⋅B = I
1 0 0 1 0, , 1 0 1 0 , etc=I 0 1 0 0 1 • The eigenvalue of a matrix is found using,
A – λI = 0
34.5.6 Solving Linear Equations with Matrices • We can solve systems of equations using the inverse matrix,
Given, 2⋅x+4⋅y+3⋅z = 5 9⋅x+6⋅y+8⋅z = 7 11 ⋅ x + 13 ⋅ y + 10 ⋅ z = 12 Write down the matrix, then rearrange, and solve. 2 4 3 x 5 = 9 6 8 y 7 11 13 10 z 12
x 2 4 3 ∴ y = 9 6 8 z 11 13 10
–1
5 7 = 12
math guide - 34.65
• We can solve systems of equations using Cramer’s rule (with determinants),
Given, 2⋅x+4⋅y+3⋅z = 5 9⋅x+6⋅y+8⋅z = 7 11 ⋅ x + 13 ⋅ y + 10 ⋅ z = 12 Write down the coefficient and parameter matrices,
A =
2 4 3 9 6 8 11 13 10
B =
5 7 12
Calculate the determinant for A (this will be reused), and calculate the determinants for matrices below. Note: when trying to find the first parameter ‘x’ we replace the first column in A with B. 5 4 3 7 6 8 12 13 10 x = ------------------------------ = A 2 5 3 9 7 8 11 12 10 y = ------------------------------ = A 2 4 5 9 6 7 11 13 12 z = ------------------------------ = A
34.5.7 Practice Problems 1. Perform the matrix operations below.
math guide - 34.66
Multiply
ANS.
1 2 3 10 4 5 6 11 = 7 8 9 12 Determinant 12 3 42 6 78 9
1 2 3 10 68 = 4 5 6 11 167 7 8 9 12 266
1 2 3 4 2 6 7 8 9
=
Inverse 12 3 42 6 78 9
1 2 3 4 2 6 7 8 9
–1
=
= 36
–1
=
– 0.833 0.167 0.167 0.167 – 0.333 0.167 0.5 0.167 –0.167
2. Perform the vector operations below, 1 A = 2 3
6 B = 2 1
Cross Product
A×B =
Dot Product
A•B =
ANS. A × B = ( – 4, 17, – 10 ) A • B = 13
4. Solve the following equations using any technique, 5x – 2y + 4z = – 1 6x + 7y + 5z = – 2 2x – 3y + 6z = – 3
ANS. x= 0.273 y= -0.072 z= -0.627
5. Solve the following set of equations using a) Cramer’s rule and b) an inverse matrix. 2x + 3y = 4 5x + 1y = 0
math guide - 34.67
(ans.
a)
2 3 x = 4 5 1 y 0
b)
4 3 0 1 4 x = ---------------- = --------– 13 2 3 5 1
2 4 5 0 – 20 20 y = ---------------- = --------- = -----– 13 13 2 3 5 1
T
x = 2 3 y 5 1
–1
1 –3 1 –( 5 ) 4 – -----– 5 2 – ( 3 ) 2 1- 4 4 = -------------------------------- 4 = ------------------- 4 = – ----= 13 – 13 13 0 0 – 20 20 0 2 3 -----13 5 1
6. Perform the following matrix calculation. Show all work. T
A B C X L + D E F Y M GH I Z N (ans.
T
A B C X L D E F Y + M GH I Z N
T
=
AX + BY + CZ L DX + EY + FZ + M GX + YH + IZ N
AX + BY + CZ + L = DX + EY + FZ + M GX + YH + IZ + N
= AX + BY + CZ + L DX + EY + FZ + M GX + YH + IZ + N 7. Perform the matrix calculations given below. a)
A B C X D E F Y = GH I Z
b)
A B C D E F X Y Z = GH I
T
math guide - 34.68
8. Find the dot product, and the cross product, of the vectors A and B below. x A = y z
(ans.
p B = q r
A • B = xp + yq + zr A×B =
i j k x y z p q r
yr – zq = i ( yr – zq ) + j ( zp – xr ) + k ( xq – yp ) = zp – xr xq – yp
9. Perform the following matrix calculations. a)
a b c
T
b)
d e f g h k mnp
a b c d
c)
a b c d
–1
(ans. a)
b)
a b c
T
d e f d e f = g h k a b c g h k = ( ad + bg + cm ) ( ae + bh + cn ) ( af + bk + cp ) mnp mnp
a b c d
= ad – bc
adj
c) a b c d
–1
a b d –c d - ----------------–c ----------------c d –b a ad – bc ad – bc = ------------------- = ------------------- = ad – bc – b - ----------------a a b ----------------ad – bc ad – bc c d
math guide - 34.69
10. Find the value of ‘x’ for the following system of equations. x + 2y + 3z = 5 x + 4y + 8z = 0 4x + 2y + z = 1
(ans.
12 3 x 5 14 8 y = 0 42 1 z 1 5 2 3 0 4 8 1 2 1 5 ( 4 – 16 ) + 2 ( 8 – 0 ) + 3 ( 0 – 4 ) – 60 + 16 – 12 – 56 x = ------------------ = ---------------------------------------------------------------------------------- = ---------------------------------- = --------- = – 7 1 ( 4 – 16 ) + 2 ( 32 – 1 ) + 3 ( 2 – 16 ) – 12 + 62 – 42 8 1 2 3 1 4 8 4 2 1
11. Perform the matrix calculations given below. a)
A B C X D E F Y = GH I Z
b)
A B C D E F X Y Z = GH I
c)
d)
e)
det A B = C D A B C D A B C D
A
= –1
=
math guide - 34.70
12. Solve the following set of equations with the specified methods. 3x + 5y = 7 4x – 6y = 2
a) Inverse matrix b) Cramer’s rule c) Gauss-Jordan row reduction d) Substitution
34.6 CALCULUS • NOTE: Calculus is very useful when looking at real systems. Many students are turned off by the topic because they "don’t get it". But, the secret to calculus is to remember that there is no single "truth" - it is more a loose collection of tricks and techniques. Each one has to be learned separately, and when needed you must remember it, or know where to look.
34.6.1 Single Variable Functions 34.6.1.1 - Differentiation • The basic principles of differentiation are,
math guide - 34.71
Both u, v and w are functions of x, but this is not shown for brevity. Also note that C is used as a constant, and all angles are in radians.
d----(C) = 0 dx dd ----( Cu ) = ( C ) ------ ( u ) dx dx dd d ----( u + v + … ) = ------ ( u ) + ------ ( v ) + … dx dx dx d- n n–1 d ----( u ) = ( nu ) ------ ( u ) dx dx dd d ----( uv ) = ( u ) ------ ( v ) + ( v ) ------ ( u ) dx dx dx d- u--- v d u- ----d -------- ------ ( u ) – ---= 2 dx 2 dx ( v ) dx v v v dd d d ----( uvw ) = ( uv ) ------ ( w ) + ( uw ) ------ ( v ) + ( vw ) ------ ( u ) dx dx dx dx dd d ----( y ) = ------ ( y ) ------ ( u ) = chain rule dx du dx d1 ----( u ) = -------------dx d----( x) du d----(y) d du ------ ( y ) = -------------dx d----(x) du
• Differentiation rules specific to basic trigonometry and logarithm functions
math guide - 34.72
dd ----( sin u ) = ( cos u ) ------ ( u ) dx dx dd ----( cos u ) = ( – sin u ) ------ ( u ) dx dx d1 2d ----( tan u ) = ----------- ------ ( u ) dx cos u dx d- u u d ----( e ) = ( e ) ------ ( u ) dx dx d1 ----( ln x ) = --dx x
d2 d ----( cot u ) = ( – csc u ) ------ ( u ) dx dx d d----( sec u ) = ( tan u sec u ) ------ ( u ) dx dx dd ----( csc u ) = ( – csc u cot u ) ------ ( u ) dx dx dd ----( sinh u ) = ( cosh u ) ------ ( u ) dx dx dd ----( cosh u ) = ( sinh u ) ------ ( u ) dx dx d2 d ----( tanh u ) = ( sech u ) ------ ( u ) dx dx
• L’Hospital’s rule can be used when evaluating limits that go to infinity.
d- d- 2 --- ---f(x) f( x) dt dt f ( x ) - = … lim ---------- = lim --------------------- = lim ----------------------x → a g(x) x → a d x → a d 2 ---- g ( x ) g ( x ) dt ---dt • Some techniques used for finding derivatives are,
math guide - 34.73
Leibnitz’s Rule, (notice the form is similar to the binomial equation) can be used for finding the derivatives of multiplied functions. d- 0 ----d- n d- 1 ----d- n – 1 d- n ---- ---- n ----( uv ) = ( u ) ( v ) + ( u ) (v) dx dx dx dx 1 dx d n–2 d 0 d- 2 ----n d n n ----( u ) - ( v ) + … + ------ ( u ) ------ ( v ) n dx 2 dx dx dx
34.6.1.2 - Integration • Some basic properties of integrals include,
In the following expressions, u, v, and w are functions of x. in addition to this, C is a constant. and all angles are radians.
∫ C dx
= ax + C
∫ Cf ( x ) dx
= C ∫ f ( x ) dx
∫ ( u + v + w + … ) dx ∫ u dv
=
∫ u dx + ∫ v dx + ∫ w dx + …
= uv – ∫ v du = integration by parts
1 u = Cx = ---- ∫ f ( u ) du C dF(u) ( x ) du = ∫ ----------- du ∫ F ( f ( x ) ) dx = ∫ F ( u ) ----du f' ( x )
∫ f ( Cx ) dx
n+1
x n +C ∫ x dx = ----------n+1 x
x a+C ∫ a dx = ------ln a
1
∫ --x- dx ∫ e dx x
= ln x + C x
= e +C
• Some of the trigonometric integrals are,
u = f(x)
math guide - 34.74
∫ sin x dx
= – cos x + C
∫ cos x dx
= sin x + C
∫ ( sin x )
2
∫ ( cos x )
3x sin 2x sin 4x dx = ------ + ------------- + ------------- + C 8 4 32 n+1 ( sin x ) n +C ∫ cos x ( sin x ) dx = -----------------------n+1
∫ ( cos x )
4
sin x cos x + x dx = – ------------------------------- + C 2
∫ sinh x dx
= cosh x + C
sin x cos x + x dx = ------------------------------- + C 2
∫ cosh x dx
= sinh x + C
∫ tanh x dx
= ln ( cosh x ) + C
2
2
cos x ( ( sin x ) + 2 )3 +C ∫ ( sin x ) dx = – ------------------------------------------3 2
sin x ( ( cos x ) + 2 )+C ∫ ( cos x ) dx = ------------------------------------------3 3
∫ x cos ( ax ) dx
cos ( ax -) --x= -----------------+ sin ( ax ) + C 2 a a 2 2
2 2x cos ( ax -) ------------------a x –2 + sin ( ax ) + C ∫ x cos ( ax ) dx = ------------------------2 3 a a
• Some other integrals of use that are basically functions of x are,
math guide - 34.75
n+1
x n -+C ∫ x dx = ----------n+1
∫ ( a + bx )
–1
ln a + bx dx = ----------------------- + C b
2 –1 1 a + 2 –b ( a + bx ) dx = ---------------------- ln --------------------------- + C, a > 0, b < 0 ∫ 2 ( – b )a a – x –b 2
ln ( bx + a -) +C ∫ x ( a + bx ) dx = --------------------------2b 2 –1
∫x
2
∫ (a
x a x ab 2 –1 ( a + bx ) dx = --- – ------------- atan ------------- + C b b ab a 2
1 a+x 2 –1 2 2 – x ) dx = ------ ln ------------ + C, a > x 2a a–x
∫ ( a + bx ) ∫ x(x
2
–1
2
2 a + bx dx = ---------------------- + C b
1 – --2
± a ) dx =
2
CORRECT??
2
x ±a +C
2 –1 1 ( a + bx + cx ) dx = ------ ln ∫ c
2 b a + bx + cx + x c + ---------- + C, c > 0 2 c
2 –1 1 – 2cx – b ( a + bx + cx ) dx = ---------- asin ------------------------- + C, c < 0 ∫ 2 –c b – 4ac
math guide - 34.76
1 --2
3 ---
1--2
3---
22 ( a + bx ) ∫ ( a + bx ) dx = ----3b 22 ( a + bx ) ∫ ( a + bx ) dx = ----3b
∫ x ( a + bx )
1 --2
3 --2
2 ( 2a – 3bx ) ( a + bx ) dx = – ---------------------------------------------------2 15b 1
--- 2 2 1 ln x + ----2- + x 1 --a 2 2 2 1--x ( 1 + a x ) + --------------------------------------------2 2 2 a ∫ ( 1 + a x ) dx = ---------------------------------------------------------------------------------2 3--2 2
1 a ----2- + x a --------------------------( + x ) d x x 1 a = ∫ 3 1 --2 2 2
1
--- 1 2 2 ----3 1 1 ln x + 2 + x ------a ax 18 2 2 2 2 2 2 2 2 2 ---------------------------------------------------------( 1 + a x ) d x = + x – x ( 1 + a x ) – x ∫ 2 2 3 4 a 8a 8a 1--2 2 2
1---
1--asin ( ax ) 2 2 2 ( – x ) d x = x ( 1 – a x ) + --------------------1 a ∫ 2 a 1--2 2 2
3---
1 --2 2
3 ---
a 1 2 2 ∫ x ( 1 – a x ) dx = – --3- a----2- – x 1 ---
x- 2 2 2 1--x 2 2 2 2 -x ( a – x ) d x – ( – x ) x ( a – x ) + a asin --- = a + ∫ 8 4 a 2
2
1 – --2
1 ---
1 1 2 2 ∫ ( 1 + a x ) dx = --a- ln x + a----2- + x 2 2
∫(1 – a
1 – --2
1 1 x ) dx = --- asin ( ax ) = – --- acos ( ax ) a a
2 2
math guide - 34.77
• Integrals using the natural logarithm base ‘e’,
ax
ax e +C ∫ e dx = -----a ax
e ( ax – 1 ) + C ∫ xe dx = -----2 a ax
34.6.2 Vector Calculus • When dealing with large and/or time varying objects or phenomenon we must be able to describe the state at locations, and as a whole. To do this vectors are a very useful tool. • Consider a basic function and how it may be represented with partial derivatives.
math guide - 34.78
y = f ( x, y, z ) We can write this in differential form, but the right hand side must contain partial derivatives. If we separate the operators from the function, we get a simpler form. We can then look at them as the result of a dot product, and divide it into two vectors. ∂ ∂ ∂ ( d )y = f ( x, y, z ) dx + f ( x, y, z ) dy + f ( x, y, z ) dz ∂x ∂y ∂z ∂ ∂ ∂ ( d )y = dx + dy + dz f ( x, y, z ) ∂x ∂y ∂z ∂ ∂ ∂ ( d )y = i + j + k • ( dxi + dyj + dzk ) f ( x, y, z ) ∂x ∂y ∂z We then replace these vectors with the operators below. In this form we can manipulate the equation easily (whereas the previous form was very awkward). ( d )y = [ ∇ • dX ]f ( x, y, z ) ( d )y = ∇f ( x, y, z ) • dX ( d )y = ∇f ( x, y, z ) dX cos θ In summary, ∇ =
∂ ∂ ∂ i+ j+ k ∂x ∂y ∂z
F = F x i + F y j + Fz k
∇ • F = the divergence of function F ∇ × F = the curl of function F
• Gauss’s or Green’s or divergence theorem is given below. Both sides give the flux across a surface, or out of a volume. This is very useful for dealing with magnetic fields.
∫ ( ∇ • F ) dV V
=
°∫ FdA A
where, V, A = a volume V enclosed by a surface area A F = a field or vector value over a volume
math guide - 34.79
• Stoke’s theorem is given below. Both sides give the flux across a surface, or out of a volume. This is very useful for dealing with magnetic fields.
∫ ( ∇ × F ) dA
=
A
°∫ FdL L
where, A, L = A surface area A, with a bounding parimeter of length L F = a field or vector value over a volume
34.6.3 Differential Equations • Solving differential equations is not very challenging, but there are a number of forms that need to be remembered. • Another complication that often occurs is that the solution of the equations may vary depending upon boundary or initial conditions. An example of this is a mass spring combination. If they are initially at rest then they will stay at rest, but if there is some disturbance, then they will oscillate indefinitely. • We can judge the order of these equations by the highest order derivative in the equation. • Note: These equations are typically shown with derivatives only, when integrals occur they are typically eliminated by taking derivatives of the entire equation. • Some of the terms used when describing differential equations are, ordinary differential equations - if all the derivatives are of a single variable. In the example below ’x’ is the variable with derivatives.
e.g.,
d d- 2 ---x + ----- x = y dt dt
first-order differential equations - have only first-order derivatives,
e.g.,
d- d- --- --- dt x + dt y = 2
math guide - 34.80
second-order differential equations - have at least on second derivative, 2
d d- ---x + ----- y = 2 dt dt
e.g.,
higher order differential equations - have at least one derivative that is higher than second-order. partial differential equations - these equations have partial derivatives • Note: when solving these equations it is common to hit blocks. In these cases backtrack and try another approach. • linearity of a differential equation is determined by looking at the dependant variables in the equation. The equation is linear if they appear with an exponent other than 1.
eg.
y'' + y' + 2 = 5x 2
( y'' ) + y' + 2 = 5x 3
linear non-linear
y'' + ( y' ) + 2 = 5x
non-linear
y'' + sin ( y' ) + 2 = 5x
non-linear
34.6.3.1 - First-order Differential Equations • These systems tend to have a relaxed or passive nature in real applications. • Examples of these equations are given below,
2
3
y' + 2xy – 4x = 0 y' – 2y = 0
• Typical methods for solving these equations include, guessing then testing separation
math guide - 34.81
homogeneous 34.6.3.1.1 - Guessing • In this technique we guess at a function that will satisfy the equation, and test it to see if it works.
y' + y = 0 y = Ce
the given equation
–t
the guess
now try to substitute into the equation y' = –Ce
–t –t
y' + y = – Ce + Ce
–t
= 0
therefore the guess worked - it is correct y = Ce
–t
• The previous example showed a general solution (i.e., the value of ’C’ was not found). We can also find a particular solution.
y = Ce y = 5e
–t
–t
a general solution a particular solution
34.6.3.1.2 - Separable Equations • In a separable equation the differential can be split so that it is on both sides of the equation. We then integrate to get the solution. This typically means there is only a single derivative term.
math guide - 34.82
e.g.,
dx ------ + y 2 + 2y + 3 = 0 dy 2
∴dx = ( – y – 2y – 3 )dy 3
–y 2 ∴x = -------- – y – 3y + C 3 e.g.,
dx ------ + x = 0 dy 1 ∴ – --- dx = dy x ∴ ln ( – x ) = y
34.6.3.1.3 - Homogeneous Equations and Substitution • These techniques depend upon finding some combination of the variables in the equation that can be replaced with another variable to simplify the equation. This technique requires a bit of guessing about what to substitute for, and when it is to be applied.
math guide - 34.83
e.g.,
dy ------ = y-- – 1 dx x
the equation given
y u = -x
the substitution chosen
Put the substitution in and solve the differential equation, dy ------ = u – 1 dx du ∴u + x ------ = u – 1 dx du –1 ∴------ = -----dx x du 1 ∴– ------ = --dx x ∴– u = ln ( x ) + C Substitute the results back into the original substitution equation to get rid of ’u’, y – -- = ln ( x ) + C x ∴y = – x ln ( x ) – Cx
34.6.3.2 - Second-order Differential Equations • These equations have at least one second-order derivative. • In engineering we will encounter a number of forms, - homogeneous - nonhomogeneous 34.6.3.2.1 - Linear Homogeneous • These equations will have a standard form,
math guide - 34.84
d- 2 d- --- ---y + A dt dt y + By = 0
• An example of a solution is,
e.g.,
d- 2 d- --- --- dt y + 6 dt y + 3y = 0 Guess, y = e
Bt
d- Bt --- dt y = Be 2
d- 2 Bt --- dt y = B e substitute and solve for B, 2 Bt
Bt
B e + 6Be + 3e
Bt
= 0
2
B + 6B + 3 = 0 B = – 3 + 2.449j, – 3 – 2.449j substitute and solve for B, y = e y = e y = e
( – 3 + 2.449j )t – 3 t 2.449jt
e
–3 t
( cos ( 2.449t ) + j sin ( 2.449t ) )
Note: if both the roots are the same, y = C1e
Bt
+ C 2 te
Bt
34.6.3.2.2 - Nonhomogeneous Linear Equations • These equations have the general form,
math guide - 34.85
d- 2 d- --- ---y + A dt dt y + By = Cx
• to solve these equations we need to find the homogeneous and particular solutions and then add the two solutions.
y = yh + yp to find yh solve, d- 2 d --- --- dt y + A dt y + B = 0 to find yp guess at a value of y and then test for validity, A good table of guesses is, Cx form
Guess
A
C
Ax + B Ax e
Cx + D Ax Ax Ce Cxe
B sin ( Ax )
or B cos ( Ax )
• Consider the example below,
C sin ( Ax ) + D cos ( Ax ) or Cx sin ( Ax ) + xD cos ( Ax )
math guide - 34.86
d- 2 d- – 2x --- ---y + y – 6y = e dt dt First solve for the homogeneous part, d- 2 d- --- --- dt y + dt y – 6y = 0
try
y = e
Bx
d- Bx ---= Be y dt 2
d- 2 Bx ---y = B e dt 2 Bx
B e
+ Be
Bx
– 6e
Bx
= 0
2
B +B–6 = 0 B = – 3, 2 yh = e
– 3x
+e
2x
Next, solve for the particular part. We will guess the function below. y = Ce
– 2x
d- – 2x ---y = – 2C e dt 2
d- – 2x --- dt y = 4Ce 4Ce
– 2x
+ – 2C e
– 2x
– 6Ce
– 2x
= e
– 2x
4C – 2C – 6C = 1 C = 0.25 y p = 0.25e
– 2x
Finally, y = e
– 3x
+e
2x
+ 0.25e
– 2x
34.6.3.3 - Higher Order Differential Equations
34.6.3.4 - Partial Differential Equations • Partial difference equations become critical with many engineering applications involving flows, etc.
math guide - 34.87
34.6.4 Other Calculus Stuff • The Taylor series expansion can be used to find polynomial approximations of functions.
(n – 1)
2
n–1
f f'' ( a ) ( x – a ) ( a)(x – a) f ( x ) = f ( a ) + f' ( a ) ( x – a ) + ------------------------------- + … + -----------------------------------------------2! ( n – 1 )!
34.6.5 Practice Problems 1. Find the derivative of the function below with respect to time. 3t ------------------ + e 2t 2 (2 + t)
(ans. d 3t d- d –2 2t –2 –3 2t ----- ------------------ + e 2t = ---( 3t ( 2 + t ) ) + ----- ( e ) = 3 ( 2 + t ) – 6t ( 2 + t ) + 2e 2 dt dt dt (2 + t) 2. Solve the following differential equation, given the initial conditions at t=0s. x'' + 4x' + 4x = 5t
x0 = 0
x' 0 = 0
math guide - 34.88
(ans.
homogeneous solution: guess:
x'' + 4x' + 4x = 0
xh = e
At
x h' = Ae
2 At
At
A e + 4Ae + 4e xh = C1 e
– 2t
+ C 2 te
At
At
2 At
x h'' = A e 2
= 0 = A + 4A + 4 = ( A + 2 ) ( A + 2 )
– 2t
particular solution: guess: x p = At + B
x p' = A
x p'' = 0
( 0 ) + 4 ( A ) + 4 ( At + B ) = 5t ( 4A + 4B ) + ( 4A )t = ( 0 ) + ( 5 )t 5 A = --- = 1.25 4 x p = 1.25t – 1.25 combine and solve for constants: x ( t ) = xh + xp = C1 e for x(0) = 0
– 2t
0 = C1 e
for (d/dt)x(0) = 0
4 ( 1.25 ) + 4B = 0
+ C 2 te –2 ( 0 )
– 2t
+ 1.25t – 1.25
+ C 2 ( 0 )e
0 = ( – 2 )C 1 e
–2 ( 0 )
–2 ( 0 )
+ 1.25 ( 0 ) – 1.25 = C 1 – 1.25 C 1 = 1.25
+ ( – 2 )C 2 ( 0 )e
– 2 C 1 + C 2 + 1.25 = 0 = –2 ( 1.25 ) + C 2 + 1.25 2t
2t
x ( t ) = 1.25e + 1.25te + 1.25t – 1.25 3. Find the following derivatives. d a) ----- ( sin t + cos t ) dt d –2 b) ----- ( ( t + 2 ) ) dt d 8t c) ----- ( 5te ) dt d d) ----- ( 5 ln t ) dt
B = – 1.25
–2( 0)
+ C2 e
–2 ( 0 )
+ 1.25
C 2 = 1.25
math guide - 34.89
(ans. d d d a) ----- ( sin t + cos t ) = ----- ( sin t ) + ----- ( cos t ) = cos t – sin t dt dt dt d –2 –3 b) ----- ( ( t + 2 ) ) = –2 ( t + 2 ) dt d 8t 8t 8t c) ----- ( 5te ) = 5e + 40te dt d 5 d) ----- ( 5 ln t ) = --dt t 4. Find the following integrals
∫ 6 t dt 7t b) ∫ 14 e dt c) ∫ sin ( 0.5t ) dt 2
a)
d)
5
∫ --x- dx
(ans. 3
t 3 a) ∫ 6 t dt = 6 ---- = 2t + C 3 2
7t
e 7t 7t b) ∫ 14 e dt = 14 ------ + C = 2e + C 7 c)
∫ sin ( 0.5t ) dt
d)
∫ --x- dx
5
– cos ( 0.5t ) = -------------------------- + C = – 2 cos ( 0.5t ) + C 0.5
= 5 ln ( x ) + C
5. Find the following derivative. d4t –3 ---( 5te + ( t + 4 ) ) dt
math guide - 34.90
6. Find the following derivatives. a)
1 - d- --------------dx x + 1
b)
d- –t ---( e sin ( 2t – 4 ) ) dt
(ans. a)
d- ----------1 - –1 ----= ------------------2 dx x + 1 (x + 1)
b)
d ----- ( e –t sin ( 2t – 4 ) ) = – e –t sin ( 2t – 4 ) + 2e –t cos ( 2t – 4 ) dt
7. Solve the following integrals. a)
b)
(ans.
∫e
2t
dt
∫ ( sin θ + cos 3θ ) dθ
a)
∫e
b)
∫ ( sin θ + cos 3θ ) dθ
2t
2t
dt = 0.5e + C 1 = – cos θ + --- sin 3θ + C 3
8. Solve the following differential equation. x'' + 5x' + 3x = 3
x( 0) = 1 x' ( 0 ) = 1
math guide - 34.91
(ans.
x( 0) = 1
x'' + 5x' + 3x = 3
x' ( 0 ) = 1
Homogeneous: 2
A + 5A + 4 = 0 – 5 ± 25 – 16 –5±3 A = ------------------------------------ = ---------------- = – 4, – 1 2 2 xh = C1 e
– 4t
+ C2e
–t
Particular: xp = A
x'p = 0
x'' p = 0
0 + 5 ( 0 ) + 3A = 3
A = 1
xp = 1 Initial values: x = x h + xp = C1 e
– 4t
–t
+ C2 e + 1
1 = C1( 1 ) + C2( 1 ) + 1 x' = – 4C 1 e
– 4t
– C2e
–t
1 = – 4C 1 ( 1 ) – C 2 ( 1 ) 4 ( – C2 ) + C2 = –1 1 – 4t 1 –t x = – --- e + --- e + 1 3 3
C1 = –C2
1 C 2 = --3 1 C 1 = – --3
9. Set up an integral and solve it to find the volume inside the shape below. The shape is basically a cone with the top cut off.
math guide - 34.92
z
y
b x a
(ans.
V =
∫
c
a
dV =
∫0 A dx
c–b r = b + ----------- x a 2
2
c–b c–b c–b 2 2 2 A = πr = π b + ----------- x = πb + 2π ----------- x + π ----------- x a a a a
V =
2
c–b 2 2 c – b- x + π ----------- x dx ∫0 πb + 2π ---------a a
c–b 2 π c–b 3 V = πb x + π ----------- x + --- ----------- x 3 a a 2
2
a
0
c–b 2 π c–b 2 3 2 V = πb a + π ----------- a + --- ----------- a a 3 a π 2 2 2 V = πb a + π ( c – b )a + --- ( c – b ) a 3 10. Solve the first order non-homogeneous differential equation below. Assume the system starts at rest. 2x' + 4x = 5 sin 4t 11. Solve the second order non-homogeneous differential equation below. 2x'' + 4x' + 2x = 5
where,
x( 0) = 2 x' ( 0 ) = 0
math guide - 34.93
34.7 NUMERICAL METHODS • These techniques approximate system responses without doing integrations, etc.
34.7.1 Approximation of Integrals and Derivatives from Sampled Data • This form of integration is done numerically - this means by doing repeated calculations to solve the equation. Numerical techniques are not as elegant as solving differential equations, and will result in small errors. But these techniques make it possible to solve complex problems much faster. • This method uses forward/backward differences to estimate derivatives or integrals from measured data.
y(t) yi + 1 yi yi – 1
ti – 1
T
ti
T
ti + 1
ti
T i + y i – 1 y-------------------( ) ≈ y t ∫ti – 1 i 2 - ( ti – ti – 1 ) = --2- ( y i + yi – 1 ) y i – y i – 1 y i + 1 – y i d---- = -------------------- = --1- ( y i – y i – 1 ) = --1- ( y i + 1 – y i ) y ( t i ) ≈ ------------------- ti – ti – 1 t i + 1 – ti dt T T 1 --1- ( y i + 1 – y i ) – --- ( y i – y i – 1 ) –2 yi + yi – 1 + y i + 1 d- T T ---------------------------------------------------------------------------------------------------------------≈ y ( t ) = i 2 dt T T 2
math guide - 34.94
34.7.2 Euler First-order Integration • We can also estimate the change resulting from a derivative using Euler’s equation for a first-order difference equation. d y ( t + h ) ≈ y ( t ) + h ----- y ( t ) dt
34.7.3 Taylor Series Integration • Recall the basic Taylor series,
1 2 d 2 d 1 3 d 3 1 4 d 4 x ( t + h ) = x ( t ) + h ----- x ( t ) + ----- h ----- x ( t ) + ----- h ----- x ( t ) + ----- h ----- x ( t ) + … dt 2! dt 3! dt 4! dt
• When h=0 this is called a MacLaurin series. • We can integrate a function by,
d- ---= 0 dt x 0
d- 2 3 ---x = 1+x +t dt
x0 = 0 t (s)
x(t)
d/dt x(t)
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
0
0
h = 0.1
math guide - 34.95
34.7.4 Runge-Kutta Integration • The equations below are for calculating a fourth order Runge-Kutta integration.
1 x ( t + h ) = x ( t ) + --- ( F 1 + 2F 2 + 2F 3 + F4 ) 6 F 1 = hf ( t, x ) F1 h F 2 = hf t + ---, x + ------ 2 2 F2 h F 3 = hf t + ---, x + ------ 2 2 F 4 = hf ( t + h, x + F 3 ) where, x = the state variables f = the differential function t = current point in time h = the time step to the next integration point
34.7.5 Newton-Raphson to Find Roots • When given an equation where an algebraic solution is not feasible, a numerical solution may be required. One simple technique uses an instantaneous slope of the function, and takes iterative steps towards a solution.
f ( xi ) x i + 1 = x i – ----------------------d ----f ( x ) dx i • The function f(x) is supplied by the user.
math guide - 34.96
• This method can become divergent if the function has an inflection point near the root. • The technique is also sensitive to the initial guess. • This calculation should be repeated until the final solution is found.
34.8 LAPLACE TRANSFORMS • The Laplace transform allows us to reverse time. And, as you recall from before the inverse of time is frequency. Because we are normally concerned with response, the Laplace transform is much more useful in system analysis. • The basic Laplace transform equations is shown below,
F(s) =
∞
∫0 f ( t )e
– st
dt
where, f ( t ) = the function in terms of time t F ( s ) = the function in terms of the Laplace s
34.8.1 Laplace Transform Tables • Basic Laplace Transforms for operational transformations are given below,
math guide - 34.97
TIME DOMAIN
FREQUENCY DOMAIN
Kf ( t )
Kf ( s )
f1 ( t ) + f2 ( t ) –f3 ( t ) + … df (t) ----------dt
f1 ( s ) + f2 ( s ) –f 3 ( s ) + … –
sf ( s ) – f ( 0 )
2
–
d------------f ( t )2 dt
df ( 0 ) 2 – s f ( s ) – sf ( 0 ) – -----------------dt
n
f ( t )d------------n dt
n
s f( s) – s
t
∫0 f ( t ) dt
f-------( s -) s
f ( t – a )u ( t – a ), a > 0
e
e
– at
f(t)
f ( at ), a > 0 tf ( t ) n
t f(t) f------( t )t
– as
n–1
–
f(0 ) – s
n – 2 df ( 0
–
f( s)
f(s – a) 1 s --- f --a a –-------------df ( s )ds n
f ( s -) ( – 1 ) -------------n ds nd
n
–
f ( 0 )-----------------)- – … – d------------------n dt dt
∞
∫ f ( u ) du s
• A set of useful functional Laplace transforms are given below,
math guide - 34.98
TIME DOMAIN
A --s
A
1 ---2 s 1---------s+a
t e
– at
ω ----------------2 2 s +ω s ----------------2 2 s +ω
sin ( ωt ) cos ( ωt ) te e e
FREQUENCY DOMAIN
– at
– at
– at
Ae
sin ( ωt ) cos ( ωt )
– at
Ate
2
2
2
2
(s + a) + ω s+a ------------------------------(s + a) + ω
A---------s–a
– at
2Ae
1 ------------------2 (s + a) ω -------------------------------
– αt
2t A e
A ----------------2 (s – a) cos ( βt + θ )
– αt
cos ( βt + θ )
complex conjugate
A A ----------------------+ -------------------------------------s + α + βj s + α – βj complex conjugate
A A ------------------------------ + ------------------------------------2 2 ( s + α – βj ) ( s + α + βj )
• Laplace transforms can be used to solve differential equations.
math guide - 34.99
34.9 z-TRANSFORMS • For a discrete-time signal x [ n ] , the two-sided z-transform is defined by ∞
X(z) =
∑
∞ –n
x [ n ]z . The one-sided z-transform is defined by X ( z ) =
n = –∞
∑ x [ n ]z
–n
. In
n=0
both cases, the z-transform is a polynomial in the complex variable z . • The inverse z-transform is obtained by contour integration in the complex plane n–1 1 dz . This is usually avoided by partial fraction inversion techx [ n ] = -------- ∫ X ( z )z j2π° niques, similar to the Laplace transform. • Along with a z-transform we associate its region of convergence (or ROC). These are the values of z for which X ( z ) is bounded (i.e., of finite magnitude).
math guide - 34.100
• Some common z-transforms are shown below. Table 1: Common z-transforms Signal x[ n]
z-Transform X(z)
ROC
δ[n]
1
All z
u[n]
1 --------------–1 1–z
z >1
nu [ n ]
z ---------------------–1 2 (1 – z )
–1
–1
2
n u[n ]
n
a u[n ]
z >1
–1
( 1 + z )z---------------------------–1 3 (1 – z )
z >1
1 -----------------–1 1 – az
z > a
–1
n
na u [ n ]
n
( – a )u [ – n – 1 ]
az -------------------------–1 2 ( 1 – az )
z > a
1 -----------------–1 1 – az
z < a
–1
( – na )u [ – n – 1 ]
az -------------------------–1 2 ( 1 – az )
cos ( ω 0 n ) u [ n ]
1 – z cos ω 0 -----------------------------------------------–1 –2 1 – 2z cos ω 0 + z
sin ( ω 0 n ) u [ n ]
z sin ω 0 -----------------------------------------------–1 –2 1 – 2z cos ω 0 + z
n
z < a
–1
z >1
–1
z >1
–1
n
a cos ( ω 0 n ) u [ n ]
1 – az cos ω 0 --------------------------------------------------------–1 2 –2 1 – 2az cos ω 0 + a z
z > a
math guide - 34.101
Table 1: Common z-transforms Signal x[ n]
z-Transform X(z)
a sin ( ω 0 n ) u [ n ]
az sin ω 0 --------------------------------------------------------–1 2 –2 1 – 2az cos ω 0 + a z
n! ---------------------u[n] k! ( n – k )!
z ----------------------------–1 k + 1 (1 – z )
ROC
–1
n
z > a
–k
z >1
• The z-transform also has various properties that are useful. The table below lists properties for the two-sided z-transform. The one-sided z-transform properties can be derived from the ones below by considering the signal x [ n ]u [ n ] instead of simply x [ n ] . Table 2: Two-sided z-Transform Properties Property Notation
Linearity
Time Domain
z-Domain
x[ n] x1 [ n ]
X(z) X1 ( z )
x2 [ n ]
X2 ( z )
αx 1 [ n ] + βx 2 [ n ]
αX 1 ( z ) + βX 2 ( z )
ROC r2 < z < r 1 ROC 1 ROC 2 At least the intersection of ROC 1 and ROC 2
Time Shifting
x[ n – k]
z-Domain Scaling
a x[ n]
X(a z)
Time Reversal
x [ –n ]
z-Domain Differentiation
nx [ n ]
n
–k
z X( z)
That of X ( z ) , except z = 0 if k > 0 and z = ∞ if k < 0
–1
a r2 < z < a r1
X(z )
–1
1 1 ---< z < ---r2 r1
dX ( z ) – z -------------dz
r2 < z < r 1
math guide - 34.102
Table 2: Two-sided z-Transform Properties Property Convolution
Time Domain x 1 [ n ]*x 2 [ n ]
z-Domain
ROC
X 1 ( z )X 2 ( z )
At least the intersection of ROC 1 and ROC 2
Multiplication
x 1 [ n ]x 2 [ n ]
1z –1 ------X 1 ( v )X 2 -- v dv ∫ v j2π°
Initial value theorem
x [ n ] causal
x [ 0 ] = lim X ( z )
At least r 1l r 2l < z < r 1u r 2u
z→∞
34.10 FOURIER SERIES • These series describe functions by their frequency spectrum content. For example a square wave can be approximated with a sum of a series of sine waves with varying magnitudes. • The basic definition of the Fourier series is given below.
a0 f ( x ) = ----- + 2
∞
∑
nπx nπx a n cos --------- + b n sin --------- L L
n=1
1 L nπx a n = --- ∫ f ( x ) cos --------- dx L –L L
1 L nπx b n = --- ∫ f ( x ) sin --------- dx L –L L
34.11 TOPICS NOT COVERED (YET) • To ensure that the omissions are obvious, I provide a list of topics not covered below. Some of these may be added later if their need becomes obvious. • Frequency domain - Fourier, Bessel
math guide - 34.103
34.12 REFERENCES/BIBLIOGRAPHY Spiegel, M. R., Mathematical Handbook of Formulas and Tables, Schaum’s Outline Series, McGraw-Hill Book Company, 1968.
C programming - 35.1
35. A BASIC INTRODUCTION TO ‘C’
35.1 WHY USE ‘C’?
• ‘C’ is commonly used to produce operating systems and commercial software. Some examples of these are UNIX, Lotus-123, dBase, and some ‘C’ compilers.
• Machine Portable, which means that it requires only small changes to run on other computers.
• Very Fast, almost as fast as assembler.
• Emphasizes structured programming, by focusing on functions and subroutines.
• You may easily customize ’C’ to your own needs.
• Suited to Large and Complex Programs.
C programming - 35.2
• Very Flexible, allows you to create your own functions.
35.2 BACKGROUND
• Developed at Bell Laboratories in the Early 70’s, and commercial compilers became available in the Late 70’s.Recnetly has become more popular because of its ties to UNIX. Over 90% of UNIX is written in ‘C’. AT&T originally developed ‘C’ with the intention of making it an in-house standard.
35.3 PROGRAM PARTS
• /* is the start of a comment.
• */ is the end of comment.
• The main program is treated like a function, and thus it has the name main().
• lower/UPPER case is crucial, and can never be ignored.
C programming - 35.3
• Statements are separated by semi-colons ‘;’
• Statements consist of one operation, or a set of statements between curly brackets {, }
• There are no line numbers.
Program to Add two Numbers: /* A simple program to add two numbers and print the results */ main() { int x, y = 2, z; /* define three variables and give one a value */ x = 3; /* give another variable a value */ z = x + y; /* add the two variables */ printf(“%d + %d = %d\n”, x, y, z); /*print the results */ } Results (output):
• lines may be of any length.
• A very common function in ‘C’ is printf(). This function will do a formatted print. The format is the first thing which appears between the brackets. In this case the format says print an integer %d followed by a space then a ‘+’ then another space, another integer, another space, ‘=’, and another space, another integer, then a line feed ‘\n’. All variables that follow the format statement are those to be printed. x, y, and z are the three integers to be printed, in their respective orders.
C programming - 35.4
• Major Data Types for variables and functions are (for IBM PC): int (2 byte integer), short (1 byte integer), long (4 byte integer), char (1 byte integer), float (4 byte IEEE floating point standard), double (8 byte IEEE floating point standard).
•int, short, long, char can be modified by the addition of unsigned, and register. An unsigned integer will not use 1 bit for number sign. A register variable will use a data register in the microprocessor, if possible, and it will speed things up (this is only available for integers).
Example of Defining Different Data Types: main() { unsigned int i; register j; short k; char l; double m; etc
• A function consists of a sub-routine or program, which has been assigned a name. This function is capable of accepting an argument list, and returning a single value. The function must be defined before it is called from within the program. (e.g. sin() and read()).
C programming - 35.5
Program to add numbers with a function: /* A simple program to add two numbers and print the results */ int add(); /* Declare a integer function called ‘add’ */ main() { int x = 3, y = 2, z; /* define three variables and give values */ z = add(x, y); /* pass the two values to ‘add’ and get the sum*/ printf(“%d + %d = %d\n”, x, y, z); /*print the results */ } int add(a, b) /* define function and variable list */ int a, b; /* describe types of variable lists */ { int c; /* define a work integer */ c = a + b; /* add the numbers */ return(c); /* Return the number to the calling program */
• Every variable has a scope. This determines which functions are able to use that variable. If a variable is global, then it may be used by any function. These can be modified by the addition of static, extern and auto. If a variable is defined in a function, then it will be local to that function, and is not used by any other function. If the variable needs to be initialized every time the subroutine is called, this is an auto type. static variables can be used for a variable that must keep the value it had the last time the function was called. Using extern will allow the variable types from other parts of the program to be used in a function.
C programming - 35.6
Program example using global variables: /* A simple program to add two numbers and print the results */ int x = 3, /* Define global x and y values */ y = 2, add(); /* Declare an integer function called ‘add’ */ main() { printf(“%d + %d = %d\n”, x, y, add()); /*print the results */ } int add() /* define function */ { return(x + y); /* Return the sumto the calling program */
• Other variable types of variables are union, enum, struct, etc.
• Some basic control flow statements are while(), do-while(), for(), switch(), and if(). A couple of example programs are given below which demonstrate all the ’C’ flow statements.
Program example with a for loop: /* A simple program toprint numbers from 1 to 5*/ main() { int i; for(i = 1; i <= 5; i = i + 1){ printf(“number %d \n”, i); /*print the number */ } }
C programming - 35.7
or example with a while loop: main() { int i = 1; while(i <= 5){ printf(“number %d \n”, i); i = i + 1; } } or example with a do while loop main() { int i = 1; do{ printf(“number %d \n”, i); i = i + 1; }while(i <= 5) } or example with a do until loop: main() { int i = 1; do{ printf(“number %d \n”, i); i = i + 1; }until(i > 5) }
C programming - 35.8
Example Program with an if else: main() { int x = 2, y = 3; if(x > y){ printf(“Maximum is %d \n”, x); } else if(y > x){ printf(“Maximum is %d \n”, y); } else { printf(“Both values are %d \n”, x); } }
Example Program using switch-case: main() { int x = 3; /* Number of People in Family */ switch(x){ /* choose the numerical switch */ case 0: /* Nobody */ printf(“There is no family \n”); break; case 1: /* Only one person, but a start */ printf(“There is one parent\n”); break; case 2: /* You need two to start something */ printf(“There are two parents\n”); break; default: /* critical mass */ printf(“There are two parents and %d kids\n”, x-2); break; } }
C programming - 35.9
• #include will insert the file named filename.h into the program. The *.h extension is used to indicate a header file which contains ‘C’ code to define functions and constants. This almost always includes “stdio.h”. As we saw before, a function must be defined (as with the ‘add’ function). We did not define printf() before we used it, this is normally done by using #include <stdio.h> at the top of your programs. “stdio.h” contains a line which says ‘int printf();’. If we needed to use a math function like y = sin(x) we would have to also use #include <math.h>, or else the compiler would not know what type of value that sin() is supposed to return.
•#define CONSTANT TEXT will do a direct replacement of CONSTANT in the program with TEXT, before compilation. #undef CONSTANT will undefine the CONSTANT.
A Sample Program to Print Some sin() values (using defined constatnts) #include “stdio.h” #include “math.h” #define TWO_PI 6.283185307 #define STEPS 5 main() { double x; /* Current x value*/ for(x = 0.0; x <= TWO_PI; x = x + (TWO_PI / STEPS)){ printf(“%f = sin(%f) \n”, sin(x), x); } }
• #ifdef, #ifndef, #if, #else and #else can be used to conditionally include parts of a program. This is use for including and eliminating debugging lines in a program.
• #define, #include, #ifdef, #ifndef, #if, #else, /* and */ are all handled by the Preprocessor, before the compiler touches the program.
C programming - 35.10
• Matrices are defined as shown in the example. In ‘C’ there are no limits to the matrix size, or dimensions. Arrays may be any data type. Strings are stored as arrays of characters.
• i++ is the same as i = i + 1.
A Sample Program to Get a String Then Print its ASCII Values (with matrix) #include “stdio.h” #define STRING_LENGTH 5 main() { int i; char string[STRING_LENGTH]; /* character array */ gets(string); /* Input string from keyboard */ for(i = 0; i < STRING_LENGTH; i++){ printf(“pos %d, char %c, ASCII %d \n”, i, string[i], string[i]); } } INPUT: HUGH OUTPUT: pos 0, char H, ASCII 72 pos 0, char U, ASCII 85 pos 0, char G, ASCII 71 pos 0, char H, ASCII 72 pos 0, char , ASCII 0
C programming - 35.11
• Pointers are a very unique feature of ‘C’. First recall that each variable uses a real location in memory. The computer remembers where the location of that variable is, this memory of location is called a pointer. This pointer is always hidden from the programmer, and uses it only in the background. In ‘C’, the pointer to a variable may be used. We may use some of the operations of ‘C’ to get the variable that the pointer, points to. This allows us to deal with variables in a very powerful way.
A Sample Program to Get a String Then Print its ASCII Values (with pointers): #include “stdio.h” main() { int i; char *string; /* character pointer */ gets(string); /* Input string from keyboard */ for(i = 0; string[i] != 0; i++){ printf(“ pos %d, char %c, ASCII %d \n”, i, string[i], string[i]); } } INPUT: HUGH OUTPUT: pos 0, char H, ASCII 72 pos 0, char U, ASCII 85 pos 0, char G, ASCII 71 pos 0, char H, ASCII 72
35.4 HOW A ‘C’ COMPILER WORKS
• A ‘C’ compiler has three basic components: Preprocessor, First and Second Pass
C programming - 35.12
Compiler, and Linker.
Source code “filename.c”
The Preprocessor
#include files (like “stdio.h”)
Will remove comments, replace strings which have a defined value, include programs, and remove unneeded characters.
ASCII Text Code The First and Second Pass The compiler will parse the program and check the syntax. TheSecond Pass produces some simple machine language, which performs the basic functions of the program.
Object Code (*.obj) The Linker
Library files (*.lib)
The compiler will combine the basic machine language from the first pass and combine it with the pieces of machine language in the compiler libraries. An optimization operation may be used to reduce execution time.
Executable Code (*.exe)
C programming - 35.13
35.5 STRUCTURED ‘C’ CODE
• A key to well designed and understandable programs.
• Use indents, spaces and blank lines, to make the program look less cluttered, and give it a block style.
• Comments are essential to clarify various program parts.
• Descriptive variable names, and defined constants make the purpose of the variable obvious.
• All declarations for the program should be made at the top of the program listing.
C programming - 35.14
A Sample of a Bad Program Structure: main(){int i;for(;i<10;i++)printf(“age:%d\n”,i);}
A Good Example of the same Program: #include <stdio.h> #define COUNT 10 /* Number of counts in loop */ main() { int i; /* counter */ for(i = 0; i < COUNT; i++){ /* loop to print numbers */ printf(“age:%d\n”, i); } exit(0); }
35.6 ARCHITECTURE OF ‘C’ PROGRAMS (TOP-DOWN)
35.6.1 How? • A program should be broken into fundamental parts (using functions for each part) and then assembled using functions. Each function consists of programs written using the previous simpler functions.
C programming - 35.15
Example with a Car Frame Suspension
Body
Frame is like one subroutine which also calls other subroutines like Suspension
Engine
Wheel
• A Clear division should be maintained between program levels.
• Never use goto’s, they are a major source of logic errors. Functions are much easier to use, once written.
• Try to isolate machine specific commands (like graphics) into a few functions.
35.6.2 Why? • A top-down design allows modules to be tested as they are completed. It is much easier to find an error in a few lines of code, than in a complete program.
• When programs are complete, errors tend to be associated with modules, and are thus much easier to locate.
C programming - 35.16
• Updates to programs are much easier, when we only need to change one function.
• It is just as easy to change the overall flow of a program, as it is to change a function. Application of ‘C’ to a CAD Program
35.7 CREATING TOP DOWN PROGRAMS 1. Define Objectives - Make a written description of what the program is expected to do.
2. Define Problem - Write out the relevant theory. This description should include variables, calculations and figures, which are necessary for a complete solution to the problem. From this we make a list of required data (inputs) and necessary results (output).
3. Design User Interface - The layout of the screen(s) must be done on paper. The method of data entry must also be considered. User options and help are also considered here. (There are numerous factors to be considered at this stage, as outlined in the course notes.)
4. Write Flow Program - This is the main code that decides when general operations occur. This is the most abstract part of the program, and is written calling dummy ‘program stubs’.
C programming - 35.17
5. Expand Program - The dummy ‘stubs’ are now individually written as functions. These functions will call another set of dummy ‘program stubs’. This continues until all of the stubs are completed. After the completion of any new function, the program is compiled, tested and debugged.
6. Testing and Debugging- The program operation is tested, and checked to make sure that it meets the objectives. If any bugs are encountered, then the program is revised, and then retested.
7. Document - At this stage, the operation of the program is formally described. For Programmers, a top-down diagram can be drawn, and a written description of functions should also be given.
Golden Rule: If you are unsure how to proceed when writing a program, then work out the problem on paper, before you commit yourself to your programmed solution.
Note: Always consider the basic elements of Software Engineering, as outlined in the ES488 course notes.
35.8 HOW THE BEAMCAD PROGRAM WAS DESIGNED
C programming - 35.18
35.8.1 Objectives:
• The program is expected to aid the design of beams by taking basic information about beam geometry and material, and then providing immediate feedback. The beam will be simply supported, and be under a single point load. The program should also provide a printed report on the beam.
35.8.2 Problem Definition:
• The basic theory for beam design is available in any good mechanical design textbook. In this example it will not be given.
• The inputs were determined to be few in number: Beam Type, Beam Material, Beam Thickness, Beam Width, Beam Height, Beam Length, Load Position, Load Force.
• The possible outputs are Cross Section Area, Weight, Axial Stiffness, Bending Stiffness, and Beam Deflection, a visual display of Beam Geometry, a display of Beam Deflection.
35.8.3 User Interface:
35.8.3.1 - Screen Layout (also see figure):
C programming - 35.19
• The small number of inputs and outputs could all be displayed, and updated, on a single screen.
• The left side of the screen was for inputs, the right side for outputs.
• The screen is divided into regions for input(2), input display and prompts(1), Beam Cross section(3), Numerical Results(4), and Beam Deflection(5).
35.8.3.2 - Input: • Current Inputs were indicated by placing a box around the item on the display(1).
• In a separate Prompt Box(2), this input could be made.
• The cursor keys could be used to cursor the input selector up or down.
• Single keystroke operation.
• Keys required: UP/DOWN Cursors, F1, F2, F4, numbers from ‘0’ to ‘9’, ‘.’, ‘-’,
C programming - 35.20
and . In the spirit of robustness it was decided to screen all other keys.
35.8.3.3 - Output: • Equations, calculations, material types, and other relevant information were obtained from a text.
• Proper textual descriptions were used to ensure clarity for the user.
• For a printed report, screen information would be printed to a printer, with the prompt area replaced with the date and time.
35.8.3.4 - Help: • A special set of help information was needed. It was decided to ensure that the screen always displays all information necessary(2).
35.8.3.5 - Error Checking: • Reject any input which violates the input limits.
• A default design was given, which the user could modify.
C programming - 35.21
• An error checking program was created, which gives error messages.
35.8.3.6 - Miscellaneous: • The screen was expressed in normalized coordinates by most sub-routines.
• Colors were used to draw attention, and highlight areas.
C programming - 35.22
35.8.4 Flow Program:
main() /* * EXECUTIVE CONTROL LEVEL * * This is the main terminal point between the * various stages of setup, input, revision * and termination. * * January 29th, 1989. */ { static int error; if((error = setup()) != ERROR) { screen(NEW); screen(UPDATE); while((error = input()) != DONE) { if(error == REVISED) { screen(NEW); screen(UPDATE); } } error = NO_ERROR; } kill(); if(error == ERROR) { printf(“EGA Graphics Driver Not Installed”); }
35.8.5 Expand Program:
C programming - 35.23
• The routines were written in a top down fashion, in a time of about 30 hours. These routines are listed below.
Routines Used In Package:
• main() - to be used as the main program junction.
• setup() - to set up graphics mode and printer.
• screen() - A function to draw, or refresh part of the screen. In the interest of program speed, this function uses some low level commands.
• calculations() - perform the calculations of outputs from the inputs
• picture() - draws the beam cross section and deflection of beam. For the sake of speed, this section will use low level commands.
• input() - A function which controls the main input loop for numbers, con-
• Condition and error flags were used to skip unnecessary operations, and thus speed up response. A response of more than 0.5 seconds will result in loss of attention by the user.
C programming - 35.24
Low Level Specific Subroutines
High Level Executive Subroutine Top
Down
main()
screen()
box()
setup()
input()
printer()
kill() picture()
In this case we see that most of the routines are at the bottom of the design tree. This structure shows a clear division of tasks, to their basic parts. On the above diagram, none of the functions calls any of the functions to the left of it, only to the right. In this case main() will call setup(), screen(), input() and kill() directly.
enter() draw_line() text() calculations() printes()
Machine Dependence Increases Consideration of detail Consideration of flow
35.8.6 Testing and Debugging:
C programming - 35.25
• The testing and debugging was very fast, with only realignment of graphics being required. This took a couple of hours.
35.8.7 Documentation
35.8.7.1 - Users Manual: • The documentation included an Executive Summary of what the Program does.
• The Objectives of the program were described.
• The theory for beam design was given for the reference of any program user, who wanted to verify the theory, and possible use it.
• A manual was given which described key layouts, screen layout, basic sequence of operations, inputs and outputs.
• Program Specifications were also given.
• A walk through manual was given. This allowed the user to follow an example which displayed all aspects of the program.
C programming - 35.26
35.8.7.2 - Programmers Manual: • Design Strategy was outlined and given.
• A complete program listing was given (with complete comments).
• Complete production of this Documentation took about 6 hours.
35.8.8 Listing of BeamCAD Program.
• Written for turbo ‘C’
35.9 PRACTICE PROBLEMS
1. What are the basic components of a ‘C’ compiler, and what do they do?
C programming - 35.27
2. You have been asked to design a CAD program which will choose a bolt and a nut to hold two pieces of sheet metal together. Each piece of sheet metal will have a hole drilled in it that is the size of the screw. You are required to consider that the two pieces are experiencing a single force. State your assumptions about the problem, then describe how you would produce this program with a Top Down design.
3. What are some reasons for using ‘C’ as a programming language?
4. Describe some of the reasons for Using Top-Down Design, and how to do it.
units - 36.1
36. UNITS AND CONVERSIONS • Units are essential when describing real things. • Good engineering practice demands that each number should always be accompanied with a unit.
36.1 HOW TO USE UNITS • This table does not give an exhaustive list of conversion factors, but instead a minimal (but fairly complete) set is given. From the values below any conversion value can be derived. If you are not sure about this, ask the instructor to show you how. • A simple example of unit conversion is given below,
**a simple unit conversion example: Given, · d y = 5ft
d x = 10m Find the distance ‘d’,
keep the units in the equation d =
2
2
dx + dy
2
2
∴d =
( 10m ) + ( 5ft )
∴d =
100m + 25ft
∴d =
2 2 0.3048m 2 100m + 25ft --------------------- 1ft
∴d =
m 100m + 25ft ( 0.092903 ) ------2 ft
2
2
multiply by 1
2
From the tables 1ft = 0.3048m 0.3048m ∴1 = --------------------1ft
2
2
cancel out units 2
∴d =
100m + 25 ( 0.092903 )m
∴d =
102.32m = 10.12m
2
2
units - 36.2
36.2 HOW TO USE SI UNITS 1. Beware upper/lower case letter in many cases they can change meanings. e.g. m = milli, mega 2. Try to move prefixes out of the denominator of the units. e.g., N/cm or KN/m 3. Use a slash or exponents. e.g., (kg•m/s2) or (kg•m•s-2) 4. Use a dot in compound units. e.g., N•m 5. Use spaces to divide digits when there are more than 5 figures, commas are avoided because their use is equivalent to decimal points in some cultures. • In some cases units are non-standard. There are two major variations US units are marked with ‘US’ and Imperial units are marked with ‘IMP’.
36.3 THE TABLE Major Division Distance 1 ft. (feet) = 12 in. (inches) = 0.3048 m (meter) 1 mile = 1760 yards = 5280 ft = 1.609km 1 in.(inch) = 2.540 cm 1 yd (yard) = 3 ft. 1 nautical mile = 6080 ft. = 1852 m = 1.150782 mi 1 micron = 10-6 m 1 angstrom = 10-10 m 1 mil = 10-6 m 1 acre = 43,560 ft. = 0.4047 hectares
units - 36.3
1 furlong = 660 ft 1 lightyear = 9.460528e15 m 1 parsec = 3.085678e16 m Area 1 acre = 43,559.66 ft2 1 Hectare (ha) = 10,000 m2 1 Hectare (ha) = 10,000 m2 1 Hectare (ha) = 10,000 m2 1 Hectare (ha) = 10,000 m2 Velocity 1 mph = 0.8689762 knot Angle 1 rev = 2PI radians = 360 degrees = 400 gradians 1 degree = 60 minutes 1 minute = 60 seconds Volume 1 US gallon = 231 in3 1 CC = 1 cm3 1 IMP gallon = 277.274 in3 1 barrel = 31 IMP gal. = 31.5 US gal. 1 US gal. = 3.785 l = 4 quarts = 8 pints = 16 cups 1 liter (l) = 0.001 m3 = 2.1 pints (pt) = 1.06 quarts (qt) = 0.26 gallons (gal) 1 qt (quart) = 0.9464 l 1 cup (c) = 0.2365882 l = 8 USoz 1 US oz = 8 U.S. drams = 456.0129 drops = 480 US minim = 1.040842 IMP oz = 2 tablespoons = 6 teaspoons 1 IMP gal. = 1.201 U.S. gal. 1 US pint = 16 US oz 1 IMP pint = 20 IMP oz 1tablespoon = 0.5 oz. 1 bushel = 32 quarts 1 peck = 8 quarts Force/Mass 1 N (newton) = 1 kg•m/s2 = 100,000 dyne 1 dyne = 2.248*10-6 lb. (pound) 1 kg = 9.81 N (on earth surface) = 2.2046 lb 1lb = 16 oz. (ounce) = 4.448N
units - 36.4
1 oz. = 28.35 g (gram) = 0.2780N 1 lb = 0.03108 slug 1 kip = 1000 lb. 1 slug = 14.59 kg 1 imperial ton = 2000 lb = 907.2 kg 1 metric tonne = 1000 kg 1 troy oz = 480 grain (gr) 1 g = 5 carat 1 pennyweight = 24 grain 1 stone = 14 lb 1 long ton = 2240 lb 1 short ton = 2000 lb Pressure 1 Pascal (Pa) = 1 N/m2 = 6.895 kPa 1 atm (metric atmos.) =760 mmHg at 0°C=14.223 lb/in2=1.0132*105 N/m2 1 psi = 2.0355 in. Hg at 32F = 2.0416 in. Hg at 62F 1 microbar = 0.1 N/m2 Scale/Magnitude atto (a) = 10-18 femto (f) = 10-15 pico (p) = 10-12 nano (n) = 10-9 micro (µ) = 10-6 milli (m) = 10-3 centi (c) 10-2 deci (d) = 10-1 deka (da) = 10 hecto (H) = 102 kilo (K) = 103 mega (M) = 106 giga (G) = 109 tera (T) = 1012 peta (P) = 1015 exa (E) = 1018 Power 1 h.p. (horsepower) = 745.7 W (watts) = 2.545 BTU/hr. = 550 ft.lb./sec. 1 ft•lb/s = 1.356 W 1 J (joule) = 1 N•m = 107 ergs = 0.2389 cal. 1 W = 1 J/s
units - 36.5
1 ev = 1.60219*10-19 J 1 erg = 10-7 J Temperature °F = [(°C*9)/5]+32, °C = Celsius (Centigrade), F = Fahrenheit K = Kelvin Rankine (R) = F - 459.666 0.252 calories = 1 BTU (British Thermal Unit) -273.2 °C = -459.7 °F = 0 K = 0 R = absolute zero 0 °C = 32 °F = 273.3 K = 491.7 R = Water Freezes 100°C = 212°F = 373.3 K = 671.7 R = Water Boils (1 atm. pressure) 1 therm = 100,000 BTU Mathematical
π radians = 3.1416 radians = 180 degrees = 0.5 cycles 1 Hz = 1 cycle/sec. 1 rpm (revolutions per minute) = 60 RPS (Revolutions per second) = 60Hz 1 fps (foot per second) = 1 ft/sec 1 mph (miles per hour) = 1 mi./hr. 1 cfm (cubic foot per minute) = 1 ft3/min. e = 2.718
Time 1 Hz (hertz) = 1 s-1 1 year = 365 days = 52 weeks = 12 months 1 leap year = 366 days 1 day = 24 hours 1 fortnight = 14 days 1 hour = 60 min. 1 min = 60 seconds 1 millenium = 1000 years 1 century = 100 years 1 decade = 10 years
Physical Constants R = 1.987 cal/mole K = ideal gas law constant K = Boltzmann’s constant = 1.3x10-16 erg/K = 1.3x10-23 J/K h = Planck’s constant = 6.62x10-27 erg-sec = 6.62x10-34 J.sec Avagadro’s number = 6.02x1023 atoms/atomic weight density of water = 1 g/cm3 electron charge = 1.60x10-19 coul. electron rest mass = 9.11*10**-31 kg proton rest mass = 1.67*10**-27 kg
units - 36.6
speed of light (c) = 3.00x1010 cm/sec speed of sound in dry air 25 C = 331 m/s gravitational constant = 6.67*10**-11 Nm**2/kg**2 permittivity of free space = 8.85*10**-12 farad/m permeability of free space = 1.26*10**-6 henry/m mean radius of earth = 6370 Km mass of earth = 5.98*10**24 kg Electromagnetic magnetic flux = weber (We) = 10**8 maxwell inductance = henry magnetic flux density = tesla (T) = 10**4 gauss magnetic intensity = ampere/m = 0.004*PI oersted electric flux density = coulomb/m**2 capacitance = farad permeability = henry/m electric field strength = V/m luminous flux = lumen luminance = candela/m**2 1 flame = 4 foot candles = 43.05564 lux = 43.05564 meter-candles illumination = lux resistance = ohm
36.4 ASCII, HEX, BINARY CONVERSION • The table below will allow conversions between decimal, binary, hexadecimal, and ASCII values. The values shown only go up to 127. ASCII values above this are not commonly used in robust applications.
decimal
hexadecimal
binary
ASCII
decimal
hexadecimal
binary
ASCII
units - 36.7
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
00000000 00000001 00000010 00000011 00000100 00000101 00000110 00000111 00001000 00001001 00001010 00001011 00001100 00001101 00001110 00001111 00010000 00010001 00010010 00010011 00010100 00010101 00010110 00010111 00011000 00011001 00011010 00011011 00011100 00011101 00011110 00011111
NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR S0 S1 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F
00100000 00100001 00100010 00100011 00100100 00100101 00100110 00100111 00101000 00101001 00101010 00101011 00101100 00101101 00101110 00101111 00110000 00110001 00110010 00110011 00110100 00110101 00110110 00110111 00111000 00111001 00111010 00111011 00111100 00111101 00111110 00111111
space ! “ # $ % & ‘ ( ) * + , . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
decimal
hexadecimal
binary
ASCII
decimal
hexadecimal
binary
ASCII
units - 36.8
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F
01000000 01000001 01000010 01000011 01000100 01000101 01000110 01000111 01001000 01001001 01001010 01001011 01001100 01001101 01001110 01001111 01010000 01010001 01010010 01010011 01010100 01010101 01010110 01010111 01011000 01011001 01011010 01011011 01011100 01011101 01011110 01011111
@ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ yen ] ^ _
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F
01100000 01100001 01100010 01100011 01100100 01100101 01100110 01100111 01101000 01101001 01101010 01101011 01101100 01101101 01101110 01101111 01110000 01110001 01110010 01110011 01110100 01110101 01110110 01110111 01111000 01111001 01111010 01111011 01111100 01111101 01111110 01111111
‘ a b c d e f g h i j k l m n o p q r s t u v w x y z { | } r arr. l arr.
36.5 G-CODES • Note that G and M codes not universal standards, and may vary between machines. In any case of doubt, the manuals for the machine should be checked.
units - 36.9
• A basic list of ‘G’ operation codes is given below. These direct motion of the tool. G00 - Rapid move (not cutting) G01 - Linear move G02 - Clockwise circular motion G03 - Counterclockwise circular motion G04 - Dwell G05 - Pause (for operator intervention) G08 - Acceleration G09 - Deceleration G17 - x-y plane for circular interpolation G18 - z-x plane for circular interpolation G19 - y-z plane for circular interpolation G20 - turning cycle or inch data specification G21 - thread cutting cycle or metric data specification G24 - face turning cycle G25 - wait for input #1 to go low (Prolight Mill) G26 - wait for input #1 to go high (Prolight Mill) G28 - return to reference point G29 - return from reference point G31 - Stop on input (INROB1 is high) (Prolight Mill) G33-35 - thread cutting functions (Emco Lathe) G35 - wait for input #2 to go low (Prolight Mill) G36 - wait for input #2 to go high (Prolight Mill) G40 - cutter compensation cancel G41 - cutter compensation to the left G42 - cutter compensation to the right G43 - tool length compensation, positive G44 - tool length compensation, negative G50 - Preset position G70 - set inch based units or finishing cycle G71 - set metric units or stock removal G72 - indicate finishing cycle (EMCO Lathe) G72 - 3D circular interpolation clockwise (Prolight Mill) G73 - turning cycle contour (EMCO Lathe) G73 - 3D circular interpolation counter clockwise (Prolight Mill) G74 - facing cycle contour (Emco Lathe) G74.1 - disable 360 deg arcs (Prolight Mill) G75 - pattern repeating (Emco Lathe) G75.1 - enable 360 degree arcs (Prolight Mill) G76 - deep hole drilling, cut cycle in z-axis G77 - cut-in cycle in x-axis G78 - multiple threading cycle G80 - fixed cycle cancel
units - 36.10
G81-89 - fixed cycles specified by machine tool manufacturers G81 - drilling cycle (Prolight Mill) G82 - straight drilling cycle with dwell (Prolight Mill) G83 - drilling cycle (EMCO Lathe) G83 - peck drilling cycle (Prolight Mill) G84 - taping cycle (EMCO Lathe) G85 - reaming cycle (EMCO Lathe) G85 - boring cycle (Prolight mill) G86 - boring with spindle off and dwell cycle (Prolight Mill) G89 - boring cycle with dwell (Prolight Mill) G90 - absolute dimension program G91 - incremental dimensions G92 - Spindle speed limit G93 - Coordinate system setting G94 - Feed rate in ipm (EMCO Lathe) G95 - Feed rate in ipr (EMCO Lathe) G96 - Surface cutting speed (EMCO Lathe) G97 - Rotational speed rpm (EMCO Lathe) G98 - withdraw the tool to the starting point or feed per minute G99 - withdraw the tool to a safe plane or feed per revolution G101 - Spline interpolation (Prolight Mill) • M-Codes control machine functions and these include, M00 - program stop M01 - optional stop using stop button M02 - end of program M03 - spindle on CW M04 - spindle on CCW M05 - spindle off M06 - tool change M07 - flood with coolant M08 - mist with coolant M08 - turn on accessory #1 (120VAC outlet) (Prolight Mill) M09 - coolant off M09 - turn off accessory #1 (120VAC outlet) (Prolight Mill) M10 - turn on accessory #2 (120VAC outlet) (Prolight Mill) M11 - turn off accessory #2 (120VAC outlet) (Prolight Mill) or tool change M17 - subroutine end M20 - tailstock back (EMCO Lathe) M20 - Chain to next program (Prolight Mill) M21 - tailstock forward (EMCO Lathe) M22 - Write current position to data file (Prolight Mill) M25 - open chuck (EMCO Lathe) M25 - set output #1 off (Prolight Mill)
units - 36.11
M26 - close chuck (EMCO Lathe) M26 - set output #1 on (Prolight Mill) M30 - end of tape (rewind) M35 - set output #2 off (Prolight Mill) M36 - set output #2 on (Prolight Mill) M38 - put stepper motors on low power standby (Prolight Mill) M47 - restart a program continuously, or a fixed number of times (Prolight Mill) M71 - puff blowing on (EMCO Lathe) M72 - puff blowing off (EMCO Lathe) M96 - compensate for rounded external curves M97 - compensate for sharp external curves M98 - subprogram call M99 - return from subprogram, jump instruction M101 - move x-axis home (Prolight Mill) M102 - move y-axis home (Prolight Mill) M103 - move z-axis home (Prolight Mill) • Other codes and keywords include, Annn - an orientation, or second x-axis spline control point Bnnn - an orientation, or second y-axis spline control point Cnnn - an orientation, or second z-axis spline control point, or chamfer Fnnn - a feed value (in ipm or m/s, not ipr), or thread pitch Innn - x-axis center for circular interpolation, or first x-axis spline control point Jnnn - y-axis center for circular interpolation, or first y-axis spline control point Knnn - z-axis center for circular interpolation, or first z-axis spline control point Lnnn - arc angle, loop counter and program cycle counter Nnnn - a sequence/line number Onnn - subprogram block number Pnnn - subprogram reference number Rnnn - a clearance plane for tool movement, or arc radius, or taper value Qnnn - peck depth for pecking cycle Snnn - cutting speed (rpm), spindle speed Tnnn - a tool number Unnn - relative motion in x Vnnn - relative motion in y Wnnn - relative motion in z Xnnn - an x-axis value Ynnn - a y-axis value Znnn - a z-axis value ; - starts a comment (proLight Mill), or end of block (EMCO Lathe)
materials - 37.1
37. ATOMIC MATERIAL DATA
Element copper iron aluminum tungsten zinc silicon carbon titanium
Atomic # 29 26 13 74 30 14 6 22
Atomic weight 63.57 55.85 26.97 183.85 65.37 28.09 12.01 47.9
density g/cm3 8.96 7.86 2.67 19.3 7.13 2.33 2.1 4.51
Valances Hw 1/2 2/3 3 6/8 2 4 2/4 3/4
F = 96,500 coulombs
37. MECHANICAL MATERIAL PROPERTIES
26-30
0.33
35-500
100-550
1-45
2014-T6
2.8
73
36-41
0.33
410
480
13
6061-T6
2.8
70
26
0.33
270
310
17
7075-T6
2.7
72
26
0.33
480
550
11
1100-h14 2024-T6 5456-h116
thermal expansion 10-6/deg C
70-79
ult. stress - shear
yield stress - comp. (MPa)
2.6-2.8
typical
ult. stress - comp.
ten - yield strain (%)
ten - ult. stress
ten - yield stress (MPa)
poisson
(GPa)
G
(GPa)
aluminum
E
Density (Mg/m3)
Type
Material
Table 1:
23
materials - 37.2
Brass
typical
thermal expansion 10-6/deg C
ult. stress - shear
yield stress - comp. (MPa)
ult. stress - comp.
ten - yield strain (%)
ten - ult. stress
ten - yield stress (MPa)
poisson
G (GPa)
E (GPa)
Density (Mg/m3)
Type
Material
Table 1:
8.4-8.6
96-110
36-41
0.34
70-550
200-620
4-60
19.121.2
18-21
Yellow Brass cold rolled annealed Red Brass cold rolled annealed Bronze
typical
8.2-8.8
96-120
36-44
0.34
82-690
200-830
5-60
Cast Iron
typical
7.0-7.4
83-170
32-69
0.2-0.3
120
69-480
0-1
Concrete
typical
2.3
17-31
na
0.1-0.2
reinforced
2.4
17-31
na
0.1-0.2
lightweight
1.1-1.8
17-31
na
0.1-0.2
typical
8.9
110-120
40-47
0.330.36
2.4-2.8
48-83
19-35
0.170.27
Copper
55-760
3401400
9.9-12
10-70
7-14
230-830
4-50
16.617.6
30-1000
0
5-11
annealed hard drawn Glass
typical
Plate
70
Fibers
700020000
Magnesium
typ. alloys
1.761.83
41-45
15-17
0.35
80-280
140-340
2-20
26.128.8
Monel
67%Ni,30% Cu
8.8
170
66
0.32
1701100
4501200
2-50
14
8.8
210
80
0.31
100-620
310-760
2-50
13
Nickel
materials - 37.3
thermal expansion 10-6/deg C
ult. stress - shear
yield stress - comp. (MPa)
ult. stress - comp.
ten - yield strain (%)
ten - ult. stress
ten - yield stress (MPa)
poisson
G (GPa)
E (GPa)
Density (Mg/m3)
Type
Material
Table 1:
Plastics Nylon
.88-1.1
2.1-3.4
na
0.4
40-80
20-100
70-140
Polyethylene
.96-1.4
0.7-1.4
na
0.4
7-28
15-300
140-290
Rock
Rubber
5-9 Granite
2.6-2.9
40-100
na
0.2-0.3
50280
Marble
2.6-2.9
40-100
na
0.2-0.3
50280
Quartz
2.6-2.9
40-100
na
0.2-0.3
50280
Limestone
2.0-2.9
20-70
na
0.2-0.3
20200
Sandstone
2.0-2.9
20-70
na
0.2-0.3
20200
typical
.96-1.3
0.00070.004
0.00020.001
0.450.50
190-210
75-80
0.270.30
Sand,soil,gra vel
1.2-2.2
Steel
7.85
1-7
7-20
100-800
130-200
10-18
cold rolled annealed high strength
3401000
5501200
5-25
machine
340-700
550-860
5-25
spring
4001600
7001900
3-15
stainless
280-700
4001000
5-40
tool
520
900
8
structural
200-700
340-830
10-40
astm-a48
14
12
materials - 37.4
thermal expansion 10-6/deg C
ult. stress - shear
yield stress - comp. (MPa)
ult. stress - comp.
ten - yield strain (%)
ten - ult. stress
ten - yield stress
G (GPa)
(MPa)
E (GPa)
poisson
Density (Mg/m3)
Type
Material
Table 1:
astm-a47 astm-a36
250
400
30
12
astm-a572
340
500
20
12
astm-a514
700
830
15
12
wire
2801000
5501400
5-40
astm-a5242 astm-a441
Stainless Steel
aisi 302
Titanium
typ. alloys
Tungsten
Water
17
4.5
100-120
39-44
0.33
1.9
340-380
140-160
0.2
7601000
9001200
10
8.1-11
14004000
0-4
4.3
fresh
1.0
sea
1.02
Douglas fir
.48-.56
11-13
30-50
50-80
30-50
40-70
Oak
.64-.72
11-12
40-60
50-100
30-40
30-50
Southern pine
.56-.64
11-14
40-60
50-100
30-50
40-70
Wood (dry)
37.1 FORMULA SHEET • A collection of the essential mechanics of materials formulas are given below
materials - 37.5
Axial/Normal Stress/Strain
P σ = εE = --A
Shear Stress/Strain
τ = γG
Poisson’s ratio
ε lateral ν = – --------------------------ε longitudinal
PL δ = εL = ------AE
τ xy γ xy = ------G
E = 2G ( 1 + ν )
σx σy σz ε x = ----- – ν ----- – ν ----E E E
Torsion
Tc τ max = -----J
τ max γmax = ---------G 4
TL φ = ------JG
πr J = -------2
(cylinder)
σ ten = – σ comp = τ
π 4 4 J = --- ( r o – r i ) 2
(hollow tube)
γ ε = --2
P = 2πfT
materials - 37.6
Beams
3
bh I = -------- (for rectangle) 12
My σ = – -------I
4
πr I = -------- (for circle) 2
VQ τ = -------Ib L = ρθ
c ε max = --ρ
My σ = – -------I
EI ρ = -----M
2
π EI P < ----------2 2 k L
Buckling
k=0.5 (both ends fixed) k=0.7 (one end fixed, one pinned) k=1.0 (both ends pinned) k=2.0 (one end pinned, one free)
K
d/2
3.0
r
P
P
d/2 2.5
2.0
1.5
r/d 0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
materials - 37.7
K
r
2.5 D
P
d P
2.0
D/d = 2.0 D/d = 1.5 D/d = 1.25 D/d = 1.1
1.5
1.0
r/d 0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
materials - 37.8
K T
T
r d
D 2.5
2.0
1.5
D/d = 2.0 D/d = 1.33 D/d = 1.2 D/d = 1.1
1.0
r/d 0.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
0.09
0.1
bibliography - 38.1
38. BIBLIOGRAPHY
38.1 TEXTBOOKS
38.1.1 Slotine and Li Citation: Slotine, J. E., Li, W., "Applied Nonlinear Control", Prentice Hall, 1991. Topics/Chapters: Introduction Phase plane analysis Fundamentals of Lyapunov theory Advanced stability theory Describing function analysis Feedback linearization Sliding control Adaptive control Control of Multi-input physical systems Comments: Directed to mechanical undergraduate students.
38.1.2 VandeVegte Citation: VandeVegte, John, "Feedback Control Systems", Prentice Hall, Second Edition, 1990. Topics/Chapters: Linearized dynamic models Transfer function models of physical systems Modeling of feedback systems and controllers Transient performance and the s-plane The perfoarmance and dynamic compensation of feedback systems The root-locus method
bibliography - 38.2
Frequency response analysis Frequency response design Digital control systems Digital control system analysis and design State space analysis Introduction to state space design Multivariable systems in the frequency domain Nonlinear control systems App: Vectors matrices and determinants App: Computer aids for analysis and design Comments: Directed to mechanical undergraduate students. Chapters cover a range of topics systems including motors, pneumatics, fluids, thermo, etc. Chapters 1-8 use classical design techniques. Chapters 9-10 present z-transform methods for controller analysis, some design issues are presented.
input output equations - 39.1
39. TOPICS IN DEVELOPMENT
Topics:
Objectives:
39.1 UPDATED DC MOTOR MODEL
ea = KE ω Te = KT ia 2
T e – T L – C d ω = JDω 2
T e = JDω + C d ω + T L v a = r a i a + l a Di a + e a va = ia ( ra + la D ) + e a va = ia ( ra + la D ) + K E ω Te v a = ------ ( r a + l a D ) + K E ω KT 2
( JDω + C d ω + T L ) v a = ------------------------------------------------ ( r a + l a D ) + K E ω KT 2
( JDω + C d ω + T L ) ( r a + l a D ) + K E K T ω = K T v a 2
2
Jr a Dω + C d r a ω + T L r a + Jla DDω + l a DC d ω + l a DT L + K E K T ω = K T v a · 2 ·· · ω ( Jla ) + ω ( Jr a + l a ωC d ) + ω ( K E K T ) + ω ( C d r a ) = v a ( K T ) + T L ( – r a ) + T L ( – l a )
input output equations - 39.2
Measure the motor resistance, r a = measured When stalled a voltage is applied and the torque is measured, 0 ( Jl a ) + 0 ( Jr a + l a ωC d ) + 0 ( K E K T ) + 0 ( C d r a ) = v a ( K T ) + T L ( – r a ) + 0 ( – l a ) T L ( ra ) = v a ( K T ) TL ( ra ) K T = --------------va At a steady state speed, 2
0 ( Jl a ) + 0 ( Jr a + l a ωC d ) + ω ( K E K T ) + ω ( C d r a ) = v a ( K T ) + T L ( – r a ) + 0 ( – l a ) 2
ω ( KE KT ) + ω ( Cd ra ) = v a ( K T ) + T L ( –r a ) 2
ω ( C d ra ) + ω ( KE KT ) + ( TL ( ra ) – va ( KT ) ) = 0 At lower steady state speeds (little drag), 0 ( Jl a ) + 0 ( Jr a + l a ωC d ) + ω ( K E K T ) + 0 = v a ( K T ) + T L ( – r a ) + 0 ( – l a ) ω ( KE KT ) = va ( KT ) + TL ( –ra ) ra ω ( K E ) + T L ------ = v a KT The static friction limit, 0 ( Jl a ) + 0 ( Jr a + l a ωC d ) + 0 ( K E K T ) + 0 ( C d r a ) = v a ( K T ) + T L ( – r a ) + 0 ( –l a ) KT T L = v a ------ ra
input output equations - 39.3
· 2 ·· · ω + ω A + ωB + ω C = v a D + T L E + T L F
input output equations - 39.4
39.2 ANOTHER DC MOTOR MODEL
TL
vs
1 -------------------La D + ra
+
-
Te
ia Ka
+
-
Ka
where, K a = motor speed constant L a = motor armature inductance r a = motor armature resistance J = inertia of rotor B m = damping of rotor v s = voltage applied to armature i a = armature current T e = effective motor torque T L = load torque ω r = motor speed
1 -------------------JD + Bm
ωr
input output equations - 39.5
Motor parameters can be measured by applying a voltage and holding (stalling) the shaft. The stalled motor torque, and the current are measured. When stalled, the load and effective torques are equal, and the feedback loop is zero, allowing the simplified system block diagram. This allows the calculation of the motor speed coefficient directly.
vs
1 --------------------La D + ra
ia
Ka
TL
T K a = -----Lia The resistance of the windings can be found by direct measurement with a DMM, but can also be verified by using the steady state current and voltages. i 1 1 1 ---a- = -----------------= --------------------------- = ---vs La s + ra L a ( j0 ) + r a ra v r a = ----s ia The inductance of the windings can be found using the time constant - phase shift ???????????????? i 1 ---a- = -----------------vs La s + ra
XXXXXXXXXXXXXXX
input output equations - 39.6
If the motor is unloaded (TL = 0) the following differential equation can be derived. If the system is allowed to reach steady state, the derivatives of motor speed will become zero. vs
1 -------------------La D + ra
+
ia
Te Ka
1 -------------------JD + Bm
ωr
-
Ka
2
2
D ω r ( L a J ) + Dω r ( L a B m + Jr a ) + ω r ( r a Bm + K a ) = Vs K a 2
( 0 ) ( L a J ) + ( 0 ) ( L a B m + Jr a ) + ω r ( r a B m + K a ) = V s K a 2
ω r ( ra Bm + K a ) = Vs Ka 2
Bm
Vs K a K a = ------------ – -----ra ωr r a
The rotor inertia can be found using .....................
2
2
D ω r ( L a J ) + Dω r ( L a B m + Jr a ) + ω r ( r a B m + K a ) = V s K a
• Another approach to finding the motor parameters is system identfication.
input output equations - 39.7
TL
vs
1 -------------------La D + ra
+
ia Ka
+
-
Ka
1 i a = ( v s – K a ω r ) --------------------La D + ra Di a ( L a ) + i a ( r a ) = v s – K a ω r –K a –ra 1 Di a = v s ----- + ω r --------- + i a -------- La La La 1 ω r = ( K a i a – T L ) -------------------JD + B m Dω r ( J ) + ω r ( B m ) = K a i a – T L K –B –1 Dω r = i a -----a- + T L ------ + ω r ---------m- J J J
d- i a ---= dt ω r
–r –K -------a- --------aLa La
ia
Ka –B m ω r ------ ---------J J
-
Te
+
1---0 La
vs
–1 T 0 ------ L J
1 -------------------JD + Bm
ωr
input output equations - 39.8
The matrix can be parameterized, d- i a ---dt ω
r
=
–ra –Ka -------- --------La La
ia
Ka –B m ω r ------ ---------J J
+
1---0 La
vs
–1 T 0 ------ L J
1 E = ----La –ra A = -------La
i vs = A B a + E 0 C D ωr 0 F TL
La = E r a = – AL a = – AE
–Ka B = --------La
K a = – BL a = – BE
Ka C = -----J
Ka – BE J = ------ = ---------C C
–Bm D = ---------J
– BED B m = --------------C
39.3 BLOCK DIAGRAMS AND UNITS - each block in a block diagram has an input and output. Making sure that the units are consistent is useful for detecting mistakes and ensuring consitency.
input output equations - 39.9
39.4 SIGNAL FLOW GRAPHS - these invert block diagrams. ·· x
1--D
· x
1--D
39.5 ZERO ORDER HOLD - t. 1
– Ts
1–e G h ( s ) = -----------------s
t 0 T
39.6 TORSIONAL DAMPERS -
x
input output equations - 39.10
39.7 MISC - controller goals stabilize - to make the system stable regulate - to control the system about a central design value follow - to track an input/feedback signal disturbance rejection - to minimize the effects of noise - state diagrams can be used with multiple input/multiple output (MIMO) systems - state based controller designs, state feedback - in an ideal controller the full state variables can be measured observer-estimator - determines the system state using limited data. - Linear Time Invariant (LTI) systems are linear, having constant coefficients. For example, state coefficient matrices are all constant values - Linear systems allow superposition - leaf springs are non-linear and have a cubic relationship to displacement - if a system input (setpoint) is zero, or not used, then the control system is called a regulator. - stepper motor motion plans should not be approximate, the stepper motor should follow the path, although trapezoidal profiles are more common.
39.8 Nyquist Plot • The method is used to determine system stability using the characteristic equation 1+Gc(s)G(s)H(s) • If over the range of frequencies the system enters the unstable range of the Nyquists contour shown below.
input output equations - 39.11
• The basic method for producing polar plots is, 1. Write the characteristic equation for a feedback system Gc(s)G(s)H(s) 2. Use phasors to determine a gain and angle. 3. For a large range of frequencies, plot the gain and angle on polar axes. 4. Look for ’encirclements’ of the point at a gain of -1 and -180°. • If the number of clockwise encirclements is equal to the number of poles in the right hand side of the plane, the system is stable. • The gain and phase margins can be determined from the polar plot as shown below,
input output equations - 39.12
φM -1
1 G M = -------OC C
O
ωc A
-
39.9 NICHOLS CHART - a plot of the gain vs. the angle of a system transfer function after a phasor transform. • The basic method is, 1. Write an expression for the closed loop gain Gc(s)G(s). 2. Apply a phasor transform to find the gain and phase angle. 3. Gain and phase values are calculated for a large range of frequencies and plotted on the following paper. 4. Measure the gain and phase margins from the plot.
input output equations - 39.13
0dB 25
0.5dB
-355°
-5°
20 -10°
-350°
15
3dB 10 -1dB 5
-330°
-30°
dB
12dB
0 -300° -5 -60° -9dB
-10 -270°
-90°
-15 -240° -20 -280
-260
-240
-220
-210° -200
-180°
-120°
-150°
-180 -160 phase (deg)
-18dB -140
-120
-100
• The gain and phase margins are measured from the plot as shown below,
-80
input output equations - 39.14
180°
φM 0dB GM
Where, φ M = phase margin G M = gain margin
• These correlate to values on the Bode plot. To find the approximate gain/phase margins with a Bode plot, locate the point where the gain is 180° to find the gain margin, and find the phase margin where the gain is 0dB. • In unstable systems the function will circle the center point of the plot. •
39.10 BESSEL POLYNOMIALS - put in root locus chapter? - The following table of functions provides polynomial roots normalized to a motion that is complete in 1second [How, 2001].
input output equations - 39.15
polynomial order
roots
1 2 3 4 5 6 7 8 9 10
-4.6200 -4.0530±2.3400j -5.0093,-3.9668±3.7845j -4.0156±5.0723j,-5.5281±1.6553j -6.4480,-4.1104±6.3142j,-5.9268±3.0813j -4.2169±7.5300j,-6.2613±4.4018j,-7.1205±1.4540j -8.0271,-4.3361±8.7519j, -6.5714±5.6786j,-7.6824±2.8081j -4.4554±9.9715j,-6.8554±6.9278j,-8.1682±4.1057j,-8.7693±1.3616j -9.6585,-4.5696±11.1838j,-7.1145±8.1557j,-8.5692±5.3655j,-9.4013±2.6655j -4.6835±12.4033,-7.3609±9.3777j,-8.9898±6.6057j,-9.9657±3.9342j,10.4278±1.3071j
- the roots are used to construct the charateristic equation of the system. - To increase, or decrease the reposnse time the root values are multiplied by the desired settling time.
39.11 ITAE - The Integral of Time Absolute Error (ITAE) integral equation becomes large for errors that persist for a long time.
∞
J ITAE =
∫ t e ( t ) dt 0
- is used to select poles to minimize the integral value when selecting a characteristics equation.
input output equations - 39.16
39.12 ROOT LOCUS - A design point on the root locus curve can be selected for a specific damping coefficient.
θ
cos θ = ζ
39.13 LYAPUNOV’S LINEARIZATION METHOD • This method addresses the local stability of a non-linear system when linearized. • In essense it validated the use of linear control systems on non-linear systems. •
input output equations - 39.17
The proof begins with a taylor series expansion of a function that has a continuous differential. The second term in the expression is the higher order terms. There is an assumption that the system starts at equillibrium, so there is no initial value. The result is a linear approximation. d ∂f ∂f ----- x = f ( 0 ) + x + f ( t ) = h.o.t. ∂ x x = 0 ∂ x x = 0 x = Ax dt
∂f A = ∂x x = 0
d∂f ∂f ---x = x + u + f h.o.t. ( t ) = Ax + Bu ∂ u x = 0, u = 0 dt ∂ x x = 0, u = 0 ∂f A = ∂ x x = 0, u = 0
∂f B = ∂ u x = 0, u = 0
A linearized model of the control law can be written and the linearized model rewritten. ∂u u ≈ x = Gx ∂x x = 0 d---x = Ax + BGx = ( A + BG )x dt
• Lyapunov’s stability theorem focuses on the stablilty (Eigenvalues) of matrix A at a given point. - The system is asymptotically stable at the equillibrium point if all of the Eigenvalues of A are in the left hand complex plane. - The system is unstable as the equillibrium point if the matrix A is unstable, with points in the right hand side of the complex plane. - If all of the Eigenvalues are in the left hand plane, except for one or more on the complex axis, then the system is marginally stable, and the linearization may be stable or unstable.
39.14 XXXXX - ea.
input output equations - 39.18
39.15 XXXXX - ea.
39.16 XXXXX - ea.
39.17 XXXXX - ea.
39.18 XXXXX - ea.
39.19 XXXXX - ea.
39.20 XXXXX - ea.
39.21 SUMMARY •
39.22 PRACTICE PROBLEMS 1.
input output equations - 39.19
39.23 PRACTICE PROBLEM SOLUTIONS 1.
39.24 ASSGINMENT PROBLEMS 1.
39.25 REFERENCES
39.26 BIBLIOGRAPHY How, J, "16.31 Feedback Control Course Notes", MIT Opencourseware website.