当前位置:文档之家› 基于-STC89C51单片机的智能化超声波避障小车

基于-STC89C51单片机的智能化超声波避障小车

基于-STC89C51单片机的智能化超声波避障小车
基于-STC89C51单片机的智能化超声波避障小车

基于STC89C52单片机的智能超声波避障小车

参赛人员:周志强王俊朱纪伟聂孟杰

班级:2012级自动化3班

日期:2015年3月

一、方案概述

本小车使用一台 AT89C52 单片机作为主控芯片,它通过超声波测距来获取小车距离障碍物的距离,并且用液晶显示器实时的显示出来,在小车与障碍物的距离小于安全距离(40cm ) 时,小车上蜂鸣器会发出警报声,并且后退并拐弯,同时通过LCD1602显示器显示出小车与障碍物之间的距离,精确到0.1cm. 在避开障碍物后,小车会沿直线前进。

本系统设计的简易智能小车分为几个模块:单片机控制系统、LCD1602显示器.超声波路面检测系统、前进、 转弯控制电机以及方向指示灯系统。它们之间的相互关系如下图所示。

智能小车简要原理框架图

二﹑总体电路原理图

超声波模块

三、主要模块基本原理

(1)超声波模块

超声波时序图

以上时序图表明你只需要提供一个10uS以上脉冲触发信号,该模块部将发出8个40kHz周期电平并检测回波。一旦检测到回波信号则输出回响信号。回响信号的脉冲宽度与所测的距离成正比。由此通过发射信号到收到的回响信号

时间间隔可以计算得到距离。公式:距离=高电平时间*声速(340M/S)/2。

(2)液晶显示模块

GND 为电源地,VCC 接5V正电源,VEE

RS 为寄存器选择

RW 为读写信号线,

RW 共同为低电平时可以

当RS 为高电平RW当E 端由低电平跳变成高

源程序

#include

#include

#define TX P2_1

#define RX P2_0

sbit DU = P2^6;

sbit WE = P2^7;

理想的时候是100,100256的时候最快

200 190

//sbit P4_0=0xc0;

/*****

sbit L293D_IN1=P1^2;

sbit L293D_IN2=P1^3;

sbit L293D_IN3=P1^6;

sbit L293D_EN1=P1^4;

sbit L293D_EN2=P1^5;

sbit BUZZ=P2^3; //蜂鸣器

void cmg88()//关数码管,点阵函数

{

DU=1;

P0=0X00;

DU=0;

}

void Delay400Ms(void);//延时400毫秒函数

unsigned char code Range[] ="==Range Finder==";//LCD1602显示格式

unsigned char code ASCII[13] = "0123456789.-M";

unsigned char code table[]="Distance:000.0cm";

unsigned char code table1[]="!!! Out of range";

unsigned char disbuff[4]={0,0,0,0};//用于分别存放距离的值0.1mm、mm、cm和m 的值

void Count(void);//距离计算函数

unsigned int time=0;//用于存放定时器时间值

unsigned long S=0;//用于存放距离的值

bit flag =0; //量程溢出标志位

bit turn_right_flag;

//============================================================ ============================================================= void Forward(unsigned char Speed_Right,unsigned char Speed_Left)// 前进{

L293D_IN1=0;

L293D_IN2=1;

L293D_IN3=1;

L293D_IN4=0;

}

void Stop(void) //刹车

{

L293D_IN1=0;

L293D_IN3=0;

L293D_IN4=0;

}

void Turn_Right(unsigned char Speed_Right,unsigned char Speed_Left) //后退左转

{

L293D_IN1=1;

L293D_IN2=0;

L293D_IN3=1;

L293D_IN4=0;

Delay(100);

L293D_IN1=1;

L293D_IN2=0;

L293D_IN3=1;

L293D_IN4=0;

}

//============================================================ ============================================================= /********距离计算程序***************/

void Conut(void)

{

time=TH1*256+TL1;

TH1=0;

TL1=0;

//此时time的时间单位决定于晶振的速度,外接晶振为11.0592MHZ时,//time的值为0.54us*time,单位为微秒

//那么1us声波能走多远的距离呢?1s=1000ms=1000000us

// 340/1000000=0.00034米

//0.00034米/1000=0.34毫米也就是1us能走0.34毫米

//但是,我们现在计算的是从超声波发射到反射接收的双路程,

//所以我们将计算的结果除以2才是实际的路程

S=time*2;//先算出一共的时间是多少微秒。

S=S*0.17;//此时计算到的结果为毫米,并且是精确到毫米的后两位了,有两个小数点

if(S<=300) //

{

if(turn_right_flag!=1)

{

Stop();

Delay1ms(5);//发现小车自动复位的时候,可以稍微延长一点这个延时,减少电机反向电压对电路板的冲击。

}

turn_right_flag=1;

P2_3=0;

Delay1ms(50);

P2_3=1;

Turn_Right(120,120); //小于设定距离时电机后退转弯}

else

{

turn_right_flag=0;

Forward(Forward_R_DATA,Forward_L_DATA); //前进(大于20-30CM前进)

}

//=======================================

if((S>=5000)||flag==1) //超出测量围

{

flag=0;

DisplayListChar(0, 1, table1);

}

else

{

disbuff[0]=S%10;

disbuff[1]=S/10%10;

disbuff[2]=S/100%10;

disbuff[3]=S/1000;

DisplayListChar(0, 1, table);

DisplayOneChar(9, 1, ASCII[disbuff[3]]);

DisplayOneChar(10, 1, ASCII[disbuff[2]]);

DisplayOneChar(11, 1, ASCII[disbuff[1]]);

DisplayOneChar(12, 1, ASCII[10]);

DisplayOneChar(13, 1, ASCII[disbuff[0]]);

}

}

/********************************************************/ void zd0() interrupt 3 //T0中断用来计数器溢出,超过测距围

{

flag=1; //中断溢出标志

RX=0;

}

/********超声波高电平脉冲宽度计算程序***************/

void Timer_Count(void)

{

TR1=1; //开启计数

while(RX); //当RX为1计数并等待

TR1=0; //关闭计数

Conut(); //计算

}

/********************************************************/ void StartModule() //启动模块

{

TX=1; //启动一次模块

Delay10us(2);

TX=0;

}

/********************************************************/

/*************主程序********************/

void main(void)

{

unsigned char i;

unsigned int a;

cmg88();//关数码管

Delay1ms(400); //启动等待,等LCM讲入工作状态

LCMInit(); //LCM初始化

Delay1ms(5);//延时片刻

DisplayListChar(0, 0, Range);

DisplayListChar(0, 1, table);

TMOD=TMOD|0x10;//设T0为方式1,GATE=1;

EA=1; //开启总中断

TH1=0;

TL1=0;

ET1=1; //允许T0中断

//===============================

//PWM_ini();

//===============================

turn_right_flag=0;

//=================================

B: for(i=0;i<50;i++) //判断K3是否按下

{

Delay1ms(1);//1ms判断50次,如果其中有一次被判断到K3没按下,便重新检测

if(P3_6!=0 )//当K3按下时,启动小车

goto B; //跳转到标号B,重新检测

}

//蜂鸣器响一声

BUZZ=0; //50次检测K3确认是按下之后,蜂鸣器发出“滴”声响,然后启动小车。

Delay1ms(50);

BUZZ=1;//响50ms后关闭蜂鸣器

//========================================================= ============================================================= =

while(1)

{

RX=1;

StartModule(); //启动模块

for(a=951;a>0;a--)

{

if(RX==1)

{

Timer_Count(); //超声波高电平脉冲宽度计算函数

}

}

}

}

结束语:本系统有STC89C52单片机,超声波模块,LCD1602显示器,报警系统等组成。STC89C52控制电机的转动和报警系统的动作。LCD1602显示智能型小车到障碍物之间的距离便于人查看。智能小车能够实现自动避障,自动报警,实时监控障碍距离的功能。

智能超声波避障小车地设计与制作

江阴职业技术学院项目设计报告 项目:超声波避障小车的设计与制作 专业 学生姓名 班级 学号 指导教师 完成日期

摘要 智能小车是一种能够通过编程手段完成特定任务的小型化机器人,它具有制作成本低廉,电路结构简单,程序调试方便等优点。由于具有很强的趣味性,智能小车深受广大机器人爱好者以及高校学生的喜爱。 本论文介绍的是具有自动避障功能的智能小车的设计与制作(以下简称智能小车),论文对智能小车的方案选择,设计思路,以及软硬件的功能和工作原理进行了详细的分析和论述。经实践验收测试,该智能小车的电路结构简单,调试方便,系统反映快速、灵活,设计方案正确、可行,各项指标稳定、可靠。

Abstract Smart cars can be programmed to perform a specific task means the miniaturization of robot, it has to make cost is low, circuit simple structure, convenient program test. Because of it has strong interest, intelligent robot car favored by the majority of the university students' enthusiasts and love. This paper introduces the is a automatic obstacle avoidance function of intelligent car design and production (hereinafter referred to as the smart car), the thesis to the intelligence of the car scheme selection, design idea, and the implementation of hardware and software function and working principle of a detailed analysis and discusses. After practice acceptance test, this intelligent car circuit structure is simple, convenient debug, fast, flexible system reflect, correct and feasible design scheme, each index is steady and reliable.

基于 单片机设计智能避障小车

单片机设计智能避障小车 摘要 利用红外对管检测黑线与障碍物,并以STC89C51单片机为控制芯片控制电动小汽车的速度及转向,从而实现自动循迹避障的功能。其中小车驱动由L298N 驱动电路完成,速度由单片机输出的PWM波控制。本文首先介绍了智能车的发展前景,接着介绍了该课题设计构想,各模块电路的选择及其电路工作原理,最后对该课题的设计过程进行了总结与展望并附带各个模块的电路原理图,和本设计实物图,及完整的C语言程序。 关键词:智能小车;51单片机;L298N;红外避障;寻迹行驶 abstract Using infrared detection black and obstacles to the line and STC89C51 microcontroller as the control chip to control the speed of the electric car and steering, so as to realize the function of automatic tracking and obstacle avoidance. Which the car driven by the L298N driver circuit is completed, the speed of the microcontroller output PWM wave control. This article first introduces the development of the intelligent car prospect, then introduces the design idea, the subject selection of each module circuit and working principle of the circuit, the design process of the subject is summarized and prospect with each module circuit principle diagram, and the real figure design, and complete C language program. Key words: smart car; 51 MCU; L298N; infrared obstacle avoidance; track driving

超声波避障小车开题报告

H a r b i n I n s t i t u t e o f T e c h n o l o g y 课程设计说明书(论文) 设计题目:超声波避障小车 院系:电气学院自动化测试与控制系 班级: 设计者: 学号: 指导教师:周庆东 设计时间:9.2~9.13 哈尔滨工业大学 哈尔滨工业大学课程设计任务书

*注:此任务书由课程设计指导教师填

开题报告 1立项依据 1.1立项目的 (1)设计一辆利用超声波传感器来实现避障功能的小车,使小车对其运动方向受到的阻碍作出各种躲避障碍的动作。 (2)进一步学习单片机原理及其应用,提高程序的编写能力。 (3)掌握单片机系统外扩器件的连接与使用,了解超声波传感器的工作原理。 (4)掌握软件和硬件调试的基本技巧与方法。 1.2立项意义 在当今社会,汽车成为了越来越普遍,人们不可缺少的交通工具。但汽车的不断增加,随之而来就是越来越多的交通事故。交通事故成为了现在越来越严重的安全隐患。所以随着汽车工业的快速发展,我们必须加强对汽车安全性能的考虑。所以,智能汽车概念应运而生,他既是汽车产业的机遇也是汽车产业的挑战。汽车的智能化必将是未来汽车产业发展的趋势,在这样的背景下,我们开展了基于超声波的智能小车的避障研究。 超声波作为智能车避障的一种重要手段,以其避障实现方便,计算简单,易于做到实时控制,测量精度也能达到实用的要求,在未来汽车智能化进程中必将得到广泛应用。我国作为一个世界大国,在高科技领域也必须占据一席之地,未来汽车的智能化是汽车产业发展必然的,在这种情况下研究超声波在智能车避障上的应用具有深远意义,这将对我国未来智能汽车的研究在世界高科技领域占据领先地位具有重要作用。 2主要设计内容及方案 2.1总体方案 系统采用51单片机作为核心控制单元用于智能车系统的控制,在超声波检测到障碍物之后,主控芯片根据距离值控制直流电机的转动,在与障碍物距离较大的情况下,快速前进,在与障碍物距离较小但还未到达临界转弯方向值的时候,慢速前进。在与障碍物距离很近需要转向避障时,方案上将尝试进行转向,来进行避障。 2.2设计原理 该智能车系统可分为三个主要模块:单片机主控核心模块,传感器避障模块,电机驱动模块。系统主要原理是:通过超声波避障模块(即感测模块)实时监测路面情况并及时传输给单片机。由单片机主控核心模块根据感测模块给予的信息控制小车两电机转动工作状态。电机驱动模块驱动两电机转动,实现前进或者左、右转。

超声波避障小车程序设计

/****************************************************************************** *****************************/ //5路超声波避障实验:51单片机 + HC-SR04超声波 // /******************************************************************************************* ****************/ #include //器件配置文件 #include #define RX1 P3_6 //小车左侧超声波HC-SR04接收端 #define TX1 P1_7 //发送端 #define RX2 P3_3 //左前方超声波 #define TX2 P0_2 #define RX3 P2_4 //正前方超声波 #define TX3 P2_5 #define RX4 P3_5 //右前方超声波 #define TX4 P3_4 #define RX5 P3_7 //右侧超声波 #define TX5 P1_6 #define Left_moto_pwm P1_5 //PWM信号端 #define Right_moto_pwm P1_4 //PWM信号端 //定义小车驱动模块输入IO口 sbit IN1=P1^0; sbit IN2=P1^1; sbit IN3=P1^2; sbit IN4=P1^3; sbit EN1=P1^4; sbit EN2=P1^5; bit Right_moto_stop=1; bit Left_moto_stop =1; #define Left_moto_go {IN1=0,IN2=1,EN1=1;} //左电机向前走 #define Left_moto_back {IN1=1,IN2=0,EN1=1;} //左边电机向后走 #define Left_moto_Stop {EN1=0;} //左边电机停转 #define Right_moto_go {IN3=1,IN4=0,EN2=1;} //右边电机向前走 #define Right_moto_back {IN3=0,IN4=1,EN2=1;} //右边电机向后走 #define Right_moto_Stop {EN2=0;} //右边电机停转 unsigned char pwm_val_left =0;//变量定义 unsigned char push_val_left =0;// 左电机占空比N/20 unsigned char pwm_val_right =0; unsigned char push_val_right=0;// 右电机占空比N/20 unsigned int time=0; unsigned int timer=0; unsigned long S1=0; unsigned long S2=0; unsigned long S3=0; unsigned long S4=0;

智能避障小车

目录 1. 绪论 (5) 2. 方案设计与论证 (6) 2.1 主控系统 (6) 2.2寻迹模块 (7) 2.3 避障模块 (8) 2.4 机械系统 (10) 2.5 电源模块 (10) 3. 硬件设计 (12) 3.1总体设计 (12) 3.2驱动电路 (12) 3.3 PWM控制技术分析 (13) 3.4检测模块 (13) 4. 软件设计 (15) 4.1系统软件设计说明 (15) 4.2程序框图 (15) 结束语 (16) 参考文献 (17) 致谢 (18) 附录程序清单 (19)

摘要 随着机器人技术的发展, 自主移动机器人以其活性和智能性等特点, 在人们的生产、生活中的应用来越广泛。自主移动机器人通过各种传感器系统感知外界环境和自身状态, 在复杂的已知或者未知环境中自主移动并完成相应的任务。而在多种探测手段中, 超声波传感器与光电寻迹系统由于具有成本低, 安装方便, 不容易受电磁、光线、被测对象颜色、烟雾等影响, 时间信息直观等特点, 对于被测物处于黑暗、有灰尘、烟雾、电磁干扰、有毒等恶劣的环境下有一定的适应能力, 因此在移动机器人领域有着广泛的应用。 关键词:智能小车;STC89C52单片机;超声波检测模块;光电寻迹

Abstract With the development of robotics, autonomous mobile robots play an important role in our manufacture and society for its characteristics: flexible and intelligent. Autonomous mobile robots sense the outside environment and their states with a variety of sensor systems’help. They walk in the complex and known or unknown environment to complete tasks. Moreover, among the methods of detection, ultrasonic wave sensors and photoelectric components are low cost, easy to installation, not susceptible to electromagnetic, light, objects’ color s and smoke, and easy to see time information. Therefore, they can be used in the darkness, dust, smoke, electromagnetic interference, toxic and other harsh environment. In other words, the components have a wide range of applications in the area of mobile robots. Keyword: Intelligent Car, STC89C52 Microcontroller, Ultrasonic Wave Component, Photoelectric Component

智能避障小车设计--毕业设计完整版-附程序编程

毕业设计设计题目:智能避障小车设计 系别:机电工程系 班级:测控技术与仪器 姓名:XXX 指导教师: XXX

智能小车设计 摘要 随着近年来机器人的智能水平不断提高,其中机器人的感觉传感器种类越来越多,而视觉传感器成为自动行走和驾驶的重要部件。智能小车可应用于无人工厂,仓库,服务机器人等领域解决一些高危环境下的难题。同时单片机技术的迅速发展使得机器人的智能控制更加智能化,人性化。 该设计是利用光电传感器以一定的频率发射红外线来检测障碍物,然后将检测信号发送到STC89C52单片机,并以STC89C52单片机为控制芯片进而电动小汽车的速度及转向,以此实现自动避障的功能。其中小车驱动由L298N驱动电路完成,速度由单片机输出的PWM波调速控制。本设计结构简单,较容易实现,与实际相结合,现实意义很强,但具有高度的智能化、人性化,一定程度体现了智能。 关键词:智能小车; STC89C52单片机; L298N; PWM波

Design Of Smart Car Abstract Along with the robot's intelligent level rises ceaselessly, the types of robot sensory sensor are more and more, and the vision sensor have become the important part in the automatic walking and driving .Smart car can be applied to unmanned factory, warehouse, service robot and etc. to solve some high risk environment problems,At the same time,The rapid development of MCS technology makes the intelligent control of robot more intelligent ang humane. This design uses a photoelectric sensor sending a certain frequency transmitting infrared to detect obstacles, and then sends a detection signal to a STC89C52 MCS. While the car is drived by the L298N circuit, its speed is controlled by the output PWM signal from the STC89C52 MCS.This design is practical ,easy realization and simple in the structure, but highly intelligent, humane, Intelligent in some degree. Key words:Smart Car; STC89C52 MCS; L298N; PWM Signa

智能寻迹避障小车寻迹系统设计说明

第二章智能寻迹避障小车寻迹系统设计 1.任务 任务一:产生智能寻迹避障小车沿黑线转圈的控制程序; 任务二:产生智能寻迹避障小车带状态显示沿黑线转圈的控制程序; 2.要求 (1)能控制智能寻迹避障小车沿黑线实现转圈功能; (2)行走过程中小车一直压着黑线走,不得冲出黑线圆圈之外或之; (3)智能寻迹避障小车可以从小于90度的任意方向寻找到黑线圆圈; 2.1 项目描述 该项目的主要容是:在智能寻迹避障小车电机控制系统之上扩展寻迹电路,然后运用C 语言对系统进行编程,使智能寻迹避障小车实现沿黑线转圆圈的功能,并且在行走过程中小车一直压着黑线走,不得冲出黑线圆圈之外或之;当人为将小车拿开,再从小于90度的任意方向放置小车,小车应能重新找回轨道,并沿黑线继续转圈。通过该项目的学习与实践,可以让读者获得如下知识和技能: 继续掌握单片机I/O端口的应用; 掌握红外线收、发对管的工作原理与控制方法; 掌握数码管的工作原理与控制方法; 掌握单片机C语言的编程方法与技巧; 能够编写出智能寻迹避障小车沿黑线实现转圈功能的控制函数; 2.1 必备知识 2.1.1 关于红外线传感器 红外线定义:在光谱中波长自0.76至400微米的一段称为红外线,红外线是不可见光线。所有高于绝对零度(-273.15℃)的物质都可以产生红外线。现代物理学称之为热射线。医用红外线可分为两类:近红外线与远红外线。 红外线发射器:红外线发射管在LED封装行业中主要有三个常用的波段,如下850NM、875NM、940NM。根据波长的特性运用的产品也有很大的差异,850NM波长的主要用于红外线监控设备,875NM主要用于医疗设备,940NM波段的主要用于红外线控制设备。如:红外线遥控器、光电开关、光电计数设备等。 红外线对管应用:本项目中,小车的寻迹功能采用红外线收、发对管实现。具体工作过程如下:两对红外线收、发对管安装在智能寻迹避障小车底盘正前方,红外发射管一直发射信号,接收管时刻准备接收信号。两对对着地的红外管发射红外信号,信号在白色的地面上反射回接收管,通过接收管把信号送回单片机进行处理,完成相应的动作。假如在黑色的地面上,信号被地面吸收,就无信号返回,单片机检测到无信号,根据程序也会做出相应的动作。如图2.1所示为红外线收、发对管外型示意图。

毕业设计智能循迹避障小车设计

毕业设计智能循迹避障 小车设计 Standardization of sany group #QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN#

单片机系统课程设计 轮式移动机器人的设计 学院:通信与电子工程学院 班级:电子131 姓名:初清晨 学号: 13 同组成员:孟庆阳张轩 指导老师:王艳春 日期:2015年12月24日

组员分工 1、组长:张轩,实物焊接,报告整理,程序设计 2、组员:孟庆阳,实物焊接,仿真测试,报告整理 3、组员:初清晨,实物焊接,报告整理,仿真测试

目录

摘要 随着计算机、微电子、信息技术的快速进步,智能化技术的开发速度越来越快,智能度越来越高,应用范围也得到了极大的扩展。智能作为现代的新发明,是以后的发展方向,它可以按照预先设定的模式在一个环境里自动的运作,不需要人为的管理,可应用于科学勘探等用途。智能电动小车就是其中的一个体现。设计者可以通过软件编程实现它的行进、循迹、停止的精确控制以及检测数据的存储、显示,无需人工干预。因此,智能电动小车具有再编程的特性,是机器人的一种。 本设计采用AT89S52单片机加电机驱动电路和红外遥控及循迹模块还有红外接收一体化传感器设计而成,采用模块化的设计方案,运用红外遥控器控制小车的前进、后退、左转、右转、启动和停止。 关键词:智能小车;STC89C52单片机;L9110;红外对管 Intelligent tracking and obstacle-avoid car Abstract:Based infrared detection of black lines and the road obstacles, and use a STC89C52 MCU as the controlling core for the speed and direction, A electronic drived, which can automatic track and avoid the obstacle, was designed and fabricated. In which, the car is drived by the L298N circuit, its speed is controlled by the output PWM signal from the STC89C52. Keywords: Smart Car; STC89C52 MCU; L298N; Infrared Emitting Diode 第一章绪论 智能小车的意义和作用 自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、宇航、国防等领域。近年来机器人的智能水平不断提高,并且迅速地改变着人们的生活方式。人们在不断探讨、改造、认识自然的过程中,制造能替代人劳动的机器一直是人类的梦想。 随着科学技术的发展,机器人的感觉传感器种类越来越多,其中视觉传感器成为自动行走和驾驶的重要部件。视觉的典型应用领域为自主式智能导航系统,对于视觉的各种技术而言图像处理技术已相当发达,而基于图像的理解技术还很落后,机器视觉需要通过大量的运算也只能识别一些结构化环境简单的目标。视觉传感器的核心器件是摄像管或CCD,目前的CCD已能做到自动聚焦。但CCD传

超声波避障小车设计

超声波避障小车设 计

Harbin Institute of Technology 课程设计说明书(论文) 设计题目:超声波避障小车 院系:电气工程及自动化 班级: 1 21 设计者:张佳炜 学号: 11 0316 指导教师:周庆东 设计时间: .09.14- .09.25 哈尔滨工业大学

课程设计考核表 题目:超声波避障小车 学生姓名:张佳炜班级: 1 21 学号: 11 0316 实验部分考核 总结报告评分 总成绩:指导教师签字:

哈尔滨工业大学课程设计任务书

开题报告 1立项依据 1.1立项目的 (1)设计一辆利用超声波传感器来实现避障功能的小车,使小车对其运动方向受到的阻碍作出各种躲避障碍的动作。 (2)深入学习单片机原理及其应用,提高程序的编写能力。 (3)掌握单片机系统外围电路的设计,了解超声波传感器的工作原理。(4)掌握软件和硬件调试的基本技巧与方法。 1.2立项意义 汽车作为人们不可缺少的交通工具,给人类带来了极大的便利,但随着汽车的量越来越多,交通事故也越来越多。交通事故成为了现在越来越严重的安全隐患。我们必须加强对汽车安全性能的考虑。随着电子技术、信息技术、网络技术的发展,智能汽车概念应运而生,将电子信息网络和汽车接合起来实现汽车的智能化,是传统汽车产业的机遇也是的挑战。汽车的智能化必将是未来汽车产业发展的趋势,在这样的背景下,我们开展了基于超声波的智能小车的避障研究。 超声波具有穿透力强、方向性好、操作简单、方便、快速和安全等的特点,在很多 领域有着广泛的应用前景。超声波作为智能车避障的传感信号,以其避障实现方便,计算简单,易于做到实时控制,测量精度也能达到实用的要求,在未来汽车智能化进程中必将得到广泛应用。作为一个发展大

智能超声波避障小车

智能超声波避障小车 : 班级: 学号:

目录 摘要 (3) 一、总体方案概述 (3) 二、总体电路原理图 (3) 三、各模块功能介绍 (4) (一)、超声波测距模块 (4) (二)、步进电机控制模块 (5) (三)、单片机控制模块 (6) 四、系统软件设计 (6) 五、应用前景 (7) 六、参考文献 (8)

摘要: 现今发达的交通在给人们带来便捷的同时也带来了许多的交通事故。发生交通事故的因素有很多。当然,如果我们的汽车能够更加智能,就是说事先能预测并显示前面障碍物离车的距离,当障碍物距离很近时汽车会自动采取一些措施避开障碍物,这样就能够在很大程度上避免这些事故的发生。在本论文中,我们将会看到能够实现这一功能的智能小车。 关键字:超声波、测量、避障、单片机 一、总体方案概述 本小车使用一台AT89S51单片机作为主控芯片,它通过超声波测距来获取小车距离障碍物的距离,并且用数码管实时的显示出来,在小车与障碍物的距离小于安全距离(用软件设定)时,小车会发出“在距您车前方x(数码显示的实时距离)米的地方有一障碍物,请您注意避让”的语音提示,并且拐弯,以避开障碍物,同时会点亮相应侧边的发光二极管作为提示信号。在避开障碍物后,小车会沿直线前进。 本系统设计的简易智能小车分为几个模块:单片机控制系统、超声波路面检测系统、前进、转弯控制电机以及方向指示灯系统。它们之间的相互关系如下图1所示。 二、总体电路原理图 图1:智能小车简要原理框架图

三、各模块功能介绍 (一)、超声波测距模块 首先利用单片机输出一个40kHz的触发信号,把触发信号通过TRIG管脚输入到超声波测距模块,再由超声波测距模块的发射器向某一方向发射超声波,在发射时刻的同时单片机通过软件开始计时,超声波在空气中传播,途中碰到障碍物返回,超声波测距模块的接收器收到反射波后通过产生一个回应信号并通过ECHO脚反馈给单片机,此时单片机就立即停止计时。时序图如图1所示。由于超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离,即:S=VT/2,通过单片机来算出距离。 图1:超声波模块时序图

4智能避障小车系统的设计与实现

智能避障小车系统的设计与实现 电子信息工程 200709837 王小龙 罗维薇 摘要 本设计以单片机STC89C52为控制核心,设计实现具有避障和里程显示功能的智能小车。其主要由三部分组成:液晶显示模块、避障模块和电机驱动模块。 智能避障小车分别运用直接反射式红外传感器TCRT5000和霍尔传感器3144来进行路径检测和里程计算,并将实时数据传送到液晶显示模块和单片机分别进行显示和数据处理。并用L298N电机驱动芯片控制小车的运行状态。 Abstract This design based on the single chip computer STC89C52 as control core, design a car with obstacle avoidance and mileage display function. It mainly consists of three parts: the liquid crystal display module, obstacle avoidance module and motor driver module. Intelligence obstacle avoidance car detecting external environment by direct reflex respectively infrared sensor TCRT5000 and hall sensor 3144, transfer the real-time data to LCD module and single chip microcomputer to display respectively and data processing. And use L298N motor drive chip to control the operation status of the car. 一、绪论 1.课题背景介绍 随着单片机技术的迅速发展,其控制能力越来越强大。人们利用单片机强大的控制功能设计出各种各样的系统,全国电子设计大赛几乎每次都有智能小车这方面的题目,全国各高校也都很重视该题目的研究。本设计就是在这样的背景下提出的,设计的智能小车能够通过光电开关完成避障功能,并且可以计算和显示出小车的行驶距离。 2.设计的主要内容 (1)采用STC89C52单片机作为控制小车的核心器件,用收发一体的红外传感器光电TCRT5000来检测和感应外界环境。 (2)用L298N驱动芯片控制电动小车的运行。 (3)用霍尔传感器计算小车行驶的距离并用1602液晶显示器显示。 这种方案能实现对智能小车的运动状态进行实时控制,控制灵活、可靠,可满足对系统的各项要求。 二、系统的总体设计 1.硬件总体设计 以AT89C51单片机为核心的控制电路,采用模块化的设计方案,运用红外光电传感器、霍尔传感器,实现小车在行驶中自动躲避障碍物、测量里程等问题。并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动小车的智能化控制。 在本系统中,反射式红外光电传感器检测障碍物,然后将信号传送到单片机系统进行处理,使小车沿轨道自主行走;通过霍尔元件测量小车行驶里程;采用L298N芯片控制电机的转向,实现电动小车的正反向行驶、快慢速行驶及转弯;采用1602液晶显示器显示小车行驶的路程。此系统采用软件方法来解决复杂的硬件电路部分,使系统硬件简洁化,各类功能易于实现,能满足系统的要求,其原理图如图1所示。

超声波避障小车设计

Harbin Institute of Technology 课程设计说明书(论文) 设计题目:超声波避障小车 院系:电气工程及自动化 班级:1201121 设计者:张佳炜 学号:1120110316 指导教师:周庆东 设计时间:2012.09.14-2012.09.25 哈尔滨工业大学

课程设计考核表 题目:超声波避障小车 学生姓名:张佳炜班级:1201121 学号:1120110316 实验部分考核 总结报告评分 总成绩:指导教师签字:

哈尔滨工业大学课程设计任务书

开题报告 1立项依据 1.1立项目的 (1)设计一辆利用超声波传感器来实现避障功能的小车,使小车对其运动方向受到的阻碍作出各种躲避障碍的动作。 (2)深入学习单片机原理及其应用,提高程序的编写能力。 (3)掌握单片机系统外围电路的设计,了解超声波传感器的工作原理。 (4)掌握软件和硬件调试的基本技巧与方法。 1.2立项意义 汽车作为人们不可缺少的交通工具,给人类带来了极大的便利,但随着汽车的量越来越多,交通事故也越来越多。交通事故成为了现在越来越严重的安全隐患。我们必须加强对汽车安全性能的考虑。随着电子技术、信息技术、网络技术的发展,智能汽车概念应运而生,将电子信息网络和汽车接合起来实现汽车的智能化,是传统汽车产业的机遇也是的挑战。汽车的智能化必将是未来汽车产业发展的趋势,在这样的背景下,我们开展了基于超声波的智能小车的避障研究。 超声波具有穿透力强、方向性好、操作简单、方便、快速和安全等的特点,在很多领域有着广泛的应用前景。超声波作为智能车避障的传感信号,以其避障实现方便,计算简单,易于做到实时控制,测量精度也能达到实用的要求,在未来汽车智能化进程中必将得到广泛应用。作为一个发展大国,应该把握未来汽车产业发展的方向,在这种情况下研究超声波在智能车避障上的应用具有深远意义,这将对我国未来智能汽车的研究在世界高科技领域占据领先地位具有重要作用。 2主要设计内容及方案 2.1总体方案 系统采用51单片机作为核心控制单元用于智能车系统的控制,在超声波检测到障碍物之后,主控芯片根据距离值控制直流电机的转动,在与障碍物距离较大的情况下,快速前进,在与障碍物距离较小但还未到达临界转弯方向值的时候,慢速前进。在与障碍物距离很近需要转向避障时,方案上将尝试进行转向,来进行避障。 2.2设计原理 该智能车系统可分为三个主要模块:单片机主控核心模块,传感器避障模块,电机驱动模块。系统主要原理是:通过超声波避障模块(即感测模块)实时监测路面情况并及

超声波测距及红外避障小车的设计

超声波测距及红外避障小车的设计 发表时间:2018-06-11T11:51:58.193Z 来源:《电力设备》2018年第1期作者:赵勇柳青张腾文 [导读] 摘要:介绍一种超声波测距及红外避障小车的设计,根据功能需求,进行系统方案设计,进而进行系统模块设计。 (沈阳理工大学信息科学与工程学院辽宁沈阳 110159) 摘要:介绍一种超声波测距及红外避障小车的设计,根据功能需求,进行系统方案设计,进而进行系统模块设计。本小车将超声波测距和红外避障结合起来,增加了系统的可实现性。 关键词:超声波测距;红外避障;小车;设计 概论 在当今世界,复杂的环境不断对科技提出越来越高的要求,要求我们探寻更为合适的技术来适应复杂环境的变化。超声波测距因其可以直接测量近距离目标,纵向分辨率高,适用范围广,方向性强,并具备不受光线、烟雾、电磁干扰等因素影响,且覆盖面积大等优势被广泛应用;红外避障则是通过检测红外光遇到障碍物反射来感知障碍物的存在,反馈至控制器,单片机进行驱动报警以有效避障。本智能小车将超声波测距技术和红外避障技术相结合,为现代智能化生活中,非接触特殊环境下的探测及测距、安全保护、车载倒车等提供可靠、实时有效的保障。 1.功能需求 该超声波测距及红外避障小车将测距功能和避障功能相结合,在获得距离信息的基础上进行有效避障,并将距离显示在LCD1602液晶显示屏上,当距离小于一定数值时,小车将转向。小车使用电机进行驱动,采用AT89S52单片机作为核心控制器进行有效控制。 2.系统方案设计 本智能小车由超声波测距系统、温度补偿系统、摄像头传输系统、红外避障系统、WIFI系统、显示系统六部分组成。小车的运行由AT89S52芯片作为核心控制器,测距和红外避障由超声波传感器和红外传感器进行数据采集,显示系统部分由LCD1602液晶显示屏来完成,温度传感器采集外界环境温度进行温度补偿,摄像头和WIFI模块完成画面的传输和设备的控制,如图1所示。 图1 系统硬件组成 3.系统模块设计 3.1超声波测距模块 本小车设计的测距系统采用脉冲回波法测距,以AT89S52芯片为核心,通过超声波传感器发射超声波,在发射时刻的同时计数器开始计时,超声波在空气中碰到障碍物面阻挡就立即反射回来,超声波接收器收到返回波时就立即停止计时。如果设超声波的传播速度为计时器记录的时间为,可计算出发射距离障碍物面的距离,即 3.2温度补偿模块 温度补偿模块主要是对温度进行补偿,以减小测距误差。温度传感器主要运用的是DS18B20。每次温度测量前,首先会将温度寄存器和低温度系数振荡器预置-55℃所对应的基数值,而高温度系数振荡器会根据环境温度确定一个振荡周期。然后,低温度系数振荡器开始振荡,对应的计数器对振荡脉冲进行减计数,直到计数器中被预置的值减为0。此时,温度寄存器的值加1,而低温度系数振荡器的值重新被预置到-55℃所对应的基数值,如此重复直到高温度系数振荡器停振,此时,温度寄存器的值就是所要测的温度值。 3.3摄像头和WIFI模块 摄像头将道路实时画面传输到手机或PC等终端设备上,操作者可以直观地了解到道路信息。通过手机或PC上的WIFI与在小车上的WIFI模块相协同,可以在手机或PC端控制小车的前进、后退、拐弯等动作,该系统便于灵活控制小车动作、易于操作。 3.4红外避障模块 避障传感器利用物体的反射性质来实现避障功能。在一定范围内,如果没有障碍物,发射出去的红外线,因为传播距离越远而逐渐减弱,最后消失;如果有障碍物,红外线遇到障碍物,被反射到达传感器接收头,传感器检测到这一信号,确认正前方有障碍物,并将信号传给单片机,单片机对信号进行系统的处理分析,从而协调小车两轮工作,完成躲避障碍物的动作。 3.5显示模块 将测得的温度和距离通过传感器送入到单片机中进行处理,将处理后的结果显示在液晶上,可以直观地读出温度和距离参数,使参数可视化,便于实时监测测距精度。

智能循迹避障小车方案设计书

封面

作者:PanHongliang 仅供个人学习 目录 摘要………………………………………………………………………………………2 ABSTRACT………………………………………………………………………………

…2 第一章绪论 (3) 1.1智能小车的意义和作用 (3) 1.2智能小车的现状 (3) 第二章方案设计与论证 (4) 2.1 主控系统 (4) 2.2 电机驱动模块 (4) 2.3 循迹模块 (6) 2.4 避障模块 (7) 2.5 机械系统 (7) 2.6电源模块 (8) 第三章硬件设计 (8) 3.1总体设计 (8) 3.2驱动电路 (9) 3.3信号检测模块 (10) 3.4主控电路 (11) 第四章软件设计 (12) 4.1主程序模块 (12) 4.2电机驱动程序 (12) 4.3循迹模

块 (13) 4.4避障模块 (15) 第五章制作安装与调试 (18) 结束语 (18) 致谢……………………………………………………………………………………… 19 参考文献 (19) 智能循迹避障小车 摘要:利用红外对管检测黑线与障碍物,并以STC89C52单片机为控制芯片控制电动小汽车的速度及转向,从而实现自动循迹避障的功能。其中小车驱动由 L298N驱动电路完成,速度由单片机输出的PWM波控制。 关键词:智能小车;STC89C52单片机; L298N;红外对管 Intelligent tracking and obstacle-avoid car Abstract:Based infrared detection of black lines and theroad obstacles, and use a STC89C52 MCU as the controlling core for the speed and direction, A electronic drived, which can automatic track and avoid the obstacle, was designed and fabricated. In which, the car is drived by the L298N circuit, its speed is controlled by the output PWM signal from the STC89C52. Keywords: Smart Car。STC89C52 MCU。L298N。Infrared Emitting Diode 第一章绪论 1.1智能小车的意义和作用 自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、宇航、国防等领域。近年来机器人的智能水平不断提高,并且迅速地改变着人们的生活方式。人们在不断探讨、改造、认识自然的过程中,制造能替代人劳动的机器一直是人类的梦想。 随着科学技术的发展,机器人的感觉传感器种类越来越多,其中视觉传感器成为自动行走和驾驶的重要部件。视觉的典型应用领域为自主式智能导航系统,对于视觉的各种技术而言图像处理技术已相当发达,而基于图像的理解技术还很落后,机器视觉需要通过大量的运算也只能识别一些结构化环境简单的目标。视

Arduino智能避障小车避障程序

Arduino智能避障小车避障程序 首先建立一个名为modulecar.ino的主程序。 // modulecar.ino,玩转智能小车主程序 #include //导入舵机库 #include //导入NwePing库 // 对照系统配线方案依次指定各I/O const int ENA = 3 ; //左电机PWM const int IN1 = 4 ; //左电机正 const int IN2 = 5 ; //左电机负 const int ENB = 6 ; //右电机PWM const int IN3 = 7 ; //右电机正 const int IN4 = 8 ; //右电机负 const int trigger = 9 ; //定义超声波传感器发射脚为D9 const int echo = 10 ; //定义传感器接收脚为D10 const int max_read = 300; //设定传感器最大探测距离。 int no_good = 35; //*设定35cm警戒距离。 int read_ahead; //实际距离读数。 Servo sensorStation; //设定传感器平台。 NewPing sensor(trigger, echo, max_read); //设定传感器引脚和最大读数//系统初始化 void setup() { Serial.begin(9600); //启用串行监视器可以给调试带来极大便利 sensorStation.attach(11); //把D11分配给舵机

pinMode(ENA, OUTPUT); //依次设定各I/O属性 pinMode(IN1, OUTPUT); pinMode(IN2, OUTPUT); pinMode(ENB, OUTPUT); pinMode(IN3, OUTPUT); pinMode(IN4, OUTPUT); pinMode(trigger, OUTPUT); pinMode(echo, INPUT); sensorStation.write(90); //舵机复位至90? delay(6000); //上电等待6s后进入主循环 } //主程序 void loop() { read_ahead = readDistance(); //调用readDistance()函数读出前方距离Serial.println("AHEAD:"); Serial.println(read_ahead); //串行监视器显示机器人前方距离 if (read_ahead < no_good) //如果前方距离小于警戒值 { fastStop(); //就令机器人紧急刹车 waTch(); //然后左右查看,分析得出最佳路线 goForward(); //*此处调用看似多余,但可以确保机器人高速运转下动作的连贯性 }

相关主题
文本预览
相关文档 最新文档