基于MSP430F5529的循迹壁障无线控制智能小车设计报告
更新时间:2024-05-09 11:15:01 阅读量: 综合文库 文档下载
华中科技大学2013年TI杯电子设计竞赛总结报告
华中科技大学电子与信息工程系 2013年TI杯电子设计大赛项目总结报告
项目名称: 基于MSP430F5529的智能小车设计
团队成员: 通信工程
通信工程 通信工程
指导教师:
2013 年 7 月 3 日
华中科技大学2013年TI杯电子设计竞赛总结报告
课题名称:智能小车自动控制系统
【摘要】
本次课程设计以MSP430超低功耗单片机系列MSP430F5529为主控制器,附加电机、电池、传感控制模块等,完成二驱小车自由运动、检测黑白线实现沿轨道自动运行、能够避开障碍物、无线控制等功能,F5529的I/O口丰富,使得各个功能模块之间信息交流快捷方便。在机械结构上,我们选购用一个万用轮代替两个前轮的小车,大幅度提高了小车的灵敏度。利用单片机产生PWM波,控制小车速度,选用L298N驱动芯片驱动电路,使用三路红外对接管检测黑白线,使用一个超声波实现测距壁障功能,使小车能够自动左转避开障碍物,使用无线控制模块,可实时控制小车运动。基于可靠的硬件设计和更加优化的软件算法,在实现本课设基本要求的基础上,可实现部分扩展功能。
【关键词】:MSP430F5529 循迹 无线控制 超声波测距壁障
华中科技大学2013年TI杯电子设计竞赛总结报告
Abstract This curriculum project uses MSP430F5529, in the series of MSP430
ultra low power single chip microcomputer, as its main controller. In addition, the realization of the controller’s function can not leave motor, battery, sensing control template and so on, for example, free movement of the two drive vehicle, and automatic operation along runway by testing black and white lines, avoiding obstacles, wireless operation and other functions. The quick and easy information exchanging among each functional template has to thank to the abundance of I/O of F5529. On mechanical structure, two front wheels of the mini car are replaced by a universal wheel, so as to improve its sensitivity by large margin. PWM is used to control motor and single chip microcomputer to make PWM wave, in order to control its speed. The car can stop and turn left to avoid obstacles because L298N driving chip drives circuit, three infrared ray on pipes is used to test black and white lines, and an ultrasonic template is chosen to realize ranging barrier function. With wireless operating template, movement of the mini car can reach real-time control. Besides finishing basic requirement of this curriculum project, some broadening functions can also be achieved based on reliable hardware design and better software algorithm.
Key words: MSP430F5529 tracking wireless control ultrasonic wave ranging counterguard
华中科技大学2013年TI杯电子设计竞赛总结报告
目录
1 概述 ………………………………………………………………3
2 设计目标……………………………………………………………3 3 团队组成与任务分工………………………………………………4 4 方案论证………………………………………………………………4
4.1 电机驱动模块…………………………………………………………..……...4 4.2 循迹模块………………………………………………………………..……...5 4.3 无线模块……………………………………………………………..………...5 4.4 测距壁障模块………………………………………………………..………...5
5 系统总体设计…………………………………………………………7
5.1 总体设计思路………………………………………………………………...7 5.2 主要器件选择………………………………………………………………...7 5.3 主要元器件清单……………………………………………………………...8
7 系统各模块设计与实现……………………………………………..15
7.1 电机驱动模块……………………………………………………………..15 7.2 循迹模块……………………………………………………………………...16 7.3 无线模块……………………………………………………………………...16 7.4 超声波测距壁障模块………………………………………………………...17
9 心得与总结…………………………………………………………..26 10 致谢…………………………………………………………………27 11 参考文献……………………………………………………………27 12 附录……………………………………………….………………...27
华中科技大学2013年TI杯电子设计竞赛总结报告
1. 概述
随着控制技术及计算机技术的发展,智能车系统将在未来工业生产和日常生活中扮演重要的角色。智能小车系统综合运用了控制技术、传感器技术、电力电子、计算机、机械等专业领域的知识,使小车能够模仿人类的思想完成预定的控制任务,实现智能化。
本系统以MSP430F5529为主控芯片,这是一款基于闪存的产品系列,在操作电压范围1.8-3.6V内,性能达到25MIPS,启动时为12MIPS,拥有一个优化功耗的创新电源管理模块,内部有电压稳压模块,以及更高的存储能力。我们利用它自身的优点,并加入了红外对接管、无线控制以及超声波测距模块,成功实现了循迹黑白线,沿轨道运行,不偏离轨道;实时遥控小车前行,左右转弯及后退;以及测距壁障等功能,能够检测到前方障碍,并在半米的距离内左转,避开障碍物。供电方面,主控器使用两节干电池单独供电,电机等部分使用7.2V充电电池供电。小车可以通过无线控制的D键实现循迹和避障功能的切换。
本报告以下的内容将会按照以下结构来组织:
在第二小节中我们将会介绍设计的目标,以及小车将实现的基本功能和扩展功能;第三小节中,我们将会介绍组员分工情况;第四小节中,我们将按模块分析方案选取的原因,主要包括电机驱动模块,循迹模块、无线模块、测距壁障模块等四个主要模块;第五小节的内容是总体设计方案与应用场景的介绍,其中将详细介绍总体设计思路,核心器件的选择,并且列出了主要器件清单;第六小节里,将按照模块进行详细的介绍,其中包括每个小模块的基础知识、设计原理、软硬件设计、性能分析、模块的最终效果等。我们系统整机测试的过程与结果将会展现在第七小节。
2. 设计目标
2.2 基本功能
1) 2) 3) 4) 5) 6) 7) 8)
各个电路模块自行设计完成,机械模块自行购买 具有两种以上传感控制模块 能够控制二驱小车自由运动
能够在规定的时间内控制小车沿着具有直线和弧线的轨迹运动到停止处, 不能偏离轨道
能够利用红外线发射及接收对管检测黑白线 由电池供电;
使用MSP430开发板作为控制处理器
2.2 拓展功能
1) 若在运动线路中设置障碍物,小车能够避开障碍物 2) 提高小车的运行速度
3) 其他控制方式:如无线控制
华中科技大学2013年TI杯电子设计竞赛总结报告
3. 团队组成与任务分工
本小组分工的指导思想如下:为了最大程度实现并行性,我们按照模块来划分任务。不同模块之间首先需要将相互之间的接口定义好,定义完成以后不同模块就能够相对地独立工作了。我们所划分的三大模块为:电机控制及循迹模块,超声波测距壁障模块,无线控制以及主函数编写模块。
负责电机控制及循迹模块程序的设计与调试;小组分工;小车组装;整机调试。 负责超声波测距壁障模块的电路与程序的设计和调试;编写文档。
负责无线控制模块的设计、实现与调试;主函数的编写;小车组装;元器件购买。
4. 方案论证
4.1 电机驱动模块方案的选择与论证
方案一:
采用电阻网络调整电机的分压,从而达到调速的目的。但是电阻网络只能实现有级调速,而数字电阻元器件比较昂贵。更主要的问题在于一般电动机的电阻较小,但电流较大;分压不仅会降低效率,而且实现很困难。 方案二:
采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行控制。这个方案的优点是电路较简单,缺点是继电器的响应时间慢,机械结构易损坏,寿命较短,可靠性不高。 方案三:
采用由CMOS管组成的H型PWM电路。使用PWM波形来实现电机的调速。用单片机控制CMOS管使之工作在占空比可调的开关状态,精确调整电动机转速。这种电路由于工作在管子的饱和截止模式下,效率非常高;H型电路保证了可以简单实现转速和方向的控制,电子开关的速度很快,稳定性也极强,是一种广泛采用的PWM调速技术。 通过比较,本系统需要对电机的速度进行控制,而且方案三对于资源的要求不是很高,可以由单片机自己产生,不需要增加硬件,对软硬件的要求不是很高,可以很好的满足本系统的要求。所以需要采用方案三。 4.2 循迹模块 方案一:
采用热探测器。由于温度变化是因为吸收热能辐射能量引起的,与吸收红外辐射的波长没有关系,即对红外辐射吸收没有波长的选择,因此受外界环境影响比较大。 方案二:
使用发光二极管和光敏三极管组合。这种方案的缺点在于其他环境的光源会对光敏二极管产生很大的干扰。 方案三:
采用光敏传感器,根据白色背景和黑线的反光程度的不同,光强度的变化引起电阻的变化,但在光线比较的强的情况下误差会很大。 方案四:
使用红外反射式一体化传感器进行检测。只要选择数量和探测距离适合的红外传感器,可以精准的判断出黑线位置。
华中科技大学2013年TI杯电子设计竞赛总结报告
通过对比,这次设计中由于是近距离探测,故采用方案四来完成数据采集。由于红外光波长比可见光长,因此受可见光的影响较小。同时红外线系统还具有以下优点:尺寸小、质量轻,便于安装。反射式光电检测器就是其中的一种器件,它具有体积小、灵敏度高、线性好等特点,外围电路简单,安装起来方便,电源要求不高。用它作为近距离传感器是最理想的,电路设计简单、性能稳定可靠。 4.4 测距壁障模块 方案一:
采用超声波技术。利用超声波传感器,监视测量发射脉冲和接受脉冲的时间差,计算超声波和物体之间的距离。并在适当的距离内采取壁障措施。 方案二:
采用反射式红外发射—接收管。红外线测距传感器利用的就是红外线信号在遇到障碍物其距离的不同则其反射的强度也不同,根据这个特点从而对障碍物的距离的远近进行测量的。其优点是成本低廉,使用安全,制作简单,缺点就是测量精度低,方向性也差,测量距离近
以上两种方案中,第一种精度较高,抗干扰能力强,有较短的反应时间,应用广泛,所以采用第一种超声波方案。 4.5 供电方案 方案一:
采用两个电源供电,将电动机驱动电源以及其周边电路与单片机电源分别供电,由于单片机的电压较低,而电机需要的电压较高,容易使单片机电压过高而损坏,使用两个电池供电,可以提高系统稳定性,但是多一组电池,增加了小车的质量,同时也增加了小车的惯性,降低了灵敏度。
方案二:采用单一电源供电。电源直接给单片机供电,通过单片机的IO口连接到电动机上,这样输出的电压稳定,同时也减轻了小车的质量,使小车更加灵活。但是加高的电压提高了损坏单片机的风险。
从安全性考虑,我们选择方案一。
5 系统总体设计
5.1 硬件电路设计
整个电路系统分为黑线检测、障碍检测、控制、驱动四个主要部分。主控单元是小车的核心部分,它所要完成的任务有:处理输入信号,启动/停止小车、控制电机转速、完成距离检测、做出壁障判断等。首先利用红外对接管对路面信号进行检测,然后将检测结果送入主控芯片,输出相应的信号给驱动芯片,驱动电机转动,从而控制整个小车的运动,与此同时,超声波模块检测前方是否有障碍物,并将搜集到的信息实时送到主控芯片,及时避开障碍。无线控制模块也可以通过I/O中断控制电机驱动,控制小车运动。
华中科技大学2013年TI杯电子设计竞赛总结报告
超声波测距 超声波壁障 复位电路 电源电路 时钟电路 主控芯片 MSP430F5529 电机驱动 无线控制 红外对接管循迹 图1 系统硬件框图
5.1.1 超声波模块功能框图
如图3-2所示可以通过超声波模块得到小车与障碍物的距离,将数据交给单片机判断是否需要避开障碍物,随即单片机控制电机,驱动小车运动。
返回信号 单片机 超声波模块 驱动电路 电动机
图3-2 超声波模块功能框图 5.1.2 无线控制模块功能框图
如图3-3所示 ,无线控制模块发出控制信号,经单片机处理,控制电机运动。
控制信号 无线控制 单片机 驱动电路 电机 图 无线控制模块功能框图 5.1.3 电机驱动调速模块
华中科技大学2013年TI杯电子设计竞赛总结报告
用于控制小车的前进,后退,停止等基本功能,并且实现PWM波对于转速的控制。如图3-4所示
PWM波 驱动电路 电动机 单片机
图3-4 电机驱动调速模块功能框图
小车的基本机构如下:
5.1.4 寻迹模块
用于小车的循迹黑线。如图3-5所示
信号 单片机 检测电路
图3-5 循迹模块功能框图
5.1.5 开发板管脚分配:
引脚号 P2.0 引脚功能 TA1CCR1 硬件连接 电机模块ENA(输出) 驱动电路 电动机 华中科技大学2013年TI杯电子设计竞赛总结报告
电机模块 P2.1 P4.0 P4.1 P4.2 P4.3 TA1CCR2 I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O中断 I/O I/O中断 电机模块ENB(输出) 电机模块IN1(输出) 电机模块IN2(输出) 电机模块IN3(输出) 电机模块IN4(输出) 左循迹模块OUT(输入) 中循迹模块OUT(输入) 右循迹模块OUT(输入) 无线解码模块D1(输入) 无线解码模块D2(输入) 无线解码模块D3(输入) 无线解码模块D4(输入) 无线解码模块VT(输入) 超声波测距模块Trig(输出) 超声波测距模块Echo(输入) 循迹模块 P7.0 P7.1 P7.2 无线控制模块 P4.4 P4.5 P4.6 P4.7 P2.6 避障模块 P7.7 P1.0
华中科技大学2013年TI杯电子设计竞赛总结报告
5.2 系统软件结构设计
根据不同路段的控制要求,单片机系统主要由电机调速和换向子程序,测距避障子程序,无线控制子程序和循迹子程序构成。总体流程如图3—6所示:
华中科技大学2013年TI杯电子设计竞赛总结报告
有 编辑电机模块的IN1~IN4引脚号以及使能端ENA和ENB,定义左转、右转、前进、停止函数 判断按键 开始循迹 无 判断三个循迹模块的输出 定时发出测距脉冲 A B C D 右停 转 止 无信号 等待
左压线 中压线 右压线 判断有无Echo信号 前进 左转 右转 前进 左转 有信号 判断信号长短 信号过长 信号够短 前进 左转 华中科技大学2013年TI杯电子设计竞赛总结报告
5.3 主要器件选择
5.3.1 电机驱动芯片:L298N
L298N芯片可以驱动两个二相电机,输出电压最高可达50V,可以直接通过电压来调节输出电压;可以直接用单片机的IO口提供信号,而且电路简单,使用比较方便。通过单片机的I/O输入改变芯片控制端的电平,即可以对电机进行正反转,停止的操作。L298N可接受标准TTL逻辑电平信号VSS,VSS可接4.5~7 V电压。4脚VS接电源电压,VS电压范围VIH为+2.5~46 V。输出电流可达2.5 A,可驱动电感性负载。1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。将其OUT1、OUT2、OUT3、OUT4分别接2个电机,IN1、IN2、IN3、IN4引脚从单片机接输入控制电平,控制电平的正反转,ENA,ENB接控制使能端,控制电机的停转。逻辑功能如下:
接线方式如下:
L298N可以直接对电机进行控制,无须隔离电路,亦能够满足直流减速电机的大电流要求,调试时,可以用程序输入对应的码值,能够实现对应的动作。对电机的调速,采用PWM调速的方法。
5.3.2 无线控制模块:SC2262
接收模块的七根引脚分别为D3、D2、D1、D0、GND、VT、VCC,其中VCC为DC5V的供电端,GND为接地端,VT端为解码有效输出端,只要发射器的数据码有输出,VT都能同步输出高电平;D3、D2、D1、D0是2262解码芯片的四位数据输出端,有信号时能输出5V左右的高电平,驱动电流约2mA,与发射器的四位数据码输出一一对应。接收模块不焊天线也能接收信号。各管脚功能如下:
华中科技大学2013年TI杯电子设计竞赛总结报告
1.技术参数
工作电压(V): DC5V
静态电流(mA): 4.5MA
调制方式:调幅(OOK) 工作温度: -10℃~+70℃
接收灵敏度(dBm): -105DB
工作频率(MHz):315、433.92MHz(266-433MHZ频率段可任选)
编码方式:焊盘编码(固定码)
工作方式:M4(点动:按住不松手就输出,一松手就停止输出)、L4(互锁:四路同时只能有一路输出)、T4(自锁:四路相互独立输出、互不影响,按一下输出再按一下停止输出)
尺寸(LWH): 41*23*7mm
2.产品 特点:
超再生接收模块采用LC振荡电路,内含放大整形,输出的数据信号为解码后的高电平信号,使用极为方便,并且价格低廉,所以被广泛使用。带四路解码输出(同时也可改为六路点动或互锁输出),使用方便;频点调试容易,供货周期短;产品质量一致性好,性价比高。
接收模块有较宽的接收带宽,一般为±10MHz,出厂时一般调在315MHz或433.92MHZ(如有特殊要求可调整频率,频率的调整范围为266MHz~433MHz。)。接收模块一般采用DC5V供
华中科技大学2013年TI杯电子设计竞赛总结报告
电,如有特殊要求可调整电压范围。 4.应用环境(应用领域)
无线遥控开关、遥控插座、数据传输
6.备注
VCC电压要与模块工作电压一致,且要做好电源滤波;
天线对模块的接收效果影响很大,最好接1/4波长的天线,一般采用50欧姆单芯导线,天线的长度315M的约为23cm,433M的约为17cm;
天线位置对模块接收效果亦有影响,安装时,天线尽可能伸直,远离屏蔽体,高压,及干扰源的地方;
使用时接收频率、解码方式应与发射匹配。
、遥控玩具、防盗报警主机、车库门、卷闸门、道闸门、伸缩门等门控业及其遥控音响领域等。
5.3.3 超声波模块:HC-SR04
实物如下图。其中VCC 供5V 电源,GND 为地线,TRIG 触发控制信号输入,ECHO 回响号输出等四支线。
主要参数 ? 电器特性。
华中科技大学2013年TI杯电子设计竞赛总结报告
HC-SR04超声波的供电电压为DC5V。MSP430的供电电压为3.3V。
其他电气参数如下: 最远射程 最近射程 测量角度 输入触发信号 输出回响信号 4m 2cm 15° 10us的TTL脉冲 输出TTL电平信号,与射程成比例 5.3.4 循迹模块:74HC04D 该芯片主要为智能小车、机器人等自动化机械装置提供一种多用途的红外线探测系统的解决方案。在循迹模块中我们使用红外线发射和接收管等分立元器件组成探头,
并使用LM339 电压比较器(加入了迟滞电路更加稳定)做为核心器件构成中控
电路。发射器是一个红外发光二极管,接收器是一个高度灵敏度、平面光电三极管,两者集为一体,使探测器结构紧凑,易于单片机接口。该模块易于安装,使用简便,各路循迹分别独立工作,工作时不受数量限制。 主要参数如下:模块高度≤10 毫米
安全工作电压范围在 3伏特至 6 伏特之间 各路全开工作电流 30 毫安至 55 毫安之间
各管脚的作用:VCC、GND:电源接线端
IN(1—4)、OUT:探头与中控板连接端 OUT1、OUT2、OUT3、OUT4: 对应输出端 LED1、LED2、LED3、LED4: 对应输出指示 R1、R2、R3、R4: 对应比较电压调节
输出端为集电极开路,板载 5.1 千欧上拉电阻
实验之前,我们测试下,模块是否是好的:1)测试探头:移开探头前面的所有物体,且探头不要指向阳光的方向。将探头板接上电源后用万用表测最输出端电压。此时的电压应当在1 伏特左右。用白纸挡在探头前。用万用表测输出端电压应当接近电源电压。2)测
试中探板:将测试好的探头按板上所标示的接入输入端子,移开探头前面的所有物体,
且探头不要指向阳光的方向,将中探板接上电源后用万用表测输出端子,此时输出端输出的电压应当接近电源电压,用白纸挡在探头前,万用表测输出端电压应当接近0 伏特。
5.5 主要元器件清单
主控芯片:SEED-EXP430F5529;智能小车底盘(二轮驱动);电机驱动(L298N);智能小车循迹模块(74HC04D);超声波模块(HC-SR04);杜邦线若干。
5.6 应用场景
该智能小车应用广泛,不仅可家用清洁卫生,也可以提供功率,承载力等之后用于餐饮等服务行业。
华中科技大学2013年TI杯电子设计竞赛总结报告
7.系统各模块的设计与实现
7.1 电机驱动 7.1.1 模块概述:
电机驱动芯片选用L298N,电机的调速,采用PWM调速算法。电机由电池供电,信号由单片机的端口提供。L298N的连接方法为:
PWM的原理是开关管在一个周期内的导通时间为t,周期为T,则电机两端的平均电压为U=Vcc*(t/T)=a*Vcc。其中a=t/T为占空比,Vcc是电源电压,电机的转速与电机两端的电压成比例,而电机两端的电压与控制波形的占空比成正比,因此电机的速度与占空比成比例,占空比越大,电机转得越快。在硬件电路的连接上, 引脚号 电机模块 P2.0 P2.1 P4.0 P4.1 P4.2 P4.3 引脚功能 TA1CCR1 TA1CCR2 I/O I/O I/O I/O 硬件连接 电机模块ENA(输出) 电机模块ENB(输出) 电机模块IN1(输出) 电机模块IN2(输出) 电机模块IN3(输出) 电机模块IN4(输出) 按照如上引脚连接后,我们可以通过改变端口的高低电平变化以控制小车的前进方向,通过改变端口的高低电平的占空比以控制电机的转速。 7.1.2 定时器基础知识介绍: 定时器A功能模块主要包括:
(1)计数器部分:输入的时钟源具有4种选择,所选定的时钟源又可以1、2、4或8分频作为计数频率,Timer_A可以通过选择4种工作模式灵活的完成定时/计数功能。
华中科技大学2013年TI杯电子设计竞赛总结报告
(2)捕获/比较器:用于捕获事件发生的时间或产生时间间隔,捕获比较功能的引入主要是为了提高I/O 端口处理事务的能力和速度。不同的MSP430单片机,Timer_A模块中所含有的捕获/比较器的数量不一样,每个捕获/比较器的结构完全相同,输入和输出都取决于各自所带控制寄存器的控制字,捕获/比较器相互之间完全独立工作。
(3)输出单元:具有可选的8种输出模式,用于产生用户需要的输出信号,支持PWM输出。
定时器工作模式 :
(1)停止模式:停止模式用于定时器暂停,并不发生复位,所有寄存器现行的内容在停止模式结束后都可用。当定时器暂停后重新计数时,计数器将从暂停时的值开始以暂停前的计数方向计数。例如,停止模式前,Timer_A工作于增/减计数模式并且处于下降计数方向,停止模式后,Timer_仍然工作于增/减计数模式,从暂停前的状态开始继续沿着下降方向开始计数。如果不需这样,则可通过TACTL中的CLR控制位来清除定时器的方向记忆特性。
(2)增计数模式:捕获/比较寄存器CCR0用作Timer_A增计数模式的周期寄存器,因为CCR0为16位寄存器,所以该模式适用于定时周期小于65536的连续计数情况。计数器TAR可以增计数到CCR0的值,当计数值与CCR0的值相等(或定时器值大于CCR0的值)时,定时器复位并从0开始重新计数。增计数模式的计数过程如图4-2所示。通过改变CCR0值,可重置计数周期。
图 增计数模式示意图
(3)连续计数模式:在需要65536个时钟周期的定时应用场合常用连续计数模式。定时器从当前值计数到单增到0FFFFH后,又从0开始重新计数如图4-3所示。
图 连续计数模式
(4)增/减计数模式
需要对称波形的情况经常可以使用增/减计数模式,该模式下,定时器先增计数到CCR0的值,然后反向减计数到0。计数周期仍由CCR0定义,它是CCR0计数器数值的2倍。计数器的计数过程如图4-4所示。
图 增/减计数模式
7.1.2 PWM信号的产生
华中科技大学2013年TI杯电子设计竞赛总结报告
使用定时器可以产生定时中断、定时脉冲和 PWM(脉宽调制)信号。PWM信号是一种具有固定周期T和不定占空比t的数字信号,如果PWM信号的占空比随时间变化,那么会产生不同的模拟信号。定时器的PWM输出一共有8种模式:
在输出模式7下,每次TA计数值超过TACCRx时,TAx引脚会自动置低,当TA计数至TACCR0时,TAx引脚会自动置高。因此实际的输出波形就是PWM调制方波。只需要改变TACCR0的值即可改变PWM方波周期,改变TACCRx即可改变从TAx引脚输出信号的占空比:TACCRx越大,占空比越大。
7.1.2 差速转向控制
该控制的基本原理是:转向时,智能小车的外侧小轮的转速增加,内侧下轮的转速降低,并且增加的量和减少的量大小相等,小车的中心速度保持原直线行驶时的速度不变。
7.2 循迹模块 7.2.1 模块综述:
作为小车自主循迹的主要部分,该部分必须完成小车精确地按照预定轨迹行驶的任务,
华中科技大学2013年TI杯电子设计竞赛总结报告
确保不偏离轨迹较远。该模块采用一体式红外对接管检测黑线。本实验中采用三路循迹,当检测到黑线时,红外接收管接收到反射回来的红外光,其输出立即发生高低电平转换,该信号经放大器放大后送到单片机进行处理。然后将处理后的结果发送到电机驱动模块进行校正。为了保证小车沿着黑线行驶。我们将三路检测器进行并行排列,当左(右)边检测到黑线时,小车左(右)转,当中间一个检测到黑线时,小车直行,使得控制精度得以提高。
传感器的安装位置如图所示:
7.2.2 逻辑设计: 开始
前方是否有障碍物 Y N 左中边间
检检 测测到到
黑黑 线线
左转 前行
7.2.3
7.2 超声波测距壁障模块
右边检测到黑线右转 6.1 模块概述
华中科技大学2013年TI杯电子设计竞赛总结报告
#include
unsigned int mode_flag=0xffff;
void Init_PWM_Driver() // 初始化电机驱动电路 {
P4DIR |=BIT0+BIT1+BIT2+BIT3; //IN1~IN4
P2DIR |=BIT0+BIT1;//复用p2.0为使能端ENA,复用p2.1为使能端ENB P2SEL |=BIT0+BIT1;
TA1CTL |=MC_1+TASSEL_1+ID_0; TA1CCTL1=OUTMOD_7; TA1CCTL2=OUTMOD_7; TA1CCR0=1024; TA1CCR1=512; TA1CCR2=512; }
/*转弯部分*/
void Turn_Left() //左转函数 {
//TA1CCTL1=OUTMOD_7; //TA1CCTL2=OUTMOD_7; //TA1CCR0=1024; //TA1CCR1=0; //TA1CCR2=512;
P4OUT &=~(BIT0+BIT1+BIT2); P4OUT |=BIT3; }
void Turn_Right()//右转函数 {
//TA1CCTL1=OUTMOD_7; //TA1CCTL2=OUTMOD_7; //TA1CCR0=1024; //TA1CCR1=512; //TA1CCR2=0;
P4OUT &=~(BIT0+BIT2+BIT3);
华中科技大学2013年TI杯电子设计竞赛总结报告
P4OUT |=BIT1; }
void Turn_Normal()//直行函数 {
//TA1CCTL1=OUTMOD_7; //TA1CCTL2=OUTMOD_7; //TA1CCR0=1024; //TA1CCR1=768; //TA1CCR2=768;
P4OUT &=~(BIT0+BIT2); P4OUT |=BIT1+BIT3; }
void Turn_Back()//直退函数 {
//TA1CCTL1=OUTMOD_7; //TA1CCTL2=OUTMOD_7; //TA1CCR0=1024; //TA1CCR1=768; //TA1CCR2=768;
P4OUT |=(BIT0+BIT2); P4OUT &=~(BIT1+BIT3); }
void Stop()//刹停函数 {
P4OUT |=BIT0+BIT1+BIT2+BIT3;
}
void wuxian(void) {
P4DIR&=~(BIT4+BIT5+BIT6+BIT7);//p4.4、p4.5、p4.6、p4.7输入 P2DIR&=~BIT6; P2REN|=BIT6;
P2IES&=~BIT6;//设p1.0——上升沿触发
华中科技大学2013年TI杯电子设计竞赛总结报告
P2IE|=BIT6;//允许中断 P2IFG&=0x00; }
long int count; long int i;
void bizhang() {
P7DIR|=BIT7; P7OUT&=~BIT7;
//P1DIR&=~BIT0; //P1IES&=~BIT0; //P1IE|=BIT0; P2DIR &=~BIT4; P2IES&=~BIT4; P2IE|=BIT4;
TB0CTL|=MC_1+TASSEL_2+ID_0+TBIE;//定时器TB0设置为增量计数模式,SMCLK为时钟,无分频
TB0CCR0=65536-1; TB0CCR1=60000; TB0CCTL1|=CCIE;
TA2CTL|=MC_1+TASSEL_2+ID_0;//定时器TB0设置为增量计数模式,SMCLK为时钟,无分频
TA2CCR0=65536-1; while(!mode_flag)
{
//Turn_Normal(); } }
#pragma vector=TIMER0_B1_VECTOR __interrupt void TB_ISR(void){ switch(TB0IV){
华中科技大学2013年TI杯电子设计竞赛总结报告
case 2:
P7OUT|=BIT7;
for(i=0;i<10;i++){ }
P7OUT&=~BIT7; break; case 10: break; }
}
/*#pragma vector=PORT1_VECTOR __interrupt void P1_ISR(void){ if(P1IFG&BIT0){ TA2R=0;
TA2CTL|=MC_1+TASSEL_2+ID_0; while(P1IN&BIT0){ }
TA2CTL&=~(MC0+MC1);//定时器暂停 count=TA2R; if(count>1470){ Turn_Normal();
}
else{
Turn_Left(); }
}
P1IFG=0; return; }*/
#pragma vector=PORT2_VECTOR __interrupt void P2_ISR(void) {
if(P2IFG&BIT6)
华中科技大学2013年TI杯电子设计竞赛总结报告
{
switch(P4IN&0xE0) {
case 0x00:
while(!(P4IN&(BIT5+BIT6+BIT7))) {
Turn_Normal(); } }
case 0x20:
while(P4IN&BIT5) {
Turn_Right(); }
break; case 0x40:
while(P4IN&BIT6) {
Turn_Left(); }
break; case 0x80:
while(P4IN&BIT7) {
Stop();
}
mode_flag=~mode_flag; break;
华中科技大学2013年TI杯电子设计竞赛总结报告
P2IFG=0;
//P2REN|=BIT6; return; }
else if(P2IFG&BIT4) {
} }
TA2R=0;
TA2CTL|=MC_1+TASSEL_2+ID_0; i=0;
while((P2IN&BIT4)&&i++<1000) { }
if(i>=1000) {
P4OUT |=BIT1+BIT3; P4OUT &=~(BIT0+BIT2); } else {
TA2CTL&=~(MC0+MC1);//定时器暂停 count=TA2R; if(count>1470) {
P4OUT |=BIT1+BIT3; P4OUT &=~(BIT0+BIT2); } else {
P4OUT |=BIT4;
P4OUT &=~(BIT0+BIT1+BIT2); } }
P2IFG=0; return;
华中科技大学2013年TI杯电子设计竞赛总结报告
void xunji() {
while(mode_flag) {
switch(P7IN&0x07) Turn_Normal(); break; Turn_Right(); break; Turn_Left(); break; Stop(); break; }
}
{
case 0x05:
case 0x01:
case 0x03:
Turn_Right(); break; case 0x04:
case 0x06:
Turn_Left(); break; case 0x07:
//Turn_Normal(); break; case 0x00: } 华中科技大学2013年TI杯电子设计竞赛总结报告
void main() {
WDTCTL = WDTPW | WDTHOLD; Init_PWM_Driver(); wuxian(); _EINT(); while(1) {
if(mode_flag) }
// 关闭看门狗计时器
}
{
//P1IE&=~BIT0; TB0CCTL1&=~CCIE; xunji(); } else {
bizhang(); }
正在阅读:
基于MSP430F5529的循迹壁障无线控制智能小车设计报告05-09
区住房和城乡建设局年度工作总结和2022年度两整两提工作规划07-30
逻辑与批判性思维尔雅答案01-12
关于预防网络诈骗心得体会范本08-16
山东省青岛市高一下学期3月月考地理试题05-09
我喜欢的一件工艺品作文400字07-09
关于我爱家乡的作文02-04
07-08年口解生B套题答案10-19
毕业班汉语总阅读理 - 图文04-25
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 小车
- MSP430F5529
- 基于
- 无线
- 控制
- 智能
- 报告
- 设计