首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Matlab Lsim MIMO系统误差

Matlab Lsim MIMO系统误差
EN

Stack Overflow用户
提问于 2015-11-18 16:43:33
回答 2查看 716关注 0票数 1

我正在遵循飞行动力学的课程,我想在四个输入中的一个绘制一个步长输入( 0.01745)的响应。我有四个输入: u,w,q,theta

但是,我得到了一个错误:使用DynamicSystem/lsim (第98行)模拟对特定输入信号的响应时,输入数据U必须是一个矩阵,其行数与时间向量T中的样本数相同,列数必须与输入通道相同。

在我的工作空间里,我满足了这些要求.当我使用u=ones(大小(T))时,我的代码确实有效,但这给出了在所有4个通道u、w、q、θ上的步骤输入.你能帮帮我吗?谢谢:)

代码语言:javascript
复制
    clear all; clc;


A=[ 0.00501 0.00464 -72.90 -31.34;
    -0.08570 -0.545 309 -7.4;
    0.00185 -0.00767 -0.395 0.00132;
    0 0 1 0];

B=[5.63 -23.8 -4.51576 0]'; 

C=[1 0 0 0;
    0 1 0 0;
    0 0 1 0;
    0 0 0 1];

D=0;

sys=ss(A,B,C,D);
t=0:0.1:1000;

%definieer initial conditions: 
u0=0;
w0=0;
q0=0;
theta0=0;
x0=[u0 w0 q0 theta0]';

u1=zeros(size(t));         %u
u2=zeros(size(t));         %w
u3=zeros(size(t));         %q
u4=zeros(size(t))+0.01745; %theta0
u=[u1;u2;u3;u4]'; **% this line gives the error**

%u=zeros(size(t)); **%this works but gives step input at all 4 inputs...**

figure(1)
subplot(1,2,1)
lsim(sys,u,t,x0)
xlabel('time');
ylabel('theta (rad)                                  q (rad/s)                            w (ft/s)                               u (ft/s)');
subplot(1,2,2)
pzmap(sys)
title('pole-zere map A-7A corsair II, ex 6.1');

damp(sys)%geeft eigenvalue,damping,freq
[U,D]=eig(A);
eigenvector=U;

disp('----------------------------------------')
disp('magnitude, welke mode is het sterkst voor (u,w,q,theta)')
disp('   |short-period mode |    phugoid mode|')
EigenvecMagnitude=abs(U);
EigenvecMagnitude
disp('----------------------------------------')
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-11-18 17:51:09

ss的文档说明了矩阵与以下系统模型有关:

代码语言:javascript
复制
dx/dt = Ax(t) + Bu(t)
 y(t) = Cx(t) + Du(t)

特别是,B "--是Nx by Nu实矩阵或复值矩阵“,其中Nx是状态维(在你的例子中是4),Nu是控制维,根据B=[5.63 -23.8 -4.51576 0]';是1。

但是,当您尝试使用代码中显示的矩阵u=[u1;u2;u3;u4]';作为控件输入时,这将失败,因为它的维度不像预期的那样(4而不是1)。在您的代码中,控件输入的长度(对应于t)似乎是可以的。

总之,您至少需要修改B (请注意,我不是特定系统的专家--您自己最清楚这一点!)才能让这件事成功。也许你需要Bnew = diag(B)或者类似的东西?

票数 0
EN

Stack Overflow用户

发布于 2022-03-09 17:09:50

我们考虑的是MIMO2x2,我们希望通过第一个天线发射符号x1。

可以给符号x1分配两个发射功率,如x1发送槽信道、h11是p11。

和x1发送的槽信道h21是p21 ( p11和p21的值必须相同或不同)在这里输入图像描述

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33785648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档