PID算法

 控制的本质是对于信号的控制.在理解信号的基础上 对其进行一定的改造 达到设定的目标.

开环系统VS闭环系统

        说到这两个系统 先引入反馈这个概念: 反馈是将输出的信号 再返回到输入端.对其进行调整.达到预先设定的目标.

举个例子: 爸爸给你生活费2000元 经过妈妈手里 妈妈为了买裙子 克扣了500元 到手1500元 你爸爸认为给了你2000元 但是你实际到手就1500元 你也没说所以就没有后续了 这就是开环.你收到的金额和你的目标金额有差异.

假如爸爸给你2000元 你实际收到了1500元 你给爸爸发消息 "爸爸我1500有点不够 谈女朋友了 花销有点大" 这个时候爸爸就知道了 妈妈克扣了500  这个时候爸爸有两个选择 第一是悄悄地提升输出 每个月给妈妈2500元 你到手2000元 或者是和妈妈谈谈 单独给妈妈500基金买裙子 给你继续发2000 这就是闭环 输出有回应. 所以进行引入: 

开环系统

        通俗易懂的解释: 我给你个任务,你去干就可以了 ,至于干成什么样子,我不管. 

闭环系统(反馈系统)

        通俗易懂的解释: 我给你个任务,同时我还在不断地监督.监督你干好.满足我的要求.

本质

        本质的差异是系统是否有反馈,去反映你目前的状态.是否达到了我需要的状态

控制模型

没有反馈 我只负责输出

我知道有多少误差 输出的信号 提前去补偿掉这些误差

我根据传回来的实际信号去控制我给的信号量 .直到达到我的实际期望输出的目标.

我通知经理要开门 经理通知前台开门 经理监督前台去打开门 我监督门是否打开.

我提前知道误差所以提前给点补偿 同时传感器告诉我补偿的的太多/少了 减少/增加 点补偿

PID含义

公式说明:

  P比例:

        比例就是对于预设值和反馈值的放大倍数.   比如有一个车,目的是前进100米 当前的位置是0米 ,所以你和你的目标的差值是100 .那当前电机需要驱动的力是(100-0)*P   P值越小 小车前进的速度越慢.达到目标值的时间也就越长.P值越大  由于是惯性系统 .越容易超过目标数值 .导致差值为负. 则最后越容易在目标值附近来回横跳.

        I积分:

        随着时间累计的误差数值    对于无人机而言 目标高度为100米 .当前飞机的高度为0米.则差值为100米.P值一定的情况下.无人机会向上飞缓慢的逼近目标值 但是由于无人机有重量.导致在99米的时候 重力和升力相互平衡.飞机无法继续往上飞了.(这个时候飞机悬停的主要作用是比例)这个误差叫做稳态误差. 单靠P是无法消除的这个误差的.所以引入 I 积分 假设当前的误差是1米 这个误差会随着时间的增加不短的累计 (1+1+......) 无人机会随着误差的不断累积 从而上调转速 使得无人机无限达到目标值.

 假设无人机到达100米的高度的时候.误差为0 则比例部分不在提供动力.此时飞机悬停主要靠的是积分

D微分:

        微分项 误差的变化率 前后两次的差值  假设无人机P和I 比较大 假设无人机100rpm为悬停状态 则可能一瞬间 P和I 的累加值导致电机直接输出10000rpm  由于作用于惯性系统 在目标值的时候会刹不住车 导致整个系统在目标值之间来回的震荡. 而D就是给一个反作用力来抵消这个过大的控制了 假设 变化率为+5000 rpm 则 设D为0.5 则实际输出的数值为 5000+0.5*(-5000)=2500rpm 去抑制过快的变化

PID控制

调参数: KP Ki  Kd

 慢慢的给Kp  直到出现比较贴合的曲线  .如果对于时间有要求  则Ki可以稍微给大点 .直到很快的贴近目标值.一般调节 K  Ki    就达到目标 如果系统震荡过于明显  则轻微的调整一下Kd(详细的调节方法请自行百度)

常见控制知识

积分限幅:

        假设一个设备卡住了 ,则误差Ki会不短的积累 同时Kp也很大 如果不限制Ki的最大值 则设备会的控制信号会积累的很大 造成危险.

积分分离:

        假设无人机当前为100米.突然给一个1000米的目标值 .由于突变的信号过于大 会导致设备会信号非常大.则会导致超调的情况出现 .所以应该给大于一定数值的目标舍弃积分项 单纯用Kp去控制

微分先行:

        期望高度突变的时候 优先给到微分项 .防止Kd对于快速接近目标有较大影响.

(学习自BILIBILI 华南虎小分队)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值