简述pid

这篇具有很好参考价值的文章主要介绍了简述pid。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

pid个人简述


前言

有用过智能小车或者机械臂或者机器人都知道,真正的理论控制中pid绝对有重要的地位,而pid pid是啥,表面意思上就
P(proportion比例) I(Integral积分) D(differential calculus微分)
我们暂时只需要记住这三样的英文,因为小编,,,,咳咳

一、三样基础

此基础全部基于我们目标值跟我们所处值作阐述:“所谓 PID 控制,就是对系统偏差进行比例、积分以及微分的控制。PID 是闭环控制,因此需要有传感器测量我们需要控制的参数,并且反馈到我们的控制计算当中,并且参与控制。PID 由 3 个单元组成,分别是比例(Proportion)单元、积分(Integral)单元、微分(Differential)单元。通过对这三个单元的处理计算输出给执行器,达到减小偏差最终实现收敛的过程"这段话是借鉴,但是实际过程中,我都是实际靠感觉调参,

1、P(proportion比例) 是什么?

比例比较简单,在我们高中都有学过,就是斜率,就比如说我们的目标值现在是在(1,1),而我们的所处值是(0,0),那很明显,我们的斜率就是1即为我们的比例就是P

2、I(Integral积分) 是什么?

我们高数有学过,在我们周围规则图像大致面积等于x * y,但是像一些不规则就只能通过积分来求,但是在某种意义上,就是将不规则“切割”成可通用计算的规则图形,这就是积分,就好比速度跟时间,y轴为速度,x轴为时间,但是速度忽慢忽快,为了求位移,就是一个积分的过程,在某单位时间跨度切割,就可以大概得出一个常规四边形,不断加起来就是此部分面积

3、D(differential calculus微分)是什么?

微分在数学中的定义:由函数B=f(A),得到A、B两个数集,在A中当dx靠近自己时,函数在dx处的极限叫作函数在dx处的微分,微分的中心思想是无穷分割。微分是函数改变量的线性主要部分。微积分的基本概念之一。大概可以理解单位变化时间内两 y` 的差值

二、术语与代码

最大超调量:是响应曲线的最大峰值与稳态值的差,是评估系统稳定性的一个重要指标;
----打个比方,我们用舵机进行位置定位,从a点出发,预计到达b点,假如因为某些因素到达了c点,那超调量就是c-b
上升时间:  是指响应曲线从原始工作状态出发,第一次到达输出稳态值所需的时间,是评估系统快速性的一个重要指标;
静差:      是被控量的稳定值与给定值之差,一般用于衡量系统的准确性;

1.pid实例

假如我们单片机的分频值为0,重装载值7199
入口参数:编码器测量位置信息,目标位置

/**************************************************************************
函数功能:位置式PID控制器
入口参数:编码器测量位置信息,目标位置
返回  值:电机PWM
根据位置式离散PID公式 
pwm=Kp*e(k)+Ki*∑e(k)+Kd[e(k)-e(k-1)]
e(k)代表本次偏差 
e(k-1)代表上一次的偏差  
∑e(k)代表e(k)以及之前的偏差的累积和;其中k为1,2,,k;
pwm代表输出
**************************************************************************/
int Position_PID (int position,int target)
{ 	
	 static float Bias,Pwm,Integral_bias,Last_Bias;
	 Bias=target-position;                                  //计算偏差
	 Integral_bias+=Bias;	                                 //求出偏差的积分
	 if(Integral_bias>3000)Integral_bias=3000;
	 if(Integral_bias<-3000)Integral_bias=-3000;
	 Pwm=Position_KP*Bias+Position_KI*Integral_bias+Position_KD*(Bias-Last_Bias);       //位置式PID控制器
	 Last_Bias=Bias;                                       //保存上一次偏差 
	 return Pwm;                                           //增量输出
}

Bias----------------------------此次偏差
Integral_bias-----------------累计偏差
Last_Bias --------------------上次偏差
我们可以根据

Pwm=Position_KP * Bias+Position_KI * Integral_bias+Position_KD * (Bias-Last_Bias);

1.P比例

我们先看 Position_KP * Bias,Position_KP 部分。这部分我们可以理解成一元线性函数y=a * bias,也是我们pid绝大多数场景最重要,反应最快的部分,也是造成超调的原因,比如我们烧水,我们单位时间加热系数P为1.2,时间为单位time,但是我们希望温度为10,那么他time1就会先到达1.2 * (10-0)=12, 这时候超调3,time2的时候是0.9*(10-12)=-1.8,

2.I积分

Position_KI*Integral_bias:

3.D微分

我们之前说过D可以看出变化率的大小变化,那我们这次减去上次的偏差在某种程度上体现了单位时间内
Position_KD * (Bias-Last_Bias):
我们上面说到了超调1即为8,但是我们假设让他自行冷却,当他冷却到6.9时候,他又加热,6.9+2,又变成了8.9,这样永远处于动荡的过程中,假如我们加入微分,其震荡会变小,我们之前说过,微分就是两单位时间内,y的差值的的差值,打个比方,我们假设实在p点到达了6值,那我们距离7值的的偏差为1,当我们加热到q点8.9时,我们的偏差为1.9,

2.读入数据

代码如下(示例):

data = pd.read_csv(
    'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())

该处使用的url网络请求的数据。


总结

提示:这里对文章进行总结:

例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。文章来源地址https://www.toymoban.com/news/detail-633189.html

到了这里,关于简述pid的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 读十堂极简人工智能课笔记08_人工智能的未来

    1.2.2.1. 其骨头是用塑料生产的,结构相当精巧,足以匹配人类的骨骼 2.2.2.1. 其灵感来自人脑 2.2.2.2. 如今被用于神经科学、机器人和计算机科学 2.2.3.1. 每个处理器又由18个较小的处理器组成 2.2.3.1.1. 16个用于模拟神经元 2.2.3.1.2. 1个用于管理 2.2.3.1.3. 1个备用 2.2.3.2. 其巧妙

    2024年02月21日
    浏览(55)
  • 高级人工智能之群体智能:粒子群算法

    粒子群优化算法(Particle Swarm Optimization, PSO)是一种基于群体协作和信息共享的优化技术。它由Kennedy和Eberhart于1995年提出,灵感来源于鸟群和鱼群的社会行为。PSO是解决连续空间优化问题的有效方法,特别适合于多峰和高维问题。以下是PSO的基本思想和工作原理: 1.1基本思想

    2024年01月18日
    浏览(39)
  • 人工智能概论复习笔记

    笔者精力有限,本文还没有完全完成 人工智能概述是人工智能导论课程的第一个模块,它主要介绍了人工智能的定义、人工智能的发展历史以及人工智能的研究方向。这一部分内容旨在帮助学生了解人工智能的基本概念和背景知识。 人工智能(Artificial Intelligence),英文缩写

    2024年01月15日
    浏览(64)
  • 【人工智能】遗传算法

    可以把遗传算法类比成一个游戏,我们需要通过这个游戏来找到最佳的解决方案。 首先,我们需要创建一些角色(也就是种群),每个角色有自己的装备和技能(染色体),但是我们并不知道哪个角色更加强大。 然后,我们让这些角色相互竞争,通过升级、打怪等方式来获

    2024年02月02日
    浏览(48)
  • 人工智能分类算法概述

    人工智能分类算法是用于将数据划分为不同类别的算法。这些算法通过学习数据的特征和模式,将输入数据映射到相应的类别。分类算法在人工智能中具有广泛的应用,如图像识别、语音识别、文本分类等。以下是几种常见的人工智能分类算法的详细讲解过程: 决策树 决策

    2024年04月11日
    浏览(47)
  • 人工智能(第三版)阅读笔记

      要确定人工智能的优缺点,就必须首先理解和定义智能。   R.斯腾伯格:智能是个体从经验中学习、正确推理、记忆重要信息,以及应对日常生活需求的认知能力。 不同的动物物种具有不同程度的智能,但并不是所有能够思维的物体都有智能--智能也许就是高效以及有效的思

    2024年01月23日
    浏览(51)
  • 人工智能入门学习笔记(一)

    家人们,好久不见哈!最近在尝试着学习人工智能的相关知识和具体技能呀。说实话,当像我这样的 小白初探人工智能体系 时,总是被很多未知的名词以及茫茫内容所淹没,便去想通过网络学习帮助自己建立正确的人工智能基本概念认知。在此,我便进一步对人工智能体系

    2024年02月02日
    浏览(67)
  • 人工智能导论课堂笔记

    时间:2022年10月19日下午 班级:2022级人工智能应用技术1班 作业问题: Python安装注意事项 1.下载Python3.X的版本,如:3.10, 3.9, 3.8,不推荐下载2.7版本(已经不使用) 2.在命令行中,无法运行path-添加,需要知道安装的路径; Pycharm安装注意: 1.官网下载,推荐下载免费(社区

    2024年02月01日
    浏览(42)
  • 人工智能算法PPT学习

    You only look once  是一种图像识别算法,速度较快。高效、灵活、泛化性能好,在工业中较为受欢迎。 一幅图像的多个不同分辨率的子图构成的图像集合。是通过一个图像不断的降低采样率产生的,最小的图像可能仅仅有一个像素点。下图是一个图像金子塔的示例。从图中可以

    2024年02月08日
    浏览(50)
  • 【人工智能】机器学习算法综述及常见算法详解

    目录 推荐 1、机器学习算法简介 1.1 机器学习算法包含的两个步骤 1.2 机器学习算法的分类 2、线性回归算法 2.1 线性回归的假设是什么? 2.2 如何确定线性回归模型的拟合优度? 2.3 如何处理线性回归中的异常值? 3、逻辑回归算法 3.1 什么是逻辑函数? 3.2 逻辑回归可以用于多类

    2024年04月22日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包