资源简介
曾经做的一个模糊控制的船舶航向仿真,能显示模糊控制输入输出三维立体图。
代码片段和文件信息
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Fuzzy Model Reference Learning Control (FMRLC) System for a Tanker Ship
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% By: Kevin Passino
% Version: 4/26/01
%
% Notes: This program has evolved over time and uses programming
% ideas of Andrew Kwong Jeff Layne and Brian Klinehoffer.
%
% This program simulates an FMRLC for a tanker
% ship. It has a fuzzy controller with two inputs the error
% in the ship heading (e) and the change in that error (c). The output
% of the fuzzy controller is the rudder input (delta). The FMRLC
% adjusts the fuzzy controller to try to get tanker ship heading (psi)
% to track the output of a “reference model“ (psi_m) that has as an
% input the reference input heading (psi_r). We simulate the tanker
% as a continuous time system that is controlled by an FMRLC that
% is implemented on a digital computer with a sampling interval of T=1 sec.
%
% This program can be used to illustrate:
% - How to code an FMRLC (for two inputs and one output
% for the controller and “fuzzy inverse model“).
% - How to tune the input and output gains of an FMRLC.
% - How changes in plant conditions (“ballast“ and “full“ and speed)
% can affect performance and how the FMRLC can adapt to improve
% performance when there are such changes.
% - How the effects of sensor noise (heading sensor noise) and plant
% disturbances (wind hitting the side of the ship) can be reduced
% over the case of non-adaptive fuzzy control.
% - The shape of the nonlinearity synthesized by the FMRLC
% by plotting the input-output map of the fuzzy controller at the
% end of the simulation (and providing the output membership function
% centers).
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear % Clear all variables in memory
% Initialize ship parameters
ell=350; % Length of the ship (in meters)
abar=1; % Parameters for nonlinearity
bbar=1;
% Define the reference model (we use a first order transfer function
% k_r/(s+a_r)):
a_r=1/150;
k_r=1/150;
% Initialize parameters for the fuzzy controller
nume=11; % Number of input membership functions for the e
% universe of discourse (can change this but must also
% change some variables below if you make such a change)
numc=11; % Number of input membership functions for the c
% universe of discourse (can change this but must also
% change some variables below if you make such a change)
% Next we define the scaling gains for tuning membership functions for
% universes of discourse for e change in e (what we call c) and
% delta. These are g1 g2 and g0 respectively
% These can be tuned to try to improve the performance.
% First guess:
g1=1/pi;g2=100;g0=8*pi/18; % Chosen since:
% g1: The heading error is at most 180 deg (pi rad)
% g2: Just a guess - that ship heading will change at most
% by 0.01
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 36259 2010-10-20 10:14 fmrlc_tanker.m
----------- --------- ---------- ----- ----
36259 1
- 上一篇:Matlab调用Cplex教程
- 下一篇:平凸透镜光线追迹
相关资源
- 模糊c均值聚类FCM算法的matlab代码
- 遗传算法改进的模糊C-均值聚类MATLA
- 一维集算法解距离模糊
- 余查查表法解距离模糊
- Matlab模糊聚类算法实现
- fsvm的matlab实现
- 基于MATLAB的模糊控制表计算程序.m
- matlab神经网络、模糊和LQR控制一级、
- 图像复原、模糊的matlab代码
- 模糊聚类函数的matlab代码
- 模糊自适应控制MATLAB实现
- 雷达信号matlab仿真
- 模糊聚类MATLAB程序88422
- 模糊综合评价方法的软件实现
- 模糊PID控制和专家PID控制matlab仿真程
- matlab基于模糊集的图像增强方法
- 自己修改过的倒立摆代码
- 模糊神经网络matlab源程序
- 基于粒子群优化算法的模糊c聚类源码
-
模糊PID设计+simuli
nk仿真 - 模糊神经网络matlab代码
- matlab simulation for radar systerm design
- matlabs神经网络-基于模糊神经网络的水
- 线性调频信号模糊函数仿真
- 模糊聚类matlab源程序代码
-
简单的模糊pid报告文末带simuli
nk仿真 -
模糊自整定pid控制器的simuli
nk仿真 - 模糊聚类算法matlab
-
模糊PID控制simuli
nk模型 - FLICM图像分割算法
评论
共有 条评论