01:PID

news2024/9/27 17:21:59

前言

位式控制算法

        位式控制算法是一种通过比较设定值(SV)和当前值(PV)来控制目标的方法。当PV小于SV时,输出高电平,执行部件工作;当PV大于或等于SV时,输出低电平,执行部件不工作。这种算法的输出信号一般只有两种状态(LOW / HIGH)。

1:位式控制算法的输出信号out只有H和Ll两中状态

2:out的状态

位式控制算法虽然简单易实现,但存在以下几个主要的不足:

  1. 控制精度不高:位式控制算法的控制精度受到比较器精度和执行部件响应时间的限制,容易出现误差。
  2. 控制稳定性差:由于位式控制算法的输出信号只有两种状态,容易出现抖动现象,导致系统不稳定。
  3. 对系统参数变化敏感:位式控制算法对系统参数的变化比较敏感,一旦系统参数发生变化,容易导致控制失效。
  4. 无法处理连续变化:由于位式控制算法只比较当前值和设定值,无法处理连续变化的过程,容易出现控制滞后现象。

        这种算法虽然简单,但是存在非常大的缺陷,使结果很难稳定在我们设置的期望。所以我们采用了PID这种算法来更加精密的控制,下面我们就来介绍PID算法。

一:PID算法

        历史偏差:X1,X2,X3,X4........Xk-2,Xk-1,Xk;PID算法从开始运行以来到现在出现的偏差。

        当前偏差:现在的偏差

        最近偏差:最近这一次前面的2,3次偏差值。

1:比例算法---P

p算法也就是我们的比例算法

        OUT=Kp*EK+out0-----比例算法

        out0:当EK为0时,不至于不输出信号。

        EK:出现的偏差

        比例系数Kp越大,控制作用越强,但过大的比例系数会导致系统不稳定。比例控制算法具有简单、快速、直观等优点,适用于一些较为简单的控制系统。

        在实际应用中,为了提高控制精度和稳定性,常常将比例控制算法与积分控制算法(I)和微分控制算法(D)进行组合,形成PID控制算法。其中,积分控制算法可以消除静差,提高系统的稳态精度;微分控制算法可以预测未来误差的变化趋势,提前进行调节,提高系统的动态性能。

2:积分算法---I

SK=E1+E2+E3+E4+.......+Ek-2+Ek-1过去历史点的所有偏差点的值;有正有负(见前面)

SK=E1+E2+E3+E4+.......+Ek-2+Ek-1=

        A:>0 过去的这个段时间大部分都没有达标。  (正的数大于负的数,正:期望值(Sv)>反馈值(Pv))

        B:=0

        C:<0  过去的这段时间大部分都超标了。 (正的数小于负的数,负:期望值(Sv)<反馈值(Pv))

        OUT=Kp*Sk+OUT0

        PID算法中的积分算法主要考虑的是控制对象的历史误差情况。具体来说,积分算法会将过去的误差状况参与当前的输出控制。然而,当系统没有到达目标期间,这些历史误差会对当前的输出产生干扰。

        在系统进入稳定状态后,特别是当前值和设定值没有误差时,积分算法就会根据过去的误差值输出一个相对稳定的控制信号,防止偏离目标值。

3:微分算法---D

偏差的差

Dk=Ek-Ek-1

        A:>0 偏差增大的趋势

        B:=0 

        C:<0 偏差减小的趋势

OUT=Kp*Dk +OUT0

        微分偏差是指控制系统在输入偏差发生变化时,输出变量与设定值之间的偏差。微分偏差反映了偏差信号的变化趋势,可以预测系统未来的变化趋势。

        在PID控制算法中,微分控制环节的作用是利用偏差信号的变化趋势来调节输出,以减小系统的超调量和调节时间。微分控制环节的调节作用与偏差信号的变化速度成正比,当偏差信号变化速度较大时,微分控制环节的调节作用较强;当偏差信号变化速度较小时,微分控制环节的调节作用较弱。

        在实际应用中,需要根据被控系统的特性和要求来选择合适的微分参数,以获得更好的控制效果

4:PID算法模型

OUT=Pout+Iout+Dout

        =(Kp*Ek+out)+(Kp*Sk+out)+(Kp*Dk+out)

        =Kp(Ek+Sk+Dk)+out

        这样做可以弥补单独的不足,计算出的out为一个周期的脉宽(高电平);

Sk的处理:

        T:采样周期T是指从一个采样时刻点到下一个采样时刻点的时间间隔。换句话说,它是指在一个控制系统或算法中,两次连续采样的时间间隔。在PID控制算法中,采样周期T是一个重要的参数,它决定了控制系统的响应速度和精度。采样周期T的大小会对控制系统的性能产生影响,如果采样周期T过长,可能会导致系统响应滞后,影响控制效果;如果采样周期T过短,可能会导致系统过于敏感,容易产生超调和震荡。因此,需要根据实际情况选择合适的采样周期T,以保证控制系统的稳定性和准确性。

        Ti:积分时间在PID控制中是指控制器输出的变化率,它决定了控制器输出的增长速度。积分时间Ti越大,控制器输出的增长速度越慢,反之则越快。积分时间Ti的选择会影响系统的静态误差消除速度和超调量。如果积分时间Ti过小,可能会导致系统产生较大的超调量;如果积分时间Ti过大,则会导致系统静态误差消除速度变慢。因此,需要根据实际情况选择合适的积分时间Ti,以实现最优的控制效果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1985308.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android 中compileSdk、minSdk、targetSdk 是干什么用的?

作为多年 Android 开发的老司机&#xff0c; compileSdk 、minSdk、targetSdk 都是经常见到&#xff0c;但其具体含义是什么&#xff1f;它们都是在什么场景下去使用的。回想起来还真不太能说得清楚。 背景 要想说清楚它们是干什么的&#xff0c;那就不得不说一下主角 Android …

每组中随机选一行

Excel的A列是分组&#xff0c;B列是明细。 AB1GroupName2AJohn3AJoe4AAnn5ASusan6AJames7AMary8AL .orraine9BJoseph10BSinead11BMichelle12BBreege13BTom14BFrancis15BConan16BCait17BRonan18BDeirdre19BAoife20BSile21BSarah22CLisa23CMicky24CPat25DMiles26DOlivia27DAvril…

骑行合并 轨迹合并

https://gpxt.beer5214.com/ 利用GPX轨迹合并工具提升长途骑行与徒步体验 对于长途骑行或长途徒步旅行的爱好者来说&#xff0c;记录和管理GPS轨迹是一项重要的活动。无论是为了后续分析自己的路线、分享经历还是为下一次冒险做准备&#xff0c;确保所有轨迹数据的完整性和连贯…

Spark轨迹大数据处理_scalaSpark代码实多点对多点的GIS点(经纬度点)的方位角计算

计算逻辑 1、我这个代码是基于一个简化方位角模型&#xff0c;忽略了地球的曲率&#xff0c;适用于距离相对较短的距离。因为业务相关&#xff0c;这个方位角两个点的距离计算不会超过1000km。 2、我这个方位角的计算逻辑&#xff1a;是从一个地点指向另一个地点的方向&#xf…

中小学创客室培养学生全面发展

随着时代的发展,教育也在飞速发展&#xff0c;教育决定着一个国家的未来&#xff0c;一个家庭的未来&#xff0c;一个人的未来&#xff0c;我国近年来大力鼓励科学教育&#xff0c;支持科学创新。因此&#xff0c;学校应该重视对学生的科学教育&#xff0c;尤其是处于思想启蒙阶…

使用Python编写文件重复检查器

在日常工作中&#xff0c;我们经常需要处理大量文件&#xff0c;但有时候会遇到文件重复的情况。为了有效管理文件并避免重复占用存储空间&#xff0c;我们可以编写一个简单的Python程序来检查文件夹中是否存在重复文件。 C:\pythoncode\new\getmd5offile.py 介绍 本文将介绍…

CSP 2019 第三题:纪念品

CSP 2019 第三题&#xff1a;纪念品 题目链接 题目&#xff1a; 题意&#xff1a; 数据给出能预测的天数&#xff0c;纪念品种类&#xff0c;持有金币。每天对金币进行买卖&#xff0c;求买卖后的金币最大值&#xff08;如何赚得更多&#xff09; 知识点考&#xff1a; 动态规划…

从零到一:使用低代码平台搭建设备保养管理系统,提升运维效率

设备作为企业生产线上不可或缺的“动脉”&#xff0c;其稳定、高效的运行状态直接关乎到产品的质量与交付速度。然而&#xff0c;设备在长期高负荷运作下&#xff0c;难免会出现磨损、故障等问题&#xff0c;这不仅会影响生产进度&#xff0c;还可能带来额外的维修成本与安全风…

微信小程序--实现地图定位---获取经纬度

(1) (2) (3) html: <view class"titleTwo" style"border: none;"><view class"fontSize30 invoiceTile">企业地址</view><view class"invoiceRight" bind:tap"tapChooseAddress" data-maptype"…

Android 在布局中tools使用

效果图 布局 <TextViewandroid:id"id/tv"android:layout_width"wrap_content"android:layout_height"wrap_content"android:text"你好&#xff0c;这是TextView"android:visibility"gone"app:layout_constraintStart_to…

tornado 下载文件,显示下载速度、已下载大小、剩余时间、进度条、文件总大小

tornado 下载文件&#xff0c;显示下载速度、已下载大小、剩余时间、进度条、文件总大小 初版解决中文文件名报错显示下载速度、已下载大小下载过程中显示文件总大小、剩余时间、进度条正常前进 初版 import asyncio import osimport aiofiles import tornado.webclass FileHa…

【算法刷题日志】1044 最长重复子串和75 颜色分类,

颜色分类 这题就是双指针法&#xff0c;指到1的时候就和p1进行交换&#xff0c;然后p1指针往前移动&#xff0c;指到0的时候就和p0指针进行交换&#xff0c;p0和p1同时往前移动&#xff0c;由于可能出现连续的0后面连续的1&#xff0c;所以为了避免1被交换到末尾&#xff0c;当…

conda-pack基于同一种操作系统的环境打包教程

打包环境总结 1.激活需要复制的虚拟环境 conda env list cd /home/ww/miniconda3/envs/ conda activate webtool 2.将虚拟环境打包&#xff0c;包名&#xff1a;webtool_test.tar.gz conda pack -n webtool -o webtool_test.tar.gz 3.创建虚拟环境文件夹&#xff0c;把打包的…

Python实现深度森林(Deep Forest)分类模型(deepforest分类算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 随着大数据时代的到来&#xff0c;机器学习技术在各个领域的应用变得越来越广泛。在许多实际问题中&am…

HCIP学习 | 广域网、OSPF基础

Days03&#xff08;24.8.4&#xff09;广域网技术 概述 广域网技术在数据链路层面针对不同的物理链路定义了不同的封装方式。‌ 对于局域网封装&#xff0c;‌主要有Ethernet 2&#xff08;‌基于TCP/IP开发&#xff09;‌和IEEE802.3&#xff08;‌基于OSI协议开发&#xff0…

红黑树的概念和模拟实现[C++]

文章目录 红黑树的概念一、红黑树的性质红黑树原理二、红黑树的优势和比较 红黑树的模拟实现构建红黑树的数据结构定义节点的基本结构和初始化方式插入新节点插入新节点的颜色调整颜色和结构以满足红黑树性质 红黑树的应用场景 红黑树的概念 一、红黑树的性质 红黑树是一种自平…

强类型语言、弱类型语言、静态类型语言、动态类型语言

强类型和弱类型&#xff0c;并没有严格绝对的界限&#xff0c;比如C/C这种典型的强类型语言&#xff0c;实际上也允许一些隐式类型传换。

一六二、记node-sass安装失败和node切换失败问题

1. 项目install失败 2. 查询问题 在stackoverflow查询到error /node_modules/node-sass: Command failed&#xff0c;明白是node版本和node-sass版本不匹配 查询自己的node版本 应该是node版本太高的问题 3. 切换node版本 使用n切换node版本失败 原因&#xff1a;而 n 默…

2-Linux系统概述

Linux系统概述 创始人——林纳斯托瓦兹&#xff0c;Linux诞生于1991年&#xff0c;作者上大学期间实现的&#xff0c;Linux的特点&#xff1a;开源、免费、拥有最为庞大的源码贡献者&#xff1b;Linux的吉祥物是企鹅 区别开源和闭源 开源&#xff1a;开放程序源代码&#xff0…

前端(五):前端工程化

前端工程化是指在企业级的前端开发项目中&#xff0c;把前端开发所需的工具、技术、流程、经验等进行规范化、标准化。 一、环境准备 &#xff08;一&#xff09;环境准备 1、Vue-cli&#xff1a;是Vue官方提供的一个脚手架&#xff0c;用于快速生成一个Vue的项目模板。 2、…