Strojniški vestnik - Journal of Mechanical Engineering 60(2014)6, 437-446 © 2014 Journal of Mechanical Engineering. All rights reserved. D0l:10.5545/sv-jme.2013.1366 Original Scientific Paper Received for review: 2013-08-13 Received revised form: 2013-12-03 Accepted for publication: 2014-01-24 RBF Neural Network Based Sliding Mode Control of a Lower Limb Exoskeleton Suit Shengli Song* - Xinglong Zhang - Zhitao Tan PLA University of Science & Technology, Department of Mechanical Engineering, China A new force tracking control algorithm of partial actuated lower limb exoskeleton suit, which is designed for enhancing human motion is presented in this paper. Firstly, a mathematical model of the electro-hydraulic servo system was created, and equations for the frictions in the hydraulic valve and actuator were obtained. Secondly, the appropriate observer based on the estimated functions and the measurement error equations are presented for the sliding mode control algorithm. Thirdly, a sliding mode controller with applicable surface coefficient has been designed for force tracking control of the servo system. Fourthly, so as to reduce the error caused by the unchangeable surface of the sliding mode control, a radial basis functions (RBF) neural network control algorithm has been introduced to offset the disadvantage of the sliding mode control by moving the sliding surface effectively. Finally, the simulation results under conditions of different frequencies and the trial results based on the human motion of sliding mode control and the RBF based sliding control are presented, which indicate that RBF based sliding control provides a better performance than regular sliding mode control. Keywords: exoskeleton suit, hydraulic servo system, force tracking, sliding mode control, RBF neural network 0 INTRODUCTION Heavy goods are usually transported by vehicles. However, natural disasters such as earthquakes or debris flow eruption, soldiers in the field, workers going up and downstairs, and other situations force humans to transport heavy goods on foot. A lower limb exoskeleton suit is a good way of easing the burden on the body and enhancing human motion. A new lower exoskeleton suit with a hydraulic actuator, as well as a spring in each knee and a spring in each hip and ankle, is presented in Fig. 1. Control of the hydraulic servo leg is necessary to provide a high-level human-machine interaction performance. During operation, the computer computes and transmits data from sensors in the suit to the controller in near real-time, an input signal is generated by the controller to drive the actuator to offer an assistant force to the human. The problem here is that in systems with high sensitivity to external load, the system performance will be proportional to the precision of the mathematical model [1]. Force control of uncertain hydraulic servo systems has been documented for several years since it has many advantages such as robustness and higher precision, but less control over position and velocity. Uncertainties in structural stiffness and hydraulic plant parameters require a "robust approach to the design of the force control" [2]. Many control algorithms, such as optimal control [3], predictive control [4], classical Hx theories [5], neural network [6], and fuzzy control [7] and [8], have been applied to protecting structures subjected to external disturbance excitation and to eliminating uncertainties. Hence, the system should have both good stability and good speed of response. Fig. 1. Structure of ankle and shank; the flexion/extension freedom is driven by a cylinder and a spring; The abduction/ adduction and rotation freedoms are passive Control of the servo systems represents a significant area for control applications [9]. Sliding mode control solves the problems of uncertainties, nonlinearization and robustness of the electro-hydraulic servo robot well by giving satisfactory control performance. During the last several years, sliding mode control has attracted considerable attention [10] and [11]. However, the down side of this strategy is the chattering of control action due to its discontinuous switching part in the control algorithm. Therefore, a boundary layer is needed to change the performance [12]. However, the boundary layer helps to decrease the chattering problem around the sliding surface at the expense of tracking performance [13] and [14]. Quick damping, a decrease in switching effect and increase in performance have been examined in the studies where a sliding mode controller with a moving sliding surface is used [15]. Therefore, many modified sliding mode control algorithms have been *Corr. Author's Address: Department of Mechanical Engineering PLA University of Sci. & Tech, No. 88, R. HouBiaoying,Dist. Baixia, Nanjing City, China, shl_s@163.com 437 Strojniski vestnik - Journal of Mechanical Engineering 60(2014)6, 437-446 created to improve the performance of the above defects [16], such as intelligent complementary sliding mode control [17]. RBF neural networks were first presented in 1988 [14] and have been applied to nonlinear systems because of their good performance and simpler network structure, which averts unnecessary and tedious calculations compared to the multilayer feed-forward networks (MFN). Specifically, nonlinear functions set with arbitrary accuracy can be approximated by RBF neural network [18] and [19]. So as to eliminate the disadvantages of sliding mode control, a new RBF network based sliding mode control with moving surface whose slope is determined by the RBF network structure is proposed in this paper. The results of the improved and regular sliding mode control are presented and examined. 1 MODEL OF A HYDRAULIC SERVO SYSTEM As shown in Fig. 2, high-pressure oil from the oil pump goes into the port valve through hole P and into the left (right) chamber of the valve core via the valve core hole. The high-pressure oil creates a right (left) pushing force to overcome resistance on the right (left) side of the core valve, which pushes the valve core to the right (left) most position. Fig. 2. The hydraulic system contains: a reservoir, filter, pump, checkvalve, reliefvalve, accumulator, servo-valve and cylinder The oil flows through the servo-valve to actuator to drive the external load (leg) and the measured value from force sensor is transmitted to the controller, which will compute and generate input signal to the servo-valve after comparing the measured force and desire force. Valve openings are changeable according to the input signal from the controller, which determines the pressure and flow in the acting chamber of the actuator. The accumulator is designed to restore energy in high pressure and release energy in low pressure. The relief valve is used to stabilize the outlet pressure of the oil pump. The four-sided valve equation for flow is: Il = KqXv - KcPl • The cylinder flow can be written as: Ql = + Qi). (1) (2) When oil flows into the cylinder, the flow of the left and right chamber is expressed by: V q = AXc + CinPl + CecPl + jj A , (3) V q = AXc + CinPL - CecP 2 ~ P2 > (4) and that: V = Vo + Ax, V = v0 - A xc. (5) (6) Combining Eqs. (1) to (6), the flow of cylinder becomes: A + A • - cin + Cec v0 . Vl x + CnPL —PL + 20 PL ' (7) Considering the movement of the actuator, the force of the cylinder driving the external load can be written as follows: fL = A Pi- AP2. (8) Defining the relevance of pressure of the load to that of chambers as: dp1 _ 1 dpL _ dp2 dt 2 dt dt (9) In order to provide positional control of the robot, the dynamic equation between the load force, angular acceleration and the spool position should be concerned, which can be defined by:

dxv 1 n \ — = _ (ksu - xv ) dt t where: ß( A + A) Kq ß(2Kc + Cn + Cex ) ß( A + 4)2 2V (15) Fl = nixv - n2xc - n3Fl + n4 - SlFo - k ¡sgn(Fo ) xv = ~(ksu - xv )-e2Fo - k2 sgn(Fo ) . (18) T F = F L - F 3 CONTROL AGORITHM 3.1 Sliding Mode Controller Sliding mode control is an effective approach for robust control of nonlinear systems with a variable structured surface. The control action is determined by a switching state space to reduce the order of the system, which requires a reasonable range of uncertainties to ensure the stability of the system during the sliding mode control. A block diagram of RBF introduced into sliding mode control is presented in Fig. 3. If we let the desired output be FL then: * = Fl - F. (19) ß(2Kc + C + Cx)(A2 - A) J Sliding mode function can be designed as: s = ce + e, (20) 2 OBSERVER DESIGN In order to deal with nonlinear control methods, it is necessary to design an observer for the sliding mode controller. A sliding observer is robust to parameters uncertainties by estimating the load force and spool position. The system equations can be denoted by: FL = "1 Xv - n2 xc - n3 FL + n4 Xv = — (ksu - xv ) T y = F (16) where c > 0. Design a Lyapunov function as: V = 1,2. 2 (21) From Eqs. (19) to (21) into: i = ce-e = c(FL-Fd) + (Fl-Fd). (22) Combining E.qs. (15), (17) with Eq. (22) and replacing FL by FL , then: RBF Neural Network Based Sliding Mode Control of a Lower Limb Exoskeleton Suit 439 Strojniski vestnik - Journal of Mechanical Engineering 60(2014)6, 437-446 s = c(«j(xv + xv ) - n2 xc — n3(F l + FL ) + n4) + + (n!(xv + xv ) — n3(FL + Fl )) — cFd — Fd = = (c — n3)(n1(xv + xv ) — n2 xc — — n3( F l + Fl ) + n4) + nl(xv + xv ) — cFd — Fä = = Oj(xv + xv ) — o2 xc — o3(F l + Fl ) + o4 +— ksu — T — cFä — Fä, (23) where: n Oj = nx(c - n3) —1, o2 = n2(c - n3), T n o3 = n3(c - n3), o4 = n4(c - n3), o5 =— ks. T So V = ss = s(Oj(xv + xv) - o2xc — -o3(FL + Fl) + o4 + ou — cFd — Fd). (24) The input signal can be obtained by: u = —1(olXv - o2xc - o3 Fl + o4 - cFd - Fd + K sgn(s)). (25) 05 3.2 RBF Network Controller In the sliding mode control algorithm, K is taken as the sliding surface, which keeps moving during the entire process of control. If the slope of the sliding surface gets bigger, the system will be more stable but the regulating process will take longer. So as to eliminate the disadvantage of the sliding surface, we use an RBF network (Fig. 4) to approximate K. x = [e,e] layerl layer2 layer3 Fig. 4. RBF neural network structure Only minority connection weights have effects on the output of the network, which makes the study velocity of RBF rapidly and leads to a high training speed. In order to increase the precision of the approximation, a large bandwidth is necessary. The algorithm of the RBF network is: h = exp(- 11 x - cj b (26) K ( x) = W 'Th( x) + a The network input is presented as x = [e,e]T , and the output of RBF is: K(x) = W h(x) + a. (27) The performance index function of the training is: E = 1 ^ Then the control input can be written as: (28) u =--(oj Xv - o2xc - o3 Fl + o4 - cFd - Fd + K sgn(s)). (29) 05 Using Eqs. (23) to (27), the derivative of the sliding surface can be expressed as: ^ ^ ~ n s = ol(xv + xv) -o2xc -o3(Fl + Fl) + o4 +— ksu - T - cFd - Fd = oÀ - o3FL + K sgn(4 (30) According to gradient descent method, the parameters can be updated as: a nr dE de dFL du dK AW = -n-= -ne-= -ne—---, (31) dW dW du dK dW where: , dFL K 1. —- du t 2. = -—¡sgnOX dK oA 3. ^ = h( x)sgn(WTh( x)). dW The weight adjustment algorithm is given by: AW = W (t -1) + AW (t) + a(W (t) - W (t -1)), (32) where n1 e [0,1] ; is the learning rate and a e [0,1]; is the momentum factor. 4 RESULTS OF SIMULATION AND EXPERIMENT 4.1 Simulation In this section, a number of simulation results are presented to show the performance of sliding mode control and RBF based sliding mode control. ) 440 Song, S.- Zhang, X. - Tan, Z. Strojniski vestnik - Journal of Mechanical Engineering 60(2014)6, 437-446 a) c) Fig. 5. The simulation results of sliding mode control with Fd = 200 sin(4nt); a) represents the overall simulation result, b) represents the rectangular region in a), c) shows the tracking error result, and the error reaches an approximate value of ±3.2 N; d) reveals the control signal Sampling time for all simulations is selected as 0.001 s. In the system, the desired force can be determined by the angle of ankle joint and actuator moment. Therefore, the joint angle can be the reference value. However, the joint's performance in terms of tracking forces will not be visualized. Therefore, the desired forces are chosen as the reference quantities in order to simplify the system. The conditions with frequencies (2 and 10 Hz) and load force (200 N) are shown graphically as a kind of control to make objective comparisons. Load force can change according to the objects the robot will carry. Variations infrequency also have effects on the tracking error of the controller. Therefore, some parameters of the system were modified during the simulation to show the success of the controllers. For reasons of brevity, other parameters such as pressure, mass and damping variations, etc. are not addressed in this paper. The values of the parameters must be chosen such that the results of the system allow for error analysis of simulations. Specifically, the chosen cylinder dead length and stroke length are 0.23 and 0.1016 m, respectively. The hydraulic fluid density is 830.4 kg/m3, and the effective bulk modulus of fluid is 1.517*109 s1. Other key parameters are presented in Table 1. Specifically, the switch gain should be generated to move along the sliding surface. For this purpose, a sliding mode controller and a RBF sliding mode controller were designed to verify the positive effects caused by the continuous motion of the sliding surface. Table 1. Values of key parameters Parameters Value Parameters Value m [kg] 50 Cin + Cex 2x10-14 Pl [MPa] 6.0 ks [m/mA] 1.54 b [Ns/m] 10000 A [m2] 3.25x10-4 Fc [N] 4 A [m2] 2.10x10-4 T [S] 0.0035 /c [m] 0.28 Kc [m3s/Pa] 2.0x10-11 Kq [m3s-A] 18.2x10-3 In order to observe the effects of parametric uncertainty and the two controllers, controls were repeated with different load forces and different frequencies. The results of the tracking forces, tracking errors and control input signals are shown in Figs. 5 and 6. The tracking error of RBF based sliding mode control was 50% less than that of sliding mode 441 RBF Neural Network Based Sliding Mode Control of a Lower Limb Exoskeleton Suit Strojniski vestnik - Journal of Mechanical Engineering 60(2014)6, 437-446 a) c) Fig. 6. Simulation results of RBF based sliding mode control with Fd = 200 sin(4nt); a) represents the overall simulation result; b) represents the rectangular region in a);c) shows the tracking error result, andthe stable error reaches an approximate value of ±1.6 N; d) reveals the control signal control with Fd = 200 sin(to) and 70% less than that of sliding mode control with Fd = 200 sin(20^/). When RBF networks are introduced to sliding mode control, the improvements in tracking errors are clearly shown. The improvements at a high frequency (10 Hz) are more visible and caused by moving the sliding surface effectively. 4.2 Experiment The results of the simulation show that RBF sliding mode control presents a better force tracking performance by moving the sliding surface effectively than that of sliding mode control. However, conclusions cannot be determined simply based on the simulation results, nevertheless tests have supported the results as well. The implementation of the proposed method on the robot servo system test is depicted in Fig. 7. The Rexroth CDL1-25-14-100C cylinder was selected to meet the specifications such as, maximum push, pull force, and stroke length. The Rexroth 4WSE2EM-6-2X/20L/min 4-way flow control servo-valve with an amplifier internally installed was selected based on the required flow rates 442 and supply pressure. APC with Pentium Dual Core 2.6 GHz and Windows XP operating system was used as computing centre. A 16-bit A/D convertor and a 16-bit D/A convertor with a sampling time of0.001s were used. Desired forces of Fd = 200 sin(4nt) and Fd = 200 sin(20nt) were used. The performances of both control methods with a frequency 2 Hz r- computer------------| I D/A A/D convertor convertor signal processing valve-cylinder - Fig. 7. Block diagram of the robot servo system for sliding mode control and RBF based sliding mode control Song, S.- Zhang, X. - Tan, Z. Strojniski vestnik - Journal of Mechanical Engineering 60(2014)6, 437-446 a) c) 0.4 0.6 Time [s] d) Fig. 8. Experimental results of sliding mode control with Fd = 200 sin(4nt); a) presents the overall experimental results, b) represents the rectangularregionin a);c) shows the tracking error results, and the stable error of FL - Fd and Fsensor - Fd reaches an approximate value of ±15 N and ±30 N; d) shows the control signal a) c) Time Is! d) Fig. 9. Simulation results of RBF based sliding mode control with Fd = 200 sin(4ni); a) presents the overall simulation results; b) represents the rectangularregionin a);c) shows the tracking error results, and the stable error of FL - Fd and Fsensor - Fd reaches an approximate value of ±5 N and ±20 N; d) shows the control signal RBF Neural Network Based Sliding Mode Control of a Lower Limb Exoskeleton Suit 443 Strojniski vestnik - Journal of Mechanical Engineering 60(2014)6, 437-446 a) 200180- ^ 160- <1) o o 140-U_ 120- b) 0.010 0.015 0.020 0.025 0.030 0.035 0.040 0.045 Time [s] 8.0x10 s-6.0x10 s -4.0x10 s-2.0x10 s-0.0--2.0x10 s--4.0x10 s--6.0x10 s--8.0x10 s--1.0X10"4 --1.2X10"1- qJ Time [s] (jj Time [s] Fig. 10. Simulation results of sliding mode control with Fd = 200 sm(20rct); a) presents the overall simulation result; b) represents the rectangular region in a); c) shows the tracking error result, and the stable error of FL - Fd and Fsensor - Fd reaches proximate value of ±30 N and ±50 N; d) reveals the control signal a) 0.10 Time [s] c) Tlme Is! d) Fig. 11. Simulation results of RBF based sliding mode control with Fd = 200 sin(20ni); ; a) presents the overall simulation result; b) represents the rectangular region in a); c) shows the tracking error result, and the stable error FL - Fd and Fsensor - Fd reaches proximate value of ±10 N and ±30 N; d) reveals the control signal 444 Song, S.- Zhang, X. - Tan, Z. Strojniski vestnik - Journal of Mechanical Engineering 60(2014)6, 437-446 are presented in Figs. 8 and 9, which show that the tracking error FL - Fd and Fsensor - Fd of RBF based sliding mode control was 66 and 35% less than that of sliding mode control. The performances of both control methods with a frequency 10Hz are presented in Figs. 10 and 11, which show that the tracking error Fl - Fd and Fsensor - Fd of the RBF based sliding mode control was 66 and 40% less than that of sliding mode control. However, compared with the simulation results, the peak of tracking error was a bit larger due to actual friction and noisy signal conditions. 5 CONCLUSION In this paper, a sliding mode controller was designed for force tracking control in order to eliminate uncertainties and disturbances. However, the precision of sliding mode control was a problem and, therefore, an RBF network based sliding mode control algorithm was introduced to tackle the problem. The slope of the sliding surface was trained to approximate the optimal value by updating with RBF algorithm technique. The simulation results for the tracking forces, tracking errors and control input signals with desire forces (200 N, 2 Hz) were presented graphically and analysed in order to compare the improved controller with the regular one. Tests of the two proposed control methods were designed using two sets of desire forces (200 N, 2 Hz) and (200 N, 10 Hz) to show the validity of the simulation results. Compared with results found for 2 Hz, the tracking error of both proposed method is greater for 10 Hz. Under the same conditions, the tracking performance of RBF based sliding mode control is better than that of sliding mode control. Because of frictions and noisy signals, the test errors are a bit larger than those of the simulations. However, it has been effectively shown by figures and tables that RBF based sliding mode control provides features with higher performance. 6 NOMENCLATURE Kq no-load flow gain of servo valve Kc flow-pressure coefficient of valve xv valve spool position pL hydraulic pressure of load q1, q2 flow into chamber A and B A1, A2 area of piston in chamber A and B Xc, £ piston position and velocity of cylinder Cin, Cec cylinder internal and external leakage coeff. Pi, P2 hydraulic pressure of chamber A and B V1, V2 volume of hydraulic oil in chamber A and B Vo Fl L F f initial volume of cylinder force of load friction force of piston y joint angle of robot M(y) actuator moment arm m system mass J joint inertia of the system r center position of mass of the system FC , FS Coulomb friction and stiction force b viscous friction coefficient vs the ultimate velocity comes after the stiction force is surmounted Fd desire force of load l(y) length of cylinder l0 initial length of cylinder xc0 initial piston position of cylinder 7 REFERENCES [1] Steger, R., Kim, S.H., Kazerooni, H. (2006). Control scheme and networked control architecture for the Berkeley lower extremity exoskeleton. IEEE International Conference of Robots and Automation, p. 3469-3472. [2] Di Rito, G., Denti, E., Galatolo, R.(2006). Robust force control in a hydraulic workbench for flight actuators. IEEE International Conference on Control Applications, IEEE International Symposium on Intelligent Control, p. 807-813, D0I:10.1109/ CACSD.2006.285448. [3] Balandin, D.V., Kogan, M.M. (2005). LMI-based optimal attenuation of multi-storey building oscillations under seismic excitations. Structural Control and Health Monitoring, vol. 12, no. 2, p. 213-224, D0I:10.1002/stc.60. [4] Yan, G., Sun, B., Lu, Y. (2007).Semi-active model predictive control for 3rd generation benchmark problem using smart dampers. Earthquake Engineering and Engineering Vibration, vol. 6, no. 3, p. 307-315, D0I:10.1007/s11803-007-0645-2. [5] Chang, C.C., Lin, C.C. (2009).H drift control of time-delayed seismic structures. Earthquake Engineering and Engineering Vibration, vol. 8, no. 4, p. 617-626, D0I:10.1007/s11803-009-9117-1. [6] Kilic, E., Dolen, M., Koku, A.B., Caliskan, H., Balkan, T. (2012).Accurate pressure prediction of a servo-valve controlled hydraulic system. Mechatronics, vol. 22, no. 7, p. 997-1014, D0I:10.1016/j. mechatronics.2012.08.001. [7] Babuska, R., Verbruggen, H.B. (1996). An overview of fuzzy modeling for control. Control Engineering Practice, vol. 4, no. 11, p. 1593-1606, D0I:10.1016/0967-0661(96)00175-X. [8] Precup, R.E., Doboli, S., Preitl, S. (2000). Stability analysis and development of a class of fuzzy control RBF Neural Network Based Sliding Mode Control of a Lower Limb Exoskeleton Suit 445 Strojniski vestnik - Journal of Mechanical Engineering 60(2014)6, 437-446 systems. Engineering Applications of Artificial Intelligence, vol. 13, no. 3, p. 237-247, D01:10.1016/ S0952-1976(00)00002-6. [9] Chiang, M.H. (2011). A novel pitch control system for a wind turbine driven by a variable-speed pump-controlled hydraulic servo system. Mechatronics, vol. 21, no. 4, p. 753-761, D0I:10.1016/j. mechatronics.2011.01.003. [10] Sha, D., Bajic, V. B., Yang, H. (2002). New model and sliding mode control of hydraulic elevator velocity tracking system. Simulation Practice and Theory, vol. 6, no. 9, p. 365-385, D0I:10.1016/S1569-190X(02)00058-8. [11] Ho, T.H., Ahn, K. (2012). Speed control of a hydraulic pressure coupling drive using an adaptive fuzzy sliding-mode control. IEEE/ASME Transactions on Mechatronics, vol. 17, no. 5, p. 976-986, D0I:10.1109/ TMECH.2011.2153866. [12] Slotine, J.J.E., Li, W. (1991). Applied Nonlinear Control. Prentice Hall, Englewood Cliffs. [13] Duan, S., An, G., Xue, J., Wu, J., Wang, M., Lin, T. (2002). Adaptive sliding mode control for electrohydraulic servo force control systems. Chinese Journal of Mechanical Engineering, vol. 38, no. 5, p. 109-113, D0I:10.3901/JME.2002.05.109. [14] Ha, Q.P., Rye, D.C., Durrant-Whyte, H.F. (1999). Fuzzy moving sliding mode control with application to robotic manipulators. Automatica, vol. 35, no. 4, p. 607-616, D0I:10.1016/S0005-1098(98)00169-1. [15] Yakut, 0. (2013). Application of intelligent sliding mode control with moving sliding surface for overhead cranes. Neural Computing and Applications, vol. 19, no. 2, p. 1-11, D0I:10.1007/s00521-013-1351-9. [16] Shepit, B.M., Pieper, J.K. (2003). Sliding-mode control design for a complex valued sliding manifold. IEEE Transactions on Automatic Control, vol. 48, no. 1, p. 122-123, D0I:10.1109/TAC.2002.806664. [17] Lin, F., Hung, Y., Tsai, M. (2012). Fault-tolerant control for six-phase PMSM drive system via intelligent complementary sliding-mode control using TSKFNN-AMF. IEEE Transactions on Industrial Electronics, vol. 60, no. 12, p. 5747-5762, D0I:10.1109/ TIE.2013.2238877. [18] Lowe, D., Broomhead, D. (1988). Multivariable functional interpolation and adaptive networks. Complex Systems, vol. 2, p. 321-355. [19] Kobayashi, H., 0zawa, R. (2003). Adaptive neural network control of tendon-driven mechanisms with elastic tendons. Automatica, vol. 39, no. 9, p. 15091519, D0I:10.1016/S0005-1098(03)00142-0. [20] Astolfi, A., Karagiannis, D., 0rtega, R. (2008). Nonlinear and Adaptive Control with Applications. Springer, London. [21] Alleyne, A., Liu, R. (2000). A simplified approach to force control for electro-hydraulic systems. Control Engineering Practice, vol. 8, no. 12, p. 1347-1356, D0I:10.1016/S0967-0661(00)00081-2. 8 APPENDIX Shank Geometrical Analysis As shown in Fig. A1, the cylinder is placed on the shank of robot with at the mounting points dx and d2 respectively. The position vectors from the ankle axis, O, to each mounting point are defined by: \rod1 — [ X^ X2] [rod 2 — [ x3, x4 (A1) Then, the distances between each mounting point with ankle joint are given as: Krfi= .2 , x 2 \}od 2 = J- 22 X3 X4 (A2) Knee joint T Shank e^ / / / / ^a \ O y i?/ Ankle joint Fig. A1. Geometrical analysis of shank with cylinder Using the law of cosines, the length of the cylinder can be calculated by: 1 (<) = \l-2LJ»d2cos(