嵌入式硬件篇---PID控制

news2025/2/26 18:56:36

文章目录

  • 前言
  • 第一部分:连续PID
    • 1.比例(Proportional,P)控制
    • 2.积分(Integral,I)控制
    • 3.微分(Derivative,D)控制
    • 4.PID的工作原理
    • 5..实质
    • 6.分析
    • 7.各种PID控制器
      • P控制器
        • 优点
        • 缺点
      • I控制器
        • 优点
        • 缺点
      • PI控制器
        • 优点
        • 缺点
      • D控制器
        • 注意
        • 优点
        • 缺点
  • 第二部分:离散PID
    • 分类
      • 1.位置式PID
      • 2.增量式PID
  • 第三部分:额外小知识点
  • 总结
  • 总结


前言

以上就是今天要讲的内容,本文简单介绍了连续型PID和离散型PID的原理及各种PID的优缺点。


第一部分:连续PID

PID:
PID控制器,即比例-积分-微分控制器,是一种广泛应用于工业控制系统中的反馈回路控制器。它通过**控制系统的偏差(即设定值与实际值之间的差)**来调节控制变量,使得系统稳定并达到预期的性能指标。PID控制器由以下三个基本控制作用组成:

1.比例(Proportional,P)控制

作用:比例控制的作用与当前偏差成正比。偏差越大,比例控制作用产生的调节量就越大。
特点:可以快速减少偏差,但不能完全消除静态误差(即系统稳定后存在的偏差,即系统的实际值和目标值之间恒定存在的差值),如果P过大会导致超调(控制器输出量变化过大)。
参数:比例增益,决定了比例作用的强度。

2.积分(Integral,I)控制

作用:积分控制的作用与偏差的累积量成正比。只要偏差存在,积分控制就会不断累积,从而产生调节作用。
特点:可以消除静态误差,提高系统的稳态精度,但可能会引起系统的响应速度变慢和超调
参数:积分时间,决定了积分作用的累积速度。

3.微分(Derivative,D)控制

作用:微分控制的作用与偏差变化的速率成正比。它预测偏差的未来趋势,并提前产生调节作用。
特点:可以减小超调,提高系统的动态性能,对噪声敏感,可能会引起系统的振荡。
参数:微分时间,决定了微分作用的强度。

4.PID的工作原理

PID控制器的工作原理: PID控制器通过以下步骤对系统进行控制:

  1. 测量系统的输出(或过程变量)。
  2. 计算设定值与实际输出之间的偏差。
  3. 根据偏差及偏差的变化率,分别计算出比例、积分、微分三个控制作用。
  4. 将这三个控制作用相加,得到总的控制量。
  5. 利用这个控制量对系统进行调节。

5…实质

  1. 实质:通过改变PWM等的输出值,将实际目标参量始终围绕在设定目标参量附近
  2. 公式:目标值与实际反馈值通过比例、微分、积分计算获得控制器输出值
  3. 示例:带编码器(测量电机的位置和素速度)的直流减速(降低速度、提高扭矩)电机的速度跟踪(不会因为电压波动或者电机负载变化导致的电机速度变化)

6.分析

  1. 首先点明受控对象、目标值、控制器输出值、反馈实际值是谁

  2. PID流程图

  3. 静态误差的存在判断:如果控制器输出量为0,判断控制对象是否会发生自发偏移

  4. 无论是P、I、D参数都是与误差有关(目标值-反馈实际值)

7.各种PID控制器

P控制器

优点

反应快

缺点

存在静态误差,过大会导致振荡输出或者超调

I控制器

优点

反应慢

缺点

不存在静态误差

PI控制器

优点

反应快、没有稳态误差

缺点

没有D项,无法对未来进行预测,因此无法有效控制振荡输出或者超调

D控制器

注意

通常与P控制器或者PI控制器一起使用,不单独使用

优点

对未来进行预测,产生阻碍作用,解决振荡输出或者超调

缺点

过大会导致系统卡顿

第二部分:离散PID

实质:离散PID:将调控周期进行适当控制
积分项离散
微分项等效

分类

1.位置式PID

  1. 位置式PID就是连续型PID离散化后的PID公式,输出完整控制量
  2. 涉及到:本次、上次误差

2.增量式PID

  1. 增量式PID,第k次与第(k-1)次输出结果做差的结果,输出的是控制量的变化值
  2. 涉及到:本次、上次、上上次三次误差量
  3. 注意:增量式PID可以通过控制器内积分的操作实现位置式PID类似的功能

第三部分:额外小知识点

  1. STLINK:给STM32下载程序和调试程序
  2. USB转串口模块:用于STM32与上位机进行通信
  3. 离散型PID的调控周期T:取决于被控制对象的变化速度
  4. STM32等单片机,使用中断操作时,注意中断和主函数内的硬件操作的冲突问题(避免同时进行操作)
  5. PID调试,可以使用串口工具(SerialPlot)显示PID波形。使用串口时,注意适当的延迟作用。

总结

最后使用哪一种PID形式,需要根据自己项目的需求具体来确定


总结

以上就是今天要讲的内容,本文仅仅简单介绍了连续型PID和离散型PID的原理及各种PID的优缺点。

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

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

相关文章

学成在线_内容管理模块_创建模块工程

学成在线模块工程 1.各个微服务依赖基础工程2.每个微服务都是一个前后端分离的项目3.xuecheng-plus-content:内容管理模块工程xuecheng-plus-content-modelxuecheng-plus-content-servicexuecheng-plus-content-api 1.各个微服务依赖基础工程 2.每个微服务都是一个前…

免费送源码:Java+ssm+MySQL Springboot卫生院儿童预防接种系统 计算机毕业设计原创定制

摘 要 儿童预防接种工作实行网络信息化管理,是我国预防规划工作发展的需要。接种信息实行网络信息化不仅是预防接种工作步入了一个新的台阶,更重要的是解决了多年接种疫苗过程种,预防接种剂次不清,难以全程有效接种的问题&#x…

OSPF的LSA的学习研究

OSPF常见1、2、3、4、5、7类LSA的研究 1、拓扑如图,按照地址表配置,激活OSPF划分相关区域并宣告相关网段 2、1类LSA,每台运行了OSPF的路由器都会产生,描述了路由器的直连接口状况和cost 可以看到R1产生了一条router lsa&#xff0…

JAVA:MyBatis 缓存机制详解的技术指南

1、简述 MyBatis是Java开发中常用的持久层框架之一,通过面向对象的方式操作数据库。为了提高系统性能,MyBatis提供了两级缓存机制:一级缓存(本地缓存)和二级缓存(全局缓存)。本文将详细讲解MyB…

前后端分离的Java快速开发平台

采用SpringBoot3.x、Shiro、MyBatis-Plus、Vue3、TypeScript、Element Plus、Vue Router、Pinia、Axios、Vite框架,开发的一套权限系统,极低门槛,拿来即用。设计之初,就非常注重安全性,为企业系统保驾护航,…

数据结构:栈和队列详解(上)

一.栈 1.概念与结构: 栈:一种特殊的线性表,只允许在顺序表的一段插入和删除数据,进行插入和删除的一端叫做栈顶,另外一端则叫做栈底,而我们将在栈顶插入数据叫做压栈(入栈或进栈)&a…

初识go语言之指针用法

一、环境准备 安装go语言编译环境,官网地址:https://go.dev/dl/ 或者 https://golang.google.cn/dl/ 点击下载按提示安装即可 vscode 安装go语言扩展 测试 package mainimport "fmt"func main() {fmt.Println("Hello, World!") …

python(25) : 含有大模型生成的公式的文本渲染成图片并生成word文档(支持flask接口调用)

公式样例 渲染前 \[\sqrt{1904.615384} \approx 43.64\] 渲染后 安装依赖 pip install matplotlib -i https://mirrors.aliyun.com/pypi/simple/ requestspip install sympy -i https://mirrors.aliyun.com/pypi/simple/ requestspip install python-docx -i https://mirro…

国产文本编辑器EverEdit - 恢复最近的选区

1 恢复最近的选区 1.1 应用场景 如果用户选择了一些文本,特别是多选区选择,在选择的过程中出现失误,导致选区丢失,一般的做法是骂骂咧咧再选一次,使用EverEdit就没有这个烦恼,EverEdit内置了恢复最近的选区…

54,【4】BUUCTF WEB GYCTF2020Ezsqli

进入靶场 吓我一跳,但凡放个彭于晏我都不说啥了 提交个1看看 1 and 11 1# 还尝试了很多,不过都被过滤了,头疼 看看别人的WP 竟然要写代码去跑!!!,不会啊,先用别人的代码吧&#xf…

【unity进阶篇】unity如何实现跨平台及unity最优最小包体打包方式(.NET、Mono和IL2CPP知识介绍)

考虑到每个人基础可能不一样,且并不是所有人都有同时做2D、3D开发的需求,所以我把 【零基础入门unity游戏开发】 分为成了C#篇、unity通用篇、unity3D篇、unity2D篇。 【C#篇】:主要讲解C#的基础语法,包括变量、数据类型、运算符、…

实力认证 | 海云安入选《信创安全产品及服务购买决策参考》

近日,国内知名安全调研机构GoUpSec发布了2024年中国网络安全行业《信创安全产品及服务购买决策参考》,报告从产品特点、产品优势、成功案例、安全策略等维度对各厂商信创安全产品及服务进行调研了解。 海云安凭借AI大模型技术在信创安全领域中的创新应用…

联想装系统后触摸板无法设置双指手势

我的一个电脑是联想小新air13,装Windows10系统后,没有找到设置触摸板手势的地方 也没有“装置设定值” 这个选项 经查询,需要去联想网站搜索驱动,下载了一个“Lenovo联想驱动管理” ,更新了下触摸板驱动, …

ue5 制作,播放,停止动画蒙太奇

右键,动画蒙太奇 新建插槽 把默认插槽选择为,自己新建的插槽 然后拖一个动画进去 input换成玩家0 就可以接收键盘事件 pawn 自动控制玩家换成玩家0 找到动画蓝图 把它化成我们那边蒙太奇里面的槽 第三步:第三人称角色蓝图 按下F…

一文大白话讲清楚webpack基本使用——1——完成webpack的初步构建

文章目录 一文大白话讲清楚webpack基本使用——1——完成webpack的初步构建1. 先回忆webpack是个啥2. webpack四大核心2.1 Entry(入口)2.2 Output(输出)2.3 Loader(加载器)2.4 Plugin(插件) 3. 按部就班实现webpack3.1 初始化项目3.2 完成项目骨架搭建3.3 实现webpack构建 一文…

迁移学习-详解

一、fasttext工具介绍 1 fasttext介绍 1.1 fasttext作用 作为NLP工程领域常用的工具包, fasttext有两大作用: 进行文本分类 训练词向量 1.2 fasttext工具包的优势 正如它的名字, 在保持较高精度的情况下, 快速的进行训练和预测是fasttext的最大优势. fasttext优势的原因:…

Mac 删除ABC 输入法

参考链接:百度安全验证 Mac下删除系统自带输入法ABC,正解!_mac删除abc输入法-CSDN博客 ABC 输入法和搜狗输入法等 英文有冲突~~ 切换后还会在英文状态,可以删除 ;可能会对DNS 输入有影响,但是可以通过复…

读取GPS文件中的坐标

不同厂家产生的gps不同,但MALA, impulse等厂家还是比较规范,格式基本一致。 1 格式对比 厂家1:128930 1 31.865250637 118.631077136 -87.226619530 -17.247052234 -20.881583506 -19.300643625 9.146650245 -5.089975857 4.000000000 2024…

【github 使用相关】GitHub Desktop桌面端基础操作 WIP 分支 提交pr

WIP 是 “Work In Progress”(进行中的工作)的缩写,WIP分支通常用来存放尚未完成或不稳定的代码,开发者可在WIP进行实验逐步完成某项功能、进行团队开发、修复重要BUG和多任务处理。 在 GitHub Desktop 上管理 WIP(Wo…

C语言之装甲车库车辆动态监控辅助记录系统

🌟 嗨,我是LucianaiB! 🌍 总有人间一两风,填我十万八千梦。 🚀 路漫漫其修远兮,吾将上下而求索。 C语言之装甲车库车辆动态监控辅助记录系统 目录 一、前言 1.1 (一)…