第六届智能车报告电磁常州大学 IDEA.docx

上传人:b****4 文档编号:3676776 上传时间:2022-11-24 格式:DOCX 页数:40 大小:707.58KB
下载 相关 举报
第六届智能车报告电磁常州大学 IDEA.docx_第1页
第1页 / 共40页
第六届智能车报告电磁常州大学 IDEA.docx_第2页
第2页 / 共40页
第六届智能车报告电磁常州大学 IDEA.docx_第3页
第3页 / 共40页
第六届智能车报告电磁常州大学 IDEA.docx_第4页
第4页 / 共40页
第六届智能车报告电磁常州大学 IDEA.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

第六届智能车报告电磁常州大学 IDEA.docx

《第六届智能车报告电磁常州大学 IDEA.docx》由会员分享,可在线阅读,更多相关《第六届智能车报告电磁常州大学 IDEA.docx(40页珍藏版)》请在冰豆网上搜索。

第六届智能车报告电磁常州大学 IDEA.docx

第六届智能车报告电磁常州大学IDEA

 

第六届“飞思卡尔”杯全国大学生

智能汽车竞赛技术报告

 

 

学校:

常州大学

队伍名称:

IDEA队

参赛队员:

汪汇泉高祥龙孙洋

带队教师:

潘操储开斌

 

关于技术报告和研究论文使用授权的说明

本人完全了解第一届“飞思卡尔”杯全国大学生智能汽车邀请赛关保留、使用技术报告和研究论文的规定,即:

参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。

参赛队员签名:

带队教师签名:

日期:

 

摘要

本文记录了常州大学“IDEA”队队员在准备第六届“飞思卡尔”杯全国智能汽车竞赛中的工作成果和体会,并总结了方案中成功的经验和不足之处,愿与各高校代表队分享。

本智能车系统以飞思卡尔高性能16位单片机MC9S12XS128为核心,通过用电感检测赛道导线产生的电磁波来引导小车行驶,用编码器来检测小车的速度。

使用三极管对采集的电磁信号进行放大,利用二极管倍压整流将放大后的电磁信号转换为正比于交流电压信号峰峰值的直流信号,通过AD采样获得当前传感器在赛道上的位置信息,运用干簧管检测起跑线完成自动启停,使用PD算法控制小车方向和分段PID算法对小车进行速度控制,实现稳定快速的运行。

关键词:

飞思卡尔智能车MC9S12XS128电磁导航PID控制

 

第一章引言

1.1比赛背景介绍

教育部为了加强大学生实践、创新能力和团队精神的培养,在已举办的全国大学生数学建模、电子设计、机械设计、结构设计等4大竞赛的基础上,经研究决定,委托教育部高等学校自动化专业教学指导分委员会主办每年一度的全国大学生智能汽车竞赛,并成立了由教育部、自动化分教委、清华大学、飞思卡尔半导体公司等单位领导及专家组成了组委会。

该竞赛与教育部已举办的4大专业竞赛一样,都是为了提高大学生的动手能力和创新能力而举办的,具有重大的现实意义。

与其他大赛不同的是,这个大赛的综合性很强,是以迅猛发展的汽车电子为背景,涵盖了控制、模式识别、传感、电子、电气、计算机和机械等多个学科交叉的科技创意性比赛,这对进一步深化高等工程教育改革,培养本科生获取知识、应用知识的能力及创新意识,培养硕士生从事科学、技术研究能力,培养博士生知识、技术创新能力具有重要意义。

根据自动化专业教学指导分委员会与飞思卡尔公司签署的有效期为5年的飞思卡尔公司协办全国大学生智能竞赛的合作协议书,竞赛由飞思卡尔公司提供统一的标准硬软件技术平台。

各参赛队以飞思卡尔HC12单片机为核心控制模块,以引导改装后的模型汽车按照规定路线行进,以完成时间最短者为优胜。

组委会办公室技术组专家赴韩国汉阳大学交流访问,认真考察了其举办的多届智能汽车竞速比赛,在学习与总结其宝贵经验的基础上,为了保证竞赛的普及性,规定每支参赛队伍三名成员中最多只能有一名研究生参加;为了保证竞赛的公平性,制定了多种赛道方案以及体现公平、透明的比赛规则;为了进一步训练大学生的科学技术研究素质,参赛队伍除了进行现场比赛之外,还须提交技术报告,并计入竞赛总分。

为了使该竞赛向普及、健康的方向发展,成为在全国范围内大学生科技创意性的重要赛事,经自动化分教指委、飞思卡尔公司及组委会协商决定,在清华大学自动化系设立竞赛秘书处。

但事物的发展总是要秉着“一切从实际出发”这一思想理念才能得以延续并不断地完善,因此从第五届开始组委会增设了电磁组,相比于以往的光电组与摄像头组,电磁引导具有适应性强对环境依赖小,成本低等特点,非常有望在不久的未来大范围的应用,这是增设电磁组的根本原因之所在。

虽然电磁组处于起步摸索的阶段,但是通过本届赛事,可以看到电磁组的飞速进步,相信通过大家今后不懈的努力,电磁组必将会有长远的发展。

1.2技术报告内容安排说明

此技术文档的正文部分大致分为九个部分:

第一章,引言部分,介绍比赛背景,技术报告内容安排说明。

第二章,系统方案整体设计,从硬件及软件方面简单的介绍了赛车结构。

第三章,赛车机械结构调整,具体介绍了对赛车各个机械部分的调整,使其达到最佳状态。

第四章,智能车硬件电路方案的选取,介绍了BTS7960驱动模块,电源管理模块以及停车检测,以及对传感器的原理、选择、测试,传感器布局,输出信号作了详细的阐述和分析。

第五章,软件设计,介绍了舵机的控制方法、速度的控制方法以及刹车和停车。

第六章,软件测试模块,介绍了系统软件调试所使用的软硬件。

第七章,总结,对智能车整体上的阐述以及存在的不足及参赛队员的心得感想。

第二章系统整体方案设计

系统整体功能模块结构如图2.1所示。

图2.1系统整体功能结构图

2.1系统硬件设计方案概述

本智能车系统硬件部分主要包含道路信息识别模块、控制决策模块和电机驱动模块。

本智能车控制系统采用飞思卡尔公司的16位单片机MC9S12XS128为控制器,采用电磁感应线圈的方案识别道路信息,使用2片BTS7960并联作为电机驱动,可以稳定有力的驱动电机。

通过137线编码器实现速度的闭环控制,使得整车的性能稳定可靠。

使用干簧管作为起始线的检测,效果良好。

2.2系统软件设计方案概述

通过给7个传感器(从0到6依次编号),对舵机转向采用PD控制,系统的快速性好。

使用编码器测速对电机进行PID控制。

使用ECT捕获停车脉冲方式停车。

第三章机械调整

3.1车体调整

从空气动力学角度上讲,影响赛车行驶稳定性的三个主要内容是:

下压力,阻力以及灵敏性。

大的下压力可以增大赛车的抓地能力,从而提高赛车的过弯极限,减小后轮的侧滑,保证赛车行驶稳定性。

但同时下压力的增加却带来赛车阻力的增加,不可避免的却会牺牲赛车的部分极速。

而且下压力的增加会导致前轮负荷增大,转向灵敏性降低。

所以底盘以及其它部件的安装及布局应该综合考虑。

另外车体重心位置对赛车加减速性能、转向性能和稳定性都有较大影响。

重心调整主要包括重心高度和前后位置的调整。

理论上,赛车重心越低稳定性越好。

而对于赛车重心前后调整方面,根据车辆运动学理论,车身重心前移,会增加转向,但降低转向的灵敏度(因为大部分重量压在前轮,转向负载增大),同时降低后轮的抓地力,容易产生后轮漂移;而重心后移,会减少转向,但增大转向灵敏度,后轮抓地力也会增加。

根据以上两方面理论的研究,对底盘及其他模块整体布局的调整方案如下:

(1)重心调整

为了尽可能的降低重心,可以采取两种措施,一是降低底盘,从整车最底层开始降低,但是由于赛道中会出现坡道,所以底盘的降低只能是微调。

另一方面是所有模块的安装尽可能低,主要包括低位主板,降低支架的高度等措施。

在重心前后位置调整方面,将电池向后微调,以确定合适的车体重心,让车模更加适应比赛赛道

(2)底盘调整

由于为了降低重心,减小赛车行驶阻力,主要部件的布局一定,形成车头到车尾斜向上的布局,这样如果赛车底盘与跑道面保持水平时,赛车顶部气流要比底部快,速度差会在上层表面产生一个净负压,通常其称为“升力”。

为了克服这个升力,以使赛车具有一定的抓地能力,是得赛车加减速性能达到较佳水平,提高转弯的极限以及防止后轮漂移,同时,不能使下压力过大,以

影响赛车的转向灵敏性,因而将底盘也进行了一定调整,合理利用车模配件将底盘稍有降低。

3.2差速的调整

在车实际跑的过程中发现,后面两个轮的相对松紧程度,也就是差速对拐弯有很大的影响。

差速太紧,则拐弯容易甩尾,速度快的时候很容易甩出去,但是差速如果太松,虽然会改善转弯性能,但是严重影响了直线上的加减速,而且齿轮的咬合也不是很好,对齿轮会有一定的损坏。

所以,后面两个轮子的相对松紧程度要适中,经过多次的调试,得出了比较满意的效果,即将模型车放到跑到上,用手抓住后轮的一只轮子使其不能转动,在赛道上推车子转弯,如果车子能够稍轻松的推动,则此时的差速器为最适合。

当然,实际还需要根据不同的赛道和车的机械性能进行相应的微调。

调节差速可以通过工具旋紧或者旋松右后轮来得到合适的差速控制,其实就是适当的调整两片轴承的压力以满足后轮驱动和差速的要求。

3.3舵机的安装

在舵机的安装过程中发现,将舵机的摆臂增长可以提高舵机的响应速度。

因为舵机的摆臂越长,当车轮转过相同的角度时,舵机转过的角度越小,即时间越短。

因而增长了小车舵机的摆臂,同时两条拉杆的长度也在合理的范围内做了相应的调整。

虽然加大力臂会加快舵机的转向,但是力臂的长度和力矩是成反比的,会导致舵机有一个空转的角度,所以要在多次的实验中选择合适的。

图3.1舵机安装实物图图3.2舵机安装示意图

3.4编码器的安装

采用编码器进行测速,将其安装在车架上,齿轮与后轮转轴啮合。

如图3.3所示。

图3.3编码器安装图

3.5电路板的防静电措施

由于赛车在与赛道摩擦时,会产生大量静电,特别在弯道时,赛车各轮的摩擦由滚动摩擦变为滑动摩擦,静电的积累量会变的大大增加。

在实际的调试过程,发现赛道的静电干扰会有可能影响到了单片机,出现单片机复位现象,在弯道上尢为突出。

对此,基于静电屏蔽的理论,提出了下以防静电措施:

在电路板之下,铺一层由铝箔组成的静电屏弊层。

但是由于铝箔是导电的,为了防止电路板短路,在铝箔与电路板之间再添加一层绝缘胶带。

这样,即可以防短路,又可以利用绝缘胶带作为铝箔的衬子,防止铝箔破损。

 

完成后小车的硬件参数如表3.1所示。

项目

参数

路径检测方法(赛题组)

电磁组

车模几何尺寸(长、宽、高)(毫米)

550/250/100

车模轴距/轮距(毫米)

160

车模平均电流(匀速行驶)(毫安)

1800

电路电容总量(微法)

1200

传感器种类及个数

感应线圈7个编码器1个

干簧管4个

新增加伺服电机个数

0

赛道信息检测空间精度(毫米)

2

赛道信息检测频率(次/秒)

200

主要集成电路种类/数量

LM29402片,LM29412片

BTS79602片

车模重量(带有电池)(千克)

2

表3.1小车硬件参数表

 

第四章硬件电路设计

4.1电源模块设计

电源是一个系统正常工作的基础,电源模块为系统其他各个模块提供所需要的能源保证,因此电源模块的设计至关重要。

模型车系统中接受供电的部分包括:

传感器模块、单片机模块、电机驱动模块、伺服电机模块等。

设计中,除了需要考虑电压范围和电流容量等基本参数外,还要在电源转换效率、噪声、干扰和电路简单等方面进行优化。

可靠的电源方案是整个硬件电路稳定可靠运行的基础。

全部硬件电路的电源由7.2V,2A/h的可充电镍镉电池提供。

由于电路中的不同电路模块所需要的工作电流容量各不相同,因此电源模块应该包含多个稳压电路,将充电电池电压转换成各个模块所需要的电压。

电源模块由若干相互独立的稳压电源电路组成。

在本系统中,除了电机驱动模块的电源是直接取自电池外,其余各模块的工作电压都需要经电源管理芯片来实现。

由于智能车使用7.2V镍镉电池供电,在小车行进过程中电池电压会有所下降,故使用低压差电源管理芯片LM2940。

LM2940是一款低压稳压芯片,能提供5V的固定电压输出。

LM2940低压差稳压芯片克服了早期稳压芯片的缺点。

与其它的稳压芯片一样,LM2940需要外接一个输出电容来保持输出的稳定性。

出于稳定性考虑,需要在稳压输出端和地之间接一个47uF低等效电阻的电容器。

传感器额定工作电压是6V,舵机的工作电压也是4.5V至5.5V,所以考虑到可调性,采用的是LM2941。

电源模块设计结构如图4.1所示,电源原理图如图4.2所示。

 

图4.1电源模块结构图

图4.2电源原理图

4.2驱动电路设计

驱动电路采用英飞凌的BTS7960,通态电阻只有16mΩ,驱动电流可达43A,具有过压、过流、过温保护功能,输入PWM频率可达到25KHz,电源电压5.5V--27.5V。

BTS7960是半桥驱动,实际使用中要求电机可以正反转,故使用两片接成全桥驱动[1]。

如图4.3所示。

图4.3驱动电路原理图

4.3干簧管设计

由于电磁组的起始线是直径为7.5-15mm,高度为1-3mm,表面磁场强度为3000-5000Gs的永磁铁,就可以用霍尔元件或干簧管来检测。

但是使用霍尔元件需要提供电源,而且霍尔元件是有磁场方向限制的,而且赛道上的磁铁方向的摆放方向是随机的,这就给检测带来了很大的麻烦。

而干簧管没有这种限制,使用方便,结果可靠。

最终确定使用干簧管检测起始线。

为防止漏检起跑线,在小车每边并联两个干簧管,增加检测范围,即共用4个干簧管对起跑线进行检测。

干簧管是一种磁敏的特殊开关。

它通常由两个或三个既导磁又导电材料做成的簧片触点,被封装在充有惰性气体(如氮、氦等)或真空的玻璃管里,玻璃管内管内平行封装的簧片端部重叠,并留有一定间隙或相互接触以构成开关的常开或常闭接点。

当通过一定强度的磁场时,干簧管就会吸合,其实它就像一个开关一样,开和关取决于是否经过磁场。

利用此特点,通过上拉接到单片机的中断口,使单片机快速响应起跑线信号。

起跑线检测模块电路如图4.4所示:

图4.4起跑线检测模块电路图

4.4传感器模块设计

电磁传感器检测路面信息的原理是由电感和电容并联产生相应的特定频率谐振,其频率的设定为跑到信息频率的附近,再由谐振感应跑到上由变化的电流产生的变化的磁场,从而产生相应的交流电压,再将相应的交流的电压进行放大、整流和滤波从而变化成相应的电压。

采用电磁感应线圈的方案测量赛道上100mA左右20KHz交流电所产生的磁场。

线圈感应到的信号是很微弱的,要放大电路放大。

再将放大后的交流信号通过检波得到直流信号。

(1)运算放大器放大方案

刚开始做车的时候,参考了上届比赛一些强队的技术报告,传感器普遍采用运算放大器。

于是起初采用LM386运算放大器进行放大。

确定放大电路后,采用了7个传感器,采用的是前排“一”字布局,比较保守,有兴趣的同学可以根据电磁感应现象以及实际测得的数据好好研究一下。

根据实际调试,所得到的经验是传感器与导线垂直并且相距越近感应强度越大,并且角度变小相应的强度值减小幅度很快。

采用了数字化信号的方法,将传感器信号量化为数字量,电路图如图4.5所示。

 

图4.5LM386运放方案

虽然运放的放大倍数非常可观,但是其不稳定的一面也在调试过程中显现出来,时常会出现两三个传感器采集的信号判断相似,直接导致的现象就是舵机的反应迟钝或舵机的抖动。

几经考虑,最终放弃了运放的方案。

(2)三极管放大方案

由于使用运算放大器价格高,电路复杂,电磁干扰比较严重,而且宽带运放存在一个致命的缺点,容易自激。

鉴于此,采用三极管单管共射放大电路。

传感器电路选择10mH的电感,利用谐振网络Q值最高,感应电压最大的原理,利用公式1为10mH电感选择合适的谐振电容。

计算出的谐振电容为6.3nF,由于没有6.3nF的电容,故选择6.8nF的电容。

公式1

10mH电感感应到的电压只有几十毫伏,所以放大电路的放大倍数要不小于100倍,采用β>150的三极管C1815放大,完全满足要求,而且电路简单。

检波电路采用二极管检波,简单可靠,而且检波电路的输入信号已经放大到3V左右,输入信号足够强,完全可以使用二极管检波。

由于采用数字

化传感器信号,要求检波后的电压幅值尽量大,这样传感器的安装高度就可以高一些,方便跑坡道。

但太高的话又会增加盲区,经过反复试验最终确定检波后低通滤波器的电阻选用33KΩ。

电路原理图如图4.6和4.7所示。

图4.6官方提供的三极管放大电路原理图

图4.7三极管放大电路原理图

(3)传感器布局[10]

由于磁场分布的特殊性,在载流直导线周围产生的磁场如图4.8所示,今年电磁组车身长度不再有限制,所以合理的利用规则拓展小车的前瞻是形势所

趋,传感器的布局对车速的影响也相当重要。

中间一字型,两边扇形的布局,在跑弯道时稍微好一些,但直道上和单边圆弧上还是一字型排布比较好,盲区比较少,出于整体考虑,采用一字型传感器布局,能最大限度的利用前瞻。

如图4.9所示。

图4.8载流直导线周围产生的磁场图

图4.9一字型传感器布局图

 

第五章软件设计

如果说前面的硬件是智能车的躯体的话,那软件就是智能车的灵魂,一部智能车性能的好坏,很大一部分取决于它的软件的算法控制。

为此,在仔细研究上届前辈的一些优秀的思想基础之上,结合平时的调试过程加入了自己的创新。

本智能车采用电感线圈作为寻线传感器,数据采集的处理就成了整个软件的核心内容。

在智能车的转向和速度控制方面,分别使用了PD算法和增量式PID控制算法,配合使用理论计算和实际参数补偿,使在寻线中智能车尽量达到稳定快速[3]。

5.1整体程序框架流程

图5.1整体程序框架流程图

5.2中断的调用

程序中调用实时中断完成了包括传感器采集、赛道路况识别、舵机方向控制,PID速度控制等任务,调用外部中断完成起跑线的识别。

5.3赛道路况识别

虽然今年取消了电磁前瞻的的限制,但从比赛的现场的情况真正将电磁前瞻做的特别长的队伍并不多,在之前的调试中曾试着将前瞻做的很长,但发现效果并不好,主要原因是前瞻太长时,小车的机械结构不稳定,而且容易变道,一时间也没有找到合适轻质的材料可以让小车伸的很长同时整体机械结构稳定,所以前瞻做的不是很长,弯道的处理特别是小S的处理较困难。

处理方法主要如下:

将整个赛道的路况整体分为直道,弯道,出赛道等情况,用一个数组动态记录最近5次小车中心线与赛道中心线的偏差,然后对这5个数据求代数和,并对代数和求绝对值,如果代数和大于一定值(具体值由赛道弯曲程度确定),则判断为进入弯道,如果代数和连续在一段给定距离内小于某一定值,则可判定小车进入直道或一单侧大圆弧弯。

经过调试,小车基本能够较好的识别赛道情况。

5.4舵机控制算法

舵机控制采用PD[5]控制,其中P为变化的量:

Angel_pwm=A_k×position+A_D×position_error公式1

公式中Angel_pwm为舵输出量,position为位置偏离量,A_k为比例系数,A_D为微分系数,position_error为位置偏差的微分,其中比例系数是变化的。

当发现偏离量在增大时,即上次的动作没有很好的补偿偏差,此时应增大比例系数A_k。

反之,若现在偏离量在减小,且偏离量小于一定值,此时应减小比例系数A_k,此时为向直道走或者在直道上,同时,若发现偏离量在0的两边抖动时,应减小比例系数,减小震荡。

而加入微分变化量可以很好的解决由直道进弯道和由弯道切弯道舵机反应不过来的问题,带来了一定量的超前控制。

调试过程中发现如果在直道A_D值过大时,舵机会抖动的特别厉害,但在弯道时却不会,而且弯道过的也比较及时,据此可根据前面的赛道判断的情况在不同的赛道给以不同的A_K、A_D值,如在直道A_D值给的小些,弯道大些,具体的参数需要在调试中总结。

5.5速度控制算法

电机控制使用的是增量式PID控制算法[7]。

PID控制是工程实际中应用最为广泛的调节器控制规律。

问世至今70多年来,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。

(1)PID控制算法简介[11]

PID调节是Proportional(比例),Integral(积分),Differential(微分)三者的缩写,是一种过程控制算法,就是对误差信号(采样信号与给定信号的差)通过比例,积分,微分的运算后的结果作为输出控制信号,来控制所要控制的对象。

比例调节作用:

是按比例反应系统的偏差,系统一旦出现了偏差,比例调节作用用以减少偏差。

比例作用大,可以加快调节,减少误差,但是过大的比例使系统的稳定性下降,甚至造成系统的不稳定。

积分调节作用:

是使系统消除稳态误差,提高误差度。

当有误差时,积分调节就进行,直至无误差,积分调节停止,积分调节输出一常值。

积分作用的强弱取决与积分时间Ti,Ti越小,积分作用就越强。

反之Ti大则积分作用弱,加入积分调节可使系统稳定性下降,动态响应变慢。

微分调节作用:

微分作用反应系统偏差信号的变化率,具有预见性,能预见偏差变化的趋势,因此能产生超前的控制作用,在偏差还没有形成之前,已被微分调节作用消除。

因此,可以改善系统得动态性能。

在微分时间选择合适的情况下,可以减少超调,减少调节时间。

微分作用对噪声干扰有放大作用,因此过强的加微分调节,对系统抗干扰不利。

单位反馈的PID控制原理框图如图

5.2所示。

 

图5.2单位反馈的PID控制原理图

图5.2单位反馈的PID控制原理框图

单位反馈e代表理想输入与实际输出的误差,这个误差信号被送到控制器,控制器算出误差信号的积分值和微分值,并将它们与原误差信号进行线性组合,得到输出量u。

 

公式2

式中Kp、Ki、Kd分别称为比例系数、积分系数、微分系数。

u接着被送到了执行机构,这样就获得了新的输出信号

这个新的输出信号被再次送到感应器以发现新的误差信号,这个过程就这样周而复始地进行。

(2)位置式PID控制算法

用矩形数值积分代替上式中的积分项,对导数项用后向差分逼近,得到数字PID控制器的基本算式(位置算式):

公式3

其中T是采样时间,

为三个待调参数。

(3)增量式PID控制算法

对位置式加以变换,可以得到PID算法的另一种实现形式(增量式):

公式4

增量型算法与位置型算法相比,具有以下优点:

(a)增量型算法不需要做累加,控制量增量的确定仅与最近几次误差采样值有关,计算误差或计算精度问题,对控制量计算影响较小。

而位置型算法要用到过去的误差的累加值,容易产生大的累加误差。

(b)增量型算法得出的是控制量的增量,误动作影响小,必要时通过逻辑判断限制或禁止本次输出,不会严重影响系统的工作,而位置型算法的输出是控制量全量输出,误动作影响大。

基于增量式PID算法的优越性,电机控制采用增量式PID控制算法,经过一段时间的摸索,终于调试出了相对稳定的PID参数,然而发现PID算法在出弯道时加速较慢,严重影响了直道的速度。

为此,在重新研究了PID算法及其参数的调整后,发现通过不同PID参数的调整,可以加快小车启动的响应时间,快速达到预先设定的速度。

于是根据之前赛道的路况判断,在不同赛道给以不同PID参数的整定。

如在直道的时候,让小车瞬间达到一个较高于预设的速度,接着逐渐趋于预设速度,而弯道的时候则较平缓的达到预设的速度。

PID算法实现如下:

voidSpeed_PID(void)

{

intI_Error,P_Error,D_Error;

Ideal_Speed=Speed_Sel[Mode];

Real_Speed=Pulse;

I_Error=Ideal_Speed-Real_Speed;//偏差计算(积分)

P_Error=I_Error-PreI_Error;//偏差计算(比例)

D_Error=P_Error-PreP_Error;//偏差计算(微分)

PreI_Error=I_Error;//存储当前偏差

PreP_Error=P_Error;

Control_Speed+=(V_Kp_Sel[Mode]*P_Error+V_Ki_Sel[Mode]*I_Error+V_Kd_Sel[Mode]*D_Error);

if(Control_Speed>Max_Speed)//速度PID,防止调节最高溢出

{

ant_Control_Speed=0;

Control_Speed=Max_Speed;

}

e

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 天文地理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1