单片机的智能汽车轨道检测与跟踪控制系统设计

目 录
引言 1
一、 系统整体设计 2
(一)主要研究内容 2
(二)系统的总体结构设计方案 2
(三) 系统各模块方案的选择 2
1. 传感器模块 3
2. 单片机模块 3
3. 驱动模块 3
4. 舵机模块 3
5. 其他模块 3
二、 系统硬件设计 4
(一) 单片机的选择 4
(二) 9S12XS128开发板的复位电路 5
(三) 9S12XS128开发板的时钟电路 5
(四) LM2940 5V稳压电路 6
(五) LM7806 6V稳压电路 6
(六) 电机驱动 7
(七) 信号放大电路 8
三、系统软件设计 8
(一)系统主程序设计 8
(二)检测信号处理算法的设计 9
(三)驱动控制程序设计 11
1. 舵机控制 11
2. 电机控制 12
四、系统仿真 13
(一)软件开发环境介绍 13
(二)仿真结果 13
总结 14
致谢 16
参考文献 17
附录 18
(一)原理图 18
(二)PCB图 19
(三)源程序 20引言
智能汽车也叫做车轮可移动机器人,是一种集成多种高新技术于一体的综合系统,包括环境感知功能、规划决策功能、自动驾驶功能等。智能汽车作为未来道路发展的趋势,其集成如视觉技术,触觉技术,自动控制技术,多智能技术和多传感器技术等许多最新的技术,能够 *好棒文|www.hbsrm.com +Q: %3^5`1^9`1^6^0`7^2# 
出色的完成各项高智能技术任务。智能汽车的研究对于未来汽车智能化发展与应用有着很深远的影响。
作为未来交通发展趋势之一,智能汽车的研究和应用将为解决未来城市交通拥挤和堵塞问题提供有效的解决途径,并且采用智能化处理的汽车能够解决人力资源浪费的问题,提高生产效率。未来的发展中,智能汽车将在智能交通系统,生产制造系统,军事领域,以及对于有毒或放射性环境下运输,探险,消防,救灾等领域代替人出色完成任务。
我国在无人驾驶汽车的开发方面要比国外稍晚,但是经过很多学者前辈的多年不懈努力也取得了非常丰硕的成果,目前仍处于世界的前列。
本次设计采用的传感器类型则是电磁型,电磁型通过传感器检测到跑道下面的通电导线产生的交变电磁场,对智能车进行引导使智能汽车沿固定跑道运行。相比较于光电型和摄像头型智能汽车,电磁型智能汽车的优势在于电磁场信号对于环境的适应能力很强,不受日照、空气湿度以及环境温度等各种环境因素的影响,环境适用性很好,并且有很大的应用范围。
一、 系统整体设计
(一) 主要研究内容
为实现智能汽车的自动定位和控制要求,需要研究设计智能汽车体系结构框图,方便系统模块化的设计。对于机械方面可以根据车辆的运动原理及相关机械结构的理论,对车模的机械结构进行调整与优化,如调整舵机位置、改变舵机的传动方式、电路板在车体的排布、电磁传感器的安装位置等来确保各个机械结构的协调。
(二)系统的总体结构设计方案
图1 智能汽车的总体设计框图
由图1可见,电磁传感器获取给定跑道的电磁特性,由电磁传感器检测到的跑道信号经过多项处理最终输入到系统的控制核心单片机,由单片机进行进一步处理以获得精确的跑道信息。通过编码器检测到电机的转速脉冲信号传送给单片机,单片机通过对反馈过来的脉冲计数计算出车体的速度。舵机模块的控制主要通过采用分段PID算法来实现。电机转速控制采用脉宽调制技术(PWM)控制,通过调节PWM的占空比控制驱动电路,实现电机的速度控制要求。
(三) 系统各模块方案的选择
通过分析系统的功能与设计要求,根据硬件中各个模块功能的不同,智能汽车硬件结构分为传感器模块、单片机模块、电机及驱动模块、舵机模块和其它模块五大部分。先简要分析下系统各个模块设计的原理和采用的方案优缺点的相互比较。
1.传感器模块
第一方案是采用三极管构成放大电路,三极管构成的放大电路容易出现检测波形失真的问题,并且三极管的放大倍数有一定的局限性,不能满足放大倍数的要求导致出现多级放大的情况,经过多次改进后还是达不到预定的要求。
第二方案是采用运放芯片做成放大电路来处理采集到的信号。比较各种运放芯片的要求与功能最终确定采用 LM386 作为运算放大器。使用运放要用到双电源供电也就是要求电源模块要提供-5V电压作为电源供电。考虑到信号失真对于整个系统的重要性,最后还是还是选择了LM386 来进行运放处理。结果发现在放大倍数允许的情况下,LM386能够很好的达到预定的要求,并且证明是可行的。
2. 单片机模块
对于单片机的选择有很多方案,最普遍的就是采用传统的 STC89C51 单片机作为核心控制器。相对于STC89C51单片机,MC9S12XS128 在价格方面可能要稍微高点,但是其性能略优于前者,且内部有很多现成的模块可以直接使用。 MC9S12XS128开发板集成度很高,对于外部晶振电路等各种电路都有很高的集成度。STC89C51单片机内部没有现成的数模转换模块,所以在使用STC89C51单片机的时候还需要另外焊接A/D芯片组成的数模转换电路,从成本上就比MC9S12XS128要高。
3. 驱动模块
第一方案最常用的就是33886 并联方案,相比较于以前各种设计方案的设计方法,比如有驱动电路采用4个33886并联而成的,也有采用三个33886并联组成的。
第二方案就是采用专门的驱动芯片由L298组成的驱动电路,出现电机过热烧毁了备用电机的情况。
4. 舵机模块
舵机选择要考虑因素就是价格的高低问题。在满足控制要求的情况下还考虑数字舵机和模拟舵机的利弊问题发现数字舵机比模拟舵机有一个很明显的优势就是数字舵机打角更精确。
5. 其他模块
该模块包括人机接口模块,人工辅助输入接口拨码开关以及无线模块。这些都是为了使系统更加的人性化,在操作过程中能够实时控制参数,确保系统更加协调稳定的运行。
二、 系统硬件设计
(一) 单片机的选择
第一个方案就是以STC98C51单片机作为核心,第二方案是以MC9S12XS128核心子板作为主控制器,和51相比,9S12XS128 内部集成度比较高,很多实用的模块都已经包含在内在模块设计的时候能够精确的检测和调试以最终选择了第二方案。
1.9S12XS128的主要特征
该开发板有集成好的复位电路,时钟电路以及晶体震荡器,串行接口RS-232组成的驱动电路。为了便于焊接,单片机的I/O口都已经通过两边的64芯插头引出。
图2 9S12XS128控制器
第一个特征就是S12在运行时其CPU最高总线速度可达40MHz,方便数据的及时有效的传送。第二个特征是带有错误校正功能(ECC)。第三个特征是带有ECC的4KB到8KB的Data flash,主要用于对数据和程序的存储。第四个特征是带有定时器,该定时器具有16位计数器,且有8个通道。第五个特征是内置多位模数转换器(内置ADC),转换时间可达3μs。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/dzkxyjs/2179.html

好棒文