Expt 3 Transfer Function
Expt 3 Transfer Function
Function
Laboratory Experiment No.___
Performance Objectives
A. Determine the transfer function of the rational system
B. Use MatLab to derive the output signal equation in differential equation
C. Ploy and analyze system response
D. Determine the pole, zero locations and dc gain of the mechanical system
Materials and Equipment
Matlab Software
Personal Computer
Concept
a. In MatLab polynomials can be manipulated using symbolic expressions. The constructor is
“syms”
Example: To declare a polynomial Y = s2 + 4s + 3 (variable is “s”)
>> syms s
>> Y = s^2 + 4*s + 3
The first derivative of Y is:
>> diff(Y)
b. System transfer function can be created using the tf() function. First, create the numerator
and denominator polynomials expressing them as row vectors.
Example: s + 1
H = ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ can be created as follows:
s3 + 2s2 + 3s + 2
>>numerator = [1 1] → s + 1
>>denominator = [1 2 3 2] → s3 + 2s3 + 3s + 2
c. Zeros are values of ‘s’ that would make the system transfer function zero. Or the roots of
the numerator of the transfer function that are not common with the poles.
d. Poles are values of ‘s’ that would make the system transfer function infinite. Or the roots of
the denominator of the transfer function that are not common with the zeros.
e. System response of the system can be view using the plot() function.
Objective A and B. Determine the transfer function by computation given the mechanical rotational
system:
T(t) = m(d2θ/dt) + c(dθ/dt) + kθ
T(s) = s2 θ(s) + 2s θ(s) + 2 θ(s)
T(s) = θ(s) (s2 + 2s + 2)
Θ(s)/T(s) = 1/(s2 + 2s + 2)
Transfer function: θ(s)/τ(s) = _____________________________
Objective C.
1. Run MatLab Software.
2. Using symbolic expression constructor “syms” construct “s” as a symbolic expression >>syms s
3. Write the transfer function, save the result to variable TF
>>TF = 0.2 / (s^2 + 2*s + 2)
output: TF = ____________________________________
4. Use function pretty() to display a more understandable equation >>pretty(TF)
output: _________________________________________
5. If the input torque is 10 u(t) what is τ(s) ? __________________
Time
10u(t) unit step = 10 1
s
Frequency
6. Store the value of input torque to MatLab variable TORQUE
7. The output of the system is TF x Input. Store the output signal equation to
OUTPUT
>>OUTPUT = TF * TORQUE
output: OUTPUT = _______________________
8. The inverse laplace of an equation can be solve using ilaplace() function. Store the inverse laplace of
OUTPUT OUTPUT_TIME variable
>>OUTPUT_TIME = ilaplace(OUTPUT)
output: OUTPUT_TIME = ___________________________
9. To plot the equation in time is to substitute values of “t”. Create a series of time values from 0 to 15
seconds incremented by 0.1 using row vector declaration.
>>t = [0 : 0.1 : 15]
10. Substitute the values of “t” to OUTPUT_TIME equation using subs() function. This will create 150
values or points. Store the answer to variable RESULT
>>RESULT = subs(OUTPUT_TIME, t)
Tip: So as not to display the 150 values add a semicolon (;) at the end of the statement.
11. Plot the values of OUTPUT_TIME using plot(x,y) function.
>>plot(t, RESULT)
Draw the response curve:
What is the maximum amplitude? _______________
What is the approximate transient time? ________________
What is the steady state value/amplitude? _____________________
Objective D. Determine poles, zeros and dc gain
1. Declare the numerator and denominator as a row vector:
>>numerator = [0 2]
>>denominator = [1 2 2]
2. Create the transfer function using tf()
>>SYS = tf(numerator, denominator)
3. Solve for the pole location of the transfer function
>>pole(SYS)
ans:
4. Solve for the zero location of the transfer function
>>zero(SYS)
ans:
5. Using tf2zp() function pole, zero and dc gain can also be found.
>> [z,p,g] = tf2zp(num,den)
ans: z =
p =
g =
Conclusion