数字PID算法基础

        数字PID是由编程语言实现的PID算法并烧录到控制芯片中,控制芯片与电机驱动连接,将PID控制算法的输出转换为PWM控制信号发送给电机驱动电路,电机驱动电路与直流电机相连并将PWM控制信号转换为具有相同占空比的PWM供电电压,通过对输入电机的PWM供电电压占空比的控制实现对电机转速的调节;通过传感器监测电机转速,反馈至控制芯片,实现闭环。

1、公式推导

        PID控制算法在连续时间序列下的公式如下:

        对连续时间信号进行等间隔采样,就得到离散化的数字信号。

        容易得到PID的离散化表达式,该表达式也成为位置式PID:

        增量式PID,即ux - ux-1,表达式为:

        所以,可以看出,位置式PID和增量式PID在本质上是同一种表达式。

2、PID控制的实际含义

        以电机控制为例,期望转速是1000rpm,与实际电机转速(400rpm)的差值为600rpm输入PID控制器,电机驱动产生PWM波调节电机转速。

2.1、使用比例环节进行控制

        只是用比例环节进行控制,e(t)为控制转速与电机实际转速的差值。

        这是用比例环节进行电机控制的转速曲线,随着系数Kp的增加,转速曲线的波动越来越陡峭,波峰也越来越高。从Kp调节控制器的转速曲线可以发现,这里有两个问题:

        1、存在转速波动。转速调节的初始阶段,电机转速有一段上下波动阶段(7秒前),这一段波动在实际应场景往往是不可以接受的;

        2、存在稳态误差。在比例环节的控制下,电机的稳态转速始终与目标转存在偏差。根据比例环节的公式,当偏差消失后比例环节的输出也为0,因此稳态转速永远无法与目标转速一致。

        实际中,随着Kp增加,前期转速波动增加、稳态误差降低,但始终无法消除。

2.2、增加微分环节

        针对问题1的转速波动,可以通过增加微分环节来解决。

        通过,下面的转速曲线,来看积分环节如何解决转速波动问题的。e(t)大于e(t-1)表示当前转速正在远离目标转速,根据积微分环节的公式,此时微分环节会将转速往靠近目标值进行调整。可以看到微分环节相当于一个阻尼器,转速原理目标值时,它阻止远离;转速靠近目标值时,它阻止靠近。从而让被控对象更快的稳定在一个状态,不进行波动。

2.3、增加积分环节

        针对问题2的稳态误差问题,可以通过增加积分环节来解决。

        对于稳态误差,系统稳定后目标值和实际中始终存在一个偏差。如果此时,积分环节增加进来,它会对这部分偏差进行正向积分,在积分作用下,积分环节的输出变得越来越大,因此PID控制起的输出也变得越来越大,从而当前转速开始升高。当转速超过目标转速后,积分环节又会对这部分偏差进行负向积分,PID控制器的输出变小,从而转速开始下降。

        只要转速没有停在目标转速上,积分环节就会一直发挥调节作用,被控对象会因为这种调节作用,最终稳定在目标转速上。

3、总结

        PID控制器在只有比例环节时,存在转速波动和稳态误差。通过增加积分环节可以消除稳态误差,通过微分环节消除转速调节的波动问题。因此,在PID三个环节的共同努力下,就可以实现如下理想的转速调节曲线。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据库——简单查询复杂查询

1.实验内容及原理 1. 在 Windows 系统中安装 VMWare 虚拟机,在 VMWare 中安装 Ubuntu 系统,并在 Ubuntu 中搭建 LAMP 实验环境。 2. 使用 MySQL 进行一些基本操作: (1)登录 MySQL,在 MySQL 中创建用户,…

AI又进化了,AI 写代码工具

今年 AI 的发展可谓一日千里,相信不少同学应该都用过 AI 来帮助自己提高开发效率吧? 比如让 AI 根据注释生成代码、解释整段代码、提供技术问题的答疑、修改 Bug、生成单元测试等等。 在 12 月 28 日刚刚结束的 WAVE SUMMIT 深度学习开发者大会上&…

使用Halcon 采集图像并进行简单处理rgbl_to_gray/threshold/connection/fill_up

使用Halcon 采集图像并进行简单处理 文章目录 使用Halcon 采集图像并进行简单处理 下面介绍一个简单的采集图像的例子。在Halcon中利用图像采集接口,使用USB3.0相机实时拍摄图像。采集到图像后对图像进行简单的阀值分割处理,将有物体的区域标记出来。 &a…

文章解读与仿真程序复现思路——电力自动化设备EI\CSCD\北大核心《面向平稳氢气需求的综合制氢系统鲁棒优化配置方法》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主的专栏栏目《论文与完整程序》 这个标题涉及到针对平稳氢气需求的综合制氢系统鲁棒优化配置方法。让我们逐步解读这个标题的关键要素: 面向平稳氢气需求: 这部分指…

基于js和html的骰子游戏

介绍: 1.游戏者选择“大”时,三个骰子点数之和为11-18时,游戏者获胜。2.游戏者选择“小”时,三个骰子点数之和为3-10时,游戏者获胜。3.如果游戏者选择具体点数,则根据三个骰子的点数计算,如果与…

7.8子集(LC78-M)

算法: 其实也是组合问题,还是用回溯。 与以前不同的是,如果把 子集问题、组合问题、分割问题都抽象为一棵树的话,那么组合问题和分割问题都是收集树的叶子节点,而子集问题是找树的所有节点! 其实子集也是…

什么是 SPI,它有什么用?

文章目录 什么是 SPI,它有什么用? 什么是 SPI,它有什么用? SPI 全称是 Service Provider Interface ,它是 JDK 内置的一种动态扩展点的实现。 简单来说,就是我们可以定义一个标准的接口,然后第三…

【HTML5】第1章 HTML5入门

学习目标 了解网页基本概念,能够说出网页的构成以及网页相关名词的含义 熟悉Web标准,能够归纳Web标准的构成。 了解浏览器,能够说出各主流浏览器的特点。 了解HTML5技术,能够知道HTML5发展历程、优势以及浏览器对HTML5的支持情…

如何安装ubuntu kylin(优麒麟)系统

半个月前(2020-12-25),优麒麟官方发布消息说,优麒麟与 CodeWeavers 公司积极合作适配,正式推出 CrossOver 优麒麟版本,使优麒麟系统能够兼容运行 Windows 应用。将微信(crossover版) 和 QQ(crossover版) 上架麒麟软件商店。 优麒…

基于立锜RTQ7882,支持全协议及DP显示功能的PD快充方案

在上一篇文章【基于RTQ7882的车载PD快充方案 - 大大通 (wpgdadatong.com)】中,已经对立锜科技(Richtek)及主打产品RTQ7882的基本功能作了介绍。 本文将分享RTQ7882近期新增的功能,以及其Cost Down版本。 旨…

Spring AOP<一>简介与基础使用

spring AOP 基础定义 含义使用切面组织多个Advice,Advice放在切面中定义。也就是说是定义通知的自定义类。自定义的AOP类Aspect连接点方法调用,异常抛出可以增强的点JoinPoint :也就是**被增强的方法的总称,可以获取具体方法的信息&#xff…

系统启动流程 - 理解modules加载流程

​编辑 Hacker_Albert    202 linux 启动流程module加载 1.启动过程分为三个部分 BIOS 上电自检(POST)引导装载程序 (GRUB2)内核初始化启动 systemd,其是所有进程之父。 1.1.BIOS 上电自检(POST) BIOS stands for…