0% found this document useful (0 votes)
115 views

DC Motor PI Controller

This document discusses designing and implementing a PI controller for speed control of a DC motor. The purpose is to build intuition about designing PI controllers for speed control in the presence of an uncertain plant model and limited control effort. The control requirements specify that the closed-loop system should have a settling time less than 1 second, peak time less than 0.5 seconds, and overshoot less than 20%.

Uploaded by

Pooja Maath
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
115 views

DC Motor PI Controller

This document discusses designing and implementing a PI controller for speed control of a DC motor. The purpose is to build intuition about designing PI controllers for speed control in the presence of an uncertain plant model and limited control effort. The control requirements specify that the closed-loop system should have a settling time less than 1 second, peak time less than 0.5 seconds, and overshoot less than 20%.

Uploaded by

Pooja Maath
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 6

z

PI CONTROL OF
DC MOTOR
z
INTRODUCTION:

In this activity we will design and implement a speed controller for a simple DC
motor. In particular, we will choose and tune the gains of a PI controller based
on the effect of the gains on the system's closed-loop poles while accounting
for the inherent uncertainty in our model.

The motor's angular speed is estimated employing a quadrature encoder. The


encoder pulses are counted on the Arduino board via two of the board's Digital
Inputs. One of the board's Digital Outputs is also employed to switch a
transistor on and off, thereby connecting and disconnecting the motor to a DC
voltage source. The Arduino board communicates the recorded data to
Simulink for visualization and analysis. The logic for estimating the motor's
speed based on encoder counts and the logic for controlling the motor's speed
is implemented within Simulink
z
PURPOSE

 The purpose of this activity is to build intuition regarding the


design and implementation of a PI controller for the speed
control of a DC motor in the presence of an array of real-world
complications. Specifically, we will consider how to design the
controller when we have an uncertain plant model and are
limited in the amount of control effort we can supply.
Furthermore, we will analyze our system's performance in the
presence of unwanted exogenous inputs, which in this case will
be a constant disturbance.
z
CONTROL REQUIREMENTS

At a fundamental level, the voltage source (V) applied to


the motor's armature is its input and the rotational speed
of the shaft $d\theta/dt$ is the output. Since in practice we
are employing a Pulse-Width Modulation (PWM) approach
to control, we will treat our control input as the PWM
signal's duty cycle (percent of the PWM period for which
the motor is "on").
z

 The control input to the motor will be determined via a PI control


law C(s) acting on the error between the commanded and
measured motor speed. Here, our closed-loop system would
have the following form where the motor's speed is the true
output, but significant processing (via H(s)) is needed to
generate the measured speed employed for feedback
z

 Since we have no means for measuring the motor's true speed, we will
rather consider our closed-loop system to have the following format
where our plant P'(s) includes the dynamics of the signal processing

 2% settling time less than 1 second,

 Peak time less than 0.50 seconds

 Maximum overshoot less than 20%

You might also like