智能扫雷小车系统的设计与实现.doc

上传人:laozhun 文档编号:2390862 上传时间:2023-02-17 格式:DOC 页数:33 大小:680.50KB
返回 下载 相关 举报
智能扫雷小车系统的设计与实现.doc_第1页
第1页 / 共33页
智能扫雷小车系统的设计与实现.doc_第2页
第2页 / 共33页
智能扫雷小车系统的设计与实现.doc_第3页
第3页 / 共33页
智能扫雷小车系统的设计与实现.doc_第4页
第4页 / 共33页
智能扫雷小车系统的设计与实现.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《智能扫雷小车系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《智能扫雷小车系统的设计与实现.doc(33页珍藏版)》请在三一办公上搜索。

1、摘 要目前机器人探雷扫雷的应用才刚刚开始,由于用机器人探雷及扫雷的速度快,特别是可以避免士兵伤亡这一最大的优点,使它具有光明的前景。针对这一情况,本毕业设计就对智能扫雷小车进行了研究。本毕业设计主要介绍了一种基于PHILIPS公司51系列单片机P89V51RD2的智能扫雷小车控制系统。该系统采用接近开关,巧妙地将模拟量转换为开关量,简化了硬件电路;充分利用了P89V51RD2的PWM功能、捕获功能等,使系统更智能化。本论文简介智能扫雷的产生和发展过程以及国内外最新研究成果;讨论了实现智能扫雷小车系统的所涉及到的相关技术;给出了实现智能小车系统的硬件电路设计方案和软件设计方案。系统包含按键输入模

2、块、红外传感器寻迹模块、显示模块、报警模块、CPU处理模块、扫雷模块、LED状态指示灯模块、电机驱动模块。经过调试,本系统实现了快速扫雷;遇雷报警,记录地雷个数;寻迹;友好的人机界面等功能。该研究有助于了解智能小车及智能扫雷机器人的研究和应用。关键词: 智能控制;P89V51RD2;PWM;红外传感器ABSTRACTAt present the robot mine detection mine clearances application only then just started, because is quick with the robot mine detection and th

3、e mine clearance speed, specially may avoid soldier casualties this biggest merit, enables it to have the bright prospect. In view of this situation, this graduation project has conducted the research to the intelligent mine clearance car.This graduation project mainly introduced one kind based on P

4、HILIPS Corporation 51 series monolithic integrated circuit P89V51RD2 intelligent mine clearance car control system. This system uses the proximity switch, simulates the quantity to transform ingeniously into the switch quantity, simplified the hardware circuit; Has used the P89V51RD2 PWM function, t

5、he capture function fully and so on, causes the system more intellectualized. Present paper synopsis intelligence mine clearance production and developing process as well as domestic and foreign newest research results; Discussed has realized the correlation technique which the intelligent mine clea

6、rance car system involved; Gave has realized the intelligent car systems hardware circuit design proposal and the software design plan. The system contains the pressed key load module, the infrared sensor to seek the mark module, the display module, the warning module, the CPU processing module, the

7、 mine clearance module, the LED condition indicating lamp module, the motor-driven module.After the debugging, this system has realized the fast mine clearance; Meets the thunder warning, records the land mine integer; Seeks the mark; Functions and so on friendly man-machine contact surface. This re

8、search is helpful to the understanding intelligence car and the intelligent mine clearance robots research and the application.Key words:intelligent control;P89V51RD2;PWM;infrared sensor 目 录1 引言12 概述32.1 智能扫雷小车系统概述32.2 实现系统的关键技术32.3 具体设计要求43 总体设计53.1 系统总体设计53.2 方案设计与论证53.2.1 电机选择53.2.2 控制系统比较53.2.3

9、寻迹方案63.2.4 显示模块74 系统硬件电路设计84.1 电源电路设计84.2 单片机电路设计84.2.1 单片机主体电路设计84.2.2 晶振电路设计104.2.3 复位电路设计114.3 LED状态显示电路设计114.4 小车驱动控制电路设计124.5 小车控制电路设计134.6 寻迹电路设计134.7 报警电路设计134.8 扫雷电路设计144.9 显示电路设计144.10 按键电路设计155 系统软件设计165.1 主处理模块程序设计165.2 黑线检测算法和程序设计175.2.1 黑线检测算法175.2.2 寻线模块子程序设计175.3 输入模块子程序设计185.4 显示模块子程

10、序设计195.4.1 LED状态指示灯模块子程序设计195.4.2 LCD显示模块子程序设计195.5 报警模块子程序设计215.6 扫雷模块子程序设计215.7 电机驱动模块子程序设计226 制作与调试236.1 硬件电路的布线与焊接236.1.1 总体特点236.1.2 电路划分236.1.3 焊接236.2 调试236.2.1 系统硬件调试236.2.2 系统软件调试237 结论25致谢26参考文献27附录28附录1 系统电路图28附录2 系统电源电路图28附录3 H桥电路PCB板291 引言据联合国儿童基金会1996年的报告估计,在全世界64个国家中埋有700多种1.1亿颗地雷,例如在

11、海湾战争中,伊拉克共埋设了5001000万颗各种地雷;阿富汗有1000万颗;柬埔寨有500800万颗;安哥拉900万颗;莫桑比克200300万颗,波黑有300500万颗。这么多地雷对于平民百姓是非常危险的,更不要说许多地方还在不断埋下新的地雷。现在世界上每月有2000人死于地雷爆炸,每年约有22.6万人因触雷而丧生,地雷已使25万人致残。而且每清除一颗30美元的地雷,需要花费3001000美元,这么多的地雷以现在的投资与技术需要1400年才能清除完毕。在阿富汗,只靠人工扫雷,清除全国的地雷需要4300年。而且扫雷还会造成士兵的伤亡。因此扫雷成了各国紧迫而又长期的任务。机器人扫雷之所以受到人们的

12、重视,不仅因为它扫雷速度快,更重要的是它可以避免人员的伤亡。扫雷机器人大体上可分成两类,一类重点探测及扫除反坦克地雷,另一类探测及扫除杀伤地雷。前者多用现有军用车辆的底盘改造而成,体积较大;后者多为新研制的小型车辆。当然,有的机器人也可同时扫除两种地雷。美国的豹式扫雷车,是将M60坦克的炮塔去掉,在底盘上加上一个Omnitech公司研制的标准机器人系统,车前1.8米处装上10吨重的扫雷钢滚制成的,主要用来清扫反坦克地雷。作战时它可在装甲部队前面开道,接近敌人雷区时,操作人员遥控机器人发射火箭弹引爆地雷,然后扫雷车通过雷区,用扫雷滚子压爆那些未被引爆的地雷,开辟出一条宽8米、长90米的通道,并用

13、发光棒将通道标记出来。该车装有两台红外摄像机,士兵可由远处的控制车上看到地雷的热信号。在波黑的扫雷行动中,豹式扫雷车在两天之内扫除了71颗杀伤地雷。美国还正在研制遥控的豹II扫雷车, 2000年7月已派一辆豹II到科索沃参加紧急扫雷行动。德国FFG车辆制造公司研制出了Minebreaker 2000机器人扫雷车,该车采用豹I主战坦克的底盘,车前装有3.6米宽的液压驱动的犁地用的滚子,滚上装有重型碳化钨齿,可用来清除地表的植被,割断地雷的引爆索,挖出及摧毁埋在地下的弹药。针对不同的土质备有各种滚子,更换损坏的齿只需要几分钟时间。车底带有配重以防工作时车辆摆动。底盘外增加了钢板及衬垫材料,使它可以

14、经受住大多数类型地雷的爆炸而不会有严重损坏。该机器人在6小时内的扫雷面积相当于30个有经验的工兵同期内扫雷面积的1520倍。一般专门扫除杀伤地雷的机器人体积都比较小,美国新研制的Mini-Flail小型遥控扫雷机器人,就是这种机器人。它是在Bobcat推土机的基础上改装的,采用一个装有链条的转筒扫雷,链条炸坏后很容易更换。有4辆这种机器人在波黑已经无故障地工作了几百个小时,获得军方的一致好评。1999年9月美军又派出三辆Mini-Flail前往科索沃的道路上扫雷,加拿大住科索沃的维和部队也装备了两辆这种扫雷车。这种机器人是正式列入美国陆军编制的第一种地面军用机器人。2002年美军将装备一种名叫

15、地雷猎手及杀手(Mine Hunter/Killer)的机器人,其目标是将探雷及扫雷装置集成到同一辆标准的战术车辆上。该车可在道路及开阔地上探测750多种地雷,可在60米的距离上探测直径在1238厘米的地雷,而现装备的最大探测距离只有5米。该车只需几秒钟就可确定地雷的位置,定位精度为25厘米。一旦探测到地雷,30秒内就可销毁它,扫雷成功率在90。扫雷宽度2.74米。机器人可在沙地、碎石地、粘土及有机土等各种地面上作业。机器人扫雷的主要困难在探雷,首先要找到地雷在哪里。今天已采用的或正在研制中的探雷技术主要有:金属探测器;地面穿透雷达及红外传感器等。用这些方法探雷往往虚警率过高,探测率很低。现在

16、没有哪一个单个传感器可以满足探雷的要求,于是人们就把多种传感器结合起来,以求得到更好的效果。由于探雷所需的数据来自不同的传感器,要做到准确判断,就需要复杂的传感器融合技术,而传感器融合所需要的计算量特别大。今天,训练有素的军犬是能够对地雷特别是非金属地雷定位、而几乎没有虚警率的唯一的“技术”。狗的鼻子可以嗅出地雷中炸药辐射出的浓度很低的蒸汽,但是用狗探雷时它集中注意力的时间短,很快就会疲劳。狗可以相当有效地嗅出机场及其它面积有限的建筑物中的炸药,但用它探测大范围内的地雷显然是不足。为了从根本上解决探雷问题,1997年美国启动了一项为期3年的基础研究计划,打算利用仿生的方法开发出各种探雷技术,它

17、的名字叫“电子狗鼻”计划。它利用与狗同样的闻炸药气味的方法探测地雷中的炸药,这改变了以往探测地雷物理特征的基本原理。其中的一种方法叫核四级矩共振技术,这是一种非常有前途的机器人探雷技术。核四级矩共振系统的原理是:它不是直接模仿狗闻地雷中氮气的气味,而是利用无线电频率的能量穿透地雷内部的炸药,激发炸药中的氮原子引起它的共振,产生一个能量波。测定这个能量波并经计算机处理后,就可确定是否有炸药存在。这种探测器比现有探测器的精度高得多,还可识别地雷中炸药的类型,而且虚警率很低。核四级矩系统的能耗很大,但把它装在车上,它的体积、重量和动力都不成问题,价格也比较便宜,因而特别适合用于机器人探雷。美国陆军打

18、算把它用在自己新的探雷车上,该车正处于工程制造阶段。目前机器人探雷扫雷的应用才刚刚开始,由于用机器人探雷及扫雷的速度快,特别是可以避免士兵伤亡这一最大的优点,使它具有光明的前景。2 概述2.1 智能扫雷小车系统概述智能扫雷小车系统的工作原理是利用智能机器人代替人工扫雷。该系统包括地雷、轨迹检测,用户界面,状态指示,电机驱动,报警及中央处理单元模块。如图2-1所示。当检测到地雷时,经中央处理器处理报警器报警,记录地雷个数并由显示器显示地雷个数。轨迹传感器检测轨迹,经中央处理器处理驱动电机使小车按轨迹前进。图2-1 智能扫雷小车系统原理图2.2 实现系统的关键技术本文所要做的是智能扫雷小车系统的设

19、计与实现。这一课题的相关技术包括:扫雷技术、传感器技术以及控制体系结构等。(1)传感器技术感知技术就是用传感器信息来描述现实世界的特征。它包括了传感器技术、感知系统架构、传感器信息处理、环境地图(world map)建模等内容。感知系统是为实现车辆自主行驶服务的。导航方法不同,感知系统任务也会有所不同。感知系统的任务一般包括:道路跟随;路标侦察及识别;避障;轨迹侦察及跟踪等等。机器人感知系统常用的传感器包括:机器视觉、探针式、电容式、电感式、力学传感器、雷达传感器、光电传感器等。其中较常用的是激光雷达、红外线和超声波传感器。超声传感器具有信息特性直接、处理简单、价格低廉等优点。但是,超声传感器

20、的探测波束角度较大,方向性差,空间分辨率低。单一超声波传感器稳定性不理想,只能提供场景中尺度较大的物体区间距离,不能描述目标图像边缘和形状细节信息。在实际应用中,往往采用其他传感器来补偿,或采用多传感器融合技术。非成像的红外传感器的情况与超声波传感器相仿。它一般由一个发射源发射红外光,用若干个光检测器接收反射光能量,比较分析各自接收光能量的差异,可以得到物体的距离信息。红外探测可昼夜工作,由于其探测视角小,方向性强一些,测量精度也有所提高,但受环境如物体的表面特性影响较大。由于现有传感器普遍存在着有效探测范围小、数据可靠性低等缺点,在实际应用中往往使用多种传感器共同工作,并采用传感器融合技术对

21、检测数据进行分析、综合和平衡,利用数据间的冗余和互补特性进行容错处理,以求得到所需要的环境特性。(3)控制体系结构移动机器人控制体系结构是指实施控制的策略与方法。目前采用的控制系统结构主要有功能式结构、行为式结构以及混合式结构。(4)扫雷技术今天已采用的或正在研制中的探雷技术主要有:金属探测器;地面穿透雷达及红外传感器等。2.3 具体设计要求(1)快速扫雷;(2)遇雷报警,记录地雷个数;(3)具有寻迹功能;(4)状态指示功能;(5)友好的人机界面。3 总体设计3.1 系统总体设计系统的总体实现框图如图3-1所示。图3-1 系统的总体实现框图本系统采用探雷传感器、红外传感、舵机、电机和单片机构成

22、环路系统。其中红外传感器将采集的导航信息反馈到单片机从而通过舵机控制小车的方向,并用单片机控制小车的速度。探雷传感器采集铁块的信息到到单片机,报警模块报警。同时用指示灯标示小车的状态,通过按键控制单片机。3.2 方案设计与论证3.2.1 电机选择本题的核心是电机控制,选择什么样的电机对整个系统的设计方案至关重要。方案一:步进电机步进电机的优点是步数可以精确控制,但是启动频率过高或负载过大易出现失步或堵转的现象,造成工作不够稳定,并且在慢速转动时速度不够平缓。方案二:直流减速电机不仅具有直流电机的优点,而且控制精确,在爬坡时具有比较大的力矩并且加速减速平缓,能够满足本系统设计的要求。基于上述分析

23、,本设计选择方案二。3.2.2 控制系统比较(1)、最小系统选择方案一:采用传统的89C51作为小车的控制核心。51单片机具有价格低廉、使用简单等特点,但其功能比较单一,控制过程相对繁琐,不适合控制减速电机。方案二:P89V51RD2是PHILIPS公司推出的51系列的新型微控制器,它包含64KB Flash和1024字节的数据RAM,支持并行和串行的在系统编程(ISP)和在应用中编程(IAP),具有SPI和增强型UART,包含一个PCA(可编程计数器阵列),具有PWM和捕获/比较功能。该芯片有一个最突出的特点就是带有自调试功能 (SoftICE),该功能使得芯片可以在Keil Vision2

24、编程环境下用Keil Monitor-51 Driver直接调试程序。可以满足本系统的设计要求。经过对比分析,选用方案二。(2)、电机速度控制为了实现电机调速,根据减速电机转速与其端电压成正比的原理,我们采用电压调速的设计方案:方案一:采用计数器、比较器、移位寄存器实现PWM调速。实现方案较为简单。但其元件使用多,电路复杂,成本比较高。方案二:直接采用P89V51RD2内置的PWM功能,实现PWM调速的功能。该方案容易实现,不需外加电路,减少了设计成本。考虑了电路性价比、集成度等方面问题,决定采用方案二。(3)、电机驱动控制方案一:采用集成电机驱动芯片,如L298N等。其优点是集成度高,电路简

25、单,控制方便可靠。但驱动的电流均受到一定的限制,并且反应不够灵敏。方案二:采用大功率MOS管组成H桥电路。优点是直接利用电压控制,反应延迟短,稳定性好,由于工作在饱和状态,一次效率很高。能够承受较高的电压,输出电流大,驱动电机能力强。不足之处是由于使用分立元件,安装调试和维护相对麻烦,控制不当时MOS管容易烧毁。基于上述讨论,考虑到要驱动的电机电流较大,我们采用了方案二。3.2.3 寻迹方案方案一:采用被动式光敏传感器。由于跷跷板上的黑色和白色反光程度不同,由此判断传感器是否在黑线上方。但由于其他光源影响,效果不会很好。故不采用此方案。方案二:用摄像头采集路面黑线位置信息,利用图像处理判断小车

26、行驶位置。此种方法,对路面的信息处理准确,但对硬件和软件的要求都较严格,对本系统来说过于复杂。方案三 :采用红外对管探测头对路面黑线的信息进行探测。利用红外光线照射到路面上的白色路面和黑线产生反射光线的强弱差别来判断车的位置。鉴于上述分析,采用方案三。3.2.4 显示模块方案一:采用LED数码管为显示元件。整个界面内容单一,显示信息量少,而且耗电量大,界面不够友好。方案二:使用LCD1602字符型液晶显示模块,可显示丰富的信息,界面友好。鉴于以上原因,根据系统要求选用方案二。4 系统硬件电路设计通过上面的讨论,知道整个系统包括:按键输入模块、红外传感器寻迹模块、显示模块、报警模块、CPU处理模

27、块、扫雷模块、LED状态指示灯模块、电机驱动模块及CPU复位模块,下面就具体的电路进行说明。4.1 电源电路设计因为电源的供电质量直接系统的工作,因此应该尽量减少电源中的纹波,在系统的电源接口处设计了电平转换稳压电路,设计中采用了LM78XX系列器件进行线性电压转换。LM7805实现7.5V到5V的转换和稳压,电路图如图4-1所示。其中C11和C12为滤波电容,起到滤波的作用。图4-1 系统电源设计4.2 单片机电路设计4.2.1 单片机主体电路设计本系统的控制部分采用P89V51RD2单片机。(1)概述P89V51RD2是一款80C51微控制器,包含64kB Flash和1024字节的数据R

28、AM。P89V51RD2的典型特性是它的X2方式选项。利用该特性,设计工程师可使应用程序以传统的80C51时钟频率(每个机器周期包含12个时钟)或X2方式(每个机器周期包含6个时钟)的时钟频率运行,选择X2方式可在相同时钟频率下获得2倍的吞吐量。从该特性获益的另一种方法是将时钟频率减半而保持特性不变,这样可以极大地降低电磁干扰(EMI)。Flash程序存储器支持并行和串行在系统编程(ISP)。并行编程方式提供了高速的分组编程(页编程)方式,可节省编程成本和上市时间。ISP允许在软件控制下对成品中的器件进行重复编程。应用固件的产生/更新能力实现了ISP的大范围应用。P89V51RD2也可采用在应

29、用中编程(IAP),允许随时对Flash程序存储器重新配置,即使是应用程序正在运行也不例外。(2)特性80C51核心处理单元;5V的工作电压,操作频率为040MHz;16/32/64kB的片内Flash程序存储器,具有ISP(在系统编程)和IAP(在应用中编程)功能;通过软件或ISP选择支持12时钟(默认)或6时钟模式;SPI(串行外围接口)和增强型UART;PCA(可编程计数器阵列),具有PWM和捕获/比较功能;4个8位I/O口,含有3个高电流P1口(每个I/O口的电流为16mA);3个16位定时器/计数器;可编程看门狗定时器(WDT);8个中断源,4个中断优先级;2个DPTR寄存器;低EM

30、I方式(ALE禁能);兼容TTL和CMOS逻辑电平;掉电检测;低功耗模式* 掉电模式,外部中断唤醒;* 空闲模式;DIP40,PLCC44和TQFP44的封装。图4-2 单片机主体电路(3)单片机电路作为整个系统的核心控制部分,主要是完成与其他电路的接口,从而获得数据进行处理,将处理的结果采用某种方式表示出来,比如显示或者报警。图4-2为单片机主体电路。通过图可以看出,单片机的接口电路非常简单,分别采用一般的I/O口实现与其他电路的接口。4.2.2 晶振电路设计P89V51RD2系列单片机可以工作于6MHz、12MHz等频率下,这一频率产生于一个石英晶体振荡器,用于驱动P89V51RD2系列单

31、片机。因此,我们针对P89V51RD2单片机,设计的晶振电路如图4-3所示,设计中采用11.0596MHz的石英晶体和两个容值为22PF的电容。Y2(晶振)直接跨接在P89V51RD2的XTAL1、XTAL2两端,其中C21、C22为起振电容。图4-3 晶振电路4.2.3 复位电路设计RST引脚是复位信号的输入端。复位信号是高电平有效。高电平有效的持续时间应为24个振荡周期以上。若时钟频率为6MHz,则复位信号至少应持续4us以上,才可以使单片机复位,复位以后,07H写如栈指针SP,P0口P3口均置1(允许输入),程序计数器PC和其他特殊功能寄存器SFR全部清零。只要该脚保持高电平,单片机便循

32、环复位。当RST端由高变低,单片机有ROM的0000H开始执行程序。单片机的复位操作不影响内部RAM的内容。当Vcc加电后,RAM的内容随机的。图4-4 按键复位电路单片机的复位方式有上电自动复位和手工复位两种。考虑到调试方便,本系统采用手工复位方式如图4-4所示。4.3 LED状态显示电路设计系统中设计了屋个状态显示信号,两个红灯、两个黄灯和绿灯。电源有电时红灯(LED1)亮。小车前进时,绿(LED0)灯亮。当小车停止时,红灯(LED2)亮。两个黄灯为转向指示灯,转向时对应的灯亮。LED驱动电路如图4-5所示。图4-5 驱动电路LED1上电即亮,LED0、LED2、LED3、LED4只有在单

33、片机P0.4为低电平时才亮。4.4 小车驱动控制电路设计图4-6 小车驱动控制小车驱动控制电路如图4.-6所示。本电路的工作原理是让三极管和MOS管工作在开关状态,由IRF540和IRF9540构成的桥式电路。IRF540和IRF9540的输出电流可达到20A。完全可以满足电机反相电流。当PWM1和PWM2分别为高,低电平时,左半部8050和8550导通,右半部三极管截止,从而使Q1,Q4工作,其他三种状态可以类似推理可使电机工作的状态,实现对电机的控制。PWM原理是开关管在一个周期内的导通时间为t,周期为T,则电机两端的平均电压:U=VCC*t/T=a*VCC其中,a=t/T(占空比),VC

34、C是电源电压。电机的转速与电机两端的电压成正比例,而电机两端的电压与控制波形的占空比成正比例,因此电机的速度与占空比成正比例,占空比越大,电机转得越快。使用PWM配合桥式驱动电路实现直流电机调速,电路非常简单,且调速范围大,效率高。4.5 小车控制电路设计转向控制:小车采用型号为s3001的舵机控制小车的方向,其力矩可达到0.5千克。脉宽范围:大约40度左右,PWM周期:可选择50200Hz。4.6 寻迹电路设计本系统采用反射式红外对管进行寻迹模块,红外检测电路图如图4-7所示。利用红外线在不同颜色的物体表面具有不同的反射性质的特点,运动过程中不断反射光被装在小车上的接收管接收;如果遇到黑线则

35、红外光被吸收,小车上的接收管接收不到红外光 由于红外发射管的最大电流可达到20ma,选取电阻390。 调节比较滑阻,使比较器参考电压达到1.5v,输出端接10k上拉电阻,当输入电压高于Vef时输出高电平,反之输出低电平。图4-7 红外检测电路图4.7 报警电路设计该部分电路主要是驱动一个蜂鸣器,这样只需要将蜂鸣器的一端接地另外一端与单片机相连就可以了,考虑到P89V51RD2的驱动能力,需要加一个放大器。图4-8为报警电路的实现。图4-8 蜂鸣器驱动电路通过图4.7.1可以看出,该报警电路具有简单、实用等特点。为三极管基极电流过大烧毁器件,在基极接一个4.7K电阻实现限流的作用,以保护器件。4

36、.8 扫雷电路设计为了探测金属片,我们在小车的中心点处固定金属接近开关(型号为FA18-8NA)。该器件的探测距离为8mm,输出TTL电平。当输出为高电平“1”时表明无金属;当输出为低电平“0”时表明有金属。金属接近开关为电感式金属接近开关。电感式接近开关属于一种有开关量输出的传感器由三大部分组成:振荡器、开关电路及放大输出电路。振荡器产生一个交变磁场。利用金属物体在接近这个能产生电磁场的振荡感应头时,使物体内部产生涡流。这个涡流反作用于接近开关,使接近开关振荡能力衰减,内部电路的参数发生变化,由此识别出有无金属物体接近,进而控制开关的通或断。这种接近开关所能检测的物体必须是金属物体。4.9

37、显示电路设计本系统采用LCD1602字符型液晶,电路原理图如图4-9所示,该模块主要显示小车当前的扫雷的个数,显示时间等。图4-9 显示原理图由图可知,该显示电路直接与单片机的数据I/O口进行连接即可。由于P89V51RD2具有丰富的I/O口资源,这样就可以直接用并行的接口的方式连接,减少了系统设计的复杂度,也可以增加系统的可靠性。4.10 按键电路设计按键电路主要是用来输入数据,从而实现人机交互。该系统的按键设计才用独立单个按键实现,共有三个按键。按键的电路图如图4-10所示。图4-10 按键电路按键的扫描时间一般很短,仅仅几十微妙就够了,而按键的时间一次至少需要几十毫秒,所以只要有键按下的

38、话都是可以被扫描到的,但是按键按下时有一定的时间抖动,因此要考虑按键的抖动处理。5 系统软件设计这一节介绍系统的软件设计。P89V51RD2单片机可以采用C语言和汇编语言编写程序,C语言相较于汇编语言编写程序简单,修改方便。因此这里采用C语言编写程序。编译器采用Keil C51。该编译器是51系列单片机程序设计的常用工具,既可用汇编,也支持C语言编译。同时具有完善的调试功能。软件包括主处理模块及其他各个模块。下面就具体进行描述。5.1 主处理模块程序设计主处理模块主要是将各个模块进行协调处理和实现数据交互。主处理模块首先完成初始化工作,初始化后进入循环处理,在循环过程中获得传感器的数据,并将数

39、据进行处理,根据处理后的结果来进行显示、报警及控制电机运动。主处理模块的程序流程图如图5-1所示。图5-1 主处理流程图5.2 黑线检测算法和程序设计5.2.1 黑线检测算法为了提高寻线的精度,我们采用逐点逼近的方法,即控制电机使物体每次只移动与它相邻的点上。红外传感器安装在小车的下面,其作用是检测小车行进轨迹,当地面上出现黑/ 白变化的时候,传感器可以通知CPU 做相应的控制动作。采用4 个红外传感器并列在一条直线上,中间的2 个红外传感器一直在黑线范围内,外面的2个红外传感器一直在黑线范围外,如图5-2所示。图5-2 黑线检测算法原理图当红外传感器在黑线范围内,反射接收到的是高电平,在黑线

40、范围外反射接收到的是低电平。 CPU接收到的信号与控制电机的动作如表5-1所示。表5-1 路面检测算法红外对管A红外对管B红外对管C红外对管D相应动作1001前进0011左转1100右转1110右转0111左转1111后退5.2.2 寻线模块子程序设计程序流程图如图5-2所示。图5-2 寻线程序流程图5.3 输入模块子程序设计该部分主要完成数据的输入。输入模块的软件设计十分简单,但必须要考虑按键的抖动问题,否则会出现误操作,因此要去抖动。程序如下所示。if (KEY =0)delay_500us(5);if (KEY =0)/处理按键 While(KEY =0);5.4 显示模块子程序设计5.

41、4.1 LED状态指示灯模块子程序设计这部分的功能是显示小车当前的状态。程序流程图如图5-3所示。图5-3 LED显示流程图5.4.2 LCD显示模块子程序设计这部分主要显示“地雷”个数、时间等相关信息。LCD的显示程序主要体现在1602的驱动程序上。1602的驱动程序代码模块如下:/初始化LCDvoid Init_LCD ( )sbit LCM_RW=P26; /定义引脚sbit LCM_RS=P27;sbit LCM_E=P25;#define LCM_Data P0/写数据void WriteDataLCM(unsigned char WDLCM)/写指令void WriteComman

42、dLCM(unsigned char WCLCM,BuysC) /BuysC为0时忽略忙检测/读数据unsigned char ReadDataLCM(void)/读状态unsigned char ReadStatusLCM(void)void LCMInit(void) /LCM初始化/按指定位置显示一个字符void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData)/按指定位置显示一串字符void DisplayListChar(unsigned char X, unsigned char Y, uns

43、igned char code *DData)/5ms延时void Delay5Ms(void)unsigned int TempCyc = 5552;while(TempCyc-);5.5 报警模块子程序设计报警处理模块相当简单,这里只是一个I/O口上送出数据来驱动蜂鸣器。这里不是一个高电平或者低电平,而是有一定频率的数据,因为只有是交流信号才可以让蜂鸣器发出不同的声音。至于不同的周期信号可以得到不同的频率,可以根据信号处理的知识进行分析,这里就不进行讨论了。下面给出代码。void Ring (void)int i;P3.1 = 1;for(i =0; i200; i+)_NOP( );P3

44、.1 = 0; for(i =0; i200; i+)_NOP( );return;上面的程序只是一个单音频率的数据,可以根据信号的知识修改上面的程序,产生出具有丰富频率的数据。5.6 扫雷模块子程序设计金属接近开关输出TTL电平。当输出为高电平“1”时表明无金属;当输出为低电平“0”时表明有金属。因为信号线接的是外部中断接口。因此只需用中断函数来写扫雷模块的程序。程序流程图如图5-4所示。图5-4 扫雷模块程序流程图5.7 电机驱动模块子程序设计电机的驱动控制主要是PWM信号的控制。本系统采用P89V51RD2单片机的PCA模块产生PWM信号。所有PCA 模块都可用作PWM 输出(图5-5)

45、。输出频率取决于PCA 定时器的时钟源。图5-5 PCA PWM 模式由于所有模块共用仅有的PCA 定时器,所有它们的输出频率相同。各个模块的输出占空比是独立变化的,与使用的捕获寄存器CCAPnL 有关。当PCA CL SFR 的值小于CCAPnLSFR 时,输出为低,当PCA CL SFR 的值等于或大于CCAPnL 时,输出为高。当CL 的值由FF 变为00 溢出时,CCAPnH 的内容装载到CCAPnL 中。这样就可实现无干扰地更新PWM。要使能PWM 模式,模块CCAPMn 寄存器的PWM 和ECOM 位必须置位。6 制作与调试6.1 硬件电路的布线与焊接6.1.1 总体特点该系统所涉

46、及的各部分硬件电路,总体的特点是:电路原理简单,所用的器件均为常用器件。6.1.2 电路划分为方便焊接与调试,把电路划分为三大块:(1)中央处理器,开关,LCD等为一块电路板;(2)电机驱动电路为一块电路板;(3)红外检测电路为一块电路板。6.1.3 焊接焊接前应熟悉各芯片的引脚,焊接时参照电路图,仔细地连接引脚。按照以下原则进行焊接:(1)先焊接各芯片的电源线和地线,这样确保各芯片有正确的工作电压;(2)同类的芯片应顺序焊接,在一片焊接并检查好之后,其他的同类芯片便可以参照第一片进行焊接。这样便可大大节省时间,也可降低出错率。6.2 调试本系统的调试包括硬件调试和软件调试两部分。使用到的工具包括:电压表、示波器、可调电源、铁块、黑线等。下面分别进行介绍。6.2.1 系统硬件调试系统的硬件调试很简单,先调试电源电路和复位

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

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号