mp.m

来自「Compute the overshoot of the time respon」· M 代码 · 共 81 行

M
81
字号
From: <由 Microsoft Internet Explorer 5 保存>
Subject: 
Date: Thu, 27 Mar 2008 20:18:44 +0800
MIME-Version: 1.0
Content-Type: text/html;
	charset="gb2312"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.mathworks.com/matlabcentral/files/19327/Mp.m
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; charset=3Dgb2312">
<META content=3D"MSHTML 6.00.2900.3268" name=3DGENERATOR></HEAD>
<BODY><PRE>function =
[mp_x,mp_y,mp_z,mp_phi,mp_theta,mp_yaw]=3DMp(eoutd,posd)
%Mp - PERCENT OVERSHOOT OF THE TIME RESPONSE=20
%[mp_x,mp_y,mp_z,mp_phi,mp_theta,mp_yaw] =3D Mp(eoutd,posd)
%--------output--------------------------
%mp_x-  x direction
%mp_y-  y direction
%mp_z-  z direction
%mp_phi-  phi direction
%mp_theta- theta direction
%mp_psi-  psi direction
%--------input--------------------------
%eoutd - position or velocity=20
%posd- desired position or velocity
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%Calculate Percent overshoot
format
posd=3D[1 0 1 0 0 1]';


x=3Deoutd(:,1);
if max(x(:,:))&lt;=3D1
    mp_x=3D0;
else
  mp_x=3D(max(x(:,:))-posd(1)   )*100;
end


y=3Deoutd(:,2);
if max(y(:,:))&lt;=3D1
    mp_y=3D0;
else
  mp_y=3D(max(y(:,:))-posd(2)    )*100;
end

   =20
z=3Deoutd(:,3);
if max(z(:,:))&lt;=3D1
    mp_z=3D0;
else
  mp_z=3D(max(z(:,:))-posd(3)    )*100;
end

phi=3Deoutd(:,4);
if max(phi(:,:))&lt;=3D1
    mp_phi=3D0;
else
  mp_phi=3D(max(phi(:,:))-posd(4)    )*100;
end


theta=3Deoutd(:,5);
if max(theta(:,:))&lt;=3D1
    mp_theta=3D0;
else
  mp_theta=3D(max(theta(:,:))-posd(5)    )*100;
end

psi=3Deoutd(:,6);
if max(psi(:,:))&lt;=3D1
    mp_yaw=3D0;
else
  mp_yaw=3D(max(psi(:,:))-posd(6)    )*100;
end
</PRE></BODY></HTML>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?