Robotics and Autonomous Systems 149 (2022) 103971 Contents lists available at ScienceDirect Robotics and Autonomous Systems journal homepage: www.elsevier.com/locate/robot A fast robotic arm gravity compensation updating approach for industrial application using sparse selection and reconstruction ∗ Chenglong Yu , Zhiqi Li, Dapeng Yang, Hong Liu State Key Laboratory of Robotics and System, Harbin Institute of Technology, Harbin 150001, China article info Article history: Received 30 June 2021 Received in revised form 8 November 2021 Accepted 7 December 2021 Available online 16 December 2021 Keywords: Industrial robot arm Gravity compensation Feature selection Model reconstruction ADMM a b s t r a c t With the increasing complexity of robot tasks in the industrial field, sometimes the manipulator needs to change the payload or replace end-effectors frequently in a period of time, which will cause the change of gravity model. This paper presents a fast gravity compensation updating method based on sparse selection and reconstruction. Instead of using the classic model, feature sets in the formulation of dynamic motion are exploited and the gravity model learning is transformed into a sparse problem. Then, the Alternating Direction Multiplier Method (ADMM) is used to accelerate the process of solving the sparse optimization problem and reconstructing the effective features of the gravity model from the original signal. The merits of our method are that it does not depend on any kinematic and dynamic parameters, and there is no need to redesign the specific excitation trajectory in the gravity model updating. Thus, the updating process avoids heavy work of calibration and simplifies the labor complexity considerably from the conventional analytical methods. The results of various payload experiments on a real 7-DOF manipulator show that the proposed method can update the gravity compensation model efficiently and accurately. © 2021 Elsevier B.V. All rights reserved. 1. Introduction Many applications in robotics involve operations at slow speed to ensure different tasks [1]. For example, the robot in the area of surgery is required to play motions at very low speeds for safety and repeatability [2,3]. By having robots working in low-speed processes to ensure high position accuracy, reduce production cost and improve collision avoidance performance, as arc welding, etc [4,5]. In these cases, the gravity torque generated by the mass of the connecting rod usually plays a dominant role in driving torque and is much greater than dynamic torques. Therefore, gravity compensation is beneficial and necessary for the design of robot control algorithms. Moreover, as the types of tasks performed by robots become more and more complex in many industrial applications, sometimes it is necessary to change the payload or replace the end-effectors frequently. The change of load will affect the gravity model of the robot. In this case, gravity compensation is required to update fast and accurately. Previous approaches in literature for gravity compensation can be categorized as passive mechanical compensation, PD-type feedback and Gravity model estimation. In the passive compensation method, gravity compensation can be performed mechanically. The robot is required to be isolated from each link, and ∗ Corresponding author. E-mail addresses: yuchenglong@hit.edu.cn (C. Yu), lzq@hit.edu.cn (Z. Li), yangdapeng@hit.edu.cn (D. Yang), hong.liu@hit.edu.cn (H. Liu). https://doi.org/10.1016/j.robot.2021.103971 0921-8890/© 2021 Elsevier B.V. All rights reserved. use counterweight, spring or specific measuring device to compensate gravity, which minimizes the torques required from the motors to sustain the weight of the robot. For example, the mass of the connecting rod can be directly weighed, the position vector of the center of mass can be estimated by determining the equilibrium point of the connecting rod, and the middle equilibrium point can be obtained by pendulum motion [6,7]. These kinds of methods are complex and tedious, and the characteristics of joints are ignored. The compensation accuracy depends on the accuracy of the mechanical device. Therefore, gravity compensation is considered to be performed at the software level to improve the accuracy. This does not help to reduce the burden of the motors, but can greatly improve the control performance. The PD-type feedback compensation method has proved to be a practical algorithm for robot gravity compensation due to its simplicity and clear physical meaning. They are generally designed including terms that partially (or totally) compensate for the system dynamics [8]. In these approaches, the saturation is applied by introducing nonlinear functions in the control laws and gravity compensation is realized with bounded inputs [9,10] For better closed-loop performance, full system information is required in these control laws. However, most conventional PID control methods have no learning capability. With the change of gravity terms and operating conditions, the parameters of the controller are difficult to adapt to. Moreover, the design of these controllers is a challenge for a multi-input/multi-output (MIMO) C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 system [11–13]. To achieve an optimal or near-optimal control signal is still a difficult problem to address. In the gravity model estimation method, a model can be obtained by minimizing the errors between a function of the robot variables and an estimation model. The gravity parameters are regressed based on the physical manifestation restrictions and the input/output behaviors of the robot on some planned motion [14–16]. This method has been extensively used since it has the best performance in the simplicity of the experiment and the model accuracy [17]. It relates the condition number of regressor to the reliability of the data and designs the exciting trajectory so as to minimize the condition number [18,19]. In particular, the method requires the proper design of exciting trajectories to provide accurate and fast parameter estimation, even in the presence of measurement noise and external disturbances. However, to design specific trajectories for a complex robotic system is a challenging task with the growing number of variables. In addition, the exciting trajectory has to be redesigned when the payload of the manipulator changes. This increases the complexity of the work and sometimes leads to unreliable results. Inspired by the problem of robot gravity compensation, this paper attempts to explore a novel gravity model updating approach with lower complexity and higher efficiency, which can be applied in industrial practice. The core principle of this method is to select the feature sets from the dynamic gravity motion model and then transform the model learning into a sparse problem. This method is data-driven, which only needs the measurements of joint angle and driving torque of the robot in a simple motion. It does not need any prior knowledge of the physical parameters of the manipulator, thus simplify the process consistently from the conventional analytical method. In the process of solving the gravity model, we use ADMM to solve the sparse optimization problem and reconstruct the effective features of the gravity model from the original signal. It can accelerate the process of the L1-norm regularization optimization while ensuring accuracy, so as to improve the updating speed of the gravity model. Furthermore, the specific forms of the features are viewed as restrictions of learning. These restrictions can be viewed as a strong priority of selection and reconstruction, which makes good performance in data efficiency and generalization capability. gravity is about tens to hundreds of times larger than that caused by even the maximum angular acceleration [23], which indicates that the inertia tensor has little effect on the driving torque. The main idea of gravity compensation in our approach is to model the gravitational term in dynamics which is a linear function of the joint angle q. Friction at the joints is considered as unmodeled dynamic errors vulnerable to sensor noise and is not included. According to the above theoretical basis, the dynamic equation of a multi-DOF manipulator at low-speed motion without external force can be simplified. The relationship between the joint driving torque and the gravity term can be expressed as: g(q) = ) mi g (2) i where, g(q) is the joint driving torque generated by the effect of gravity. mi is the mass of link i. g is the gravitational acceleration in the base frame. 0 J vi is a submatrix of the Jacobian, which maps joint velocities to translational velocities of link i. To find the consistency characteristics of dynamic equation and facilitate the gravity term modeling, the following property is considered (see Appendix A for proof). Property 1. The Jacobian matrix of a kinematic chain with N-DOF has the feature sets with the following form F = {N } ∏ en (3) n=1 where, en ∈ {1, sin(qn ), cos(qn )} (4) qn is the angle of joint n. It can be verified that for each link n ∈ [1, N]. • The Jacobian matrix w.r.t the base frame denoted by 0 Jn can be expressed as a linear combination of features in F . • The argument also holds for ( the ) Jacobian matrix written in the end-effector frame, i.e., N 0 Jn . Note that the weighted coefficients of the features in F are functions of the kinematic parameters in Jacobian matrix such as link lengths, twist angles, link mass and etc. For a specific serial manipulator with revolute joints, these parameters are fixed. The length of the links may be any suitable value and the mass of the links are constants. Therefore, the following expression could be obtained based on Property 1 2. Gravity model observation Considering a serial manipulator composed of rigid links connected through rotational joints, the equations of motion of the system can be obtained via the recursive Newton–Euler or Lagrange formulation. The compact dynamic model of the robot can be written in the following form as τ = M(q)q̈ + C (q, q̇)q̇ + g(q) 0 v T Ji ∑( Remark 1. There exists a general expression for the joint torques caused by gravity: gn (q) = (g ⊗ f (q))T β (5) where, gn (q) is the torque of joint n caused by gravity in Eq. (1). β is the weighted parameter vector. ⊗ is the Kronecker product. The features are indexed to obtain the vector function f (q) for compactness. In Eq. (5), the variables except β can be measured without difficulties, namely gn (q) and q can be obtained using joint torque sensors and joint position sensors. Many industrial robots are equipped with torque sensors, and can solve part or all of the dynamic models by learning or regression approach according to the mapping between the inputs (joint positions) and outputs (joint torques) of the sampled data [24,25]. These methods are undoubtedly more accurate and convenient [26]. Considering that some robots do not include joint torque sensors, a motor torque measurement scheme based on DSP is proposed in [27]. According to the measured motor end waveform and the dynamic model, the torque can be calculated by a digital signal processor without any mechanical sensors. We refer to the interested readers to [27] for a detailed discussion of the no-mechanical-sensor torque measurement method. (1) where, q, q̇, q̈ are the arm joint angle, angular velocity and angular acceleration of the manipulator, respectively. τ is the joint driving torques. M(q) is the inertia matrix of the manipulator which is multiplied to the second derivative of q to obtain the joint torques. C (q, q̇) donates the centrifugal and Coriolis term, where the quadratic terms in the first derivatives of q are included and the coefficients could depend on q. g(q) is the gravity term with q involved and no derivatives. We use the tensor notation [20] in the following paper, for instance, k (j Ji ) represents the Jacobian matrix of frame i respect to (w.r.t) frame j expressed in frame k. When two superscripts are the same, the outer one is omitted, i.e. j (j Ji ) = j Ji . With the manipulator in low-speed motion, the relative and absolute values of Coriolis moment and centripetal moment are extremely small and can be ignored along a trajectory in practical industrial applications [21,22]. In addition, the torque caused by 2 C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 The weighted parameter vector β includes constant coefficient related to the physical structure of the mechanical compositions of the arm, such as link lengths and twist angle. These mechanical compositions are a few and limited and the vector β should only contain a small portion of the features. For robotic manipulators with a fixed base, the constant gravity acceleration g can be absorbed by model parameters β . By now, the expression of the feature-based gravity model can be updated to the following form: τg = F βg (6) where, τg is the joint torque measurements of joint n. βg is the gravity model parameters. And F = f (1) f (2) [ · · · f (M ) ( (j) ) ]T (7) where, f (j) = f q for j = 1, 2 · · · M and M is the number of data measurements. According to Property 1, for an N-DOF manipulator, the total number of possible feature sets in one measurement is 3N . Since the coefficient related to the physical structure of the mechanical compositions are a few and limited, the size of the feature function is much more than the small portion of the effective features. It indicates that the feature-based gravity model in Eq. (6) is sparse. In [28,29], an effective method for model simplification and characterization using sparsity is proposed, which is called the Lasso. This method has twofold advantages of ridge regression and subset selection. It can shrink the coefficients continuously in the process, and give an easily interpretable model with a stable state. Model complexity can be reduced by forcing less influential variables to have zero influence. In the process, the same sparse model is found (with many zero regression coefficients) as a well-predicting model. Based on the Lasso regression, the gravity model parameter vector βg could be estimated in our approach and is expressed as: 2 minimizeπ F βg − τ 2 + λ βg 1 Fig. 1. ADMM-based algorithm for solving gravity modeling procedure. Then, the augmented Lagrangian function in Eq. (10) is defined as: 1 ∥Ax − b∥22 + λ ∥z ∥1 + yT (x − z ) (11) 2 where, y is the Lagrangian multiplier vector. The benchmark algorithm ADMM splits the subproblem in iteration to avoid the problem of unknown vectors overlapped. The steps over variables x and z are read as the following form: L (x, z, y) = (8) x∗ = AT A + ρ E ( 3. Sparse feature recovery z ∗ = Sλ/ρ x∗ + y ( The feasible way to find the solution is to apply convex optimization solvers [30,31]. However, the solvers need the secondorder information of the problem. When the size of the matrix is large, it will increase the computational burden and need more storage memory and time. As a method that only needs firstorder information, ADMM is considered to be an ideal method to deal with large-scale L1-regularized least square problems. It can coordinate solutions of small local subproblems to find solutions to large global problems. Therefore, ADMM can be used to capture the complexity of data and deal with high-dimensional data problems in machine learning. Since this approach accelerates the processing of convex problems greatly, it is well suited for solving and updating gravity model while training time is limited. For the following structured convex optimization problem in gravity model updating minimizex 1 2 ∥Ax − b∥22 + λ ∥x∥1 subject to 1 2 AT b + ρ (z − y) ) ) (12) (13) where, ρ is the penalty parameter which can improve the convergence properties. The soft thresholding operator S is defined as [32]: Sρ (α ) = (α − ρ)+ − (α + ρ)+ (14) The ADMM algorithm can solve the optimization problem via splitting it into small subproblems and implement it in a distributed manner. The subproblems can be easily solved with global convergence to the optimal solution for any ρ > 0. Moreover, when the other two sets of variables are held fixed, it can be verified that there are closed-form solutions for x and z. Computing them directly without iterations will reduce the time complexity greatly and is beneficial for storage requirements. Through the ADMM-based algorithm, the L1-regularized least squares problem in Eq. (8) is solved and a set of non-zero weighted coefficients are obtained. Notice that the feature sets in the gravity model expression only exist in three forms, namely 1, sin (qn ) and cos (qn ), the position of the trigonometric function expression of the joint angle can be extracted by the conversion of decimal numbers to ternary ones. With the positions of the non-zero weighted coefficients, the expressions for all effective features in the gravity model are available. The procedure of the ADMM-based fast gravity modeling method (FGM-ADMM) is summarized in Fig. 1. (9) where, A and b are the model parameters. x is the weighted solution vector. λ is the scalar regularization parameter. With ADMM algorithm, the problem can be converted in to the following form: minimizex,z )−1 ( ∥Ax − b∥22 + λ ∥z ∥1 (10) x=z 3 C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 Table 1 The physical parameters of the iiwa arm including the mass, the position of the center of mass and the inertia of the links. Link mi mxi myi mzi Ii xx Ii xy Ii xz Ii yy Ii yz Ii zz i i i i i i i 3.456 3.482 4.056 3.482 2.163 2.347 3.129 0 0.0003 0 0 0.0001 0 0 −0.03 0.12 0.042 0.13 0.076 0.076 0.0004 0.02 0.02183 0.02076 0.03204 0.02178 0.01287 0.00651 0.01464 0 0 0 0 0 0 0.00059 0 0.00770 0.02179 0.00972 0.02075 0.00571 0.00626 0.01465 −0.00389 0.02083 0.00779 0.03042 0.00778 0.01112 0.00453 0.00287 =1 =2 =3 =4 =5 =6 =7 0.059 0.03 0.021 0.021 0.0006 0 −0.00363 0 0 0 0 0 0 0.00623 −0.00362 −0.00395 0.00032 0 The units of link mass m are kg. The units of the center of mass mx,my and mz are kg m. The unit of inertia tensor Ixx , Ixy , Ixz , Iyy , Ixz and Izz are kg m2 . Fig. 3. Periodic sinusoidal trajectories for generating test data sets. version is implemented based on Numpy 1.0.25 version and cvxpy 1.16.5. Based on the above information, a total of 1000 sets random joint configurations and calculated joint torque were obtained as training data. Taking joints 2, 3 and 4 with small signal-to-noise ratio as examples, the effective features and the gravity model of the joints can be obtained by using the proposed method. Because the learning algorithm is implemented based on the ability of data processing of the computer hardware, it is believed that the boost should be more significant on more recent GPU hardware. The following experiments were carried out based on the GPU and CPU versions. Fig. 2. Visual structure of the KUKA LBR iiwa 7 R800 robot. 4. Experimental validation In the following section, experiments were performed to validate the proposed gravity model learning approach. The universality of the method was illustrated with different manipulator models, including the LBR iiwa 7 R800 manipulator simulation model and the realistic 7-DOF light-weight robotic arm. A comparative experiment was carried out with the existing methods to show the advances of the proposed method. 4.1.2. Results and validation After the gravity model of each joint was obtained by the proposed method, the test data and verification data were generated to evaluate the effect of the model. Sinusoidal trajectories were designed for the LBR iiwa R800 robot to generate position data of joint motion and shown in Fig. 3. The complete trajectory of one period is given by 4.1. Simulation experiment 4.1.1. Robot description and data acquisition To validate the efficiency of the proposed approach, simulation experiments were carried out in the simulation environment of the KUKA LBR iiwa 7 R800 manipulator. The LBR iiwa 7 R800 is a 7-DOF lightweight redundant robot with a serial structure and anthropomorphic characteristics. In the simulation experiment, all data samples were generated based on the Kinematics and Dynamics Library (KDL, http://www.orocos.org/kdl). The Unified Robot Description Format (URDF) of the LBR iiwa 7 R800 arm is available from the ROS iiwa stack (https://github.com/IFL-CAMP/ iiwa_stack). The required KDL data structure was obtained by processing the URDF description using the python parser (http: //wiki.ros.org/urdfdom_py). The visual simulation model of the LBR iiwa 7 R800 robot is shown in Fig. 2. The physical parameters used to generate simulation data specify the mass, the position of the center of mass and the inertia for each link are shown in Table 1. In addition, the joint limits of the manipulator were taken into account and the relative Gaussian noise n = N (0, 0.01τ ) was added to the computed torque. The hardware configuration is Intel Core i7-6850K CPU @ 3.60 GHz and NVIDIA GeForce GTX 1080Ti GPU board. The CPU q1 (t ) = 1.4 sin (0.25π t ) q2 (t ) = 1.4 sin (0.2π t ) q3 (t ) = 1.8 sin (0.167π t ) q4 (t ) = 1.3 sin (0.25π t − 0.167π) (15) q5 (t ) = 3 sin (0.33π t ) q6 (t ) = 2 sin (0.167π t ) q7 (t ) = 3 sin (0.2π t ) The joint positions of the sine wave were collected with a frequency of 10 Hz in 20 s. 200 sets of joint angle–torque data were obtained from the trajectory as simulation test data. The corresponding explicit expression of gravity term is derived by Denavit–Hartenberg (D–H) conventions using the Lagrangian formulation of dynamics (EFD) as the verification model. The relevant parameters for iiwa robot based on the D–H method were shown in Table 2. The corresponding 200 sets of verification 4 C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 Fig. 4. The comparison curve of the KDL simulated torque, the predicted torque by EFD and the predicted torque by the proposed method. Table 2 D–H Parameter of the iiwa robot in [35]. Table 3 Experiment results including feature size, nRMSE and selecting time. Link ai−1 (mm) αi−1 (rad) di (mm) θi (rad) Joint Feature size nRMSE Selecting time (s) i i i i i i i 0 0 0 0 0 0 0 0 0.5π 0.5π −0.5π −0.5π 0.5π 0 340 0 400 0 400 0 0 θ1 θi θi θi θi θi θi i=2 i=3 i=4 246 76 171 0.43% 0.48% 0.57% 0.28 0.44 0.37 =1 =2 =3 =4 =5 =6 =7 4.2. Realistic arm experiment 4.2.1. Robot system setup In the current section, a light-weight industrial robotic arm system is established to collect data samples and verify the proposed gravity modeling method. An industrial robot is defined as a programmable multifunction operator for handling mechanical parts or workpieces, or a special mechanical device that can perform various tasks by changing programs [36]. It is typically some form of jointed structure with various configurations. The structures are achieved by the linking of a number of rotary and/or linear motions or joints. Each of the joints provides a motion that collectively positions the robot in a specific position. To provide the ability to position the end-effector at the desired working place at any angle, multiple degrees of freedom are required (commonly greater than or equal to six) [37]. The serial robotic arm used in the experiment has seven rotational degrees of freedom and is composed of an S-R-S structure. The payload capacity of the arm is 7 kg. The simple structure of the system has a large load/self-weight ratio, which enhances its reliability and safety. For different tasks, different tools can be mounted on the end of the robot through a flange. The multidegree of freedom design ensures the end-effector is able to reach the required position and posture. According to the definition and its characteristics, this robotic arm is considered to be representative of a typical industrial robot. The 7-DOF manipulator system used in this experiment is shown in Fig. 5. The joint modular structure includes the motor, harmonic reducer, magnetic encoders, torque sensor, brake, motor driver, power supply, and controller board, which is shown in Fig. 6. One of the encoders is used to measure the position of the motor, and another is used to measure the position of the joint. The modular torque data are obtained through the joint position. Finally, 200 sets of predicted torque data were generated from the gravity model obtained by the proposed ADMM-based learning method. The normalized root mean squared errors (nRMSE) was introduced as the evaluation standard which can be defined as: √∑ T nRMSE = τ̂ − τi )2 /T i=1 ( i (τmax − τmin ) (16) where, τ̂i is the predicted torque value by the learned model, τi is the test sample torque data, τmax and τmin are the maximum and minimum torque values respectively. T is the test data size. The results including the feature size, the resulting nRMSE value and selecting time are reported in Table 3. Fig. 4 compares the predicted torque generated by the learned gravity model based on the proposed method with the predicted torque based on the EFD and KDL simulated torque. The experimental results show that the gravity model learned according to the proposed method can accurately predict the joint torque for the joints of iiwa robot. Moreover, the model prediction results are close to the experimental results of the explicit expression of the dynamic equations derived from Lagrangian formulation and D–H parameters, which proves the effectiveness of the method. It should be noted that the predicted torque accuracy of the explicit expression obtained by the D–H parameter method is relatively lower. The structural parameters cannot be perfectly matched and the internal kinematics description of the robot is not completely accurate [33,34]. The proposed sparse learning and reconstruction method based on data solves this problem better. 5 C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 Fig. 7. Periodic sinusoidal trajectory for data acquisition. movement of the manipulator, the sine wave data were collected in 100 s at 5 Hz. The data acquisition cycle was 0.2 s. A total of 500 joint-angle and driving-torque data sets were collected. To prevent collisions, the rotation of joint 2 and joint 4 was limited. The complete trajectory of one period is given by Fig. 5. The 7-DOF industrial robot manipulator. q1 (t ) = 0.65 sin (0.1t + 1.5) q1 ∈ (−0.65, 0.65) q2 (t ) = 0.25 (cos (0.2t + 0.2) − cos(0.2)) + 0.5 q3 (t ) = 0.5 (sin (0.2t + 0.3) − sin(0.3)) q3 ∈ (−0.7, 0.7) q4 (t ) = 0.9 (sin (0.125t + 0.2) − sin(0.2)) + 0.25 q5 (t ) = 0.25 (sin (0.2t )) q2 ∈ (−0.03, 0.55) q4 ∈ (−0.2, 1) q5 ∈ (−0.3, 0.3) q6 (t ) = 0.4 (cos (0.25t + 0.4) − cos (0.4)) + 0.25 q7 (t ) = 0.25 (sin (0.2t + 0.4) − sin (0.4)) q6 ∈ (−0.55, 0.55) q7 ∈ (−0.5, 0.5) (17) The periodic sampling trajectory in the experiment is shown in Fig. 7. The maximum velocity of each joint in motion did not exceed 0.1 rad/s. The speed of joint motion was very small to ensure that the Coriolis moment and centripetal moment were negligible. The joint-angle and driving-torque samples were collected by the trajectory as training data. The gravity equation was built with data acquisition generated by the sensors and the effective features could be selected from the training data. In many industrial applications, friction is being assumed as dynamic friction in the dynamic model. The friction model including viscous and Coulomb friction can be presented as a function of q̇ [24,39]. The friction part related to the velocity term has little influence on the data of the actual robot in low-speed motion. Therefore, it is reasonable to regard friction as unmodeled dynamic errors. However, in the real condition, friction may have some effects, especially when the joint motion is reversed. Before the formal experiment, the joint torque between the low-speed motion state and the static state was compared. In the process, 100 sets of joint position and joint driving torque measurements by the trajectory in Eq. (17). Then run the trajectory in reverse and measure 100 sets of joint torques at the same positions. Finally, 100 sets of static driving torque data were collected at the same joint positions. The residual standard error (RSE) between the low-speed motion state and the static state is defined as Fig. 6. The mechatronics design of the robotic arm joint. design is able to minimize the difference in the structure of the joints. With the embedded design, six wires inside the robot are used to connect the joints with the outer controller PC and the power supply. The torque sensor is assembled between the flex spline of the harmonic drive gear and the link of the joint. With the sensors, joint angles and driving torques can be collected easily as training and test data during the working process of the manipulator. For the control framework, the joints are serially connected with the master computer by the EtherCAT bus [38]. It takes full advantage of Ethernet full-duplex and has a transmission rate of 100 Mbit/s. The EtherCAT servo drive supports the CANopen servo protocol. The service data object (SDO) is used to transmit the machine sensor and configuration information of the robot system, such as the torque values and joint position values. These data will be of fundamental importance for the reconstruction of the gravity model of the robot. The computing hardware settings are the same as those in the above simulation experiments. 4.2.2. Data acquisition In order to select the effective feature sets and reconstruct the gravity model, it is necessary to collect the joint position and driving torque through sensors during the manipulator motion. In the experiment, a simple trajectory was designed to make the manipulator move in the range of the joints. The frequency of the signal sent from the arm joint sensors was 1000 Hz. In the √ RSE = )2 ∑n ( )2 ∑n ( + i=1 τREVi − τSi i=1 τFW Di − τSi 2n (18) where, n the size of sampling data sets. τFWD is the torque data collected with the joints moving forward. τREV is the torque collected in reverse motion. τS is the torque data collected with 6 C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 Fig. 8. Selected features and weight distribution of the gravity model. Table 4 Experiment results including feature size, RMSE, nRMSE and selecting time. the robotic arm static. The RSE and nRMSE standardized values were 0.307 and 0.512%, which were small enough. It is reasonable that when the joints of the manipulator are in a low-speed state without external force, the joints are considered only affected by gravity. 4.2.3. Gravity model reconstruction Through the analysis of ADMM-based optimization and sparse reconstruction, the main challenges of the framework are capable of obtaining a high reconstruction precision of gravity model and ensuring reasonable processing time. In the experiment, we used 500 sets of joint-position and driving-torque data measurements in low-speed motion as training data. The sampling data were used to establish equations and represent sparse signals. The reconstruction of the gravity model was realized by the proposed approach. Since there were no payloads at the end of the manipulator, the signal-to-noise ratio of the following joints was low. Experiments were carried out on the first four joints to verify the proposed method. According to the positions and weights of the effective features, the gravity model of the 7-DOF industrial manipulator of joints 1–4 is given (see Appendix B, Table B.1). The results of effective features from the original signals are first reported. Fig. 8 shows the feature weight distribution of the ADMM-based gravity modeling approach. It can be seen that the proposed method screened out the effective features of the gravity model of the sampling data, especially for the leading items. In addition, the solver also produced a large number of regression coefficients which were strictly equal to zero, thus realized the sparse signal representation and gravity model reconstruction. To further validate the effectiveness of the proposed method, the reconstructed gravity model was used to predict the driving torque of the joint and compared with the measured torque. Joint Feature size RMSE (N m) nRMSE Selecting time (s) i i i i 55 39 45 57 0.90 1.05 0.47 0.61 0.87% 1.75% 1.99% 1.35% 0.22 0.26 0.38 0.40 =1 =2 =3 =4 In the experiment, 200 sets of joint-position and driving-torque data generated by the trajectory different from the reference one were collected as the test data, which was about 40% of the size of the training data. The results including the feature size, the resulting RMSE and nRMSE value, and selecting time are reported in Table 4. The comparison curve of the predicted torque and the measured torque is given in Fig. 9. It is shown that the prediction of the joint torque matches well with the measurement data. The entire gravity model reconstruction process is completed efficiently in less than half a second. It is noted that the original data are the unfiltered joint sensor measurement data, which contain noise. The experimental results show that the proposed method has good adaptability to data. Since the restriction of the features with specific forms is viewed as a strong priority of reconstruction, the obtained gravity model can compensate the noise to a certain extent and accurately predict the changing trend of the joint torque. 4.2.4. Gravity compensation updating After preliminary verification of the effectiveness of the proposed method on the realistic robot arm, the experiments to update the gravity model of the industrial manipulator with different payloads were carried out. In the experiments, payloads 7 C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 Fig. 9. The comparison curve of the predicted torque and the measured torque. Fig. 10. Different types of payloads attached to the end of the manipulator. with different structures and weights were attached to the end of the 7-DOF manipulator. The type of payload included counterweights and a polishing tool, as shown in Fig. 10. Their weight was 1.8 kilograms, 2 kilograms (for one piece) and 4 kilograms (for two pieces), respectively. Since the continuous geometry structure transmits the increasing forces back through the mechanism, the tool or payload mounted at the end will cause the change of gravity model of the arm with a series kinematic chain. In this instance, the gravity compensation of the robot needs to be updated. In the proposed method, when the gravity model changes due to the change of end-effector, the form of the basis function dictionary remains the same. However, the effective features will change as a result of the force on the end of the arm. Therefore, it is necessary to relearn the gravity model through updated sampling data. The simple trajectory in Eq. (17) was still used to collect training data, and 500 sets of joint-position and driving-torque sensor measurements were collected. The gravity model with different payloads was updated by using the ADMM-based selecting method. The feature and weight distribution of the updating gravity models of joint 1 are shown in Fig. 11. It can be seen that the gravity model of the manipulator changed due to the change of the payloads. The algorithm screened out the features and weights according to the new data. With different payloads, the gravity reconstruction method produced completely different features, thus realizing updating of the gravity model. In the experimental verification, 200 sets of test data independent of the training data were generated, and the driving torque prediction was obtained based on the updating models. The results including the feature size, the resulting RMSE value 8 C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 Fig. 11. The feature and weight distribution of the updating gravity models of joint 1. Table 5 Various payloads results including feature size, RMSE and average selecting time. Payload type Polishing tool 2 kg counterweight 4 kg counterweights Feature size RMSE (N m) Average selecting time (s) J1 J2 J3 J4 J5 J6 J7 J1 J2 J3 J4 J5 J6 J7 39 50 46 71 56 58 38 1.08 1.16 0.64 0.71 0.26 0.41 0.22 0.37 45 49 53 64 40 47 32 1.23 1.14 0.72 0.73 0.32 0.53 0.22 0.29 50 52 52 88 65 58 45 1.08 1.32 0.50 0.84 0.37 0.41 0.32 0.41 and average selecting time of joints 1–7 are reported in Table 5. The comparison curve of predicted torque and measured torque is given in Fig. 12. According to the positions and weights of the effective features, the updating gravity model with different payloads of the 7-DOF industrial manipulator of joints 1 is given (see Appendix, Table B.2). The verification results show that the updated model can predict the trend of torque change with good accuracy. The proposed method provides a fast framework for updating gravity compensation and it takes no more than 0.45 s to finish the execution process. It can be conveniently applied to the industrial tasks of updating the gravity model of the manipulator, especially updating time is limited. More importantly, although the payloads change, the gravity model can still be updated accurately using the same simple trajectory sampling data. It indicates that the proposed method does not need to redesign the excitation trajectory or reformulate the mechanics, which simplifies the labor complexity. method for estimating the gravity parameters of the manipulator based on kernel technique is proposed. Using the regularized least square regression technique, the gravity parameters are regressed based on the configuration parameters of the manipulator, such as D–H parameters. The kernel ridge regression (KRR) algorithm is introduced to improve the performance of the algorithm. This method estimates the relationship between the center of gravity and the mass of the link with the sensor measurements, so as to obtain the gravity model. The to-be-determined gravity vector γi is defined as γi = [mi , mxi , myi , mzi ]T (19) where, mi is the mass of the joint link i. [xi , yi , zi ]T is the coordinate of gravity center relevant to the coordinate system of the link i. A comparative experiment was carried out to evaluate the proposed method and the conventional LR method. In data acquisition, the simple periodic joint trajectory in Eq. (15) was still used to collect training data for both methods. The signal frequency and data acquisition cycle were the same as the ones in Section 4.2. The sampling data by the trajectory independent of training data was used as test data to verify the results. The D–H parameters of the 7-DOF manipulator used in the experiment are shown in Table 6. The parameters of the gravity model of joint 1–4 solved by the method in [42] are presented in Table 7. The results of the comparative experiment including resulting the nRMSE value and algorithm execution time are reported in Table 8. According to the obtained gravity models, the comparison curve of predicted torque is shown in Fig. 13. It is shown from the results that the gravity models obtained by the methods can predict the change trend of joint torque. Nevertheless, the gravity model obtained from the proposed method is better than the LR method of each joint. Especially in joint three, due to the lack of constraints on joint characteristics and corresponding training 4.2.5. Comparison with estimation method The basis of most conventional gravity model estimation methods is that the mapping between gravity parameters and joint driving torque is linear, which can be estimated based on linear regression. It has a solid theoretical foundation and various mature implementations [40,41]. The mapping of the analytical form of the dynamic equation is extracted and a set of recognizable basic parameters are obtained. Then, the generalized torque and joint motion data of the manipulator are collected. Linear regression (LR) techniques use these measurements to estimate gravity parameters. In the implementation process of the methods, the design of the excitation trajectory is sometimes important. Unlike the parameter estimation method, the proposed one uses the feature-based selection framework. The gravity modeling problem is transformed into a sparse optimization problem, and the model is reconstructed by ADMM-based algorithm. In [42], a 9 C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 Fig. 12. Model updating validation of various payloads based on comparison between predicted and measured torque. From top to bottom: joints 1 to 7. Table 6 Denavit–Hartenberg parameters of 7-DOF manipulator. Table 7 Gravity model parameters of the regression method in [30]. Link ai−1 (mm) αi−1 (rad) di (mm) θi (rad) Link mi (kg) mxi (kg i i i i i i 0 0 275 0 0 0 0 0 0 0 250 0 0 0 i i i i 0 0 0 0 0.037 0.146 0.020 =1 =2 =3 =4 =5 =6 −0.5π 0 0.5π −0.5π −0.5π −0.5π 0.5π 0 −0.5π 0 =1 =2 =3 =4 −0.106 m) myi (kg 0.170 0.170 0.176 0.176 m) mzi (kg m) −0.152 −2.603 −2.603 −1.371 based on sparsity and features has better adaptability to data and generalization ability. With the constraints of the specific feature forms, the precise gravity model can be reconstructed by using data, the regression result by the method in [42] is highly deviant, which is not satisfactory. The gravity model solving method 10 C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 Fig. 13. Experiment results on torque prediction effect by different methods. From top to bottom: joints 1 to 4. Table 8 The nRMSE of predicted torque from the different methods. data measurements from a simple trajectory. Consequently, the proposed method can solve the gravity model efficiently. It does not need prior kinematics knowledge of geometric parameters, thus avoiding heavy work of physical parameter calibration and simplifying manual operation. 5. Conclusion Joint nRMSE of the proposed method nRMSE of the method in [42] i i i i 0.85% 1.57% 1.58% 1.38% 2.39% 1.73% 6.30% 1.49% 0.29 4.09 =1 =2 =3 =4 Average processing time (s) In this paper, a novel framework for fast gravity compensation updating of the industrial robot arm is developed. The core idea of this paper is to derive the components from the observation of the dynamic model, and then select and reconstruct a finite number of effective features according to the sparsity of the feature sets of the gravity model. The ADMM algorithm is used to accelerate the process of solving the optimization problem of gravity model updating while ensuring accuracy. The proposed data-based method has the advantage that it does not depend on kinematics or dynamics parameters. Only the joint angle and driving torque data measurements by a simple trajectory are needed, thus avoiding the heavy work of calibration and assembly 11 C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 Table B.1 Gravity model of 7-DOF industrial robotic arm of joints 1–4. Joint 1 Joint 2 Joint 3 Joint 4 pg Features pg Features pg Features pg Features −20.81 −4.22 −4.17 s1c2 c2s3 c3 c1s3s4 c2c3c4 s1c2c5 c1s3s4c5 c1s3s6 c3s4s6 c3s5s6 c1c3s5s6 c1s3c5s6 s1c2s4c5s6 c3s4c5s6 c2c4c5s6 s1s4c6 c1s3s4c6 s1c3s4c6 c5c6 c2c5c6 s1s4c5c6 c1c3s7 c1c3s4s7 c1c3s4c5s7 s4s6s7 c3s4s6s7 c1c3s4s6s7 c3s4c5s6s7 c1c3s4c5s6s7 s1c2c7 c2s3c7 c3c7 c2c3c7 s4c7 c1s3s4c7 c2c3c4c7 s1c2c5c7 c2s3c5c7 s4c5c7 c1s3s4c5c7 c1s3s6c7 c3s4s6c7 c1c3s5s6c7 c1s3c5s6c7 s1c2s4c5s6c7 c3s4c5s6c7 s1s4c6c7 s3s4c6c7 c1s3s4c6c7 s1c3s4c6c7 s1s4c5c6c7 s3s4c5c6c7 c1s3s4c5c6c7 s1c3s4c5c6c7 −12.81 −11.84 −1.73 −0.61 −9.05 −1.38 −6.25 −2.02 −3.48 s2 c1s2 s2c3 c1s2c3 c3s4 c1c3s4 c2c3s4 s2c4 c1s2c4 c2c4 s2c5 c1s2c5 c3s4c5 c2c3s4c5 c2s6 c4s6 c2c4s6 c4c5s6 c2c4c5s6 s2c6 c1s2c6 c3s4c6 c2c3s4c6 s2c7 c1s2c7 s2c4c7 c1s2c4c7 c2c4c7 s5c7 s2c5c7 c1s2c5c7 c2s6c7 c2s3c4s6c7 c2s3c4c5s6c7 s2c6c7 c2s2c6c7 c2s3c6c7 s1c2c5c6c7 c2s3c5c6c7 −1.59 −125 −2.37 s2 c1c2c3 s2s4 s1c3s4 c1s5 c1c3s5 s1s4s5 s1c2s4s5 s2s4c5 s1c3s4c5 s1c2s6 c2s3s6 s5s6 c2s5s6 c2s3c5s6 s1c3s4c6 c1s5c6 c1c3s5c6 s1c3s4c5c6 s1s7 s2s7 s1c2s7 s2c3s7 s1c5s7 s2c5s7 s1c2c5s7 s2c3c5s7 s1c6s7 s1c2c6s7 s1c5c6s7 s1c2c5c6s7 s2s4c7 s1c3s4c7 s1s5c7 s1c2s5c7 s1s4s5c7 s1c3s4c5c7 c2s3s6c7 s5s6c7 c2s5s6c7 c2s3c5s6c7 c1s5c6c7 c1c3s5c6c7 c5c6c7 c4c5c6c7 −3.51 −0.83 −3.84 −1.03 −4.82 −1.76 −6.43 −3.99 −1.88 −2.74 −1.37 s2 c1s2 s2c3 c1s2c3 s4 c1s4 c2s4 c1c2s4 s1c4 s2c4 c1s2c4 c2c4 s2c3c4 c1s2c3c4 s2c5 s2c3c5 c2s4c5 s1c4c5 s2c4c5 c2c4c5 s2c3c4c5 c1s2c3c4c5 s6 c1s6 c4s6 c2c4s6 c5s6 c1c5s6 c4c5s6 s2c6 c1s2c6 s2c3c6 c1s2c3c6 c2s4c6 s2c4c6 s2c3c4c6 c1s2c3c4c6 s2c5c6 s2c3c5c6 s2c3c4c5c6 s2c7 s2c3c7 s4c7 c2s4c7 c1c2s4c7 s1c4c7 s2c4c7 s2c3c4c7 c1s2c3c4c7 s1c4c5c7 c2c4c5c7 s2c3c4c5c7 s6c7 c5s6c7 s2c6c7 s2c3c6c7 s2c3c4c6c7 3.11 −2.12 −12.38 0.88 −0.27 0.61 −2.38 −3.49 −0.01 0.99 0.69 −2.44 3.55 1.02 1.97 1.89 3.13 1.24 0.67 0.98 2.02 −0.14 −2.42 −0.26 −2.26 −0.04 −22.69 −7.43 −5.10 −2.14 −0.29 6.03 −0.50 −15.29 −3.98 −0.96 3.67 −0.72 0.20 −0.82 −0.35 0.82 0.19 5.01 2.11 3.99 2.81 2.57 0.20 2.29 0.53 1.2 −4.90 −3.88 −2.68 −0.60 −0.16 −1.58 −2.06 −0.32 −0.51 −6.54 −5.72 −5.10 −1.07 −9.61 −8.11 −0.55 −1.48 0.20 2.05 −1.72 −0.20 −0.03 0.69 0.45 −3.70 −2.42 −0.14 −0.41 −2.11 8.84 0.30 0.54 −1.30 −0.51 −0.76 8.69 0.23 1.60 −3.35 −2.29 0.35 6.14 0.66 0.77 5.69 −0.50 0.15 −0.39 0.15 −0.63 0.02 −0.51 0.018 −0.31 −0.26 −0.41 −0.36 −1.26 2.07 −0.80 −0.77 −0.42 2.05 1.53 −1.14 −0.10 0.27 0.13 0.20 0.77 1.13 error. Moreover, it does not need to redesign the excitation trajectory or reformulate the mechanics in model updating, which simplifies the labor complexity. The effectiveness and universality of the proposed method are verified by the validation of the iiwa robot simulation and the experiment of a realistic 7-DOF industrial robot arm. The superiority of the proposed method is demonstrated with the comparison to the existing estimation method. Experiment results show that the gravity model can be updated with good accuracy through the data of a simple trajectory in reasonable processing time. The proposed method can be conveniently applied to the gravity model updating of the manipulator when the payload and the end-effector are changed 2.08 −4.07 −2.49 −1.03 −1.37 −0.94 −1.94 −0.93 4.39 −2.23 −0.72 −1.03 −0.23 −0.99 −0.58 −1.04 −0.13 −0.29 −2.91 −0.33 −2.66 −0.01 −0.71 −1.41 −2.06 −0.47 −0.58 −0.37 −0.32 −1.05 −1.33 −2.53 −4.44 −1.87 −0.08 −0.89 −2.13 −0.56 −0.19 1.77 −0.35 −0.19 −0.12 −0.65 −0.36 −0.25 frequently according to different tasks in the industrial scene, especially when the updating time is limited. In the future, we plan to apply the fast gravity compensation updating method to the advanced controller and continue to focus on the effective feature and reconstruction approach to further explore the solution of robot model active learning according to data. Declaration of competing interest The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper. 12 C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 Table B.2 Updating Gravity model of various payload of joint 1. Polishing tool A counterweight Two counterweights pg Features pg Features pg Features −0.88 −23.49 −9.14 −3.63 −4.69 −12.69 c2 s1c2 c2c3 s4 s1c2c4 s1c2c5 c3s4s6 s5s6 c2s5s6 s4s5s6 s1s4c6 s1c2s4c6 s3s4c6 s1c3s4c6 s1c2c3s4c6 c1c3c4c6 s1s4c5c6 s1c2s4c5c6 s1c3s4c5c6 s1c2c3s4c5c6 c1c3c4c5c6 s7 s4s6s7 s4c5s6s7 s1c7 s1c2c7 s4c7 s1c2c4c7 s1c2c5c7 c2s3s4s6c7 s5s6c7 s4s5s6c7 c2s3s4c5s6c7 c2c4c5s6c7 s1s4c6c7 s1c3s4c6c7 c1c3c4c6c7 s1c3s4c5c6c7 c1c3c4c5c6c7 −0.49 −2.37 −0.14 −6.73 −3.58 −3.59 −4.27 −0.23 −0.31 −1.74 s1c2 s1s5 s1c2s5 c4c5 c3c4c5 s2s6 s2c3s6 c1s4s6 s2s4s6 c1c3s4s6 c3s5s6 c3c4s5s6 c1c3c4s5s6 c2c3c4s5s6 c1c2c6 c2c3c6 c1c2c3c6 s3s4c6 c1s3s4c6 c1c2s3s4c6 c1c3s5c6 c1s3s4c5c6 c1c3c6s7 s1c7 s1c2c7 s3c7 c2s3c7 s1c4c7 s1c2c4c7 s1s5c7 s1c2s5c7 s1c5c7 s1c2c5c7 c2s3c5c7 c2s4c5c7 c4c5c7 s1c2c4c5c7 c3c4c5c7 s3s6c7 c3c4s5s6c7 s1c5s6c7 c2c5s6c7 s3c5s6c7 c1s3s4c6c7 c1s3s4c5c6c7 −0.26 −28.16 s1 s1c2 s1s4 s1c3s4 c2c4 s1c2c4 c2c3c4 s1c2c5 s1s4c5 s1c3s4c5 c1c3s4c5 s1c2c4s6 s5s6 c3s5s6 s4s5s6 c2c4c5s6 s1c2c6 s1s4c6 s3s4c6 s1c2c5c6 s1s4c5c6 s3s4c5c6 c1s3s4c5c6 c5s7 c3c5s7 s1c2c7 c2s3c7 s1s4c7 s1c3s4c7 c1c3s4c7 s1c2c4c7 s1c2c5c7 c2s3c5c7 s1s4c5c7 c1s4c5c7 s1c3s4c5c7 c1c3s4c5c7 c2s4s6c7 c2s3s4s6c7 c3s5s6c7 s4s5s6c7 c2s3s4c5s6c7 c2c4c5s6c7 s1c2c6c7 s1s4c6c7 s3s4c6c7 s1c2c5c6c7 s1s4c5c6c7 s3s4c5c6c7 c1s3s4c5c6c7 1.73 −6.74 −2.60 −2.75 11.56 2.58 1.24 9.81 0.65 0.33 10.69 1.65 9.44 0.24 1.86 1.70 −4.17 −4.47 −5.90 −33.00 −2.53 −6.74 −23.66 5.28 −1.37 −2.32 7.55 −6.44 0.97 0.94 1.23 0.33 2.65 1.17 7.99 2.45 1.31 3.43 0.97 4.41 7.50 18.10 6.59 −1.40 10.76 −0.03 −13.25 −23.63 −0.63 −10.83 −3.91 −10.89 −4.58 −2.12 −13.90 −24.52 −8.59 −0.46 −2.42 −6.82 −4.12 2.51 1.39 4.64 1.25 6.61 10.86 3.62 Acknowledgements 3.67 3.56 −4.87 −7.14 −0.43 −19.80 5.76 5.43 −1.30 1.92 −4.10 −5.08 −3.15 −0.59 −8.15 3.50 5.46 −1.26 5.74 6.79 0.35 1.92 2.03 −27.33 −4.78 1.01 2.14 −1.09 −3.28 −20.71 −4.20 2.62 −0.25 3.56 −7.42 −0.02 4.38 −0.44 −3.82 4.39 −4.61 −7.45 3.40 4.90 −2.15 5.14 5.72 0.08 the rotation matrix about x-axis. Note that for revolute joints, only Rz (qi ) depends on qi in the right-hand side of Eq. (A.1), i.e. ⎤ ⎡ cos (qi ) − sin (qi ) 0 0 This research was supported by the National Natural Science Foundation of China (No. 61803124), the National Basic Research Program of China (No. 973-2013CB733124), and the Foundation for Innovative Research Groups of the National Natural Science Foundation of China (Grant No. 51521003). Rz (qi ) = ⎣ sin (qi ) cos (qi ) 0 0⎦ ⎢ ⎥ 0 0 1 0 (A.2) = C1 cos (qi ) + C2 sin (qi ) + C3 Appendix A where, i−1 Ti = Rz (qi ) Tz (di ) Tx (ai ) Rx (αi ) 1 0 0 0 C1 = ⎣0 1 0 0⎦ 0 0 0 0 0 −1 0 0 C2 = ⎣1 0 0 0⎦ 0 0 0 0 ⎡ Proof of Property 1. Assume the Denavit–Hartenberg convention is used. The pose matrix of joint i in the frame i - 1 is expressed as: ⎢ (A.1) ⎡ where, qi the angle of joint i, di , ai , and αi are link parameters. Rz is the rotation matrix about z-axis. Tz is the translation matrix about z-axis. Tx is the translation matrix about x-axis. And Rx is ⎢ 13 ⎤ (A.3) ⎥ ⎤ ⎥ (A.4) C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 0 0 0 0 C3 = ⎣0 0 0 0⎦ 0 0 1 0 ⎡ ⎢ [9] J. Alvarez-Ramirez, V. Santibanez, R. Campa, Stability of robot manipulators under saturated PID compensation, IEEE Trans. Control Syst. Technol. 16 (6) (2008) 1333–1341. [10] A. Zavala-Rio, V. Santibanez, Simple extensions of the PD-with-gravitycompensation control law for robot manipulators with bounded inputs, IEEE Trans. Control Syst. Technol. 14 (5) (2006) 958–965. [11] C. Sun, W. He, W. Ge, C. Chang, Adaptive neural network control of biped robots, IEEE Trans. Syst. Man Cybern. 47 (2) (2016) 315–326. [12] H. Zhang, M. Du, G. Wu, W. Bu, PD control with RBF neural network gravity compensation for manipulator, Eng. Lett. 26 (2) (2018) 236–244. [13] J. Fujishiro, Y. Fukui, T. Wada, Finite-time PD control of robot manipulators with adaptive gravity compensation, in: 2016 IEEE Conference on Control Applications (CCA), IEEE, 2016, pp. 898–904. [14] J. Swevers, W. Verdonck, J. De Schutter, Dynamic model identification for industrial robots, IEEE Control Syst. Mag. 27 (5) (2007) 58–71. [15] T. Xu others, Dynamic identification of the KUKA LBR iiwa robot with retrieval of physical parameters using global optimization, IEEE Access 8 (2020) 108018–108031. [16] J. Swevers, Optimal Robot Excitation and Identification, 1997. [17] C. Urrea, J. Pascal, Design, simulation, comparison and evaluation of parameter identification methods for an industrial robot, Comput. Electr. Eng. 67 (2018) 791–806. [18] G. Antonelli, F. Caccavale, P. Chiacchio, A systematic procedure for the identification of dynamic parameters of robot manipulators, Robotica 17 (4) (1999) 427–435. [19] J. Hollerbach, W. Khalil, M. Gautier, Model identification, in: Springer Handbook of Robotics, Springer, 2016, pp. 113–138. [20] J.J. Craig, Introduction To Robotics: Mechanics and Control, 3/E. Pearson Education India, 2009. [21] Y. Dong, T. Ren, K. Chen, D. Wu, An efficient robot payload identification method for industrial application, Ind. Robot: Int. J. 45 (4) (2018) 505–515. [22] G. Heinzinger, Bounds on Robot Dynamics, 1989. [23] C.H. An, C.G. Atkeson, J.M. Hollerbach, Estimation of inertial parameters of rigid body links of manipulators, in: 1985 24th IEEE Conference on Decision and Control, IEEE, 1985, pp. 990–995. [24] W. Khalil, M. Gautier, P. Lemoine, Identification of the payload inertial parameters of industrial manipulators, in: Proceedings 2007 IEEE International Conference on Robotics and Automation, IEEE, 2007, pp. 4943–4948. [25] E. Rueckert, M. Nakatenus, S. Tosatto, J. Peters, Learning inverse dynamics models in o (n) time with lstm networks, in: 2017 IEEE-RAS 17th International Conference on Humanoid Robotics (Humanoids), IEEE, 2017, pp. 811–816. [26] W. Rackl, R. Lampariello, A. Albu-Schäffer, Parameter identification methods for free-floating space robots with direct torque sensing, IFAC Proc. Vol. 46 (19) (2013) 464–469. [27] J. Ke, B. Wu, R. Sotudeh, DSP based induction motor torque and parameter identification, in: Proceedings of Second International Conference on Power Electronics and Drive Systems, vol. 2, IEEE, 1997, pp. 679–683. [28] R. Tibshirani, Regression shrinkage and selection via the lasso, J. R. Stat. Soc. Ser. B Stat. Methodol. 58 (1) (1996) 267–288. [29] B. Efron, T. Hastie, I. Johnstone, R. Tibshirani, Least angle regression, Ann. Statist. 32 (2) (2004) 407–499. [30] S.-j. Kim, K. Koh, M. Lustig, S. Boyd, D. Gorinevsky, An interior-point method for large-scale ℓ1-regularized logistic regression, J. Mach. Learn. Res. (2007) Citeseer. [31] S. Diamond, S. Boyd, CVXPY: A python-embedded modeling language for convex optimization, J. Mach. Learn. Res. 17 (1) (2016) 2909–2913. [32] S. Boyd, N. Parikh, E. Chu, Distributed Optimization and Statistical Learning Via the Alternating Direction Method of Multipliers, Now Publishers Inc, 2011. [33] I.-M. Chen, G. Yang, C.T. Tan, S.H. Yeo, Local POE model for robot kinematic calibration, Mech. Mach. Theory 36 (11–12) (2001) 1215–1239. [34] F. Guo, H. Cai, M. Ceccarelli, T. Li, B. Yao, Enhanced DH: an improved convention for establishing a robot link coordinate system fixed on the joint, Ind. Robot: Int. J. Robotics Res. Appl. (2019). [35] L. Zhang, S. Guo, Y. Huang, X. Xiong, Kinematic singularity analysis and simulation for 7dof anthropomorphic manipulator, Int. J. Mechatronics Appl. Mech. 6 (2019) 157–164. [36] H. Liu, Robot Systems for Rail Transit Applications, Elsevier, 2020. [37] M. Wilson, Implementation of Robot Systems: An Introduction To Robotics, Automation, and Successful Systems Integration in Manufacturing, Butterworth-Heinemann, 2014. [38] G. Zhang, Z. Li, F. Ni, H. Liu, A real-time robot control framework using ROS control for 7-DoF light-weight robot, in: 2019 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (AIM), IEEE, 2019, pp. 1574–1579. [39] L. Ding, H. Wu, Y. Yao, Y. Yang, Dynamic model identification for 6-DOF industrial robots, J. Robotics 2015 (2015) 1–9. [40] M. Gautier, W. Khalil, Exciting trajectories for the identification of base inertial parameters of robots, Int. J. Robot. Res. 11 (4) (2016) 362–375. [41] S. Guegan, W. Khalil, P. Lemoine, Identification of the dynamic parameters of the orthoglide, in: 2003 IEEE International Conference on Robotics and Automation, (Cat. No. 03CH37422), vol. 3, IEEE, 2003, pp. 3272–3277. [42] C. Yu, Z. Li, H. Liu, A.F. Lynch, Learning-based gravity estimation for robot manipulator using KRR and SVR, in: 2020 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (AIM), IEEE, 2020, pp. 1380–1386. [43] M.W. Spong, M. Vidyasagar, Robot Dynamics and Control, John Wiley & Sons, 2008. ⎤ (A.5) ⎥ The other three namely Tz (di ), Tx (ai ), Rx (αi ) are fixed for a specific robot. Substitute Eq. (A.2) into Eq. (A.1), it can be verified that the components of i−1 Ti could be expressed as: i−1 Ti = C ′ 1 cos (qi ) + C ′ 2 sin (qi ) + C ′ 3 ′ where, C 1 , C 0 0 1 ′ 2 and C Tn = T1 T2 · · · n−1 ′ 3 (A.6) are constant matrices. Then from Tn 1≤n≤N (A.7) It can be seen that 0 Tn are linear combinations of features in F in Eq. (3). In addition, since F in Eq. (3) is closed under partial derivative w.r.t joint angles q ( j (j)= 1, . . . , N ), therefore, for any ∂ 0T n 1 ≤ n ≤ N and 1 ≤ m ≤ N, ∂ q is also in the span of F . m Considering the first argument in Property 1 based on [43], the Jacobian 0 Jn (1 ≤ n ≤ N ) could be written as: ∂ tn ⎢ ∂q 0 1 Jn = ⎢ ⎣ ⎡ z1 ∂ tn ∂ q2 ··· z2 ··· ⎤ ∂ tn ∂ qn ⎥ ⎥ ⎦ (A.8) zn where, 0 tn is the translation vector of frame i. 0 zi is the direction vector of the z-axis of frame i. Both are submatrices of 0 Tn . Therefore, it could be concluded that 0 Jn is a linear combination of features shown in Eq. (3). To verify the second argument, we consider the kinematic chain, reversely. From the first argument, 0 Jn (is in) the span of F for any 1 ≤ n ≤ N. By noting that n J0 = −n 0 Jn always holds, the proof is completed. Appendix B In the following expressions, the trigonometric functions sin(θ2 ) and cos(θ4 ) are abbreviated as s2 and c4, respectively. The gravity model of the 7-DOF industrial robotic arm for joints 1–4 including parameters pg and effective features are given in Table B.1. The updating gravity model with different payloads for joint 1 including parameters pg and effective features are given in Table B.2. The updating gravity model of joints 2–4 obtained in the experiment are available from the corresponding author upon reasonable request. References [1] V. Arakelian, Gravity compensation in robotics, Adv. Robot. 30 (2) (2016) 79–96. [2] B. Davies, R. Hibberd, M. Coptcoat, J. Wickham, A surgeon robot prostatectomy—a laboratory evaluation, J. Med. Eng. Technol. 13 (6) (1989) 273–277. [3] R. Damaševičius, R. Maskeliūnas, G. Narvydas, R. Narbutaite, D. Połap, M. Woźniak, Intelligent automation of dental material analysis using robotic arm with jerk optimized trajectory, J. Ambient Intell. Humaniz. Comput. 11 (12) (2020) 6223–6234. [4] T. Brogårdh, Present and future robot control development—An industrial perspective, Annu. Rev. Control 31 (1) (2007) 69–79. [5] X. Chen, S.-B. Chen, The autonomous detection and guiding of start welding position for arc welding robot, Ind. Robot Int. J. (2010). [6] M. Da Lio, A. Doria, R. Lot, A spatial mechanism for the measurement of the inertia tensor: Theory and experimental results, 1999. [7] A. Fregolent, A. Sestieri, Identification of rigid body inertia properties from experimental data, Mech. Syst. Signal Process. 10 (6) (1996) 697–709. [8] A. Zavala-Rio, V. Santibanez, A natural saturating extension of the PD-withdesired-gravity-compensation control law for robot manipulators with bounded inputs, IEEE Trans. Robot. 23 (2) (2007) 386–391. 14 C. Yu, Z. Li, D. Yang et al. Robotics and Autonomous Systems 149 (2022) 103971 Chenglong Yu received the B.S. degree in automation from Harbin Engineering University (HEU), Harbin, China, in 2015, and M.S. degree in mechanical engineering from Harbin Institute of Technology (HIT), Harbin, China, in 2018, where he is currently pursuing the Ph.D. degree with the State Key Laboratory of Robotics and System, Harbin Institute of Technology (HIT). His research interests include industrial manipulator control, robot dynamic modeling and machine learning techniques. Dapeng Yang received the B.S. degree in mechanic engineering, and the M.S. and Ph.D. degrees in mechatronic engineering from the Harbin Institute of Technology (HIT), in 2004, 2006, and 2011, respectively. Since 2015, he has been an Associate Professor with the State Key Laboratory of Robotics and System (SME), HIT. His research interests include dexterous robotic/prosthetic hand systems, biomedical signal processing and control, human–machine interaction, and machine learning techniques in robotics. Zhiqi Li received the B.S. and M.S. degrees in Control Science and Technology, and the Ph.D. degree in mechatronics from Harbin Institute of Technology (HIT) in 2006, 2008 and 2016 respectively, where he is currently a research assistant with the School of Mechatronics Engineering. His research interests include robot modeling and control, machine vision and machine intelligence Hong Liu received the Ph.D. degree from the Harbin Institute of Technology (HIT), China, in 1993. During 1991–1993, he was a Joint Ph.D. Candidate with the Institute of Robotics and System Dynamics, German Aerospace Research Establishment (DLR), Germany, where he has been a Research Fellow since 1993. He became one of the First batches of Changjiang Scholars in 1998. He is currently a Professor with HIT. His research projects include the development of dexterous robot hand and space manipulator. 15