寻迹小车制作超简单.docVIP

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
小 车 设 计 报 告 班级:D11008班 制作人:高真 寻迹小车 一.功能叙述: 1.能够根据轨迹图所提供的路线进行主动的寻迹。 2.小车能够在赛道上完成一圈的寻迹,及包括前进左拐右拐。 二.小车原理 小车循迹原理是小车在画有黑线的白纸 “路面”上行驶,由于黑线和白纸对光线的反射系数不同,可根据接收到的反射光的强弱来判断“道路”—黑线。 二.制作所需元器件清单: 1.STC90C2RC单片机一块。 2.L298N电机驱动芯片一块。 3.LM324四运算放大器(在这作电压比较器)两块。 4.TCRT5000红外光电传感器4个。 5.TLP521光电耦合器4个。 6.10kΩ微调电位器4个。 7.LED指示灯8个。 8.玩具小车1个。 9.直流电机2个。 10.IN4007整流二极管8个。 11.独石电容(104) 2个。 12.电解电容(100uf) 2个。 13.单片机DIP座 1个。 14.晶振一个(11.0592)1个。 15.瓷片电容(30pf) 2个。 16.电阻(4.7KΩ) 4个。 17. 电阻(150Ω) 4个。 18. 电阻(1KΩ) 4个。 19.金属散热片 1个。 20.洞洞板、覆铜板 各2块。 21.杜邦线、排针 若干。 三.小车的组成: 该小车可以分为三大组成部分:主控部分,传感器检测部分、执行部分。 1.主控电路 小车采用单片机作为整个系统的核心,用其控制行进中的小车,充分分析我们的系统,其关键在于实现小车的自动控制,而在这一点上,单片机就显现出来它的优势——控制简单、方便、快捷。这样一来,单片机就可以充分发挥其资源丰富、有较为强大的控制功能及可位寻址操作功能、价格低廉等优点,所以我决定用STC90C52RC单片机。 2.信号检测模块 小车要实现自动循迹功能,感知导引线可以实现小车自动识别路线,选择正确的行进路线,所以我使用价廉物美的红外反射式传感器。 在该模块中利用了简单、应用也比较普遍的检测方法——红外探测法。 红外探测法,即利用红外线在不同颜色的物理表面具有不同的反射性质的特点。在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色地面时发生漫发射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,则小车上的接收管接收不到信号,再通过LM324作比较器来采集高低电平,从而实现信号的检测。 市面上有很多红外传感器,在这里我选用TCRT5000型光电对管。 3.智能小车的执行部分,是由直流电机来充当的,主要控制小车的行进方向。 2.循迹电路 采用四只红外对管,分别置于小车车身前轨道的两侧,根据四只光电开关接受到地面与黑线的情况来控制小车转向来调整车向。将循迹光电对管分别装在车体前方的左右。当车身左边的传感器检测到黑线时,主控芯片控制前轮电机左转,后轮电机前进,车向左修正,当车身右边传感器检测到黑线时,主控芯片控制前轮电机右转,后轮电机前进,车向右修正。 主板设计框图 3.驱动电路 电机驱动一般采用H桥式驱动电路,L298N内部集成了H桥式驱动电路,从而可以采用L298N电路来驱动电机。通过单片机给予L298N电路PWM信号来控制小车的速度,起停。驱动原理图如图3.3。 图3.3 电机驱动电路 图3.4循迹原理图 四.软件设计 1.主程序框图: // 智能循迹小车程序 // #includereg52.h // 头文件 #define uchar unsigned char //宏定义 #define uint unsigned int //宏定义 sbit R=P3^2; //右边传感器 P3^2 sbit L=P3^3; //左边传感器 P3^3 sbit R1=P3^4; //右边传感器1 P3^4 sbit L1=P3^5; //左边传感器1 P3^5 //电机驱动口定义 sbit ENB=P1^0; //前轮电机控制端口 sbit ENA=P1^1; //后轮控制端口 sbit IN1=P1^2; //前轮 sbit IN2=P1^3; //前轮 sbit IN3=P1^4; //后轮 sbit IN4=P1^5; //后轮 unsigned char CYCLE; void Init() { /*TMOD = 0x12; //定时器0用方式2,定时器1用方式1 TH0=(256-200)/256; //pwm TL0=(256-200)/256; TH1 = 0x0F8; //定时2ms TL1 = 0x30; EA = 1; ET0

文档评论(0)

ipad0b + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档