023_STM32之PID算法

(一)PID控制算法(P:比例     I:积分    D:微分)

(二)首先先说明原理,使用的是数字PID算法,模拟PID算法在计算机这样的系统中是不能够直接使用的,数字PID算法又分为位置式PID控制算法增量式PID控制算法,那么下面从原理上说明这两种算法

(三)原理分析如图

(四)从上面图中我们可以得到定义

定义变量
用户设定值:         SV
当前值(实际值):    PV
偏差:              E = SV - PV       

(五)如果我们在一段时间内就从传感器读取一个值,那么我们就可以得到一个实际值的数据序列,,那么我们也会得到一个偏差值的序列

读取时间:  t(1)    t(2)    ------  t(k-1)    t(k)
读取到的值:  X(1)    X(2)    ------  X(k-1)  X(k)偏差值:     E(1)    E(2)    ------  E(k-1)  E(k)

那么我们从偏差值中可以知道:  E(X)  > 0     说明未达标                E(X) = 0      说明正好达标                E(X) < 0        说明超标

原文地址:https://www.cnblogs.com/luxiaoguogege/p/10230369.html

时间: 2024-10-13 10:15:33

023_STM32之PID算法的相关文章

PID算法(C语言)

/************ PID算法(C语言) ************/ #include <stdio.h> #include<math.h> struct _pid { int pv; /*integer that contains the process value*/ int sp; /*integer that contains the set point*/ float integral; float pgain; float igain; float dgain;

PID 算法理解

PID 算法 使用环境:受到外界的影响不能按照理想状态发展.如小车的速度不稳定的调节,尽快达到目标速度. 条件:闭环系统->有反馈 要求:快准狠 分类:位置式.增量式 增量式 输入:前次速度.前前次速度.前前前次速度 输出:pwm的增加值或减少值 位置式 输入: 输出: 公式 或 Kp 比例放大系数     Ti  积分时间    Td 微分时间 Kp比例放大系数  Ki 积分系数  Kd 微分系数

小车PID算法跑直线

#include<stm32f10x.h> #include"sys.h" extern unsigned char Rec_Dat_U1; extern unsigned char Rec_String_U1[200]; extern int conut_flag_1; #define in_1(x)    x?GPIO_ResetBits(GPIOC , GPIO_Pin_0): GPIO_SetBits(GPIOC , GPIO_Pin_0) #define in_2

模糊PID控温算法的具体实现(一):参数自整定模糊PID算法概念

上个学期已经基本上实现了PID的温控算法,为了撰写小论文,这个学期最先要做的事情就是实现模糊PID的温控算法. 模糊控制系统的构成与与常规的反馈控制系统的主要区别在于控制器主要是由模糊化,模糊推理机和精确化三个功能模块和知识库(包括数据库和规则库)构成的.具体实现过程如下所示: (1)预处理: 输入数据往往是通过测量设备测量得到的一个具体数据,预处理就是在它们进入控制器前对这些数据进行分类,或性质程度的定义.预处理过程也是量化过程,它是在离散空间中把输入数据划分为若干个数字级别.例如,假设一个反

mwc飞控PID算法解析

0.说明 基于mwc2.3的pid算法解析,2.3中增加了一种新的pid算法,在此分别解析. P:比例 I:积分 D:微分 1.老版PID代码 代码大概在MultiWii.cpp的1350行上下. 1 if ( f.HORIZON_MODE ) prop = min(max(abs(rcCommand[PITCH]),abs(rcCommand[ROLL])),512); 2 3 // PITCH & ROLL 4 for(axis = 0; axis < 2; axis++) { 5 rc

线性控制原理——PID算法应用

使用控制系统(PID)控制被控对象 PID控制的三要素:控制器,被控对象,反馈器.控制器就是一个数学模型,就PID来说,等同于PID算法.是对反馈量的一个处理与输出.通俗的说就是对于每个被控的量,我的输出量通过什么函数式算出,或者说,我如何描述我的输出量.现在我给定一个描述性的传递函数.从数学角度来看:它的自变量是反馈值,当这个函数的对应关系确定了之后,输出量就是个定值了.我的希望是:这个描述函数是一个透明的空箱--它既能反映系统外部特性,又可以看到其内部结构. 就拿比赛来说:假设我现在要构建这

形象解释PID算法

形象解释PID算法+PID算法源代码 小明接到这样一个任务: 有一个水缸点漏水(而且漏水的速度还不一定固定不变),要求水面高度维持在某个位置,一旦发现水面高度低于要求位置,就要往水缸里加水. 小明接到任务后就一直守在水缸旁边,时间长就觉得无聊,就跑到房里看小说了,每30分钟来检查一次水面高度.水漏得太快,每次小明来检查时,水都快漏完了,离要求的高度相差很远,小明改为每3分钟来检查一次,结果每次来水都没怎么漏,不需要加水,来得太频繁做的是无用功.几次试验后,确定每10分钟来检查一次.这个检查时间就

【sky第二期--PID算法】--【智能车论坛】

[sky第二期--PID算法] 想学PID的可以来[智能车论坛]这里有我发布的资料http://bbs.tekbots.eefocus.com/forum.php?mod=viewthread&tid=213301&fromuid=108990 欢迎交流

PID算法实现及参数整定图解(附代码)

一. PID含义 PID是英文单词比例(Proportion),积分(Integral),微分(Differential coefficient)的缩写.PID调节实际上是由比例.积分.微分三种调节方式组成,它们各自的作用如下: 比例调节作用:是按比例反应系统的偏差,系统一旦出现了偏差,比例调节立即产生调节作用用以减少偏差.比例作用大,可以加快调节,减少误差,但是过大的比例,使系统的稳定性下降,甚至造成系统的不稳定. 积分调节作用:是使系统消除稳态误差,提高无差度.因为有误差,积分调节就进行,直