Introduction
Musculoskeletal potential method
Target system

Both ends of a muscle are directly attached to the link (skeleton). Each muscle forms a straight line between both endpoints and is regarded as a massless rigid wire cable that can generate only tensile force (see Fig. 1a).

Although the muscles of living organisms have viscous and elastic properties [21] with various associated models [22‐24], these properties are ignored. Consequently, the dynamic equation of the musculoskeletal system is expressed as follows [25]:where \(\varvec{\theta }=(\theta _1,\ldots ,\theta _n)^T \in \Re ^{n \times 1}\) is the joint angular vector; \(\varvec{M}(\varvec{\theta }) \in \Re ^{n \times n}\) is the inertial matrix; \(\varvec{h}(\varvec{\theta }, \dot{\varvec{\theta }}) \in \Re ^{n \times 1}\) is a nonlinear vector; \(\varvec{B} \in \Re ^{n \times n}\) is the joint viscosity matrix; and \(\varvec{\tau } \in \Re ^{n \times 1}\) is the joint torque vector. The joint movable range is defined as \(\theta ^{min}_{i} \le \theta _i \le \theta ^{max}_{i}\) (\(i=1,\ldots ,n\)).$$\begin{aligned} \varvec{M}(\varvec{\theta })\ddot{\varvec{\theta }}+\varvec{h}(\varvec{\theta }, \dot{\varvec{\theta }})+\varvec{B}\dot{\varvec{\theta }} = \varvec{\tau }, \end{aligned}$$(1)

The effect of gravity is ignored. The muscles and links are arranged in a hierarchical structure. Owing to the hierarchy, the muscles and links do not interfere with each other threedimensionally and are allowed to overlap one another in a projected plane.

The target system always satisfies “vector closure [26]”. Singularities and their vicinities are not discussed, as they are beyond the scope of this study.

The input muscular force is sufficiently large, and the muscles do not loosen during a motion.
Control input
Feedforward path tracking
Problem setting

The desired path is composed of three points that are given in the joint coordinates \(\varvec{\theta }\) in advance: the start posture \(\varvec{\theta _{s}}\), the final desired posture \(\varvec{\theta _d}\) and a single waypoint \(\varvec{\theta _e}\). The desired path is the line that smoothly connects these three points as shown in Fig. 2a.

From Eq. (8), path tracking is realized by balancing the step input of the muscular internal force \(\varvec{\alpha }=\varvec{v_d}\) at the desired final posture \(\varvec{\theta _d}\) to each muscle. Note that \(\varvec{k_e}\) is constant so that \(\varvec{\alpha }\) does not change during a motion.

If the start and final postures, \(\varvec{\theta _s}\) and \(\varvec{\theta _d}\), are realized for path tracking, it is acceptable that the resultant path slightly deviates from the desired path (\(\varvec{\theta _s} \rightarrow \varvec{\theta _e} \rightarrow \varvec{\theta _d}\)) and does not perfectly achieve the desired path.

In the target system, the values in the joint viscosity matrix \(\varvec{B}\) in Eq. (1) are sufficiently large that the effect of inertia due to acceleration in motion is relatively small.
Sensorless path tracking control
Case study using a system with two joints and six muscles
Outline of the target system
Link mass (\(m_1\), \(m_2\)) [kg]  (1.678, 0.950) 
Link length (\(l_1\), \(l_2\)) [m]  (0.315, 0.234) 
Length from joint to COG  (0.158, 0.117) 
(\(l_{g1}\), \(l_{g2}\)) [m]  
Link MOI (\(I_{1}\), \(I_{2}\)) [kg\(\mathrm {m^2}\)]  (0.011, 0.004) 
Joint viscous coefficient [Nm \(\cdot\) s/rad]  (0.1, 0.1) 
(\(\mu _1\), \(\mu _2\)) [Nm \(\cdot\) s/rad]  
Muscular arrangement  
(\(h_1\), \(h_2\),..., \(h_8\)) [m]  0.05 
(\(b_{y1}\), \(b_{y2}\), \(b_{y3}\), \(b_{y4}\)) [m]  0.01 
(\(d_1\), \(d_2\),..., \(d_8\)) [m]  0.02 
(\(b_{x1}\), \(b_{x2}\), \(b_{x3}\), \(b_{x4}\)) [m]  0.12 
Step 1 (desired path generation)
Step 2 (desired potential generation)
Calculation of target potentials \(P_{d1}(\varvec{\theta })\) and \(P_{d3}(\varvec{\theta })\)
Calculation of the desired potential \(P_{d2}(\varvec{\theta })\)
Step 3 (internal force generation)
Sample 1  Sample 2  Sample 3  

\({\varvec{\theta }_s}\)  \((45,45)^T\)  \((135,45)^T\)  \((90,45)^T\)  
\({\varvec{\theta }_e}\)  \((90,90)^T\)  \((45,90)^T\)  \((68,90)^T\)  
\({\varvec{\theta }_d}\)  \((90,135)^T\)  \((45,135)^T\)  \((90,135)^T\)  
u  \(\varvec{k_e^*}\)  \(\varvec{v^*_d}\)  \(\varvec{k_e^*}\)  \(\varvec{v^*_d}\)  \(\varvec{k_e^*}\)  \(\varvec{v^*_d}\) 
1  34.90  34.71  25.64  25.16  28.39  28.21 
2  21.98  22.17  36.42  36.75  28.84  29.02 
3  22.97  23.28  14.37  14.74  10.91  11.22 
4  0.47  2.1E−07  10.62  10.09  0.46  4.2E−08 
5  0.01  5.5E−07  0.33  1.2E−07  10.11  10.11 
6  13.89  13.50  0.41  7.4E−07  10.00  9.63 
\(S_E\)  0.441  0.145  0.337  
\({\widetilde{V}}_P\)  0.281  0.092  0.215 