Open Access
This article is

- freely available
- re-usable

*Machines*
**2016**,
*4*(4),
21;
https://doi.org/10.3390/machines4040021

Article

Study on Payload Effects on the Joint Motion Accuracy of Serial Mechanical Mechanisms

Department of Mechanical Engineering, York University, Toronto, ON M3J1P3, Canada

^{*}

Author to whom correspondence should be addressed.

Academic Editor:
Marco Ceccarelli

Received: 6 July 2016 / Accepted: 31 October 2016 / Published: 4 November 2016

## Abstract

**:**

Robotic manipulators have been widely used in many arenas, when the robotic arm performs positioning, a traditional controller (e.g., a proportional-integral-derivative, PID controller) has the problem of not being able to compensate the payload variations. When the end-effector of the robotic arm grasps different payload masses as most applications require, the output of joint motion will vary under different payload masses, which will decrease the end-effector positioning accuracy of the robotic arm system. Based on the model reference adaptive control technique, the payload variation effect can be solved, therefore improving the positioning accuracy. This paper studies payload effects on the joint motion accuracy of serial mechanical mechanisms.

Keywords:

serial mechanisms; joint motion; model reference adaptive control; payload effect## 1. Introduction

Proportional-integral-derivative (PID) control is a widely used control method in many industries. For example, in many industries using robotic arms, PID control applies to each joint to control the whole robotic arm. By adjusting the PID gains of the PID controller, one can have the desired output performance. In [1], a discrete PID controller was designed for use in nano scale systems. In [2], a PID controller with additional imposed nonlinear logic was reviewed for robot motion positioning control. In [3], control strategies that implement planar micro assembly using groups of stress-engineered MEMS micro robots controlled through a single global control signal were presented. Model reference adaptive control (MRAC) is another control method that was proposed early on by Landau [4], and it has since been developed [5,6,7,8]. In [9], the implementation of MRAC to a dynamically unknown hydraulic robot for position tracking was presented. A recursive parameter estimator was employed for the parameter estimation in the MRAC system. The hydraulic robot was tested for a step input signal change, and it was found that the MRAC can provide better tracking than that of the PID controller, and the MRAC is sufficient enough to replace the classical PID controller. However, a minor problem was discovered, in that there is a small oscillation at the beginning of the motion when MRAC is applied. In [10], the study presented the application of a MRAC composite system used for tracking the endpoint of a flexible joint manipulator used in space. In [11], a model reference tracking-based adaptive PID controller was designed by inserting a PID controller to the feedback path for robot motion control, and the control system allows one to manipulate motions of an unstable robot. The reason that one needs to apply the adaptive control—especially the model reference adaptive control approach—is that traditional controllers cannot compensate the payload variations. When the end-effector grasps different payload masses, the joint output will vary under different payload masses, which will affect the positioning accuracy of the end-effector. Whereas for the model reference adaptive control, the above problem can be effectively resolved, and payload variation effect can be compensated. The MRAC (model reference adaptive control) technique was first proposed by Whitaker [12] in 1958, when he examined the adaptive flight control system, employing a reference model to produce the difference between the real and expected behavior. The difference was employed to adjust the parameters of the control system in order to obtain the expected outcome, regardless of some uncertainties and changing dynamics. The MRAC was later developed further. Dubowsky [5] was the first to apply the MRAC in a robotic manipulator. A linear time-invariant differential equation was employed as a reference model for every single joint in the robotic arm. The robotic arm was manipulated by tuning the gains of the position and velocity feedback system to track the model. The author employed the steepest-descent approach for renewing the feedback system gains, after which Horowitz applied the hyper-stability method and developed an adaptive algorithm [13] for a mechanical system, with the aim of compensating a nonlinear term in the dynamic equation and decoupling the existing interactions between the each joint of the robotic system. The MRAC proposed by Horowitz, and later associated developments by other authors, contains an adaptive algorithm block and a position feedback loop which provides the difference between desired and actual position of the joints. This difference is acted upon by the integral portion of a seemingly PID control structure before feedback values of position and velocity are subtracted from it. The problem associated with using a PID controller of not being able to compensate the payload variation is illustrated, and the general theory of model reference control is presented in the following section.

## 2. Payload Variation Effect and Model Reference Control

#### 2.1. Two-Degrees of Freedom (DOF) Link Case

In order to implement PID control of the two-DOF (degrees of freedom) link manipulator case, as shown in Figure 1, the dynamic equation has to be derived. Here, by using the Lagrange method, the torques applied to the joints are determined:

$${\tau}_{1}=\frac{d}{dt}\frac{\partial L}{\partial \stackrel{\u2022}{{\theta}_{1}}}-\frac{\partial L}{\partial {\theta}_{1}},\text{}{\tau}_{2}=\frac{d}{dt}\frac{\partial L}{\partial \stackrel{\u2022}{{\theta}_{2}}}-\frac{\partial L}{\partial {\theta}_{2}}$$

The kinetic energy and potential energy for link 1 are expressed as:
where ${m}_{1}$ is the mass of link 1 and ${m}_{2}$ is the mass of link 2. For link 2, first write down the coordinates of the end of link 2, then differentiate them with respect to time in order to obtain the kinetic energy. Denote the Cartesian coordinates of the end of link 2 as (x

$${K}_{1}=\frac{1}{2}{m}_{1}{({l}_{1}\stackrel{\u2022}{{\theta}_{1}})}^{2},\text{}{P}_{1}={m}_{1}g({l}_{1}\mathrm{sin}{\theta}_{1})$$

_{2}, y_{2}).
$${x}_{2}={l}_{1}\mathrm{cos}{\theta}_{1}+{l}_{2}\mathrm{cos}({\theta}_{1}+{\theta}_{2}),\text{}{y}_{2}={l}_{1}\mathrm{sin}{\theta}_{1}+{l}_{2}\mathrm{sin}({\theta}_{1}+{\theta}_{2})$$

Differentiate with respect to time results in:

$$\stackrel{\u2022}{{x}_{2}}=-{l}_{1}\stackrel{\u2022}{{\theta}_{1}}\mathrm{sin}{\theta}_{1}-{l}_{2}(\stackrel{\u2022}{{\theta}_{1}}+\stackrel{\u2022}{{\theta}_{2}})\mathrm{sin}({\theta}_{1}+{\theta}_{2}),\text{}\stackrel{\u2022}{{y}_{2}}={l}_{1}\stackrel{\u2022}{{\theta}_{1}}\mathrm{cos}{\theta}_{1}+{l}_{2}(\stackrel{\u2022}{{\theta}_{1}}+\stackrel{\u2022}{{\theta}_{2}})\mathrm{cos}({\theta}_{1}+{\theta}_{2})$$

Therefore, the kinetic energy for link 2 is expressed as:
where ${{v}_{2}}^{2}={\stackrel{\u2022}{{x}_{2}}}^{2}+{\stackrel{\u2022}{{y}_{2}}}^{2}$.

$${K}_{2}=\frac{1}{2}{m}_{2}{{v}_{2}}^{2}=\frac{1}{2}{m}_{2}{{l}_{1}}^{2}{\stackrel{\u2022}{{\theta}_{1}}}^{2}+\frac{1}{2}{m}_{2}{{l}_{2}}^{2}{(\stackrel{\u2022}{{\theta}_{1}}+\stackrel{\u2022}{{\theta}_{2}})}^{2}+{m}_{2}{l}_{1}{l}_{2}\mathrm{cos}{\theta}_{2}\stackrel{\u2022}{{\theta}_{1}}(\stackrel{\u2022}{{\theta}_{1}}+\stackrel{\u2022}{{\theta}_{2}})$$

The potential energy for link 2 is expressed as:

$${P}_{2}={m}_{2}g{l}_{1}\mathrm{sin}{\theta}_{1}+{m}_{2}g{l}_{2}\mathrm{sin}({\theta}_{1}+{\theta}_{2})$$

The total kinetic and potential energy are expressed as:

$$P={P}_{1}+{P}_{2}=({m}_{1}+{m}_{2})g{l}_{1}\mathrm{sin}{\theta}_{1}+{m}_{2}g{l}_{2}\mathrm{sin}({\theta}_{1}+{\theta}_{2})\phantom{\rule{0ex}{0ex}}K={K}_{1}+{K}_{2}=\frac{1}{2}({m}_{1}+{m}_{2}){{l}_{1}}^{2}{\stackrel{\u2022}{{\theta}_{1}}}^{2}+\frac{1}{2}{m}_{2}{{l}_{2}}^{2}{(\stackrel{\u2022}{{\theta}_{1}}+\stackrel{\u2022}{{\theta}_{2}})}^{2}+{m}_{2}{l}_{1}{l}_{2}\mathrm{cos}{\theta}_{2}\stackrel{\u2022}{{\theta}_{1}}(\stackrel{\u2022}{{\theta}_{1}}+\stackrel{\u2022}{{\theta}_{2}}).$$

The Lagrange is obtained as:

$$\begin{array}{l}L=K-P=\frac{1}{2}({m}_{1}+{m}_{2}){{l}_{1}}^{2}{\stackrel{\u2022}{{\theta}_{1}}}^{2}+\frac{1}{2}{m}_{2}{{l}_{2}}^{2}{(\stackrel{\u2022}{{\theta}_{1}}+\stackrel{\u2022}{{\theta}_{2}})}^{2}+{m}_{2}{l}_{1}{l}_{2}\mathrm{cos}{\theta}_{2}\stackrel{\u2022}{{\theta}_{1}}(\stackrel{\u2022}{{\theta}_{1}}+\stackrel{\u2022}{{\theta}_{2}})\\ \text{\hspace{0.5em}\hspace{0.5em}}-({m}_{1}+{m}_{2})g{l}_{1}\mathrm{sin}{\theta}_{1}-{m}_{2}g{l}_{2}\mathrm{sin}({\theta}_{1}+{\theta}_{2})\end{array}$$

$$\begin{array}{cc}\hfill {\tau}_{1}& =\frac{d}{dt}\frac{\partial L}{\partial \stackrel{\u2022}{{\theta}_{1}}}-\frac{\partial L}{\partial {\theta}_{1}}\hfill \\ & =(({m}_{1}+{m}_{2}){{l}_{1}}^{2}+{m}_{2}{{l}_{2}}^{2}+2{m}_{2}{l}_{1}{l}_{2}\mathrm{cos}{\theta}_{2})\stackrel{\u2022\u2022}{{\theta}_{1}}+({m}_{2}{{l}_{2}}^{2}+{m}_{2}{l}_{1}{l}_{2}\mathrm{cos}{\theta}_{2})\stackrel{\u2022\u2022}{{\theta}_{2}}\hfill \\ & +(-2{m}_{2}{l}_{1}{l}_{2}\mathrm{sin}{\theta}_{2})\stackrel{\u2022}{{\theta}_{1}}\stackrel{\u2022}{{\theta}_{2}}+(-{m}_{2}{l}_{1}{l}_{2}\mathrm{sin}{\theta}_{2}){\stackrel{\u2022}{{\theta}_{2}}}^{2}+(({m}_{1}+{m}_{2}){l}_{1}\mathrm{cos}{\theta}_{1}+{m}_{2}{l}_{2}\mathrm{cos}({\theta}_{1}+{\theta}_{2}))g\hfill \end{array}$$

$$\begin{array}{cc}\hfill {\tau}_{2}& =\frac{d}{dt}\frac{\partial L}{\partial \stackrel{\u2022}{{\theta}_{2}}}-\frac{\partial L}{\partial {\theta}_{2}}\hfill \\ & =({m}_{2}{{l}_{2}}^{2}+{m}_{2}{l}_{1}{l}_{2}\mathrm{cos}{\theta}_{2})\stackrel{\u2022\u2022}{{\theta}_{1}}+({m}_{2}{{l}_{2}}^{2})\stackrel{\u2022\u2022}{{\theta}_{2}}+({m}_{2}{l}_{1}{l}_{2}\mathrm{sin}{\theta}_{2}){\stackrel{\u2022}{{\theta}_{1}}}^{2}+{m}_{2}{l}_{2}\mathrm{cos}({\theta}_{1}+{\theta}_{2})g\hfill \end{array}$$

Putting them in a matrix form, we can obtain the following:
where ${m}_{11}=({m}_{1}+{m}_{2}){{l}_{1}}^{2}+{m}_{2}{{l}_{2}}^{2}+2{m}_{2}{l}_{1}{l}_{2}\mathrm{cos}{\theta}_{2}$, ${m}_{12}={m}_{2}{{l}_{2}}^{2}+{m}_{2}{l}_{1}{l}_{2}\mathrm{cos}{\theta}_{2}$, ${m}_{22}={m}_{2}{{l}_{2}}^{2}$, ${n}_{11}=2(-{m}_{2}{l}_{1}{l}_{2}\mathrm{sin}{\theta}_{2})\stackrel{\u2022}{{\theta}_{1}}\stackrel{\u2022}{{\theta}_{2}}+(-{m}_{2}{l}_{1}{l}_{2}\mathrm{sin}{\theta}_{2}){\stackrel{\u2022}{{\theta}_{2}}}^{2}$, ${n}_{21}={m}_{2}{l}_{1}{l}_{2}\mathrm{sin}{\theta}_{2}{\stackrel{\u2022}{{\theta}_{1}}}^{2}$.

$$\left[\begin{array}{l}{\tau}_{1}\\ {\tau}_{2}\end{array}\right]=M\stackrel{\u2022\u2022}{\theta}+N+Gg=\left[\begin{array}{cc}{m}_{11}& {m}_{12}\\ {m}_{12}& {m}_{22}\end{array}\right]\left[\begin{array}{l}\stackrel{\u2022\u2022}{{\theta}_{1}}\\ \stackrel{\u2022\u2022}{{\theta}_{2}}\end{array}\right]+\left[\begin{array}{l}{n}_{11}\\ {n}_{21}\end{array}\right]+\left[\begin{array}{l}{g}_{11}\\ {g}_{21}\end{array}\right]g$$

Now apply the PID controller, as shown in Figure 2, the plant’s output compares with the reference model, which generates a difference. This difference goes via the PID operation (i.e., through “error times control actions”). The output from the PID operation goes to the plant model’s input, and this circle keeps going, up to the point where the difference among the real plant’s output and the ideal one approaches zero. The controller output is the torque; i.e.,
where error $e={r}_{p}-{x}_{p}$. We know the two-link manipulator M and N matrices, the output from the manipulator (i.e., acceleration of joints 1 and 2) can be determined as follows:

$${K}_{p}e+{K}_{i}{\displaystyle \int e}dt+{K}_{d}\stackrel{\u2022}{e}=\left[\begin{array}{l}{\tau}_{1}\\ {\tau}_{2}\end{array}\right]$$

$$\left[\begin{array}{l}{\tau}_{1}\\ {\tau}_{2}\end{array}\right]=M\stackrel{\u2022\u2022}{\theta}+N+Gg=\left[\begin{array}{cc}{m}_{11}& {m}_{12}\\ {m}_{12}& {m}_{22}\end{array}\right]\left[\begin{array}{l}\stackrel{\u2022\u2022}{{\theta}_{1}}\\ \stackrel{\u2022\u2022}{{\theta}_{2}}\end{array}\right]+\left[\begin{array}{l}{n}_{11}\\ {n}_{21}\end{array}\right]+\left[\begin{array}{l}{g}_{11}\\ {g}_{21}\end{array}\right]g.$$

So ${K}_{p}e+{K}_{i}{\displaystyle \int e}dt+{K}_{d}\stackrel{\u2022}{e}=\left[\begin{array}{l}{\tau}_{1}\\ {\tau}_{2}\end{array}\right]=M\stackrel{\u2022\u2022}{\theta}+N+Gg$

$$\Rightarrow \left[\begin{array}{l}\stackrel{\u2022\u2022}{{\theta}_{1}}\\ \stackrel{\u2022\u2022}{{\theta}_{2}}\end{array}\right]={M}^{-1}({K}_{p}e+{K}_{i}{\displaystyle \int e}dt+{K}_{d}\stackrel{\u2022}{e}-N)$$

After deriving the acceleration of joints 1 and 2, take the time integral to obtain the velocity of joints 1 and 2, and take another integral to obtain the positon of joints 1 and 2.

$$\left[\begin{array}{l}\stackrel{\u2022}{{\theta}_{1}}\\ \stackrel{\u2022}{{\theta}_{2}}\end{array}\right]={\displaystyle \int \left[\begin{array}{l}\stackrel{\u2022\u2022}{{\theta}_{1}}\\ \stackrel{\u2022\u2022}{{\theta}_{2}}\end{array}\right]}dt,\text{}\left[\begin{array}{l}{\theta}_{1}\\ {\theta}_{2}\end{array}\right]={\displaystyle \int \left[\begin{array}{l}\stackrel{\u2022}{{\theta}_{1}}\\ \stackrel{\u2022}{{\theta}_{2}}\end{array}\right]}dt$$

After applying different payload masses, the joints’ motion outputs are illustrated in Figure 3. For joint 1, when the payload is 0, joint one’s motion is quite steady; however, when the payload increases to 5 and 15, one can see that joint 1’s motion is no longer the same, and the joint output is also going up and down, as shown in Figure 3. The same applies to joint 2. The output of joint motion varies, which decreases the end-effector positioning accuracy of the robotic arm system. In order to address the above problem, model reference control is applied to compensate the payload variation effect. Figure 4 shows a model reference control approach. The output of the reference model will be compared with the output of the manipulator (plant), which produces an error (a difference). The error will go through the adaptation mechanism to adjust the parameters of the dynamic model of the manipulator (i.e., the adaptation process section employed the difference in order to generate the input component that goes to the plant). The matrices F
where $u={K}_{I}{\displaystyle \int ({r}_{p}-{x}_{p})}-{K}_{p}{x}_{p}-{K}_{d}{x}_{v}$.

_{p}, F_{v}, C_{p}, and C_{v}are introduced in order to make the system stable [4]. At the same time, the plant’s output compares with the desired model, and one can therefore lead to generate another difference. This difference goes through the integration operation, and subsequently deducts the feedback position and velocity. This action resembles the PID control action. This process’ output, times the terms from the adaptation algorithm, then adding the terms from the adaptation algorithm, is the plant’s input. This operation will resume until the difference between the plant’s output and the reference model’s output equals to zero. The ideal system is cut off from the plant, meaning that the plant variables’ feedback values will not participate in handling the reference model’s input. The input to the reference model will be handled from its own output variables. The ideal system is entirely uninfluenced by the plant’s performance. As with the PID control, the output from the controller can be determined as follows. For the model reference adaptive control approach,
$$ControllerOut=\tau =\stackrel{\wedge}{M}u+\stackrel{\wedge}{V}-{F}_{p}e-{F}_{v}\stackrel{\u2022}{e}$$

The manipulator dynamic equation is:

$$\tau =Ma+V+Gg$$

So, the output from the manipulator (i.e., acceleration of the joint) is:

$$\stackrel{\wedge}{M}u+\stackrel{\wedge}{V}-{F}_{p}e-{F}_{v}\stackrel{\u2022}{e}=\tau =Ma+V$$

$$\Rightarrow \left[\begin{array}{l}{a}_{1}\\ {a}_{2}\end{array}\right]=\left[\begin{array}{l}\stackrel{\u2022\u2022}{{\theta}_{1}}\\ \stackrel{\u2022\u2022}{{\theta}_{2}}\end{array}\right]={M}^{-1}(\stackrel{\wedge}{M}u+\stackrel{\wedge}{V}-{F}_{p}e-{F}_{v}\stackrel{\u2022}{e}-V)$$

After deriving the acceleration of the joint, take the time integral to obtain the velocity of the joint, and take another integral to obtain the positon of the joint. The adaptive algorithm is derived as follows. We now use the Popov’s asymptotic hyper-stability theorem [4], and set $\stackrel{\approx}{M}=\stackrel{\wedge}{M}-M$. Since:
where $y={C}_{v}\stackrel{\u2022}{e}+{C}_{p}e$, and $w(t)=(\stackrel{\wedge}{M}-M)u(t)+\left[\begin{array}{l}{{x}_{v}}^{T}(\stackrel{\wedge}{{N}_{1}}(t)-{N}_{1}){x}_{v}\\ {{x}_{v}}^{T}(\stackrel{\wedge}{{N}_{2}}(t)-{N}_{2}){x}_{v}\\ {{x}_{v}}^{T}(\stackrel{\wedge}{{N}_{3}}(t)-{N}_{3}){x}_{v}\end{array}\right]$. The first term is used to derive the adaptive algorithm for $M$, and the second term is used to derive the adaptive algorithm for $N$. For the first term:

$$\underset{0}{\overset{T}{\int}}{y}^{T}(t)}w(t)dt={\displaystyle \underset{0}{\overset{T}{\int}}{y}^{T}(t)}\stackrel{\approx}{M}u(t)dt+{\displaystyle \sum _{i=1}^{3}{\displaystyle \underset{0}{\overset{T}{\int}}{y}_{i}(t)}{{x}_{v}}^{T}}(\stackrel{\wedge}{{N}_{i}}-{N}_{i}){x}_{v}dt$$

$$\begin{array}{cc}\hfill {\displaystyle \underset{0}{\overset{T}{\int}}{y}^{T}(t)}\stackrel{\approx}{M}u(t)dt& ={{\displaystyle \underset{0}{\overset{T}{\int}}\left[\begin{array}{l}{y}_{1}\\ {y}_{2}\end{array}\right]}}^{T}\left[\begin{array}{cc}{\stackrel{\approx}{m}}_{11}& {\stackrel{\approx}{m}}_{12}\\ {\stackrel{\approx}{m}}_{12}& {\stackrel{\approx}{m}}_{22}\end{array}\right]\left[\begin{array}{l}{u}_{1}\\ {u}_{2}\end{array}\right]dt\hfill \\ & ={\displaystyle \underset{0}{\overset{T}{\int}}[{y}_{1},{y}_{2}]}\left[\begin{array}{cc}{\stackrel{\approx}{m}}_{11}& {\stackrel{\approx}{m}}_{12}\\ {\stackrel{\approx}{m}}_{12}& {\stackrel{\approx}{m}}_{22}\end{array}\right]\left[\begin{array}{l}{u}_{1}\\ {u}_{2}\end{array}\right]dt\hfill \\ & ={\displaystyle \underset{0}{\overset{T}{\int}}{\stackrel{\approx}{m}}_{11}}{y}_{1}{u}_{1}dt+{\displaystyle \underset{0}{\overset{T}{\int}}{\stackrel{\approx}{m}}_{12}({y}_{1}{u}_{2}+{y}_{2}{u}_{1})dt}+{\displaystyle \underset{0}{\overset{T}{\int}}{\stackrel{\approx}{m}}_{22}}{y}_{2}{u}_{2}dt\hfill \end{array}$$

$\stackrel{\wedge}{M}$ and $\stackrel{\wedge}{N}$ are the adjusted parameters of the dynamic equation of the manipulator, the matrices Fp, Fv, Cp, and Cv are introduced in order to make the system stable [4], and $y(t)$ is the output from the Cp and Cv block. Consider the first term in the above equation, and based on Popov’s asymptotic hyper-stability theorem [4], to prove asymptotic convergence, it must be shown that, for all T ≥ 0, we need to find $\frac{d}{dt}\stackrel{\wedge}{{m}_{11}}(t)=\frac{d}{dt}\stackrel{\approx}{{m}_{11}}(t)$, so that $\underset{0}{\overset{T}{\int}}{\stackrel{\approx}{m}}_{11}}{y}_{1}{u}_{1}dt\ge -{\gamma}^{2$.

Where γ

^{2}is a positive constant that is a function of the initial conditions. From $\underset{0}{\overset{T}{\int}}z{(t)}^{T}}\stackrel{\u2022}{z(t)}dt=\frac{z{(T)}^{T}z(T)}{2}-\frac{z{(0)}^{T}z(0)}{2}\ge -\frac{z{(0)}^{T}z(0)}{2}=-{{\gamma}_{0}}^{2$, so by selecting $\frac{d}{dt}\stackrel{\wedge}{{m}_{11}}(t)=\frac{d}{dt}\stackrel{\approx}{{m}_{11}}(t)={k}_{m11}{y}_{1}{u}_{1}$, one has
$$\Rightarrow {y}_{1}{u}_{1}=\frac{\stackrel{\u2022}{\stackrel{\approx}{{m}_{11}}(t)}}{{k}_{m11}}$$

Then, $\underset{0}{\overset{T}{\int}}{\stackrel{\approx}{m}}_{11}}{y}_{1}{u}_{1}dt={\displaystyle \underset{0}{\overset{T}{\int}}{\stackrel{\approx}{m}}_{11}}\stackrel{\u2022}{{\stackrel{\approx}{m}}_{11}}\frac{1}{{k}_{m11}}dt=\frac{1}{{k}_{m11}}{\displaystyle \underset{0}{\overset{T}{\int}}{\stackrel{\approx}{m}}_{11}}\stackrel{\u2022}{{\stackrel{\approx}{m}}_{11}}dt\ge -{\gamma}^{2$, in order to make the system stable [4].

Using the same analysis on the other two terms, we obtain

$$\frac{d}{dt}\stackrel{\wedge}{{m}_{12}}(t)=\frac{d}{dt}\stackrel{\approx}{{m}_{12}}(t)={k}_{m12}({y}_{1}{u}_{2}+{y}_{2}{u}_{1}),\text{}\frac{d}{dt}\stackrel{\wedge}{{m}_{22}}(t)=\frac{d}{dt}\stackrel{\approx}{{m}_{22}}(t)={k}_{m22}{y}_{2}{u}_{2}$$

Derivation for M has finished. Now, using the same approach, we can obtain the adaptive algorithm for N as follows:

$$\frac{d}{dt}\stackrel{\wedge}{{n}_{12}}(t)=\frac{d}{dt}\stackrel{\approx}{{n}_{12}}(t)={k}_{n12}(2{y}_{1}{x}_{v1}{x}_{v2}-{y}_{2}{{x}_{v1}}^{2}),\text{}\frac{d}{dt}\stackrel{\wedge}{{n}_{22}}(t)=\frac{d}{dt}\stackrel{\approx}{{n}_{22}}(t)={k}_{n22}{y}_{1}{{x}_{v2}}^{2}$$

Figure 5 shows the joints’ output under different payload masses. By using the model reference adaptive control approach, three lines coincide with each other under different payload masses; i.e., the payload mass variation effect has been compensated.

#### 2.2. Three-DOF Link Case

For the 3-DOF link case, as shown in Figure 6, by using the Lagrange method, the dynamic equation is obtained as follows. Here, we just give the results.

$$\left[\begin{array}{l}{\tau}_{1}\\ {\tau}_{2}\\ {\tau}_{3}\end{array}\right]=M\stackrel{\u2022\u2022}{\theta}+N+Gg=\left[\begin{array}{ccc}{m}_{11}& {m}_{12}& {m}_{13}\\ {m}_{12}& {m}_{22}& {m}_{23}\\ {m}_{13}& {m}_{23}& {m}_{33}\end{array}\right]\left[\begin{array}{l}\stackrel{\u2022\u2022}{{\theta}_{1}}\\ \stackrel{\u2022\u2022}{{\theta}_{2}}\\ \stackrel{\u2022\u2022}{{\theta}_{3}}\end{array}\right]+\left[\begin{array}{l}{n}_{11}\\ {n}_{21}\\ {n}_{31}\end{array}\right]+\left[\begin{array}{l}{g}_{11}\\ {g}_{21}\\ {g}_{31}\end{array}\right]g$$

_{1}/2, b = l

_{2}/2, c = l

_{3}/2; r

_{1}= l

_{1}, r

_{2}= l

_{2}, r

_{3}= l

_{3}.

Now apply the PID controller, the controller output is the torque,
where error $e={r}_{p}-{x}_{p}$.

$${K}_{p}e+{K}_{i}{\displaystyle \int e}dt+{K}_{d}\stackrel{\u2022}{e}=\left[\begin{array}{l}{\tau}_{1}\\ {\tau}_{2}\\ {\tau}_{3}\end{array}\right]$$

Knowing the two-link manipulator M and N matrices, the output from the manipulator (i.e., acceleration of joints 1 and 2) can be determined as follows:
$$\left[\begin{array}{l}{\tau}_{1}\\ {\tau}_{2}\\ {\tau}_{3}\end{array}\right]=M\stackrel{\u2022\u2022}{\theta}+N+Gg=\left[\begin{array}{ccc}{m}_{11}& {m}_{12}& {m}_{13}\\ {m}_{12}& {m}_{22}& {m}_{23}\\ {m}_{13}& {m}_{23}& {m}_{33}\end{array}\right]\left[\begin{array}{l}\stackrel{\u2022\u2022}{{\theta}_{1}}\\ \stackrel{\u2022\u2022}{{\theta}_{2}}\\ \stackrel{\u2022\u2022}{{\theta}_{3}}\end{array}\right]+\left[\begin{array}{l}{n}_{11}\\ {n}_{21}\\ {n}_{31}\end{array}\right]+\left[\begin{array}{l}{g}_{11}\\ {g}_{21}\\ {g}_{31}\end{array}\right]g$$

So ${K}_{p}e+{K}_{i}{\displaystyle \int e}dt+{K}_{d}\stackrel{\u2022}{e}=\left[\begin{array}{l}{\tau}_{1}\\ {\tau}_{2}\\ {\tau}_{3}\end{array}\right]=M\stackrel{\u2022\u2022}{\theta}+N+Gg$ $\Rightarrow \left[\begin{array}{l}\stackrel{\u2022\u2022}{{\theta}_{1}}\\ \stackrel{\u2022\u2022}{{\theta}_{2}}\end{array}\right]={M}^{-1}({K}_{p}e+{K}_{i}{\displaystyle \int e}dt+{K}_{d}\stackrel{\u2022}{e}-N)$.

After deriving the acceleration of joints 1 and 2, take the time integral to obtain the velocity of joints 1 and 2, and take another integral to obtain the positon of joints 1 and 2.

After applying different payload masses, the joints’ motion outputs are illustrated in Figure 7. For joint 1, when the payload is 0, joint one’s motion is quite steady; however, when the payload increases to 5 and 15, one can see that joint 1’s motion is not the same anymore. The same applies to joints 2 and 3. For the model reference adaptive control approach,
$$ControllerOut=\tau =\stackrel{\wedge}{M}u+\stackrel{\wedge}{V}-{F}_{p}e-{F}_{v}\stackrel{\u2022}{e}$$
where $u={K}_{I}{\displaystyle \int ({r}_{p}-{x}_{p})}-{K}_{p}{x}_{p}-{K}_{d}{x}_{v}$.

So, the output from the manipulator (i.e., acceleration of joint) is:

$$\stackrel{\wedge}{M}u+\stackrel{\wedge}{V}-{F}_{p}e-{F}_{v}\stackrel{\u2022}{e}=\tau =Ma+V\Rightarrow \left[\begin{array}{l}{a}_{1}\\ {a}_{2}\\ {a}_{3}\end{array}\right]=\left[\begin{array}{l}\stackrel{\u2022\u2022}{{\theta}_{1}}\\ \stackrel{\u2022\u2022}{{\theta}_{2}}\\ \stackrel{\u2022\u2022}{{\theta}_{3}}\end{array}\right]={M}^{-1}(\stackrel{\wedge}{M}u+\stackrel{\wedge}{V}-{F}_{p}e-{F}_{v}\stackrel{\u2022}{e}-V)$$

After deriving the acceleration of the joint, take the time integral to obtain the velocity of the joint and take another integral to obtain the positon of the joint. By using the same approach, the adaptive algorithm is derived as follows:

$$\begin{array}{l}\frac{d}{dt}\stackrel{\wedge}{{m}_{11}}(t)=\frac{d}{dt}\stackrel{\approx}{{m}_{11}}(t)={k}_{m11}{y}_{1}{u}_{1},\frac{d}{dt}\stackrel{\wedge}{{m}_{12}}(t)=\frac{d}{dt}\stackrel{\approx}{{m}_{12}}(t)={k}_{m12}({y}_{1}{u}_{2}+{y}_{2}{u}_{1})\\ \frac{d}{dt}\stackrel{\wedge}{{m}_{13}}(t)=\frac{d}{dt}\stackrel{\approx}{{m}_{13}}(t)={k}_{m13}({y}_{3}{u}_{1}+{y}_{1}{u}_{3}),\text{}\frac{d}{dt}\stackrel{\wedge}{{m}_{22}}(t)=\frac{d}{dt}\stackrel{\approx}{{m}_{22}}(t)={k}_{m22}{y}_{2}{u}_{2}\\ \frac{d}{dt}\stackrel{\wedge}{{m}_{23}}(t)=\frac{d}{dt}\stackrel{\approx}{{m}_{23}}(t)={k}_{m23}({y}_{3}{u}_{2}+{y}_{2}{u}_{3}),\text{}\frac{d}{dt}\stackrel{\wedge}{{m}_{33}}(t)=\frac{d}{dt}\stackrel{\approx}{{m}_{33}}(t)={k}_{m33}{y}_{3}{u}_{3}\\ \frac{d}{dt}\stackrel{\wedge}{{n}_{12}}(t)=\frac{d}{dt}\stackrel{\approx}{{n}_{12}}(t)={k}_{n12}(2{y}_{1}{x}_{v1}{x}_{v2}-{y}_{2}{{x}_{v1}}^{2}),\text{}\frac{d}{dt}\stackrel{\wedge}{{n}_{13}}(t)=\frac{d}{dt}\stackrel{\approx}{{n}_{13}}(t)={k}_{n13}(2{y}_{1}{x}_{v1}{x}_{v3}-{y}_{3}{{x}_{v1}}^{2})\\ \frac{d}{dt}\stackrel{\wedge}{{n}_{22}}(t)=\frac{d}{dt}\stackrel{\approx}{{n}_{22}}(t)={k}_{n22}{y}_{1}{{x}_{v2}}^{2},\text{}\frac{d}{dt}\stackrel{\wedge}{{{n}_{33}}^{1}}(t)=\frac{d}{dt}\stackrel{\approx}{{{n}_{13}}^{1}}(t)={k}_{n33}^{1}(2{y}_{1}{x}_{v2}{x}_{v3}-{y}_{1}{{x}_{v3}}^{2})\\ \frac{d}{dt}\stackrel{\wedge}{{{n}_{33}}^{2}}(t)=\frac{d}{dt}\stackrel{\approx}{{{n}_{13}}^{2}}(t)={k}_{n33}^{2}(2{y}_{2}{x}_{v2}{x}_{v3}+{y}_{2}{{x}_{v3}}^{2}-{y}_{3}{{x}_{v2}}^{2}).\end{array}$$

Figure 8 shows the joints’ output under different payload masses. By using the model reference adaptive control approach, the variation effect of payload mass has been resolved. One can see that three lines coincide with each other under different payload masses; i.e., the payload mass variation effect has been compensated.

## 3. Conclusions

When the end-effector grasps different payload masses, the output of joint motion will vary, which will decrease the positioning accuracy of the end-effector. Based on the model reference adaptive control approach, the payload variation effect can be solved effectively, therefore improving the positioning accuracy. Comparing the simulated results with the behavior of a real kinematic and experimental evaluation will be our future work. In addition, future research will focus on hybrid control design by combining model reference adaptive control and PID control for serial robotic arms.

## Acknowledgments

The authors would like to thank the financial support from the Natural Sciences and Engineering Research Council of Canada (NSERC). The authors gratefully acknowledge the financial support from the Canada Research Chairs (CRC) program.

## Author Contributions

This work was supervised by Dan Zhang. Dan Zhang provided the general direction of the research. Under Dan Zhang’s supervision, feedback and support, Bin Wei conducted the work.

## Conflicts of Interest

The authors declare no conflict of interest.

## References

- Razmjooy, N.; Ramezani, M. Using Quantum Gates to design a PID Controller for Nano robots. Int. Res. J. Appl. Basic Sci.
**2014**, 8, 2354–2359. [Google Scholar] - Bouchebout, S.; Bolopion, A.; Abrahamians, J.O.; Regnier, S. An overview of multiple DOF magnetic actuated micro-robots. J. Micro-Nano Mechatron.
**2012**, 7, 97–113. [Google Scholar] [CrossRef] - Donald, B.; Levey, C.; Paprotny, I.; Rus, D. Planning and control for micro assembly of structures composed of stress-engineered MEMS micro robots. Int. J. Robot. Res.
**2013**, 32, 218–246. [Google Scholar] [CrossRef] [PubMed] - Landau, Y.D. Adaptive Control: The Model Reference Approach; Marcel Dekker: New York, NY, USA, 1979. [Google Scholar]
- Dubowsky, S.; Desforges, D. The application of model-referenced adaptive control to robotic manipulators. J. Dyn. Syst. Meas. Control
**1979**, 101, 193–200. [Google Scholar] [CrossRef] - Cao, C.; Hovakimyan, N. Design and Analysis of a Novel L1 Adaptive Control Architecture with Guaranteed Transient Performance. IEEE Trans. Autom. Control
**2008**, 53, 586–591. [Google Scholar] [CrossRef] - Jain, P.; Nigam, M.J. Design of a Model Reference Adaptive Controller Using Modified MIT Rule for a Second Order System. Adv. Electron. Electr. Eng.
**2013**, 3, 477–484. [Google Scholar] - Nguyen, N.; Krishnakumar, K.; Boskovic, J. An Optimal Control Modification to Model-Reference Adaptive Control for Fast Adaptation. In Proceedings of the AIAA Guidance, Navigation and Control Conference and Exhibit, Honolulu, HI, USA, 18–21 August 2008; pp. 1–19.
- Kireçci, A.; Topalbekiroglu, M.; Eker, İ. Experimental Evaluation of a Model Reference Adaptive Control for a Hydraulic Robot: A Case Study. Robotica
**2003**, 21, 71–78. [Google Scholar] [CrossRef] - Ulrich, S.; Sasiadek, J. Direct Model Reference Adaptive Control of a Flexible Joint Robot. In Proceedings of the 2010 AIAA Guidance, Navigation, and Control Conference, Toronto, ON, Canada, 2–5 August 2010.
- Su, W. A Model Reference-Based Adaptive PID Controller for Robot Motion Control of Not Explicitly Known Systems. Int. J. Intell. Control Syst.
**2007**, 12, 237–244. [Google Scholar] - Whitaker, H.P.; Yamron, J.; Kezer, A. Design of Model Reference Adaptive Control Systems for Aircraft; Report R-164; Instrumentation Laboratory, M.I.T. Press: Cambridge, MA, USA, 1958. [Google Scholar]
- Horowitz, R.; Tomizuka, M. An Adaptive Control Scheme for Mechanical Manipulators—Compensation of Nonlinearity and Decoupling Control. J. Dyn. Syst. Meas. Control
**1986**, 108, 1–9. [Google Scholar] [CrossRef]

© 2016 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC-BY) license (http://creativecommons.org/licenses/by/4.0/).