# A Method for Precise Tracking Control of Pneumatic Artificial-Muscle-Driven Exoskeletal Robot
## 2 Pneumatic-Muscle-Driven Upper Limb Exoskeletal Robot System
### PAM Driver
#### 2.1.1 PAM Output Force Model
Because the deformation process of rubber material is considered to be isotropic and incompressible, \(\lambda_{1}\lambda_{2}\lambda_{3}=1\), and  
\[I_{2}=\frac{1}{\lambda_{3}^{2}}+\frac{1}{\lambda_{1}^{2}}+\frac{1}{\lambda_{2 }^{2}} \tag{6}\]  
Usually, \(\lambda_{1}=\frac{L}{L_{0}},\lambda_{2}=\frac{D}{D_{0}},\lambda_{3}=\frac{1}{ \lambda_{1}\lambda_{2}}\). This paper takes into consideration the wall thickness of muscles, and chooses the following representation method for the primary elongation rate:  
\[F(\varepsilon,p)=\pi r_{0}^{2}p\Big{[}a(1-\varepsilon)^{2}-b\Big{]} \tag{1}\]0  
where \(t_{0}\) represents the initial thickness of the rubber, while \(t\) represents the current thickness of the rubber. Therefore, the stored elastic energy within the rubber bladder can be deduced as follows:  
\[ \begin{split} F_{\text{bladder}}=V_{r}\Big{\{}2C_{10}\Big{[} \lambda_{1}\frac{d\lambda_{1}}{dL}+\lambda_{2}\frac{d\lambda_{2}}{dL}+\lambda_ {2}\frac{d\lambda_{2}}{dL}\Big{]}\\ +2C_{01}\Big{[}\lambda_{1}\big{(}\lambda_{2}^{2}+\lambda_{3}^{2} \big{)}\frac{d\lambda_{1}}{dL}+\lambda_{2}\big{(}\lambda_{1}^{2}+\lambda_{3}^{ 2}\big{)}\frac{d\lambda_{2}}{dL}+\lambda_{3}\big{(}\lambda_{1}^{2}+\lambda_{2} ^{2}\big{)}\frac{d\lambda_{3}}{dL}\Big{]}\Big{\}}\end{split}  \tag{8}\]  
In the self-assembled PAM, the bladder is mixed with strands, leading to full contact between its cylindrical surface and the strands. The stress between the bladder and outer interwoven strands equals the air pressure in the cylinder. Thus, the frictional force between the bladder and strand should be:  
\[F_{\text{s-r friction }}=f^{\prime}\cdot P\cdot\pi DL \tag{9}\]  
During the adduction of the pneumatic muscle, relative displacement will occur between strands. The frictional force caused by it will directly hinder the accuracy of such a model. [PERSON] and [PERSON], based on the Hertzian Contact Theory, proposed the formula for frictional force between PAM strands [22]. \[F_{\text{strand-strand}}=f_{\text{strand-strand}}\ \frac{S_{\text{contact}}}{S_{ \text{scale}}}\,p \tag{10}\]  
In this formula, \(f_{\text{strand-strand}}\) is the friction coefficient between interwoven strands, \(S_{\text{contact}}\) is the contact area between strands, \(S_{\text{scale}}\) is adjustment coefficient for the contact area, \(F_{\text{comp}}\) is the extrusion force between strands, \(\theta_{\text{min}}\) is the minimum braiding angle, and v is the strands' Poisson rate. In the existing relevant model, mechanism modeling based on PAM does not consider the impact of elastic force and friction in the process of PAM movement, so it is more considered as empirical modeling and is not based on mechanism modeling, resulting in complex expressions and too many parameters. This study, based on a common model of output force, implements the elasticity of the strands and rubber bladder, the friction between the two parts, and the friction between strands into the PAM mathematical model, which will enable the model to better simulate muscle performance. In the meantime, the empirical coefficient is introduced as a constant, and the coefficient in question will also be determined using the Particle Swarm Algorithm. This will not only lower the difficulties in obtaining empirical coefficients, but also raise their precision to a higher level. The final optimized model is shown below:  
\[\left\{ \begin{array}{c}F=k_{1}\pi r_{0}^{2}p\Big{[}a(1-k_{2}\epsilon)^{2}-b \Big{]}+k_{3}-F_{\text{bladder}}\ -F_{\text{braid}}\ -(F_{\text{s-sfriction}}\ +F_{\text{s-sfriction}})\ inflation\\ F=k_{1}\pi r_{0}^{2}p\Big{[}a(1-k_{2}\epsilon)^{2}-b\Big{]}+k_{3}-F_{\text{ bladder}}\ -F_{\text{braid}}\ +(F_{\text{s-sfriction}}\ +F_{\text{s-sfriction}}) deflation\end{array} \right. \tag{11}\]The purpose of system identification is to determine the best parameter scheme according to the provided input and output data.