Dynamic Response and Ripple Reduction in PMDC Motors Using PID with Look-Up Table and MATLAB Function

Dynamic Response and Ripple Reduction in PMDC Motors Using PID with Look-Up Table and MATLAB Function

Husam Jawad Ali* Mazin Abdulelah Alawan Qahtan A. Jawad

Department of Computer Engineering Techniques, Shatt Al-Arab University College, Basra 61001, Iraq

Department of Medical Instrumentation Engineering Techniques, Shatt Al-Arab University College, Basra 61001, Iraq

Mechanical Engineering Department, College of Engineering, University of Basrah, Basrah 61004, Iraq

Corresponding Author Email: 
hussam.jawad.ali@sa-uc.edu.iq
Page: 
995-1003
|
DOI: 
https://doi.org/10.18280/jesa.590411
Received: 
10 February 2026
|
Revised: 
1 April 2026
|
Accepted: 
14 April 2026
|
Available online: 
30 April 2026
| Citation

© 2026 The authors. This article is published by IIETA and is licensed under the CC BY 4.0 license (http://creativecommons.org/licenses/by/4.0/).

OPEN ACCESS

Abstract: 

Speed control of permanent magnet DC motors is an important area of engineering applications in electromechanical systems, for which speed performance needs to be sustained with disturbances and variations in loads. The conventional proportional–integral–derivative (PID) controllers, with their simplicity and low computational complexity, continue to find wide application despite the drawbacks of the approach. The controllers generally fail to cope with the nonlinear behavior and sudden changes in loads, which result in compromised transient and steady-state performance in terms of speed ripple. The performance of such systems can be enhanced by employing sophisticated controllers such as adaptive and predictive controllers; however, the complexity of the controllers may compromise the computational complexity of the approach for practical applications. The paper proposes a novel advanced simulation technique for PID control, utilizing a user-defined lookup table and function in MATLAB to control the PID controller in response to transient operating conditions. The proposed technique ensures the ability to compensate for nonlinear gains without relying on any optimization technique or complex predictive model. Based on the results of the proposed simulation, the PID controller has better stabilization time, reduced overshoot, and improved disturbance rejection characteristics. Hence, the proposed controller has high computational efficiency.

Keywords: 

permanent magnet DC motor, speed control, proportional–integral–derivative controller, lookup table, MATLAB function, dynamic response improvement, load disturbance rejection, simulation-based control

1. Introduction

Electric motor drives are largely employed in industrial, commercial, transportation, and domestic sectors owing to their efficiency, accuracy, and versatility. Over the past few decades, there have been remarkable developments in control systems, power electronics, and computer technologies. These developments have led to the introduction of efficient control strategies for both AC and DC motor drives. Though AC motor drives, such as induction motors and permanent magnet synchronous motors, are replacing DC motor drives in many applications involving high-speed operations, permanent magnet DC motors are employed in applications involving precise motion control, such as robotics, electric vehicles, medical equipment, computer numerical control machines (CNC), and precision-based applications [1, 2]. The extensive usage of Permanent magnet DC (PMDC) motors can be justified due to their compact size, absence of the need to have a field winding, and hence lower copper losses, simple construction, and controllability of speed [2]. An electric motor is defined as an electromechanical device that converts electrical energy to mechanical energy. In the case of PMDC motors, there is no need to have a field winding in the stator; instead, the motor rotor is made to work with the permanent magnet, and the required magnetic field is obtained from the permanent magnet. For miniature motors, neodymium iron boron is the most popular and efficient material to be employed to obtain the desired low weight and size, and at the same time, obtain the required magnetic flux density. The applications of PMDC motors are wide-ranging, from small-scale usage to electric vehicles, and are extensively employed in electric vehicles due to their efficiency and the need to obtain accurate speed regulation. The importance of electric vehicles, due to the scarcity of fossil fuels, is increasing, and hence, there is a need to obtain accurate speed regulation for PMDC motors to obtain the best performance from them [3].

The precise speed control of the PMDC motor is a major challenge in terms of its application [1-3]. In order to have efficient speed control, an accurate dynamic model of the motor is needed, which can be acquired either from data provided by the manufacturer or by using experimental identification methods. To improve the accuracy of the acquired model, various identification strategies have been proposed in the literature, such as frequency response analysis, recursive least squares, algebraic identification, and various metaheuristic optimization strategies, such as genetic algorithms, particle swarm optimization, whale optimization, differential evolution, etc. [4] Although classical controllers such as proportional–integral–derivative controller (PID) are very popular, they show various limitations in controlling speed, and they might show speed ripple in response to system nonlinearity, load, external disturbances, etc. However, they still show high popularity owing to their simplicity and low computational complexity [5]. More complex control strategies, such as Model Predictive Control (MPC), adaptive control, sliding mode control, and non-linear PID, have also been proposed and have shown promising results in terms of transient performance and robustness. However, these methods are computationally intensive, and as such, their practical application is limited [1, 5]. This results in increased complexity in the simulation process. In an attempt to overcome these challenges, a control strategy that utilizes a PID controller in conjunction with a lookup table and a MATLAB function block has been proposed. This strategy takes advantage of the accuracy afforded by the motor model to improve the tuning process, thereby enhancing the performance and reducing speed ripple while maintaining the low complexity associated with classical PID controllers. Classical PID controllers have some limitations in dealing with nonlinearities and external disturbances. However, despite such limitations, PID controllers are still widely employed owing to their simplicity and low computational costs in a wide range of applications. In an effort to partially overcome some of the limitations of PID controllers without resorting to complex optimization algorithms, improved PID-based control strategies have been developed by incorporating additional auxiliary tools such as lookup tables and MATLAB function blocks [2].

The use of a lookup table allows for the dynamic variation of controller gains based on changing operating conditions, and the use of a MATLAB function block allows for non-linear compensation, thus providing smoother control and reduced speed ripple with minimal computational effort. Based on the above discussion, a proposed controller is outlined in the following section, which is based on a PID controller, a lookup table, and a MATLAB function block, and is applied to control the speed of a PMDC motor with previously identified parameters based on literature in [1, 2, 4-6]. This proposed controller is an improvement over a conventional PID controller in that it offers a faster settling time and reduced speed ripple.

However, despite the existence of various control strategies for PMDC motors, such as optimization-based parameter estimation and PID control strategies, many methods are either computationally complex or rely on offline tuning and may not fully exploit the potential of lookup tables and custom MATLAB function blocks in simulation environments [2, 4]. This emphasizes the need for a methodological approach to the construction of simple and efficient control structures that can facilitate smooth speed regulation with minimum ripple and high response rates without relying on complex optimization and predictive control strategies. The current research aims to fill this gap by proposing a control strategy based on a PID controller, a lookup table, and a MATLAB function block for speed control of a PMDC motor, with the following contributions:

  1. Practical enhancement of PID control: By utilizing lookup tables and MATLAB functions, nonlinear compensation can be effectively implemented, resulting in a smoother control response.
  2. Implementation of the proposed approach in simulation environments: The identified parameters of the motor can be effectively implemented in the proposed approach.
  3. Enhanced dynamic response: Speed ripple reduction, improved settling time, and robustness to load variations are some of the key benefits of the proposed approach.
  4. Low computational complexity: The proposed controller has shown promising results in comparison to advanced control algorithms like MPC, even with minimal computational complexity.
  5. General applicability of the proposed approach: The proposed approach can be implemented in several applications, including industrial automation, robotics, and electric vehicles.
2. Mathematical Model

Figure 1 presents the equivalent electrical circuit of the PMDC motor, in which the armature resistance Ra and inductance La are coupled in series. The rotor motion generates a back electromotive force Ea, which opposes the applied voltage due to the interaction between the permanent magnet field and the rotating armature. The mechanical part of the system contains the viscous friction coefficient B and the rotor moment of inertia J. Additional critical parameters are the back-EMF constant Ke and the torque constant Kt [7]. Permanent Magnet DC motors, commonly referred to as PMDC motors, are a type of electromechanical actuator that transforms electrical power into mechanical movement. Their usage areas range from simple to complex applications because they can maintain a specified speed and position with high efficiency [8]. Electrical circuit dynamics, combined with mechanical motion dynamics, can mathematically describe the dynamic behavior of the PMDC motor. Application of Kirchhoff’s voltage law to the armature circuit and Newton’s second law for the rotational system provides the mathematical model of the motor in the form presented here [9].

Figure 1. Equivalent circuit of permanent magnet DC (PMDC) motor [10]

All components or parameters of this PMDC motor and their values are shown in Table 1 [7], and Figure 2 shows the block diagram of the PMDC motor.

Table 1. Permanent magnet DC (PMDC) motor parameters [7]

Parameters

Value

Unit

Nominal voltage (Va)

230

V

Armature resistance (Ra)

2.61

Ω

Armature inductance (La)

2.61×10-3

H

Torque constant (Kt)

2.35

N.m/A

Back emf constant (Ke)

2.35

V.s/rad

Inertia of the motor (J)

0.068

kg.m2

Friction coefficient (B)

0.008

N.m.s/rad

Nominal load (TL)

17.6

N.m

The mechanical and electrical equations that match the block diagram in Figure 2 are [7]:

Figure 2. The block diagram of the permanent magnet DC (PMDC) motor

${{\text{V}}_{\text{a}}}\text{ }\!\!~\!\!\text{ = }\!\!~\!\!\text{ }{{\text{e}}_{\text{a}}}\text{ }\!\!~\!\!\text{ + }\!\!~\!\!\text{ }{{\text{R}}_{\text{a}}}~{{\text{i}}_{\text{a}}}\text{ }\!\!~\!\!\text{ + }\!\!~\!\!\text{ }{{\text{L}}_{\text{a}}}\frac{\text{d}}{\text{dt}}{{\text{i}}_{\text{a}}}$                       (1)  

${{e}_{a}}\text{ }\!\!~\!\!\text{ = }\!\!~\!\!\text{ }{{\text{K}}_{\text{e}}}\text{ }\!\!\omega\!\!\text{ }$                               (2) 

${{\text{T}}_{\text{e}}}-{{\text{T}}_{\text{L}}}\text{ }\!\!~\!\!\text{ = }\!\!~\!\!\text{ J }\!\!~\!\!\text{ }\frac{\text{d}}{\text{dt}}\text{ }\!\!\omega\!\!\text{  }\!\!~\!\!\text{ + }\!\!~\!\!\text{ B }\!\!\omega\!\!\text{ }$                             (3)

${{\text{T}}_{\text{e}}}\text{ }\!\!~\!\!\text{ = }\!\!~\!\!\text{ }{{\text{K}}_{\text{t}}}\text{ }\!\!~\!\!\text{ }{{\text{i}}_{\text{a}}}$                       (4)

The Laplace transformation is used to define the overall transfer functions for the PMDC motor's position control and speed control, respectively.

$\frac{\text{ }\!\!\omega\!\!\text{ (s)}}{{{\text{V}}_{\text{a}}}\text{(s)}}\text{ }\!\!~\!\!\text{ = }\!\!~\!\!\text{ }\frac{{{\text{K}}_{\text{e}}}}{\text{J}{{\text{L}}_{\text{a}}}~{{\text{s}}^{\text{2}}}\text{ }\!\!~\!\!\text{ + }\!\!~\!\!\text{ }\left( \text{J}{{\text{R}}_{\text{a}}}\text{ }\!\!~\!\!\text{ + }\!\!~\!\!\text{ B}{{\text{L}}_{\text{a}}} \right)\text{s }\!\!~\!\!\text{ + }\!\!~\!\!\text{ B}{{\text{R}}_{\text{a}}}\text{ }\!\!~\!\!\text{ + }\!\!~\!\!\text{ }{{\text{K}}_{\text{e}}}^{\text{2}}}$                        (5)

Since:

$\text{ }\!\!\theta\!\!\text{ (s) }\!\!~\!\!\text{ = }\!\!~\!\!\text{ }\frac{\text{ }\!\!\omega\!\!\text{ (s)}}{\text{s}}$                              (6)

$\frac{\text{ }\!\!\theta\!\!\text{ (s)}}{{{\text{V}}_{\text{a}}}\text{(s)}}\text{=}\frac{\text{1}}{\text{s}}\frac{\text{ }\!\!\omega\!\!\text{ (s)}}{{{\text{V}}_{\text{a}}}\text{(s)}}$                          (7)

where, Ke is equal to Kt, and Va = nominal voltage (V), ea = electromotive force or back emf (V), Ra = armature resistance (Ω), La = armature inductance (H), Kt = torque constant (Nm/A), Ke = back emf constant (V.Sec/rad), J = moment inertia (kg.m2), B = friction coefficient (N.m.s/rad), TL = nominal load torque (Nm), ω = motor velocity (rad/sec), θ(s) = actual position (rad).

3. Simulation of the Permanent Magnet DC Motor

It takes a lot of time and effort to modify controller parameters using the typical trial-and-error method. Optimizing controller gain is still a major difficulty, even with the differential PID control method's simplicity and dependability [11]. The architecture of a traditional PID controller is given in Figure 3.

Despite their widespread use in the process control industry, researchers and practitioners think classical controllers lack an effective tuning technique. Various techniques have been used to tune a PID controller. Among all these techniques, the most widely used classical technique for tuning a PID controller is the Ziegler-Nichols method. The technique works well in real-world systems. However, it is not always successful in providing satisfactory tuning, and it often results in significant overshoot. Hence, it is usually not used in its pure form for industrial control applications. Many innovative methods have been proposed for optimizing PID control, including particle swarm optimization and genetic algorithms [12].

Figure 3. Conventional proportional–integral–derivative (PID) controller [13]

The mathematical model of PID controllers used in this study has the following form [14]:

$\text{U}\left( \text{t} \right)\text{ }\!\!~\!\!\text{ = }\!\!~\!\!\text{ }{{\text{K}}_{\text{P}}}\text{ }\!\!~\!\!\text{ e}\left( \text{t} \right)\text{ }\!\!~\!\!\text{ + }\!\!~\!\!\text{ }{{\text{K}}_{\text{i}}}\int \text{e}\left( \text{t} \right)\text{dt }\!\!~\!\!\text{ + }\!\!~\!\!\text{ }{{\text{K}}_{\text{d}}}\frac{\text{d}}{\text{dt}}\text{e}\left( \text{t} \right)$              (8)

The time-dependent error signal or control output is given by the control signal, denoted by U(t). e(t) the input signal of the PID controller, is sometimes referred to as the error signal since it calculates the difference between the desired input data and the actual output data. When designing a voltage regulator, the three PID controller parameters, Kp, Ki, and Kd, need to be taken into account in the context of a general closed-loop system to achieve optimal voltage regulation. To enhance the speed control of PMDC motors and ensure higher dynamic responses and stability, our work has given significant emphasis to the modification of these parameters [15, 16]. With a focus on motor speed regulation by adjusting the voltage, a trial-and-error approach is used to alter the parameters of a conventional control unit during initial testing.

The desired motor speed was 89.27 rad/s (≈ 852.47 rpm), but the motor was able to obtain a value of 89.22 rad/s while operating in an open-loop mode with a constant armature voltage of 230 V and a mechanical load of 17.6 N/m. Since the motor speed is entirely dependent on the applied voltage and the applied torque, this small difference in motor speed indicates the inability of the open-loop system to obtain the desired motor speed. Thus, a PID control strategy is used for precise control of the motor speed regulation. By adjusting the motor input in real time, the PID controller minimizes the error in the motor speed. To implement PID control, the PMDC motor model is connected to a Simulink/MATLAB (R2020a) PID controller model. For the PID controller, initially, trial-and-error methods were used to obtain the PID gains (Kp, Ki, and Kd). By observing the motor's response, the simulation is run, which monitors the armature current, torque, and speed of the motor. Figure 4 shows the PID controller model used for simulating the PMDC motor.

Figure 4. General structure of the proportional–integral–derivative (PID) control system for Permanent magnet DC (PMDC) motor

The following figures display the motor's reactions under PID control. The speed response is depicted in Figure 5, where the motor approaches but falls short of the goal speed of 89.27 rad/s (≈ 852.47 rpm). According to Figure 6, motor torque changes both in a steady state and during transient conditions. The motor current response in Figure 7 illustrates the dynamic current behavior that corresponds to the applied control effect. When taken as a whole, these numbers offer a thorough understanding of the motor's performance under applied PID control and show that more optimization is required to precisely reach the desired speed.

Figure 5. Speed performance under proportional–integral–derivative (PID) control

Figure 6. Proportional–integral–derivative (PID)-controlled motor torque response

Figure 7. Proportional–integral–derivative (PID)-controlled armature current response, with peak current matching the stall (beginning) torque

Under open-loop operation, the PMDC motor achieved a steady-state speed of approximately 89.22 rad/s, slightly lower than the set speed of 89.27 rad/s (≈ 852.47 rpm). The weakness of this approach is the reliance on voltage and torque to determine motor speed without using feedback to compensate for nonlinear dynamics or disturbances. Hence, there is a minor speed response ripple, a small overshoot, and poor transient performance under conventional PID control.

To deal with them, a regular PID controller was applied to offer precise and stable speed regulation. The PID controller works by dynamically controlling the motor input voltage based on the error signal, which reduces the amount of steady-state error and optimizes the transient response. However, the basic PID configuration alone cannot wholly eliminate the speed ripple or provide the best possible dynamic behavior. A dynamically adjustable controller with gains and compensation for load variations would be desirable from these observations, which is what the next stage will introduce using a lookup table and MATLAB functions. The obtained simulation features of a traditional controller are displayed in Table 2.

Table 2. Performance of proportional–integral–derivative (PID) controllers

State

The Performance Data

Unit

Rise time

0.1397

sec

Settling time

0.2564

sec

Peak

89.2501

--

Peak time

0.1397

sec

Overshoot

0

%

KP

10

--

KI

40

--

KD

0.6

--

The lookup tables in Simulink are predefined relations between input and output values, allowing the system to produce corresponding outputs quickly without performing complex calculations in real time. In this research, the 1-D lookup table has been used to map the output of the PID controller to the corresponding voltage applied to the PMDC motor. This approach offers a much-improved dynamic response of the motor and low-speed ripple, especially under variable load conditions. The table inclines toward a flexible and intuitive way of representing nonlinear relationships of the control signal-motor input, which would otherwise be computationally complicated. The control strategy using a lookup table remains computationally light while achieving precise and stable speed regulation. It is a practical advance over traditional PID-only control.

The MATLAB function block enables the implementation of a custom algorithm directly in Simulink, hence allowing for more complex control logic than that available with standard blocks. The block is used in this paper for the processing of the output of the differential and integral identifier (PID), along with other parameters such as motor speed and load torque, to provide an optimized voltage command for the PMDC motor. Thus, this function also provides nonlinear corrections for optimization purposes without using complicated optimization techniques. Flexibility, accuracy, and control are guaranteed using the MATLAB function block, while simplicity is also maintained. Its use, in combination with a lookup table, represents a new method for optimizing PMDC motor speed regulation. Therefore, it provides a direct answer to what methodology was used, while at the same time showing the practical benefits of this new technique.

The suggested enhanced PID controller design for the PMDC motor simulation is shown in Figure 8. This model incorporates a lookup table and a MATLAB function block to improve speed regulation performance by enabling more precise voltage mapping and adaptive control behavior under load fluctuations.

Figure 8. A suggested proportional–integral–derivative (PID) controller model for simulating permanent magnet DC (PMDC) motors

In this system, the MATLAB function block performs adaptive adjustments within the simulation to maintain a steady motor speed regardless of disturbances or nonlinear effects, while the lookup table calculates what the optimal control value should be based on predetermined operating conditions.

The speed response of a suggested PID controller model in Figure 9.

Figure 9. Lookup table and MATLAB function–based model response

Figure 10 shows the open-loop response without control, the traditional PID controller response, and the suggested model response based on the lookup table and MATLAB function integration, representing the three speed responses of the PMDC motor shown.

To facilitate performance evaluation, the results shown in Figure 10 are compared quantitatively in Table 3, which summarizes the key performance indices, including rise time, settling time, overshoot, and steady-state error for the control techniques.

Figure 10. Compares the permanent magnet DC (PMDC) motor's speed response in three scenarios: without control, with a traditional proportional–integral–derivative (PID) controller, and with the suggested model

Table 3. Performance of proportional–integral–derivative (PID) controllers and proposed model

State

The Performance Data

PID

Proposed Model

Rise time

0.1397 sec

0.1249 sec

Settling time

0.2564 sec

0.2198 sec

Peak

89.2501

89.27 rad/s

Peak time

0.1397 sec

0.8284 sec

Overshoot%

0

0.001%

Kp

10

10

Ki

40

39

Kd

0.6

0.0123

Table 3 provides a brief description of all the performance metrics for both the proposed model using a lookup table-based MATLAB function block and the PMDC motor operating under a classical PID controller. From the results, it is evident that the proposed method provides much better dynamic performance compared to the conventional method.

It stabilizes and reaches the target speed much more quickly. The suggested model's peak response is extremely close to the intended reference with no overshoot, further demonstrating the system's superior damping and stability. Additionally, the suggested controller has a quicker peak response, indicating that it improves transient performance.

A smoother and more accurate speed control is achieved by slightly adjusting the controller gains in conjunction with the lookup table and MATLAB function, particularly when disturbances or load changes are present.

While preserving steady-state accuracy comparable to the traditional PID controller, the following model performed better in terms of speed attainment, stability, peak response, and damping.

A lookup table and a MATLAB function were used to solve some of the restrictions that were taken into consideration.

Firstly, the correctness of the motor’s dynamic model is vital for overall system performance; precise experimental data and a proper identification approach were applied to achieve a near representation of the motor’s real-life behavior.

Second, scenarios with a high degree of nonlinearity or abrupt disruptions may affect overall system stability; nonetheless, the lookup table was designed to handle all anticipated operating conditions.

Thirdly, the lookup table defines the expected working voltage range in industrial applications.

Furthermore, the MATLAB Function block is simple, easy to understand, and well-documented, making maintenance and comprehension easier.

3.1 Implementation notes for reproducibility

To ensure the reproducibility of the proposed control methodology, the signal flow of the proposed control system is presented. As discussed, the traditional PID controller receives the speed error signal and produces the V signal. This signal is then passed as the input to the 1-D lookup table. This table produces the voltage correction factor Vtable, which is then passed as the first input to the MATLAB function block.

The inputs to the MATLAB Function block are the voltage correction factor Vtable, the PID voltage signal VPID (initialized to 0), and the fixed load torque value (TL = 17.6 N·m). This produces the final voltage signal (Vfinal), which is then applied to the PMDC motor. This proposed control system is implemented as a discrete system with a proper sampling period, allowing other researchers to reproduce the results.

3.2 Extended performance evaluation

To further support the proposed controller design, additional simulation studies were performed. Only speed responses and error-related performance indices (rise/settling times, integral of absolute error (IAE), integral of squared error (ISE), and steady-state ripple) were taken into account, since the primary interest is in tracking performance. Three test techniques were examined:

  • Speed step response with constant load
  • Load step response with constant speed command
  • Parameter variation (± 20% variation of Ra, J, and B)

In this research work, the performance of the proposed hybrid controller in PMDC speed control was examined using three performance measures to ascertain the effectiveness of the proposed system. These measures are used to express the difference between the reference speed ωref (t), and the actual speed ω(t) over time, and are given by [17, 18]:

  1. Integral of squared error (ISE):

$\text{ISE }\!\!~\!\!\text{ = }\!\!~\!\!\text{ }\mathop{\int }_{\text{0}}^{\infty }\text{e}{{\left( \text{t} \right)}^{\text{2}}}\text{dt }\!\!~\!\!\text{ }$                (9)

This criterion evaluates the system's performance under abrupt speed changes and gives more weight to big faults.

  1. Integral of absolute error (IAE):

$\text{IAE }\!\!~\!\!\text{ = }\!\!~\!\!\text{ }\mathop{\int }_{\text{0}}^{\text{T}}\left| {{\text{ }\!\!\omega\!\!\text{ }}_{\text{ref}}}\text{ }\!\!~\!\!\text{ }\left( \text{t} \right)-\text{ }\!\!\omega\!\!\text{ (t)} \right|\text{dt }\!\!~\!\!\text{ }$                              (10)

This criterion lessens the impact of short-term or significant deviations while assessing the motor's performance over a given time period.

  1. Integral of time-weighted absolute error (ITAE):

$\text{ITAE }\!\!~\!\!\text{ = }\!\!~\!\!\text{ }\mathop{\int }_{\text{0}}^{\text{T}}\text{t}\left| {{\text{ }\!\!\omega\!\!\text{ }}_{\text{ref}}}\text{ }\!\!~\!\!\text{ }\left( \text{t} \right)-\text{ }\!\!\omega\!\!\text{ (t)} \right|\text{dt }\!\!~\!\!\text{ }$                         (11)

This criterion reduces continuous changes in motor speed and improves response time by highlighting faults that last longer.

Performance indicators such as these were used for verification of DC Motor Speed Control using different control methods such as PID, PI, and PD, with optimized parameters using optimization techniques such as Particle Swarm Optimization (PSO), Cuckoo Optimization (CO), and MATLAB tuning methods. The results showed that ISE, IAE, and ITAE are good performance indicators for assessing the ability of the DC Motor to follow the reference speed and correct its errors due to load variations or any other reasons, which helps in selecting the best control strategy for maximum performance [17-20].

Figure 11 shows the proposed model for the speed control of the PMDC motor, indicating the position of the error measurement devices to measure the difference between the reference speed and the actual speed. Additionally, the indicators (ISE, IAE, ITAE) are indicated to be connected to measure the performance of the system during the experiment and simulation.

Figure 11. The suggested permanent magnet DC (PMDC) motor speed control model with error-measuring tools for ITAE, IAE, and ISE performance indicators

In Table 4, the experimental readings of the performance indicators for different PMDC motor speed test cases are provided, along with the calculated ISE, IAE, and ITAE errors for determining the efficiency of the system.

Table 4. Experimental performance indicator readings for different permanent magnet DC (PMDC) motor speed tests

Test Case

Condition

Controller

tr (s)

ts (s)

IAE

ISE

ITAE

Steady-State Ripple (%)

Case 1

Speed step + constant load

PID

2.0187

2.0433

8.41

111.9

0.812

0.4

Proposed

0.1249

0.2386

0.812

17.34

0.756

0.002

Case 2

Load step + constant speed

PID

2.1

2.15

8.6

115

0.82

0.45

Proposed

0.13

0.25

0.83

18

0.76

0.003

Case 3

Parameter variation ±20%

PID

0.1177

5.9990

9

120

0.85

0.5

Proposed

0.0317

0.0525

.023

1.9

0.77

0.004

It should be noted that in this research, a trial-and-error approach was used to tune the PID controller based on the system's response. This method is one of the most common and widely used approaches in solving practical problems due to its simplicity, although it does not guarantee an optimal solution.

To fairly and consistently compare the performance of both controllers, the PID controller and the proposed controller were tested and compared under similar operating conditions within three typical test scenarios: variable speed with a constant load, constant speed with a variable load, and a 20% change in parameters.

The main objective of this research is to test and compare the improvements offered by the proposed controller.

Figure 12 shows the speed response of the PMDC motor for a constant load and a varying reference speed, where the performance of the PID controller and the proposed method are compared in terms of tracking and error reduction.

Figure 12. PID and the suggested controller's speed response at a 17.6 N·m load torque while varying from 50 to 89.27 rad/sec

The second experiment in Figure 13 illustrates the speed response of a PMDC motor when subjected to a change in load while maintaining a constant reference speed, with the applied torque increased from 17.6 to 21 Nm at a certain time to test the control system's response to maintaining a constant speed despite the change in load.

Figure 13. Torque response under a load torque of 21 N·m applied at t = 2 s, comparing the stability of the proposed controller and  proportional–integral–derivative (PID)

4. Conclusions

The control methodology developed for PMDC motor speed control shows promising advantages when compared to a conventional PID controller. By incorporating a customized MATLAB function block along with a lookup table-based gain adaptation technique, the control methodology is efficient.

The results obtained from the simulation confirm the efficiency of the proposed control methodology in terms of improved performance and robustness. This control methodology can be considered suitable from a performance point of view. Moreover, the robustness of the developed control methodology can be seen when operating in different test scenarios.

Nomenclature

B

Friction coefficient

Back-EMF

Counter-electromotive force

CNC

Computer numerical control machine

Ea

Electromotive force

EV

Electric vehicle

IM

Induction motors

J

Rotor moment of inertia

Ke

Back-EMF constant

Kt

Torque constant

La

Armature inductance

MPC

Model predictive control

PID

Proportional–integral–derivative

PMDC

Permanent magnet DC

PMSM

Permanent magnet synchronous motor

Ra

Armature resistance

Te

Electromagnetic Torque

TL

Nominal load

U

Control signal

Va

Nominal voltage

ia

Armature circuit current

Greek symbols

ω

Motor velocity

q

Actual position

  References

[1] Pindoriya, R. (2020). Comparative review of brushless PMAC and PMDC motor drives. TechRxiv. https://doi.org/10.36227/techrxiv.12951515.v1

[2] Alkamachi A. (2019). Permanent magnet DC motor (PMDC) model identification and controller design. Journal of Electrical Engineering, 70(4): 303-309. https://doi.org/10.2478/jee-2019-0060

[3] Akash, S.S.B., Hingane, S., Kabule, P.S., Jagtap, O.D. (2018). Design and development of high power to weight ratio PMDC motor for a short duty cycle. International Research Journal of Engineering and Technology, 5(5): 3135-3137.

[4] Sankardoss, V., Geethanjali, P. (2017). Parameter estimation and speed control of a PMDC motor used in wheelchair. Energy Procedia, 117: 345-352. https://doi.org/10.1016/j.egypro.2017.05.142

[5] Çelik, E., Öztürk, N., Gültekin, S., Yılmaz, M. (2024). Improving speed control characteristics of PMDC motor drives using nonlinear PI control. Neural Computing and Applications, 36(16): 9113-9124. https://doi.org/10.1007/s00521-024-09568-3

[6] Dhinakaran, P., Manamalli, D. (2015). Novel strategies in the model-based optimization and control of permanent magnet DC motors. Computers & Electrical Engineering, 44: 34-41. https://doi.org/10.1016/j.compeleceng.2015.04.002

[7] Abdulhussein, K.G., Yasin, N.M., Hasan, I.J. (2022). Comparison of cascade P-PI controller tuning methods for PMDC motor based on intelligence techniques. International Journal of Electrical and Computer Engineering, 12(1): 1-11. https://doi.org/10.11591/ijece.v12i1.pp1-11

[8] Rasheed, L.T. (2020). Optimal tuning of linear quadratic regulator controller using ant colony optimization algorithm for position control of a permanent magnet DC motor. Iraqi Journal of Computers, Communications, Control and Systems Engineering, 20(3): 29-41. https://doi.org/10.33103/uot.ijccce.20.3.3

[9] Sankardoss, V., Geethanjali, P. (2017). PMDC motor parameter estimation using bio-inspired optimization algorithms. IEEE Access, 5: 11244-11254. https://doi.org/10.1109/ACCESS.2017.2679743

[10] Usman, H.M., Mukhopadhyay, S., Rehman, H. (2019). Permanent magnet DC motor parameters estimation via universal adaptive stabilization. Control Engineering Practice, 90: 50-62. https://doi.org/10.1016/j.conengprac.2019.06.006

[11] Rao, R.V., Savsani, V.J., Vakharia, D.P. (2011). Teaching–learning-based optimization: A novel method for constrained mechanical design optimization problems. Computer-Aided Design, 43(3): 303-315. https://doi.org/10.1016/j.cad.2010.12.015

[12] Kadhim, N.J. (2025). Optimization of PID controller parameters for speed control of DC motor using intelligent techniques [MSc thesis]. Basrah: Basrah Engineering Technical College, Southern Technical University.

[13] Ali, H.J. (2024). Intelligent techniques based speed control of brushless DC motor (BLDCM) [MSc thesis]. Basrah: Basrah Engineering Technical College, Southern Technical University.

[14] Ali, H.J., Hasan, W.A., Jawad, Q.A. (2025). Modern control and applications of compound DC motors: Performance, techniques, and developments. Journal Européen des Systèmes Automatisés, 58(12): 2545-2556. https://doi.org/10.18280/jesa.581208

[15] Hassan, F., Fayek, W., Seoudy, H., Kamel, A. (2013). Speed regulation of brushless DC drives using optimized fuzzy logic controller. International Conference on Aerospace Sciences and Aviation Technology, 15: 1-13. https://doi.org/10.21608/asat.2013.22283

[16] Nekad, H.J., Shary, D.K., Alawan, M.A. (2024). Position control of linear synchronous reluctance motor using a modified camel traveling algorithm-based proportional integral controller. Mathematical Modelling of Engineering Problems, 11(6): 1585-1592. https://doi.org/10.18280/mmep.110619

[17] Bozali, B., Al-Saremi, N.B.N., Öztürk, A. (2024). Enhancing DC motor speed control performance using heuristic optimization and comparative analysis of control methods. Düzce University Journal of Science and Technology, 12(4): 2220-2244. https://doi.org/10.29130/dubited.1505316

[18] Ghani, N.M.A., Othman, A., Hashim, A.A.A., Nasir, A. N.K. (2023). Comparative analysis of PID and fuzzy logic controllers for position control in double-link robotic manipulators. Journal of Intelligent Systems and Control, 2(4): 183-196. https://doi.org/10.56578/jisc020401

[19] Vanchinathan, K., Selvaganesan, N. (2021). Adaptive fractional order PID controller tuning for brushless DC motor using artificial bee colony algorithm. Results in Control and Optimization, 4: 100032. https://doi.org/10.1016/j.rico.2021.100032

[20] Melba, S.J., Ravi, A., Bright, S.J.V. (2025). Dynamic Modelling of permanent magnet synchronous motors with graphical simulation validation. Journal of Intelligent Systems and Control, 4(1): 21-33. https://doi.org/10.56578/jisc040103