当前位置: 首页 > web >正文

STM32 PID控制

一、PID简介

开环控制与闭环控制: 

开环:写出了代码,并且执行完之后,对它就不管不顾,对它当前的状态也不了解。

闭环:输出东西给目标,同时获取它的反馈,控制器直到被控对象的执行状态,可以根据反馈修改输出值。

 二、PID公式

误差:目标值—实际值

PID输出值(最后一个):Ki是Kp除以Ti,Kd是Kp乘Td。

out(t)这三项分别叫做:P比例、I积分、D微分。Kp、Ki、Kd是每项的权重。三个K是在程序中直接给的,是PID调节参数重要调节的值。

假设你在驾驶汽车: 

  • Kp:方向盘灵敏度(误差大时快速转向)
  • Ki:持续偏离车道时逐渐加大转向力度
  • Kd:预判弯道趋势,提前调整方向盘

参数调整口诀

  • Kp 调响应:先增大 Kp 至系统出现轻微振荡
  • Ki 消余差:加入较小 Ki 消除稳态误差
  • Kd 减震荡:微调 Kd 抑制超调,提高稳定性

离散形式PID:

 上式也称为位置式PID

同样的也有增量式PID:

区别: 位置式PID是直接将需要的值给被控对象

            增量式PID是得到输出值的增量或减量,需要被控对象内部有积分功能才能得到输出值。

三、位置式PID程序实现 

 四、增量式PID程序实现

(本代码是直接输出的全量,可以直接赋值给被控对象),和上面的位置式实现功能一样。

http://www.xdnf.cn/news/13384.html

相关文章:

  • python打卡训练营打卡记录day50
  • 林清轩以研发为核,用专利技术筑就高端国货护肤壁垒
  • 函数02 day11
  • AI赋能农业
  • 第十六章 I2C
  • 【PhysUnits】17.6 Unit基础结构(unit.rs)
  • <component :is=““>
  • CentOS7下的ZooKeeper部署
  • 55. Jump Game
  • Redis持久化策略介绍,以及如何选择?
  • 第二十四章 通用同步异步收发器(USART)
  • java异步编程难题拆解
  • Java 中 switch-case 语句的执行逻辑与避坑指南
  • Java判断规则工具类
  • 工作日记总结-transaction is aborted, commands ignored until end of transaction block
  • [软件测试]:什么是自动化测试?selenium+webdriver-manager的安装,实现你的第一个脚本
  • Kotlin基础语法二
  • 大数据学习(136)-数据埋点
  • 玄机 日志分析-Tomcat日志分析 WriteUp
  • G-Star公益行 | 公益组织入门开源技术,六月北京点燃改变的星火
  • 【MySQL数据库】InnoDB存储引擎:事务原理redolog、undolog与版本控制MVCC
  • QuecPython 文件系统操作
  • 多光谱图像技术在苗期作物与杂草识别中的研究进展
  • C语言学习20250610
  • Dynadot邮箱工具指南(六):将域名邮箱添加至网易邮箱大师
  • Leetcode 3576. Transform Array to All Equal Elements
  • 新能源知识库(34)什么是单一制和两部制
  • 【SAP MM SD FICO】销售视图和会计视图
  • C++ 8.1内联函数之宏定义
  • Metasploitable: 1靶场渗透