Project Control 2010

3
Control Systems and Their Components (EE391) Project: Magnetic Levitation Consider the magnetic-ball suspension system shown in the figure. The objective of the system is to keep the steel ball suspended at a fixed distance from the end of the magnet by controlling the current of the electromagnet, , using the input voltage ݒ. The dynamic equations of the system are ݐݐ ܯ ݕݐ ݐܯ ݐݕݐݒݐሻ ൌ ሺݐ ܮݐ ݐ ݔݐሻൌ ݕݐݐሻൌ ௬ሺ௧ሻ (Note that these equations are different from those provided in the notes.) The state variables are defined as: , ݔ, and ݔݐሻ ൌ ሺݐ ൌ 1Ω ൌ ball mass ൌ 1 1 ൌ 0.01 ൌ 9.8m/sec 0.5 ሺ௧ሻ The system parameters are as follows: , ܯkg, factor , ܮH, and . The equilibrium point is ݕm. Obtain expressions for , ሺ௧ሻ , and ሺ௧ሻ as a function of ݔ, ݔ, ݔ, and input ݒ. Linearize the system equations around the equilibrium point ( ݕm). Define new state variables 1 0.5 Δ ݔ, Δ ݔ, and Δ ݔas the original state variables minus the equilibrium values. That is, Δ ݔ, Δ ݔ, and Δ ݔ, ݔ ݔ ݔ ݔ ݔ ݔ

Transcript of Project Control 2010

Page 1: Project Control 2010

Control Systems and Their Components (EE391)

Project: Magnetic Levitation

Consider the magnetic-ball suspension system shown in the figure. The objective of the system is to keep the steel ball suspended at a fixed distance from the end of the magnet by controlling the current of the electromagnet, , using the input voltage . The dynamic equations of the system are

(Note that these equations are different from those provided in the notes.) The state variables are defined as:

, , and

1Ω ball mass 1 1 0.01 9.8m/sec0.5

The system parameters are as follows:

, kg, factor , H, and . The equilibrium point is m.

Obtain expressions for , , and as a function of , , , and

input . Linearize the system equations around the equilibrium point ( m). Define new state variables

1

0.5 Δ , Δ , and Δ as the original state variables minus the

equilibrium values. That is, Δ , Δ , and Δ ,

Page 2: Project Control 2010

where , , and are the equilibrium values of , , and , respectively. Note that, at equilibrium, the derivatives with respect to time are equal to zero. In the

linearized equations for , , and , use Δ , where is the value of the input at equilibrium. For reason of economy, we can install one sensor only in the system to directly measure only one of the state variables. Design a state feedback controller such that state observer has poles at -100, -101, and -102. The controlled system should have one pole at -20. The other two poles are complex conjugate and must be chosen in the region 10

g 1 , Δ , and Δ art ith a va e of 0.05. (Since Δ 0

Re0, and 10 Ima 0. Assume that Δ st w lu

0.05m, this means that the initial position of the magnetic ball is 0.05 m om the equilib

) Maximum deviation from equilibrium position should not exceed 0.055m.

) Settling time (2 percent) should be less than 0.45 sec. Settling time here is defined as

e.

. Your Matlab code should include how you get the C matrix of the system and the two

away fr rium position.) Also assume that the initial state estimation errors are all equal to -0.1 (negative 0.1). The design specifications are: (a (bthe time beyond which the absolute difference between position and the point of equilibrium is always less that a certain fraction (2% in our case) of the peak valuMatlab instruction ‘lsiminfo’ can be used to get the peak response and settling time. 1complex conjugate poles. 2. Your Matlab file should start with the following four lines:

ber:

all;

nclude these four lines, your project will not be considered.

In your code, the matrices of the linearized system should be named A, B, C, and D. d

% Name: % Section:%Seat Numclc;clear all;close

If your code does not i

3.The pole with positive imaginary part that satisfies the design constraints should be calledesired_pole, the settling time variable should be named settling_time, and the maximum deviation variable should be named maximum_deviation. Print out on the screen all these variables in the order: A, B, C, D, desired_pole, settling_time, and maximum_deviation. (Just write the name of each variable on a line alone at the end of your code.) 4. Your output should include one figure only. Draw the deviation of the position of the

states are perfectly known).

ball from equilibrium (using black color) as a function of time from 0 to 0.8 sec. On the same figure, draw the deviation of position (using red color) assuming perfect knowledgeof the state variables (i.e., the controlled system without observer and assuming that the

2

Page 3: Project Control 2010

3

s, and Regulations

y submission beyond the eadline will not

Project Deadline, Rule Deadline is May 1st (Saturday), at 5:00am. An-

d be considered. That is, the student gets zero out of 30 if the project is

al effort. No help in any form should be received from aching assistants or colleagues or any outside source.

@yahoo.com

not delivered before the deadline. -The project should be an individute -The email address for the project is: projectcontrol2010 -Do not expect to receive confirmation when you send your email. -Please CC yourself when you submit the project to get a dated copy of your own

bmission.

e of the code should be control_project_xxx, where xxx stands for the udent seat number. The seat number is written using three digits. For example, if the

d so

su -The file namstseat number is 7, xxx should be 007. If the seat number is 23, xxx should be 023. Anforth. Non-compliance with this rule or any of the project rules means that your project will not be considered and you will get an absolute zero. -The subject of the email should be the seat number only represented by three digits as xplained above. Do note add words like “student number ..” We should see a subject

e submission because you should submit your code nly once

composed of three characters only. - Please make sure of your file beforo . Multiple submissions mean that your project will not be graded and you will

ot send any other file except the .m file having your Matlab code. Any other t be considered.

ments informing us of how you have proceeded in solving e project. A code that has the values of the parameters only will be considered cheating.

get a zero. -Please do nfile will no -The code must include comth