From 158dfe302f06782cb51df9d243df29639ca06b95 Mon Sep 17 00:00:00 2001 From: Thomas Dehaeze Date: Wed, 29 Sep 2021 22:30:09 +0200 Subject: [PATCH] Update many files PhDthesis were categorized as articles. Add "fron matter" to specify zettels category --- .../butler11_posit_contr_lithog_equip.md | 8 +- .../chen04_decoup_contr_flexur_joint_hexap.md | 6 +- content/article/fleming12_estim.md | 6 +- .../fleming15_low_order_dampin_track_contr.md | 6 +- .../furqan17_studies_stewar_platf_manip.md | 25 - .../gao15_measur_techn_precis_posit.md | 8 +- .../jiao18_dynam_model_exper_analy_stewar.md | 8 +- .../kwakernaak93_robus_contr_h_tutor_paper.md | 8 +- .../lee03_posit_contr_stewar_platf_using.md | 5 - .../lin06_distur_atten_precis_hexap_point.md | 6 +- .../liu19_review_indus_mimo_decoup_contr.md | 25 - ...cinroy00_desig_contr_flexur_joint_hexap.md | 6 +- ...omen18_advan_motion_contr_precis_mechat.md | 10 +- content/article/schellekens98_desig_precis.md | 8 +- ...hroeck01_compen_desig_linear_time_invar.md | 6 +- .../sebastian12_nanop_with_multip_sensor.md | 8 +- .../sun16_pract_multiv_contr_approac_based.md | 23 - .../tang18_decen_vibrat_contr_voice_coil.md | 8 +- .../thayer02_six_axis_vibrat_isolat_system.md | 4 +- ...urner15_fiber_based_distan_sensin_inter.md | 9 +- ...orhoeve15_ident_high_tech_motion_system.md | 5 - .../yun20_inves_two_stage_vibrat_suppr.md | 6 +- ...leming14_desig_model_contr_nanop_system.md | 653 ++++++++---------- .../book/leach14_fundam_princ_engin_nanom.md | 8 +- content/inproceedings/heertjes20_contr.md | 6 +- ..._vibrat_dynam_isotr_hexap_analy_studies.md | 21 +- ...ishop02_devel_precis_point_contr_vibrat.md | 23 + .../hanieh03_activ_stewar.md | 8 +- .../li01_simul_fault_vibrat_isolat_point.md | 261 +++++-- ...reichel17_model_robus_adapt_track_contr.md | 23 + .../wang07_dynam_model_exper_ident_activ.md | 23 + ...system_desig_activ_passiv_vibrat_isolat.md | 14 +- content/techreport/merlet87_paral_manip.md | 8 +- content/zettels/acquisition_systems.md | 3 +- content/zettels/active_isolation_platforms.md | 3 +- content/zettels/actuators.md | 12 +- .../zettels/analog_to_digital_converters.md | 11 +- content/zettels/cables.md | 3 +- content/zettels/capacitive_sensors.md | 3 +- content/zettels/charge_amplifiers.md | 15 +- content/zettels/connectors.md | 7 +- .../zettels/digital_to_analog_converters.md | 3 +- content/zettels/eddy_current_sensors.md | 3 +- content/zettels/encoders.md | 3 +- content/zettels/flexible_joints.md | 34 +- content/zettels/flexures.md | 31 - content/zettels/force_sensors.md | 13 +- content/zettels/granite.md | 1 + content/zettels/inertial_sensors.md | 17 +- content/zettels/instrumented_hammer.md | 3 +- content/zettels/interferometers.md | 25 +- content/zettels/linear_guides.md | 3 +- ...near_variable_differential_transformers.md | 3 +- content/zettels/parallel_manipulators.md | 8 + content/zettels/piezoelectric_actuators.md | 43 +- content/zettels/position_sensors.md | 18 +- content/zettels/rotation_stage.md | 3 +- content/zettels/shaker.md | 3 +- content/zettels/signal_conditioner.md | 9 +- .../simulink_real_time_target_machines.md | 1 + content/zettels/slip_rings.md | 3 +- content/zettels/springs.md | 3 +- content/zettels/tip_tilt_mirrors.md | 1 + .../zettels/transconductance_amplifiers.md | 3 +- content/zettels/transimpedance_amplifiers.md | 3 +- content/zettels/voice_coil_actuators.md | 9 +- content/zettels/voltage_amplifier.md | 23 +- static/ox-hugo/li01_decoupling_conf.png | Bin 4256 -> 4053 bytes static/ox-hugo/li01_decoupling_conf_bis.png | Bin 3726 -> 3864 bytes .../ox-hugo/li01_transfer_function_angle.png | Bin 0 -> 82949 bytes 70 files changed, 821 insertions(+), 757 deletions(-) delete mode 100644 content/article/furqan17_studies_stewar_platf_manip.md delete mode 100644 content/article/lee03_posit_contr_stewar_platf_using.md delete mode 100644 content/article/liu19_review_indus_mimo_decoup_contr.md delete mode 100644 content/article/sun16_pract_multiv_contr_approac_based.md delete mode 100644 content/article/voorhoeve15_ident_high_tech_motion_system.md create mode 100644 content/phdthesis/bishop02_devel_precis_point_contr_vibrat.md rename content/{article => phdthesis}/hanieh03_activ_stewar.md (51%) create mode 100644 content/phdthesis/treichel17_model_robus_adapt_track_contr.md create mode 100644 content/phdthesis/wang07_dynam_model_exper_ident_activ.md rename content/{article => phdthesis}/zuo04_elemen_system_desig_activ_passiv_vibrat_isolat.md (91%) delete mode 100644 content/zettels/flexures.md create mode 100644 content/zettels/parallel_manipulators.md create mode 100644 static/ox-hugo/li01_transfer_function_angle.png diff --git a/content/article/butler11_posit_contr_lithog_equip.md b/content/article/butler11_posit_contr_lithog_equip.md index b3640e9..c2b91c6 100644 --- a/content/article/butler11_posit_contr_lithog_equip.md +++ b/content/article/butler11_posit_contr_lithog_equip.md @@ -1,14 +1,14 @@ +++ title = "Position control in lithographic equipment" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags -: [Multivariable Control]({{< relref "multivariable_control" >}}), [Positioning Stations]({{< relref "positioning_stations" >}}) +: [Multivariable Control]({{}}), [Positioning Stations]({{}}) Reference -: ([Butler 2011](#org338ffef)) +: ([Butler 2011](#org9e15931)) Author(s) : Butler, H. @@ -20,4 +20,4 @@ Year ## Bibliography {#bibliography} -Butler, Hans. 2011. “Position Control in Lithographic Equipment.” _IEEE Control Systems_ 31 (5):28–47. . +Butler, Hans. 2011. “Position Control in Lithographic Equipment.” _IEEE Control Systems_ 31 (5):28–47. . diff --git a/content/article/chen04_decoup_contr_flexur_joint_hexap.md b/content/article/chen04_decoup_contr_flexur_joint_hexap.md index b3d1286..fd4dd84 100644 --- a/content/article/chen04_decoup_contr_flexur_joint_hexap.md +++ b/content/article/chen04_decoup_contr_flexur_joint_hexap.md @@ -1,14 +1,14 @@ +++ title = "Decoupled control of flexure-jointed hexapods using estimated joint-space mass-inertia matrix" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags : [Decoupled Control]({{}}) Reference -: ([Chen and McInroy 2004](#orgbe5d3d7)) +: ([Chen and McInroy 2004](#org1a36c5c)) Author(s) : Chen, Y., & McInroy, J. @@ -20,4 +20,4 @@ Year ## Bibliography {#bibliography} -Chen, Y., and J.E. McInroy. 2004. “Decoupled Control of Flexure-Jointed Hexapods Using Estimated Joint-Space Mass-Inertia Matrix.” _IEEE Transactions on Control Systems Technology_ 12 (3):413–21. . +Chen, Y., and J.E. McInroy. 2004. “Decoupled Control of Flexure-Jointed Hexapods Using Estimated Joint-Space Mass-Inertia Matrix.” _IEEE Transactions on Control Systems Technology_ 12 (3):413–21. . diff --git a/content/article/fleming12_estim.md b/content/article/fleming12_estim.md index ff0e78a..5009fa9 100644 --- a/content/article/fleming12_estim.md +++ b/content/article/fleming12_estim.md @@ -1,7 +1,7 @@ +++ title = "Estimating the resolution of nanopositioning systems from frequency domain data" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags @@ -9,7 +9,7 @@ Tags Reference -: ([Fleming 2012](#orgc7d7404)) +: ([Fleming 2012](#org26b3187)) Author(s) : Fleming, A. J. @@ -21,4 +21,4 @@ Year ## Bibliography {#bibliography} -Fleming, Andrew J. 2012. “Estimating the Resolution of Nanopositioning Systems from Frequency Domain Data.” In _2012 IEEE International Conference on Robotics and Automation_, nil. . +Fleming, Andrew J. 2012. “Estimating the Resolution of Nanopositioning Systems from Frequency Domain Data.” In _2012 IEEE International Conference on Robotics and Automation_, nil. . diff --git a/content/article/fleming15_low_order_dampin_track_contr.md b/content/article/fleming15_low_order_dampin_track_contr.md index 89c1a5f..fa863bb 100644 --- a/content/article/fleming15_low_order_dampin_track_contr.md +++ b/content/article/fleming15_low_order_dampin_track_contr.md @@ -1,7 +1,7 @@ +++ title = "Low-order damping and tracking control for scanning probe systems" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags @@ -9,7 +9,7 @@ Tags Reference -: ([Fleming, Teo, and Leang 2015](#org0b5cc88)) +: ([Fleming, Teo, and Leang 2015](#org26aec08)) Author(s) : Fleming, A. J., Teo, Y. R., & Leang, K. K. @@ -21,4 +21,4 @@ Year ## Bibliography {#bibliography} -Fleming, Andrew J., Yik Ren Teo, and Kam K. Leang. 2015. “Low-Order Damping and Tracking Control for Scanning Probe Systems.” _Frontiers in Mechanical Engineering_ 1 (nil):nil. . +Fleming, Andrew J., Yik Ren Teo, and Kam K. Leang. 2015. “Low-Order Damping and Tracking Control for Scanning Probe Systems.” _Frontiers in Mechanical Engineering_ 1 (nil):nil. . diff --git a/content/article/furqan17_studies_stewar_platf_manip.md b/content/article/furqan17_studies_stewar_platf_manip.md deleted file mode 100644 index 552a1e2..0000000 --- a/content/article/furqan17_studies_stewar_platf_manip.md +++ /dev/null @@ -1,25 +0,0 @@ -+++ -title = "Studies on stewart platform manipulator: a review" -author = ["Thomas Dehaeze"] -draft = false -+++ - -Tags -: [Stewart Platforms]({{< relref "stewart_platforms" >}}) - -Reference -: ([Furqan, Suhaib, and Ahmad 2017](#org1144495)) - -Author(s) -: Furqan, M., Suhaib, M., & Ahmad, N. - -Year -: 2017 - -Lots of references. - - - -## Bibliography {#bibliography} - -Furqan, Mohd, Mohd Suhaib, and Nazeer Ahmad. 2017. “Studies on Stewart Platform Manipulator: A Review.” _Journal of Mechanical Science and Technology_ 31 (9):4459–70. . diff --git a/content/article/gao15_measur_techn_precis_posit.md b/content/article/gao15_measur_techn_precis_posit.md index 5928f10..17b2441 100644 --- a/content/article/gao15_measur_techn_precis_posit.md +++ b/content/article/gao15_measur_techn_precis_posit.md @@ -1,14 +1,14 @@ +++ title = "Measurement technologies for precision positioning" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags -: [Position Sensors]({{< relref "position_sensors" >}}) +: [Position Sensors]({{}}) Reference -: ([Gao et al. 2015](#org07ae1a8)) +: ([Gao et al. 2015](#orgc8ea7ee)) Author(s) : Gao, W., Kim, S., Bosse, H., Haitjema, H., Chen, Y., Lu, X., Knapp, W., … @@ -20,4 +20,4 @@ Year ## Bibliography {#bibliography} -Gao, W., S.W. Kim, H. Bosse, H. Haitjema, Y.L. Chen, X.D. Lu, W. Knapp, A. Weckenmann, W.T. Estler, and H. Kunzmann. 2015. “Measurement Technologies for Precision Positioning.” _CIRP Annals_ 64 (2):773–96. . +Gao, W., S.W. Kim, H. Bosse, H. Haitjema, Y.L. Chen, X.D. Lu, W. Knapp, A. Weckenmann, W.T. Estler, and H. Kunzmann. 2015. “Measurement Technologies for Precision Positioning.” _CIRP Annals_ 64 (2):773–96. . diff --git a/content/article/jiao18_dynam_model_exper_analy_stewar.md b/content/article/jiao18_dynam_model_exper_analy_stewar.md index c32aa68..8565774 100644 --- a/content/article/jiao18_dynam_model_exper_analy_stewar.md +++ b/content/article/jiao18_dynam_model_exper_analy_stewar.md @@ -1,14 +1,14 @@ +++ title = "Dynamic modeling and experimental analyses of stewart platform with flexible hinges" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags -: [Stewart Platforms]({{< relref "stewart_platforms" >}}), [Flexible Joints]({{< relref "flexible_joints" >}}) +: [Stewart Platforms]({{}}), [Flexible Joints]({{}}) Reference -: ([Jiao et al. 2018](#org9f472e3)) +: ([Jiao et al. 2018](#orgfa41a34)) Author(s) : Jiao, J., Wu, Y., Yu, K., & Zhao, R. @@ -20,4 +20,4 @@ Year ## Bibliography {#bibliography} -Jiao, Jian, Ying Wu, Kaiping Yu, and Rui Zhao. 2018. “Dynamic Modeling and Experimental Analyses of Stewart Platform with Flexible Hinges.” _Journal of Vibration and Control_ 25 (1):151–71. . +Jiao, Jian, Ying Wu, Kaiping Yu, and Rui Zhao. 2018. “Dynamic Modeling and Experimental Analyses of Stewart Platform with Flexible Hinges.” _Journal of Vibration and Control_ 25 (1):151–71. . diff --git a/content/article/kwakernaak93_robus_contr_h_tutor_paper.md b/content/article/kwakernaak93_robus_contr_h_tutor_paper.md index b5c61ac..337b83c 100644 --- a/content/article/kwakernaak93_robus_contr_h_tutor_paper.md +++ b/content/article/kwakernaak93_robus_contr_h_tutor_paper.md @@ -1,14 +1,14 @@ +++ title = "Robust control and H-Infinity optimization - Tutorial paper" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags -: [H Infinity Control]({{< relref "h_infinity_control" >}}), [Weighting Functions]({{< relref "weighting_functions" >}}) +: [H Infinity Control]({{}}), [Weighting Functions]({{}}) Reference -: ([Kwakernaak 1993](#orge60c373)) +: ([Kwakernaak 1993](#orgb190420)) Author(s) : Kwakernaak, H. @@ -19,4 +19,4 @@ Year ## Bibliography {#bibliography} -Kwakernaak, Huibert. 1993. “Robust Control and H$infty$-Optimization - Tutorial Paper.” _Automatica_ 29 (2):255–73. 90122-a. +Kwakernaak, Huibert. 1993. “Robust Control and H$\Infty$-Optimization - Tutorial Paper.” _Automatica_ 29 (2):255–73. . diff --git a/content/article/lee03_posit_contr_stewar_platf_using.md b/content/article/lee03_posit_contr_stewar_platf_using.md deleted file mode 100644 index 33c682b..0000000 --- a/content/article/lee03_posit_contr_stewar_platf_using.md +++ /dev/null @@ -1,5 +0,0 @@ -+++ -title = "Position control of a stewart platform using inverse dynamics control with approximate dynamics" -author = ["Thomas Dehaeze"] -draft = false -+++ diff --git a/content/article/lin06_distur_atten_precis_hexap_point.md b/content/article/lin06_distur_atten_precis_hexap_point.md index cbca638..a3ed521 100644 --- a/content/article/lin06_distur_atten_precis_hexap_point.md +++ b/content/article/lin06_distur_atten_precis_hexap_point.md @@ -1,7 +1,7 @@ +++ title = "Disturbance attenuation in precise hexapod pointing using positive force feedback" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags @@ -9,7 +9,7 @@ Tags Reference -: ([Lin and McInroy 2006](#org0bfd86d)) +: ([Lin and McInroy 2006](#org5d8be72)) Author(s) : Lin, H., & McInroy, J. E. @@ -21,4 +21,4 @@ Year ## Bibliography {#bibliography} -Lin, Haomin, and John E. McInroy. 2006. “Disturbance Attenuation in Precise Hexapod Pointing Using Positive Force Feedback.” _Control Engineering Practice_ 14 (11):1377–86. . +Lin, Haomin, and John E. McInroy. 2006. “Disturbance Attenuation in Precise Hexapod Pointing Using Positive Force Feedback.” _Control Engineering Practice_ 14 (11):1377–86. . diff --git a/content/article/liu19_review_indus_mimo_decoup_contr.md b/content/article/liu19_review_indus_mimo_decoup_contr.md deleted file mode 100644 index 8a1110b..0000000 --- a/content/article/liu19_review_indus_mimo_decoup_contr.md +++ /dev/null @@ -1,25 +0,0 @@ -+++ -title = "A review of industrial mimo decoupling control" -author = ["Thomas Dehaeze"] -draft = false -+++ - -Tags -: - - -Reference -: ([Liu et al. 2019](#org9f65386)) - -Author(s) -: Liu, L., Tian, S., Xue, D., Zhang, T., Chen, Y., & Zhang, S. - -Year -: 2019 - --\* Liu, L. et al. (2019): A review of industrial mimo decoupling control :article:ignore: - - -## Bibliography {#bibliography} - -Liu, Lu, Siyuan Tian, Dingyu Xue, Tao Zhang, YangQuan Chen, and Shuo Zhang. 2019. “A Review of Industrial Mimo Decoupling Control.” _International Journal of Control, Automation and Systems_ 17 (5):1246–54. . diff --git a/content/article/mcinroy00_desig_contr_flexur_joint_hexap.md b/content/article/mcinroy00_desig_contr_flexur_joint_hexap.md index 1e14731..b6b7db6 100644 --- a/content/article/mcinroy00_desig_contr_flexur_joint_hexap.md +++ b/content/article/mcinroy00_desig_contr_flexur_joint_hexap.md @@ -1,7 +1,7 @@ +++ title = "Design and control of flexure jointed hexapods" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags @@ -9,7 +9,7 @@ Tags Reference -: ([McInroy and Hamann 2000](#org04a7c92)) +: ([McInroy and Hamann 2000](#orgaf3de6d)) Author(s) : McInroy, J., & Hamann, J. @@ -21,4 +21,4 @@ Year ## Bibliography {#bibliography} -McInroy, J.E., and J.C. Hamann. 2000. “Design and Control of Flexure Jointed Hexapods.” _IEEE Transactions on Robotics and Automation_ 16 (4):372–81. . +McInroy, J.E., and J.C. Hamann. 2000. “Design and Control of Flexure Jointed Hexapods.” _IEEE Transactions on Robotics and Automation_ 16 (4):372–81. . diff --git a/content/article/oomen18_advan_motion_contr_precis_mechat.md b/content/article/oomen18_advan_motion_contr_precis_mechat.md index b053882..8f18748 100644 --- a/content/article/oomen18_advan_motion_contr_precis_mechat.md +++ b/content/article/oomen18_advan_motion_contr_precis_mechat.md @@ -1,14 +1,14 @@ +++ title = "Advanced motion control for precision mechatronics: control, identification, and learning of complex systems" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags -: [Motion Control](motion_control.md) +: [Motion Control]({{}}) Reference -: ([Oomen 2018](#orge2156f8)) +: ([Oomen 2018](#org5ed8cf0)) Author(s) : Oomen, T. @@ -16,7 +16,7 @@ Author(s) Year : 2018 - + {{< figure src="/ox-hugo/oomen18_next_gen_loop_gain.png" caption="Figure 1: Envisaged developments in motion systems. In traditional motion systems, the control bandwidth takes place in the rigid-body region. In the next generation systemes, flexible dynamics are foreseen to occur within the control bandwidth." >}} @@ -24,4 +24,4 @@ Year ## Bibliography {#bibliography} -Oomen, Tom. 2018. “Advanced Motion Control for Precision Mechatronics: Control, Identification, and Learning of Complex Systems.” _IEEJ Journal of Industry Applications_ 7 (2):127–40. . +Oomen, Tom. 2018. “Advanced Motion Control for Precision Mechatronics: Control, Identification, and Learning of Complex Systems.” _IEEJ Journal of Industry Applications_ 7 (2):127–40. . diff --git a/content/article/schellekens98_desig_precis.md b/content/article/schellekens98_desig_precis.md index 5536ab4..9381335 100644 --- a/content/article/schellekens98_desig_precis.md +++ b/content/article/schellekens98_desig_precis.md @@ -1,14 +1,14 @@ +++ title = "Design for precision: current status and trends" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags -: [Precision Engineering]({{< relref "precision_engineering" >}}) +: [Precision Engineering]({{}}) Reference -: ([Schellekens et al. 1998](#org035ecc6)) +: ([Schellekens et al. 1998](#orgc8457bd)) Author(s) : Schellekens, P., Rosielle, N., Vermeulen, H., Vermeulen, M., Wetzels, S., & Pril, W. @@ -20,4 +20,4 @@ Year ## Bibliography {#bibliography} -Schellekens, P., N. Rosielle, H. Vermeulen, M. Vermeulen, S. Wetzels, and W. Pril. 1998. “Design for Precision: Current Status and Trends.” _Cirp Annals_, no. 2:557–86. 63243-0. +Schellekens, P., N. Rosielle, H. Vermeulen, M. Vermeulen, S. Wetzels, and W. Pril. 1998. “Design for Precision: Current Status and Trends.” _Cirp Annals_, no. 2:557–86. . diff --git a/content/article/schroeck01_compen_desig_linear_time_invar.md b/content/article/schroeck01_compen_desig_linear_time_invar.md index 4947c57..f0957bd 100644 --- a/content/article/schroeck01_compen_desig_linear_time_invar.md +++ b/content/article/schroeck01_compen_desig_linear_time_invar.md @@ -1,7 +1,7 @@ +++ title = "On compensator design for linear time-invariant dual-input single-output systems" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags @@ -9,7 +9,7 @@ Tags Reference -: ([Schroeck, Messner, and McNab 2001](#orga580bdc)) +: ([Schroeck, Messner, and McNab 2001](#org722a59f)) Author(s) : Schroeck, S., Messner, W., & McNab, R. @@ -21,4 +21,4 @@ Year ## Bibliography {#bibliography} -Schroeck, S.J., W.C. Messner, and R.J. McNab. 2001. “On Compensator Design for Linear Time-Invariant Dual-Input Single-Output Systems.” _IEEE/ASME Transactions on Mechatronics_ 6 (1):50–57. . +Schroeck, S.J., W.C. Messner, and R.J. McNab. 2001. “On Compensator Design for Linear Time-Invariant Dual-Input Single-Output Systems.” _IEEE/ASME Transactions on Mechatronics_ 6 (1):50–57. . diff --git a/content/article/sebastian12_nanop_with_multip_sensor.md b/content/article/sebastian12_nanop_with_multip_sensor.md index e8a733f..69fe05e 100644 --- a/content/article/sebastian12_nanop_with_multip_sensor.md +++ b/content/article/sebastian12_nanop_with_multip_sensor.md @@ -1,14 +1,14 @@ +++ title = "Nanopositioning with multiple sensors: a case study in data storage" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags -: [Sensor Fusion]({{< relref "sensor_fusion" >}}) +: [Sensor Fusion]({{}}) Reference -: ([Sebastian and Pantazi 2012](#orge399d74)) +: ([Sebastian and Pantazi 2012](#org22b1de0)) Author(s) : Sebastian, A., & Pantazi, A. @@ -20,4 +20,4 @@ Year ## Bibliography {#bibliography} -Sebastian, Abu, and Angeliki Pantazi. 2012. “Nanopositioning with Multiple Sensors: A Case Study in Data Storage.” _IEEE Transactions on Control Systems Technology_ 20 (2):382–94. . +Sebastian, Abu, and Angeliki Pantazi. 2012. “Nanopositioning with Multiple Sensors: A Case Study in Data Storage.” _IEEE Transactions on Control Systems Technology_ 20 (2):382–94. . diff --git a/content/article/sun16_pract_multiv_contr_approac_based.md b/content/article/sun16_pract_multiv_contr_approac_based.md deleted file mode 100644 index e1bdb4e..0000000 --- a/content/article/sun16_pract_multiv_contr_approac_based.md +++ /dev/null @@ -1,23 +0,0 @@ -+++ -title = "A practical multivariable control approach based on inverted decoupling and decentralized active disturbance rejection control" -author = ["Thomas Dehaeze"] -draft = false -+++ - -Tags -: [Decoupled Control](decoupled_control.md) - -Reference -: ([Sun et al. 2016](#org2268976)) - -Author(s) -: Sun, L., Dong, J., Li, D., & Lee, K. Y. - -Year -: 2016 - - - -## Bibliography {#bibliography} - -Sun, Li, Junyi Dong, Donghai Li, and Kwang Y. Lee. 2016. “A Practical Multivariable Control Approach Based on Inverted Decoupling and Decentralized Active Disturbance Rejection Control.” _Industrial & Engineering Chemistry Research_ 55 (7):2008–19. . diff --git a/content/article/tang18_decen_vibrat_contr_voice_coil.md b/content/article/tang18_decen_vibrat_contr_voice_coil.md index 1513909..ba802e8 100644 --- a/content/article/tang18_decen_vibrat_contr_voice_coil.md +++ b/content/article/tang18_decen_vibrat_contr_voice_coil.md @@ -1,14 +1,14 @@ +++ title = "Decentralized vibration control of a voice coil motor-based stewart parallel mechanism: simulation and experiments" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags -: [Stewart Platforms]({{< relref "stewart_platforms" >}}) +: [Stewart Platforms]({{}}) Reference -: ([Tang, Cao, and Yu 2018](#orgb3d3aa7)) +: ([Tang, Cao, and Yu 2018](#org2c23b98)) Author(s) : Tang, J., Cao, D., & Yu, T. @@ -20,4 +20,4 @@ Year ## Bibliography {#bibliography} -Tang, Jie, Dengqing Cao, and Tianhu Yu. 2018. “Decentralized Vibration Control of a Voice Coil Motor-Based Stewart Parallel Mechanism: Simulation and Experiments.” _Proceedings of the Institution of Mechanical Engineers, Part C: Journal of Mechanical Engineering Science_ 233 (1):132–45. . +Tang, Jie, Dengqing Cao, and Tianhu Yu. 2018. “Decentralized Vibration Control of a Voice Coil Motor-Based Stewart Parallel Mechanism: Simulation and Experiments.” _Proceedings of the Institution of Mechanical Engineers, Part c: Journal of Mechanical Engineering Science_ 233 (1):132–45. . diff --git a/content/article/thayer02_six_axis_vibrat_isolat_system.md b/content/article/thayer02_six_axis_vibrat_isolat_system.md index 75f0ec3..154fd3d 100644 --- a/content/article/thayer02_six_axis_vibrat_isolat_system.md +++ b/content/article/thayer02_six_axis_vibrat_isolat_system.md @@ -9,7 +9,7 @@ Tags Reference -: ([Thayer et al. 2002](#org7584b4b)) +: ([Thayer et al. 2002](#org3291862)) Author(s) : Thayer, D., Campbell, M., Vagners, J., & Flotow, A. v. @@ -20,4 +20,4 @@ Year ## Bibliography {#bibliography} -Thayer, Doug, Mark Campbell, Juris Vagners, and Andrew von Flotow. 2002. “Six-Axis Vibration Isolation System Using Soft Actuators and Multiple Sensors.” _Journal of Spacecraft and Rockets_ 39 (2):206–12. . +Thayer, Doug, Mark Campbell, Juris Vagners, and Andrew von Flotow. 2002. “Six-Axis Vibration Isolation System Using Soft Actuators and Multiple Sensors.” _Journal of Spacecraft and Rockets_ 39 (2):206–12. . diff --git a/content/article/thurner15_fiber_based_distan_sensin_inter.md b/content/article/thurner15_fiber_based_distan_sensin_inter.md index e5d9b37..5121baf 100644 --- a/content/article/thurner15_fiber_based_distan_sensin_inter.md +++ b/content/article/thurner15_fiber_based_distan_sensin_inter.md @@ -1,14 +1,14 @@ +++ title = "Fiber-Based Distance Sensing Interferometry" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags -: [Interferometers]({{< relref "interferometers" >}}) +: [Interferometers]({{}}) Reference -: ([Thurner et al. 2015](#org6f5a8f6)) +: ([Thurner et al. 2015](#org7174c7b)) Author(s) : Thurner, K., Quacquarelli, F. P., Braun, Pierre-Francois, Dal Savio, C., & Karrai, K. @@ -17,6 +17,7 @@ Year : 2015 + ## Bibliography {#bibliography} -Thurner, Klaus, Francesca Paola Quacquarelli, Pierre-François Braun, Claudio Dal Savio, and Khaled Karrai. 2015. “Fiber-Based Distance Sensing Interferometry.” _Applied Optics_ 54 (10). Optical Society of America:3051–63. +Thurner, Klaus, Francesca Paola Quacquarelli, Pierre-François Braun, Claudio Dal Savio, and Khaled Karrai. 2015. “Fiber-Based Distance Sensing Interferometry.” _Applied Optics_ 54 (10). Optical Society of America:3051–63. diff --git a/content/article/voorhoeve15_ident_high_tech_motion_system.md b/content/article/voorhoeve15_ident_high_tech_motion_system.md deleted file mode 100644 index dfac909..0000000 --- a/content/article/voorhoeve15_ident_high_tech_motion_system.md +++ /dev/null @@ -1,5 +0,0 @@ -+++ -title = "Identification of high-tech motion systems: an active vibration isolation benchmark" -author = ["Thomas Dehaeze"] -draft = false -+++ diff --git a/content/article/yun20_inves_two_stage_vibrat_suppr.md b/content/article/yun20_inves_two_stage_vibrat_suppr.md index 5eed6d3..4dc0f72 100644 --- a/content/article/yun20_inves_two_stage_vibrat_suppr.md +++ b/content/article/yun20_inves_two_stage_vibrat_suppr.md @@ -1,7 +1,7 @@ +++ title = "Investigation on two-stage vibration suppression and precision pointing for space optical payloads" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags @@ -9,7 +9,7 @@ Tags Reference -: ([Yun et al. 2020](#org70fb5c6)) +: ([Yun et al. 2020](#org7bb249c)) Author(s) : Yun, H., Liu, L., Li, Q., & Yang, H. @@ -21,4 +21,4 @@ Year ## Bibliography {#bibliography} -Yun, Hai, Lei Liu, Qing Li, and Hongjie Yang. 2020. “Investigation on Two-Stage Vibration Suppression and Precision Pointing for Space Optical Payloads.” _Aerospace Science and Technology_ 96 (nil):105543. . +Yun, Hai, Lei Liu, Qing Li, and Hongjie Yang. 2020. “Investigation on Two-Stage Vibration Suppression and Precision Pointing for Space Optical Payloads.” _Aerospace Science and Technology_ 96 (nil):105543. . diff --git a/content/book/fleming14_desig_model_contr_nanop_system.md b/content/book/fleming14_desig_model_contr_nanop_system.md index 049abb5..4cc088b 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 = true +draft = false +++ Tags -: [Piezoelectric Actuators](piezoelectric_actuators.md), [Flexible Joints](flexible_joints.md) +: [Piezoelectric Actuators]({{}}), [Flexible Joints]({{}}) Reference -: ([Fleming and Leang 2014](#org3a2500f)) +: ([Fleming and Leang 2014](#orgd16fb21)) Author(s) : Fleming, A. J., & Leang, K. K. @@ -19,763 +19,708 @@ Year : 2014 -## Introduction {#introduction} +## Introduction to Nanotechnology {#introduction-to-nanotechnology} -### Introduction to Nanotechnology {#introduction-to-nanotechnology} +## Introduction to Nanopositioning {#introduction-to-nanopositioning} -### Introduction to Nanopositioning {#introduction-to-nanopositioning} +## Scanning Probe Microscopy {#scanning-probe-microscopy} -### Scanning Probe Microscopy {#scanning-probe-microscopy} +## Challenges with Nanopositioning Systems {#challenges-with-nanopositioning-systems} -### Challenges with Nanopositioning Systems {#challenges-with-nanopositioning-systems} +### Hysteresis {#hysteresis} -#### Hysteresis {#hysteresis} +### Creep {#creep} -#### Creep {#creep} +### Thermal Drift {#thermal-drift} -#### Thermal Drift {#thermal-drift} +### Mechanical Resonance {#mechanical-resonance} -#### Mechanical Resonance {#mechanical-resonance} +## Control of Nanopositioning Systems {#control-of-nanopositioning-systems} -### Control of Nanopositioning Systems {#control-of-nanopositioning-systems} +### Feedback Control {#feedback-control} -#### Feedback Control {#feedback-control} +### Feedforward Control {#feedforward-control} -#### Feedforward Control {#feedforward-control} +## Book Summary {#book-summary} -### Book Summary {#book-summary} +### Assumed Knowledge {#assumed-knowledge} -#### Assumed Knowledge {#assumed-knowledge} +### Content Summary {#content-summary} -#### Content Summary {#content-summary} +## References {#references} -### References {#references} +## The Piezoelectric Effect {#the-piezoelectric-effect} + + +## Piezoelectric Compositions {#piezoelectric-compositions} + + +## Manufacturing Piezoelectric Ceramics {#manufacturing-piezoelectric-ceramics} ## Piezoelectric Transducers {#piezoelectric-transducers} -### The Piezoelectric Effect {#the-piezoelectric-effect} +## Application Considerations {#application-considerations} -### Piezoelectric Compositions {#piezoelectric-compositions} +## Response of Piezoelectric Actuators {#response-of-piezoelectric-actuators} -### Manufacturing Piezoelectric Ceramics {#manufacturing-piezoelectric-ceramics} +## Modeling Creep and Vibration in Piezoelectric Actuators {#modeling-creep-and-vibration-in-piezoelectric-actuators} -### Piezoelectric Transducers {#piezoelectric-transducers} +## Chapter Summary {#chapter-summary} -### Application Considerations {#application-considerations} +## References {#references} -### Response of Piezoelectric Actuators {#response-of-piezoelectric-actuators} +## Piezoelectric Tube Nanopositioners {#piezoelectric-tube-nanopositioners} -### Modeling Creep and Vibration in Piezoelectric Actuators {#modeling-creep-and-vibration-in-piezoelectric-actuators} +### 63mm Piezoelectric Tube {#63mm-piezoelectric-tube} -### Chapter Summary {#chapter-summary} +### 40mm Piezoelectric Tube Nanopositioner {#40mm-piezoelectric-tube-nanopositioner} -### References {#references} +## Piezoelectric Stack Nanopositioners {#piezoelectric-stack-nanopositioners} -## Types of Nanopositioners {#types-of-nanopositioners} +### Phyisk Instrumente P-734 Nanopositioner {#phyisk-instrumente-p-734-nanopositioner} -### Piezoelectric Tube Nanopositioners {#piezoelectric-tube-nanopositioners} +### Phyisk Instrumente P-733.3DD Nanopositioner {#phyisk-instrumente-p-733-dot-3dd-nanopositioner} -#### 63mm Piezoelectric Tube {#63mm-piezoelectric-tube} +### Vertical Nanopositioners {#vertical-nanopositioners} -#### 40mm Piezoelectric Tube Nanopositioner {#40mm-piezoelectric-tube-nanopositioner} +### Rotational Nanopositioners {#rotational-nanopositioners} -### Piezoelectric Stack Nanopositioners {#piezoelectric-stack-nanopositioners} +### Low Temperature and UHV Nanopositioners {#low-temperature-and-uhv-nanopositioners} -#### Phyisk Instrumente P-734 Nanopositioner {#phyisk-instrumente-p-734-nanopositioner} +### Tilting Nanopositioners {#tilting-nanopositioners} -#### Phyisk Instrumente P-733.3DD Nanopositioner {#phyisk-instrumente-p-733-dot-3dd-nanopositioner} +### Optical Objective Nanopositioners {#optical-objective-nanopositioners} -#### Vertical Nanopositioners {#vertical-nanopositioners} +## References {#references} -#### Rotational Nanopositioners {#rotational-nanopositioners} +## Introduction {#introduction} -#### Low Temperature and UHV Nanopositioners {#low-temperature-and-uhv-nanopositioners} +## Operating Environment {#operating-environment} -#### Tilting Nanopositioners {#tilting-nanopositioners} +## Methods for Actuation {#methods-for-actuation} -#### Optical Objective Nanopositioners {#optical-objective-nanopositioners} - - -### References {#references} - - -## Mechanical Design: Flexure-Based Nanopositioners {#mechanical-design-flexure-based-nanopositioners} +## Flexure Hinges {#flexure-hinges} ### Introduction {#introduction} -### Operating Environment {#operating-environment} +### Types of Flexures {#types-of-flexures} -### Methods for Actuation {#methods-for-actuation} +### Flexure Hinge Compliance Equations {#flexure-hinge-compliance-equations} -### Flexure Hinges {#flexure-hinges} +### Stiff Out-of-Plane Flexure Designs {#stiff-out-of-plane-flexure-designs} -#### Introduction {#introduction} +### Failure Considerations {#failure-considerations} -#### Types of Flexures {#types-of-flexures} +### Finite Element Approach for Flexure Design {#finite-element-approach-for-flexure-design} -#### Flexure Hinge Compliance Equations {#flexure-hinge-compliance-equations} +## Material Considerations {#material-considerations} -#### Stiff Out-of-Plane Flexure Designs {#stiff-out-of-plane-flexure-designs} +### Materials for Flexure and Platform Design {#materials-for-flexure-and-platform-design} -#### Failure Considerations {#failure-considerations} +### Thermal Stability of Materials {#thermal-stability-of-materials} -#### Finite Element Approach for Flexure Design {#finite-element-approach-for-flexure-design} +## Manufacturing Techniques {#manufacturing-techniques} -### Material Considerations {#material-considerations} +## Design Example: A High-Speed Serial-Kinematic Nanopositioner {#design-example-a-high-speed-serial-kinematic-nanopositioner} -#### Materials for Flexure and Platform Design {#materials-for-flexure-and-platform-design} +### State-of-the-Art Designs {#state-of-the-art-designs} -#### Thermal Stability of Materials {#thermal-stability-of-materials} +### Tradeoffs and Limitations in Speed {#tradeoffs-and-limitations-in-speed} -### Manufacturing Techniques {#manufacturing-techniques} +### Serial- Versus Parallel-Kinematic Configurations {#serial-versus-parallel-kinematic-configurations} -### Design Example: A High-Speed Serial-Kinematic Nanopositioner {#design-example-a-high-speed-serial-kinematic-nanopositioner} +### Piezoactuator Considerations {#piezoactuator-considerations} -#### State-of-the-Art Designs {#state-of-the-art-designs} +### Preloading Piezo-Stack Actuators {#preloading-piezo-stack-actuators} -#### Tradeoffs and Limitations in Speed {#tradeoffs-and-limitations-in-speed} +### Flexure Design for Lateral Positioning {#flexure-design-for-lateral-positioning} -#### Serial- Versus Parallel-Kinematic Configurations {#serial-versus-parallel-kinematic-configurations} +### Design of Vertical Stage {#design-of-vertical-stage} -#### Piezoactuator Considerations {#piezoactuator-considerations} +### Fabrication and Assembly {#fabrication-and-assembly} -#### Preloading Piezo-Stack Actuators {#preloading-piezo-stack-actuators} - - -#### Flexure Design for Lateral Positioning {#flexure-design-for-lateral-positioning} - - -#### Design of Vertical Stage {#design-of-vertical-stage} - - -#### Fabrication and Assembly {#fabrication-and-assembly} - - -#### Drive Electronics {#drive-electronics} +### Drive Electronics {#drive-electronics} \*\*\*\*0 Experimental Results -### Chapter Summary {#chapter-summary} +## Chapter Summary {#chapter-summary} -### References {#references} +## References {#references} -## Position Sensors {#position-sensors} +## Introduction {#introduction} -### Introduction {#introduction} +## Sensor Characteristics {#sensor-characteristics} -### Sensor Characteristics {#sensor-characteristics} +### Calibration and Nonlinearity {#calibration-and-nonlinearity} -#### Calibration and Nonlinearity {#calibration-and-nonlinearity} +### Drift and Stability {#drift-and-stability} -#### Drift and Stability {#drift-and-stability} +### Bandwidth {#bandwidth} -#### Bandwidth {#bandwidth} +### Noise {#noise} -#### Noise {#noise} +### Resolution {#resolution} -#### Resolution {#resolution} +### Combining Errors {#combining-errors} -#### Combining Errors {#combining-errors} +### Metrological Traceability {#metrological-traceability} -#### Metrological Traceability {#metrological-traceability} +## Nanometer Position Sensors {#nanometer-position-sensors} -### Nanometer Position Sensors {#nanometer-position-sensors} +### Resistive Strain Sensors {#resistive-strain-sensors} -#### Resistive Strain Sensors {#resistive-strain-sensors} +### Piezoresistive Strain Sensors {#piezoresistive-strain-sensors} -#### Piezoresistive Strain Sensors {#piezoresistive-strain-sensors} +### Piezoelectric Strain Sensors {#piezoelectric-strain-sensors} -#### Piezoelectric Strain Sensors {#piezoelectric-strain-sensors} +### Capacitive Sensors {#capacitive-sensors} -#### Capacitive Sensors {#capacitive-sensors} +### MEMs Capacitive and Thermal Sensors {#mems-capacitive-and-thermal-sensors} -#### MEMs Capacitive and Thermal Sensors {#mems-capacitive-and-thermal-sensors} +### Eddy-Current Sensors {#eddy-current-sensors} -#### Eddy-Current Sensors {#eddy-current-sensors} +### Linear Variable Displacement Transformers {#linear-variable-displacement-transformers} -#### Linear Variable Displacement Transformers {#linear-variable-displacement-transformers} +### Laser Interferometers {#laser-interferometers} -#### Laser Interferometers {#laser-interferometers} +### Linear Encoders {#linear-encoders} -#### Linear Encoders {#linear-encoders} +## Comparison and Summary {#comparison-and-summary} -### Comparison and Summary {#comparison-and-summary} +## Outlook and Future Requirements {#outlook-and-future-requirements} -### Outlook and Future Requirements {#outlook-and-future-requirements} +## References {#references} -### References {#references} +## Introduction {#introduction} -## Shunt Control {#shunt-control} +## Shunt Circuit Modeling {#shunt-circuit-modeling} -### Introduction {#introduction} +### Open-Loop {#open-loop} -### Shunt Circuit Modeling {#shunt-circuit-modeling} +### Shunt Damping {#shunt-damping} -#### Open-Loop {#open-loop} +## Implementation {#implementation} -#### Shunt Damping {#shunt-damping} +## Experimental Results {#experimental-results} -### Implementation {#implementation} +### Tube Dynamics {#tube-dynamics} -### Experimental Results {#experimental-results} +### Amplifier Performance {#amplifier-performance} -#### Tube Dynamics {#tube-dynamics} +### Shunt Damping Performance {#shunt-damping-performance} -#### Amplifier Performance {#amplifier-performance} +## Chapter Summary {#chapter-summary} -#### Shunt Damping Performance {#shunt-damping-performance} +## References {#references} -### Chapter Summary {#chapter-summary} +## Introduction {#introduction} -### References {#references} +## Experimental Setup {#experimental-setup} -## Feedback Control {#feedback-control} +## PI Control {#pi-control} -### Introduction {#introduction} +## PI Control with Notch Filters {#pi-control-with-notch-filters} -### Experimental Setup {#experimental-setup} +## PI Control with IRC Damping {#pi-control-with-irc-damping} -### PI Control {#pi-control} +## Performance Comparison {#performance-comparison} -### PI Control with Notch Filters {#pi-control-with-notch-filters} +## Noise and Resolution {#noise-and-resolution} -### PI Control with IRC Damping {#pi-control-with-irc-damping} +## Analog Implementation {#analog-implementation} -### Performance Comparison {#performance-comparison} +## Application to AFM Imaging {#application-to-afm-imaging} -### Noise and Resolution {#noise-and-resolution} +## References {#references} -### Analog Implementation {#analog-implementation} +## Introduction {#introduction} + + +## Modeling {#modeling} + + +### Actuator Dynamics {#actuator-dynamics} + + +### Sensor Dynamics {#sensor-dynamics} + + +### Sensor Noise {#sensor-noise} + + +### Mechanical Dynamics {#mechanical-dynamics} + + +### System Properties {#system-properties} + + +### Example System {#example-system} + + +## Damping Control {#damping-control} + + +## Tracking Control {#tracking-control} + + +### Relationship Between Force and Displacement {#relationship-between-force-and-displacement} + + +### Integral Displacement Feedback {#integral-displacement-feedback} + + +### Direct Tracking Control {#direct-tracking-control} + + +### Dual Sensor Feedback {#dual-sensor-feedback} + + +### Low Frequency Bypass {#low-frequency-bypass} + + +### Feedforward Inputs {#feedforward-inputs} + + +### Higher-Order Modes {#higher-order-modes} + + +## Experimental Results {#experimental-results} + + +### Experimental Nanopositioner {#experimental-nanopositioner} + + +### Actuators and Force Sensors {#actuators-and-force-sensors} + + +### Control Design {#control-design} + + +### Noise Performance {#noise-performance} + + +## Chapter Summary {#chapter-summary} + + +## References {#references} + + +## Why Feedforward? {#why-feedforward} + + +## Modeling for Feedforward Control {#modeling-for-feedforward-control} + + +## Feedforward Control of Dynamics and Hysteresis {#feedforward-control-of-dynamics-and-hysteresis} + + +### Simple DC-Gain Feedforward Control {#simple-dc-gain-feedforward-control} + + +### An Inversion-Based Feedforward Approach for Linear Dynamics {#an-inversion-based-feedforward-approach-for-linear-dynamics} + + +### Frequency-Weighted Inversion: The Optimal Inverse {#frequency-weighted-inversion-the-optimal-inverse} ### Application to AFM Imaging {#application-to-afm-imaging} -\*\*\*0 Repetitive Control -\*\*\*\*0.1 Introduction +## Feedforward and Feedback Control {#feedforward-and-feedback-control} -\*\*\*\*0.2 Repetitive Control Concept and Stability Considerations -\*\*\*\*0.3 Dual-Stage Repetitive Control +### Application to AFM Imaging {#application-to-afm-imaging} -\*\*\*\*0.4 Handling Hysteresis -\*\*\*\*0.5 Design and Implementation +## Iterative Feedforward Control {#iterative-feedforward-control} -\*\*\*\*0.6 Experimental Results and Discussion -\*\*\*1 Summary +### The ILC Problem {#the-ilc-problem} -### References {#references} +### Model-Based ILC {#model-based-ilc} -## Force Feedback Control {#force-feedback-control} +### Nonlinear ILC {#nonlinear-ilc} -### Introduction {#introduction} +### Conclusions {#conclusions} -### Modeling {#modeling} +## References {#references} -#### Actuator Dynamics {#actuator-dynamics} +## 10.1 Introduction {#10-dot-1-introduction} -#### Sensor Dynamics {#sensor-dynamics} +### 10.1.1 Background {#10-dot-1-dot-1-background} -#### Sensor Noise {#sensor-noise} +### 10.1.2 The Optimal Periodic Input {#10-dot-1-dot-2-the-optimal-periodic-input} -#### Mechanical Dynamics {#mechanical-dynamics} +## 10.2 Signal Optimization {#10-dot-2-signal-optimization} -#### System Properties {#system-properties} +## 10.3 Frequency Domain Cost Functions {#10-dot-3-frequency-domain-cost-functions} -#### Example System {#example-system} +### 10.3.1 Background: Discrete Fourier Series {#10-dot-3-dot-1-background-discrete-fourier-series} -### Damping Control {#damping-control} +### 10.3.2 Minimizing Signal Power {#10-dot-3-dot-2-minimizing-signal-power} -### Tracking Control {#tracking-control} +### 10.3.3 Minimizing Frequency Weighted Power {#10-dot-3-dot-3-minimizing-frequency-weighted-power} -#### Relationship Between Force and Displacement {#relationship-between-force-and-displacement} +### 10.3.4 Minimizing Velocity and Acceleration {#10-dot-3-dot-4-minimizing-velocity-and-acceleration} -#### Integral Displacement Feedback {#integral-displacement-feedback} +### 10.3.5 Single-Sided Frequency Domain Calculations {#10-dot-3-dot-5-single-sided-frequency-domain-calculations} -#### Direct Tracking Control {#direct-tracking-control} +## 10.4 Time Domain Cost Function {#10-dot-4-time-domain-cost-function} -#### Dual Sensor Feedback {#dual-sensor-feedback} +### 10.4.1 Minimum Velocity {#10-dot-4-dot-1-minimum-velocity} -#### Low Frequency Bypass {#low-frequency-bypass} +### 10.4.2 Minimum Acceleration {#10-dot-4-dot-2-minimum-acceleration} -#### Feedforward Inputs {#feedforward-inputs} +### 10.4.3 Frequency Weighted Objectives {#10-dot-4-dot-3-frequency-weighted-objectives} -#### Higher-Order Modes {#higher-order-modes} +## 10.5 Application to Scan Generation {#10-dot-5-application-to-scan-generation} -### Experimental Results {#experimental-results} +### 10.5.1 Choosing β and K {#10-dot-5-dot-1-choosing-β-and-k} -#### Experimental Nanopositioner {#experimental-nanopositioner} +### 10.5.2 Improving Feedback and Feedforward Controllers {#10-dot-5-dot-2-improving-feedback-and-feedforward-controllers} -#### Actuators and Force Sensors {#actuators-and-force-sensors} +## 10.6 Comparison to Other Techniques {#10-dot-6-comparison-to-other-techniques} -#### Control Design {#control-design} +## 10.7 Experimental Application {#10-dot-7-experimental-application} -#### Noise Performance {#noise-performance} +## 10.8 Chapter Summary {#10-dot-8-chapter-summary} -### Chapter Summary {#chapter-summary} +## References {#references} -### References {#references} +## 11.1 Introduction {#11-dot-1-introduction} -## Feedforward Control {#feedforward-control} +## 11.2 Modeling Hysteresis {#11-dot-2-modeling-hysteresis} -### Why Feedforward? {#why-feedforward} +### 11.2.1 Simple Polynomial Model {#11-dot-2-dot-1-simple-polynomial-model} -### Modeling for Feedforward Control {#modeling-for-feedforward-control} +### 11.2.2 Maxwell Slip Model {#11-dot-2-dot-2-maxwell-slip-model} -### Feedforward Control of Dynamics and Hysteresis {#feedforward-control-of-dynamics-and-hysteresis} +### 11.2.3 Duhem Model {#11-dot-2-dot-3-duhem-model} -#### Simple DC-Gain Feedforward Control {#simple-dc-gain-feedforward-control} +### 11.2.4 Preisach Model {#11-dot-2-dot-4-preisach-model} -#### An Inversion-Based Feedforward Approach for Linear Dynamics {#an-inversion-based-feedforward-approach-for-linear-dynamics} +### 11.2.5 Classical Prandlt-Ishlinksii Model {#11-dot-2-dot-5-classical-prandlt-ishlinksii-model} -#### Frequency-Weighted Inversion: The Optimal Inverse {#frequency-weighted-inversion-the-optimal-inverse} +## 11.3 Feedforward Hysteresis Compensation {#11-dot-3-feedforward-hysteresis-compensation} -#### Application to AFM Imaging {#application-to-afm-imaging} +### 11.3.1 Feedforward Control Using the Presiach Model {#11-dot-3-dot-1-feedforward-control-using-the-presiach-model} -### Feedforward and Feedback Control {#feedforward-and-feedback-control} +### 11.3.2 Feedforward Control Using the Prandlt-Ishlinksii Model {#11-dot-3-dot-2-feedforward-control-using-the-prandlt-ishlinksii-model} -#### Application to AFM Imaging {#application-to-afm-imaging} +## 11.4 Chapter Summary {#11-dot-4-chapter-summary} -### Iterative Feedforward Control {#iterative-feedforward-control} +## References {#references} -#### The ILC Problem {#the-ilc-problem} +## 12.1 Introduction {#12-dot-1-introduction} -#### Model-Based ILC {#model-based-ilc} +## 12.2 Charge Drives {#12-dot-2-charge-drives} -#### Nonlinear ILC {#nonlinear-ilc} +## 12.3 Application to Piezoelectric Stack Nanopositioners {#12-dot-3-application-to-piezoelectric-stack-nanopositioners} -#### Conclusions {#conclusions} +## 12.4 Application to Piezoelectric Tube Nanopositioners {#12-dot-4-application-to-piezoelectric-tube-nanopositioners} -### References {#references} +## 12.5 Alternative Electrode Configurations {#12-dot-5-alternative-electrode-configurations} -## Command Shaping {#command-shaping} +### 12.5.1 Grounded Internal Electrode {#12-dot-5-dot-1-grounded-internal-electrode} -### 10.1 Introduction {#10-dot-1-introduction} +### 12.5.2 Quartered Internal Electrode {#12-dot-5-dot-2-quartered-internal-electrode} -#### 10.1.1 Background {#10-dot-1-dot-1-background} +## 12.6 Charge Versus Voltage {#12-dot-6-charge-versus-voltage} -#### 10.1.2 The Optimal Periodic Input {#10-dot-1-dot-2-the-optimal-periodic-input} +### 12.6.1 Advantages {#12-dot-6-dot-1-advantages} -### 10.2 Signal Optimization {#10-dot-2-signal-optimization} +### 12.6.2 Disadvantages {#12-dot-6-dot-2-disadvantages} -### 10.3 Frequency Domain Cost Functions {#10-dot-3-frequency-domain-cost-functions} +## 12.7 Impact on Closed-Loop Control {#12-dot-7-impact-on-closed-loop-control} -#### 10.3.1 Background: Discrete Fourier Series {#10-dot-3-dot-1-background-discrete-fourier-series} +## 12.8 Chapter Summary {#12-dot-8-chapter-summary} -#### 10.3.2 Minimizing Signal Power {#10-dot-3-dot-2-minimizing-signal-power} +## References {#references} -#### 10.3.3 Minimizing Frequency Weighted Power {#10-dot-3-dot-3-minimizing-frequency-weighted-power} +## 13.1 Introduction {#13-dot-1-introduction} -#### 10.3.4 Minimizing Velocity and Acceleration {#10-dot-3-dot-4-minimizing-velocity-and-acceleration} +## 13.2 Review of Random Processes {#13-dot-2-review-of-random-processes} -#### 10.3.5 Single-Sided Frequency Domain Calculations {#10-dot-3-dot-5-single-sided-frequency-domain-calculations} +### 13.2.1 Probability Distributions {#13-dot-2-dot-1-probability-distributions} -### 10.4 Time Domain Cost Function {#10-dot-4-time-domain-cost-function} +### 13.2.2 Expected Value, Moments, Variance, and RMS {#13-dot-2-dot-2-expected-value-moments-variance-and-rms} -#### 10.4.1 Minimum Velocity {#10-dot-4-dot-1-minimum-velocity} +### 13.2.3 Gaussian Random Variables {#13-dot-2-dot-3-gaussian-random-variables} -#### 10.4.2 Minimum Acceleration {#10-dot-4-dot-2-minimum-acceleration} +### 13.2.4 Continuous Random Processes {#13-dot-2-dot-4-continuous-random-processes} -#### 10.4.3 Frequency Weighted Objectives {#10-dot-4-dot-3-frequency-weighted-objectives} +### 13.2.5 Joint Density Functions and Stationarity {#13-dot-2-dot-5-joint-density-functions-and-stationarity} -### 10.5 Application to Scan Generation {#10-dot-5-application-to-scan-generation} +### 13.2.6 Correlation Functions {#13-dot-2-dot-6-correlation-functions} -#### 10.5.1 Choosing β and K {#10-dot-5-dot-1-choosing-β-and-k} +### 13.2.7 Gaussian Random Processes {#13-dot-2-dot-7-gaussian-random-processes} -#### 10.5.2 Improving Feedback and Feedforward Controllers {#10-dot-5-dot-2-improving-feedback-and-feedforward-controllers} +### 13.2.8 Power Spectral Density {#13-dot-2-dot-8-power-spectral-density} -### 10.6 Comparison to Other Techniques {#10-dot-6-comparison-to-other-techniques} +### 13.2.9 Filtered Random Processes {#13-dot-2-dot-9-filtered-random-processes} -### 10.7 Experimental Application {#10-dot-7-experimental-application} +### 13.2.10 White Noise {#13-dot-2-dot-10-white-noise} -### 10.8 Chapter Summary {#10-dot-8-chapter-summary} +### 13.2.11 Spectral Density in V/sqrtHz {#13-dot-2-dot-11-spectral-density-in-v-sqrthz} -### References {#references} +### 13.2.12 Single- and Double-Sided Spectra {#13-dot-2-dot-12-single-and-double-sided-spectra} -## Hysteresis Modeling and Control {#hysteresis-modeling-and-control} +## 13.3 Resolution and Noise {#13-dot-3-resolution-and-noise} -### 11.1 Introduction {#11-dot-1-introduction} +## 13.4 Sources of Nanopositioning Noise {#13-dot-4-sources-of-nanopositioning-noise} -### 11.2 Modeling Hysteresis {#11-dot-2-modeling-hysteresis} +### 13.4.1 Sensor Noise {#13-dot-4-dot-1-sensor-noise} -#### 11.2.1 Simple Polynomial Model {#11-dot-2-dot-1-simple-polynomial-model} +### 13.4.2 External Noise {#13-dot-4-dot-2-external-noise} -#### 11.2.2 Maxwell Slip Model {#11-dot-2-dot-2-maxwell-slip-model} +### 13.4.3 Amplifier Noise {#13-dot-4-dot-3-amplifier-noise} -#### 11.2.3 Duhem Model {#11-dot-2-dot-3-duhem-model} +## 13.5 Closed-Loop Position Noise {#13-dot-5-closed-loop-position-noise} -#### 11.2.4 Preisach Model {#11-dot-2-dot-4-preisach-model} +### 13.5.1 Noise Sensitivity Functions {#13-dot-5-dot-1-noise-sensitivity-functions} -#### 11.2.5 Classical Prandlt-Ishlinksii Model {#11-dot-2-dot-5-classical-prandlt-ishlinksii-model} +### 13.5.2 Closed-Loop Position Noise Spectral Density {#13-dot-5-dot-2-closed-loop-position-noise-spectral-density} -### 11.3 Feedforward Hysteresis Compensation {#11-dot-3-feedforward-hysteresis-compensation} +### 13.5.3 Closed-Loop Noise Approximations with Integral Control {#13-dot-5-dot-3-closed-loop-noise-approximations-with-integral-control} -#### 11.3.1 Feedforward Control Using the Presiach Model {#11-dot-3-dot-1-feedforward-control-using-the-presiach-model} +### 13.5.4 Closed-Loop Position Noise Variance {#13-dot-5-dot-4-closed-loop-position-noise-variance} -#### 11.3.2 Feedforward Control Using the Prandlt-Ishlinksii Model {#11-dot-3-dot-2-feedforward-control-using-the-prandlt-ishlinksii-model} +### 13.5.5 A Note on Units {#13-dot-5-dot-5-a-note-on-units} -### 11.4 Chapter Summary {#11-dot-4-chapter-summary} +## 13.6 Simulation Examples {#13-dot-6-simulation-examples} -### References {#references} +### 13.6.1 Integral Controller Noise Simulation {#13-dot-6-dot-1-integral-controller-noise-simulation} -## Charge Drives {#charge-drives} +### 13.6.2 Noise Simulation with Inverse Model Controller {#13-dot-6-dot-2-noise-simulation-with-inverse-model-controller} -### 12.1 Introduction {#12-dot-1-introduction} +### 13.6.3 Feedback Versus Feedforward Control {#13-dot-6-dot-3-feedback-versus-feedforward-control} -### 12.2 Charge Drives {#12-dot-2-charge-drives} +## 13.7 Practical Frequency Domain Noise Measurements {#13-dot-7-practical-frequency-domain-noise-measurements} -### 12.3 Application to Piezoelectric Stack Nanopositioners {#12-dot-3-application-to-piezoelectric-stack-nanopositioners} +### 13.7.1 Preamplification {#13-dot-7-dot-1-preamplification} -### 12.4 Application to Piezoelectric Tube Nanopositioners {#12-dot-4-application-to-piezoelectric-tube-nanopositioners} +### 13.7.2 Spectrum Estimation {#13-dot-7-dot-2-spectrum-estimation} -### 12.5 Alternative Electrode Configurations {#12-dot-5-alternative-electrode-configurations} +### 13.7.3 Direct Measurement of Position Noise {#13-dot-7-dot-3-direct-measurement-of-position-noise} -#### 12.5.1 Grounded Internal Electrode {#12-dot-5-dot-1-grounded-internal-electrode} +### 13.7.4 Measurement of the External Disturbance {#13-dot-7-dot-4-measurement-of-the-external-disturbance} -#### 12.5.2 Quartered Internal Electrode {#12-dot-5-dot-2-quartered-internal-electrode} +## 13.8 Experimental Demonstration {#13-dot-8-experimental-demonstration} -### 12.6 Charge Versus Voltage {#12-dot-6-charge-versus-voltage} +## 13.9 Time-Domain Noise Measurements {#13-dot-9-time-domain-noise-measurements} -#### 12.6.1 Advantages {#12-dot-6-dot-1-advantages} +### 13.9.1 Total Integrated Noise {#13-dot-9-dot-1-total-integrated-noise} -#### 12.6.2 Disadvantages {#12-dot-6-dot-2-disadvantages} +### 13.9.2 Estimating the Position Noise {#13-dot-9-dot-2-estimating-the-position-noise} -### 12.7 Impact on Closed-Loop Control {#12-dot-7-impact-on-closed-loop-control} +### 13.9.3 Practical Considerations {#13-dot-9-dot-3-practical-considerations} -### 12.8 Chapter Summary {#12-dot-8-chapter-summary} +### 13.9.4 Experimental Demonstration {#13-dot-9-dot-4-experimental-demonstration} -### References {#references} +## 13.10 A Simple Method for Measuring the Resolution of Nanopositioning Systems {#13-dot-10-a-simple-method-for-measuring-the-resolution-of-nanopositioning-systems} -## Noise in Nanopositioning Systems {#noise-in-nanopositioning-systems} +## 13.11 Techniques for Improving Resolution {#13-dot-11-techniques-for-improving-resolution} -### 13.1 Introduction {#13-dot-1-introduction} +## 13.12 Chapter Summary {#13-dot-12-chapter-summary} -### 13.2 Review of Random Processes {#13-dot-2-review-of-random-processes} - - -#### 13.2.1 Probability Distributions {#13-dot-2-dot-1-probability-distributions} - - -#### 13.2.2 Expected Value, Moments, Variance, and RMS {#13-dot-2-dot-2-expected-value-moments-variance-and-rms} - - -#### 13.2.3 Gaussian Random Variables {#13-dot-2-dot-3-gaussian-random-variables} - - -#### 13.2.4 Continuous Random Processes {#13-dot-2-dot-4-continuous-random-processes} - - -#### 13.2.5 Joint Density Functions and Stationarity {#13-dot-2-dot-5-joint-density-functions-and-stationarity} - - -#### 13.2.6 Correlation Functions {#13-dot-2-dot-6-correlation-functions} - - -#### 13.2.7 Gaussian Random Processes {#13-dot-2-dot-7-gaussian-random-processes} - - -#### 13.2.8 Power Spectral Density {#13-dot-2-dot-8-power-spectral-density} - - -#### 13.2.9 Filtered Random Processes {#13-dot-2-dot-9-filtered-random-processes} - - -#### 13.2.10 White Noise {#13-dot-2-dot-10-white-noise} - - -#### 13.2.11 Spectral Density in V/sqrtHz {#13-dot-2-dot-11-spectral-density-in-v-sqrthz} - - -#### 13.2.12 Single- and Double-Sided Spectra {#13-dot-2-dot-12-single-and-double-sided-spectra} - - -### 13.3 Resolution and Noise {#13-dot-3-resolution-and-noise} - - -### 13.4 Sources of Nanopositioning Noise {#13-dot-4-sources-of-nanopositioning-noise} - - -#### 13.4.1 Sensor Noise {#13-dot-4-dot-1-sensor-noise} - - -#### 13.4.2 External Noise {#13-dot-4-dot-2-external-noise} - - -#### 13.4.3 Amplifier Noise {#13-dot-4-dot-3-amplifier-noise} - - -### 13.5 Closed-Loop Position Noise {#13-dot-5-closed-loop-position-noise} - - -#### 13.5.1 Noise Sensitivity Functions {#13-dot-5-dot-1-noise-sensitivity-functions} - - -#### 13.5.2 Closed-Loop Position Noise Spectral Density {#13-dot-5-dot-2-closed-loop-position-noise-spectral-density} - - -#### 13.5.3 Closed-Loop Noise Approximations with Integral Control {#13-dot-5-dot-3-closed-loop-noise-approximations-with-integral-control} - - -#### 13.5.4 Closed-Loop Position Noise Variance {#13-dot-5-dot-4-closed-loop-position-noise-variance} - - -#### 13.5.5 A Note on Units {#13-dot-5-dot-5-a-note-on-units} - - -### 13.6 Simulation Examples {#13-dot-6-simulation-examples} - - -#### 13.6.1 Integral Controller Noise Simulation {#13-dot-6-dot-1-integral-controller-noise-simulation} - - -#### 13.6.2 Noise Simulation with Inverse Model Controller {#13-dot-6-dot-2-noise-simulation-with-inverse-model-controller} - - -#### 13.6.3 Feedback Versus Feedforward Control {#13-dot-6-dot-3-feedback-versus-feedforward-control} - - -### 13.7 Practical Frequency Domain Noise Measurements {#13-dot-7-practical-frequency-domain-noise-measurements} - - -#### 13.7.1 Preamplification {#13-dot-7-dot-1-preamplification} - - -#### 13.7.2 Spectrum Estimation {#13-dot-7-dot-2-spectrum-estimation} - - -#### 13.7.3 Direct Measurement of Position Noise {#13-dot-7-dot-3-direct-measurement-of-position-noise} - - -#### 13.7.4 Measurement of the External Disturbance {#13-dot-7-dot-4-measurement-of-the-external-disturbance} - - -### 13.8 Experimental Demonstration {#13-dot-8-experimental-demonstration} - - -### 13.9 Time-Domain Noise Measurements {#13-dot-9-time-domain-noise-measurements} - - -#### 13.9.1 Total Integrated Noise {#13-dot-9-dot-1-total-integrated-noise} - - -#### 13.9.2 Estimating the Position Noise {#13-dot-9-dot-2-estimating-the-position-noise} - - -#### 13.9.3 Practical Considerations {#13-dot-9-dot-3-practical-considerations} - - -#### 13.9.4 Experimental Demonstration {#13-dot-9-dot-4-experimental-demonstration} - - -### 13.10 A Simple Method for Measuring the Resolution of Nanopositioning Systems {#13-dot-10-a-simple-method-for-measuring-the-resolution-of-nanopositioning-systems} - - -### 13.11 Techniques for Improving Resolution {#13-dot-11-techniques-for-improving-resolution} - - -### 13.12 Chapter Summary {#13-dot-12-chapter-summary} - - -### References {#references} +## References {#references} ## Electrical Considerations {#electrical-considerations} @@ -783,11 +728,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](#org1b7a832) where a voltage source is connected to a piezoelectric actuator. +Consider the electrical circuit shown in Figure [1](#orgb084203) 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 +856,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/leach14_fundam_princ_engin_nanom.md b/content/book/leach14_fundam_princ_engin_nanom.md index 50468f9..3227f76 100644 --- a/content/book/leach14_fundam_princ_engin_nanom.md +++ b/content/book/leach14_fundam_princ_engin_nanom.md @@ -2,14 +2,14 @@ title = "Fundamental principles of engineering nanometrology" author = ["Thomas Dehaeze"] keywords = ["Metrology"] -draft = true +draft = false +++ Tags -: [Metrology]({{< relref "metrology" >}}) +: [Metrology]({{}}) Reference -: ([Leach 2014](#org284df16)) +: ([Leach 2014](#org27b4df3)) Author(s) : Leach, R. @@ -91,4 +91,4 @@ This type of angular interferometer is used to measure small angles (less than \ ## Bibliography {#bibliography} -Leach, Richard. 2014. _Fundamental Principles of Engineering Nanometrology_. Elsevier. . +Leach, Richard. 2014. _Fundamental Principles of Engineering Nanometrology_. Elsevier. . diff --git a/content/inproceedings/heertjes20_contr.md b/content/inproceedings/heertjes20_contr.md index a0b16a2..e80c0a7 100644 --- a/content/inproceedings/heertjes20_contr.md +++ b/content/inproceedings/heertjes20_contr.md @@ -1,7 +1,7 @@ +++ title = "Control of wafer scanners: methods and developments" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags @@ -9,7 +9,7 @@ Tags Reference -: ([Heertjes et al. 2020](#org38a977c)) +: ([Heertjes et al. 2020](#org3f3475f)) Author(s) : Heertjes, Marcel Fran\ccois, Butler, H., Dirkx, N., van der Meulen, S., Ahlawat, R., O'Brien, K., Simonelli, J., … @@ -20,4 +20,4 @@ Year ## Bibliography {#bibliography} -Heertjes, Marcel François, Hans Butler, NJ Dirkx, SH van der Meulen, R Ahlawat, K O’Brien, J Simonelli, KT Teng, and Y Zhao. 2020. “Control of Wafer Scanners: Methods and Developments.” In _2020 American Control Conference (ACC)_, 3686–3703. IEEE. +Heertjes, Marcel François, Hans Butler, NJ Dirkx, SH van der Meulen, R Ahlawat, K O’Brien, J Simonelli, KT Teng, and Y Zhao. 2020. “Control of Wafer Scanners: Methods and Developments.” In _2020 American Control Conference (ACC)_, 3686–3703. IEEE. diff --git a/content/phdthesis/afzali-far16_vibrat_dynam_isotr_hexap_analy_studies.md b/content/phdthesis/afzali-far16_vibrat_dynam_isotr_hexap_analy_studies.md index f4a09a3..244646d 100644 --- a/content/phdthesis/afzali-far16_vibrat_dynam_isotr_hexap_analy_studies.md +++ b/content/phdthesis/afzali-far16_vibrat_dynam_isotr_hexap_analy_studies.md @@ -1,14 +1,14 @@ +++ title = "Vibrations and dynamic isotropy in hexapods-analytical studies" author = ["Thomas Dehaeze"] -draft = true +draft = false +++ Tags : [Stewart Platforms]({{}}), [Isotropy of Parallel Manipulator]({{}}) Reference -: ([Afzali-Far 2016](#orga93b30a)) +: ([Afzali-Far 2016](#orge2f1c73)) Author(s) : Afzali-Far, B. @@ -95,7 +95,7 @@ Dynamic isotropy for the Stewart platform leads to a series of restrictive condi When considering inertia of the struts, conditions are becoming more complex. - + {{< figure src="/ox-hugo/afzali-far16_isotropic_hexapod_example.png" caption="Figure 1: Architecture of the obtained dynamically isotropic hexapod" >}} @@ -115,25 +115,28 @@ where \\(\sigma I\\) is a scaled identity matrix. The isotropic constrain of the standard hexapod imposes special inertia of the top platform which may not be wanted in practice (\\(I\_{zz} = 4 I\_{yy} = 4 I\_{xx}\\)). A class of generalized Gough-Stewart platforms are proposed to eliminate the above constrains. -Figure [2](#orgfab85fb) shows a schematic of proposed generalized hexapod. +Figure [2](#org14fbbb3) shows a schematic of proposed generalized hexapod. - + {{< figure src="/ox-hugo/afzali-far16_proposed_generalized_hexapod.png" caption="Figure 2: Parametrization of the proposed generalized hexapod" >}} ## Conclusions {#conclusions} - +
+
+ The main findings of this dissertation are: - Comprehensive and fully parametric model of the hexapod for symmetric configurations are established both in the Cartesian and joint space. - Inertia of the struts are taken into account to refine the model. - A novel approach in order to obtain dynamically isotropic hexapods is proposed. -- A novel architecture of hexapod is introduced (Figure [2](#orgfab85fb)) which is dynamically isotropic for a wide range of inertia properties. -
+- A novel architecture of hexapod is introduced (Figure [2](#org14fbbb3)) which is dynamically isotropic for a wide range of inertia properties. + + ## Bibliography {#bibliography} -Afzali-Far, Behrouz. 2016. “Vibrations and Dynamic Isotropy in Hexapods-Analytical Studies.” Lund University. +Afzali-Far, Behrouz. 2016. “Vibrations and Dynamic Isotropy in Hexapods-Analytical Studies.” Lund University. diff --git a/content/phdthesis/bishop02_devel_precis_point_contr_vibrat.md b/content/phdthesis/bishop02_devel_precis_point_contr_vibrat.md new file mode 100644 index 0000000..b25723d --- /dev/null +++ b/content/phdthesis/bishop02_devel_precis_point_contr_vibrat.md @@ -0,0 +1,23 @@ ++++ +title = "Development of precision pointing controllers with and without vibration suppression for the NPS precision pointing hexapod" +author = ["Thomas Dehaeze"] +draft = true ++++ + +Tags +: + + +Reference +: ([Bishop Jr 2002](#org6e5ba62)) + +Author(s) +: Bishop Jr, R. M. + +Year +: 2002 + + +## Bibliography {#bibliography} + +Bishop Jr, Ronald M. 2002. “Development of Precision Pointing Controllers with and without Vibration Suppression for the NPS Precision Pointing Hexapod.” Naval Postgraduate School, Monterey, California. diff --git a/content/article/hanieh03_activ_stewar.md b/content/phdthesis/hanieh03_activ_stewar.md similarity index 51% rename from content/article/hanieh03_activ_stewar.md rename to content/phdthesis/hanieh03_activ_stewar.md index 6df7a65..3bf38c1 100644 --- a/content/article/hanieh03_activ_stewar.md +++ b/content/phdthesis/hanieh03_activ_stewar.md @@ -1,14 +1,14 @@ +++ title = "Active isolation and damping of vibrations via stewart platform" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags -: [Stewart Platforms]({{< relref "stewart_platforms" >}}), [Vibration Isolation]({{< relref "vibration_isolation" >}}), [Active Damping]({{< relref "active_damping" >}}) +: [Stewart Platforms]({{}}), [Vibration Isolation]({{}}), [Active Damping]({{}}) Reference -: ([Hanieh 2003](#org2d21f87)) +: ([Hanieh 2003](#org68b0cb0)) Author(s) : Hanieh, A. A. @@ -20,4 +20,4 @@ Year ## Bibliography {#bibliography} -Hanieh, Ahmed Abu. 2003. “Active Isolation and Damping of Vibrations via Stewart Platform.” Université Libre de Bruxelles, Brussels, Belgium. +Hanieh, Ahmed Abu. 2003. “Active Isolation and Damping of Vibrations via Stewart Platform.” Université Libre de Bruxelles, Brussels, Belgium. diff --git a/content/phdthesis/li01_simul_fault_vibrat_isolat_point.md b/content/phdthesis/li01_simul_fault_vibrat_isolat_point.md index dfd170c..71dd3f6 100644 --- a/content/phdthesis/li01_simul_fault_vibrat_isolat_point.md +++ b/content/phdthesis/li01_simul_fault_vibrat_isolat_point.md @@ -8,7 +8,7 @@ Tags : [Stewart Platforms]({{}}), [Vibration Isolation]({{}}), [Cubic Architecture]({{}}), [Flexible Joints]({{}}), [Multivariable Control]({{}}) Reference -: ([Li 2001](#org7277b25)) +: ([Li 2001](#orgc147fe0)) Author(s) : Li, X. @@ -22,15 +22,15 @@ Year ### Flexure Jointed Hexapods {#flexure-jointed-hexapods} -A general flexible jointed hexapod is shown in Figure [1](#org858f898). +A general flexible jointed hexapod is shown in Figure [1](#orge84e431). - + {{< figure src="/ox-hugo/li01_flexure_hexapod_model.png" caption="Figure 1: A flexure jointed hexapod. {P} is a cartesian coordinate frame located at, and rigidly attached to the payload's center of mass. {B} is the frame attached to the base, and {U} is a universal inertial frame of reference" >}} -Flexure jointed hexapods have been developed to meet two needs illustrated in Figure [2](#orgda07839). +Flexure jointed hexapods have been developed to meet two needs illustrated in Figure [2](#orga3eb26a). - + {{< figure src="/ox-hugo/li01_quet_dirty_box.png" caption="Figure 2: (left) Vibration machinery must be isolated from a precision bus. (right) A precision paylaod must be manipulated in the presence of base vibrations and/or exogenous forces." >}} @@ -41,12 +41,12 @@ On the other hand, the flexures add some complexity to the hexapod dynamics. Although the flexure joints do eliminate friction and backlash, they add spring dynamics and severely limit the workspace. Moreover, base and/or payload vibrations become significant contributors to the motion. -The University of Wyoming hexapods (example in Figure [3](#orgccc775c)) are: +The University of Wyoming hexapods (example in Figure [3](#org051e360)) are: - Cubic (mutually orthogonal) - Flexure Jointed - + {{< figure src="/ox-hugo/li01_stewart_platform.png" caption="Figure 3: Flexure jointed Stewart platform used for analysis and control" >}} @@ -85,7 +85,7 @@ J = \begin{bmatrix} \end{bmatrix} \end{equation} -where (see Figure [1](#org858f898)) \\(p\_i\\) denotes the payload attachment point of strut \\(i\\), the prescripts denote the frame of reference, and \\(\hat{u}\_i\\) denotes a unit vector along strut \\(i\\). +where (see Figure [1](#orge84e431)) \\(p\_i\\) denotes the payload attachment point of strut \\(i\\), the prescripts denote the frame of reference, and \\(\hat{u}\_i\\) denotes a unit vector along strut \\(i\\). To make the dynamic model as simple as possible, the origin of {P} is located at the payload's center of mass. Thus all \\({}^Pp\_i\\) are found with respect to the center of mass. @@ -94,43 +94,96 @@ Thus all \\({}^Pp\_i\\) are found with respect to the center of mass. The dynamics of a flexure jointed hexapod can be written in joint space: -\begin{equation} +\begin{equation} \label{eq:hexapod\_eq\_motion} \begin{split} -& \left( J^{-T} {}^B\_PR^P M\_x {}^B\_PR^T J^{-1} + M\_s \right) \ddot{l} + B \dot{l} + K (l - l\_r) = \\\\\\ -&\quad f\_m - \left( M\_s + J^{-T} {}^B\_PR^P M\_x {}^U\_PR^T J\_c J\_b^{-1} \right) \ddot{q}\_u + J^{-T} {}^U\_BR\_T(\mathcal{F}\_e + \mathcal{G} + \mathcal{C}) +& \left( J^{-T} \cdot {}^B\_PR \cdot {}^PM\_x \cdot {}^B\_PR^T \cdot J^{-1} + M\_s \right) \ddot{l} + B \dot{l} + K (l - l\_r) = \\\\\\ +&\quad f\_m - \left( M\_s + J^{-T} \cdot {}^B\_PR \cdot {}^PM\_x \cdot {}^U\_PR^T \cdot J\_c \cdot J\_b^{-1} \right) \ddot{q}\_u + J^{-T} \cdot {}^U\_BR^T(\mathcal{F}\_e + \mathcal{G} + \mathcal{C}) \end{split} \end{equation} +where: -### Test {#test} +- \\({}^PM\_x\\) is the 6x6 mass/inertia matrix of the payload, found with respect to the payload frame {P}, whose origin is at the hexapod payload's center of mass +- \\({}^U\_BR\\) is the 6x6 rotation matrix from the base frame {B} to the inertial frame of reference {U} (it consists of two identical 3x3 rotation matrices forming a block diagonal 6x6 matrix). + Similarly, \\({}^B\_PR\\) is the rotation matrix from the payload frame to the base frame, and \\({}^U\_PR = {}^U\_BR {}^B\_PR\\) +- \\(J\\) is the 6x6 Jacobian matrix relating payload cartesian movements to strut length changes +- \\(M\_s\\) is a diagonal 6x6 matrix containing the moving mass of each strut +- \\(l\\) is the 6x1 vector of strut lengths +- \\(B\\) and \\(K\\) are 6x6 diagonal matrices containing the damping and stiffness, respectively, of each strut +- \\(l\_r\\) is the constant vector of relaxed strut lengths +- \\(f\_m\\) is the vector of strut motor force +- \\(J\_c\\) and \\(J\_b\\) are 6x6 Jacobian matrices capturing base motion +- \\(\ddot{q}\_u\\) is a 6x1 vector of base acceleration along each strut +- \\(\mathcal{F}\_r\\) is a vector of payload exogenous generalized forces +- \\(\mathcal{C}\\) is a vector containing all the Coriolis and centripetal terms +- \\(\mathcal{G}\\) is a vector containing all gravity terms -**Jacobian Analysis**: -\\[ \delta \mathcal{L} = J \delta \mathcal{X} \\] -The origin of \\(\\{P\\}\\) is taken as the center of mass of the payload. -**Decoupling**: -If we refine the (force) inputs and (displacement) outputs as shown in Figure [4](#org7721136) or in Figure [5](#orgdc42940), we obtain a decoupled plant provided that: +#### Decoupling {#decoupling} + +Two decoupling algorithms are proposed by combining static input-output transformations with hexapod geometric design. + +Define a new input and a new output: + +\begin{equation} +u\_1 = J^T f\_m, \quad y = J^{-1} (l - l\_r) +\end{equation} + +Equation \eqref{eq:hexapod_eq_motion} can be rewritten as: + +\begin{equation} \label{eq:hexapod\_eq\_motion\_decoup\_1} +\begin{split} +& \left( {}^B\_PR \cdot {}^PM\_x \cdot {}^B\_PR^T + J^T \cdot M\_s \cdot J \right) \cdot \ddot{y} + J^T \cdot B J \dot{y} + J^T \cdot K \cdot J y = \\\\\\ +&\quad u\_1 - \left( J^T \cdot M\_s + {}^B\_PR \cdot {}^PM\_x \cdot {}^U\_PR^T \cdot J\_c \cdot J\_b^{-1} \right) \ddot{q}\_u + {}^U\_BR^T\mathcal{F}\_e +\end{split} +\end{equation} + +If the hexapod is designed such that the payload mass/inertia matrix written in the base frame (\\(^BM\_x = {}^B\_PR \cdot {}^PM\_x \cdot {}^B\_PR\_T\\)) and \\(J^T J\\) are diagonal, the dynamics from \\(u\_1\\) to \\(y\\) are decoupled (Figure [4](#org8deb4db)). + + + +{{< figure src="/ox-hugo/li01_decoupling_conf.png" caption="Figure 4: Decoupling the dynamics of the Stewart Platform using the Jacobians" >}} + +Alternatively, a new set of inputs and outputs can be defined: + +\begin{equation} +u\_2 = J^{-1} f\_m, \quad y = J^{-1} (l - l\_r) +\end{equation} + +And another decoupled plant is found (Figure [5](#org7a23a21)): + +\begin{equation} \label{eq:hexapod\_eq\_motion\_decoup\_2} +\begin{split} +& \left( J^{-1} \cdot J^{-T} \cdot {}^BM\_x + M\_s \right) \cdot \ddot{y} + B \dot{y} + K y = \\\\\\ +&\quad u\_2 - J^{-1} \cdot J^{-T} \left( J^T \cdot M\_s + {}^B\_PR \cdot {}^PM\_x \cdot {}^U\_PR^T \cdot J\_c \cdot J\_b^{-1} \right) \ddot{q}\_u + {}^U\_BR^T\mathcal{F}\_e +\end{split} +\end{equation} + + + +{{< figure src="/ox-hugo/li01_decoupling_conf_bis.png" caption="Figure 5: Decoupling the dynamics of the Stewart Platform using the Jacobians" >}} + +
+
+ +These decoupling algorithms have two constraints: 1. the payload mass/inertia matrix must be diagonal (the CoM is coincident with the origin of frame \\(\\{P\\}\\)) 2. the geometry of the hexapod and the attachment of the payload to the hexapod must be carefully chosen -> For instance, if the hexapod has a mutually orthogonal geometry (cubic configuration), the payload's center of mass must coincide with the center of the cube formed by the orthogonal struts. +For instance, if the hexapod has a mutually orthogonal geometry (cubic configuration), the payload's center of mass must coincide with the center of the cube formed by the orthogonal struts. - - -{{< figure src="/ox-hugo/li01_decoupling_conf.png" caption="Figure 4: Decoupling the dynamics of the Stewart Platform using the Jacobians" >}} - - - -{{< figure src="/ox-hugo/li01_decoupling_conf_bis.png" caption="Figure 5: Decoupling the dynamics of the Stewart Platform using the Jacobians" >}} +
## Simultaneous Vibration Isolation and Pointing Control {#simultaneous-vibration-isolation-and-pointing-control} -Basic idea: +Many applications require simultaneous vibration isolation and precision pointing. -- acceleration feedback is used to provide high-frequency vibration isolation -- cartesian pointing feedback can be used to provide low-frequency pointing +The basic idea to achieve such objective is to use: + +- acceleration feedback to provide high-frequency vibration isolation +- cartesian pointing feedback to provide low-frequency pointing The compensation is divided in frequency because: @@ -139,115 +192,158 @@ The compensation is divided in frequency because: The control bandwidth is divided as follows: -- low-frequency disturbances as attenuated and tracking is accomplished by feedback from low bandwidth pointing sensors +- low-frequency disturbances are attenuated and tracking is accomplished by feedback from low bandwidth pointing sensors - mid-frequency disturbances are attenuated by feedback from band-pass sensors like accelerometer or load cells - high-frequency disturbances are attenuated by passive isolation techniques ### Vibration Isolation {#vibration-isolation} -The system is decoupled into six independent SISO subsystems using the architecture shown in Figure [6](#org0dd19dc). +The system is decoupled into six independent SISO subsystems using the architecture shown in Figure [6](#org0dc1d11). - + -{{< figure src="/ox-hugo/li01_vibration_isolation_control.png" caption="Figure 6: Figure caption" >}} +{{< figure src="/ox-hugo/li01_vibration_isolation_control.png" caption="Figure 6: Vibration isolation control strategy" >}} -One of the subsystem plant transfer function is shown in Figure [6](#org0dd19dc) +One of the subsystem plant transfer function is shown in Figure [6](#org0dc1d11) - + {{< figure src="/ox-hugo/li01_vibration_control_plant.png" caption="Figure 7: Plant transfer function of one of the SISO subsystem for Vibration Control" >}} Each compensator is designed using simple loop-shaping techniques. +A typical compensator consists of the following elements: -The unity control bandwidth of the isolation loop is designed to be from **5Hz to 50Hz**. +- first order lag-lead filter to provide adequate phase margin a the low frequency crossover +- a second order lag-lead filter to increase the gain between crossovers and provide adequate phase margin at the high frequency crossover +- a second order notch filter to cancel the mode at 150Hz +- a second order low pass filter to provide steep roll-off and gain stabilize the plant at high frequency +- a first order high pass filter to eliminate DC signals -> Despite a reasonably good match between the modeled and the measured transfer functions, the model based decoupling algorithm does not produce the expected decoupling. -> Only about 20 dB separation is achieve between the diagonal and off-diagonal responses. +The unity control bandwidth of the isolation loop is designed to be from **5Hz to 50Hz**, so the vibration isolation loop works as a band-pass filter. + +
+
+ +Despite a reasonably good match between the modeled and the measured transfer functions, the model based decoupling algorithm does not produce the expected decoupling. +Only about 20 dB separation is achieve between the diagonal and off-diagonal responses. + +
+ +
+
+ +Severe phase delay exists in the actual transfer function. +This is due to the limited sample frequency and sensor bandwidth limitation. + +The zero at around 130Hz is non-minimum phase which limits the control bandwidth. +The reason is not explained. + +
-### Pointing Control {#pointing-control} +### Pointing Control Techniques {#pointing-control-techniques} -A block diagram of the pointing control system is shown in Figure [8](#orgb338488). +A block diagram of the pointing control system is shown in Figure [8](#orgec13571). - + {{< figure src="/ox-hugo/li01_pointing_control.png" caption="Figure 8: Figure caption" >}} The plant is decoupled into two independent SISO subsystems. -The compensators are design with inverse-dynamics methods. +The decoupling matrix consists of the columns of \\(J\\) corresponding to the pointing DoFs. + +Figure [9](#org23ec3f5) shows the measured transfer function of the \\(\theta\_x\\) axis. + + + +{{< figure src="/ox-hugo/li01_transfer_function_angle.png" caption="Figure 9: Experimentally measured plant transfer function of \\(\theta\_x/\theta\_{x\_d}\\)" >}} + +A typical compensator consists of the following elements: + +- a first order low pass filter to increase the low frequency loop gain and provide a slope of -20dB/decade for the magnitude curve at the crossover +- two complex zeros with high \\(Q\\) to provide adequate phase margin at the crossover +- a pole after the zeros to decrease the excess gain caused by these zeros +- a second order notch filter to cancel the mode at 150Hz +- a second order low pass filter to provide steep roll off and gain stabilize the plant at high frequency The unity control bandwidth of the pointing loop is designed to be from **0Hz to 20Hz**. -A feedforward control is added as shown in Figure [9](#orgb372596). +A feedforward control is added as shown in Figure [10](#org68adfa5). +\\(C\_f\\) is the feedforward compensator which is a 2x2 diagonal matrix. +Ideally, the feedforward compensator is an invert of the plant dynamics. - + -{{< figure src="/ox-hugo/li01_feedforward_control.png" caption="Figure 9: Feedforward control" >}} +{{< figure src="/ox-hugo/li01_feedforward_control.png" caption="Figure 10: Feedforward control" >}} ### Simultaneous Control {#simultaneous-control} The simultaneous vibration isolation and pointing control is approached in two ways: -1. design and implement the vibration isolation control first, identify the pointing plant when the isolation loops are closed, then implement the pointing compensators -2. the reverse design order +1. **Closing the vibration isolation loop first**: Design and implement the vibration isolation control first, identify the pointing plant when the isolation loops are closed, then implement the pointing compensators. +2. **Closing the pointing loop first**: Reverse order. -Figure [10](#orgbafcf4b) shows a parallel control structure where \\(G\_1(s)\\) is the dynamics from input force to output strut length. +Figure [11](#orgedfc92b) shows a parallel control structure where \\(G\_1(s)\\) is the dynamics from input force to output strut length. - + -{{< figure src="/ox-hugo/li01_parallel_control.png" caption="Figure 10: A parallel scheme" >}} +{{< figure src="/ox-hugo/li01_parallel_control.png" caption="Figure 11: A parallel scheme" >}} -The transfer function matrix for the pointing loop after the vibration isolation is closed is still decoupled. The same happens when closing the pointing loop first and looking at the transfer function matrix of the vibration isolation. +
+
-The effect of the isolation loop on the pointing loop is large around the natural frequency of the plant as shown in Figure [11](#org2a20ab8). +The transfer function matrix for the pointing loop after the vibration isolation is closed is still decoupled. +The same happens when closing the pointing loop first and looking at the transfer function matrix of the vibration isolation. - +However, the interaction between loops may affect the transfer functions of the **first** closed loop, and thus affect its relative stability. -{{< figure src="/ox-hugo/li01_effect_isolation_loop_closed.png" caption="Figure 11: \\(\theta\_x/\theta\_{x\_d}\\) transfer function with the isolation loop closed (simulation)" >}} - -The effect of pointing control on the isolation plant has not much effect. - -> The interaction between loops may affect the transfer functions of the **first** closed loop, and thus affect its relative stability. +
The dynamic interaction effect: -- only happens in the unity bandwidth of the loop transmission of the first closed loop. -- affect the closed loop transmission of the loop first closed (see Figures [12](#orgc137ea3) and [13](#orgc06274a)) +- Only happens in the unity bandwidth of the loop transmission of the first closed loop. +- Affect the closed loop transmission of the loop first closed (see Figures [12](#orgfc5ad76) and [13](#org8dcf497)) -As shown in Figure [12](#orgc137ea3), the peak resonance of the pointing loop increase after the isolation loop is closed. +As shown in Figure [12](#orgfc5ad76), the peak resonance of the pointing loop increase after the isolation loop is closed. The resonances happen at both crossovers of the isolation loop (15Hz and 50Hz) and they may show of loss of robustness. - + {{< figure src="/ox-hugo/li01_closed_loop_pointing.png" caption="Figure 12: Closed-loop transfer functions \\(\theta\_y/\theta\_{y\_d}\\) of the pointing loop before and after the vibration isolation loop is closed" >}} -The same happens when first closing the vibration isolation loop and after the pointing loop (Figure [13](#orgc06274a)). +The same happens when first closing the vibration isolation loop and after the pointing loop (Figure [13](#org8dcf497)). The first peak resonance of the vibration isolation loop at 15Hz is increased when closing the pointing loop. - + {{< figure src="/ox-hugo/li01_closed_loop_vibration.png" caption="Figure 13: Closed-loop transfer functions of the vibration isolation loop before and after the pointing control loop is closed" >}} -> The isolation loop adds a second resonance peak at its high-frequency crossover in the pointing closed-loop transfer function, which may cause instability. -> Thus, it is recommended to design and implement the isolation control system first, and then identify the pointing plant with the isolation loop closed. +
+
+ +From the analysis above, it is hard to say which loop has more significant affect on the other loop, but the isolation loop adds a second resonance peak at its high frequency crossover in the pointing closed loop transfer function, which may cause instability. +Thus, it is recommended to design and implement the isolation control system first, and then identify the pointing plant with the isolation loop closed. + +
### Experimental results {#experimental-results} -Two hexapods are stacked (Figure [14](#org2a11277)): +Two hexapods are stacked (Figure [14](#org66cdd5c)): - the bottom hexapod is used to generate disturbances matching candidate applications - the top hexapod provide simultaneous vibration isolation and pointing control - + {{< figure src="/ox-hugo/li01_test_bench.png" caption="Figure 14: Stacked Hexapods" >}} -Using the vibration isolation control alone, no attenuation is achieved below 1Hz as shown in figure [15](#org5933a45). +First, the vibration isolation and pointing controls were implemented separately. +Using the vibration isolation control alone, no attenuation is achieved below 1Hz as shown in figure [15](#org3b66ca1). - + {{< figure src="/ox-hugo/li01_vibration_isolation_control_results.png" caption="Figure 15: Vibration isolation control: open-loop (solid) vs. closed-loop (dashed)" >}} @@ -256,15 +352,34 @@ The simultaneous control is of dual use: - it provide simultaneous pointing and isolation control - it can also be used to expand the bandwidth of the isolation control to low frequencies because the pointing loops suppress pointing errors due to both base vibrations and tracking -The results of simultaneous control is shown in Figure [16](#org996a848) where the bandwidth of the isolation control is expanded to very low frequency. +The results of simultaneous control is shown in Figure [16](#orgb25318f) where the bandwidth of the isolation control is expanded to very low frequency. - + {{< figure src="/ox-hugo/li01_simultaneous_control_results.png" caption="Figure 16: Simultaneous control: open-loop (solid) vs. closed-loop (dashed)" >}} +### Summary and Conclusion {#summary-and-conclusion} + +
+
+ +A parallel control scheme is proposed in this chapters. +This scheme is suitable for simultaneous vibration isolation and pointing control. +Part of this scheme involves closing one loop first, then re-identifying and designing the new control before closed the other loop. + +An investigation into the interaction between loops shows that the order of closing loops is not important. +However, only two channels need to be re-designed or adjusted for the pointing loop if the isolation loop is closed first. +Experiments show that this scheme takes advantage of the bandwidths of both pointing and vibration sensors, and provides vibration isolation and pointing controls over a broad band. + +
+ + ## Future research areas {#future-research-areas} +
+
+ Proposed future research areas include: - **Include base dynamics in the control**: @@ -286,8 +401,10 @@ Proposed future research areas include: - **LVDT** to provide differential position of the hexapod payload with respect to the base - **Geophones** to provide payload and base velocity information +
+ ## Bibliography {#bibliography} -Li, Xiaochun. 2001. “Simultaneous, Fault-Tolerant Vibration Isolation and Pointing Control of Flexure Jointed Hexapods.” University of Wyoming. +Li, Xiaochun. 2001. “Simultaneous, Fault-Tolerant Vibration Isolation and Pointing Control of Flexure Jointed Hexapods.” University of Wyoming. diff --git a/content/phdthesis/treichel17_model_robus_adapt_track_contr.md b/content/phdthesis/treichel17_model_robus_adapt_track_contr.md new file mode 100644 index 0000000..e45c2e1 --- /dev/null +++ b/content/phdthesis/treichel17_model_robus_adapt_track_contr.md @@ -0,0 +1,23 @@ ++++ +title = "Modeling and robust adaptive tracking control of a planar precision positioning system" +author = ["Thomas Dehaeze"] +draft = true ++++ + +Tags +: + + +Reference +: ([Treichel 2017](#org1662bdf)) + +Author(s) +: Treichel, K. + +Year +: 2017 + + +## Bibliography {#bibliography} + +Treichel, Kai. 2017. “Modeling and Robust Adaptive Tracking Control of a Planar Precision Positioning System.” Ilmenau University of Technology. diff --git a/content/phdthesis/wang07_dynam_model_exper_ident_activ.md b/content/phdthesis/wang07_dynam_model_exper_ident_activ.md new file mode 100644 index 0000000..da3b7e4 --- /dev/null +++ b/content/phdthesis/wang07_dynam_model_exper_ident_activ.md @@ -0,0 +1,23 @@ ++++ +title = "Dynamic modeling, experimental identification, and active vibration control design of a smart parallel manipulator." +author = ["Thomas Dehaeze"] +draft = true ++++ + +Tags +: + + +Reference +: ([Wang 2007](#org006aaaa)) + +Author(s) +: Wang, X. + +Year +: 2007 + + +## Bibliography {#bibliography} + +Wang, Xiaoyun. 2007. “Dynamic Modeling, Experimental Identification, and Active Vibration Control Design of a Smart Parallel Manipulator.” University of Toronto. diff --git a/content/article/zuo04_elemen_system_desig_activ_passiv_vibrat_isolat.md b/content/phdthesis/zuo04_elemen_system_desig_activ_passiv_vibrat_isolat.md similarity index 91% rename from content/article/zuo04_elemen_system_desig_activ_passiv_vibrat_isolat.md rename to content/phdthesis/zuo04_elemen_system_desig_activ_passiv_vibrat_isolat.md index 6919783..708d8ae 100644 --- a/content/article/zuo04_elemen_system_desig_activ_passiv_vibrat_isolat.md +++ b/content/phdthesis/zuo04_elemen_system_desig_activ_passiv_vibrat_isolat.md @@ -5,10 +5,10 @@ draft = false +++ Tags -: [Vibration Isolation]({{< relref "vibration_isolation" >}}) +: [Vibration Isolation]({{}}) Reference -: ([Zuo 2004](#orgf5a4502)) +: ([Zuo 2004](#org700ab89)) Author(s) : Zuo, L. @@ -40,19 +40,19 @@ Year > They found that coupling from flexible modes is much smaller than in soft active mounts in the load (force) feedback. > Note that reaction force actuators can also work with soft mounts or hard mounts. - + {{< figure src="/ox-hugo/zuo04_piezo_spring_series.png" caption="Figure 1: PZT actuator and spring in series" >}} - + {{< figure src="/ox-hugo/zuo04_voice_coil_spring_parallel.png" caption="Figure 2: Voice coil actuator and spring in parallel" >}} - + {{< figure src="/ox-hugo/zuo04_piezo_plant.png" caption="Figure 3: Transmission from PZT voltage to geophone output" >}} - + {{< figure src="/ox-hugo/zuo04_voice_coil_plant.png" caption="Figure 4: Transmission from voice coil voltage to geophone output" >}} @@ -60,4 +60,4 @@ Year ## Bibliography {#bibliography} -Zuo, Lei. 2004. “Element and System Design for Active and Passive Vibration Isolation.” Massachusetts Institute of Technology. +Zuo, Lei. 2004. “Element and System Design for Active and Passive Vibration Isolation.” Massachusetts Institute of Technology. diff --git a/content/techreport/merlet87_paral_manip.md b/content/techreport/merlet87_paral_manip.md index ca6832f..c065988 100644 --- a/content/techreport/merlet87_paral_manip.md +++ b/content/techreport/merlet87_paral_manip.md @@ -1,14 +1,14 @@ +++ title = "Parallel manipulators. part i: theory design, kinematics, dynamics and control" author = ["Thomas Dehaeze"] -draft = false +draft = true +++ Tags -: [Stewart Platforms](stewart_platforms.md) +: [Stewart Platforms]({{}}) Reference -: ([Merlet 1987](#org6a131ba)) +: ([Merlet 1987](#org0892e4b)) Author(s) : Merlet, J. @@ -20,4 +20,4 @@ Year ## Bibliography {#bibliography} -Merlet, Jean-Pierre. 1987. “Parallel Manipulators. Part I: Theory Design, Kinematics, Dynamics and Control.” INRIA. +Merlet, Jean-Pierre. 1987. “Parallel Manipulators. Part I: Theory Design, Kinematics, Dynamics and Control.” INRIA. diff --git a/content/zettels/acquisition_systems.md b/content/zettels/acquisition_systems.md index b8e5f2c..e89bb6a 100644 --- a/content/zettels/acquisition_systems.md +++ b/content/zettels/acquisition_systems.md @@ -2,10 +2,11 @@ title = "Acquisition Systems" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Analog to Digital Converters]({{< relref "analog_to_digital_converters" >}}) +: [Analog to Digital Converters]({{}}) ## Manufacturers {#manufacturers} diff --git a/content/zettels/active_isolation_platforms.md b/content/zettels/active_isolation_platforms.md index 257bf93..0e1a94a 100644 --- a/content/zettels/active_isolation_platforms.md +++ b/content/zettels/active_isolation_platforms.md @@ -2,10 +2,11 @@ title = "Active Isolation Platforms" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Vibration Isolation]({{< relref "vibration_isolation" >}}) +: [Vibration Isolation]({{}}) ## Manufacturers {#manufacturers} diff --git a/content/zettels/actuators.md b/content/zettels/actuators.md index b70e75d..51b2305 100644 --- a/content/zettels/actuators.md +++ b/content/zettels/actuators.md @@ -9,20 +9,20 @@ Tags Links to specific actuators: -- [Voice Coil Actuators]({{< relref "voice_coil_actuators" >}}) -- [Piezoelectric Actuators]({{< relref "piezoelectric_actuators" >}}) +- [Voice Coil Actuators]({{}}) +- [Piezoelectric Actuators]({{}}) ## How to choose the correct actuator for my application? {#how-to-choose-the-correct-actuator-for-my-application} For vibration isolation: -- In ([Ito and Schitter 2016](#orga71edd4)), the effect of the actuator stiffness on the attainable vibration isolation is studied ([Notes]({{< relref "ito16_compar_class_high_precis_actuat" >}})) +- In ([Ito and Schitter 2016](#orge96c061)), the effect of the actuator stiffness on the attainable vibration isolation is studied ([Notes]({{}})) ## Brush-less DC Motor {#brush-less-dc-motor} -- ([Yedamale 2003](#org0ac1a74)) +- ([Yedamale 2003](#org9fa946a)) @@ -30,6 +30,6 @@ For vibration isolation: ## Bibliography {#bibliography} -Ito, Shingo, and Georg Schitter. 2016. “Comparison and Classification of High-Precision Actuators Based on Stiffness Influencing Vibration Isolation.” _IEEE/ASME Transactions on Mechatronics_ 21 (2):1169–78. . +Ito, Shingo, and Georg Schitter. 2016. “Comparison and Classification of High-Precision Actuators Based on Stiffness Influencing Vibration Isolation.” _IEEE/ASME Transactions on Mechatronics_ 21 (2):1169–78. . -Yedamale, Padmaraja. 2003. “Brushless Dc (BLDC) Motor Fundamentals.” _Microchip Technology Inc_ 20:3–15. +Yedamale, Padmaraja. 2003. “Brushless Dc (BLDC) Motor Fundamentals.” _Microchip Technology Inc_ 20:3–15. diff --git a/content/zettels/analog_to_digital_converters.md b/content/zettels/analog_to_digital_converters.md index 8d90c3b..fc7eac4 100644 --- a/content/zettels/analog_to_digital_converters.md +++ b/content/zettels/analog_to_digital_converters.md @@ -3,17 +3,18 @@ title = "Analog to Digital Converters" author = ["Thomas Dehaeze"] keywords = ["electronics"] draft = false +category = "equipment" +++ Tags -: [Electronics]({{< relref "electronics" >}}) +: [Electronics]({{}}) ## Types of Analog to Digital Converters {#types-of-analog-to-digital-converters} -- Delta Sigma ([Baker 2011](#org60f0e22)) +- Delta Sigma ([Baker 2011](#orgbdb61af)) - Successive Approximation @@ -32,9 +33,9 @@ Let's suppose that the ADC is ideal and the only noise comes from the quantizati Interestingly, the noise amplitude is uniformly distributed. The quantization noise can take a value between \\(\pm q/2\\), and the probability density function is constant in this range (i.e., it’s a uniform distribution). -Since the integral of the probability density function is equal to one, its value will be \\(1/q\\) for \\(-q/2 < e < q/2\\) (Fig. [1](#orgee08810)). +Since the integral of the probability density function is equal to one, its value will be \\(1/q\\) for \\(-q/2 < e < q/2\\) (Fig. [1](#org4bd731c)). - + {{< figure src="/ox-hugo/probability_density_function_adc.png" caption="Figure 1: Probability density function \\(p(e)\\) of the ADC error \\(e\\)" >}} @@ -89,4 +90,4 @@ The quantization is: ## Bibliography {#bibliography} -Baker, Bonnie. 2011. “How Delta-Sigma Adcs Work, Part.” _Analog Applications_ 7. +Baker, Bonnie. 2011. “How Delta-Sigma Adcs Work, Part.” _Analog Applications_ 7. diff --git a/content/zettels/cables.md b/content/zettels/cables.md index 6ed14b4..2adbccc 100644 --- a/content/zettels/cables.md +++ b/content/zettels/cables.md @@ -2,10 +2,11 @@ title = "Cables" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Connectors]({{< relref "connectors" >}}) +: [Connectors]({{}}) ## Typical Cables {#typical-cables} diff --git a/content/zettels/capacitive_sensors.md b/content/zettels/capacitive_sensors.md index d1d785a..7f26477 100644 --- a/content/zettels/capacitive_sensors.md +++ b/content/zettels/capacitive_sensors.md @@ -2,10 +2,11 @@ title = "Capacitive Sensors" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Position Sensors]({{< relref "position_sensors" >}}) +: [Position Sensors]({{}}) ## Description of Capacitive Sensors {#description-of-capacitive-sensors} diff --git a/content/zettels/charge_amplifiers.md b/content/zettels/charge_amplifiers.md index 974b584..e84399f 100644 --- a/content/zettels/charge_amplifiers.md +++ b/content/zettels/charge_amplifiers.md @@ -2,10 +2,11 @@ title = "Charge Amplifiers" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Electronics]({{< relref "electronics" >}}) +: [Electronics]({{}}) ## Description {#description} @@ -17,19 +18,19 @@ This can be typically used to interface with piezoelectric sensors. ## Basic Circuit {#basic-circuit} -Two basic circuits of charge amplifiers are shown in Figure [1](#org7d016e2) (taken from ([Fleming 2010](#org467f88f))) and Figure [2](#orgb83f736) (taken from ([Schmidt, Schitter, and Rankers 2014](#org80f2485))) +Two basic circuits of charge amplifiers are shown in Figure [1](#org0d411fa) (taken from ([Fleming 2010](#org7834496))) and Figure [2](#org1c3e25d) (taken from ([Schmidt, Schitter, and Rankers 2014](#orgd26dd11))) - + {{< figure src="/ox-hugo/charge_amplifier_circuit.png" caption="Figure 1: Electrical model of a piezoelectric force sensor is shown in gray. The op-amp charge amplifier is shown on the right. The output voltage \\(V\_s\\) equal to \\(-q/C\_s\\)" >}} - + {{< figure src="/ox-hugo/charge_amplifier_circuit_bis.png" caption="Figure 2: A piezoelectric accelerometer with a charge amplifier as signal conditioning element" >}} The input impedance of the charge amplifier is very small (unlike when using a voltage amplifier). -The gain of the charge amplified (Figure [1](#org7d016e2)) is equal to: +The gain of the charge amplified (Figure [1](#org0d411fa)) is equal to: \\[ \frac{V\_s}{q} = \frac{-1}{C\_s} \\] @@ -50,6 +51,6 @@ The gain of the charge amplified (Figure [1](#org7d016e2)) is equal to: ## Bibliography {#bibliography} -Fleming, A.J. 2010. “Nanopositioning System with Force Feedback for High-Performance Tracking and Vibration Control.” _IEEE/ASME Transactions on Mechatronics_ 15 (3):433–47. . +Fleming, A.J. 2010. “Nanopositioning System with Force Feedback for High-Performance Tracking and Vibration Control.” _IEEE/ASME Transactions on Mechatronics_ 15 (3):433–47. . -Schmidt, R Munnig, Georg Schitter, and Adrian Rankers. 2014. _The Design of High Performance Mechatronics - 2nd Revised Edition_. Ios Press. +Schmidt, R Munnig, Georg Schitter, and Adrian Rankers. 2014. _The Design of High Performance Mechatronics - 2nd Revised Edition_. Ios Press. diff --git a/content/zettels/connectors.md b/content/zettels/connectors.md index ab90a03..f2d4551 100644 --- a/content/zettels/connectors.md +++ b/content/zettels/connectors.md @@ -2,10 +2,11 @@ title = "Connectors" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Cables]({{< relref "cables" >}}) +: [Cables]({{}}) ## Manufacturers {#manufacturers} @@ -19,8 +20,8 @@ Tags ## BNC {#bnc} -BNC connectors can have an impedance of 50Ohms or 75Ohms as shown in Figure [1](#orgd1b23d3). +BNC connectors can have an impedance of 50Ohms or 75Ohms as shown in Figure [1](#orgf757f74). - + {{< figure src="/ox-hugo/bnc_50_75_ohms.jpg" caption="Figure 1: 75Ohms and 50Ohms BNC connectors" >}} diff --git a/content/zettels/digital_to_analog_converters.md b/content/zettels/digital_to_analog_converters.md index fc3b78d..e840356 100644 --- a/content/zettels/digital_to_analog_converters.md +++ b/content/zettels/digital_to_analog_converters.md @@ -2,7 +2,8 @@ title = "Digital to Analog Converters" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Electronics]({{< relref "electronics" >}}) +: [Electronics]({{}}) diff --git a/content/zettels/eddy_current_sensors.md b/content/zettels/eddy_current_sensors.md index c2645aa..dff5d92 100644 --- a/content/zettels/eddy_current_sensors.md +++ b/content/zettels/eddy_current_sensors.md @@ -2,10 +2,11 @@ title = "Eddy Current Sensors" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Position Sensors]({{< relref "position_sensors" >}}) +: [Position Sensors]({{}}) ## Manufacturers {#manufacturers} diff --git a/content/zettels/encoders.md b/content/zettels/encoders.md index fbc0c29..d767048 100644 --- a/content/zettels/encoders.md +++ b/content/zettels/encoders.md @@ -2,10 +2,11 @@ title = "Encoders" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Position Sensors]({{< relref "position_sensors" >}}) +: [Position Sensors]({{}}) There are two main types of encoders: optical encoders, and magnetic encoders. diff --git a/content/zettels/flexible_joints.md b/content/zettels/flexible_joints.md index 41f2d68..7d88aea 100644 --- a/content/zettels/flexible_joints.md +++ b/content/zettels/flexible_joints.md @@ -12,33 +12,43 @@ Tags Books: -- ([Lobontiu 2002](#org0e711a7)) -- ([Henein 2003](#org4fb65e1)) -- ([Smith 2005](#orgbf46163)) -- ([Soemers 2011](#orgf482067)) -- ([Cosandier 2017](#orgf099485)) +- ([Lobontiu 2002](#orgb45af18)) +- ([Henein 2003](#org8ce4916)) +- ([Smith 2005](#orgccbed32)) +- ([Soemers 2011](#org772b663)) +- ([Cosandier 2017](#org7ebf41f)) ## Flexure Joints for Stewart Platforms: {#flexure-joints-for-stewart-platforms} -From ([Chen and McInroy 2000](#org14378b5)): +From ([Chen and McInroy 2000](#org64f8175)): > To avoid the extremely non-linear micro-dynamics of joint friction and backlash, these hexapods employ flexure joints. > A flexure joint bends material to achieve motion, rather than sliding of rolling across two surfaces. > This does eliminate friction and backlash, but adds spring dynamics and limits the workspace. +## Materials {#materials} + +- ([Smith 2000](#org299921c)) +- ([Lobontiu 2002](#orgb45af18)) +- ([Henein 2003](#org8ce4916)) +- ([Cosandier 2017](#org7ebf41f)) + + ## Bibliography {#bibliography} -Chen, Yixin, and J.E. McInroy. 2000. “Identification and Decoupling Control of Flexure Jointed Hexapods.” In _Proceedings 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No.00CH37065)_, nil. . +Chen, Yixin, and J.E. McInroy. 2000. “Identification and Decoupling Control of Flexure Jointed Hexapods.” In _Proceedings 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No.00CH37065)_, nil. . -Cosandier, Florent. 2017. _Flexure Mechanism Design_. Boca Raton, FL Lausanne, Switzerland: Distributed by CRC Press, 2017EOFL Press. +Cosandier, Florent. 2017. _Flexure Mechanism Design_. Boca Raton, FL Lausanne, Switzerland: Distributed by CRC Press, 2017EOFL Press. -Henein, Simon. 2003. _Conception Des Guidages Flexibles_. Lausanne, Suisse: Presses polytechniques et universitaires romandes. +Henein, Simon. 2003. _Conception Des Guidages Flexibles_. Lausanne, Suisse: Presses polytechniques et universitaires romandes. -Lobontiu, Nicolae. 2002. _Compliant Mechanisms: Design of Flexure Hinges_. CRC press. +Lobontiu, Nicolae. 2002. _Compliant Mechanisms: Design of Flexure Hinges_. CRC press. -Smith, Stuart T. 2005. _Foundations of Ultra-Precision Mechanism Design_. Vol. 2. CRC Press. +Smith, Stuart T. 2000. _Flexures: Elements of Elastic Mechanisms_. Crc Press. -Soemers, Herman. 2011. _Design Principles for Precision Mechanisms_. T-Pointprint. +———. 2005. _Foundations of Ultra-Precision Mechanism Design_. Vol. 2. CRC Press. + +Soemers, Herman. 2011. _Design Principles for Precision Mechanisms_. T-Pointprint. diff --git a/content/zettels/flexures.md b/content/zettels/flexures.md deleted file mode 100644 index 96a67e7..0000000 --- a/content/zettels/flexures.md +++ /dev/null @@ -1,31 +0,0 @@ -+++ -title = "Flexures" -author = ["Thomas Dehaeze"] -draft = false -+++ - -Tags -: [Flexible Joints]({{< relref "flexible_joints" >}}) - - -## Material Used {#material-used} - - -## Materials {#materials} - -- ([Smith 2000](#org903194d)) -- ([Lobontiu 2002](#org353b748)) -- ([Henein 2003](#org26cb408)) -- ([Cosandier 2017](#org684f025)) - - - -## Bibliography {#bibliography} - -Cosandier, Florent. 2017. _Flexure Mechanism Design_. Boca Raton, FL Lausanne, Switzerland: Distributed by CRC Press, 2017EOFL Press. - -Henein, Simon. 2003. _Conception Des Guidages Flexibles_. Lausanne, Suisse: Presses polytechniques et universitaires romandes. - -Lobontiu, Nicolae. 2002. _Compliant Mechanisms: Design of Flexure Hinges_. CRC press. - -Smith, Stuart T. 2000. _Flexures: Elements of Elastic Mechanisms_. Crc Press. diff --git a/content/zettels/force_sensors.md b/content/zettels/force_sensors.md index 227f0c7..02ffb81 100644 --- a/content/zettels/force_sensors.md +++ b/content/zettels/force_sensors.md @@ -2,10 +2,11 @@ title = "Force Sensors" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Signal Conditioner]({{< relref "signal_conditioner" >}}), [Modal Analysis]({{< relref "modal_analysis" >}}) +: [Signal Conditioner]({{}}), [Modal Analysis]({{}}) ## Technologies {#technologies} @@ -17,9 +18,9 @@ There are two main technique for force sensors: The choice between the two is usually based on whether the measurement is static (strain gauge) or dynamics (piezoelectric). -Main differences between the two are shown in Figure [1](#orgd4cde6e). +Main differences between the two are shown in Figure [1](#orgc9e9a88). - + {{< figure src="/ox-hugo/force_sensor_piezo_vs_strain_gauge.png" caption="Figure 1: Piezoelectric Force sensor VS Strain Gauge Force sensor" >}} @@ -29,7 +30,7 @@ Main differences between the two are shown in Figure [1](#orgd4cde6e). ### 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](#org6f75dec)) ([Notes]({{< relref "fleming10_nanop_system_with_force_feedb" >}})). +An analysis the dynamics and noise of a piezoelectric force sensor is done in ([Fleming 2010](#org024e377)) ([Notes]({{}})). ### Manufacturers {#manufacturers} @@ -45,7 +46,7 @@ An analysis the dynamics and noise of a piezoelectric force sensor is done in ([ ### Signal Conditioner {#signal-conditioner} -The voltage generated by the piezoelectric material generally needs to be amplified using a [Signal Conditioner]({{< relref "signal_conditioner" >}}). +The voltage generated by the piezoelectric material generally needs to be amplified using a [Signal Conditioner]({{}}). Either **charge** amplifiers or **voltage** amplifiers can be used. @@ -78,4 +79,4 @@ However, if a charge conditioner is used, the signal will be doubled. ## Bibliography {#bibliography} -Fleming, A.J. 2010. “Nanopositioning System with Force Feedback for High-Performance Tracking and Vibration Control.” _IEEE/ASME Transactions on Mechatronics_ 15 (3):433–47. . +Fleming, A.J. 2010. “Nanopositioning System with Force Feedback for High-Performance Tracking and Vibration Control.” _IEEE/ASME Transactions on Mechatronics_ 15 (3):433–47. . diff --git a/content/zettels/granite.md b/content/zettels/granite.md index 62dc55d..0580bf0 100644 --- a/content/zettels/granite.md +++ b/content/zettels/granite.md @@ -2,6 +2,7 @@ title = "Granite" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags diff --git a/content/zettels/inertial_sensors.md b/content/zettels/inertial_sensors.md index f709cfc..7aabba7 100644 --- a/content/zettels/inertial_sensors.md +++ b/content/zettels/inertial_sensors.md @@ -2,18 +2,19 @@ title = "Inertial Sensors" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Position Sensors]({{< relref "position_sensors" >}}) +: [Position Sensors]({{}}) ## Review of Absolute (inertial) Position Sensors {#review-of-absolute--inertial--position-sensors} -- Collette, C. et al., Review: inertial sensors for low-frequency seismic vibration measurement ([Collette, Janssens, Fernandez-Carmona, et al. 2012](#orga092f9a)) -- Collette, C. et al., Comparison of new absolute displacement sensors ([Collette, Janssens, Mokrani, et al. 2012](#orgef1075b)) +- Collette, C. et al., Review: inertial sensors for low-frequency seismic vibration measurement ([Collette, Janssens, Fernandez-Carmona, et al. 2012](#orgc1383e0)) +- Collette, C. et al., Comparison of new absolute displacement sensors ([Collette, Janssens, Mokrani, et al. 2012](#org7b301f5)) - + {{< 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" >}} @@ -35,7 +36,7 @@ Wireless Accelerometers - - + {{< figure src="/ox-hugo/inertial_sensors_characteristics_accelerometers.png" caption="Figure 2: Characteristics of commercially available accelerometers collette11_review" >}} @@ -52,7 +53,7 @@ Wireless Accelerometers | [Guralp](https://www.guralp.com/products/surface) | UK | | [Nanometric](https://www.nanometrics.ca/products/seismometers) | Canada | - + {{< figure src="/ox-hugo/inertial_sensors_characteristics_geophone.png" caption="Figure 3: Characteristics of commercially available geophones collette11_review" >}} @@ -60,6 +61,6 @@ Wireless Accelerometers ## Bibliography {#bibliography} -Collette, C., S. Janssens, P. Fernandez-Carmona, K. Artoos, M. Guinchard, C. Hauviller, and A. Preumont. 2012. “Review: Inertial Sensors for Low-Frequency Seismic Vibration Measurement.” _Bulletin of the Seismological Society of America_ 102 (4):1289–1300. . +Collette, C., S. Janssens, P. Fernandez-Carmona, K. Artoos, M. Guinchard, C. Hauviller, and A. Preumont. 2012. “Review: Inertial Sensors for Low-Frequency Seismic Vibration Measurement.” _Bulletin of the Seismological Society of America_ 102 (4):1289–1300. . -Collette, C, S Janssens, B Mokrani, L Fueyo-Roza, K Artoos, M Esposito, P Fernandez-Carmona, M Guinchard, and R Leuxe. 2012. “Comparison of New Absolute Displacement Sensors.” In _International Conference on Noise and Vibration Engineering (ISMA)_. +Collette, C, S Janssens, B Mokrani, L Fueyo-Roza, K Artoos, M Esposito, P Fernandez-Carmona, M Guinchard, and R Leuxe. 2012. “Comparison of New Absolute Displacement Sensors.” In _International Conference on Noise and Vibration Engineering (ISMA)_. diff --git a/content/zettels/instrumented_hammer.md b/content/zettels/instrumented_hammer.md index 7363d29..a03ee69 100644 --- a/content/zettels/instrumented_hammer.md +++ b/content/zettels/instrumented_hammer.md @@ -2,10 +2,11 @@ title = "Instrumented Hammer" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Modal Analysis]({{< relref "modal_analysis" >}}), [Force Sensors]({{< relref "force_sensors" >}}) +: [Modal Analysis]({{}}), [Force Sensors]({{}}) And instrumented hammer consist of a regular hammer with a force sensor fixed at its tip. diff --git a/content/zettels/interferometers.md b/content/zettels/interferometers.md index 74474eb..ac661ca 100644 --- a/content/zettels/interferometers.md +++ b/content/zettels/interferometers.md @@ -2,6 +2,7 @@ title = "Interferometers" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags @@ -24,12 +25,12 @@ Tags ## Reviews {#reviews} -([Ducourtieux 2018](#orgba5debb), [2018](#orgba5debb); [Bobroff 1993](#org9cfc0be), [1993](#org9cfc0be); [Thurner et al. 2015](#org9f4a3ed), [2015](#org9f4a3ed); [Loughridge and Abramovitch 2013](#org2c02ae6)) +([Ducourtieux 2018](#org538e4dc), [2018](#org538e4dc); [Bobroff 1993](#org9f4652e), [1993](#org9f4652e); [Thurner et al. 2015](#orgdcf4929), [2015](#orgdcf4929); [Loughridge and Abramovitch 2013](#orgd91ce9e)) ## Effect of Refractive Index - Environmental Units {#effect-of-refractive-index-environmental-units} -The measured distance is proportional to the refractive index of the air that depends on several quantities as shown in Table [1](#table--tab:index-air) (Taken from ([Thurner et al. 2015](#org9f4a3ed))). +The measured distance is proportional to the refractive index of the air that depends on several quantities as shown in Table [1](#table--tab:index-air) (Taken from ([Thurner et al. 2015](#orgdcf4929))).
@@ -64,16 +65,16 @@ Typical characteristics of commercial environmental units are shown in Table [2] ## Interferometer Precision {#interferometer-precision} -Figure [1](#org1406d51) shows the expected precision as a function of the measured distance due to change of refractive index of the air (taken from ([Jang and Kim 2017](#orgcfb1fbe))). +Figure [1](#org24527f3) shows the expected precision as a function of the measured distance due to change of refractive index of the air (taken from ([Jang and Kim 2017](#org0cf5512))). - + {{< figure src="/ox-hugo/position_sensor_interferometer_precision.png" caption="Figure 1: Expected precision of interferometer as a function of measured distance" >}} ## Sources of uncertainty {#sources-of-uncertainty} -Sources of error in laser interferometry are well described in ([Ducourtieux 2018](#orgba5debb)). +Sources of error in laser interferometry are well described in ([Ducourtieux 2018](#org538e4dc)). It includes: @@ -83,10 +84,10 @@ It includes: - Pressure: \\(K\_P \approx 0.27 ppm hPa^{-1}\\) - Humidity: \\(K\_{HR} \approx 0.01 ppm \% RH^{-1}\\) - These errors can partially be compensated using an environmental unit. -- Air turbulence (Figure [2](#org690599c)) +- Air turbulence (Figure [2](#org1d0f37d)) - Non linearity - + {{< figure src="/ox-hugo/interferometers_air_turbulence.png" caption="Figure 2: Effect of air turbulences on measurement stability" >}} @@ -94,12 +95,12 @@ It includes: ## Bibliography {#bibliography} -Bobroff, N. 1993. “Recent Advances in Displacement Measuring Interferometry.” _Measurement Science and Technology_ 4 (9):907–26. . +Bobroff, N. 1993. “Recent Advances in Displacement Measuring Interferometry.” _Measurement Science and Technology_ 4 (9):907–26. . -Ducourtieux, Sebastien. 2018. “Toward High Precision Position Control Using Laser Interferometry: Main Sources of Error.” . +Ducourtieux, Sebastien. 2018. “Toward High Precision Position Control Using Laser Interferometry: Main Sources of Error.” . -Jang, Yoon-Soo, and Seung-Woo Kim. 2017. “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–90. . +Jang, Yoon-Soo, and Seung-Woo Kim. 2017. “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–90. . -Loughridge, Russell, and Daniel Y. Abramovitch. 2013. “A Tutorial on Laser Interferometry for Precision Measurements.” In _2013 American Control Conference_, nil. . +Loughridge, Russell, and Daniel Y. Abramovitch. 2013. “A Tutorial on Laser Interferometry for Precision Measurements.” In _2013 American Control Conference_, nil. . -Thurner, Klaus, Francesca Paola Quacquarelli, Pierre-François Braun, Claudio Dal Savio, and Khaled Karrai. 2015. “Fiber-Based Distance Sensing Interferometry.” _Applied Optics_ 54 (10). Optical Society of America:3051–63. +Thurner, Klaus, Francesca Paola Quacquarelli, Pierre-François Braun, Claudio Dal Savio, and Khaled Karrai. 2015. “Fiber-Based Distance Sensing Interferometry.” _Applied Optics_ 54 (10). Optical Society of America:3051–63. diff --git a/content/zettels/linear_guides.md b/content/zettels/linear_guides.md index 1c272c1..69ffa5e 100644 --- a/content/zettels/linear_guides.md +++ b/content/zettels/linear_guides.md @@ -2,6 +2,7 @@ title = "Linear Guides" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags @@ -14,5 +15,3 @@ Tags |----------------------------------------------------------------------------------------------------------------------------|---------| | [Bosch Rexroth](https://www.boschrexroth.com/en/xc/products/product-groups/linear-motion-technology/topics/linear-guides/) | Germany | | [THK](https://www.thk.com/?q=eng/node/231) | Japan | - -<./biblio/references.bib> diff --git a/content/zettels/linear_variable_differential_transformers.md b/content/zettels/linear_variable_differential_transformers.md index c53ce5b..cfdcdbe 100644 --- a/content/zettels/linear_variable_differential_transformers.md +++ b/content/zettels/linear_variable_differential_transformers.md @@ -2,10 +2,11 @@ title = "Linear variable differential transformers" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Position Sensors]({{< relref "position_sensors" >}}) +: [Position Sensors]({{}}) ## Manufacturers {#manufacturers} diff --git a/content/zettels/parallel_manipulators.md b/content/zettels/parallel_manipulators.md new file mode 100644 index 0000000..74114c5 --- /dev/null +++ b/content/zettels/parallel_manipulators.md @@ -0,0 +1,8 @@ ++++ +title = "Parallel Manipulators" +author = ["Thomas Dehaeze"] +draft = false ++++ + +Tags +: diff --git a/content/zettels/piezoelectric_actuators.md b/content/zettels/piezoelectric_actuators.md index 26a61c6..480f486 100644 --- a/content/zettels/piezoelectric_actuators.md +++ b/content/zettels/piezoelectric_actuators.md @@ -2,10 +2,11 @@ title = "Piezoelectric Actuators" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Actuators](actuators.md), [Voltage Amplifier](voltage_amplifier.md) +: [Actuators]({{}}), [Voltage Amplifier]({{}}) ## Piezoelectric Stack Actuators {#piezoelectric-stack-actuators} @@ -32,7 +33,7 @@ Tags ### Model {#model} -A model of a multi-layer monolithic piezoelectric stack actuator is described in ([Fleming 2010](#orgc916f93)) ([Notes](fleming10_nanop_system_with_force_feedb.md)). +A model of a multi-layer monolithic piezoelectric stack actuator is described in ([Fleming 2010](#orgd563065)) ([Notes]({{}})). Basically, it can be represented by a spring \\(k\_a\\) with the force source \\(F\_a\\) in parallel. @@ -56,14 +57,14 @@ Some manufacturers propose "raw" plate actuators that can be used as actuator / ## Mechanically Amplified Piezoelectric actuators {#mechanically-amplified-piezoelectric-actuators} -The Amplified Piezo Actuators principle is presented in ([Claeyssen et al. 2007](#orgaaabf8d)): +The Amplified Piezo Actuators principle is presented in ([Claeyssen et al. 2007](#orgb463c4c)): > 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 and Mangeot 2016](#org8ca201e)). +A model of an amplified piezoelectric actuator is described in ([Lucinskis and Mangeot 2016](#org2bf81f0)). - + {{< figure src="/ox-hugo/ling16_topology_piezo_mechanism_types.png" caption="Figure 1: Topology of several types of compliant mechanisms ling16_enhan_mathem_model_displ_amplif" >}} @@ -141,9 +142,9 @@ with: ### Resolution {#resolution} -The resolution is limited by the noise in the [Voltage Amplifier](voltage_amplifier.md). +The resolution is limited by the noise in the [Voltage Amplifier]({{}}). -Typical [Signal to Noise Ratio](signal_to_noise_ratio.md) of voltage amplifiers is \\(100dB = 10^{5}\\). +Typical [Signal to Noise Ratio]({{}}) of voltage amplifiers is \\(100dB = 10^{5}\\). Thus, for a piezoelectric stack with a displacement \\(L\\), the resolution will be \begin{equation} @@ -155,58 +156,58 @@ For a piezoelectric stack with a displacement of \\(100\,[\mu m]\\), the resolut ### Electrical Capacitance {#electrical-capacitance} -The electrical capacitance may limit the maximum voltage that can be used to drive the piezoelectric actuator as a function of frequency (Figure [2](#org2c60a2d)). +The electrical capacitance may limit the maximum voltage that can be used to drive the piezoelectric actuator as a function of frequency (Figure [2](#orgca6870e)). This is due to the fact that voltage amplifier has a limitation on the deliverable current. -[Voltage Amplifier](voltage_amplifier.md) with high maximum output current should be used if either high bandwidth is wanted or piezoelectric stacks with high capacitance are to be used. +[Voltage Amplifier]({{}}) with high maximum output current should be used if either high bandwidth is wanted or piezoelectric stacks with high capacitance are to be used. - + {{< figure src="/ox-hugo/piezoelectric_capacitance_voltage_max.png" caption="Figure 2: Maximum sin-wave amplitude as a function of frequency for several piezoelectric capacitance" >}} ## Piezoelectric actuator experiencing a mass load {#piezoelectric-actuator-experiencing-a-mass-load} -When the piezoelectric actuator is supporting a payload, it will experience a static deflection due to its finite stiffness \\(\Delta l\_n = \frac{mg}{k\_p}\\), but its stroke will remain unchanged (Figure [3](#org7af4476)). +When the piezoelectric actuator is supporting a payload, it will experience a static deflection due to its finite stiffness \\(\Delta l\_n = \frac{mg}{k\_p}\\), but its stroke will remain unchanged (Figure [3](#orge05f5e6)). - + {{< figure src="/ox-hugo/piezoelectric_mass_load.png" caption="Figure 3: Motion of a piezoelectric stack actuator under external constant force" >}} ## Piezoelectric actuator in contact with a spring load {#piezoelectric-actuator-in-contact-with-a-spring-load} -Then the piezoelectric actuator is in contact with a spring load \\(k\_e\\), its maximum stroke \\(\Delta L\\) is less than its free stroke \\(\Delta L\_f\\) (Figure [4](#org97370ea)): +Then the piezoelectric actuator is in contact with a spring load \\(k\_e\\), its maximum stroke \\(\Delta L\\) is less than its free stroke \\(\Delta L\_f\\) (Figure [4](#orgfcd374f)): \begin{equation} \Delta L = \Delta L\_f \frac{k\_p}{k\_p + k\_e} \end{equation} - + {{< figure src="/ox-hugo/piezoelectric_spring_load.png" caption="Figure 4: Motion of a piezoelectric stack actuator in contact with a stiff environment" >}} -For piezo actuators, force and displacement are inversely related (Figure [5](#org8c01425)). +For piezo actuators, force and displacement are inversely related (Figure [5](#orgada6c4c)). Maximum, or blocked, force (\\(F\_b\\)) occurs when there is no displacement. Likewise, at maximum displacement, or free stroke, (\\(\Delta L\_f\\)) no force is generated. When an external load is applied, the stiffness of the load (\\(k\_e\\)) determines the displacement (\\(\Delta L\_A\\)) and force (\\(\Delta F\_A\\)) that can be produced. - + {{< figure src="/ox-hugo/piezoelectric_force_displ_relation.png" caption="Figure 5: Relation between the maximum force and displacement" >}} ## Driving Electronics {#driving-electronics} -Piezoelectric actuators can be driven either using a voltage to charge converter or a [Voltage Amplifier](voltage_amplifier.md). -Limitations of the electronics is discussed in [Design, modeling and control of nanopositioning systems](fleming14_desig_model_contr_nanop_system.md). +Piezoelectric actuators can be driven either using a voltage to charge converter or a [Voltage Amplifier]({{}}). +Limitations of the electronics is discussed in [Design, modeling and control of nanopositioning systems]({{}}). ## Bibliography {#bibliography} -Claeyssen, Frank, R. Le Letty, F. Barillot, and O. Sosnicki. 2007. “Amplified Piezoelectric Actuators: Static & Dynamic Applications.” _Ferroelectrics_ 351 (1):3–14. . +Claeyssen, Frank, R. Le Letty, F. Barillot, and O. Sosnicki. 2007. “Amplified Piezoelectric Actuators: Static & Dynamic Applications.” _Ferroelectrics_ 351 (1):3–14. . -Fleming, A.J. 2010. “Nanopositioning System with Force Feedback for High-Performance Tracking and Vibration Control.” _IEEE/ASME Transactions on Mechatronics_ 15 (3):433–47. . +Fleming, A.J. 2010. “Nanopositioning System with Force Feedback for High-Performance Tracking and Vibration Control.” _IEEE/ASME Transactions on Mechatronics_ 15 (3):433–47. . -Lucinskis, R., and C. Mangeot. 2016. “Dynamic Characterization of an Amplified Piezoelectric Actuator.” +Lucinskis, R., and C. Mangeot. 2016. “Dynamic Characterization of an Amplified Piezoelectric Actuator.” diff --git a/content/zettels/position_sensors.md b/content/zettels/position_sensors.md index 7049e49..6930e9a 100644 --- a/content/zettels/position_sensors.md +++ b/content/zettels/position_sensors.md @@ -5,23 +5,23 @@ draft = false +++ Tags -: [Inertial Sensors]({{< relref "inertial_sensors" >}}), [Force Sensors]({{< relref "force_sensors" >}}), [Sensor Fusion]({{< relref "sensor_fusion" >}}), [Signal Conditioner]({{< relref "signal_conditioner" >}}), [Signal to Noise Ratio]({{< relref "signal_to_noise_ratio" >}}) +: [Inertial Sensors]({{}}), [Force Sensors]({{}}), [Sensor Fusion]({{}}), [Signal Conditioner]({{}}), [Signal to Noise Ratio]({{}}) ## Types of Positioning sensors {#types-of-positioning-sensors} High precision positioning sensors include: -- [Interferometers]({{< relref "interferometers" >}}) -- [Capacitive Sensors]({{< relref "capacitive_sensors" >}}) -- [LVDT]({{< relref "linear_variable_differential_transformers" >}}) -- [Eddy Current Sensors]({{< relref "eddy_current_sensors" >}}) -- [Encoders]({{< relref "encoders" >}}) +- [Interferometers]({{}}) +- [Capacitive Sensors]({{}}) +- [LVDT]({{}}) +- [Eddy Current Sensors]({{}}) +- [Encoders]({{}}) ## Reviews of Relative Position Sensors {#reviews-of-relative-position-sensors} -- Fleming, A. J., A review of nanometer resolution position sensors: operation and performance ([Fleming 2013](#orgbadb097)) ([Notes]({{< relref "fleming13_review_nanom_resol_posit_sensor" >}})) +- Fleming, A. J., A review of nanometer resolution position sensors: operation and performance ([Fleming 2013](#org654bd0b)) ([Notes]({{}}))
@@ -57,7 +57,7 @@ High precision positioning sensors include: Capacitive Sensors and Eddy-Current sensors are compare [here](https://www.lionprecision.com/comparing-capacitive-and-eddy-current-sensors/). - + {{< figure src="/ox-hugo/position_sensors_thurner15.png" caption="Figure 1: Overview of range and precision of different position displacement sensors. Taken from thurner15_fiber_based_distan_sensin_inter" >}} @@ -65,4 +65,4 @@ Capacitive Sensors and Eddy-Current sensors are compare [here](https://www.lionp ## Bibliography {#bibliography} -Fleming, Andrew J. 2013. “A Review of Nanometer Resolution Position Sensors: Operation and Performance.” _Sensors and Actuators a: Physical_ 190 (nil):106–26. . +Fleming, Andrew J. 2013. “A Review of Nanometer Resolution Position Sensors: Operation and Performance.” _Sensors and Actuators a: Physical_ 190 (nil):106–26. . diff --git a/content/zettels/rotation_stage.md b/content/zettels/rotation_stage.md index 33a069d..c0420f9 100644 --- a/content/zettels/rotation_stage.md +++ b/content/zettels/rotation_stage.md @@ -2,10 +2,11 @@ title = "Rotation Stage" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Slip Rings]({{< relref "slip_rings" >}}) +: [Slip Rings]({{}}) ## Manufacturers {#manufacturers} diff --git a/content/zettels/shaker.md b/content/zettels/shaker.md index 8e87516..16e04b7 100644 --- a/content/zettels/shaker.md +++ b/content/zettels/shaker.md @@ -2,10 +2,11 @@ title = "Shaker" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Voice Coil Actuators]({{< relref "voice_coil_actuators" >}}) +: [Voice Coil Actuators]({{}}) ## Manufacturers {#manufacturers} diff --git a/content/zettels/signal_conditioner.md b/content/zettels/signal_conditioner.md index 319a9b5..247f93d 100644 --- a/content/zettels/signal_conditioner.md +++ b/content/zettels/signal_conditioner.md @@ -2,10 +2,11 @@ title = "Signal Conditioner" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Sensors]({{< relref "sensors" >}}), [Electronics]({{< relref "electronics" >}}) +: [Sensors]({{}}), [Electronics]({{}}) Most sensors needs some signal conditioner electronics before digitize the signal. Few examples are: @@ -25,6 +26,6 @@ The signal conditioning electronics can have different functions: Depending on the electrical quantity that is meaningful for the measurement, different types of amplifiers are used: -- Current to Voltage ([Transimpedance Amplifiers]({{< relref "transimpedance_amplifiers" >}})) -- Charge to Voltage ([Charge Amplifiers]({{< relref "charge_amplifiers" >}})) -- Voltage to Voltage ([Voltage Amplifier]({{< relref "voltage_amplifier" >}})) +- Current to Voltage ([Transimpedance Amplifiers]({{}})) +- Charge to Voltage ([Charge Amplifiers]({{}})) +- Voltage to Voltage ([Voltage Amplifier]({{}})) diff --git a/content/zettels/simulink_real_time_target_machines.md b/content/zettels/simulink_real_time_target_machines.md index 155b2bc..5000403 100644 --- a/content/zettels/simulink_real_time_target_machines.md +++ b/content/zettels/simulink_real_time_target_machines.md @@ -2,6 +2,7 @@ title = "Simulink Real Time Target Machines" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags diff --git a/content/zettels/slip_rings.md b/content/zettels/slip_rings.md index 0f22d7a..1b4029b 100644 --- a/content/zettels/slip_rings.md +++ b/content/zettels/slip_rings.md @@ -2,10 +2,11 @@ title = "Slip Rings" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Rotation Stage]({{< relref "rotation_stage" >}}) +: [Rotation Stage]({{}}) ## Manufacturers {#manufacturers} diff --git a/content/zettels/springs.md b/content/zettels/springs.md index 2516a41..9af872e 100644 --- a/content/zettels/springs.md +++ b/content/zettels/springs.md @@ -2,6 +2,7 @@ title = "Springs" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags @@ -18,5 +19,3 @@ Tags | [Paulstra](https://www.paulstra-industry.com/en/ranges/metal-mountings/v1210) | France | | [Norelem](https://www.norelem.com/us/en/Products/Product-overview/Systems-and-components-for-machine-and-plant-construction/26000-Compression-springs-Elastomer-springs-Rubber-buffers-Shock-absorbers-Gas-springs.html) | France | | [VibraSystems](https://vibrasystems.com/elastomer-and-spring-hangers.html) | USA | - -<./biblio/references.bib> diff --git a/content/zettels/tip_tilt_mirrors.md b/content/zettels/tip_tilt_mirrors.md index 2e62d9e..bb9cecf 100644 --- a/content/zettels/tip_tilt_mirrors.md +++ b/content/zettels/tip_tilt_mirrors.md @@ -2,6 +2,7 @@ title = "Tip-Tilt Mirrors" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags diff --git a/content/zettels/transconductance_amplifiers.md b/content/zettels/transconductance_amplifiers.md index 94721d9..ea50724 100644 --- a/content/zettels/transconductance_amplifiers.md +++ b/content/zettels/transconductance_amplifiers.md @@ -2,10 +2,11 @@ title = "Transconductance Amplifiers" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Electronics]({{< relref "electronics" >}}), [Voice Coil Actuators]({{< relref "voice_coil_actuators" >}}) +: [Electronics]({{}}), [Voice Coil Actuators]({{}}) ## Description {#description} diff --git a/content/zettels/transimpedance_amplifiers.md b/content/zettels/transimpedance_amplifiers.md index 2eecc0a..ee0fb4d 100644 --- a/content/zettels/transimpedance_amplifiers.md +++ b/content/zettels/transimpedance_amplifiers.md @@ -2,10 +2,11 @@ title = "Transimpedance Amplifiers" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Electronics]({{< relref "electronics" >}}) +: [Electronics]({{}}) ## Description {#description} diff --git a/content/zettels/voice_coil_actuators.md b/content/zettels/voice_coil_actuators.md index eaf53f4..9007ca3 100644 --- a/content/zettels/voice_coil_actuators.md +++ b/content/zettels/voice_coil_actuators.md @@ -2,10 +2,11 @@ title = "Voice Coil Actuators" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Actuators]({{< relref "actuators" >}}) +: [Actuators]({{}}) ## Working Principle {#working-principle} @@ -16,12 +17,12 @@ Tags ## Model of a Voice Coil Actuator {#model-of-a-voice-coil-actuator} -([Schmidt, Schitter, and Rankers 2014](#orgc4c6d58)) +([Schmidt, Schitter, and Rankers 2014](#org173764e)) ## Driving Electronics {#driving-electronics} -As the force is proportional to the current, a [Transconductance Amplifiers]({{< relref "transconductance_amplifiers" >}}) (voltage-controller current source) is generally used as the driving electronics. +As the force is proportional to the current, a [Transconductance Amplifiers]({{}}) (voltage-controller current source) is generally used as the driving electronics. ## Manufacturers {#manufacturers} @@ -43,4 +44,4 @@ As the force is proportional to the current, a [Transconductance Amplifiers]({{< ## Bibliography {#bibliography} -Schmidt, R Munnig, Georg Schitter, and Adrian Rankers. 2014. _The Design of High Performance Mechatronics - 2nd Revised Edition_. Ios Press. +Schmidt, R Munnig, Georg Schitter, and Adrian Rankers. 2014. _The Design of High Performance Mechatronics - 2nd Revised Edition_. Ios Press. diff --git a/content/zettels/voltage_amplifier.md b/content/zettels/voltage_amplifier.md index 9ddb50e..402df88 100644 --- a/content/zettels/voltage_amplifier.md +++ b/content/zettels/voltage_amplifier.md @@ -2,10 +2,11 @@ title = "Voltage Amplifier" author = ["Thomas Dehaeze"] draft = false +category = "equipment" +++ Tags -: [Signal to Noise Ratio]({{< relref "signal_to_noise_ratio" >}}), [Piezoelectric Actuators]({{< relref "piezoelectric_actuators" >}}), [Electronics]({{< relref "electronics" >}}) +: [Signal to Noise Ratio]({{}}), [Piezoelectric Actuators]({{}}), [Electronics]({{}}) ## Voltage Amplifiers to drive Capacitive Loads {#voltage-amplifiers-to-drive-capacitive-loads} @@ -33,9 +34,9 @@ Tags The piezoelectric stack can be represented as a capacitance. -Let's take a capacitance driven by a voltage amplifier (Figure [1](#org14569de)). +Let's take a capacitance driven by a voltage amplifier (Figure [1](#org63f8350)). - + {{< figure src="/ox-hugo/voltage_amplifier_capacitance.png" caption="Figure 1: Piezoelectric actuator model with a voltage source" >}} @@ -55,7 +56,7 @@ Thus, for a specified maximum current \\(I\_\text{max}\\), the "power bandwidth" - Above \\(\omega\_{0, \text{max}}\\), the maximum current \\(I\_\text{max}\\) is reached and the maximum voltage that can be applied decreases with frequency: \\[ U\_\text{max} = \frac{I\_\text{max}}{\omega C} \\] -The maximum voltage as a function of frequency is shown in Figure [2](#orga5b5a57). +The maximum voltage as a function of frequency is shown in Figure [2](#orgfbd4a45). ```matlab Vpkp = 170; % [V] @@ -69,7 +70,7 @@ The maximum voltage as a function of frequency is shown in Figure [2](#orga5b5a5 56.172 ``` - + {{< figure src="/ox-hugo/voltage_amplifier_max_V_piezo.png" caption="Figure 2: Maximum voltage as a function of the frequency for \\(C = 1 \mu F\\), \\(I\_\text{max} = 30mA\\) and \\(V\_{pkp} = 170 V\\)" >}} @@ -89,7 +90,7 @@ Specifications are usually: - Maximum Current - DC Gain (usually around 10) -- Output Noise or [Signal to Noise Ratio]({{< relref "signal_to_noise_ratio" >}}) +- Output Noise or [Signal to Noise Ratio]({{}}) The bandwidth can be estimated from the Maximum Current and the Capacitance of the Piezoelectric Actuator. @@ -105,7 +106,7 @@ This can pose several problems: ### Noise {#noise} -Sources of noise in a system comprising a voltage amplifier and a capactive load are discussed in ([Spengen 2020](#org8deb271)). +Sources of noise in a system comprising a voltage amplifier and a capactive load are discussed in ([Spengen 2020](#org2170119)). Proper enclosures and cabling are necessary to protect the system from capacitive and inductive interferance. @@ -117,14 +118,14 @@ The **input** impedance of voltage amplifiers are generally set to \\(50 \Omega\ The **output** (or internal) impedance of voltage amplifier is generally wanted small in order to have a small voltage drop when large current are drawn. However, for stability reasons and to avoid overshoot (due to the internal negative feedback loop), this impedance can be chosen quite large. -This is discussed in ([Spengen 2017](#org22b2168)). +This is discussed in ([Spengen 2017](#org55e5dcc)). ## 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. . -Spengen, W. Merlijn van. 2017. “High Voltage Amplifiers and the Ubiquitous 50 Ohms: Caveats and Benefits.” Falco Systems. +Spengen, W. Merlijn van. 2017. “High Voltage Amplifiers and the Ubiquitous 50 Ohms: Caveats and Benefits.” Falco Systems. -———. 2020. “High Voltage Amplifiers: So You Think You Have Noise!” Falco Systems. +———. 2020. “High Voltage Amplifiers: So You Think You Have Noise!” Falco Systems. diff --git a/static/ox-hugo/li01_decoupling_conf.png b/static/ox-hugo/li01_decoupling_conf.png index 6e4effe5ed6cc1fa3d23cd18ad102aee6b6f449d..4af7a5b64a339db357e8c08726b20a812fff30f9 100644 GIT binary patch literal 4053 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 YGL`JgLm4YYNoWo*&@t7n)qEKFe=7XC6aWAK literal 4256 zcmZWt1ymDW+us<{NQZy}{zypcD1p&k0y60mVH2cl*nS=hnH;eQrI!d!OHZV`!jBO~FP1005}9wbYCO0AMYltVBjaNWGL^ zUJ^2(x3Q)QaHdZfMW~Q_XqkHh04#KWBM{4nQv?8L)wR`>O^~yDpIm%QV5wmpI{EZO z+)ReFRAR4)_<$)S&*S-4MiV+~fwO>UP!2}o2LKA~yuS&6d}5`&af|dB4{PvpuBB2- z>3Od*?fi!_sGgZuXXrlO$IvIzS zw)RSI0uK-;56mBt_1o1N&V;J#+^#YcRzBbThvskS;-%pp%O_0drGSJoEwM6fIN#sN z<%|$3$9rlX-VXlfhVTR>4V3DH+|D)3ZV4a?%mQqvIT3eNZUKdf>0fA}X;1ix3&e%vPLw-Rno>B3Jm=6ShagB$COOf@G zfDvEdl_2++U9y+9xI5yUMI;)4hdT}r9VY1Q=xFynLdC08h19!(7?O4DC`Q1@n~gtz zo}q4xy&#M9j(H&**>Rx3d*MHh;s-t}}}9P3HVNK6pr7ZkKKyP(h=k2Z6cqrOfJ zC_4jjSI3+2j-4k^=G|W&Au?6^!<#)j$~bH2E7BBk5hRTeb}kik0gylVIa}RnvMk*> z9M*Guit;cUI@_Tsd8e&8QE0g3&|1_0nM!9BC-T<&sW2D)vpL%-LKTec#j7`lnlb9LJ9aGvt&xxU~VYYy_dA(ZfaoJ_FM4GJ^xK80n_V9s6N#@Qh z@VX+-)L0s!G&K+$vy@8|WHXxTqk3A3@uYX|yK8Q_=<=(ze!GT3#MI>}T+~@#lvtt7 z$b~nA-D7V$sUz!XrU3Eh~F&wqPP--qHQ9l=q9=~K@Gr;KstP$fji(_hgn6E3G8Q9?;ayOMHwv= zogW4HY2i-qxC3uke8^7u&W%Qa6y%tYbRK2V^TkbW1MC##(7N`it)e1cZsd$foNuO> zJ_GGVP39n{@8?>ejTbxiMNO&

JxiGezJh%Q`TzW-C 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 T$SH{M%K*?;H&Clkv3vP1j3*0T diff --git a/static/ox-hugo/li01_decoupling_conf_bis.png b/static/ox-hugo/li01_decoupling_conf_bis.png index 39de93cd4c717b5e0ce69f144238efa6d18dd3b3..a7ec34a62393d0f1f7ed11f5781d6f6a32f45a09 100644 GIT binary patch delta 3844 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 BhXnut delta 3689 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 diff --git a/static/ox-hugo/li01_transfer_function_angle.png b/static/ox-hugo/li01_transfer_function_angle.png new file mode 100644 index 0000000000000000000000000000000000000000..ec27514d4098c45ddf62881228355f4294585cac GIT binary patch literal 82949 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 literal 0 HcmV?d00001