首页 > 编程知识 正文

无人机飞控算法程序(四旋翼无人机结构设计)

时间:2023-05-05 17:39:09 阅读:74127 作者:1872

PID控制算法PID控制器是一种结构简单、成熟稳定的控制器,在工业上应用广泛。 包括比例(Proportion )、积分(Integral )、微分)三个控制要素,三是对系统偏差的不同应对方式。

比例控制p比例控制是基本的,将反馈值、期望值的差与一个参数KP相乘,表示对这一个控制周期误差的矫正力,类似于列车进站时的油门量。 如果该参数太小,则恢复力不足以抑制干扰变大的趋势,如果比例参数过大,则过冲,系统发散。

偏差值=设定值-反馈值比例输出=偏差值*比例参数KP微分控制d微分控制用于弥补系统矫正中惯性对系统稳定性的影响,通过求出当前的误差变化曲线的微分而倾斜,即表示1个控制周期内的误差变化量,在该值中系统误差变化越大,这种衰减作用越明显,就像列车进站时踩刹车产生的阻力和单侧摆动时受到的空气阻力,如果没有阻力,单侧摆动就会永远持续摆动,被视为超调。

微分输出=(偏差值-上次偏差值)间隔时间)微分系数KD

积分控制I积分控制是对误差进行积分,将积分值乘以参数KI进入系统补偿的控制步骤。 系统误差比较小时的误差叫静差,我们先进行的补偿作用也比较小,不能消除静差。 通过累积补偿误差,提高矫正效果,提高控制精度。 司机的最终停止位置不正确,就像进行微调一样。 积分控制是一把双刃剑,误差积分在误差大时是一个较大的数值,过强的补偿反而会对系统的调节造成干扰,需要注意积分控制的优化措施积分分离和积分限制:误差繁荣的头发停止积分作用,误差小时开启,误差小时开启

积分值=偏差值积分输出=积分值*积分参数KI的位置公式和增量类型PID有位置公式和增量类型,位置公式PID根据上述理论三个环节控制处理的叠加。

PID输出=比例输出微分输出积分输出=偏差值*比例参数KP (偏差值-上次偏差值)间隔时间)微分系数KD积分值)积分参数KI增量PID基于位置式PID公式进行变换,增量PID被期待为3次反馈

由PID输出增量=(偏差值-上次偏差值)比例参数KP (偏差值- 2 *上次偏差值)比例参数KP偏差值)积分参数KI PID输出=PID输出增量可知,差分式PID能够避免误差累积引起的干扰。 由于阶段性地计算控制变化量,所以通过与之前的结果持续累积,能够对在某个故障控制中产生的噪声产生比较小的影响。 缺点是没有积分作用,存在稳态误差,控制精度和灵敏度不如直接控制执行器的位置式PID,根据被控对象的特点选择两种PID进行控制。 由于无人机要求高速响应和精度,所以这里使用位置式PID。

PID算法的c语言实现这里推荐《PID控制算法的C语言实现》。 除了详细的概念说明、基本的c语言实现外,还有积分分离、剪辑等重要操作。

pid的三种调节不一定是同时使用的,而是根据各自的作用来选择。 以下登载笔者使用的可控制选项的位置式pid控制的c语言函数

voidposition_PID(PID_t*PID,float target,float measure,uint8_t mode ) switch (mode ) casep: ) PID-ki PID 布雷克; } case PD:{ PID-Ki=0; 布雷克; }case PI:{ PID-Kd=0; 布雷克; }默认: break; } PID-err_now=target - measure; PID-integral =PID-err_last; if (PID-err _ now PID-threshold|| PID-err _ now-PID-threshold ) {PID-remove_flag=0; PID-integral=0; } else {PID-remove_flag=1; } PID-PWM _ out=PID-KP * PID-err _ now; PID-PWM _ out=PID-KD * (PID-err _ now-PID-err _ last ) PID-PWM _ out=PID-ki * PID-integral * PID-ret PID-err_last=PID-err_now; }注:

偏差正负积分的限制、分离、清零处理很重要,积分这种调节方式风险很大,如果处理错误,偏差累计导致的误差会破坏系统。 积分分离积分计算时乘以标志位的方式,偏差大时关闭标志位置0,实现积分调节微分调节效果和控制周期关系大的级联pid需要注意外圈和内圈的连接关系, 在将控制器的输出作为输入的情况下,可以进行限制和归一化(映射到下一个环路的期望的允许范围)等数据处理,得到更准确的控制效果的多环控制器的调整是在调整内圈之后,在外圈伺服系统(伺服电动机或舵机)内部搭载控制器

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。