Update Content - 2021-08-27
This commit is contained in:
parent
04ffabab5c
commit
85ae685ee2
@ -1,5 +0,0 @@
|
|||||||
+++
|
|
||||||
title = "An extended approach of inverted decoupling"
|
|
||||||
author = ["Thomas Dehaeze"]
|
|
||||||
draft = false
|
|
||||||
+++
|
|
@ -1,5 +0,0 @@
|
|||||||
+++
|
|
||||||
title = "An extended approach of inverted decoupling"
|
|
||||||
author = ["Thomas Dehaeze"]
|
|
||||||
draft = false
|
|
||||||
+++
|
|
@ -8,7 +8,7 @@ Tags
|
|||||||
: [Decoupled Control](decoupled_control.md)
|
: [Decoupled Control](decoupled_control.md)
|
||||||
|
|
||||||
Reference
|
Reference
|
||||||
: ([Garrido, Vázquez, and Morilla 2012](#orgdf49544))
|
: ([Garrido, Vázquez, and Morilla 2012](#org32a9ef5))
|
||||||
|
|
||||||
Author(s)
|
Author(s)
|
||||||
: Garrido, J., Francisco V\\'azquez, & Morilla, F.
|
: Garrido, J., Francisco V\\'azquez, & Morilla, F.
|
||||||
@ -19,7 +19,7 @@ Year
|
|||||||
|
|
||||||
## Introduction {#introduction}
|
## Introduction {#introduction}
|
||||||
|
|
||||||
Most decoupling approaches use the conventional decoupling scheme in Figure [1](#orge2ae292) with:
|
Most decoupling approaches use the conventional decoupling scheme in Figure [1](#org265d382) with:
|
||||||
|
|
||||||
- \\(G(s)\\) the process matrix
|
- \\(G(s)\\) the process matrix
|
||||||
- \\(D(s)\\) the decoupler matrix
|
- \\(D(s)\\) the decoupler matrix
|
||||||
@ -38,7 +38,7 @@ The main problem of this methodology is the fact that the complexity of the deco
|
|||||||
An alternative decoupling methods, called _inverted decoupling_, maintains very simple apparent processes and decoupler element independently of the system size.
|
An alternative decoupling methods, called _inverted decoupling_, maintains very simple apparent processes and decoupler element independently of the system size.
|
||||||
However, inverted decoupling cannot be applied to processes with multivariable [Right Half Plane Zeros](right_half_plane_zeros.md).
|
However, inverted decoupling cannot be applied to processes with multivariable [Right Half Plane Zeros](right_half_plane_zeros.md).
|
||||||
|
|
||||||
<a id="orge2ae292"></a>
|
<a id="org265d382"></a>
|
||||||
|
|
||||||
{{< figure src="/ox-hugo/garrido12_decoupling_control_system.png" caption="Figure 1: Block diagram of a decoupling control system" >}}
|
{{< figure src="/ox-hugo/garrido12_decoupling_control_system.png" caption="Figure 1: Block diagram of a decoupling control system" >}}
|
||||||
|
|
||||||
@ -115,4 +115,4 @@ It is usually necessary to approximate the expressions of \\(|G(s)|\\) and \\(\t
|
|||||||
|
|
||||||
## Bibliography {#bibliography}
|
## Bibliography {#bibliography}
|
||||||
|
|
||||||
<a id="orgdf49544"></a>Garrido, Juan, Francisco Vázquez, and Fernando Morilla. 2012. “Centralized Multivariable Control by Simplified Decoupling.” _Journal of Process Control_ 22 (6):1044–62. <https://doi.org/10.1016/j.jprocont.2012.04.008>.
|
<a id="org32a9ef5"></a>Garrido, Juan, Francisco Vázquez, and Fernando Morilla. 2012. “Centralized Multivariable Control by Simplified Decoupling.” _Journal of Process Control_ 22 (6):1044–62. <https://doi.org/10.1016/j.jprocont.2012.04.008>.
|
||||||
|
@ -1,5 +0,0 @@
|
|||||||
+++
|
|
||||||
title = "An extended approach of inverted decoupling"
|
|
||||||
author = ["Thomas Dehaeze"]
|
|
||||||
draft = false
|
|
||||||
+++
|
|
@ -1,5 +0,0 @@
|
|||||||
+++
|
|
||||||
title = "An extended approach of inverted decoupling"
|
|
||||||
author = ["Thomas Dehaeze"]
|
|
||||||
draft = false
|
|
||||||
+++
|
|
@ -1,5 +0,0 @@
|
|||||||
+++
|
|
||||||
title = "Dynamic decoupling of robot manipulators"
|
|
||||||
author = ["Thomas Dehaeze"]
|
|
||||||
draft = false
|
|
||||||
+++
|
|
@ -3,14 +3,14 @@ title = "Design, modeling and control of nanopositioning systems"
|
|||||||
author = ["Thomas Dehaeze"]
|
author = ["Thomas Dehaeze"]
|
||||||
description = "Talks about various topics related to nano-positioning systems."
|
description = "Talks about various topics related to nano-positioning systems."
|
||||||
keywords = ["Control", "Metrology", "Flexible Joints"]
|
keywords = ["Control", "Metrology", "Flexible Joints"]
|
||||||
draft = false
|
draft = true
|
||||||
+++
|
+++
|
||||||
|
|
||||||
Tags
|
Tags
|
||||||
: [Piezoelectric Actuators]({{< relref "piezoelectric_actuators" >}}), [Flexible Joints]({{< relref "flexible_joints" >}})
|
: [Piezoelectric Actuators](piezoelectric_actuators.md), [Flexible Joints](flexible_joints.md)
|
||||||
|
|
||||||
Reference
|
Reference
|
||||||
: ([Fleming and Leang 2014](#org9f0983e))
|
: ([Fleming and Leang 2014](#orgc8028e0))
|
||||||
|
|
||||||
Author(s)
|
Author(s)
|
||||||
: Fleming, A. J., & Leang, K. K.
|
: Fleming, A. J., & Leang, K. K.
|
||||||
@ -783,11 +783,11 @@ Year
|
|||||||
|
|
||||||
### Amplifier and Piezo electrical models {#amplifier-and-piezo-electrical-models}
|
### Amplifier and Piezo electrical models {#amplifier-and-piezo-electrical-models}
|
||||||
|
|
||||||
<a id="orgc11b95b"></a>
|
<a id="orgded1d91"></a>
|
||||||
|
|
||||||
{{< figure src="/ox-hugo/fleming14_amplifier_model.png" caption="Figure 1: A voltage source \\(V\_s\\) driving a piezoelectric load. The actuator is modeled by a capacitance \\(C\_p\\) and strain-dependent voltage source \\(V\_p\\). The resistance \\(R\_s\\) is the output impedance and \\(L\\) the cable inductance." >}}
|
{{< figure src="/ox-hugo/fleming14_amplifier_model.png" caption="Figure 1: A voltage source \\(V\_s\\) driving a piezoelectric load. The actuator is modeled by a capacitance \\(C\_p\\) and strain-dependent voltage source \\(V\_p\\). The resistance \\(R\_s\\) is the output impedance and \\(L\\) the cable inductance." >}}
|
||||||
|
|
||||||
Consider the electrical circuit shown in Figure [1](#orgc11b95b) where a voltage source is connected to a piezoelectric actuator.
|
Consider the electrical circuit shown in Figure [1](#orgded1d91) where a voltage source is connected to a piezoelectric actuator.
|
||||||
The actuator is modeled as a capacitance \\(C\_p\\) in series with a strain-dependent voltage source \\(V\_p\\).
|
The actuator is modeled as a capacitance \\(C\_p\\) in series with a strain-dependent voltage source \\(V\_p\\).
|
||||||
The resistance \\(R\_s\\) and inductance \\(L\\) are the source impedance and the cable inductance respectively.
|
The resistance \\(R\_s\\) and inductance \\(L\\) are the source impedance and the cable inductance respectively.
|
||||||
|
|
||||||
@ -911,4 +911,4 @@ The bandwidth limitations of standard piezoelectric drives were identified as:
|
|||||||
|
|
||||||
## Bibliography {#bibliography}
|
## Bibliography {#bibliography}
|
||||||
|
|
||||||
<a id="org9f0983e"></a>Fleming, Andrew J., and Kam K. Leang. 2014. _Design, Modeling and Control of Nanopositioning Systems_. Advances in Industrial Control. Springer International Publishing. <https://doi.org/10.1007/978-3-319-06617-2>.
|
<a id="orgc8028e0"></a>Fleming, Andrew J., and Kam K. Leang. 2014. _Design, Modeling and Control of Nanopositioning Systems_. Advances in Industrial Control. Springer International Publishing. <https://doi.org/10.1007/978-3-319-06617-2>.
|
||||||
|
@ -1,26 +0,0 @@
|
|||||||
+++
|
|
||||||
title = "Mechatronics and robotics: new trends and challenges"
|
|
||||||
author = ["Thomas Dehaeze"]
|
|
||||||
draft = false
|
|
||||||
+++
|
|
||||||
|
|
||||||
Tags
|
|
||||||
:
|
|
||||||
|
|
||||||
|
|
||||||
Reference
|
|
||||||
: ([Indri and Oboe 2020](#orge6b9fea))
|
|
||||||
|
|
||||||
Author(s)
|
|
||||||
: Indri, M., & Oboe, R.
|
|
||||||
|
|
||||||
Year
|
|
||||||
: 2020
|
|
||||||
|
|
||||||
- [ ] Read Chapter 4
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Bibliography {#bibliography}
|
|
||||||
|
|
||||||
<a id="orge6b9fea"></a>Indri, Marina, and Roberto Oboe. 2020. _Mechatronics and Robotics: New Trends and Challenges_. CRC Press.
|
|
@ -1,111 +0,0 @@
|
|||||||
+++
|
|
||||||
title = "Advanced Motion Control Design"
|
|
||||||
author = ["Thomas Dehaeze"]
|
|
||||||
draft = false
|
|
||||||
+++
|
|
||||||
|
|
||||||
Tags
|
|
||||||
:
|
|
||||||
|
|
||||||
|
|
||||||
Reference
|
|
||||||
: ([Levine 2011](#org5f2e773)), chapter 27
|
|
||||||
|
|
||||||
Author(s)
|
|
||||||
: Levine, W. S.
|
|
||||||
|
|
||||||
Year
|
|
||||||
: 2011
|
|
||||||
|
|
||||||
|
|
||||||
## Introduction {#introduction}
|
|
||||||
|
|
||||||
The industrial state of the art control of motion systems can be summarized as follows.
|
|
||||||
Most systems, by design, are either decoupled, or can be decoupled using static input-output transformations.
|
|
||||||
Hence, most motion systems and their motion software architecture use SISO control design methods and solutions.
|
|
||||||
Feedback design is mostly done in the frequency domain, using [Loop-Shaping](loop_shaping.md) techniques.
|
|
||||||
A typical motion controller has a PID structure, with a low pass at high frequencies and one or two notch filters to compensate flexible dynamics.
|
|
||||||
In addition to the feedback controller, a feedforward controller is applied with acceleration, velocity from the reference signal.
|
|
||||||
The setpoint itself is a result of a setpoint generator with jerk limitation profiles (see [Trajectory Generation](trajectory_generation.md)).
|
|
||||||
If the requirements increase, the dynamic coupling between the various DOFs can no longer be neglected and more advanced MIMO control is required.
|
|
||||||
|
|
||||||
<div class="important">
|
|
||||||
<div></div>
|
|
||||||
|
|
||||||
Step by step procedure:
|
|
||||||
|
|
||||||
1. Interaction Analysis
|
|
||||||
2. Decoupling
|
|
||||||
3. Independent SISO design
|
|
||||||
4. Sequential SISO design
|
|
||||||
5. Norm-based MIMO design
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="definition">
|
|
||||||
<div></div>
|
|
||||||
|
|
||||||
Centralized control
|
|
||||||
: the transfer function matrix of the controller is allowed to have any structure
|
|
||||||
|
|
||||||
Decentralized control
|
|
||||||
: diagonal controller transfer function, but constant decoupling manipulations of inputs and outputs are allowed
|
|
||||||
|
|
||||||
Independent decentralized control
|
|
||||||
: a single loop is designed without taking into account the effect of earlier or later designed loops
|
|
||||||
|
|
||||||
Sequential decentralized control
|
|
||||||
: a single loop is designed with taking into account the effect of all earlier closed loops
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
## Motion Systems {#motion-systems}
|
|
||||||
|
|
||||||
Here, we focus on the control of linear time invariant electromechanical motion systems that have the same number of actuators and sensors as Rigid Body modes.
|
|
||||||
The dynamics of such systems are often dominated by the mechanics, such that:
|
|
||||||
|
|
||||||
\begin{equation}
|
|
||||||
G\_p(s) = \sum\_{i=1}^{N\_{rb}} \frac{c\_i b\_i^T}{s^2} + \sum\_{i=N\_{rb} + 1}^{N} \frac{c\_ib\_i^T}{s^2 + 2 \xi\_i \omega\_i s + \omega\_i^2}
|
|
||||||
\end{equation}
|
|
||||||
|
|
||||||
with \\(N\_{rb}\\) is the number of rigid body modes.
|
|
||||||
The vectors \\(c\_i,b\_i\\) span the directions of the ith mode shapes.
|
|
||||||
|
|
||||||
If the resonance frequencies \\(\omega\_i\\) are high enough, the plant can be approximately decoupled using static input/output transformations \\(T\_u,T\_y\\) so that:
|
|
||||||
|
|
||||||
\begin{equation}
|
|
||||||
G\_{yu} = T\_y G\_p(s) T\_u = \frac{1}{s^2} \begin{bmatrix}
|
|
||||||
m & 0 & & \dots & & 0 \\\\\\
|
|
||||||
0 & m & & & & \\\\\\
|
|
||||||
& & m & \ddots & & \vdots \\\\\\
|
|
||||||
\vdots & & \ddots & I\_x & & \\\\\\
|
|
||||||
& & & & I\_y & 0 \\\\\\
|
|
||||||
0 & & \dots & & 0 & I\_z
|
|
||||||
\end{bmatrix} + G\_{\text{flex}}(s)
|
|
||||||
\end{equation}
|
|
||||||
|
|
||||||
|
|
||||||
## Feedback Control Design {#feedback-control-design}
|
|
||||||
|
|
||||||
|
|
||||||
### [Loop-Shaping](loop_shaping.md) - The SISO case {#loop-shaping--loop-shaping-dot-md--the-siso-case}
|
|
||||||
|
|
||||||
The key idea of loopshaping is the modification of the controller such that the open-loop is made according to specifications.
|
|
||||||
The reason this works well is that the controller inters linearly into the open-loop transfer function \\(L(s) = G(s)K(s)\\).
|
|
||||||
However, in practice all specifications are of course given in terms of the final system performance, that is, as closed-loop specifications.
|
|
||||||
So we should convert the closed-loop specifications into specifications on the open-loop.
|
|
||||||
|
|
||||||
Let us assume we know the spectral contents of the disturbance.
|
|
||||||
Take as an example the simple case of a disturbance being a sinusoid of known amplitude and frequency.
|
|
||||||
If we know the specifications on the error amplitude, we can derive the requirement on the process sensitivity at that frequency.
|
|
||||||
Since at low frequency the sensitivity can be approximated as the inverse of the open-loop, we can translate this into a specification of the open-loop at that frequency.
|
|
||||||
Because we know that the slope of the open-loop of a well tuned motion system will be between -2 and -1, we can estimate the required crossover frequency.
|
|
||||||
|
|
||||||
|
|
||||||
### Loop-Shaping - The MIMO case {#loop-shaping-the-mimo-case}
|
|
||||||
|
|
||||||
|
|
||||||
## Bibliography {#bibliography}
|
|
||||||
|
|
||||||
<a id="org5f2e773"></a>Levine, W. S. 2011. _Control System Applications_. The Control Handbook. Boca Raton: CRC Press.
|
|
@ -1,23 +0,0 @@
|
|||||||
+++
|
|
||||||
title = "System identification : a frequency domain approach"
|
|
||||||
author = ["Thomas Dehaeze"]
|
|
||||||
draft = false
|
|
||||||
+++
|
|
||||||
|
|
||||||
Tags
|
|
||||||
: [System Identification](system_identification.md)
|
|
||||||
|
|
||||||
Reference
|
|
||||||
: ([Pintelon and Schoukens 2012](#org88596ad))
|
|
||||||
|
|
||||||
Author(s)
|
|
||||||
: Pintelon, R., & Schoukens, J.
|
|
||||||
|
|
||||||
Year
|
|
||||||
: 2012
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Bibliography {#bibliography}
|
|
||||||
|
|
||||||
<a id="org88596ad"></a>Pintelon, Rik, and Johan Schoukens. 2012. _System Identification : a Frequency Domain Approach_. Hoboken, N.J. Piscataway, NJ: Wiley IEEE Press. <https://doi.org/10.1002/9781118287422>.
|
|
@ -1,7 +1,7 @@
|
|||||||
+++
|
+++
|
||||||
title = "Mastering system identification in 100 exercises"
|
title = "Mastering system identification in 100 exercises"
|
||||||
author = ["Thomas Dehaeze"]
|
author = ["Thomas Dehaeze"]
|
||||||
draft = false
|
draft = true
|
||||||
+++
|
+++
|
||||||
|
|
||||||
Tags
|
Tags
|
||||||
@ -9,7 +9,7 @@ Tags
|
|||||||
|
|
||||||
|
|
||||||
Reference
|
Reference
|
||||||
: ([Schoukens, Pintelon, and Rolain 2012](#org4021f9f))
|
: ([Schoukens, Pintelon, and Rolain 2012](#org1193e9b))
|
||||||
|
|
||||||
Author(s)
|
Author(s)
|
||||||
: Schoukens, J., Pintelon, R., & Rolain, Y.
|
: Schoukens, J., Pintelon, R., & Rolain, Y.
|
||||||
@ -20,4 +20,4 @@ Year
|
|||||||
|
|
||||||
## Bibliography {#bibliography}
|
## Bibliography {#bibliography}
|
||||||
|
|
||||||
<a id="org4021f9f"></a>Schoukens, Johan, Rik Pintelon, and Yves Rolain. 2012. _Mastering System Identification in 100 Exercises_. John Wiley & Sons.
|
<a id="org1193e9b"></a>Schoukens, Johan, Rik Pintelon, and Yves Rolain. 2012. _Mastering System Identification in 100 Exercises_. John Wiley & Sons.
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
+++
|
+++
|
||||||
title = "Multivariable control systems: an engineering approach"
|
title = "Decentralized and decoupled control"
|
||||||
author = ["Thomas Dehaeze"]
|
author = ["Thomas Dehaeze"]
|
||||||
draft = true
|
draft = false
|
||||||
+++
|
+++
|
||||||
|
|
||||||
Tags
|
Tags
|
||||||
: [Multivariable Control](multivariable_control.md)
|
: [Decentralized Control](decentralized_control.md), [Multivariable Control](multivariable_control.md)
|
||||||
|
|
||||||
Reference
|
Reference
|
||||||
: ([Albertos and Antonio 2004](#orga6ef935))
|
: ([Albertos and Antonio 2004](#org86b8145))
|
||||||
|
|
||||||
Author(s)
|
Author(s)
|
||||||
: Albertos, P., & Antonio, S.
|
: Albertos, P., & Antonio, S.
|
||||||
@ -17,10 +17,7 @@ Year
|
|||||||
: 2004
|
: 2004
|
||||||
|
|
||||||
|
|
||||||
## [Decentralized Control](decentralized_control.md) and Decoupled Control {#decentralized-control--decentralized-control-dot-md--and-decoupled-control}
|
## Introduction {#introduction}
|
||||||
|
|
||||||
|
|
||||||
### Introduction {#introduction}
|
|
||||||
|
|
||||||
Decentralized control is decomposed into two steps:
|
Decentralized control is decomposed into two steps:
|
||||||
|
|
||||||
@ -42,7 +39,7 @@ Two approaches can be used to control a coupled system with SISO techniques:
|
|||||||
- **cascade control**
|
- **cascade control**
|
||||||
|
|
||||||
|
|
||||||
### Mutli-Loop Control, Pairing Selection {#mutli-loop-control-pairing-selection}
|
## Mutli-Loop Control, Pairing Selection {#mutli-loop-control-pairing-selection}
|
||||||
|
|
||||||
The strategy called _multi-loop control_ consists of first proper input/output pairing, and then design of several SISO controllers.
|
The strategy called _multi-loop control_ consists of first proper input/output pairing, and then design of several SISO controllers.
|
||||||
In this way, a complex control problem is divided into several simpler ones.
|
In this way, a complex control problem is divided into several simpler ones.
|
||||||
@ -51,7 +48,7 @@ The multi-loop control may not work in strongly coupled systems.
|
|||||||
Therefore, a methodology the access the degree of interaction between the loops is needed.
|
Therefore, a methodology the access the degree of interaction between the loops is needed.
|
||||||
|
|
||||||
|
|
||||||
#### [Relative Gain Array](relative_gain_array.md) {#relative-gain-array--relative-gain-array-dot-md}
|
### [Relative Gain Array](relative_gain_array.md) {#relative-gain-array--relative-gain-array-dot-md}
|
||||||
|
|
||||||
The Relative Gain Array (RGA) \\(\Lambda(s)\\) is defined as:
|
The Relative Gain Array (RGA) \\(\Lambda(s)\\) is defined as:
|
||||||
|
|
||||||
@ -66,7 +63,7 @@ For demanding control specifications, the values of \\(\Lambda\\) car be drawn a
|
|||||||
In this case, at frequencies important for control stability robustness (around the peak of the sensitivity transfer function), if \\(\Lambda(j\omega)\\) approaches the identity matrix, stability problems are avoided in multi-loop control.
|
In this case, at frequencies important for control stability robustness (around the peak of the sensitivity transfer function), if \\(\Lambda(j\omega)\\) approaches the identity matrix, stability problems are avoided in multi-loop control.
|
||||||
|
|
||||||
|
|
||||||
### Decoupling {#decoupling}
|
## Decoupling {#decoupling}
|
||||||
|
|
||||||
In cases when multi-loop control is not effective in reaching the desired specifications, a possible strategy for tackling the MIMO control could be to transform the transfer function matrix into a diagonal dominant one.
|
In cases when multi-loop control is not effective in reaching the desired specifications, a possible strategy for tackling the MIMO control could be to transform the transfer function matrix into a diagonal dominant one.
|
||||||
This strategy is called **decoupling**.
|
This strategy is called **decoupling**.
|
||||||
@ -77,12 +74,12 @@ This strategy is called **decoupling**.
|
|||||||
- based on state measurements, via a feedback law
|
- based on state measurements, via a feedback law
|
||||||
|
|
||||||
|
|
||||||
#### Feedforward Decoupling {#feedforward-decoupling}
|
### Feedforward Decoupling {#feedforward-decoupling}
|
||||||
|
|
||||||
A pre-compensator (Figure [1](#org7023330)) can be added to transform the open-loop characteristics into a new one as chosen by the designer.
|
A pre-compensator (Figure [1](#org860681c)) can be added to transform the open-loop characteristics into a new one as chosen by the designer.
|
||||||
This decoupler can be taken as the inverse of the plant provided it does not include RHP-zeros.
|
This decoupler can be taken as the inverse of the plant provided it does not include RHP-zeros.
|
||||||
|
|
||||||
<a id="org7023330"></a>
|
<a id="org860681c"></a>
|
||||||
|
|
||||||
{{< figure src="/ox-hugo/albertos04_pre_compensator_decoupling.png" caption="Figure 1: Decoupler pre-compensator" >}}
|
{{< figure src="/ox-hugo/albertos04_pre_compensator_decoupling.png" caption="Figure 1: Decoupler pre-compensator" >}}
|
||||||
|
|
||||||
@ -99,7 +96,7 @@ Although at first glance, decoupling seems an appealing idea, there are some dra
|
|||||||
- feedback decoupling needs full state measurements
|
- feedback decoupling needs full state measurements
|
||||||
|
|
||||||
|
|
||||||
#### SVD Decoupling {#svd-decoupling}
|
### SVD Decoupling {#svd-decoupling}
|
||||||
|
|
||||||
A matrix \\(M\\) can be expressed, using the [Singular Value Decomposition](singular_value_decomposition.md) as:
|
A matrix \\(M\\) can be expressed, using the [Singular Value Decomposition](singular_value_decomposition.md) as:
|
||||||
|
|
||||||
@ -112,10 +109,10 @@ where \\(U\\) and \\(V\\) are orthogonal matrices and \\(\Sigma\\) is diagonal.
|
|||||||
The SVD can be used to obtain decoupled equations between linear combinations of sensors and linear combinations of actuators.
|
The SVD can be used to obtain decoupled equations between linear combinations of sensors and linear combinations of actuators.
|
||||||
In this way, although losing part of its intuitive sense, a decoupled design can be carried out even for non-square plants.
|
In this way, although losing part of its intuitive sense, a decoupled design can be carried out even for non-square plants.
|
||||||
|
|
||||||
If sensors are multiplied by \\(U^T\\) and control actions multiplied by \\(V\\), as in Figure [2](#org2de6de7), then the loop, in the transformed variables, is decoupled, so a diagonal controller \\(K\_D\\) can be used.
|
If sensors are multiplied by \\(U^T\\) and control actions multiplied by \\(V\\), as in Figure [2](#orgbb644a3), then the loop, in the transformed variables, is decoupled, so a diagonal controller \\(K\_D\\) can be used.
|
||||||
Usually, the sensor and actuator transformations are obtained using the DC gain, or a real approximation of \\(G(j\omega)\\), where \\(\omega\\) is around the desired closed-loop bandwidth.
|
Usually, the sensor and actuator transformations are obtained using the DC gain, or a real approximation of \\(G(j\omega)\\), where \\(\omega\\) is around the desired closed-loop bandwidth.
|
||||||
|
|
||||||
<a id="org2de6de7"></a>
|
<a id="orgbb644a3"></a>
|
||||||
|
|
||||||
{{< figure src="/ox-hugo/albertos04_svd_decoupling.png" caption="Figure 2: SVD decoupling: \\(K\_D\\) is a diagonal controller designed for \\(\Sigma\\)" >}}
|
{{< figure src="/ox-hugo/albertos04_svd_decoupling.png" caption="Figure 2: SVD decoupling: \\(K\_D\\) is a diagonal controller designed for \\(\Sigma\\)" >}}
|
||||||
|
|
||||||
@ -128,7 +125,7 @@ SVD decoupling produces the most suitable combinations for independent "multi-lo
|
|||||||
If some of the vectors in \\(V\\) (input directions) have a significant component on a particular input, and the corresponding output direction is also significantly pointing to a particular output, that combination is a good candidate for an independent multi-loop control.
|
If some of the vectors in \\(V\\) (input directions) have a significant component on a particular input, and the corresponding output direction is also significantly pointing to a particular output, that combination is a good candidate for an independent multi-loop control.
|
||||||
|
|
||||||
|
|
||||||
### Conclusions {#conclusions}
|
## Conclusions {#conclusions}
|
||||||
|
|
||||||
In this chapter, the control of systems with multiple inputs and outputs is discussed using SISO-based tools, either directly or after some multivariable decoupling transformations.
|
In this chapter, the control of systems with multiple inputs and outputs is discussed using SISO-based tools, either directly or after some multivariable decoupling transformations.
|
||||||
|
|
||||||
@ -188,7 +185,6 @@ When switching on the regulator, significant transient behavior can be seen and
|
|||||||
The solution is similar to that of the wind-up phenomenon: the regulator should be always on, carrying out calculations by using \eqref{eq:antiwindup_pid}.
|
The solution is similar to that of the wind-up phenomenon: the regulator should be always on, carrying out calculations by using \eqref{eq:antiwindup_pid}.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Bibliography {#bibliography}
|
## Bibliography {#bibliography}
|
||||||
|
|
||||||
<a id="orga6ef935"></a>Albertos, P., and S. Antonio. 2004. _Multivariable Control Systems: An Engineering Approach_. Advanced Textbooks in Control and Signal Processing. Springer-Verlag. <https://doi.org/10.1007/b97506>.
|
<a id="org86b8145"></a>Albertos, P., and S. Antonio. 2004. “Decentralized and Decoupled Control.” In _Multivariable Control Systems: An Engineering Approach_, 125–62. Advanced Textbooks in Control and Signal Processing. Springer-Verlag. <https://doi.org/10.1007/b97506>.
|
236
content/inbook/levine11_contr_system_applic.md
Normal file
236
content/inbook/levine11_contr_system_applic.md
Normal file
@ -0,0 +1,236 @@
|
|||||||
|
+++
|
||||||
|
title = "Advanced Motion Control Design"
|
||||||
|
author = ["Thomas Dehaeze"]
|
||||||
|
draft = false
|
||||||
|
+++
|
||||||
|
|
||||||
|
Tags
|
||||||
|
:
|
||||||
|
|
||||||
|
|
||||||
|
Reference
|
||||||
|
: ([Levine 2011](#orgb7728f4)), chapter 27
|
||||||
|
|
||||||
|
Author(s)
|
||||||
|
: Levine, W. S.
|
||||||
|
|
||||||
|
Year
|
||||||
|
: 2011
|
||||||
|
|
||||||
|
|
||||||
|
## Introduction {#introduction}
|
||||||
|
|
||||||
|
The industrial state of the art control of motion systems can be summarized as follows.
|
||||||
|
Most systems, by design, are either decoupled, or can be decoupled using static input-output transformations.
|
||||||
|
Hence, most motion systems and their motion software architecture use SISO control design methods and solutions.
|
||||||
|
|
||||||
|
Feedback design is mostly done in the frequency domain, using [Loop-Shaping](loop_shaping.md) techniques.
|
||||||
|
A typical motion controller has a PID structure, with a low pass at high frequencies and one or two notch filters to compensate flexible dynamics.
|
||||||
|
In addition to the feedback controller, a feedforward controller is applied with acceleration, velocity from the reference signal.
|
||||||
|
|
||||||
|
The setpoint itself is a result of a setpoint generator with jerk limitation profiles (see [Trajectory Generation](trajectory_generation.md)).
|
||||||
|
If the requirements increase, the dynamic coupling between the various DOFs can no longer be neglected and more advanced MIMO control is required.
|
||||||
|
|
||||||
|
<div class="definition">
|
||||||
|
<div></div>
|
||||||
|
|
||||||
|
Centralized control
|
||||||
|
: the transfer function matrix of the controller is allowed to have any structure
|
||||||
|
|
||||||
|
Decentralized control
|
||||||
|
: diagonal controller transfer function, but constant decoupling manipulations of inputs and outputs are allowed
|
||||||
|
|
||||||
|
Independent decentralized control
|
||||||
|
: a single loop is designed without taking into account the effect of earlier or later designed loops
|
||||||
|
|
||||||
|
Sequential decentralized control
|
||||||
|
: a single loop is designed with taking into account the effect of all earlier closed loops
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
## Motion Systems {#motion-systems}
|
||||||
|
|
||||||
|
Here, we focus on the control of linear time invariant electromechanical motion systems that have the same number of actuators and sensors as Rigid Body modes.
|
||||||
|
The dynamics of such systems are often dominated by the mechanics, such that:
|
||||||
|
|
||||||
|
\begin{equation}
|
||||||
|
G\_p(s) = \sum\_{i=1}^{N\_{rb}} \frac{c\_i b\_i^T}{s^2} + \sum\_{i=N\_{rb} + 1}^{N} \frac{c\_ib\_i^T}{s^2 + 2 \xi\_i \omega\_i s + \omega\_i^2}
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
with \\(N\_{rb}\\) is the number of rigid body modes.
|
||||||
|
The vectors \\(c\_i,b\_i\\) span the directions of the ith mode shapes.
|
||||||
|
|
||||||
|
If the resonance frequencies \\(\omega\_i\\) are high enough, the plant can be approximately decoupled using static input/output transformations \\(T\_u,T\_y\\) so that:
|
||||||
|
|
||||||
|
\begin{equation}
|
||||||
|
G\_{yu} = T\_y G\_p(s) T\_u = \frac{1}{s^2} \begin{bmatrix}
|
||||||
|
m & 0 & & \dots & & 0 \\\\\\
|
||||||
|
0 & m & & & & \\\\\\
|
||||||
|
& & m & \ddots & & \vdots \\\\\\
|
||||||
|
\vdots & & \ddots & I\_x & & \\\\\\
|
||||||
|
& & & & I\_y & 0 \\\\\\
|
||||||
|
0 & & \dots & & 0 & I\_z
|
||||||
|
\end{bmatrix} + G\_{\text{flex}}(s)
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
|
||||||
|
## Feedback Control Design {#feedback-control-design}
|
||||||
|
|
||||||
|
|
||||||
|
### [Loop-Shaping](loop_shaping.md) - The SISO case {#loop-shaping--loop-shaping-dot-md--the-siso-case}
|
||||||
|
|
||||||
|
The key idea of loopshaping is the modification of the controller such that the open-loop is made according to specifications.
|
||||||
|
The reason this works well is that the controller enters linearly into the open-loop transfer function \\(L(s) = G(s)K(s)\\).
|
||||||
|
However, in practice all specifications are of course given in terms of the final system performance, that is, as _closed-loop_ specifications.
|
||||||
|
So we should convert the closed-loop specifications into specifications on the open-loop.
|
||||||
|
|
||||||
|
Take as an example the simple case of a disturbance being a sinusoid of known amplitude and frequency.
|
||||||
|
If we know the specifications on the error amplitude, we can derive the requirement on the process sensitivity at that frequency.
|
||||||
|
Since at low frequency the sensitivity can be approximated as the inverse of the open-loop, we can translate this into a specification of the open-loop at that frequency.
|
||||||
|
Because we know that the slope of the open-loop of a well tuned motion system will be between -2 and -1, we can estimate the required crossover frequency.
|
||||||
|
|
||||||
|
|
||||||
|
### Loop-Shaping - The MIMO case {#loop-shaping-the-mimo-case}
|
||||||
|
|
||||||
|
In MIMO systems, it is much less trivial to apply loopshaping.
|
||||||
|
The stability is determined by the closed-loop polynomial, \\(\det(I + L(s))\\), and the characteristic loci (eigenvalues of the FRF \\(L(j\omega)\\) in the complex plane) can be used for this graphically.
|
||||||
|
A system with N inputs and N outputs has N characteristic loci.
|
||||||
|
|
||||||
|
If each eigen value locus does not encircle the point (-1,0), the MIMO system is closed-loop stable.
|
||||||
|
The shaping of these eigenvalue loci is not straightforward if the plant has large off-diagonal elements.
|
||||||
|
In that case, a single element of the controller will affect more eigenvalue loci.
|
||||||
|
|
||||||
|
The strong non-intuitive aspect of MIMO loopshaping and the fact that SISO loopshaping is used often, are major obstacles in application of modern design tools in industrial motion systems.
|
||||||
|
|
||||||
|
<div class="important">
|
||||||
|
<div></div>
|
||||||
|
|
||||||
|
For that reason, the step-by-step approach is proposed:
|
||||||
|
|
||||||
|
1. Interaction Analysis
|
||||||
|
2. Decoupling Transformations
|
||||||
|
3. Independent SISO design
|
||||||
|
4. Sequential SISO design
|
||||||
|
5. Norm-based MIMO design
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
#### Interaction Analysis {#interaction-analysis}
|
||||||
|
|
||||||
|
The goal of the interaction analysis is to identify two-sided interactions in the plant dynamics.
|
||||||
|
Two measured for plant interactions can be used:
|
||||||
|
|
||||||
|
- Relative Gain Array (RGA) per frequency
|
||||||
|
|
||||||
|
<div class="definition">
|
||||||
|
<div></div>
|
||||||
|
|
||||||
|
The frequency dependent relative gain array is calculated as:
|
||||||
|
|
||||||
|
\begin{equation}
|
||||||
|
\text{RGA}(G(j\omega)) = G(j\omega) \times (G(j\omega)^{-1})^{T}
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
where \\(\times\\) denotes element wise multiplication.
|
||||||
|
|
||||||
|
</div>
|
||||||
|
- Structure Singular Value (SSV) of interaction as multiplicative output uncertainty
|
||||||
|
|
||||||
|
<div class="definition">
|
||||||
|
<div></div>
|
||||||
|
|
||||||
|
The structured singular value interaction measure is the following condition:
|
||||||
|
|
||||||
|
\begin{equation}
|
||||||
|
\mu\_D(E\_T(j\omega)) < \frac{1}{2}, \forall \omega
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
with \\(E\_T(j\omega) = G\_{nd}(j\omega) G\_d^{-1}(j\omega)\\), \\(\mu\_D\\) is the structured singular value, with respect to the diagonal structure of the feedback controller.
|
||||||
|
\\(G\_d(s)\\) are the diagonal terms of the transfer function matrix, and \\(G\_{nd}(s) = G(s) - G\_d(s)\\).
|
||||||
|
|
||||||
|
If a diagonal transfer function matrix is used, controllers gains must be small at frequencies where this condition is not met.
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
#### Decoupling Transformations {#decoupling-transformations}
|
||||||
|
|
||||||
|
A common method to reduce plant interaction is to redefine the input and output of the plant.
|
||||||
|
One can combine several inputs or outputs to control the system in more decoupled coordinates.
|
||||||
|
For motion systems most of these transformations are found on the basis of _kinematic models_.
|
||||||
|
Herein, combinations of the actuators are defined so that actuator variables act in independent (orthogonal) directions at the center of gravity.
|
||||||
|
Likewise, combinations of the sensors are defined so that each translation and rotation of the center of gravity can be measured independently.
|
||||||
|
This is basically the inversion of a kinematic model of the plant.
|
||||||
|
|
||||||
|
As motion systems are often designed to be light and stiff, kinematic decoupling is often sufficient to achieve acceptable decoupling at the crossover frequency.
|
||||||
|
|
||||||
|
|
||||||
|
#### Independent SISO design {#independent-siso-design}
|
||||||
|
|
||||||
|
For systems where interaction is low, or the decoupling is almost successful, one can design a _diagonal_ controller by closing each control loop independently.
|
||||||
|
The residual interaction can be accounted for in the analysis.
|
||||||
|
|
||||||
|
For this, we make use of the following decomposition:
|
||||||
|
|
||||||
|
\begin{equation}
|
||||||
|
\det(I + GK) = \det(I + E\_T T\_d) \det(I + G\_d K)
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
with \\(T\_d = G\_d K (I + G\_d K)^{-1}\\).
|
||||||
|
\\(G\_d(s)\\) is defined to be only the diagonal terms of the plant transfer function matrix.
|
||||||
|
The effect of the non-diagonal terms of the plant \\(G\_{nd}(s) = G(s) - G\_d(s)\\) is accounted for in \\(E\_T(s)\\).
|
||||||
|
|
||||||
|
<div class="important">
|
||||||
|
<div></div>
|
||||||
|
|
||||||
|
Then the MIMO closed-loop stability assessment can be slit up in two assessments:
|
||||||
|
|
||||||
|
- the first for stability of N non-interacting loops, namely \\(\det(I + G\_d(s)K(s))\\)
|
||||||
|
- the second for stability of \\(\det(I + E\_T(s)T\_d(s))\\)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
If \\(G(s)\\) and \\(T\_d(s)\\) are stable, one can use the _small gain theorem_ to find a sufficient condition of stability of \\(\det(I + E\_TT\_d)\\) as
|
||||||
|
|
||||||
|
\begin{equation}
|
||||||
|
\rho(E\_T(j\omega) T\_d(j\omega)) < 1, \forall \omega
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
where \\(\rho\\) is the spectral radius.
|
||||||
|
|
||||||
|
Due to the fact that a sufficient condition is used, independent loop closing usually leads to conservative designs.
|
||||||
|
|
||||||
|
|
||||||
|
#### Sequential SISO design {#sequential-siso-design}
|
||||||
|
|
||||||
|
If the interaction is larger, the sequential loop closing method is appropriate.
|
||||||
|
The controller is still a diagonal transfer function matrix, but each control designs are now dependent.
|
||||||
|
In principle, one starts with the open-loop FRF of the MIMO Plant.
|
||||||
|
Then one loop is closed using SISO loopshaping.
|
||||||
|
The controller is taken into the plant description, and a new FRF is obtained with one input and output less.
|
||||||
|
Then, the next loop is designed and so on.
|
||||||
|
|
||||||
|
The multivariable system is nominally closed-loop stable if in each design step the system is closed-loop stable.
|
||||||
|
However, the robustness margins in each design step do not guarantee robust stability of the final multivariable system.
|
||||||
|
|
||||||
|
Drawbacks of sequential design are:
|
||||||
|
|
||||||
|
- the ordering of the design steps may have great impact on the achievable performance.
|
||||||
|
There is no general approach to determine the best sequence.
|
||||||
|
- there are no guarantees that robustness margins in earlier loops are preserved.
|
||||||
|
- as each design step usually considers only a single output, the responses in earlier designed loops may degrade.
|
||||||
|
|
||||||
|
|
||||||
|
#### Norm-based MIMO design {#norm-based-mimo-design}
|
||||||
|
|
||||||
|
If sequential SISO design is not successful, the next step is to start norm-based control design.
|
||||||
|
This method requires a parametric model and weighting filters to express the control problem in terms of an operator norm like \\(H\_2\\) or \\(H\_\infty\\).
|
||||||
|
|
||||||
|
Parametric models are usually build up step-by-step, first considering the unmodeled dynamics as (unstructured) uncertainty.
|
||||||
|
|
||||||
|
|
||||||
|
## Bibliography {#bibliography}
|
||||||
|
|
||||||
|
<a id="orgb7728f4"></a>Levine, W. S. 2011. _Control System Applications_. The Control Handbook. Boca Raton: CRC Press.
|
236
content/inbook/steinbuch11_advan_motion_contr_desig.md
Normal file
236
content/inbook/steinbuch11_advan_motion_contr_desig.md
Normal file
@ -0,0 +1,236 @@
|
|||||||
|
+++
|
||||||
|
title = "Advanced Motion Control Design"
|
||||||
|
author = ["Thomas Dehaeze"]
|
||||||
|
draft = false
|
||||||
|
+++
|
||||||
|
|
||||||
|
Tags
|
||||||
|
:
|
||||||
|
|
||||||
|
|
||||||
|
Reference
|
||||||
|
: ([Steinbuch et al. 2011](#org16dd9d1))
|
||||||
|
|
||||||
|
Author(s)
|
||||||
|
: Steinbuch, M., Merry, R., Boerlage, M., Ronde, M., & Molengraft, M.
|
||||||
|
|
||||||
|
Year
|
||||||
|
: 2011
|
||||||
|
|
||||||
|
|
||||||
|
## Introduction {#introduction}
|
||||||
|
|
||||||
|
The industrial state of the art control of motion systems can be summarized as follows.
|
||||||
|
Most systems, by design, are either decoupled, or can be decoupled using static input-output transformations.
|
||||||
|
Hence, most motion systems and their motion software architecture use SISO control design methods and solutions.
|
||||||
|
|
||||||
|
Feedback design is mostly done in the frequency domain, using [Loop-Shaping](loop_shaping.md) techniques.
|
||||||
|
A typical motion controller has a PID structure, with a low pass at high frequencies and one or two notch filters to compensate flexible dynamics.
|
||||||
|
In addition to the feedback controller, a feedforward controller is applied with acceleration, velocity from the reference signal.
|
||||||
|
|
||||||
|
The setpoint itself is a result of a setpoint generator with jerk limitation profiles (see [Trajectory Generation](trajectory_generation.md)).
|
||||||
|
If the requirements increase, the dynamic coupling between the various DOFs can no longer be neglected and more advanced MIMO control is required.
|
||||||
|
|
||||||
|
<div class="definition">
|
||||||
|
<div></div>
|
||||||
|
|
||||||
|
Centralized control
|
||||||
|
: the transfer function matrix of the controller is allowed to have any structure
|
||||||
|
|
||||||
|
Decentralized control
|
||||||
|
: diagonal controller transfer function, but constant decoupling manipulations of inputs and outputs are allowed
|
||||||
|
|
||||||
|
Independent decentralized control
|
||||||
|
: a single loop is designed without taking into account the effect of earlier or later designed loops
|
||||||
|
|
||||||
|
Sequential decentralized control
|
||||||
|
: a single loop is designed with taking into account the effect of all earlier closed loops
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
## Motion Systems {#motion-systems}
|
||||||
|
|
||||||
|
Here, we focus on the control of linear time invariant electromechanical motion systems that have the same number of actuators and sensors as Rigid Body modes.
|
||||||
|
The dynamics of such systems are often dominated by the mechanics, such that:
|
||||||
|
|
||||||
|
\begin{equation}
|
||||||
|
G\_p(s) = \sum\_{i=1}^{N\_{rb}} \frac{c\_i b\_i^T}{s^2} + \sum\_{i=N\_{rb} + 1}^{N} \frac{c\_ib\_i^T}{s^2 + 2 \xi\_i \omega\_i s + \omega\_i^2}
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
with \\(N\_{rb}\\) is the number of rigid body modes.
|
||||||
|
The vectors \\(c\_i,b\_i\\) span the directions of the ith mode shapes.
|
||||||
|
|
||||||
|
If the resonance frequencies \\(\omega\_i\\) are high enough, the plant can be approximately decoupled using static input/output transformations \\(T\_u,T\_y\\) so that:
|
||||||
|
|
||||||
|
\begin{equation}
|
||||||
|
G\_{yu} = T\_y G\_p(s) T\_u = \frac{1}{s^2} \begin{bmatrix}
|
||||||
|
m & 0 & & \dots & & 0 \\\\\\
|
||||||
|
0 & m & & & & \\\\\\
|
||||||
|
& & m & \ddots & & \vdots \\\\\\
|
||||||
|
\vdots & & \ddots & I\_x & & \\\\\\
|
||||||
|
& & & & I\_y & 0 \\\\\\
|
||||||
|
0 & & \dots & & 0 & I\_z
|
||||||
|
\end{bmatrix} + G\_{\text{flex}}(s)
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
|
||||||
|
## Feedback Control Design {#feedback-control-design}
|
||||||
|
|
||||||
|
|
||||||
|
### [Loop-Shaping](loop_shaping.md) - The SISO case {#loop-shaping--loop-shaping-dot-md--the-siso-case}
|
||||||
|
|
||||||
|
The key idea of loopshaping is the modification of the controller such that the open-loop is made according to specifications.
|
||||||
|
The reason this works well is that the controller enters linearly into the open-loop transfer function \\(L(s) = G(s)K(s)\\).
|
||||||
|
However, in practice all specifications are of course given in terms of the final system performance, that is, as _closed-loop_ specifications.
|
||||||
|
So we should convert the closed-loop specifications into specifications on the open-loop.
|
||||||
|
|
||||||
|
Take as an example the simple case of a disturbance being a sinusoid of known amplitude and frequency.
|
||||||
|
If we know the specifications on the error amplitude, we can derive the requirement on the process sensitivity at that frequency.
|
||||||
|
Since at low frequency the sensitivity can be approximated as the inverse of the open-loop, we can translate this into a specification of the open-loop at that frequency.
|
||||||
|
Because we know that the slope of the open-loop of a well tuned motion system will be between -2 and -1, we can estimate the required crossover frequency.
|
||||||
|
|
||||||
|
|
||||||
|
### Loop-Shaping - The MIMO case {#loop-shaping-the-mimo-case}
|
||||||
|
|
||||||
|
In MIMO systems, it is much less trivial to apply loopshaping.
|
||||||
|
The stability is determined by the closed-loop polynomial, \\(\det(I + L(s))\\), and the characteristic loci (eigenvalues of the FRF \\(L(j\omega)\\) in the complex plane) can be used for this graphically.
|
||||||
|
A system with N inputs and N outputs has N characteristic loci.
|
||||||
|
|
||||||
|
If each eigen value locus does not encircle the point (-1,0), the MIMO system is closed-loop stable.
|
||||||
|
The shaping of these eigenvalue loci is not straightforward if the plant has large off-diagonal elements.
|
||||||
|
In that case, a single element of the controller will affect more eigenvalue loci.
|
||||||
|
|
||||||
|
The strong non-intuitive aspect of MIMO loopshaping and the fact that SISO loopshaping is used often, are major obstacles in application of modern design tools in industrial motion systems.
|
||||||
|
|
||||||
|
<div class="important">
|
||||||
|
<div></div>
|
||||||
|
|
||||||
|
For that reason, the step-by-step approach is proposed:
|
||||||
|
|
||||||
|
1. Interaction Analysis
|
||||||
|
2. Decoupling Transformations
|
||||||
|
3. Independent SISO design
|
||||||
|
4. Sequential SISO design
|
||||||
|
5. Norm-based MIMO design
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
#### Interaction Analysis {#interaction-analysis}
|
||||||
|
|
||||||
|
The goal of the interaction analysis is to identify two-sided interactions in the plant dynamics.
|
||||||
|
Two measured for plant interactions can be used:
|
||||||
|
|
||||||
|
- Relative Gain Array (RGA) per frequency
|
||||||
|
|
||||||
|
<div class="definition">
|
||||||
|
<div></div>
|
||||||
|
|
||||||
|
The frequency dependent relative gain array is calculated as:
|
||||||
|
|
||||||
|
\begin{equation}
|
||||||
|
\text{RGA}(G(j\omega)) = G(j\omega) \times (G(j\omega)^{-1})^{T}
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
where \\(\times\\) denotes element wise multiplication.
|
||||||
|
|
||||||
|
</div>
|
||||||
|
- Structure Singular Value (SSV) of interaction as multiplicative output uncertainty
|
||||||
|
|
||||||
|
<div class="definition">
|
||||||
|
<div></div>
|
||||||
|
|
||||||
|
The structured singular value interaction measure is the following condition:
|
||||||
|
|
||||||
|
\begin{equation}
|
||||||
|
\mu\_D(E\_T(j\omega)) < \frac{1}{2}, \forall \omega
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
with \\(E\_T(j\omega) = G\_{nd}(j\omega) G\_d^{-1}(j\omega)\\), \\(\mu\_D\\) is the structured singular value, with respect to the diagonal structure of the feedback controller.
|
||||||
|
\\(G\_d(s)\\) are the diagonal terms of the transfer function matrix, and \\(G\_{nd}(s) = G(s) - G\_d(s)\\).
|
||||||
|
|
||||||
|
If a diagonal transfer function matrix is used, controllers gains must be small at frequencies where this condition is not met.
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
#### Decoupling Transformations {#decoupling-transformations}
|
||||||
|
|
||||||
|
A common method to reduce plant interaction is to redefine the input and output of the plant.
|
||||||
|
One can combine several inputs or outputs to control the system in more decoupled coordinates.
|
||||||
|
For motion systems most of these transformations are found on the basis of _kinematic models_.
|
||||||
|
Herein, combinations of the actuators are defined so that actuator variables act in independent (orthogonal) directions at the center of gravity.
|
||||||
|
Likewise, combinations of the sensors are defined so that each translation and rotation of the center of gravity can be measured independently.
|
||||||
|
This is basically the inversion of a kinematic model of the plant.
|
||||||
|
|
||||||
|
As motion systems are often designed to be light and stiff, kinematic decoupling is often sufficient to achieve acceptable decoupling at the crossover frequency.
|
||||||
|
|
||||||
|
|
||||||
|
#### Independent SISO design {#independent-siso-design}
|
||||||
|
|
||||||
|
For systems where interaction is low, or the decoupling is almost successful, one can design a _diagonal_ controller by closing each control loop independently.
|
||||||
|
The residual interaction can be accounted for in the analysis.
|
||||||
|
|
||||||
|
For this, we make use of the following decomposition:
|
||||||
|
|
||||||
|
\begin{equation}
|
||||||
|
\det(I + GK) = \det(I + E\_T T\_d) \det(I + G\_d K)
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
with \\(T\_d = G\_d K (I + G\_d K)^{-1}\\).
|
||||||
|
\\(G\_d(s)\\) is defined to be only the diagonal terms of the plant transfer function matrix.
|
||||||
|
The effect of the non-diagonal terms of the plant \\(G\_{nd}(s) = G(s) - G\_d(s)\\) is accounted for in \\(E\_T(s)\\).
|
||||||
|
|
||||||
|
<div class="important">
|
||||||
|
<div></div>
|
||||||
|
|
||||||
|
Then the MIMO closed-loop stability assessment can be slit up in two assessments:
|
||||||
|
|
||||||
|
- the first for stability of N non-interacting loops, namely \\(\det(I + G\_d(s)K(s))\\)
|
||||||
|
- the second for stability of \\(\det(I + E\_T(s)T\_d(s))\\)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
If \\(G(s)\\) and \\(T\_d(s)\\) are stable, one can use the _small gain theorem_ to find a sufficient condition of stability of \\(\det(I + E\_TT\_d)\\) as
|
||||||
|
|
||||||
|
\begin{equation}
|
||||||
|
\rho(E\_T(j\omega) T\_d(j\omega)) < 1, \forall \omega
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
where \\(\rho\\) is the spectral radius.
|
||||||
|
|
||||||
|
Due to the fact that a sufficient condition is used, independent loop closing usually leads to conservative designs.
|
||||||
|
|
||||||
|
|
||||||
|
#### Sequential SISO design {#sequential-siso-design}
|
||||||
|
|
||||||
|
If the interaction is larger, the sequential loop closing method is appropriate.
|
||||||
|
The controller is still a diagonal transfer function matrix, but each control designs are now dependent.
|
||||||
|
In principle, one starts with the open-loop FRF of the MIMO Plant.
|
||||||
|
Then one loop is closed using SISO loopshaping.
|
||||||
|
The controller is taken into the plant description, and a new FRF is obtained with one input and output less.
|
||||||
|
Then, the next loop is designed and so on.
|
||||||
|
|
||||||
|
The multivariable system is nominally closed-loop stable if in each design step the system is closed-loop stable.
|
||||||
|
However, the robustness margins in each design step do not guarantee robust stability of the final multivariable system.
|
||||||
|
|
||||||
|
Drawbacks of sequential design are:
|
||||||
|
|
||||||
|
- the ordering of the design steps may have great impact on the achievable performance.
|
||||||
|
There is no general approach to determine the best sequence.
|
||||||
|
- there are no guarantees that robustness margins in earlier loops are preserved.
|
||||||
|
- as each design step usually considers only a single output, the responses in earlier designed loops may degrade.
|
||||||
|
|
||||||
|
|
||||||
|
#### Norm-based MIMO design {#norm-based-mimo-design}
|
||||||
|
|
||||||
|
If sequential SISO design is not successful, the next step is to start norm-based control design.
|
||||||
|
This method requires a parametric model and weighting filters to express the control problem in terms of an operator norm like \\(H\_2\\) or \\(H\_\infty\\).
|
||||||
|
|
||||||
|
Parametric models are usually build up step-by-step, first considering the unmodeled dynamics as (unstructured) uncertainty.
|
||||||
|
|
||||||
|
|
||||||
|
## Bibliography {#bibliography}
|
||||||
|
|
||||||
|
<a id="org16dd9d1"></a>Steinbuch, Maarten, Roel Merry, Matthijs Boerlage, Michael Ronde, and Marinus Molengraft. 2011. “Advanced Motion Control Design.” In _Control System Applications_, 651–76. CRC Press.
|
Loading…
Reference in New Issue
Block a user