智能车速度控制pid(电机闭环控制算法)
智能汽车控制策略及PID算法分析

智能汽车控制策略及其PID 算法分析作者:王保磊机电1103-11221077目录背景简介一.智能汽车竞赛简介: (1)系统建立二.控制策略: (1)2.1:理论分析 (2)2.2 : PID 控制规律的离散化 (3)2.3 : matlab 分析 (4)2.4 :系统校正 (9)总结三.总结: (14)一.智能汽车竞赛简介。
全国大学生“飞思卡尔”杯智能汽车竞赛是在规定的模型汽车平台上,使用飞思卡尔半导体公司的 8 位、 16 位微控制器作为核心控制模块,通过增加道路传感器、电机驱动电路以及编写相应软件,制作一个能够自主识别道路的模型汽车,按照规定路线行进,以完成时间最短者为优胜。
因而该竞赛是涵盖了控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科的比赛。
摄像头组比赛规则:采用模拟或数字摄像头对赛道信息进行采集,通过硬件二值化并进行软件信息处理,获得赛道信息,采用规定的舵机和电机控制小车的行走。
相同的赛道,竞速,完成赛道时间短的队伍获胜。
下图为赛道示意图和实际赛道照片。
为保证小车一直沿着黑色引导线快速行驶,系统主要的控制对象是小车的转向和车速。
即应使小车在直道上以最快的速度行驶。
在进入弯道的时刻尽快减速,且角度的转向要适合弯道的曲率,确保小车平滑地转弯,并在弯道中保持恒速。
从弯道进入直道时,小车的舵机要转向至中间,速度应该立即得到提升,直至以最大的速度行进。
为实现上述控制思想,我们采用不同的控制方法来控制小车的转角和速度。
下图为小车的实物模型:二.控制策略。
2.1:理论分析:Ov7620 数字摄像头采集到的赛道信息为采集点灰度值,这些灰度值与设定的阀值进行比较转化为二进制信息,利用这些二进制信息可以确定赛道黑线位置,进而确定小车当前位置及理想通过曲线。
求得理想通过曲线上各点的斜率进而确定赛道类型,通过算法控制电机转速,以保证小车安全通过赛道防止侧翻和打滑。
计算小车的当前位置横坐标值即摄像头视野中线与理想通过曲线与横坐标交点的差值。
恩智浦杯全国智能车竞赛之PID调节

恩智浦杯全国智能车竞赛之PID调节PID调节是一种常见的控制算法,它可以使得我们的智能车在行驶过程中更加稳定、精准地跟踪参考线,因此深受智能车竞赛爱好者的喜爱。
在恩智浦杯全国智能车竞赛中,PID调节也是考试科目之一,掌握PID调节技巧可以有效地提高竞赛成绩。
PID调节的原理与实现PID调节是由比例(P)、积分(I)、微分(D)三个控制部分组成的,在调节方式上比纯比例、纯积分、纯微分控制更加精准,稳定性更高。
其中各部分的作用如下:1. 比例控制(P):控制速度和位置差的乘积,将当前偏差与期望值相乘,实现偏差与输出信号之间的线性比例关系。
2. 积分控制(I):累加控制环节中的误差,以减小偏差处于静态区间的情况,较大幅度地减少稳态误差和偏移,并加强系统的稳定性和精度。
3. 微分控制(D):根据偏差在横轴上的改变速率来调节输出,防止过冲或震荡,能更好地适应系统扰动。
PID算法通过将上述三个控制部分相加,生成输出值Pu,现在我们需要设定输出值Pu 的目标值,也就是我们需要调节的偏差。
这个目标值是由PID控制器计算出的参考值,然后根据目标值和实际值的偏差来修正输出值,从而实现控制目标的精度。
在恩智浦杯全国智能车竞赛中,PID调节的应用非常广泛,比如跟踪参考线、通过斑马线、识别交通灯等都需要PID控制技巧。
下面以跟踪参考线为例,介绍PID调节在智能车竞赛中的应用。
1. 确定控制目标:智能车需要跟踪的控制目标就是参考线,控制目标的个数和形状可能有所不同,但原理都是一样的。
2. 传感器读取数据:为了了解目前智能车的实际位置,我们需要通过传感器读取智能车当前距离参考线的距离差,然后输出给控制器进行下一步的计算。
3. PID计算:根据传感器读取的数据计算出PID指令(输出值),指令的大小和方向与距离差及偏差大小有关。
4. 控制执行:控制执行部分采取的是速度控制模式,智能车越靠近参考线速度越慢,离得越远速度越快,执行过程中不断采集传感器数据,判断当前位置是否偏离了参考线。
智能车PID的算法推荐

智能车PID的算法推荐智能车PID控制算法是一种常用的控制算法,它通过不断地调整车辆的控制量来实现目标状态与当前状态之间的误差最小化。
PID算法的名称源于它的三个部分:比例(P)、积分(I)和微分(D),而车辆的控制量则是根据这三个部分的权重参数进行计算。
比例项(P)是通过比较目标状态和当前状态的误差得到的,其控制效果是与误差成比例的。
当误差较大时,比例项会产生较大的输出,有助于加快系统响应速度;而当误差较小时,比例项的输出将减小,以减小振荡。
积分项(I)可以追踪已经发生的误差,得到误差的累积项。
它在误差持续存在时提供控制输出,可以在误差较小或者趋于零时,对系统进行微调以消除持久性误差。
微分项(D)是根据误差的变化率来调整系统的输出。
它可以提供一个反馈信号,预测误差的变化趋势,并制定适当的控制输出来减小误差的变化速度,以克服过冲或振荡的问题。
在实际应用中,选择合适的PID权重参数是非常重要的。
通常的做法是先设置P和D的值,然后逐渐增加I的值直到系统稳定。
这个过程可能需要多次试验和微调,以获得最佳的参数组合。
除了基本的PID算法,还有一些改进的PID算法可供选择,其中一些常用的包括:1.增量PID算法:在每个控制周期中,通过计算误差的变化量来更新控制量,以提高控制系统对于误差变化的敏感性。
2.自适应PID算法:根据系统当前状态和性能,动态调整PID参数,以适应不同的工况和外部扰动。
3.模糊PID算法:结合模糊逻辑和PID算法,通过定义模糊规则来调整PID参数,以更好地适应非线性和不确定性系统。
4.基于模型的PID算法:通过对系统动态建模,根据建模结果自动调整PID参数,以提高系统的控制精度和稳定性。
5.改进的积分项算法:针对积分项可能导致的问题(如积分饱和),进行改进和优化,以避免控制系统出现过度响应或不稳定的情况。
6.鲁棒PID算法:通过考虑外部扰动和模型不确定性,设计具有鲁棒性的PID控制器,以提高系统的抗干扰能力和稳定性。
智能车PID算法实现原理讲解

智能车PID算法实现原理讲解引言智能车是一种能够通过传感器收集环境信息,然后分析、决策、控制并实现自主导航的车辆。
PID(Proportional-Integral-Differential)控制算法是智能车中常用的一种控制方法,可以实现对车辆的位置、速度等参数进行精确调节。
本文将对PID算法的实现原理进行详细讲解。
一、PID控制算法原理PID控制算法是一种经典的反馈控制算法,通过对系统的误差进行连续检测和调整,使得系统能够自动调整到期望值附近并保持稳定。
PID算法由三个部分组成:比例控制(P),积分控制(I)和微分控制(D)。
1.比例控制(P)比例控制是基于误差的当前值来进行控制调整的,它通过将误差乘以一个比例系数来调整控制量的变化。
这意味着当误差增大时,控制量的变化也会增大。
2.积分控制(I)积分控制是基于误差的历史累积值来进行控制调整的,它通过将误差的累积值乘以一个积分系数来调整控制量的变化。
这意味着当误差持续存在时,控制量的变化会逐渐增大,从而更好地调整系统。
3.微分控制(D)微分控制是基于误差的变化率来进行控制调整的,它通过将误差的变化率乘以一个微分系数来调整控制量的变化。
这意味着当误差快速变化时,控制量的变化也会被加大。
二、PID算法实现步骤基于PID算法的智能车控制实现需要按照以下步骤进行:1.设定目标值(设定值)和实际值(反馈值)。
目标值为期望的位置或速度,实际值通过传感器获取。
2.计算误差。
误差可以通过将设定值减去实际值得到。
3.计算比例控制量。
比例控制量可以通过将误差乘以比例系数得到。
4.计算积分控制量。
积分控制量可以通过将误差的累积值乘以积分系数得到。
5.计算微分控制量。
微分控制量可以通过将误差的变化率乘以微分系数得到。
6.将比例控制量、积分控制量和微分控制量相加得到最终的控制量。
7.根据最终的控制量来调整车辆的状态,例如调整轮速、转向角度等。
8.循环执行上述步骤,使得车辆能够持续地调整控制量,使得实际值逐渐接近设定值,从而实现稳定的控制。
PID算法原理及调整规律

PID算法原理及调整规律一、PID算法简介在智能车竞赛中,要想让智能车根据赛道的不断变化灵活的行进,PID算法的采用很有意义。
首先必须明确PID算法是基于反馈的。
一般情况下,这个反馈就是速度传感器返回给单片机当前电机的转速。
简单的说,就是用这个反馈跟预设值进行比较,如果转速偏大,就减小电机两端的电压;相反,则增加电机两端的电压。
顾名思义,P指是比例(Proportion),I指是积分(Integral),D指微分(Differential)。
在电机调速系统中,输入信号为正,要求电机正转时,反馈信号也为正(PID算法时,误差=输入-反馈),同时电机转速越高,反馈信号越大。
要想搞懂PID算法的原理,首先必须先明白P,I,D各自的含义及控制规律:比例P:比例项部分其实就是对预设值和反馈值差值的发大倍数。
举个例子,假如原来电机两端的电压为U0,比例P为0.2,输入值是800,而反馈值是1000,那么输出到电机两端的电压应变为U0+0.2*(800-1000)。
从而达到了调节速度的目的。
显然比例P越大时,电机转速回归到输入值的速度将更快,及调节灵敏度就越高。
从而,加大P值,可以减少从非稳态到稳态的时间。
但是同时也可能造成电机转速在预设值附近振荡的情形,所以又引入积分I解决此问题。
积分I:顾名思义,积分项部分其实就是对预设值和反馈值之间的差值在时间上进行累加。
当差值不是很大时,为了不引起振荡。
可以先让电机按原转速继续运行。
当时要将这个差值用积分项累加。
当这个和累加到一定值时,再一次性进行处理。
从而避免了振荡现象的发生。
可见,积分项的调节存在明显的滞后。
而且I值越大,滞后效果越明显。
微分D:微分项部分其实就是求电机转速的变化率。
也就是前后两次差值的差而已。
也就是说,微分项是根据差值变化的速率,提前给出一个相应的调节动作。
可见微分项的调节是超前的。
并且D值越大,超前作用越明显。
可以在一定程度上缓冲振荡。
比例项的作用仅是放大误差的幅值,而目前需要增加的是“微分项”,它能预测误差变化的趋势,这样,具有比例+微分的控制器,就能够提前使抑制误差的控制作用等于零,甚至为负值,从而避免了被控量的严重超调。
PID控制以及汽车控制的应用

未来展望
随着智能控制技术的发展,PID控制算法将与人工智能、机器 学习等技术相结合,实现更加智能化和自适应的控制策略。
未来研究方向包括发展新型PID控制算法、提高控制精度和鲁 棒性、以及探索多目标优化和控制等问题。同时,也需要加 强基础理论和实验研究,推动汽车控制技术的不断创新和发 展。
THANKS
在汽车控制中,PID控制算法广泛应用于发动机控制、底盘控制和车身控制等领域,对提高汽车的动力 性、经济性和舒适性具有重要意义。
实际应用与挑战
Hale Waihona Puke 在实际应用中,PID控制算法需要根 据具体的汽车系统和工况进行参数调 整和优化,以适应不同的行驶条件和 性能要求。
挑战主要来自于系统非线性和不确定 性,以及复杂的行驶环境和多变的驾 驶员意图。为了实现更好的控制效果 ,需要深入研究系统动态特性和驾驶 员行为特征。
控制精度与鲁棒性
控制精度
PID控制器在汽车控制中需要高精度 的控制效果,以满足汽车运行的安全 性和稳定性。
鲁棒性
由于汽车运行环境复杂多变,PID控制 器需要具备良好的鲁棒性,以应对各 种干扰和不确定性。
实时性要求
快速响应
汽车控制需要快速响应,以应对突发情况, PID控制器需要具备高效的计算能力和优化 算法,以满足实时性要求。
详细描述
通过传感器检测车辆的横摆角速度和侧向加速度,PID控制器计算期望横摆力矩并与实际横摆力矩进 行比较,产生一个附加横摆力矩,通过制动系统施加到内侧车轮上,使车辆保持稳定。PID控制器能 够根据车辆的动态响应实时调整附加横摆力矩,提高车辆的操控性和稳定性。
自动泊车系统
总结词
自动泊车系统是利用PID控制算法实现自 动寻找停车位和自动泊车的智能化系统 。
基于PID算法对智能车自动控制的研究与实现

总681期第十九期2019年7月河南科技Henan Science and Technology基于PID 算法对智能车自动控制的研究与实现陶文鹏(安徽财经大学管理科学与工程学院,安徽蚌埠233000)摘要:本设计以摄像头为传感器,利用电机和舵机来控制智能车的方向及速度,旨在研究并实现PID 控制算法。
其间设计并建立了简略的数学模型,进行相应数学公式的推导,同时通过相关软件进行仿真,结合实际参数,研究PID 算法的原理。
其目的是将PID 算法与智能车车模相结合,使智能小车能够正常并稳定地沿着路径行驶。
关键词:智能车;PID 算法;路径循迹;软件仿真中图分类号:TP242.6文献标识码:A文章编号:1003-5168(2019)19-0030-03Research and Implementation of Intelligent Vehicle Automatic Control Based on PID AlgorithmsTAO Wenpeng(School of Management Science and Engineering,Anhui University of Finance and Economics ,Bengbu Anhui 233000)Abstract:This design took camera as sensor,used motor and steering gear to control the direction and speed of intel⁃ligent vehicle,aiming at researching and realizing the PID control algorithm.In the meantime,a simple mathematical model was designed and established,and the corresponding mathematical formula was deduced.At the same time,the principle of the PID algorithm was studied by simulation with relevant software and actual parameters.Its purposeis to combine the PID algorithm with the intelligent vehicle model,so that the intelligent car can travel along the path normally and steadily.Keywords:intelligent vehicle ;PID algorithm ;path tracking ;software simulation 智能车作为轮式机器人的一个分类,在如今大数据与人工智能的时代背景下,其应用较为广泛,智能化需求日趋强烈,而控制系统是智能车的“智能”体现之处。
智能车的PID控制

智能车的 PID 控制 智能车的转向控制和速度控制是一体的,合理的速度分配以及最优的行驶路线,才能使智能车在最短时间内完成比赛。
从我们开始提速调试的过程中,曲率半径为50cm 的最小弯几乎都会冲出去,究其原因是当初赛道判断出错,入弯时速度调整太迟,当速度调整过来时,车子已经冲出赛道。
经过长期的调试发现,如果在入弯前能及时调整速度,智能车在弯道内可以很好的以比较高的速度行驶,同时可以切线以最优路径行驶以单行黑线点与图像中心的偏差来对转向进行控制。
最终采用了PD 对转向进行控制,P ——某一行的偏差,D ——本次偏差与上一次偏差的差值。
PD 值是我们调好的一组固定值。
只是P 的参考行我们采用的是动态设定,根据我们外部按键设定的速度值的不同,也通过外部按键设定不同的参考行,保证智能车的沿线及切弯。
设定速度低时,参考行设定距车子近的方向,如果此时设定的距车子太远的地方,智能车在过弯道时,很容易切弯过度,行驶出赛道。
当设定速度高时,参考行设定距车子远的方向,这样可以在高速行驶下,使车子提前转弯我们采用的是增量式PID 算法。
PID 控制器原理图如图3.13所示,图3.13 PID 控制器原理框图 图3.13中,r(t)是电动机的速度设定值,c(t)是转速的实际测量值,e(t)是控制器的输入偏差信号,u(t)是控制器的输出控制量,则PID 控制算式如下:公式1其中Kp是比例系数,Ti是积分时间常数,Td是微分时间常数。
把上式离散化处理后得:公式2其中Ts为采样周期。
由于采用的是增量式PID算法,因此PID调节器只需计算出控制量的增量,所以增量式PID控制算式如下:公式3公式4令A=(Kp+Ki+Kd),B=(Kp+2Kd),C=Kd,则有:公式5我们只需确定上式中的A,B,C三个变量的值,寻找一组最为合适的PID参数,在这里推荐经验调试来确定三个变量的值,先把B,C置0,调参数A,然后在A 的基础上依次来确定B和C。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
智能车速度控制pid(电机闭环控制算法)
对于智能车的电机闭环控制算法,我之所以标题没有写上智能车电机PID闭环控制算法是因为PID 算法根本就不是特别好的适用于智能车这种变化很快的系统,对于智能车,电机的调速可以说是时时刻刻再进行调速控制的,我上面说描述的经典PID 算法,都是针对一些惰性系统,也就是说是变化比较慢的系统的,所以对于智能车的电机调速采用完完整整的PID 算法,是根本不可取的,及时采用了,你必须要经过一些变换和改进才能使用。
以上的简述只是鄙人自己的看法,如有错误,请各位高手指正。
现在估计您会疑问,PID 不适用于智能车的电机控制,那什么才适用呢?
鄙人原来做过智能车,从鄙人本身的理解,P 算法控制电机,也就是比例控制是最好的,反应速度快,控制精度高,不存在积分和微分效应,非常适用于适用于控制周期短的系统,当然,对于一些特殊的逻辑控制算法,可能要采用PD算法,用微分来做补偿,防止震荡和超调。
下面来说下电机控制算法从开始的加入到最终的确定的方法:
当然这一切的前提就是安装了编码器,车速有反馈,只有加上编码器,有了反馈,才能组成一个闭环系统。
当然您也可以加上码盘,或者霍尔开关等一切可以返回车速的东西都可以。
(1)首先建议在车速比较慢的时候,采用PID 算法来控制电机,为什么开始要建议您采用PID 呢?主要是为了让您更加深刻理解PID 算法的精髓和调试步骤方法等,有助于以后对控制算法更加深入的研究和书写。
调试PID 三个参数的方法,很多地方都提供了,我在这里简单的说下:首先将ID 参数都变为0,先调整P 比例参数,调整到速度基本上跟您给定的速度差不多,也就是说基本稳定在您给定的脉冲数,当然这个时候会非常的震荡,不要担心,接下来调整I,调整I 的结果就是震荡会消除很多,但是车速会变化缓慢,也就是说会有一些延迟,然后再调整D,调整D 的结果就是增强调节的灵活性和预见性,在给定速度变化的过程中,能够以一个平稳过渡来变换,而且速度可以长时间稳定在给定速度附近,然后PID 三个参数的基本范围就确定了,然后再根据实际的跑车来微调这些参数,当然在您调试PID之前,请仔细阅读PID 理论知识,这样有助于您的调试和理解,。