某种机械手型机器人控制系统为单位负反馈系统,其开环传递函数为:
1) 在matlab中建立上述控制系统的数学模型;
2) 绘制机械手控制系统的根轨迹曲线;
3) 确定使闭环系统稳定时k的取值;
4) 若,要求设计超前校正装置,使校正后系统的静态误差系数,闭环主导极点满足阻尼比,自然振荡角频率,同时使用simulink**验证。
5) 绘制校正前后系统的单位阶跃响应曲线、单位脉冲响应曲线和根轨迹。
解:num=1; %分子多项式。
den=conv([0.2 1 0],[0.15 1]);分母多项式。
g=tf(num,den) %系统传递函数模型。
transfer function:
0.03 s^3 + 0.35 s^2 + s
num=1; %分子多项式。
den=conv([0.2 1 0],[0.15 1]);分母多项式。
g=tf(num,den); 系统传递函数模型。
rlocus(g) %绘制根轨迹。
>> num=1; %分子多项式。
den=conv([0.2 1 0],[0.15 1]);分母多项式。
g=tf(num,den); 开环系统传递函数。
k=0:0.05:200; %给定k的范围。
rlocus(g,k绘制给定k的范围下的根轨迹。
k,poles]=rlocfind(g) %交互式地选取根轨迹上的增益,这里用于选取其临界稳定值。
程序运行结果如图。
select a point in the graphics window
selected_point =
0.0889 + 5.9006ik =
poles =
0.0682 + 5.9109i
0.0682 - 5.9109i
通过交互式选取了系统临界稳定时的极点,并给出了临界稳定时的增益值。知系统稳定时。
0≤k≤12.4
zeta=0.2;
wn=12.0;
p=[1 2*zeta*wn wn*wn];
s=roots(p)
s1=s(1);
ng=1;dg=[0.03 0.35 1 0];
n**=polyval(ng,s1);
d**=polyval(dg,s1);
g=n**/d**;
theta=angle(g);
phic=pi-theta;
phi=angle(s1);
thetaz=(phi+phic)/2;
thetap=(phi-phic)/2;
zc=real(s1)-imag(s1)/tan(thetaz);
pc=real(s1)-imag(s1)/tan(thetap);
nc=[1 -zc];
dc=[1 -pc];
gc=tf(nc,dc)
s =-2.4000 +11.7576i
-2.4000 -11.7576i
transfer function:
s + 3.361
s + 42.85
go=tf(ng,dg);
rlocus(gc*go)
step(feedback(2.3*gc*go,1))
matlab期末作业
matlab期末作业。2.采用simulink创建一个连续系统模块,其结构框图如图1所示,其输入信号为阶跃信号,信号线添加相应注释,设置模块颜色,观察系统在阶跃信号作用下的输出响应。先将传递函数分母变形一下,模块设置如下。1 修改 stop time 为1,并将示波器的 limit data poi...
MATLAB期末设计作业
基于matlab的组合逻辑电路设计和 作者 马金龙。摘要 应用matlab语言设计数字电路的技巧和方法。本设计介绍了matlab simulink 软件的功能,叙述了相关的 数字电路 并以8线3线编码器 3线8线译码器 数据选择器等为例对其进行了 和分析。同时通过matlab汇编语言实现各逻辑电路的...
MATLAB期末大作业
1.龟兔赛跑。本题旨在可视化龟兔赛跑的过程。比赛的跑道由周长为p面积为a的矩形构成。每单位时间,乌龟沿跑道缓慢前进一步,而兔子信心满满,每次以一个固定的概率决定走或不走。如果选择走,就从2 10步中等概率选择一个步长。每个单位时间用一个循环表示。赛跑从矩形跑道左上点 0,0 开始,并沿顺时针方向进行...