1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
本人以自己的学习过程以及参考别人笔记总结而来,将自己的经验写出来以供大家一起学习,如有错误请多指教---参考《自动控制原理 胡寿松》
案例1: 电机驱动小车的运动:我们理解的小车运动过程中,小车最重要的就是一个电机,电机的输入是pwm输入的电压脉冲输入,有些是电流输入的电机,电机的参数决定了PID的调试效果。假如PWM的输入是100,输出的速度是 y(t)=5m/s,注意的是pwm和输出的速度并非是线性关系,但电机的输出最大速度我们认为在某个场景下是一定的,能达到5m/s。那么我们设定的目标值r(t)=10m/s,那么不管pid如何调节,机子只能在-5m/s到5m/s的值范围内转动,达不到10m/s,也就是说PID算法的调节是本身硬件机械能达到最大值的范围的调节,并非万能的。 该系统由模拟 PID 控制器和被控对象组成。图中,r(t) 是给定值,y(t) 是系统的实际输出值,给定值与实际输出值构成控制偏差 e(t): e(t) = r(t) - y(t),由光电码盘/磁的正负极码盘算出我们的速度,同单位下的速度和速度就有比较意义。通过PID比例积分微分的计算后=pwm的值输入给电机<100%,P、I、D分别为比例(Proportion)、积分(Integral)、微分(Differential)的简写;将偏差的比例、积分和微分通过线性组合构成控制量,用该控制量对受控对象进行控制,称为PID算法。如何计算出实时速度y(t)=一段定时器中断内定时器的外部中断计数值*(一周距离/一周技术值)/定时器时间 1.3 PID整定口诀 参数整定找最佳, 从小到大顺序查。 先是比例后积分, 最后再把微分加。 曲线振荡很频繁, 比例度盘要放大。 曲线漂浮绕大弯, 比例度盘往小扳。 曲线偏离回复慢, 积分时间往下降。 曲线波动周期长, 积分时间再加长。 曲线振荡频率快, 先把微分降下来。 动差大来波动慢, 微分时间应加长。 理想曲线两个波, 前高后低四比一。 一看二调多分析, 调节质量不会低。 案例2: 煮水和加热电阻丝,我们在陀螺仪的使用中,经常会出现加热一定温度的情况下就不再加热了,温度是滞后的,加热的起始特别慢,等到高温了电阻丝降低PWM降温基本不可能,所以我们使用PID调节时就要考虑到加热的可行性和研究。 案例3: 无人机的位置角度(可以达到的)和转速的比值pid的调节。y与x可以是线性关系/非线性关系,我们接下来要如何调节PID的值界定。 1)比例部分 作用是对系统瞬间产生的偏差进行快速修正,只有 P 时会有静差 。偏差一旦产生控制器立即产生控制作用, 使控制量向减少偏差的方向变化。比例部分的数学式表示是: Kp * e(t) 注意:Kp是比例系数,Kp越大,控制作用越强,则过渡过程越快,控制过程的静态偏差也就越小;但是越大,也越容易产生振荡,破坏系统的稳定性。故而,比例系数 选择必须恰当,才能过渡时间少,静差小而又稳定的效果。 2)积分部分 作用是消除系统偏差,补偿系统的静差 ,只要存在偏差, 则它的控制作用就不断的增加; 只有在偏差 时, 它的积分才能是一个常数, 控制作用才是一个不会增加的常数。 积分环节的调节作用虽然会消除静态误差,但也会降低系统的响应速度,增加系统的超调量。积分常数 越大, 积分的积累作用越弱, 这时系统在过渡时不会产生振荡; 但是增大积分常数 会减慢静态误差的消除过程,消除偏差所需的时间也较长, 但可以减少超调量,提高系统的稳定性。当Ti 较小时, 则积分的作用较强, 这时系统过渡时间中有可能产生振荡, 不过消除偏差所需的时间较短。所以必须根据实际控制的具体要求来确定Ti 。 3)微分部分 作用是加快调节过程,阻止偏差的变化, 偏差变化的越快, 微分控制器的输出就越大,并能在偏差值变大之前进行修正。微分作用的引入, 将有助于减小超调量, 克服振荡, 使系统趋于稳定, 特别对髙阶系统非常有利, 它加快了系统的跟踪速度。但微分的作用对输入信号的噪声很敏感,对那些噪声较大的系统一般不用微分, 或在微分起作用之 前先对输入信号进行滤波 。 Td 越大时, 则它抑制偏差 变化的作用越强; Td越小时,则它反抗偏差 变化的作用越弱。微分部分显然对系统稳定有很大的作用。适当地选择微分常数Td ,可以使微分作用达到最优。 4.2 数字 PID 控制 4.2.1 位置式 PID 由于计算机控制是一种采样控制, 它只能根据采样时刻的偏差计算控制量,而不能像模拟控制那样连续输出控制量量, 进行连续控制。 由于这一特点式中的积分项和微分项不能直接使用,必须进行离散化处理。连续控制是数学研究/真实情况的,计算机采集是离散的,就跟函数和数列一样的关系。 离散化处理的方法为:以T 作为采样周期, 作为采样序号,则离散采样时间 对应着连续时间 , 用矩形法数值积分近似代替积分, 用一阶后向差分近似代替微分。 上式中,为了表示的方便,将类似于 e(kT )简化成 ek 等。 如果采样周期足够小,则上面的两式的近似计算可以获得足够精确的结果,离散控制过程与连续过程十分接近。 算法的缺点是: 由于全量输出, 所以每次输出均与过去状态有关, 计算时要对 ek 进行累加,工作量大; 并且,因为计算机输出的 对应的是执行机构的实际位置, 如果计算机出现故障,输出的 将大幅度变化,会引起执行机构的大幅度变化,有可能因此造成严重的生产事故,这在实生产际中是不允许的。 增量式 PID 控制算法可以避免着重现象发生。 4.3 控制器参数整定 PID控制器参数选择的方法很多,例如试凑法、临界比例度法、扩充临界比例度法等。但是,对于PID控制而言,参数选择是用什么方案呢:对于输入目标值而言,我们输入目标值为sin函数值,那么输出的必然存在滞后/超调/达不到峰值的情况,我们将2条曲线数据进行采集对比,就可以知道我们的曲线执行效率是否达到我们的要求。输入目标值也可以是脉冲宽度值,看输出的响应周期进行调节。目标是输出的y(t)是跟x(t)同周期同起点同终点同曲率的曲线。 1)确定比例系数Kp 确定比例系数Kp时,首先去掉PID的积分项和微分项,可以令Ti=0、Td=0, 使之成为纯比例调节。输入设定为系统允许输出最大值的60%~70%,比例系数Kp由0开始逐渐增大,直至系统出现振荡:再反过来,从此时的比例系数Kp逐渐减小,直至系统振荡消失。记录此时的比例系数Kp,设定PID的比例系数Kp为当前值的60% ~ 70%。pwm的值不会超过100%,所以kp的值输入可以一个很大的值,看曲线的贴合程度。逐步的二分法靠近一个值。 2) 确定积分时间常数Ti 比例系数Kp确定之后,设定一个较 大的积分时间常数Ti,然后逐渐减小Ti,自至系统出现振荡,然后再反过来,逐渐增大Ti,直至系统振荡消失。记录此时的Ti.设定PID的积分时间常数Ti为当前值的150% ~、180%。假定输入目标为1,输出为0,error的值其实是一直在缩小的,Ti最终为稳定一个大值Timax*0,会出现超调的情况,要调节回来即可。 3) 确定微分时间常数Td 微分时间常数Td一般不用设定,为0即可,此时PID调节转换为PI调节。如果需要设定,则与确定Ti的方法相同,取不振荡时其值的30%。一般电机不用取Td的值,假定输入目标为1,输出为0,error的值其实是一直在缩小的,Td最终为稳定一个小值Timin*0,在目标值附近抖动,一般电机的调节不调节Td的值。 4) 系统空载、带载联调 对PID参数进行微调,直到满足性能要求。 |
|
|
|
只有小组成员才能发言,加入小组>>
3310 浏览 9 评论
2991 浏览 16 评论
3492 浏览 1 评论
9055 浏览 16 评论
4086 浏览 18 评论
1174浏览 3评论
603浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
596浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2333浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1894浏览 2评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 18:05 , Processed in 1.039908 second(s), Total 50, Slave 41 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号