小车资料.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
小车资料

当 A 输入为低电平, B 输入为高电平时,晶体管放大器 VT3 , VT2 导通, VT1 , VT4 截止。 VT3 , VT2 与电动机一起形成一个回路,驱动电动机正转。当 A 输入为高电平, B 输入为低电平时,晶体管 VT3 , VT2 截止, VT1 , VT4 与直 流电机形成回路,驱动电动机反转。 4 个二级管起到保护晶体管的作用。 功率晶体管采用 TP521 光耦器驱动,将控制部分与电动机驱动部分隔离。 光耦器的电源为 +5V , H 型驱动电路中晶体管功率放大器 VT3 , VT1 的发射极所 加的电源为 12V 。 4.3 路程计算模块的选择与设计 方案 1 :采用霍尔集成片。 该器件内部有三片霍尔金属板组成,利用霍尔效应而产生电压,因此可以在 车轮上安装磁片, 而将霍尔元件固定在车架上, 通过对脉冲的计数实现路程的测 量。 方案 2 :采用光电传感器 受 鼠标工作原理的启发,采用断续式光电开关,由于开关是沟槽结构,可将 其置于固定轴上, 在车轮上安装多个遮光条, 让其恰好通过沟槽, 产生一个脉冲, 对脉冲计数。 以上两种方案都是较可行的,但在本题中车轮较小,方案 1 安装困难,容易 产生干扰,相反,方案 2 的精度高,故我们采用方案 2 。 当光敏二级管接收到光时, VT1 和 VT2 导通, VT3 不能导通, A 点为高电平,此时 MCU 口收到的电平为高电平; 当光敏二级管未接收到光源时, 则 VT1 和 VT2 不导通, VT3 导通, A 点输出低电平。 , MCU 口接收到方波计数。 4.4 电机稳速的设计 高性能可变速度稳定器电路如图 2 所示。它可用作宽范围速度可变的场合。 图中电机的电源是经过 317K 三端稳压器集成电路输出。 电机的电流经 R5 和 RV2 取样,把部份电压送到 IC2 和 Q1 组成的同相直流放大器。 Q1 发射极电压 正比于电机负载电流。 三端稳压器的输出电压等于本身的输出电压再加上 Q1 发射极上的电压。因 此, 当电机负载增加时, 电路输出电压将自动上升, 增加电机的驱动能力, 保持 电机速度不变。为了保持有负载与无负载时,电机的速度相同。首先调节 RVl 使电机的转速为最大转速的三分之一。然后调节 RV2 到额定转速。 5. 系统的软件设计 智能小车的控制器采用 ATMEL 公司的 AT89C51 , 因为在程序中不需要涉及 精确的实时操作,所以使用 C 语言进行编写,这样可以大大提高效率。 5.1 程序设计流程图 参考文献: [1] 谢自美 《电子线路设计、 实验、 测试》 [M] 武汉: 华中理工大学出版社, 2000. 附:系统原程序 // 定义头文件 #includereg51.h #includestdio.h #define uchar unsigned char #define uint unsigned int //******* #define dl 50 uchar idata plus[7]={0x01,0x03,0x02,0x06,0x04,0x05,0x00}; uchar idata minu[7]={0x01,0x05,0x04,0x06,0x02,0x03,0x00}; Uchar code tabe[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; uchar k=0; uchar idata *x; uint dr; sbit motor1=P1^2; sbit motor2=P1^3; sbit p1_7=P1^7; // 延时子程序 void delays(void) {int j,k; for(k=0;k1000;k++) for(j=0;j1000;j++); } // 步进电机控制 void stp(cf,n) { bit cf; uint n; uint i; if (cf==0) x=plus[0]; else x=minu[0]; TMOD=0x01; TH0=(65536-dl*500)/256; TL0=(65536-dl*500)%256; TR0=1; ET0=1; EA=1; for(i=0;in;i++) {while(k==0); k=0; } }void delay(void) interrupt 1

文档评论(0)

153****9595 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档