|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
控制系统中,一阶纯滞后系统的阶跃信号曲线可以模拟为S型。我这里有一组TXT数据,同时需要做简单的数据处理。附件里面是数据,这里附程序和出现的错误。
tet=load('tet.txt');
t=tet(:,1);
yor=tet(:,2);
dy2=diff(diff(yor)); %b的二阶差分
m=min(abs(dy2));
n=find(abs(dy2)==m); %找到二阶差分绝对值最小的,就是最接近0的点
x=t(n); %?拐点横坐标
y=yor(n); %?拐点纵坐标
disp(['(',num2str(x),' , ',num2str(y),')']);
j=max(yor); %?极限
dy1=diff(yor); %一阶导
k=subs(dy1, 't', n); %拐点处的一阶导值,对应的拐点处切线斜率
b=y-k*x; %拐点处切线的截距
x1=-k/b; %用简单的数学模型的做法算出切线与X轴的交点横坐标,即纯滞后时间
x2=(j-b)/k; %切线与输出稳态点的横坐标。
x3=x2-x1; %?时间常数
num=[j];
den=[x3 1];
sys=tf(num,den,'inputdelay',x1) %带入系数并显示传递函数
运行后的错误
(9.9 , 1.9003)
??? Error using ==> horzcat
All matrices on a row in the bracketed expression must have the
same number of rows.
响应曲线本就是一组数据,这样的数据组成的曲线的拐点已经找到(9.9 , 1.9003),但是后面一段没结果了。
我现在是感觉在提取TXT数据的时候是不是有什么问题,是否是需要转值再进行处理
[ 本帖最后由 ChaChing 于 2009-6-1 21:57 编辑 ] |
|