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

上传人:ba****u 文档编号:166025240 上传时间:2022-10-31 格式:DOCX 页数:40 大小:995.66KB
收藏 版权申诉 举报 下载
无线遥控玩具小车设计与制作_第1页
第1页 / 共40页
无线遥控玩具小车设计与制作_第2页
第2页 / 共40页
无线遥控玩具小车设计与制作_第3页
第3页 / 共40页
资源描述:

《无线遥控玩具小车设计与制作》由会员分享,可在线阅读,更多相关《无线遥控玩具小车设计与制作(40页珍藏版)》请在装配图网上搜索。

1、发明杯”大学生创新大赛作品题 目: 无线遥控玩具小车设计与制作摘要1引言31 方案设计与论证 41.1 直流调速系统 41.2 防碰撞系统51.3 显示系统52 硬件设计52.1 小车系统框图52.2 单片机最小系统设计62.3 电机驱动电路设计72.4 遥控发射接收电路设计92.4.1 无线发送电路 102.4.2 无线接收电路 112.5 检测系统设计112.5.1 速度检测设计 112.5.2 防跌落系统设计 122.5.3 防碰撞系统设计 132.6 显示电路设计132.7 单片机I/O 口的分配142.8 电源设计142.9 小车车体设计143 软件设计 153.1 主程序设计153

2、.2 PWM子程序设计173.3 遥控子程序 183.4 防跌落、碰撞子程序 203.5 显示子程序 214 结果分析及结论 225 谢辞 23236 参考文献 附件 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)采用数码管显示 数码管显示具有高亮的特性,但数码管的驱动电流比较大,要外加驱动电路,会增 加小车的成本,而且占用单片机的1/O 口资源和单片机资源较多,并且此电路要用多位 数码管显示,使电路变的更复杂。(2)采用液晶显示 液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻

10、巧的诸多优点,在袖珍式 仪表和低功耗应用系统中得到越来越广泛的应用,采用液晶能直观的将速度显示给用 户,2 行 16个字的 1602 液晶模块比较常用,而且液晶的显示都已经模块化,我们直接就 可以用。所以我们采用第二中方案更实用方便,用液晶显示。2 硬件设计2.1 小车系统框图 小车主要由信号传感器,信号处理电路,无线发送模块,无线接收模块,单片机小 系统,电机驱动电路,直流电机以及液晶显示电路等组成。小车的系统框图如图 2.1所示。小车控制采用AT89C51单片机,通过控制电机驱动电路来驱动电机的运行。无线接 收模块接单片机,利用无线发送模块遥控器给接收模块发送无线信号,控制小车的运动, 液

11、晶上显示小车的实时速度。当避障传感器或防跌落传感器测得信号时候,单片机能自 己控制电机左转或者右转,避免小车碰撞和跌落。2.2单片机最小系统设计80C51是片内有R0M/EPR0M的单片机,因此,这种芯片构成的最小系统简单、可靠。 80C51单片机最小系统是整个小车的控制核心,负责小车的各种信号的处理计算,控制 小车的运行,就犹如小车的“大脑” 单片机最小系统电路组成如图2.2所示。R1复位R210KC722uPW1P11厶丄丄厶Jnrr?P14fl L5P156P16tvi r/QP178 oREsT9J-OP3U10P31114-QnP32121 Cn1 JTC A13-AP34CC L1

12、4135P3615 -6-qP3717-01-819220P;op 丄工Y111.0592MHzP1.0VCCP1.1P0.0P1.2P0.1P1.3P0.2P1.4P0.3P1.5P0.4P1.6P0.5P1.7P0.6RESTP0.7RXDEA/VPTXDALE/PINT0PSENINT1P2.7T0P2.6P2.5WRP2.4RDP2.3XTAL2P2.2XTAL1P2.1GNDP2.0MCUU3AT89S5159 P0L2碉 P01337 P02456 P03555 P04634 P0573128FHUQ1P068-P079-VCC10KP27日P26唱6P2525P244INPUT2

13、23INPUT122PWM21PWM1S1SW5LED4图2.2 单片机取小系统电路单片机最小系统组成:(1)时钟电路80C51虽然有内部振荡电路,但要形成时钟,必须外部附加电路。80C51单片机的 时钟产生方法有两种。内部时钟方式和外部时钟方式。本设计采用内部时钟方式,利用芯片内部的振荡电路,在 XTAL1、XTAL2 引脚上外 接定时元件,内部的振荡电路便产生自激振荡。本设计采用最常用的内部时钟方式,即 用外接晶体和电容组成的并联谐振回路。振荡晶体可选用 12MHZ 的。电容值无严格要求, 但电容取值对振荡频率输出的稳定性、大小、振荡电路起振速度有少许影响,CXI、CX2 可用 20pF

14、的此片电容。在设计印刷电路板时,晶体和电容应尽可能靠近单片机芯片安装,以减少寄生电容, 更好的保证振荡器稳定和可靠地工作。(2)复位电路复位电路通常采用上电自动复位和按钮复位两种方式。 最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充电来实 现的。只要Vcc的上升时间不超过1ms,就可以实现自动上电复位。时钟频率用12MHZ 时C取22uF,R取1OKQ。除了上电复位外,有时还需要按键手动复位。按键手动复位有 电平方式和脉冲方式两种。其中电平复位是通过RST端经电阻与电源Vcc接通而实现的。(3)单片机下载串口MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的接口

15、电路,使用+5v单 电源供电。MAX232下载串口基本可分三个部分:第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v 和-12v两个电源,提供给RS-232串口电平的需要。第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中 13 脚(R1IN)、12 脚(R10UT)、11 脚(T1IN)、14 脚(T10UT)为第一数据通道。8 脚(R2IN)、9 脚(R20UT)、10 脚(T2IN)、7 脚(T2OUT)为第二数据通道。TTL/CMOS 数据从T1IN、T2IN输入转换成RS-232数据从T10UT、T2OUT送到

16、电脑DP9插头;DP9 插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。第三部分是供电。15脚GND、16脚VCC (+5V)2.3电机驱动电路设计由于单片机输出的电压信号不能直接驱动电机运行,所以单片机必须要通过电机驱 动电路来控制电机的运行。直流电机采用L298N芯片来驱动控制电机正反转和低、高速度的运行。L298N是SGS 公司的产品,内部包含4通道逻辑驱动电路。是一种二相和四相电机的专用驱动器,即 内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,故比较适 合控制该小车类型的电机。L298N内部结构如图2.4所

17、示:图2.4 L298N的内部电路电机驱动电路的设计如图2.5所示:T2VINPVCClTC40uF2IODE D4SlODE单片机MALS(4INPUT274ALSC4UFVSVSSINPUT 1OUTPUT1INPUT 2OUTPUT2ENABLE AINPUT 3OUTPUT3INPUT 4OUTPUT4ENABLE BSENSEAGNDSENSER10352751013TT128T151004L298PWMmPWM16)IODE6匚DIODE8+JVt riv12V图 2.5 电机驱动电路单片机输出的控制信号 INPUT1,INPUT2 通过非门芯片 74LS04 后,接 L298N

18、的四个 端口,电路如图2.5所示,通过变换INPUT1, INPUT2的高低电平就可以控制两个电机的 正反转,这里非门的使用不但减少了单片机I/O 口的使用,而且很容易的就能控制电机 的正反转,使程序也简单很多。L298N的芯片的供电电压为标准的5V,电机驱动的供电 电源为12V。L298N的输出最大电压为46V,电流为2.5A,驱动直流电机已经足够了。因 为L298N内含二个H桥,所以可以同时控制两个直流电机,改变输入6脚和11脚的PWM 脉冲就可以分别调节输出电压,从而分别能控制两个直流电机的转速,互不影响,从而 控制小车的速度,转向。2.4 遥控发射接收电路设计 通过遥控接收电路来手动遥

19、控小车的运行,这就要求遥控接收电路要可靠的发送, 接收,而且外界的干扰对接收电路要小。发射电路发射的无线信号频率要与空间其它的 无线信号频率不一样,避免无线信号相互干扰。所以我们可以采用PT2262/PT2272这一 对无线发射和接受的芯片。PT2262/2272 是台湾普城公司生产的一种 CMOS 工艺制造的低功耗低价位通用编解 码电路,PT2262/2272最多可有12位(A0.A11)三态地址端管脚(悬空,接高电平,接低电 平),任意组合可提供531441地址码,PT2262最多可有6位(D0.D5)数据端管脚,设定的地 址码和数据码从17 脚串行输出,可用于无线遥控发射电路。编码芯片P

20、T2262发出的编码信号由:地址码、数据码、同步码组成一个完整的码字, 解码芯片PT2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与 此同时相应的数据脚也输出高电平,如果发送端一直按住按键,编码芯片也会连续发射。 当发射机没有按键按下时,PT2262不接通电源,其17脚为低电平,所以315MHz的高频发射电路不工作,当有按键按下时,PT2262得电工作,其第17脚输出经调制的串行数据信 号,当17脚为高电平期间315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低 平期间315MHz的高频发射电路停止振荡,所以高频发射电路完全收控于PT2262的17脚输 出的数

21、字信号,从而对高频电路完成幅度键控(ASK调制)相当于调制度为100%的调幅。PT2262 /PT2272 芯片引脚图图2.6PT2262引脚图图2.7 PT2272引脚图2.4.1 无线发送电路无线遥控发射模块是由按键接收电路、遥控指令编码器、高频载波发生器、调制电 路及发射电路等组成,如图2.8所示。在图2.8中,SB1SB4为遥控指令操作键,PT2262为遥控指令编码器,晶体管VT1 和声表面波谐振器GD*315及外围元件一起构成了高频载波发生器与调制电路,L1既是 发射天线,也是振荡电路的一部分。所使用的声表面波谐振器GD*315,具有频率一致 性非常好,工作频率为315MHz,且工作

22、频率的稳定度极高。H1T1图 2.8 无线电遥控发射模块电路PT22623. 3kRS 47 reiopTLl8 7 65432R4-R710k*4无线遥控发射模块的工作过程是:当发射模块没有按键按下时,T2262不接通电源, 其17脚输出低电平,使晶体管VT1截止,所以315MHz高频发射电路不工作。当SB1 SB4中有某个按键按下时,PT2262得电工作,其17脚输出经过编码的串行数据(脉冲) 信号,且当17脚为高电平期间,315MHz高频发射电路起振并发射出等幅高频信号。编 码器PT2262第17脚输出的编码信号是由地址码、数据码、同步码组成的一个完整码字。 如果遥控器上的按键一直按下,

23、则编码器PT2262也会不停地输出脉冲串。当17脚为低 电平期间,315MHz高频发射电路停止振荡。由此可知,高频发射电路完全受控于PT2262 第 17脚输出的数字信号,也就是说,高频电路对PT2262输出的编码信号完成幅度键控 调制(ASK调制),类似于调制度为100%的幅度调制。2.4.2 无线接收电路超外差式接收机具有温度适应性强,接收灵敏度高,工作稳定可靠,抗干扰能力强, 产品一致性好,接收机的本振辐射低,性能指标好,容易通过FCC或者CE等标准的检 测,但是价格较高,在广播电台、电视机等要求较高的场所使用。而超再生式接收机具 有电路简单,成本低廉等优点,在无线电遥控系统中得到了广泛

24、应用。本遥控系统接收 模块采用了超再生接收方式。无线遥控接收模块是由选频放大接收电路、信号放大与波形转换电路、解码芯片 PT2272 等组成,如图 2.9 所示:Vdd+5V ci100UHI IKrLl 04. 7MC12103 R15R14200kRibIS16 15 14FT22T278P1.01.3200kRll10K1UK80C51图2.9 无线接收模块电路在图2.9中,由晶体管VT1和VT2组成了选频放大电路,用于接收遥控发射器发出 的高频信号。由运算放大器LM358及外围元件组成了信号放大与波形转换电路,它把输 入的正弦波信号转换为矩形脉冲后送到解码电路PT2272处理。解码电路

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

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

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

28、*2个字符,该芯片 的正常工作电压为4.5V-5.5V,图2.13是单机片与液晶1602的接口电路。图2.13单机片与液晶的接口电路在使用LCD液晶的时候需要注意的是基本操作时序,LCD液晶显示器基本的操作时表2.2 液晶接口说明编号柠号引脚说明垢号”a 苻方引脚说昭1VSS电源地gD2Data I/O2m电源正极wD3Data I/O3VL液晶显示偏压信号11Data I/O4RS数据/命令选擡端12D5叭I/O5R/Mi卽写隹择端(H/L)UData I/O6E使能信号14D7Data I/O7DOData I/O15BLA背光源正极DIData I/O16BLK背光脈负极序为:(1) 读

29、状态:输入: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=数据,E=高脉冲,输出无。在读写操作的时候还需要注意的是对控制器每次进行读写操作之前,都必须进行读 写检测。1602液晶的接口说明如表2.2所示。2.7单片机I/O 口的分配P0 口 :P0.0PO.7 接液晶的DOD7;P1 口:P1.0P1.3接遥控发射的四个端口;P1.6,P1.7 接防跌落,碰撞电路;P2 口: P2.7,P2.

30、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的直流电压给直流电机的驱动电路模块单独供电,使电机驱动电路与单片机 小系统之间不会通过电源而相互影响,而且可以保证电机的驱动电流足够大。用6V电 池给单片机系统以及检测电路供电,由于单片机的电源电压范围为5V左右,所以可以 在单片机与6V电源之间串接一个IN4007二极管,利用二极管的正向压降,降低0.7V 的电源电压。2.9 小车车体设计可以采用左右两轮分别驱动,后万向轮转向的方

31、案。即左右轮分别用两个转速和力 矩基本完全相同的直流电机进行驱动,车体尾部装一个万向轮。这样,当两个直流电机 转向相反,同时转速相同时就可以实现电动车的原地旋转,由此可以轻松的实现小车原 地90度和180度的转弯。在安装时我们保证两个驱动电机同轴。当小车前进时,左右 两驱动轮与后万向轮形成了三点结构。这种结构使得小车在前进时比较平稳,可以避免 出现后轮过低而使左右两驱动轮驱动力不够的情况。为了防止小车重心的偏移,后万向 轮起支撑作用。对于车架材料的选择,我们经过比较选择了有机玻璃。用有机玻璃做的 车架比塑料车架更加牢固,比铁制小车更轻便,美观。小车的结构图:如图2.14所示3 软件设计提高遥控

32、小车智能控制的可靠性,仅靠硬件抗是不够的,需要借助于软件来实现。 在单片机控制系统中,如能运用好的程序思路,将大大提高控制系统的可靠性,灵活性。 而且可以减少硬件电路的设计,节约成本。在进行微机控制系统设计时,除了系统硬件 设计外,大量的工作就是如何根据每个对象的实际需要设计应用程序。因此,软件设计 在微机控制系统设计中占重要地位。对于本系统,软件也很重要。在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。数据处理 包括:数据的采集、数字滤波、标度变换等。过程控制程序主要是使单片机按一定的方 法进行计算,然后再输出控制对象。为了完成上述任务,在进行软件设计时,通常把整个过程分成若

33、干个部分,每一部 分叫做一个模块。所谓“模块”,实质上就是能完成一个单独的功能,相对独立的程序 段,这种程序设计方法叫模块程序设计法。模块程序设计法的主要优点是:(1)单个模块比起一个完整的程序易编写及调试;(2)模块可以共存,一个模块可以被多个任务在不同条件下调用;(3)模块程序允许设计者分割任务和利用已有程序,为设计者提供方便;(4)利用模块化程序看上去比较清晰,便于读懂;本系统软件采用模块化结构,由主程序、PWM子程序、检测子程序、避障子程序、 显示子程序组成。3.1 主程序设计主程序编写的时候,清楚各个子程序调用的顺序。PWMH1 DATA 30H;电机1高电平脉冲的个数PWMH2 D

34、ATA 31H;电机2高电平脉冲的个数PWM DATA 32H;PWM周期COUNTER DATA 33H;中断计数器S1 BIT P2.3;电机1的输出S2 BIT P2.2;电机2的输出EN1 BIT P2.0;电机1的使能(左)EN2 BIT P2.1ORG 0000HAJMP MAINORG 000BHAJMP INTT0ORG 001BHAJMP INT1;电机2的使能(右)图3.1小车程序流程图程序初始化ORGOO3OHMAIN:MOVRO,#OOMOVCOUNTER, #OOMOVPWM, #15OMOVTMOD,#O2H;定时器0在模式2下工作MOVTLO, #38H;定时器每

35、200us产生一次溢出MOVTHO, #38H;自动重装的值SETBETO;使能定时器0中断SETBEA;使能总中断SETBS2;电机1正转CLRS1;电机2正转SETBTRO;开始计时START: SJMPYAOKONG;遥控子程序SJMPBIZHANG;避障子程序SJMPXIANSHI;显示子程序SJMPSTART;返回主程序END3.2 PWM子程序设计脉冲T保持不变。改变TO的脉冲宽度就可以输出占空比可变的PWM脉冲。PWMT1TO图3.2 PWM示意图COUNTER:MOV COUNTER,#OOMOVPWM,#150MOVTMOD,#02H;定时器0在模式2下工作MOVTL0,#3

36、8H;定时器每200us产生一次溢出MOVTH0,#38H;自动重装的值SETBET0;使能定时器0中断SETBEA;使能总中断SETBS2;电机1正转CLRS1;电机2正转SETBTR0;开始计时INTT0: PUSHPSW;现场保护PUSHACCINCCOUNTER;计数器加1MOVA ,COUNTERCJNEA, PWMH1, INTT00;如果等于高电平脉冲数CLREN1;P3.2变为低电平INTT00:CJNEA,PWMH2, INTT01CLR EN2;P3.3变为低电平INTT01:CJNEA,PWM,INTT02;如果等于周期数MOVCOUNTER,#01H;计数器复位SETB

37、EN1;置P3.0为高电平SETBEN2INTT02:POPACC;出栈POPPSWRETI3.3 遥控子程序遥控器能遥控小车具有前进,后退,左转,右转的功能。遥控状态对应的单片机口 的数值表如表3.1所示。表3.1 对应单片机口数值按键P1.0P1.1P1.2P13P1小车状态前100008H小车前进左010004H小车左转弯右001002H小车右转弯后000101H小车倒退不按000000H小车停CJNE A,#00H,K1STOP1:CLRP2.0CLRP2.1SJMPRETUNK1:CJNEA,#08H,K2SETBS1SETBS2INCPWMH1JCLP1INCPWMH2JCLP2L

38、CALL DELAYSJMPRETUNK2:CJNE A,#04H,K3INCPWMH1JCLP1DECPWMH2JCLP4LCALL DELAYSJMPRETUNK3:CJNE A,#02H,K4INCPWMH2JCLP2DECPWMH1JCLP3YAOKONG:MOV A,P1;没有按键按下时小车慢慢停止;遥控小车前进;电机1正转;电机2正转;直行;加速;遥控小车左转;遥控小车右转LCALL DELAYSJMP RETUNK4: CJNE A,#01H,RETUN;遥控小车倒退CLR S1CLR S2INC PWMH1JC LP1INC PWMH2JC LP2;电机1反转;电机2反转LCA

39、LL DELAYSJMP RETUNLP1:MOVPWMH1,#255CLRCRETLP2:MOVPWMH2,#255CLRCRETLP3:MOVPWMH1,#00HCLRCRETLP4:MOVPWMH2,#00HCLRCRETRETUN: RET3.4防跌落,碰撞子程序设计本设计的红外传感器有2个,分别安装在小车的前面。每个传感器所能检测的高度 距离是3cm。真值表中,“0”代表没有落差,“1”代表有低处落差,当小车检测到落差 后,单片机会改变PWM值,控制小车做相应的动作,防止小车跌落。两个微动开关一样, 也分别装在小车的左前方和右前方,真值表中,“0”代表没有检测到障碍物,“1”代表 检

40、测到障碍物,当小车检测到障碍物的时候,单片机会改变PWM值,用来驱动电机做相 应的动作,避开障碍物。3.5 速度显示程序图3.3 避障程序流程图XIANSHI: LCALL CALCULATE图 3.4 速度显示流程图;计算速度表 3.2 单片机执行的动作左边(P16)右边(P17)小车0190度左转1090度右转11倒退00遥控LCALL DISPLAY ;显示RET结果分析及结论在硬件的设计和焊接过程中,本着严谨、细心、逐块调试的原则。我采取了先逐个 模块单独测试成功再集中焊接的原则。在硬件分块调试的过程中,我发现了如下几个问题: 问题一:驱动电路焊接完成后直接给予信号输入端高低电平时,电

41、机并无动作。起 始时我还以为是焊点存在问题,用万用表逐点测试后发现并无异常,而且再次焊接检查 后电机依旧没有动作。原因及解决办法:仔细研究了 L298N的电路原理图,发现原以为不需要对电机运行 参数进行测量,于是将相关的SENA与SENB悬空,而实际中,无论需要测量与否,这两 个端口都需要直接或间接接地。我们将其接地后,电机即可按照给定信号完成预定动作。在所有的硬件检测完毕后,便开始了软件部分的调试与检测。在程序的检测中,程 序基本的非逻辑性错误可以在用 MedWin 编译时由编译软件直接发现。问题二:程序在理论上是行的,并且利用 MedWin 的单步指令执行行时是对的,但 是下载到单片机程序

42、就乱了,或者有时候根本就没反应,检查程序并不能发现错误。原因及解决办法:编程的实际经验不足,有些时候并没考虑单片机的内部结构原理 以及没很好的考虑实际的问题,理论与实际没结合好。这个问题需要我们多多编程,并 把程序下载到单片机上试一下,一点点的改进不足,增长经验。附件1程序清单PWMH1DATA30H;电机1高电平脉冲的个数PWMH2DATA31H;电机2高电平脉冲的个数PWMDATA32H;PWM周期COUNTER DATA33H;中断计数器S1BITP2.3;电机1的输出S2BITP2.2;电机2的输出EN1BITP2.1;电机1的使能(左)EN2BITP2.0;电机2的使能(右)ORG

43、0000HAJMP MAIN0ORG 000BHAJMP INTT0ORG 0030HMAIN0:MOVR0, #0MOVR6, #200;计数IsMOVR7, #25MAIN:MOVP1, #00HMOVCOUNTER, #00MOVPWM, #250MOVTMOD,#02H;定时器0在模式2下工作MOVTL0, #38H;定时器每200us产生一次溢出MOVTH0, #38H;自动重装的值SETBET0;使能定时器0中断SETBEA;使能总中断SETBTR0;开始计时START:ACALLYAOKONG;遥控子程序ACALLBIZHANG;避障子程序ACALLXIANSHI;显示子程序SJ

44、MPSTART;返回主程序;*7YAOKONG: CJNE A,#00H,K1STOP1: CLR P2.0CLR P2.1SJMP RETUN;* 7K1: ANL A,#0FHCJNE A,#08H,K2SETB S1SETB S2INC PWMH1JC LP1INC PWMH2JC LP2LCALL DELAYSJMP RETUN;* 7K2: CJNE A,#04H,K3INC PWMH1JC LP1DEC PWMH2JC LP4LCALL DELAYSJMP RETUN;* 7K3: CJNE A,#02H,K4INC PWMH2;没有按键按下时小车慢慢停止;小车前进;电机1正转;电

45、机2正转;直行;小车左转;小车右转JC LP2DEC PWMH1JC LP3LCALL DELAYSJMP RETUN;*7RETUN :RETK4:CJNEA,#01H,RETUN;小车倒退CLRS1;电机1反转CLRS2;电机2反转INCPWMH1JCLP1INCPWMH2JCLP2LCALL DELAYSJMPRETUN;*7子程序LP1:MOVPWMH1,#255CLRCRETLP2:MOVPWMH2,#255CLRCRETLP3:MOVPWMH1,#00HCLRCRETLP4:MOVPWMH2,#00HCLRCRET;*微动开关部分BIZHANG: MOV A,P3ANL A,#0F

46、0H;小车倒退;电机1反转;电机2反转;小车左转CJNE A,#30H,K6CLR S1CLR S2MOV PWMH1,#50HMOV PWMH2,#50HLCALL DELAYSJMP RETUNK6: CJNE A,#10H,K7MOV PWMH1,#20HMOV PWMH2,#50HLCALL DELAYMOV PWMH1,#80HMOV PWMH2,#80HLCALL DELAYMOV PWMH1,#50HMOV PWMH2,#20HLCALL DELAYSJMP RETUN;*7K7: CJNE A,#20H,K8 ;小车右转MOV PWMH1,#50HMOV PWMH2,#20HL

47、CALL DELAYMOV PWMH1,#80HMOV PWMH2,#80HLCALL DELAYLCALL DELAYMOV PWMH1,#20HMOV PWMH2,#50HLCALL DELAYxp:SJMP RETUNXP1:SJMP STOPK9:CJNE A,#40H,K10 ;红外传感器,小车左转MOV PWMH1,#20HMOV PWMH2,#50HLCALL DELAYMOV PWMH1,#50HMOV PWMH2,#50HLCALL DELAYLCALL DELAYMOV PWMH1,#50HMOV PWMH2,#20HLCALL DELAYSJMP xp;*7K10:CJN

48、E A,#80H,XP1 ;红外传感器,小车右转MOV PWMH1,#50HMOV PWMH2,#20HLCALL DELAYMOV PWMH1,#50HMOV PWMH2,#50HLCALL DELAYLCALL DELAYMOV PWMH1,#20HMOV PWMH2,#50HLCALL DELAYSJMP xp;显示XIANSHI:LCALL CALCULATE ;计数速度LCALL L2LCALL DISPLAYSJMP LOOPINTT1:CLR TR0MOV 51H,TH1MOV 52H,TL0MOV 50H,#0MOV TH1,#15HMOV TL1,#0A0HSETB TR1R

49、ETIINTT1:MOV TH1,#15HMOV TL1,#0A0HDJNZ 50H,EXITCLR TR0MOV 51H,TH0MOV 52H,TL0MOV 50H,#15MOV TH0,#0MOV TL0,#0SETB TR1EXIT:RETI;*; 计算速度;*DISPLAY:LCALL CALCULATELCALL L2LCALL DISPLAYSJMP LOOPINTT1: CLR TR1;显示;定时60ms;赋初值; 15次完后0.9秒时间到;关闭定时器0;读计数值;重新赋为0,又从0开始计数;启动定时器1;计数速度;显示;定时60ms;赋初值; 15次完后0.9秒时间到;关闭定时

50、器0;读计数值;重新赋为0,又从0开始计数;启动定时器0;将速度的个位和十位拆开MOV 51H,TH1MOV 52H,TL0MOV 50H,#0MOV TH1,#15HMOV TL1,#0A0HSETB TR0RETIINTT1: MOV TH1,#15HMOV TL1,#0A0HDJNZ 50H,EXITCLR TR0MOV 51H,TH0MOV 52H,TL0MOV 50H,#15MOV TH0,#0MOV TL0,#0SETB TR1EXIT: RETI;*7; 计算速度;*7CALCULATE:MOV A,52H ;;MOV B,#2MUL ABMOV B,#10DIV ABMOV R

51、1,AMOV A,52HCLR CSUBB A,R1MOV 55H,AMOV B,#10DIV ABMOV 40H,AMOV 41H,BRET;*中断程序INTT0:PUSH PSWPUSH ACCINC COUNTERMOV A,COUNTERCJNE A,PWMH1,INTT00CLR EN1;现场保护;计数器加1;如果等于高电平脉冲数;P3.2变为低电平INTT00:CJNE A,PWMH2,INTT01CLR EN2;P3.3变为低电平INTT01:CJNE A,PWM,INTT02;如果等于周期数MOV COUNTER,#01H;计数器复位SETB EN1SETB EN2DJNZ R

52、6,INTT02DJNZ R7, FUZHI;置P3.0为高电平INTT02:POP ACCPOP PSWMOV R7,#25;出栈FUZHI:MOV R6,#200RETI;*延时子程序DELAY: MOV R3,#50DL1: MOV R4,#20DL2:MOV R5,#248DJNZ R5,$DJNZ R4,DL2DJNZ R3,DL1RETEND附件 2 硬件电路图vccJTCON2VCC214ALS0474ALS04-0PWM21157PWM1-6VCC12V0uFCDI103IODE2IODE104zx4IODEU2FVSVSSINPUT 1OUTPUTINPUT 2OUTPUTENABLE AINPUT 3OUTPUTINPUT 4

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!