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

CTMS Example - Motor Position Control Modeling

This document describes modeling the position control of a DC motor. It presents the physical setup of a DC motor, the system equations relating the motor's torque, back EMF and rotational velocity. It also lists design requirements for controlling the motor's position such as settling time and overshoot. Finally, it shows representing the motor's transfer function and state space model in MATLAB to analyze the open-loop step response.

Uploaded by

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

CTMS Example - Motor Position Control Modeling

This document describes modeling the position control of a DC motor. It presents the physical setup of a DC motor, the system equations relating the motor's torque, back EMF and rotational velocity. It also lists design requirements for controlling the motor's position such as settling time and overshoot. Finally, it shows representing the motor's transfer function and state space model in MATLAB to analyze the open-loop step response.

Uploaded by

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

5/21/2019 CTMS Example: Motor Position Control Modeling

Example: Modeling DC Motor Position


Physical Setup
System Equations
Design Requirements
MATLAB Representation and Open-Loop Response

Physical Setup
A common actuator in control systems is the DC motor. It directly
provides rotary motion and, coupled with wheels or drums and
cables, can provide transitional motion. The electric circuit of the
armature and the free body diagram of the rotor are shown in the
following figure:

For this example, we will assume the following values for the physical parameters. These values were
derived by experiment from an actual motor in Carnegie Mellon's undergraduate controls lab.

* moment of inertia of the rotor (J) = 3.2284E-6 kg.m^2/s^2


* damping ratio of the mechanical system (b) = 3.5077E-6 Nms
* electromotive force constant (K=Ke=Kt) = 0.0274 Nm/Amp
* electric resistance (R) = 4 ohm
* electric inductance (L) = 2.75E-6 H
* input (V): Source Voltage
* output (theta): position of shaft
* The rotor and shaft are assumed to be rigid

System Equations
The motor torque, T, is related to the armature current, i, by a constant factor Kt. The back emf, e, is related
to the rotational velocity by the following equations:

In SI units (which we will use), Kt (armature constant) is equal to Ke (motor constant).

https://lost-contact.mit.edu/afs/umich.edu/class/ctms/Public/html/examples/motor2/motor.htm 1/4
5/21/2019 CTMS Example: Motor Position Control Modeling

From the figure above we can write the following equations based on Newton's law combined with
Kirchhoff's law:

1. Transfer Function
Using Laplace Transforms the above equations can be expressed in terms of s.

By eliminating I(s) we can get the following transfer function, where the rotating speed is the output and the
voltage is an input.

However during this example we will be looking at the position, as being the output. We can obtain the
position by integrating Theta Dot, therefore we just need to divide the transfer function by s.

2. State Space

These equations can also be represented in state-space form. If we choose motor position, motor speed, and
armature current as our state variab, we can write the equations as follows:

Design requirements
We will want to be able to position the motor very precisely, thus the steady-state error of the motor position
should be zero. We will also want the steady-state error due to a disturbance, to be zero as well. The other
performance requirement is that the motor reaches its final position very quickly. In this case, we want it to
have a settling time of 40ms. We also want to have an overshoot smaller than 16%.

If we simulate the reference input (R) by a unit step input, then the motor speed output should have:

Settling time less than 40 milliseconds


Overshoot less than 16%
No steady-state error
No steady-state error due to a disturbance

https://lost-contact.mit.edu/afs/umich.edu/class/ctms/Public/html/examples/motor2/motor.htm 2/4
5/21/2019 CTMS Example: Motor Position Control Modeling

MATLAB representation and open-loop response


1. Transfer Function

We can put the transfer function into MATLAB by defining the numerator and denominator as vectors:

Create a new m-file and enter the following commands:


J=3.2284E-6;
b=3.5077E-6;
K=0.0274;
R=4;
L=2.75E-6;
num=K;
den=[(J*L) ((J*R)+(L*b)) ((b*R)+K^2) 0];
motor=tf(num,den);

Now let's see how the original open-loop system performs. Add the following command onto the end of the
m-file and run it in the MATLAB command window:
step(motor,0:0.001:0.2)

You should get the following plot:

From the plot we see that when 1 volt is applied to the system, the motor position changes by 6 radians, six
times greater than our desired position. For a 1 volt step input the motor should spin through 1 radian. Also,
the motor doesn't reach a steady state which does not satisfy our design criteria

2. State Space

We can put the state space equations into MATLAB by defining the system's matrices as follows:
J=3.2284E-6;
b=3.5077E-6;
K=0.0274;
R=4;
L=2.75E-6;

A=[0 1 0
0 -b/J K/J
0 -K/L -R/L];
B=[0 ; 0 ; 1/L];
C=[1 0 0];

https://lost-contact.mit.edu/afs/umich.edu/class/ctms/Public/html/examples/motor2/motor.htm 3/4
5/21/2019 CTMS Example: Motor Position Control Modeling

D=[0];
motor=ss(A,B,C,D);

The step response is obtained using the command

step(motor)

Modeling Examples
Cruise Control | Motor Speed | Motor Position | Bus Suspension | Inverted Pendulum | Pitch Controller
| Ball and Beam

Motor Position Examples


Modeling | PID | Root Locus | Frequency Response | State Space | Digital Control:RL| Simulink

Tutorials
MATLAB Basics | MATLAB Modeling | PID Control | Root Locus | Frequency Response | State Space |
Digital Control | Simulink Basics | Simulink Modeling | Examples

https://lost-contact.mit.edu/afs/umich.edu/class/ctms/Public/html/examples/motor2/motor.htm 4/4

You might also like