From 85ae685ee2c80cee23c47ccac9d166f2b9c55ccd Mon Sep 17 00:00:00 2001 From: Thomas Dehaeze Date: Fri, 27 Aug 2021 16:00:01 +0200 Subject: [PATCH] Update Content - 2021-08-27 --- content/article/aaaaaaaaaaaaaaaaaaaaaaa.md | 5 - .../garrido11_exten_approac_inver_decoup.md | 5 - ...do12_centr_multiv_contr_by_simpl_decoup.md | 8 +- content/article/sdlkfj.md | 5 - content/article/tlkj.md | 5 - .../arakelian18_dynam_decoup_robot_manip.md | 5 - ...leming14_desig_model_contr_nanop_system.md | 12 +- content/book/indri20_mechat_robot.md | 26 -- content/book/levine11_contr_system_applic.md | 111 -------- content/book/pintelon12_system_ident.md | 23 -- content/book/schoukens12_master.md | 6 +- .../albertos04_decen_decoup_contr.md} | 36 ++- .../inbook/levine11_contr_system_applic.md | 236 ++++++++++++++++++ .../steinbuch11_advan_motion_contr_desig.md | 236 ++++++++++++++++++ 14 files changed, 501 insertions(+), 218 deletions(-) delete mode 100644 content/article/aaaaaaaaaaaaaaaaaaaaaaa.md delete mode 100644 content/article/garrido11_exten_approac_inver_decoup.md delete mode 100644 content/article/sdlkfj.md delete mode 100644 content/article/tlkj.md delete mode 100644 content/book/arakelian18_dynam_decoup_robot_manip.md delete mode 100644 content/book/indri20_mechat_robot.md delete mode 100644 content/book/levine11_contr_system_applic.md delete mode 100644 content/book/pintelon12_system_ident.md rename content/{book/albertos04_multiv_contr_system.md => inbook/albertos04_decen_decoup_contr.md} (89%) create mode 100644 content/inbook/levine11_contr_system_applic.md create mode 100644 content/inbook/steinbuch11_advan_motion_contr_desig.md diff --git a/content/article/aaaaaaaaaaaaaaaaaaaaaaa.md b/content/article/aaaaaaaaaaaaaaaaaaaaaaa.md deleted file mode 100644 index 5792e51..0000000 --- a/content/article/aaaaaaaaaaaaaaaaaaaaaaa.md +++ /dev/null @@ -1,5 +0,0 @@ -+++ -title = "An extended approach of inverted decoupling" -author = ["Thomas Dehaeze"] -draft = false -+++ diff --git a/content/article/garrido11_exten_approac_inver_decoup.md b/content/article/garrido11_exten_approac_inver_decoup.md deleted file mode 100644 index 5792e51..0000000 --- a/content/article/garrido11_exten_approac_inver_decoup.md +++ /dev/null @@ -1,5 +0,0 @@ -+++ -title = "An extended approach of inverted decoupling" -author = ["Thomas Dehaeze"] -draft = false -+++ diff --git a/content/article/garrido12_centr_multiv_contr_by_simpl_decoup.md b/content/article/garrido12_centr_multiv_contr_by_simpl_decoup.md index 849b9d8..3f182fd 100644 --- a/content/article/garrido12_centr_multiv_contr_by_simpl_decoup.md +++ b/content/article/garrido12_centr_multiv_contr_by_simpl_decoup.md @@ -8,7 +8,7 @@ Tags : [Decoupled Control](decoupled_control.md) Reference -: ([Garrido, Vázquez, and Morilla 2012](#orgdf49544)) +: ([Garrido, Vázquez, and Morilla 2012](#org32a9ef5)) Author(s) : Garrido, J., Francisco V\\'azquez, & Morilla, F. @@ -19,7 +19,7 @@ Year ## 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 - \\(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. However, inverted decoupling cannot be applied to processes with multivariable [Right Half Plane Zeros](right_half_plane_zeros.md). - + {{< 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} -Garrido, Juan, Francisco Vázquez, and Fernando Morilla. 2012. “Centralized Multivariable Control by Simplified Decoupling.” _Journal of Process Control_ 22 (6):1044–62. . +Garrido, Juan, Francisco Vázquez, and Fernando Morilla. 2012. “Centralized Multivariable Control by Simplified Decoupling.” _Journal of Process Control_ 22 (6):1044–62. . diff --git a/content/article/sdlkfj.md b/content/article/sdlkfj.md deleted file mode 100644 index 5792e51..0000000 --- a/content/article/sdlkfj.md +++ /dev/null @@ -1,5 +0,0 @@ -+++ -title = "An extended approach of inverted decoupling" -author = ["Thomas Dehaeze"] -draft = false -+++ diff --git a/content/article/tlkj.md b/content/article/tlkj.md deleted file mode 100644 index 5792e51..0000000 --- a/content/article/tlkj.md +++ /dev/null @@ -1,5 +0,0 @@ -+++ -title = "An extended approach of inverted decoupling" -author = ["Thomas Dehaeze"] -draft = false -+++ diff --git a/content/book/arakelian18_dynam_decoup_robot_manip.md b/content/book/arakelian18_dynam_decoup_robot_manip.md deleted file mode 100644 index 4952144..0000000 --- a/content/book/arakelian18_dynam_decoup_robot_manip.md +++ /dev/null @@ -1,5 +0,0 @@ -+++ -title = "Dynamic decoupling of robot manipulators" -author = ["Thomas Dehaeze"] -draft = false -+++ diff --git a/content/book/fleming14_desig_model_contr_nanop_system.md b/content/book/fleming14_desig_model_contr_nanop_system.md index 4290ad9..8cebfb6 100644 --- a/content/book/fleming14_desig_model_contr_nanop_system.md +++ b/content/book/fleming14_desig_model_contr_nanop_system.md @@ -3,14 +3,14 @@ title = "Design, modeling and control of nanopositioning systems" author = ["Thomas Dehaeze"] description = "Talks about various topics related to nano-positioning systems." keywords = ["Control", "Metrology", "Flexible Joints"] -draft = false +draft = true +++ Tags -: [Piezoelectric Actuators]({{< relref "piezoelectric_actuators" >}}), [Flexible Joints]({{< relref "flexible_joints" >}}) +: [Piezoelectric Actuators](piezoelectric_actuators.md), [Flexible Joints](flexible_joints.md) Reference -: ([Fleming and Leang 2014](#org9f0983e)) +: ([Fleming and Leang 2014](#orgc8028e0)) Author(s) : Fleming, A. J., & Leang, K. K. @@ -783,11 +783,11 @@ Year ### Amplifier and Piezo electrical models {#amplifier-and-piezo-electrical-models} - + {{< 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 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} -Fleming, Andrew J., and Kam K. Leang. 2014. _Design, Modeling and Control of Nanopositioning Systems_. Advances in Industrial Control. Springer International Publishing. . +Fleming, Andrew J., and Kam K. Leang. 2014. _Design, Modeling and Control of Nanopositioning Systems_. Advances in Industrial Control. Springer International Publishing. . diff --git a/content/book/indri20_mechat_robot.md b/content/book/indri20_mechat_robot.md deleted file mode 100644 index d35c50d..0000000 --- a/content/book/indri20_mechat_robot.md +++ /dev/null @@ -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} - -Indri, Marina, and Roberto Oboe. 2020. _Mechatronics and Robotics: New Trends and Challenges_. CRC Press. diff --git a/content/book/levine11_contr_system_applic.md b/content/book/levine11_contr_system_applic.md deleted file mode 100644 index 4b18eff..0000000 --- a/content/book/levine11_contr_system_applic.md +++ /dev/null @@ -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. - -
-
- -Step by step procedure: - -1. Interaction Analysis -2. Decoupling -3. Independent SISO design -4. Sequential SISO design -5. Norm-based MIMO design - -
- -
-
- -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 - -
- - -## 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} - -Levine, W. S. 2011. _Control System Applications_. The Control Handbook. Boca Raton: CRC Press. diff --git a/content/book/pintelon12_system_ident.md b/content/book/pintelon12_system_ident.md deleted file mode 100644 index 5e2f00b..0000000 --- a/content/book/pintelon12_system_ident.md +++ /dev/null @@ -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} - -Pintelon, Rik, and Johan Schoukens. 2012. _System Identification : a Frequency Domain Approach_. Hoboken, N.J. Piscataway, NJ: Wiley IEEE Press. . diff --git a/content/book/schoukens12_master.md b/content/book/schoukens12_master.md index bbd7b93..a354540 100644 --- a/content/book/schoukens12_master.md +++ b/content/book/schoukens12_master.md @@ -1,7 +1,7 @@ +++ title = "Mastering system identification in 100 exercises" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags @@ -9,7 +9,7 @@ Tags Reference -: ([Schoukens, Pintelon, and Rolain 2012](#org4021f9f)) +: ([Schoukens, Pintelon, and Rolain 2012](#org1193e9b)) Author(s) : Schoukens, J., Pintelon, R., & Rolain, Y. @@ -20,4 +20,4 @@ Year ## Bibliography {#bibliography} -Schoukens, Johan, Rik Pintelon, and Yves Rolain. 2012. _Mastering System Identification in 100 Exercises_. John Wiley & Sons. +Schoukens, Johan, Rik Pintelon, and Yves Rolain. 2012. _Mastering System Identification in 100 Exercises_. John Wiley & Sons. diff --git a/content/book/albertos04_multiv_contr_system.md b/content/inbook/albertos04_decen_decoup_contr.md similarity index 89% rename from content/book/albertos04_multiv_contr_system.md rename to content/inbook/albertos04_decen_decoup_contr.md index bed6d52..4cf96bd 100644 --- a/content/book/albertos04_multiv_contr_system.md +++ b/content/inbook/albertos04_decen_decoup_contr.md @@ -1,14 +1,14 @@ +++ -title = "Multivariable control systems: an engineering approach" +title = "Decentralized and decoupled control" author = ["Thomas Dehaeze"] -draft = true +draft = false +++ Tags -: [Multivariable Control](multivariable_control.md) +: [Decentralized Control](decentralized_control.md), [Multivariable Control](multivariable_control.md) Reference -: ([Albertos and Antonio 2004](#orga6ef935)) +: ([Albertos and Antonio 2004](#org86b8145)) Author(s) : Albertos, P., & Antonio, S. @@ -17,10 +17,7 @@ Year : 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: @@ -42,7 +39,7 @@ Two approaches can be used to control a coupled system with SISO techniques: - **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. 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. -#### [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: @@ -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. -### 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. This strategy is called **decoupling**. @@ -77,12 +74,12 @@ This strategy is called **decoupling**. - 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. - + {{< 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 -#### SVD Decoupling {#svd-decoupling} +### SVD Decoupling {#svd-decoupling} 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. 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. - + {{< 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. -### 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. @@ -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}. - ## Bibliography {#bibliography} -Albertos, P., and S. Antonio. 2004. _Multivariable Control Systems: An Engineering Approach_. Advanced Textbooks in Control and Signal Processing. Springer-Verlag. . +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. . diff --git a/content/inbook/levine11_contr_system_applic.md b/content/inbook/levine11_contr_system_applic.md new file mode 100644 index 0000000..8358e78 --- /dev/null +++ b/content/inbook/levine11_contr_system_applic.md @@ -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. + +
+
+ +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 + +
+ + +## 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. + +
+
+ +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 + +
+ + +#### 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 + +
+
+ + 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. + +
+- Structure Singular Value (SSV) of interaction as multiplicative output uncertainty + +
+
+ + 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. + +
+ + +#### 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)\\). + +
+
+ +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))\\) + +
+ +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} + +Levine, W. S. 2011. _Control System Applications_. The Control Handbook. Boca Raton: CRC Press. diff --git a/content/inbook/steinbuch11_advan_motion_contr_desig.md b/content/inbook/steinbuch11_advan_motion_contr_desig.md new file mode 100644 index 0000000..1be99e7 --- /dev/null +++ b/content/inbook/steinbuch11_advan_motion_contr_desig.md @@ -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. + +
+
+ +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 + +
+ + +## 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. + +
+
+ +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 + +
+ + +#### 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 + +
+
+ + 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. + +
+- Structure Singular Value (SSV) of interaction as multiplicative output uncertainty + +
+
+ + 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. + +
+ + +#### 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)\\). + +
+
+ +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))\\) + +
+ +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} + +Steinbuch, Maarten, Roel Merry, Matthijs Boerlage, Michael Ronde, and Marinus Molengraft. 2011. “Advanced Motion Control Design.” In _Control System Applications_, 651–76. CRC Press.