(mss) of brushless d.c. motor high-speed linear ... · ottawaon k1a onawaon kia on4 canada canada...
TRANSCRIPT
Multiple Simultaneous Specification (MSS) Control of Brushless D.C. Motor and High-speed Linear
Positioning S ystem
David Ming Kei Cho
A thesis subrnitted in conformity with the requirements for the degree of Master of Applied Science
Graduate Department of Mechanical and Industrial Engineering University of Toronto
8 Copyright by David Ming Kei Cho 1999
National Library 1+1 of Canada Bibliothèque nationale du Canada
Acquisitions and Acquisitions et Bibliographie Services services bibliographiques
395 Wellington Street 395. rue Weliiigtm OttawaON K1A OnawaON KIA ON4 Canada Canada
The author has granted a non- exclusive licence alIowing the National Library of Canada to reproduce, loan, distribute or sel1 copies of this thesis in rnicroform, paper or electronic formats.
The author retains ownership of the copyright in this thesis. Neither the thesis nor substantial extracts fiom it may be printed or othewise reproduced without the author' s permission.
L'auteur a accorde une licence non exclusive permettant à la Bibliothèque nationale du Canada de reproduire, prêter, distniuer ou vendre des copies de cette thèse sous la forme de microfiche/fïlm, de reproduction sur papier ou sur format électronique.
L'auteur conserve la propriété du droit d'auteur qui protège cette thèse. Ni la thèse ni des extraits substantiels de celle-ci ne doivent être imprimés ou autrement reproduits sans son autorisation.
Abstract
This thesis summarizes an investigation of the application of Multiple Simultaneous
Specification (MSS) control to bwhless D.C. (BLDC) motor and high-speed linear
positioning system. Simulation and experimental r e d u illustrate the effect of MSS
control on system behavior.
First, the dynamic models of BLDC motor and linear positioning system are
developed. Second, the dynamic models are then verified by performing simulation
and experiments of open-loop and closed-loop control. By comparing the simulation
and the experimental resuIts, nonlinearity of BLDC motor is obsemed and discussed.
Findy, the deficiency of Proportional-Intepni-Derivative (PD) controlier is discussed.
The major shortcoming of PID controller is the need to tune the PID gains to satisfy
desired performance specifications. In fact, if multiple performance specifications are
considered simultaneously, tuning PID gains become very tedious and time consuming.
A synematic way for fmding the controller gains to satisfy the desired performance
specifications simuitaneously is needed Therefore, MSS control method, developed by
Dr. Hugh Liu and Prof. J.K. Mills, Department of Mechanical and Industrial
Engineering, University of Toronto, is applied to the BLDC motor and the linear
posirioning system control.
By conducting experiments, MSS control method is proven to be effective on
controlling BLDC motor and Linear positioning system to satisfy several desired
performance specifications simultaneously. Thus, the need to tune controlier gains is
Acknowledgments
1 would iike to thank Professor J.K. MilL for giving me an exciting opporcunity to do research
in the area of hi&-speed manufacturing, and for his precious guidance in the work presented
in this thesîs. 1 sincerely appreciate the time and support he has made available to me
throughout these two years.
1 thank Dr. Dong Sun, who was always wilhgly to provide both theoretical and
experimentai advises during m y research.
1 would ais0 iike to extend my appreciation to Dr. Hugh Liu, who has guided me
through the theory and implementations of the MSS control method
1 wish to thank the people in Laborarory for Nonlinear Systerns ControI, both past
and present: Chris, hdrew, Weihua, Mingwei, Ed, Seung-Ju, Dr. Marzi, and others. They
have been very helpful to me and they made my research life enjoyable and memorable.
Deep down in my heart 1 would like to thank my parents and my Little sister Jenny,
who always give endless love, fun, and financial and physical needs to me; Lucille (Lok), who
always stand beside me, bear with me and encourage me witb her love and continuous prayers;
and other brothen and sinen in Ch& who have been praying for me faithfully.
Findy, but not the lem, 1 would like to thank my savior Jesus Ch&. Without Wim
there would be without me. May He reccive ail the glories and praises.
Contents
Abstract
Acknowledgements
Table of Contents
List of Figures
List of Tables
Nomenclature
1 Introduction
1.1 Motivation
1.2 Proposed Research
1.3 Background Theories
1.4 Literature Review
1.4.1 Modeling of BLDC Motor
1.4.2 Position Control of BLDC Motor
1.5 Thesis Overview
1.6 Thesis Contributions
2 Experimentai Test Bed
2.1 Description of the Experimental Test Bed
2.2 Software
2.3 Sumnaary
3 BLDC Motor and Linear Positioning System Molling
3.1 Introduction
3.2 Dynamic Model of BLDC Motor
3.3 Linear Lem-Square Estimation
3.4 BLDC Motor Parameters Estimation
3.5 BLDC Motor Model in Block Diagram Form
3.6 Identification of the Motor Parameters
3.7 Dynamic Model of Overall System
3.8 Linev Positioning System Model in Block Diagram
3.9 Identification of the System Parameters
3.10 Summary
4 Motor Control simulation R d t s
4.1 Introduction
4.2 Simulation of Open-Loop Motor Step Response
4.3 Simulation of Open-Loop Motor Siuusoidal Input Test
4.4 Simulation of Closed-Loop Motor Step Response
4.5 Simulation of Closed-Loop Motor Sinusoidal Input Test
4.6 Summary
Motor Control Experimcntai Results
5.1 Introduction
5.2 Experiment of Open-Loop Motor Srep Response
5.3 Experiment of Open-Loop Motor Sinusoïdal Input Test
5 -4 Experiment of Closed-Loop Motor Step Response
5.4.1 Velocity Feedback (Minor Loop Feedback)
5.5 Experiment of Closed-Loop Motor Sinusoichi Trajectory Test
5.6 Uncenahies in BLDC Modeling
5.6.1 Model Parameter Uncercainties
5.6.2 Nonlinear Effects in BLDC Motor
5.6.3 Unknown Disturbances and Noises
5.7 Summary on Experimental Results
5.8 Performance SpecScations
5.9 The Deficiency of PD or PlD Control
MSS Control Problem
6.1 Introduction
6.2 System Framework Definition
6.3 Convex Combination Method
6.4 Feasibiky of MSS Problem
6.5 Convex Conuoller Impiementation
6.6 Summary
7 Set-point MSS Control of the Motor
7.1 htroduction
7.2 System Fnmew ork Representation
7.3 Desired Performance Specificatioas
7.4 Sample Controllen Selection
7.5 Convex Combination of the Sample Controllen
7.6 Convex Controller Determination
7.7 Systematic Approach to Obtain I$'(s) and &*(s)
7.8 Convex Controller Discretkation and Realizauon
7.9 Experimental R e d t s and Summary
8 Set-point MSS Control of the Linear Positiothg System
8.1 Introduction
8.2 Syaem Framework Representation
8.3 Desired Performance Specificatioas
8.4 SampIe Contro~en Seleaion
8.5 Convex Combination of the Sample Controllen
8.6 Convex Controuer Determination
vii
8.7 Convex ControUer Discretization and Realization
8.8 Experimental Resulrs
8.9 Summary
9 Ro bustness Specification
9.1 Introduction
9.2 Theones and Some Analytical Tools for Robumess Specification
9.2.1 Small Gain Theorem
9.2.2 Closed-Loop Convex Robustness Stability Specifications
9.2.3 Closed-Loop Convex Robusmess Specifications
9.3 Example for Convex Robunness Specification
9.3.1 Intemal Stability of the Sample Controllers
9.3.2 Robustness of the Sample Controllen
9.3.3 Coefficient of Closed-Loop Transfer Funaion
9.4 Experiment on Linear Positioning System with Additional Payload
9.5 Summary
10 Concluding Remarks
10.1 Summary
10.2 Recommendations for Future Work
Bibliography
Appendices
A User Pro-
B Component Co~cctions
B.1 System Diagram
B.2 Conneaion Between Motor and Amplifier
B.3 Conneccion Between Encoder and Amplifier
B.4 Cormeaion Between Amplifier and Intercomect Module
B.5 C o ~ e c t i o n Between Amplifier and Voltmeter
B.6 Connection Between Encoder and ICM-1900 Intercomea Module
B .7 Comection Between Limit Switches and KM-1900 Interconnect Module
C Component Specifcations
D Numerical Example of MSS Con& Method
D.1 Feasibility of Sample Conuoilen
D.2 Convex Combination
D.3 Derivation of %'(s) and &*(s)
D.4 Discretization of %'(s) and &*(s)
D.5 Realization of K&) and &*(s)
List of Figures
1.1 Interna1 Structure of a BLDC motor
1.2 Interna1 Structure of a BDC motor
2.1 Linear Positioning System Conneaion Diagram
2.2 Experimental Test Bed of a High-Speed Linear Poskioning System
3.1 BLDC Motor Block Diagram
3.2 The Reduced Block Diagram of the Motor
3.3 The Motor Transfer Function
3.4 The Reduced Block Diagram of the Linear Positioning System
3.5 The Linear Positioning System Transfer Funaïon
4.1 Open-Loop Motor Controi System
4.2 Simulation Block Diagram for Open-Loop Motor Step Response
4.3 Simulation Result of Open-Loop Motor Step Response
4.4 Simulation Block Diagram for Open-Loop Motor Sinusoida1 Input Test 42
4.5 Simulation Result of Open-Loop Mocor Sinusoida Input Test 43
4.6 Closed-Loop Motor Conuol Syaem 44
4.7 Simulation Block Diagram for Closed-Loop Motor Step Response 44
4.8 Simulation R e d t of Closed-Loop Motor Step Response & = 0.95 Voldradian, & - 0.02 Volt-sedadian)
4.9 Simulation Block Diagram of Closed-Loop Motor Sinusoidal Trajecto ry Test 47
4.10 Simulation Results of Closed-Loop Motor Sinusoidal Trajecto ry Test (% = 0.95 Voldradian, & = 0.02 Volt-sec/dan) 48
5.1 Experimental Result of Open-Loop Motor Step Response 52
5.2 Experimental Result of Open-Loop Motor Sinusoidal Input Test 54
5.3 Experimental Result of Closed-Loop Motor Step Response & = 0.95 Volt/radian, & = 0.02 Volt-sec/radian)
5.4 Closed-Loop Motor Control System with Velocity Feedback 57
5.5 Experimental R d of Closed-Loop Motor Step Response with Velocity Feedback (K, = 0.95 Voldradian, K,, = 0.02 Volt-sedadian, & = 0.01 Volt-sedadian) 58
5.6 Experimentd R e d t s of Closed-Loop Motor Sinusoidal Trajectory Input Test (K, = 0.95 Volt/radian, & = 0.02 Volt-sedradian) 59
5.7 Experimental Results of Closed-Loop Motor Sinusoidal Trajectory Input Test with Velocity Feedback &, = 0.95 Voldradian, & = 0.02 Volt-sedadian, and K, = 0.01 Volt-sec/radian) 61
5.8 Motor Position with Various Gain Combinations 69
6.1 Linear System Fnmework 71
6.2 Implementation of MSS Problem Flow Cham 79
7.1 Closed-Loop Motor Control System 82
7.2 Motor System Framework 82
7.3 Motor Position versus Time Under Convex and Sample PD Controllers 104
7.4 Motor Acceleration venus Time Under Svnple PD Controllen 105
7.5 Motor Acceleration versus Time Under the Convex Controller 106
7.6 Motor Velocity vernis Time Under Sample PD Controllers 107
7.7 Motor Velocity versus Time Under the Convex Controller 108
7.8 Control Input vernis Time Under Sample PD Controllers 109
7.9 Control Input versus Time Under the Convex Controller 110
8.1 Closed-Loop Linear Positioning Control System 112
8.2 Linear Positioning System Framework 112
8.3 Linear Positioning System Position versus Time Under Convex and Sample PD Controllers 128
8.4 Linear Positioning System Acceleration venus T h e Under Sample P D Controflers 129
8.5 Linear Positioning System Acceleration versus Time Under Convex Controuer 130
8.6 Linear Positioniag System Velociry vernis Time Under Sample PD Controllers 131
8.7 Linear Positioning System Velociry versus Time Under Convex Controller 132
8.8 Control Input to Linear Positioning System vernis Time Under Sample PD Controilen 133
8.9 Control Input to Linear Posiuoning System vernis Time Under Convex Controller 134
9.1 Closed-Loop Perturbation Feedback Form 138
9.2 Perturbed Closed-Loop System 138
9.3 Closed-Loop System Block Diagrun with Perturbation Feedback
9.4 Alternate Form of Closed-Loop System Block Diagram with Perturbation Feedback
9.5 Two Synems Conneaed in Feedback Loop
9.6 Frequency Response of Tl
9.7 Frequency Response of T2
9.8 Frequency Response of T,
9.9 Frequency Response of S,
9.10 Frequency Response of S,
9.1 1 Frequency Response of S,
9.12 Lioear Positioning Synem Position versus Time Under Convex Controller with 5.5 kg Payload
9.13 Linear Positioning Synem error vernis Time Under Convex Controlier with 5.5 kg Payload
9.14 Control Input vernis Time Under Convex Controller wirh 5.5 kg Payload
9.15 Linear Positioning Synem Acceleration vernis Time Under Convex Controller with 5.5 kg Payload
9.16 Linear Positioning System Velocity vernis Time Under Convex Controller with 5.5 kg Payload
B.1 Motor and Encoder Connecton Diagram
B.2 Linear Positioning Table and Limit Switches Diagram
C.l BM Series BLDC Motor Spedcations C2
C.2 B M Senes BLDC Motor and Encoder Specificatims C3
C.3 B25A20AC Brushless Servo PWM Arnpliner Specifications C4
C.4 Linear Positionhg Table Specification 1 CS
C.5 L h e v Positionhg Table Specification 2 C6
C.6 Linear Positionhg Table Specification 3 C7
xiv
List of Tables
2.1 Experimental Facility Component Summary
2.2 A List of User Programs with Description
3.1 BM130 BLDC Motor Specifications
3.2 Input Voltages and Output Currents
7.1 Sample PD Controllers
B.1 Conneaion between BM130 BLDC Motor and B25A20AC Amplifier
B.2 Conneaion between Encoder and B25A20AC Amplifier
B.3 Comection between ICM-1900 Intercomect Module and B25A20AC Amplifier
B.4 Comection between B25A20AC Amplifier and Voltmeter
B.5 Connecrion between ICM-1900 hterconnect Modde and Encoder
B.6 Comection between ICM-1900 htercomect Module and Limit Switches
Nomenclature
Roman Letters
Numerator coefficient of &*
Dummy coefficient
Numerator coefficient of %'
ActuaI damping coefficient of BLDC motor
Damping coefficient of the linear positioning system
Estimate of motor darnping coefficient
Estimate of 1inea.r positioning system damping coefficient
Dummy coefficient
Numerator coefficient of &'
Numerator coefficient of %*
Numerator coefficient of 4'
Unknown errors occur in measurement
Error signal in Laplace domain
Derivative of motor position error with respect to rime
Motor position error
Numerator coefficient of &'
Numerator coefficient of &'
Controller
Closed-loop transfer matrix from W(s) to Z(s)
Numerator coefficient of &*
Convex closed-loop d e r matrix
Perturbated closed-loop d e r h c t i o n mat&
Closed-loop transfer matrix of P(s) without q and p
Closed-loop t d e r ma& from R to q
Closed-loop trader matrix from p to Z
Closed-loop transfer ma& from q to p
Numerator coefficient of Ki
Supplied current to the BLDC motor fiom the amplifier
Numerator coefficient of
Actual inertia of BLDC motor
inertia of the linear positioning system
Estimate of motor inertia
Estimate of linear positioning system inertia
Controlier t r a d e r matrix from Y(s) to U(s)
Modified controller
Convex controiler in Laplace Transform domain
Convex controller in discrete-time domain
Amplifier gain
Derivative gain
Convex derivauve gain
consrant gain
Intepai gain
gain of the moror
Sample controiler, n
Effective gain of motor
Proportionai gain
Convex proportional gain
BLDC moror torque constant
Velocity gain
Iteration index
Estimated effective gain of the linear positioning system
Parametric uncerrainty lower bound
Maximum gain of feedback perturbation
Dummy coefficient
Motor dynamic model
Lioear positioning systern dynamic model
Effective motor trander funaion with velocity feedback
Permrbed Plant dynamic mode1
Simplified denorriinator of P(s)
T d e r ma* from W(s) to Z(s)
T d e r matrix from U(s) to Z(s)
Trander matrix hom Y(s) to W (s)
Tansfer ma& from Y(s) to U(s)
Augmented d e r ma& from @ to
Augmented transfer m a t e from p to Z
Augmented t d e r matrix from u to t
Augmented tmsfer ma& from h o q
Augmented transfer matrix from p to q
Augmented t d e r ma& from u to q
Augmented transfer ma& from @to y
Augmented transfer m a 6 from p to y
Augmented transfer ma& from u to y
Known data matrix
(n x 2) motor velocity and acceleration m a t h
(n x 2) linear positioning system velocity and acceleration matrix
Modified complementary sensitivity funaion
Convex modified complementary sensitiviry function
Sensitivity transfer hinaion
Sample sensitivity transfer funaion
Derivative operator in Laplace Transform domain
Complementary sensitivïty funaion
Applied mechanical torque to the BLDC motor
Sarnple complementary sensitivity function
Applied mechanical torque to the Linear positionhg system
Panmetric uncertainry upper bound
Control input at t - kh interation intemal
Convol Input in Laplace Trandorm domain
Control Input in discrete-tirne domain
Linear programming vector
Modified control input
O v e 4 closed-loop transfer function
Reference voltage fiom the controller to the amplifier
Other inputs to system
Original signal of P(s)
Estimated vector
x A substitude vector
(2 x 1) motor inertia and damping coefficient vector
(2 x 1) linear positioning system inenia and damping coefficient vector
2 Eaimate of X given data Z
Y(s) Ouput signals accessible to the controller
Y Output-port in simulation
Ys Output-port 2 in simulation
Z Measurement of the unknown parameten X
Z(s) Output signals interested to designer
2, (1 x n) motor voltage vemr
2, (1 x n) hear positioning systern voltage vector
z Discrete-the variable
Z Original signal of P(s)
Greek Letters
Performance specification vector
Convex combination vector
Desired performance specification vector
Desired performance specification, n
Angular velocity
Angdar accelerauon
Desired Position
Desired velocity
Actual Position
Actuai velocity
4 ssrp Steady-srare error specification
Relative overshoot specification
Peak error specification
Rise t h e specificauon
Path accuracy specification
Velocity accuncy specification
Performance specification, n
Performance specification 1 under convex controiier
Performance specification 2 under convex controiler
Performance specification 3 under convex controiler
A, Components, n, of convex combination vector
Denominator of the convex sensitivity function
Sample sensitivity function
Common denominator of 5'
A lump surn of I , &, Pd, and &
Transfer function coefficient
Perturbation feedback
Set of perturbation feedback
Output signal from the perturbation feedback
Uncertainty factor of the estimated effective gain
Uncertainty factor of the estimated inertïa
Uncerrainty factor of the estimated damping coefficient
Abbreviations
MD Analog to digital
BLDC Bnishless D.C.
BDC Brushed D.C.
D/A Digital to analog
LNSC Laborarory for Nonlinear Systems Control
MSS Multiple Simultaneous Specifications
PD Proponional-Derivative
PI Proportional-Integd
PID Proponiond-lategral-Derivative
SMT Surface Momting Technology
Chapter 1
Introduction
1.1 Motivation
In today's industry, elecuomechanical devices such as motors, are in common
use for driving machines to achieve certain manufacturing purposes. Brushiess D.C.
(BLDC) motor is one of the moa common electromechanical devices used in
manufacturing and robotics applications. Due to the nature of BLDC motor (high
speed, low friction, and hi& resistance to wear) the BLDC motor is often used to drive
high-speed positioning device, such as CNC and Surface Mounting Technology (SMT)
machines.
In practice, controiiers such as PIDtype (PI, PD) are used to control high-speed
linear positioning devices. There are nvo main advamages of using PID controllen.
Firstly, PID controilers are relatively easy to design and implement in red tirne.
Secondly, PID controilen are proven to be reliable in controiiing various types of
dynamic systems and are robust to system uncenainries. However, the P D controller
is nor free of limitations. The main disadvamage of PID-type of controller is found in
niniog gains to achieve a desired closed-loop performance. In many control
applications, multiple performance specifications mun be sarisfied simultaneously in
order to achieve high performance resuits. In fact, in control of high-speed linear
positioning devices several performance specifications are considered simdtaneously in
a single operation to achieve desired r d t s . Peiformuice specifications such as neady-
nate error, rise Ume, and relative ovenhoot are common. Unfortunately, to
simultaneously satisfy several desired performance specifications, by using PID
controllers, requires extensive experience and skill in ga i . tuning. Gain-tuning is a
tedious and time conniming process in mon high-speed positïoning device control
applications. Therefore, a systmatic a p o a c h of jànding a controller to stabilue
high-speed positioning control system and achieve desired pe$ormance spcifiations
simultaneously, is clearly needed This in fact, is the main goal of this thesis.
1.2 Proposed Research
The nature of this research is to develop an experimental test-bed for position
control of a hi&-speed linear positioning table by using a hi&-performance BLDC
motor. The dynamic models of the BLDC motor and the hear positioning table are
developed in this thesis. With these dynamic models, we can apply appropriate
conrrol theory to control the position of the hear posiüoning table. An experimental
facility has been developed within the Laboratory for Nonlinear Systems Conuol,
Department of Mechanical and Indusvia1 Engineering, University of Toronto. In this
experimental facility, both simulation and experiments are conducted, and
experimental results are obtained The resulu are w d to demonstrate the effeaiveness
of the convex control design theories, the accuncy of the modeling and the
performance of the experimentai system.
Two main control theones wiil be addressed here. One is the conventional
PD-type of control and the other is the Multiple Simultaneous Specification (MSS)
control method developed by Dr. Hugh Liu and Prof. James. K. MiUs at the
University of Toronto, Deparcment of Mechanical and Industrial Engineering, [Liu,
19981. Cornparison will be made between these two control theories, and the
effeaiveness of the MSS convol method wili be demomrated by subsequent
experiments.
1.3 Background Theories
Both bmhed D.C. (BDC) and brushless D.C. @LDC) motors have been used
widely in indusuy. Severai key differences berween BDC and BLDC moton are
addressed here.
BDC motos are generaiiy used in Iow speed appiicacions (MW0 rpm). The
operating speed of BDC motor depends upon its commutator diameter and bnuh
material. The iife of the BDC b w h depend on the comrnutator bar-to-bar voltage,
b a h m e n t density. and power at the brush-commutator interface. BDC motors
need frequent maintenance to ensure proper operations. O n the other han& BLDC
moton require no cornmutaton or brushes, but require elemonic switching. Thus,
BLDC motor requires infrequent maintenance. With this design, BLDC motor drive
requires rotor position-feedbadc signais from Hall effect sensors inside the moror.
Therefore, the electronics for controlling BLDC moror is more complicated than for
rhe BDC motor. BLDC motors are suitable for high speed applications, normally
from 5000 to more than 60000 rpm, menjo and Nagamori, 19851. Other advantages of
BLDC over BDC motors include improved reliability, higher power to weight ratios,
and overail better dynamic performance. Therefore, many applications use BLDC
innead of BDC motor to improve reliability. Inside the structure of BLDC motor, the
windings are placed externdy in the sloned stator. The rotor consisu of a shah and a
hub assembly with a magnetic structure. The structure of a typical BLDC motor is
CHAPTER 1: ~S'I'RODC'CTION
depicted in Figure 1.1.
Figure 1.1: Internd Structure of a BLDC Motor, plectre-Cdt Corporation].
This structure convasts with the conventional BDC motor. In the structure of
BDC motor, it is the rotor that carries the winding coils, and the permanent magnets
are bu& in the stator. The structure of BDC motor is depicted in Figure 1.2.
Figure 1.2: Internal Structure of a BDC Motor, Electro-Craft Corporation].
CHAPTER 1: INTXODUCTION
1.4 Literature Review
The position accuracy of the linear positioning table is highly dependent on the
position accuracy of the BLDC motor. There is much litenture on position control of
BLDC motor, and fewer on position conuol of linear positioning system.
1.4.1 Modeling of BLDC Motor
The BLDC motor has been widely used in indu- due to their high-
perfomiance characteristic, as dexribed in the previous sections. To control BLDC
motor, its dynamic model has to be known. G e n e d y speaking, the model of BLDC
motor can be separated into two equations. The fvsr one is the mechanical equation
and the other is the electrical equation. There are many dynamic models of BLDC
motor and some are discussed here. Some BLDC motor models assume unifonn air
gap between the rotor and the stator of the BLDC motor, and other assume the
magnetic structure of BLDC motor is linear, persson and Buric, 19761, pemerdash et.
al., 19801. Some BLDC motor models assume relucrance variations are negligible
[Krause et. al., 1986). meshkat, 19841, [Tal, 19821, and some assume the saturation
nonlinear effects are negligible, IJahn, 19841. On the other hartd, some authors avoid
moa asnimptions by taking nonlinear effecu into the BLDC dynamic models,
Wemati and Leu, 19921, L e e et. ai., 19951, and the models are too elaborate for control
purposes. Furthemore, some authoa assume that the BLDC motor is essenriaily a
permanent magnet synchronous machine or an AC machine with a permanent magnet
on the rotor w w s o n and Bury, 19981. On the other hand, some authors assume chat
when the BLDC motor is convolled by means of field-oriented control, BLDC motor
can be modeled as a BDC motor Cgo et. al., 19961.
Therefore, the modeling of BLDC moton is an on-going research area.
However, one fact is certain: if the dynamic mode1 of BLDC is too complicared for
cornputarion, it is not suitable for hi&-speed control application where high controller
updare rares are preferred
1.4.2 Position Control of BLDC Motor
ln BLDC motor position control area, many control methods have aiready
been developed. The moa common and basic one is the P D control. It has been used
widely in many areas of position control. Since PID conuol is relatively simple to
implemenr in real-the, PID control can be combined with other control methob
such as rorque control [Rabadi, 19931 and adaptive control [Ko et. al., 19961, pawson
and Bury, 19981 to adiieve certain performance spec&cations in position control.
Some authon also use nonlinear control method to address the nonlinearity of BLDC
motor in position control [Yim et. al., 19953, Endo, 19931. However, PID control has
a number of Limitations. One of the limitations is that the PI.-type of conuol cannot
smoothen the initiai excursion of current. Due ro the analog limitation of the PID
control in nature, unpredicted disturbances and noises cannoc be handled In hi&
performance drive applications, drive systems are required to response quickly to
changes in system parameters, and to recover rapidly from disturbance simation. In
this case, PID convol is less appealing. hother disadvantage of PID-type control is its
gain-nining nature. To m e the gains properly to achieve better performances requires
t h e and experience. In fact, it is tedious and time conniming to nine the gains so that
al1 desired performance specifications are met simultaneously, Liu, 19981.
CHAPTER 1: I~TRODUCTION
1.5 Thesis Overview
In Chapter 2 the experimental test-bed for this thesis is discussed. In Chapter 3
the dynamic models of BLDC motor and the linear positioning system are derived.
Transfer hinaion presentations are d e d for control purposes in rhis chapter. Open
and closed-loop simulation and experirnentai results of BLDC motor control are
presented in Chapter 4 and 5. In Chapter 6 the MSS conuol method is introduced, and
it is adopted for set-point control of the BLDC motor in Chapter 7. In Chapter 8, the
MSS control method is applied in linear positioning synem set-point control. In
Chapter 9, the robustness specifications are introduced, and concluding remarks are
given in Chapter IO.
1.6 Thesis Contributions
The main conmbutions of this thesis are listed below.
1. The development of an experimental test bed that can be used to implement
various types of conuoI iaw to the hi&-speed iinear positioning system. It is
hoped that this experiment test bed can be used and expanded upon in the
coune of future investigations.
2. The development of user programs for PID and MSS control
implementation on both the BLDC motor and t h e linear positioning synem.
3. MSS control method is implemented and tested on the BLDC motor and the
linear positioning system. An extensive experimental investigation was
carried out to mdy the effectiveness of MSS control method.
4. A systematic method of finding the convex controiler is developed.
Chapter 2
Experimental Test Bed
2.1 Description of the Experimental Test Bed
A high-speed h e a r positioning system is developed in the Laboratory for
Nonlinear Sysems Control (LNSC) at the University of Toronto, Department of
Mechanical and Indumiai Engineering. This linear positioning system is a leadscrew
linear positioning table driven by a brushless D.C. (BLDC) motor. The system
consists of an Aerotech BM130 BLDC motor; a Galii DMC1720 ISA digital controller;
an Advanced Motion Controls B25A2OAC series brushless servo amplifier; a BSA
linear positioning table; a flexible and a rigid couplings; and a 300- Penüum H PC.
The system is shown in Figure 2.1 and 2.2. With this experimental test-bed, different
types of control strategies un be implemented.
Figure 2.1: L h e v Positioning System Connecrion Diagram
Figure 2.2: Experirnental Test Bed of a High-Speed Linear Positioning System
CHAPTER 2: EXPERIHENT TEST BED
AU specification of the system components are included in Appendix C, and a
bnef description for each component is included in chis section. Table 2.1 lists all the
components of the linear positioning sgsrem according to the labeling of Figure 2.2.
1 Figure 2.2 Label Component
Linear Positionhg Table
Limit Switches
Brushless D.C. @LDC) Motor and Encoder
1nteGonnect Module
Brushless Servo PWM Amplifier
Digital Convoiler
Manufacturer
Bail Screws & Actuators Co. @SA)
Rocom
Gaiil Motion Control, Inc.
Advanced Motion Controls
-m Motion Control, Inc.
Mode1 Number
TZ3 12-AS-1 8"
Table 2.1: Experimental Facility Component Summary
The high-speed BLDC motor w d for rhis experiment un supply a maximum speed at
10,000 rpm without load and approximately 7,500 rpm with load. The BLDC motor
has a peak torque of 2.5 N-m and a continuous s t a l l torque of 1.0 N-m. An encoder is
attached to the BLDC motor to feedbadc the position to the convoiler and the
encoder has a resoluuon of 1000 pulsedrev. The BLDC motor is comected directtly to
the leadscrew table by either a flexible or a ngid coupiing. When experiments are
conducted at preliminary stage, a flexible coupling is used to ensure safety. This is
because it has more r e s b n c e to sidcloading and shearing forces than rigid coupling.
O n the other han& although the rigid coupling has less resistance to unbdanced forces,
it is better suited for directdrive operation.
The iinear positioning table can provide hi&-speed linear motion when it is
driven by a the BLDC motor. The hear positionhg table consists an ASME
leadscrew with a pitch of 0.25incWrev and 0.5 inch in diameter. The aiuminum
carriage of the linear positionhg table allows additional payload to be added to the
table. O n the positioning table there are rhree limit switches which are used to
conarain the range of motion of the carriage. One is a home switch, the other two are
direction-wise limir switches. These switches wili signal the controller to stop the
motor once the carriage has come into contact with the switches, thus ensure safe
operation. The home switch can be used to prevent the carriage from touching both
ends of the positioning table supports when the homing sequence is performed at the
beginning of any experiment.
The amplifier used in the experiment is a pulse-width-modulation (PWM)
brushless servo amplifier. It has several modes of operation for different tasks. For
position control of motor, the amplifier is set to m e n t mode. Therefore, when the
amplifier receives a reference input voltage from the digital controlier, the amplifier
converts the voltage to the correspondhg current with an appropriate gain. This gain
will be addressed in the next chapter.
The digital controller, which is installed directly into the ISA bus of the PC, is
an advanced type of digital controller. It is also a D/A and M D converter. The
digital controiler has a PID control aigorithm embedded inside but due to the
complexity of the controi law this thesis adopts in later chaprers, the embedded PID
aigorithm is bypassed. The control laws used in this thesis are executed in different
user programs, and rhe conuol inputs are calculated in volts.
The interconneaion module is basicaiiy a module which connects the digital
controller to the rest of the componenu in the system, such as the current amplifier,
the BLDC motor and the limit switches. For more detailed information about the
whole synem connection, the readers are niggested to refer to Appendk B.
All the feedback signals, nich as the angular positions are aored in a 300 MHz
Pemium PC. The PC aiso performs control law dculation, data collection, and data
manipulation. In Section 2.2 there is a list of user programs, which are developed to
perform open and closed-loop tesu, and to implement several different control laws on
the BLDC motor and the linear positioning system.
Software
Al1 the conuol program is written in the C programming language.
~icrosofrTM Visual C+ + Version 1.52~ compiler is used to create the executable
cornputer code. Library routines supplied by Galil Motion Conuol Inc. are &O
included.
AU the program, besides those specifïcally for Muitiple Simultaneous
Specification (MSS) control method and open-loop tests, funaion as follows. The
program first dows the linear positioning table to pedorm a homing sequence, which
stops the carriage at the middle of the table. The user, however, is given the option to
choose if this sequencing is needed or not. Normally, P is advised that homing
sequencing be performed prier to m y experiments. Once the homing sequence is
hished, the progam £irst prompts the user to enter the specific trajectory or position,
then it prompts the user to enter the gain vaiues. The linear positioning synem will
execute these commands and then several data will be nored in specific files. The user
can look into these files uid plot the results. For the programs written specifically for
the MSS control method, the control Iaw is already inside the program by default.
User can alter the program by changing the gain values. The programs, in this case,
will only prompt the user to enter the trajectory or position. Similarly, for open-loop
test programs the arbitrary voltages are genented by the program. The progams, in
this case, will only prompt the w r to press 'Enter' to begin.
Table 2 2 lins aU the programs developed and a brief description for each
program. Users or interested readen should read the system component connections
in Appendk B for more d e d . The source codes of these programs are included in
Description
- Sen& random voltages to the system in open Ioop for
- For open-Ioop BLDC motorsep test
- For open-loop BLDC motor sinusoichi input test
- For closed-loop BLDC motorstep test under P D controlier
- For closed-loop BLDC motor s e p test under MSS control method.
- For closed-Ioop BLDC motor sinusoidal input test under PID controiler
- For closed-loop linear positioning system step test under Pm controller
- For closed-loop linear positioning systern step test
under MSS control method
Table 2.2: A List of User Prognms with Description
In this chapter the components of the Iinear positioning system are presented-
The BLDC moror used to drive the linear positioning system is a high performance
one. In other words, it can achieve hi& accuacy and hi& acceleration. This high-
acceleration featwe WU be addresxd again in Chapter 7. The connection between the
components is descnbed in the system operation manual. Readers can fmd the system
connection details in AppendLt B, and user programs in Appendix A.
Chapter 3
BLDC Motor and Linear Positioning System Modeling
Introduction
Modeling is a very imponanr aspect in the field of control engineering. The
paramerers of the system have to be determined before one can simulate the system and
perform necessary analysis. In our application, the modeling of the BLDC motor and
the linear positioning synem are very important. The dynamk model of the motor
PLDC motor and the amplifier) derived in this chapter will be used for simulations in
Chapter 4. In Chapter 5, the simulation results wiii be compared to the experimend
resdts, and the motor dynamic model WU be evduated. Similady, the h e a r
positioning system, which consists of a BLDC motor, an amplifer, and a hear
positioning table, is modeled in rhis chapter.
CHAPTER 3: BLDC MOTOR ASD LINEAR POSITIONING SYSTEM M O D E L ~ G
3.2 Dynamic Mode1 of BLDC Motor
The dynamic equation of motion of the B D C motor can be written as
w here: Tm - appfied mechanical torque to the BLDC motor, [T J = N-m
1, - inercia of BLDC motor, - kg-m2
B, - damping coefficient of BLDC motor, [ B A - kg-m2/sec
é - angular velocity, [ é ] - radian/sec
ë = angular acceleration, [ë ] = r a d i d s e c f
To cornpiete the dynamic mode1 of the BLDC motor, the BLDC moror
parameters, 1, and B,, have ro be known. However, sometimes they are not given and
they have to be determined experimentally. In Our case, J, is given but B, is not.
Therefore, it is necessary to adopt a method to estimate them. This will be addressed
in the next section.
3.3 Linear Least-Square Estimation
There are several ways to determine system parameters. One way is through
linea. least-square estimation. A genenc form of a linear least-square problem is
introduced in this section and it WU be used to approach the problem. Suppose r
parameters, denoted as a r-dimensional vector X, are to be estimated from n
measurements, denoted as a n-dimensionai vector 2. Then X and Z are related as
where Q is a (n x Y) m a t h , which is known, and E represenrs unknown errors that
occur in the measurement, [Sorenson, 19801. Since Z denotes the measurement of the
unknown parameten, it is considered as the estimate of X. However, due ro the
presence of unknown error E, it is necessq to choose Z such that it rninimizes the
effect of the errors. For Least-squares estimation, Z is chosen to minimize the nun of
the square of the erron. Therefore, 2 is dehed as the estimate of X given the data Z
if ir minimizes the sum of square of the errors, Es, where
Since we want to minimi.rp. the square of the erroa, Es, from equation (3.4, it foiIows
that
CHAPTER 3: BLDC MOTOR LVD LINEAR POSITTONII~G SYSTEM MODELING
and the least-squares
From equation (3.6), one can isolate 2
Hence, the linear least-square estimate X is obtaïned. Recall thar Q and Z are
known, which can be obtained by conducring physical experiments. However, there
are rwo basic asnunptions to be addressed when using leur-squares estimation. Fim,
the value X, which is the puameter we want to be estimated does not change during
the period of obtaining the measurements. Second, the meanuement erron E, add
linearly to the true value of the parameter X.
CEIAPTER 3: BLDC MOTOR &ID LINEAR POSITIOWING SYSTEM MODELB-G
3.4 BLDC Motor Parameters Estimation
The BLDC motor parameters are tabulated in Table 3.1. Readen can refer to
Appendix C for a completed lin of data if needed. The inertia of the BLDC motor is
given as 9.2~10~ kg-m2. The inertia of the BLDC motor is s m d because there is no
load connected to the BLDC motor. However, the damping coefficient of the BLDC
motor is not given. Thus, it is necessary to determine the damping coefficient of the
BLDC motor in order to perform simulation and anaiysis.
Continuous Stall Torque 1.0 N-m
Maximum Speed 10,000 rpm
Rated Power 0.39 hp
Back EMF Constant
Table 3.1: BM130 BLDC Motor Spec&cauons
18.7 VoltdKpm
Static Friction Torque
First, since the inertia of the BLDC motor is available, hear Ieast-squares
estimation can be used to estimate both the inertia and the damping coefficient of the
BLDC motor. Then, the given inertia and the estimated value can be compued to
determine how accurate this estimation method is. Once the effectiveness of this
0.02 N-m
CHAPTER 3: BLDC MOTOR AXD LINEAR P o s r r r o m ~ c SYSTEM MODELLIU'C
method is confirmed, it can then be used to estimate the inertia and the damping
coefficient of the Lin- positioning table.
From equauon (3.2), T, is the mechanid torque supplied to the BLDC motor.
The mechanicd torque is defined as
where: = BLDC motor torque constant, [&] = N - d A m p
1 = supplied m e n t to the BLDC motor from the amplifier, [Il = Amp
Since the amplifier which drives the BLDC motor is a current amplifier, it converts the
reference input voltage from the controller h o m e n t to the BLDC rnoror.
Therefore, it has an amplifier gain in unir of Amp/Voit. Thus,
where: & = amplifier gain, [m - Amp/Volt
V = reference voltage from the controiler to the amplifier, [VI = Volt
Combining equations (3.9) and (3.2) we obtlin
Rewrite equation (3.10) in matrix-vector form
CHAPTER 3: BLDC MOTOR AND LMEAR POSIT~ONI'JG SYSTEM MODELINC
Comparing equation (3.11) to (3.3) we get
z=wLM
and
E = [O]
CHAP-ER 3: BLDC MOTOR AND LI-JEAR PosITIoNTNG SYSTEM MODEL~SG
3.5 BLDC Motor Mode1 in Block Diagram Form
The BLDC motor and the amplifier can be represented in a block diagram,
which shows the system variables in the frequency domain. Using equation (3.12), the
block diagram is shown ici Figure 3.1.
(Motor)
Figure. 3.1: BLDC Motor Block Diagram
It is important to note that the BLDC motor and the ampHier are combined as
a unit, which for the resc of the thesis, wiil be defined as the rnotor. Thus, the input to
the motor is the voltage sent by the controlier, and the output from the motor is the
angular position, which is detected by the optical encoder. Therefore, the reduced
block diagram is given in Figure 3.2 below
Figure. 3.2: The Reduced Block Diagram of the Motor
CHAPTER 3: BLDC MOTOR AND LINEAR P O S I T I O N ~ G SYSTEW MODELING
3.6 Identification of the Motor Parameters
T o obtain the estimate of J,, and B,, a synem identification test of the motor is
needed. In this system identification test, a pulse-Vain of arbitrary random voltages are
sent ro the motor and angular positions are obtained by the encoder. Recail from
equations (3.12) to (3.15), vecton 2, X, and matrix Q have to be found quantitatively.
Wirh n meanrrements and r parameters needed to be found, we have the following
equation
where: 2, - p, V, V, ... V ,JT: a (1 x n) vector, which contains ail voltages sent
to the motor
velocities and accelerations
Qm =
& = Dm BJT: a (2 x 1) vector, which contains the inertia and damping
coefficient of the motor
By using equation ( 3 4 , the estimates of the motor inertia and damping
3, ë,' . - e 2 B I . - e; '! . .
- 0 , 6 , -
: a (n x 2) rnauix, which contains the angular
coefficient, j,,, and km can be obtained
User program, open.c, is developed to send a pulse-uain of arbitrary voltages to
the motor and angular positions are recorded. The angular velociues and accelerations
are calculated from the angular positions. A galman filter algorithm [Gelb, 19741 is
embedded in the program and Kalman filter is used to m e r out noises and make better
approximation to the velocities and the accelerations. j,and hm obtained h m the
open-loop test are 9.10~10" kg-m2 and 3.5x104 kg-m2/sec. respectively. The nexr
parameters K, and K, have to be known in order to complete the modeling. K, is given
as 0.22 N-rn/Amp in the BLDC motor specification, and K, is determined
experimentdy. Fim, the reference input voltages kom the controiler to the amplifier
is known. They are put inro a vector fom, and it is denoted as M. Second, the
output currenu to the BLDC motor un also be found. The wrents can be observed
from the m e n t sensor monitor in the amplifier, and they are put into a vector form,
denoted as m. Then the relationship between the input voltage and the output m e n t
can be represented by
and y, the amplifier gain, has the unit of Amp/Voit. Since this 1-V relationship is
linear, is the slope of the 1-V graph. By performing several tests, cm be easily
obtained Table 3.2 tabulates the input voltages and the corresponding output
nirrents. Therefore, K, is found to be 0.854 Amp/Voit.
CHAPTER 3: BLDC MOTOR A m LIXEAR POSITIONING SYSTEM MODELLNG
Table 3.2: Input Voltages and Output Currents
Input Voltages (Volt)
Wirh ail the motor parameten determined, the uansfer fiinaion of the motor is
obtained. It is depicted in Figure 3.3.
Output Cumnts (Amp)
Figure 3.3: The Motor Transfer Funaion
Compare the inertia j, with that tabdated in Table 3.1, it is conclusive to Say
that the linear lean-square estimation is adequate to estimate motor parameten
CHAPTER 3: BLDC MOTOR ALVD LINEAR P O S ~ O N X X G SYSTEM MODELIXG
acnuately. Once we obrained accurate parameter esrimates of the motor, we confirm
thar the Linear lem-square estimation is adequate in determining the unknown
parameters. Therefore, we can use linear least-square estimation ro determine the
unknown parameters of the iinear positioning table as well.
CHAPTER 3: BLDC MOTOR AND LINEAR P O S I T I O X ~ G S Y S T E M MODELING
3.7 Dynamic Mode1 of Overall System
In the lasr few sections, the dynaxnic mode1 of the motor, which represents the
BLDC motor and the m e n t amplifier, is derived The h e a r positioning system of
this rhesis used for experiments consisu of the BLDC motor, the amplifier, and the
linear positioning table. Since the motor now consists of both the BLDC moror and
the current amplifier, we defme the limar positioning system w hich comists the motor
and the linear posiuoning table. The linear positioning table is described in details in
Chapter 2. When the linear posiuoning table is comected to the motor, the linear
positioning table changes the inertia and damping coefficients of the motor. Therefore,
the dynamic equarion of motion of the linear positioning table with the motor can be
where: T, = applied mechanicd torque to the linear positioning system, CTJ - N-m
/, = inertia of the iinear positioning system, - kg-m2
B, = damping coefficient of the iinear positioning syaem, [BJ - kg-m2/sec
CHAPTER 3: BLDC MOTOR AND L ~ E A R POSITIONISG SYSTEM M O D E L ~ C
9 - anguiar velocity, [O ] - radidsec
To complete the dynamic mode1 of the iinear positioning system, parameten, j,
and B, have to be known. However, they are not given and they have to be
derermined experimendy. Therefore, it is necessary ro use linear lem-square
estimation to estimate the puameten. This will be addressed in the next section.
CHAPTER 3: BLDC MOTOR AND LIXEAR POSI'IIONING SYSTEM MODELKG
3.8 Linear Positioning System Mode1 in Block Diagram R e d from Figure 3.2 that the reduced block diagam represents the mode1 of
the motor, which consisu of the BLDC motor and the curent amplifier. Similady,
the reduced block diagram of the linear pontioning system contahi the linear
positioning table, the BLDC motor, and the current amplifier. Evduating the Laplace
transform of equation (3.20), the block diagram fonn of the linear positioniag synem
is given as in Figure 3.4. The parameters shown in the block diagram have already
been described in the previous section.
Figure 3.4: The Reduced Block Diagram of the Linear Positioning System
3.9 Identification of the System Parameters
To obtain the estimate of /, and B, an idenufication test of the linear
positioning synem is needed. In this identification test, a pulse-tain of arbitrary
andom voltages are sent to the linear positioning system and angular positions of the
motor are obrained by the encoder. Red1 equations (3.12) to (3.15), vecton 2, X, and
m a r k Q have to be found quantitatively. With n measurements and r parameters
mus be foumi, we have the foiiowing equation
where: 2, = IV, V, V, ... VJ? a (1 x n) vector, which contains all voltages sent
to the linear positioning system
ë r é r
Qs = : a (n x 2) m a t h , which contains the angular velocities
and accelerations
y - IT, BJT: a (2 x 1) vector, which contains the inertia and the darnping
coefficient
By using equation (3.7), the estimates of the Linear positioning system inercia and
CHAPTER 3: BLDC MOTOR AND LXNEAR POSITIOXI?~'G SYSTEM MODELCJG
the damping coefficient, j, and iS can be obtained.
Again, 0 p . c is used to send a pdse-train of arbitrary voltages to the 1inea.r
positioning system, and angular positions and velocities are recorded The angular
velocities and accelerations then are caiculated £rom the anguiar positions. A Kalman
filter algorithm [Gelb, 19741 is embedded in the user program and Kahan filter is used
to filter out noises and d e berter approximation ro the vefo~ues and the
accelerations. The &and ks obtained from the identï£ication test is 2.00~10-~ kg-mL
and 1.00x10'> kg-m2/sec. The current amplifier gain, & is increased to 1.82 A.mp/Volt
due ro the facr thar more m e n t is needed to drive the heear positioning system.
Wich ail the parameters determineci, the transfer function of the iinear
positioning system is obtained, and is depicted in Figure 3.5.
Figure 3.5: The Linear Positioning System Transfer Funaion
CHAPTER 3: BLDC MOTOR AND LINEAR POSITIONNG SYSTEM MODELIPU'G
Surnmary
In diis chapter, estimata of inertia and damping coefficient of the motor and
the linear positioning system are obtained rhrough linear lean-square estimation.
There are a few assumptions made when performing estimation. Fim, the parameters,
J,, B,, 1, and B, of the motor and the linear positioning system dynamk models do
nor change during the period of data coilecting. Second, the meanvernent errors E,
add linearly ro the uue values of the estimates.
In the process of modeling, the dynamic model of the motor developed contains
borh the BLDC motor and the current amplifier. Similarly, the dynamic model of the
linear positioning system contains the hear positioning table and the motor. The
dynamic model of the linear positioni~~g system can be modeled as equation (3.20)
because the linear positioning system an be viewed as the motor with a load.
The dynamic modeis of the linear positioning system and the motor will be
tested and verif~ed by open and closed-Ioop simulations and experiments in the
following chapters.
Chapter 4
Motor Control Results
Simulation
4.1 Introduction
In this chapter, simulations of motor control are performed. The purpose of
simulation is to compare the results with the experimental results and mdy how
accurate the simulated model is. Therefore, by performing simulation of the motor in
both open-loop and close-loop f o m and comparing the resulu with the experimental
ones, the dynamic model of the motor denved in Chapter 3 can be verified. The
readers wiil then appreciate that to achieve hi&-performance conrrol of the motor, use
of a feedback control system is preferred. Typically, feedback control methods such as
the Proportionai-Integral-Derivative (PD) control, are used widely in control
industry. P D conuol is relatively robust and easy to implement in a digital control
synem environment. However, PID control is not free of limitations. The limitations
of PID control will be addressed later in Chapter 5.
In the simulation presented in this chapter, the dynamic mode1 of the motor
derived in Chapter 3 does not include disturbances and noises. Therefore, the
simulation results are not expected to be exactly the same as the experimental results.
However, dynamk mode1 of the motor can be verified if only s m d deviation exists.
Modeling s o b a r e such as simtilinkRif, MatlabTM is used to perform simulations. In
the foiiowing semions, aii simulation setups are described with reference ro
acco mpanying figures.
In Section 4.2 and 4.3 simulations of open-loop motor set-point step and
sinusoidal tests are performed. In Section 4.4 and 4.5 simulations of closed-loop motor
set-point aep and sinusoidal trajectory convols are performed In closed-loop conuol,
PD comrol is used. Findy, Section 4.6 ~ m m a r i z e s the simulation results, and
important remarks wiii be made.
4.2 Simulation of Open-Loop Motor Step Response
Figure 4.1 shows the motor control system represented in an open-loop form.
The motor control system is simulated by SimulinkTM, Matlabm, and it is necessary to
define the details of the simulation model and each vander functions.
Figure 4.1: Open-Loop Motor Conuol System
The input, V(s), is an input voltage and the output, W(s), is motor angular position.
In Chapter 3, the dynamic model of the motor has been derived in equation
(3.12), and the block diagnm of the open-loop motor system is depicred in Figure 3.3.
In this chapter, P(s), the dynamic model of the motor, is given in the frequency
domain as
where: %, = gain of the motor, K, -0.188, = N-&Volt
im = estimated damping coefficient of motor, km = 3.Sxi04, [ hm 1 = kg-m'/sec
Thus, using the above parammer vaiues,
Let us define a constant gain
to be used in the simulation. The simulation block diagram is depicted in Figure 4.2.
Figure 4.2: Simulation Block Diagram for Open-Loop Motor Step Response
In the simulation block diagram, severai componenrs are co~ec ted . They
represent a step generator, a constant gain (KJ, a motor mode1 P(s), and a scope. The
scope is used to observe the r e d t s of the open-loop nep test. The output-port y is
used to tansfer the a d position data back to the MatlabTM environment for anaiysis.
A constant input signal of 10.0 unit, is specified by the designer. This input
signai is then scaled by the gain, and sent to the motor. The result is depicted in Figure
4.3. From the simulation r 4 t s it can be seen that since this is an open-loop step
response, the motor responses to the input signai by rotating in one direction
until the simulation is over. The open-loop simulations r e d u obtained in this section
will then be compared to the open-loop experimental r d u for verifying
mode1 of the motor.
In the nexc section, simulation of an open-loop
performed.
motor sinusoicial
the dynamic
;nput test is
02 0.4 0 -6 0.8 1 1 2 Time (sec)
Figure 4.3: Simulation Resuit of Open-Loop Motor Step Response
4.3 Simulation of Open-Loop Motor Sinusoidal Input Test
In this section, a sinusoidal signal is input to the motor. The motor control
system is again simulated by SimiilinkTM, Matlabm. The simulation block diagram is
depicred in Figure 4.4.
Figure 4.4: Simulation Block Diagram for Open-Loop Motor Sinusoidai Input Test
In the above simulation block diagram, severai cornponents are comected.
They represent a sinusoidal generator, a constant gain, a motor mode1 P(s), and a scope.
The scope is used to observe the simulation resuits of the open-loop sinusoidal test.
The output-port y is used to transfer the a d position data back to MatlabTM
environment for analysis.
An arbitrary sinusoidiil signal is input by the designer. The reason to use a
sinusoida input is to observe the motor behaviors under a penodic signal. In this case,
the input sinusoidal signal h a an amplinide of 10 unit and an angular frequency of 30
radidsec. The output motor angular position response is depicted in Figure
4.5. From the simulation resdts
sinusoidal test, the motor responses
it can be seen that since this
to the input sinusoidal signal by
is an open-loop
direction u n d the simulation is over. The open-loop simulation results obtained in
this section will then be compared to the open-loop experimentai r d t s for verifying
the dynarnic mode1 of the motor.
s e p test is performed.
In the next section, simulation of closed-loop
0 -4 0.6 0.8 1 1 2 1 -4 1.6 1 -8 2 Time (sec)
Figure 4.5: Simulation R d t of Open-Loop Motor Sinusoicial Input Test
4.4 Simulation of Closed-Loop Motor Step Response
In order to have better control of the motor, closed-loop control is necessary.
Again, simulation will be run for closed-loop s e p and sinusoidal input tests. The
r e d t s will then be compved to the experimental ones included in Chapter 5 and
discussion wiil follow.
Figure 4.6 shows the motor convol system represented in an closed-loop form.
The closed-toop motor control system is shulated by Simtilinkm, ~ a r l a b ~ , and the
simulation block diagram is depicted in Figure 4.7.
Figure 4.6: Closed-Loop Motor Control System
E(s) 4
Figure 4.7: Simulation Block Diagram for Closed-Loop Motor Step Response
Controller U(s) G(s) i
Motor P(s)
? O
The motor dynamic model P(s) has been derived in Section 4.2 and some components
are darified. In the simulation block diagram, several components are connected.
They represent a s e p generator, a PIDtype of controlier, a motor dynamic model P(s),
a multiplexer, and a scope. The multiplexer is used to collect multiple signals and
shows them on the scope. The output-pom y, y2, and y3 are w d to t r a d e r the data
such as error, desireci, and a d positions back to ~ a r l a b ~ environment for analysis.
The controller G(s) in the closed-loop simulation is a PD controller. It is denoted as:
G(s) = Kp + Kds (4-4)
An arbitrary desired position od is input by the designer. In this case, the input
sep position is 10 radians, and the controller has proportionai (IC,) and derivative ( .
gains. A system plant c m be classified into different types of system, p a n de Vegte,
1994). In other words, the type number is the number of inregrators in a system plant.
If a system plant is a type O system, in ciosed-loop control, it has a constant steady-state
error following a s e p input. On the other hand, if a system plant is a type 1 system, it
has zero steady-state error following a sep input in closed-loop control. In control
purposes, by adding the integral gain (KJ, a system cm be changed from type O to type
1. Therefore, a system has zero steady-state error following a step input, van de
Vepe, 19941. Since the dynamic model of the motor is essentiaiiy a type 1 system, it
has zero steady-state error. The integral gain in this case gives no improvement to the
output r d = . Furthemore, by adding a derivative gain a synem can be aabilized and
converge to zero steady-state error quicker. Therefore, PD conuoller is udized
instead of PID.
CHAPTER 4: MOTOR CONTROL SIMLZATIOX RESULTS
The PD gains are chosen as Kp -0.95 Voldradian and &= 0.02 Volt-sec/radian.
The simulation r d t is depicted in Figure 4.8. From the simulation result it can be
appreciated that the sready-mte error is
overshoot occurs. In the next seaion,
trajectory test is performed.
zero, the rise Ume is about 0.04 sec, and no
simulation of closed-loop motor sinusoiciai
Figure 4.8: Simulation R d t of Closed-Loop Motor Step Response 6, - 0.95 Volt/radian, & = 0.02 Volt-sedradian)
4.5 Simulation of Closed-Loop Motor Sinusoidal Input Test
In the sinusoida1 tm, a sinusoidai signai is input to the dosed-loop motor
syaem. Again, the dosed-loop motor system is simulated by SimulinkTM, ~ a t l a b y
with the simulation block diagram given in Figure 4.9.
Figure 4.9: Simulation Block Diagram of Closed-Loop Motor Sinusoidal Trajectory Test
The motor, P(s), is modeled as in equation (4.2). In the simulation block
diagram, several componenu are connected. They represent a sine wave generator, a
sumrning block, a PID conuoller, a motor P(s), a muitiplexer, and a scope. The
output-ports y, y2, and y3 are used to d e r the data nich as position error, desired,
and acnial positions back to MatlabTM environment for andysis.
The desired sinusoibl trajectory is arbitrarily set by the designer. The
CEIAPTUt 4: MOTOR CONTROL SI~ILZAITOLC RESULTS
controuer G(s) is a Proportional-DenMuve (PD) controiier. The PD gains are chosen
as Kp= 0.95 Voldradian and
trajectory is 10 radians in
- . . .
&-0.02 Volt-sedradian. In this case, the input sinusoida
amplitude with 10 radidsec angular frequency. The
simulation resuits are depicted in Figure
peak error is 0.22 radian.
From the results shown in Figure 4.10,
Time (secs)
Time (secs)
Figure 4.10: Simulation Results of Closed-Loop Motor Sinusoida Trajectory Test (Kp - 0.95 Vo Wradian, K,, - 0.02 Volt-sedradian)
Simulations of open-loop and c1osed-loop set-point and sinusoida1 tests of the
motor are performed. The simulation results show that open-loop test of the motor is
inadequate to yield satisfactory r d t s . Since in open-loop test there is no feedback the
motor, the motor being supplied with input signals cannot obtain a desired position.
Therefore, closed-loop control is needed In closed-loop control the motor can reach
the desired position because of the use of feedback. PD is used innead of PID conuol.
The integral gain has no effect on type 1 system such as our motor dynamic model.
Therefore, PD control is adequate to conuol the motor effectively. With no
disturbances and noises accounted in the simulation, the simulation r e d t s are as
expected.
In the next chapter, experiments with both open and closed-loop control of the
motor are performed, and the experimental results wili be compared to the simulation
results.
Chapter 5
Motor Control Experimental Results
Introduction
In the last chapter, simulation results of open and closed-loop control of the
motor are obtained. In this chapter, experiments with the motor are conducted and
the results will be compared to the simulation results. The description of the
experimend test bed are included in Chapter 2, and it wili not be presented in this
chapter again.
h Section 5.2 and 5.3 experiments of open-loop motor set-point step ami
sinusoidal input tests are performed. In Section 5.4 and 5.5 experiments of closed-loop
motor set-point sep and sinusoidal mjectory tests are performed Finally, Section 5.6
nimmarizes the cornparisons between experimentd and simulation results, and the
deficiencies of PID control will point to the need of a novel control methodology.
5.2 Experiment of Open-Loop Motor Step Response
User program step0pen.c is developed to test the motor in a open-loop sep
response rest. The program prompts the user with options to select gains and the
desired set-point anguiar position. The source code of stepopen.~ is included in
Appendix A. Again, the motor dynamic mode1 is defined to be
where: K, = gain of the motor, R, -0.188, = N-mNolt
B, - a m a l damping coefficient of motor, [ B,]= kg-m2/sec
A constant input voltage is specified by us. This input voltage is xaled by a
gain of 0.95 VolrNolt. Therefore, a voltage of 9.5 Volt is send to the motor. The
sampling penod of the experiment is 0.8 msec. This sarnpiing period is used in all the
experiments for the rest of this thesis. The result of the s e p test is depicted in Figure
5.1. From the experimental r d t one can see that since this is an open-loop nep tex,
the motor responses to the input voltage by tuming in one direction. When compared
Figure 5.1 to 4.3, it can be appreciated that the r e d t s are not the same. In the
simulation, the motor t u m s a total of 8000 radiaru in a 2 seconds simulation, and hence
the motor has a speed of 4M)O radidsec. On the other hand, in the experiment, the
motor tums a total of 740 radians in a 1.8 seconds simulation, and the motor has a
speed of 411.1 radidsec. The possible causes of mismatch berneen experimentai and
simulation r d t s are mode1 parameter uncertainties, nonlinear effects in BLDC
motor, and dimubances and noises. Ali these possible causes will be sddressed in
Section 5.6.
I l I i I
O - C
O 02 0.4 0.6 0.8 1 12 1 A 1.8 Time (sec)
Figure 5.1: Eicperimentai Result of Open-Loop Motor Step Response
CHAPTER 5: MOTOR CON~ROL EXPERMENTAL RESULTS
5.3 Experiment of Open-Loop Motor Sinusoidal Input Test
User program si"0pen.c is developed to test the motor in a open-loop sinusoidal
input test. The program prompts the user with options to select gains, sinusoidai input
amplitude, and the rime period of the sinusoidal input. The source code of n'nopen.~ is
included in Appendix A.
An arbitrary sinusoidal signal is input by the designer. In this case, the input
sinusoidai signal has an amplitude of IO Volt and the frequency of 10 radidsec.
Therefore, the tirne period of the sinusoidal input signal is about 0.628 sec. A gain of
0.95 VolrNolt is selected to s d e down the input voltage to a constant of 9.5 Volt.
The result of the sinusoicial input test is depiaed in Figure 5.2.
Figure 5.2 shows that the motor tums in both directions but the position of the
motor drifts toward the negative direction as the test progresses. The sources of this
behavior has been thoroughly investigated. Possible causes include: 1) nonlinear
friction, 2) defenive motor position @aU) sensors, and 3) amplifier bias offset. These
possible causes will be addressed in Section 5.6. The only way to compensate this
problem is to use closed-loop control. Experiment of closed-loop motor control is
conducted for next section.
T i m (sec)
Figure 5.2: Experimend Resulr of Open-Loop Motor Sinusoida1 Input Test
5.4 Experiment of Closed-Loop Motor Step Response
User program q a d . c is developed to test the motor in a closed-loop step
response test. The program prompts the w r with options to select gains and the
desired set-point angular position. The source code of stepradx is included in
Appendix A. The experimental result is depicted in Figure 5.3.
" O 0 2 0.4 0.6 0.8 1 1.2 1.4 1.6 1 .B
Time (sec)
Figure 5.3: Experimentd Result of Closed-Loop Motor Step Response (K, = 0.95 Voldradian, & - 0.02 Volt-sec/dan)
In this experiment, PD control is used. Again, the integral gain KI has no effect on
type 1 system. The PD gains are chosen as & = 0.95 Voldradian and & = 0.02 Volt-
sedadian. The desired position is 10 radians. By comparing Figure 5.3 to 4.8, both
r e d t s are very similar to each other. In the simulation, the aeady-state error is zero,
rhe rïse time is about 0.04, and no overshoot occurs. In experiment, the neady-state
error is -0.177 radian, the rise time is about 0.04, and no overshoot occurs. Therefore,
the experimentai r e d has proven thar closed-loop control of the motor can
compensate the unknown flaws of the motor which appear in open-loop rem.
Although not completely, the closed-loop control can cornpensate the model
parameter uncertainties, nonlinear effects, and disturbances and noises.
5.4.1 Velocity Feedback (Minor h o p Feedback)
Since the motor model contlins a lot of parametric uncertainties and un-
modeled nonlinear effect, dynamic compensation is needed Closed-loop control with
dynamic compensation can improve the performance of the syaem. One way to
achieve dynamic compensation is to use velocity feedback. Velocity Feedback is an
exarnple of minor loop feedback. Figure 5.4 shows the closed-loop conuol block
diagram with velocity feedback
Figure 5.4: Closed-Loo p Motor Control System with Velocity Feedback
In Figure 5.4, K,, is denoted as the velociry gain, and 5 is the derivative term in
Laplace domain. In closed-loop control with velocity feedback, the output signal,
which is the actual position in this case, is differentiated with respect to time to
become velocity. Ir is then multiplieci by a gain K, and added up to the control signal.
Then the combined signal is sent to the motor. The main reason for use of velocity
feedback can be appreciated when the minor loop (with P(s), s, and &) is reduced into
a tansfer hct ion . The reduced transfer function is very similar to die original motor
transfer hinction P(s) except the pole at s - -B/J is repositioned at s - -(B+K;)/J.
The velocity feedback effectively increases the damping of the motor by the gain K,,.
Then the reduced transfer function can now be identified as the effective motor
transfer function P&(s) and has poles at s - O and s - -(B+K,,)/J. Since one of the
poles of P,(s) is furcher 'pushed' dong the negative axïs, P&(s) is more stable than P(s).
Thus, this contributes to more stable overali closed-loop transfer htnction including
the controiier K(s). To illustrate the effectiveness of velocity feedback an experiment is
conducted. Figure 5.5 shows the r d t with Kp - 0.95 Volthadian, K,, - 0.02
Volt-sec/radian, and S, = 0.02 Volt-sedradian. The steady-state error is now reduced
to -0.083 radian, and the rise t h e is about 0.04 sec.
Figure 5.5: Experimental R e d of Closed-Loop Motor Step Response with Velocity Feedback (R, = 0.95 Voldradian, & = 0.02 Volt- sec/radian, & - 0.0 i Volt-sec/radian)
12 - 1 l 1 1 L I 1 1
1 1 1 1 1 1 1 1
1 1 I 1 1 1 I 1
1 1 1 I t 1 1 1
I l I 1 1 1 1 1
l 1 1 1 l 1 1
1 1 I 1 1 1 I 1
I 1 1 1 1 1 1 1 1 1 1 1 1 1 1
-r------ 1 - - - - - - 7 - - - - - - 7------ y - - - - - - 7 - - - - - - T - - - - - - 4
1 1 1 1 1 1 1
1 1 I 1 I I 1
1 1 1 1 I 1 1
1 I 1 1 4
1 I 1 I I I 1
1 1 1 1 1 I I 1
I t 3 8 1 L
1 1 1 1 1 I
8 - - - - - - - ~ - - - - - - ~ - - - - - - 1 - - - - - - ~ - - - - - - - 1 - - - - - - i - - - - - - 2 - - - - - - i - - - - - - I 1 1 1 I 4 1
1 1 1 1 I t 1
I 1 A 1 1 l 1 1
C 1 1 1 1 I 1 1 m - D 0 Y E 6 O - - - rn O
t - 5
4
1 1 4 1 1 1 1
I 1 l 1 1 1 1
I l 1 1 1 I I 1 1 4 I t I I
1
-.----- L - - - - - - 1 - - - - - - - 8 - - - - - - - 1 - - - - - - - 1 - - - - - - 2 - - - - - - 2 l 1 1 1 1 1 1
I 1 1 1 I 1 1
I l 1 1 1 1 1
1 1 1 1 1 1 I
1 1 1 1 1 1 I 1
1 I 1 I I 1 1 I
1 1 1 1 1 1 1
1 1 1 l I 1 I 1
- - - - - - - 5 - - - - - - I 1 l 1 l 1 1 - - - ' - - - - -"- - -1-'- - - - ' - - - - " - - " ' - T - " - - - l - - - - - - - - - -
l
i l I 1 I 1 1 I 1 1
I 1 1 1 l I 1 1
1 1 1 1 I 1 I 1
1 1 1 1 1 1 l 1
I 1 1 1 1 1 1 4
1 1 I 1 1 1 l 1
1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 2 . . - - - - - - C - - - - L - r - - - - - - I - - - - - - 1 - - - - - - - ( - - - - - - 4 - - - - - - 4 - - - - - - + - - - - - - - 1 1 l 1 1 I 1 1
1 1 t 1 1 1 1 1
L I 1 1 I 1 1 1
I 1 I l 1 1 1 1
1 I 8 1 I I 1 1
l 1 1 1 1 I I 1
1 I 1 1 I 1 t 1
I 1 1 I I 1 1 l
O I 1 1 I I J I 1
O 0 2 O -4 0 -6 0.8 1 1 2 1 -4 1 -6 1.8 Time (sec)
Experiment of Closed-Loop Sinusoidal Trajectory Test
User program mtraject-c is developed to test the motor in a closed-loop
sinusoidal trajectory test. The program prompts the user with options to select gains,
sinusoidal input amplitude, and the Ume period of the input sinusoidal trajectory. The
source code of nrbrajct.~ is induded in Appendix A. The ersperimentai r d is shown
in Figure 5.6.
Figure 5.6: Experimend Results of Cloxd-Loop Motor Sinusoidal Tnjectory Input Test (IL, - 0.95 Voldndian, & - 0.02 Volt-sedradian)
In this experiment, PD control is used The PD gains: Kp = 0.95 Voldradian
and K,, = 0.02 Volt-sedradian are used. The desired sinusoidal input amplitude is 10
radians and the fiequency of the input sinusoidal trajectory is 10 radidsec. Let us
compare Figure 5.6 to 4.10. In the simulation, the peak error is 0.22 radian. In the
experiment, the peak error is 0.47 radian in one direction and -1.1 radian in other. The
experimental result bas proven that closed-loop control of BLDC motor can
compensate the uaknown flaws, which cause the motor to behave unexpectedly
Figure 5.2). However, note that the uneven peak erron in both direction of the
motor is caused by the fact that the motor has a tendency to drifi in one direction, as
described previously. As pointed out in Section 5.3, the main cause of this
phenornenon is not known.
In the previous section, velocity feedback is inuoduced. In this section,
velocity feedback can be used to minimire the peak errors. However, as indicated
before, the unevemess is caused by something unknown to us and the purpose of using
velocity feedback is to minimize the peak erron of the motor in both directions. The
result of experiment with gains: Kp = 0.95 VolL/radian, & = 0.02 Volt-sechdian, and
K, = 0.01 Volt-sec/radian are shown in Figure 5.7. The peak errors of both sides are
0.4 and -1.0 radians. The closed-loop PD control with velocity feedback does not
significantly improve the performance of the motor. The reason is explained as
follows. In trajectory tracking, it is not the steady-state error needed to be minimized.
Instead, it is the peak erron needed to be minimized. Unlike the neady-state error,
which l i t e d y means the error at infinite tirne, peak erron occur at instances when
the position of the motor changes from one direction to the other. In other words,
peak error physically means the error at the rime of changiug positions. Since the
derivative gain & adds a zero and M e r 'pushes' the pole of the overall closed-loop
transfer function into more negarive direction, & improves the srability of the closed-
loop system similar to K, does. Therefore, although K,, can irnprove the results
slightly, & has no significant impact on the overd closed-loop system performance.
O 0 5 1 3 2 3 The (sec)
I l I I 1
1 I l 4 I
-1.5 r I I I I J O 0 5 1 15 2 2 5 3
Time (sec)
Figure 5.7: Experimentai R d t s of Closed-Loop Motor Sinusoicial Trajenory Input Test with Velociry Feedback (Kp - 0.95 Voldndian, & = 0.02 Volt-seclradian, and & - 0.01 Volt-sedndian)
5.6 Uncertainties in BLDC Modeling
In this chapter, experimentai results of open and closed-loop control of the
motor are presented Convvred with simulation r 4 t s in the l u t chapter, the
experimentai results are somewhat different. In Section 5.1 experiments of open-Ioop
motor set-point s e p input test were conducted Figure 5.1 shows that the position of
motor increases in magnitude as urpecred. However, when cornparrd the experimental
resuits to the simulation results depicted in Figure 4.3, the r e d u are not the same.
Also, in Section 5.3, the experimentai r d t of open-loop motor sinusoidai trajectory
test is also different from the one depicted in Figure 4.5. The possible causes of
mismatch between experimend and simulation r d t s are mode1 parameter
uncertainties, nonlinear effects in BLDC motor, disturbances, and noises.
5.6.1 Mode1 Parameter Uncertainties
The inertia and the damping coefficient used in simulations are estimated of the
motor true vaiues. They are obtained in Chapter 3. It is valid to say j,,,and B,are
never the same as 1, and B, as indicated in equations (4.1) and (5.1). Therefore,
differences in simulation and experirnental r d t s exist. Although the estimated inertia
and damping coefficient are different than the a d values, the estimated values can be
bounded wirhin a limit to ennire the robustness of the motor system. The concept of
robustness will be addressed Iater in Chapter 9.
5.6.2 Nonlinear Effects in BLDC Motor
As mentioned briefly in Section 1.4.1, there are a lot of nonlinear e f f e m in
BLDC motor. These include: eccmtric rotation due to non-uniform air gap, magnetic
saturation, and reluctance variations of BLDC motor. In most cases, the air gap of
BLDC motor is asnimed to be uniform. Unfornmately, in real situations, the Ur gap
exists between the rotor and the stator may not be perfedy uniform. Thus, varying
air gap causes the BLDC to behave in a non-ideal m e r . Magnetic saturation c m be
significant in BLDC motor modeling. During magnetic saturation, the flux linkages
are no longer linear funcrions of the phase currents of the BLDC motor, [Hemati and
Leu, 19921. Therefore, a BLDC motor with magnetic saturation is difficult to model
exactly. Models with all the nonlinear effects taken into account are unially for
academic or general control purposes.
5.6.3 Unknown Disturbances and Noises
Since BLDC motor relies on complicated position sensing devices such as built-
in hall sensors, the dynamic nature of the hall sensor is not exactly known. They may
response differently with different amplifiers or conuollers. In our case, both the
motor and the amplifier are proven by manufactwen to be working perfectly. The
cables of the motor are shielded to eliminate any possible noises. However, noises
exia vimially in ail electronic components and they simply cannot be included in
model without complicated mathematics.
5.7 Summary on Experimental Results
Simulation and experimentai resuits of both the set-point md trajectory
tracking control of the motor have been presented. In the previous section, the
experimental and simulation resuits of open-loop tests are compared and discussed. In
this section, the closed-loop test r d t s are mdied dosely.
In Section 5.4, -riment of closed-loop motor set-point s e p test is performed.
In the experiment, PD control is used The reason why steady-state error exists is
because the signal input to the motor to obtain the finai desired position is too small,
and cannot overcome friction. Neverrheless, velocity feedback is introduced to reduce
the steady-state error. Velocity feedback irnproves the closed-loop system stability and
therefore improve the performance.
In Section 5.5, closed-loop sinusoidal trajectory tests are performed Again, PD
control is used. One can see that the tracking error is within 1 radian. The unevenness
of the tracking error is due to the chancreristic of the BLDC motor. Closed-loop
control such as PD control can reduced the error in both directions. The peak erron
can be reduced by using velocity feedback. However, the effectiveness of velocity
feedback is limited, as urplained in Section 5.5.
5.8 Performance Specifications
The purpose of closed-loop control is ro ensure that the output response is as
close to the desired input of the conuol system as possible. To evaluate the measure of
the output of the system, a set of performance specifications is defined In set-point
control, the moa common performance specifications are steady-sute error, relative
overshoot, N e Ume, and settling tirne. There are llso some other less common
performance specifications available. Examples are sep response envelope, and sep
response interaction. In this thesis, we are interested in the moa common
performance specifications. Specifically, they are sready-state error, percentage
overshoot, and rise Ume. These specifications describe the performance of the output
of the system. In trajectory tracking conuol, the mon common performance
specifications are peak error, path accuracy, and velocity accuracy.
All performance specifications are defined as follows, and the f m three
specificationswill be used throughout the rest of the thesis.
(l) Steady-state error
(II) Relative Ovenhoot
0 Peak error
(V) Path accufacy
(VI) Velocity accuncy
where: ed = desired motor p o s i t i o n ~ d ] - radian
0" = a m a i motor position, [Oa ] - radian
èd = desired moror velocity, [ éd ] - ndian/sec
8" = actual motor velocity, [8" ] - radidsec
5.9 The Deficiency of PD or PID Control
In the previous section, performance specifications are defined. They are now
used to measure the performance of our BLDC motor system. U n d now the BLDC
moror is controlled by a simple PD control. PD or PID control is in common use due
to its easy-to-împlement nature. However, PD or PID conuol is not hee of
drawbacks. The disadvanrage of PD or P D control is found in Nning gains to achieve
a desired closed-loop performance. In order to achieve certain performance
specifications, adjustment of the PD or PID controller gains is not simple. Figure 5.8
shows the position of the motor with various gain combinations.
It can be appreciated that the position of the motor varies with different PD
gain combinations. The motor responses quickly with proponional gain Kp with
ovenhoot occurs, while the motor respoaxs relativeiy slowly with proponional and
derivative gains Kp and &, with no overshoot occurs. Therefore, it is clear that when
several performance specifications are to be satisfieci, conflicts wiil appear in gain
selection. In other words, one set of gains can satisfy some pedormance specifications,
while others fail. One way to compensate for this conflict is to perform trial and error
in gain tuning, loosen the performance specifications or simply consider less
performance specifications simdtaneously. However, to consider fewer performance
specifications may not be feasible in hi&-performance control. For some applications,
such as high-speed assemblhg machine, performance specifications are very crucial and
aringent; and to control application like this, the tuning nature of PD or PID control
will be tedious or at rimes infeasible. Furthemore, control engineen are always
looking for more systemauc ways to determine appropriate gains for different systems.
Gain nining is always frustrating and tedious; and PD or PID control, unfortunately, is
more suitable for those who have gained enough experience on some partidar
syaems. Therefore, a more systematic approach to determine gains is needed and the
novel control method is presented in Chapter 6.
Figure 5.8: Motor Position with Various Gain Combinations
Chapter 6
MSS Control Problem
6.1 Introduction
From the lasr chapter, the deficiencies of PD and PID conuol have been shown.
Again, it has been shown that while PD or PID controllen can be tuned to satisfy
specifications individually, it may be &cuit and tedious to tune the PD or PID gains
to satisfy a set of specifications simdtaneously. Therefore, a new control method,
cdled Multiple Simdtaneous Specification Control method, is developed Liu, 19981.
This control method w u developed by Prof. James K. Mills and Dr. Hugh Liu at the
Department of Mechanical and Industrial Engineering, University of Toronto. In this
chapter, a brief review of the theory of MSS control is given without proofs.
Interested readen may read the reference Liu, 19981 or associated references cited.
CHAPTER 6: MSS CONTROL PROBLEM
6.2 System Framework Definition
It is known that any linear tirneinvariant @TI) system can be represented in an
uniform framework as shown in Figure 6.1 Boyd & Baratte, 19911.
Figure 6.1: Linear System Framework
With this linear system framework established, W, 2, U, and Y are defmed. UER' is
the actuator input and it is generared by the controller. W E % ~ is ail other input into
the system, which can be any desired uajectory or extemal disturbances. YdR1 is the
output signal accessible to the controller. ZE 'R~ ' is the output signal inrerested to the
designer. In the frequency domain, the system framework can be represented by the
following tansfer matrices:
where: P, - d e r mauix from W to 2, P,EX~'
CHAPTER 6: MSS CONTROL PROBLEM
P, - d e r ma& from U to 2, P,E'R&'
P, - d e r matrix hom W to Y, P,EW
P, - d e r mauk from U to Y. P,E%'
K - conuoiier d e r matrix from Y to U, KEW
H - closed-loop d e r mat& from W to 2, HE%"'
Combining equations (6.1) to (6.3), H c u i be represented as
W s ) = P, 0) + p, <s)Ws)CI - p, <s)Jw)-' f', 0)
Let
HW = P,W + P,(s)R(s)P,(s) 6-61
The closed-loop transfer function of the system is found in equluon (6.6). In the next
section, convex combination met hod is introduced.
6.3 Convex Combination Method
The purpose of MSS conuol method is to sa* ail the performance
specifications simuitaueously. In Section 5.9, combinations of PD gains were selected
to satisfy each perfonauice specification individdy where each PD conuolier is
called a sample conuoller. The convex combination method is used to denve a
satisfactory controiler to ai l performance specifiCatio11~ by cornbining the sample
controllers.
In the experiment procedure, sample controilers are selected to achieve
individual performance specifications. The sample controlien are denoted as K,, K,, ...,
&, where n is the number of performance specifications, +,, +2,...,+n. Therefore, if +, I an, where a, is the desired specification value, it irnplies that convoiler & rneets the
specification 4,.
It is then necessary to find a combination vector A through solving a iinear
programming problem
a > x A I Y
If the inequality, equation (6.7) is solvable, there is a satisfactory controller,
which can satisfy all the desired specifications. Then, the combination vector A is used
to combine di the closed-loop t r a d e r matrices to derive the sausfactory controller
H * ( s ) = n I H I ( s ) + x Z H t ( ~ ) + ...+ h n ~ . ( s ) (6.9
CHAPTER 6: MSS CONTROL PROBLEM
therefore,
where
K * (s ) = (I + R * ( S ) P ~ ~ ) - ' R * (s) (6.12)
K*(s) is the satisfaaory conuoiler, which satisfies ali the desired performance
specifications.
CHAPTER 6: MSS C O N n O t PROBLEM
6.4 Feasibility of MSS problem
The MSS conrrol probiem is feasible if there exins a satisfactory controiier. On
the other hand, the MSS control problem is infeasible if such a satisfactory controller
does not exist. The way to test for the feasibility of the MSS control problem is given
in Liu, 19981, given as follows.
If there & a vector ri&"' such that
where: 0 = [+, +z...@ JTy and Y = [a, %...a& then the MSS control problem is
infeasible. Thus, there is no combination vector A to satisfy the inequality, equatîon
(6.7).
When the MSS control problem is found to be infeasible, it is suggened that the
specifications be reiaxed. When several performance specifications are considered
simultaneously, the coexisting specifications likely conflict with each other. Hence, if
some or ail specifications are too nringent, a controller cannot be found to satisfy ail
specifications simultaneously. Therefore, if the desired specifications are too sringent,
the performance specifications should be relaxed.
6.5 Convex Controller Implementation
In order to achieve the god: to sausfy aü desüed performance specifications, it
is necessary to follow the procedure of finding the convex controlier carefuliy. From
Sections 6.2 to 6.4, all the necessary neps are described in detail for the control
designer to follow. Up to rhis stage, the convex controller K(s) can be derived
mathematically. In the n e z m o chaprers, aamples of MSS control synthesis are given
to illustrate the overail procedure of deriving the convex controlier in real-time.
As mentioned in Chapter 2, the experimental test-bed on which the convex
controller is implernenteà, is a digital control system. In rd-time experiments, the
control law is caldated in a high-performance PC. An analog signai, in this case the
input voltage, is sent to the amplifier from the digitai controller. The output signai,
which is the position of the motor, is fed back from the encoder to the digital
controller. This completes a closed-loop feedback conuol system. To implemenc the
convex controller in a digital control system, the controller has to be converted into a
digital control code. Since the derived convex controller by this convex combination
theory to solve the MSS control problem is a continuous high-order linear transfer
function, it has to be discretized. There are number of time discretization methods
avaiiable [Liu, 19981, but the most widely used approach is the zermrder-hold (ZOH)
approach. Given the controller K*(s) in continuous t d e r function form ï t can be
discretized by usùig the z -transform through ZOH
CHAPTER 6: MSS CONTROL PROBLEM
where Z denotes the z -tramform.
Afrer the controller is dixretized it is coded into a computer algorithm. Again,
there are many methods to achieve this reahtion. The one which is used in this
thesis is the Direct Method F u k , 19911. Basically, in rhis method, the controlier
tansfer function is expressed as the ratio of two polynomids in z
j=i a
Then it can be expressed directiy into computer code
For example, the control algorithm
where U(z) and E(z) are the control input and the tracking error respectively, and
define the convex controller K' with n -2
then equation (6.17) becomes
CHAPTER 6: MSS CONTROL PROBLEY
Rearrange the terms to obtain equarion (6.20) and (6.21)
U ( z ) x (2 t b , 8 t b,rm2) = (ao + a l Y i + a t Y 2 ) x E ( r ) (6.20)
U(k ) = aoE(k)+aiE(k-I )+a2E(k-2) - (bIU(k-I)+qU(k-2) ) (6.21)
then U&) k in teterms of put control inputs, error signals, and current error signai,
pirk, 199l].
Once the controller algorithm is expressed as in equation (6.21), it can be
implemented in the cornputer. Figure 6.2 shows the implementation of the MSS
problem in a aimmary flow chart. Designers are expected to follow the procedure
closely and carefdy to successfdly derive a satisfactory controller.
CHAPTER 6: MSS CONTROL PROBLEM
tbe system in tbe fonn of
e q d o n s 6.1 to 63
+ 1 Obtain [@J 1
Find the convex combination vector, h
1
Figure 6.2: Implementauon of MSS Problem Flow Chart
6.6 Summary
in rhis chaprer, the MSS control m e W is introduced. MSS conuol method is
developed because it eliminates the need for gain Nning in system control. In MSS
control problem, once the convex controller is found, it guarantees to satisfy the
desired performance specifications defined in the problem. By comparing to PD or
P D control, which requires extensive experimenu and experïences in gain nining,
MSS control method is preferred
In the next chapter, MSS control method is adopted for set-point control on the
motor.
Chapter 7
Set-point MSS Control of the Motor
Introduction
In the previous chapter, MSS control method is introduced In this chapter,
MSS control method is adopted for set-point control on the motor. An example of
MSS control synthesis is given to dustrate the overd procedure, and the detail is
included in Appendix D. MSS control is then used for controlling the linear
positionhg synem in Chapter 8. The simulation and the experimental r d t s of using
PD set-point motor control have already been presented in Chapter 5. At the end of
this chapter, a cornparison between the PD and the MSS control method is presented*
The reader then can see the effectiveness of using the MSS conuol method to meet
multiple performance specifications simultaneously.
CHAPTER 7: SET-POINT MSS CONTROL O F THE MOTOR
7.2 System Framework Representation
R e d that the dosed-loop motor system can be represented by the block
diagram depicted in Figure 7.1. In order to present rhis closed-loop motor systern into
the one presented in Figure 6.1, we redefine the moror system components. The
modified controiler K(s) now includes G(s) and the feedback loop. Figure 7.2 shows
the motor system framework.
Figure 7.1: Closed-Loop Motor Control System
Figure 7.2: Motor System Framework
The next sep is to set up the d e r matrices P,(s), P,(s), P,(s), P,(s), and
CNAPTER 7: SET-POINT MSS CONTROL OF TKE MOTOR
the input and output vectors, W(s), Z(s), U(s), and Y(s). R e d from Chapter 6 that
UE%" is the actuator input generated by the controiier; WE%" is ail other inputs into
the system, i.e. any desired trajeaory or extemal disnubances; YEW is the output
signal accessible to the controlier; and ZEIR"' is the output signal of interesr to the
designer. Based on the motor system fnmework defined in Figure 7.2, the input and
output vecton are defked as follows:
Putting equations (7.1) to (7.4) into the format of equations (6.1), (6.2), and (6.3) gives
CHAPTER 7: SET-POINT MSS CONTROL OF THE MOTOR
where: Cld - desired trajectory or position, [Od] = radian
Cla - a d trajectory or position, [Oa] - d a n
e - od - €3: the uacking error, [el = radian
V - the input voltage, M - Volt
% - proportionai gain, Cg,] - Voldradiau
K, - derivative gain, - Volt-sedradian
P(s) = the motor dynamic model, equation (4.2)
E(s) - uacking e m r in Laplace Domain, E(s ) ] - radian The closed-loop trader matrices and the controller are defined as
With all these matrices and vecton are defined, the desired performance
specifications can be seleaed
CHAPTER 7: SET-POLNT MSS CONTROL OF THE MOTOR
7.3 Desired Performance Specifications
Nor aii performance spedications can be w d for MSS control problem. Only
convex performance spe&caüons can be w d to ennue feasible solution for MSS
control problem For set-point control of the motor, three convex performance
specifications are considered: Steady-Sw Error of Position +SIEP., Rise Time &,, and
Relative Overshoot ho.. The proofs of converCity of &,, kT., and ha are omirred
here but interested readers should read b y d and Barratt, 19911 and [liu, 19981. The
neady state error of position aad the relative overshoot are defined as
In set-point MSS control experiment, the desired position 10 radian is specified and the
desired performance specifications are as
where a,, q, and a, are the desired performance specifications. ~lthough the
CHAPTER 7: SET-PONT MSS CONTROL OF THE MOTOR
desired performance specificatïons seleaed are arbitrary, they are selected with some
purpose. The aeady-state error and the relative ovenhoot are m o performance
specifications which ennue the position accuracy of the motor. On the other hand,
the rise time is the time at which the s e p response first reaches the sready-state level
wan de Vegte, 19941, and therefore the N e Ume ensures the initial performance of the
motor.
Since the motor will be w d ro drive the linear positioning table, the
performance of the motor will directly affect the performance of the hear positioning
table. Thus, the moa stringent desired specifications, such as minimum steady-stare
error and overshoot, wili yield the best results. However, the desired performance
specifications have to be selected so that the MSS control method is feasible. In other
words, the desired performance specifications have to be selected so that a convex
controiier c m be found As described in Chapter 6, if the desired specifications are too
nringent the performance specifications sho uld be relaxed The performance
specifications are to be relaxed until a convex controllex c m be found. In t h î s section,
the desired performance specifications are seleaed so that a convex controller is found.
We confirm that these desired specifications are selected with serious consideration and
by far the most stringent specifications, which yield a feasible MSS control r d t .
CHAPTER 7: SET-POINT MSS CONTROL O F THE MOTOR
7.4 Sample Controllers Selection
In Section 6.4, the fevibility of MSS problem is addressed. In set-point control
of the moror, a set of sample PD controllen are selected and the equation (6.7) is tested
for feasibility.
R e c d that if there exists a vector UE%"' such that
min uT<p > U'Y H
(7.15)
then the MSS problem is infeasible. Table 7.1 tabulates the results obtained from using
a set of sample PD conuoiiers.
Table 7.1: Sarnple PD Controllers @CJ = VoWradian, - Volt-sec/radian)
Table 7.1 shows that each sample PD controller satisfies one or two desired
specifications but none can satisfy ali desired specifications.
In the case of three performance specifications, if there exin a vector ueW"',
such that
then the MSS problem is infeasible. Fim test the sample controllers for feasibility.
CHAPTER 7: SET-POINT MSS CONTROL OF THE MOTOR
For n = 1, substitute the performance and the desired specïfication vaiues înto
then equation (7.18) becomes
For n = 2,
then equation (7.21) becomes
For n = 3,
CHAPTER 7: SET-POLNT MSS CONTROL OF THE MOTOR
then equation (7.24) becomes
0 . 0 5 4 ~ ~ - O.OZJ~U~ + 0 . 0 9 3 4 ~ ~ < O
Combiniag equations (7.19), ( 729 , and (725)
Using the hear programming sofcware in MatlabTM 0ptimi;rntion Toolbox to
determine if there is a vector u, which sarisfies equation (7.26), and no such vector is
found. Therefore, it is conclusive to Say that the selected sample PD controllers yield a
feasible solution for this MSS problem.
CHAPTER 7: SET-POINT MSS CONTROL OF THE MOTOR
Convex Combination of Controllers
the Sample
Once a set of sample PD controllers, which guarantee a faible solution for the
MSS problem is found, the convex combination method is uxd to derive the convex
controller. R e d from Section 6.3 that it is necessary to find a combination vector A
through solving a linear prognmming problem
Q , x A S Y
Subnituting the values tabulated from Table 7.1 into equation (7.27) leads to
It is necessary ro reamnge equation (7.28) so that hear programming algorithm can
be implemented. Let
CHAPTER 7: SET-POINT MSS CONTROL O F THE MOTOR
then equation (7.28) becomes
Rearange the terms
Using the linear programming sofrarare Matlabm Opumiution Toolbox to determine
if there is a vector x - (x, x, xJT, which satisfies equation (7.33). The vector x obtained
is
and therefore,
The convex combination vector A is found.
CHAPTER 7: SET-POINT MSS CONTROL OF THE MOTOR
7.6 Convex Controller Determination
The last stage is to h d the convex controller by using the convex combination
vector jw derived in previous section. Recall from Section 6.3, the convex convoiler
Kq(s) can be obtained by hding the R*(s) fïrst, where
R* (s) = h,R1(s) + A2R2(s)+ ...+ A,Rn(s) (7.35)
Thus, in this case
R*(s) = k1RI(s)+X2R2(s) +X3R3(s) (7.37)
K(s) can be obtained by using equation (6.12)
K * ( s ) = ( I + R*(s)P~)-*R*(s) (7.3 8)
Recd from equauon (7.6) that K(s) - % + &S. Therefore,
K * ( s ) = K; ( 5 ) + K;S(S) (7.39)
U n d rhis point, the readers will appreciate that K'(s) in equation (7.39) is a
polynomial in temu of s with numentor of fifth order and denominator of fourth
order. The next step is to separate K&) and K.&) from K*(s). However, how to
separate %*(s) and K&) h m equation (7.39) is not obvious, and readers may find the
job to find %'(s) and &*(s) tedious and Ume consumiag. In fm, &*(S) and Gq(s) can
be separated from K*(s) by arbitrariiy selecting and separating values. However,
andornly picking values for &*(s) and K.&) docs not grrarantee a stable controller.
Two possibilities may cause an unstable controlier. One possibility is the uncenainties
CHAPTER 7: SET-POINT MSS CONTROL OF TWE MOTOR
in the motor model, and the other is the nature of guessing KJs) m d Ei;(s).
Fim, equation (7.38) shows that Ko(s) depends on P,, which is the model of the
motor. Therefore, if P, is not accuLate, an unstable convex convoiler Km(s) may be
derived. Uncertainties of the motor model are discussed in Chapter 5, and hence they
are not addressed here. Second, the polynomial coefficients of K*(s) contains both the
polynomid coefficients of I$'(s) and &'(s). Thus, numerid values surplus in KJs)
means deficiency in gdm(s), and it is difficult to trace the cause of instabiiity if a
problem arises. As a matter of hct, no experiment on the motor has shown succesdu1
results with arbitrarily s e l e h g %'(s) and &'(s). In the original work Kiu, 19981, no
synematic method to separate K&) aud hm(s) from K'(s) is shown. Therefore, a
synematic method which guarantees stable and satisfactory convex controller is needed
for separating KJs) and K&) from Ke(s). This systematic method is addressed in the
next section.
CHAPTER 7: SET-POINT MSS CONTROL OF THE MOTOR
7.7 Systematic Approach to Obtain KJs) and
We have developed a syaemauc method to fmd KJs) and &*(s), and a full
procedure of this systematic method is Uustrated in rhis section.
R e c d from equation (6.8) that the convex closed-loop d e r ma& H' can be
expressed in te= of Ai, given in the convex combinvion vector (7.35). and the sample
closed-loop vansfer matrices. From equation (7.8) H can be dehed as
and
Therefore,
Also, let
5. = 1 + P ( s K , 0) (n - 1,2,3) and express the sample closed-loop d e r matrices as
CHAPTER 7: SET-PO~NT MSS CONTROL OF TKE MOTOR
where:
j = estimated inertia of the motor, [?] - kg-m2 k = estimated damping coefficient of the motor, [ b ] = kg-m'/sec
where & is the effective gain of the motor.
Puttkg equations (7.42) and (7.44) into (6.8) we get
From equation (7.47) it can be shown that
CHAPTER 7: SET-PODIT MSS COXTROL O F THE MOTOR
6.8 = 515253 (7.49)
where
Substimting equaUons (7.41), (7.43) and (7.46) into (7.49) and expaad we obtaio
and SO is a fourth order polynomiai.
Let us pay speciai attention to equation (7.51). Since the right-hand side of equation
(7.51) is a sixth order polynomiai, the left-hand side of (7.51) has to be in skth order as
well. In order to ennire that the lefi-hand side of equation (7.51) has the same order as
the its right-hand side, the only unknown in the equation, K0(s), has to be determined.
R e d from Section 6.5, in order for us to use the Direct Method pirk, 19911
for realizing the convex controller, the discretized convex controller, K*(z), has to be
similar to the form given in equation (6.18). However, to obtain K*(z) in this fom,
K'(s) has to be similar to Ke(z). In other words, K*(s) has to be in the gened form
CHAPER 7: SET-POLNT MSS CONTROL OF THE MOTOR
Going back to equarion (7.51), we can simpl* it by letting the denominator of
C(s) be 6". Hence, we define
+ h 3 t +Ds+ E K; (s) =
6 O
K: (s) = FS# +GS-' +HS' + I S + J
S0
and
Since 6" is a fourth order polynomial, the numerators of both %*(s) and &*(s) has to
be a fourth order polynomiai. Therefore, subniniting equations (7.52), (7.54) and
(7.56) inro (7.51) w e obtain
(7.57)
The coefficients A, B, C, D, E, F, G, H, 1, and/ can be determined by comparing the
values in both sides of the equation (7.57).
Let us use an expefnientai example to iIiusu;ite the procedure of fincihg KJs)
and KJs) . We know P(s) is defined as
CHUTER 7: SET-POIET MSS CONTROL OF MOTOR
and equation (7.58) can be rewritten inro
Therefore
and
We use Mathematicam to perform d the polynomial muluplications. Substituthg
e p t i o n s (7.60) and (7.61)into (7.57) and (7.52) and simplifying the r d t , we obtain
and
The next step is to compare the coefficients at both sides in equation (7.62). The
results are
CHAPER 7: SET-POINT MSS CONTROL OF THE MOTOR
Ar rhis point, there is a general rule to separate the coefficients. Recall thar ali the
vdues of snmple & used for this -riment are in the ange of 0.95 to
0.98Voldradian. Thus, it is rcwnable to set coefficient A, the fim texm of %*(s), to
be a value in that range. In th ïs case, A is set to be 0.96, and G to be 10.56. Therefore,
we have four variables known, A, E, F, and G. From the sample controllers chosen in
the experiment, we un find out the ratios berween the values of I$, and 4. These
ratios teil us that the proportional gain is always greater than the derivation gain by a
factor. Therefore, there acks a common factor between I$'(s) and &'(s), and we have
ro find this common factor so that we can separate the coefficients in equation (9.64).
If we look at equation (7.54) and (7.59, a common factor, 77.4, between KJs)
and E;d'(s) is irnmediately found by dividing A by F. This means that the coefficients in
KJs) are 77.4 rimes greater than those in g ( s ) . Therefore, by matching the
coefficients with terms of the same order in 's' in equations (7.54) and (7.56), we find
Substituting equation (7.65) to (7.64) we get
CKAPTER 7: SET-POINT MSS CONTROL OF THE MOTOR
Then, purting the coefficients in equation (7.66) into (7.54) and (7.55) we obtain
and
A fÙll numericd example is included in Appendix D to illustrate all procedure
and calcularions.
CHAPTER 7: SET-POINT MSS CONTROL OF THE MOTOR
7.8 Convex Controuer Discretization and Realization
Once %*(s) and &*(s) are obtained, the next step is to discretize and realize
them. By using Matlabm Control System ToolBox, I&'(s) and gd.(s) (convex
comrolier in frequency domain) cui be transformed into %'(z) and &'(z) (convex
controller in sample domain)with the ZOH approach. The procedure of converring
I$*(s) and &*(s) to %I$) and K.&) is included in Appendix D. The %'(z) and &(z)
are derived as
and
Then the control algorithm is
where: e = motor position error, [el = radian
è = derivative of motor position error with respect to rime, [ é ] = radian
U(k) - control input at t - kh iteration interval, CLT] - Volt
k = iteration index
CHAPTER 7: SET-POINT MSS CONTROL OF THE MOTOR
7.9 Experimental Results and Summary
Equation (7.71) can be implemenred in software to perform experiments. User
program testrad-c is developed to implement set-point MSS control experiments with
the convex conuoiler derived in Section 7.7 applied to the motor. The program
prompts the user to select the desired set-point angular position. The desired angular
position in this experiment is 10.0 tadian. The source code of taaodc is included in
Appendix A. The convex performance specifications are found to be:
+; = 0.0867 I OJ2 radian
4; = 0.0234 i 0.03 sec
The experimental r d t s under convex controiler and other sample PD
controllen are shown in Figures 7.3 to 7.9. In Figure 7.3, the position r e d u show
that the convex controiler satisfies all rhree set-point control desired performance
specifications simultaneously, and have proven that no simple PD controller can
achieve the desired specifications easily. However, one might argue that PD or PID
controller c m be combined in different ways to achieve any desired performance
specifications. Unfominarely, to achieve the satisfying conuoiler vansfer funaion
similar to equation (7.67) and (7.68) requires extensive experirnents and experiences in
CHAPTER 7: SET-POINT MSS CONTROL OF THE MOTOR
Nning PD or PID gains. Once again, the purpose of MSS control method is to
eliminate the need to tune PD or P D gaias and the need to arrange the PD or P D
controllers by experiences. In Figure 7.5, the accelerarion of the motor under the
convex controller is shown. The peak accelerarion is shown to be around 101000
a d i d s e & Therefore, it is conclusive to say that this motor is a high performance
motor which can achieve high acceleration. This hi& acceleration feature will be
important in linear positioning system control, and this feanve will be explained in
details in Chaprer 8.
In nunmary, MSS control method uses convex combination method to derive a
new convex controiler, which cannot be designed by any conventional nining of PD
gains. In the next chapter, set-point MSS control is applied to the linear positioning
syaem, which includes the motor and the linear positioning table.
0.05 0.1 0.1 5 0.2
l-ini. (=)
1. Kp = 0.98 Voldradian, Kd = 0.005 Volt-sedradian 2. Kp - 0.95 Voldradian, Kd - 0.02 Volt-sedradian 3. Kp = 0.95 Voldradian, Kd = 0.03 Volt-sedradian 4. Kp*, Kd*
Figure 7.3: Motor Position vernis T h e Under Convex and Sample PD Controllers
Figure 7.4: Motor Acceleration versus Time Under Sample PD Controllen
105
Tinn (su)
Figure 7.5: Motor Acceleration vernis T h e Under the Convex Controller
Figure 7.6: Motor Velocity vernis T h e Under Sample PD Controllers
Figure 7.7: Motor Velocity vernis T h e Under the Convex Controller
-10 1 l-i- (-1
Kp - 0.95 Voldradian, Kd - 0.02 v o k - ~ ~ d d h -.---.--- Kp - 0.98 Voldradian, Kd - 0.005 Volt-&radian ------- Kp = 0.95 Voldradian, Kd - 0.03 Volt-seddan
Figure 7.8: Control Input versus Time Under Sample PD Controllers
109
-- --
l'hm (=)
Figure 7.9: Control Input vernis Time Under the Convex Controiler
Chapter 8
Set-point MSS Control of the Linear Positioning System
8.1 Introduction
In rhis chapter, set-point MSS control is implemented on the linear positioning
synem. The purpose of performing MSS control on the heu positioning sysrem is to
prove that MSS control eliminates the needs of gain tuning, yet desired performances
are achieved. In the following sections, MSS control method is implemented step by
s e p onto the Iinear positioning system. At the end of this chapter, a cornparison
between the PD and the MSS control method is presented The reader can then
appreciate the effectiveness of using the MSS control method to meet multiple
performance specifications of the linear positioning system simultaneously.
CHAPTER 8: SET-POINT MSS CONTROL OF THE LINEAR P O S I T X O N ~ G SYSTEM
System Framework Representation
In this section, the system framework of the linear positioning system is
represented and t d e r function matrices are d e h e d R e d that the closed-loop
linear positioning system an be represented by the block diagram depicted in Figure
8.1. In order to present rhis closed-loop syaem into the one presented in Figure 6.1,
we redefine the system components. The modified controiier K(s) now includes G(s)
and the feedback loop. Figure 8.2 shows the linear positioning system h e w o r k .
Figure 8.1: Closed-Loop Linear Positioning Control System
Figure 8.2: Linear Positioning Syaem Fnmework
CHAPTER 8: SET-POXNT MSS CONTROL OF THE LNEAR P O S I T K O N ~ C SYSTEM
The next s ep is to set up the d e r matrices P,(s), P,(s), P,(s), PJs), and
the input and output vectors, W(s), Z(s), U(s), and Y(s). Recd from Chapter 6 thar
UEW' is the actuator input generated by the controuer; WEW is all other inputs into
the system, Le. any desired uajectory or external dimbances; YEW is the output
signal accessible to the conuoller; d ZER"' is the output signal of interest to the
designer. Based on the motor system h e w o r k dehed in Figure 8.2, the heput and
output veaon are defined as follows:
Putting equations (8.1) to (8.4) into the format of equations (6.1), (6.2), and (6.3) gives
CHAPTER 8: SET-POINT MSS CONTROL OF r m LLVEAR POSITTON~G SYS-~EM
w here: ed - deSired vajectory or position, [07 = radian
O' = a d uajectory or position, [O7 - radian
e - Od - Cla, the tracking error, le] - radian V - the input voltage, M = Volt
4 - propoMonal gain, Fp] = Voldradian
& = derivative gain, CP;d] - Volt-seclradian
E(s) = tracking error in Laplace domain, E(s)] = radian
and the linear positionhg system Ps(s) is defined as
The ciosed-loop Mnsfer matrices and the conuoller are defined as
CE~AP~ER 8: SET-POINT MSS CONTROL OF m LINEAR POSIRO'JLXG SYSTEM
8.3 Desired Performance Specifications
For set-point control of the lin- positioning syaem, h r e e convex
performance specifications are considered: Steady-State Error of Position +ssH+, Rise
Time k,, and Relative Ovenhoot &,.. Steady-state error and relative ovenhoot
ensures position accufacy whiie rise t h e ennires the initial performance of the hear
positioning syscem. The steady nate error of position and the relative ovenhoot are
again defined as
three performance specifications which must be satisfïed simuitaneously are:
where a,, q, and a3 are the desired performance specifications. The aeady-state error
specification is in millimeter because it is the linear positioning system we are control
of. Nevertheles, the linear displacement of the iinear positioning system
CWTER 8: SET-POINT MSS CONTROL OF THE LINEAR POSITIONIXG SYSTEM
corresponds to the angular displacement of the motor. With the resolution of the
linear positioning system (0.2SW/rw.), 1.0 millimeter linear displacement corresponds
to 1.0 radian angular displacement of the motor.
Once again, the moa srringent desired specifiations will yield the best r d t s .
However, in pracùcal situations, a few factors have to be considered First, the desired
performance specifications have to be selected so that the MSS control method is
feasible. In other words, the desired pedormance speci.£ications have to be selected so
that a convex controller can be found. Second, the chatacteristic of the BLDC motor
and the linear srage table effect the output performaace of the whole system. As
described in Chapter 5, the BLDC motor behavion are effected by nonlinear friction,
deflective motor position sensors and other non-idd behavior. Therefore, the desired
performance specifications are selected so that the MSS control method is feasible, yet
the ben performance of the linear positioning synem are obtained.
We confirm that in set-point MSS control experiment of the linear positioning
synem these desired specifications are selected with serious consideration and by far
the most sringent specifications which can yield a feasible MSS control result.
CWAPTER 8: SET-POINT MSS CONTROL O F THE LINEU POSITIONING SYSTEY
8.4 Sample Controllers Selection
In set-point control of the linear positioning system, a set of sample PD
controllers are selected and the equation (6.7) is tested for feasibility.
R e d that if there exists a vector UE%"' such that
then the MSS problern is infeasible. Table 8.1 tabulates the r d t s obtained from using
a set of sample PD controliers for the linear positioning table to r d the desired
position, 10 mm.
Table 8.1: Sample PD Controllers @CJ = Voldradian, [%] = Volt-sedadian)
Table 8.1 shows that each sample PD conuoller satisfies one or two desired
specifications but none can satisfy d desired specificarions.
In the case of three performance specifications, if there exist a vector ue%"',
such that
min u T m > ~ T y (n4,2,3) IS jSn
then the MSS problem is infeasible. First test the sampie controllers for faibility.
C I ~ A P ~ R 8: SET-POINT MSS CONTROL Of THE LINEAR POSITIONING SYSTEM
For n = 1, substitute the performance and the desired specificauon values imo
rhen equation (8.18) becomes
For n - 2,
then equation (8.21) becomes
For n = 3,
CHAPTER 8: SET-POINT MSS COPITROL OF THE L ~ E A R POSITIONISG SYSTEY
then equation (8.24) becomes
- 0 2 7 ~ ~ - 0 . 0 1 5 9 ~ ~ + 0 . 0 4 3 ~ ~ < O
Using the linear programming software Matlabm OpUmization Toolbox to determine
if there is a vector u, which satisfies equation (8.26), and no such vector is found.
Therefore, it is conclusive to Say that the seleaed sample PD controllers yield a feasible
solurion for t h i s MSS problem.
CHAPTER 8: SET-PONT MSS CONTROL OF L~NEAR P O S I T I O N ~ G SYSTEM
8.5 Convex Combination of the Sample Controllers
Once a set of sample PD controiiers, which guarantee a feasible solution for the
MSS problem is found, the convex combination method is used to derive the convex
comroiier. R e d lrom Section 6.3 that it is necessuy to find a combination vector A
through solving a lin- progrunming problem
Q , x A l Y
Substituthg the values rabdated from table 8.1 into equation (8.27) leads ro
It is necessary to rearrange equation (8.28) so that linear programming algorithm can
be implemented. Let
CHAPTER 8: SET-POKNT MSS CONTROL OF THE LLNEAR POSITIONING SYSTEM
then equation (8.28) becomes
Rearange the terms
Using the iinear programmjng software BAatlablM Optimization Toolbox to determine
if there is a vector x - (x, x, xJT, which satisfies equation (8.33). The vector x obtained
is
and therefore,
The convex combination vector A is found.
CHAPTER 8: SET-POINT MSS CONTROL OF THE LINEAR POSIIXONLXG SYSTEM
8.6 Convex Controller Determination
The Iast stage is to h d the convex conuolier by using the convex combination
vector jun derived in previous section. R e d from Section 6.3, the convex controiler
K*(s) GUI be obtained by finding the R*(s) fim, where
R * ( s ) = hIRI(s)+)c2R2(s)+ ...+ hnRn(s)
Thus, in this case
R*(s ) = I I I R I ( ~ ) + J - I R Z ( ~ ) + L3R3(s)
K'(s) can be O btained by using equation (6.12)
K * ( s ) = ( I +R*(s)P,)-'R*(s)
Recall from equation (8.6) that K(s) - % + &S. Therefore,
K * ( s ) = K; ( s ) + ~ d s ( s )
U n d this point, the readers w u appreciate that K*(s) in equation (8.39) is a
polynomial in te- of s with numerator in f i f i order and denominator in forth
order. The next s e p is to separate I$'(s) and g ( s ) from b(s). Similar to the MSS
control problem in Chapter 7, %*(s) and &*(s) are separated from K*(s) by the
systematic approach. Here, we only show the results of K&) and &*(s) in equations
(8.40) and (8.41).
CHAPTER 8: SET-POINT MSS CONTROL OF THE LXNEAR POSITIONKNG SYSTEM
and
K: (s) = 0.008887s' + 2.8708s' + 8.0159s' + 1017.89s + 102197.3
s4 + 422.26s' + 57969-7s' + 8.0619 x 106 s + 3.7432 x 108 (8.41)
CHAPTER 8: SET-POINT MSS CONTROL OF THE LINEAR POSX-~ONLNG SYSTEH
Convex Controller Discretization and Realization
Once %'(s) and &'(s) are obtained, the next step is to discretize and realize
them. By using ~ a r l a b ~ Control System ToolBox, %'(s) and K&) (convex
controller in frequency domain) can be transformed into &'(z) and &'(z) (convex
controller in sample domtin)with the ZOH approach. Again, the procedure of
converthg %'(s) and &'(s) to &'(z) and &*(z) is included in Appendk D. The %'(z)
and &'(z) are denved to be
and
Then the control algorithm is
where: e = motor position error, [ e ] - radian
é = derivative of motor posiuon error with respect to rime, [è ] - radian
U(k) - control input at t - kh iterauon intemal, [Ul - Volt k = iteration index
C ~ P T E R 8: SET-POINT MSS CONTROL O F THE LINEAR P O S ~ O N L Z U ' G SYSTEM
8.8 Experimental Results
Equauon (8.44) can be irnplemented in s o h a r e ro perform rhe experiment.
User program stepm.c is developed to implement a set-point MSS conuol experiment
with the convex controller derived in Section 8.7 applied ro the Linear positioning
syaem. The program prompts the user to select the desired set-point position. The
desired position in rhis case is 10 mm. The source code of stepm.c is included in
Appendix A. The convex performance specifications are found to be:
0; = 0J448 5 1.0 mm
4; = 0.0243 5 0.03 sec
The experimental results under convex controller and other sample PD controllers are
shown in Figures 8.3 to 8.9. In Figure 8.3, the position r e d t s show that the convex
cont ro ller satisfis d h e e set-point control desired performance specifications
simultaneously, and have proven that no simple PD controlier can achieve the desired
specifications easily. Once again, the purpose of MSS convol method is to elirninate
the need to tune PD or PID gains and the need to arrange the PD or PID controllers
by experiences. In Figure 8.5, the acceleration of the linear posirioning systern under
the convex controiier is shown. The peak acceleration is shown to be around 100.0
&se& which corresponds to 102G acceleration (G - 9 . 8 l d s e 2 , the gravitationai
CHAPTER 8: SET-POINT MSS CONTROL OF THE LLNEAR POSITIONIXG SYSTEM
acceleration). Therefore, it is conclusive to Say that the linear positioning sysrem is a
high performance systern which can achieve hi& acceleration. This high-acceleration
feature is very important for industry applications. As mentioned in Chapter 1, mon
industrial applications involving positioning tables require high speed and acceleration.
Example such as SMT machine requires high acceleration and great position accuracy
for populating various kinds of circuit board. Hence, the convex controller developed
in this section for conuolling high-speed linear positioning system can be applied in
high-acceleration applications.
CKAPTER 8: SET-POINT MSS CONTROL OF TWE LNEAR POSI-~~ONING SYSTEM
In this chapter, set-point MSS control is applied to the hear posiuoning system
and satisfactory r d t s are obtained. The desired performance specifications are
selected so that the MSS control problem is feasible. MSS control method not only
satisfies all desired specifications simultaneously but also controls the system in a way
that dl the besr results from the sample comrallers can be reached closely. In other
words, MSS control method picks the best results from each sarnple conuoilea and
tries to mach them simultaneously. As the r d t , the three petformance specifications
$i', $2*, and 4; in equatïon (8.45) are very close to the best results from each sample
controllers.
In summary, the purpose of t h ï s thesis: upply MSS control rnetbod to hàgb-
speed Zineur positioning system to eliminate tbe needs for gains tuning and to
simuZtaneousZy su* tbe Mred performunce spect~catioionr of higbspeed Zineur
posïtionàng system, is W e d . MSS control method is therefore
effective in controlling hi&-speed linear positioning system. The
concluded to be
linear positioning
systern is able to achieve hi& acceleration and satisfacrory accuracy under the MSS
control method. The final nep is to midy how robust the convex conuoller is, and
robustness specifîcation is addressed in the next chapter.
0.08 0.12
Time (sec)
1. Kp = 0.95 Voldradian, Kd = 0.0 Volt-se Jradian 2. Kp = 0.97 Voldradian, Kd - 0.005 Volt-scc/radian 3. Kp - 0.99 Voldadian, Kd = 0.02 Volt-sedradian 4. Kp*, Kd*
Figure 8.3: Linear Positioning System Position v e m Time Under Convex and Sample P D ControUers
------- Kp - 0.95 Voldradian, Kd = 0.0 Volt-sedradian -------- Kp = 0.97 Voldradian, Kd - 0.005 Volt-se Jradian
Kp = 0.99 Voldradian, Kd = 0.02 Volt-se Jradian
Figure 8.4: Linear Positionhg System Accelemion versus Tirne Under Sample PD Controllers
129
Figure 8.5: Linear Positioning System Accelention vernis Tirne Under Convex Controller
. . -
rime (sec)
Figure 8.6: Linear Positioning System Velocicy versus Time Under Sample PD Controllers
13 1
Figure 8.7: Lînear Positioning Synem Velocity vernis T h e Under Convex Controiler
Figure 8.8: Control Input to Linear Positioning System versus Tirne Under Sample PD Controllers
Figure 8.9: Control Input to Linear Posirioning System versus T h e Under Convex Controiler
Chapter 9
Robustness Specification
S. 1 Introduction
In the previous chapter, the dynamic model of the linear positioning synern has
been used in the MSS control method to denve a saùsfactoly convex controlier.
However, in mon industrial applications, the dynamic models and dynamic
parameters of the synem to be controiled may not be known exactly, to permit
control design to be carried out reliably.
As descnbed in Chapter 4, there are many uncertainties in the dynamic
modeling of the BLDC motor. In fact, moa of these uncertaincies are parametic
uncertainties. Additionaily, the dynarnic model of the linear positioning syaem
contains parametric uncertainties as well. Aithough the MSS control method does not
require exact knowledge of the dynamic parameters, we investigare how to improve
the robustness of the convex controller to the paramevic uncertainties which e w t in
CHAPTER 9: ROBUSTNESS SPECXFICATTON
the dynamic model of the system. Furthermore, the dynamic model of the hear
positioning system may change due to extemal factors, such as addition of an
additional payload to the linear positioning table. Changes in the syaem are very
common and it is important to ennire that the sysrem remains stable under the convex
contro lle r derived in C hapter 8, and achieves satisfacto ry performance.
Therefore, in this chapter, we investigate how to include a robun specification
in the existing convex controiier, (8.40) and (8.41). We an achieve this robustness, by
enniring each sample controllers used in Chapter 8 satkfies an additional robustws
specification. Sînce the robustness specification is ais0 convex, sample controllen will
lead to a convex controller which also sanisfies the robustness specification.
9.2 Theories and Some Analytical Tools for Robustness Specification
Roburuiess specifications require that a specified design specification, 0, musr
hold, even if the plant P(s) is replaced by any perturbed piant PP"(s). Robustness
specifications give guuanteed bounds on the performance deterioration, even the plant
parameters are changed Therefore, P(s) is denoted as the nominai plant, which
represents the true dynamic mode1 of the plant; and PP"(s) is the reai plant wirh varied
parameters. A perturbed plant can be described through the variation of dynamic
parameters over a range of vdues. Physical parameten such as mass, inertia, and
darnping coefficient are varied between two bounds L and U, which are the minimum
and maximum values of the parameten, respectively. A classical robustness
specification, gain margio, is associated with the parametrized plant perturbation,
Poyd and Barratt, 19911. The perturbed plant can be described by
where p represents a mander funaion coefficient. This specification of robust stability
is described by a positive gain margin of 2010g,,U dB and a negauve gain margin of
2Olog,& dB. However, equation (9.1) cannot be identified as a convex robustness
specification. Most robustness specifications are not convex, and they have to be
"made" convex. We will use Small Gain Theorem to formulate convex inner
approximations of robunness specifications, p o y d and Barratt, 19911. This concept
will be addressed later.
In many cases, the perturbed plant un be represented by a nominal plant with a
perturbation feedback. Consider Figure 9.1
Figure 9.1: Closed-Loop Perturbation Feedbadc Form, Poyd and Barratt, 19911
where A is perturbation feedback, and K(s) is the controller connected to the nominal
plant P(s) . Rearrange the system in Figure 9.1, one can get the synem similar to
Figure 9.2.
Figure 9.2: Pemirbed Closed-Loop System
2 e
i? C
Nominai Plant P(s)
where i7 and are the original signals of the nominai plant; q is the input signal to the
perturbation feedback or an output signal U to the nominal plant P(s); p is the output
signal from the pemubation feedback or an input signal Y to the nominal plant P(s).
Let us define
and the "augmented" plam d e r ma&
and the perturbed plant can be expressed as
In our case, the nominal plant we define here is the Linear positioning snjtem P,(s).
Therefore, we defme
Figure 9.3 represents the block diagnm of the complete system with the
perturbation feedback
Y ~ontroiier: u u System
T 0 z
G(4 PXs)
Figure 9.3: Closed-loop System Block Diagram with Perturbation Feedback
The real input signal
where
Therefore,
Actually, A is a constant gain aad
where A' c CL-1. U-11. and A makes the nominal p h P,(s) into PP"(s)
From Figure 9.3 we can define
Ppm(s) = (1 + A))P,(s)
W e denote P,(s) and PF(s) as Ps and PP" for simplification.
Putting equations (9.5) to (9.8) into (9.3) we obtain
where:
H , = P, + P ~ ~ K ( I - P,K)-' P+ (9.17)
H+ = pFp + P.,K(I - P,K)-' P, (9.18)
He = P, + P,K(I - P,K)-' P+ (9.19)
H~~ = pQP + P ~ ( I - P,K)-' P, (9.20)
We can interpret H, as the closed-loop transfer mauix of the nominal system without
q and p; H+ as the closed-loop d e r matrix from i~ to q; HZp as the closed-loop
transfer mat& fiom p to i ; and hally, H, as the closed-loop d e r ma& from p
ro q. Substituting the elemenrs in the augmented plant m a t h (9.14) into equations
(9.17) to (9.20) we obtain
Let
and
where T is the complementary sensitivity function of the closed-loop system and S is
the sensitiviv d e r funaion, pena & Sznaier, 19981. Then
On the other hand, the block diagram of the systern with perturbation feedback
can be presented in a form other than the one shown in Figure 9.3. An alternate
representation of systern with perturbation feedback is shown in Figure 9.4.
u' System 2: - PXs) -
Figure 9.4: Alternate Form of Closed-loop System Block Diagram with Perturbation Feedback
The pP'" in this case is defined as
Pp" - P J(1-A)
where: A is a perturbation feedback gain and
where A* c [i-1/L, 1-l/U], and A makes the nominal plant P, into P T
With this alternative form of closed-1oop system with perturbation feedback, we get
Only H,, differs kom its corresponding expression for the previous perturbation
feedback form. From equation (9.16), if &, H, , and H,, are smd , then
which means that the perturbed closed-loop m s f e r function is essentidy the same as
the nominal ciosed-loop transfer function. Thus, the system is robust to perturbation.
The next question is, how are Hzp, H*, and Hqp defined as small? To answer this
question, let us introduce the Small Gain Theorem, p o y d and Barratt, 19911.
9.2.1 Smail Gain Theorem
Suppose two systemr are comeaed in a feedback loop depicted in Figure 9.5
Figure 9.5: Two systems c o ~ e c t e d in feedback loop
If the product of the gains of the two transfer murices is less than one, the gain of the
overall closed-loop d e r hinaion Y can be bounded. In other worb, if
II4II, x II-II, <
Equation (9.38) is called the Small Gain Condition and the result in (9.39) is referred to
as the Small Gain Theorem, [Boyd and Barratt, 19911. The S d Gain Theorem
guarantees the stability of a feedback system depicted in Figure 9.5 if the product of the
gains of aii the transfer hinaion in the forward or feedback loops is less than unity,
regardless of the structure of A, [Dahleh and Diaz-BobUo, 19951
In the next section, the closed-loop convex robustness specifications are defined.
9.2.2 Closed-hop Convex Robust Stability Specifications
As mentioned in Section 9.1, most robusrness specifications are not convex.
Thus, we have to use the S d Gain Theorem defined in pervious sub-section for
fomulating convex inner approximations of robustness specificauons.
Let M denote the maximum gain of the feedback perturbation A
M sets the bound of the gain of the feedback perturbation. Since the eflect of A and
H,, on the nominal system have to be bounded, or minimized, the Smail Gain
Theorem can be used. R e c d from Figure 9.5 and equation (9.38) and letting H, =A,
H2 = Hqp then
Puning H, and H, into equation (9.39)
From (9.16), we therefore have
The closed-loop system will be robun if the three closed-loop matrices Hz,, , , and
H,, are smd. Thar is, the closed-loop convex specifications on H are given by
ll~z;rll, Substituting equations (9.44) to (9.47) into (9.43) we obtain
for al1 A E A*
where A* is a set of A. If the equations (9.44) to (9.47) are d m e , which means that
HF-, , H f i , and Hpp are stable, then HP* is stable. In thïs case, the specifications
(9.44) to (9.47) are the closed-loop convex stability specifications that guarantees robun
stability of the system, [Boyd and Barratt, 19911. Since the s m d gain condition in
(9 AI) depends only on M, the equation (9.43) holds if and oniy if
1(~11, M for aU A E A* (9 -49)
Since we have two f o m of perturbation feedback (Figure 9.3 and 9.4, we can denve
two closed-loop convex robustness specifications for system with perturbation
feedback.
9.2.3 Closed-Loop Convex Robustness Specifications
With the fim perturbation feedback form Figure 9 4 , the maximum of the
RMS gain of the perturbations is
M = m a r d l ~ - 1 1 1 ~ .[[u - 1 1 1 ~ 1 = m m / Z - L,U - I )
Since H,, = -T , the s m d gain condition is
I 11111, < = min
where L and U are the lower and the upper bounds of the system parameters, and
equation (9.51) is one of the closed-loop convex robustness specifications. The other
maximum of the RMS gain of the perturbations is
M = ~ ~ { ~ ~ ~ / L - ~ ~ ~ ~ , ~ [ ~ - I / u ~ ~ ~ ) = ~ ~ { I / L - z J - I / u ]
Since H,, = -S , the s m d gain condition is
I IIsII, < = min
and equation (9.53) is another closed-loop convex robusmess specificauon.
Hence, we have derived two closed-loop convex robustness specifications
(equation (9.5 1) and (9.53)) and four closed-loop convex stability specifications
(equation (9.44) to (9.47)). Let us iiiustrate the whole procedure by using the
experirnental example in Chapter 8.
Example for Convex Robustness Specification
In Chapter 8, a set-point convex controiier is derived for controlling the linear
positioning system. In rhû chapter, we consider the case in which the linear
positioning system dynamic model contains parameuic uncertainties and we want to
test for the robusmess of our system. In other words, we want to investigare the
robusmess of the exking convex controller. A systematic procedure to test the system
for robustness is explained as foliows.
First, since the robumiess and stability specifications are convex, as long as the
sample controllers are stable and robust, the satisfactory convex controiler is aiso stable
and robun. Therefore, resting the robusmess and stability of the sample controllers is
sufficienr to know the robusuless and stability of the convex controlîer. Second, once
the robustness of the sample controllen is known, the bounds, L and U, of the
coefficient of the overall d e r function a can be detennined. The bounds can be
used to derennine the robustness specifications ((9.51) and (9.53)) of the system. As a
result, the maximum and minimum percentage deviarions in parametric uncertainties
of the model of the hea r positioning system can be determlied Therefore, the level
of robustness of the existing convex controller can be determhed. Finally, the
controller designer can determine if a new set of sarnple conuoilen with a higher level
of robustness is required to address lvger parameuic deviations.
9.3.1 Interna1 Stability of the Sample Controllers
Let us fkst check the aability of each sample controilen dong with the linear
positioning systeem by the convex stability specifications (9.44) to (9.47). We fVrr test
equations (9.45) to (9.47) in this section then (9.44) will be tested in the following sub-
section. To determine if the gains of H + , H*, and H , are indeed smaller than
infinity, we can test the intemai stability of Hz,, , He, and H z . Let us define the
foliowing statement. The closed-loop system with the linear positioning system P, and
sample controlïer &, is internally stable if the t r a d e r matrices
H , = P, + P ~ C ( I - P,K)-' P+ (9.54)
are stable. In this case we confirm the sample controiler & nabilizes the system P,
From equations (9.21) to (9.23), we know that &, , H e , and Hz are stable as long
as their characteristic equations or sensitivity transfer funcrions S have poles which lie
in the negative region of the cornplex plane. Subaituthg K,, K,, and K, into equations
(9.21) to (9.23) and without showing aU the d e t d s , Hz,, H e , and fi, are shown to
be internally stable. Therefore, sample controllers KI, K,, and K, do aabilize the linear
positioning system. Since the stabiliry specification used here is convex, the r d t a n t
satidacrory convex controller is also internally stable, as shown in the resuits in
Chapter 8.
CHAPTER 9: ROBUSTNESS SPECEICATION
9.3.2 Robustness of the Sample Controllers
The next step is to h d the robusuiess specification for each sample controllers.
We do this by proving equarion (9.44) is m e . More specifically, the RMS gain (Hm
nom) of H,, is Çiite only for stable d e r matrices (&, , He, and H,), and
therefore guarantees the robust stability specifiation holds for the synem closed-loop
tramfer hinaion. Define the general RMS gains of the complementary sensitiviry
function and the sensitivity t d e r function as
and
where:
K. - sample controllen, (n - 1,2,3)
Figures 9.6 to 9.8 show the nwes of II~~llvs. angular frequencies o for each
sample conuoilers. From these figures, we obrain
Figures 9.9 to 9.11 show the m e s of IIs,Jvs. angular frequencies o for each
sample controllers. From these figures, we obtain
Equations (9.60) and (9.61) con- all the convex robusmess specifications of the
sample controilers. Note that these convex robustuess specifications exist originally on
the sample controllers. The that PD controiiers in nature have certain
From equations (9.51) and (9.53) we know that we can determine the bounds of
the pararnetric uncertain with the r d t s in (9.60) and (9.61). The largest values (or
slightly larger than these values) in (9.60) and (9.61) are used to determine the value of
the inverse of the perturbation gain, 1/M
I IIZlI, < = min
and
I IIsII, < = min
From (9.62), L - 0.5 and U - 1.5 while from (9.63), L - 0.857 and U = 1.2. By
comparing the two sets of r d t of L and U, the second set of L and U is adopted for
use used because it is more consemative than the first set. Thus, from equation (9.13),
we can define
0.857 5 (1 + A) S 1 2
We confirm that the closed-loop convex robustness specifications (9.62) and (9.63) are
stronger than the gain mvgin specifïcation, b y d and Barratt, 19913.
So far we have determined the level of robustness of our sample conuoiiers to
any parameuic uncenainties of our hear positioning system model. Since the
robustness specifications w d here are convex, the satisfactory convur conrroiier
denved in Chapter 8 also ha^ the level of robustness of the sample controllers.
9.3.3 Coefficient of Closed-Loop Transfer Function
In the previous sections the interna1 stabiliry of the convex controller is
confirmed and the level of robustness of the conva conuolier is determined. In this
section, the bounds determined in Section 9.3.2 are used to determine the coefficient of
the closed-ioop system transfer function. The coefficient of the closed-loop system
transfer funaion is defiaed as rhe feedback perturbation plus one (9.13). With the
coeEcient known, the percentage of deviation ailowed in the parameters of the linear
positioning system dynamic model without causing instability can be determined.
From equation (9.641, the bounds on the closed-Ioop vansfer h c t i o n
coefficient are known. Let us define the m e meaning of the coefficient by finr
recalling the dynamic model of the linear positioning sysrem
40) = k e
jss2 + Êss
where:
j, = estimated inertia of the linear positioning system, [ j, J - kg-m2
& = estimated damping coefficient of the linear posïtioning system, [ b' ] = kg-m2/sec.
& = estimated effective gain of the linear positioning system, [ Re ] - N/Vok
Parametnc uncertainties cui exkt in aii estimated system parameten, 2, , $ , and K= .
Taking d the unceht ies into account and rewrite (9.65)
p, 0) = WC?
6 j.?ss2 + 6oBss
where Sk, Sj, and S, are uncertainty facton of the estimated system parameten. To
simplify the complexity of the problem let us asrume that the uncertainty factors of
the estimated inertia and damping coefficient 6; and 6, are e q d . Factor out the
uncertainty facton from equauon (9.66) we get
Compare equations (9.67) to (9.13) we have
and thus
where A is the perturbation being feedback to the closed-loop system.
From the previous ntb-section, the
values of 0.857 and 1.2. Therefore
Equation (9.70) represents very important
bounds of the coefficient, (1 +A) has the
information about the h e u positioning
system: the total uncertaïnty in the dpnamic model of the lin- positioning system
can not be 20% greater or 14.3% s d e r than the exu* model. In other worb, tbe
convex controller stables tbe Zinear pon'tioning system and acbieva tbree daired
s p e ~ t i o o n r sim~Ztaneo~(~Iy i f th acisting uncertuinty of the system d y ~ r n i c model
i s bomded within the 20% and 143% Zimit of the exact model.
As descrïbed early in diis chapter, changes in the linear positioning system
paameters may occurred by adding payload to the system. As long as the overall
changes in the system parameten do not exceed the limit, the convex controller
derived in Chapter 8 s t i l i stabilues the linear positioning system and achieves all the
three desired specifications simultaneously. Let us confkm the convex robustness
specification by conducting an experiment on the linear positioning system with
adciSonal payload.
9.4 Experiment on Linear Positioning System with Additional Payload
In this mperiment, a paylod of 5.5 kg is added on the carriage of the linear
positioning system. The convex controiier derived in Chapter 8 is used for the set-
point control of the 1inea.r positioning system. With this additional payload, the
effective inertia of the system has increased from 2.OûxW to 2.23x10-~ kg-m2, and the
inertia is experimentaiiy determined. Without changing the linear positioning system
dynarnic mode1 in the convex controller, the unceRaiflty factor of the estimated inertia
and the damping coefficient of the lineu positioning system is 1.1. In this case, we
assume the uncertainty factor of the estimated effective gain is negligible. Therefore,
rhe inverse of the uncertunty factor can be determined as
and the vaiue in equation (9.7 1) is within the limit given in (9.70).
We nm the experiment with the user program stepm.c , and a desired position
of lOmm is specified Equaüon (9.72) shows the convex performance specification
vaiues with the convex controller7 equations (8.40) and (8.41) applied.
4; = 0.0243 I 0.03 sec
Hence, the convex contrcller derived in Chapter 8 still stabilizes the h e a r positioning
syaem and satisfies three desired specifications simultaneously in the presence of
additional payload. The experimenral r d u with the resultant convex controlier,
equation (8.40) and (8.41), are depiaed in Figures 9.12 to 9.16. It is worthy to note
that the acceleration is aiii around 10.2G acceleration (G = 9.81 d s e & the
gravitational accele ration).
In general, controiier designer specifies the robusuiess specificaùon behhe
wants to achieve and selects sample controllen subjea to the speczed robusuiess
specification. Sine the robustness specification is convex, the satisfactory convex
controiier also achieve the specifïed robustness specification. In chis chapter we
demonstrate the process in reverse order. Since we already derived the satisfactory
convex controller in Chapter 8, we want to know how robust it is to the synem
parametnc uncertainties. Therefore, we check che level of robumess of each sample
comrollen and by using the convut method described in previous sections, we know
that level of robustness of the convex controller.
In genenl situation, controller designer specifies the robustness specification for
each sample controllers to be subjected to. Since the robustness specificauon is convex,
the resultant satisfactory convut controller musr &O be subjected ta the specified
robustness spccL.cation. In this chapter we demonstrated the process of the following.
Since we aLeady derived the satisfactory convex controller in Chapter 8, we want to
know how robust it is to the system paametric uncertainties. Therefore, we check the
level of robustness of each sample controllen by using the convex method described in
previous sections. We then confïrm the robusmess specifications of the hear
positioning system by conducting an experiment on the linear positioning system with
additional payload.
In summary, the convex controller derived in Chapter 8 exhibits a degree of
robustness to system parametric uncertainties. For this robustness specification the
convex controller has proven, that within a certain bound on paramevic uncertainties,
the convex controller stabilizes the syaem and sausfies the desired performance
specifications.
1 oz Frequency (radians)
Figure 9.6: Frequency Response of T,
1 I I I I I I 1 L 1 I I I
1 t %O0[ - - - - - - - - 1---:-l.,.;::;.=,.k:c,..., 1
- - - - - - - - - + - - - - - + - - - * - - * - - 1 - - + - 1 - 4 - + - - - - - - - - - - - 1 - - - - - 1 - - - - l - - - T - - --,-- # - T - r - - - - - - - " " - - - - - - - - - - " T - - - " - l - ~ ' Ï ' - - - - - "
1 I I - - - - - - - - I - - - - - r - - - T " T - - - - r-r -,- - - - - - - - - - - - - - - - - - + - - - - - + - - - ~ - - * - - I - - + C l - ~ - c - -
1 1 - - - - - - - - - l I I I I I I r - - - T - - T - - - - r ' l - 7 - r - - - - - - - -
1 I I I I 1
7 - - - - - l 1 I I I I 1 - - - - - - - - ;--- --: - - - A - - *--LI - a - L - - 1 I l 1 I I I
1 L I 1 I t I I I
1 1 K I I I I I I
Io-' 1 1 , , t # i l
, i L .
l 1 1 I I I l l
1 4 I I I I , I I * 4 I I I ,
I 1 1 I I I 1
I I : I I I I
1 I 1 I t I I I
L 1 I 8 1 1 1 1
I 1 1 I I I I 1 I I I I I 1
I I I I I I I I 1 1 8 I l i 1 \; 1 I 1 I l I I I
, I l I I ,
- r - - - - - - - f - - - - - r - - - , - - -c - 7 - -l--,-
I l I I I I I
I I I I I I I
1 1 L I I I I
I 1 L I I I ,
-,- ,-- - --' ,,- -- L ---l- - L - - ' - - ' , - 1 - 1 . I 1 1 I I I I I
I I 1 1 1 1 1 1 1
I l I 1 1 I I l l
1 I 1 1 I I I I I
Figure 9.7: Frequency Response of T,
Frequericy (radians)
I III I I I l 1
JJ LI- * - - L - -1- J- L L I I II I I I I I II II I 1 1 L I
I I II 1 I I l l 1 1 11 I I I I I 1 1 II I t I I I
I * * C - - - ~ - - C - l - C C 8 1 1 1 J I I I I 1 1 11 I I I I I
1 1 11 I I l 1 1 I 1 1 1 1 1 1 1
III : : : : : :x,- - ~ - - * - ~ - l - r c l ~ '-IL - - , , - - , , - - - - - , 1 1 1 1 1 1 1 1 1 I 1 1 1 1 1 1 1
1 of 1 o2 Fnequency (radians)
Figure 9.11: Frequency Response of S,
Time (u)
Figure 9.12: Linear Positioning System Position v e m Time Under Convex Controiler with 5.5 kg Payload
Figure 9.13: Linear Positioning System Error vernis Time Under Convex Controller with 5.5 kg Payload
Figure 9.14: Control Input vernis T h e Under Convex Conuoller with 5.5 kg Payload
Figure 9.15: Linear Positionhg System Acceleration versus Time Under Convex Controiier with 5.5 kg Payload
Figure 9.16: Linear Positioning System Velocity versus Time Under Convex Controiier with 5.5 kg Payload
Chapter 10
Concluding Remarks
10.1 Summary
The goal of rhis thesis is to conuol the high-speed iinear positioning table with
MSS control method The advantage of the MSS control method is to provide a
procedure for the controller designer to derive a controller, which satisfies the desired
performance specifications simultaneously without gains tuning. The effeniveness of
MSS control on the control of the linear positioning system has been shown by
conducting seveal experiments.
The desired performance specifications used in this research have been selected
with serious considerarion and analysis. MSS control problem is feasible only if a
convex controller can be derived Thus, if the MSS control problem is infeasible, it is
CHAPTER IO: CONCLUDLXG REMARKS
recomrnended that the desired performance specifications to be relaxed.
A systematic method is developed to compensate the inadequacy in the MSS
control method. Therefore, a controiler designer has a verified and detaiied procedure
for deriving a controller to satisfy desired performance specifications simultaneously.
Once the satisfactory convex controiier is found, the designer will appreciate that thïs
new control structure m o t be achieved by any conventional gain nining procedures.
The satisfactory convex conuoiier derived by the MSS control method also
proves to be robust to parameter uncenainties. With the robusmess specifications
imposed on the linear positioning synem, the derived convex controiler r d t s in
dynamic behavior which satisfies the desired performance specifications, with
parameter uncertainries w ithin specified bounds.
In conclusion, the MSS control method is niperior than the conventionai Pm
controller for convolhg high-speed h e a r positioning systern, where high-
performance specifications are required.
10.2 Recommendations for Future Work
High-speed manufacniring process remains both interesting and challenging. In
today's socïety, human living and working environments are greatly dependent on
consumer products, which conrain complex electronic circuitry and microprocessors.
These high-technology consumer produm are manufactured daify in indusvies at high
productive rates. High-speed assembly machines are therefore very much in demand.
Assembly machines are b a s i d y no different from linear positioning tables with
multiple axes. Therefore, the MSS control method adopred in this thesis for
controlling linear positioning system can w e l y be used in industry. The foUowing
possible topics of research are suggested based on the context of the work presented in
this thesis.
1. Mulùple-axis high-speed positioning system can be developed for
experiments, and MSS control method is used for stabilizing the system and
satisfying desired performance specifications sirnultaneously.
2. MSS control method can be adopted for controlling Surface Mounring
Technology (SMT) machines, in which circuit boards are populared with IC
or silicon chips at high speed and great precision. P D controllers cm be
replaced by MSS control method for achieving tighter performance
specifications.
3. The dynamic mode1 of the BLDC motor and the linear positioning system
can be investigated M e r . Phase currents can be fed back to the controller
for bener control of the BLDC dynamics. Thus, a PD controiler dong with
phase m e n t feedback can be used as sample controllen for MSS control
method.
4. Control of flexible structures can be performed on the linear posïtioning
system with a flexible payload added to the system. Experiments and
simulations can be conducted to inveaigate the dynamic behaviors or the
whoie system.
5. Experiments and simulations can be conducted to investigate the
performance of the linear positioning system with additional performance
specifications such as settling time.
6. Experiments and simulations can be conducted to investigate the response of
the linear posiuoning system to desired trajectory inputs with multiple
performance specifications.
[l] Berendsen, C., Champenois, G., Bolopion, A., "Commutation Strategies for Brushless
DC Moton: Infiuence on Instant Torque". E E E Tran.ratfi0n.r on Power E/ettrot~ic~, VOL
8, N0.2,231-236, 1993.
[2] Boyd, S.P., Barratt, CH., Uirear Contr0IY.w Dmgn: Limifr of Ps(omance. New Jersey:
Prenace-HA, inc., 1 99 1.
[3] Clausen, S.T., Syrtem Idenqca~on and Roburt Contml. London: S p ~ g e r - V d a g London
Lirnited, 1986.
[4] Dahleh, MA., Diaz-Bobillo, I.J., Con& o/ LTncwtm'n 5'y.rtem.r: A Anear Pmgrammng
Approacb. New Jersey Prentice-Hall, hc., 1995.
[SI Dawson, D.M., Bury, T.C., Nonhem Con& of Eiectnc Macbinely. New York: Marcel
Deker, Inc., 1998.
[6] Demerdash, NA., Nehi, T.W., Maslowski, E., "Dpamic Modeling of Brushiess dc
Motors in E l e d c Propulsion and Electromechanical Acmacion by Digid
Techniques". LEEE/LQT Confinme. ILr. (Cinn'nnaotiJ, 570-579, 1980.
m Demerdash, NA., Nehl, T.W., "Dynarnic ~Modeling of Brushless dc Motors for
Aerospace Acniation". E E E Tran.rat/~on.r on Amqace and Ei'ectmic $ri+em.r, Volt AES-
16, NO. 6,811-821,1980.
[8] Dote, Y., Kinoshita, S., Bnrsb&.rr Smomoto~: Fundamentah and Ap~iicationz. New York
Oxford University Press, 1 990.
(91 Endo, S., Hori, Y., Tomizuka, M., "Robust Digital Tracking Controiier Design for
Hgh-speed Positioning Sy s tems". Pmceeding~ of the Amencan Con&/ Confmne, June 1993.
(101 FrankiLi, G.F, Poweii, ID., Workrnan, M L , Digtal C o d of D y n e firtem~. 2nd ed-,
New York: Addison-Wesley Publishing Company, Inc., 1990.
(1 11 Gelb, A., Applied OpArna/ Estmatzon. ~Massachusem: The M1.T. Press, 1 974.
[12] Hassul, LM, Shahian, B., Confr02 Systun Dm& U . g iM<rhb. New Jmey: Prmtice-Hall,
Inc., 1993.
(131 Hemati, N., "Nondirnensionalization of the Equations of Motion for Permanent-
Magne t machines ". EletfnC Mac4vne.r and Power X y m r , 23: 541 -5 56, 1 995.
(141 Hemati, N., Leu, MC., "A Complete Mode1 Characterization of Brushless dc Motors".
IEEE Tran~attrtions on Z n d w ~ A&dicaAonns, Vol- 28, No. 1, 1 72-1 80, 1 992.
[1 S] Jahns, TM., 'Torque Production in Permanent-Mapet S ynchronous Motor Drives
with Rectanguiar Current Excitation". LEEE Tran~a~fron on Indur i Applican'on~, VOL M-
20, NO. 4,803-813, 1984.
[16] Jufer, LM., "Brushless DC Motors-Gap Permeance and PM-LMMF Distribution
Anal ysis If. Pmceediig~ ~ Sucteenth AnnuaZ Symposkm, InmmentaI Mohon Conmi Systent~ and
Devl'cer, 21-25, 1987.
[l T ] Ken jo, T., Nagamori, S., Pmanent-Magmt and Bm.rh/eesr DC ~Watorr. New York Oxford
Unversity Press, 1985.
[18] Ko, J.S., Jung, YS., Youn, M.J., "MRAC Load Torque Observer for Position Conuol of
a Brushless DC Motor". IntemaAonafJounza~ Of EIettronic~, Vol. 80, No. 2,20 1 -209,1996.
[19] Krause, P.C., Nucecl, RR, Krefa, RJ., Wacyncdc, O., "Anaiysis of a Permanent
Magnet Synchronous Machine Supplied From a 180° Invener with Phase Control".
LEEE Tranradm on E n w Conuernon, Vol. EC-2, No. 3,423-43 1,1987.
1201 Lee, M.-R, Singh, R, "Identification of Pure Tones Radiated by Bnishless D.C. Moton
Used in Computer Disk Drives". M e Conhvl Engiireenirg Journa4 Vol. 39, No. 2,67-75,
1992.
[21] Lee, M.-R, Padmanabhan, C., Singh, R, "Dynamic Analysis of a Bnishless D.C. Motor
Using a Modified Hamionic Balance Method". ASiME Tramadon fJoumaZ ofDynamic
Syxtemf, iMea~remnf, and Conn-~/, VOL 1 17,283-292,1995.
[22] Liu, H., ~Mult@ie Sirnu/faneorowr Spegican'on Gond Pmbhm and itr Apkcahon to Robot Trqenoty
Tracking System. Ph-D.' thesis, University of Toronto, 1998.
[23] Meshkat, S., "A New Maoprocessor Based Brushless Servo Amplifier for Optimum
Curent Vector Control". Pmceednggr of 13' A n n d Gqonum, InmmentaL Motion Conho/
Syxtem~ and Dmm, 1 9 -24, 1 9 84.
[24] ~Miller, T-J-E., Bmrhlers Petmanent Magnet and ReZuctatlce Motor Driver. New York: Oxford
Unversity Press, 1989.
[2>1 Persson, E-K, Buric, M., "Mathematical Modeliïng and Simulation of High
Performance Brus hless dc Mo ton". Pmceedingr o f 9 Annual Jyqûoninz, Inmmental a won
Confrai Xyrfem~ and DevzCe~, wl -w8,1976,
1261 Piilay, P., Krishnan, R , "Modeling, Simulation, and haiysis of Permanent-Magnet
Motor Drives, Part 1: The Pennanent-Magnet Synchronous Motor Drive". IEEE
Tranradons on Induxty App&cafion.r, Vol. 25, No. 2,265-273,1989.
[27l Piliay, P., Knshnan, R, "ModeLing, Simulation, and Analysis of Permanent-Magner
Motor Drives, Part Ki: The Bmshless DC Motor Drive". LEEE Tran~attrOns on In-
Appl;cadon.r, VOL 25, No, 2,274-279,1989.
[28] Rabadi, A., DC Motor-Hamonic Drive Torque Conml Mtb Appkcation to Robot Joint..
MA-Sc. Thesis, Departrnent of Mechanical and Indusmal Engineering, Universi. of
Toronto, 1993.
[29] Sanchez-Pen% RS., S m a i q M, Roburt 1yriem.r: Tbeoy and Appkcarion~. Toronto: John
Wdey & Sons, Inc., 1998.
[30] Senjyu, T-, Ashimine, S., Uezato, K, "Robust Position Control of DC Seniornotors
Using Adaptive Gain Law'' IEEE Annual Power Elemnicr XSpeakrtir Co@mnce, VOL 2,
1248-1253,1996.
[3 1 ] Sorenson, H.W., Paramter Emmaton: P~n+h.r and Pmblans. New York: ;Marcel Dekker,
Inc., 1980.
[32) S-y, CLP., Singh, B., Sïngh, B.P., "Investigations on Dynamic Behavior of
Permanent Magnet Brushless DC Motor Drive". E l e h ikfacbines and Power Syrfem~, Vol.
23, NO. 6,689-701,1995.
[33] Tai, J., " O p h a l Commutation of Bmhless Morors". Pmcee&q.r o/ I I " AnnuaL
Synposizm, IncrementaI Motion Conho/ System~ and Dm'te.s, 49-53, 1 9 82.
[34] Tang, J., "Using Persond Cornputers as Digit . Controiiers for DC Motor Posiaon and
Speed Control". AXEE Annual Co~mnce Pmceeding.r, 2083-2086, 1995.
[35l The Math Works, Inc. iI.LATZAB for Windowr, 1996.
[36] The Math Works, Inc. ConttoL Syrtem T o o h x , 1992.
[3T] The Math Works, Inc. Oplimkation Toolbox, 1991.
[38] The Math Works, Inc. Simulinkfor Windotvr, 1993.
1391 Van de Vegte, J., Feedback Confml 5jwtem.r. 3d ed., New Jersey: Prentice-Hall, Inc., 1994.
[ a ] V.kk G.S., Dz@taI Coqûuter ConiroI Q&emr. London: Macmillan Educatïon Lrd, 199 1.
[41] Yi, C.H., Song, JJ., Kim, DI., Kim, S.K, "Nonlienar Feedfonvard Control of
Brus Wess DC Motors (BLDCh.T) ". L!?EE Intenrati'onal Jymposi~m on Ind//ltnaI E h n i t s ,
Vol. 1,284439,1995
[42] DC Mutorr S w ControIs b o Qsfettfs: A n Engzkeen'ng Handbook. Electro-Ceft
Coroporauon. USA: Pergarnon Press, 1977.
Appendix A
User Programs
All the user program source codes c m be obtained fiorn Laborato. for Nonlinear Systems
Control (LNSC), Department of Mechanical and Indusmal Engineering, University of
Toronto.
1) 0pen.c
2) step0pen.c
3) sinopen-c
4) steprad-c
5) testrad-c
6) mtraject.~
7) step.c
8) stepm-c
Appendix B
Component Connections
In this appendix, the connections between the iinear positionhg system components
are shown. User or interested readers should read the full system operation manual.
The system operation manuai is available in Labontory of Nonlinear Controi System
at Depart ment of Mechanical Engineering, University of Toronto.
System Diagram
Recall Figure 2.1 from Chapter 2. This diagram shows the connections between the
system components.
Figure 2.1: Linear Positioning System Conneaion Diagram
The conneaion between each components are described in table form. The numbers
presented in the table either represent terminal numben or numben sik-screened on
the components.
cables or wires.
The colors presented in the table represent the physical color of the
B.2 Connection Between Motor and Amplifier
The BLDC motor is a BM130 motor and the amplifier is a B25A20AC brushless servo
PWM amplifier. The connections are described in the following table:
BM130 BLDC Motor 1 B25A20AC P W M Amdifier 1 I 1 a
Black 1 Motor A 1 1
Table B.l: Connection between BM130 BLDC Motor and B25A20AC Amplifier
Red Brown
B.3 Connection
The encoder is attached on
Motor B 2 Motor C 3
Between Encoder and Amplifier
the BM130 BLDC motor. Note: Red/White represents a
red wire or cable with white dou. Please refer to Figure B.1 for encoder diagam.
1
1 Hall 1 (ph 12)
-- . -
Table B.2: Comection berween Encoder and B25A20AC Amplifier
Black/White (pin M) Blue/White f ~ in Pl
Hall 2 (pin 13) Hd 3 14)
Connection Interconnect
Between Amplifier and Module
Table B.3 shows the conneaion between the B25A2OAC PWM amplifier and the ICM-
1900 Intercomect Module.
1 B25A20AC P W A r n p l i f & 1 KM-1900 Interconnect Module * - I -.
Signal GND (pin 2) 35 t Ref IN (pin 4) 32 Inhibit IN (pin 9) 40
74
Table B.3: Comection between ICM-1900 Intercomect Module and B25A20AC Amplifier
Connection Voltmeter
Current sent to the motor
amplifier.
Between
can be observed
Amplifier and
by the m e n t monitor the
1 B25A2OAC P W M Amplifier 1 Voltmeter 1
Table B.4: Connection between B25A2OAC Amplifier and Voltmeter
* - Current Monitor Out @in 8) Monitor G m in 15)
Volt Corn
APPENDIX B: COMPONENT CONXECT~ONS
B. 6 Connection Between Encoder and ICM-1900 Interconnect Module
Table B.5 shows the comection between encoder and the interconnect module. Again
Whice/Red represents the wbite wire or cable with red dots.
Table B.5: Comection between KM-1900 Interconnect Module and Encoder
Encoder White/Red (pin A) Orange/Red (pin B) Blue/Red (pin C) BlacWRed (pin D) Blue/Black (pin E) Orange/Black (pin F) GreedBlack (pin G)
B.7 Connection Between Limit Switches and ICM- 1900 Interconnect Module
ICM-1900 Interconnect Module 83 84 85 86 87 88 89
The colors in the fim column represent the cable colors. Note th- the red, black, and
white cables are a l i comected in pin 55 on the interco~ect module. Please refer to
Figure B.2 for the linear positioning table diagram.
I White 1 55 I Blue 1 53 1 Green 1 52
- -
Table B.6: Co~mcction between KM-1900 Lntercomect Module and Limit Switches
Pin
Mot01 Phase A --*CF ~2 Motor Phase 6 Motor Phase C 6~ 0 Motor F m a Gmund
Figure B.1: Motor and Encoder Connecton Diagram
LU Lfnif ~ v l l i ' ~ - e_lE-L . c d wu ,/ - c d ~ l n l r WLIC'I . t . t
l-- \ \ \
'\ U E R z CL* iI!':T / ..*W ?o[IC!i / -, A O - ~ S ' [uJ ~LWFW: - , \ \, <la c d 3;r aR.'~C - i - I i
Figure B.2: Lincar Positionhg Table and Limit Switches Diagram
Appendix C
Component Specif ications
In this appendix, the specifications of system components are presented in Figure C.l
to C.6. User or interested readen should read the component manuals for full details.
The component manuals are avdable in Laboatory of Nonlinear Control Synem at
Depanment of Mechanical Engineering, University of Toronto.
APPESDIX C: COUPOSEST SPECIFICATIOXS
t Peak Currcat i>hi 1 .+~?t;rti j ,5 i 19 i 3 1 1 0 / 5 5 1 S 3 i 5 5 :
P e t Cunmi rR*MSj 1 .*(R.Hn 1 Id 1 14 - 2 1 1 1 1 ;O 1 3 ! 9 i - -
1 Back E!F C s n s ~ r iiinc-linm '-3lrr cgrrltrKpm 1 ' 5 1 :3.7 ; 1 - 2 1 13% 1 3 6 i 02 ! :> - - . I
amm mai ~ t s i r ~ a i r ciiris-&ml 1 u ~ r m tcotdr 1 ; I) 1 LO i i l 1 i . 1 ; fj.5 1 1 2 ; . ?3 1 t indu- t i w - m c i 1 sin I s.8 I 1.a 1 1 1 j 1.3 I 23 i 3.5 1 1.7
1- U;C.II).Y* 0.- 1 00013 0.0019 1 0.011 0.020 1 0.WZ 9 OSû
kg& 03510' r0.9?ri0.
I A-O~ ! n~& l ::mm i :-oo00 f z m i amo ! 65000 1 4 m f 42000
Figrue C.1: BM Series BLDC Motor Specifications
APPESD~X Cr COMPOSEST SPECIFI~ATIOSS
Table 1-2 cwoiiu the en& spedjcr9oas for t& BM suies BllUbltU mouxs and Figure 1-7 shows the w i a g of s i n e CO*. and mitku eh.anrlr fa mrrry encodtn-
T.Mt 1-2 Eaderspceilkrrkrr
I Input P0-m I
Figure C.2: BM Series BLDC Motor and Encoder Specifiations
1- APPENDIX Cr COMPONENT SPECIFICAIIONS
II POWER STAGE SPECIFICATIONS II II (1 SUPPLY VOLTAGE 251130VAC
11 BANDWIOTH II 2.SKHz II
MAX. CONT. CURRENT (intarri.riy limitadl
MINIMUM LOAO INDUCTANCE*
SWITCMNG FCIEQUMCV
SIGNAL CONNECfOR
SIZE (inches) 1-35 x 4.23 x 245
- 412.s
2SOuH
22KHZf tS%
Low inductance mators requin oxteml inductors
These amplifierr contain a n* ihr b i g e and filer capadton to gonerate the DC bus intemally fmm the^ AC input power. The OC bus voltage is 1.4 times AC volage (RMS), e-g. 17OVDC from 12OVAC. Ouring braking much of the stored mechanical 8nergy is fed back into the pawer supply and charges the output capacitor to a higher voltage. if the charge maches the amplifiar's over-voltage shutdown point. output curent and braking will wase. TO ens~msmooth bnkïnq of large imrtial: loads. a built-ini'shunt reguiatof i g ~ v i d e d in mode1 825MOAC. The shunt nguïator mir s w m ~ Titëmal pbfi?r msistor wtien the bus vàitage reacnes resistor Men dissipates the extra energy of the OC bus.
HEATSINK (BASE) TEMERATURE RANGE
POWER DlSSlPATiON AT C W . CURREM
Figure C.3: B25A2OAC Btushlcss Servo PWM Amplifier S ~ a t i o n s
-2s0 to +WC. d i a MS"C
30W
APPENDIX Cr COMPONENT SPECIFICAT~ONS
F 1 xed Support 1 RADIAL BEARING (sinpie 1
------ .* - RmE t NIJT LEM;TH ( f i x e d fixed onlyl)
e panels beiow
ZWEGNUT IS ASSEneLEO AS SHOWN ON SCPEU MtlUiUTING €NO MAY BE REvEQSED ON REWiEST
LEAO ZCREWS C4N BE P r F E. COATED GN REOUEST
Figure C.4 Linar Positionhg Table Specification 1
Figure CS: Linear Positioning Table Specifiation 2
APPENDIX C: COMPONENT SPECIF ICAT~ONS
Figure C.6: Lineu Posiuoning TIble Specifiauon 3
Appendix D
Numerical Example of MSS Control Method
Ln this appendix, a numerical example of MSS control method is shown in detail.
Readers are expeaed to use the following materials accompaning Chapter 7.
D. 1 Feasibility of Sample Controllers
Sample controllen:
K, - %, + &,s = 0.95+0.025
K, = % + &s = 0.98+0.005s
K, - gP, + &s - 0.95+0.03s Desired performance specifications:
a, - 0.12
Foilowing equations (7.17) to (7.25) we obtain (7.26)
Using a linear programming feature in the ~ a t l a b ~ Opumiution Toolbox to
determine if a vector u exisu. Use the command Zp to find u. The procedure is
described as foliows:
APPENDIX D: NUMERICAL EXIS-WLE OF MSS COXIROL METHOD
1) Dehe equation (7.26) in matrix form. For example,
a = 10.08 -0.0069 0.0959;-6.0258 0.0066 -0.0864;0.054 -0.0231 0.09341
2) Define a vector b
3) Define a vector f
4) Define a lower bound
V B = [o.ol;o.or;o.oij
5) Define an upper bound
vub = fl;I;I]
6) Defioe a vector u
7) If w doesn 't exrjt, tbe samde lentrollers are feasible.
Note: 1) The lower bound on vector u, vlb, is set to 0 0 1 insead of 0.0 because
if r is zero then it can sa* anp equation.
2) The upper bound on vector u is set to 1.0 because the readers will
APPENDKX D: NUMERICAL E X A ~ L E OF MSS CONTROL METHOD
appreciate the fact that the values of vector A cannot be greater than
one (equation (6.7)).
D.2 Convex Combination
Using equation (7.33) and following the same procedure to fmd vector u in the last
seaion, we obtain equation (7.34) and (7.35). Equauon (7.35) is the convex
combination veaor A
A P P E ~ ~ X D: NIMERICAL EXAMPLE OF MSS CONTROL METHOD
D.3 Derivation of %"(s) and G ( s )
The motor dynamic mode1 is given as follows in the Laplace Transform doman
Substitutkg equauon 0-3) into equrtion (7.51) w e obtain
(s2 + 38.5s + 2 0 6 5 9 ( ~ ; + ~ : ~ ) ) [ 0 . 4 4 9 1 ( s ~ + 38.5s + 20659(0.98 + 0.005s))
(s' + 38.5s + 20659(095 + 0.03s)) + 0.5257(s2 + 38.5s + 20659(0.95 + 0.02s))
By using ~ a t h e m a t i c a ~ to perform polynomial multiplications we obtain equation
(7.62) and (7.63).
UPENDDC D: NUERICAL EXAMPLE OF MSS CONTROL METHOD
and
6' = s4 + 957.77s3 + 239384s2 + 1.899 x 10's + 391 x 10' (7.63)
where %'(s), &*(s) and &'(s)s are d&ed as
and
Comparing coefficients from both sides of equation (7.62) we obtain (7.64).
By letting A - 0.96, we know F, A, G, and E immediately. Dividing A by F we get a
common factor of 77.4. Regurding rbis cornmon factor please reud fhr explaination
in page 98 and 99. This common factor &O e h between B and H, C and 1, and D
and J
Therefore, ail the coefficients are obtained in equation (7.66).
The &*(s) and &*(s) in the frequency Qmain are
and
D.4 Discretization of KJs) and &*(s)
In Section 7.7, a systematic approach to obtain KJs) and &*(s) is presenred Equations
(7.67) and (7.68) show the conveir convoiier in the frequency domain. In Section 7.8,
the convex controiier is transformed to the discrete-the domain with the Zero Order
Hold @OH) approach, and equations (7.69) and (7.70) show the convex controller in
the discrete-time domain.
and
Matlabm Control System Toolbox is used to discretize the convex controller, and the
procedure is described as follows:
1) Present the numeraton and denominators of &'(s) and &'(s) into vectors. For
example: n m k p = numerator of l&, = P.96 3047.77 438042.07 2296e7 3.775e8J
2) Use the c2dm cornmuid in h4atlabTM to transform the controiier from the
frequency to the discrete-tirne domain. For example:
APPEND~C D: NUMERICAL EXAMPLE O F MSS C O N ~ O L METHOD
[numdkp, dende] = cZdnt(nt#nkp, da&, Tm, 'zob l )
where: numdkp - numerator of dixretized KJs)
dendkp - denominuor of discretized KJs)
Tm - sampling Ume, e.g. 0.0009
zoh = discretizauon merhod specified
D.5 Realization of KJs) and I&*(s)
We use the Direct Method Fuk, 19911 to realize the derived convex conuoiler.
Substituting KJz) and &*(z) into equation (6.19) we obtain equation (7.71). U(k)
consists of past error, derivative of error, and input signais, and present error and
derivative of error signais.
U ( k ) = 0.96e(k) - 2.0099e(k - 1) + 0.47421e(k - 2 ) + 125e(k - 3) - 0.674e(k - 4 ) + 0.0124e(k) - 0.043Ie(k - I) + 0.00549é(k - 2 ) - 0.03012e(k - 3 ) + 0.00593é(k - 4 ) - (-3.3553U(k - 1) + (7.7 1)
4J822U(k - 2 ) - 2292U(k - 3) + 0.4648tY(k - 4)) Equation (7.7 1) can then be implemented in user program testrad-C.