• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-01-07
  • 语言: Matlab
  • 标签: matlab  

资源简介

matlab,船舶运动控制,速度大小,转向效果,旋回分析

资源截图

代码片段和文件信息

% 主函数,文件名为boat_PD
t_f = 200;   % 仿真事件设定
h   = 0.1;   % 采样时间
Kp = 1;      % 控制器P增益
Td = 10;     % 控制器D增益
 
% 状态x = [ u v r x y psi delta ]‘ 赋初值
x = zeros(71);   
 
N = round(t_f/h);               % 采样量
xout = zeros(N+1length(x)+2);    %输出变量赋初值

% 分支结构流程控制
for i=1:N+1
    time = (i-1)*h;                   
    r   = x(3);
    psi = x(6);
    
    psi_ref = 15*(pi/180);            % 控制目标角度
    delta = -Kp*((psi-psi_ref)+Td*r);  % PD控制器
 
    % 调用M函数文件
    [xdotU] = mariner(xdelta);       % 船舶模型
    
    % 存储数据以便后续调用
    xout(i:) = [timex‘U]; 
    
    % 数值积分,欧拉算法   
    x = x + h*xdot
end

% 从存储的数据中给变量赋值
t     = xout(:1);
u     = xout(:2); 
v     = xout(:3);          
r     = xout(:4)*180/pi;   %  pi为Matlab特殊常量,表示圆周率
x     = xout(:5);
y     = 

评论

共有 条评论