【精品课设】经典PID与专家PID控制的对比与分析(二)

2024-01-19 00:50

本文主要是介绍【精品课设】经典PID与专家PID控制的对比与分析(二),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【精品课设】经典PID与专家PID控制的对比与分析(二)

目录

  • 【精品课设】经典PID与专家PID控制的对比与分析(二)
    • 1经典PID控制的设计与仿真
      • 1.1 被控对象传递函数的设计
      • 1.2 经典PID控制的仿真
    • 2专家PID控制的设计
      • 2.1 专家PID控制律的设计
      • 2.2 专家PID控制的仿真结果
    • 3仿真对比与分析


写在前面-研究背景:

 1.本代码基于MATLAB2019a版本,低版本或者不同版本可能会报错,mdl文件或slx文件打开可能会失败;
 2.如果运行时间过长,请观察设置参数是否一致。
 3.本博客附上算法运行图并详细介绍,如果转载请注明出处;
 4.如果本博客恰巧与您的研究有所关联,欢迎您的咨询qq1366196286


1经典PID控制的设计与仿真

   经典PID控制的设计与仿真可参照上一篇博客,【精品课设】经典PID与模糊PID控制的对比与分析(一)

1.1 被控对象传递函数的设计

   被控对象的传递函数为:

在这里插入图片描述

1.2 经典PID控制的仿真

Traditional_PID.m

clc,
close all;
clear all; %#ok<CLALL>
warning off;rin = 1.0; % 设定系统的参考输入量-单位阶跃响应
ts=0.001; %设置系统采样的时间--运行时间1.0ssys=tf(5.235e005,[1, 87.35, 1.047e004, 0]); %设置被控对象的传递函数dsys=c2d(sys,ts,'tustin');    %离散化处理-Z域
[num,den]=tfdata(dsys,'v');u_1=0.0;u_2=0.0;u_3=0.0; % 系统初始值的0初始化
y_1=0;y_2=0;y_3=0;x=[0,0,0]';  %中间变量的初始化
e_1=0; %对误差的初始化
ec_1=0;%% 未进行整定
kp0=0.90; % PID控制参数的大小
ki0=0.05;
kd0=0.2;% 对系统进行建模
for k=1:1:1000time(k)=k*ts;
% r(k)=sign(sin(2*pi*k*ts)); %%脉冲输入
r(k)=rin; %%单位阶跃输入u(k)=kp0*x(1)+ki0*x(2)+kd0*x(3);% if k==300     % Adding disturbance(1.0v at time 0.3s)施加干扰量
%    u(k)=u(k)+1.0;
% endy(k)=-den(2)*y_1-den(3)*y_2-den(4)*y_3+num(1)*u(k)+num(2)*u_1+num(3)*u_2+num(4)*u_3;
e(k)=r(k)-y(k);
%%%%%%%%%%%%%%Return of PID parameters%%%%%%%%%%%%%%%u_3=u_2;u_2=u_1;u_1=u(k);y_3=y_2;y_2=y_1;y_1=y(k);x(1)=e(k);            % Calculating Px(2)=e(k)-e_1;        % Calculating Dx(3)=x(3)+e(k)*ts;    % Calculating Iec_1=x(2);e_2=e_1;e_1=e(k);
end
%% 绘制响应输出
clf,
figure(1);
plot(time,r,'b',time,y,'r');
xlabel('time(s)');ylabel('rin,yout');

程序运行结果图如下:
在这里插入图片描述


2专家PID控制的设计

2.1 专家PID控制律的设计

   专家系统主要由知识库和推理机构成,专家系统的结构如图1所示。

在这里插入图片描述
图1 专家系统的结构图

   专家PID控制实质是:基于受控对象和控制规律的各种知识,无须知道被控对象的精确模型,利用专家经验来设计PID参数。专家PID控制是一种直接型专家控制器。其中,直接型专家控制器,如图2所示。

在这里插入图片描述
图2 直接型专家控制器的结构图

   具体实现过程可参照《智能控制》书中P12-P13页。

在这里插入图片描述

2.2 专家PID控制的仿真结果

在这里插入图片描述
图3 PID控制阶跃响应的输出曲线

在这里插入图片描述
图4 误差响应曲线


3仿真对比与分析

  将专家PID控制与传统PID控制的输出响应进行对比,可得:

在这里插入图片描述

  将专家PID控制、模糊PID控制与传统PID控制的输出响应进行对比,可得:

在这里插入图片描述

在这里插入图片描述


在这里插入图片描述

这篇关于【精品课设】经典PID与专家PID控制的对比与分析(二)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/620793

相关文章

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

浅析Spring如何控制Bean的加载顺序

《浅析Spring如何控制Bean的加载顺序》在大多数情况下,我们不需要手动控制Bean的加载顺序,因为Spring的IoC容器足够智能,但在某些特殊场景下,这种隐式的依赖关系可能不存在,下面我们就来... 目录核心原则:依赖驱动加载手动控制 Bean 加载顺序的方法方法 1:使用@DependsOn(最直

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

怎样通过分析GC日志来定位Java进程的内存问题

《怎样通过分析GC日志来定位Java进程的内存问题》:本文主要介绍怎样通过分析GC日志来定位Java进程的内存问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、GC 日志基础配置1. 启用详细 GC 日志2. 不同收集器的日志格式二、关键指标与分析维度1.

MySQL中的表连接原理分析

《MySQL中的表连接原理分析》:本文主要介绍MySQL中的表连接原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、环境3、表连接原理【1】驱动表和被驱动表【2】内连接【3】外连接【4编程】嵌套循环连接【5】join buffer4、总结1、背景

python中Hash使用场景分析

《python中Hash使用场景分析》Python的hash()函数用于获取对象哈希值,常用于字典和集合,不可变类型可哈希,可变类型不可,常见算法包括除法、乘法、平方取中和随机数哈希,各有优缺点,需根... 目录python中的 Hash除法哈希算法乘法哈希算法平方取中法随机数哈希算法小结在Python中,

Java Stream的distinct去重原理分析

《JavaStream的distinct去重原理分析》Javastream中的distinct方法用于去除流中的重复元素,它返回一个包含过滤后唯一元素的新流,该方法会根据元素的hashcode和eq... 目录一、distinct 的基础用法与核心特性二、distinct 的底层实现原理1. 顺序流中的去重

Spring如何使用注解@DependsOn控制Bean加载顺序

《Spring如何使用注解@DependsOn控制Bean加载顺序》:本文主要介绍Spring如何使用注解@DependsOn控制Bean加载顺序,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录1.javascript 前言2. 代码实现总结1. 前言默认情况下,Spring加载Bean的顺

关于MyISAM和InnoDB对比分析

《关于MyISAM和InnoDB对比分析》:本文主要介绍关于MyISAM和InnoDB对比分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录开篇:从交通规则看存储引擎选择理解存储引擎的基本概念技术原理对比1. 事务支持:ACID的守护者2. 锁机制:并发控制的艺

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间