Document Type : Original Research


School of Mechanical Engineering, Shiraz University, Shiraz, Iran


Background: Competitive sailing requires efforts pertinent to physiological limitations and coordination between different parts of the body. Such coordination depends on the torques applied by muscles to the joints.
Objective: This study aims to simulate the motion and provide a control law for the joint torques in order to track the desired motion paths.
Material and Methods: In this analytical study, an inverse dynamics based control is employed in order to simulate the motion by tracking the desired movement trajectories. First, the dynamics equations are obtained using Lagrange method for 5 degrees of freedom (5 DOF) model. In the following, a robust control scheme with inverse dynamics method based on the Proportional-Integral-Derivative (PID) approach is employed to track the desired joint angles obtained from the experiment.
Results: The simulation results demonstrate the performance of the proposed control method. Low settling times are achieved for the entire joint, which is appropriate in comparison with the time period of each cycle (3.75 s). Also, the maximum torques required to be applied to the joints are in physiological range. 
Conclusion: This study provided an appropriate model for the analysis of human movement in rowing sport. The model can also be cited in terms of basic biological theories in addition to practical computational uses in biomechanical engineering. Accordingly, the generated control signals can help to improve the interactive body movements during paddling and in designing robotic arms for automatic rowing.


Seyyed Arash Haghpanah (Google Scholar)



Human movement modeling and simulation play an important role in sport to understand how this multi-body system works and interacts with the environment. Also, the joint torques profiles could be computed in designing sport techniques. Rowing as a professional sport has been adopted in this study to simulate using an inverse dynamics method. The dynamic modeling provides a suitable platform to study the kinematics and kinetics of this motion, and also provides insight about how the central nervous system can control the body in this motion by the designed controller.

Rowing is a form of sailing and a sport, in which athletes compete on a boat using a paddle in a river, lake or sea. In this discipline, rowers sit backwards in a boat and steer their boat forward using two oars attached to the boat with a clamp. Rowing is scientifically attractive in many ways. The rider must be able to coordinate his entire upper torso and lower torso at the same time. This coordination must be maintained during all movement cycles to achieve the desired performance [ 1 ]. Therefore, there are many parameters to adjust the system to achieve a successful combination for its maximum efficiency. Rowing has been analyzed in many experimental studies and its various aspects have been widely investigated. For example, the relationship between strength in sailing and the muscular cross section of different parts has been investigated [ 2 ]. The relationship between the power and propulsion in water has been studied as a computational fluid dynamics problem [ 3 ]. Cabrera et al. [ 4 ] have devised a simple model of both sculling and sweep rowing that appropriately mimics real kinematic and force data. A visualization tool is created for rowers, decomposing the three movements in the stroke to provide suitable feedback by using three microelectromechanical system (MEMS) sensors [ 5 ]. A 5 degree of freedom (DOF) robotic arm has been controlled based on the Electromyogram (EMG) signals of the elbow muscles [ 6 ]. Design robust control with invers dynamics method of a 3DOF sit to stand motion was presented [ 7 ]. Range of motion and angles at the catch and finish was assessed using mixed model ANOVA and correlation analyses with rowing power [ 8 ]. An upper-limb exoskeleton robot with 5 DOF was investigated using an adaptive control approach [ 9 ]. Zakaria et al. [ 10 ] developed an indoor rowing exercise model based on the functional electrical simulation (FES) for patients suffering from spinal cord injury (SCI). Central pattern generator (CPG) as the controller of the nervous system based on co-active muscular modules was investigated [ 11 ]. Ahmed et al. [ 12 ] presented a fuzzy supervisory controller based on the Proportional-Integral-Derivative (PID) algorithm. This method tries to increase the performance of the system by tuning the parameters of the PID controller online. Also, exoskeleton nonlinear upper body control strategies such as computed torque control [ 13 ], sliding mode control method [ 14 ], iterative learning control scheme [ 15 ], and scheduling control approach [ 16 ] have been used.

Despite the importance of this sport and the need for modeling and controlling the movements, no research can be found in the published literature that has concentrated on the control issue of rowing dynamics or building a rowing robot. This study aims to control this nonlinear system using inverse dynamics to improve the performance of this action for professional rowers or build a rowing robot. Numerical simulations demonstrate the robustness of the trajectory tracking in the presence of the uncertainties using proposed methods.

Material and Methods

Dynamic Modeling

In this analytical study, the mathematical description of the human body dynamics is derived from the Lagrange technique. In this regard, the oarsman body is divided into 5 segments: leg, thigh, trunk, arm and forearm. Description of these parts, along with the center of mass of each member, is shown in Figure 1. In order to derive the dynamic model, the kinetic and potential energies have to be obtained in terms of generalized coordinates.

Figure 1. Linkage model of the human body

1) x1=d1cosθ1

2) y1=d1sinθ1

3) x2=L1cosθ1+d2cosθ2

4) y2=L1sinθ1+d2sinθ2

5) x3=L1cosθ1+L2cosθ2+d3cosθ3

6) y3=L1sinθ1+L2sinθ2+d3sinθ3

7) x4=L1cosθ1+L2cosθ2+L3cosθ3+d4cosθ4

8) y4=L1sinθ1+L2sinθ2+L3sinθ3+d4sinθ4

9) x5=L1cosθ1+L2cosθ2+L3cosθ3+L4cosθ4+d5cosθ5

10) y5=L1sinθ1+L2sinθ2+L3sinθ3+L4sinθ4+d5sinθ5

In the above equations di and Li are the position of ith (i=1, 2, 3, 4, ) segment’s mass center and length, respectively. By means of Lagrange’s equations, the dynamic model of the human body with three segments is derived:

11) ddt(∂Lθi.)-∂Lθi=Qi

12) L=K-V

where in Li, θi, Qi, and t are the Lagrangian of the system, the joint angles, the generalized moment and the time, respectively. The kinetic and potential energy (K and V) of the system can be obtained as following:

13) K=i=15(12miVi2+12Iiθi2.)

14) V=m1gd1sinθ1+m2g(L1sinθ1+d2sinθ2)+m3g(L1sinθ1+L2sinθ2+d3sinθ3)+m4g(L1sinθ1+L2sinθ2+L3sinθ3+d4sinθ4)+m5g(L1sinθ1+L2sinθ2+L3sinθ3+L4sinθ4+d5sinθ5)

where g denotes the gravitational acceleration, mi is the mass, Vi is velocity of the mass center, and Ii is the moment of inertia of the ith link.

15) L=12(m1d12+m2L12+m3L12+m4L12+m5L12+I1)θ12.+12(m2d22+m3L22+m4L22+m5L22+I2)θ22.+12(m3d32+m4L32+m5L32+I3)θ32.+12(m4d42+m5L42+I4)θ42.+(12(m5d52+I5)θ52.+(m2d2+m3L2+m4L2+m5L2)L1θ1.θ2.cos(θ1-θ2)+(m3d3+m4L3+m5L3)L1θ1.θ3.cos(θ1-θ3)+(m4d4+m5L4)L1θ1.θ4.cos(θ1-θ4)+(m5d5)L1θ1.θ5.cos(θ1-θ5)+(m3d3+m4L3+m5L3)L2θ2.θ3.cos(θ2-θ3)+(m4d4+m5L4)L2θ2.θ4.cos(θ2-θ4)+(m5d5)L2θ2.θ5.cos(θ2-θ5)+(m4d4+m5L4)L3θ3.θ4.cos(θ3-θ4)+(m5d5)L3θ3.θ5.cos(θ3-θ5)+(m5d5)L4θ4.θ5.cos(θ4-θ5)-m1gd1sinθ1-m2g(L1sinθ1+d2sinθ2)-m3g(L1sinθ1+L2sinθ2+d3sinθ3)-m4g(L1sinθ1+L2sinθ2+L3sinθ3+d4sinθ4)-m5g(L1sinθ1+L2sinθ2+L3sinθ3+L4sinθ4+d5sinθ5)

The virtual work δw is derived to calculate the moment at each joint.

16) δw=(T1-T2+FL1sinθ1)δθ1+(T2-T3+FL2sinθ2)δθ2+(T3-T4+FL3sinθ3)δθ3+(T4-T5+FL4sinθ4)δθ4+(T5+FL5sinθ5)δθ5

where T1, T2, T3, T4 and T5 are the applied torques at the joints and F is force of oar. The dynamic equations of the rowing motion can be achieved:

17) (m1d12+m2L12+m3L12+m4L12+m5L12+I1)θ1..+(m2d2+m3L2+m4L2+m5L2+)L1θ2..cos(θ1-θ2)+m3d3+m4L3+m5L3)L1θ3..cos(θ1-θ3)+(m4d4+m5L4)L1θ4..cos(θ1-θ4)+(m5d5)L1θ5..cos(θ1-θ5)+(m2d2+m3L2+m4L2+m5L2)L1θ22.sin(θ1-θ2)+(m3d3+m4L3+m5L3)L1θ32.sin(θ1-θ3)+(m4d4+m5L4)L1θ42.sin(θ1-θ4)+(m5d5)L1θ52.sin(θ1-θ5)+(m1d1+m2L1+m3L1+m4L1+m5L1)gcosθ1=T1-T2+FL1sinθ1

18) (m2d22+m3L22+m4L22+m5L22+I2)θ2..+(m2d2+m3L2+m4L2+m5L2+)L1θ1..cos(θ1-θ2)+(m3d3+m4L3+m5L3)L2θ3..cos(θ2-θ3)+(m4d4+m5L4)L2θ4..cos(θ2-θ4)+(m5d5)L2θ5..cos(θ2-θ5)-(m2d2+m3L2+m4L2+m5L2)L1θ12.sin(θ1-θ2)+(m3d3+m4L3+m5L3)L2θ32.sin(θ2-θ3)+(m4d4+m5L4)L2θ42.sin(θ2-θ4)+(m5d5)L2θ52.sin(θ2-θ5)+(m2d2+m3L2+m4L2+m5L2)gcosθ2=T2-T3+FL2sinθ2

19) (m3d32+m4L32+m5L32+I3)θ3..+(m3d3+m4L3+m5L3)L1θ1..cos(θ1-θ3)+m3d3+m4L3+m5L3)L2θ2..cos(θ2-θ3)+(m4d4+m5L4)L3θ4..cos(θ3-θ4)+(m5d5)L3θ5..cos(θ3-θ5)-(m3d3+m4L3+m5L3)L1θ12.sin(θ1-θ3)-(m3d3+m4L3+m5L3)L2θ22.sin(θ2-θ3)+(m4d4+m5L4)L3θ42.sin(θ3-θ4)+(m5d5)L3θ52.sin(θ3-θ5)+(m3d3+m4L3+m5L3)gcosθ3=T3-T4+FL3sinθ3

20) (m4d42+m5L42+I4)θ4..+(m4d4+m5L4)L1θ1..cos(θ1-θ4)+(m4d4+m5L4)L2θ2..cos(θ2-θ4)+(m4d4+m5L4)L3θ3..cos(θ3-θ4)+(m5d5)L4θ5..cos(θ4-θ5)-(m4d4+m5L4)L1θ12.sin(θ1-θ4)-(m4d4+m5L4)L2θ22.sin(θ2-θ4)-(m4d4+m5L4)L3θ32.sin(θ3-θ4)+(m5d5)L4θ52.sin(θ4-θ5)+(m4d4+m5L4)gcosθ4=T4-T5+FL4sinθ4

21) (m5d52+I5)θ5..+(m5d5)L1θ1..cos(θ1-θ5)+(m5d5)L2θ2..cos(θ2-θ5)+(m5d5)L3θ3..cos(θ3-θ5)+(m5d5)L4θ4..cos(θ4-θ5)-(m5d5)L1θ12.sin(θ1-θ5)-(m5d5)L2θ22.sin(θ2-θ5)-(m5d5)L3θ32.sin(θ3-θ5)-(m5d5)L4θ42.sin(θ4-θ5)+(m5d5)gcosθ5=T5+FL5sinθ5

The general form of the equations of motion is as follows:

22) M(θ)θ..+C(θ.θ.)θ.+G(θ)=Q(θ)

where M(θ)، C(θ.θ.) and G(θ) are the inertia matrix, the Coriolis and centrifugal matrix, and the vector caused by gravitational forces, respectively. Also, Q is the generalized vector of the torques applied to the joints. In addition, θ is a vector, whose components, represent the angle of the segments (α represents the angle of the joints).

23) M(θ)=[M11M12M13M14M15M12M22M23M24M25M13M23M33M34M35M14M24M34M44M45M15M25M35M45M55]

24) M11=(m1d12+m2L12+m3L12+m4L12+m5L12+I1)

25) M12=(m2d2+m3L2+m4L2+m5L2)L1cos(θ1-θ2)

26) M13=(m3d3+m4L3+m5L3)L1cos(θ1-θ3)

27) M14=(m4d4+m5L4)L1cos(θ1-θ4)

28) M15=(m5d5)L1cos(θ1-θ5)

29) M22=(m2d22+m3L22+m4L22+m5L22+I2)

30) M23=(m3d3+m4L3+m5L3)L2cos(θ2-θ3)

31) M24=(m4d4+m5L4)L2cos(θ2-θ4)

32) M25=(m5d5)L2cos(θ2-θ5)

33) M33=(m3d32+m4L32+m5L32+I3)

34) M34=(m4d4+m5L4)L3cos(θ3-θ4)

35) M35=(m5d5)L3cos(θ3-θ5)

36) M44=(m4d42+m5L42+I4)

37) M45=(m5d5)L4cos(θ4-θ5)

38) M55=(m5d52+I5)

39) C(q.q.)=[0C12C13C14C15C210C23C24C25C31C320C34C35C41C42C430C45C51C52C53C540]

40) C12=(m2d2+m3L2+m4L2+m5L2+)L1θ2.sin(θ1-θ2)

41) C13=(m3d3+m4L3+m5L3)L1θ3.sin(θ1-θ3)

42) C14=(m4d4+m5L4)L1θ4.sin(θ1-θ4)

43) C15=(m5d5)L1θ5.sin(θ1-θ5)

44) C21=-(m2d2+m3L2+m4L2+m5L2)L1θ1.sin(θ1-θ2)

45) C23=(m3d3+m4L3+m5L3)L2θ3.sin(θ2-θ3)

46) C24=(m4d4+m5L4)L2θ4.sin(θ2-θ4)

47) C25=(m5d5)L2θ5.sin(θ2-θ5)

48) C31=-(m3d3+m4L3+m5L3)L1θ1.sin(θ1-θ3)

49) C32=-(m3d3+m4L3+m5L3)L2θ2.sin(θ2-θ3)

50) C34=(m4d4+m5L4)L3θ4.sin(θ3-θ4)

51) C35=(m5d5)L3θ5.sin(θ3-θ5)

52) C41=-(m4d4+m5L4)L1θ1.sin(θ1-θ4)

53) C42=-(m4d4+m5L4)L2θ2.sin(θ2-θ4)

54) C43=-(m4d4+m5L4)L3θ3.sin(θ3-θ4)

55) C45=(m5d5)L4θ5.sin(θ4-θ5)

56) C51=-(m5d5)L1θ1.sin(θ1-θ5)

57) C52=-(m5d5)L2θ2.sin(θ2-θ5)

58) C53=-(m5d5)L3θ3.sin(θ3-θ5)

59) C54=-(m5d5)L4θ4.sin(θ4-θ5)

60) G(θ)=[(m1d1+m2L1+m3L1+m4L1+m5L1)gcosθ1(m2d2+m3L2+m4L2+m5L2)gcosθ2(m3d3+m4L3+m5L3)gcosθ3(m4d4+m5L4)gcosθ4(m5d5)gcosθ5]

61) Q(θ)=[T1-T2+FL1sinθ1T2-T3+FL2sinθ2T3-T4+FL3sinθ3T4-T5+FL4sinθ4T5+FL5sinθ5]

Design Process of Controller

In this part, a robust controller based on inverse dynamics [ 7 ] is designed to control the rowing movement and to track the desired paths. The control actuators are the torques acting on the knee, hip, shoulder, and elbow. The desired path or control angles used in this paper are presented in [ 17 ]. Also, the force applied by the rower to the oar is introduced in [ 18 ]. Using the inverse dynamics control method as below, the nonlinear terms are omitted. Accordingly, the control law is introduced as follows:

62) u=M(θ)u0+C(θ.θ.)θ.+G(θ)

Substituting this control input to equation (1) leads to a system with n decoupled linear equation:

63) θ..=u0

By defining u0 as,

64) u0=θd..+Kd(θd.-θ.)+Kp(θd-θ)+KI(0t(θd(τ)-θ(τ))))

where θd, θd., and θd.. are the vectors, comprising desired angles, the first, and the second derivative of this vector with respect to time, respectively. In addition, Kp, Kd and KI are the proportional, derivative, and integral gain matrices, respectively. It is worth mentioning that integral term has been added to increase the robustness of the controller against perturbation. By substituting equation (63) to equation (64), the error equation can be obtained as:

65) θ~..+Kdθ~.+Kp+KI(0t(θ~(τ))))=0

Now if we add the perturbation vector to equation (1), it becomes as below:

66) M(θ)u0+C(θ.θ.)θ.+G(θ)=u+d

According to the above equations, a closed loop control system is formed as follow in the presence of perturbation:

67) θ~..+Kdθ~.+Kp+KI(0t(θ~(τ))))=M-1(θ)d

In these equations, d is an unknown matrix and θ~ is the difference between the real and the desired angles, which is defined as follows:

68) θ~=θ-θd

Also, it should be noted that all of the angles specified in Figure 1 are absolute angles of each arm, but the desired angles defined in [ 17 ] are the angles of each joint, which are relative angles. Thus, we must convert these angles to each other by geometric relations. It can be easily shown that:

69) θ1=180-θs-α1

70) θ2=α2+θ1-180

71) θ3=α2+θ1-θ3

72) θ4=180+θ3-α4

73) θ5=θ3-α4+α5


The simulation of rowing motion has been performed by motion capture cameras with markers placed on each joint. This experiment was accomplished in [ 17 ]. In this experiment, the variations of the angles of the major joints, including the knee, thorax, shoulder, and elbow were investigated. According to Figure 1, there is a need to the values of the mass, gyration radius, and the length of each link. These values can be found in the anthropometric data provided in [ 19 ]. Considering that the subject was a male with age of 30 and had a height of 178 cm and a mass of 68 kg.

In this paper, the following values are used as perturbations in the simulations:

74) d1=2.2 sin t

75) d2=2.2 sin 2t

76) d3=1.8 sin 3t

77) d4=1.5 sin 1.5t

78) d5=1.2 sin t


The numerical simulations were performed based on the anthropometric data given in Table 1 and demonstrated an appropriate performance of the PID controller in such a way that the tracking error converges to zero in a very short time (about 0.5 s) in presentence of disturbances. The simulation results are shown in Figure 2(a-d). The diagrams of the torques applied to each joint is depicted in Figure 3(a-d).

Segment Name Shank Thigh Trunk Upper Arm Forearm
Weight (Kg) 3.162 6.800 33.790 1.904 1.088
Length (m) 0.438 0.436 0.507 0.331 0.260
Center of gravity (m) 0.248 0.247 0.254 0.187 0.148
Radius of gyration (m) 0.132 0.141 0.206 0.107 0.122
Table 1.Segment properties

Figure 2. Actual and desired joint angles

Figure 3. Applied torques of joints with inverse dynamics robust controller.


Numerical data expresses the angle of the joints while θ represents the absolute angle of the segments. Figure 2(a-d) shows the absolute angles and the desired ones for each joint. To trace these desired values, we have adjusted the PID coefficients. As mentioned, experimental data [ 17 ] has been used to draw the desired paths. As see in the Figure 2(a-d), the motion in one cycle is examined. The continuation of the motion is repetitive. Since the duration of each cycle is very short (close to 3.75 s) compared to other sports movements, and the achievement of this goal is more difficult. But, it is evident that the controller is able to follow the desired path well.

Since the rowing demands a sudden large force, acting to the oar at the beginning of the cycle, the system takes a sudden inertia, making it difficult to control. This causes high torques to the joints. However, the applied torques do not exceed the limit values of the joints, the settling time is short with a low overshoot. From Figure 2(a-d), it is evident that the proposed controller is also robust against imposed disturbances. However, the desired angles, provided by experimental data, seem to be smooth functions of time, the first and the second derivatives of these functions are accompanied by chattering. Due to the presents of this chattering in the desired angular acceleration of the links, this phenomenon can also be seen in the desired torques. Considering the experimental forces presented in [ 18 ], we can see that due to the high force acting to the system at the beginning of each cycle, a large overshoot in the torque diagrams occurs. Of course, an overshoot is obvious as a result of initial errors.


An appropriate model and controller is required for rowing movement in order to design rowing robots and improve the movement of athletes in this field. This paper presents a dynamic model of rowing movement in the form of 5 degrees of freedom inverse pendulum with non-uniform mass distributions. The equations are derived by the Lagrange method and a robust controller based on inverse dynamics is designed to track the motion trajectories reported from the professional athletes. Numerical results show the acceptable performance and robustness of the proposed controller against external disturbances. This control law can be used for designing a robot and optimizing the movement of athletes.

Authors’ Contribution

SA. Haghpanah conceived the idea. The whole manuscript was written by SA. Haghpanah and A. Aref Adib. Simulation and Results was carried out by A. Aref Adib and the Discussion was carried out by SA. Haghpanah. The research work was proofread and supervised by SA. Haghpanah. All the authors read, modified, and approved the final version of the manuscript.

Ethical Approval

Since this work is a simulation study, no Ethical Approval is necessary.

Conflict of Interest



  1. Kleshnev V. Biomechanics of rowing. Crowood Press Limited; 2016.
  2. Tachibana K, Yashiro K, Miyazaki J, IKEGAMI Y, Higuchi M. Muscle cross-sectional areas and performance power of limbs and trunk in the rowing motion. Sports Biomech. 2007; 6(1):44-58. DOI | PubMed
  3. Robert Y, Leroyer A, Barré S, Rongère F, Queutey P, Visonneau M. Fluid mechanics in rowing: the case of the flow around the blades. Procedia Eng. 2014; 72:744-9. DOI
  4. Cabrera D, Ruina A, Kleshnev V. A simple 1+ dimensional model of rowing mimics observed forces and motions. Hum Mov Sci. 2006; 25(2):192-220. DOI | PubMed
  5. Dobay B, Thornton B, Bowen J. Design of Visualization Tool for Biomechanical Rowing Analysis. Worcester Polytechnic Institute; 2020.
  6. Gowtham S, Krishna KA, Srinivas T, Raj RP, Joshuva A. IEEE: Chennai, India; 2020. DOI
  7. Nematollahi MH, Haghpanah SA, Taghvaei S. Inverse Dynamic Robust Control of Sit-to-Stand Movement. Biomed Eng: Applications, Basis and Communications. 2019; 31(06):1950041. DOI
  8. Li Y, Koldenhoven RM, Jiwan NC, Zhan J, Liu T. Trunk and shoulder kinematics of rowing displayed by Olympic athletes. Sports Biomech. 2020;1-3. DOI | PubMed
  9. Kang HB, Wang JH. Adaptive robust control of 5 DOF Upper-limb exoskeleton robot. Int J Control Autom Syst. 2015; 13(3):733-41. DOI | PubMed
  10. Hussain Z, Tokhi MO, Gharooni S. IEEE: Kuala Lumpur, Malaysia; 2008. DOI
  11. Haghpanah SA, Farahmand F, Zohoor H. Modular neuromuscular control of human locomotion by central pattern generator. J Biomech. 2017; 53:154-62. Publisher Full Text | DOI | PubMed
  12. Alassar AZ, Abuhadrous IM, Elaydi HA. IEEE: Singapore; 2010. DOI
  13. Nef T, Mihelj M, Riener R. ARMin: a robot for patient-cooperative arm therapy. Med Biol Eng. Comput. 2007; 45(9):887-900. DOI | PubMed
  14. Jezernik S, Wassink RG, Keller T. Sliding mode closed-loop control of FES controlling the shank movement. IEEE Trans Biomed Eng. 2004; 51(2):263-72. DOI | PubMed
  15. Freeman CT, Hughes AM, Burridge JH, Chappell PH, Lewin PL, Rogers E. Iterative learning control of FES applied to the upper extremity for rehabilitation. Control Eng Pract. 2009; 17(3):368-81. DOI
  16. Previdi F, Carpanzano E. Design of a gain scheduling controller for knee-joint angle control by using functional electrical stimulation. IEEE T Contr Syst T. 2003; 11(3):310-24. DOI
  17. Said KB, Ababou N, Ouadahi N, Ababou A. IEEE: Algiers, Algeria; 2016. DOI
  18. Černe T, Kamnik R, Munih M. The measurement setup for real-time biomechanical analysis of rowing on an ergometer. Measurement. 2011; 44(10):1819-27. DOI
  19. Winter DA. Biomechanics and motor control of human movement. John Wiley & Sons; 2009.