Finding the Transfer Function of resonance system

8 次查看(过去 30 天)
How can I obtain a transfer function of uout(t) and uin(t) ? Is there any way to find it using MATLAB/Simulink ?
Any help would be appreciated. Thanks!

采纳的回答

Star Strider
Star Strider 2016-3-19
If you have the Symboli cMath Toolbox, the analysis of that circuit is straightforward:
syms R1 Ramp L C vi vo f t A
iR1 = (vi - vo)/R1;
iL = vo/s*L;
iC = vo*s*C;
iRa = vo/Ramp;
Node1 = iR1 == (iL + iC + iRa);
vo = solve(Node1, vo);
H = simplify(collect(vo/vi, s), 'steps',10)
Hsub = vpa(subs(H, {R1, L, C}, {60E+3, 2E-3, 5.3E-12}), 6) % Transfer Function
H =
(Ramp*s)/(C*R1*Ramp*s^2 + (R1 + Ramp)*s + L*R1*Ramp)
Hsub =
(Ramp*s)/(3.18e-7*Ramp*s^2 + (Ramp + 60000.0)*s + 120.0*Ramp)
Without knowing what ‘Ramp’ is, a plot is impossible.
Note that:
Vin = A*cos(2*pi*f*t);
so to solve for the output voltage given the input voltage, you have to take the Laplace transform of ‘Vin’ and substitute it in the ‘Node1’ equation:
Node1 = iR1 == (iL + iC + iRa);
Vins = laplace(A*cos(2*pi*f*t)); % Laplace Transform Of ‘Vin’
Node1 = subs(Node1, {R1, L, C, vi}, {60E+3, 2E-3, 5.3E-12, Vins}); % Substitute Component Values & ‘Vin’
Vout = solve(Node1, vo);
Vout = vpa(collect(Vout.vo, s), 6) % Vout
Vout =
(3.86856e25*A*Ramp*s^2)/(s*(1.52725e27*Ramp*f^2 + 9.16348e31*f^2) + 1.8327e29*Ramp*f^2 + 1.2302e19*Ramp*s^4 + s^2*(4.85665e20*Ramp*f^2 + 4.64228e27*Ramp) + s^3*(3.86856e25*Ramp + 2.32114e30))
  2 个评论
Saulius Janusauskas
编辑:Saulius Janusauskas 2016-3-19
Hey, this is amazing. What if we assume that Ramp is infinity? Would it help to solve the whole circuit ? Also, I attached some starting points that describe the circuit a bit and I need to take the Laplace transform of these equations and manipulate them algebraically to derive the required transfer function.
Star Strider
Star Strider 2016-3-19
Thank you.
First, I have to admit to a typographical error of a dropped parenthesis. My analysis is correct, but my typing wasn’t. The ‘iL’ equation should be:
iL = vo/(s*L);
That should have occurred to me when ‘L’ and ‘C’ did not end up as a product, but I didn’t catch it last night.
You have to solve the whole circuit! If you need to calculate the branch currents or node voltages later, you can solve for them by rearranging the equation or substituting in for the individual branch currents.
If ‘Ramp’ is infinity, it disappears from the circuit. It’s an open circuit with respect to ‘Ramp’, and the output is then taken across the parallel LC network. The transfer functions and ‘Vout’ then become (with the correct ‘iL’):
H =
(L*s)/(C*L*R1*s^2 + L*s + R1)
Hsub =
(0.002*s)/(6.36e-10*s^2 + 0.002*s + 60000.0)
Vout =
(3.86856e25*A*s^2)/(s^2*(4.85665e20*f^2 + 1.16057e33) + 1.52725e27*f^2*s + 4.58174e34*f^2 + 3.86856e25*s^3 + 1.2302e19*s^4)
The equations you posted are essentially the same as in my node-voltage analysis (the easiest way to do circuit analysis in my opinion, although I’ve not studied the ‘cut-set’ analysis that came along years after I completed my M.S. in Biomedical Engineering). Taking their Laplace transforms are straightforward. Your branch equations are in units of both current and voltage, while mine are in units of current only. Your equations should look the same as mine when you complete your analysis.
If you have access to the Symbolic Math Toolbox, set up your equations to correspond to the sort of analysis you’re supposed to do. It has the advantage of eliminating algebra errors, and will make the circuit analysis much less frustrating (providing you remember the parentheses).

请先登录,再进行评论。

更多回答(1 个)

Ced
Ced 2016-3-18
There are several ways of doing this, but I'm guessing you would like to actually build the circuit and get the transfer function directly, i.e. without mathematically describing the circuit yourself?
I've never done this, but if you have Simscape and the Control Systems Toolbox, I think it should work. There is a tutorial here:

类别

Help CenterFile Exchange 中查找有关 Energy Production 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by