1. Introduction
A direct current (DC) motor has many applications in the industrial sector [
1], such as aeronautics, robotics, automation, manufacturing, automotive, etc. Therefore, it is constantly subjected to multiple experiments or investigations in identification, estimation, and parametric control to create solutions in different areas of research that could have applications in real life. For this, the precise control of motor parameters is required to achieve efficient operation [
2], and model optimization should help achieve this goal.
Sometimes, models are simulated mathematically, drifting in predictions, control monitoring, and diagnosis. Motor parameters vary with features such as misalignments that can lead to poor motor performance. The design of DC motor controllers could have drawbacks, as they are sensitive to high tolerances [
3]. Usually, the parameters specified by manufacturers are somewhat robust, and it is necessary to generate more precise models that help us make a more efficient motor. With precise models, diagnostic systems can be developed, as shown in the research by ref. [
4], where a diagnostic method based on a rotor slip was designed to detect faults in the current and speed sensors during the induction motor operation. Another example is from ref. [
5], where a technique based on current estimation for fault detection and speed sensor failure for an induction motor is developed. The precise knowledge of mathematical motor models allows for the bypassing of sensors and efficient speed control, as shown in the research by ref. [
6], where high-performance field-oriented motor control requires the accurate knowledge of the flow of information and the motor speed. These investigations denote the importance of motor modeling and parameterization, since they allow for better fault-tolerant control, reduce the number of sensors, and even improve control precision.
For example, an improved loss minimization technique based on fuzzy logic for a brushless DC motor (BLDC) drive system is presented in [
7]. In addition, the implementation of a platform for testing an algorithm for the closed-loop speed control of a DC motor was sought in [
8]. These have not been the only works that have focused on controlling speed through algorithms. Speed control algorithms have also been designed based on the estimation of dynamic error parameters under uncertainty and load variation [
9].
Heuristic algorithms solve optimization problems defined by intuitive approximations, and solutions to these problems are intelligently thought out even if the solution is not the best. In recent years, heuristic procedures have been developed to optimize software design problems and component reuse. Some research shows the usefulness of this type of algorithm and its application in parametric evaluation [
10]. Some of the proposed limitations of heuristic algorithms have been overcome with more robust methods based on statistics, such as in ref. [
11]. However, it is necessary to continue innovating [
12]. Investigations such as [
13] propose an algorithm that uses a stochastic method to reach optimal points within simple algorithms.
A comparison of heuristic algorithms for the identification of DC motor systems was carried out in [
14] through discrete Proportional–Integral (PI) controllers to analyze the system response. Fast and accurate convergence rate results were obtained with the extended Kalman filter (EKF) algorithm. A heuristic method is a well-known set of steps that is used to quickly identify a high-quality solution to a given problem. It consists of intuitive mathematics with a design of static and manual rules that are supposed to give a good solution, although not necessarily the optimal solution, to the problem. For this reason, it is important to compare them with metaheuristic algorithms and observe which offer the highest optimization.
Metaheuristic algorithms have acquired an important role in recent years. The optimization field has been no exception, because metaheuristic algorithms are iterative and intelligently combine the principles of evolution, natural selection, and inheritance, inspired by physical phenomena and different behaviors of animals and even humans. This makes it possible to correctly explore the search space by offering a population of feasible solutions. Due to their simplicity, they are general purpose algorithms and similar phenomena inspire them. In recent years, these algorithms have successfully solved practical problems in different fields. They are easily implementable, as they do not require any particular changes to their structure when applying them across various themes unless optimization is sought. However, there may be limitations, since most of these optimization methods start from random solutions, resulting in approximate, not exact, solutions.
Recent contributions, such as [
15], showed that the Artificial Fish Swarm Algorithm (AFSA) has advantages, including high convergence speed, flexibility, fault tolerance, and high accuracy. However, it has been shown that they contain high temporal complexity and a lack of balance in global and local searches. On the other hand, the work by ref. [
16] shows that Dolphin Partner Optimization (DPO) offers a quick solution with optimal stability in different function targets. Another area of interest in algorithms is convergence. A study on the hybrid algorithm Particle Swarm–Ant Colony Optimization (PS–ACO) has been presented [
17], where ACO was used as a parallel calculation mechanism and showed excellent robustness. Unfortunately, they faced the limitations of stagnation and premature convergence. The Particle Swarm Optimization (PSO) algorithm as an adaptation of reactive power optimization [
18] proved to be decisive. Refs. [
19,
20] use metaheuristic algorithms to optimize a fuzzy controller. Still, it needs predefined parameters for a user-determined issue. These problems can be solved through adaptive adjustments. In [
21], the author offers solutions of low algorithmic complexity with optimal convergence results in Proportional–Integral–Derivative (PID) controllers. An example is the Cuckoo algorithm [
22] which is a relatively simple method, having minor variation in parameters and containing fast convergence. However, it also has premature convergence defects and low calculation accuracy, which, in the worst case, results in inaccurate solutions.
Genetic algorithms (GA) are another method widely used to optimize a DC motor because of their low complexity of understanding and ease of adaptation. Such is the case in [
23], where it is mentioned that GAs are appropriate for the estimation of platform parameters with nonlinear characteristics. Something similar occurs in [
24], where it is described that GAs offer superior results in the estimation of parameters. Despite recent articles, GAs also have limitations, since they starts from random solutions. The algorithm requires improvements to optimize it, as shown in ref. [
25]. Another example of this is shown in [
26], where it is mentioned that although they are good at optimization, the traditional GA still has some shortcomings because most of the time, they require modifications. Therefore, a New Adaptive Genetic Algorithm (NAGA) is proposed to overcome the disadvantages of the traditional one.
Metaheuristic algorithms are sometimes used in combination with other methods to achieve better performance, such as in the case of ref. [
27], where they are used for the speed control of a DC motor. Better dynamic and static performance is demonstrated thanks to the implementation of a PID controller with a Backtracking Search Algorithm (BSA) in comparison with a PSO. PID controllers are commonly implemented to drive DC motors and are tuned using different algorithms. This is the case in ref. [
28], where a PID controller was tuned through the Jaya optimization algorithm to control the speed of the motor, obtaining better responses in the transitory stage. Speed control has been the subject of many experiments, as in [
29], where the optimization of fuzzy rules using GA proved to be an effective method for rate accuracy. In other cases, the original metaheuristic algorithms are modified to optimize their performance. Modifications to the original cuckoo algorithm have been made [
30], improving the parametric estimation.
This manuscript presents a parametric estimation of the dynamic model of a DC motor. The study was carried out using the following algorithms: Steiglitz–McBride, Jaya, Genetic Algorithm (GA), and Gray Wolf Optimizer (GWO). These algorithms were used to compare the optimization of the actual responses of current and angular velocity between heuristic and metaheuristic algorithms. Simulations were carried out in MATLAB/Simulink 2010. The evaluation criteria consisted of approximation error, computational cost, convergence time, and dynamic signal behavior. Stabilization times, overshoot values, and the average value of steady-state current were also discussed. This paper is organized as follows. The
Section 2 presents the foundations of the DC motor dynamic model, the parameters that govern the development of the metaheuristic algorithms, and the conditions for simulations. The subsequent
Section 3 recalls a brief background of the selected algorithms for optimization, diagrams, and conditions for parameter estimation.
Section 4 and
Section 5 show the Results and Discussion, respectively. Here, the parameters estimated by the different algorithms are compared using different metrics. Finally, the
Section 6 concludes the present work.
4. Results
The minimum fitness calculated by each metaheuristic algorithm may vary because it is based on random values. Therefore, cross-validation is required. For this, each metaheuristic algorithm was executed ten times. The best, worst, and average are shown in
Table 4. Furthermore, the performance graphs are shown for the GWO algorithm in
Figure 8, for the Jaya algorithm in
Figure 9, and for the GA in
Figure 10.
The parameters calculated for all algorithms are shown in
Table 5 and
Table 6. Two real signals from the M2 Motor were used for this. The current signal was hardware-filtered, and the velocity signal was filtered using a Chebyshev software filter. Both signals are considered real, although there may be variations due to acquisition and filtering.
Figure 11 shows the comparison between the real current of the motor and the one estimated by the Steiglitz–McBride algorithm. In the same way,
Figure 12 shows the comparison of the real velocity of the motor against that estimated by the Steiglitz–McBride algorithm.
Figure 13 shows the comparison between the real current of the motor and the one estimated by the GWO algorithm. In the same way,
Figure 14 shows the comparison of the real velocity of the motor against that estimated by the GWO algorithm.
Figure 15 shows the comparison between the real current of the motor and the one estimated by the Jaya algorithm. In the same way,
Figure 16 shows the comparison of the real velocity of the motor against that estimated by the Jaya algorithm.
Figure 17 shows the comparison between the real current of the motor and the one estimated by the GA algorithm. In the same way,
Figure 18 shows the comparison of the real velocity of the motor with that estimated by the GA algorithm.
The computation times for each algorithm to run the 100 iterations are outlined in
Table 7. The parameters and errors estimated by the Steiglitz–McBride and GWO algorithms are shown in
Table 5 and compared against the nominal values. The parameters and errors estimated with the Jaya and GA algorithms are displayed in
Table 6 and compared against the nominal values. As another metric to compare the algorithms,
Table 8 includes the standard deviations that resulted from the estimates of each algorithm for each parameter analyzed.
These results were obtained with real current and velocity signals. Better results are expected from all algorithms with computer-generated signals. However, it is necessary to address the noise inherent in real signals for practical application. The motor model parameterization process is usually performed offline, since the parameters remain constant. However, the parameterization of a motor can allow the use of control schemes that consider the dynamics of the system and not only the error, as in the case of the PID, which can allow for more precise control.
5. Discussion
Table 7 shows the computation performance of each algorithm. In this way, the computation times are compared among themselves to see whether they influence each algorithm’s performance, since in works such as ref. [
47], it has been reported that the increase in iterations negatively affects the optimization of the solutions. This is contrary to what occurs in our research, where the increased iterations and, consequently, high computational cost improved the parametric estimates. Even though parameterization is an offline process, the response times of the algorithms are too high for the response time expected in a control system. Thus, this type of algorithm is usually avoided in processes that require a high response speed.
As can be seen in
Table 7, the Steiglitz–McBride heuristic algorithm has a lower computational cost compared to the metaheuristic algorithms. This is because the algorithm itself works through pure mathematics and is in charge of finding a unique solution. However, among the metaheuristic algorithms, a similar computational cost was observed, with a time variation of 10.7 min.
GWO has been used to estimate the parameters of a DC motor by applying an Integral Squared Error (ISE) object function [
3]. It is reported that a smaller number of iterations could be detrimental, as it causes stagnation and local optima problems. Because of this, the authors decided to implement 500 iterations per test and few search agents compared to iterations. The use of 500 iterations in our research significantly increased the computation time. GWO has also been used as a parameter tuner for a PID controller [
48], where 50 iterations and 30 search agents were applied. Taking into account the above, the configuration we decided to use in our research consisted of a smaller number of iterations and a larger number of search agents to reduce the computational cost and achieve a low error compared to the literature. This represented an estimation with an average error rate of 1.73%, which was 55% lower than that shown in [
3].
The algorithm with the highest average MSE percentage was the GA algorithm, which was 28.59%. Among all the algorithms, the algorithm that showed the lowest average percentage error was the GWO, with 0.43%. However, the average MSE percentage for Steiglitz–McBride, which is not a metaheuristic algorithm, was lower than Jaya and GA; see
Table 5 and
Table 6. Although GWO generated the best parametric estimation in this research, the Steiglitz–McBride algorithm could work as another alternative when the application requires low computational cost and a low standard deviation in the estimation of each parameter; see
Table 8. For example, in [
49], it has been shown that the Steiglitz–McBride algorithm is useful in the parametric estimation of electrical machines such as DC motors, brush DC, and brushless AC and gear machines. Also, it is frequently used as an optimizer.
The current signals estimated by GWO and Steiglitz–McBride were very similar to the nominal ones. For this reason, a comparison of the real and estimated signals obtained by the algorithms was performed with the following indicators: settling time, overshoot, and steady-state error.
The stabilization times of the current signals were as follows: 1.107 s in the real signal, 1.118 s in Steiglitz–McBride, 1.103 s in GWO, and 1.167 s in GA. However, the current signal estimated by the Jaya algorithm failed to reach the stabilization value; see
Figure 15. The current signal obtained by GWO is the closest estimate to the real motor signal; see
Figure 13.
The average current values in the steady-state zone of each algorithm were as follows: 1.1821 A for the real signal, 1.1840 A for Steiglitz–McBride, 0.0827 A for Jaya, 1.1805 A for GWO, and 1.0968 A for GA. This means that GWO and Steiglitz–McBride were the algorithms that estimated the closest current response to the real one.
The comparison of the overshoot values in the current signals were as follows: 7.8717 A for the real signal, occurring in 1.014 s; 7.6930 A for the Steiglitz–McBride algorithm, occurring in 1.016 s; 3.2511 A for Jaya, occurring in 1.004 s; 7.8738 A for GWO, occurring in 1.014 s; and, finally, 7.5736 A for GA, occurring in 1.018 s. The GWO algorithm proved to be the most accurate when discussing the maximum peaks, obtaining the same result as the real signal for time. For current, a 0.22% difference was displayed.
In [
3], the authors reported that a percentage error comparison cannot be reliable as a measure of the effectiveness of these algorithms. Since the algorithms do not show consistent solutions because they start from random solutions, performing the comparison by means of the standard deviation would be more suitable, which is a more stable metric for random data.
Table 8 shows the difference in the standard deviation between the estimated parameters of each algorithm and the nominal values. The algorithms with the most significant deviation were Jaya and GA, with Jaya being the algorithm with the greatest variation in the estimates. On the other hand, Steiglitz–McBride and GWO had less variation in the estimates, where Steiglitz–McBride was the algorithm with the lowest deviation of 37.34% with respect to GWO. This may be due to Steiglitz–McBride having consistent estimated values, because it starts from a mathematical model. In contrast, metaheuristic algorithms start from random solutions which are adjusted to find the most suitable solution during iterations.
6. Conclusions
This work performed a parametric estimation of a DC motor using a heuristic algorithm (Steiglitz–McBride) and three metaheuristic algorithms (Jaya, GWO, and GA). The MSE and standard deviation were used as statistical indicators to evaluate the performance of each algorithm as well as other values of the dynamic response, such as settling time, overshoot, and steady-state error. In this way, this work determined which algorithm provides a parametric estimation closer to the nominal parameters and real DC motor signals. The comparison between metaheuristic and heuristic algorithms is limited to parametric estimation in direct current motors. As the No Free Lunch theorem states, no algorithm is best for all applications. Another limitation is the selection of hyperparameters, because there is no way to guarantee the optimal selection of these parameters in metaheuristic algorithms. There are algorithms for selecting hyperparameters, but they do not guarantee optimal selection. Therefore, the maximum performance of a metaheuristic algorithm may not be found.
According to the aforementioned aspects, the two best-performing algorithms were Steiglitz–McBride and GWO. GWO was the best parametric estimator for this application, having the lowest MSE of all algorithms for the nominal parameters. Likewise, this algorithm had the closest responses to the real ones, with the best overshoot and settling time approximation. However, Steiglitz–McBride also obtained good results as a parametric estimator, even better than Jaya and GA, but with the lowest computational cost of all and a less variable parametric estimation.
Although GWO is a better parametric estimator, it does not mean that it is better than the Steiglitz–McBride algorithm, since implementing the mathematical model in a metaheuristic algorithm can be simpler. However, the search parameters required by metaheuristic algorithms are obtained after many tests, which generate a high computational cost. Although the Steiglitz–McBride is mathematically more complex, if appropriately implemented, it may require fewer tests and fewer corrections within the algorithm, resulting in a lower computational cost.
In this work, the heuristic algorithm produced fewer problems during tests, with lower computational cost and low variation in estimates. However, if a more precise parametric estimation is required, it is recommended to use GWO. Considering these aspects, the heuristic algorithm has more advantages in the parametric estimation of DC motors. The performance of the algorithms presented in this paper may change if different error functions are used, as well as other search parameters. In addition, performance depends on the final application of the algorithm.