test-bench-apa300ml/test-bench-apa300ml.html

482 lines
18 KiB
HTML
Raw Normal View History

2021-02-02 19:29:51 +01:00
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
2021-03-01 09:18:16 +01:00
<!-- 2021-03-01 lun. 09:17 -->
2021-02-02 19:29:51 +01:00
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<title>Amplifier Piezoelectric Actuator APA300ML - Test Bench</title>
<meta name="author" content="Dehaeze Thomas" />
2021-03-01 09:18:16 +01:00
<meta name="generator" content="Org Mode" />
2021-02-02 19:29:51 +01:00
<link rel="stylesheet" type="text/css" href="https://research.tdehaeze.xyz/css/style.css"/>
<script type="text/javascript" src="https://research.tdehaeze.xyz/js/script.js"></script>
<script>
MathJax = {
svg: {
scale: 1,
fontCache: "global"
},
tex: {
tags: "ams",
multlineWidth: "%MULTLINEWIDTH",
tagSide: "right",
macros: {bm: ["\\boldsymbol{#1}",1],},
tagIndent: ".8em"
}
};
</script>
<script id="MathJax-script" async
src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-svg.js"></script>
</head>
<body>
<div id="org-div-home-and-up">
<a accesskey="h" href="../index.html"> UP </a>
|
<a accesskey="H" href="../index.html"> HOME </a>
</div><div id="content">
<h1 class="title">Amplifier Piezoelectric Actuator APA300ML - Test Bench</h1>
<div id="table-of-contents">
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
2021-03-01 09:18:16 +01:00
<li><a href="#org61dfb38">1. Model of an Amplified Piezoelectric Actuator and Sensor</a></li>
<li><a href="#orga39596d">2. Geometrical Measurements</a>
2021-02-02 19:29:51 +01:00
<ul>
2021-03-01 09:18:16 +01:00
<li><a href="#orgf18d554">2.1. Measurement Setup</a></li>
<li><a href="#orgab6a290">2.2. Measurement Results</a></li>
2021-02-02 19:29:51 +01:00
</ul>
</li>
2021-03-01 09:18:16 +01:00
<li><a href="#orgc48230a">3. Electrical Measurements</a></li>
<li><a href="#org5c918ed">4. Test-Bench Description</a></li>
<li><a href="#org8d4b8e2">5. Measurement Procedure</a>
<ul>
<li><a href="#org5d94aa9">5.1. Stroke Measurement</a></li>
<li><a href="#org3c05855">5.2. Stiffness Measurement</a></li>
<li><a href="#orgf42db98">5.3. Hysteresis measurement</a></li>
<li><a href="#orgf14c8a5">5.4. Piezoelectric Actuator Constant</a></li>
<li><a href="#orgd45032c">5.5. Piezoelectric Sensor Constant</a></li>
<li><a href="#org72919e5">5.6. Capacitance Measurement</a></li>
<li><a href="#org81e2e82">5.7. Dynamical Behavior</a></li>
<li><a href="#orgcac6823">5.8. Compare the results obtained for all 7 APA300ML</a></li>
</ul>
</li>
<li><a href="#org90aaad1">6. Measurement Results</a></li>
2021-02-02 19:29:51 +01:00
</ul>
</div>
</div>
<hr>
<p>This report is also available as a <a href="./test-bench-apa300ml.pdf">pdf</a>.</p>
<hr>
<p>
The goal of this test bench is to extract all the important parameters of the Amplified Piezoelectric Actuator APA300ML.
</p>
<p>
This include:
</p>
<ul class="org-ul">
<li>Stroke</li>
<li>Stiffness</li>
<li>Hysteresis</li>
<li>Gain from the applied voltage \(V_a\) to the generated Force \(F_a\)</li>
<li>Gain from the sensor stack strain \(\delta L\) to the generated voltage \(V_s\)</li>
<li>Dynamical behavior</li>
</ul>
2021-03-01 09:18:16 +01:00
<div id="orgca99cce" class="figure">
2021-02-02 19:29:51 +01:00
<p><img src="figs/apa300ML.png" alt="apa300ML.png" />
</p>
<p><span class="figure-number">Figure 1: </span>Picture of the APA300ML</p>
</div>
2021-03-01 09:18:16 +01:00
<div id="outline-container-org61dfb38" class="outline-2">
<h2 id="org61dfb38"><span class="section-number-2">1</span> Model of an Amplified Piezoelectric Actuator and Sensor</h2>
2021-02-02 19:29:51 +01:00
<div class="outline-text-2" id="text-1">
<p>
2021-03-01 09:18:16 +01:00
Consider a schematic of the Amplified Piezoelectric Actuator in Figure <a href="#org2432201">2</a>.
2021-02-02 19:29:51 +01:00
</p>
2021-03-01 09:18:16 +01:00
<div id="org2432201" class="figure">
2021-02-02 19:29:51 +01:00
<p><img src="figs/apa_model_schematic.png" alt="apa_model_schematic.png" />
</p>
<p><span class="figure-number">Figure 2: </span>Amplified Piezoelectric Actuator Schematic</p>
</div>
<p>
A voltage \(V_a\) applied to the actuator stacks will induce an actuator force \(F_a\):
</p>
\begin{equation}
F_a = g_a \cdot V_a
\end{equation}
<p>
A change of length \(dl\) of the sensor stack will induce a voltage \(V_s\):
</p>
\begin{equation}
V_s = g_s \cdot dl
\end{equation}
<p>
We wish here to experimental measure \(g_a\) and \(g_s\).
</p>
<p>
2021-03-01 09:18:16 +01:00
The block-diagram model of the piezoelectric actuator is then as shown in Figure <a href="#orgc142156">3</a>.
2021-02-02 19:29:51 +01:00
</p>
2021-03-01 09:18:16 +01:00
<div id="orgc142156" class="figure">
2021-02-02 19:29:51 +01:00
<p><img src="figs/apa-model-simscape-schematic.png" alt="apa-model-simscape-schematic.png" />
</p>
<p><span class="figure-number">Figure 3: </span>Model of the APA with Simscape/Simulink</p>
</div>
</div>
</div>
2021-03-01 09:18:16 +01:00
<div id="outline-container-orga39596d" class="outline-2">
<h2 id="orga39596d"><span class="section-number-2">2</span> Geometrical Measurements</h2>
2021-02-02 19:29:51 +01:00
<div class="outline-text-2" id="text-2">
2021-03-01 09:18:16 +01:00
<div id="orgc8762e5" class="figure">
<p><img src="figs/IMG_20210224_143500.jpg" alt="IMG_20210224_143500.jpg" />
</p>
<p><span class="figure-number">Figure 4: </span>Received APA</p>
</div>
</div>
<div id="outline-container-orgf18d554" class="outline-3">
<h3 id="orgf18d554"><span class="section-number-3">2.1</span> Measurement Setup</h3>
<div class="outline-text-3" id="text-2-1">
<div id="orgec2c3f2" class="figure">
<p><img src="figs/IMG_20210224_143809.jpg" alt="IMG_20210224_143809.jpg" />
</p>
<p><span class="figure-number">Figure 5: </span>Measurement Setup</p>
</div>
</div>
</div>
<div id="outline-container-orgab6a290" class="outline-3">
<h3 id="orgab6a290"><span class="section-number-3">2.2</span> Measurement Results</h3>
<div class="outline-text-3" id="text-2-2">
<p>
Height (Z) measurements:
</p>
<div class="org-src-container">
<pre class="src src-matlab">apa1 = 1e<span class="org-type">-</span>6<span class="org-type">*</span>[0, <span class="org-type">-</span>0.5 , 3.5 , 3.5 , 42 , 45.5, 52.5 , 46];
apa2 = 1e<span class="org-type">-</span>6<span class="org-type">*</span>[0, <span class="org-type">-</span>2.5 , <span class="org-type">-</span>3 , 0 , <span class="org-type">-</span>1.5 , 1 , <span class="org-type">-</span>2 , <span class="org-type">-</span>4];
apa3 = 1e<span class="org-type">-</span>6<span class="org-type">*</span>[0, <span class="org-type">-</span>1.5 , 15 , 17.5 , 6.5 , 6.5 , 21 , 23];
apa4 = 1e<span class="org-type">-</span>6<span class="org-type">*</span>[0, 6.5 , 14.5 , 9 , 16 , 22 , 29.5 , 21];
apa5 = 1e<span class="org-type">-</span>6<span class="org-type">*</span>[0, <span class="org-type">-</span>12.5, 16.5 , 28.5 , <span class="org-type">-</span>43 , <span class="org-type">-</span>52 , <span class="org-type">-</span>22.5, <span class="org-type">-</span>13.5];
apa6 = 1e<span class="org-type">-</span>6<span class="org-type">*</span>[0, <span class="org-type">-</span>8 , <span class="org-type">-</span>2 , 5 , <span class="org-type">-</span>57.5, <span class="org-type">-</span>62 , <span class="org-type">-</span>55.5, <span class="org-type">-</span>52.5];
apa7 = 1e<span class="org-type">-</span>6<span class="org-type">*</span>[0, 19.5 , <span class="org-type">-</span>8 , <span class="org-type">-</span>29.5, 75 , 97.5, 70 , 48];
apa7b = 1e<span class="org-type">-</span>6<span class="org-type">*</span>[0, 9 , <span class="org-type">-</span>18.5, <span class="org-type">-</span>30 , 31 , 46.5, 16.5 , 7.5];
apa = {apa1, apa2, apa3, apa4, apa5, apa6, apa7b};
</pre>
</div>
<p>
X/Y Positions of the 8 measurement points:
</p>
<div class="org-src-container">
<pre class="src src-matlab">W = 20e<span class="org-type">-</span>3; <span class="org-comment">% Width [m]</span>
L = 61e<span class="org-type">-</span>3; <span class="org-comment">% Length [m]</span>
d = 1e<span class="org-type">-</span>3; <span class="org-comment">% Distance from border [m]</span>
l = 15.5e<span class="org-type">-</span>3; <span class="org-comment">% [m]</span>
pos = [[<span class="org-type">-</span>L<span class="org-type">/</span>2 <span class="org-type">+</span> d; W<span class="org-type">/</span>2 <span class="org-type">-</span> d], [<span class="org-type">-</span>L<span class="org-type">/</span>2 <span class="org-type">+</span> l <span class="org-type">-</span> d; W<span class="org-type">/</span>2 <span class="org-type">-</span> d], [<span class="org-type">-</span>L<span class="org-type">/</span>2 <span class="org-type">+</span> l <span class="org-type">-</span> d; <span class="org-type">-</span>W<span class="org-type">/</span>2 <span class="org-type">+</span> d], [<span class="org-type">-</span>L<span class="org-type">/</span>2 <span class="org-type">+</span> d; <span class="org-type">-</span>W<span class="org-type">/</span>2 <span class="org-type">+</span> d], [L<span class="org-type">/</span>2 <span class="org-type">-</span> l <span class="org-type">+</span> d; W<span class="org-type">/</span>2 <span class="org-type">-</span> d], [L<span class="org-type">/</span>2 <span class="org-type">-</span> d; W<span class="org-type">/</span>2 <span class="org-type">-</span> d], [L<span class="org-type">/</span>2 <span class="org-type">-</span> d; <span class="org-type">-</span>W<span class="org-type">/</span>2 <span class="org-type">+</span> d], [L<span class="org-type">/</span>2 <span class="org-type">-</span> l <span class="org-type">+</span> d; <span class="org-type">-</span>W<span class="org-type">/</span>2 <span class="org-type">+</span> d]];
</pre>
</div>
<div class="org-src-container">
<pre class="src src-matlab">apa_d = zeros(1, 7);
<span class="org-keyword">for</span> <span class="org-variable-name"><span class="org-constant">i</span></span> = <span class="org-constant">1:7</span>
fun = @(x)max(abs(([pos; apa{<span class="org-constant">i</span>}]<span class="org-type">-</span>[0;0;x(1)])<span class="org-type">'*</span>([x(2<span class="org-type">:</span>3);1]<span class="org-type">/</span>norm([x(2<span class="org-type">:</span>3);1]))));
x0 = [0;0;0];
[x, min_d] = fminsearch(fun,x0);
apa_d(<span class="org-constant">i</span>) = min_d;
<span class="org-keyword">end</span>
</pre>
</div>
<table id="org68cc21a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<caption class="t-above"><span class="table-number">Table 1:</span> Estimated flatness</caption>
<colgroup>
<col class="org-right" />
</colgroup>
<thead>
<tr>
<th scope="col" class="org-right">Flatness [um]</th>
</tr>
</thead>
<tbody>
<tr>
<td class="org-right">8.9</td>
</tr>
<tr>
<td class="org-right">3.1</td>
</tr>
<tr>
<td class="org-right">9.1</td>
</tr>
<tr>
<td class="org-right">3.0</td>
</tr>
<tr>
<td class="org-right">1.9</td>
</tr>
<tr>
<td class="org-right">7.1</td>
</tr>
<tr>
<td class="org-right">18.7</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div id="outline-container-orgc48230a" class="outline-2">
<h2 id="orgc48230a"><span class="section-number-2">3</span> Electrical Measurements</h2>
</div>
<div id="outline-container-org5c918ed" class="outline-2">
<h2 id="org5c918ed"><span class="section-number-2">4</span> Test-Bench Description</h2>
<div class="outline-text-2" id="text-4">
<div class="note" id="org4dcad91">
2021-02-02 19:29:51 +01:00
<p>
Here are the documentation of the equipment used for this test bench:
</p>
<ul class="org-ul">
<li>Voltage Amplifier: <a href="doc/PD200-V7-R1.pdf">PD200</a></li>
<li>Amplified Piezoelectric Actuator: <a href="doc/APA300ML.pdf">APA300ML</a></li>
<li>DAC/ADC: Speedgoat <a href="doc/IO131-OEM-Datasheet.pdf">IO313</a></li>
<li>Encoder: <a href="doc/L-9517-9678-05-A_Data_sheet_VIONiC_series_en.pdf">Renishaw Vionic</a> and used <a href="doc/L-9517-9862-01-C_Data_sheet_RKLC_EN.pdf">Ruler</a></li>
<li>Interferometer: <a href="https://www.attocube.com/en/products/laser-displacement-sensor/displacement-measuring-interferometer">Attocube IDS3010</a></li>
</ul>
</div>
2021-03-01 09:18:16 +01:00
<div id="org7bcb57f" class="figure">
2021-02-02 19:29:51 +01:00
<p><img src="figs/test_bench_apa_alone.png" alt="test_bench_apa_alone.png" />
</p>
2021-03-01 09:18:16 +01:00
<p><span class="figure-number">Figure 6: </span>Schematic of the Test Bench</p>
2021-02-02 19:29:51 +01:00
</div>
</div>
</div>
2021-03-01 09:18:16 +01:00
<div id="outline-container-org8d4b8e2" class="outline-2">
<h2 id="org8d4b8e2"><span class="section-number-2">5</span> Measurement Procedure</h2>
<div class="outline-text-2" id="text-5">
2021-02-02 19:29:51 +01:00
</div>
2021-03-01 09:18:16 +01:00
<div id="outline-container-org5d94aa9" class="outline-3">
<h3 id="org5d94aa9"><span class="section-number-3">5.1</span> Stroke Measurement</h3>
<div class="outline-text-3" id="text-5-1">
2021-02-02 19:29:51 +01:00
<p>
Using the PD200 amplifier, output a voltage:
\[ V_a = 65 + 85 \sin(2\pi \cdot t) \]
To have a quasi-static excitation between -20 and 150V.
</p>
<p>
As the gain of the PD200 amplifier is 20, the DAC output voltage should be:
\[ V_{dac}(t) = 3.25 + 4.25\sin(2\pi \cdot t) \]
</p>
<p>
Verify that the voltage offset of the PD200 is zero!
</p>
<p>
Measure the output vertical displacement \(d\) using the interferometer.
</p>
<p>
Then, plot \(d\) as a function of \(V_a\), and perform a linear regression.
Conclude on the obtained stroke.
</p>
</div>
</div>
2021-03-01 09:18:16 +01:00
<div id="outline-container-org3c05855" class="outline-3">
<h3 id="org3c05855"><span class="section-number-3">5.2</span> Stiffness Measurement</h3>
<div class="outline-text-3" id="text-5-2">
2021-02-02 19:29:51 +01:00
<p>
Add some (known) weight \(\delta m g\) on the suspended mass and measure the deflection \(\delta d\).
This can be tested when the piezoelectric stacks are open-circuit.
</p>
<p>
As the stiffness will be around \(k \approx 10^6 N/m\), an added mass of \(m \approx 100g\) will induce a static deflection of \(\approx 1\mu m\) which should be large enough for a precise measurement using the interferometer.
</p>
<p>
Then the obtained stiffness is:
</p>
\begin{equation}
k = \frac{\delta m g}{\delta d}
\end{equation}
</div>
</div>
2021-03-01 09:18:16 +01:00
<div id="outline-container-orgf42db98" class="outline-3">
<h3 id="orgf42db98"><span class="section-number-3">5.3</span> Hysteresis measurement</h3>
<div class="outline-text-3" id="text-5-3">
2021-02-02 19:29:51 +01:00
<p>
Supply a quasi static sinusoidal excitation \(V_a\) at different voltages.
</p>
<p>
The offset should be 65V, and the sin amplitude can range from 1V up to 85V.
</p>
<p>
For each excitation amplitude, the vertical displacement \(d\) of the mass is measured.
</p>
<p>
Then, \(d\) is plotted as a function of \(V_a\) for all the amplitudes.
</p>
2021-03-01 09:18:16 +01:00
<div id="org19a134a" class="figure">
2021-02-02 19:29:51 +01:00
<p><img src="figs/expected_hysteresis.png" alt="expected_hysteresis.png" />
</p>
2021-03-01 09:18:16 +01:00
<p><span class="figure-number">Figure 7: </span>Expected Hysteresis (<a class='org-ref-reference' href="#poel10_explor_activ_hard_mount_vibrat">poel10_explor_activ_hard_mount_vibrat</a>)</p>
2021-02-02 19:29:51 +01:00
</div>
</div>
</div>
2021-03-01 09:18:16 +01:00
<div id="outline-container-orgf14c8a5" class="outline-3">
<h3 id="orgf14c8a5"><span class="section-number-3">5.4</span> Piezoelectric Actuator Constant</h3>
<div class="outline-text-3" id="text-5-4">
2021-02-02 19:29:51 +01:00
<p>
Using the measurement test-bench, it is rather easy the determine the static gain between the applied voltage \(V_a\) to the induced displacement \(d\).
Use a quasi static (1Hz) excitation signal \(V_a\) on the piezoelectric stack and measure the vertical displacement \(d\).
Perform a linear regression to obtain:
</p>
\begin{equation}
d = g_{d/V_a} \cdot V_a
\end{equation}
<p>
Using the Simscape model of the APA, it is possible to determine the static gain between the actuator force \(F_a\) to the induced displacement \(d\):
</p>
\begin{equation}
d = g_{d/F_a} \cdot F_a
\end{equation}
<p>
From the two gains, it is then easy to determine \(g_a\):
</p>
\begin{equation}
g_a = \frac{F_a}{V_a} = \frac{F_a}{d} \cdot \frac{d}{V_a} = \frac{g_{d/V_a}}{g_{d/F_a}}
\end{equation}
</div>
</div>
2021-03-01 09:18:16 +01:00
<div id="outline-container-orgd45032c" class="outline-3">
<h3 id="orgd45032c"><span class="section-number-3">5.5</span> Piezoelectric Sensor Constant</h3>
<div class="outline-text-3" id="text-5-5">
2021-02-02 19:29:51 +01:00
<p>
From a quasi static excitation of the piezoelectric stack, measure the gain from \(V_a\) to \(V_s\):
</p>
\begin{equation}
V_s = g_{V_s/V_a} V_a
\end{equation}
<p>
Note here that there is an high pass filter formed by the piezo capacitor and parallel resistor.
The excitation frequency should then be in between the cut-off frequency of this high pass filter and the first resonance.
</p>
<p>
Alternatively, the gain can be computed from the dynamical identification and taking the gain at the wanted frequency.
</p>
<p>
Using the simscape model, compute the static gain from the actuator force \(F_a\) to the strain of the sensor stack \(dl\):
</p>
\begin{equation}
dl = g_{dl/F_a} F_a
\end{equation}
<p>
Then, the static gain from the sensor stack strain \(dl\) to the general voltage \(V_s\) is:
</p>
\begin{equation}
g_s = \frac{V_s}{dl} = \frac{V_s}{V_a} \cdot \frac{V_a}{F_a} \cdot \frac{F_a}{dl} = \frac{g_{V_s/V_a}}{g_a \cdot g_{dl/F_a}}
\end{equation}
<p>
Alternatively, we could impose an external force to add strain in the APA that should be equally present in all the 3 stacks and equal to 1/5 of the vertical strain.
This external force can be some weight added, or a piezo in parallel.
</p>
</div>
</div>
2021-03-01 09:18:16 +01:00
<div id="outline-container-org72919e5" class="outline-3">
<h3 id="org72919e5"><span class="section-number-3">5.6</span> Capacitance Measurement</h3>
<div class="outline-text-3" id="text-5-6">
2021-02-02 19:29:51 +01:00
<p>
Measure the capacitance of the 3 stacks individually using a precise multi-meter.
</p>
</div>
</div>
2021-03-01 09:18:16 +01:00
<div id="outline-container-org81e2e82" class="outline-3">
<h3 id="org81e2e82"><span class="section-number-3">5.7</span> Dynamical Behavior</h3>
<div class="outline-text-3" id="text-5-7">
2021-02-02 19:29:51 +01:00
<p>
Perform a system identification from \(V_a\) to the measured displacement \(d\) by the interferometer and by the encoder, and to the generated voltage \(V_s\).
</p>
<p>
This can be performed using different excitation signals.
</p>
<p>
This can also be performed with and without the encoder fixed to the APA.
</p>
</div>
</div>
2021-03-01 09:18:16 +01:00
<div id="outline-container-orgcac6823" class="outline-3">
<h3 id="orgcac6823"><span class="section-number-3">5.8</span> Compare the results obtained for all 7 APA300ML</h3>
<div class="outline-text-3" id="text-5-8">
2021-02-02 19:29:51 +01:00
<p>
Compare all the obtained parameters for all the test APA.
</p>
</div>
</div>
</div>
2021-03-01 09:18:16 +01:00
<div id="outline-container-org90aaad1" class="outline-2">
<h2 id="org90aaad1"><span class="section-number-2">6</span> Measurement Results</h2>
2021-02-02 19:29:51 +01:00
</div>
<style>.csl-entry{text-indent: -1.5em; margin-left: 1.5em;}</style><h2 class='citeproc-org-bib-h2'>Bibliography</h2>
<div class="csl-bib-body">
<div class="csl-entry"><a name="citeproc_bib_item_1"></a>Souleille, Adrien, Thibault Lampert, V Lafarga, Sylvain Hellegouarch, Alan Rondineau, Gonçalo Rodrigues, and Christophe Collette. 2018. “A Concept of Active Mount for Space Applications.” <i>CEAS Space Journal</i> 10 (2). Springer:15765.</div>
</div>
</div>
<div id="postamble" class="status">
<p class="author">Author: Dehaeze Thomas</p>
2021-03-01 09:18:16 +01:00
<p class="date">Created: 2021-03-01 lun. 09:17</p>
2021-02-02 19:29:51 +01:00
</div>
</body>
</html>