微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 智能车速度控制pid(电机闭环控制算法)

智能车速度控制pid(电机闭环控制算法)

时间:12-02 来源:互联网 点击:
智能车电机闭环控制算法

对于智能车的电机闭环控制算法,我之所以标题没有写上“智能车电机PID

闭环控制算法”是因为PID 算法根本就不是特别好的适用于智能车这种变化很

快的系统,对于智能车,电机的调速可以说是时时刻刻再进行调速控制的,我

上面说描述的经典PID 算法,都是针对一些惰性系统,也就是说是变化比较慢

的系统的,所以对于智能车的电机调速采用完完整整的PID 算法,是根本不可

取的,及时采用了,你必须要经过一些变换和改进才能使用。以上的简述只是

鄙人自己的看法,如有错误,请各位高手指正。

现在估计您会疑问,PID 不适用于智能车的电机控制,那什么才适用呢?

鄙人原来做过智能车,从鄙人本身的理解,P 算法控制电机,也就是比例控制

是最好的,反应速度快,控制精度高,不存在积分和微分效应,非常适用于适

用于控制周期短的系统,当然,对于一些特殊的逻辑控制算法,可能要采用PD

算法,用微分来做补偿,防止震荡和超调。

下面来说下电机控制算法从开始的加入到最终的确定的方法:

当然这一切的前提就是安装了编码器,车速有反馈,只有加上编码器,有

了反馈,才能组成一个闭环系统。当然您也可以加上码盘,或者霍尔开关等一

切可以返回车速的东西都可以。

(1) 首先建议在车速比较慢的时候,采用PID 算法来控制电机,为

什么开始要建议您采用PID 呢?主要是为了让您更加深刻理解

PID 算法的精髓和调试步骤方法等,有助于以后对控制算法更加

深入的研究和书写。调试PID 三个参数的方法,很多地方都提

供了,我在这里简单的说下:首先将ID 参数都变为0,先调整

P 比例参数,调整到速度基本上跟您给定的速度差不多,也就是

说基本稳定在您给定的脉冲数,当然这个时候会非常的震荡,

不要担心,接下来调整I,调整I 的结果就是震荡会消除很多,

但是车速会变化缓慢,也就是说会有一些延迟,然后再调整D,

调整D 的结果就是增强调节的灵活性和预见性,在给定速度变

化的过程中,能够以一个平稳过渡来变换,而且速度可以长时

间稳定在给定速度附近,然后PID 三个参数的基本范围就确定

了,然后再根据实际的跑车来微调这些参数,当然在您调试PID

之前,请仔细阅读PID 理论知识,这样有助于您的调试和理解,

当您把PID 调整好以后,您就基本上领会了PID 的精髓,对于

以后的调试作用非常大。这里的给定速度,就相当于上面对温

度例子中说的设定温度。意思是一样一样的。

(2) 当您对PID 掌握以后,您能做到给定多少速度,就能让车速稳

定在这个给定速度左右,可以适当的提高点车速,慢慢的观察

效果,你会发现当速度增加的时候,车速的控制会变得越来越

糟糕,调节缓慢,灵活性差。这个时候您就可以试着去掉I 积分

环节,然后再重新调整参数,按照上面说的,然后继续观察效

果,试着提高速度,继续观察,因为车速毕竟很慢,很多细节

我们都能看到,所以您就可以看到PID 到PD 变换以后,实际的

效果是增加多少,也算是一种进步,这个时候,经典的PID 公

式已经被我们简化,不要担心,您可以多多实验多多观察,可

能在这个变换之间,您能受到很多启发,会产生很多思路,谁

以后的调试车子都是有好处的。所以搞智能车,自己一步

一步的进步学习,远远比去某些淘宝店铺购买现成的程序学到

的东西更多,体会的也更多,思维开阔的也更多。

(3) 在您的车速在3M 内的时候,我强烈建议您采用PD 算法,因为

PD 算法是最好调整,最容易控制的。当然这个时候我也强烈建

议您加上P 控制,P 控制的话,不是说就单纯的P*偏差然后得

到的值给定PWM,而是一定要加上一些逻辑控制,不加上逻辑

控制而是直接运用比例公式来给定PWM 值,将会带来很多问

题,具体的逻辑控制讲解,在以后我会写出相关的文档,谢谢。

采用增量式编码器为反馈的智能车电机闭环调速系统:

其实借助于我上面举得例子,到这里,您可能已经明白对于智能车来

说闭环系统是一个必须的,不可脱离的。当然,您可能已经完全明白智能

车电机闭环调速系统怎么做,并且您可能也做的更好,要比我在这里所说

的更加的先进更加的有创意更加的有效果。所以在这里我只是简单的说说,

谢谢。

首先,我们需要时刻反馈当前的智能车速度给单片机或者 ARM,让

系统知道当前速度,有助于控制。

我们先说说为什么我们要反馈车子速度,要知道车子当前的速度?因

为我们的CPU 利用传感器采集道路信息,通过CPU 收集和处理变化,系

统就能知道车子当前的状态,比如是在直到上?还是在进入弯道?还是在

弯道内?还是正在出弯道?还是在上坡?还是穿过了起跑线?有了这些信

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top