两轮平衡智能小车论文终稿.doc

上传人:小小飞 文档编号:3906080 上传时间:2019-10-10 格式:DOC 页数:30 大小:1.02MB
返回 下载 相关 举报
两轮平衡智能小车论文终稿.doc_第1页
第1页 / 共30页
两轮平衡智能小车论文终稿.doc_第2页
第2页 / 共30页
两轮平衡智能小车论文终稿.doc_第3页
第3页 / 共30页
两轮平衡智能小车论文终稿.doc_第4页
第4页 / 共30页
两轮平衡智能小车论文终稿.doc_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《两轮平衡智能小车论文终稿.doc》由会员分享,可在线阅读,更多相关《两轮平衡智能小车论文终稿.doc(30页珍藏版)》请在三一文库上搜索。

1、该生论文符合要求,同意参加本科学位论文答辩。 指导教师:声明本人郑重声明微型自动两轮小车论文(设计)系本人在xxx老师指导下独立完成,没有抄袭、剽窃他人成果,由此造成的一切后果由本人负责。 学生签名: 摘要本设计采用AT89C52单片机作为简易两轮智能小车的核心控制器件,以及其他相应功能模块实现智能小车的行走、成功避障及语音报警功能。小车避障模块由若干个红外对管组成,通过物体反射红外线的强度变化判断前方有无障碍物以达到避障的功能;电源部分采用多块充电电池供电,其中一路单独为单片机供电,另外一路为电机的驱动等模块供电;电机驱动模块选用LM298N作为电机的驱动芯片,采用PWM波,来控制电机的转速

2、;此外还有语音报警模块,采用ISD1820作为语音报警的主控芯片,实现自动控制行走、避障的及语音报警的功能。关键词:AT89C52;红外线避障;语音报警ABSTRACTThis design uses the simple AT89C52 single chip microcomputer as the core of the smart car devices. Obstacle avoidance module is composed of several infrared pipe, judging by reflecting infrared change in front of th

3、e presence of obstacles in order to achieve obstacle avoidance capabilities, lithium battery power supply module uses a two way power supply, so that we can use them all the way alone to microcontroller, sensors, such as power supply, also provides the voltage for the motor drive power supply. Motor

4、 drover module LM298N chosen as the motor driver chip, using PWM wave ,to control the motor speed, finally realizes the intelligent car walking and successful obstacle avoidance capabilities, voice alarm module adopts ISD1820 as the main chip of voice alarm, realize the obstacle avoidance of alarm f

5、unction.Key words: AT89C52;Infrared obstacle avoidance ;voice alarm目录1 绪论11.1 智能小车的意义和作用11.2 智能小车的现状22 方案设计与论证32.1 系统设计32.2 方案选取32.2.1 主控板模块42.2.2 电机驱动模块52.2.3 红外避障模块62.2.4 电源模块62.2.5 语音报警模块73硬件设计83.1总体设计83.2 单片机最小系统83.3 电源设计83.4 避障设计93.5 电机驱动设计93.6 语音报警设计104 软件设计124.1红外避障框图124.2主程序流程图135 系统调试145.1软

6、件调试145.2 硬件调试145.2.1 小车整体外观145.2.2 小车驱动及主控板155.2.3 小车避障电路155.2.4 小车报警电路166安装与测试176.1 PCB的设计制作与小车的安装及调试176.2小车调试运行情况17结束语18参考文献19致谢20附录21V1 绪论1.1 智能小车的意义和作用 自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、宇航、国防等领域。近年来机器人的智能水平不断提高,并且迅速地改变着人们的生活方式。人们在不断探讨、改造、认识自然的过程中,制造能替代人劳动的机器一直是人类的梦想。随着科学技术的发展,机器人的感觉传感器种类越来越多,其

7、中视觉传感器成为自动行走和驾驶的重要部件。视觉的典型应用领域为自主式智能导航系统,对于视觉的各种技术而言图像处理技术已相当发达,而基于图像的理解技术还很落后,机器视觉需要通过大量的运算也只能识别一些结构化环境简单的目标。视觉传感器的核心器件是摄像管或CCD(Charge-coupled Device, 电荷耦合元件),目前的CCD已能做到自动聚焦。但CCD传感器的价格、体积和使用方式上并不占优势,因此在不要求清晰图像只需要粗略感觉的系统中考虑使用接近觉传感器是一种实用有效的方法。机器人要实现自动导引功能和避障功能就必须要感知导引线和障碍物,感知导引线相当给机器人一个视觉功能。避障控制系统是基于

8、自动导引小车(AVGauto-guide vehicle)系统,基于它的智能小车实现自动识别路线,判断并自动避开障碍,选择正确的行进路线。使用传感器感知路线和障碍并作出判断和相应的执行动作。该智能小车可以作为机器人的典型代表。它可以分为三大组成部分:传感器检测部分、执行部分、CPU(Central Processing Unit,中央处理器)。机器人要实现自动避障功能,还可以扩展循迹等功能,感知导引线和障碍物。可以实现小车自动识别路线,选择正确的行进路线,并检测到障碍物自动躲避。基于上述要求,传感检测部分考虑到小车一般不需要感知清晰的图像,只要求粗略感知即可,所以可以舍弃昂贵的CCD传感器而考

9、虑使用价廉物美的红外反射式传感器来充当。智能小车的执行部分,是由直流电机来充当的,主要控制小车的行进方向和速度。单片机驱动直流电机一般有两种方案:第一,勿需占用单片机资源,直接选择有PWM(Pulse Wavelength Modulation,脉波调制)功能的单片机,这样可以实现精确调速;第二,可以由软件模拟PWM输出调制,需要占用单片机资源,难以精确调速,但单片机型号的选择余地较大。考虑到实际情况,本文选择第二种方案。CPU使用STC89C52单片机,配合软件编程实现。1.2 智能小车的现状现智能小车发展很快,从智能玩具到其它各行业都有实质成果。其基本可实现循迹、避障、检测贴片、寻光入库、

10、自动避障等基本功能,配合高精度三轴加速度传感器与陀螺仪,可以实现小车自动定位和导航。在现代军事领域里搭载GPS全球定位系统的智能小车就是一个全天候作战平台。近几届举办的电子设计大赛智能小车也在向声控系统发展。比较出名的全国大学生飞思卡尔智能小车比赛更是走在前列。我此次的设计主要实现控制小车自动行走及避障这两个功能。2 方案设计与论证2.1 系统设计本设计采用ATMEL公司生产的AT89C52作为小车的主要控制芯片,通过搭建电机驱动模块、语音报警模块、避障模块来实现对小车的控制。AT89C52内含高性能、低功耗的8位微处理器、先进的RISC(reduced instruction set com

11、puter,精简指令集系统)结构、非易失性的程序和数据存储器、( 与IEEE 1149.1 标准兼容)及PWM等丰富的内部资源。通过软件与硬件设计对小车进行控制。并用LM298N作为电机的驱动芯片,驱动电机工作。小车上自带了两块3.7V的动力锂电池。用锂电池给单片机及电机驱动模块供电,而单片机部分和红外避障模块以及语音报警模块供电是通过稳压电路降压到5V。本系统所用的电池组电力比较充沛,一次充满后可以给整个系统提供很长时间的电力,避免了频繁的更换电池,提高了可靠性。2.2 方案选取根据设计要求,确定如下方案:在现有玩具车的基础上,加装一些模块,实现对电动小车的速度和方向的控制和自动行走。由单片

12、机根据所检测的各种信息实现对小车的智能控制。这种方案能实现对自动小车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。智能小车系统主要包括以下模块:电源模块、AT89C52单片机模块、电机驱动模块、红外避障模块和语音报警模块共由五部分组成。整体结构框图如图2.1所示。电源模块充电电池主控板AT89C52电机驱动模块 LM298N报警模块ISD1820避障模块红外对管 图2.1 智能小车系统功能模块框图2.2.1 主控板模块方案一: 选用一片CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)(如EPM7128LC84-15)作

13、为系统的核心部件,实现控制与处理的功能。CPLD具有速度快、编程容易、资源丰富、开发周期短等优点,可利用VHDL(Very-High-Speed Integrated Circuit Hardware Description Language,标准硬件描述语言)语言进行编写开发。但CPLD在控制上较单片机有较大的劣势。同时,CPLD的处理速度非常快,而小车的行进速度不可能太高,那么对系统处理信息的要求也就不会太高,在这一点上,MCU(Micro Control Unit,微控制单元)就已经可以胜任了。若采用该方案,必将在控制上遇到许许多多不必要增加的难题。为此,我们不采用该种方案,进而提出了第

14、二种设想。方案二: 利用cortex系统来控制小车,实现小车的自动行走及避障功能,由于cortex是arm板功能强大,操作起来比较难,而且价格比较贵,从实用性考虑我放弃了该组方案。方案三: 采用AVR系列单片机Atmega128,Atmega128内含高性能、低功耗的AVR 8 位微处理器、先进的RISC结构、非易失性的程序和数据存储器、JTAG接口(与IEEE 1149.1标准兼容)及PWM等丰富的内部资源。通过编写相应程序对小车进行控制。该系统功能、精度和质量都很高,且电路简单,故障率低,可靠性高,成本低廉。AVR单片机具有高速度、高保密性、低功耗等优点,其功能比较强大,但是本设计只为实现

15、智能小车的行走、避障及语音报警功能,用Atmega128作为智能小车的主控芯片可谓大材小用,因此我放弃了该组方案。方案四:采用C51单片机作为整个系统的核心,用其控制行进中的小车,以实现其既定的性能指标。充分分析我们的系统,其关键在于实现小车的自动控制,而在这一点上,单片机就显现出来它的优势控制简单、方便、快捷。这样一来,单片机就可以充分发挥其资源丰富、有较为强大的控制功能及可位寻址操作功能、价格低廉等优点。因此,这种方案是一种较为理想的方案。针对本设计特点多开关量输入的复杂程序控制系统,需要擅长处理多开关量的标准单片机,而不能用精简I/O口和程序存储器的小体积单片机,D/A、A/D功能也不必

16、选用。根据这些分析,我选定了AT89C52单片机作为本设计的主控装置,51单片机具有功能强大的位操作指令,I/O口均可按位寻址,程序空间多达8K,对于本设计也绰绰有余,更可贵的是51单片机价格非常低廉。AT89C52见图3.1单片机系统版在综合考虑了传感器、两部电机的驱动等诸多因素后,我们决定采用一片单片机,充分利用STC89C52单片机的资源。选择了方案四。2.2.2 电机驱动模块方案一: 采用电阻网络或者数字电位器调整电动机的分压,从而达到降速的目的。但是,电阻网络只能实现有级降速;而数字电阻的元器件价格昂贵。最重要的问题是,一般电动机的电阻很小,电流很大,分压不仅降低效率,而且难以实现。

17、方案二: 采用继电器对电动机的开/关进行控制,通过开关的切换对小车的速度进行调整。这个电路的优点是比较简单,但是继电器的响应时间比较慢、机械结构易坏、寿命较短、可靠性不高。方案三:采用功率三极管作为功率放大器的输出控制直流电机。线性型驱动的电路结构和原理简单,加速能力强,采用由达林顿管组成的 H型桥式电路(如图2.2)。用单片机控制达林顿管使之工作在占空比可调的开关状态下,精确调整电动机转速。这种电路由于工作在管子的饱和截止模式下,效率非常高,H型桥式电路保证了简单的实现转速和方向的控制,电子管的开关速度很快,稳定性也极强,是一种广泛采用的 PWM调速技术。现市面上有很多此种芯片,我选用了LM

18、298N。由于电力电子器件只工作在开关状态,主电路损耗较小,装置效率较高。根据以上综合比较,以及本设计中受控电机的容量和直流电机调速的发展方向,本设计采用了H型单极型可逆PWM变换器件LM298N进行电机调速,选择方案三。图2.2 H桥式电路2.2.3 红外避障模块方案一:利用白光发光二极管与光敏二极管构成检测电路。此方案电路简单,原器件价格低廉,但此方案的缺点在于其他环境的光源对光敏二极管的工作产生很大的干扰,一旦环境发生变化,很可能造成误判或漏判。如果采用超高亮发光管,可以降低干扰,但同时增加了功率损耗。方案二:采用一只红外对管置于小车中央。其安装简易,也可以检测到障碍物的存在,但难以确定

19、小车在水平方向上是否会与障碍物相撞,也不易让小车做出精确的转向反应。方案三:红外避障传感器,它是一种集发射与接收于一体的光电传感器。检测距离可以根据要求进行调节。该传感器具有探测距离远、受可见光干扰小、价格便宜、易于装配、使用方便等特点。红外对管如图2.3所示。相比之下,未经调制的检测方案电路简单,对于小车的应用已经能够胜任,采取一些其他的防干扰手段即可,就能够达到很好的检测效果。综合考虑,选择方案三。图2.3 红外避障用对管2.2.4 电源模块方案一:所有模块采用单一12V电源。通过稳压集成块降压供电,电路结构简单,方便灵活,减小了车载质量和摩擦阻力。但是电机启动瞬间电流很大,而且PWM驱动

20、的电机电流波动较大,会造成电压不稳定、有毛刺干扰主控模块等部分造成性能劣化,而且78XX系列稳压块效率不高,损耗过多。不适用于要求电源稳定的CPU,严重时可能造成系统掉电。方案二:单片机必须与大电流器件分开供电,避免大电流器件对单片机造成干扰,采用两路供电,这样可以使用其中一路单独为单片机供电,另外一路提供电压为电机的驱动等模块供电。小车上采用了6节共8V的充电电池组,可以用来给单片机提供电力。本系统所用的电池组电力比较充沛,一次充满后可以给整个系统提供很长时间的电力,避免了频繁的更换电池,提高了可靠性。因此电源模块本设计采用方案二。2.2.5 语音报警模块方案一: ISD4003系列工作电压

21、3V,单片录放语音时间4至8分钟,音质好、适用于移动电话机及其他便携式电子产品中。芯片采用CMOS(Complementary Metal Oxide Semiconductor,互补金属氧化物)技术,内含振荡器、防混清滤波器、平滑滤波器、自动静噪、音频放大器及高密度多电平闪烁存贮阵列。芯片高级计是基于所有操作必须由微控制器控制,操作命令通过串行通信接口(SPI(Serial Peripheral interface,串行外围设备接口)或Micro wire)送入。芯片采用多电平直接模拟量存贮技术,每个采样值直接存贮在片内的闪烁存贮器中,因此能够非常真实、自然的再现语音,避免了一般固体录音电路

22、固置化和压缩造成的量化噪声和金属声。采样频率可为4.0,5.3,6.4,8.0KHz,频率越低,录放时间越长,而音质则有所下降,片内信息存于闪烁存贮器中,可在断电情况下保存100年(典型值),反复录音10万次。虽然ISD4003有诸多优点,但是考虑到小车只需要实现它简单的录放功能即可,采用ISD4003就显得大材小用了,因此反放弃了该组方案。方案二:单片8-20秒单段语音录放电路ISD1820,采用CMOS技术,内含振荡器,话筒前置放大,自动增益控制,防混淆滤波器,扬声器驱动及FLASH阵列。 可以实现语言的录播。其电路简单,可控性高,能够满足本设计的需要。ISD1820如图2.4所示。综合考

23、虑选择了方案一作为智能小车的语音报警。图2.4 ISD18203硬件设计3.1总体设计智能小车采用直流电机驱动,左右两边各用一个电机驱动,控制两个轮子的转速从而达到控制转向的目的。将红外光电对管分别装在车体下的左上和右上角。当车身的左前和右前检测到前方有障碍物时,主控芯片控制电机停止,并且使小车向左进行绕行,当车身左上和右上同时检测到障碍物时,主控芯片控制电机停止,并且使小车向右转弯,进行绕行。主控芯片控制左轮电机为负的PWM波,车向左修正;给右轮电机为正的PWM波,车向左修正。在小车遇到障碍物进行绕行时输出语音报警。3.2 单片机最小系统单片机是小车的控制中心,单片机最小系统的合理设计是小车

24、平稳运行的前提,本系统采用AT89C52最小系统作为主控系统。本模块主要是对采集信号进行分析,同时给出PWM波控制电机速度,起停,以及再检测到障碍报警等作用。图3.1 单片机系统板 3.3 电源设计电源模块为系统其它各个模块提供所需要的电源,设计中,除了要考虑到电压范围和电流容量等基本参数之外,还要在电源转换效率、降低噪声、防止干扰和电路简单等方面进行优化。可靠的电源方案是整个硬件电路稳定可靠运行的基础。为此,采用两路供电,这样避免大电流器件对单片机造成干扰。3.4 避障设计避障模块完成的是检测障碍物并绕过障碍物的功能,其主要采用多个红外光电管,红外光电管分为两部分,一部分为无色透明类似于LE

25、D的红外发射部分,另外一部分为黑色的红外接收部分。图3.1为红外检测的基本电路图,图中R1为限流电阻,R2、R3为分压电阻,LM324为电压比较器,为了保证在输出高电平时有5V左右的高电平输出。只有多个红外光电管并联才能够起到良好的检测效果,在实际应用共使用2组红外避障。红外光电对管有效的避免了可见光的干扰。具有探测距离远、受可见光干扰小、价格便宜、易于装备、使用方便等特点,可以广泛用于机器人避障,流水线计件等众多场合。红外避障电路原理图如图3.1所示:图3.1单路红外避障电路原理图3.5 电机驱动设计由于电力电子器件只工作在开关状态,主电路损耗较小,装置效率较高。根据以上综合比较,以及本设计

26、中受控电机的容量和直流电机调速的发展方向,本设计采用了H型单极型可逆PWM变换器进行调速。H桥式驱动电路,LM298N内部集成了H桥式驱动电路,从而可以采用LM298N电路来驱动电机。通过单片机给予LM298N电路PWM信号来控制小车的速度,起停。LM298N是ST公司生产的一种高电压、大电流电机驱动芯片。工作电压高,输出电流大;内含两个H桥的高电压大电流全桥式驱动器;可以用来驱动直流电动机和步进电动机、继电器线圈等感性负载;采用标准逻辑电平信号控制;具有两个使能控制端。其引脚图如3.2所示,电机驱动电路原理图如图3.3所示:图3.2 LM298N引脚图图3.3 LM298N电机驱动电路 3.

27、6 语音报警设计 单片8-20秒单段语音录放电路ISD1820,采用CMOS技术,内含振荡器,话筒前置放大,自动增益控制,防混淆滤波器,扬声器驱动及FLASH阵列。 可以实现语言的录播。其电路简单,可控性高,能够满足本设计的需要。语音报警原理图如图3.4所示:图3.4 语音报警原理图4 软件设计在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。因此,软件设计在微机控制系统设计中占重要地位。对于智能小车系统,软件系统更为重要。4.1红外避障框图红外避障实现的是检测到小车前方的障碍物,并且进行绕行,同时报警。首先,当小车前进的时候,一边前进一边

28、检测前方是否有障碍物,若无障碍物则前进,若有障碍物则小车从右边绕行。当小车左前和右前都检测到有障碍物而无法前行时,则说明小车遇到墙壁或者比较大的障碍物,则小车调整方向向左转弯,直至检测到前方无障碍物且可前进时为止,实现小车的正常行走。红外避障流程见下图。开始停止语音报警向左转弯是否有障碍物? Y前行 N结束 4.2主程序流程图 本设计实现的是小车的自动行走及自动避障功能,在避障的同时能够实现语音的报警。首先,小车开始前进,一边前进一边检测前方是否有障碍物,若无障碍物则前进,若有障碍物则小车进行避障(上述),同时进行语音的输出,实现报警功能。再次,检测小车是否完全绕过障碍物,若已完全绕过障碍物则

29、小车前进,继续检测是否有障碍物,若未完全绕过障碍物则小车继续进行绕行。整体程序流程见下图。开始 前行 是否有障碍物? N Y语音报警 绕过障碍物继续前行 N是否绕过障碍物? Y前行 结束5 系统调试5.1软件调试 通过程序编写,使用AT89C52,产生PWM波,使用Proteus软件进行仿真,波形如下图所示:图5.1 PWM波形图5.2 硬件调试5.2.1 小车整体外观对于小车的组装也有很多种方法,从各方面因素考虑,最终小车的整体外观如图5.2.1所示。 图5.2.1 自动小车整体外观5.2.2 小车驱动及主控板对于小车的驱动,驱动电路板制作好后要对电路板进行检测及调试,开始时驱动电路板并未工

30、作,光电耦合器两端的电压没有明显变化,所以电机就不转,但是经过一番思考之后,把输入端的电阻从1K换为300欧姆,光电耦合器两边的电压就有了明显的差异,此时电机才转。实现了小车电机的驱动。驱动电路板见图5.2.2所示。图5.2.2 自动小车电机驱动硬件电路5.2.3 小车避障电路 对于小车的避障电路,方案是可行的,在电路板做出之后进行硬件测试及调试,接通电源之后,红外对管的避障效果不是很好,反应不是很灵敏,因此调节滑动变阻器,来调节红外对管检测障碍物的灵敏程度。实现了自动小车的红外避障。红外避障电路板见图5.2.3所示。图5.2.3 自动小车红外避障硬件电路5.2.4 小车报警电路对于语音报警电

31、路,采用单片8-20秒单段语音录放电路ISD1820,方案是可行的。ISD1820采用CMOS技术,内含振荡器,话筒前置放大,自动增益控制,防混淆滤波器,扬声器驱动及FLASH阵列。 可以实现语言的录播。语音报警电路板图如图5.2.4所示: 图5.2.4 自动小车语音报警硬件电路 6安装与测试6.1 PCB的设计制作与小车的安装及调试采用DXP2009绘制原理图与其PCB(Printed circuit board,印刷电路板)板,布线的过程中必须注意焊盘的大小与铜线的宽度。我选取的焊盘内径为0.8mm,外径2mm;铜线宽1mm。烙铁的温度调到260度左右,避免把元器件焊坏。从做板的情况来看基

32、本达到制作的要求。用铜柱将驱动板和红外避障板固定在主控板上,红外光电对管安装在车头,电源安装在车底,电机安装在一个小黑盒子里放在电池上面,主控板放在电机上。将语音报警电路放在车尾。通过改变红外避障板滑动变阻器的大小来调试红外对管的灵敏度,通过改变延时程序来改变速度的大小。6.2小车调试运行情况小车运行次数成功前进次数成功避障次数111221332442553表6.2小车运行次数结束语 整个系统的设计以单片机为核心,利用了多种传感器,将软件和硬件相结合。本系统能实现如下功能:(1)能够自动行驶,实现正常的前进。(2)当小车探测到前进前方的障碍物时,可以自动报警调整,躲避障碍物,从无障碍区通过。小

33、车通过障碍区后,能够自动行驶。(3)从运行情况来看避障的效果不是很好,我认为是由于小车的速度不好控制,车体自身不能够达到很好的平衡效果。这也是我这次设计最大的误区。我相信如果实验条件和时间的允许下我肯定能解决这一问题。 通过本次设计我掌握了很多以前不熟练的东西,认识了很多以前不熟悉得东西,使我在人生上又进了一步。也认识到很多的不足。参考文献1何立民,单片机应用系统设计,北京:航天航空大学出版社M,2009,25,4650.2李广弟,单片机基础,北京:北京航空航天大学出版社M,2001,5664.3何希才,新型实用电子电路400例,电子工业出版社M,2000年,6065.4赵负图,传感器集成电路

34、手册,第一版,化学工业出版社M,2004,590591.5陈伯时,电力拖动自动控制系统(第二版)M,北京:机械工业出版社,2000.6,127130.6张毅刚,彭喜元,新编MCS-51单片机应用设计(第一版)M,哈尔滨工业大学出版社,2003,2527,411417.7郭惠,吴迅 .单片机C语言程序设计完全自学手册M.电子工业出版社,2008.10:1-200.8王东锋,王会良,董冠强 . 单片机C语言应用100例M. 电子工业出版社,2009.3:145-300.9韩毅,杨天. 基于HCS12单片机的智能寻迹模型车的设计与实现J.学术期刊,2008,29(18):1535-1955.10 王

35、晓明. 电动机的单片机控制J. 学术期刊,2002,13(15):1322-1755.11雷思孝,李伯成,雷向莉单片机原理及实用技术M西安:西安电子科技大学出版社,200415罗亚非凌阳16位单片机应用基础M北京:北京航空航天大学出版社,200316吴建平,殷战国,曹思榕,等红外反射式传感器在自主式寻迹机器人导航中的应用J中国测试技术,2004,30(6):2l一2317沈猛,徐德民,李俊,等轮式移动机器人组合导航方法及试验研究J计算机仿真,2005,22(7):8587,15218王洪瑞,方一鸣,路宏广,等光电脉冲编码器在并联机器人位移检测中的应用J工业仪表与自动化装置,l994(6):35

36、3719本书编写组编最新国外线性器件手册(下)M南昌:江西科学技术出版社,199820Yamato I , et al 1 New conversion system for UPS using high fre2quency linkJ 1 IEEE PESC ,1988 :210-320.21Yamato I , et al 1 High frequency link DC/ AC converter for UPSwith a new voltage clamperJ 1IEEE PESC ,1990 :52-105.致谢本设计能够顺利完成,还承蒙李老师以及身边的很多同学的指导和帮助。在

37、设计过程中,李老师给予了悉心的指导,最重要的是给了我解决问题的思路和方法,并且在设计环境和器材方面给予了大力的帮助和支持,在此,我对李老师表示最真挚的感谢!同时感谢所有帮助过我的同学!感谢评阅老师百忙之中抽出时间对本论文进行了评阅!附录#include#include #define uint unsigned int#define uchar unsigned charuchar temp;sbit P10=P10;/红外壁障传感器左前有测得信号 低电平有效sbit P11=P11;/红外壁障传感器右前有测得信号/sbit P12=P12;/红外壁障传感器中有测得信号/sbit P13=P1

38、3;/红外壁障传感器次右有测得信号/sbit P14=P14;/红外壁障传感器最右有测得信号sbit P12=P12; /语音报警触发端口有测得信号sbit en1=P30;/ L298的Enable Asbit en2=P31;/ L298的Enable Bsbit s1=P32;/单片机输出到LM298N控制电机左后退sbit s2=P33;/单片机输出到LM298N控制电机左前进sbit s3=P34;/单片机输出到LM298N控制电机右后退sbit s4=P35;/单片机输出到LM298N控制电机右前进uchar t=0; /* 中断计数器 */ uchar m1=0; /* 电机1速

39、度值 */ uchar m2=0; /* 电机2速度值 */ uchar tmp1,tmp2; /* 电机当前速度值 */ /延时函数void delayms(uint xms) uint i,j; for(i=xms;i0;i-) /i=xms即延时约xms毫秒 for(j=200;j0;j-);void init() TMOD=0x02; /* 设定T0的工作模式为2 */ TH0=0x9c; /* 装入定时器的初值 */ TL0=0x9c; EA=1; /* 开中断 */ ET0=1; /* 定时器0允许中断 */ TR0=1; /* 启动定时器0 */ P1=0xff; P0=0;/*

40、 电机控制函数 index-电机号(1,2); speed-电机速度(-100100) */ void motor(uchar index, int speed) if(speed=-100 & speed0) /* 速度值为正则正转 */ s1=0; s2=1; if(speed0) s3=0; s4=1; if(speed0) s3=1; s4=0; void timer0() interrupt 1 /* T0中断服务程序 */ if(t=0) /* 1个PWM周期完成后才会接受新数值 */ tmp1=m1; tmp2=m2; if(ttmp1) en1=1; else en1=0; /* 产生电机1的PWM信号 */ if(t=50) t=0; /* 1个PWM信号由100次中断产生 */ void main() init(); while(1) if(P10=1&P11=1) / 没有障碍 motor(1,100); motor(2,100); if(P10=0|P11=0) / 发现障碍 motor(1,0); motor(2,0);P12=0;delayms(200); /调用延时函数,语音输出报警while

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1