无线遥控玩具小车设计与制作.doc

上传人:laozhun 文档编号:4143314 上传时间:2023-04-07 格式:DOC 页数:39 大小:10.46MB
返回 下载 相关 举报
无线遥控玩具小车设计与制作.doc_第1页
第1页 / 共39页
无线遥控玩具小车设计与制作.doc_第2页
第2页 / 共39页
无线遥控玩具小车设计与制作.doc_第3页
第3页 / 共39页
无线遥控玩具小车设计与制作.doc_第4页
第4页 / 共39页
无线遥控玩具小车设计与制作.doc_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《无线遥控玩具小车设计与制作.doc》由会员分享,可在线阅读,更多相关《无线遥控玩具小车设计与制作.doc(39页珍藏版)》请在三一办公上搜索。

1、“发明杯”大学生创新大赛作品 题 目: 无线遥控玩具小车设计与制作 目 录摘要1引言31 方案设计与论证 41.1 直流调速系统 4 1.2 防碰撞系统5 1.3 显示系统52 硬件设计 5 2.1 小车系统框图5 2.2 单片机最小系统设计62.3 电机驱动电路设计72.4 遥控发射接收电路设计9 2.4.1 无线发送电路 10 2.4.2 无线接收电路 11 2.5 检测系统设计11 2.5.1 速度检测设计 11 2.5.2 防跌落系统设计 12 2.5.3 防碰撞系统设计 132.6 显示电路设计13 2.7 单片机I/O口的分配14 2.8 电源设计14 2.9 小车车体设计143

2、软件设计 15 3.1 主程序设计153.2 PWM子程序设计17 3.3 遥控子程序 18 3.4 防跌落、碰撞子程序 20 3.5 显示子程序 21 4 结果分析及结论 22 5 谢辞 236 参考文献 23附件1 程序清单 24附件2 硬件电路图 33附件3 电路PCB图 34无线遥控玩具小车设计与制作 摘要: 80C51单片机是一款八位单片机,他的易用性和多功能性受到了广大使用者的好评,该课题的基本思想是设计一台能够遥控行走并自动回退防止跌落的机器小车。遥控接收端以 80C51 单片机为控制核心,其中数据的发射和接收部分通过无线通讯模块完成。可通过发射端来控制小车的直流电机实现无极调速

3、, 遥控小车进行转向, 并能在液晶上显示出小车的实时速度值。小车还能自动检测落差较大的落差,遇到楼梯等低处会自动回避,以防止小车由高处摔落。关键词:80C51单片机、PWM调速、遥控小车 引言在我国,单片机已不是一个陌生的名词,它的出现是近代计算机技术的里程碑事件,因为单片机的诞生标志着计算机正式形成了通用计算机系统和嵌入式计算机系统两大分支。在单片机诞生之前,为了满足工控对象的嵌入式应用要求,只能将计算机进行机械加固、电气加固后嵌入到对象体系中构成自动控制。但由于体积过大,无法嵌入到大多数对象体系,如家电、玩具、仪器仪表等。单片机则应嵌入式应运而生。单片机的微小体积和极低的成本,可广泛应用到

4、如玩具、家电、仪器仪表、汽车电子系统、工业控制单元、办工自动化系统、金融电子系统、个人信息终端及通信产品中,成为现代化电子系统中最重要的智能化工具。本系统以80C51单片机为核心器件,由一块液晶显示小车的运动数据,采用L298N来驱动控制电机的正反转,利用无线遥控装置对小车进行遥控,实现具有前进、后退、左移和右移四种运动方式。利用光电一体化红外线传感器,检测落差较大的地方,实现自己判定,并自己避免落到落差较大的地方。利用微动开关,实现小车碰撞到物体后能自动回避,从而达到遥控智能控制的目的。基于单片机控制的设计思想,选用廉价的遥控编码解码集成电路(PT2262/PT2272)采用LM298N芯片

5、驱动直流电机,通过PWM 实现调速,在小车的外围安置红外传感器。实现小车的无级调速控制 ,小车调试性能稳定。这种遥控方案能实现对电动小车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。1 设计方案与论证根据设计的要求,确定如下方案:在现有玩具电动小车的基础上,加装光电检测器,无线模块,实现对电动小车的无线遥控,能对小车的速度、位置、运行状况的实时控制,并将测量数据传送至单片机进行处理,由单片机根据所检测的各种数据送液晶显示出来。1.1 直流调速系统方案一:静止可控整流器。方案二:脉宽调速系统。方案一:静止可控整流器。 V.M系统是当今直流调速系统的主要形式。它可以是单相

6、、三相或更多相数,半波、全波、半控、全控等类型,可实现平滑调速。V.M系统的缺点是晶闸管的单向导电性,它不允许电流反向,给系统的可逆运行造成困难。它的另一个缺点是运行条件要求高,维护运行麻烦。最后,当系统处于低速运行时,系统的功率因数很低,并产生较大的谐波电流危害附近的用电设备。方案二:脉宽调速系统。 采用晶闸管的直流斩波器基本原理与整流电路不同的是,在这里晶闸管不受相位控制,而是工作在开关状态。当晶闸管被触发导通时,电源电压加到电动机上,当晶闸管关断时,直流电源与电动机断开,电动机经二极管续流,两端电压接近于零。脉冲宽度调制(Pulse Width Modulation),简称PWM。脉冲周

7、期不变,只改变晶闸管的导通时间,即通过改变脉冲宽度来进行直流调速。与V.M系统相比,PWM调速系统有下列优点:(1)PWM调速系统的开关频率较高,仅靠电枢电感的滤波作用就可以获得脉动很小的直流电流,电枢电流容易连续,系统的低速运行平稳,调速范围较宽。由于电流波形比V.M系统好,在相同的平均电流下,电动机的损耗和发热都比较小。(2)同样由于开关频率高,若与快速响应的电机相配合,系统可以获得很宽的频带,因此快速响应性能好,动态抗扰能力强。根据以上综合比较,以及本设计中受控电机的容量和直流电机调速的发展方向,本设计采用了H型单极型可逆PWM变换器进行调速。脉宽调速系统的主电路采用脉宽调制式变换器,简

8、称PWM变换器。脉宽调速的驱动能力有限。为顺利实现电动小汽车的前行与倒车,本设计采用了可逆PWM变换器。可逆PWM变换器主电路的结构式有H型、T型等类型。我们在设计中采用了常用的双极式H型变换器,它是由4个三极电力晶体管和4个续流二极管组成的桥式电路。1.2 防碰撞系统障碍物的检测方案(1)利用超声波探测传感器可以在较远的距离就可以检测到前方的障碍物,但超声波探测传感器的价格昂贵,电路需要调试、验证,用于遥控小车上会大大增加小车的成本,并不合适。(2)利用红外一体化光电传感器电路简单,但受外界的条件的干扰比较大,还有对于黑色的障碍物体不能辨别,因为黑色会吸收红外光,造成检测不到黑色物体,对小车

9、的运动会影响。(3)利用微动开关传感器利用微动开关传感器检测障碍,价格便宜,而且是硬件结构,结构简单,实用性强,当碰到障碍物时微动开关就马上动作,避开障碍物,不用外接电路,也不用电源,可以节约电能的使用。我们从经济实用的方面考虑,在此我们采用第三种方案。1.3 显示系统(1) 采用数码管显示数码管显示具有高亮的特性,但数码管的驱动电流比较大,要外加驱动电路,会增加小车的成本,而且占用单片机的I/O口资源和单片机资源较多,并且此电路要用多位数码管显示,使电路变的更复杂。(2) 采用液晶显示液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛

10、的应用,采用液晶能直观的将速度显示给用户,2行16个字的1602液晶模块比较常用,而且液晶的显示都已经模块化,我们直接就可以用。所以我们采用第二中方案更实用方便,用液晶显示。2 硬件设计2.1 小车系统框图小车主要由信号传感器,信号处理电路,无线发送模块,无线接收模块,单片机小系统,电机驱动电路,直流电机以及液晶显示电路等组成。小车的系统框图如图2.1所示。 图2.1 小车系统框图小车控制采用AT89C51单片机,通过控制电机驱动电路来驱动电机的运行。无线接收模块接单片机,利用无线发送模块遥控器给接收模块发送无线信号,控制小车的运动,液晶上显示小车的实时速度。当避障传感器或防跌落传感器测得信号

11、时候,单片机能自己控制电机左转或者右转,避免小车碰撞和跌落。2.2 单片机最小系统设计80C51是片内有ROM/EPROM的单片机,因此,这种芯片构成的最小系统简单、可靠。80C51单片机最小系统是整个小车的控制核心,负责小车的各种信号的处理计算,控制小车的运行,就犹如小车的“大脑”。 单片机最小系统电路组成如图2.2所示。图2.2 单片机最小系统电路 单片机最小系统组成:(1)时钟电路80C51虽然有内部振荡电路,但要形成时钟,必须外部附加电路。80C51单片机的时钟产生方法有两种。内部时钟方式和外部时钟方式。本设计采用内部时钟方式,利用芯片内部的振荡电路,在XTAL1、XTAL2引脚上外接

12、定时元件,内部的振荡电路便产生自激振荡。本设计采用最常用的内部时钟方式,即用外接晶体和电容组成的并联谐振回路。振荡晶体可选用12MHZ的。电容值无严格要求,但电容取值对振荡频率输出的稳定性、大小、振荡电路起振速度有少许影响,CX1、CX2可用20pF的此片电容。在设计印刷电路板时,晶体和电容应尽可能靠近单片机芯片安装,以减少寄生电容,更好的保证振荡器稳定和可靠地工作。(2)复位电路复位电路通常采用上电自动复位和按钮复位两种方式。最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充电来实现的。只要Vcc的上升时间不超过1ms,就可以实现自动上电复位。时钟频率用12MHZ时C取22uF

13、,R取10K。除了上电复位外,有时还需要按键手动复位。按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过RST端经电阻与电源Vcc接通而实现的。(3)单片机下载串口MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的接口电路,使用+5v单电源供电。MAX232下载串口基本可分三个部分: 图2.3 单片机下载口第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11

14、脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DP9插头;DP9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。第三部分是供电。15脚GND、16脚VCC(+5V) 2.3 电机驱动电路设计由于单片机输出的电压信号不能直接驱动电机运行,所以单片机必须要通过电机驱动电路来控制电机的运行。直流电机采用L298N芯片来驱动控制电机正反转和低、高速度的运

15、行。L298N是SGS公司的产品,内部包含4通道逻辑驱动电路。是一种二相和四相电机的专用驱动器,即内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,故比较适合控制该小车类型的电机。L298N内部结构如图2.4所示: 图2.4 L298N的内部电路电机驱动电路的设计如图2.5所示:图2.5 电机驱动电路单片机输出的控制信号INPUT1,INPUT2通过非门芯片74LS04后,接L298N的四个端口,电路如图2.5所示,通过变换INPUT1,INPUT2的高低电平就可以控制两个电机的正反转,这里非门的使用不但减少了单片机I/O口的使用,而且很容易的就能控制电机的正反转,使程序也

16、简单很多。L298N的芯片的供电电压为标准的5V,电机驱动的供电电源为12V。L298N的输出最大电压为46V,电流为2.5A,驱动直流电机已经足够了。因为L298N内含二个H桥,所以可以同时控制两个直流电机,改变输入6脚和11脚的PWM脉冲就可以分别调节输出电压,从而分别能控制两个直流电机的转速,互不影响,从而控制小车的速度,转向。2.4 遥控发射接收电路设计通过遥控接收电路来手动遥控小车的运行,这就要求遥控接收电路要可靠的发送,接收,而且外界的干扰对接收电路要小。发射电路发射的无线信号频率要与空间其它的无线信号频率不一样,避免无线信号相互干扰。所以我们可以采用PT2262/PT2272这一

17、对无线发射和接受的芯片。PT2262/2272是台湾普城公司生产的一种CMOS工艺制造的低功耗低价位通用编解码电路,PT2262/2272最多可有12位(A0.A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441地址码,PT2262最多可有6位(D0.D5)数据端管脚,设定的地址码和数据码从17脚串行输出,可用于无线遥控发射电路。编码芯片PT2262发出的编码信号由:地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端一直按住按键,编码芯片也会连续发射。

18、当发射机没有按键按下时,PT2262不接通电源,其17脚为低电平,所以315MHz的高频发射电路不工作,当有按键按下时,PT2262得电工作,其第17脚输出经调制的串行数据信号,当17脚为高电平期间315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低平期间315MHz的高频发射电路停止振荡,所以高频发射电路完全收控于PT2262的17脚输出的数字信号,从而对高频电路完成幅度键控(ASK调制)相当于调制度为100的调幅。PT2262 /PT2272 芯片引脚图 图2.6 PT2262 引脚图 图2.7 PT2272引脚图2.4.1 无线发送电路无线遥控发射模块是由按键接收电路、遥控指令

19、编码器、高频载波发生器、调制电路及发射电路等组成,如图2.8所示。在图2.8中,SB1SB4为遥控指令操作键,PT2262为遥控指令编码器,晶体管VT1和声表面波谐振器GD315及外围元件一起构成了高频载波发生器与调制电路,L1既是发射天线,也是振荡电路的一部分。所使用的声表面波谐振器GD315,具有频率一致性非常好,工作频率为315MHz,且工作频率的稳定度极高。 图2.8 无线电遥控发射模块电路无线遥控发射模块的工作过程是:当发射模块没有按键按下时,PT2262不接通电源,其17脚输出低电平,使晶体管VT1截止,所以315MHz高频发射电路不工作。当SB1SB4中有某个按键按下时,PT22

20、62得电工作,其17脚输出经过编码的串行数据(脉冲)信号,且当17脚为高电平期间,315MHz高频发射电路起振并发射出等幅高频信号。编码器PT2262第17脚输出的编码信号是由地址码、数据码、同步码组成的一个完整码字。如果遥控器上的按键一直按下,则编码器PT2262也会不停地输出脉冲串。当17脚为低电平期间,315MHz高频发射电路停止振荡。由此可知,高频发射电路完全受控于PT2262第17脚输出的数字信号,也就是说,高频电路对PT2262输出的编码信号完成幅度键控调制(ASK调制),类似于调制度为100的幅度调制。2.4.2 无线接收电路超外差式接收机具有温度适应性强,接收灵敏度高,工作稳定

21、可靠,抗干扰能力强,产品一致性好,接收机的本振辐射低,性能指标好,容易通过FCC或者CE等标准的检测,但是价格较高,在广播电台、电视机等要求较高的场所使用。而超再生式接收机具有电路简单,成本低廉等优点,在无线电遥控系统中得到了广泛应用。本遥控系统接收模块采用了超再生接收方式。无线遥控接收模块是由选频放大接收电路、信号放大与波形转换电路、解码芯片PT2272等组成,如图2.9所示: P1.01.3 80C51 图2.9 无线接收模块电路 在图2.9中,由晶体管VT1和VT2组成了选频放大电路,用于接收遥控发射器发出的高频信号。由运算放大器LM358及外围元件组成了信号放大与波形转换电路,它把输入

22、的正弦波信号转换为矩形脉冲后送到解码电路PT2272处理。解码电路PT2272从输入的字符串中分离出地址码,并将其与从地址线输入的地址码进行两次比较核对后,其VT脚(17脚)才输出高电平,与此同时和PT2262相对应的数据脚也输出高电平提供给单片机I/O口。2.5 检测系统设计2.5.1 速度检测设计 光电传感器灵敏度高、响应时间快,通过光电传感器来检测小车的运转而实现小车速度的检测。测速信号传感器安装在小车轮子边上,采用LM324N集成运放及外围电路组成红外检测电路作为测速信号传感器,实现对小车的速度信号的采集。速度检测原理如图所示,轮子转一周,输出四个脉冲,送单片机处理,然后由单片机计算出

23、速度等值,送显示器显示出来。速度检测电路原理如图2.10所示。图2.10 速度检测原理图2.5.2 防跌落系统设计采用红外线光电一体化传感器用于检测路面的低洼处,将采集的高低电平信号经LM324N电压比较器后,送出标准的高低电平送单片机处理。红外一体化光电传感器固定在小车底盘前沿,贴近地面。正常行驶时,发射管发射红外光照射地面,光线经地面反射后被接收管接收,输出高电平信号,小车遇到低洼处时,发射端发射的红外光线被吸收,接收端接收不到反射的红外光线,传感器输出低电平信号后送80C51单片机处理。本系统共设计两个光电一体化传感器,分别装置在小车车头的左、右两个位置,用来检测小车前方的状况,当左侧光

24、电传感器不受到红外光照时,单片机控制小车向右转;当右侧光电传感器不受到红外光照时,单片机控小车向左转;当左、右两侧光电传感器都不受到红外光照时,单片机控制小车倒退。防跌落电路原理如图2.11所示:图2.11 防跌落电路原理图电路工作原理:如果是平的地面,红外光线会经过地面反射回来,反射到接收极,此时U3U2,经运放比较后,输出高电平,送单片机处理。2.5.3 防碰撞系统设计图2.12 微动开关的安装位置为防止小车碰撞障碍物时会碰坏,用两个微动开关装置装在小车的左前方和右前方,当障碍物碰到微动开关时候,小车会按单片机设计好的方案进行自动的避开障碍物体(左转、右转或者倒退)。微动开关的设计位置如图

25、2.12所示。2.6 显示电路设计显示的液晶采用了市面上较为普遍的1602液晶,显示容量为16*2个字符,该芯片的正常工作电压为4.5V-5.5V,图2.13是单机片与液晶1602的接口电路。图 2.13 单机片与液晶的接口电路在使用LCD液晶的时候需要注意的是基本操作时序,LCD液晶显示器基本的操作时表2.2 液晶接口说明 序为:(1)读状态:输入:RS=L,RW=H,E=H,输出D0D7=状态字。(2)写指令:输入:RS=L,RW=L,D0D7=指令码,E=高脉冲,输出无。(3)读数据:输入:RS=H,RW=H,E=H 输出D0D7=数据。(4)写数据:输入:RS=H,RW=L,D0D7=

26、数据,E=高脉冲,输出无。在读写操作的时候还需要注意的是对控制器每次进行读写操作之前,都必须进行读写检测。1602液晶的接口说明如表2.2所示。2.7 单片机I/O口的分配P0口 : P0.0PO.7 接液晶的D0D7;P1口: P1.0P1.3 接遥控发射的四个端口; P1.6,P1.7 接防跌落,碰撞电路; P2口: P2.7,P2.6,P2.5分别接液晶的 RS,RW,E; P2.1,P2.2,P2.3,P2.4 四个口控制电机驱动电路;P3口: P3.1,P3.2 接下载串口电路; P3.2,P3.3 接速度检测电路;2.8 电源设计用12V的直流电压给直流电机的驱动电路模块单独供电,

27、使电机驱动电路与单片机小系统之间不会通过电源而相互影响,而且可以保证电机的驱动电流足够大。用6V电池给单片机系统以及检测电路供电,由于单片机的电源电压范围为5V左右,所以可以在单片机与6V电源之间串接一个IN4007二极管,利用二极管的正向压降,降低0.7V的电源电压。2.9 小车车体设计可以采用左右两轮分别驱动,后万向轮转向的方案。即左右轮分别用两个转速和力矩基本完全相同的直流电机进行驱动,车体尾部装一个万向轮。这样,当两个直流电机转向相反,同时转速相同时就可以实现电动车的原地旋转,由此可以轻松的实现小车原地90度和180度的转弯。在安装时我们保证两个驱动电机同轴。当小车前进时,左右两驱动轮

28、与后万向轮形成了三点结构。这种结构使得小车在前进时比较平稳,可以避免出现后轮过低而使左右两驱动轮驱动力不够的情况。为了防止小车重心的偏移,后万向轮起支撑作用。对于车架材料的选择,我们经过比较选择了有机玻璃。用有机玻璃做的车架比塑料车架更加牢固,比铁制小车更轻便,美观。 小车的结构图:如图2.14所示 图2.14 小车的结构图3 软件设计 提高遥控小车智能控制的可靠性,仅靠硬件抗是不够的,需要借助于软件来实现。在单片机控制系统中,如能运用好的程序思路,将大大提高控制系统的可靠性,灵活性。而且可以减少硬件电路的设计,节约成本。在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个

29、对象的实际需要设计应用程序。因此,软件设计在微机控制系统设计中占重要地位。对于本系统,软件也很重要。在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。数据处理包括:数据的采集、数字滤波、标度变换等。过程控制程序主要是使单片机按一定的方法进行计算,然后再输出控制对象。为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。所谓“模块”,实质上就是能完成一个单独的功能,相对独立的程序段,这种程序设计方法叫模块程序设计法。模块程序设计法的主要优点是:(1)单个模块比起一个完整的程序易编写及调试;(2)模块可以共存,一个模块可以被多个任务在不同条件下调用;

30、(3)模块程序允许设计者分割任务和利用已有程序,为设计者提供方便;(4)利用模块化程序看上去比较清晰,便于读懂;本系统软件采用模块化结构,由主程序PWM子程序、检测子程序避障子程序、显示子程序组成。3.1 主程序设计主程序编写的时候,清楚各个子程序调用的顺序。 图3.1 小车程序流程图 PWMH1 DATA30H ;电机1高电平脉冲的个数 PWMH2 DATA31H ;电机2高电平脉冲的个数 PWM DATA 32H ;PWM周期 COUNTER DATA 33H ;中断计数器 S1 BIT P2.3 ;电机1的输出 S2 BIT P2.2 ;电机2的输出 EN1 BIT P2.0 ;电机1的

31、使能(左) EN2 BIT P2.1 ;电机2的使能(右) ORG 0000H AJMP MAIN ORG 000BH AJMP INTT0 ORG 001BH AJMP INT1 ORG 0030HMAIN: MOV R0,#00 MOV COUNTER, #00 MOV PWM, #150 MOV TMOD,#02H ;定时器0在模式2下工作 MOV TL0, #38H ;定时器每200us产生一次溢出 MOV TH0, #38H ;自动重装的值 SETBET0 ;使能定时器0中断 SETBEA ;使能总中断 SETBS2 ;电机1正转 CLRS1 ;电机2正转 SETBTR0 ;开始计时

32、START: SJMP YAOKONG ;遥控子程序 SJMP BIZHANG ;避障子程序 SJMP XIANSHI ;显示子程序 SJMP START ;返回主程序 END3.2 PWM子程序设计 脉冲T保持不变。改变T0的脉冲宽度就可以输出占空比可变的PWM脉冲。 图3.2 PWM示意图 COUNTER:MOV COUNTER,#00 MOVPWM, #150 MOVTMOD, #02H ;定时器0在模式2下工作 MOVTL0, #38H ;定时器每200us产生一次溢出 MOVTH0, #38H ;自动重装的值 SETB ET0 ;使能定时器0中断 SETB EA ;使能总中断 SET

33、B S2 ;电机1正转 CLR S1 ;电机2正转 SETB TR0 ;开始计时INTT0: PUSH PSW ;现场保护 PUSH ACC INC COUNTER ;计数器加1 MOV A ,COUNTER CJNE A, PWMH1, INTT00 ;如果等于高电平脉冲数 CLR EN1 ;P3.2变为低电平INTT00:CJNE A,PWMH2, INTT01CLR EN2 ;P3.3变为低电平INTT01:CJNE A,PWM,INTT02 ;如果等于周期数MOV COUNTER,#01H ;计数器复位SETBEN1 ;置P3.0为高电平SETBEN2INTT02:POP ACC ;出

34、栈POP PSW RETI3.3 遥控子程序遥控器能遥控小车具有前进,后退,左转,右转的功能。遥控状态对应的单片机口的数值表如表3.1所示。 表3.1 对应单片机口数值按键P1.0P1.1P1.2P1.3P1小车状态前100008H小车前进左010004H小车左转弯右001002H小车右转弯后000101H小车倒退不按000000H小车停YAOKONG:MOV A,P1 CJNE A,#00H,K1 ;没有按键按下时小车慢慢停止 STOP1: CLR P2.0 CLR P2.1 SJMP RETUN K1: CJNE A,#08H,K2 ;遥控小车前进 SETB S1 ;电机1正转 SETB

35、S2 ;电机2正转 INC PWMH1 ;直行 JC LP1 INC PWMH2 ;加速 JC LP2 LCALL DELAY SJMP RETUN K2: CJNE A,#04H,K3 ;遥控小车左转 INC PWMH1 JC LP1 DEC PWMH2 JC LP4 LCALL DELAY SJMP RETUNK3: CJNE A,#02H,K4 ;遥控小车右转 INC PWMH2 JC LP2 DEC PWMH1 JC LP3 LCALL DELAY SJMP RETUN K4: CJNE A,#01H,RETUN ;遥控小车倒退 CLR S1 ;电机1反转 CLR S2 ;电机2反转

36、INC PWMH1 JC LP1 INC PWMH2 JC LP2 LCALL DELAY SJMP RETUNLP1: MOV PWMH1,#255 CLR C RET LP2: MOV PWMH2,#255 CLR C RET LP3: MOV PWMH1,#00H CLR C RET LP4: MOV PWMH2,#00H CLR C RET RETUN : RET 3.4 防跌落,碰撞子程序设计本设计的红外传感器有2个,分别安装在小车的前面。每个传感器所能检测的高度距离是3cm。真值表中,“0”代表没有落差,“1”代表有低处落差,当小车检测到落差后,单片机会改变PWM值,控制小车做相应

37、的动作,防止小车跌落。两个微动开关一样,也分别装在小车的左前方和右前方,真值表中,“0”代表没有检测到障碍物,“1”代表检测到障碍物,当小车检测到障碍物的时候,单片机会改变PWM值,用来驱动电机做相应的动作,避开障碍物。表 3.2 单片机执行的动作 左边(P1.6)右边(P1.7)小车0190度左转1090度右转11倒退00遥控 图3.3 避障程序流程图3.5 速度显示程序 图3.4 速度显示流程图 XIANSHI: LCALL CALCULATE ;计算速度 LCALL DISPLAY ;显示 RET 结果分析及结论在硬件的设计和焊接过程中,本着严谨、细心、逐块调试的原则。我采取了先逐个模块单独测试成功再集中焊接的原则。在硬件分块调试的过程中,我发现了如下几个问题:问题一:驱动电路焊接完成后直接给予信号输入端高低电平时,电机并无动作。起始时我还以为是焊点存在问题,用万用表逐点测试后发现并无异常,而且再次焊接检查后电机依旧没有动作。原因及解决办法:仔细研究了L298N的电路原理图,发现原以为不需要对电机运行参数进行测量,于是将相关的SENA与SENB悬空,而实际中,无论需要测量与否,这两个

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号