Update content - 2026-10-14
Deploy / deploy (push) Successful in 6s

This commit is contained in:
tdehaeze committed 2026-10-14 16:07:55 +02:00
1 parent 432702d1a4
commit ac11e1e4a4
15 files changed
+97 -97

No files matched your search

+8 -8
View File
@@ -111,22 +111,22 @@ In order to implement a fourth order trajectory, look at [this](https://www.math
See (<a href="#citeproc_bib_item_2">Schmidt, Schitter, and Rankers 2020</a>) (Section 4.2.1).
Suppose we have a second order plant (could typically be a piezoelectric stage):
\\[ G(s) = \frac{C\_f \omega\_0^2}{s^2 + 2\xi \omega\_0 s + \omega\_0^2} \\]
\\[ G(s) = \frac{C\_f \omega\_0^2}{s^2 + 2\zeta \omega\_0 s + \omega\_0^2} \\]
<a id="figure--fig:feedforward-second-order-plant"></a>
{{< figure src="/ox-hugo/feedforward_second_order_plant.png" caption="<span class='figure-number'>Figure 4: </span>Bode plot of a second order system with fitted model" >}}
The idea is to design a feedforward controller that corresponds to the plant inverse:
\\[ C\_{ff}(s) = \frac{s^2 + 2\xi \omega\_0 s + \omega\_0^2}{C\_f \omega\_0^2} \\]
\\[ C\_{ff}(s) = \frac{s^2 + 2\zeta \omega\_0 s + \omega\_0^2}{C\_f \omega\_0^2} \\]
This controller has a pair of zeros, corresponding to an anti-resonance at the eigenfrequency of the first eigenmode of the system, with equal damping.
The controller needs to be modified in such a way that it becomes realisable.
In this case it is decided to create a resulting overall transfer function of the controller and the plant that acts like a well damped mass-spring system with the same natural frequency as the plant and an additional reduction of the excitation of higher frequency eigenmodes.
In order to realise this controller first two poles have to be added, placed at the same frequency as the resonance but with a higher damping ratio.
Typically a damping ratio between aperiodic and critical (\\(0.7 < \xi < 1\\)) is applied to avoid oscillations.
For \\(\xi = 1\\) this results in the following transfer function:
\\[ C\_{ff}(s) = \frac{s^2 + 2\xi \omega\_0 s + \omega\_0^2}{s^2 + 2 \cdot 1 \cdot \omega\_0 s + \omega\_0^2}\\]
Typically a damping ratio between aperiodic and critical (\\(0.7 < \zeta < 1\\)) is applied to avoid oscillations.
For \\(\zeta = 1\\) this results in the following transfer function:
\\[ C\_{ff}(s) = \frac{s^2 + 2\zeta \omega\_0 s + \omega\_0^2}{s^2 + 2 \cdot 1 \cdot \omega\_0 s + \omega\_0^2}\\]
<a id="figure--fig:feedforward-compensated-system"></a>
@@ -211,10 +211,10 @@ Therefore, it is very important to match the delay of the plant:
{{< figure src="/ox-hugo/feedforward_4th_order.png" >}}
Dynamics from \\(F\\) to \\(x\_2\\) is:
\\[ G(s) = \frac{x\_2}{F} = \frac{cs + k}{m\_1m\_2 s^2(s^2 + 2\xi\omega\_0 s + \omega\_0^2)} \\]
\\[ G(s) = \frac{x\_2}{F} = \frac{cs + k}{m\_1m\_2 s^2(s^2 + 2\zeta\omega\_0 s + \omega\_0^2)} \\]
We take the inverse for the feedforward controller:
\\[ K\_{ff}(s) = G^{-1}(s) = \frac{m\_1m\_2 s^2(s^2 + 2\xi\omega\_0 s + \omega\_0^2)}{cs + k} \\]
If we neglect damped: \\(\xi = 0\\), and we get:
\\[ K\_{ff}(s) = G^{-1}(s) = \frac{m\_1m\_2 s^2(s^2 + 2\zeta\omega\_0 s + \omega\_0^2)}{cs + k} \\]
If we neglect damped: \\(\zeta = 0\\), and we get:
\\[ K\_{ff}(s) = \underbrace{\frac{m\_1m\_2}{k} s^4}\_{\text{snap FF}} + \underbrace{(m\_1 + m\_2) s^2}\_{\text{acc FF}} \\]
This can be solved by using **snap feedforward**