A comparative study of DC servo motor parameter estimation using various techniques

A lot of research is being carried out on the Direct Current (DC) servo motor systems due to their excessive applications in various industrial sectors owing to their superior control performance. Parameters of the DC servo motor systems to be used in the simulation software are usually unknown or change with time and have to be determined accurately for obtaining the precise simulation response. In this paper, three different estimation techniques for multi-domain DC servo motor model parameters are discussed namely the Compare Coefficient Method, MATLAB Parameter Estimation Toolbox, and System Identification Toolbox. The paper performs a comparison of these methods to identify the one that gives the most accurate results. Experimental data has been used for the comparison of the estimated response from the techniques. The results show that the parameters obtained from the parameter estimation method give the most accurate simulation results with the least error against the experimental results. The study is significant for guiding researchers to prefer this method for estimation purposes of DC servo motor simulation model parameters. The presented technique, i.e. parameter estimation technique, is relatively less complex and requires less computational cost as compared to other techniques found in the literature.


Introduction
Direct Current (DC) motors are used in different fields of consumer electronics, industries, and robotics. Parameters of DC motor play an important role in achieving high performance in simulation models. Parameters vary with time due to the depreciation and aging effect which reduces performance, therefore, to overcome this problem, motor parameters should be updated and different techniques have been used for this purpose [1]. Motion Control Techniques (MCT) have been tremendously developed in the last decade. In 1990, Advanced Motion Control based first IEEE International workshop was held, which highlighted the physical examination of Motion Control (MC). MC systems became dominant in velocity, position, force, and acceleration control. Industrial robotic systems' performance is measured by control of force and position. DC servomotors are frequently used to attain accurate torque and position control. Furthermore, due to the low cost, outstanding control performance, and simple structure, their usage is spreading in the robotics field [2,3].
DC Servo motors have been proved useful for industrial MC systems due to their good features of less noise, energy efficiency, low manufacturing cost, fast response, torque to inertia ration, little volume, and high accuracy [4][5][6]. In industries, servo motor systems are extensively utilized as actuators [7], which include permanent-magnet synchronous motor [8], direct current brushless motor [8], and direct current brushed motor [9]. Two types of actuators are used for vehicle systems, first one is used in electro-pneumatic systems or electro-hydraulic systems called solenoid valve [10,11] while the second one is used in the electromechanical system which is termed as direct current servo motor systems or DC motor [12,13].
Different advanced techniques self-tuning controller, model reference adaptive controller, sliding mode controller (SMC), adaptive backstepping control, fuzzy control, and genetic algorithm have been implemented for the improvement of the system's performance [14][15][16]. The schematic diagram of the DC servo motor is shown in Figure 1. Controller parameter tuning depends upon system physical parameters. Hence, recognition of system physical parameters accuracy is essential. Some fixed parameters (resistance of armature Ra, the inductance of armature La, and Ke backemf constant) are considered for DC motor. Because of magnetic effects, the torque constant may change, when the direct current motor is in operation mode. Also with the removal of loads or additional loads to the rotary shaft, inertia J of motor changes [17].
This literature review shows that all the previously developed methods are built upon parameter knowledge of the accurate model. Still, because of manufacturing discrepancy and different application schemes disturbances, unknown parameters and backlashes surely occur in the DC motor servo systems. Consequently, with previously mentioned uncertainties it seems still tough to control DC motor servo systems. It is noted that adaptive control can handle different types of system uncertainties [18,19], which includes parametric uncertainties [20][21][22], non-smooth nonlinear uncertainty [23][24][25], time-delay [26][27][28], and disturbances that are not known [29,30]. A PID-type feedback controller with adaptive gain parameters was introduced for backlash nonlinearity, for position control [31]. In actuality, with the advancement and betterment of manufacture highly precise actuators are needed in vehicle applications when the backlashes and gaps are very small. As a result of the above discussion, we can say that the main uncertainties are disturbances and unknown parameters, not backlashes. In the future an indirect method of comparing coefficients can be used also online parameter estimation of DC motor can be done without the need to have information about parameters in advance. Further, controller parameters can be estimated from artificial intelligent techniques. Whenever load changes occur, this method will improve the system response in real-time. Scientists and Engineers of different fields and industries have good knowledge about the advantages of modelling dynamic systems. They can use test-data-based methods or methods of first-principles mathematics. First-principles models give understanding about the behaviour of the system, but at the same time reduce accuracy. Data-driven models give good accuracy, but they provide a limited understanding of system physics. In this paper five parameters (Ra, La, Km, J, and B) are used for the model of the motor.
There has been a lot of studies done on parameter estimation techniques in general. In [32], the authors propose a new parameter estimation approach based on the Dynamic Regressor Extension and Mixing (DREM) method. When compared to gradient-based and leastsquares estimators, this method has been shown to perform better. The DREM strategy's performance has been improved further in [33,34]. [35] describes how signal injection techniques may be used to reduce the complexity of parameter estimation-based observers. This approach is used to create a sensorless controller for magnetic levitation devices, and the findings are confirmed using numerical simulations. [36] describes a new technique for partial state identification of nonlinear systems based on parameter identification. In [37], an adaptive parameter estimation approach for nonlinear systems with unknown time-varying parameters was introduced. The adaptive method estimates parameters using input and output data and is validated using gradient-based and least-squares techniques. Furthermore, the method's resilience is demonstrated experimentally on a roto-magnet plant with limited disturbance.
The techniques presented in the literature are much complex and require huge computational cost making these unattractive for common DC servo motor parameter estimation purposes. The contributions of the paper are summarized as: (1) the first-principle model of DC servo motor is developed and comparing coefficients method has been used to determine the system parameters. (2) The parameter estimation toolbox has been used to estimate the parameters and validate the response of the system. (3) System identification toolbox has been used to estimate parameters. (4) comparison of the three methods has been carried out to select the best option for such applications. Experimental data has been used for the comparison of the estimated response from the techniques. The results show that the parameters obtained from the parameter estimation method give the most accurate simulation results with the least error against the experimental results. The study is significant for guiding researchers to prefer this method for estimation purposes of DC servo motor simulation model parameters. The study is novel with respect to literature that no such comparative study was found justifying the superior performance of parameter estimation toolbox method for estimating the parameters of a DC servomotor.
The next sections are organized in the following way, Section II discusses the research methodology, Section III presents results with discussion and the comparison of two methods. Section IV concludes the document.

Research methodology
A list of parameters with symbols used in the study for estimation is shown in Table 1.

Modelling using comparing coefficient method
In this method, we estimate the parameters of a DC servo motor using the DC servo motor subsystem. The model of DC motor is formulated with its mechanical and electrical subsystems using Simscape Driveline  and Electrical line. Input voltage (V) is applied to the motor and output measured is the motor shaft's angular position, θ as shown in Figure 2. Dynamic parameters of Servo motor can be estimated using the following equations given below:

Modelling using parameter estimation technique
In this method, practical measurements from a real DC servo motor are first taken. We then need to identify and specify parameters to estimate, starting with some initial guess. After feeding this data into the model, parameter values are approximated using a suitable approximation algorithm from Parameter Estimation Toolbox in Simulink. Five parameters: Frictional constant B m , Moment of Inertia J m , Torque Constant K t , Inductance L a and Resistance R a of servo motor are chosen and are loaded in the Parameter Estimation tool. Practically, measured data is also loaded for validation of the model. The next step is to plot both measured and simulated data to see how much it matches current DC Servo Motor's data. If the simulation does not match the measured data, model parameters need to be estimated again. The parameter estimation tool will continue to iterate parameter values until estimation converges or terminates. Plots of measured and simulated data can be overlaid to show how successful is the estimation process. After completion of parameter approximation, we need to validate our results using other test data sets that can be measured from the real DC servo motor. The steps involved in the evaluation of the parameter estimation of DC Servo Motor using the parameter estimation toolbox are shown in Figure 3.

Modelling using system identification technique
Another technique to estimate parameters for DC Servo Motor is using System Identification Toolbox if we have measured input and output data. In this study, the estimation and validation input and output data were obtained from MATLAB DC Servo Motor Example [38].

Results and discussion
DC Servo Motor system is developed in Simulink using the Simscape Driveline and Simscape Electrical as shown in Figure 4 which shows Simulink model of DC Servo motor used for estimation of motor parameters.

Parameter estimation using comparing coefficient method
Before starting the estimation process, we need to know system equations that physically represent DC Servo Motor. The dynamic parameters of the Servo motor can be estimated using the Equations (1) to (4). By taking Laplace Transform of all the above equations and after simplifying, the following transfer function is obtained: Expanding denominator we get, After finding Values of K, T p1 and T p2 , we can find numerical values of motor parameters by evaluating Equation (6) and process model transfer function Equation (8).
Evaluating coefficients of (6) and (8), we get The value of R a is assumed to find other parameters by solving and putting values in other equations. We get the following values: The estimated values are about 90% closer to the actual measurements.

Parameter estimation using parameter estimation toolbox
Estimation of the Motor parameter is done using the Parameter Estimation toolbox. Pre-loaded data from  the practical experiment is already available in this project. Experimental data can also be loaded from MATLAB variables, MAT files, Excel, or commaseparated-value files. The next task is to select parameters that are planned to be estimated for the DC Servo motor. Five Parameters are chosen Frictional constant B m , Moment of Inertia J m , Torque Constant K t , Inductance L a and Resistance R a . We set the initial values of these parameters, as mentioned in the datasheet of DC Servo Motor. The range of these parameters from zero to infinity is also defined. The initial values of these parameters are shown in Table 2. We plot the model response of the experimental data along with the simulated data. It is found that the simulation data does not match with practically measured data, showing that model parameters need to be tuned as shown in Figure 5.
Next, we add a plot of Parameter Trajectory, which shows how parameter values change during the estimation process. Estimation is done based on a cost function. For this experiment, the cost function of Sum Squared Error is selected. Next, the Estimation process is started, it keeps iterating parameter values until estimation converges and stops. Once the process terminates, we obtain the estimation progress report featuring the iteration number and values from the cost function. The convergence steps of the algorithm are shown in Table 3.
The cost function minimization plot is shown in Figure 6 to show the progress of the algorithm after each iteration till convergence.
The parameter trajectory plot for various parameters to be estimated is shown in Figure 7 to show the progress to approach their final values.
The model fit plot of the estimated data with measured data is shown in Figure 8 which shows the accuracy of the technique after few iterations.
A successful estimation should not match only the experimental data set but also other test data, which is collected from a practical experiment. The Validation data set is pre-loaded for this experiment. It is observed from simulation results that the model plot response of the test dataset accurately matches with the simulated data. The results obtained from this method are about 99% closer to the actual measurements proving its greater accuracy.

Parameter estimation using system identification toolbox
We obtain two measured data sets for estimation and validation. min and mout are measured input and  output that will be used for estimation and vin and vout are measured input and output that will be used for validation of the model. The next step is to convert input and output data in MATLAB workspace to iddata variable. This can be done by using the following where Ts is a sampling time that is 0.005 s.   Two iddata objects; mdata and vdata are set. These two variables are added to the system identification toolbox for the estimation of the model. We modify mdata object and select input and output values from 0 to 2 s with Ts = 0.005 s.
The following steps are repeated for vdata and vdatae is obtained with validation input and outputs ranging from 0 to 2 s. The plots of input and output signals for the estimation and validation are shown in Figures 9  and 10.
Next, we select a process model that will depict the dynamics of our DC Servo Motor which is two real poles-based system with an integrator in series to estimate gain and poles values. The values of K, T p1 and T p2 are estimated. The plots of the process model with estimation and validation data are shown in Figures 11  and 12. It is seen from the results that both validation and estimation data map each other accurately up to 96%.

Comparison of presented techniques
The paper presented a comparison of the three popular methods for estimating the parameters of the DC servo motor system. The conventional method using the comparing coefficient method is an easy one but lacks accuracy in terms of achieving experimental results. The second method using the parameter estimation toolbox provided the highest accuracy. The third method was the system identification technique that provided an accurate response less than the parameter estimation toolbox. Therefore, the recommended method from this study is the parameter estimation toolbox ( Table 4).The parameter estimation   technique is also relatively less complex and requires less computational cost as compared to other techniques found in the literature mentioned earlier.

Conclusion
This paper presented three estimation techniques for multi-domain DC servo motor model parameters namely the Compare Coefficient Method, MATLAB Parameter Estimation Toolbox, and System Identification Toolbox. The paper also performed a comparison of these methods to identify the one that gives the most accurate results. The results showed that the parameters obtained from the parameter estimation method give the most accurate simulation results with the least error against the experimental results. The study is significant for guiding researchers to prefer this method for estimation purposes of DC servo motor simulation model parameters. Future directions may include the inclusion of different parameters other than these for better results. Advanced neural network or fuzzy-based or combination of these estimation methods may also be tested for performance comparison in future studies with experimental verification like Hardware-in-the Loop technique.