<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="nlm-ta">Sensors</journal-id>
<journal-title>Sensors</journal-title>
<issn pub-type="epub">1424-8220</issn>
<publisher>
<publisher-name>Molecular Diversity Preservation International (MDPI)</publisher-name></publisher></journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3390/s101210545</article-id>
<article-id pub-id-type="publisher-id">sensors-10-10545</article-id>
<article-categories>
<subj-group>
<subject>Article</subject></subj-group></article-categories>
<title-group>
<article-title>Model-Free Adaptive Sensing and Control for a Piezoelectrically Actuated System</article-title></title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Chen</surname><given-names>Hung-Yi</given-names></name><xref ref-type="corresp" rid="c1-sensors-10-10545">*</xref></contrib>
<contrib contrib-type="author">
<name><surname>Liang</surname><given-names>Jin-Wei</given-names></name></contrib>
<aff id="af1-sensors-10-10545">Ming Chi University of Technology/No. 84, Gungjuan Road, Taishan, Taipei, 243, Taiwan; E-Mail: <email>liangj@mail.mcut.edu.tw</email></aff></contrib-group>
<author-notes>
<corresp id="c1-sensors-10-10545">
<label>*</label>Author to whom correspondence should be addressed; E-Mail: <email>hychen@mail.mcut.edu.tw</email>; Tel.: 886-2-29089899 ext.4527; Fax: 886-2-29063269.</corresp></author-notes>
<pub-date pub-type="collection">
<year>2010</year></pub-date>
<pub-date pub-type="epub">
<day>24</day>
<month>11</month>
<year>2010</year></pub-date>
<volume>10</volume><issue>12</issue>
<fpage>10545</fpage>
<lpage>10559</lpage>
<history>
<date date-type="received">
<day>1</day>
<month>10</month>
<year>2010</year></date>
<date date-type="rev-recd">
<day>27</day>
<month>10</month>
<year>2010</year></date>
<date date-type="accepted">
<day>22</day>
<month>11</month>
<year>2010</year></date></history>
<permissions>
<copyright-statement>© 2010 by the authors; licensee MDPI, Basel, Switzerland.</copyright-statement>
<copyright-year>2010</copyright-year>
<license>
<p>This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (<ext-link xlink:href="http://creativecommons.org/licenses/by/3.0/" ext-link-type="uri">http://creativecommons.org/licenses/by/3.0/</ext-link>).</p></license></permissions>
<abstract>
<p>Since the piezoelectrically actuated system has nonlinear and time-varying behavior, it is difficult to establish an accurate dynamic model for a model-based sensing and control design. Here, a model-free adaptive sliding controller is proposed to improve the small travel and hysteresis defects of piezoelectrically actuated systems. This sensing and control strategy employs the functional approximation technique (FAT) to establish the unknown function for eliminating the model-based requirement of the sliding-mode control. The piezoelectrically actuated system’s nonlinear functions can be approximated by using the combination of a finite number of weighted Fourier series basis functions. The unknown weighted vector can be estimated by an updating rule. The important advantage of this approach is to achieve the sliding-mode controller design without the system dynamic model requirement. The update laws for the coefficients of the Fourier series functions are derived from a Lyapunov function to guarantee the control system stability. This proposed controller is implemented on a piezoelectrically actuated X-Y table. The dynamic experimental result of this proposed FAT controller is compared with that of a traditional model-based sliding-mode controller to show the performance improvement for the motion tracking performance.</p></abstract>
<kwd-group>
<kwd>piezoelectrically actuated system</kwd>
<kwd>functional approximation technique</kwd>
<kwd>adaptive sliding controller</kwd></kwd-group></article-meta></front>
<body>
<sec sec-type="intro">
<label>1.</label>
<title>Introduction</title>
<p>Recently, the micro-positioner has become an important development target for meeting the requirements of the precision industry, such as in the semiconductor manufacturing process, biotechnology processes and opto-electronics systems. Since the piezoelectric actuator has many advantages, such as ultrahigh precision, high resolution, tiny size and quick response speed, it has been widely used as a micro-positioning table actuator in these production areas. Piezoelectric actuators can also be electrically controlled to move with a resolution on the order of nanometers. However, piezoelectric actuators also exhibit undesired serious hysteretic behaviors which limit the performance of piezoelectric actuated systems.</p>
<p>In recent years, different methods were proposed to drive the piezoelectric micropositioning mechanisms and control piezoelectrically actuated systems. Chang and Sun [<xref ref-type="bibr" rid="b1-sensors-10-10545">1</xref>] tried to control a two degree-of-freedom monolithic piezoelectric actuator with a linear resolution to 2 nm. Choi <italic>et al</italic>. [<xref ref-type="bibr" rid="b2-sensors-10-10545">2</xref>] designed a sliding-mode controller for fine motion tracking control of the objective lens in the vertical direction. Lin and Yang [<xref ref-type="bibr" rid="b3-sensors-10-10545">3</xref>] employed a PI feedback control associated with feedforward compensation based on the hysteresis observer to compensate the nonlinearity of piezoelectric actuator. Bashash and Jalili [<xref ref-type="bibr" rid="b4-sensors-10-10545">4</xref>] proposed a modeling and control methodology for real-time compensation of nonlinearities along with precision trajectory control of piezoelectric actuators in various range of frequency operation. Liaw <italic>et al</italic>. [<xref ref-type="bibr" rid="b5-sensors-10-10545">5</xref>] presented a robust motion tracking control methodology for flexure-based four-bar micro/nano manipulator driven by a piezoelectric actuator. In addition, many control techniques involving feedback and feedforward-feedback features have been proposed to remove the hysteresis-caused tracking errors [<xref ref-type="bibr" rid="b6-sensors-10-10545">6</xref>–<xref ref-type="bibr" rid="b10-sensors-10-10545">10</xref>]. However, these feedback control techniques do not utilize a precise hysteresis model, in contrast, the feedforward-feedback algorithms deal with the hysteresis and structural dynamics separately. A compensator is added into the feedforward loop to cancel out the undesired effects caused by the hysteresis while designing a feedback controller to control the structural dynamic effects. The feedforward compensator can be used to deal with nonlinear hysteretic effects; however, the effectiveness of the method relies heavily on the accuracy of the inverse hysteresis model.</p>
<p>Although a piezoelectric actuator has the advantages of high resolution, quick response speed and high power-volume ratio, it has serious hysteresis behavior and small travel defects. Hence, it is difficult to establish an accurate dynamic model for model-based control design. In this paper, a model-free functional approximation based adaptive sliding-mode controller is employed to eliminate this model-based requirement. The functional approximation technique (FAT) was utilized to design an adaptive sliding controller for different nonlinear systems containing time-varying uncertainties [<xref ref-type="bibr" rid="b11-sensors-10-10545">11</xref>–<xref ref-type="bibr" rid="b13-sensors-10-10545">13</xref>]. This control scheme is proposed for nonlinear systems with unknown bound time-varying uncertainties. This approach can estimate the system dynamics and uncertainties on-line and no prior knowledge of the system dynamics is required. The uncertainties are represented by using finite linear combinations of basis functions with unknown constant weighting vectors. Appropriate update laws for the weighting vectors can be selected based on the Lyapunov theory to guarantee the system stability. Asymptotic convergence of the output error can be obtained if sufficient number of basis functions is used. The optimal expansion coefficients are also updated on-line and used in constructing the adaptive control input. Here, the functional approximation based adaptive sliding-mode controller is designed for a piezoelectric actuated X–Y table system tracking control.</p>
<p>This paper is organized as follows: Section 2 describes the piezoelectrically actuated X–Y table system structure. The approximate linear model and system identification process are presented in Section 3. This identified model can be used to design the model-based controller for comparison. Section 4 describes the functional approximation technique. The methodology of controller design and the stability analysis are derived in Section 5. Section 6 describes the experimental results of the proposed FAT controller. The experimental results are compared with that of the model-based sliding controller to show the dynamic performance improvement of the proposed FAT controller. Final conclusions are presented in Section 7.</p></sec>
<sec>
<label>2.</label>
<title>The Experimental System Structure</title>
<p>A piezoelectrically actuated X–Y table shown in <xref ref-type="fig" rid="f1-sensors-10-10545">Figure 1</xref> was built for investigating the dynamic system control behavior. Two HR8 motors were used to actuate the X axis and Y axis, respectively. There is a linear response feature between the piezoelectric actuator velocity and the driver control voltage. The actuator and driver can be modeled as a DC motor with internal friction that is driven by a voltage amplifier. The driver generates a 39.6 kHz sinusoidal wave to drive the actuator with an amplitude function when a command voltage within ±10 V is sent to the driver unit. This constant oscillation frequency is generated from the driver unit which was supplied by Nanomotion Limited.</p>
<p>A PC-based controller was developed for experiments with this system. The X–Y table has two independent axes, X and Y, actuated by two different piezoelectric actuators. The experimental layout of this positioning system is shown in <xref ref-type="fig" rid="f2-sensors-10-10545">Figure 2</xref>. The control voltage is calculated on the PC, converted from a digital to an analogue signal by a D/A interface card and sent to the piezoelectric actuator driver unit to actuate the piezoelectric motor. The displacements of this X–Y table are sensing and measured by linear encoders and sent back to the PC via an encoder card for closed-loop control.</p>
<p>To simplify the model description, the system dynamics of the X axis or Y axis can be represented as the following second order model:
<disp-formula id="FD1">
<label>(1)</label>
<mml:math display="block">
<mml:mrow>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¨</mml:mo></mml:mover>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>f</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mi>b</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mi>u</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></disp-formula>where <italic>x</italic> is the displacement of X axis or Y axis stage, <italic>f</italic>(<italic>X</italic>,<italic>t</italic>) is a function of state variables, <italic>b(t)</italic> is the control gain and <italic>u(t)</italic> is the control voltage. The function <italic>f</italic>(<italic>X</italic>,<italic>t</italic>) is an unknown time-varying function with unknown variation bound. However, the bound of the unknown function <italic>b(t)</italic> can be estimated, <italic>i.e.</italic>, <italic>b</italic><sub>min</sub>≤<italic>b(t)</italic>≤<italic>b</italic><sub>max</sub> Define <italic>b(t)</italic> as:
<disp-formula id="FD2">
<label>(2)</label>
<mml:math display="block">
<mml:mi>b</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>b</mml:mi></mml:math></disp-formula>where <italic>b<sub>m</sub></italic> is the nominal value and Δ<italic>b</italic> is a bounded uncertainty value:
<disp-formula id="FD3">
<label>(3)</label>
<mml:math display="block">
<mml:mn>0</mml:mn>
<mml:mo>&lt;</mml:mo>
<mml:msub>
<mml:mi>τ</mml:mi>
<mml:mrow>
<mml:mtext>min</mml:mtext></mml:mrow></mml:msub>
<mml:mo>≤</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>b</mml:mi>
<mml:mo>≤</mml:mo>
<mml:msub>
<mml:mi>τ</mml:mi>
<mml:mrow>
<mml:mtext>max</mml:mtext></mml:mrow></mml:msub></mml:math></disp-formula></p>
<p>Since the system dynamics has nonlinear time-varying behavior with unknown uncertainty bounds it is difficult to establish an accurate dynamic model for model-based controller design. Here, the functional approximation technique is employed to approximate this unknown function <italic>f</italic>(<italic>X</italic>,<italic>t</italic>) for releasing the model requirement.</p></sec>
<sec>
<label>3.</label>
<title>System Identification</title>
<p>In order to evaluate the accuracy of a functional approximation with respect to the nonlinear function of the system, an approximate linear dynamic model for this piezoelectrically actuated X–Y table, instead of the original system model, is identified based on system input-output data. A pseudo-random-binary-sequences (PRBS) signal with appropriate amplitude is chosen as the input signal to excite the piezoelectrically actuated system. The transfer function <italic>M</italic>(<italic>q</italic>) describes the relationship between the voltage input and the sprung mass position output is chosen as an auto-regressive (ARX) model:
<disp-formula id="FD4">
<label>(4)</label>
<mml:math display="block">
<mml:mi>M</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>q</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>B</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>q</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>q</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac></mml:math></disp-formula>where <italic>A</italic>(<italic>q</italic>) = 1 + <italic>a</italic><sub>1</sub><italic>q</italic><sup>−1</sup> <italic>+</italic> … + <italic>a<sub>n<sub>a</sub></sub></italic> <italic>q</italic><sup>−<italic>n</italic><sub><italic>z</italic></sub></sup>, <italic>B</italic>(<italic>q</italic>) <italic>= b</italic><sub>1</sub><italic>q</italic><sup>−1</sup> + … + <italic>b<sub>n<sub>b</sub></sub></italic> <italic>q</italic><sup>−<italic>n</italic><sub><italic>b</italic></sub></sup> and <italic>q</italic> is the shift operator. To simplify the model description, the second order approximate transfer function models are selected and identified by using the MATLAB’s identification toolbox for X axis and Y axis of the X–Y table, respectively:
<disp-formula id="FD5">
<label>(5)</label>
<mml:math display="block">
<mml:msub>
<mml:mi>M</mml:mi>
<mml:mi>x</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>q</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>78.24</mml:mn></mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>q</mml:mi>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:mn>0.7202</mml:mn>
<mml:mi>q</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>0.3588</mml:mn></mml:mrow></mml:mfrac></mml:math></disp-formula>
<disp-formula id="FD6">
<label>(6)</label>
<mml:math display="block">
<mml:msub>
<mml:mi>M</mml:mi>
<mml:mi>y</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>q</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>16.8</mml:mn></mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>q</mml:mi>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:mn>0.2815</mml:mn>
<mml:mi>q</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>0.4079</mml:mn></mml:mrow></mml:mfrac></mml:math></disp-formula></p>
<p>The estimation output of these two identified models and the system experimental output with PRBS input voltage excitations are plotted in <xref ref-type="fig" rid="f3-sensors-10-10545">Figures 3(a)</xref> and <xref ref-type="fig" rid="f3-sensors-10-10545">3(b)</xref> for comparison. The solid line represents the measured system output and the dotted line depicts the simulated model response. It can be observed that the dynamic behavior of the identified model is matched well the piezoelectrically actuated system’s dynamic response. The difference between both response curves is due to the system’s nonlinear, time-varying behavior and hysterisis dynamics effects. Based on these identified models, the unknown time-varying functions can be estimated and used to evaluate the accuracy of the functional approximation scheme. In addition, a model-based sliding-mode controller can be designed based on the estimation models. Its control performance will be compared with that of the proposed FAT controller.</p></sec>
<sec>
<label>4.</label>
<title>Functional Approximation Technique</title>
<p>If a piecewise continuous time varying function <italic>h</italic>(<italic>t</italic>) satisfies the Dirichlet conditions, it can be transformed into a generalized Fourier series expansion within a time interval [0,<italic>T</italic>]:
<disp-formula id="FD7">
<label>(7)</label>
<mml:math display="block">
<mml:mi>h</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mn>0</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mo>∞</mml:mo></mml:munderover>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mtext>cos</mml:mtext>
<mml:msub>
<mml:mi>ω</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mtext>sin</mml:mtext>
<mml:msub>
<mml:mi>ω</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></disp-formula>where <italic>a</italic><sub>0</sub>, <italic>a<sub>n</sub></italic>, and <italic>b<sub>n</sub></italic> are the Fourier coefficients and 
<inline-formula>
<mml:math>
<mml:msub>
<mml:mi>ω</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>n</mml:mi>
<mml:mi>π</mml:mi></mml:mrow>
<mml:mi>T</mml:mi></mml:mfrac></mml:math></inline-formula> is the frequency of the sinusoidal function. Define:
<disp-formula id="FD8">
<label>(8)</label>
<mml:math display="block">
<mml:mi>Z</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mn>1</mml:mn>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mtext>cos</mml:mtext>
<mml:msub>
<mml:mi>ω</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mi>t</mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mtext>sin</mml:mtext>
<mml:msub>
<mml:mi>ω</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mi>t</mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mtext>cos</mml:mtext>
<mml:msub>
<mml:mi>ω</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mi>t</mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mtext>sin</mml:mtext>
<mml:msub>
<mml:mi>ω</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mi>t</mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mo>⋯</mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mtext>cos</mml:mtext>
<mml:msub>
<mml:mi>ω</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mi>t</mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mtext>sin</mml:mtext>
<mml:msub>
<mml:mi>ω</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">]</mml:mo></mml:mrow>
<mml:mi>T</mml:mi></mml:msup></mml:math></disp-formula>
<disp-formula id="FD9">
<label>(9)</label>
<mml:math display="block">
<mml:mi>W</mml:mi>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mn>0</mml:mn></mml:msub>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mo>⋯</mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mo stretchy="false">]</mml:mo></mml:mrow>
<mml:mi>T</mml:mi></mml:msup></mml:math></disp-formula>then <xref ref-type="disp-formula" rid="FD7">Equation (7)</xref> can be rewritten as:
<disp-formula id="FD10">
<label>(10)</label>
<mml:math display="block">
<mml:mi>h</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mi>W</mml:mi>
<mml:mi>T</mml:mi></mml:msup>
<mml:mi>Z</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mi>ɛ</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:math></disp-formula>where ɛ(<italic>t</italic>) is the approximation error. When <italic>n</italic> is large enough, <italic>h</italic>(<italic>t</italic>) can be approximated as:
<disp-formula id="FD11">
<label>(11)</label>
<mml:math display="block">
<mml:mi>h</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>≈</mml:mo>
<mml:msup>
<mml:mi>W</mml:mi>
<mml:mi>T</mml:mi></mml:msup>
<mml:mi>Z</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:math></disp-formula></p>
<p>The unknown time-varying function <italic>f</italic>(<italic>X</italic>,<italic>t</italic>) in <xref ref-type="disp-formula" rid="FD1">Equation (1)</xref> can be approximated by a linear combination of a finite orthogonal basis functions <italic>Z</italic>(<italic>t</italic>) to arbitrarily prescribed accuracy as long as <italic>n</italic> is large enough:
<disp-formula id="FD12">
<label>(12)</label>
<mml:math display="block">
<mml:mi>f</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>≈</mml:mo>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>f</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:math></disp-formula>where <italic>Z<sub>f</sub></italic>(<italic>t</italic>) is a orthogonal basis function vector and <italic>W<sub>f</sub></italic> is a weighting coefficient vector. If the number of the basis functions is large enough, <xref ref-type="disp-formula" rid="FD12">Equation (12)</xref> can be described as the following approximation form:
<disp-formula id="FD13">
<label>(13)</label>
<mml:math display="block">
<mml:mi>f</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>f</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:math></disp-formula>where <italic>Z<sub>f</sub></italic> (<italic>t</italic>) = [<italic>Z</italic><sub>1</sub>(<italic>t</italic>) <italic>Z</italic><sub>2</sub>(<italic>t</italic>) … <italic>Z<sub>n</sub></italic>(<italic>t</italic>)]<italic><sup>T</sup></italic>, and <italic>W<sub>f</sub></italic> = [<italic>W</italic><sub>1</sub> <italic>W</italic><sub>2</sub> … <italic>W<sub>n</sub></italic>]<italic><sup>T</sup></italic>. This functional approximation in <xref ref-type="disp-formula" rid="FD13">Equation (13)</xref> can be used to represent an unknown function with uncertainty and disturbance. The time-varying vector <italic>Z<sub>f</sub></italic>(<italic>t</italic>) is a known function and the vector <italic>W<sub>f</sub></italic> is an unknown regulating constant. A proper Lyapunov function can be selected to find the update laws for these unknown constants based on Lyapunov stability theory.</p></sec>
<sec sec-type="methods">
<label>5.</label>
<title>Controller Design and Stability Analysis</title>
<p>The objective of this study was to develop a FAT based model-free adaptive sliding-mode controller for a piezoelectrically actuated system. Its control performance is compared with that of a traditional sliding-mode controller based on an identified model, <xref ref-type="disp-formula" rid="FD5">Equations (5)</xref> and <xref ref-type="disp-formula" rid="FD6">(6)</xref>. The control law design and stability analysis for X axis are described in the following sections.</p>
<sec>
<label>5.1.</label>
<title>Functional Approximation Based Adaptive Sliding-Mode Controller</title>
<p>Due to the piezoelectrically actuated system has nonlinear time-varying dynamics, the functional approximation technique is employed to replace the unknown nonlinear functions for a sliding-mode control design. The system control block diagram of this piezoelectrically actuated X–Y table is shown in <xref ref-type="fig" rid="f4-sensors-10-10545">Figure 4</xref>. The adaptive laws of the function coefficients can be derived from Lyapunov stability theorem. The sliding surface of this second order system can be defined as:
<disp-formula id="FD14">
<label>(14)</label>
<mml:math display="block">
<mml:mi>s</mml:mi>
<mml:mo>=</mml:mo>
<mml:mover accent="true">
<mml:mi>e</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>+</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mi>e</mml:mi></mml:math></disp-formula>where the positive parameter <italic>λ</italic> implies the convergent rate of <italic>x</italic> on the sliding surface. The time derivative of <italic>s</italic> can be derived as:
<disp-formula id="FD15">
<label>(15)</label>
<mml:math display="block">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mover accent="true">
<mml:mi>s</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>=</mml:mo>
<mml:mover accent="true">
<mml:mi>e</mml:mi>
<mml:mo>¨</mml:mo></mml:mover>
<mml:mo>+</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mover accent="true">
<mml:mi>e</mml:mi>
<mml:mo>˙</mml:mo></mml:mover></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mo>=</mml:mo>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¨</mml:mo></mml:mover>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¨</mml:mo></mml:mover>
<mml:mi>r</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mover accent="true">
<mml:mi>e</mml:mi>
<mml:mo>˙</mml:mo></mml:mover></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>where <italic>x<sub>r</sub></italic> is the desired value of <italic>x</italic>. Substituting <xref ref-type="disp-formula" rid="FD1">Equation (1)</xref> into <xref ref-type="disp-formula" rid="FD15">Equation (15)</xref>, yields:
<disp-formula id="FD16">
<label>(16)</label>
<mml:math display="block">
<mml:mover accent="true">
<mml:mi>s</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>=</mml:mo>
<mml:mi>f</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mi>b</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mi>u</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¨</mml:mo></mml:mover>
<mml:mi>r</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mover accent="true">
<mml:mi>e</mml:mi>
<mml:mo>˙</mml:mo></mml:mover></mml:math></disp-formula></p>
<p>In order to achieve the sliding surface reaching condition and establish the approximation error compensation, the control law <italic>u(t)</italic> can be designed as:
<disp-formula id="FD17">
<label>(17)</label>
<mml:math display="block">
<mml:mi>u</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>m</mml:mi></mml:msub></mml:mrow></mml:mfrac>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>−</mml:mo>
<mml:mover accent="true">
<mml:mi>f</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¨</mml:mo></mml:mover>
<mml:mi>r</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mover accent="true">
<mml:mi>e</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>−</mml:mo>
<mml:mi>η</mml:mi>
<mml:mtext>sgn</mml:mtext>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">)</mml:mo></mml:math></disp-formula>where <italic>f̂</italic> is the functional approximation value of <italic>f</italic>(<italic>X</italic>,<italic>t</italic>) The positive constant <italic>η</italic> is a design parameter for achieving an appropriate robustness. Substituting <xref ref-type="disp-formula" rid="FD17">Equation (17)</xref> into <xref ref-type="disp-formula" rid="FD16">Equation (16)</xref>, we obtain:
<disp-formula id="FD18">
<label>(18)</label>
<mml:math display="block">
<mml:mover accent="true">
<mml:mi>s</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>=</mml:mo>
<mml:mo>−</mml:mo>
<mml:mi>η</mml:mi>
<mml:mtext>sgn</mml:mtext>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>f</mml:mi>
<mml:mo>−</mml:mo>
<mml:mover accent="true">
<mml:mi>f</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>b</mml:mi>
<mml:mi>u</mml:mi></mml:math></disp-formula></p>
<p>Here, <italic>f</italic> and <italic>f̂</italic> are assumed to be unknown bounded piece-wise continuous functions and satisfy the Dirichlet conditions. Then, they can be presented by the functional approximation technique as:
<disp-formula id="FD19">
<label>(19)</label>
<mml:math display="block">
<mml:mi>f</mml:mi>
<mml:mo>=</mml:mo>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>f</mml:mi></mml:msub></mml:math></disp-formula>
<disp-formula id="FD20">
<label>(20)</label>
<mml:math display="block">
<mml:mover accent="true">
<mml:mi>f</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mo>=</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>f</mml:mi></mml:msub></mml:math></disp-formula>where <italic>W<sub>f</sub></italic>,<italic>Ŵ<sub>f</sub></italic> ∈ ℜ<italic><sup>n</sup></italic> are weighting vectors and <italic>Z<sub>f</sub></italic> ∈ ℜ<italic><sup>n</sup></italic> is a vector of basis Fourier series function. Hence, the <xref ref-type="disp-formula" rid="FD18">Equation (18)</xref> can be rewritten as:
<disp-formula id="FD21">
<label>(21)</label>
<mml:math display="block">
<mml:mover accent="true">
<mml:mi>s</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>=</mml:mo>
<mml:mo>−</mml:mo>
<mml:mi>η</mml:mi>
<mml:mtext>sgn</mml:mtext>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>f</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>b</mml:mi>
<mml:mi>u</mml:mi></mml:math></disp-formula>where:
<disp-formula id="FD22">
<label>(22)</label>
<mml:math display="block">
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup></mml:math></disp-formula></p>
<p>To prove the stability of this control system and find the update laws for vector <italic>Ŵ<sub>f</sub></italic>, a Lyapunov function candidate is chosen as:
<disp-formula id="FD23">
<label>(23)</label>
<mml:math display="block">
<mml:mi>V</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:msub>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mi>f</mml:mi></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn></mml:mfrac>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn></mml:mfrac>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mi>f</mml:mi></mml:msub>
<mml:msub>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mi>f</mml:mi></mml:msub></mml:math></disp-formula>where <italic>Q<sub>f</sub></italic> ∈ ℜ<italic><sup>n×n</sup></italic> is a symmetric positive definite matrix. By taking the time derivative of the Lyapunov function candidate, we can obtain:
<disp-formula id="FD24">
<label>(24)</label>
<mml:math display="block">
<mml:mover accent="true">
<mml:mi>V</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:msub>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mi>f</mml:mi></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>s</mml:mi>
<mml:mover accent="true">
<mml:mi>s</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mi>f</mml:mi></mml:msub>
<mml:msub>
<mml:mover accent="true">
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mi>f</mml:mi></mml:msub></mml:math></disp-formula></p>
<p>Since 
<inline-formula>
<mml:math>
<mml:msubsup>
<mml:mover accent="true">
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup></mml:math></inline-formula>, the <xref ref-type="disp-formula" rid="FD24">Equation (24)</xref> can be rewritten as:
<disp-formula id="FD25">
<label>(25)</label>
<mml:math display="block">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mover accent="true">
<mml:mi>V</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:msub>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mi>f</mml:mi></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>−</mml:mo>
<mml:mi>η</mml:mi>
<mml:mtext>sgn</mml:mtext>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>f</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>b</mml:mi>
<mml:mi>u</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mi>f</mml:mi></mml:msub>
<mml:msub>
<mml:mover accent="true">
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mi>f</mml:mi></mml:msub></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mo>=</mml:mo>
<mml:mo>−</mml:mo>
<mml:mi>η</mml:mi>
<mml:mo>|</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo>|</mml:mo>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>˜</mml:mo></mml:mover>
<mml:mi>f</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>f</mml:mi></mml:msub>
<mml:mi>s</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mi>f</mml:mi></mml:msub>
<mml:msub>
<mml:mover accent="true">
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mi>f</mml:mi></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>b</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>s</mml:mi></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>The update law for <italic>Ŵ<sub>f</sub></italic> is chosen as:
<disp-formula id="FD26">
<label>(26)</label>
<mml:math display="block">
<mml:msub>
<mml:mover accent="true">
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mi>f</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msubsup>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>f</mml:mi></mml:msub>
<mml:mi>s</mml:mi></mml:math></disp-formula></p>
<p>Then, the <xref ref-type="disp-formula" rid="FD25">Equation (25)</xref> can be further rewritten as:
<disp-formula id="FD27">
<label>(27)</label>
<mml:math display="block">
<mml:mover accent="true">
<mml:mi>V</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>=</mml:mo>
<mml:mo>−</mml:mo>
<mml:mi>η</mml:mi>
<mml:mo>|</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo>|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>b</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>s</mml:mi></mml:math></disp-formula></p>
<p>In order to cover the uncertainty of the unknown function <italic>b</italic>(<italic>t</italic>), and establish an appropriate robustness, the parameter η can be specified as:
<disp-formula id="FD28">
<label>(28)</label>
<mml:math display="block">
<mml:mi>η</mml:mi>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>τ</mml:mi>
<mml:mrow>
<mml:mtext>max</mml:mtext></mml:mrow></mml:msub>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mtext>max</mml:mtext></mml:mrow></mml:msub></mml:math></disp-formula>where <italic>τ</italic><sub>max</sub> and <italic>u</italic><sub>max</sub> are the maximum values of Δ<italic>b</italic> and <italic>u</italic>, respectively. Then the <xref ref-type="disp-formula" rid="FD27">Equation (27)</xref> results in:
<disp-formula id="FD29">
<label>(29)</label>
<mml:math display="block">
<mml:mover accent="true">
<mml:mi>V</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>≤</mml:mo>
<mml:mn>0</mml:mn></mml:math></disp-formula></p>
<p>That means this control system stability can be guaranteed by using the update laws shown in <xref ref-type="disp-formula" rid="FD26">Equation (26)</xref>. Based on Barbarlet’s lemma [<xref ref-type="bibr" rid="b14-sensors-10-10545">14</xref>], the convergence of the system output error can be guaranteed by using the control law <italic>u</italic>(<italic>t</italic>), <xref ref-type="disp-formula" rid="FD17">Equation (17)</xref>. The design procedure of the controller for Y axis is similar to that of X axis.</p></sec>
<sec sec-type="methods">
<label>5.2.</label>
<title>Model-Based Sliding-Mode Controller Design</title>
<p>The sliding-mode control theory has been widely employed to control nonlinear dynamic systems, especially the systems that have model uncertainties and external disturbances. It employs a discontinuous control effort to drive the system toward a sliding surface, and then switching on that surface. Theoretically, it will gradually approach the control target, the origin of the phase plane [<xref ref-type="bibr" rid="b15-sensors-10-10545">15</xref>,<xref ref-type="bibr" rid="b16-sensors-10-10545">16</xref>]. In this section, a model-based sliding-mode controller is designed for the X axis of the piezoelectrically actuated system based on the estimated models. Firstly, the time-varying second order system model is approximately represented as the form:
<disp-formula id="FD30">
<label>(30)</label>
<mml:math display="block">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¨</mml:mo></mml:mover>
<mml:mo>=</mml:mo>
<mml:mo>−</mml:mo>
<mml:mi>A</mml:mi>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:mi>B</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mi>G</mml:mi>
<mml:mi>u</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mi>D</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mo>=</mml:mo>
<mml:mo>−</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>A</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>−</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>B</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>·</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mi>u</mml:mi>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>D</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>These system parameters have time-varying behavior. Their variation bounds are assumed as:
<disp-formula id="FD31">
<label>(31)</label>
<mml:math display="block">
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>A</mml:mi>
<mml:mo>|</mml:mo>
<mml:mo>&lt;</mml:mo>
<mml:mi>α</mml:mi></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>B</mml:mi>
<mml:mo>|</mml:mo>
<mml:mo>&lt;</mml:mo>
<mml:mi>β</mml:mi></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>D</mml:mi>
<mml:mo>|</mml:mo>
<mml:mo>&lt;</mml:mo>
<mml:mi>γ</mml:mi></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>≤</mml:mo>
<mml:msub>
<mml:mi>δ</mml:mi>
<mml:mrow>
<mml:mtext>min</mml:mtext></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mtext>min</mml:mtext></mml:mrow></mml:msub></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>m</mml:mi></mml:msub></mml:mrow></mml:mfrac>
<mml:mo>≤</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>≤</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mtext>max</mml:mtext></mml:mrow></mml:msub></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>m</mml:mi></mml:msub></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>δ</mml:mi>
<mml:mrow>
<mml:mtext>max</mml:mtext></mml:mrow></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:math></disp-formula></p>
<p>The sliding surface for this second order system can be defined as:
<disp-formula id="FD32">
<label>(32)</label>
<mml:math display="block">
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mover accent="true">
<mml:mi>e</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>λ</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mi>e</mml:mi></mml:math></disp-formula>where the positive constant <italic>λ<sub>s</sub></italic> implies the convergent rate of <italic>x</italic> on the sliding surface. Substituting <xref ref-type="disp-formula" rid="FD30">Equation (30)</xref> into the time derivative of <italic>s<sub>s</sub></italic>, we obtain:
<disp-formula id="FD33">
<label>(33)</label>
<mml:math display="block">
<mml:msub>
<mml:mover accent="true">
<mml:mi>s</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mo>−</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>A</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>−</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>B</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>·</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>D</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¨</mml:mo></mml:mover>
<mml:mi>r</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>λ</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mover accent="true">
<mml:mi>e</mml:mi>
<mml:mo>˙</mml:mo></mml:mover></mml:math></disp-formula></p>
<p>The control law <italic>u<sub>s</sub></italic>(<italic>t</italic>) can be chosen as:
<disp-formula id="FD34">
<label>(34)</label>
<mml:math display="block">
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>m</mml:mi></mml:msub></mml:mrow></mml:mfrac>
<mml:mo stretchy="false">[</mml:mo>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mi>x</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¨</mml:mo></mml:mover>
<mml:mi>r</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>λ</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mover accent="true">
<mml:mi>e</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>η</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mtext>sgn</mml:mtext>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">]</mml:mo></mml:math></disp-formula></p>
<p>Substituting <xref ref-type="disp-formula" rid="FD34">Equation (34)</xref> into <xref ref-type="disp-formula" rid="FD33">Equation (33)</xref>, gives:
<disp-formula id="FD35">
<label>(35)</label>
<mml:math display="block">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>s</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mi>s</mml:mi></mml:msub></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mo>=</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">[</mml:mo>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mi>x</mml:mi>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¨</mml:mo></mml:mover>
<mml:mi>r</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>λ</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mover accent="true">
<mml:mi>e</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo stretchy="false">]</mml:mo>
<mml:mo>−</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>A</mml:mi>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>−</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>B</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>D</mml:mi>
<mml:mo>−</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>D</mml:mi>
<mml:msub>
<mml:mi>η</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mtext>sgn</mml:mtext>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow/></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi> </mml:mi>
<mml:mo>=</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mover accent="true">
<mml:mi>u</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mo>−</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>A</mml:mi>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>−</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>B</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>+</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>D</mml:mi>
<mml:mo>−</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>G</mml:mi>
<mml:msub>
<mml:mi>η</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mtext>sgn</mml:mtext>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:math></disp-formula>where:
<disp-formula id="FD36">
<label>(36)</label>
<mml:math display="block">
<mml:msub>
<mml:mover accent="true">
<mml:mi>u</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mi>x</mml:mi>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¨</mml:mo></mml:mover>
<mml:mi>r</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>λ</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mover accent="true">
<mml:mi>e</mml:mi>
<mml:mo>˙</mml:mo></mml:mover></mml:math></disp-formula></p>
<p>Multiplying both sides of <xref ref-type="disp-formula" rid="FD35">Equation (35)</xref> with the sliding variable <italic>s<sub>s</sub></italic>, it can be written as:
<disp-formula id="FD37">
<label>(37)</label>
<mml:math display="block">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:msub>
<mml:mover accent="true">
<mml:mi>s</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>u</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mi>s</mml:mi></mml:msub>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>A</mml:mi>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>B</mml:mi>
<mml:mi>x</mml:mi>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>D</mml:mi>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>G</mml:mi>
<mml:mi>η</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub>
<mml:mtext>sgn</mml:mtext>
<mml:mo>|</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>|</mml:mo></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mo>≤</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>δ</mml:mi>
<mml:mrow>
<mml:mtext>min</mml:mtext></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>|</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>u</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>|</mml:mo>
<mml:mo>|</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mi>α</mml:mi>
<mml:mo>|</mml:mo>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>|</mml:mo>
<mml:mo>|</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mi>β</mml:mi>
<mml:mo>|</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo>|</mml:mo>
<mml:mo>|</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mi>γ</mml:mi>
<mml:mo>|</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>|</mml:mo>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>δ</mml:mi>
<mml:mrow>
<mml:mtext>min</mml:mtext></mml:mrow></mml:msub>
<mml:msub>
<mml:mi>η</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>|</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>|</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>If the robustness parameter η<sub>1</sub> is selected as:
<disp-formula id="FD38">
<label>(38)</label>
<mml:math display="block">
<mml:msub>
<mml:mi>η</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>≥</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msub>
<mml:mi>δ</mml:mi>
<mml:mrow>
<mml:mtext>min</mml:mtext></mml:mrow></mml:msub></mml:mrow></mml:mfrac>
<mml:mo stretchy="false">[</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>δ</mml:mi>
<mml:mrow>
<mml:mtext>min</mml:mtext></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>|</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>u</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mi>α</mml:mi>
<mml:mo>|</mml:mo>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mo>|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mi>β</mml:mi>
<mml:mo>|</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo>|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mi>γ</mml:mi>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>η</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">]</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:msub>
<mml:mi>η</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo>&gt;</mml:mo>
<mml:mn>0</mml:mn></mml:math></disp-formula></p>
<p>Then the <xref ref-type="disp-formula" rid="FD37">Equation (37)</xref> results in:
<disp-formula id="FD39">
<label>(39)</label>
<mml:math display="block">
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:msub>
<mml:mover accent="true">
<mml:mi>s</mml:mi>
<mml:mo>˙</mml:mo></mml:mover>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>≤</mml:mo>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>η</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo>|</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>|</mml:mo>
<mml:mo>&lt;</mml:mo>
<mml:mn>0</mml:mn></mml:math></disp-formula></p>
<p>That means the system stability can be achieved by choosing an appropriate robustness gain constant η<sub>1</sub>. In addition, the control law <italic>u<sub>s</sub></italic>(<italic>t</italic>), <xref ref-type="disp-formula" rid="FD34">Equation (34)</xref>, can guarantee the system output error convergence.</p></sec></sec>
<sec sec-type="results">
<label>6.</label>
<title>Experimental Results</title>
<p>In order to investigate the performance of the proposed controller, the following experiments were performed. The sampling frequency was chosen as 1,000 Hz. The following control parameters are chosen for the functional approximation based adaptive sliding-mode controller: the sliding surface parameter <italic>λ</italic> is chosen as 230 and 220 for the X axis and Y axis, respectively. The robustness parameter η can be estimated based on <xref ref-type="disp-formula" rid="FD28">Equation (28)</xref>. It is selected as 23,000 and 25,000 for the X axis and Y axis, respectively. In order to improve the control law chattering behavior, the sgn(<italic>s</italic>) function in <xref ref-type="disp-formula" rid="FD17">Equation (17)</xref> is replaced by the saturation function <italic>sat</italic>(<italic>s</italic>/ф) with a boundary layer thickness <italic>ф</italic> = 0.1 and 0.05 for X axis and Y axis, respectively. The nominal value of the control gain <italic>b<sub>m</sub></italic> is selected as 78.24 for X axis and 16.8 for Y axis, respectively, based on the estimation model, <xref ref-type="disp-formula" rid="FD5">Equations (5)</xref> and <xref ref-type="disp-formula" rid="FD6">(6)</xref>. The weighting matrix <italic>Q<sub>f</sub></italic> of the Fourier series function coefficients is set as a small constant matrix <italic>Q<sub>f</sub></italic> = 0.01 [<italic>I</italic>] to increase the converging speed. The first fifteen terms of the Fourier series functions are chosen as the functional approximation basis functions.</p>
<p>Based on the system identification model, <xref ref-type="disp-formula" rid="FD5">Equations (5)</xref> and <xref ref-type="disp-formula" rid="FD6">(6)</xref>, the parameters <italic>A<sub>m</sub></italic> = 0.7202 and 0.2815, <italic>B<sub>m</sub></italic> = 0.3588 and 0.4079, and <italic>G<sub>m</sub></italic> = 78.24 and 16.8, are employed to design the model based sliding-mode controller for X axis and Y axis, respectively. The converging parameter, η<sub>2</sub>, of the sliding surface reaching condition, <xref ref-type="disp-formula" rid="FD38">Equation (38)</xref>, is chosen as 700 and 800 for X axis and Y axis, respectively. The parameter <italic>λ<sub>s</sub></italic> which influences the converging slope of the sliding surface was chosen as 70 and 80 for X axis and Y axis, respectively. The values of these control parameters are not critical for practical implementation.</p>
<sec>
<title/>
<sec>
<title>Case A: The Circular Trajectory Tracking</title>
<p>In this case, a 2 cm diameter circular contour is designed for the two-dimensional motion control. This circular contour can be generated by the accumulation of the angles as a function of time for the X axis and Y axis. The experimental result for the tracking response of the X–Y table is shown in <xref ref-type="fig" rid="f5-sensors-10-10545">Figure 5</xref>.</p>
<p>It can be observed that a good tracking response can be obtained for the X–Y table for the reference circular contour by using the proposed FAT based adaptive sliding controller. The displacements of X axis and Y axis are plotted in <xref ref-type="fig" rid="f6-sensors-10-10545">Figures 6(a)</xref> and <xref ref-type="fig" rid="f6-sensors-10-10545">6(b)</xref>, respectively.</p>
<p>The dashed line shows the reference circular contour signal, the solid line depicts the tracking response by using the proposed FAT based adaptive sliding controller and the dotted line denotes the tracking response by using a traditional model-based sliding-mode controller. The tracking errors of the X axis and Y axis are shown in <xref ref-type="fig" rid="f7-sensors-10-10545">Figures 7(a)</xref> and <xref ref-type="fig" rid="f7-sensors-10-10545">7(b)</xref> for comparison. The solid line exhibits the tracking error by using the proposed FAT based adaptive sliding controller and the dotted line denotes the tracking error by using a traditional model-based sliding-mode controller. It can be observed that the maximum X axis tracking errors are 0.21 mm and 0.017 mm for the model-based sliding-mode controller and the proposed FAT based adaptive sliding controller, respectively. The maximum Y axis tracking errors are 0.42 mm and 0.028 mm for the model-based sliding-mode controller and the proposed FAT based adaptive sliding controller, respectively. The root mean square (RMS) values of the tracking error for X axis are 0.1351 mm and 0.0169 mm for the model-based sliding-mode controller and the proposed FAT based adaptive sliding controller, respectively. The RMS values of the tracking error for Y axis are 0.2991 mm and 0.0202 mm for the model-based sliding-mode controller and the proposed FAT based adaptive sliding controller, respectively.</p></sec>
<sec>
<title>Case B: The Window Contour Trajectory Tracking</title>
<p>In this case, a window contour, shown in <xref ref-type="fig" rid="f8-sensors-10-10545">Figure 8</xref>, was designed for the two-dimensional motion control. This window contour can be generated by the accumulation of the angles as a function of time for the X axis and Y axis. The experimental result on the tracking response of the X–Y table is shown in <xref ref-type="fig" rid="f8-sensors-10-10545">Figure 8</xref>. It can be observed that a good tracking response can be obtained for the reference window contour by using the proposed FAT based adaptive sliding controller.</p>
<p>The X axis and Y axis displacements are plotted in <xref ref-type="fig" rid="f9-sensors-10-10545">Figures 9(a)</xref> and <xref ref-type="fig" rid="f9-sensors-10-10545">9(b)</xref>, respectively. The dashed line exhibits the reference window contour signal, the solid line depicts the tracking response by using the proposed FAT based adaptive sliding controller and the dotted line denotes the tracking response by using a traditional model-based sliding-mode controller. The tracking error of X axis and Y axis are shown in <xref ref-type="fig" rid="f10-sensors-10-10545">Figures 10(a)</xref> and <xref ref-type="fig" rid="f10-sensors-10-10545">10(b)</xref> for comparison. The solid line exhibits the tracking error by using the proposed FAT based adaptive sliding controller and the dotted line denotes the tracking error by using a traditional model-based sliding-mode controller.</p>
<p>It can be observed that the maximum tracking errors of the X axis are 0.2 mm and 0.013 mm for the model-based sliding-mode controller and the proposed FAT based adaptive sliding controller, respectively. The maximum tracking errors of the Y axis are 0.15 mm and 0.024 mm for the model-based sliding-mode controller and the proposed FAT based adaptive sliding controller, respectively. The root mean square (RMS) values of the tracking error for X axis are 0.0532 mm and 0.0055 mm for the model-based sliding-mode controller and the proposed FAT based adaptive sliding controller, respectively. The RMS values of the tracking error for Y axis are 0.067 mm and 0.0069 mm for the model-based sliding-mode controller and the proposed FAT based adaptive sliding controller, respectively.</p></sec></sec></sec>
<sec sec-type="conclusions">
<label>7.</label>
<title>Conclusions</title>
<p>The piezoelectric actuating system has non-linear characteristics and time-varying behavior. It is difficult to design a model-based controller for this micro-positioning system. A model-free functional approximation based adaptive sliding controller was developed and successfully employed to control a piezoelectrically actuated X–Y table system. The stability of the proposed controller is guaranteed by means of the Lyapunov theorem. The control performances of the proposed FAT based controller and a model-based sliding-mode controller were compared in this study, too. Only 15 terms of Fourier series functions are used to approximate the nonlinear time-varying function for designing a sliding-mode controller and achieving good control performance. The tracking error can be reduced to less than 0.017 mm and 0.028 mm for the X axis and Y axis with two different tracking trajectories. The tracking error is much better than that of the traditional sliding-mode controller. The proposed approach can thus be effectively applied to control a piezoelectrically actuated system.</p></sec></body>
<back>
<ref-list>
<title>References</title>
<ref id="b1-sensors-10-10545"><label>1.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Chang</surname><given-names>T</given-names></name><name><surname>Sun</surname><given-names>X</given-names></name></person-group><article-title>Analysis and Control of Monolithic Piezoelectric Nano-Actuator</article-title><source>IEEE Trans Control Syst Techn</source><year>2001</year><volume>9</volume><fpage>69</fpage><lpage>75</lpage><pub-id pub-id-type="doi">10.1109/87.896747</pub-id></citation></ref>
<ref id="b2-sensors-10-10545"><label>2.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Choi</surname><given-names>SB</given-names></name><name><surname>Kim</surname><given-names>HK</given-names></name><name><surname>Lim</surname><given-names>SC</given-names></name><name><surname>Park</surname><given-names>YP</given-names></name></person-group><article-title>Position Tracking Control of an Optical Pick-Up Device Using Piezoceramic Actuator</article-title><source>Mechatronics</source><year>2001</year><volume>11</volume><fpage>691</fpage><lpage>705</lpage><pub-id pub-id-type="doi">10.1016/S0957-4158(00)00035-0</pub-id></citation></ref>
<ref id="b3-sensors-10-10545"><label>3.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lin</surname><given-names>CJ</given-names></name><name><surname>Yang</surname><given-names>SR</given-names></name></person-group><article-title>Precise Positioning of Piezo-Actuated Stages Using Hysteresis-Observer Based Control</article-title><source>Mechatronics</source><year>2006</year><volume>16</volume><fpage>417</fpage><lpage>426</lpage><pub-id pub-id-type="doi">10.1016/j.mechatronics.2006.03.005</pub-id></citation></ref>
<ref id="b4-sensors-10-10545"><label>4.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Bashash</surname><given-names>S</given-names></name><name><surname>Jalili</surname><given-names>N</given-names></name></person-group><article-title>Robust Multiple Frequency Trajectory Tracking Control of Piezoelectrically Driven Micro/Nanopositioning Systems</article-title><source>IEEE Trans Control Syst Techn</source><year>2007</year><volume>15</volume><fpage>867</fpage><lpage>878</lpage><pub-id pub-id-type="doi">10.1109/TCST.2007.902949</pub-id></citation></ref>
<ref id="b5-sensors-10-10545"><label>5.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Liaw</surname><given-names>HC</given-names></name><name><surname>Shirinzadeh</surname><given-names>B</given-names></name><name><surname>Smith</surname><given-names>J</given-names></name></person-group><article-title>Robust Motion Tracking Control of Piezo-Driven Flexure-Based Four-Bar Mechanism for Micro-Nano Manipulation</article-title><source>Mechatronics</source><year>2008</year><volume>18</volume><fpage>111</fpage><lpage>120</lpage><pub-id pub-id-type="doi">10.1016/j.mechatronics.2007.09.002</pub-id></citation></ref>
<ref id="b6-sensors-10-10545"><label>6.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Song</surname><given-names>G</given-names></name><name><surname>Zhao</surname><given-names>J</given-names></name><name><surname>Zhou</surname><given-names>X</given-names></name><name><surname>Abreu-García</surname><given-names>JAD</given-names></name></person-group><article-title>Tracking Control of a Piezoceramic Actuator with Hysteresis Compensation Using Inverse Preisach Model</article-title><source>IEEE Trans Mechatron</source><year>2005</year><volume>10</volume><fpage>198</fpage><lpage>209</lpage><pub-id pub-id-type="doi">10.1109/TMECH.2005.844708</pub-id></citation></ref>
<ref id="b7-sensors-10-10545"><label>7.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Tzen</surname><given-names>JJ</given-names></name><name><surname>Jeng</surname><given-names>SL</given-names></name><name><surname>Chieng</surname><given-names>WH</given-names></name></person-group><article-title>Modeling of Piezoelectric Actuator for Compensation and Controller Design</article-title><source>Precis Eng</source><year>2003</year><volume>27</volume><fpage>70</fpage><lpage>86</lpage><pub-id pub-id-type="doi">10.1016/S0141-6359(02)00183-6</pub-id></citation></ref>
<ref id="b8-sensors-10-10545"><label>8.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Tsai</surname><given-names>MS</given-names></name><name><surname>Chen</surname><given-names>JS</given-names></name></person-group><article-title>Robust Tracking Control of a Piezoactuator Using a New Approximate Hysteresis Model</article-title><source>J Dyn Syst Meas Contr</source><year>2003</year><volume>125</volume><fpage>96</fpage><lpage>102</lpage><pub-id pub-id-type="doi">10.1115/1.1540114</pub-id></citation></ref>
<ref id="b9-sensors-10-10545"><label>9.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Xue</surname><given-names>X</given-names></name><name><surname>Tang</surname><given-names>J</given-names></name></person-group><article-title>Robust and High Precision Control Using Piezoelectric Actuator Circuit and Integral Continuous Sliding Mode Control Design</article-title><source>J Sound Vib</source><year>2006</year><volume>293</volume><fpage>335</fpage><lpage>359</lpage><pub-id pub-id-type="doi">10.1016/j.jsv.2005.10.009</pub-id></citation></ref>
<ref id="b10-sensors-10-10545"><label>10.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Yeh</surname><given-names>TJ</given-names></name><name><surname>Lu</surname><given-names>SW</given-names></name><name><surname>Wu</surname><given-names>TY</given-names></name></person-group><article-title>Modeling and Identification of Hysteresis in Piezoelectric Actuator</article-title><source>J Dyn Syst Meas Contr</source><year>2006</year><volume>128</volume><fpage>189</fpage><lpage>196</lpage><pub-id pub-id-type="doi">10.1115/1.2192819</pub-id></citation></ref>
<ref id="b11-sensors-10-10545"><label>11.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Chen</surname><given-names>PC</given-names></name><name><surname>Huang</surname><given-names>AC</given-names></name></person-group><article-title>Adaptive Sliding Control of Non-Autonomous Active Suspension Systems with Time-Varying Loadings</article-title><source>J Sound Vib</source><year>2005</year><volume>282</volume><fpage>1119</fpage><lpage>1135</lpage><pub-id pub-id-type="doi">10.1016/j.jsv.2004.03.055</pub-id></citation></ref>
<ref id="b12-sensors-10-10545"><label>12.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Huang</surname><given-names>SJ</given-names></name><name><surname>Chen</surname><given-names>HY</given-names></name></person-group><article-title>Adaptive Sliding Controller with Self-Tuning Fuzzy Compensation for Vehicle Suspension Control</article-title><source>Mechatronics</source><year>2006</year><volume>16</volume><fpage>607</fpage><lpage>622</lpage><pub-id pub-id-type="doi">10.1016/j.mechatronics.2006.06.002</pub-id></citation></ref>
<ref id="b13-sensors-10-10545"><label>13.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Chen</surname><given-names>HY</given-names></name><name><surname>Huang</surname><given-names>SJ</given-names></name></person-group><article-title>A New Model-Free Adaptive Sliding Controller for Active Suspension System</article-title><source>Int J Syst Sci</source><year>2008</year><volume>39</volume><fpage>57</fpage><lpage>69</lpage><pub-id pub-id-type="doi">10.1080/00207720701669453</pub-id></citation></ref>
<ref id="b14-sensors-10-10545"><label>14.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Narendra</surname><given-names>KS</given-names></name><name><surname>Annaswamy</surname><given-names>AM</given-names></name></person-group><source>Stable Adaptive Systems</source><publisher-name>Prentice Hall</publisher-name><publisher-loc>Englewood Cliffs, NJ, USA</publisher-loc><year>1989</year></citation></ref>
<ref id="b15-sensors-10-10545"><label>15.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Utkin</surname><given-names>VI</given-names></name></person-group><article-title>Variable Structure Systems with Sliding Modes</article-title><source>IEEE Trans Automat Contr</source><year>1977</year><volume>AC-22</volume><fpage>212</fpage><lpage>222</lpage></citation></ref>
<ref id="b16-sensors-10-10545"><label>16.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Slotine</surname><given-names>JJ</given-names></name><name><surname>Li</surname><given-names>W</given-names></name></person-group><source>Applied Nonlinear Control</source><publisher-name>Prentice Hall</publisher-name><publisher-loc>Englewood Cliffs, NJ, USA</publisher-loc><year>1991</year></citation></ref></ref-list>
<sec sec-type="display-objects">
<title>Figures</title>
<fig id="f1-sensors-10-10545" position="float">
<label>Figure 1.</label>
<caption>
<p>Piezoelectrically actuated X–Y table system.</p></caption>
<graphic xlink:href="sensors-10-10545f1.gif"/></fig>
<fig id="f2-sensors-10-10545" position="float">
<label>Figure 2.</label>
<caption>
<p>Positioning control system experimental layout.</p></caption>
<graphic xlink:href="sensors-10-10545f2.gif"/></fig>
<fig id="f3-sensors-10-10545" position="float">
<label>Figure 3.</label>
<caption>
<p>System identification model output. <bold>(a)</bold> X axis; <bold>(b)</bold> Y axis.</p></caption>
<graphic xlink:href="sensors-10-10545f3.gif"/></fig>
<fig id="f4-sensors-10-10545" position="float">
<label>Figure 4.</label>
<caption>
<p>System control block diagram.</p></caption>
<graphic xlink:href="sensors-10-10545f4.gif"/></fig>
<fig id="f5-sensors-10-10545" position="float">
<label>Figure 5.</label>
<caption>
<p>X–Y table displacement (case A).</p></caption>
<graphic xlink:href="sensors-10-10545f5.gif"/></fig>
<fig id="f6-sensors-10-10545" position="float">
<label>Figure 6.</label>
<caption>
<p>The displacements of <bold>(a)</bold> X axis and <bold>(b)</bold> Y axis (case A).</p></caption>
<graphic xlink:href="sensors-10-10545f6.gif"/></fig>
<fig id="f7-sensors-10-10545" position="float">
<label>Figure 7.</label>
<caption>
<p>The tracking error of <bold>(a)</bold> X axis and <bold>(b)</bold> Y axis (case A).</p></caption>
<graphic xlink:href="sensors-10-10545f7.gif"/></fig>
<fig id="f8-sensors-10-10545" position="float">
<label>Figure 8.</label>
<caption>
<p>X–Y table displacement (case B).</p></caption>
<graphic xlink:href="sensors-10-10545f8.gif"/></fig>
<fig id="f9-sensors-10-10545" position="float">
<label>Figure 9.</label>
<caption>
<p>The displacements of <bold>(a)</bold> X axis and <bold>(b)</bold> Y axis (case B).</p></caption>
<graphic xlink:href="sensors-10-10545f9.gif"/></fig>
<fig id="f10-sensors-10-10545" position="float">
<label>Figure 10.</label>
<caption>
<p>The tracking error of <bold>(a)</bold> X axis and <bold>(b)</bold> Y axis (case B).</p></caption>
<graphic xlink:href="sensors-10-10545f10.gif"/></fig></sec></back></article>
