基于模糊控制和PID控制的自主车辆速度跟踪控制(含MATLAB仿真程序)

合集下载

基于MATLAB的模糊PID控制系统的设计与仿真

基于MATLAB的模糊PID控制系统的设计与仿真

工 程 应 用 体 现 了 其在 控 制 方 面 的 “ 智能 ” 的核 心 ,是根 据输 入模 糊量 ,由模 糊规 则 由 性 。模 糊P I D 控 制就 是 利 用 当前 的 控 制偏 差 模 糊 规 则 完 成 模 糊 推 理 来 求 解 模 糊 关 系方 和 偏差 的变 化 率 ,结合 被控 过程 动态 特性 的 程 , 并 获 得 模 糊 控 制 量 的部 分 。常 用 的成 绩 。本 文 介 绍 的 难 以建 立准 确模 型 的复 杂对 象更有 优 势 ,而 是基 于 传 统 的P I D 控 制和 现 代 控 制理 论 中 的 且 大 多数复 杂 的工 业控 制都 可 以用 经 验模 型 智 能 模 糊 控 制 相 结 合 的一 种 控 制 方 法 , 用 来 进行 仿真 ,因此 控制 对象 选择 实 际控 制 中 M A T L A B & S i m u l i n k 软 件 和 模糊 逻 辑工 具 箱 设 常见 的非线 性经 验 模型 。 2 ) 基 本 论 域 划 分 : 在 进 行 输 入 模 糊 化 计控 制 系统结 构模 型 ,并 通过 仿真 结 果证 明
图1 P I D 模糊控制 结构 图
a m d a n i 法 、L a e s e n 法和T s u k a m o t o 法。 : 变 化 ,根 据 控 制 要 求 或 目标 函 数 ,建 立 用 M i f —t h e n 产 生 式 语 句 规 则 所 表 达 的调 整 模 5 ) 解 模 糊 : 模 糊 推 理 的 结 果 是 模 糊 型 ,对 P I D 控制 器 的三 个参 数进 行调 整 。 量 ,而 实 际用于 控制 的 是清 晰量 ,解模 糊就
P I D 模 糊 控 制 是 一个 两输 入 三 输 出 的结 是将 模 糊推 理 的结果 转化 成精 确 的控制 量 。 构 ,如 图i 所示 。 常用 的解 模 糊方 法有 最大 隶属度 法 、 中位数 3 . 利 用M A T L A B & S i m u l i n k 软件 进 行控 制 法和 重 心法 。

基于模糊PID的汽车巡航控制系统设计

基于模糊PID的汽车巡航控制系统设计

题目:基于模糊PID的汽车巡航控制系统设计基于模糊PID的汽车巡航控制系统设计摘要汽车巡航控制系统是一种辅助驾驶系统,它不但可以减轻驾驶员的负担,还可以提高驾车的舒适性.汽车巡航控制系统具有非线性、时变不确定性,并受到外界扰动、复杂的运行工况等影响。

本文介绍了一种基于模糊PID控制算法的汽车巡航控制系统。

本文对汽巡航控制系统进行了简要的分析,将模糊PID控制方法作为其控制方案,对现有的PID控制进行完善和优化,并设计出系统的模糊控制器。

以轿车为对象,分析了汽车在行驶过程中的驱动力及受到的各种阻力和干扰力,并建立起汽车纵向动力学模型。

利用MATLAB建立了系统的仿真模型,利用MATLAB软件中的模糊逻辑工具箱对系统的设计进行仿真,验证系统设计的可行性,并对汽车巡航控制系统进行了仿真和分析.由仿真结果可知,模糊PID控制方法能使系统的超调减小、反应速度加快、控制效果良好,是一种适用于汽车巡航控制系统的控制方法.关键词:定速巡航控制系统;MATLAB;模糊PID;仿真The Design of Controller of Automobile Cruise Control SystemBased On Fuzzy-PIDABSTRACTAutomobile cruise control system,which could not only relieve the drivers burden,but also could make the driving comfortable.it is a kind of accessorial driving system,Cruise control system has high nonlinearity and non-determinacy with time changing.And CCS,which is effected by some factors such as external load disturbers and complicated running modes,A kind of CCS which is based on Fuzzy PID control,it is introduced in the thesis.Analyzing the cruise control system briefly, Fuzzy—PID is confirmed as the control method of the system,improved and optimized the PID control. Then the Fuzzy PID controller is designed,As the object is a car,the thesis analyzes the resistances and disturbs while the car's running,And the automobile dynamics model is given,After setting up the model by means of MATLAB,use the Fuzzy Logic Toolbox in MATLAB software to simulate the design of the system,to verify the feasibility of the system design, the result is analyzed,From the result,we may know that Fuzzy PID control could make the overshoot smaller and the response time shorter,The effect of Fuzzy PID method is given.SO it is a suitable method for CCS.Keywords:cruise control system;MATLAB;Fuzzy PID;simulation目录1 绪论 (1)1.1 课题的意义 (1)1。

基于MATLAB的自适应模糊PID控制系统计算机仿真

基于MATLAB的自适应模糊PID控制系统计算机仿真
储岳中K 陶永华 (安徽工业大学 电气信息学院, 安徽 马鞍山 %/C..%)
摘要: 在分析自适应模糊控制及 HIJ 参数变化对系统性能影响的基础上 K 提出在动态过程中对 HIJ 参数进行整定。 仿真研究表 明 K 控制质量得到了提高 。 关键词: 模糊 HIJ 控制; 自适应; 仿真 E19F1G; 中图分类号: 9HCB&$ B 文献标识码: 1
&
E19F1G 简介
E19F1G 软件于 &B?/ 年由美国的 E)82W",X7 公司推出 K 该软件使用简单、方便 。自 &BBC 年以来 K E)82W",X7 公司相继推出了 E19F1G /$ . 、 E19F1G /$ %、 E19F1GD$ %、 E19F1G <$ . 等版本。本文在 E19Z F1G<$ . 基础上 K 介绍如何利用 RIE4FI’[ 和 \4]]^ 工具箱构造某模糊控制系统的结构框图和进行仿真研 究的方法及步骤。 &$ & 模糊逻辑工具箱 模糊逻辑工具箱 @ 0+PP-#";3:8""#Q"_ A 提供了模糊逻辑控制器及系统设计的各种途径。工具箱提供了生成 和编辑模糊推理系统 @ \IR A 常用的工具函数 K 如 *6W037, )OO5),, )OOM0, )OO,+##6, 768037, W,386037 等 K 它包括了产
!"#$ %& ()*+),-
’"$ & %../
安徽工业大学学报 ($ "0 1*2+3 4*356,738- "0 96:2*"#";-
第 %& 卷 第 & 期 %../ 年 &月

基于MATLAB的模糊PID-Smith控制器的设计与仿真

基于MATLAB的模糊PID-Smith控制器的设计与仿真

图 l
模 糊 PI 控 制 系 统 框 图 D
整定规则如下 :
a 当 l 大 时 , . J e较 为使 系 统 具 有 较 好 的 跟 踪 性 能 , 取 应 较 大 的 K 与 较 小 的 K , 时 为 避 免 系 统 响 应 出 现 较 大 同
1 模 糊 P D控 制 器 的 设 计 I
纯 滞 后 、 糊 控 制 鲁 棒 性 较 强 以 及 P D 控 制 稳 态 精 度 高 这 三 者 的优 点 , 出 了一 种 模 糊 P 【 S t 模 I 提 I _ mi ) h控 制 器 的 设 计 方 法 , 将 其 应 用 于 电机 网络 控 制 系统 中 。MA A 并 TL B仿 真 结 果 表 明 , 的 控 制 方 案 与 传 统 的 S t 新 mi h控 制 器 、 u z- I F zy P D
P D控 制 是 一 种 典 型 的 传 统 反 馈 控 制 器 , 有 结 构 简 I 具 单 、 棒 性 好 和 易 于 实 现 等 优 点 , 广 泛 地 应 用 于 工 业 过 鲁 被
程 控 制 。在 网 络 化 控 制 系 统 中 , 统 P D 控 制 器 的 参 数 传 I
的 调 整 对 被 控 对 象 的 数 学 模 型 依 赖 较 大 , 且 控 制 过 程 中 并
L —— 吉 . 疆两泵 . . . ! .

结合 传 统 的 S t 制 对 时 滞 过 程 控 制 的 有 效 性 , 出 了 mi h控 提
模 糊 P D-mi I S t h控 制方 案 , 对 直 流 伺 服 电 机 控 制 系 统 进 并 行 实 例仿 真 分 析 , 明 了 该 方 案 的有 效 性 。 证
3桂 林 理 工大 学 信 息科 学与 工程 学 院 , 西 桂 林 5 10 ) . 广 4 0 4

基于模糊控制的汽车自适应巡航系统设计

基于模糊控制的汽车自适应巡航系统设计
speed and a small overshoot,which effectively satisfies the control requirements of the car cruise system
and improves the accuracy and stability of the cruise process.
列问题,不断增加的汽车数量所带来的交通拥堵、能
身参数会发生变化,易对车辆动力性能和整车控制
源消耗、空气污染等方面的问题日益突出,提升汽车
器操作功能产生不利影响,进而影响驾驶体验甚至
的电动化及智能化水平作为解决包括降低能源消
导致控制器失效,因此设计与研究巡航系统模型与
耗、确保行车过程安全稳定、减轻驾驶负担等问题的
巡航控制及高速行驶中的定速控制(引导车辆大于
航系统及跟车巡航控制过程具有复杂性、非线性及
安全车距或前方无引导车辆时以预设车速行驶)及
不确定性的特点,该文以分层控制原理为依据,对车
距离控制(前方有车辆行驶于安全车距内且其速度
辆 巡 航 控 制 系 统(CCS,恒 速 行 驶 系 统)主 要 构 成 为
-171-
《电子设计工程》2021 年第 9 期
2.2.2
输出语言变量
对输出语言变量进行定义(共包含 3 个),即比
航和跟车巡航间自适应切换,通过模糊 PID 控制确
保系统性能的实现 [13]。
例 系 数 调 校 参 数(由 Kp′表 示)、积 分 系 数 调 校 参 数
3.1
Ti′、Td′对应的语言值均可定义为{零(Z),小(S),中(M),
在对控制系统模糊规则进行制定时,需对包括
车加速度、
车间距及速度误差等)为依据对当前车辆所

基于模糊控制的自动驾驶系统设计与实现

基于模糊控制的自动驾驶系统设计与实现

基于模糊控制的自动驾驶系统设计与实现自动驾驶技术是当前科技领域的热门研究领域之一。

基于模糊控制的自动驾驶系统设计与实现是实现自动驾驶的一种常用方法。

本文将详细介绍基于模糊控制的自动驾驶系统的设计与实现过程。

首先,基于模糊控制的自动驾驶系统设计需要考虑系统的架构和功能。

系统的架构通常包括传感器部分、感知与决策部分和执行部分。

传感器部分负责获取车辆周围环境的信息,包括摄像头、雷达、激光雷达等传感器。

感知与决策部分负责对传感器数据进行处理与分析,包括对障碍物的识别与跟踪、路径规划与决策等功能。

执行部分负责控制车辆的行驶,包括油门、刹车、转向等控制。

其次,基于模糊控制的自动驾驶系统的关键技术在于模糊控制器的设计。

模糊控制器根据输入和输出的模糊规则来控制车辆的行驶。

模糊规则的制定是整个系统设计中的关键之一。

模糊规则是通过将输入与输出之间的关系进行模糊化来定义的。

例如,如果车辆与前方的障碍物的距离较近,则需要减小车辆的速度;如果车辆处于弯道,则需要调整车辆的转向角度。

通过制定一系列模糊规则,可以根据不同的情况来调整车辆的行驶。

在模糊控制器设计中,模糊化和解模糊化是非常重要的步骤。

模糊化将输入量和输出量从连续的实数空间映射到隶属函数上。

隶属函数描述了输入量或输出量的模糊程度,常用的隶属函数包括三角函数、梯形函数等。

解模糊化则将经过模糊化的输出量映射回实数空间。

常用的解模糊化方法包括最大值法、面积法等。

通过模糊化和解模糊化的处理,可以将模糊规则转化为实际的车辆控制命令。

此外,在基于模糊控制的自动驾驶系统中,还需要考虑系统的可靠性和安全性。

自动驾驶系统需要能够在各种复杂的场景中进行准确的决策和控制,才能保证车辆的行驶安全。

同时,系统还需要具备故障容忍性,可以在传感器故障或其他系统故障的情况下继续工作。

最后,基于模糊控制的自动驾驶系统的实现需要借助于计算机技术和人工智能算法。

计算机技术提供了高性能的计算能力和大容量的存储空间,可以方便地对传感器数据进行处理和分析。

基于Matlab的参数模糊自整定PID控制器的设计与仿真

基于Matlab的参数模糊自整定PID控制器的设计与仿真
第 1 9卷 第 6期
20 0 8年 1 2月
中原 工 学 院 学 报
J OURNAI 0F ZH0NGYUAN UNI RS TY 0F TECH N0L VE I 0GY
V0 . 9 NO 6 11 .
De ., 08 c 20
文章 编 号 : 6 1 9 6 2 0 ) 6 0 6 —0 1 7 —6 0 ( 0 8 0 — 0 8 4
2 参 数 模 糊 自整定 P D 控 制 器 设 计 I
取当前采样值
2 1 设 计 论 域 和 模 糊 规 则 表 .

e )r )v ( =( - 1 k k
输 入 变量 I 和 l 语 言 值 的模 糊 子 集 取 为 { l c e l 负 大, 负中 , 负小 , , 小 , 中 , 大 } 并 简 记 为 { 零 正 正 正 , NB, NM , ~S, ,P S,P ,PB} 论 域 为 { 3 3 . M , 一 , } 以 k 、 k k 、 3个参数 作 为输 出变量 , k、 模糊 量 的模 k 、 k 糊子集 取 为 { 大 , 中 , 小 , , 小 , 中 , 大 } 负 负 负 零 正 正 正 , 并 简记 为 { NB, NM , ,Z NS O,PS, M ,P , 的 P B} k 论 域 为 { . ,. }k 一0 3 0 3 , 的论 域 为 { . 6 0 0 } k 一0 0 , . 6 , 的论域 为 { , }其 中 NB、 一3 3 . PB取 S形 隶 属度 函数 ,
1 参 数 模 糊 自整 定 P D 控 制 原 理 I
参数 模糊 P D 自整 定控 制 是 以误 差 l { I 和误 差 变 e
化 lC 作 为 模 糊 P D 控 制 器 的 输 入 , 以 满 足 不 同 时 l e I 可

《基于模糊控制的高精度伺服速度控制器的设计与实现》

《基于模糊控制的高精度伺服速度控制器的设计与实现》

《基于模糊控制的高精度伺服速度控制器的设计与实现》基于模糊控制的高精度伺服速度控制器设计与实现一、引言随着工业自动化和智能制造的不断发展,对高精度伺服系统的速度控制提出了更高要求。

伺服速度控制器的性能直接影响着工业产品的制造质量和效率。

传统速度控制方法往往存在响应速度慢、精度低等问题。

为了解决这些问题,本文提出了一种基于模糊控制的高精度伺服速度控制器设计与实现方案。

二、系统概述本系统主要由伺服电机、编码器、模糊控制器和上位机组成。

其中,伺服电机负责执行速度控制任务,编码器实时反馈电机速度信息,模糊控制器负责处理反馈信息和进行控制决策,上位机负责与模糊控制器进行通信,并监控整个系统的运行状态。

三、模糊控制器的设计1. 模糊化处理模糊化处理是将电机速度的实时反馈值和目标值进行模糊化处理,将精确的数值转化为模糊语言变量。

这一过程包括确定模糊子集、论域和隶属度函数等。

2. 模糊规则库的设计根据系统特性和经验知识,设计合理的模糊规则库。

这些规则根据电机速度的实时反馈和目标值,决定下一时刻的控制策略。

3. 模糊推理机的实现模糊推理机是模糊控制器的核心部分,根据模糊规则库和实时反馈信息,进行模糊推理,得出下一时刻的控制决策。

4. 解模糊化处理解模糊化处理是将模糊推理结果转化为精确的控制量,以驱动伺服电机执行相应的动作。

四、伺服速度控制器的实现1. 硬件实现伺服速度控制器的硬件部分主要包括微处理器、编码器接口、电机驱动器等。

微处理器负责运行模糊控制器程序,编码器接口负责实时获取电机速度信息,电机驱动器根据控制决策驱动伺服电机执行相应的动作。

2. 软件实现软件部分主要包括模糊控制算法的实现、与上位机的通信等。

在微处理器上运行模糊控制算法,实时处理编码器反馈的电机速度信息,并根据模糊推理结果输出相应的控制量。

同时,与上位机进行通信,接收上位机的指令和监控系统的运行状态。

五、实验结果与分析通过实验验证了基于模糊控制的高精度伺服速度控制器的性能。

模糊PID基本原理及matlab仿真实现(新手!新手!新手!)

模糊PID基本原理及matlab仿真实现(新手!新手!新手!)

模糊PID基本原理及matlab仿真实现(新⼿!新⼿!新⼿!)有关模糊pid的相关知识就把⾃⼰从刚接触到仿真出结果看到的⼤部分资料总结⼀下,以及⼀些⾃⼰的ps以下未说明的都为转载内容在讲解模糊PID前,我们先要了解PID控制器的原理(本⽂主要介绍模糊PID的运⽤,对PID控制器的原理不做详细介绍)。

PID控制器(⽐例-积分-微分控制器)是⼀个在⼯业控制应⽤中常见的反馈回路部件,由⽐例单元P、积分单元I和微分单元D组成。

PID控制的基础是⽐例控制;积分控制可消除稳态误差,但可能增加超调;微分控制可加快⼤惯性系统响应速度以及减弱超调趋势。

1.1传统PID控制传统PID控制器⾃出现以来,凭借其结构简单、稳定性好、⼯作可靠、调整⽅便等优点成为⼯业控制主要技术。

当被控对象的结构和参数具有⼀定的不确定性,⽆法对其建⽴精确的模型时,采⽤PID控制技术尤为⽅便。

PID控制原理简单、易于实现,但是其参数整定异常⿇烦。

对于⼩车的速度控制系统⽽⾔,由于其为时变⾮线性系统不同时刻需要选⽤不同的PID参数,采⽤传统的PID控制器,很难使整个运⾏过程具有较好的运⾏效果。

1.2模糊PID控制模糊PID控制,即利⽤模糊逻辑并根据⼀定的模糊规则对PID的参数进⾏实时的优化,以克服传统PID参数⽆法实时调整PID参数的缺点。

模糊PID控制包括模糊化,确定模糊规则,解模糊等组成部分。

⼩车通过传感器采集赛道信息,确定当前距赛道中线的偏差E以及当前偏差和上次偏差的变化ec,根据给定的模糊规则进⾏模糊推理,最后对模糊参数进⾏解模糊,输出PID控制参数。

2.1模糊化模糊控制器主要由三个模块组成:模糊化,模糊推理,清晰化。

具体如下图所⽰。

⽽我们将⼀步步讲解如何将模糊PID算法运⽤到智能车上。

(最好⽤笔⼀步步⾃⼰写⼀遍)⾸先我们的智能车会采集到赛道的相关数据,例如摄像头车,其采集到的数据经过算法处理之后会得到与中线的偏差E,以及当前偏差和上次偏差的变化(差值)EC两个值(即此算法为2维输⼊,同理也可以是1维和3维,但2维更适合智能车)。

基于MATLAB的模糊PID控制系统的设计与仿真

基于MATLAB的模糊PID控制系统的设计与仿真

基于MATLAB的模糊PID控制系统的设计与仿真作者:王超蒋平来源:《电子世界》2013年第04期【摘要】在传统的PID控制基础上,本文介绍了一种基于PID模糊控制的混合型控制,通过MATLAB&Simulink软件和模糊逻辑工具箱设计控制系统结构模型.仿真结果证明,该控制方法具有更优的性能。

【关键词】模糊PID控制;MATLAB仿真1.引言在传统的控制方法中,PID控制凭借其算法简单、精度高、可靠性强、技术成熟、应用广泛的优点脱颖而出,占据了工业控制系统80%以上的份额;然而随着现代控制系统越来越复杂,精度要求也越来越高,传统、单一的控制策略已经无法满足设计性能的要求,同时,随着电子技术和计算机的发展,各种新兴的智能算法也不断涌现,将传统算法和智能算法相结合,成为现代控制系统策略选择的趋势。

作为智能控制中最重要且最有效的手段之一的模糊控制,在应对复杂系统的非线性和时变特征时有着较好的表现,因此越来越多的被应用到工程实践中,并已取得了不俗的成绩。

本文介绍的是基于传统的PID控制和现代控制理论中的智能模糊控制相结合的一种控制方法,用MATLAB&Simulink软件和模糊逻辑工具箱设计控制系统结构模型,并通过仿真结果证明该控制方法具有更优的性能。

2.PID模糊控制系统的结构3.利用MATLAB&Simulink软件进行控制仿真基于现代控制理论的模糊控制,内容比较抽象,理论性较强,比较枯燥。

另外,模糊控制是模糊集合理论、模糊语言变量以及模糊逻辑推理为基础的一种计算机控制,它处理的问题可能难以靠解析求解,需要采用复杂的数值计算方法,采用软件编程,不仅工作量大,而且过程繁杂,大大制约了控制方法的性能验证和工程实现。

MATLAB&simulink是MathWorks公司推出的当今国际控制界最为流行的面向工程和科学计算的高级语言,是公认的最为灵活和有效的仿真软件。

而且随着智能控制的迅速推广应用,MathWorks公司已经添加了智能逻辑控制工具箱,其中包括模糊控制工具箱、神经网络控制箱等热门工具。

基于PID算法的列车自动驾驶控制方法研究

基于PID算法的列车自动驾驶控制方法研究

基于PID算法的列车自动驾驶控制方法研究发布时间:2021-06-10T10:15:45.890Z 来源:《基层建设》2021年第5期作者:李文龙吴祥民董彦妮张忠杰[导读] 摘要:在现有列车数学模型的基础上,采用PID算法设计了列车速度闭环控制器,当自动控制系统生成期望速度曲线时,适当配置PID控制器的参数,列车可以达到满意的速度跟踪效果。

中车青岛四方机车车辆股份有限公司青岛 266111 摘要:在现有列车数学模型的基础上,采用PID算法设计了列车速度闭环控制器,当自动控制系统生成期望速度曲线时,适当配置PID 控制器的参数,列车可以达到满意的速度跟踪效果。

此外,本文通过极点配置,得到比例系数、积分系数以及微分系数的最佳组合,提高列车自动驾驶系统的精度。

关键词:列车;PID算法;速度控制;仿真 1 前言在列车人工驾驶模式下,司机将根据经验、列车运行情况以及当前路况驾驶列车。

然而,在情绪波动和疲劳的影响下,司机会误操作,导致事故的发生。

列车自动驾驶系统可以根据实际路况信息,获取各设备的工作状态和列车运行情况,并得到智能化的运行计划,从而保证列车运行的独立控制。

与人工驾驶相比,列车自动驾驶在能源节约、时间准确性、乘客舒适度以及安全性等方面具有更大的优势和更好的应用前景。

列车自动驾驶系统(ATO)是列车自动控制系统(ATC)的一个子系统。

与列车自动监督(ATS)子系统、列车自动防护(ATP)子系统协调配合,共同完成列车的自动控制,具体流程为:ATO接收来自ATS发送的目的地编码、运行时分等信息,并且接收来自ATP发送的当前列车速度、加速度、目标速度、当前位置等信息,跟随ATP生成的速度-时间曲线,在ATP的防护下安全运行,实现列车的自动驾驶。

2 PID算法的研究PID算法是基于偏差在过去、现在和将来做出调节量估计的一种简单有效的控制算法,在许多工业控制中得到了广泛的应用,因此采用PID逻辑来实现高速列车的速度控制也应运而生。

模糊PID控制算法在智能小车中的研究与应用

模糊PID控制算法在智能小车中的研究与应用

模糊PID控制算法在智能小车中的研究与应用智能小车是近年来智能化技术的一项重要应用,模糊PID控制算法作为一种自适应控制算法,被广泛应用于智能小车领域。

本文将从智能小车的研究背景入手,介绍模糊PID控制算法的原理和特点,以及在智能小车中的研究和应用,最后总结并展望未来研究的方向。

一、研究背景智能小车是一种能够自主运动、感知环境并做出决策的机器人,其运动控制是实现智能小车基本功能的核心。

传统的PID控制算法在许多自动控制系统中得到广泛应用,它通过不断地调整比例、积分和微分三个参数来实现系统的稳定控制。

然而,传统PID控制算法的主要问题是在非线性、时变或不确定性的系统中效果不佳。

为了解决这一问题,模糊PID控制算法被引入到智能小车的控制中。

模糊PID控制算法是基于模糊逻辑理论和PID控制理论的结合,通过对系统内外环境进行模糊化表示,将模糊规则集与PID控制算法相结合,从而提高了系统的稳定性和鲁棒性。

二、模糊PID控制算法原理和特点1.模糊化:将系统的输入和输出进行模糊化处理,将连续值转化为模糊变量。

2.模糊规则库构建:根据系统的特性和经验知识,构建一组模糊规则。

3.模糊推理:根据当前的系统输入和模糊规则库,进行模糊推理,得到模糊输出。

4.解模糊化:将模糊输出转化为真实的控制量。

5.输出:将解模糊化得到的控制量输出给被控对象,实现控制。

1.对系统非线性和时变性具有较好的适应性,能够应对实际环境中的各种变化和干扰。

2.理论基础扎实,可以通过专家知识和经验知识来构建模糊规则库,适用于复杂系统。

3.可以处理模糊和不确定性信息,提高了控制系统的稳定性和鲁棒性。

智能小车作为一种自主决策和行动能力的机器人,其控制系统对稳定性要求较高。

模糊PID控制算法在智能小车中得到了广泛的研究和应用。

首先,模糊PID控制算法可以用于智能小车的路径规划和避障。

通过感知环境中的障碍物和目标点,将其模糊化处理,构建模糊规则库,实现智能小车的自主导航和避障功能。

《基于模糊控制的高精度伺服速度控制器的设计与实现》

《基于模糊控制的高精度伺服速度控制器的设计与实现》

《基于模糊控制的高精度伺服速度控制器的设计与实现》基于模糊控制的高精度伺服速度控制器设计与实现一、引言随着工业自动化和智能制造的快速发展,高精度伺服速度控制器在生产制造和工艺控制领域中的重要性愈发突出。

伺服系统的高效性、准确性和响应速度对于设备的工作效率和产品质量的保证起到了决定性的作用。

为了更好地应对高精度速度控制的要求,本文设计并实现了一种基于模糊控制的高精度伺服速度控制器,以期为现代工业自动化提供更优的解决方案。

二、模糊控制理论概述模糊控制是一种基于模糊集合理论的控制方法,其通过模仿人的决策过程,将精确的数学模型转化为模糊的逻辑规则,从而实现对复杂系统的有效控制。

模糊控制具有对系统参数变化和外部干扰的强鲁棒性,特别适用于非线性、时变或不确定性的系统。

三、高精度伺服速度控制器的设计1. 硬件设计硬件设计是构建高精度伺服速度控制器的基石。

设计过程中,我们主要考虑了电机驱动器、传感器、微处理器等关键部件的选型和配置。

电机驱动器应具备高响应速度和低噪声的特点,传感器应具有高精度和高稳定性的性能,微处理器则应具备强大的数据处理能力和实时性。

2. 软件设计软件设计是实现高精度伺服速度控制器的核心。

在软件设计中,我们采用了模糊控制算法作为主要控制策略。

首先,我们根据系统的特性和需求,定义了输入和输出的模糊变量,并确定了模糊变量的论域和隶属度函数。

然后,我们根据专家的经验和知识,建立了模糊规则库。

最后,通过模糊推理机实现模糊规则的推理和决策,输出控制信号驱动电机执行相应的动作。

四、实现过程1. 搭建实验平台我们搭建了一个包含电机、传感器、微处理器等关键部件的实验平台,用于验证基于模糊控制的高精度伺服速度控制器的性能。

2. 编程实现在编程实现过程中,我们采用了模块化的设计思想,将整个系统划分为模糊控制器、电机驱动器、传感器数据处理等模块。

每个模块都有明确的输入和输出接口,方便后期维护和升级。

在编程过程中,我们特别注意了代码的实时性和稳定性,以保证系统的性能和可靠性。

基于Matlab的模糊PID控制系统设计及仿真

基于Matlab的模糊PID控制系统设计及仿真

基于Matlab的模糊PID控制系统设计及仿真窦艳艳;钱蕾;冯金龙【摘要】模糊PID控制是利用PID参数整定经验来使模糊控制器自动整定其参数,从而使PID控制器以变应变.文中采用Matlab软件设计模糊PID控制器,并应用于控制锅炉液位.通过实验仿真比较研究PID控制、模糊控制及模糊PID控制的控制效果.实验结果显示,模糊PID控制效果理想,具有较好的应用前景.【期刊名称】《电子科技》【年(卷),期】2015(028)002【总页数】4页(P119-122)【关键词】模糊控制;PID控制;Matlab仿真;锅炉液位【作者】窦艳艳;钱蕾;冯金龙【作者单位】南京高等职业技术学校电气工程系,江苏南京210019;南京高等职业技术学校电气工程系,江苏南京210019;南京高等职业技术学校电气工程系,江苏南京210019【正文语种】中文【中图分类】TP273+.4PID控制作为经典控制至今仍被广泛应用,面对精确数学模型时,PID控制能取得令人满意的效果。

但在实际应用中,当被控对象数学模型变化时,难以实时调整PID参数,且大量被控过程机理复杂,被控对象数学模型建立复杂,其控制效果并不理想[1]。

模糊控制拥有智能化的特点,它不依赖对象的数学模型,对受控对象的时滞、非线性和时变性具有一定的适应能力。

然而模糊控制的精度受到控制规则的限制还始终存在静差[2]。

模糊PID控制利用整定PID参数的经验来设计模糊控制器自动整定PID控制器的参数,从而使PID控制器以变应变[3]。

本文采用基于Matlab的模糊PID控制器控制锅炉液位,通过实验仿真比较传统PID控制、模糊控制以及模糊PID控制的效果。

1 被控对象选择被控对象选择经典的锅炉液位控制,国内外的电热锅炉液位控制主要采用传统PID 控制[4]。

维持锅炉液位在预期正常范围内是锅炉系统安全运行的必要条件,也是衡量锅炉汽水系统物质是否平衡的标志。

由文献[5]得到某汽包水位在给水流量下的动态特性传递函数为2 模糊PID控制器设计自适应模糊PID控制器结构如图1所示,其以常规PID控制为基础,采用模糊推理的思想,将被控量的偏差e和偏差变化率ec作为二维模糊控制器的输入变量,PID中 Kp,Ki,Kd的变化值作为输出,利用模糊控制规律在线整定PID各个参数,其中模糊控制部分包括模糊化、模糊推理计算和解模糊化[6]。

基于MATLAB的参数模糊自整定PID控制器的设计与仿真研究

基于MATLAB的参数模糊自整定PID控制器的设计与仿真研究
o tut a ib e‘ up v ra l ‘ r KpXd ̄ a’ "
2 一 , , , ,) , l0 12 3 ,它 们 的 模 糊 子 集 为 : E =N E, C { B, N N ,O,S P P 1其 含 义依 次 为负 大 、 中 、 M, S Z P ,M,B , 负
推理 的方 法对 PD 的参 数 K 、 iK I p Kห้องสมุดไป่ตู้、 d进行 在线 自整 定, 以满足 不 同 E和 E C对控 制器参数 的不 同要 求 ,
从 而使 被控 对象 具有 良好 的动态 性 能和 静态 性 能 。 参数 模糊 自整定 PD控 制系统 结构框 图如 图 l I 所示
( )参数模 糊 自整定 PD控制 系统 的结构 2 I
. 弓 寓 1 I
根据 偏差 的比例 ( ) 积 分 () 微分 ( 进行 控 P、 I、 D) 制( 简称 PD控 制 ) 是控 制 系统 中应 用最 为 广泛 的 I ,

在 常规 PD基 础上 。 I 以被控 对象 的反馈 值 与 目 标值 的误差 E和误差 变化 率 E C作 为输 入 ,用 模糊
负小 、 、 零 正小 、 中 、 正 正大 。 规 定 输 出 变 量 K 、 、 d的 论 域 为 : p , p K K ,
建立 ]
图 3 K 。i K p K 和 d的隶 属 度 函数
在 MA L T AB命令 窗 口键人 fzy进入模 糊 推理 uz 系统 编辑 器 , 各参 数设 置 如 图 4所 示 。利用 隶 属度
维普资讯
1 廪 嚣毒
专题
270 0 . 01

蚴参数摸糊圃鳌 P n D撞 剃器蚴谈 镑 珊

模糊控制的Matlab仿真实例分析

模糊控制的Matlab仿真实例分析

.
18
在Simulink编辑窗口左边的模块浏览区可以看 到在水箱仿真系统中包括水箱子模型、阀门子 模型及 PID 控制子模型。直接在浏览区中点 击或右键点击它们,并在弹出菜单中选择 [ look under mask 】 ,可以看到这些模块实 现的细节结构,如图 所示。
.
19
.
20
.
21
这里暂时不讨论具体的系统模型的构造问题,我们可 以先在这个已经建立好的系统模型上进行修改,体验 模糊逻辑与仿真环境结合使用的优势。
字分别代表服务和食
物的质量( 10 表示
非常好, 0 表示非常
差),这时小费与它
.
们之间的关系又应4当8
如何反映呢?
假设是二元线性关系 用下列 MATLAB 语句可绘出下图 。
.
49
.
50
可以看到,如果不考虑服务质量因素比食物质量因素对 于小费的支付占有更大的比重,上面的关系图形已经能 够反映一些实际的情况了。假如希望服务质量占小费的 80 % , 而食物仅占 20 %。这里可以设定权重因子:
注意将鼠标箭头放置图内,移动鼠标可得到不同 角度的视图,如下图所示。
.
15
Matlab模糊控制仿真演示例子
模型sltank.mdl ——使用模糊控制器对水箱水位进 行控制。
假定水箱有一个进水口和一个出水口,可以通过控 制一个阀门来控制流入的水量(即水位高度),但 是流出的速度取决于出水口的半径(定值)和水箱 底部的压力(随水箱中的水位高度变化)。系统有 许多非线性特性。
真。
.
31
学习 MATLAB 仿真工具的一个快速有效的方法就 是学习示例模型,通过看懂这些模型和模块的功
能以及搭建过程,可以很快熟悉和掌握如何使用 MATLAB 仿真工具来设计和搭建自己独特的模型。

基于模糊PID的汽车巡航控制系统研究

基于模糊PID的汽车巡航控制系统研究

1910.16638/ki.1671-7988.2020.24.007基于模糊PID 的汽车巡航控制系统研究*张宝玉(江苏食品药品职业技术学院,江苏 淮安 223001)摘 要:汽车巡航控制系统(以下简称“CCS ”)可以降低汽车排气污染,文章为提高汽车巡航的精度和稳定性,在研究模糊PID 控制方法基础上,结合Matlab/Simulink 对汽车巡航模糊控制进行了建模,为后续仿真工作以及结构优化提供了可靠保障。

关键词:模糊巡航;车辆动力学系统;建模;响应速度中图分类号:U495 文献标识码:A 文章编号:1671-7988(2020)24-19-03Research on Automobile Cruise Control System Based on Fuzzy PID *Zhang Baoyu(Jiangsu Food & Pharmaceutical Science College, Jiangsu Huai ’an 223001)Abstract: Automobile cruise control system (Shorthand "CCS") can reduce automobile exhaust pollution. In this paper, in order to improve the accuracy and stability of automobile cruise, based on the study of fuzzy PID control method, com -bined with Matlab/Simulink to model the automobile cruise fuzzy control, Providing a reliable guarantee for subsequent simulation work and structural optimization.Keywords: Fuzzy cruise; Vehicle dynamics system; Modeling; Response speed CLC NO.: U495 Document Code: A Article ID: 1671-7988(2020)24-19-031 汽车巡航控制原理汽车巡航系统是一个典型的闭环反馈控制系统,其原理如下图1所示。

基于模糊自适应PID的列车智能驾驶算法

基于模糊自适应PID的列车智能驾驶算法

基于模糊自适应PID的列车智能驾驶算法李德仓;孟建军;郝帅;刘震【摘要】列车ATO控制是一个强耦合、高度非线性系统,且随着列车运行工况的变化,这种特性逐渐增强,因此需要更高要求的智能控制算法.针对传统控制方法在智能性方面的不足,结合各种智能控制特点,提出基于模糊自适应PID的列车智能控制算法,建立以节约能耗和精准停车为目标的模糊自适应PID控制策略.以上海轨道交通3号线为例,在Matlab软件环境下构建仿真模型,选择节能性和停车精度试验,结果表明:所提智能控制算法比传统PID控制算法得到的结果更好,单位质量能耗降低了4.91%,停车精度提高了69.23%.因此,该算法完全能满足列车停车精度高、节能效果好的要求.【期刊名称】《兰州交通大学学报》【年(卷),期】2018(037)004【总页数】7页(P27-33)【关键词】列车自动驾驶;智能算法;模糊自适应PID;停车精度;节能【作者】李德仓;孟建军;郝帅;刘震【作者单位】兰州交通大学机电工程学院,甘肃兰州 730070;兰州交通大学机电工程学院,甘肃兰州 730070;兰州交通大学机电技术研究所,甘肃兰州 730070;中车青岛四方车辆研究所有限公司,山东青岛 266111;兰州交通大学机电工程学院,甘肃兰州 730070【正文语种】中文【中图分类】U283近年来,为了提高列车运行效率,列车自动驾驶系统(automatic train protection,ATO)已广泛应用于城轨列车运行控制中,列车运行过程控制算法也随之发展迅速.ATO控制算法从原来的单纯保证列车安全准时,逐渐向着同时保证列车节能、提高乘车舒适性和停车精度等多目标发展[1].目前,ATO控制算法主要有PID控制、改进的PID控制、模糊控制、专家系统、神经网络控制、遗传算法等控制算法.其中,PID控制是一种先行调节器,将设定值与输出值的偏差按比例、积分和微分进行控制,以列车牵引制动特性公式为基础,加装固定不变的启动、惰行、牵引、制动控车模式来实现控制列车运行[2].改进的PID控制是在PID控制器的基础之上,对其参数进行自动调整,克服了传统PID控制很难适应整个运行过程控制这一缺点[3].模糊控制从模糊信息处理观点出发,按照一定的模糊规则进行模糊推理,模拟经验丰富的司机进行驾驶,以提高控制质量[4].在ATO控制算法应用中,神经网络控制通常与模糊控制相结合形成集成智能控制,该集成智能控制能够在列车运行前或运行中提取优化模糊规则,减少模糊控制规则的数量[5].文献[6]中保证列车到站时间误差在一定范围的前提下,通过延长列车的惰行距离,减少列车站间运行能耗.文献[7]中针对列车制动模型参数未知和变化情况,提出了一种自适应的控制方法,能够保证列车达到较高停车精度,同时不影响乘车舒适性.文献[8]中针对列车节能控制与运行时间多约束、非线性优化问题,利用多种群遗传算法对列车运行进行优化,求出节能与运行时间的相对最优解.文献[9]针对温度系统强耦合和非线性对象,设计了一种基于模糊控制的自适应PID控制器,根据偏差和偏差变化的需要实时调整PID参数,取得很好效果.然而,对于既充分考虑列车运行过程舒适性、节能性及停车精度等性能指标,又采用模糊自适应PID控制算法的列车自动驾驶系统的研究很少涉及.本文针对PID传统算法在列车ATO控制过程中智能性和高效性方面的不足问题,提出了模糊自适应PID集成智能控制算法,然后以实际工程为研究背景进行仿真,验证该算法的最优控制性能.1 列车自动驾驶系统列车自动控制系统(ATC)包括列车自动保护系统(automatic train protection,ATP)、列车自动驾驶系统(automatic train opperation,ATO)及列车自动检测系统(automatic train supervision, ATS),简称“3A”系统,如图1所示.ATP系统在ATC系统中负责列车的安全运行,是整个ATC系统的核心,为完成列车运行的安全功能,列车需计算自身的位置、速度、线路限速条件、线路列车相互关系、列车完整性以及设备状况等,以形成列车运行的安全间隔和超速防护.图1 列车自动驾驶系统Fig.1 Schematic diagram of automatic train operation ATS系统作为ATC系统的上层管理部分,主要负责编制列车运行图,并依据该运行图实时监督、控制和调整列车的有效运行,使系统科学合理调整列车运行线路和运行时间,以保证列车按照运行图和运行间隔按运行线路自动分配排列进路,系统也能修改运行参数,并控制停站时间、故障管理、应急处理、收集数据生成管理报表等[10].ATS系统主要负责编制列车运行图,并根据运行图自动办理列车进路,自动调整列车运行间隔,依靠现场的行车信息,实现组织和控制行车的指挥.ATO系统是叠加在ATP系统之上,其功能就是通过智能控制算法替代司机,依靠车载固化信息和地面信息实现列车自动驾驶和对列车运行速度的自动调整[11],使列车运行过程达到最佳状态和高效安全地运行,从而提高乘客的舒适度和停车精度,并能节约能源.因此,实现列车ATO系统控制是列车运行控制系统未来的发展趋势[12],而ATO的关键技术是依靠事先给定的目标速度曲线,由控制系统实时自动调整列车的运行速度,实现列车实际运行速度对给定目标速度的精确跟踪[13],达到列车精确停车、节能及安全运行目的,若要完成该目标,最主要的任务是设计高精度速度跟踪控制器及控制算法.2 模糊自适应PID控制器设计2.1 系统结构PID控制器的数学模型[14]为(1)或写成传递函数的形式:(2)式中:e(t)为控制偏差;kp为比例系数;T1为积分时间常数,其倒数即为积分系数ki;Td为微分时间常数,即为微分系数kd.列车自动驾驶PID控制结构如图2所示.图2 PID控制结构Fig.2 PID structurePID控制作用u由误差e(t)的比例、积分及微分三项之和给出.PID控制中的比例系数kp、积分系数ki、微分系数kd按一定的控制性能要求,并根据各自特点,整定出一组固定的参数,这种控制方法在列车自动驾驶系统中不能兼顾静态和动态的特性.因此,本文拟将模糊自适应和PID算法结合,利用各自的优势特性,构建模糊自适应PID集成智能算法,集成智能系统结构如图3所示.该控制系统以误差e和误差变化率ec作为输入信号,采用模糊控制规则在线对PID控制过程中的kp、ki、kd等3个参数进行实时自适应修改,在确保ATO系统集成智能控制性能指标的同时,较好地抑制PID控制过程系统状态非线性变结构现象,也改善了系统暂态性能,从而完成渐近稳定的控制,实现对列车运行速度的高精度跟踪,从而降低能耗,提高停车精度.图3 模糊自适应PID控制系统结构Fig.3 Structure of fuzzy self-adaptive PIDcontrol system2.2 控制算法设计在对ATO系统模糊自适应PID集成智能控制算法设计过程中,最关键的问题是找出PID算法相关修正参数kp、ki、kd与控制误差之间的模糊规则关系,然后计算得到控制系统误差e和误差变化率ec,基于所建立的模糊规则关系进行模糊推理,从而实现对PID控制参数的在线实时修改.对控制算法设计时,需要不断总结工程设计人员的技术知识和列车司机现场的实际操作经验,建立科学合理的“if…then”格式模糊规则[15],得到修正参数Δkp、Δki和Δkd各自的整定模糊控制表如表1~3所列.表1 Δkp的模糊控制表Tab.1 Fuzzy control table ofΔkpeceNBNMNSZOPSPMPBNBPBPBPMPMPSZOZONMPBPBPMPSPSZONS NSPMPMPMPSZONSNSZOPMPMPSZONSNSNMPSPSPSZONSNSNMNMP MPSZONSNMNMNMNBPBZOZONMNMNMNBNB表2 Δki的模糊控制表Tab.2 Fuzzy control table ofΔkieceNBNMNSZOPSPMPBNBNBNBNMNMNSZOZONMNBNBNMNSNSZ OZONSNBNMNSNSZOPSPSZONMNMNSZOPSPMPMPSNMNSZOPSPSPM PBPMZOZOPSPSPMPBPBPBZOZOPSPMPMPBPB表3 Δkd的模糊控制表Tab.3 Fuzzy control table ofΔkdeceNBNMNSZOPSPMPBNBPSNSNBNBNBNMPSNMPSNSNBNMNMNS ZONSZONSNMNMNSNSZOZOZONSNSNSNSNSZOPSZOZOZOZOZOZOZO PMPBNSPSPSPSPSPBPBPBPBPMPMPSPSPB根据表1~3,定义e和ec模糊量的模糊子集为{NB,NM,NS,O,PS,PM,PB},论域为[-13,+13];Δkp、Δki和Δkd的模糊子集为{NB,NM,NS,O,PS,PM,PB},Δkp和Δki的论域均为[-5,+5],Δkd的论域为[-0.5,+0.5].充分考虑到Δkp、Δki和Δkd对论域的覆盖程度和灵敏度要求,以及控制系统的稳定性和鲁棒性原则,则系统中各变量和参数的模糊子集均采用三角形隶属函数形式表示,Δkp、Δki和Δkd分别在论域上的输出曲面如图4~6所示.根据e和ec的具体情况,模糊PID控制器依靠e和ec实际取值而确定模糊集合在每个时刻的参数调整量,自适应实时在线调整PID控制器参数,从而得到下一时刻校正后的参数(3)式中:和表示确定部分;Δkp、Δki和Δkd表示经过模糊控制后的调节部分.图4 Δkp在论域上的输出曲面Fig.4 The output surface of Δkp in the field of theory3 算法仿真基于本文图2和图3 所示的控制系统框架结构,在Malab环境下搭建Simulink 仿真模型,并采用上海轨道交通3号线曹杨路站——镇坪路站实际线路进行算法仿真.图5 Δki在论域上的输出曲面Fig.5 The output surface of Δki in the field of theory图6 Δkd在论域上的输出曲面Fig.6 The output surface of Δkd in the field of theory3.1 列车运行控制模型采用模糊自适应PID控制器抑制不确定干扰带来的影响,依靠列车的运动控制模型完成自动驾驶控制算法的参数整定,并通过自适应律消除系统参数的不确定性对控制精度的影响并加以校正.在确保ATO系统鲁棒性能指标的同时,较好的抑制控制过程系统状态非线性变结构振动现象,也改善了系统暂态性能,从而完成渐近稳定的控制,最终实现列车对给定的运行速度高精度跟踪.本文采用已辨识的二阶城轨列车运行控制模型[16].(4)3.2 实际线路仿真本文采用国内上海轨道交通3号线曹杨路——镇坪路区间实际线路数据和某型列车为目标,并利用Matlab软件进行数值仿真与分析,为显示模糊自适应PID控制系统的控制效果和优点,同时也对PID控制器控制效果进行仿真.3.2.1 线路情况图7为该区间内的限速情况,图8为坡度情况.图7 线路限速情况Fig.7 Line speed limit图8 线路坡度情况Fig.8 Line slope3.2.2 仿真结果对比传统PID三个参数Δkp、Δki和Δkd经过计算和试凑,当Δkp=0.048 9,Δki=0.001 8,Δkd=0.002 2时,超调量最小,因此,最终选取Δkp=0.048 9,Δki=0.001 8,Δkd=0.002 2.同时,为了体现模糊自适应PID控制在相同参数下与传统PID控制的区别,本文选取在仿真过程中,采用节时策略进行仿真,为了验证本文所提方法对列车运行速度跟踪控制的有效性和精确性,也对PID控制的列车速度跟踪进行仿真,并对结果进行对比.两种控制策略控制下得到的速度跟踪曲线如图9所示,控制运行加速度曲线对比如图10所示,速度—距离曲线局部放大图(停车精度)如图11所示,各性能指标对比如表4所列.图9 运行速度曲线的对比图Fig.9 Comparison diagram of operating speed curve图10 运行加速度曲线的对比图Fig.10 Comparison diagram of operatingacceleration curve由上述仿真结果可知,与传统PID算法相比,模糊自适应PID算法能很好地对列车牵引力和加速度进行控制,由图9可见,在列车运行过程中,采用传统PID控制策略得到的速度对期望目标运行速度的跟踪存在一定的误差,而采用模糊自适应PID控制策略得到的速度跟踪效果表现良好,列车对期望运行速度存在较高精度的跟踪,说明满足期望要求;也从图10明显可见,采用传统的PID控制策略得到的加速度对期望目标运行加速度的跟踪存在一定的误差,在工况切换时,牵引力和加速度曲线波动明显,超调严重,乘客舒适性和列车节能性较差,而采用模糊自适应PID算法得到的牵引力和加速度曲线在工况发生改变时依然十分平滑,曲线几乎没有振荡,列车的牵引系统和制动系统不需要频繁切换,舒适性和节能性有了明显改善.下面再分别从停车精度和节能性两种性能指标方面对控制性能进行详细分析. 图11 速度-距离曲线局部放大图Fig.11 Local magnification diagram of velocity-distance curve表4 主要控制性能对比表Tab.4 Main control performance comparison对比指标PID算法模糊PID控制算法运行时间/s75.7876.02最大加速度/(m/s2)0.8450.892最大减速度/(m/s2)-0.720-0.704冲击率/(m/s3)0.8630.271单位质量能耗/(J/kg)512.25487.12停车精度/cm1341) 停车精度.由图11和表4可知,PID控制算法下列车实际运行距离为1 395.87 m,误差达到 13cm,而采用本文所提模糊自适应PID控制算法后,列车实际运行距离为1 396.04 m,误差为4 cm,后者虽然仍然存在一些误差,精度还有待提高,但是其误差在列车停车精度要求范围之内,与PID控制下停车精度相比,停车精度提高了69.23%;2) 节能性.列车运行过程的能耗主要与牵引、制动、惰行策略相关,采用不同的ATO控制算法时,其相应的列车能耗大小各不相同.由图9和图10可知,与传统PID控制算法相比,模糊自适应PID控制算法对列车牵引力和加速度的控制较好,尤其是在工况切换时,前者的牵引力和加速度曲线波动明显,超调严重,乘客舒适性和列车节能性较差;后者的牵引力和加速度曲线在工况发生改变时依然十分平滑,曲线几乎没有振荡,列车的牵引系统和制动系统不需要频繁切换,舒适性和节能性有了明显改善.如表4所示,PID控制算法下列车单位质量能耗达到512.25 J/kg,而模糊自适应PID控制算法下列车单位质量能耗为487.12 J/kg,单位质量能耗降低了4.91%.针对列车运行过程模型参数时变和系统非线性不确定特性,提出一种模糊自适应PID控制算法,通过比较传统PID控制和模糊自适应PID控制的仿真结果可知:1) 列车在启动加速阶段,模糊自适应PID控制的响应速度要比传统PID控制的响应速度快很多,且加速到匀速行驶时无超调;2) 列车在工况转换时,由匀速工况转到制动工况,制动工况转到匀速工况,模糊自适应PID控制与传统PID控制相比,适应力更强;3) 从列车运行跟踪效果来看,模糊自适应PID控制的列车运行跟踪效果要比传统PID控制更好,提高了列车运行效率.4 结论本文利用传统PID控制与模糊控制的各自优点,提出一种基于模糊自适应PID控制的列车驾驶智能算法,建立模糊规则关系,计算得到控制系统误差e和误差变化率ec,从而实现对PID控制参数的在线实时修改,并且得到修正参数Δkp、Δki和Δkd各自的整定模糊控制表.该集成智能算法不仅具有模糊控制速度快、适应性强等优点,同时也具有PID控制精确度高的特点,使系统有较好的控制效果.通过在Matlab环境下仿真以及与PID控制结果对比,结果表明:本文算法明显优于PID控制,例如,其在启动加速阶段响应速度快,平缓无超调,停车精度提高69.23%,单位质量能耗降低4.91%,且工况转换时适应能力强,智能性较高.本文算法的优势在于能够在列车运行过程中实时对PID控制的三个参数kp、ki、kd进行在线修正,避免了因为参数固定不变而导致的控制不灵活;同时,该算法也存在不足之处,对于频繁牵引和制动处理方面还需与其他算法相结合进行深入研究,这也是今后研究的关键问题.【相关文献】[1] 赵文天,郜春海.城轨列车自动驾驶广义预测控制器的算法研究[J].计算机工程与应用,2015,51(21):259-264.[2] 唐涛,黄良骥.列车自动驾驶系统控制算法综述[J].铁道学报,2004,25(2):98-102.[3] 刘东,冯全源,蒋启龙.基于改进PSO算法的磁浮列车PID控制器参数优化[J].西南交通大学学报,2010,45(3):405-410.[4] YASUNOBU S,MIYAMOTO S,IHARA H.Fuzzy control for automatic train operation system[J].Control in Transportation Systems,1984,62(7):33-39.[5] SEKINE S,IMASAKI N,ENDO T.Application of fuzzy neural network control to automatic train operation and tuning of its control rules[C]// International Joint Conference of the Fourth IEEE International Conference on Fuzzy Systems and The Second International Fuzzy Engineering Symposium.Proceedings of 1995 IEEE Int.IEEE,1995(4):1741-1746.[6] 宿帅,唐涛.城市轨道交通ATO的节能优化研究[J].铁道学报,2014,36(12):50-55.[7] 罗仁士,王义惠,于振宇,等.城轨列车自适应精确停车控制算法研究[J].铁道学报,2012,34(4):64-68.[8] 范子荣,张友鹏.基于温度系统的模糊自适应PID控制器的设计与仿真[J].兰州交通大学学报,2006,25(3):92-95.[9] LIU W,LI Q Z,TANG B.Energy saving train control for urban railway train with multi-population genetic algorithm[C]// 2009 International Forum on Information Technology and Applications.Chengdu:IEEE Computer Society,2009:58-62.[10] 冷勇林,陈德旺,阴佳腾.基于专家系统及在线调整的列车智能驾驶算法[J].铁道学报,2014,36(2):62-68.[11] 张友兵,张波.基于Tcl语言的CTCS-2级车载 ATP自动测试平台的研究与实现[J].兰州交通大学学报,2013,32(3):86-93.[12] 钱立新.世界高速列车技术的最新进展[J].中国铁道科学,2003,24(4):1-11.[13] 何晖,唐涛.基于小波包滤波列车自动驾驶的研究[J].铁道学报,2018,40(1):69-73.[14] SU S,LI X,TANG T,et al.A subway train timetable optimization approach based on energy-efficient operation strategy[J].IEEE Transactions on Intelligent Transportation Systems,2013,14(2):883-893.[15] 顾生杰,刘春娟.基于模糊自整定PID控制器的非线性系统仿真[J].兰州交通大学学报,2004,23(3):62-64.[16] CHANG C S,XU D Y,QUEK H B.Pareto-optimal set based multi-objective tuning of fuzzy automatic train operation for mass transit system[J].Electric Power Applications,IEE Proceedings,1999,146(5):577-583.。

模糊自整定PID控制器设计以及MATLAB仿真分析

模糊自整定PID控制器设计以及MATLAB仿真分析

收稿日期:2004-03-31第22卷 第9期计 算 机 仿 真2005年9月文章编号:1006-9348(2005)09-0242-03模糊自整定PID 控制器设计以及MATLAB 仿真分析肖奇军1,李胜勇2(1.肇庆学院电子信息工程系,广东肇庆526061;2.上海交通大学微纳米科学技术研究院,上海200030)摘要:为了解决液压控制的关键技术,该文针对时变、非线性的电液伺服系统提出了模糊自整定PID 控制器设计的思路,结合Simuiink 和模糊工具箱并进行仿真分析,该仿真模型具有结构简单、界面直观、便于修改等特点,根据PID 参数变化需要提出了模糊控制规则选取方法,给出了系统软、硬件实现方法,该系统具有操作方便、人机界面风格良好等优点。

使用仿真和实验相结合的方法获取最佳控制参数,通过仿真和实验结果可以看出这种算法的实用性和有效性。

关键词:模糊自整定;仿真分析;应用分析;电液伺服系统中图分类号:TP391.9 文献标识码:B Design and Simulation Analysis of Fuzzy Self -adaptive PID ControlXIAO Oi -jun 1,LI Sheng -yong 2(1.Dept.of Eiectronics Information Engineering ,Zhaoging University ,Zhaoging Guangdong 526061,China ;2.Institute of Micronanometer Science and Technoiogy Shanghai Jiaotong Univ.,Shanghai 200030,China )ABSTRACT :The paper puts forward the idea of fuzzy seif -adaptive PID controiier design aimed at the time -chan-ging and non -iinear eiectro -hydrauiic servo and the simuiation anaiysis combined with Simuiink and fuzzy tooibox.The simuiation possesses the characteristic of simpie construction ,direct interface and easy modification etc and ob-tains the way for fuzzy controi ruie seiection according to the need of PID parameter changing.It aiso provides the way for software and hardware reaiization.The system possesses the merit of convenient operation and good interface.It ob-tains the best parameter through simuiation combined with experience and from the simuiation resuit we can see the practicaiity and vaiidity of this controi method and soive the key technoiogy of hydrauiic controi.KEYWORDS :Fuzzy seif -adaptive ;Simuiation anaiysis ;Appiication anaiysis ;Eiectro -hydrauiic servo1 引言模糊控制一直是智能控制研究的热点,其应用水平代表着产品智能化水平,模糊控制以其控制简单、实现成本低廉、无需建立数学模型等独到的优点被广泛应用于家电等控制中,尤其是在时变、非线性的液压控制系统中得到广泛的应用。

基于模糊PID控制的自动泊车车速控制系统设计-毕业论文

基于模糊PID控制的自动泊车车速控制系统设计-毕业论文

0 前言近些年来由于汽车拥有量的不断增加,截至2018年底,汽车保有值已经达到2.4亿辆,相对于2017年已增加2284万辆,增长大约10.5%。

未来汽车保有值还会继续提升,据估计汽车保有值会达到4.8亿辆,相当于340万辆每一千人,对于车辆保有值的不断提升,尽管国家也在不断扩充公路、道路,但是也不能避免交通阻塞问题。

同时现代汽车的车速不断提升,由于在特定的公路、特定的地点需要限速,难免会出现交通问题,比如撞车、追尾、剐蹭等交通事故,会给国家、人民带来巨大的损失,无论是在物质上的还是精神上的。

所以现在有一些汽车已经着手安装自动泊车车速控制系统以保障用户安全停车。

自动泊车车速控制系统是汽车的辅助控制系统,可以通过感知系统将外部环境信号传输、分析、判断,经过一系列的计算机的计算,去操纵汽车上的特定结构,例如方向盘、踏板、刹车等,驾驶员可以坐在车上也可以在车外观看,按下自动泊车模式按键,车辆自动停泊到指定位置,可以解决驾驶员停车的困难以及提高驾驶的安全性。

经感知系统传递数据之后,经过规定的控制算法来操纵汽车的一些结构,可以实现车辆的自动泊车驾驶,实现车速的准确控制。

针对汽车车位紧张的现状,设计一种以汽车车速为主要控制对象的自动泊车车速控制系统,对于当今汽车的安全驾驶现状势在必行。

自动泊车车速控制是应用模糊理论与PID 理论相结合的控制方式,这样的控制系统可以更稳定的将车辆泊入到指定的泊车地点。

因此,如果能在泊车过程中准确控制汽车车速,车辆就更稳定的实现自动泊车入库。

11自动泊车概述本章介绍的是自动停车的研究背景及其意义、自动泊车的国内与国外研究现状以及车速自动控制的研究现状,阐述了本文的主要内容。

1.1课题研究的背景及意义近年来,人民的生活水平日益提高,民族汽车行业蓬勃发展,性价比不断提升导致汽车价格不断下降,私家车的比例逐渐提升,每四个人就有一辆机动车,由于汽车保有量攀升的结果,停车位变得稀缺,会出现同时有几个人共用停车位的情况,因此,泊车问题成为汽车业主头疼的关键问题。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、设计原理设计思想:油门控制采用增量式PID 控制算法,刹车控制采用模糊控制算法,最后通过选择规则进行选择控制量输入。

选择规则:首先定义速度偏差-50 km/h ≤e (k )≤50km/h ,-20≤ec= e (k )- e (k-1)≤20,阀值e swith =10km/h 。

若:e (k )<0① e (k )>- e swith and throttlr_1≠0 选择油门控制② 否则:先将油门控制量置0,再选择刹车控制 若:0<e (k ) 先选择刹车控制,再选择油门控制 若:e (k )=0 直接跳出选择 刹车控制:刹车采用模糊控制算法1.确定模糊语言变量e 基本论域取[-50,50],ec 基本论域取[-20,20],刹车控制量输出u 基本论域取[-30,30],这里我将这三个变量按照下面的公式进行压缩离散化:)]2(2[ba x ab n y +--= 其中,],[b a x ∈,n 为离散度。

e 、ec 和u 均取离散度n=3,离散化后得到三个量的语言值论域分别为:E=EC=U={-3,-2,-1,0,1,2,3}其对应语言值为{ NB,NM,NS,ZO, PS,PM,PB } 2.确定隶属度函数E/EC 和U 取相同的隶属度函数,边界选取钟形隶属度函数,中间取三角形隶属度函数,即:E EC U(,5,1)(,3,2,0)(,3,1,1)u (,2,0,2)(,1,1,3)(,0,2,3)(,1,5)g x trig x trig x trig x trig x trig x g x ∧∧--⎧⎪--⎪⎪--⎪=-⎨⎪-⎪⎪⎪⎩说明:边界选择钟形隶属度函数,中间选用三角形隶属度函数,图像略。

实际EC 和E 输入值若超出论域范围,则取相应的端点值。

3.模糊控制规则由隶属度函数可以得到语言值隶属度(通过图像直接可以看出)如下表:表1:E/EC 和U 语言值隶属度向量表设置模糊规则库如下表:表2:模糊规则表3.模糊推理由模糊规则表3可以知道输入E 与EC 和输出U 的模糊关系,这里我取两个例子做模糊推理如下:if (E is NB) and (EC is NM) then (U is PB)那么他的模糊关系子矩阵为:1211U EC E R R R R ⨯⨯=其中,711)0,,0,5.0,1(0⨯== P R E ,即表1中NB 对应行向量,同理可以得到,712)0,,0,5.0,1,0(1⨯== P R EC , 711)0,,0,5.0,1(0⨯== P R U77210000000000005.05.00005.010)0,,0,5.0,1,0()0,,0,5.0,1(⨯⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡=⨯=⨯TEC E R R 49121)0,,0,5.0,5.0,0,0,0,0,0,5.0,1,0(⨯= EC E R7491211000000005.05.00005.0100000)0,,0,5.0,1()0,,5.0,1,0(⨯⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡=⨯=⨯= TU EC E R R Rif (E is NB or NM) and (EC is NB) then (U is PB)21211()E E EC U R R R R R =⨯⨯,结果略。

按此法可得到27个关系子矩阵,对所有子矩阵取并集得到模糊关系矩阵如下:)27,,2,1(21 ==i R R R R i由R 可以得到模拟量输出为:()U E EC R =⨯4.去模糊化由上面得到的模拟量输出为1×7的模糊向量,每一行的行元素(u (z ij ))对应相应的离散变量z j ,则可通过加权平均法公式解模糊:21210()(1,2,,21)()ijji iji u zz u i j u z=====∑∑从而得到实际刹车控制量的精确值u 。

油门控制:油门控制采用增量式PID 控制,即:)2()1()2()()()1()(-+---++++-=k e k k e k k k e k k k k u k u d d p d i p其中k i =kp ×ts/Ti ,d k =kp ×Td/ts 只需要设置p k 、Ti 、Td 三个参数即可输出油门控制量。

二、调整参数按照上述算法流程,应用MATLAB 进行仿真实现,在参数调试过程中采用如下方法:首先将油门和刹车分开进行调整参数,最后再将调整好的参数写入总程序中调整。

1.油门PID 参数调节油门只需要调整kp 、Ti 、Td 三个参数,根据经验,首先令Ti 、Td 为0,kp 由0逐渐增大,在增大kp 的过程可知,kp 越大系统调节时间越短并趋于稳定,在达到一定程度后,继续增大系统将出现波动。

time(s)v d ,ytime(s)v d ,ykp=0.1kp=0.4time(s)v d ,ykp=0.9调节Ti 的过程发现,Ti 对系统稳定性影响并不大,将Ti 由10增大到30的过程中系统输出没有变化。

time(s)v d ,ytime(s)v d ,yTi=10 Ti=30在给Td 赋值时,最开始从1增大,发现系统越来越不稳定,于是逐渐减小,到0.003时趋于稳定,它的可调节范围很小,随其值的减小最大误差值逐渐减小,增大则系统趋于不稳定。

time(s)v d ,ytime(s)v d ,ykp=0.001 kp=0.002time(s)v d ,ykp=0.0032.刹车调节首先,为了适应该系统,将刹车输出量限制在[-150,150]之内(最初设计其范围为[-30,30]),对于该控制,可调节参数较多,包括隶属度函数、模糊规则表、输入输出变量区间、语言值论域、模糊推理及解模糊方法等等,这里由于模糊规则需要经验设定,本算法没有实际参考,所以这里只调整规则表,其他参数固定不变。

由于实际刹车控制中对于加速采取比较单一的置零(在选择规则中设定)输出,所以在规则表中e<0部分没有规则,然而为了仿真方与此同时,将刹车的输出变量取反,以此来实现减速的效果!在调整模糊规则表的时候,必须依据输入变量e 和ec 的范围逐个检验,按照他们各自的语言值以及相应的输出语言值进行调整。

例如,初始速度为50,期望速度为0,即e=-50,ec=-50,则此时输出对应模糊规则表中第一行第一列PB ,而下一时刻ec 几乎为0,所以在调节过程中,主要进行对EC 变量的ZO 行进行调节,若响应时间短,则增大相应输出语言值,反之亦然。

仿真时,分两段,首先加速,之后减速,采用上面的模糊规则表,得到如下图像:time(s)v d ,y从图像的上升阶段分析可以看出,其加速阶段并不能达到稳态值,但对于刹车控制可以忽略其影响,而减速阶段实际上已经比较理想,我取稳态误差达到5%稳定,则此规则达到稳态的时间为7.4s ,这里尝试进行如下修改,将规则表中带下划线的部分以此改为:PM,PS,PS,ZO,即,增大了输出语言值。

则得到如下图像:time(s)v d ,y此规则达到稳定的时间为6.9s ,由此分析模糊规则的调整规则如下:若想加快响应时间,增大误差和误差变化率负大区域附近的输出语言值,并增大误差变化率零区域附近的输出语言值,可能还会引起超调量的增大,所以只需做临近语言值之间的变化。

3.整体调节此时将刹车与油门同时加到仿真模型中,分别做加速和减速仿真,依据分别调节时的规律做微量调节就可以基本达到要求。

time(s)v d ,y4.待解决问题在调试过程中发现,油门控制(PID )过程在达到稳态时出现抖动,并且三个参数对他的影响很小,具体原因待考证;油门控制给系统的输入值出现大波动,每一次达到峰值持续相同时间后变为0再持续一段时间又变为峰值;模糊控制的语言值论域较小,对于扩大语言值论域对系统的影响还有待验证;模糊控制的输入变量压缩方式有待验证其合理性;模糊控制与PID控制的相互配合,在该程序中,由于两种控制的输出控制量不同,在给到仿真系统时很难统一;油门与上车的选择规则与实际系统还存在很大的改进。

附录MATLAB仿真程序function kk=bingji(A)for i=1:49for k=1:7for j=1:26n=7*j+k;if(A(i,k)>=A(i,n))kk(i,k)=A(i,k);elseA(i,k)=A(i,n);kk(i,k)=A(i,k);endendendendfunction o=dikaer(A,n,B,N)for i=1:nfor j=1:Nif(A(i)<=B(j))C(i,j)=A(i);elseC(i,j)=B(j);endo=C;endendreturn;function T=flisan(a,b,n,x)y=(a+b)/2+(b-a)*x/(2*n);T=round(y);return;function mm=bell(x,a,b,c)z=abs((x-c)/a)^(2b);y=1/(1+z);mm=y;return;function ooo=jbing(A,B)for i=1:49for j=1:7if(A(i,j)<B(i,j))A(i,j)=B(i,j);endendooo=A;endreturn;function MM=jdikaer(A,n,B,m) for i=1:mfor j=1:nif(A(j)<B(j,i))B(j,i)=A(j);endendMM=B;endreturn;function oo=jiao(A,B)for i=1:7for j=1:7if(A(i,j)>B(i,j))A(i,j)=B(i,j);endendoo=A;endreturn;function mm=lbell(x,a,b,c)if(x<c)mm=1;elsez=(x-c)/a;v=abs(z);n=v^(2*b);y=1/(1+n);mm=y;endreturn;function L=lisan(a,b,n,x)y=2*n*x/(b-a)-n*(a+b)/(b-a); L=y;return;function UU=max(A)for i=1:7for j=1:49if(A(j,i)>=Q(i))Q(i)=A(i,j);endendUU=Q;endreturn;function sum1=mean(U)a=[-3 -2 -1 0 1 2 3];sum2=0;sum3=0;for i=1:7sum2=sum2+U(i);sum3=sum3+U(i)*a(i);endsum1=sum3/sum2;return;function mm=rbell(x,a,b,c) if(x>c)mm=1;elsez=(x-c)/a;v=abs(z);n=v^(2*b);y=1/(1+n);mm=y;endreturn;function mww=trig(x,a,b,c) if(x<=a)mww=0;elseif(x>a&&x<=b)mww=(x-a)/(b-a);elseif(x>b&&x<=c)mww=(c-x)/(c-b);elseif(x>c)mww=0;endendendendreturn;function ooo=xbing(A,B)for i=1:7if(A(i)<B(i))A(i)=B(i);endooo=A;endreturn;clear all%************************Ä£ºýËã·¨%/*********Á¥Êô¶ÈÏòÁ¿*****%P0=[1,0.5,0,0,0,0,0];%*********NBP1=[0,1,0.5,0,0,0,0];%*********NMP2=[0,0.5,1,0.5,0,0,0];%*********NSP3=[0,0,0.5,1,0.5,0,0];%*********ZOP4=[0,0,0,0.5,1,0.5,0];%*********PSP5=[0,0,0,0,0.5,1,0];%*********PMP6=[0,0,0,0,0,0.5,1];%*********PB%***********ÓïÑÔÖµ*****%NB=-3;NM=-2;NS=-1;ZO=0;PS=1;PM=2;PB=3;%/*********Ä£ºý¹æÔò±í*****%Pg=[PB PB PM PM PS ZO ZO;PB PM PM PS ZO ZO NS;PM PM PS PS ZO NS NS;PM PS PS ZO ZO NS NM;PS PS ZO ZO ZO NS NM;PS ZO ZO ZO NS NM NB;ZO ZO ZO NS NM NM NB];%/*********¸ù¾ÝÄ£ºý¹æÔò±í¼ÆËãÄ£ºý¹Øϵ¾ØÕóR*****% R1_=dikaer(xbing(P0,P1),7,P0,7);R1_=reshape(R1_,1,49);R1=dikaer(R1_,49,P6,7);R2_=dikaer(xbing(P2,P3),7,P0,7);R2_=reshape(R2_,1,49);R2=dikaer(R2_,49,P5,7);R3_=dikaer(P0,7,P1,7);R3_=reshape(R3_,1,49);R3=dikaer(R2_,49,P6,7);R4_=dikaer(xbing(P1,P2),7,P1,7);R4_=reshape(R4_,1,49);R4=dikaer(R4_,49,P5,7);R5_=dikaer(P3,7,P1,7);R5_=reshape(R5_,1,49);R5=dikaer(R5_,49,P4,7);R6_=dikaer(xbing(P0,P1),7,P2,7);R6_=reshape(R6_,1,49);R6=dikaer(R6_,49,P5,7);R7_=dikaer(xbing(P2,P3),7,P2,7);R7_=reshape(R7_,1,49);R7=dikaer(R7_,49,P4,7);R8_=dikaer(P0,7,P3,7);R8_=reshape(R8_,1,49);R8=dikaer(R8_,49,P5,7);R9_=dikaer(xbing(P1,P2),7,P3,7);R9_=reshape(R9_,1,49);R9=dikaer(R9_,49,P4,7);R10_=dikaer(P3,7,P3,7);R10_=reshape(R10_,1,49);R10=dikaer(R10_,49,P3,7);R11_=dikaer(xbing(P0,P1),7,P4,7); R11_=reshape(R11_,1,49);R11=dikaer(R11_,49,P4,7);P45=xbing(P4,P5);R12_=dikaer(xbing(P2,P3),7,P45,7); R12_=reshape(R12_,1,49);R12=dikaer(R12_,49,P3,7);R13_=dikaer(P0,7,P5,7);R13_=reshape(R13_,1,49);R13=dikaer(R13_,49,P4,7);R14_=dikaer(P1,7,P5,7);R14_=reshape(R14_,1,49);R14=dikaer(R14_,49,P3,7);P01=xbing(P0,P1);R15_=dikaer(xbing(P01,P2),7,P6,7); R15_=reshape(R15_,1,49);R15=dikaer(R15_,49,P3,7);R16_=dikaer(P3,7,P6,7);R16_=reshape(R16_,1,49);R16=dikaer(R16_,49,P2,7);R17_=dikaer(P4,7,P0,7);R17_=reshape(R17_,1,49);R17=dikaer(R17_,49,P4,7);R18_=dikaer(xbing(P5,P6),7,P0,7); R18_=reshape(R18_,1,49);R18=dikaer(R18_,49,P3,7);R19_=dikaer(xbing(P4,P5),7,P1,7); R19_=reshape(R19_,1,49);R19=dikaer(R19_,49,P3,7);R20_=dikaer(P6,7,xbing(P1,P2),7); R20_=reshape(R20_,1,49);R20=dikaer(R20_,49,P2,7);P23=xbing(P2,P3);R21_=dikaer(P4,7,xbing(P23,P4),7); R21_=reshape(R21_,1,49);R21=dikaer(R21_,49,P3,7);R22_=dikaer(P5,7,xbing(P23,P4),7);R22_=reshape(R22_,1,49);R22=dikaer(R22_,49,P2,7);R23_=dikaer(P6,7,xbing(P3,P4),7);R23_=reshape(R23_,1,49);R23=dikaer(R23_,49,P1,7);R24_=dikaer(P4,7,P5,7);R24_=reshape(R24_,1,49);R24=dikaer(R24_,49,P2,7);R25_=dikaer(P5,7,P5,7);R25_=reshape(R25_,1,49);R25=dikaer(R25_,49,P1,7);R26_=dikaer(P6,7,xbing(P6,P5),7);R26_=reshape(R26_,1,49);R26=dikaer(R26_,49,P0,7);R27_=dikaer(xbing(P4,P5),7,P6,7);R27_=reshape(R27_,1,49);R27=dikaer(R27_,49,P1,7);m=[R1,R2,R3,R4,R5,R6,R7,R8,R9,R10,R11,R12,R13,R14,R15 ,R16,R17,R18,R19,R20,R21,R22,R23,R24,R25,R26,R27];R=bingji(m);%*************³õʼ»¯±äÁ¿e=0;ec=0;y_1=0;y_2=0;u=0;u_1=0;u_2=0;u_3=0;e_1=0;e_2= 0;Eswith=10;throttle_1=0;brake_1=0;x=[0 0 0];ts=0.001;sys=tf(1,[1,2,1],'inputdelay',0.5);dsys=c2d(sys,ts,'zoh');[num,den]=tfdata(dsys,'v');for k=1:1:40000%****************¿ØÖÆϵͳtime(k)=k*ts;if(k<20000)vd(k)=50;elsevd(k)=0;endy(k)=-den(2)*y_1-den(3)*y_2+num(2)*u_1+num(3)*u_2;e=vd(k)-y(k);ec=e-e_1;u_3=u_2;u_2=u_1;u_1=u;y_2=y_1;y_1=y(k);x(1)=e;x(2)=(e-e_1)/ts;x(3)=x(3)+e*ts;%*******************************ÓÍÃÅ¿ØÖÆkp=0.42;Ti=30;Td=0.0018;%*** vd(k)=1% kp=0.42;Ti=30;Td=0.0018;%*** vd(k)=1% kp=0.0015;Ti=0.01;Td=0.002;%***vd(k)=1*time(k)+10 % kp=0.0015;Ti=0.001;Td=0.002;%***vd(k)=1*time(k)^2+time(k)+2;ki=kp*ts/Ti;kd=kp*Td/ts;dthrottle=kp*x(1)+kd*x(2)+ki*x(3);throttle=u_1+dthrottle;if(throttle>2000)throttle=2000;endif(throttle<-2000)throttle=-2000;end%****************************ɲ³µ¿ØÖÆ%/*********ѹËõÊäÈë±äÁ¿*****%E=lisan(-50,50,3,e);EC=lisan(-20,20,3,ec);%/*********¼ÆËãʵ¼ÊÎó²î¡¢Îó²î±ä»¯ÂʵÄÁ¥Êô¶ÈÏòÁ¿*****% E_R(1)=lbell(E,1,4,-3);E_R(2)=trig(E,-3,-2,0);E_R(3)=trig(E,-3,-1,1);E_R(4)=trig(E,-2,0,2);E_R(5)=trig(E,-1,1,3);E_R(6)=trig(E,0,2,3);E_R(7)=rbell(E,1,4,3);EC_R(1)=lbell(EC,1,4,-3);EC_R(2)=trig(EC,-3,-2,0);EC_R(3)=trig(EC,-3,-1,1);EC_R(4)=trig(EC,-2,0,2);EC_R(5)=trig(EC,-1,1,3);EC_R(6)=trig(EC,0,2,3);EC_R(7)=rbell(EC,1,4,3);%/*********¼ÆËãÄ£ºýÁ¿Êä³ö*****%U_R1=dikaer(E_R,7,EC_R,7);U_R1=reshape(U_R1,1,49);U_R2=jdikaer(U_R1,49,R,7);U_R=max(U_R2);u_L=mean(U_R);%ÐèÒª¸Ä½ø%/*********¼ÆË㾫ȷÁ¿Êä³ö*****%brake=-flisan(-2000,2000,3,u_L);e_2=e_1;e_1=e;%/************************Ñ¡Ôñ¹æÔòif (e<0)if ((e>-Eswith)||(throttle_1~=0))if(throttle<=throttle_1)throttle_1=throttle;% throttle_1=throttle_1-throttle; u=throttle;Q(k)=u;W(k)=0;elsethrottle=0;throttle_1=throttle;u=throttle;Q(k)=u;W(k)=0;endelseif(throttle_1==0)brake_1=brake;u=brake;W(k)=u;Q(k)=0;elsethrottle=0;throttle_1=throttle;u=throttle;Q(k)=u;W(k)=0;endendelseif(e~=0)if(brake_1==0)throttle_1=throttle;u=throttle;Q(k)=u;W(k)=0;elsebrake=0;brake_1=brake;u=brake;endelseu=0;W(k)=0;Q(k)=0;endend%********************»-ͼÊä³öÁ¿¶¨ÒåM(k)=u;N(k)=e;%******************************³ÙÖÍ»·½Úif (time(k)<=0.5)u=0;elseu=M(k-0.5/ts);endend% »-ͼfigure(1);plot(time,vd,'r',time,y,'k','linewidth',2); xlabel('time(s)');ylabel('vd,y');legend('ÆÚÍû','ʵ¼Ê');figure(2);plot(time,Q,'r',time,W,'k','linewidth',2); xlabel('time(s)');ylabel('u');figure(2);plot(time,Q,'r','linewidth',2);xlabel('time(s)');ylabel('u');figure(3);plot(time,W,'r','linewidth',2);xlabel('time(s)');ylabel('u');figure(4);plot(time,N,'b'); xlabel('time£¨s£©'); ylabel('e');。

相关文档
最新文档