飞思卡尔 光电对管智能车技术报告_第1页
飞思卡尔 光电对管智能车技术报告_第2页
飞思卡尔 光电对管智能车技术报告_第3页
飞思卡尔 光电对管智能车技术报告_第4页
飞思卡尔 光电对管智能车技术报告_第5页
已阅读5页,还剩59页未读 继续免费阅读

飞思卡尔 光电对管智能车技术报告.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

关于技术报告和研究论文使用授权的说明本人完全了解第三届全国大学生“飞思卡尔”杯智能汽车竞赛有关保留、使用技术报告和研究论文的规定,即参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。参赛队员签名带队教师签名日期II目录第1章引言111路径信息的采集212对采集到的数据进行分析2121引导线的识别2122获取赛道信息313智能车控制决策314智能车执行单元3第2章智能车硬件设计方案521硬件方案设计概述5211中央控制电路6212红外光电传感器6213主电机及舵机驱动6214速度传感器7215人机界面7216电源模块722中央控制电路723红外光电传感器924主电机的驱动10241基于H桥芯片MC33886的主电机驱动方案10242电机驱动电路1125速度传感器1226人机界面1327电源系统1428总装配方案15第3章软件设计方案1831开发调试平台1832信息采集与数据分析19I33舵机控制算法20331舵机转向角度分配21332方向控制策略21333舵机PID整定2134驱动电机控制算法21341速度控制策略21342BANG_BANG控制22第4章赛车机械结构调整2341底盘的调整2342前轮的调整2343后轮距及后轮差速的调整2444齿轮传动机构的调整2545舵机的改装25第5章调试说明2651硬件电路的调试2652控制策略的调试2653机械结构的调试27第6章小车模型改造后的主要技术参数28第7章结束语2971问题与思考2972不足与改进29参考文献30附件A源程序31II第1章引言全国大学生智能汽车比赛是经全国高等教育司研究,委托高等学校自动化专业教学指导分委会主办的,旨在培养创新精神、协作精神,提高工程实践能力的科技活动。比赛要求在组委会提供统一智能车竞赛车模、单片机HCS12开发板、开发软件CODEWARRIOR和在线调试工具的基础上制作一个能够自主识别路线的智能车,它将在专门设计的跑道上自动识别道路行驶。中心目标是不违反大赛规则的情况下以最短时间完成单圈赛道。本文主要对车模整体设计思路,硬件与软件设计及车模的装配调试过程作简要的说明。车模竞赛的赛道是一个具有特定几何尺寸约束、磨擦系数及光学特性的白底面板面,其中心贴有对可见光及不可见光均有较强吸收特性的黑色条带,宽度为25CM,如图11所示。智能车通过实时对自身运动速度及方向等进行调整来“沿”赛道运动。运动策略的制定主要是依靠对传感器得到的道路及行驶信息进行采集、分析、决策、执行四个步骤来进行的。图11智能车赛道1第三届全国大学生智能汽车竞赛技术报告11路径信息的采集对道路信息采集方式主要可以分为(1)用摄像头完成对道路的拍摄后把图像信息传入处理系统。(2)用光电传感器把不同位置的道路情况(对光反射率不同的引导线)转化为数字量或模拟量传入处理系统。使用光电对管寻迹的智能车前瞻距离是决定智能车速度最重要的因素之一,因此,如何采集到尽量远的赛道信息及采集到的信息的准确程度直接决定了后续工作能否顺利进行。智能车的舵机是由大赛组委会指定,工作频率能够达到100HZ,对路径信息的采样频率高于100HZ就能够满足要求,过高的采样频率对智能车速度的提高作用不大,但加大了单片机的计算量,同时系统的功耗增加,对电源和光电对管的要求更高,所以,采样频率不宜过高。道路信息采集工作的核心是选择合适的采样频率,找到一种前瞻距离远,分辨率高的数据采集方法为分析工作及时提供准确的数据。12对采集到的数据进行分析数据输入到单片机中后,将根据采集的方法不同来对其进行运算,以得到小车与赛道的相对位置关系及相对运动关系,分析是上层控制算法的基础,根据光电对管的数量,分布以及安装高度,俯仰角的不同,获得的赛道信息是不一样的。分析的目的是从光电对管得到的电压信号中有效的获取尽可能多的有用信息。121引导线的识别模拟信号包含更多的赛道信息,因此我们把采集到的道路信息以模拟量的方式传入处理系统。光电对管的输出信号为连续的电压信号,赛道偏白,红外发射管发出的红外线被赛道反射,红外接收管吸收到较多的红外线,趋于导通,输出的电平较高;引导线偏黑,红外发射管发出的红外线大部分被引导线吸收,接收管收到的红外线很少,趋于截止,输出电平较低。这样输出电平的高低就反映了红外接收管相对于黑色引导线的偏离程度。使用多个红外接收管,按特定方式排列,通过分析各个红外接收管的输出电压,就能得到赛车相对于黑色引导线的横向偏移。2第1章引言但在非理想的调试环境下,红外接收管的输出电压信号质量较差,多数情况下会引入干扰,造成车模无法正确识别引导线而跑飞。针对所遇到的几种情况,我们做了如下处理赛道外黑色物体干扰由于引导线是连续、封闭的黑线,故当检测的过程中出现跳变的黑点,则判断发生错误;赛道上阴影的干扰由于引导线是宽度固定的黑线,接收管呈一字排列,故只有两个或三个相邻的接收管在引导线上,当输出的电压信号中多于三个的接收管输出低点平时或者输出低点平的接收管不相邻,则判断发生错误;短暂失去引导线的容错处理由于控制不当,车模超调造成所有红外接收管都不在黑色引导线上时,再次搜索引导线时必须坚持“从哪一侧消失就从哪一侧出现”的原则,否则判断错误发生。122获取赛道信息在获取正确的引导线信息的基础上,根据赛道的变化趋势对车模的速度、方向加以控制。当车模偏离引导线较远时,判断车模跑偏或处于入弯状态,减速并调整舵机;当车模偏离引导线较近时,判断车模处于直线路段或小“S”弯,匀速或适当加速。13智能车控制决策在步骤一与二的前提下,我们可以利用已知信息来完成对智能车控制指令的输出。但如何“智能地”让车模完成对赛道的判断将成为难点。主要目标是根据道路趋势来制定策略,在不违规的前提下缩短行驶距离,保持稳定速度,消除车体产生的振荡现象,加快调节的响应速度等。14智能车执行单元执行机构不但涉及一些电路问题,而且还涉及了一些机械传动问题。它保证控制系统发出的指令被正确可靠执行。实践证明执行部件对发热,对大电流的较强的承受能力和各连接部位之间的良好的润滑应该是这部分所要考虑的主要问题,执行机构的稳定可靠是智能车控制策略得以充分体现的基础。3第三届全国大学生智能汽车竞赛技术报告四个步骤中的难点在于第二步与第三步数据的分析与策略的制定,实际上小车的适应性和极限速度很大程度上是由它们决定的。除此之外,必要的输入设备和显示机构对车模的调试会产生积极的作用。如,通过拨码开关和按钮设定车模速度,通过LED表示红外接收管的状态,以及利用无线通信的方式在上位机的显示器上输出车模运行情况,对道路识别的结果及单片机决策的情况。这样在调试阶段可以更为充分地掌握策略制定和执行的细节。4第2章智能车硬件设计方案21硬件方案设计概述图21车模左侧视图图22车模正面视图图23车模右侧视图图24车模后面视图图25车模顶视图5第三届全国大学生智能汽车竞赛技术报告本设计方案的主要特色有以下几方面为使主控制器的电路达到最简,单独设计了主控制器的最小系统,简化了外围电路的设计,使主控系统达到最优。采用自制光电编码器对电机进行转速检测,由此经过计算得到车体速度,保证速度测量的准确性,其测量值可以满足对速度控制的要求,且不易受外界干扰。采用了红外光电传感器对赛道检测,可以预测较远距离的赛道情况,并采用可靠的算法对检测所得的数据进行处理,并做出决策,由此对舵机、电机进行控制,实现了较精确的转向控制和快速的行驶。在规则允许范围内改进了小车的机械结构,提升了小车的整体性能。211中央控制电路中央控制电路由单片机最小系统板及其扩展板组成,遵循简单可靠的原则设计。大赛组委会提供的单片机开发板体积较大,重量较沉,为了取得更好的成绩,重新设计了最小系统板,只保留智能车必须用到的端口,大大简化了电路,同时设计了扩展板,扩展板采用了模块化的思路,板上主要包括电源模块、输入模块,显示模块以及和其它设备的接口。模块化的设计思想使得电路的维护和升级都很方便。212红外光电传感器参赛车模采用红外发射管和红外接收管作为道路信息采集设备。为了使智能车的前瞻距离更远,必须使用大电流给红外发射管供电,但红外发射管无法承受持续的大电流,因此,只在A/D转换的瞬间给红外发射管供电,在大部分时间里,红外发射管不工作,这样做也控制了电源的消耗,保证智能车能够顺利的跑完全程,同摄像头相比,光电传感器在前瞻距离上处于劣势,但采样频率可以高于摄像头的固定频率50HZ,使光电传感器在控制周期上稍处优势。213主电机及舵机驱动主电机是车模后轮的直流驱动电机,主要通过基于H桥的电机驱动芯MC33886,采用PWM信号控制加到主电机两端的等效电压的大小。由于舵机6第2章智能车硬件设计方案内部集成了对其转角的控制电路,所以可以将单片机输出的某一路PWM信号输入到其控制线中即可对舵机转角进行控制。214速度传感器为了对车模的速度实现更为精确的控制,在车模电机主轴上加装机械鼠标齿轮和直射式光电传感器组成的测速装置,它可以输出脉冲信号到单片机中从而得到车模运动的速度并制定对车模直流电机的调整策略,和专业的光电编码器和测速电机相比,它的质量很轻,体积小,成本也低得多。215人机界面人机界面包括拨码开关,按钮,LED等。该界面在调试中可以灵活的设置智能车的各种工作参数,方便的显示智能车的工作状态,同时使比赛中的策略选择更加灵活。216电源模块由于条件和规则所限,参赛车模的动力系统与控制系统共用同一电源。这样,在电机加减速过程中以及红外发射管导同瞬间伴随的超大电流将拉低电池端电压,严重威胁控制系统工作的稳定。因此,控制系统必须设计有可靠的稳压模块,使电池端电压下降到一定水平时,控制系统的供电依然稳定、纯净。22中央控制电路中央控制电路是整个系统的核心,控制器完成主电机控制、寻线响应、舵机转动控制和速度获取等功能。其中对主电机和舵机的控制是很重要的任务。通常采用PWM信号来调节电机转速和舵机转角。飞思卡尔公司推出的MC9S12DG128单片机具有PWM输出功能,而且其片上的PWM功能具有独立的定时计数模块,极大地简化了硬件系统的设计。MC9S12DG128单片机有QFP80和LQFP112两种封装,考虑到LQFP112封装的单片机有16路A/D转换通道,QFP80封装的单片机只有8路A/D转换通道,因此决定选用资源相对较丰富的LQFP112封装的单片机作为主控制器。7第三届全国大学生智能汽车竞赛技术报告在电路设计上,采取了模块化的设计思想,整个电路由最小系统板和扩展板构成。最小系统板囊括了MC9S12DG128单片机系统的必要组成部分,包括时钟电路、锁相环滤波电路、A/D转换器滤波电路、调试用的LED、电源以及各I/O口接口和BDM调试器接口等。扩展板上规划了小车的各个设备的接口电路,包括电机驱动电路、各I/O口的引出线、舵机接口、人机交互电路、测速电路接口以及赛道识别传感器接口。单片机端口资源的分配情况如下MC9S12DG128单片机有A、B、E、H、K、J、M、P、S、T等数字I/O口,还具有两个A/D输入端口。在本作品中用A/D口采集赛道检测传感器送出的模拟电压信号,PTT端口完成对速度检测传感器信号的计数功能以及拨码开关和按钮开关量的输入,PTP端口完成对主电机转速、方向的控制和舵机的驱动,PTB口作为驱动LED的输出口。最小系统板和扩展板的原理图如图26和图27。图26最小系统板原理图8第2章智能车硬件设计方案图27扩展板原理图23红外光电传感器本届比赛采用光电对管组和摄像头组分开的方式进行,光电对管组的赛道检测传感器是红外发射管和红外接收管,对红外发射管的要求是能够承受较大的脉冲电流,同时数量上比接收管多,避免某一只发射管因电流过大而烧毁。红外发射管用场效应管IRF120驱动,单片机PORTA的BIT0位接在场效应管的栅极,控制场效应管的通断,场效应管导通时,电源电压加在红外发射管上,发射管发射红外线,场效应管截至时,发射管停止发射红外线。红外接收管和电阻串联,红外接收管吸收的光线较多时,导通程度比较大,电阻上的分压大;红外接收管吸收的光线较少时,导通程度很小,电阻9第三届全国大学生智能汽车竞赛技术报告上的分压小。红外光电传感器组成的道路检测电路入图28所示。图28红外传感器道路检测电路24主电机的驱动241基于H桥芯片MC33886的主电机驱动方案电机驱动电路采用了模块设计,单独制作印制板,固定在车模尾部,如图29所示图29电机驱动电路10第2章智能车硬件设计方案为了利用单片机实现对主电机的控制,使用MOTOROLA公司的H桥芯片MC33886。该芯片的供电电压在5V至40V之间均可,MOSFET管的导通电阻为120M,控制信号的输入兼容TTL/CMOS电平,PWM的最高频率可达10KHZ,同时具有短路保护功能和故障信号的输出。MC33886的应用示意图如图210所示。图中,V是为直流电机供电的电源。IN1和IN2两个逻辑电平输入端分别控制输出端OUT1和OUT2。当IN1输入高电平时,OUT1输出也为高电平即通过H桥与V导通;当IN1输入低电平时,OUT1输出也为低电平即通过H桥与GND导通。IN2和OUT2的关系与此相同。FS为故障信号开漏极输出,低电平有效。当D1是高电平或者D2是低电平时,同时禁用OUT1和OUT2的输出,使OUT1和OUT2同时变为高阻态。通过控制IN1和IN2的电平,即可控制电机正转、反转、停转。对IN1和IN2的电平信号进行脉宽调制,即可控制电机的转速。图210MC33886的应用示意图242电机驱动电路主电机驱动电路采用大赛组委会指定的比赛用电池直接为MC33886及主电机供电。单片MC33886在工作时发热较严重,因此采用两片MC3388611第三届全国大学生智能汽车竞赛技术报告并联驱动电机,减小驱动电路的导通电阻,同时,为MC33886加装使用铝片自制的散热片。焊接、装配时,将电路板正面的敷铜与MC33886底部的裸露的散热铜焊盘焊接在一起,如图211所示,可大大增强芯片散热能力。较好的解决了单片MC33886发热严重的问题。图211MC33886散热敷铜25速度传感器参赛车模的速度传感器如图212所示。图212速度传感器速度传感器是由安装在车模电机主轴上的一个直径为25MM的齿轮、直射式光电传感器ST135及电压比较器电路组成的。考虑到硬件的安装与齿轮的加工难易程度,选择机械鼠标齿轮作为码盘。齿轮轴直径为20MM与电机主轴端部的孔(直径约为23MM)为过盈配合,故用502胶将其粘牢。红外线发射、接收管集成在光电传感器ST135中。在运动过程中,齿轮随电机主轴一起转动,其齿部断续地遮挡红外线光束,使得接收管接收到断续的光脉冲信号。经过如图213所示的电路,将12第2章智能车硬件设计方案接收管接收到的光脉冲信号转换为电脉冲信号。该电路采用5V供电,调节电位器阻值,使得红外线被齿轮遮挡时电路输出低电平,红外线不被遮挡时电路输出高电平。但是,红外线集成式光电开关的恢复特性较差,在高频下图213所示电路输出的高低电平的区分度较差,须将电平信号经电压比较器整形后方可使用。213速度传感器原理图26人机界面参赛车模采用一个6位拨码开关和两个按钮作为输入设备,拨码开关的BIT0、BIT1位和一个按钮SW1配合,共可预置40种不同的行驶速度;BIT3用于选择车模行驶单圈停车还是行驶两圈停车;BIT4、BIT5用于选择智能车的行驶模式;按钮SW2按下时,智能车开始行驶。为了去除开关和按钮的抖动,开关和按钮的电压信号通过施密特反向器后再进入单片机,如图214。图214输入模块电路原理图13第三届全国大学生智能汽车竞赛技术报告同时设计有8个发光二极管用于单片机状态的显示。MC9S12DG128单片机端口在电流流入时负载能力较强,因此,使用PORTB驱动发光二极管,在PORTB输出低电平时发光二极管亮,如图215所示。图215发光二极管显示电路原理图27电源系统为了减小主电机制动、加速瞬间大电流拉低电池端电压对控制系统,尤其是对单片机的影响,参赛车模采用低压差稳压芯片LM29405给单片机供电,LM2940的应用方法如图216所示。图216LM29405应用电路红外发射管导通瞬间电流较大,为了避免对单片机造成影响,使用LM25765给红外发射管单独供电,LM2576是开关稳压集成电路,工作时要么是大电流流过低导通电压的开关管、要么是完全截止无电流流过。因此,开关稳压电源的功耗极低,其平均工作效率可达7090。在相同电压14第2章智能车硬件设计方案降的条件下,开关电源调节器件与线性稳压器件相比具有少得多的“热损失”。LM2576构成的电源电路如图217所示。图217LM25765应用电路大赛组委会指定的舵机可以承受72V的电池电压,因此,直接采用电池给舵机供电。不仅能够提高舵机的响应速度,还简化电路,提高了电源的效率。28总装配方案利用车模原装垫块降低车底盘高度;采用铝片作底座将舵机架高;利用车模底盘、电机框架原有螺丝孔固定主板、速度传感器;将S12子板、电机驱动模块插入主板预设接口;将光电传感器安放于自制的铝合金支架上,调整好传感器的高度和仰角;将各部分设备电源线、信号线、地线连接完毕。图218最小系统板和扩展板的安装15第三届全国大学生智能汽车竞赛技术报告图219红外传感器的固定图220速度传感器和主电机驱动电路16第2章智能车硬件设计方案图221舵机架高1718第3章软件设计方案31开发调试平台好的开发调试平台可以大大提高开发软件的效率,缩短开发时间,我们使用的是METROWERKS公司研发的专门面向MOTOROLA(FREESACLE)所有MCU与DSP嵌入式应用开发的软件工具CODEWARRIOR,是MOTOROLAFREESCALE向用户推荐的产品。METROWERK提供CODEWARRIOR有效期为30天的试用版本,还有专门提供面向教学的,免费的特别版。这个特别版本对生成的代码量有一定限制,C代码不得超过12KB,对工程包含的文件数目限制在30个以内。虽然有些限制,但对于我们来说已足够了。“CODEWARRIORFORS12”是面向以HC12或S12CPU的单片机嵌入式应用开发软件包。包括集成开发环境IDE、处理器专家库、全芯片仿真、可视化参数显示工具、项目工程管理器、C交叉编译器、汇编器、链接器以及调试器。建新工程的步骤如下选择建立工程,选择新建工程向导,输入工程名LED选择具体芯片型号MC9S12DG128B选择编程语言,可以有多种选择,可以是汇编、C、C选择不采用选择处理器专家系统不选用PCLINT选择不使用“浮点指针支持”内存模式选择选择仿真选项这样一个仿真工程建立完成。我们使用的是CODEWARRIOR比较新的版本CODEWARRIOR46,用它可以很好很方便的完成MCS12DG128B单片机的新工程的建立,程序的编写、下载和调试。通过BDM头不仅可以烧写程序,还可以在程序运行时实时查看各参数的值。仿真调试窗口入图31所示。第3章软件设计方案图31仿真调试窗口用C语言开发单片机程序具有便捷、直观、可移植的特点,因此选用C语言来开发智能车程序。32信息采集与数据分析单片机的A/D转换电路和红外光电传感器在单片机片内定时器的控制下同步工作,定时器每5MS产生一次中断,中断被触发后,红外发射管开始发射红外线,经过300US的延时后,A/D转换电路开始工作,将模拟信号转化为数字信号并被单片机存储,存储完成以后,关断红外发射管,完成一次道路信息采集。单片机得到接收管感光的电压值以后,对它们进行归一化处理后可得到各个传感器相对的电压值,这样就消除了传感器之间的差异。具体过程为程序开始前让每个传感器在赛道上进行扫描,分别记录每个红外接收管输出信号的最大值MAX对应读到黑色引导线中心的情况和最小值MIN(对应远离黑色引导线读到白色赛道的情况),用最大值减去最小值得到每个传感器在赛道上的输出19第三届全国大学生智能汽车竞赛技术报告范围,在智能车行驶过程中将每个红外接收管输出的信号减去最小值,再除以该传感器的输出范围即可得到其相对输出值。通过每个传感器的相对值与传感器位置作加权平均就可以计算出车模相对于黑色引导线的横向偏移位置。公式为其中,POS为位置;N为第N个传感器的相对输出值;PN为第N个传感器的位置。这种方法消除了传感器差异造成的影响,并能够得到相对连续的位置信息,且相邻两次位置间隔小于1MM。然而,这种方法在某些入弯情况会造成计算错误,黑线与传感器排列方向夹角越小错误越大。为此,在计算位置时只选择相对输出最大的传感器和它的左右两侧各一个传感器计算。由于环境光的影响产生一个电压叠加在输出的有效信号上,使得传感器电路的输出电压不能维持在一个固定水平,给计算带来偏差,为了减小环境光线的影响,利用单片机中的EEPROM存储器模块,在比赛开始前的准备阶段,检测比赛环境光线对光电传感器输出电压的影响,存入EEPROM存储器,比赛过程中,根据传感器输出电压计算车模位置时,读出EEPROM中的相关数据,对环境光线的干扰用减法做补偿,保证计算的准确。由于智能车在行驶的过程中,传感器支架上下晃动,电池电压会逐渐降低,电机的高速转动都会对红外接收管的输出电压和A/D转换的结果产生影响,给计算带来偏差,因此需要动态的进行补偿。这些干扰的一个特点是对每个红外接收管的影响趋势是相同的,会使每一路红外接收管对应的A/D转换的结果同时增加或者同时减小,像是电子技术中的“共模信号”,因此,在计算时需要减去所有红外传感器对应A/D转换结果中的“共同”部分,通过这样的补偿取得了比较好的效果,在碰到坡道,十字交叉时都能够正常寻迹。NININVNPNVPOS11/33舵机控制算法20第3章软件设计方案21舵机作为车的方向控制结构,其控制算法直接影响到车的整体质量,如果舵机的控制算法不好,会导致舵机转角不平滑,过弯时多次转弯,使车速在弯道时大大的减小,因此,使舵机平滑及时的过渡是舵机机控制算法的主要目的。331舵机转向角度分配舵机转角的分配一般分为两种方式,分别为1查表方式,即每种传感器状态对应一个舵机转角。该方式具有反应速度快,控制策略简单,时实性强的特点,但是赋值是离散化的,因此造成了舵机转向不连续,无法进行预测功能的缺点。2PID方式,即使用PID调节方式对舵机进行控制,该方式在反应速度,舵机转向连续以及转角预测上都优于查表方式,因此,在实际过程中,我们使用的是PID模式。332方向控制策略通过反复试验知道对车模的舵机采用分段比例控制的策略比简单的使用统一系数的比例控制能得到更好的控制效果,在车模偏离黑色引导线较小时,舵机的转角变化率较小,在车模偏离黑色引导线较大时,舵机的转角变化率较大。角度的控制设置了死区,由于检测角度为00时,小车轴线与黑色引导线也不严格平行,因此角度控制需要设置死区,以避免由此引起的小车直道振荡。333舵机PID整定对于PID控制的数据结构,我们需要的是反复调节PID的各个参数,使得舵机的控制达到最佳状态。由于实验过程中,我们发现I值对舵机转角的影响较小,而在直道与弯道上PID参数的最优值P参数相差较大,因此采用的方法是P值分断取值的PD调节方式,具体参数值为多组数据测量取较优参数得到。34驱动电机控制算法341速度控制策略第三届全国大学生智能汽车竞赛技术报告为了达到好的速度控制效果,对速度进行闭环控制是必须的。这里所说的速度控制策略是指设定速度的确定方法设定速度主要由道路与直道的偏差来决定,道路越接近直道,设定速度越高,反之越低。车模行驶中的最低速度是这样确定的令车模以较低的速度匀速行驶,在保证无犯规行为出现的前提下,逐渐提高匀速行使的速度,直到车模出现犯规行为,此速度再减去一个安全量,即为所需的最低速度。简单的说,变速行使的最低速度等于匀速行使的最高速度。车模行驶中的最高速度是这样确定的在确定最低速度以后,加入变速策略,不断提高最高速度的设定值,直到模型车出现犯规行为,此速度再减去一个安全量,即为所需的最高速度。车模行驶过程中难免出现“失去道路”的情况,对此需要采取一定的安全策略,防止赛车“盲跑”而导致犯规。342BANG_BANG控制BANG_BANG控制的思想是反馈值若比设定值小,就把控制值设置为最大,否则设置为最小,用公式表示为由于这种控制方式会有较快的响应速度,测试BANG_BANG控制的响应曲线/COMMONDEFINESANDMACROS/INCLUDE/DERIVATIVEINFORMATION/INCLUDE“PRINTPH“PRAGMALINK_INFODERIVATIVE“MC9S12DG128B“INTLSENSOR,SPEED_COUNTER,LAST_SPEED_COUNTER,ADJUST_SPEED_COUNTER,SPEED,BASE_SPEED,LINE_FLAG_COUNTER,LINE_COUNTER,LINE_FLAG,MAX_SPEED,STANDARD_SPEED,SPEED1,SPEED2,SPEED3,SPEED4,SPEED5,SPEED6,ERROR_COUNTERINTPREOFFSET,OFFSET,LAST_OFFSET,LINE_PID_TEMP,SPEED_PID_TEMP,PRESPEED,EK,EK_1,EK_2,LAST_DK,DK_1,LAST_DK_1,DK_SIGN1,DK_SIGN2,DIFFERENTIAL_RATIOBYTELINE_PID_DELAY,LINE_PID_FLAG,SPEED_PID_DELAY,SPEED_PID_FLAG,SPEEDSENSOR,DK_POINTER,ERROR_FLAG,SEARCH_LINE_FLAG,ADJUST_SPEED_FLAGINTDK100,BRAKE_FLAG,BRAKE_COUNTERINTATD_COUNTER,ATD0_FLAG,ATD1_FLAG,ATD_DELAY_COUNTERINTATD0_CONVERT_TEMP7,ATD0_CONVERT_RESULT7,ATD1_CONVERT_TEMP7,ATD1_CONVERT_RESULT7BYTEEMIT_NUMBER70X01,0X02,0X04,0X08,0X10,0X20,0X40BYTEATD0_CONVERT_NUMBER,ATD1_CONVERT_NUMBER31第三届全国大学生智能汽车竞赛技术报告INTATD_NUMBER,PRINT_COUNTER,DELAY_COUNTER,EEPROM_WRITE_FLAGINTATD0_MIN8255,255,255,255,255,255,255,255INTATD1_MIN8255,255,255,255,255,255,255,255INTATD0_MAX80,0,0,0,0,0,0,0INTATD1_MAX80,0,0,0,0,0,0,0INTATD0_LOW_LEVEL8INT0X7800,INT0X7804,INT0X7808,INT0X780C,INT0X7810,INT0X7814,INT0X7818,INT0X781CINTATD1_LOW_LEVEL8INT0X7820,INT0X7824,INT0X7828,INT0X782C,INT0X7830,INT0X7834,INT0X7838,INT0X783CINTATD0_HIGH_LEVEL8INT0X7840,INT0X7844,INT0X7848,INT0X784C,INT0X7850,INT0X7854,INT0X7858,INT0X785CINTATD1_HIGH_LEVEL8INT0X7860,INT0X7864,INT0X7868,INT0X786C,INT0X7870,INT0X7874,INT0X7878,INT0X787CUNION/传感器位定义WORDWORDSTRUCTWORDBIT01WORDBIT11WORDBIT21WORDBIT31WORDBIT41WORDBIT51WORDBIT6132WORDBIT71WORDBIT81WORDBIT91WORDBIT101WORDBIT111WORDBIT121WORDBIT131WORDBIT141WORDBIT151BITSSENSORUNION/拨码开关位定义BYTEBYTESTRUCTBYTEBIT01BYTEBIT11BYTEBIT21BYTEBIT31BYTEBIT41BYTEBIT51BYTEBIT61BYTEBIT71BITSSTARTDEFINEPSENSORSENSORWORDDEFINESENSOR_BIT0SENSORBITSBIT0DEFINESENSOR_BIT1SENSORBITSBIT1DEFINESENSOR_BIT2SENSORBITSBIT2DEFINESENSOR_BIT3SENSORBITSBIT3DEFINESENSOR_BIT4SENSORBITSBIT4DEFINESENSOR_BIT5SENSORBITSBIT533第三届全国大学生智能汽车竞赛技术报告DEFINESENSOR_BIT6SENSORBITSBIT6DEFINESENSOR_BIT7SENSORBITSBIT7DEFINESENSOR_BIT8SENSORBITSBIT8DEFINESENSOR_BIT9SENSORBITSBIT9DEFINESENSOR_BIT10SENSORBITSBIT10DEFINESENSOR_BIT11SENSORBITSBIT11DEFINESENSOR_BIT12SENSORBITSBIT12DEFINESENSOR_BIT13SENSORBITSBIT13DEFINESENSOR_BIT14SENSORBITSBIT14DEFINESENSOR_BIT15SENSORBITSBIT15DEFINESTART_STATUSSTARTBYTEVOIDSENSOR_CONVERT0VOID/子程序声明VOIDSENSOR_CONVERT1VOIDVOIDSEARCH_LINEVOIDVOIDADJUST_SPEEDVOIDVOIDOFFSET_CALCULATIONVOIDVOIDDISPLAY_SENSOR0VOIDVOIDATD_THRESHOLD_SETTEINGVOIDVOIDEEPROM_WRITEINT,INTVOIDMAINVOIDINITEE0X79/EEPROM初始化ECLKDIV0X4FATD0CTL20XC2/模数转换初始化ATD0CTL30X08ATD0CTL40XE5ATD0DIEN0X00ATD1CTL20XC234ATD1CTL30X08ATD1CTL40XE5ATD1DIEN0X00OFFSET0LSENSOR0X00C0/上次传感器状态赋初值PWME0X00/舵机PWM波初始化PWMCTL_CON011PWMPRCLK0X02PWMCLK_PCLK10PWMPOL_PPOL11PWMDTY019600PWMPER0160000PWME_PWME11MCTL0XE4/定时器初始化MCCNT600/25US中断一次DDRH0XFF/H口初始化STARTBITSBIT0PTT_PTT0STARTBITSBIT1PTT_PTT1STARTBITSBIT2PTT_PTT2STARTBITSBIT3PTT_PTT3STARTBITSBIT4PORTA_BIT0STARTBITSBIT5PORTA_BIT1STARTBITSBIT6PTT_PTT4STARTBITSBIT7PTT_PTT5IFSTART_STATUS0X3C35第三届全国大学生智能汽车竞赛技术报告ATD_THRESHOLD_SETTEING/PRINTP“START_STATUSISDN“,START_STATUSPWMCTL_CON231/驱动电机PWM波初始化PWMCLK_PCLK30PWMPOL_PPOL31PWMDTY232400PWMPER232400PWME_PWME31PWMCTL_CON671PWMCLK_PCLK70PWMPOL_PPOL71PWMDTY670PWMPER672400PWME_PWME71TIOS0X00TCTL30X90TCTL40X00DLYCT0X11TIE0XC0TSCR20X06/预分频系数64,计数时间大约是26USTSCR1_TEN1BASE_SPEED1300SWITCHSTART_STATUSCASE0X00STANDARD_SPEEDBASE_SPEED0BREAK36CASE0X01STANDARD_SPEEDBASE_SPEED50BREAKCASE0X02STANDARD_SPEEDBASE_SPEED100BREAKCASE0X04STANDARD_SPEEDBASE_SPEED150BREAKCASE0X08STANDARD_SPEEDBASE_SPEED200BREAKCASE0X10STANDARD_SPEEDBASE_SPEED250BREAKCASE0X20STANDARD_SPEEDBASE_SPEED300BREAKCASE0X21STANDARD_SPEEDBASE_SPEED350BREAKCASE0X22STANDARD_SPEEDBASE_SPEED40037第三届全国大学生智能汽车竞赛技术报告BREAKCASE0X24STANDARD_SPEEDBASE_SPEED450BREAKCASE0X28STANDARD_SPEEDBASE_SPEED500BREAKCASE0X30STANDARD_SPEEDBASE_SPEED550BREAKDEFAULTSTANDARD_SPEEDBASE_SPEEDMAX_SPEEDSTANDARD_SPEEDPRESPEEDBASE_SPEEDENABLEINTERRUPTSFORDISPLAY_SENSOR0SENSOR_CONVERT0SENSOR_CONVERT1IFPSENSORLSENSOROFFSET_CALCULATION38LSENSORPSENSORIFSEARCH_LINE_FLAG1SEARCH_LINESEARCH_LINE_FLAG0IFADJUST_SPEED_FLAG1ADJUST_SPEEDADJUST_SPEED_FLAG0INTERRUPTVOIDMDCUVOIDMCFLG_MCZF1SPEED_COUNTERADJUST_SPEED_COUNTERIFADJUST_SPEED_COUNTER200ADJUST_SPEED_COUNTER0/IFERROR_COUNTER10PWMDTY230PWMDTY670ELSE/ADJUST_SPEED_FLAG1ATD_COUNTERIFATD_COUNTER40ATD_COUNTER0ATD0_FLAG039第三届全国大学生智能汽车竞赛技术报告ATD0CTL5ATD0_CONVERT_NUMBERATD1_FLAG0ATD1CTL5ATD1_CONVERT_NUMBERATD_DELAY_COUNTERIFATD_DELAY_COUNTER6ATD0CTL5ATD0_CONVERT_NUMBERATD1CTL5ATD1_CONVERT_NUMBERINTERRUPTVOIDIOC6VOIDTFLG1_C6F1IFSPEEDSENSOR0SPEEDSENSOR1SPEED_COUNTERTC6IFTFLG2_TOF1SPEED65535LAST_SPEED_COUNTERSPEED_COUNTERELSESPEEDSPEED_COUNTERLAST_SPEED_COUNTERTFLG2_TOF1LAST_SPEED_COUNTERSPEED_COUNTERSPEED_PID_DELAYIFSPEED_PID_DELAY30SPEED_PID_FLAG1IFBRAKE_COUNTER0BRAKE_COUNTER40INTERRUPTVOIDIOC7VOIDTFLG1_C7F1IFSPEEDSENSOR1SPEEDSENSOR0IFERROR_FLAG1ERROR_COUNTERELSESEARCH_LINE_FLAG1INTERRUPTVOIDATD0VOIDATD0STAT0_SCF1IFATD0_FLAG0ATD0_CONVERT_TEMPATD0_CONVERT_NUMBERATD0DR0HATD0_FLAG1PTHEMIT_NUMBERATD0_CONVERT_NUMBERATD_DELAY_COUNTER0ELSEATD0_CONVERT_RESULTATD0_CONVERT_NUMBERATD0_CONVERT_TEMPATD0_CONVERT_NUMBERATD0DR0HATD0_CONVERT_NUMBERIFATD0_CONVERT_NUMBER7ATD0_CONVERT_NUMBER041第三届全国大学生智能汽车竞赛技术报告INTERRUPTVOIDATD1VOIDATD1STAT0_SCF1IFATD1_FLAG0ATD1_CONVERT_TEMPATD1_CONVERT_NUMBERATD1DR0HATD1_FLAG1ELSEPTH0X00ATD1_CONVERT_RESULTATD1_CONVERT_NUMBERATD1_CONVERT_TEMPATD1_CONVERT_NUMBERATD1DR0HATD1_CONVERT_NUMBERIFATD1_CONVERT_NUMBER7ATD1_CONVERT_NUMBER0VOIDSEARCH_LINEVOIDDKDK_POINTERPREOFFSETOFFSETIFDK_POINTER25DK_1DK0ELSEDK_1DKDK_POINTER1IFDKDK_POINTER0LINE_PID_TEMPDKDK_POINTERDKDK_POINTER33/10DKDK_POINTER53DK_120/LINE_PID_TEMPDKDK_POINTER10DKDK_POINTER33/10DKDK_POINTERDK_120ELSELINE_PID_TEMPDKDK_POINTERDKDK_POINTER33/10DKDK_POINTER53DK_120/DKDK_POINTER10DKDK_POINTER33/10DKDK_POINTERDK_12042IF9600LINE_PID_TEMP10700PWMDTY0110700ELSEPWMDTY019600LINE_PID_TEMPIFLINE_PID_TEMP200LINE_FLAG_COUNTERIFLINE_FLAG_COUNTER60PRESPEEDLINE_FLAG1ELSELINE_FLAG_COUNTER0IFLINE_FLAG1BRAKE_COUNTER30LINE_FLAG0IFLINE_FLAG1LINE_COUNTERIFLINE_COUNTER6LINE_COUNTER0IFPRESPEEDMAX_SPEEDPRESPEEDELSEIFDKDK_POINTER0PWMDTY670IFSPEED_PID_TEMP240044PWMDTY232400ELSEPWMDTY23SPEED_PID_TEMPELSEPWMDTY230IFBRAKE_COUNTER0IFSPEED_PID_TEMP0OFFSET10BREAKCASE0X3C00IFLAST_OFFSET0OFFSET10CASE0X1000IFLAST_OFFSET0OFFSET11BREAKCASE0X3800IFLAST_OFFSET0OFFSET11BREAKCASE0X3000IFLAST_OFFSET0OFFSET12BREAKCASE0X2000IFLAST_OFFSET0OFFSET13BREAKDEFAULTPORTB_BIT00/PRINTP“OFFSETDN“,OFFSET51第三届全国大学生智能汽车竞赛技术报告PRINTP“SENSORDDDDDDDDDDDDDDDDN“,SENSOR_BIT15,SENSOR_BIT14,SENSOR_BIT13,SENSOR_BIT12,SENSOR_BIT11,SENSOR_BIT10,SENSOR_BIT9,SENSOR_BIT8,SENSOR_BIT7,SENSOR_BIT6,SENSOR_BIT5,SENSOR_BIT4,SENSOR_BIT3,SENSOR_BIT2,SENSOR_BIT1,SENSOR_BIT0/SEARCH_LINEVOIDSENSOR_CONVERT0VOIDIFATD0_CONVERT_RESULT0ATD0_HIGH_LEVEL0SENSOR_BIT00IFATD0_CONVERT_RESULT1ATD0_HIGH_LEVEL1SENSOR_BIT10IFATD0_CONVERT_RESULT2ATD0_HIGH_LEVEL2SENSOR_BIT20IFATD0_CONVERT_RESULT3ATD0_HIGH_LEVEL3SENSOR_BIT3052IFATD0_CONVERT_RESULT4ATD0_HIGH_LEVEL4SENSOR_BIT40IFATD0_CONVERT_RESULT5ATD0_HIGH_LEVEL5SENSOR_BIT50IFATD0_CONVERT_RESULT6ATD0_HIGH_LEVEL6SENSOR_BIT60VOIDSENSOR_CONVERT1VOIDIFATD1_CONVERT_RESULT0ATD1_HIGH_LEVEL0SENSOR_BIT70IFATD1_CONVERT_RESULT1ATD1_HIGH_LEVEL1SENSOR_BIT80IFATD1_CONVERT_RESULT2ATD1_HIGH_LEVEL2SENSOR_BIT90IFATD1_CONVERT_RESULT3ATD1_HIGH_LEVEL3SENSOR_BIT100IFATD1_CONVERT_RESULT4ATD1_HIGH_LEVEL4SENSOR_BIT110IFATD1_CONVERT_RESULT5ATD1_HIGH_LEVEL5SENSOR_BIT120IFATD1_CONVERT_RESULT6ATD1_HIGH_LEVEL6SENSOR_BIT130VOIDDISPLAY_SENSOR0VOID/IFLINE_FLAG1PORTB0X00ELSEPORTB0XFF/PORTB_BIT0SENSOR_BIT3/PORTB_BIT1SENSOR_BIT454PORTB_BIT2SENSOR_BIT5PORTB_BIT3SENSOR_BIT6PORTB_BIT4SENSOR_BIT7PORTB_BIT5SENSOR_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论