查看“Control Systems/Transforms”的源代码
←
Control Systems/Transforms
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
{{Control Systems/Page|System Modeling|Transfer Functions}} == Transforms == There are a number of transforms that we will be discussing throughout this book, and the reader is assumed to have at least a small prior knowledge of them. It is not the intention of this book to teach the topic of transforms to an audience that has had no previous exposure to them. However, we will include a brief refresher here to refamiliarize people who maybe cannot remember the topic perfectly. If you do not know what the '''Laplace Transform''' or the '''Fourier Transform''' are yet, it is highly recommended that you use this page as a simple guide, and look the information up on other sources. Specifically, [[w:|Wikipedia]] has lots of information on these subjects. === Transform Basics === A '''transform''' is a mathematical tool that converts an equation from one variable (or one set of variables) into a new variable (or a new set of variables). To do this, the transform must remove all instances of the first variable, the "Domain Variable", and add a new "Range Variable". Integrals are excellent choices for transforms, because the limits of the definite integral will be substituted into the domain variable, and all instances of that variable will be removed from the equation. An integral transform that converts from a domain variable ''a'' to a range variable ''b'' will typically be formatted as such: :<math>\mathcal{T}[f(a)] = F(b) = \int_C f(a)g(a,b)da</math> Where the function ''f(a)'' is the function being transformed, and ''g(a,b)'' is known as the '''kernel''' of the transform. Typically, the only difference between the various integral transforms is the kernel. == Laplace Transform == {{Wikipedia|Laplace transform}} {{MATLAB CMD|laplace|Control Systems/MATLAB}} The '''Laplace Transform''' converts an equation from the time-domain into the so-called "S-domain", or the '''Laplace domain''', or even the "Complex domain". These are all different names for the same mathematical space and they all may be used interchangeably in this book and in other texts on the subject. The Transform can only be applied under the following conditions: #The system or signal in question is analog. #The system or signal in question is Linear. #The system or signal in question is Time-Invariant. #The system or signal in question is causal. The transform is defined as such: {{eqn|Laplace Transform}} :<math>\begin{matrix}F(s) = \mathcal{L}[f(t)] = \int_0^\infty f(t) e^{-st}dt\end{matrix}</math> Laplace transform results have been tabulated extensively. More information on the Laplace transform, including a transform table can be found in [[Control Systems/Transforms Appendix|'''the Appendix''']]. If we have a linear differential equation in the time domain: :<math>\begin{matrix}y(t) = ax(t) + bx'(t) + cx''(t)\end{matrix}</math> With zero initial conditions, we can take the Laplace transform of the equation as such: :<math>\begin{matrix}Y(s) = aX(s) + bsX(s) + cs^2X(s)\end{matrix}</math> And separating, we get: :<math>\begin{matrix}Y(s) = X(s)[a + bs + cs^2]\end{matrix}</math> === Inverse Laplace Transform === {{MATLAB CMD|ilaplace|Control Systems/MATLAB}} The '''inverse Laplace Transform''' is defined as such: {{-}} {{eqn|Inverse Laplace Transform}} :<math>\begin{matrix}f(t) = \mathcal{L}^{-1} \left\{F(s)\right\} = {1 \over {2\pi i}}\int_{c-i\infty}^{c+i\infty} e^{st} F(s)\,ds\end{matrix}</math> The inverse transform converts a function from the Laplace domain back into the time domain. === Matrices and Vectors === The Laplace Transform can be used on systems of linear equations in an intuitive way. Let's say that we have a system of linear equations: :<math>\begin{matrix}y_1(t) = a_1x_1(t)\end{matrix}</math> :<math>\begin{matrix}y_2(t) = a_2x_2(t)\end{matrix}</math> We can arrange these equations into matrix form, as shown: :<math>\begin{bmatrix}y_1(t) \\ y_2(t)\end{bmatrix} = \begin{bmatrix}a_1 & 0 \\ 0 & a_2\end{bmatrix}\begin{bmatrix}x_1(t) \\x_2(t)\end{bmatrix}</math> And write this symbolically as: :<math>\mathbf{y}(t) = A\mathbf{x}(t)</math> We can take the Laplace transform of both sides: :<math>\mathcal{L}[\mathbf{y}(t)] = \mathbf{Y}(s) = \mathcal{L}[A\mathbf{x}(t)] = A\mathcal{L}[\mathbf{x}(t)] = A\mathbf{X}(s)</math> Which is the same as taking the transform of each individual equation in the system of equations. === Example: RL Circuit === {{SideBox|For more information about electric circuits, see:<br>'''[[Circuit Theory]]'''}} Here, we are going to show a common example of a first-order system, an '''RL Circuit'''. In an inductor, the relationship between the current, ''I'', and the voltage, ''V'', in the time domain is expressed as a derivative: :<math>V(t) = L\frac{dI(t)}{dt}</math> Where L is a special quantity called the "Inductance" that is a property of inductors. {{TextBox|1= [[Image:Series-RL.png|right|framed|Circuit diagram for the RL circuit example problem. V<sub>L</sub> is the voltage over the inductor, and is the quantity we are trying to find.]] Let's say that we have a 1st order RL series electric circuit. The resistor has resistance R, the inductor has inductance L, and the voltage source has input voltage V<sub>in</sub>. The system output of our circuit is the voltage over the inductor, V<sub>out</sub>. In the time domain, we have the following first-order differential equations to describe the circuit: :<math>V_{out}(t) = V_{L}(t) = L\frac{dI(t)}{dt}</math> :<math>V_{in}(t) = RI(t) + L\frac{dI(t)}{dt}</math> However, since the circuit is essentially acting as a voltage divider, we can put the output in terms of the input as follows: :<math>V_{out}(t) = \frac{L\frac{dI(t)}{dt}}{RI(t) + L \frac{dI(t)}{dt}}V_{in}(t)</math> This is a very complicated equation, and will be difficult to solve unless we employ the Laplace transform: :<math>V_{out}(s) = \frac{Ls}{R + Ls}V_{in}(s)</math> We can divide top and bottom by L, and move V<sub>in</sub> to the other side: :<math>\frac{V_{out}}{V_{in}} = \frac{s}{\frac{R}{L} + s}</math> And using a simple table look-up, we can solve this for the time-domain relationship between the circuit input and the circuit output: :<math>\frac{V_{out}}{V_{in}} = \frac{d}{dt}e^{\left(\frac{-Rt}{L}\right)}u(t)</math>}} === Partial Fraction Expansion === {{SideBox|For more information about Partial Fraction Expansion, see:<br>'''[[Calculus]]'''}} Laplace transform pairs are extensively tabulated, but frequently we have transfer functions and other equations that do not have a tabulated inverse transform. If our equation is a fraction, we can often utilize '''Partial Fraction Expansion''' (PFE) to create a set of simpler terms that will have readily available inverse transforms. This section is going to give a brief reminder about PFE, for those who have already learned the topic. This refresher will be in the form of several examples of the process, as it relates to the Laplace Transform. People who are unfamiliar with PFE are encouraged to read more about it in '''[[Calculus]]'''. === Example: Second-Order System === {{TextBox|1=If we have a given equation in the S-domain: :<math>F(s) = \frac{2s + 1}{s^2 + 3s + 2}</math> We can expand it into several smaller fractions as such: :<math>F(s) = \frac{2s + 1}{(s + 1)(s + 2)} = \frac{A}{(s + 1)} + \frac{B}{(s + 2)} = \frac{A(s+2)+B(s+1)}{(s + 1)(s + 2)}</math> This looks impossible, because we have a single equation with 3 unknowns (''s'', ''A'', ''B''), but in reality ''s'' can take any arbitrary value, and we can "plug in" values for ''s'' to solve for ''A'' and ''B'', without needing other equations. For instance, in the above equation, we can multiply through by the denominator, and cancel terms: :<math>\frac{}{}(2s + 1) = A(s + 2) + B(s + 1)</math> Now, when we set ''s → -2'', the ''A'' term disappears, and we are left with ''B → 3''. When we set ''s → -1'', we can solve for ''A → -1''. Putting these values back into our original equation, we have: :<math>F(s) = \frac{-1}{(s + 1)} + \frac{3}{(s + 2)}</math> Remember, since the Laplace transform is a linear operator, the following relationship holds true: :<math>\mathcal{L}^{-1}[F(s)] = \mathcal{L}^{-1}\left[\frac{-1}{(s + 1)} + \frac{3}{(s + 2)}\right] = \mathcal{L}^{-1}\left[\frac{-1}{s + 1}\right] + \mathcal{L}^{-1}\left[ \frac{3}{(s + 2)}\right]</math> Finding the inverse transform of these smaller terms should be an easier process then finding the inverse transform of the whole function. Partial fraction expansion is a useful, and oftentimes necessary tool for finding the inverse of an S-domain equation.}} === Example: Fourth-Order System === {{TextBox|1=If we have a given equation in the S-domain: :<math>F(s)=\frac{79s^2+916s+1000}{s(s+10)^3}</math> We can expand it into several smaller fractions as such: :<math>F(s)=\frac{A}{s}+\frac{B}{(s+10)^3}+\frac{C}{(s+10)^2}+\frac{D}{s+10}</math> :<math>F(s)=\frac{A(s+10)^3+Bs+Cs(s+10)+Ds(s+10)^2}{s(s+10)^3}</math> :<math>\frac{}{}A(s+10)^3+Bs+Cs(s+10)+Ds(s+10)^2=79s^2+916s+1000</math> Canceling terms wouldn't be enough here, we will open the brackets <small>(separated onto multiple lines)</small>: :<math>As^3+30As^2+300As+1000A+Bs+</math> :<math>Cs^2+10Cs+Ds^3+20Ds^2+100Ds</math> :<math>=79s^2+916s+1000</math> Let's compare coefficients: :''A + D = 0'' :''30A + C + 20D = 79'' :''300A + B + 10C + 100D = 916'' :''1000A = 1000'' And solving gives us: :''A = 1'' :''B = 26'' :''C = 69'' :''D = -1'' We know from the Laplace Transform table that the following relation holds: :<math>\frac{1}{(s+\alpha)^{n+1}} \to \frac{t^{n}}{n!}e^{-\alpha t} \cdot u(t) </math> We can plug in our values for ''A'', ''B'', ''C'', and ''D'' into our expansion, and try to convert it into the form above. :<math>F(s)=\frac{A}{s}+\frac{B}{(s+10)^3}+\frac{C}{(s+10)^2}+\frac{D}{s+10}</math> :<math>F(s)=A\frac{1}{s}+B\frac{1}{(s+10)^3}+C\frac{1}{(s+10)^2}+D\frac{1}{s+10}</math> :<math>F(s)=1\frac{1}{s}+26\frac{1}{(s+10)^3}+69\frac{1}{(s+10)^2}-1\frac{1}{s+10}</math> :<math>f(t)=u(t)+13t^2e^{-10t}+69te^{-10t}-e^{-10t}</math>}} === Example: Complex Roots === {{TextBox|1=Given the following transfer function: :<math>F(s)=\frac{7s+26}{s^2-80s+1681}=\frac{As+B}{s^2-80s+1681}</math> When the solution of the denominator is a complex number, we use a complex representation ''A + iB'', like ''3+i4'' as opposed to the use of a single letter (e.g. ''D'') - which is for real numbers: :''As + B = 7s + 26'' :''A = 7'' :''B = 26'' We will need to reform it into two fractions that look like this (without changing its value): :<math>e^{-\alpha t} \sin(\omega t) \cdot u(t) \ </math>→<math> { \omega \over (s+\alpha )^2 + \omega^2 } </math> :<math>e^{-\alpha t} \cos(\omega t) \cdot u(t) \ </math>→<math> { s+\alpha \over (s+\alpha )^2 + \omega^2 } </math> Let's start with the denominator (for both fractions): The roots of ''s<sup>2</sup> - 80s + 1681'' are ''40 + j9'' and ''40 - j9''. :<math>(s+a)^2+\omega^2=(s-40)^2+9^2</math>→<math>\frac{As+B}{(s-40)^2+9^2}</math> And now the numerators: :<math>\frac{As+40A-40A+B}{(s-40)^2+9^2}</math> :<math>\frac{As-40A}{(s-40)^2+9^2}+\frac{B+40A}{(s-40)^2+9^2}</math> :<math>A\frac{(s-40)}{(s-40)^2+9^2}+\frac{B+40A}{9}\frac{9}{(s-40)^2+9^2}</math> Inverse Laplace Transform: :<math>f(t)=7e^{40t}cos(9t)+34e^{40t}sin(9t)</math> }} === Example: Sixth-Order System === {{TextBox|1=Given the following transfer function: :<math>F(s)=\frac{90s^2-1110}{s(s-3)(s^2-12s+37)}=\frac{A}{s}+\frac{B}{s-3}+\frac{Cs+D}{s^2-12s+37}</math> We multiply through by the denominators to make the equation rational: :<math>A(s-3)(s^2-12s+37)+Bs(s^2-12s+37)+(Cs+D)s(s-3)</math> :<math>=90s^2-1110</math> And then we combine terms: :<math>As^3-15As^2+73As-111A+Bs^3-12Bs^2+37Bs+Cs^3-3Cs^2+Ds^2-3Ds</math> :<math>=90s^2-1110</math> Comparing coefficients: :''A + B + C = 0'' :''-15A - 12B - 3C + D = 90'' :''73A + 37B - 3D = 0'' :''-111A = -1110'' Now, we can solve for ''A'', ''B'', ''C'' and ''D'': :''A = 10'' :''B = -10'' :''C = 0'' :''D = 120'' And now for the "fitting": The roots of ''s<sup>2</sup> - 12s + 37'' are ''6 + j'' and ''6 - j'' :<math>A\frac{1}{s}+B\frac{1}{s-3}+C\frac{s}{(s-6)^2+1^2}+D\frac{1}{(s-6)^2+1^2}</math> No need to fit the fraction of ''D'', because it is complete; no need to bother fitting the fraction of ''C'', because ''C'' is equal to zero. :<math>10\frac{1}{s}-10\frac{1}{s-3}+0\frac{s}{(s-6)^2+1^2}+120\frac{1}{(s-6)^2+1^2}</math> :<math>\frac{}{}f(t)=10u(t)-10e^{3t}+120e^{6t}sin(t)</math>}} === Final Value Theorem === The '''Final Value Theorem''' allows us to determine the value of the time domain equation, as the time approaches infinity, from the S domain equation. In Control Engineering, the Final Value Theorem is used most frequently to determine the steady-state value of a system. The real part of the poles of the function must be <0. {{eqn|Final Value Theorem (Laplace)}} :<math>\lim_{t \to \infty}x(t) = \lim_{s \to 0} s X(s)</math> From our chapter on system metrics, you may recognize the value of the system at time infinity as the steady-state time of the system. The difference between the steady state value and the expected output value we remember as being the steady-state error of the system. Using the Final Value Theorem, we can find the steady-state value and the steady-state error of the system in the Complex S domain. === Example: Final Value Theorem === {{TextBox|1=Find the final value of the following polynomial: :<math>T(s) = \frac{1 + s}{1 + 2s + s^2}</math> We can apply the '''Final Value Theorem''': :<math>\lim_{s \to \ 0} s \frac{1 + s}{1 + 2s + s^2} </math> We obtain the value: :<math>\lim_{s \to \ 0} s \frac{1 + s}{1 + 2s + s^2} = 0 \cdot \frac{1+0}{1+2\cdot 0+0^2}=0 \cdot 1 = 0 </math>}} === Initial Value Theorem === Akin to the final value theorem, the '''Initial Value Theorem''' allows us to determine the initial value of the system (the value at time zero) from the S-Domain Equation. The initial value theorem is used most frequently to determine the starting conditions, or the "initial conditions" of a system. {{eqn|Initial Value Theorem (Laplace)}} :<math>x(0) = \lim_{s \to \infty} s X(s)</math> === Common Transforms === We will now show you the transforms of the three functions we have already learned about: The unit step, the unit ramp, and the unit parabola. The transform of the unit step function is given by: :<math>\mathcal{L}[u(t)] = \frac{1}{s}</math> And since the unit ramp is the integral of the unit step, we can multiply the above result times ''1/s'' to get the transform of the unit ramp: :<math>\mathcal{L}[r(t)] = \frac{1}{s^2}</math> Again, we can multiply by ''1/s'' to get the transform of the unit parabola: :<math>\mathcal{L}[p(t)] = \frac{1}{s^3}</math> == Fourier Transform == {{Wikipedia|Fourier Transform}} The '''Fourier Transform''' is very similar to the Laplace transform. The fourier transform uses the assumption that any finite time-domain signal can be broken into an infinite sum of sinusoidal (sine and cosine waves) signals. Under this assumption, the Fourier Transform converts a time-domain signal into its frequency-domain representation, as a function of the radial frequency, ω, The Fourier Transform is defined as such: {{eqn|Fourier Transform}} :<math>F(j\omega) = \mathcal{F}[f(t)] = \int_0^\infty f(t) e^{-j\omega t} dt</math> {{MATLAB CMD|fourier|Control Systems/MATLAB}} We can now show that the Fourier Transform is equivalent to the Laplace transform, when the following condition is true: :<math>\begin{matrix}s = j\omega\end{matrix}</math> Because the Laplace and Fourier Transforms are so closely related, it does not make much sense to use both transforms for all problems. This book, therefore, will concentrate on the Laplace transform for nearly all subjects, except those problems that deal directly with frequency values. For frequency problems, it makes life much easier to use the Fourier Transform representation. Like the Laplace Transform, the Fourier Transform has been extensively tabulated. Properties of the Fourier transform, in addition to a table of common transforms is available in [[Control Systems/Transforms Appendix|'''the Appendix''']]. === Inverse Fourier Transform === {{MATLAB CMD|ifourier|Control Systems/MATLAB}} The '''inverse Fourier Transform''' is defined as follows: {{-}} {{eqn|Inverse Fourier Transform}} :<math>f(t) = \mathcal{F}^{-1}\left\{F(j\omega)\right\} = \frac{1}{2\pi}\int_{-\infty}^\infty F(j\omega) e^{j\omega t} d\omega</math> This transform is nearly identical to the Fourier Transform. == Complex Plane == [[Image:S Plane.svg|right|200px]] Using the above equivalence, we can show that the Laplace transform is always equal to the Fourier Transform, if the variable ''s'' is an imaginary number. However, the Laplace transform is different if ''s'' is a real or a complex variable. As such, we generally define ''s'' to have both a real part and an imaginary part, as such: :<math>\begin{matrix}s = \sigma + j\omega\end{matrix}</math> And we can show that ''s = j''ω if σ'' = 0''. Since the variable ''s'' can be broken down into 2 independent values, it is frequently of some value to graph the variable ''s'' on its own special "S-plane". The S-plane graphs the variable σ on the horizontal axis, and the value of ''j''ω on the vertical axis. This axis arrangement is shown at right. {{-}} == Euler's Formula == There is an important result from calculus that is known as '''Euler's Formula''', or "Euler's Relation". This important formula relates the important values of ''e'', ''j'', π, 1 and 0: :<math>\begin{matrix}e^{j\pi} + 1 = 0\end{matrix}</math> However, this result is derived from the following equation, setting ω to π: {{eqn|Euler's Formula}} :<math>\begin{matrix}e^{j\omega} = \cos(\omega) + j\sin(\omega)\end{matrix}</math> This formula will be used extensively in some of the chapters of this book, so it is important to become familiar with it now. == MATLAB == The MATLAB symbolic toolbox contains functions to compute the Laplace and Fourier transforms automatically. The function '''laplace''', and the function '''fourier''' can be used to calculate the Laplace and Fourier transforms of the input functions, respectively. For instance, the code: t = sym('t'); fx = 30*t^2 + 20*t; laplace(fx) produces the output: ans = 60/s^3+20/s^2 We will discuss these functions more in [[Control Systems/MATLAB|The Appendix]]. == Further reading == *[[Digital Signal Processing/Continuous-Time Fourier Transform]] *[[Signals and Systems/Aperiodic Signals]] *[[Circuit Theory/Laplace Transform]] {{Control Systems/Nav|System Modeling|Transfer Functions}}
本页使用的模板:
模板:-
(
查看源代码
)
模板:Anchor
(
查看源代码
)
模板:BookCat
(
查看源代码
)
模板:Control Systems/Nav
(
查看源代码
)
模板:Control Systems/Page
(
查看源代码
)
模板:Eqn
(
查看源代码
)
模板:MATLAB CMD
(
查看源代码
)
模板:Mbox-side
(
查看源代码
)
模板:Sec link/relative url
(
查看源代码
)
模板:Sec link/text
(
查看源代码
)
模板:Sec link auto
(
查看源代码
)
模板:SideBox
(
查看源代码
)
模板:TextBox
(
查看源代码
)
模板:Wikipedia
(
查看源代码
)
返回至“
Control Systems/Transforms
”。
导航菜单
个人工具
登录
命名空间
页面
讨论
变体
已展开
已折叠
查看
阅读
查看源代码
查看历史
更多
已展开
已折叠
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息