From a2a8b3103d08acb0c9d3239cc88dd7c2bc6a6516 Mon Sep 17 00:00:00 2001 From: Thomas Dehaeze Date: Tue, 16 Jun 2020 18:33:50 +0200 Subject: [PATCH] Add notes about sensors/actuators --- .../mcinroy99_dynam.md | 10 +- .../monkhorst04_dynam_error_budget.md | 24 +--- content/zettels/actuators.md | 64 ++-------- content/zettels/collocated_control.md | 41 ++++++ content/zettels/force_sensors.md | 19 +-- content/zettels/inertial_sensors.md | 35 +++-- content/zettels/piezoelectric_actuators.md | 120 ++++++++++++++++++ content/zettels/position_sensors.md | 74 +++++------ content/zettels/sensors.md | 16 +++ content/zettels/voice_coil_actuators.md | 33 +++++ ...preumont18_nearly_collocated_schematic.png | Bin 0 -> 43007 bytes 11 files changed, 293 insertions(+), 143 deletions(-) rename content/{inproceedings => article}/mcinroy99_dynam.md (97%) create mode 100644 content/zettels/collocated_control.md create mode 100644 content/zettels/piezoelectric_actuators.md create mode 100644 content/zettels/sensors.md create mode 100644 content/zettels/voice_coil_actuators.md create mode 100644 static/ox-hugo/preumont18_nearly_collocated_schematic.png diff --git a/content/inproceedings/mcinroy99_dynam.md b/content/article/mcinroy99_dynam.md similarity index 97% rename from content/inproceedings/mcinroy99_dynam.md rename to content/article/mcinroy99_dynam.md index d397ae5..8a52a9d 100644 --- a/content/inproceedings/mcinroy99_dynam.md +++ b/content/article/mcinroy99_dynam.md @@ -39,22 +39,22 @@ The actuators for FJHs can be divided into two categories: 1. soft (voice coil), which employs a spring flexure mount 2. hard (piezoceramic or magnetostrictive), which employs a compressive load spring. - + {{< figure src="/ox-hugo/mcinroy99_general_hexapod.png" caption="Figure 1: A general Stewart Platform" >}} -Since both actuator types employ force production in parallel with a spring, they can both be modeled as shown in Figure [2](#orga202dc3). +Since both actuator types employ force production in parallel with a spring, they can both be modeled as shown in Figure [2](#org4a04030). In order to provide low frequency passive vibration isolation, the hard actuators are sometimes placed in series with additional passive springs. - + {{< figure src="/ox-hugo/mcinroy99_strut_model.png" caption="Figure 2: The dynamics of the i'th strut. A parallel spring, damper and actuator drives the moving mass of the strut and a payload" >}}
Table 1: - Definition of quantities on Figure 2 + Definition of quantities on Figure 2
| **Symbol** | **Meaning** | @@ -75,7 +75,7 @@ It is here supposed that \\(f\_{p\_i}\\) is predominantly in the strut direction This is a good approximation unless the spherical joints and extremely stiff or massive, of high inertia struts are used. This allows to reduce considerably the complexity of the model. -From Figure [2](#orga202dc3) (b), forces along the strut direction are summed to yield (projected along the strut direction, hence the \\(\hat{u}\_i^T\\) term): +From Figure [2](#org4a04030) (b), forces along the strut direction are summed to yield (projected along the strut direction, hence the \\(\hat{u}\_i^T\\) term): \begin{equation} m\_i \hat{u}\_i^T \ddot{p}\_i = f\_{m\_i} - f\_{p\_i} - m\_i \hat{u}\_i^Tg - k\_i(l\_i - l\_{r\_i}) - b\_i \dot{l}\_i diff --git a/content/phdthesis/monkhorst04_dynam_error_budget.md b/content/phdthesis/monkhorst04_dynam_error_budget.md index 45b0909..c159307 100644 --- a/content/phdthesis/monkhorst04_dynam_error_budget.md +++ b/content/phdthesis/monkhorst04_dynam_error_budget.md @@ -8,17 +8,7 @@ Tags : [Dynamic Error Budgeting]({{< relref "dynamic_error_budgeting" >}}) Reference -: @phdthesis{monkhorst04_dynam_error_budget, - author = {Wouter Monkhorst}, - school = {Delft University}, - title = {Dynamic Error Budgeting, a design approach}, - year = 2004, - } +: (Wouter Monkhorst, 2004) Author(s) : Monkhorst, W. @@ -105,9 +95,9 @@ Find a controller \\(C\_{\mathcal{H}\_2}\\) which minimizes the \\(\mathcal{H}\_ In order to synthesize an \\(\mathcal{H}\_2\\) controller that will minimize the output error, the total system including disturbances needs to be modeled as a system with zero mean white noise inputs. -This is done by using weighting filter \\(V\_w\\), of which the output signal has a PSD \\(S\_w(f)\\) when the input is zero mean white noise (Figure [1](#org7f8d04e)). +This is done by using weighting filter \\(V\_w\\), of which the output signal has a PSD \\(S\_w(f)\\) when the input is zero mean white noise (Figure [1](#org76ddb2c)). - + {{< figure src="/ox-hugo/monkhorst04_weighting_filter.png" caption="Figure 1: The use of a weighting filter \\(V\_w(f)\,[SI]\\) to give the weighted signal \\(\bar{w}(t)\\) a certain PSD \\(S\_w(f)\\)." >}} @@ -118,23 +108,23 @@ The PSD \\(S\_w(f)\\) of the weighted signal is: Given \\(S\_w(f)\\), \\(V\_w(f)\\) can be obtained using a technique called _spectral factorization_. However, this can be avoided if the modelling of the disturbances is directly done in terms of weighting filters. -Output weighting filters can also be used to scale different outputs relative to each other (Figure [2](#org4f416df)). +Output weighting filters can also be used to scale different outputs relative to each other (Figure [2](#org425ff37)). - + {{< figure src="/ox-hugo/monkhorst04_general_weighted_plant.png" caption="Figure 2: The open loop system \\(\bar{G}\\) in series with the diagonal input weightin filter \\(V\_w\\) and diagonal output scaling iflter \\(W\_z\\) defining the generalized plant \\(G\\)" >}} #### Output scaling and the Pareto curve {#output-scaling-and-the-pareto-curve} -In this research, the outputs of the closed loop system (Figure [3](#orgc347ae6)) are: +In this research, the outputs of the closed loop system (Figure [3](#orgba842f3)) are: - the performance (error) signal \\(e\\) - the controller output \\(u\\) In this way, the designer can analyze how much control effort is used to achieve the performance level at the performance output. - + {{< figure src="/ox-hugo/monkhorst04_closed_loop_H2.png" caption="Figure 3: The closed loop system with weighting filters included. The system has \\(n\\) disturbance inputs and two outputs: the error \\(e\\) and the control signal \\(u\\). The \\(\mathcal{H}\_2\\) minimized the \\(\mathcal{H}\_2\\) norm of this system." >}} diff --git a/content/zettels/actuators.md b/content/zettels/actuators.md index 02f596e..06e2e9f 100644 --- a/content/zettels/actuators.md +++ b/content/zettels/actuators.md @@ -7,6 +7,11 @@ draft = false Tags : +Links to specific actuators: + +- [Voice Coil Actuators]({{< relref "voice_coil_actuators" >}}) +- [Piezoelectric Actuators]({{< relref "piezoelectric_actuators" >}}) + ## How to choose the correct actuator for my application? {#how-to-choose-the-correct-actuator-for-my-application} @@ -15,57 +20,9 @@ For vibration isolation: - In (Shingo Ito \& Georg Schitter, 2016), the effect of the actuator stiffness on the attainable vibration isolation is studied ([Notes]({{< relref "ito16_compar_class_high_precis_actuat" >}})) -## Piezoelectric {#piezoelectric} - -| Suppliers | Links | -|--------------|------------------------------------------------------------------------------------| -| Cedrat | [link](http://www.cedrat-technologies.com/) | -| PI | [link](https://www.physikinstrumente.com/en/) | -| Piezo System | [link](https://www.piezosystem.com/products/piezo%5Factuators/stacktypeactuators/) | -| Noliac | [link](http://www.noliac.com/) | -| Thorlabs | [link](https://www.thorlabs.com/newgrouppage9.cfm?objectgroup%5Fid=8700) | - -A model of a multi-layer monolithic piezoelectric stack actuator is described in (Fleming, 2010) ([Notes]({{< relref "fleming10_nanop_system_with_force_feedb" >}})). - - -### Piezoelectric Stack Actuators {#piezoelectric-stack-actuators} - -Typical strain is \\(0.1\%\\). - - -### Mechanically Amplified Piezoelectric actuators {#mechanically-amplified-piezoelectric-actuators} - -The Amplified Piezo Actuators principle is presented in (Frank Claeyssen {\it et al.}, 2007): - -> The displacement amplification effect is related in a first approximation to the ratio of the shell long axis length to the short axis height. -> The flatter is the actuator, the higher is the amplification. - -A model of an amplified piezoelectric actuator is described in (Lucinskis \& Mangeot, 2016). - - -## Voice Coil {#voice-coil} - -| Suppliers | Links | -|----------------------|----------------------------------------------| -| Geeplus | [link](https://www.geeplus.com/) | -| Maccon | [link](https://www.maccon.de/en.html) | -| TDS PP | [link](https://www.tds-pp.com/en/) | -| H2tech | [link](https://www.h2wtech.com/) | -| PBA Systems | [link](http://www.pbasystems.com.sg/) | -| Celera Motion | [link](https://www.celeramotion.com/) | -| Beikimco | [link](http://www.beikimco.com/) | -| Electromate | [link](https://www.electromate.com/) | -| Magnetic Innovations | [link](https://www.magneticinnovations.com/) | - - ## Shaker {#shaker} -| Suppliers | Links | +| Manufacturers | Links | |--------------------|---------------------------------------------------------------| | BKSV | [link](https://www.bksv.com/en/products/shakers-and-exciters) | | Vibration Research | [link](https://vibrationresearch.com/shakers/) | @@ -83,15 +40,12 @@ A model of an amplified piezoelectric actuator is described in Ito, S., & Schitter, G., *Comparison and classification of high-precision actuators based on stiffness influencing vibration isolation*, IEEE/ASME Transactions on Mechatronics, *21(2)*, 1169–1178 (2016). http://dx.doi.org/10.1109/tmech.2015.2478658 [↩](#aad53368e29e8a519e2f63857044fa46) -Fleming, A., *Nanopositioning system with force feedback for high-performance tracking and vibration control*, IEEE/ASME Transactions on Mechatronics, *15(3)*, 433–447 (2010). http://dx.doi.org/10.1109/tmech.2009.2028422 [↩](#c823f68dd2a72b9667a61b3c046b4731) - -Claeyssen, F., Letty, R. L., Barillot, F., & Sosnicki, O., *Amplified piezoelectric actuators: static \& dynamic applications*, Ferroelectrics, *351(1)*, 3–14 (2007). http://dx.doi.org/10.1080/00150190701351865 [↩](#5decd2b31c4a9842b80c58b56f96590a) - -Lucinskis, R., & Mangeot, C. (2016). *Dynamic characterization of an amplified piezoelectric actuator*. Retrieved from [](). . [↩](#849750850d9986ed326e74bd3c448d03) - Yedamale, P., *Brushless dc (bldc) motor fundamentals*, Microchip Technology Inc, *20()*, 3–15 (2003). [↩](#d2e68d39d09d7e8e71ff08a6ebd45400) ## Backlinks {#backlinks} - [Comparison and classification of high-precision actuators based on stiffness influencing vibration isolation]({{< relref "ito16_compar_class_high_precis_actuat" >}}) +- [Collocated Control]({{< relref "collocated_control" >}}) +- [Voice Coil Actuators]({{< relref "voice_coil_actuators" >}}) +- [Piezoelectric Actuators]({{< relref "piezoelectric_actuators" >}}) diff --git a/content/zettels/collocated_control.md b/content/zettels/collocated_control.md new file mode 100644 index 0000000..559de8c --- /dev/null +++ b/content/zettels/collocated_control.md @@ -0,0 +1,41 @@ ++++ +title = "Collocated Control" +author = ["Thomas Dehaeze"] +draft = false ++++ + +Tags +: [Actuators]({{< relref "actuators" >}}), [Force Sensors]({{< relref "force_sensors" >}}), [Position Sensors]({{< relref "position_sensors" >}}), [Inertial Sensors]({{< relref "inertial_sensors" >}}) + + +## Collocated/Dual actuator and sensor {#collocated-dual-actuator-and-sensor} + +According to (Andre Preumont, 2018): + +> A **collocated** control system is a control system where the actuator and the sensor are attached to the same degree of freedom. +> +> It is not sufficient to be attached to the same location, but they must also be **dual**, that is a force actuator must be associated with a translation sensor (measuring displacement, velocity, or acceleration), in such a way that the product of the actuator signal and the sensor signal represents the energy (power) exchange between the structure and the control system. + + +## Nearly Collocated Actuator Sensor Pair {#nearly-collocated-actuator-sensor-pair} + +From Figure [1](#org00adcca), it is clear that at some frequency / for some mode, the actuator and the sensor will not be collocated anymore (here starting with mode 3). + + + +{{< figure src="/ox-hugo/preumont18_nearly_collocated_schematic.png" caption="Figure 1: Mode shapes for a uniform beam. \\(u\\) and \\(y\\) are not collocated actuator and sensor" >}} + + +## Piezoelectric Stack as a sensor/actuator pair {#piezoelectric-stack-as-a-sensor-actuator-pair} + +One can use on part of a piezoelectric stack as an actuator and the other part as a sensor. + +At some frequency, the sensor/actuator pair will not be collocated anymore. + +If we want to be collocated up to the highest possible frequency, the sensor part should be made small. +Of course, this will reduce the sensibility. + +- [ ] What happens is small pieces of actuators are mixed with small pieces of sensors? + +# Bibliography +Preumont, A., *Vibration control of active structures - fourth edition* (2018), : Springer International Publishing. [↩](#454500a3af67ef66a7a754d1f2e1bd4a) diff --git a/content/zettels/force_sensors.md b/content/zettels/force_sensors.md index 33f055d..527e5d5 100644 --- a/content/zettels/force_sensors.md +++ b/content/zettels/force_sensors.md @@ -8,22 +8,23 @@ Tags : -## Suppliers {#suppliers} - -| | | -|-----|---------------------------------------------------------------| -| PCB | [link](https://www.pcb.com/products/productfinder.aspx?tx=17) | - - ## Dynamics and Noise of a piezoelectric force sensor {#dynamics-and-noise-of-a-piezoelectric-force-sensor} -An analysis the dynamics and noise of a piezoelectric force sensor is done in (Fleming, 2010) ([Notes]({{< relref "fleming10_nanop_system_with_force_feedb" >}})). +An analysis the dynamics and noise of a piezoelectric force sensor is done in (Fleming, 2010) ([Notes]({{< relref "fleming10_nanop_system_with_force_feedb" >}})). + + +## Manufacturers {#manufacturers} + +| Manufacturers | Links | +|---------------|---------------------------------------------------------------| +| PCB | [link](https://www.pcb.com/products/productfinder.aspx?tx=17) | # Bibliography -Fleming, A., *Nanopositioning system with force feedback for high-performance tracking and vibration control*, IEEE/ASME Transactions on Mechatronics, *15(3)*, 433–447 (2010). http://dx.doi.org/10.1109/tmech.2009.2028422 [↩](#c823f68dd2a72b9667a61b3c046b4731) +Fleming, A., *Nanopositioning system with force feedback for high-performance tracking and vibration control*, IEEE/ASME Transactions on Mechatronics, *15(3)*, 433–447 (2010). http://dx.doi.org/10.1109/tmech.2009.2028422 [↩](#c823f68dd2a72b9667a61b3c046b4731) ## Backlinks {#backlinks} - [Nanopositioning system with force feedback for high-performance tracking and vibration control]({{< relref "fleming10_nanop_system_with_force_feedb" >}}) +- [Collocated Control]({{< relref "collocated_control" >}}) - [Position Sensors]({{< relref "position_sensors" >}}) diff --git a/content/zettels/inertial_sensors.md b/content/zettels/inertial_sensors.md index 0445d76..d08f1c5 100644 --- a/content/zettels/inertial_sensors.md +++ b/content/zettels/inertial_sensors.md @@ -8,14 +8,20 @@ Tags : [Position Sensors]({{< relref "position_sensors" >}}) -## Reviews {#reviews} +## Review of Absolute (inertial) Position Sensors {#review-of-absolute--inertial--position-sensors} -- (Collette {\it et al.}, 2012) +- Collette, C. et al., Review: inertial sensors for low-frequency seismic vibration measurement (Collette {\it et al.}, 2012) +- Collette, C. et al., Comparison of new absolute displacement sensors (Collette {\it et al.}, 2012) + + + +{{< figure src="/ox-hugo/collette12_absolute_disp_sensors.png" caption="Figure 1: Dynamic range of several types of inertial sensors; Price versus resolution for several types of inertial sensors" >}} ## Accelerometers {#accelerometers} -| | | +| Manufacturers | Links | |--------------------|---------------------------------------------------------------| | Micromega Dynamics | [link](https://micromega-dynamics.com/products/) | | MMF | [link](https://www.mmf.de/seismic%5Faccelerometers.htm) | @@ -25,28 +31,31 @@ Wireless Accelerometers - - + -{{< figure src="/ox-hugo/inertial_sensors_characteristics_accelerometers.png" caption="Figure 1: Characteristics of commercially available accelerometers (Collette {\it et al.}, 2011)" >}} +{{< figure src="/ox-hugo/inertial_sensors_characteristics_accelerometers.png" caption="Figure 2: Characteristics of commercially available accelerometers (Collette {\it et al.}, 2011)" >}} ## Geophones {#geophones} -| | | -|----------|----------------------------------------------------------------| -| Sercel | [link](http://www.sercel.com/products/Pages/seismometers.aspx) | -| Wilcoxon | [link](https://wilcoxon.com/) | +| Manufacturers | Links | +|---------------|----------------------------------------------------------------| +| Sercel | [link](http://www.sercel.com/products/Pages/seismometers.aspx) | +| Wilcoxon | [link](https://wilcoxon.com/) | - + -{{< figure src="/ox-hugo/inertial_sensors_characteristics_geophone.png" caption="Figure 2: Characteristics of commercially available geophones (Collette {\it et al.}, 2011)" >}} +{{< figure src="/ox-hugo/inertial_sensors_characteristics_geophone.png" caption="Figure 3: Characteristics of commercially available geophones (Collette {\it et al.}, 2011)" >}} # Bibliography -Collette, C., Janssens, S., Fernandez-Carmona, P., Artoos, K., Guinchard, M., Hauviller, C., & Preumont, A., *Review: inertial sensors for low-frequency seismic vibration measurement*, Bulletin of the Seismological Society of America, *102(4)*, 1289–1300 (2012). http://dx.doi.org/10.1785/0120110223 [↩](#dd5109075933cf543c7eba0979c0ba50) +Collette, C., Janssens, S., Fernandez-Carmona, P., Artoos, K., Guinchard, M., Hauviller, C., & Preumont, A., *Review: inertial sensors for low-frequency seismic vibration measurement*, Bulletin of the Seismological Society of America, *102(4)*, 1289–1300 (2012). http://dx.doi.org/10.1785/0120110223 [↩](#dd5109075933cf543c7eba0979c0ba50) -Collette, C., Artoos, K., Guinchard, M., Janssens, S., Carmona Fernandez, P., & Hauviller, C., *Review of sensors for low frequency seismic vibration measurement* (2011). [↩](#642a18d86de4e062c6afb0f5f20501c4) +Collette, C., Janssens, S., Mokrani, B., Fueyo-Roza, L., Artoos, K., Esposito, M., Fernandez-Carmona, P., …, *Comparison of new absolute displacement sensors*, In , International Conference on Noise and Vibration Engineering (ISMA) (pp. ) (2012). : . [↩](#0b0b67de6dddc4d28031ab2d3b28cd3d) + +Collette, C., Artoos, K., Guinchard, M., Janssens, S., Carmona Fernandez, P., & Hauviller, C., *Review of sensors for low frequency seismic vibration measurement* (2011). [↩](#642a18d86de4e062c6afb0f5f20501c4) ## Backlinks {#backlinks} +- [Collocated Control]({{< relref "collocated_control" >}}) - [Position Sensors]({{< relref "position_sensors" >}}) diff --git a/content/zettels/piezoelectric_actuators.md b/content/zettels/piezoelectric_actuators.md new file mode 100644 index 0000000..5524416 --- /dev/null +++ b/content/zettels/piezoelectric_actuators.md @@ -0,0 +1,120 @@ ++++ +title = "Piezoelectric Actuators" +author = ["Thomas Dehaeze"] +draft = false ++++ + +Tags +: [Actuators]({{< relref "actuators" >}}) + + +## Piezoelectric Stack Actuators {#piezoelectric-stack-actuators} + + +### Manufacturers {#manufacturers} + +| Manufacturers | Links | +|---------------------|------------------------------------------------------------------------------------| +| Cedrat | [link](http://www.cedrat-technologies.com/) | +| PI | [link](https://www.physikinstrumente.com/en/) | +| Piezo System | [link](https://www.piezosystem.com/products/piezo%5Factuators/stacktypeactuators/) | +| Noliac | [link](http://www.noliac.com/) | +| Thorlabs | [link](https://www.thorlabs.com/newgrouppage9.cfm?objectgroup%5Fid=8700) | +| PiezoDrive | [link](https://www.piezodrive.com/actuators/) | +| Mechano Transformer | [link](http://www.mechano-transformer.com/en/products/10.html) | +| CoreMorrow | [link](http://www.coremorrow.com/en/pro-9-1.html) | + + +### Model {#model} + +A model of a multi-layer monolithic piezoelectric stack actuator is described in (Fleming, 2010) ([Notes]({{< relref "fleming10_nanop_system_with_force_feedb" >}})). + + +### Specifications {#specifications} + +Typical specifications of piezoelectric stack actuators are usually in terms of: + +- Displacement/ Travel range \\([\mu m]\\) +- Blocked force \\([N]\\) +- Stiffness \\([N/\mu m]\\) +- Resolution \\([nm]\\) +- Length \\([mm]\\) + + +#### Displacement and Length {#displacement-and-length} + +The maximum displacement specified is the displacement of the actuator when the maximum voltage is applied and when no load is added. + +Typical strain of Piezoelectric Stack Actuators is \\(0.1\%\\), the free displacement \\(d\\) is then related to the length of piezoelectric stack: +\\[ d \approx \frac{L}{1000} \\] + + +#### Blocked Force {#blocked-force} + +The blocked force is measured by first applying the maximum voltage to the piezoelectric stack without any load. +Thus, the piezoelectric stack experiences its maximum displacement. + +A force is then applied to return the actuator to its original length. +This force is measured and recorded as the blocking force. + +The blocking force is also the maximum force that can produce the piezoelectric stack in contact with an infinitely stiff environment. + + +#### Stiffness {#stiffness} + + +#### Resolution {#resolution} + +The resolution is limited by the noise in the voltage amplified. + +Typical [Signal to Noise Ratio]({{< relref "signal_to_noise_ratio" >}}) of voltage amplified is \\(100dB = 10^{5}\\). +Thus, for a piezoelectric stack with a displacement \\(L\\), the resolution will be + +\begin{equation} + r = \frac{L}{10^5} +\end{equation} + +For a piezoelectric stack with a displacement of \\(100\,[\mu m]\\), the resolution will be \\(\approx 1\,[nm]\\). + + +### Piezoelectric Stack experiencing a mass load {#piezoelectric-stack-experiencing-a-mass-load} + + +### Piezoelectric Stack in contact with a spring load {#piezoelectric-stack-in-contact-with-a-spring-load} + + +## Mechanically Amplified Piezoelectric actuators {#mechanically-amplified-piezoelectric-actuators} + +The Amplified Piezo Actuators principle is presented in (Frank Claeyssen {\it et al.}, 2007): + +> The displacement amplification effect is related in a first approximation to the ratio of the shell long axis length to the short axis height. +> The flatter is the actuator, the higher is the amplification. + +A model of an amplified piezoelectric actuator is described in (Lucinskis \& Mangeot, 2016). + +| Manufacturers | Links | +|---------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| Cedrat | [link](https://www.cedrat-technologies.com/en/products/actuators/amplified-piezo-actuators.html) | +| PiezoDrive | [link](https://www.piezodrive.com/actuators/ap-series-amplified-piezoelectric-actuators/) | +| Dynamic-Structures | [link](https://www.dynamic-structures.com/category/piezo-actuators-stages) | +| Thorlabs | [link](https://www.thorlabs.com/newgrouppage9.cfm?objectgroup%5Fid=8700) | +| Noliac | [link](http://www.noliac.com/products/actuators/amplified-actuators/) | +| Mechano Transformer | [link](http://www.mechano-transformer.com/en/products/01a%5Factuator%5F5.html), [link](http://www.mechano-transformer.com/en/products/01a%5Factuator%5F3.html), [link](http://www.mechano-transformer.com/en/products/01a%5Factuator%5Fmtkk.html) | +| CoreMorrow | [link](http://www.coremorrow.com/en/pro-13-1.html) | + +# Bibliography +Fleming, A., *Nanopositioning system with force feedback for high-performance tracking and vibration control*, IEEE/ASME Transactions on Mechatronics, *15(3)*, 433–447 (2010). http://dx.doi.org/10.1109/tmech.2009.2028422 [↩](#c823f68dd2a72b9667a61b3c046b4731) + +Claeyssen, F., Letty, R. L., Barillot, F., & Sosnicki, O., *Amplified piezoelectric actuators: static \& dynamic applications*, Ferroelectrics, *351(1)*, 3–14 (2007). http://dx.doi.org/10.1080/00150190701351865 [↩](#5decd2b31c4a9842b80c58b56f96590a) + +Lucinskis, R., & Mangeot, C. (2016). *Dynamic characterization of an amplified piezoelectric actuator*. Retrieved from [](). . [↩](#849750850d9986ed326e74bd3c448d03) + + +## Backlinks {#backlinks} + +- [Actuators]({{< relref "actuators" >}}) diff --git a/content/zettels/position_sensors.md b/content/zettels/position_sensors.md index ae676b9..0d5caf9 100644 --- a/content/zettels/position_sensors.md +++ b/content/zettels/position_sensors.md @@ -8,20 +8,9 @@ Tags : [Inertial Sensors]({{< relref "inertial_sensors" >}}), [Force Sensors]({{< relref "force_sensors" >}}), [Sensor Fusion]({{< relref "sensor_fusion" >}}) -## Absolute Position Sensors {#absolute-position-sensors} +## Reviews of Relative Position Sensors {#reviews-of-relative-position-sensors} -- Collette, C. et al., Review: inertial sensors for low-frequency seismic vibration measurement (Collette {\it et al.}, 2012) -- Collette, C. et al., Comparison of new absolute displacement sensors (Collette {\it et al.}, 2012) - - - -{{< figure src="/ox-hugo/collette12_absolute_disp_sensors.png" caption="Figure 1: Dynamic range of several types of inertial sensors; Price versus resolution for several types of inertial sensors" >}} - - -## Relative Position Sensors {#relative-position-sensors} - -- Fleming, A. J., A review of nanometer resolution position sensors: operation and performance (Andrew Fleming, 2013) ([Notes]({{< relref "fleming13_review_nanom_resol_posit_sensor" >}})) +- Fleming, A. J., A review of nanometer resolution position sensors: operation and performance (Andrew Fleming, 2013) ([Notes]({{< relref "fleming13_review_nanom_resol_posit_sensor" >}}))
@@ -56,17 +45,17 @@ Tags | Encoder | Meters | | 6 nm | >100kHz | 5 ppm FSR | -### Strain Gauge {#strain-gauge} +## Strain Gauge {#strain-gauge} -### Capacitive Sensor {#capacitive-sensor} +## Capacitive Sensor {#capacitive-sensor} Description: - - -| | | +| Manufacturers | Links | |----------------|-------------------------------------------------------------------------------------------------| | Micro Sense | [link](http://www.microsense.net/products-position-sensors.htm) | | Micro-Epsilon | [link](https://www.micro-epsilon.com/displacement-position-sensors/capacitive-sensor/) | @@ -75,33 +64,33 @@ Description: | Lion-Precision | [link](https://www.lionprecision.com/products/capacitive-sensors) | -### Inductive Sensor (Eddy Current) {#inductive-sensor--eddy-current} +## Inductive Sensor (Eddy Current) {#inductive-sensor--eddy-current} -| | | +| Manufacturers | Links | |----------------|------------------------------------------------------------------------------------------| | Micro-Epsilon | [link](https://www.micro-epsilon.com/displacement-position-sensors/eddy-current-sensor/) | | Lion Precision | [link](https://www.lionprecision.com/products/eddy-current-sensors) | -### Inductive Sensor (LVDT) {#inductive-sensor--lvdt} +## Inductive Sensor (LVDT) {#inductive-sensor--lvdt} -| | | +| Manufacturers | Links | |---------------|--------------------------------------------------------------------------------------------| | Micro-Epsilon | [link](https://www.micro-epsilon.com/displacement-position-sensors/inductive-sensor-lvdt/) | | Keyence | [link](https://www.keyence.eu/products/measure/contact-distance-lvdt/gt2/index.jsp) | -### Interferometers {#interferometers} +## Interferometers {#interferometers} -| | | -|----------|----------------------------------------------------------------------------------------------------------| -| Attocube | [link](http://www.attocube.com/) | -| Zygo | [link](https://www.zygo.com/?/met/markets/stageposition/zmi/) | -| Smaract | [link](https://www.smaract.com/interferometry) | -| Qutools | [link](https://www.qutools.com/qudis/) | -| Renishaw | [link](https://www.renishaw.com/en/fibre-optic-laser-encoder-products--6594) | -| Sios | [link](https://sios-de.com/products/length-measurement/laser-interferometer/) | -| Keysight | [link](https://www.keysight.com/en/pc-1000000393%3Aepsg%3Apgr/laser-heads?nid=-536900395.0&cc=FR&lc=fre) | +| Manufacturers | Links | +|---------------|----------------------------------------------------------------------------------------------------------| +| Attocube | [link](http://www.attocube.com/) | +| Zygo | [link](https://www.zygo.com/?/met/markets/stageposition/zmi/) | +| Smaract | [link](https://www.smaract.com/interferometry) | +| Qutools | [link](https://www.qutools.com/qudis/) | +| Renishaw | [link](https://www.renishaw.com/en/fibre-optic-laser-encoder-products--6594) | +| Sios | [link](https://sios-de.com/products/length-measurement/laser-interferometer/) | +| Keysight | [link](https://www.keysight.com/en/pc-1000000393%3Aepsg%3Apgr/laser-heads?nid=-536900395.0&cc=FR&lc=fre) |
Table 3: @@ -114,34 +103,31 @@ Description: | Renishaw | 0.2 | 1 | 6 | 1 | | Picoscale | 0.2 | 2 | 2 | 1 | -(Yoon-Soo Jang \& Seung-Woo Kim, 2017) - + -{{< figure src="/ox-hugo/position_sensor_interferometer_precision.png" caption="Figure 2: Expected precision of interferometer as a function of measured distance" >}} +{{< figure src="/ox-hugo/position_sensor_interferometer_precision.png" caption="Figure 1: Expected precision of interferometer as a function of measured distance" >}} -### Fiber Optic Displacement Sensor {#fiber-optic-displacement-sensor} +## Fiber Optic Displacement Sensor {#fiber-optic-displacement-sensor} -| | | -|----------|----------------------------------------------------| -| Unipulse | [link](https://www.unipulse.com/product/atw200-2/) | +| Manufacturers | Links | +|---------------|----------------------------------------------------| +| Unipulse | [link](https://www.unipulse.com/product/atw200-2/) | # Bibliography -Collette, C., Janssens, S., Fernandez-Carmona, P., Artoos, K., Guinchard, M., Hauviller, C., & Preumont, A., *Review: inertial sensors for low-frequency seismic vibration measurement*, Bulletin of the Seismological Society of America, *102(4)*, 1289–1300 (2012). http://dx.doi.org/10.1785/0120110223 [↩](#dd5109075933cf543c7eba0979c0ba50) +Fleming, A. J., *A review of nanometer resolution position sensors: operation and performance*, Sensors and Actuators A: Physical, *190(nil)*, 106–126 (2013). http://dx.doi.org/10.1016/j.sna.2012.10.016 [↩](#3fb5b61524290e36d639a4fac65703d0) -Collette, C., Janssens, S., Mokrani, B., Fueyo-Roza, L., Artoos, K., Esposito, M., Fernandez-Carmona, P., …, *Comparison of new absolute displacement sensors*, In , International Conference on Noise and Vibration Engineering (ISMA) (pp. ) (2012). : . [↩](#0b0b67de6dddc4d28031ab2d3b28cd3d) +Collette, C., Artoos, K., Guinchard, M., Janssens, S., Carmona Fernandez, P., & Hauviller, C., *Review of sensors for low frequency seismic vibration measurement* (2011). [↩](#642a18d86de4e062c6afb0f5f20501c4) -Fleming, A. J., *A review of nanometer resolution position sensors: operation and performance*, Sensors and Actuators A: Physical, *190(nil)*, 106–126 (2013). http://dx.doi.org/10.1016/j.sna.2012.10.016 [↩](#3fb5b61524290e36d639a4fac65703d0) - -Collette, C., Artoos, K., Guinchard, M., Janssens, S., Carmona Fernandez, P., & Hauviller, C., *Review of sensors for low frequency seismic vibration measurement* (2011). [↩](#642a18d86de4e062c6afb0f5f20501c4) - -Jang, Y., & Kim, S., *Compensation of the refractive index of air in laser interferometer for distance measurement: a review*, International Journal of Precision Engineering and Manufacturing, *18(12)*, 1881–1890 (2017). http://dx.doi.org/10.1007/s12541-017-0217-y [↩](#7658b1219a4458a62ae8c6f51b767542) +Jang, Y., & Kim, S., *Compensation of the refractive index of air in laser interferometer for distance measurement: a review*, International Journal of Precision Engineering and Manufacturing, *18(12)*, 1881–1890 (2017). http://dx.doi.org/10.1007/s12541-017-0217-y [↩](#7658b1219a4458a62ae8c6f51b767542) ## Backlinks {#backlinks} - [A review of nanometer resolution position sensors: operation and performance]({{< relref "fleming13_review_nanom_resol_posit_sensor" >}}) - [Measurement technologies for precision positioning]({{< relref "gao15_measur_techn_precis_posit" >}}) +- [Collocated Control]({{< relref "collocated_control" >}}) - [Inertial Sensors]({{< relref "inertial_sensors" >}}) diff --git a/content/zettels/sensors.md b/content/zettels/sensors.md new file mode 100644 index 0000000..873d610 --- /dev/null +++ b/content/zettels/sensors.md @@ -0,0 +1,16 @@ ++++ +title = "Sensors" +author = ["Thomas Dehaeze"] +draft = false ++++ + +Tags +: + +Notes about sensors: + +- [Force Sensors]({{< relref "force_sensors" >}}) +- [Position Sensors]({{< relref "position_sensors" >}}) +- [Inertial Sensors]({{< relref "inertial_sensors" >}}) + +<./biblio/references.bib> diff --git a/content/zettels/voice_coil_actuators.md b/content/zettels/voice_coil_actuators.md new file mode 100644 index 0000000..087bacf --- /dev/null +++ b/content/zettels/voice_coil_actuators.md @@ -0,0 +1,33 @@ ++++ +title = "Voice Coil Actuators" +author = ["Thomas Dehaeze"] +draft = false ++++ + +Tags +: [Actuators]({{< relref "actuators" >}}) + + +## Manufacturers {#manufacturers} + +| Manufacturers | Links | +|----------------------|----------------------------------------------| +| Geeplus | [link](https://www.geeplus.com/) | +| Maccon | [link](https://www.maccon.de/en.html) | +| TDS PP | [link](https://www.tds-pp.com/en/) | +| H2tech | [link](https://www.h2wtech.com/) | +| PBA Systems | [link](http://www.pbasystems.com.sg/) | +| Celera Motion | [link](https://www.celeramotion.com/) | +| Beikimco | [link](http://www.beikimco.com/) | +| Electromate | [link](https://www.electromate.com/) | +| Magnetic Innovations | [link](https://www.magneticinnovations.com/) | + + +## Typical Specifications {#typical-specifications} + +<./biblio/references.bib> + + +## Backlinks {#backlinks} + +- [Actuators]({{< relref "actuators" >}}) diff --git a/static/ox-hugo/preumont18_nearly_collocated_schematic.png b/static/ox-hugo/preumont18_nearly_collocated_schematic.png new file mode 100644 index 0000000000000000000000000000000000000000..9a865fecac42ad90fb5715914be09015293a4287 GIT binary patch literal 43007 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 literal 0 HcmV?d00001