首页>>科技 >>内容

pid算法视频第三节,pid算法详细介绍

发布时间:2023-11-30 20:08:10编辑:温柔的背包来源:

很多朋友对pid算法视频第三节,pid算法详细介绍不是很了解,每日小编刚好整理了这方面的知识,今天就来带大家一探究竟。

pid算法视频第三节,pid算法详细介绍

一、 PID PID算法介绍在智能车比赛中,为了使智能车能够根据变化的轨迹灵活移动,采用PID算法是很有意义的。首先必须明确,PID算法是基于反馈的。一般来说,这个反馈就是速度传感器返回给单片机的当前电机转速。简单来说,就是将这个反馈与预设值进行比较。如果转速过高,电机两端的电压会降低。相反,电机两端的电压增加。

顾名思义,P指比例,I指积分,D指微分。在电机调速系统中,输入信号为正,要求电机正转时反馈信号也为正(PID算法中误差=输入-反馈),电机转速越高,反馈信号越大。要了解PID算法的原理,首先要了解P、I、D各自的含义和控制规律:

比例p:比例项实际上是预设值与反馈值之差的倍数。例如,如果电机两端的原始电压为U0,比率P为0.2,输入值为800,反馈值为1000,则电机两端的电压应变输出为U0 0.2*(800-1000)。从而达到调节速度的目的。显然,比值p越大,电机速度返回到输入值的速度越快,调节灵敏度越高。因此,增加p的值可以减少从非稳态到稳态的时间。

但同时也可能造成电机转速在预设值附近振荡,所以引入积分I来解决这个问题。

积分I:顾名思义,积分部分实际上是将预置值与反馈值的差值在时间上进行累加。当差值不是很大时,为了不引起振荡。可以让电机先以原来的速度运转。这时候差额要用积分项累加。当这个和累积到一定值时,会一次性处理。从而避免振荡的发生。可以看出,积分项的调整是明显滞后的。而且I值越大,滞后效应越明显。

微分D:微分项其实就是求电机转速的变化率。也就是两者的区别。也就是说,微分项根据差的变化率提前给出了相应的调整动作。可见,微分项的调整是超前的。并且d值越大,领先效应越明显。振荡可以被缓冲到一定程度。

比例项的作用只是放大误差的幅度,现在需要增加的是“微分项”,可以预测误差变化的趋势。这样,带有比例微分的控制器可以预先使抑制误差的控制函数等于零甚至为负,从而避免被控量的严重超调。

根据各参数的控制规律,比值P使反应更快,微分D使反应更早,积分I使反应滞后。在一定范围内,p和d的值越大,调节效果越好。二、 PID PID调试的一般原则a .在输出不振荡时增加比例增益P。b .当输出不振荡时,降低积分时间常数ti。c .当输出不振荡时,增加微分时间常数Td。三、pid算法参数调整的一般步骤a .确定比例增益p。

确定比例增益p时,先去掉PID的积分项和微分项,一般Ti=0,Td=0,PID是纯比例调节。输入设定为系统允许的最大值的60%~70%,比例增益p从0开始逐渐增大,直到系统振荡;反之,比例增益p从此时开始逐渐减小,直到系统振荡消失,记录此时的比例增益p,PID的比例增益p设定为当前值的60%~70%。比例增益p的调试完成。b .确定积分时间常数ti

比例增益p确定后,设定较大的积分时间常数Ti的初始值,然后逐渐减小Ti直到系统振荡,然后依次逐渐增大Ti直到系统振荡消失。记录此时的ti,并将PID的积分时间常数Ti设定为当前值的150%~180%。积分时间常数ti调试完成。确定积分时间常数Td。一般不需要设置积分时间常数Td,可以是0。如果要设置的话,和确定P和Ti的方法一样,不振荡的时候是30%。

D.对系统进行空载和负载调试,然后微调PID参数,直到满足要求。找到三个以上PID算法的应用实例,用实例明确参数调试的方法和参数的意义,同时介绍给组员。

四、pid算法应用环境当不能完全掌握被控对象的结构和参数,或者不能得到精确的数学模型,控制理论的其他技术难以采用时,必须通过经验和现场调试来确定系统控制器的结构和参数;(由于事先不知道轨道的参数,只能根据实时采集的轨道数据控制汽车沿轨道行驶)。FPGA中采用PID算法的电机控制完整框图

五、PID算法原理PID及其衍生算法是工业应用最广泛的算法之一,是当之无愧的通用算法。如果能熟练掌握PID算法的设计和实现过程,普通R&D人员处理一般的R&D问题应该足够了。难能可贵的是,在我接触过的控制算法中,PID控制算法最简单,最能体现反馈思想,可谓经典。

经典不一定复杂。经典往往是简单的,最简单的。想想牛顿的力学三定律,爱因斯坦的质能方程。多简单啊!简单不原始,简单不落后,简单就是美。首先来看PID算法的一般形式:

PID的过程非常简单。被控变量由误差信号控制,控制器本身就是比例、积分、微分三个环节的总和。这里我们指定(在时间t): 1。输入量为rin(t);2.输出是rout(t);3.偏差为err(t)=rin(t)-rout(t);Pid控制规律为了理解这个公式,我们主要从以下几个问题入手。为了更容易理解,我们将控制环境具体化为:1。规定此过程用于DC电机的调速;

2.输入rin(t)是电机速度的预设值;3.输出rout(t)是电机速度的实际值。4.致动器是DC马达;5.传感器是光电码盘,假设码盘是10根线;6.DC电机的速度由PWM调节,用/分单位rpm表示;不难看出以下结论:1。输入rin(t)是电机转速(rpm)的预设值;2.输出rout(t)是电机转速(rpm)的实际值;3.偏差/min预定值和实际值之间的差值(rpm)。

六、PID算法应用——线性控制原理。PID控制的三要素是控制器、被控对象和反馈装置。控制器是一个数学模型,就PID而言相当于PID算法。它是对反馈的处理和输出。一般来说,就是用什么函数来计算我对每个受控量的输出,或者说我如何描述我的输出。现在我给出一个描述性的传递函数。

从数学的角度来说:它的自变量就是反馈值,当这个函数的对应关系确定后,输出就是一个常数值。我的希望是,这个描述函数是一个透明的空盒子——,既能反映系统的外部特征,又能看到其内部结构。

以比赛为例:假设我现在要建立这样一个闭环系统,这个系统的反馈调节建立了一个描述函数。最根本的几点是:1。什么因素从根本上决定了这个系统的动态;2.这些因素如何决定系统的性能;数学模型描述:1描述函数-微分方程。描述函数的自变量和因变量满足微分方程。(瞬时关系)

2对微分方程进行处理,得到其特征方程,称为描述函数的极点。

Ps:先简单说一下极点和零点。对描述函数做拉普拉斯变换,将描述函数转化为与自身相关的函数,求其通解和特解。一般的解法是这个函数的开环特性,用来描述输出和输入的关系,零点是调节变量,用来调节闭环中系统的反馈参数。函数的拉普拉斯变换实际上是为了描述一个现象,即大多数函数都是常微分方程。

我们有必要研究这个描述函数的解。虽然在线性控制原理中我们并不关注它,也不需要了解它,但是了解这个常微分方程的极坐标形式有助于我们理解这个描述函数的物理意义。这是高数的知识,我就不赘述了。通过求解可以看出,极点实际上是拉普拉斯变换描述函数第一项的系数,零点是反馈量相关函数的系数。

也就是说,一旦确定了极点,这个函数也就确定了。对于每个输入函数,先给零变换,然后进行极点变换,最后生成输出。

我们把现在得到的结论联系起来:对于一个闭环系统,可以从理论上求解控制器的一些参数,或者进行调试,最后改变输出变量,使系统连续稳定。也就是说,在控制器中,关于反馈值有一些期望的实现方法,用一些固定的参数来描述,然后输出变量改变系统的状态。我的任务就是调试这些物理参数。下面是一个简单的PID编程:

双kp,ki,KD;double result func(void){ double错误;双差;double lasterror=0;错误=目标-输入;sumerror=错误;diff=error-lasterror;lasterror=错误;output=KP * error ki * sumerror KD * diff;返回输出;}

你会发现想象中的PID比真实的PID复杂很多,这很自然,因为经过PID数学计算,带入的公式只是一个大概的量。但这不是一个随机值。最重要的是你需要数学计算。

不得不说,对于一个完全的门外汉来说,PID是一个很高大上的名词。很多人一上手就接触PID,结果连输出和输入是什么都不懂。其实他们不妨接触一下线性控制的理论,对你的视野和思维有非常清晰的指导。参数调优找最佳,从小到大排序;先比例后积分,最后加微分;曲线振荡频繁,比例带盘要放大;曲线围绕大弯浮动,比例带转向小拉;

曲线偏差恢复缓慢,积分时间减少;曲线波动周期长,积分时间较长;曲线的振荡变得很快,微分先减小;动态差大的话波动慢,微分时间拉长;联想曲线两波前高4: 1,后低4:1;乍一看,调节的质量不会低。

以上知识分享希望能够帮助到大家!