<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing with OASIS Tables v3.0 20080202//EN" "https://jats.nlm.nih.gov/nlm-dtd/publishing/3.0/journalpub-oasis3.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:oasis="http://docs.oasis-open.org/ns/oasis-exchange/table" xml:lang="en" dtd-version="3.0" article-type="research-article">
  <front>
    <journal-meta><journal-id journal-id-type="publisher">MS</journal-id><journal-title-group>
    <journal-title>Mechanical Sciences</journal-title>
    <abbrev-journal-title abbrev-type="publisher">MS</abbrev-journal-title><abbrev-journal-title abbrev-type="nlm-ta">Mech. Sci.</abbrev-journal-title>
  </journal-title-group><issn pub-type="epub">2191-916X</issn><publisher>
    <publisher-name>Copernicus Publications</publisher-name>
    <publisher-loc>Göttingen, Germany</publisher-loc>
  </publisher></journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.5194/ms-15-55-2024</article-id><title-group><article-title>A novel generalized sliding mode controller for uncertain robot manipulators based on motion constraints</article-title><alt-title>Generalized sliding mode control design based on motion constraints</alt-title>
      </title-group><?xmltex \runningtitle{Generalized sliding mode control design based on motion constraints}?><?xmltex \runningauthor{Z. Wang et al.}?>
      <contrib-group>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Wang</surname><given-names>Zhaodong</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Mei</surname><given-names>Lixue</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="yes" rid="aff2">
          <name><surname>Ma</surname><given-names>Xiaoqun</given-names></name>
          <email>faliang941118@163.com</email>
        </contrib>
        <aff id="aff1"><label>1</label><institution>School of Mechanical and Electronic Engineering, Jingdezhen University, Jingdezhen 333000, China</institution>
        </aff>
        <aff id="aff2"><label>2</label><institution>School of Electrical and Automation Engineering, East China Jiaotong University, Nanchang 330013, China</institution>
        </aff>
      </contrib-group>
      <author-notes><corresp id="corr1">Xiaoqun Ma (faliang941118@163.com)</corresp></author-notes><pub-date><day>5</day><month>February</month><year>2024</year></pub-date>
      
      <volume>15</volume>
      <issue>1</issue>
      <fpage>55</fpage><lpage>62</lpage>
      <history>
        <date date-type="received"><day>15</day><month>September</month><year>2023</year></date>
           <date date-type="rev-recd"><day>17</day><month>November</month><year>2023</year></date>
           <date date-type="accepted"><day>13</day><month>December</month><year>2023</year></date>
      </history>
      <permissions>
        <copyright-statement>Copyright: © 2024 Zhaodong Wang et al.</copyright-statement>
        <copyright-year>2024</copyright-year>
      <license license-type="open-access"><license-p>This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this licence, visit <ext-link ext-link-type="uri" xlink:href="https://creativecommons.org/licenses/by/4.0/">https://creativecommons.org/licenses/by/4.0/</ext-link></license-p></license></permissions><self-uri xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024.html">This article is available from https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024.html</self-uri><self-uri xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024.pdf">The full text article is available as a PDF file from https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024.pdf</self-uri>
      <abstract><title>Abstract</title>

      <p id="d1e101">To improve the trajectory tracking performance and robustness for uncertain robot manipulators, a generalized sliding mode controller (GSMC) including an ideal controller and a continuous sliding mode controller (SMC) is proposed from the standpoint of motion constraints. First, the trajectory tracking requirements are formulated as the motion constraints, based on which an ideal controller is proposed to satisfy the motion constraints for robot manipulators whose dynamics are precisely known. Second, an additional continuous SMC is presented to compensate for the effects of uncertainty, and the chattering phenomenon that commonly exists in the SMC can be avoided by the introduction of a smoothing function. Third, Lyapunov analysis is conducted to verify that the proposed GSMC enables the tracking error restricted to a small region around zero. Finally, the numerical simulation and experiment are performed to verify the effectiveness and superiority of the proposed GSMC.</p>
  </abstract>
    </article-meta>
  </front>
<body>
      

<sec id="Ch1.S1" sec-type="intro">
  <label>1</label><title>Introduction</title>
      <p id="d1e113">Recently, with the development of technology, robot manipulators have been widely applied in industrial manufacturing, aerospace, medical treatment, military, and other fields. Despite the different application scenarios, achieving fast and high-accuracy trajectory tracking is one of the common requirements for these tasks. However, acquiring a desirable trajectory tracking performance for robot manipulators remains a challenge, since robot manipulators have multiple variables, strong coupling, and nonlinear systems <xref ref-type="bibr" rid="bib1.bibx12" id="paren.1"/>. Moreover, uncertainty (such as parameter uncertainty and external disturbances) may exist in robot manipulators, which can also deteriorate the system's performance. Some effective control schemes like computed torque control (CTC) <xref ref-type="bibr" rid="bib1.bibx20" id="paren.2"/> and backstepping control <xref ref-type="bibr" rid="bib1.bibx2 bib1.bibx19" id="paren.3"/> are proposed. However, these schemes are model-based, which means that the tracking performance relies on the system dynamic model. In practice, due to the complex structure of robot manipulators, accurate dynamics models are difficult to obtain. Besides, the dynamics of robot manipulators may change; for example, if the end effector grasps loads, the inertia matrix will change <xref ref-type="bibr" rid="bib1.bibx14" id="paren.4"/>. To cope with the uncertainty, many advanced control methods have been proposed, such as adaptive control <xref ref-type="bibr" rid="bib1.bibx21 bib1.bibx32" id="paren.5"/>, fuzzy control <xref ref-type="bibr" rid="bib1.bibx15" id="paren.6"/>, robust control <xref ref-type="bibr" rid="bib1.bibx17 bib1.bibx5 bib1.bibx16 bib1.bibx3" id="paren.7"/>, neural-network control <xref ref-type="bibr" rid="bib1.bibx13" id="paren.8"/>, and sliding mode controller (SMC) methods <xref ref-type="bibr" rid="bib1.bibx8" id="paren.9"/>.</p>
      <p id="d1e144">Owing to its strong robustness, the SMC has attracted much attention <xref ref-type="bibr" rid="bib1.bibx10 bib1.bibx36" id="paren.10"/>. Conventional SMC schemes essentially have discontinuous control, which endeavors to force the system trajectory to follow the predefined sliding surface <xref ref-type="bibr" rid="bib1.bibx33" id="paren.11"/>. However, the chattering problem caused by the use of the switching function will result in high control gains, high-frequency dynamics, and actuator deterioration. To reduce the chattering, the boundary layer method is proposed in <xref ref-type="bibr" rid="bib1.bibx4" id="text.12"/>. However, since the boundary layer method is a continuous approximation, the control accuracy of the system will reduced. In <xref ref-type="bibr" rid="bib1.bibx7" id="text.13"/>, the terminal SMC (TSMC) method is proposed to attenuate the chattering and can ensure that the system is stable in finite time. Although the TSMC can achieve finite-time convergence, it suffers from the<?pagebreak page56?> singularity problem. To avoid the singularity problem, the nonsingular TSMC (NTSMC) method is proposed <xref ref-type="bibr" rid="bib1.bibx31 bib1.bibx34" id="paren.14"/>. However, the proposed NTSMC cannot eliminate the chattering, and the convergence rate is slow. To realize the faster convergence rate, a fast TSMC (FTSMC) is proposed in <xref ref-type="bibr" rid="bib1.bibx1" id="text.15"/>. However, the chattering in control still exists in the proposed FTSMC. A super-twisting SMC (STSMC) is presented in <xref ref-type="bibr" rid="bib1.bibx18" id="text.16"/>, in which the control input is continuous to avoid chattering. However, this method assumes that the initial error is zero since the robustness of the system can only be ensured if the system states reach the sliding surface. The scheme proposed in this paper, on the other hand, does not require such an assumption.</p>
      <p id="d1e169">To realize the precision control of robot manipulators with uncertainty, a two-step control scheme is proposed. In the first step, consider the control of the “ideal” robot manipulator system whose dynamics model is precisely known. An exact closed-form ideal controller is designed from a novel standpoint, where the control requirements are taken as a set of constraints exerted on the controlled system, and based on the analytical dynamics theory <xref ref-type="bibr" rid="bib1.bibx27" id="paren.17"/>, the control inputs that enable the ideal system to meet these requirements are obtained. It is noted that the control inputs can be obtained without performing any approximations or linearizations for the system dynamic model. Moreover, the proposed control inputs can minimize a quadratic control cost at each moment; this means that the control inputs are modest <xref ref-type="bibr" rid="bib1.bibx25 bib1.bibx29" id="paren.18"/>. In the second step, the ideal controller is augmented by an additional continuous SMC to realize the precision control for robot manipulators whose dynamics model is not precisely known. This additional controller is developed on the basis of the notion of a generalized sliding surface, where the smoothing function is applied to replace the sign function to avoid chattering. Moreover, the proposed controller can track the desired trajectory within the expected error range even in the presence of uncertainty.</p>
      <p id="d1e178">The main contributions are summarized below. <list list-type="custom"><list-item><label>1.</label>
      <p id="d1e183">Based on the analytical dynamics theory, an ideal controller that can enable the ideal system to meet the desired control requirements is presented in closed form.  Moreover, the ideal control input is optimal since it renders the quadratic control cost minimized at each moment.</p></list-item><list-item><label>2.</label>
      <p id="d1e187">By the introduction of the notion of the generalized sliding surface, an additional controller is designed to augment the ideal controller. The proposed controller can drive the system to meet the expected control requirements in the presence of initial condition deviations and uncertainty while avoiding the chattering problem.</p></list-item></list></p><?xmltex \hack{\newpage}?>
</sec>
<sec id="Ch1.S2">
  <label>2</label><title>Problem formulation</title>
      <p id="d1e199">Consider an <inline-formula><mml:math id="M1" display="inline"><mml:mi>n</mml:mi></mml:math></inline-formula>-link serial robot manipulator as follows <xref ref-type="bibr" rid="bib1.bibx37" id="paren.19"/>:
          <disp-formula id="Ch1.E1" content-type="numbered"><label>1</label><mml:math id="M2" display="block"><mml:mrow><mml:mi>D</mml:mi><mml:mfenced close=")" open="("><mml:mi mathvariant="normal">Θ</mml:mi></mml:mfenced><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi>V</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover></mml:mrow></mml:mfenced><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi>G</mml:mi><mml:mfenced open="(" close=")"><mml:mi mathvariant="normal">Θ</mml:mi></mml:mfenced><mml:mo>+</mml:mo><mml:mi>f</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover></mml:mrow></mml:mfenced><mml:mo>=</mml:mo><mml:mi mathvariant="italic">τ</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
        where <inline-formula><mml:math id="M3" display="inline"><mml:mi mathvariant="normal">Θ</mml:mi></mml:math></inline-formula> is the joint position, and <inline-formula><mml:math id="M4" display="inline"><mml:mrow><mml:mi>D</mml:mi><mml:mfenced open="(" close=")"><mml:mi mathvariant="normal">Θ</mml:mi></mml:mfenced></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M5" display="inline"><mml:mrow><mml:mi>V</mml:mi><mml:mfenced close=")" open="("><mml:mrow><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover></mml:mrow></mml:mfenced></mml:mrow></mml:math></inline-formula>, and <inline-formula><mml:math id="M6" display="inline"><mml:mrow><mml:mi>G</mml:mi><mml:mfenced close=")" open="("><mml:mi mathvariant="normal">Θ</mml:mi></mml:mfenced></mml:mrow></mml:math></inline-formula> represent the inertia matrix, Coriolis torque matrix, and gravitation torque, respectively. Notice that matrix <inline-formula><mml:math id="M7" display="inline"><mml:mi mathvariant="bold">D</mml:mi></mml:math></inline-formula> is positive definite. <inline-formula><mml:math id="M8" display="inline"><mml:mi mathvariant="italic">τ</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M9" display="inline"><mml:mrow><mml:mi>f</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover></mml:mrow></mml:mfenced></mml:mrow></mml:math></inline-formula> are the control input and unknown disturbance, respectively. In the following, <inline-formula><mml:math id="M10" display="inline"><mml:mrow><mml:mi>D</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M11" display="inline"><mml:mrow><mml:mi>V</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover></mml:mrow></mml:mfenced></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M12" display="inline"><mml:mrow><mml:mi>G</mml:mi><mml:mfenced open="(" close=")"><mml:mi mathvariant="normal">Θ</mml:mi></mml:mfenced></mml:mrow></mml:math></inline-formula>, and <inline-formula><mml:math id="M13" display="inline"><mml:mrow><mml:mi>f</mml:mi><mml:mfenced close=")" open="("><mml:mrow><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover></mml:mrow></mml:mfenced></mml:mrow></mml:math></inline-formula> are abbreviated as <inline-formula><mml:math id="M14" display="inline"><mml:mi>D</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math id="M15" display="inline"><mml:mi>V</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math id="M16" display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>, and <inline-formula><mml:math id="M17" display="inline"><mml:mi>f</mml:mi></mml:math></inline-formula> for convenience.</p>
      <p id="d1e452">Since uncertainty inevitably exists in the robot manipulator, we assume that <xref ref-type="bibr" rid="bib1.bibx22 bib1.bibx6" id="paren.20"/>
          <disp-formula id="Ch1.E2" content-type="numbered"><label>2</label><mml:math id="M18" display="block"><mml:mtable rowspacing="4.267913pt 4.267913pt 4.267913pt" class="array" columnalign="left"><mml:mtr><mml:mtd><mml:mrow><mml:mi>D</mml:mi><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mi>D</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi>D</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mi>V</mml:mi><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mi>V</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi>V</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mi>G</mml:mi><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi>D</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mi>f</mml:mi><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mi>f</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi>f</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
        where <inline-formula><mml:math id="M19" display="inline"><mml:mrow><mml:mfenced close=")" open="("><mml:mrow><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mover accent="true"><mml:mo>⋅</mml:mo><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mspace width="0.25em" linebreak="nobreak"/></mml:mrow></mml:mfenced></mml:mrow></mml:math></inline-formula> denotes the ideal portions, and <inline-formula><mml:math id="M20" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mfenced open="(" close=")"><mml:mo>⋅</mml:mo></mml:mfenced></mml:mrow></mml:math></inline-formula> denotes the uncertain portions.</p>
      <p id="d1e570">The control objective of this paper is to design a suitable controller that causes the tracking error to converge to zero as <inline-formula><mml:math id="M21" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:mo>→</mml:mo><mml:mi mathvariant="normal">∞</mml:mi></mml:mrow></mml:math></inline-formula>. To quantify the control objective, we have
          <disp-formula id="Ch1.E3" content-type="numbered"><label>3</label><mml:math id="M22" display="block"><mml:mrow><mml:msub><mml:mi>e</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mo>-</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mi mathvariant="normal">id</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
        where <inline-formula><mml:math id="M23" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mi mathvariant="normal">id</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> denotes the desired trajectory of the <inline-formula><mml:math id="M24" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula>th joint.</p>
</sec>
<sec id="Ch1.S3">
  <label>3</label><title>Control design</title>
      <p id="d1e657">In this paper, the control design is split into two steps. The first step is to design an ideal controller for the ideal system (i.e., whose dynamic model is precisely known and has no external disturbances imposed on it). The second step is to design a GSMC to enhance the robustness.</p>
<sec id="Ch1.S3.SS1">
  <label>3.1</label><title>Ideal controller</title>
      <p id="d1e667">Firstly, we suppose that the robot manipulator dynamic model parameters are all known and without load disturbances imposed on the robot manipulator. Then, we can obtain the ideal dynamic model of the robot manipulator as
            <disp-formula id="Ch1.E4" content-type="numbered"><label>4</label><mml:math id="M25" display="block"><mml:mrow><mml:mover accent="true"><mml:mi>D</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mover accent="true"><mml:mi>V</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mover accent="true"><mml:mi>f</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula></p>
      <p id="d1e721">In this paper, the control objective is reformatted as the form of motion constraint
            <disp-formula id="Ch1.E5" content-type="numbered"><label>5</label><mml:math id="M26" display="block"><mml:mrow><mml:mi>e</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
          where <inline-formula><mml:math id="M27" display="inline"><mml:mrow><mml:mi>e</mml:mi><mml:mo>=</mml:mo><mml:mo>[</mml:mo><mml:msub><mml:mi>e</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>e</mml:mi><mml:mi>n</mml:mi></mml:msub><mml:msup><mml:mo>]</mml:mo><mml:mi>T</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>.</p>
      <?pagebreak page57?><p id="d1e771">Generally, the motion constraint (Eq. <xref ref-type="disp-formula" rid="Ch1.E5"/>) can be modified as
            <disp-formula id="Ch1.E6" content-type="numbered"><label>6</label><mml:math id="M28" display="block"><mml:mrow><mml:mover accent="true"><mml:mi>e</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi mathvariant="bold-italic">γ</mml:mi><mml:mi>e</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
          where <inline-formula><mml:math id="M29" display="inline"><mml:mrow><mml:mi mathvariant="bold-italic">γ</mml:mi><mml:mo>=</mml:mo><mml:mtext>diag</mml:mtext><mml:mfenced open="{" close="}"><mml:mrow><mml:msub><mml:mi mathvariant="italic">γ</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi mathvariant="italic">γ</mml:mi><mml:mi>n</mml:mi></mml:msub></mml:mrow></mml:mfenced></mml:mrow></mml:math></inline-formula> is a positive user-defined matrix.</p>
      <p id="d1e829">Differentiating Eq. (<xref ref-type="disp-formula" rid="Ch1.E6"/>) with respect to time <inline-formula><mml:math id="M30" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula>, one has
            <disp-formula id="Ch1.E7" content-type="numbered"><label>7</label><mml:math id="M31" display="block"><mml:mrow><mml:mover accent="true"><mml:mi>e</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi mathvariant="bold-italic">γ</mml:mi><mml:mover accent="true"><mml:mi>e</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula></p>
      <p id="d1e867">Rewriting Eqs. (<xref ref-type="disp-formula" rid="Ch1.E6"/>) and (<xref ref-type="disp-formula" rid="Ch1.E7"/>) in matrix form, one can obtain <xref ref-type="bibr" rid="bib1.bibx24" id="paren.21"/>
            <disp-formula id="Ch1.E8" content-type="numbered"><label>8</label><mml:math id="M32" display="block"><mml:mtable class="array" columnalign="left"><mml:mtr><mml:mtd><mml:mrow><mml:mi>M</mml:mi><mml:mover accent="true"><mml:mi>e</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mi>c</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mi>M</mml:mi><mml:mover accent="true"><mml:mi>e</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mi>b</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
          where <inline-formula><mml:math id="M33" display="inline"><mml:mrow><mml:mi>M</mml:mi><mml:mo>=</mml:mo><mml:mi>I</mml:mi></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M34" display="inline"><mml:mrow><mml:mi>c</mml:mi><mml:mo>=</mml:mo><mml:mo>[</mml:mo><mml:mo>-</mml:mo><mml:mi mathvariant="italic">γ</mml:mi><mml:mi>e</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>, and <inline-formula><mml:math id="M35" display="inline"><mml:mrow><mml:mi>b</mml:mi><mml:mo>=</mml:mo><mml:mo>[</mml:mo><mml:mo>-</mml:mo><mml:mi mathvariant="italic">γ</mml:mi><mml:mover accent="true"><mml:mi>e</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>.</p>
      <p id="d1e971">According to <xref ref-type="bibr" rid="bib1.bibx11" id="text.22"/> and <xref ref-type="bibr" rid="bib1.bibx26" id="text.23"/>, the control input <inline-formula><mml:math id="M36" display="inline"><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover></mml:math></inline-formula> that drives the motion constraints (Eq. <xref ref-type="disp-formula" rid="Ch1.E8"/>) to be satisfied can be given by
            <disp-formula id="Ch1.E9" content-type="numbered"><label>9</label><mml:math id="M37" display="block"><mml:mrow><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mi>M</mml:mi><mml:mover accent="true"><mml:mi>D</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover></mml:mrow></mml:mfenced><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mfenced close=")" open="("><mml:mrow><mml:mi>b</mml:mi><mml:mo>+</mml:mo><mml:mi>M</mml:mi><mml:msup><mml:mover accent="true"><mml:mi>D</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mover accent="true"><mml:mi>V</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mover accent="true"><mml:mi>f</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover></mml:mrow></mml:mfenced></mml:mrow></mml:mfenced><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>
          In a sense, the control input (Eq. <xref ref-type="disp-formula" rid="Ch1.E9"/>) is optimal since it renders the control cost <inline-formula><mml:math id="M38" display="inline"><mml:mrow><mml:msup><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mi>T</mml:mi></mml:msup><mml:msup><mml:mi>D</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover></mml:mrow></mml:math></inline-formula> minimized at each moment <xref ref-type="bibr" rid="bib1.bibx23" id="paren.24"/>.</p>
</sec>
<sec id="Ch1.S3.SS2">
  <label>3.2</label><title>GSMC</title>
      <p id="d1e1109">In the previous section, the control input that drives the motion constraints satisfied is deduced based on the condition that the model parameters of robot manipulator are precisely known. However, precise knowledge of the system is difficult or even impossible to achieve. Therefore, in this section, we will explore the control of robot manipulator whose parameters are not perfectly known.</p>
      <p id="d1e1112">Define the auxiliary error variable as
            <disp-formula id="Ch1.E10" content-type="numbered"><label>10</label><mml:math id="M39" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mo>-</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mi mathvariant="normal">ia</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
          where <inline-formula><mml:math id="M40" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M41" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mi mathvariant="normal">ia</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> are the <inline-formula><mml:math id="M42" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula>th joint position of the ideal and real robot manipulator, respectively.</p>
      <p id="d1e1202">According to Eq. (<xref ref-type="disp-formula" rid="Ch1.E10"/>), we have
            <disp-formula id="Ch1.E11" content-type="numbered"><label>11</label><mml:math id="M43" display="block"><mml:mrow><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mi mathvariant="normal">a</mml:mi></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
          where <inline-formula><mml:math id="M44" display="inline"><mml:mrow><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo>=</mml:mo><mml:msup><mml:mfenced open="[" close="]"><mml:mrow><mml:msub><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mi>n</mml:mi></mml:msub></mml:mrow></mml:mfenced><mml:mi>T</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>.</p>
      <p id="d1e1265">The generalized sliding surface is defined as
            <disp-formula id="Ch1.E12" content-type="numbered"><label>12</label><mml:math id="M45" display="block"><mml:mrow><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi>l</mml:mi><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
          where <inline-formula><mml:math id="M46" display="inline"><mml:mrow><mml:mi>l</mml:mi><mml:mo>=</mml:mo><mml:mtext>diag</mml:mtext><mml:mfenced open="{" close="}"><mml:mrow><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>l</mml:mi><mml:mi>n</mml:mi></mml:msub></mml:mrow></mml:mfenced></mml:mrow></mml:math></inline-formula> is a positive user-defined matrix. One can see that <inline-formula><mml:math id="M47" display="inline"><mml:mi>e</mml:mi></mml:math></inline-formula> can asymptotically converge to zero once the controlled system is restricted on the hyperplane <inline-formula><mml:math id="M48" display="inline"><mml:mrow><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:math></inline-formula>. However, the methods that can maneuver the systems to reach <inline-formula><mml:math id="M49" display="inline"><mml:mrow><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:math></inline-formula> in a limited time are generally discontinuous <xref ref-type="bibr" rid="bib1.bibx30 bib1.bibx28" id="paren.25"/>. To avoid the problems caused by the usage of the discontinuous function, this paper intends to use a smooth function that can only guarantee that the system be restricted to a small region <inline-formula><mml:math id="M50" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mi mathvariant="italic">ζ</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> close to zero, defined as
            <disp-formula id="Ch1.E13" content-type="numbered"><label>13</label><mml:math id="M51" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mi mathvariant="italic">ζ</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mfenced open="{" close="}"><mml:mrow><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>∈</mml:mo><mml:msup><mml:mi>R</mml:mi><mml:mi>n</mml:mi></mml:msup><mml:mi mathvariant="normal">|</mml:mi><mml:mo>∥</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>∥</mml:mo><mml:mo>≤</mml:mo><mml:mi mathvariant="italic">ζ</mml:mi></mml:mrow></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
          where <inline-formula><mml:math id="M52" display="inline"><mml:mrow><mml:mi mathvariant="italic">ζ</mml:mi><mml:mo>&gt;</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:math></inline-formula> is a arbitrarily small constant.</p>
      <p id="d1e1418">Notice that the generalized displacement and velocity at the initial time are the same for the ideal system and the real system (i.e., <inline-formula><mml:math id="M53" display="inline"><mml:mrow><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo>(</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>(</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:math></inline-formula>), which means that the system is within the region <inline-formula><mml:math id="M54" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mi mathvariant="italic">ζ</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> at the initial time.</p>
      <p id="d1e1463">Define
            <disp-formula id="Ch1.E14" content-type="numbered"><label>14</label><mml:math id="M55" display="block"><mml:mtable rowspacing="0.2ex" class="split" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:msup><mml:mi>D</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mfenced close=")" open="("><mml:mrow><mml:mo>-</mml:mo><mml:mi>V</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>G</mml:mi><mml:mo>-</mml:mo><mml:mi>f</mml:mi><mml:mo>+</mml:mo><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:msup><mml:mover accent="true"><mml:mi>D</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>V</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>f</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
          and suppose that the following estimates,
            <disp-formula id="Ch1.E15" content-type="numbered"><label>15</label><mml:math id="M56" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>min⁡</mml:mo></mml:msub><mml:mo>=</mml:mo><mml:mo movablelimits="false">min⁡</mml:mo><mml:mfenced close="}" open="{"><mml:mrow><mml:mtext>eigenvalues of</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:msup><mml:mi>D</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:mfenced></mml:mrow></mml:math></disp-formula>
          and
            <disp-formula id="Ch1.E16" content-type="numbered"><label>16</label><mml:math id="M57" display="block"><mml:mrow><mml:mi mathvariant="italic">ρ</mml:mi><mml:mo>≥</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>∥</mml:mo><mml:mover accent="true"><mml:mi mathvariant="normal">Δ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo>∥</mml:mo><mml:mo>+</mml:mo><mml:mi>l</mml:mi><mml:mo>∥</mml:mo><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>∥</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>min⁡</mml:mo></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mo>∀</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi>t</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
          can be obtained. Based on these properties, the closed-form expression for the GSMC is given as
            <disp-formula id="Ch1.E17" content-type="numbered"><label>17</label><mml:math id="M58" display="block"><mml:mrow><mml:mi>u</mml:mi><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover></mml:mrow></mml:math></disp-formula>
          with
            <disp-formula id="Ch1.E18" content-type="numbered"><label>18</label><mml:math id="M59" display="block"><mml:mrow><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>/</mml:mo><mml:mi mathvariant="italic">ζ</mml:mi><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
          where <inline-formula><mml:math id="M60" display="inline"><mml:mrow><mml:mi mathvariant="italic">ζ</mml:mi><mml:mo>&gt;</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:math></inline-formula> is a user-defined parameter to satisfy desired tracking tolerances.</p>
</sec>
<sec id="Ch1.S3.SS3">
  <label>3.3</label><title>Stability analysis</title>
      <p id="d1e1725">Select the Lyapunov candidate as
            <disp-formula id="Ch1.E19" content-type="numbered"><label>19</label><mml:math id="M61" display="block"><mml:mrow><mml:mi>V</mml:mi><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:msup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>T</mml:mi></mml:msup><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula></p>
      <p id="d1e1754">Differentiating Eq. (<xref ref-type="disp-formula" rid="Ch1.E19"/>) along the sliding variable trajectory <inline-formula><mml:math id="M62" display="inline"><mml:mi mathvariant="italic">σ</mml:mi></mml:math></inline-formula>, one has
            <disp-formula id="Ch1.E20" content-type="numbered"><label>20</label><mml:math id="M63" display="block"><mml:mrow><mml:mover accent="true"><mml:mi>V</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>T</mml:mi></mml:msup><mml:mover accent="true"><mml:mi mathvariant="italic">σ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula></p>
      <p id="d1e1790">Differentiating  Eq. (<xref ref-type="disp-formula" rid="Ch1.E12"/>) with respect to time, one has
            <disp-formula id="Ch1.E21" content-type="numbered"><label>21</label><mml:math id="M64" display="block"><mml:mrow><mml:mover accent="true"><mml:mi mathvariant="italic">σ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi>l</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula></p>
      <?pagebreak page58?><p id="d1e1823">By Eqs. (<xref ref-type="disp-formula" rid="Ch1.E1"/>), (<xref ref-type="disp-formula" rid="Ch1.E4"/>), (<xref ref-type="disp-formula" rid="Ch1.E11"/>), and (<xref ref-type="disp-formula" rid="Ch1.E17"/>), one has
            <disp-formula id="Ch1.E22" content-type="numbered"><label>22</label><mml:math id="M65" display="block"><mml:mtable rowspacing="0.2ex" class="split" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:msup><mml:mi>D</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>V</mml:mi><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>G</mml:mi><mml:mo>-</mml:mo><mml:mi>f</mml:mi></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:msup><mml:mover accent="true"><mml:mi>D</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>V</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>f</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:msup><mml:mi>D</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
      <p id="d1e1971">Substituting Eq. (<xref ref-type="disp-formula" rid="Ch1.E22"/>) into Eq. (<xref ref-type="disp-formula" rid="Ch1.E21"/>) yields
            <disp-formula id="Ch1.E23" content-type="numbered"><label>23</label><mml:math id="M66" display="block"><mml:mrow><mml:mover accent="true"><mml:mi mathvariant="italic">σ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:msup><mml:mi>J</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi>l</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula></p>
      <p id="d1e2023">Then, one has
            <disp-formula id="Ch1.E24" content-type="numbered"><label>24</label><mml:math id="M67" display="block"><mml:mrow><mml:mover accent="true"><mml:mi>V</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>T</mml:mi></mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:msup><mml:mi>D</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi>l</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover></mml:mrow></mml:mfenced><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula></p>
      <p id="d1e2078">Substituting Eq. (<xref ref-type="disp-formula" rid="Ch1.E18"/>) into Eq. (<xref ref-type="disp-formula" rid="Ch1.E24"/>) yields
            <disp-formula id="Ch1.E25" content-type="numbered"><label>25</label><mml:math id="M68" display="block"><mml:mtable class="split" rowspacing="4.267913pt 4.267913pt" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mover accent="true"><mml:mi>V</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:msup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>T</mml:mi></mml:msup><mml:mi mathvariant="normal">Δ</mml:mi><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi mathvariant="italic">ζ</mml:mi></mml:mfrac></mml:mstyle><mml:msup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>T</mml:mi></mml:msup><mml:msup><mml:mi>D</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>+</mml:mo><mml:mi>l</mml:mi><mml:msup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>T</mml:mi></mml:msup><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>≤</mml:mo><mml:mo>∥</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>∥</mml:mo><mml:mo>∥</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mo>∥</mml:mo><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi mathvariant="italic">ζ</mml:mi></mml:mfrac></mml:mstyle><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>min⁡</mml:mo></mml:msub><mml:mo>∥</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:msup><mml:mo>∥</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>+</mml:mo><mml:mi>l</mml:mi><mml:mo>∥</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>∥</mml:mo><mml:mo>∥</mml:mo><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>∥</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>≤</mml:mo><mml:mo>∥</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>∥</mml:mo><mml:mo mathsize="1.1em">(</mml:mo><mml:mo>∥</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mo>∥</mml:mo><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi mathvariant="italic">ζ</mml:mi></mml:mfrac></mml:mstyle><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>min⁡</mml:mo></mml:msub><mml:mo>∥</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>∥</mml:mo><mml:mo>+</mml:mo><mml:mi>l</mml:mi><mml:mo>∥</mml:mo><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>∥</mml:mo><mml:mo mathsize="1.1em">)</mml:mo><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
      <p id="d1e2279">Moreover, when <inline-formula><mml:math id="M69" display="inline"><mml:mrow><mml:mo>∥</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>∥</mml:mo><mml:mo>/</mml:mo><mml:mi mathvariant="italic">ζ</mml:mi><mml:mo>&gt;</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:math></inline-formula>, by Eq. (<xref ref-type="disp-formula" rid="Ch1.E16"/>), one has
            <disp-formula id="Ch1.E26" content-type="numbered"><label>26</label><mml:math id="M70" display="block"><mml:mtable rowspacing="4.267913pt 4.267913pt" class="split" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mover accent="true"><mml:mi>V</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>≤</mml:mo><mml:mo>∥</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>∥</mml:mo><mml:mo mathsize="1.1em">(</mml:mo><mml:mo>∥</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mo>∥</mml:mo><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi mathvariant="italic">ζ</mml:mi></mml:mfrac></mml:mstyle><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>min⁡</mml:mo></mml:msub><mml:mo>∥</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>∥</mml:mo><mml:mo>+</mml:mo><mml:mi>l</mml:mi><mml:mo>∥</mml:mo><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>∥</mml:mo><mml:mo mathsize="1.1em">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>≤</mml:mo><mml:mo>-</mml:mo><mml:mo>∥</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>∥</mml:mo><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>min⁡</mml:mo></mml:msub><mml:mo mathsize="1.1em">(</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>∥</mml:mo><mml:mover accent="true"><mml:mi mathvariant="normal">Δ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo>∥</mml:mo><mml:mo>+</mml:mo><mml:mi>l</mml:mi><mml:mo>∥</mml:mo><mml:mover accent="true"><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>∥</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>min⁡</mml:mo></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:mo mathsize="1.1em">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>&lt;</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
          According to Lyapunov’s stability theorem, the region <inline-formula><mml:math id="M71" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mi mathvariant="italic">ζ</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> can be an attracting region for the real system. Since the tracking errors of the real system start inside the region <inline-formula><mml:math id="M72" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mi mathvariant="italic">ζ</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, they can always remain in the region <inline-formula><mml:math id="M73" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mi mathvariant="italic">ζ</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> using the proposed controller (Eq. <xref ref-type="disp-formula" rid="Ch1.E17"/>).</p>
</sec>
</sec>
<sec id="Ch1.S4">
  <label>4</label><title>Numerical simulation and experiment</title>
<sec id="Ch1.S4.SS1">
  <label>4.1</label><title>Numerical simulation results</title>
      <p id="d1e2499">To illustrate the effectiveness of the proposed controller, some simulations and experiments are conducted with a two-link robot manipulator. The dynamics of the manipulator is given as <xref ref-type="bibr" rid="bib1.bibx35" id="paren.26"/>
            <disp-formula id="Ch1.E27" content-type="numbered"><label>27</label><mml:math id="M74" display="block"><mml:mrow><mml:mi mathvariant="bold">D</mml:mi><mml:mo>(</mml:mo><mml:mi>q</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mfenced open="[" close="]"><mml:mtable class="matrix" columnalign="center center" framespacing="0em"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>D</mml:mi><mml:mn mathvariant="normal">11</mml:mn></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:msub><mml:mi>D</mml:mi><mml:mn mathvariant="normal">12</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>D</mml:mi><mml:mn mathvariant="normal">21</mml:mn></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:msub><mml:mi>D</mml:mi><mml:mn mathvariant="normal">22</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced></mml:mrow></mml:math></disp-formula>

            <disp-formula id="Ch1.E28" content-type="numbered"><label>28</label><mml:math id="M75" display="block"><mml:mrow><mml:mi mathvariant="bold">V</mml:mi><mml:mo>(</mml:mo><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mi>q</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mfenced close="]" open="["><mml:mtable class="matrix" columnalign="center center" framespacing="0em"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>V</mml:mi><mml:mn mathvariant="normal">11</mml:mn></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:msub><mml:mi>V</mml:mi><mml:mn mathvariant="normal">12</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>V</mml:mi><mml:mn mathvariant="normal">21</mml:mn></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:msub><mml:mi>V</mml:mi><mml:mn mathvariant="normal">22</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced></mml:mrow></mml:math></disp-formula>

            <disp-formula id="Ch1.E29" content-type="numbered"><label>29</label><mml:math id="M76" display="block"><mml:mrow><mml:mi mathvariant="bold">G</mml:mi><mml:mo>(</mml:mo><mml:mi>q</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mfenced open="[" close="]"><mml:mtable class="matrix" columnalign="center" framespacing="0em"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
          with
            <disp-formula id="Ch1.E30" content-type="numbered"><label>30</label><mml:math id="M77" display="block"><mml:mrow><mml:mfenced close="" open="{"><mml:mtable rowspacing="4.267913pt 4.267913pt 4.267913pt" class="array" columnalign="left"><mml:mtr><mml:mtd><mml:mtable rowspacing="0.2ex" class="split" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>D</mml:mi><mml:mn mathvariant="normal">11</mml:mn></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:msub><mml:mi>I</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>I</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:mfenced open="(" close=")"><mml:mrow><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">4</mml:mn></mml:mfrac></mml:mstyle><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:mfenced><mml:msubsup><mml:mi>l</mml:mi><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">4</mml:mn></mml:mfrac></mml:mstyle><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msubsup><mml:mi>l</mml:mi><mml:mn mathvariant="normal">2</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>D</mml:mi><mml:mn mathvariant="normal">12</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>I</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>)</mml:mo><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">4</mml:mn></mml:mfrac></mml:mstyle><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msubsup><mml:mi>l</mml:mi><mml:mn mathvariant="normal">2</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>D</mml:mi><mml:mn mathvariant="normal">21</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>D</mml:mi><mml:mn mathvariant="normal">12</mml:mn></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>D</mml:mi><mml:mn mathvariant="normal">22</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>I</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">4</mml:mn></mml:mfrac></mml:mstyle><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msubsup><mml:mi>l</mml:mi><mml:mn mathvariant="normal">2</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced></mml:mrow></mml:math></disp-formula>

                <disp-formula specific-use="gather" content-type="numbered"><mml:math id="M78" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E31"><mml:mtd><mml:mtext>31</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mfenced close="" open="{"><mml:mtable rowspacing="2.845276pt 4.267913pt 4.267913pt" class="array" columnalign="left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>V</mml:mi><mml:mn mathvariant="normal">11</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mstyle displaystyle="false"><mml:mfrac style="text"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msub><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>V</mml:mi><mml:mn mathvariant="normal">12</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mfenced open="(" close=")"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:mfenced><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>V</mml:mi><mml:mn mathvariant="normal">21</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msub><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>V</mml:mi><mml:mn mathvariant="normal">22</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E32"><mml:mtd><mml:mtext>32</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mfenced open="{" close=""><mml:mtable rowspacing="4.267913pt" class="array" columnalign="left"><mml:mtr><mml:mtd><mml:mtable class="split" rowspacing="4.267913pt" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mi>g</mml:mi><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>)</mml:mo><mml:mo>+</mml:mo><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mi>g</mml:mi><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mi>g</mml:mi><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msub><mml:mi>l</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mi>g</mml:mi><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

            where <inline-formula><mml:math id="M79" display="inline"><mml:mrow><mml:msub><mml:mi>m</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M80" display="inline"><mml:mrow><mml:msub><mml:mi>l</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> (<inline-formula><mml:math id="M81" display="inline"><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:math></inline-formula>) denote the actual mass and length of the <inline-formula><mml:math id="M82" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula>th link, respectively. The ideal parameter values of the manipulator dynamics (Eq. <xref ref-type="disp-formula" rid="Ch1.E27"/>) are assigned as <inline-formula><mml:math id="M83" display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>I</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">7.462</mml:mn></mml:mrow></mml:math></inline-formula> kg <inline-formula><mml:math id="M84" display="inline"><mml:mo>⋅</mml:mo></mml:math></inline-formula> m<inline-formula><mml:math id="M85" display="inline"><mml:msup><mml:mi/><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:math></inline-formula>, <inline-formula><mml:math id="M86" display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>I</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.106</mml:mn></mml:mrow></mml:math></inline-formula> kg <inline-formula><mml:math id="M87" display="inline"><mml:mo>⋅</mml:mo></mml:math></inline-formula> m<inline-formula><mml:math id="M88" display="inline"><mml:msup><mml:mi/><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:math></inline-formula>, <inline-formula><mml:math id="M89" display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>m</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">4.8152</mml:mn></mml:mrow></mml:math></inline-formula> kg, <inline-formula><mml:math id="M90" display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>m</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.7134</mml:mn></mml:mrow></mml:math></inline-formula> kg, <inline-formula><mml:math id="M91" display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>l</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.300</mml:mn></mml:mrow></mml:math></inline-formula> m, and <inline-formula><mml:math id="M92" display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>l</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.268</mml:mn></mml:mrow></mml:math></inline-formula> m. To validate the robustness of the proposed GSMC, the system uncertainty is chosen as <inline-formula><mml:math id="M93" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.1</mml:mn><mml:msub><mml:mover accent="true"><mml:mi>m</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="italic">π</mml:mi><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M94" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.1</mml:mn><mml:msub><mml:mover accent="true"><mml:mi>m</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="italic">π</mml:mi><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, and the external disturbance is chosen as <inline-formula><mml:math id="M95" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>f</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>f</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.5</mml:mn><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mn mathvariant="normal">5</mml:mn><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> Nm. In the simulation, the desired trajectory is set as <inline-formula><mml:math id="M96" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mi mathvariant="normal">d</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:msup><mml:mfenced open="[" close="]"><mml:mrow><mml:mi mathvariant="italic">π</mml:mi><mml:mo>/</mml:mo><mml:mn mathvariant="normal">18</mml:mn><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi mathvariant="italic">π</mml:mi><mml:mo>/</mml:mo><mml:mn mathvariant="normal">18</mml:mn><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mfenced><mml:mi>T</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>. The initial conditions are set as <inline-formula><mml:math id="M97" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Θ</mml:mi><mml:mi mathvariant="normal">d</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:msup><mml:mfenced close="]" open="["><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="italic">π</mml:mi><mml:mo>/</mml:mo><mml:mn mathvariant="normal">18</mml:mn><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi mathvariant="italic">π</mml:mi><mml:mo>/</mml:mo><mml:mn mathvariant="normal">9</mml:mn></mml:mrow></mml:mfenced><mml:mi>T</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M98" display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi mathvariant="normal">d</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mo>[</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mn mathvariant="normal">0</mml:mn><mml:msup><mml:mo>]</mml:mo><mml:mi>T</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>. The control parameters of the proposed controller are set as <inline-formula><mml:math id="M99" display="inline"><mml:mrow><mml:mi>l</mml:mi><mml:mo>=</mml:mo><mml:mtext>diag</mml:mtext><mml:mfenced close="}" open="{"><mml:mrow><mml:mn mathvariant="normal">5</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">10</mml:mn></mml:mrow></mml:mfenced></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M100" display="inline"><mml:mrow><mml:mi mathvariant="italic">ρ</mml:mi><mml:mo>=</mml:mo><mml:mtext>diag</mml:mtext><mml:mfenced open="{" close="}"><mml:mrow><mml:mn mathvariant="normal">100</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">10</mml:mn></mml:mrow></mml:mfenced></mml:mrow></mml:math></inline-formula>, and <inline-formula><mml:math id="M101" display="inline"><mml:mrow><mml:mi mathvariant="italic">ζ</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.5</mml:mn></mml:mrow></mml:math></inline-formula>.</p>
      <p id="d1e3737">To assess the superiority of the proposed controller, the comparison with a conventional SMC and robust control <xref ref-type="bibr" rid="bib1.bibx9" id="paren.27"/> is conducted. The expression of the conventional SMC is given as
            <disp-formula id="Ch1.E33" content-type="numbered"><label>33</label><mml:math id="M102" display="block"><mml:mrow><mml:mi mathvariant="italic">τ</mml:mi><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mi>D</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>×</mml:mo><mml:mi>C</mml:mi><mml:mo>×</mml:mo><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>D</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mo>×</mml:mo><mml:mi>K</mml:mi><mml:mo>×</mml:mo><mml:mi>S</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">η</mml:mi><mml:mo>×</mml:mo><mml:mtext>sat</mml:mtext><mml:mo>(</mml:mo><mml:mi>S</mml:mi><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
          where <inline-formula><mml:math id="M103" display="inline"><mml:mrow><mml:mi>S</mml:mi><mml:mo>=</mml:mo><mml:mi>C</mml:mi><mml:mi>e</mml:mi><mml:mo>+</mml:mo><mml:mover accent="true"><mml:mi>e</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover></mml:mrow></mml:math></inline-formula> is the sliding surface, <inline-formula><mml:math id="M104" display="inline"><mml:mrow><mml:mi>C</mml:mi><mml:mo>=</mml:mo><mml:mtext>diag</mml:mtext><mml:mo mathvariant="italic">{</mml:mo><mml:mn mathvariant="normal">10</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">10</mml:mn><mml:mo mathvariant="italic">}</mml:mo></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M105" display="inline"><mml:mrow><mml:mi>K</mml:mi><mml:mo>=</mml:mo><mml:mtext>diag</mml:mtext><mml:mo mathvariant="italic">{</mml:mo><mml:mn mathvariant="normal">15</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">5</mml:mn><mml:mo mathvariant="italic">}</mml:mo></mml:mrow></mml:math></inline-formula>, and <inline-formula><mml:math id="M106" display="inline"><mml:mrow><mml:mi mathvariant="italic">η</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">50</mml:mn></mml:mrow></mml:math></inline-formula>.</p>
      <?pagebreak page59?><p id="d1e3879">The expression of the robust control is given as
            <disp-formula id="Ch1.E34" content-type="numbered"><label>34</label><mml:math id="M107" display="block"><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mi>D</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>×</mml:mo><mml:mfenced close=")" open="("><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">¨</mml:mo></mml:mover><mml:mi>d</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mi mathvariant="normal">Γ</mml:mi><mml:mo>×</mml:mo><mml:mover accent="true"><mml:mi>e</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover></mml:mrow></mml:mfenced><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>V</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>×</mml:mo><mml:mfenced open="(" close=")"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="normal">Θ</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>d</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mi mathvariant="normal">Γ</mml:mi><mml:mo>×</mml:mo><mml:mi>e</mml:mi></mml:mrow></mml:mfenced><mml:mo>+</mml:mo><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:msub><mml:mi>K</mml:mi><mml:mi>p</mml:mi></mml:msub><mml:mo>×</mml:mo><mml:mi>e</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mi>K</mml:mi><mml:mi>d</mml:mi></mml:msub><mml:mo>×</mml:mo><mml:mover accent="true"><mml:mi>e</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>×</mml:mo><mml:mfenced close=")" open="("><mml:mrow><mml:mover accent="true"><mml:mi>e</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi mathvariant="normal">Γ</mml:mi><mml:mo>×</mml:mo><mml:mi>e</mml:mi></mml:mrow></mml:mfenced><mml:mo>×</mml:mo><mml:msup><mml:mi mathvariant="italic">ν</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
          where <inline-formula><mml:math id="M108" display="inline"><mml:mrow><mml:mi mathvariant="normal">Γ</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M109" display="inline"><mml:mrow><mml:msub><mml:mi>K</mml:mi><mml:mi>p</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mtext>diag</mml:mtext><mml:mo mathvariant="italic">{</mml:mo><mml:mn mathvariant="normal">50</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">20</mml:mn><mml:mo mathvariant="italic">}</mml:mo></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M110" display="inline"><mml:mrow><mml:msub><mml:mi>K</mml:mi><mml:mi>d</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mtext>diag</mml:mtext><mml:mo mathvariant="italic">{</mml:mo><mml:mn mathvariant="normal">12</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">0.5</mml:mn><mml:mo mathvariant="italic">}</mml:mo></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M111" display="inline"><mml:mrow><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.1</mml:mn></mml:mrow></mml:math></inline-formula>, and <inline-formula><mml:math id="M112" display="inline"><mml:mrow><mml:mi mathvariant="italic">ν</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:math></inline-formula>.</p>
      <p id="d1e4114">The simulations are carried out in the MATLAB environment, employing a variable time step ode15i solver. The simulation results are depicted in Figs. 1–6. Figures 1 and 2 present the trajectory tracking response of joints 1 and 2 under three different controls. As seen in Figs. 1 and 2, both the three controls can track the reference trajectory. To compare the tracking performance of three algorithms, the trajectory tracking errors of joints 1 and 2 are depicted in Figs. 3 and 4. It can be observed that both the transient response and steady-state tracking performance of the generalized SMC are superior to those of the conventional SMC and robust control. In addition, the control input of joints 1 and 2 under the three algorithms is illustrated in Figs. 5 and 6; one can see that the control inputs of the conventional SMC and robust control are higher than the generalized SMC for both joint 1 and joint 2.</p>

      <?xmltex \floatpos{p}?><fig id="Ch1.F1"><?xmltex \currentcnt{1}?><?xmltex \def\figurename{Figure}?><label>Figure 1</label><caption><p id="d1e4120">Simulation: trajectory tracking response of joint 1 under sinusoidal signal.</p></caption>
          <?xmltex \igopts{width=227.622047pt}?><graphic xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024-f01.png"/>

        </fig>

      <?xmltex \floatpos{p}?><fig id="Ch1.F2"><?xmltex \currentcnt{2}?><?xmltex \def\figurename{Figure}?><label>Figure 2</label><caption><p id="d1e4131">Simulation: trajectory tracking response of joint 2 under sinusoidal signal.</p></caption>
          <?xmltex \igopts{width=227.622047pt}?><graphic xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024-f02.png"/>

        </fig>

      <?xmltex \floatpos{p}?><fig id="Ch1.F3"><?xmltex \currentcnt{3}?><?xmltex \def\figurename{Figure}?><label>Figure 3</label><caption><p id="d1e4142">Simulation: trajectory tracking error of joint 1 under sinusoidal signal.</p></caption>
          <?xmltex \igopts{width=227.622047pt}?><graphic xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024-f03.png"/>

        </fig>

      <?xmltex \floatpos{p}?><fig id="Ch1.F4"><?xmltex \currentcnt{4}?><?xmltex \def\figurename{Figure}?><label>Figure 4</label><caption><p id="d1e4153">Simulation: trajectory tracking error of joint 2 under sinusoidal signal.</p></caption>
          <?xmltex \igopts{width=227.622047pt}?><graphic xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024-f04.png"/>

        </fig>

      <?xmltex \floatpos{p}?><fig id="Ch1.F5"><?xmltex \currentcnt{5}?><?xmltex \def\figurename{Figure}?><label>Figure 5</label><caption><p id="d1e4165">Simulation: control input of joint 1 under sinusoidal signal.</p></caption>
          <?xmltex \igopts{width=227.622047pt}?><graphic xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024-f05.png"/>

        </fig>

      <?xmltex \floatpos{p}?><fig id="Ch1.F6"><?xmltex \currentcnt{6}?><?xmltex \def\figurename{Figure}?><label>Figure 6</label><caption><p id="d1e4176">Simulation: control input of joint 2 under sinusoidal signal.</p></caption>
          <?xmltex \igopts{width=227.622047pt}?><graphic xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024-f06.png"/>

        </fig>

</sec>
<sec id="Ch1.S4.SS2">
  <label>4.2</label><title>Experimental results</title>
      <p id="d1e4193">To further validate the proposed control algorithm, the experimental validation on the robot manipulator experimental platform (see Fig. 7) is conducted. The experimental platform adopts the rapid control prototyping method, which enables users to establish the control algorithm model in the MATLAB/Simulink environment and then use the automatic code generation tool to automatically generate the C code, thus facilitating users to complete the algorithm validation in a fast and efficient way.</p>
      <p id="d1e4196">Figures 8 and 9 show the trajectory tracking responses of the conventional SMC algorithm, robust control algorithm, and generalized SMC algorithm, respectively. One can see that the generalized SMC algorithm provides better tracking performance than the conventional SMC algorithm and robust control algorithm. Figures 10 and 11 compare the tracking errors of the two joints under three different algorithms. The tracking errors of the two joints under the generalized SMC algorithm are below 0.2<inline-formula><mml:math id="M113" display="inline"><mml:msup><mml:mi/><mml:mo>∘</mml:mo></mml:msup></mml:math></inline-formula>, while the tracking errors of the two joints under the conventional SMC algorithm and robust control algorithm are close to 0.3<inline-formula><mml:math id="M114" display="inline"><mml:msup><mml:mi/><mml:mo>∘</mml:mo></mml:msup></mml:math></inline-formula>. Figures 12 and 13 compare the control inputs of the two joints under three different algorithms. For both joint 1 and joint 2, the control inputs of the conventional SMC algorithm and robust control algorithm are larger than those of the generalized SMC algorithm.</p>

      <?xmltex \floatpos{p}?><fig id="Ch1.F7"><?xmltex \currentcnt{7}?><?xmltex \def\figurename{Figure}?><label>Figure 7</label><caption><p id="d1e4219">Robot manipulator experimental platform.</p></caption>
          <?xmltex \igopts{width=227.622047pt}?><graphic xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024-f07.png"/>

        </fig>

      <?xmltex \floatpos{p}?><fig id="Ch1.F8"><?xmltex \currentcnt{8}?><?xmltex \def\figurename{Figure}?><label>Figure 8</label><caption><p id="d1e4231">Experiment: trajectory tracking response of joint 1 under sinusoidal signal.</p></caption>
          <?xmltex \igopts{width=227.622047pt}?><graphic xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024-f08.png"/>

        </fig>

      <?xmltex \floatpos{p}?><fig id="Ch1.F9"><?xmltex \currentcnt{9}?><?xmltex \def\figurename{Figure}?><label>Figure 9</label><caption><p id="d1e4242">Experiment: trajectory tracking response of joint 2 under sinusoidal signal.</p></caption>
          <?xmltex \igopts{width=227.622047pt}?><graphic xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024-f09.png"/>

        </fig>

      <?xmltex \floatpos{p}?><fig id="Ch1.F10"><?xmltex \currentcnt{10}?><?xmltex \def\figurename{Figure}?><label>Figure 10</label><caption><p id="d1e4253">Experiment: trajectory tracking error of joint 1 under sinusoidal signal.</p></caption>
          <?xmltex \igopts{width=213.395669pt}?><graphic xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024-f10.png"/>

        </fig>

      <?xmltex \floatpos{p}?><fig id="Ch1.F11"><?xmltex \currentcnt{11}?><?xmltex \def\figurename{Figure}?><label>Figure 11</label><caption><p id="d1e4264">Experiment: trajectory tracking error of joint 2 under sinusoidal signal.</p></caption>
          <?xmltex \igopts{width=213.395669pt}?><graphic xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024-f11.png"/>

        </fig>

      <?xmltex \floatpos{t}?><fig id="Ch1.F12"><?xmltex \currentcnt{12}?><?xmltex \def\figurename{Figure}?><label>Figure 12</label><caption><p id="d1e4276">Experiment: control input of joint 1 under sinusoidal signal.</p></caption>
          <?xmltex \igopts{width=227.622047pt}?><graphic xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024-f12.png"/>

        </fig>

      <?xmltex \floatpos{t}?><fig id="Ch1.F13"><?xmltex \currentcnt{13}?><?xmltex \def\figurename{Figure}?><label>Figure 13</label><caption><p id="d1e4287">Experiment: control input of joint 2 under sinusoidal signal.</p></caption>
          <?xmltex \igopts{width=227.622047pt}?><graphic xlink:href="https://ms.copernicus.org/articles/15/55/2024/ms-15-55-2024-f13.png"/>

        </fig>

</sec>
</sec>
<sec id="Ch1.S5" sec-type="conclusions">
  <label>5</label><title>Conclusions</title>
      <?pagebreak page61?><p id="d1e4306">In this study, to improve the trajectory tracking control performance for robot manipulators subject to uncertainty, a generalized SMC is designed. The design procedure of the proposed generalized SMC contains two steps. In the first step, it is assumed that the dynamic model of robot manipulators is precisely known, and there are no external disturbances; an ideal control is designed based on analytical dynamics by reformulating the trajectory tracking as a problem of constrained motion. In the second step, a smooth-function-based SMC is designed to prevent the chattering phenomenon caused by discontinuous function and further enhance the robustness performance. Numerical simulations and experimental results simultaneously validate the effectiveness of the proposed generalized SMC algorithm. In the future, this method will be modified and applied to robotic manipulators with actuator saturation and output constraints.</p><?xmltex \hack{\newpage}?>
</sec>

      
      </body>
    <back><notes notes-type="codeavailability"><title>Code availability</title>

      <p id="d1e4314">All of the code used in this paper can be obtained from the corresponding author upon request.</p>
  </notes><notes notes-type="dataavailability"><title>Data availability</title>

      <p id="d1e4320">No data sets were used in this article.</p>
  </notes><notes notes-type="authorcontribution"><title>Author contributions</title>

      <p id="d1e4326">ZW designed the study and wrote the paper, LM provided guidance on the writing, and XM conducted the simulation research.</p>
  </notes><notes notes-type="competinginterests"><title>Competing interests</title>

      <p id="d1e4332">The contact author has declared that none of the authors has any competing interests.</p>
  </notes><notes notes-type="disclaimer"><title>Disclaimer</title>

      <p id="d1e4338">Publisher’s note: Copernicus Publications remains neutral with regard to jurisdictional claims made in the text, published maps, institutional affiliations, or any other geographical representation in this paper. While Copernicus Publications makes every effort to include appropriate place names, the final responsibility lies with the authors.</p>
  </notes><ack><title>Acknowledgements</title><p id="d1e4344">The authors acknowledge the financial support of the Jiangxi Provincial Department of Education.</p></ack><notes notes-type="financialsupport"><title>Financial support</title>

      <p id="d1e4349">This research has been supported by the Science and Technology Project of the Jiangxi Provincial Department of Education (grant no. GJJ2202403).</p>
  </notes><notes notes-type="reviewstatement"><title>Review statement</title>

      <p id="d1e4355">This paper was edited by Daniel Condurache and reviewed by four anonymous referees.</p>
  </notes><ref-list>
    <title>References</title>

      <ref id="bib1.bibx1"><?xmltex \def\ref@label{Amirkhani et al.(2019)}?><label>Amirkhani et al.(2019)</label><?label ref20?><mixed-citation>Amirkhani, S., Mobayen, S., Iliaee, N., Boubaker, O., and Hosseinnia, S. H.: Fast terminal sliding mode tracking control of nonlinear uncertain mass–spring system with experimental verifications, Int. J. Adv. Robot. Syst., 16, 1–10, <ext-link xlink:href="https://doi.org/10.1177/1729881419828176" ext-link-type="DOI">10.1177/1729881419828176</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bibx2"><?xmltex \def\ref@label{Brahmi et al.(2018)}?><label>Brahmi et al.(2018)</label><?label ref3?><mixed-citation>Brahmi, B., Saad, M., Ochoa-Luna, C., Rahman, M. H., and Brahmi, A.: Adaptive tracking control of an exoskeleton robot with uncertain dynamics based on estimated time-delay control, IEEE-ASME T. Mech., 23, 575–585, <ext-link xlink:href="https://doi.org/10.1109/tmech.2018.2808235" ext-link-type="DOI">10.1109/tmech.2018.2808235</ext-link>, 2018.</mixed-citation></ref>
      <ref id="bib1.bibx3"><?xmltex \def\ref@label{Chen et al.(2022)}?><label>Chen et al.(2022)</label><?label ref37?><mixed-citation>Chen, X., Zhao, H., and Zhen, S.: Constraint-following control design for the position tracking of a permanent magnet linear motor with inequality constraints, Mech. Sci., 13, 297–310, <ext-link xlink:href="https://doi.org/10.5194/ms-13-297-2022" ext-link-type="DOI">10.5194/ms-13-297-2022</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx4"><?xmltex \def\ref@label{Cupertino et al.(2009)}?><label>Cupertino et al.(2009)</label><?label ref16?><mixed-citation>Cupertino, F., Naso, D., Mininno, E., and Turchiano, B.: Sliding-mode control with double boundary layer for robust compensation of payload mass and friction in linear motors, IEEE T. Ind. Appl., 45, 1688–1696, <ext-link xlink:href="https://doi.org/10.1109/tia.2009.2027521" ext-link-type="DOI">10.1109/tia.2009.2027521</ext-link>, 2009.</mixed-citation></ref>
      <ref id="bib1.bibx5"><?xmltex \def\ref@label{Del Prete and Mansard(2016)}?><label>Del Prete and Mansard(2016)</label><?label ref10?><mixed-citation>Del Prete, A., and Mansard, N.: Robustness to joint-torque-tracking errors in task-space inverse dynamics, IEEE T. Robot., 32, 1091–1105, <ext-link xlink:href="https://doi.org/10.1109/tro.2016.2593027" ext-link-type="DOI">10.1109/tro.2016.2593027</ext-link>, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx6"><?xmltex \def\ref@label{Deng et al.(2023)}?><label>Deng et al.(2023)</label><?label ref34?><mixed-citation>Deng, W., Zhou, H., Zhou, J., and Yao, J.: Neural network-based adaptive asymptotic prescribed performance tracking control of hydraulic manipulators, IEEE T. Syst. Man Cy.-S., 53, 285–295, <ext-link xlink:href="https://doi.org/10.1109/TSMC.2022.3178626" ext-link-type="DOI">10.1109/TSMC.2022.3178626</ext-link>, 2023.</mixed-citation></ref>
      <ref id="bib1.bibx7"><?xmltex \def\ref@label{Du et al.(2018)}?><label>Du et al.(2018)</label><?label ref17?><mixed-citation>Du, M., Zhao, D., Yang, B., and Wang, L.: Terminal sliding mode control for full vehicle active suspension systems, J. Mech. Sci. Technol., 32, 2851–2866, <ext-link xlink:href="https://doi.org/10.1007/s12206-018-0541-x" ext-link-type="DOI">10.1007/s12206-018-0541-x</ext-link>, 2018.</mixed-citation></ref>
      <ref id="bib1.bibx8"><?xmltex \def\ref@label{Fang et al.(2022)}?><label>Fang et al.(2022)</label><?label ref12?><mixed-citation>Fang, H., Wu, Y., Xu, T., and Wan, F.: Adaptive neural sliding mode control of uncertain robotic manipulators with predefined time convergence, Int. J. Robust Nonlin., 32, 9213–9238, <ext-link xlink:href="https://doi.org/10.1002/rnc.6333" ext-link-type="DOI">10.1002/rnc.6333</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx9"><?xmltex \def\ref@label{Huang et al.(2021)}?><label>Huang et al.(2021)</label><?label ref35?><mixed-citation>Huang, K., Xian, Y., Zhen, S., and Sun, H.: Robust control design for a planar humanoid robot arm with high strength composite gear and experimental validation, Mech. Syst. Signal Process., 155, 107442, <ext-link xlink:href="https://doi.org/10.1016/j.ymssp.2020.107442" ext-link-type="DOI">10.1016/j.ymssp.2020.107442</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bibx10"><?xmltex \def\ref@label{Jing et al.(2019)}?><label>Jing et al.(2019)</label><?label ref13?><mixed-citation>Jing, C., Xu, H., and Niu, X.: Adaptive sliding mode disturbance rejection control with prescribed performance for robotic manipulators, ISA T., 91, 41–51, <ext-link xlink:href="https://doi.org/10.1016/j.isatra.2019.01.017" ext-link-type="DOI">10.1016/j.isatra.2019.01.017</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bibx11"><?xmltex \def\ref@label{Kalaba and Udwadia(1993)}?><label>Kalaba and Udwadia(1993)</label><?label ref27?><mixed-citation>Kalaba, R. E. and Udwadia, F. E.: Equations of motion for nonholonomic, constrained dynamical systems via Gauss’s principle, J. Appl. Mech., 60, 662–668, <ext-link xlink:href="https://doi.org/10.1115/1.2900855" ext-link-type="DOI">10.1115/1.2900855</ext-link>, 1993</mixed-citation></ref>
      <ref id="bib1.bibx12"><?xmltex \def\ref@label{Khalil and Dombre(2004)}?><label>Khalil and Dombre(2004)</label><?label ref1?><mixed-citation>Khalil, W. and Dombre, E.: Modeling, identification and control of robots, Butterworth-Heinemann, Oxford, <ext-link xlink:href="https://doi.org/10.1016/B978-1-903996-66-9.X5000-3" ext-link-type="DOI">10.1016/B978-1-903996-66-9.X5000-3</ext-link>, ISBN: 978-1-903996-66-9, 2004.</mixed-citation></ref>
      <ref id="bib1.bibx13"><?xmltex \def\ref@label{Khan et al.(2021)}?><label>Khan et al.(2021)</label><?label ref11?><mixed-citation>Khan, A. T., Li, S., and Cao, X.: Control framework for cooperative robots in smart home using bio-inspired neural network, Measurement, 167, 108253, <ext-link xlink:href="https://doi.org/10.1016/j.measurement.2020.108253" ext-link-type="DOI">10.1016/j.measurement.2020.108253</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bibx14"><?xmltex \def\ref@label{Kim et al.(2019)}?><label>Kim et al.(2019)</label><?label ref5?><mixed-citation>Kim, M. J., Lee, W., Choi, J. Y., Chung, G., Han, K. L., Choi, I. S., Ott, C., and Chung, W. K.: A passivity-based nonlinear admittance control with application to powered upper-limb control under unknown environmental interactions, IEEE-ASME T. Mech., 24, 1473–1484, <ext-link xlink:href="https://doi.org/10.1109/tmech.2019.2912488" ext-link-type="DOI">10.1109/tmech.2019.2912488</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bibx15"><?xmltex \def\ref@label{Li et al.(2015)}?><label>Li et al.(2015)</label><?label ref8?><mixed-citation>Li, Z., Yang, C., Su, C. Y., Deng, S., Sun, F., and Zhang, W.: Decentralized fuzzy control of multiple cooperating robotic manipulators with impedance interaction, IEEE T. Fuzzy Syst., 23, 1044–1056, <ext-link xlink:href="https://doi.org/10.1109/tfuzz.2014.2337932" ext-link-type="DOI">10.1109/tfuzz.2014.2337932</ext-link>, 2015.</mixed-citation></ref>
      <ref id="bib1.bibx16"><?xmltex \def\ref@label{Liu and Abdel-Malek(2000)}?><label>Liu and Abdel-Malek(2000)</label><?label ref36?><mixed-citation>Liu, J. F. and Abdel-Malek, K.: Robust control of planar dual-arm cooperative manipulators, Robot. Cim.-Int. Manuf., 16, 109–119, <ext-link xlink:href="https://doi.org/10.1016/S0736-5845(99)00043-5" ext-link-type="DOI">10.1016/S0736-5845(99)00043-5</ext-link>, 2000.</mixed-citation></ref>
      <ref id="bib1.bibx17"><?xmltex \def\ref@label{Mahmoud(1993)}?><label>Mahmoud(1993)</label><?label ref9?><mixed-citation>Mahmoud, M. S.: Robust control of robot arms including motor dynamics, Int. J. Control, 58, 853–873, <ext-link xlink:href="https://doi.org/10.1080/00207179308923032" ext-link-type="DOI">10.1080/00207179308923032</ext-link>, 1993.</mixed-citation></ref>
      <ref id="bib1.bibx18"><?xmltex \def\ref@label{Mobayen et al.(2017)}?><label>Mobayen et al.(2017)</label><?label ref21?><mixed-citation>Mobayen, S., Tchier, F., and Ragoub, L.: Design of an adaptive tracker for n-link rigid robotic manipulators based on super-twisting global nonlinear sliding mode control, Int. J. Syst. Sci., 48, 1990–2002, <ext-link xlink:href="https://doi.org/10.1080/00207721.2017.1299812" ext-link-type="DOI">10.1080/00207721.2017.1299812</ext-link>, 2017.</mixed-citation></ref>
      <ref id="bib1.bibx19"><?xmltex \def\ref@label{Pan et al.(2018)}?><label>Pan et al.(2018)</label><?label ref4?><mixed-citation>Pan, Y., Wang, H., Li, X., and Yu, H.: Adaptive command-filtered backstepping control of robot arms with compliant actuators, IEEE T. Contr. Syst. T., 26, 1149–1156, <ext-link xlink:href="https://doi.org/10.1109/tcst.2017.2695600" ext-link-type="DOI">10.1109/tcst.2017.2695600</ext-link>, 2018.</mixed-citation></ref>
      <ref id="bib1.bibx20"><?xmltex \def\ref@label{Perumalsamy et al.(2023)}?><label>Perumalsamy et al.(2023)</label><?label ref2?><mixed-citation>Perumalsamy, G., Kumar, D., Jose, J., Joseph Winston, S., and Murugan, S.: Computed torque control method for two-axis planar serial robotic arm, IETE J. Res., 69, 1437–1445, <ext-link xlink:href="https://doi.org/10.1080/03772063.2020.1869595" ext-link-type="DOI">10.1080/03772063.2020.1869595</ext-link>, 2023.</mixed-citation></ref>
      <ref id="bib1.bibx21"><?xmltex \def\ref@label{Slotine and Li(1988)}?><label>Slotine and Li(1988)</label><?label ref6?><mixed-citation>Slotine, J. J. and Li, W.: Adaptive manipulator control: A case study, IEEE T. Automat. Contr., 33, 995–1003, <ext-link xlink:href="https://doi.org/10.1109/9.14411" ext-link-type="DOI">10.1109/9.14411</ext-link>, 1988.</mixed-citation></ref>
      <ref id="bib1.bibx22"><?xmltex \def\ref@label{Su et al.(2020)}?><label>Su et al.(2020)</label><?label ref33?><mixed-citation>Su, Y., Zheng, C., and Mercorelli, P.: Robust approximate fixed-time tracking control for uncertain robot manipulators, Mech. Syst. Signal Process., 135, 106379, <ext-link xlink:href="https://doi.org/10.1016/j.ymssp.2019.106379" ext-link-type="DOI">10.1016/j.ymssp.2019.106379</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx23"><?xmltex \def\ref@label{Udwadia(2003)}?><label>Udwadia(2003)</label><?label ref29?><mixed-citation>Udwadia, F. E.: A new perspective on the tracking control of nonlinear structural and mechanical systems, P. Roy. Soc. A-Math. Phy., 459, 1783–1800, <ext-link xlink:href="https://doi.org/10.1098/rspa.2002.1062" ext-link-type="DOI">10.1098/rspa.2002.1062</ext-link>, 2003.</mixed-citation></ref>
      <ref id="bib1.bibx24"><?xmltex \def\ref@label{Udwadia(2005)}?><label>Udwadia(2005)</label><?label ref26?><mixed-citation>Udwadia, F. E.: Equations of motion for constrained multibody systems and their control, J. Optimiz. Theory App., 127, 627–638, <ext-link xlink:href="https://doi.org/10.1007/s10957-005-7507-8" ext-link-type="DOI">10.1007/s10957-005-7507-8</ext-link>, 2005. </mixed-citation></ref><?xmltex \hack{\newpage}?>
      <ref id="bib1.bibx25"><?xmltex \def\ref@label{Udwadia(2008)}?><label>Udwadia(2008)</label><?label ref23?><mixed-citation>Udwadia, F. E.: Optimal Tracking Control of Nonlinear Dynamical Systems, P. Roy. Soc. A-Math. Phy., 464, 341–2363, <ext-link xlink:href="https://doi.org/10.1098/rspa.2008.0040" ext-link-type="DOI">10.1098/rspa.2008.0040</ext-link>, 2008.</mixed-citation></ref>
      <ref id="bib1.bibx26"><?xmltex \def\ref@label{Udwadia and Kalaba(2002)}?><label>Udwadia and Kalaba(2002)</label><?label ref28?><mixed-citation>Udwadia, F. E. and Kalaba, R. E.: On the foundations of analytical dynamics, Int. J. Nonlin. Mech., 37, 1079–1090, <ext-link xlink:href="https://doi.org/10.1016/s0020-7462(01)00033-6" ext-link-type="DOI">10.1016/s0020-7462(01)00033-6</ext-link>, 2002.</mixed-citation></ref>
      <ref id="bib1.bibx27"><?xmltex \def\ref@label{Udwadia and Kalaba(1996)}?><label>Udwadia and Kalaba(1996)</label><?label ref22?><mixed-citation>Udwadia, F. E., Kalaba, R. E.: Analytical Dynamics: a New Approach, Cambridge University Press, New York, <ext-link xlink:href="https://doi.org/10.1017/CBO9780511665479" ext-link-type="DOI">10.1017/CBO9780511665479</ext-link>, ISBN: 9780511665479, 1996.</mixed-citation></ref>
      <ref id="bib1.bibx28"><?xmltex \def\ref@label{Udwadia and Koganti(2015a)}?><label>Udwadia and Koganti(2015a)</label><?label ref31?><mixed-citation>Udwadia, F. E. and Koganti, P. B.: Dynamics and control of a multi-body planar pendulum, Nonlinear Dynam., 81, 845–866, <ext-link xlink:href="https://doi.org/10.1007/s11071-015-2034-0" ext-link-type="DOI">10.1007/s11071-015-2034-0</ext-link>, 2015a.</mixed-citation></ref>
      <ref id="bib1.bibx29"><?xmltex \def\ref@label{Udwadia and Koganti(2015b)}?><label>Udwadia and Koganti(2015b)</label><?label ref24?><mixed-citation>Udwadia, F. E. and Koganti, P. B.: Optimal stable control for nonlinear dynamical systems: an analytical dynamics based approach, Nonlinear Dynam., 82, 547–562, <ext-link xlink:href="https://doi.org/10.1007/s11071-015-2175-1" ext-link-type="DOI">10.1007/s11071-015-2175-1</ext-link>, 2015b.</mixed-citation></ref>
      <ref id="bib1.bibx30"><?xmltex \def\ref@label{Udwadia and Wanichanon(2014)}?><label>Udwadia and Wanichanon(2014)</label><?label ref30?><mixed-citation>Udwadia, F. E. and Wanichanon, T.: Control of uncertain nonlinear multibody mechanical systems, J. Appl. Mech., 81, 1–11, <ext-link xlink:href="https://doi.org/10.1115/1.4025399" ext-link-type="DOI">10.1115/1.4025399</ext-link>, 2014.</mixed-citation></ref>
      <ref id="bib1.bibx31"><?xmltex \def\ref@label{Van et al.(2016)}?><label>Van et al.(2016)</label><?label ref18?><mixed-citation>Van, M., Ge, S. S., and Ren, H.: Finite time fault tolerant control for robot manipulators using time delay estimation and continuous nonsingular fast terminal sliding mode control, IEEE T. Cybernetics, 47, 1681–1693, <ext-link xlink:href="https://doi.org/10.1109/tcyb.2016.2555307" ext-link-type="DOI">10.1109/tcyb.2016.2555307</ext-link>, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx32"><?xmltex \def\ref@label{Wang(2017)}?><label>Wang(2017)</label><?label ref7?><mixed-citation>Wang, H.: Adaptive control of robot manipulators with uncertain kinematics and dynamics, IEEE T. Automat. Contr., 62, 948–954, <ext-link xlink:href="https://doi.org/10.1109/tac.2016.2575827" ext-link-type="DOI">10.1109/tac.2016.2575827</ext-link>, 2017.</mixed-citation></ref>
      <ref id="bib1.bibx33"><?xmltex \def\ref@label{Wang et al.(2019)}?><label>Wang et al.(2019)</label><?label ref15?><mixed-citation>Wang, Y., Karimi, H. R., Shen, H., Fang, Z., and Liu, M.: Fuzzy-model-based sliding mode control of nonlinear descriptor systems, IEEE T. Cybernetics, 49, 3409–3419, <ext-link xlink:href="https://doi.org/10.1109/tcyb.2018.2842920" ext-link-type="DOI">10.1109/tcyb.2018.2842920</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bibx34"><?xmltex \def\ref@label{Wang et al.(2020)}?><label>Wang et al.(2020)</label><?label ref19?><mixed-citation>Wang, Y., Li, S., Wang, D., Ju, F., Chen, B., and Wu, H.: Adaptive time-delay control for cable-driven manipulators with enhanced nonsingular fast terminal sliding mode, IEEE T. Ind. Electron., 68, 2356–2367, <ext-link xlink:href="https://doi.org/10.1109/tie.2020.2975473" ext-link-type="DOI">10.1109/tie.2020.2975473</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx35"><?xmltex \def\ref@label{Wu et al.(2019)}?><label>Wu et al.(2019)</label><?label ref32?><mixed-citation>Wu, Y., Huang, R., Li, X., and Liu, S.: Adaptive neural network control of uncertain robotic manipulators with external disturbance and time-varying output constraints, Neurocomputing, 323, 108-116, <ext-link xlink:href="https://doi.org/10.1016/j.neucom.2018.09.072" ext-link-type="DOI">10.1016/j.neucom.2018.09.072</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bibx36"><?xmltex \def\ref@label{Zhai et al.(2021)}?><label>Zhai et al.(2021)</label><?label ref14?><mixed-citation>Zhai, J. and Li, Z.: Fast-exponential sliding mode control of robotic manipulator with super-twisting method, IEEE T. Circuit-II, 69, 489–493, <ext-link xlink:href="https://doi.org/10.1109/tcsii.2021.3081147" ext-link-type="DOI">10.1109/tcsii.2021.3081147</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bibx37"><?xmltex \def\ref@label{Zhu et al.(2023)}?><label>Zhu et al.(2023)</label><?label ref25?><mixed-citation>Zhu, C., Yang, C., Jiang, Y., and Zhang, H.: Fixed-time fuzzy control of uncertain robots with guaranteed transient performance, IEEE T. Fuzzy Syst., 31, 1041–1051, <ext-link xlink:href="https://doi.org/10.1109/tfuzz.2022.3194373" ext-link-type="DOI">10.1109/tfuzz.2022.3194373</ext-link>, 2023.</mixed-citation></ref>

  </ref-list></back>
    <!--<article-title-html>A novel generalized sliding mode controller for uncertain robot manipulators based on motion constraints</article-title-html>
<abstract-html/>
<ref-html id="bib1.bib1"><label>Amirkhani et al.(2019)</label><mixed-citation>
      
Amirkhani, S., Mobayen, S., Iliaee, N., Boubaker, O., and Hosseinnia, S. H.: Fast terminal sliding mode tracking control of nonlinear uncertain
mass–spring system with experimental verifications, Int. J. Adv. Robot.
Syst., 16, 1–10, <a href="https://doi.org/10.1177/1729881419828176" target="_blank">https://doi.org/10.1177/1729881419828176</a>, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib2"><label>Brahmi et al.(2018)</label><mixed-citation>
      
Brahmi, B., Saad, M., Ochoa-Luna, C., Rahman, M. H., and Brahmi, A.: Adaptive tracking control of an exoskeleton robot with uncertain dynamics based on estimated time-delay control, IEEE-ASME T. Mech., 23, 575–585, <a href="https://doi.org/10.1109/tmech.2018.2808235" target="_blank">https://doi.org/10.1109/tmech.2018.2808235</a>, 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib3"><label>Chen et al.(2022)</label><mixed-citation>
      
Chen, X., Zhao, H., and Zhen, S.: Constraint-following control design for the position tracking of a permanent magnet linear motor with inequality constraints, Mech. Sci., 13, 297–310, <a href="https://doi.org/10.5194/ms-13-297-2022" target="_blank">https://doi.org/10.5194/ms-13-297-2022</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib4"><label>Cupertino et al.(2009)</label><mixed-citation>
      
Cupertino, F., Naso, D., Mininno, E., and Turchiano, B.: Sliding-mode control with double boundary layer for robust compensation of payload mass and friction in linear motors, IEEE T. Ind. Appl., 45, 1688–1696, <a href="https://doi.org/10.1109/tia.2009.2027521" target="_blank">https://doi.org/10.1109/tia.2009.2027521</a>, 2009.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib5"><label>Del Prete and Mansard(2016)</label><mixed-citation>
      
Del Prete, A., and Mansard, N.: Robustness to joint-torque-tracking errors in task-space inverse dynamics, IEEE T. Robot., 32, 1091–1105, <a href="https://doi.org/10.1109/tro.2016.2593027" target="_blank">https://doi.org/10.1109/tro.2016.2593027</a>, 2016.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib6"><label>Deng et al.(2023)</label><mixed-citation>
      
Deng, W., Zhou, H., Zhou, J., and Yao, J.: Neural network-based adaptive asymptotic prescribed performance tracking control of hydraulic manipulators, IEEE T. Syst. Man Cy.-S., 53, 285–295, <a href="https://doi.org/10.1109/TSMC.2022.3178626" target="_blank">https://doi.org/10.1109/TSMC.2022.3178626</a>, 2023.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib7"><label>Du et al.(2018)</label><mixed-citation>
      
Du, M., Zhao, D., Yang, B., and Wang, L.: Terminal sliding mode control for full vehicle active suspension systems, J. Mech. Sci. Technol., 32, 2851–2866, <a href="https://doi.org/10.1007/s12206-018-0541-x" target="_blank">https://doi.org/10.1007/s12206-018-0541-x</a>, 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib8"><label>Fang et al.(2022)</label><mixed-citation>
      
Fang, H., Wu, Y., Xu, T., and Wan, F.: Adaptive neural sliding mode control of uncertain robotic manipulators with predefined time convergence, Int. J. Robust Nonlin., 32, 9213–9238, <a href="https://doi.org/10.1002/rnc.6333" target="_blank">https://doi.org/10.1002/rnc.6333</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib9"><label>Huang et al.(2021)</label><mixed-citation>
      
Huang, K., Xian, Y., Zhen, S., and Sun, H.: Robust control design for a planar humanoid robot arm with high strength composite gear and experimental validation, Mech. Syst. Signal Process., 155, 107442, <a href="https://doi.org/10.1016/j.ymssp.2020.107442" target="_blank">https://doi.org/10.1016/j.ymssp.2020.107442</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib10"><label>Jing et al.(2019)</label><mixed-citation>
      
Jing, C., Xu, H., and Niu, X.: Adaptive sliding mode disturbance rejection control with prescribed performance for robotic manipulators, ISA T., 91, 41–51, <a href="https://doi.org/10.1016/j.isatra.2019.01.017" target="_blank">https://doi.org/10.1016/j.isatra.2019.01.017</a>, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib11"><label>Kalaba and Udwadia(1993)</label><mixed-citation>
      
Kalaba, R. E. and Udwadia, F. E.: Equations of motion for nonholonomic, constrained dynamical systems via Gauss’s principle, J. Appl. Mech., 60, 662–668, <a href="https://doi.org/10.1115/1.2900855" target="_blank">https://doi.org/10.1115/1.2900855</a>, 1993

    </mixed-citation></ref-html>
<ref-html id="bib1.bib12"><label>Khalil and Dombre(2004)</label><mixed-citation>
      
Khalil, W. and Dombre, E.: Modeling, identification and control of robots, Butterworth-Heinemann, Oxford, <a href="https://doi.org/10.1016/B978-1-903996-66-9.X5000-3" target="_blank">https://doi.org/10.1016/B978-1-903996-66-9.X5000-3</a>,
ISBN:&thinsp;978-1-903996-66-9, 2004.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib13"><label>Khan et al.(2021)</label><mixed-citation>
      
Khan, A. T., Li, S., and Cao, X.: Control framework for cooperative robots in smart home using bio-inspired neural network, Measurement, 167, 108253, <a href="https://doi.org/10.1016/j.measurement.2020.108253" target="_blank">https://doi.org/10.1016/j.measurement.2020.108253</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib14"><label>Kim et al.(2019)</label><mixed-citation>
      
Kim, M. J., Lee, W., Choi, J. Y., Chung, G., Han, K. L., Choi, I. S., Ott, C., and Chung, W. K.: A passivity-based nonlinear admittance control with application to powered upper-limb control under unknown environmental interactions, IEEE-ASME T. Mech., 24, 1473–1484, <a href="https://doi.org/10.1109/tmech.2019.2912488" target="_blank">https://doi.org/10.1109/tmech.2019.2912488</a>, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib15"><label>Li et al.(2015)</label><mixed-citation>
      
Li, Z., Yang, C., Su, C. Y., Deng, S., Sun, F., and Zhang, W.: Decentralized fuzzy control of multiple cooperating robotic manipulators with impedance interaction, IEEE T. Fuzzy Syst., 23, 1044–1056, <a href="https://doi.org/10.1109/tfuzz.2014.2337932" target="_blank">https://doi.org/10.1109/tfuzz.2014.2337932</a>, 2015.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib16"><label>Liu and Abdel-Malek(2000)</label><mixed-citation>
      
Liu, J. F. and Abdel-Malek, K.: Robust control of planar dual-arm cooperative manipulators, Robot. Cim.-Int. Manuf., 16, 109–119, <a href="https://doi.org/10.1016/S0736-5845(99)00043-5" target="_blank">https://doi.org/10.1016/S0736-5845(99)00043-5</a>, 2000.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib17"><label>Mahmoud(1993)</label><mixed-citation>
      
Mahmoud, M. S.: Robust control of robot arms including motor dynamics, Int. J. Control, 58, 853–873, <a href="https://doi.org/10.1080/00207179308923032" target="_blank">https://doi.org/10.1080/00207179308923032</a>, 1993.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib18"><label>Mobayen et al.(2017)</label><mixed-citation>
      
Mobayen, S., Tchier, F., and Ragoub, L.: Design of an adaptive tracker for n-link rigid robotic manipulators based on super-twisting global nonlinear sliding mode control, Int. J. Syst. Sci., 48, 1990–2002, <a href="https://doi.org/10.1080/00207721.2017.1299812" target="_blank">https://doi.org/10.1080/00207721.2017.1299812</a>, 2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib19"><label>Pan et al.(2018)</label><mixed-citation>
      
Pan, Y., Wang, H., Li, X., and Yu, H.: Adaptive command-filtered backstepping control of robot arms with compliant actuators, IEEE T. Contr. Syst. T., 26, 1149–1156, <a href="https://doi.org/10.1109/tcst.2017.2695600" target="_blank">https://doi.org/10.1109/tcst.2017.2695600</a>, 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib20"><label>Perumalsamy et al.(2023)</label><mixed-citation>
      
Perumalsamy, G., Kumar, D., Jose, J., Joseph Winston, S., and Murugan, S.: Computed torque control method for two-axis planar serial robotic arm, IETE J. Res., 69, 1437–1445, <a href="https://doi.org/10.1080/03772063.2020.1869595" target="_blank">https://doi.org/10.1080/03772063.2020.1869595</a>, 2023.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib21"><label>Slotine and Li(1988)</label><mixed-citation>
      
Slotine, J. J. and Li, W.: Adaptive manipulator control: A case study, IEEE T. Automat. Contr., 33, 995–1003, <a href="https://doi.org/10.1109/9.14411" target="_blank">https://doi.org/10.1109/9.14411</a>, 1988.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib22"><label>Su et al.(2020)</label><mixed-citation>
      
Su, Y., Zheng, C., and Mercorelli, P.: Robust approximate fixed-time tracking control for uncertain robot manipulators, Mech. Syst. Signal Process., 135, 106379, <a href="https://doi.org/10.1016/j.ymssp.2019.106379" target="_blank">https://doi.org/10.1016/j.ymssp.2019.106379</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib23"><label>Udwadia(2003)</label><mixed-citation>
      
Udwadia, F. E.: A new perspective on the tracking control of nonlinear structural and mechanical systems, P. Roy. Soc. A-Math. Phy., 459, 1783–1800, <a href="https://doi.org/10.1098/rspa.2002.1062" target="_blank">https://doi.org/10.1098/rspa.2002.1062</a>, 2003.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib24"><label>Udwadia(2005)</label><mixed-citation>
      
Udwadia, F. E.: Equations of motion for constrained multibody systems and their control, J. Optimiz. Theory App., 127, 627–638, <a href="https://doi.org/10.1007/s10957-005-7507-8" target="_blank">https://doi.org/10.1007/s10957-005-7507-8</a>, 2005.


    </mixed-citation></ref-html>
<ref-html id="bib1.bib25"><label>Udwadia(2008)</label><mixed-citation>
      
Udwadia, F. E.: Optimal Tracking Control of Nonlinear Dynamical Systems, P. Roy. Soc. A-Math. Phy., 464, 341–2363, <a href="https://doi.org/10.1098/rspa.2008.0040" target="_blank">https://doi.org/10.1098/rspa.2008.0040</a>, 2008.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib26"><label>Udwadia and Kalaba(2002)</label><mixed-citation>
      
Udwadia, F. E. and Kalaba, R. E.: On the foundations of analytical dynamics, Int. J. Nonlin. Mech., 37, 1079–1090, <a href="https://doi.org/10.1016/s0020-7462(01)00033-6" target="_blank">https://doi.org/10.1016/s0020-7462(01)00033-6</a>, 2002.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib27"><label>Udwadia and Kalaba(1996)</label><mixed-citation>
      
Udwadia, F. E., Kalaba, R. E.: Analytical Dynamics: a New Approach, Cambridge University Press, New York, <a href="https://doi.org/10.1017/CBO9780511665479" target="_blank">https://doi.org/10.1017/CBO9780511665479</a>,
ISBN:&thinsp;9780511665479, 1996.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib28"><label>Udwadia and Koganti(2015a)</label><mixed-citation>
      
Udwadia, F. E. and Koganti, P. B.: Dynamics and control of a multi-body planar pendulum, Nonlinear Dynam., 81, 845–866, <a href="https://doi.org/10.1007/s11071-015-2034-0" target="_blank">https://doi.org/10.1007/s11071-015-2034-0</a>, 2015a.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib29"><label>Udwadia and Koganti(2015b)</label><mixed-citation>
      
Udwadia, F. E. and Koganti, P. B.: Optimal stable control for nonlinear dynamical systems: an analytical dynamics based approach, Nonlinear Dynam., 82, 547–562, <a href="https://doi.org/10.1007/s11071-015-2175-1" target="_blank">https://doi.org/10.1007/s11071-015-2175-1</a>, 2015b.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib30"><label>Udwadia and Wanichanon(2014)</label><mixed-citation>
      
Udwadia, F. E. and Wanichanon, T.: Control of uncertain nonlinear multibody mechanical systems, J. Appl. Mech., 81, 1–11, <a href="https://doi.org/10.1115/1.4025399" target="_blank">https://doi.org/10.1115/1.4025399</a>, 2014.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib31"><label>Van et al.(2016)</label><mixed-citation>
      
Van, M., Ge, S. S., and Ren, H.: Finite time fault tolerant control for robot manipulators using time delay estimation and continuous nonsingular fast terminal sliding mode control, IEEE T. Cybernetics, 47, 1681–1693, <a href="https://doi.org/10.1109/tcyb.2016.2555307" target="_blank">https://doi.org/10.1109/tcyb.2016.2555307</a>, 2016.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib32"><label>Wang(2017)</label><mixed-citation>
      
Wang, H.: Adaptive control of robot manipulators with uncertain kinematics and dynamics, IEEE T. Automat. Contr., 62, 948–954, <a href="https://doi.org/10.1109/tac.2016.2575827" target="_blank">https://doi.org/10.1109/tac.2016.2575827</a>, 2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib33"><label>Wang et al.(2019)</label><mixed-citation>
      
Wang, Y., Karimi, H. R., Shen, H., Fang, Z., and Liu, M.: Fuzzy-model-based sliding mode control of nonlinear descriptor systems, IEEE T. Cybernetics, 49, 3409–3419, <a href="https://doi.org/10.1109/tcyb.2018.2842920" target="_blank">https://doi.org/10.1109/tcyb.2018.2842920</a>, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib34"><label>Wang et al.(2020)</label><mixed-citation>
      
Wang, Y., Li, S., Wang, D., Ju, F., Chen, B., and Wu, H.: Adaptive time-delay control for cable-driven manipulators with enhanced nonsingular fast terminal sliding mode, IEEE T. Ind. Electron., 68, 2356–2367, <a href="https://doi.org/10.1109/tie.2020.2975473" target="_blank">https://doi.org/10.1109/tie.2020.2975473</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib35"><label>Wu et al.(2019)</label><mixed-citation>
      
Wu, Y., Huang, R., Li, X., and Liu, S.: Adaptive neural network control of uncertain robotic manipulators with external disturbance and time-varying output constraints, Neurocomputing, 323, 108-116, <a href="https://doi.org/10.1016/j.neucom.2018.09.072" target="_blank">https://doi.org/10.1016/j.neucom.2018.09.072</a>, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib36"><label>Zhai et al.(2021)</label><mixed-citation>
      
Zhai, J. and Li, Z.: Fast-exponential sliding mode control of robotic manipulator with super-twisting method, IEEE T. Circuit-II, 69, 489–493, <a href="https://doi.org/10.1109/tcsii.2021.3081147" target="_blank">https://doi.org/10.1109/tcsii.2021.3081147</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib37"><label>Zhu et al.(2023)</label><mixed-citation>
      
Zhu, C., Yang, C., Jiang, Y., and Zhang, H.: Fixed-time fuzzy control of uncertain robots with guaranteed transient performance, IEEE T. Fuzzy Syst., 31, 1041–1051, <a href="https://doi.org/10.1109/tfuzz.2022.3194373" target="_blank">https://doi.org/10.1109/tfuzz.2022.3194373</a>, 2023.

    </mixed-citation></ref-html>--></article>
