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

响应式网站定制开发深圳网站建设大全

响应式网站定制开发,深圳网站建设大全,做网站副业,wordpress被和谐使用stm32实现电机的PID控制 PID控制应该算是非常古老而且应用非常广泛的控制算法了,小到热水壶温度控制,大到控制无人机的飞行姿态和飞行速度等等。在电机控制中,PID算法用的尤为常见。 文章目录使用stm32实现电机的PID控制一、位置式PID1.计…

使用stm32实现电机的PID控制

PID控制应该算是非常古老而且应用非常广泛的控制算法了,小到热水壶温度控制,大到控制无人机的飞行姿态和飞行速度等等。在电机控制中,PID算法用的尤为常见。

文章目录

  • 使用stm32实现电机的PID控制
  • 一、位置式PID
    • 1.计算公式
    • 2.C语言实现
  • 二、增量式PID
    • 1.计算公式
    • 2.C语言实现
  • 三、P、I、D各个参数的作用
  • 总结


一、位置式PID

1.计算公式

在电机控制中,我们给电机输出的是一个PWM占空比的数值。
话不多说,直接上位置式PID基本公式:
在这里插入图片描述
控制流程图如下:
在这里插入图片描述

上图中的目标位置一般我们可以通过按键或者开关等方式编程实现改变目标值,测量位置就是通过stm32去采集编码器的数据。目标位置和测量位置之间做差这个就是目前系统的偏差。送入 PID 控制器进行计算输出,然后再经过电机驱动的功率放大控制电机的转动去减小偏差, 最终达到目标位置的过程。

2.C语言实现

如何把我们以上的理论分析和控制原理图使用 C 语言写出来呢,这是一个有趣且实用的过程。位置式 PID 具体通过 C 语言实现的代码如下:


int Position_PID (int Encoder,int Target)
{
static float Bias,Pwm,Integral_bias,Last_Bias;
Bias=Target- Encoder; //计算偏差
Integral_bias+=Bias; //求出偏差的积分
Pwm=Position_KP*Bias+Position_KI*Integral_bias+Position_KD*(Bias-Last_Bias);//PID基本公式
Last_Bias=Bias; //保存上一次偏差
return Pwm; //输出
}

入口参数为编码器的位置测量值和位置控制的目标值,返回值为电机控制
PWM(现在再看一下上面的控制框图是不是更加容易明白了)。
第一行是相关内部变量的定义。
第二行是求出位置偏差,由测量值减去目标值。
第三行通过累加求出偏差的积分。
第四行使用位置式 PID 控制器求出电机 PWM。
第五行保存上一次偏差,便于下次调用。
最后一行是返回。

二、增量式PID

1.计算公式

速度闭环控制就是根据单位时间获取的脉冲数(这里使用了 M 法测速)测量电机的速度信息,并与目标值进行比较,得到控制偏差,然后通过对偏差的比例、积分、微分进行控制,使偏差趋向于零的过程。
在这里插入图片描述在我们的速度控制闭环系统里面只使用 PI 控制,因此对 PID 控制器可简化
为以下公式:
在这里插入图片描述
控制框图和位置式的一样的。
在这里插入图片描述
上图中的目标速度一般我们可以通过按键或者开关等方式编程实现改变目标值,测量速度前面在编码器的章节已经有说到就是通过单片机定时去采集编码器的数据并清零。目标速度和测量速度之间做差这个就是目前系统的偏差。送入 PID 控制器
进行计算输出,然后再经过电机驱动的功率放大控制电机的转动去减小偏差, 最终
达到目标速度的过程。

2.C语言实现

如何把我们以上的理论分析和控制原理图使用 C 语言写出来呢,这是一个有趣且实用的过程。位置式 PID 具体通过 C 语言实现的代码如下:


int Incremental_PI (int Encoder,int Target)
{
static float Bias,Pwm,Last_bias;
Bias=Encoder-Target; //计算偏差
Pwm+=Velocity_KP*(Bias-Last_bias)+Velocity_KI*Bias; //增量式 PI 控制器
Last_bias=Bias; //保存上一次偏差
return Pwm; //增量输出
}

入口参数为编码器的速度测量值和速度控制的目标值,返回值为电机控制 PWM。
第一行是相关内部变量的定义。
第二行是求出速度偏差,由测量值减去目标值。
第三行使用增量 PI 控制器求出电机 PWM。
第四行保存上一次偏差,便于下次调用。
最后一行是返回。

三、P、I、D各个参数的作用

自动控制系统的性能指标主要有三个方面:稳定性、快速性、准确性。
稳定性:系统在受到外作用后,若控制系统使其被控变量随时间的增长而最终与给定期望值一致,则称系统是稳定的,我们一般称为系统收敛。如果被控量随时间的增长,越来越偏离给定值,则称系统是不稳定的,我们一般称为系统发散。稳定的系统才能完成自动控制的任务,所以,系统稳定是保证控制系统正常工作的必要条件。一个稳定的控制系统其被控量偏离给定值的初始偏差应随时间的增长逐渐减小并趋于零。
快速性:快速性是指系统的动态过程进行的时间长短。过程时间越短,说明系统快速性越好,过程时间持续越长,说明系统响应迟钝,难以实现快速变化的指令信号。稳定性和快速性反映了系统在控制过程中的性能。系统在跟踪过程中,被控量偏离给定值越小,偏离的时间越短,说明系统的动态精度偏高。
准确性:是指系统在动态过程结束后,其被控变量(或反馈量)对给定值的偏差而言,这一偏差即为稳态误差,它是衡量系统稳态精度的指标,反映了动态过程后期的性能。

在实践生产工程中,不同的控制系统对控制器效果的要求不一样。比如平衡车、倒立摆对系统的快速性要求很高,响应太慢会导致系统失控。智能家居里面的门窗自动开合系统,对快速性要求就不高,但是对稳定性和准确性的要求就很高,所以需要严格控制系统的超调量和静差。

总结

本文主要介绍了在电机的PID控制中常用的位置式PID和增量式PID。

http://www.yayakq.cn/news/964141/

相关文章:

  • 资源网站如何做手机网站不收录
  • 外网网站建设做互联网项目怎么推广
  • 俄罗斯门户网站合肥做网站维护的公司
  • 织梦系统网站wordpress设置文章置顶
  • 大连英文网站建设公司简介模板免费下载电子版
  • 设计好的建设专业网站营销推广的作用
  • 电商直播app开发公司搜狗推广优化
  • 郑州好的网站建站通信部门网站备案证明
  • 自己建设网站模版服装网站建设与实现
  • 个人放款可以做网站wordpress的菜单静态
  • 河南省住房和建设厅网站工信部网站备案怎么查询
  • iis做的网站手机怎么访问wordpress portfolio插件
  • 网站建设简运维 简历佛山微信网站推广多少钱
  • 网站后台怎么上传文章简单网页设计作业
  • 江西岳顶建设工程有限公司网站wordpress怎么获取数据库
  • 网林时代网站建设微信人生里面微网站怎么做
  • 杭州西湖区做网站东莞公认的第一富人区
  • wordpress 站群软件如何做网页广告
  • 做编程网站有哪些内容wordpress模板程序
  • 如何做vip影视网站垂直行业门户网站
  • 上海专业网站建设公司电话uemo网站平台建设
  • 大连手机模板建站装修展厅设计
  • 企业网站建设报价表企业的vi设计系统
  • 建网站公司都是怎么建设网站的网络营销推广方案案例
  • 收到网站建设账务处理合肥网站关键词优化
  • 广东富盈建设有限公司企业网站内丘附近网站建设价格
  • 建站最好的移动电子商务网站建设
  • 怎么给公司做微网站建筑八大员证报考网站
  • 东营网站关键词多城市地方门户网站系统
  • 网站栏目结构优化卖东西的平台有哪些