《单片机课程设计_哈工大_测速小车开题报告.doc》由会员分享,可在线阅读,更多相关《单片机课程设计_哈工大_测速小车开题报告.doc(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Harbin Institute of Technology课程设计说明书(论文)设计题目:测速小车 院 系:电气学院测控系 班 级:班 设 计 者: 学 号: 指导教师: 设计时间:2013.9.112013.9.13哈尔滨工业大学哈尔滨工业大学课程设计任务书 姓 名: 院 (系):电气工程及自动化学院 专 业: 班 号: 任务起至日期: 2013 年 9 月 2 日至 2013 年 9 月13 日 课程设计题目: 小车测速设计 已知技术参数和设计要求: 已知技术参数:1. 工作电压:5v2. 最大工作电流:200mA3. 响应频率:200KHZ4. 分辨率:401024p/r5. 编码器上
2、升/下降时间:最大1s6. 编码器工作温度:-10+70设计要求: 实现小车自动测速任务,采用数字编码器实现小车速度测量,并用液晶显示测量速度值。 工作量: 总工作时间为10天; 完成硬件电路的设计工作;设计程序流程图并编写、调试程序;硬件连接调试,完成设定的功能;最后撰写开题报告和结题报告各一份。 工作计划安排: 1)2013.9.22013.9.3:任务布置、查阅资料,了解小车测速原理;2)2013.9.42013.9.5:根据要实现的功能及采用的方法设计程序流程并编写程序;3)2013.9.62012.9.9:程序装载、调试运行各种拟实现的功能;4)2012.9.102012.9.11:
3、完成设定要实现的功能,撰写课程设计说明书;5)2013.9.122013.9.13:完成硬件调试、验收。 同组设计者及分工: 指导教师签字_ 年 月 日 教研室主任意见: 教研室主任签字_ 年 月 日*注:此任务书由课程设计指导教师填写开题报告一 立项背景1. 课题意义 随着科技的进步,人们对机器人的发展越来越重视,移动机器人作为一个重要分支也备受关注。运动控制是移动机器人研究中的重要课题。以教育机器人为平台,针对轮式移动机器人进行运动控制,速度测量,对于理解机器人的基本控制方法有重要意义。 通过对移动机器人的速度进行监测,对于选择移动路径,速度变化,移动策略的制定,进行反馈控制都有重要意义。
4、在自动测速小车的设计中,测速环节可以作为地域探索机器人和紧急抢险机器人的运动系统中的一部分,让机器人在行进中自动对自身速度进行观测。2. 课题目的 (1)利用以8位AT89S52单片机为核心的教育机器人设计测速小车,实现对小车左右两轮速度的监测。在设计过程中进一步掌握单片机在控制领域的具体应用,加深对单片机功能和内部资源的认识,学习单片机系统的设计过程。 (2)在C语言程序设计过程中,可以掌握延时,初始化,中断,定时,计数等基本程序的编写,熟练对keil uVision集成化开发平台的应用。同时在设计过程可以进一步理解软件与硬件的关系,以及单片机的工作过程。 (3)在液晶显示的设计过程中,进一
5、步掌握单片机与外部显示设备的接口连接,程序编写。同时通过计算机仿真,熟练使用Proteus进行虚拟仿真。 (4)在测速方法的设计中,了解数字编码器的工作原理,以及如何通过单片机进行速度监测。 (5)通过对1602显示模块的子程序设计,掌握1602液晶显示模块的四位显示与八位显示的区别,并熟练液晶显示模块的使用。二设计要求 (1)实时测量小车的运行速度,并用液晶显示。 (2)两行分别显示小车左轮和右轮速度,以cm/s为单位。 (3)需要用到单片机的2个计数(两个轮子)和1个定时功能。AT89S52有3个定时计数器,熟悉定时器T2的使用方法。 (4)扩展,设定一临界速度值,当小车速度大于临界速度时
6、会自动报警。三 设计原理对于测速智能车系统,可将其分为四个主要模块:数字编码器模块,单片机主控核心模块,电机驱动模块,ISP程序烧写模块。(1)单片机主控核心模块 机器人的核心芯片为Atmel公司生产的8位AT89S52单片机,是一种高性能CMOS、低功耗的8位单片机,片内含8k Bytes Flash,运用ISP(In-system programmable)的可反复擦写1000次;只读程序存储器器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及其引脚结构。在实际工程应用中,功能强大的AT89S52已成为许多提供高性价比嵌入式控制应用系统的解决方案。 在这次
7、设计中我们选用已经学过的MCS-51单片机为核心作为控制模块MCS-51系列单片机是美国Intel公司于1980年推出的产品,MCS-51系列单片机的影响及其深远,许多公司都推出了兼容系列单片机,使MCS-51内核成为一个8位单片机的标准,其典型产品有8031、8051、8751等等。(2)ISP程序烧写模块 AT89S5x系列单片机支持ISP。是指在电路板上的被编程的空白器件可以直接写入程序代码,而不需要从电路板上取下器件,已编程的器件也可用ISP方式擦除或再编程。ISP下载编程器可以自行制作,也可电子市场购买。常见市售的ISP下载型编程器为ISPro下载型编程器。用户将安装光盘插入光驱,运
8、行安装程序SETUP.exe即可。安装后,在桌面上建立一个“ISPro.exe下载型编程器”图标,双击该图标,即可启动编程软件。 本次课程设计采用风标电子ISP。(3)电机驱动模块电机是智能车的驱动部件,给小车提供动力。机器人的动作直接由伺服电机控制,伺服电机与单片机接口的连接,图1为电机连接原理图和实际接线图,图2可知,P1_0引脚的控制输出用来控制右的伺服电机,而P1_1则用来控制左边的伺服电机。 图1 伺服电机与教学底板的连接原理图(左)和实际接线示意图(右) 电机的控制原理如下所述。图2所示是高电平持续1.5ms低电平持续20ms,然后不断重复的控制脉冲序列。该脉冲序列发给经过零点标定
9、后的伺服电机,伺服电机不会旋转。如果此时电机旋转,表明电机需要标定。从图3可知,控制电机运动转速的是高电平持续的时间,当高电平持续时间为1.3ms时,电机顺时针全速旋转,当高电平持续时间1.7ms时,电机逆时针速旋转。图2 电机转速为零的控制信号时序图1.7ms脉冲控制电机逆时针全速旋转1.3ms脉冲控制电机顺时针全速旋转图3 控制脉冲序列使电机顺时针和逆时针全速旋转具体使小车前进,后退,转弯程序见附录。(4)数字编码器模块图4 编码器原理图 如图4所示,编码器发出的红外光,经过物体表面的反射并再次接收,智能车的轮子即使是黑色的,仍然足够反射红外线导致传感器的响应,当传感器“看到”车轮的一部分
10、时,编码器会输出低电平,当它通过了车轮上的一个洞时,它的输出变为高电平。由于传感器发射和检测的调制红外和环境光线比较相近,所以一些荧光灯也可能发出相近频率的光对编码器的运作产生干扰。随着智能车的车轮转动,传感器会看到孔和无孔的交替模式无孔-孔-无孔,可以看出编码器的输出将是一个方波,并且其频率对应车轮的速度旋转,通过对数字编码器输出的方波信号进行观测就可容易知道智能车的速度。 如图5所示为数字编码器的硬件连接图,左右两轮各安装一个编码器,红色引线接Vdd,黄色引线接Vss,黑色引线分别接一个10K的上拉电阻到Vdd,左轮黑色引线接P11管脚,右轮黑色引线接P10管脚。图5 数字编码器硬件连接图
11、四 设计内容(1) 测速原理根据编码器的工作原理我们可以知道,编码器发出的红外光,经过物体表面的反射并再次接收,智能车的轮子即使是黑色的,仍然足够反射红外线导致传感器的响应,当传感器“看到”车轮的一部分时,编码器会输出低电平,当它通过了车轮上的一个洞时,它的输出变为高电平。由于传感器发射和检测的调制红外和环境光线比较相近,所以一些荧光灯也可能发出相近频率的光对编码器的运作产生干扰。随着智能车的车轮转动,传感器会看到孔和无孔的交替模式无孔-孔-无孔,可以看出编码器的输出将是一个方波,并且其频率对应车轮的速度旋转,通过对数字编码器输出的方波信号进行观测就可容易知道智能车的速度。因为编码器直接输出对
12、应车轮旋转速度的方波,我们通过单片机的两个I/O口将脉冲接入单片机,因为8位AT89S52单片机内部集成有三个计数器,我们利用两个计数器对输入的脉冲进行计数,利用另一个定时器进行定时。通过定时计数就可以观测到两个轮子的速度。(2) AT89S52单片机定时器2的使用T2控制寄存器T2CON (地址:88H,可按位寻址),由于T2可以自动装入初值,所以计时非常准确TF2: 溢出标志位。T2溢出时置位,并申请中断。此标志必须用软件清除。EXF2:当EXEN2 = 1,且T2EX引脚出现负跳变时,EXF2置位,申请中断。此标志必须有软件清除。CP/RL2:捕获/重装载控制位。1:选择捕获功能,若EX
13、EN2=1,在T2EX引脚上出现负跳变时,发生捕获操作,把TH2和TL2的内容送给RCAP2H和RCAP2L;0:选择重装载功能,若T2溢出或在EXEN2=1条件下T2EX引脚出现负跳变是,都会发生自动重装载,把RCAP2H和RCAP2L的内容送给TH2和TL2。(3)显示环节 本次课程设计,采用LCD1602作为显示装置。1602仅使用高4位数据线及3位控制线实现液晶屏显示,减少了单片机的端口引脚占用。程序运行效果与使用8位接口模式显示的效果相同。(4) 定时一秒初值计算对于16位定时器,最长可定时选择每隔50ms中断一次,中断20次为1秒。则 RCAP2H = 19456/256, RCAP2L = 19456%256开始五 程序流程图T0,T1初始化,设置计数起点1602液晶屏初始化,设置为四位模式T2初始化,装入定时初值小车运动否计时是否满一秒是显示左右两轮速度3. 关键问题(1) 使用计数器T0,T1,同时让定时器T2 定时一秒。计数时间到,将脉冲数送入字符显示函数。(2) 对于脉冲数,如何进行转换,从float型常量变为字符常量进行显示。(3) 1602的四位模式初始化与命令,数据写入的子程序编写。(4) 小车运动轨迹和运动路径的控制。
限制150内