智能灭火小车设计

合集下载

智能灭火小车的设计与实现

智能灭火小车的设计与实现

随着社会经济和科学技术的快速发展,化工行业危险化学品和放射性物质泄漏、燃烧及爆炸等事故的隐患逐渐增加,一旦发生火灾,往往会带来巨大的人员伤亡和财产损失,因此开发一款智能设备用于实时监测火灾隐患并代替人工进行灭火,具有重要的现实意义[1]。

1总体方案设计笔者设计了一个智能灭火小车,其总体方案设计如图1所示。

发生火情后,火源检测模块发送信号给单片机,单片机判断后驱动电机前往火源处,途中遇到障碍物后会及时躲避,到达火源后驱动风扇进行灭火。

图1智能灭火小车总体方案设计2系统硬件部分2.1电源电路电源电路(图2)设计选用7805芯片。

7805智能灭火小车的设计与实现张博1,2邓治岗3巨永锋1吕建新2(1.长安大学电子与控制工程学院;2.西安思源学院工学院;3.西安航天动力试验技术研究所)摘要设计了一个以单片机为核心的智能灭火小车,利用红外接收二极管实现对火源的检测,利用红外传感器实现避障。

给出了智能灭火小车系统的软硬件部分和具体的调试过程。

实验结果表明,该小车通过检测火源,将采集到的数据传给单片机,驱动小车寻找火源并进行相应的避障,最后完成了灭火工作并返回。

关键词灭火小车单片机红外接收二极管红外传感器避障中图分类号TH862文献标识码A文章编号1000⁃3932(2020)04⁃0341⁃05作者简介:张博(1994⁃),硕士研究生,从事嵌入式系统的研究。

通讯作者:巨永锋(1962⁃),教授,从事自动控制、智能测控技术的研究,************.cn。

图2电源电路芯片有3个引脚,分别为终端输入端、输出端和地面接地端[2]。

通常情况下,该芯片可提供的最大电流为1.5A,输入电压可以为9、12、15V,输出电压为5V,且误差不超过±0.2V[3]。

综合考虑后, 7805芯片采用电池供电,选择9V的输入电压。

2.2电机驱动电路电机驱动电路(图3)采用L298电机驱动芯片。

电机调速采用PWM调速原理,电机的速度与占空比成正比关系[4],利用该比例关系可以控制电机的转速从而达到灭火的目的。

基于单片机的智能灭火小车设计与实现论文

基于单片机的智能灭火小车设计与实现论文

摘要:该设计应用AT89C51,可以与数码显示管、电路等相结合的元件作为小车的控制核心,可以与数码显示管、电路等相结合。

基于单片机设计,AT89C51作为报警装置的控制器,可以充分运用AT89C51的数据处理和实时控制功能,让小车处于最好的状态。

当电机信号产生驱动灭火小车行进时,根据寻迹模块的红外对管能否寻到黑线产生的高低电平信号再传送到单片机,单片机根据程序设计要求做出相应的判断送给电机驱动模块.让小车在黑线上实现运行及转向的功能。

通过超声波传感器接受到障碍物信号,实现超声波避障功能。

通过红外传感感知温度,实现小车的灭火功能。

关键词:单片机路况检测报警超声波灭火Speech Control Robot based on STM32Abstract:This design USES AT89C51 as the control core of the car, and digital display tube, circuit, etc. Based on MCU design, AT89C51 as the controller of the alarm device, can fully AT89C51 data processing and real-time control functions. Keep the car in top condition. When the motor signal is generated to drive the fire fighting cart, the high-low level signal generated by the black line can be detected by the infrared pair tube of the tracing module and then transmitted to the MCU, which makes the corresponding judgment according to the program design requirements and sends it to the motor drive module to realize the function of running and turning on the black line. Ultrasonic obstacle avoidance function is realized by receiving the obstacle signal through ultrasonic sensor. The fire extinguishing function of the car is realized by sensing the temperature with the infrared sensor.Key words:Single chip microcomputer tracking alarm ultrasonic目录前言 (2)1 方案设计 (4)1.1 方案论证 (4)1.1.1 控制器的选择与论证 (4)1.1.2 电机驱动芯片的选择与论证 (4)1.1.3 显示器件的选择与论证 (5)1.1.4 路况检测模块 (5)2 系统硬件电路与实现 (5)2.1 红外遥控及解码模块 (5)2.2 红外遥控模块及解码模块 (6)2.2.1 二进制信号的调制 (6)2.2.2 二进制信号的解调 (7)2.2.3 二进制信号的解码 (7)2.3 单片机红外硬件电路的实现 (8)2.4 电机驱动智能灭火模块 (8)2.5 路况检测模块 (11)2.6 智能防撞报警模块 (12)3 系统软件设计及实现 (14)3.1 红外整体程序 (14)3.2 红外遥控的解码和实现 (15)3.3 电机驱动灭火 (16)3.4 小车防撞报警 (17)4 系统调试 (18)4.1 遥控发送接收调试 (19)4.2 灭火驱动调试 (20)5 总结 (22)前言在现代社会,单片机技术发展迅速,机械电子技术逐步融合,自动控制技术在工业中的地位已经变得非常重要。

智能灭火小车演示系统设计实现分析-开题报告书

智能灭火小车演示系统设计实现分析-开题报告书

本科生毕业设计〔论文〕开题报告毕业设计题目:智能灭火小车演示系统的设计与实现智能灭火小车演示系统的设计与实现一、课题研究的目的和意义智能化作为现代社会的新产物,将是以后的开展方向,它可以按照预先设定的模式在一个特定的环境里自动地运作,无需人为管理,便可以完成预期所要到达的或是更高的目标。

同遥控小车不同,遥控小车需要人为控制转向、启停和进退,比拟先进的遥控车还能控制其速度,而智能小车,则可以通过计算机编程来实现其对行驶方向、启停以及速度的控制,无需人工干预,于是便演化成为了一个集环境感知、规划决策与自动行驶等功能于一体的综合系统,它集中地运用了计算机、传感、信息、通信、导航、人工智能及自动控制等技术,属于典型的高新技术综合体。

国外智能车辆的研究历史较长,始于上世纪50年代。

它的开展历程大体可以分成三个阶段:第一阶段20世纪50年代是智能车辆研究的初始阶段。

1954年美国Barrett Electronics 公司研究开发了世界上第一台自主引导车系统AGVS 〔Autonomous Guided Vehicle System〕。

第二阶段从80年代中后期开场,世界主要兴旺国家对智能车辆开展了卓有成效的研究。

在欧洲,普罗米修斯工程开场在这个领域的探索。

在美洲,美国成立了国家自动高速公路系统联盟〔NAHSC〕。

在亚洲,日本成立了高速公路先进巡航/辅助驾驶研究会。

第三阶段从90年代开场,智能车辆进入了深入、系统、大规模研究阶段。

最为突出的是,美国卡基.梅隆大学〔Carnegie Mellon University〕机器人研究所一共完成了Navlab系列的10台自主车〔Navlab1—Navlab10〕的研究,取得了显著的成就。

随着我国科学技术的进步,智能化和自动化技术越来越普及,各种高科技也广泛应用于智能小车和机器人玩具制造领域,使智能机器人越来越多样化。

智能小车是一个多种高新技术的集成体,它融合了机械、电子、传感器、计算机硬件、软件、人工智能等许多学科的知识,涉及到当今许多前沿领域的技术。

智能灭火小车设计

智能灭火小车设计
/*void lcd_write_com(uchar com)
{
lcdrs=0;
P0=com;
lcd_delay(5);
lcden=1;
lcd_delay(5);
lcden=0;
}
*/
/************液晶写数据函数****************/
/* void lcd_write_dat(uchar dat)
1.
这次研究的课题主要有如下几点
的内容
MCU控制模块
外部中断程序
2系统方案设计
2.1总体设计框图
MCU是本系统的控制核心,负责处理由红外对管循迹模块,红外避障模块得到的电平信号。最后单片机把信号处理的结果传递给小车电机模块,让小车做出正确的反应。
系统结构框图如下图所示。
总体设计框
2.2核心控制单元的选择
sbit IN2=P3^1;
sbit IN3=P3^2;
sbit IN4=P3^3;
sbit ENA=P3^4;
sbit ENB=P3^5;
sbit RS=P3^6;
sbit E=P3^7;
void DelayMS(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=120;y>0;y--);
lcd_write_com(0x06);
lcd_write_com(0x01);
}
/************三位数显式******************/
/*void lcd_sanweixianshi(uchar wz ,uchar xs)
{
lcd_write_com(wz);

基于单片机控制的智能灭火小车模型设计

基于单片机控制的智能灭火小车模型设计

基于单片机控制的智能灭火小车模型设计摘要:工厂由于电路老化或操作不规范,时常导致火灾发生,造成极大损失。

本文以此为背景,设计了一款智能灭火小车。

采用单片机STC89C52RC控制,电机驱动芯片L2930驱动。

采用红外传感器和火焰传感器收集环境参数,实现智能灭火小车的循迹、避障、障碍物跟随和火焰识别。

程序设计方面,以C语言在Keil开发环境下进行控制程序编写。

硬件设计方面,使用立创EDA进行元器件的选型,电路图设计,PCB图设计和BOM表生成。

最终实验测试表明:本设计的智能灭火小车能自动避障,并能够快速、精确的行驶到火源点,打开灭火风扇将其扑灭。

关键词:单片机;避障;循迹;灭火;模型车1 智能灭火小车的硬件设计1.1核心控制模块单片机作为小车的控制中心,本文选取的是STC89C52RC单片机,作为整个小车的大脑,负责程序的控制,使智能灭火小车能够正常行驶并且符合当时提出的要求。

本系统设计的控制芯片最小系统电路如图1-1所示:1.2电机驱动模块对于能够使小车动起来的“双脚”,采取的是L293D的控制芯片和脉宽调制(PWM)技术进行控制[1],其工作原理是通过单片机控制输入端的高/低电平,然后控制直流电机的转动方向,进而控制单片机对于驱动电机的输入的脉冲信号的空占比,之后不停地改变对电机的供电,最后控制智能灭火小车的速度。

本系统设计的电机驱动电路图如图1-2所示:图1-1 系统最小系统电路图图1-2 电机驱动电路图1.3灭火传感器模块智能灭火小车使用火焰传感器来寻找是否有高于周围的异常红外光源,从而判断出是否有火焰产生,例如,红外线传感器会把所检测的光信号转变为电信号传输给单片机进行处理[2],处理完成后,判断是否要触发灭火风扇,从而实现对于火焰的检测判断和扑灭。

本文设计火焰传感器电路图如图1-3所示:1.4 行走方向判定模块行走方向判定主要是通过主板上左右两个光敏传感器感应是否有光信号产生,当右边光敏传感器检测到光信号而左边无,小车则控制电机驱动从而右转弯,当两个光敏传感器同时检测到光信号时,小车则控制电机驱动从而前进,当把光信号移动到左边时,左边光敏传感器检测到光信号而右边无,小车则控制电机驱动从而左转弯[4]。

智能灭火小车的设计与实现

智能灭火小车的设计与实现

智能灭火小车的设计与实现一、智能灭火小车的设计需求与目标智能灭火小车的设计旨在能够自主感知火灾环境、准确识别火源位置,并迅速采取有效的灭火措施。

其主要需求包括:具备可靠的火源探测能力、灵活的移动性能、精准的定位系统以及高效的灭火装置。

设计目标是在火灾发生的初期,能够快速响应,自主导航至火源位置,进行灭火操作,最大程度地控制火势蔓延。

二、硬件系统设计(一)车体结构智能灭火小车的车体采用坚固且轻巧的材料制作,以保证在复杂环境中的稳定性和灵活性。

车轮采用防滑、耐磨的材质,并具备良好的悬挂系统,适应不同的地形。

(二)驱动系统选择高性能的电机作为驱动装置,通过精确的电机控制算法,实现小车的前进、后退、转弯等动作,确保小车能够在火灾现场灵活移动。

(三)火源探测系统采用多种传感器组合来探测火源,如温度传感器、烟雾传感器和红外传感器等。

这些传感器能够实时感知环境中的温度变化、烟雾浓度和红外辐射,从而准确判断火源的位置和范围。

(四)定位系统利用 GPS 定位模块和惯性导航系统,实现小车在室内外环境中的精准定位,为导航和灭火操作提供准确的位置信息。

(五)灭火装置搭载适合的灭火设备,如干粉灭火器或二氧化碳灭火器。

灭火装置的控制通过电磁阀和喷头实现,能够根据火源的情况调整灭火剂量和喷射方向。

三、软件系统设计(一)数据采集与处理通过传感器采集到的环境数据,经过滤波、放大和模数转换等处理,得到准确、可靠的信息。

(二)火源识别算法运用先进的图像处理和模式识别技术,对采集到的温度、烟雾和红外图像进行分析,识别出火源的特征和位置。

(三)路径规划与导航算法根据火源位置和环境信息,规划出最优的行驶路径。

导航算法结合定位系统的数据,实时调整小车的行驶方向和速度,确保小车能够准确、快速地到达火源位置。

(四)灭火控制算法根据火源的大小、类型和距离等因素,计算出合适的灭火剂量和喷射时间,控制灭火装置进行有效的灭火操作。

四、系统集成与测试在完成硬件和软件的设计后,进行系统集成和测试。

基于单片机的智能灭火小车设计

基于单片机的智能灭火小车设计摘要:如今,我国正处于经济迅猛发展的时期,人民的生活水平得到普遍提高,居住环境和生活环境也不断的改善,但同时,我国的消防安全隐患仍是个巨大的问题。

每年,我国的火灾事故频频出现,尤其是发生了重大火灾时,消防工作人员自身在抢救时也面临着生命的危险,甚至有时候根本无法达到目的地进行灭火抢救。

如何能在高效灭火的同时保障消防员的生命安全,是我们当今所考虑的问题,于是,当代人们想出了智能灭火小车,由机器代替人们进行一些不可完成的工作,同时也能减少生命和财产的损失。

关键词:智能灭火小车;MX1508;STC89C52引言基于单片机的智能灭火小车设计的研究背景,源于对火灾扑救效率和安全性的需求和对智能科技的追求。

通过单片机技术的应用,可以实现智能灭火小车的自主导航、实时感知、智能控制等功能,提高灭火效率和消防安全,同时也为智能科技的发展提供了基础和支撑。

本次设计的研究旨在设计一个基于单片机的智能灭火小车,能够实现火源的检测并且自动寻迹前往进行灭火。

并结合了蓝牙模块,可以实时向手机反馈小车的运转状况,也可以通过手机发送指令控制小车的运行。

1系统硬件介绍1.1单片机最小系统STC89C52单片机最小系统电路是一种基于STC89C52单片机的基本电路,包括STC89C52芯片、11.0592MHz晶振和复位电路。

晶振提供时钟信号,复位电路用于初始化单片机,为其提供稳定的工作环境,实现基本的操作和程序运行。

这个最小系统电路是STC89C52单片机开发和应用的基础。

1.2避障检测模块电路HC-SR04超声波检测模块是一种常用的超声波测距模块,包含超声波发射器和接收器。

它通过发射超声波脉冲并接收其回波来测量物体与模块之间的距离。

模块工作原理是通过发送一个短脉冲的超声波信号,然后计算从发射到接收回波的时间差来确定距离。

HC-SR04模块广泛应用于无人机、机器人、智能小车等领域,提供非接触式、精确的距离测量功能。

毕业设计--全自动消防小车

毕业设计--全自动消防小车目录绪论 (1)1系统方案选择 (2)1.1任务要求 (2)1.1.1 设计任务 (2)1.1.2 设计要求 (3)1.2总体设计方案 (3)1.3方案选择与分析 (3)1.3.1控制器分析与比较 (3)1.3.2电动车车体的选择 (4)1.3.3电机的选择与分析 (5)1.3.4电机驱动电路方案选择 (5)1.3.5轨迹探测模块设计与比较 (5)1.3.6火源检测设计与比较 (6)1.3.7电源模块 (7)1.3.8避障模块设计与分析 (7)1.3.9灭火模块 (8)1.4最终方案 (8)2硬件实现及单元电路设计 (9)2.1 STC89C52单片机系统概述及其引脚功能介绍 (9)2.1.1 STC89C52单片机系统概述 (9)2.1.2 单片机引脚功能 (10)2.2光电对管电路的设计 (12)2.3火焰传感器及应用 (14)2.4电机驱动电路的设计 (15)2.5灭火模块设计 (17)2.6避障功能的实现方法 (17)3软件系统设计 (17)3.1编译语言及编译环境 (17)3.1.1汇编语言的概述 (18)3.1.2 C语言概述 (18)3.1.3 编译语言及编译环境综述 (18)3.2程序解析 (19)3.2.1各函数功能 (19)3.2.2程序流程图 (25)4测试结果 (25)结束语 (27)致谢 (28)参考文献 (29)附录A:程序清单 (31)绪论现在,随着科技的快速发展,国内外对小型智能系统的应用越来越广泛,种类也越来越多。

本题目就是结合有关科研项目而确定的设计类课题,所设计的智能寻迹灭火小车应能够实现自动发现火源、自动寻迹、自动前进接近火源并完成灭火任务的功能。

根据题目的要求,智能寻迹灭火小车控制系统采用一片STC89C52单片机作为本控制系统的主控芯片,硬件包括以下几个模块:驱动电机模块、寻迹传感器模块、单片机控制模块、火源传感器模块、风扇模块、电源模块。

毕业论文-智能灭火小车设计

毕业论文-智能灭火小车设计精品文档题目智能灭火机器人设计学院自动化学院专业电气工程及其自动化班级电气0604成员贺昌忠、罗海峰、李晓进、李建青2008年11月18日摘要本次设计CPU采用Atmel公司的AVR系列单片机中的Atmega16L。

完成的是学校组织的灭火机器人大赛。

完成的作品基本功能要求在规定的场地中尽快寻找到火源,然后在尽可能短的时间内作出灭火动作。

本作品使用AVR产生PWM波,控制小车的直流电动机,利用红处开关管探测障碍物,使得小车能够避开障碍,找到火源,从而做出灭火动作。

同时使用液晶显示各个阶段小车的任务,使得我们对小车的运行有一个很好的了解。

关键词:Atmega16L 智能小车光电开关 PWM 液晶显示智能灭火机器人一设计目的与设计要求此次比赛的场地如下图1所示,图中的H区为小车的起始地区域,蜡烛在图中圆形的区域内,中间的黑色线条表示场地中的木板,整个场地的场面为黑色,其中起跑线为白线,另外在火灾区的入口以及蜡烛之前的半圆处也各有一条白线。

场地中各处的尺寸如图中所标(单位均为mm),设计要求小车能够避开障碍物(木板),在最短时图1 灭火机器人比赛场地间内找到火源所在的区域,然后将火吹灭,要求小车整体外形尺寸限制在30cm×30cm×30cm之内,包括机器人的触角、探测物及装饰物。

二方案设计与论证根据设计的目的与要求,经过讨论我们一致选定左手法则,即小车一直延左墙走,当遇到障碍物就右转,直到进入火灾区时检测到白线改为右手走法,再利用蜡烛前面的白线检测火源。

因此设计的小车要求能够及时调节前进的方向,以避开障碍物,顺利找到火源。

1.直流调速系统鉴于价格和功能的考虑,我们选择了直流电机,通过PWM控制小车的速度以及方向。

电机驱动部分有以下两种方案:方案一:使用MOSFET构成H桥式驱动电路,利用PWM波形来控制小车的速度,再用单片机两个I/O口控制电机旋转方向,此电路驱动功率比较大,小车的转速比较快。

智能灭火小车的设计与实现

智能灭火小车的设计与实现它可以按照你给定的路线行走,找到光源并尽快的行走到光源附近,启动风扇(相当于灭火),灭火后还可以按照以前的路线继续前进。

这个工作受地面摩擦、机器人惯性、机器人电机的转数差、电压变化等多个因素影响,它模拟了现实机器人处理火警的过程,灯泡代表燃起的火源,机器人必须找到并熄灭它。

下面为机器人灭火的一般特性以及系统的构成:方案本方案具有以下七个模块组成:单片机控制模块、驱动模块、传感器模块、灭火模块、电源模块、循线模块、寻光模块。

1.控制模块采用STC89C52RC(STC 89C52RC数据手册)单片机作为本系统的核心控制芯片。

能对其进行一系列处理,根据处理结果,驱动电机做相应的运动,并能控制风扇转动进行灭火操作。

2.驱动模块驱动模块采用L298芯片与两个直流电机,该芯片能够接收单片机发出的控制信号,同时驱动两个直流电机运动。

3. 传感器模块传感器模块采用红外传感器和光敏电阻(光敏二级管)传感器两种传感器,红外传感器探测行进路面,光敏电阻传感器探测前方的光源(火焰),并将探测到的数据传到STC89C52RC单片机进行模数转换。

4. 灭火模块灭火模块采用直流风扇,用5V电磁继电器作为控制开关控制风扇的停转。

5. 电源模块锂电池稳压,使机器人动作的正常运行。

6. 循线模块它是指小车在白色地板上循黑线行走,通常采取的方法是红外探测法。

红外探测法,即利用红外线在不同颜色的物体表面具有不同的反射性质的特点,在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色纸质地板时发生漫反射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,小车上的接收管接收不到红外光。

单片机就是否收到反射回来的红外光为依据来确定黑线的位置和小车的行走路线。

7.寻光模块寻光模块是根据电阻阻值的大小变化引起电压的变化,与给定值作比较,发送给单片机,当大于给定值则为1(高),当小于给定值则为0(低)。

然后由单片机来控制机器人的各种动作。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录1绪论 (1)1.1研究的背景和意义 (1)1.2本次论文设计的主要任务 (1)2系统方案设计 (1)2.1总体设计框图 (1)2.2核心控制单元的选择 (2)避障方案设计 (6)2.4小车选择 (12)3主控制模块主程序设计 (13)3.1红外循迹模块子程序设计 (14)3.2红外避障模块子程序设计 (16)3.3电机控制子程序设计 (17)结论 (19)参考文献 (20)附录 (22)总体设计框2.2核心控制单元的选择AT89C51的主要的特性•4K字节可编程FLASH存储器•与MCS-51兼容•数据保留时间:10年•寿命:1000写/擦循环三级程序存储器锁定•全静态工作:0Hz-24MHz•32可编程I/O线•128×8位内部RAM•5个中断源•可编程串行通道•低功耗的闲置和掉电模式该系统采用AT89C51单片机为中央处理器。

E18-D80NK三个传感器的硬件电路。

加调制发射管调制器 整流稳压接电源发射器加调制发射管整流稳压接电源放大器解调器 时钟逻辑 负载接收器E18-D80NK 原理图E18-D80NK 电气特性如表 3.1。

表 3.1 E18-D80NK 电气特性避障模块采用三只红外避障传感器,安装于小车两侧及下中央,可以检测两侧和 正前方是否有障碍,检测后将信号送入单片机,单片机对信号进行处理并发出相应的信号驱动小车电机,使小车躲避障碍。

单片机的 PB0、PB1、PB2端口分别接左中右红色 绿色 黄色 工作电压 工作电流 驱动电流 感应距离 VCCGNDOUT5VDC10-15mA100mA3-80CM优L298N引脚图方案1:采用步进电机101正转右均无障碍物默认右转);探测结果001,表明前方及左边15cm内有障碍物,单片机送出“右转”指令;探测结果100,表明前方及右边15cm内有障碍物,单片机送出“左转”指令;探测结果110,表明右边15cm内有障碍物,单片机送出“左转”指令;探测结果011,表明左边15cm内有障碍物,单片机送出“右转”指令;探测结果010,表明左边及右边15cm内有障碍物,单片机送出“停止”指令。

红外避障模块外围电路信息处理编码表3.3电机控制子程序设计电机控制子程序等待单片机发送指令,接受到指令后,判断指令类型,从而控制驱动电机电路的输出,控制小车的运动状态。

流程图如图4.5所示。

当接收指令0x00:无数据,无PWM波,无方向信号。

当接收指令0x01:小车前进,两个电机驱动器给予相同的PWM波,相同的方向信号。

当接收指令0x02:小车后退,在前进的基础上改变方向信号。

当接收指令0x03:小车停止,无PWM波,无方向信号。

当接收指令0x04:结合循迹模块的信号向左微转或左转。

当接收指令0x05:结合循迹模块的信号向右微转或右转。

结论本智能小车系统实现了以下功能:(1)能够按照程序沿预设轨道行驶。

小车在行驶过程中不仅能够实现直道的前进还能实现弧形轨道的前进。

若有偏差,能够自动更正,返回原来预设的轨道上来。

(2)当小车检测到前方有障碍物时,能自动向右转弯行驶,避开前方障碍。

探测到左右方向有障碍时,也能自动的避开障碍行驶。

从运行情况上看,循迹效果符合要求,而避障效果不太理想。

能够使我熟悉以前的知识。

在本次论文中有很多不足之处,还需要改正。

VCC 红红 1K LEFT VCCVCC红 红 红VCC1K RIGHT E18-D80NK红VCC 1 2 3 4 5 6 7 814 15 16 17 18ENA 19 ENB 20 21VCC IN4148U2PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PD0 PD1 PD2 PD3 PD4 PD5 PD6 PD7 (T0) (T1) (AIN0) (AIN1) (SS) (MOSI) (MISO) (SCK)104 MEGA16-DIP40(ADC0)PA0 (ADC1)PA1 (ADC2)PA2 (ADC3)PA3 (ADC4)PA4 (ADC5)PA5 (ADC6)PA6 (ADC7)PA7(RXD) (SCL)PC0 (TXD) (SDA)PC1 (INT0) (TCK)PC2 (INT1) (TMS)PC3 (OC1B) (TDO)PC4 (OC1A) (TDI)PC5 (ICP) (TOSC1)PC6 (TOSC2)PC7(TOSC2) 5.1K U1A40 39 38 37 36 35 34 3322 23 24 25 26 27 28 29 IN1 IN2 IN3 IN45.1K 1501SEN123 RV1 10KOPTOISO1LM393E18-D80NK红 1K FORWORD VCC5.1K U1B 5.1K 150红 红10K7SEN26E18-D80NKRST1045RV2 10KOPTOISO1LM3939 1322pRESET X11222p X 27.3728 A VCC AREFAGND30 32 31VCC5.1K U2A 5.1K 1501SEN323 RV3 10K+5 +5OPTOISO1LM393 VCCC1 C2 0.1uF100uF C3 C4 MG1 0.1uF100uF PC0 PC1 PC2 PC3 PD4 PD55 7 10 126 11 8 IN1 IN2 IN3 IN4 ENA ENB GND L298NVSS VS OUT1 OUT2 OUT3 OUT4 9 42 3 13 14 ISENA1 ISENB 15 D3 D4 D7 D8D1 D2 D5 D6 R9 5.1K U2B5.1K 1507SEN465 RV4 10KOPTOISO1MOTORSERVO2 V_INLM39317805VinV out3V_OUTMOTORSERVO1 R 6800.1uF0.1uFV_OUT LED附 录#include<reg52.h>#define uint unsigned int+A-+A -11GNDVCC102GND#define uchar unsigned charuint shaomiao;bit CLK;/*uchar code table_m[]="Mea:";uchar code table_s[]="Set:";uchar code table_qd[]="<ON>";uchar code table_tz[]="<OFF>";uchar code table_bengsu[]="speed:";*/sbit start_stop=P2^0;sbit s_fire=P2^1;sbit put_fire=P2^2;sbit left_C=P2^3;sbit right_C=P2^4;sbit head_C=P2^5;sbit hou_C=P2^6;sbit mie=P2^7;sbit IN1=P3^0;sbit IN2=P3^1;sbit IN3=P3^2;sbit IN4=P3^3;sbit ENA=P3^4;sbit ENB=P3^5;sbit RS=P3^6;sbit E=P3^7;void DelayMS(uint z){uint x,y;for(x=z;x>0;x--)for(y=120;y>0;y--);}/*************液晶显示函数****************//****液晶延时*****//*void lcd_delay(uint ms){uchar i;while(ms--){for(i=0;i<20;i++);}}*//************液晶写命令函数***************//*void lcd_write_com(uchar com){lcdrs=0;P0=com;lcd_delay(5);lcden=1;lcd_delay(5);lcden=0;}*//************液晶写数据函数****************/ /*void lcd_write_dat(uchar dat){lcdrs=1;P0=dat;lcd_delay(5);lcden=1;lcd_delay(5);lcden=0;}/************液晶初始化函数***************/ /*void lcd_init(void){lcd_write_com(0x38);lcd_write_com(0x0c);lcd_write_com(0x06);lcd_write_com(0x01);}/************三位数显式******************/ /*void lcd_sanweixianshi(uchar wz,uchar xs){lcd_write_com(wz);lcd_write_dat(xs/100+0x30);lcd_write_com(wz+1);lcd_write_dat(((xs/10)%10)+0x30);lcd_write_com(wz+2);lcd_write_dat(xs%10+0x30);}/************键盘扫描函数***************/ void keyscan(){if(start_stop==0){DelayMS(10);if(start_stop==0){shaomiao=1;}}if(s_fire==0){DelayMS(10);if(s_fire==0){shaomiao=2;}}if(put_fire==0){DelayMS(10);if(put_fire==0){shaomiao=3;}}if(left_C==0){DelayMS(10);if(left_C==0){shaomiao=4;}}if(right_C==0){DelayMS(10);if(right_C==0){shaomiao=5;}}if(head_C==0){DelayMS(10);if(head_C==0){shaomiao=6;}}if(hou_C==0){DelayMS(10);if(hou_C==0){shaomiao=7;}}}/*******主程序********/ void main(){/*TMOD=0x02;TH0=0x04;TL0=0x00;IE=0x82;TR0=1;lcd_init();*/mie=0;while(1){keyscan();switch(shaomiao){case1:ENA=1;ENB=0;IN1=1;IN2=0;IN3=0;IN4=0;mie=0;break;case2:ENA=0;ENB=0;IN1=0;IN2=0;IN3=0;IN4=0;mie=0;DelayMS(10);ENA=1;ENB=1;IN1=1;IN2=0;IN3=1;IN4=0;mie=0;break;case3:ENA=0;ENB=0;IN1=0;IN2=0;IN3=0;IN4=0;mie=1;break;case4:ENA=1;ENB=0;IN1=1;IN2=0;IN3=0;IN4=0;mie=0;break;case5:ENA=0;ENB=1;IN1=0;IN2=0;IN3=1;IN4=0;mie=0;break;case6:ENA=1;ENB=1;IN1=1;IN2=0;IN3=1;IN4=0;mie=0;break;case7:ENA=1;ENB=1;IN1=0;IN2=1;IN3=0;IN4=1;mie=0;break;}}}void Timer0_INT()interrupt1 {CLK=!CLK;}。

相关文档
最新文档