第一步:在主窗口中输入sfundemos,或者点击Simulink->User-Defined Functions->S-Function Examples,即可出现如图1所示的界面,用红色框圈出来的部分就是S函数
第二步:在MATLAB主窗口下建立一个Simulink形式的.slx文件,起名为robot.slx
第三步掘芦:Matlab为了用户使用方便,有一个S函数的模告樱板sfuntmpl.m,一般来说,我们仅需要在sfuntmpl.m的基袜散丛础上进行修改即可。在MATLAB命令行中输入edit sfuntmpl 即可出现模板函数的内容,
matalb求得结果与手动计算得结果是等并轮价的。1. 手动计算得结果
f1 = x0*cos(8*t)*exp(-6*t) + sin(8*t)*exp(-6*t)*(v0+6*x0)/8
f1 = expand(f1, 'ArithmeticOnly', true)
2. matalb求得结果
f2 = x0*exp(-6*t)*(cos(8*t) + sin(8*t)*((v0 + 12*x0)/(8*x0) - 3/4))
f2 = expand(f2, '绝谈信ArithmeticOnly'侍灶, true)
3.
simplify(f1-f2)
ans = 0
第一题:syms s t
u = sym('heaviside(t)'差猜丛) % u = syms('Dirac(t)') % heaviside(t) 阶跃函数虚樱u; Dirac冲击函数
LF = laplace(t*exp(-3*t)*u)
第二题:
% 方法1
syms s t
ft = ilaplace((s^3+5*s^2+9*s+7)/(s^2+3*s+2))
% ft = δ'(t) + 2δ(t) + (-e^(-2t) + 2e^(-t))*u(t)
% 方兆颤法2
A = [1 5 9 7]
B = [1 3 2]
[k p c] = residue(A, B)
% F(s) = s + 2 - 1/(s + 2) + 2 / (s + 1)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)