您的位置 首页 软件

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

智能车电机闭环控制算法对于智能车的电机闭环控制算法,我之所以标题没有写上智能车电机PID闭环控制算法是因为PID算法根本就不是特别好的

智能车电机闭环操控算法

关于智能车的电机闭环操控算法,我之所以标题没有写上“智能车电机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 搜集和处理改变,系
统就能知道车子当时的状况,比方是在直到上?仍是在进入弯道?仍是在
弯道内?仍是正在出弯道?仍是在上坡?仍是穿过了起跑线?有了这些信
息,咱们首要便是对舵机的操控,操控车子依据什么路途状况来进行转弯,
转弯的方向,巨细,都是靠这些数据来完成,当然当时的速度值也是操控
舵机转向巨细的一个附加要素,这样愈加的有利于咱们及时处理不同弯道。
知道了这些信息,就跟咱们开车相同,咱们要转弯了,得感知咱们车的速
度,怎样感知啊,就靠轿车自带的速度表,这样咱们就能够经过操控刹车
或许油门还有方向盘来操控车子平稳的转过弯道,不同的弯道,不同的速
度,转弯的操控和刹车的操控都是不同的。假如咱们不知道当时的速度,
那么很或许由于拐弯速度过快,导致翻车,或许侧滑,形成风险。智能车
状况跟真车是相同的,咱们有必要知道车子当时速度,比方咱们智能车拐弯
安全速度是3M/S,所谓安全速度便是车子顺畅安全且没有较大侧滑过弯时
的速度,在进入弯道前咱们车子的速度是4M/S,当传感器感知要进入弯道
了,经过跟安全速度比照,咱们发现智能车的速度远大于安全弯道速度,
这个时分咱们就要刹车,把车子速度快速降低到3M/S,这样确保咱们顺畅
快速的过弯。在这儿您或许问3M/S 的安全速度怎样来?其实很简略这个
速度是靠试验来的,不必什么核算,彻底归于经验值,依据跑道的资料、
车子机械性能和弯道的视点来决议,所以为什么咱们要竞赛的时分要试车,
试车中一个最重要的环节便是了解竞赛跑道所用的资料,用于咱们试验车
子的安全速度等。
关于智能车的速度反应,在这儿我就针对增量式编码器来说,其实码
盘啊,霍尔啊,他们原理都相同。光电增量式编码器不同于绝对值编码器,
绝对值编码器在编码器滚动一周的每个特定方位都有一个确认的值输出,
增量式编码器滚动一圈,固定输出必定的脉冲,无法确认滚动到哪个方位,
对外输出一般为方波,这样有助于MCU 进行数据搜集。
有了编码器,咱们经过齿轮、皮带等将编码器跟电机或许传动轮进行
衔接,这样电机滚动的时分,就会带动编码器滚动,然后编码器就能向外
输出方波,接到单片机上,咱们就能进行搜集编码器脉冲了。有了脉冲,
或许您又要问这个脉冲没有规律性,跟着滚动不断的添加,究竟怎样来衡
量速度?您这个时分啊,动动手,调查调查数据特色,您会发现,当车速
度比较快的时分啊,脉冲数自增的速度比较快,也便是说,转速越快,频
率越高,单位时刻内的脉冲数就越多,这样马上有了创意,咱们用定时器
设置一个中止,这个中止的时刻为5MS,那么每5MS 咱们就搜集编码器
一次脉冲值,当搜集结束后,咱们就对脉冲数寄存器清零,这样在5MS
内,得到的脉冲数越多,阐明车子速度越快,到这儿车速就处理了。到这
里您或许会说:还没完呢,还没转换为速度呢?要把这个脉冲依据间隔和
时刻转换为详细的XX 米/秒的速度。您的这个主意很好,可是真的是没
有必要,咱们底子没有必要浪费时刻去核算这个,由于咱们原本便是想知
道速度,脉冲数的多少现已就能衡量速度巨细了,咱们何必要很费事的转
换为详细速度? 必定时刻内的脉冲数现已够了,够咱们底层硬件进行判别
核算了。已然咱们反应的数据类型为脉冲数,所以咱们所给定的速度也对
应的到脉冲数,比方50 个脉冲代表速度3M/S,80 个代表4M/S 的速度,
这样经过路途类型给定脉冲数,就能完成电机的闭环操控了,是不是很简
单?到这儿我知道又有人会疑问,50 个脉冲对应3M/S,80 个脉冲对应4M/S
是怎样得到的?其实这个更简略,许多人做智能车简略把简略问题复杂化,
其实许多问题都能够用几行程序处理,比方那个坡道,许多人用了许多复
杂办法处理,比方加一个开关啊,加个加速度啊,加个陀螺仪啊,底子没
有必要,程序几行就搞定了。详细的脉冲对应速度,您固定给定一个脉冲
让车子跑跑到一圈,然后记下时刻,跑道实践长度除以时刻,便是对应速
度,你仅仅需求大约知道对应就行了,不必一个一个试验,详细的X 米/
秒是微观上咱们感知的,跟单片机没有任何关系。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/ruanjian/254066.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部