搜档网
当前位置:搜档网 › 智能小车系统设计(循迹,超声波,遥控)

智能小车系统设计(循迹,超声波,遥控)

智能小车系统设计(循迹,超声波,遥控)
智能小车系统设计(循迹,超声波,遥控)

<<计算机控制技术综合训练>>任务书

附录:

电信学院课程设计报告要求

1、设计题目;

2、目录;

3、本设计的基本原理;

4、简要说明本设计内容、用途及特点;

5、本设计达到的性能指标;

6、设计方案的选择;

7、写出各部分设计过程、工作原理、元器件选择;

8、绘制图纸(手绘2号图纸);

9、设计参考文献;

10、附录;

11、设计总结体会;

12、设计说明书不得少于10000字。

智能小车运行图

显示速度,距离,超声波探测距离

经过调试,小车完美实现了如下功能

1.小车具有无线遥控功能,小车可完成前进、后退、左转、右转等动作,并且可以正确显示当前的速度及行进位移。

2.小车具有循迹及避障功能,实现了舵机转动下的超声波壁障功能,并且可以正确有序显示小车位移、速度及与前方障碍物距离。

3.与其它组的小车模型配合可以完成交替领跑任务。

4.小车所有模式切换均由遥控器控制。

流程图

硬件原理图

附件一:智能小车系统程序

#include

#include

sbit AA=P3^0;

sbit DD=P3^1;

sbit BB=P3^2;

sbit CC=P2^2;

sbit LCM_RW=P2^4; //定义LCD引脚

sbit LCM_RS=P2^3;

#define RX P2_0

#define TX P2_1

#define LCM_E P2_5

#define Sevro_moto_pwm P2_7 //接舵机信号端输入PWM信号调节速度#define LCM_Data P0

#define Busy 0x80 //用于检测LCM状态字中的Busy标识

#define Left_1_led P3_7 //P3_7接四路寻迹模块接口第一路输出信号即中控板上面标记为OUT1

#define XUNJI_left_led P3_6 //P3_6接四路寻迹模块接口第二路输出信号即中控板上面标记为OUT2

#define XUNJI_right_led P3_5 //P3_5接四路寻迹模块接口第三路输出信号即中控板上面标记为OUT3

#define Right_2_led P3_4 //P3_4接四路寻迹模块接口第四路输出信号即中控板上面标记为OUT4

#define Left_moto_go {P1_4=1,P1_5=0,P1_6=1,P1_7=0;} //左边两个电机向前走

#define Left_moto_back {P1_4=0,P1_5=1,P1_6=0,P1_7=1;} //左边两个电机向后转

#define Left_moto_Stop {P1_4=0,P1_5=0,P1_6=0,P1_7=0;} //左边两个电机停转

#define Right_moto_go {P1_0=1,P1_1=0,P1_2=1,P1_3=0;} //右边两个电机向前走

#define Right_moto_back {P1_0=0,P1_1=1,P1_2=0,P1_3=1;} //右边两个电机向后走

#define Right_moto_Stop {P1_0=0,P1_1=0,P1_2=0,P1_3=0;} //右边两个电机停转

void LCMInit(void); //LCD初始化函数

void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData);

//LCD显示一个字符函数

void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData);//LCD显示一个字符串函数

void Delay5Ms(void); //延时5毫秒函数

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

void Decode(unsigned char ScanCode);

void WriteDataLCM(unsigned char WDLCM); //LCD1602写数据函数void WriteCommandLCM(unsigned char WCLCM,BuysC);//LCD写命令函数

unsigned char ReadStatusLCM(void);

unsigned char code Range[] ="V= cm/s S= . m"; //LCD1602显示格式unsigned char code welcome[] ="=== Welcome === ";

unsigned char code key[]="Press any key...";

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

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

unsigned char code table1[]="YAO KONG MO SHI ";

unsigned char code table2[]="=XUN JI MO SHI= ";

unsigned char pwm_val_left = 0;//变量定义

unsigned char push_val_left =14;//舵机归中,产生约,1.5MS 信号

unsigned int CH0=0; //循迹模式标志

unsigned int CH1=0; //超声波模式标志

unsigned int t=0; //速度基准变量

unsigned int timer=0; //延时基准变量

unsigned int time=0;

unsigned int pwm=250;

unsigned int count1=0; //计左电机码盘脉冲值

unsigned char timer1=0; //扫描时间变量

unsigned long S1=0;

unsigned long S2=0;

unsigned long S3=0;

unsigned long S4=0;

unsigned long S=0;

unsigned long V=0; //定义其速度

unsigned long SS=0;

unsigned char disbuff[4]= { 0,0,0,0,};

unsigned char disbuff1[4]={ 0,0,0,0,};

void WriteDataLCM(unsigned char WDLCM) //写数据

{

ReadStatusLCM(); //检测忙

LCM_Data = WDLCM;

LCM_RS = 1;

LCM_RW = 0;

LCM_E = 0; //若晶振速度太高可以在这后加小的延时

LCM_E = 0; //延时

LCM_E = 1;

}

void WriteCommandLCM(unsigned char WCLCM,BuysC) //写指令,BuysC为0时忽略忙检测

{

if (BuysC) ReadStatusLCM(); //根据需要检测忙

LCM_Data = WCLCM;

LCM_RS = 0;

LCM_RW = 0;

LCM_E = 0;

LCM_E = 0;

LCM_E = 1;

}

unsigned char ReadStatusLCM(void) //读状态

{

LCM_Data = 0xFF;

LCM_RS = 0;

LCM_RW = 1;

LCM_E = 0;

LCM_E = 0;

LCM_E = 1;

while (LCM_Data & Busy); //检测忙信号

return(LCM_Data);

}

void LCMInit(void) //LCM初始化

{

LCM_Data = 0;

WriteCommandLCM(0x38,0); //三次显示模式设置,不检测忙信号

Delay5Ms();

WriteCommandLCM(0x38,0);

Delay5Ms();

WriteCommandLCM(0x38,0);

Delay5Ms();

WriteCommandLCM(0x38,1); //显示模式设置,开始要求每次检测忙信号

WriteCommandLCM(0x08,1); //关闭显示

WriteCommandLCM(0x01,1); //显示清屏

WriteCommandLCM(0x06,1); // 显示光标移动设置

WriteCommandLCM(0x0c,1); // 显示开及光标设置

}

//按指定位置显示一个字符

void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData)

{

Y &= 0x1;

X &= 0xF; //限制X不能大于15,Y不能大于1

if (Y) X |= 0x40; //当要显示第二行时地址码+0x40;

X |= 0x80; //算出指令码

WriteCommandLCM(X, 1); //发命令字

WriteDataLCM(DData); //发数据

}

//按指定位置显示一串字符

void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData)

{

unsigned char ListLength;

ListLength = 0;

Y &= 0x1;

X &= 0xF; //限制X不能大于15,Y不能大于1

while (DData[ListLength]>0x19) //若到达字串尾则退出

{

if (X <= 0xF) //X坐标应小于0xF

{

DisplayOneChar(X, Y, DData[ListLength]);

//显示单个字符

ListLength++;

X++;

}

}

}

//5ms延时

void Delay5Ms(void)

{

unsigned int TempCyc = 5552;

while(TempCyc--);

}

//400ms延时

void Delay400Ms(void)

{

unsigned char TempCycA = 5;

unsigned int TempCycB;

while(TempCycA--)

{

TempCycB=7269;

while(TempCycB--);

};

}

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

void Conut(void) //超声波距离计算函数

{

while(!RX); //当RX为零时等待

TR0=1; //开启计数

while(RX); //当RX为零时等待

TR0=0;

time=TH0*256+TL0;

TH0=0;

TL0=0;

S=(time*1.7)/10+10;

disbuff1[0]=V%10;

disbuff1[1]=V/10;

DisplayListChar(0, 0, Range);

DisplayOneChar(2, 0, ASCII[disbuff1[1]]);

DisplayOneChar(3, 0, ASCII[disbuff1[0]]);

disbuff1[0]=SS/10%10;

disbuff1[1]=SS/100%10;

disbuff1[2]=SS/1000;

DisplayOneChar(11, 0, ASCII[disbuff1[2]]);

DisplayOneChar(12, 0, ASCII[disbuff1[1]]);

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

DisplayOneChar(14, 0, ASCII[disbuff1[0]]);

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 Conut0(void) //循迹模式显示{

disbuff1[0]=V%10;

disbuff1[1]=V/10;

DisplayListChar(0, 0, Range);

DisplayOneChar(2, 0, ASCII[disbuff1[1]]);

DisplayOneChar(3, 0, ASCII[disbuff1[0]]);

disbuff1[0]=SS/10%10;

disbuff1[1]=SS/100%10;

disbuff1[2]=SS/1000;

DisplayOneChar(11, 0, ASCII[disbuff1[2]]);

DisplayOneChar(12, 0, ASCII[disbuff1[1]]);

DisplayOneChar(13, 0, ASCII[10]);

DisplayOneChar(14, 0, ASCII[disbuff1[0]]);

DisplayListChar(0, 1, table2);

}

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

{

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

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

TX=0;

}

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

/*void delayms(unsigned int ms)

{

unsigned char i=100,j;

for(;ms;ms--)

{

while(--i)

{

j=10;

while(--j);

}

}

}*/

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

{

TR0=1; //开启计数

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

TR0=0; //关闭计数

Conut(); //计算

}

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

//前速前进

void run(void)

{

Left_moto_go ; //左电机往前走

Right_moto_go ; //右电机往前走

}

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

//前速后退

void backrun(void)

Left_moto_back ; //左电机往前走

Right_moto_back ; //右电机往前走

}

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

//左转

void leftrun(void)

{

Left_moto_back ; //左电机往前走

Right_moto_go ; //右电机往前走

}

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

//右转

void rightrun(void)

{

Left_moto_go ; //左电机往前走

Right_moto_back ; //右电机往前走

}

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

//STOP

void stoprun(void)

{

Left_moto_Stop ; //左电机停走

Right_moto_Stop ; //右电机停走

}

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

void COMM( void )

{

V=0;

push_val_left=5; //舵机向左转90度

timer=0;

while(timer<=4000); //延时400MS让舵机转到其位置 4000

StartModule(); //启动超声波测距

Conut(); //计算距离

S2=S;

push_val_left=23; //舵机向右转90度

timer=0;

while(timer<=4000); //延时400MS让舵机转到其位置

StartModule(); //启动超声波测距

Conut(); //计算距离

S4=S;

push_val_left=14; //舵机归中

timer=0;

while(timer<=4000); //延时400MS让舵机转到其位置

StartModule(); //启动超声波测距

Conut(); //计算距离

S1=S;

if((S2<300)||(S4<300)) //只要左右各有距离小于,30CM小车后退 {

backrun(); //后退

timer=0;

while(timer<=1000);

}

if(S2>S4)

{

rightrun(); //车的左边比车的右边距离小右转 timer=0;

while(timer<=800);

}

else

{

leftrun(); //车的左边比车的右边距离大左转

timer=0;

while(timer<=800);

}

}

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

void pwm_Servomoto(void)

{

if(pwm_val_left<=push_val_left)

Sevro_moto_pwm=1;

else Sevro_moto_pwm=0;

if (pwm_val_left>=100)

pwm_val_left=0;

}

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

///*TIMER1中断服务子函数产生PWM信号*/

void time1()interrupt 3 using 2

{

TH1=(65536-100)/256; //100US定时

TL1=(65536-100)%256;

timer++; //定时器100US为准。在这个基础上延时

pwm_val_left++;

pwm_Servomoto();

t++;

timer1++;

if(t>=6000)

{

V=count1;

count1=0;

t=0;

}

if(timer1>=500)timer1=0;

}

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

void intersvr1(void) interrupt 2 using 1

{

SS++;

count1++;

}

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

void timer0()interrupt 1 using 0 //TIMER0计数

{ }

void main(void)

{

Delay400Ms(); //启动等待,等LCM讲入工作状态LCMInit(); //LCM初始化

Delay5Ms(); //延时片刻

DisplayListChar(0, 0, welcome);

DisplayListChar(0, 1, key);

TMOD=0X11;

TH1=(65536-100)/256; //100US定时

TL1=(65536-100)%256;

TH0=0;

TL0=0;

TR1= 1;

ET1= 1;

ET0= 1;

EX1=1; //开启外部中断0

IT1=1; //下降沿有效

IE1=0;

EA = 1;

push_val_left=14; //舵机归中

while(1)

{

if(AA==1&&BB==1)

{

CH0=1;

CH1=0;

Conut0();

Delay400Ms();

}

if(AA==1&&CC==1)

{

CH0=0;

CH1=1;

stoprun();

Delay400Ms();

}

if(timer>=800&&CH1==1) //80MS检测启动检测一次 800

{

timer=0;

StartModule(); //启动检测

Conut(); //计算距离

if(S<300) //距离小于30CM

{

stoprun(); //小车停止

COMM(); //方向函数

}

else

if(S>400) //距离大于,40CM往前走

run();

}

if(CH0==1) //循迹模式

{

if(XUNJI_left_led==0&&XUNJI_right_led==0)

{

if(timer1<=pwm)

{

run();

} //前进 else {stoprun(); Conut0(); }

}

else

{

if(XUNJI_right_led==0&&XUNJI_left_led==1) //左边检测到黑线 {

if(timer1<=pwm)

{

Right_moto_go;} //右边两个电机正转

else{stoprun(); Conut0(); }

Left_moto_Stop

}

if(XUNJI_left_led==0&&XUNJI_right_led==1) //右边检测到黑线

{

if(timer1<=pwm)

{

Left_moto_go;} //左边两个电机正转

else {stoprun(); Conut0(); }

Right_moto_Stop

}

}

}

if(AA==1&&BB==0&&CC==0&&DD==0)

{

CH0=0;

CH1=0;

run();

DisplayListChar(0, 0, welcome);

DisplayListChar(0, 1, table1);

Delay5Ms();

stoprun();

}

if(AA==0&&BB==0&&CC==1&&DD==0)

{

CH0=0;

CH1=0;

leftrun();

DisplayListChar(0, 0, welcome);

DisplayListChar(0, 1, table1);

Delay5Ms();

stoprun();

}

if(AA==0&&BB==0&&CC==0&&DD==1)

{

CH0=0;

CH1=0;

rightrun();

DisplayListChar(0, 0, welcome);

DisplayListChar(0, 1, table1);

stoprun();

}

if(AA==0&&BB==1&&CC==0&&DD==0)

{

CH0=0;

CH1=0;

backrun();

Delay5Ms();

stoprun();

}

}

}

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

单片机设计智能避障小车 摘要 利用红外对管检测黑线与障碍物,并以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

智能循迹避障小车设计

毕业设计(论文) 课题名称智能循迹避障小车设计 学生姓名 XXX 学号00000000000000 系、年级专业 XXXXXXXXXXXXXXXXXXX 指导教师 XXX 职称讲师 2016年5月18日

摘要 自从首个工业智能设施诞生以来,智能设施的发展已经扩展到了包括机器、刻板、电子、冶金、交通、宇航、国防等产业领域。近年来智能设施水平迅速上升,大大的改变了大多数人类的生活方式。在人类的智能化技术不断飞速进步的过程中,能够取代手动的机器人在更加人性化的同时也越来越智能化。 本文主要讨论了基于单片机的智能循迹避障小车的设计。智能自动循迹制导系统在驱动电路的基础上,实现自动跟踪汽车导线,而智能避障是使用红外传感器测距系统来实现功能来规避障碍。智能寻光避障小车是一种采用了多种传感器,以单片机为核心,电力马达驱动和自动控制为技术,根据程序预先确定的模式,而不是人工管理来实现避障导航的自动跟踪高新技术。这项技术已广泛应用于智能无人驾驶、智能机器人、全自动工厂等许多领域。 这个设计使用STC89C52单片机[1]作为小车的智能核心,使用红外传感器对智能小车跟踪模块识别引导线跟踪,收集模拟信号并将信号转换成为数字信号,使用C 语言编写程序,设计的电路结构简单,易于实现,时效性高。 关键词:智能化;单片机最小系统;传感器;驱动电路

ABSTRACT From the first level of industrial intelligent facilities since birth, the development of intelligent facilities has been broadened to include machinery, electronics, metallurgy, transportation, aerospace, defense and other fields. Intelligent facilities level rising in recent years, and rapidly, significantly changed the way people live. People in the process of thinking, improvement, learning and intelligence of replace the manual machine is more and more. This paper mainly discusses the intelligent tracking based on single chip microcomputer control process of the obstacle avoidance car. Intelligent automatic tracking is based on the driving circuit of the guidance system, to achieve automatic tracking car line; obstacle avoidance is the use of infrared sensor ranging system to realize the function to evade obstacles. Intelligent tracking obstacle avoidance car is a use different sensor , motor drive for power and automatic control technology to realize according to the procedures predetermined mode, not by artificial management can realize the automatic tracking of obstacle avoidance navigation of high and new technology. The technology has been widely used in unmanned intelligent unmanned line, intelligent robot and so on many fields. Using infrared sensors for car tracking module to identify the guide line tracking, collecting analog signal and converts the signal into digital signal; Using C language to write the program, the design of the circuit structure is simple, easy to implement,timeliness is high. Keywords: Intelligent; Single chip microcomputer minimum system; The Sensor; Driver circuit

基于单片机的红外遥控小车设计

单片机系统设计实例 红外遥控小车 专业:信息对抗技术 姓名:吴志飞 学号:1411050121 指导教师:张东阳

目录 1 绪论 (1) 2 系统分析 (2) 2.1系统框架 (2) 2.2电机驱动模块 (3) 2.3 LCD显示模块 (4) 3 系统硬件设计 (5) 3.1主控模块的电路设计 (6) 3.1.1AT89C51单片机的简介 (8) 3.1.2AT89C51管脚功能 (8) 3.2红外遥控模块的电路设计 (9) 3.2.1红外遥控的实现原理 (10) 3.2.2红外发射器 (11) 3.2.3红外接收器 (12) 3.3电机驱动模块的电路设计 (12) 3.4显示模块的电路设计 (13) 4 系统软件设计 (14) 4.1程序代码 (14) 4.2软件流程图 (17) 5 调试与仿真 (18) 5.1在keil中进行调试 (18) 5.2在Proteus中进行仿真 (19) 6 总结 (21) 参考文献 (22) I

沈阳理工大学课程设计说明书 1 绪论 随着计算机、微电子、信息技术的快速进步,智能化技术的开发速度越来越快,,智能化程度越来越高,应用范围也越来越广,包括海洋开发、宇宙探测、工农业生产、军事、社会服务、娱乐等各个领域。智能电动小车系统以迅猛发展的汽车电子为背景,涵盖了控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科。主要由路径识别、角度控制及车速控制等功能模块组成。同时,当今机器人技术发展的如火如荼,其在国防等众多领域的应用广泛开展。神五、神六升天、无人飞船等等无不得益于机器人技术的迅速发展。一些发达国家已把机器人制作比赛作为创新教育的战略性手段,参加者多数为学生,目的在于通过大赛全面培养学生的动手能力、创造能力、合作能力和进取精神,同时也普及智能机器人的知识。从某种意义上来说,机器人技术反映了一个国家综合技术实力的高低,而智能电动小车是机器人的雏形,它的控制系统的研制将有助于推动智能机器人控制系统的发展,同时为智能机器人的研制提供更有利的手段。 本次课设设计的红外遥控智能小车可以分为四大组成部分:红外遥控部分、显示部分、执行部分、控制部分。智能小车可以实现按遥控指示前行,后退,左转和右转。该设计主要通过对系统硬件电路的设计,软件设计和程序的编写,然后通过后期软硬件调试达到设计初衷。 1

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

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

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

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.

单片机的红外遥控器解码设计

第1章红外解码系统分析 第1节设计要求 整个控制系统的设计要求:被控设备的控制实时反应,从接收信号到信号处理及对设备控制反映时间应小于1s;整个系统的抗干扰能力强,防止误动作;整个系统的安装、操作简单,维护方便;成本低。 红外载波、编码电路设计要求:单片机定时器精确产生38KHz红外载波;根据控制系统要求能对红外控制指令信号精确编码并迅速发送。 红外解码电路设计要求:精确接收红外信号,并对所接收信号进行解码、放大、整形、解调等处理,最后输出TTL电平信号;对非红外光及边缘红外光抗干扰能力强。 设备扩展模块设计要求:直流控制交流;抗干扰能力强;反应迅速不产生误动作;能承受大电流冲击。 第2节总体设计方案 2.1方案论证 驱动与开关 方案一:采用晶闸管直接驱动。 其优点是体积小,电路简单,外围元件少。但控制电流小,大电流晶闸管成本高,并且隔离性能差。 方案二:采用三极管驱动继电器。 其体积大,外围元件多。优点是控制电流大,隔离性能好。 根据实际情况,拟采用方案二。 2.2总体设计框图 经过上述方案的分析选择,得出系统硬件由以下几部分组成:电视红外遥控器,51单片机最小系统,接收放大于一体集成红外接收头,1602液晶显示驱动电路。 整体设计思路为:根据扫描到不同的按键值转至相对应的ROM表读取数据。确认设备及菜单选择键后AT89S2将从ROM读取出来的值,按照数据处理要求从P2.5输出控制脉冲与T0产生的38KHz的载波(周期是26.3μs)进行调制,经NPN三极管对信号放大驱动红外发光管将控制信号发送出去。红外数据接收则是采用HS0038一体化红外接收头,内部集成红外接收、数据采集、解码的功能,只要在接收端INT0检测头信号低电平的到来,就可完成对整个串行的信号进行分析得出当前控制指令的功能。然后根据所得的指令去操作相应的用电器件工作,如图1-1所示。

智能小车系统

智能小车系统 作者: 黎波 罗均元 李中华 赛前辅导:王老师 杨老师 摘要 本设计采用两块单片机(89S52)作为自动控制小车的检测控制、显示计算核心。路面黑线检测采用反射式红外传感器,车速和距离检测使用了霍尔传感器,金属检测使用了金属接近开关。电源部分采用了强电流、弱电流分开。数字、模拟独立供电,利用光电耦合器件避免了电动机对控制系统的干扰。同时利用了PWM技术动态的控制电动机的转速,利用低密度PLD 简化电路提高硬件系统的可靠性,基于这些完备可靠的硬件设计,使用了一套独特的软件算法实现了小车在金属的检测,和在高速运动中的精确控制,达到了很好的效果! 本设计的主要特色: ~高效的H型PWM电路,提高电源的利用率。 ~控制电路电源和电动机电源隔离,信号通过光电耦合器传输。 ~红外检测路面,软件纠错,免受路面杂质干扰。 ~优化软件算法,智能化的自动控制,反应迅速。 ~前置式方向灯,行驶状态一目了然。 一:系统设计及方案论证 根据题目要求,系统可以划分为几个基本模块,如图1-1所示。对各模块的实现,分别有以下一些不同的设计方案: 1-1 1:电机驱动调速模块 方案一:采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行调整。这个方案的优点是电路较为简单,缺点是继电器的响应速度慢,机械结构易损坏,寿命短,可靠性差。 方案二:采用电阻网络或数字电位器调整电动机的分压,从而达到调速的目的。但是电阻网络只能实现有级调速,而数字电阻元件价格昂贵,主要问题是一般电动机的电阻很小,但电流很大;分压不仅会降低

效率,而且实现很困难。 方案三:采用由双极性管组成的H型PWM电路。用单片机控制晶体管使之工作在占空比可调的开关状态,精确调整电机转速。这种电路由于工作在管子的饱和截止模式下,效率非常高;H型电路保证了可以简单地实现转速和方向的控制;电子开关的速度很块,稳定性也很高,是一种广泛采用的PWM调速技术。 基于上述理论分析,选用方案三。 2:路面黑线探测模块 探测路面黑线的大致原理是:光线照射到路面并反射,由于黑线和白线的反射系数不同,可以根据接收到的反射光强弱判断是否到达跑道边侧。 方案一:可见光发光二极管与光敏二极管组成的发射-接收电路。这种方案的缺点在于其他环境光源会对光敏二极管的工作产生很大干扰,一旦外界环境条件改变,很可能造成误判和漏判;虽然采取超高亮度发射管可以降低一定的干扰,但这势必会增加额外的功率损耗。 方案二:脉冲调制的反射式红外发射-接收器。考虑到环境光干扰主要是直流分量,如果采用有交流分量的调制信号可大幅度减少外界干扰;另外,红外发射管的最大工作电流取决于平均电流,如果采用占空比小的调制信号,在平均电流不变的情况下,瞬时电流可以很大(50-100MA),这样也可以大大提高信噪比。但电路较复杂且软件工作量加大。 方案三:不调制的反射式红外发射-接收器。由于采用红外管代替普通可见光管,可以降低环境光源干扰;如果直接用直流电压对管子供电,限于管子的平均功率要求,工作电流在10MA左右。 由于发射接收组件距离路面较近,切组件有外罩防止外界的干扰,所以我们采用了方案三。 3:车轮测速及路程计算模块 方案一:采用霍尔元件,该器件内部由三片霍尔金属板组成,当磁铁正对金属片时,由于霍尔效应,金属板发生横向导通,因此可以在车轮上安装磁铁,而将霍尔器件安装在固定轴上,通过对脉冲的计数进行车速测量。 方案二:受鼠标的工作原理启发,采用断续式光电开关。由于该开关是沟槽结构,可以将其置于固定轴上,再在车轮上均匀的固定多个遮光条,让其恰好通过沟槽,产生一个个脉冲。通过脉冲的计数对速度进行测量。 上述方案二计数精度较高,但安装不便且MCU计数负担过重,影响小车速度的提升。方案一在工业上得到广泛应用性能稳定切装配容易,因

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

毕业设计设计题目:智能避障小车设计 系别:机电工程系 班级:测控技术与仪器 姓名: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

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

毕业设计智能循迹避障 小车设计 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传

基于单片机的红外遥控系统设计

课程设计 基于单片机的红外遥控系统设计 学院:计算机与通信工程学院 专业:通信工程 班级:通信11-3班 姓名: 学号:

天津理工大学 摘要 本设计采用51单片机作为遥控发射接收芯片,HS003B作为红外一体化接收发射管,在此基础上设计了一个简易的智能红外遥控系统。系统包括接收和发射两大部分,发射部分有16个按键,接收部分含有8盏彩色LED灯、一片二位数码管和蜂鸣器系统。发射部分通过键盘扫描判断哪个键被按下,经过单片机编码程序进行编码,控制红外发射电路发送信号。接收部分解码信号,实现相应的输出。本设计方案结合红外遥控设计简单、作方便、成本低廉等特点。 关键字:红外遥控信号调制编码解码

天津理工大学 目录 摘要................................................................................................................................................... I I 1.绪论 (1) 1.1课题目的和意义 (1) 1.2红外线简介 (1) 1.3红外遥控系统简介 (1) 2 课题方案和设计思路 (2) 2.1总体方案 (2) 2.2红外发射器设计 (3) 2.2.1红外发射器原理 (3) 2.2.2红外编码 (3) 2.3红外接收端设计 (4) 3硬件结构设计与介绍 (5) 3.1AT89C51系列单片机功能特点 (5) 3.1.1主要特性 (5) 3.1.2管脚说明 (5) 3.1.3基本电路 (7) 3.2红外发射电路 (8) 3.3红外接收电路设计 (9) 3.3.1红外接收模块 (9) 3.3.2数码管 (9) 3.3.3彩灯系统 (10) 3.3.4蜂鸣器系统 (11) 3.3.5红外接收端电路图 (12) 4 软件设计 (12) 4.1定时/计数器功能简介 (12) 4.2遥控码的发射 (13) 4.3红外接收 (14) 5.课程设计总结和心得 (15) 参考文献 (16) 附录 (17) 附录1P ROTEUS仿真图 (17) 附录2发射程序 (17) 附录3接收程序 (20)

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

第二章智能寻迹避障小车寻迹系统设计 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所示为红外线收、发对管外型示意图。

避障小车制作讲解

智能避障小车实验报告与总结 学院:机电工程学院 专业年级:09级电气工程及其自动化 队员姓名:

智能避障小车实验报告与总结 摘要:本设计制作的是单片机控制的自动避障小汽车,以单片机为小汽车的“大脑”,红外线探头为小汽车的“眼睛”,电机为小汽车的“双足”。“大脑”控制“眼睛”去看前方是否有障碍物,当“眼睛”看到障碍后,由大脑来控制“双足”的行动方向。从而实现小汽车的自动避障。 关键词: 单片机红外线传感器避障小车 一、设计任务与要求 小车从无障碍地区启动前进,感应前进路线上的障碍物后,根据障碍物的位置选择下一步行进方向。 二、方案设计与论证 本设计制作的是单片机控制的自动避障小汽车,以单片机为小汽车的“大脑”,红外线探头为小汽车的“眼睛”,电机为小汽车的“双足”。“大脑”控制“眼睛”去看前方是否有障碍物,当“眼睛”看到障碍后,由大脑来控制“双足”的行动方向。从而实现小汽车的自动避障。电路原理简单,结构明了。如图为整个系统的框图。 根据设计要求,我们的自动避障小车主要由六个模块构成:车体框架、主控模块、探测模块、电机驱动模块组成。各模块分述如下: 1、小车车体 在设计车体框架时,我们有两套起始方案,自己制作和直接购买车身。 方案二:自己设计制作车架自己制作小车底盘,用两个直流减速电机作为主动轮,利用两电机的转速差完成直行、左转、右转、左后转、右后转、倒车等动作。减速电机扭矩大,转速较慢,易于控制和调速,符合避障小车的要求。而且自己制作小车框架,可以根据电路板及传感器安装需求设计空间,使得车体美观紧凑。但这种方法费时费力且成本较高。 方案二:购买半成品小车底盘改装,此种方案方便简洁而且价格低廉,小车各个机械部分安装完整,只需稍加改装就可以使用。而且我们主要是目的是小车控制系统的设计,因此我们采取该方案。 2、主控板 小车的主控系统,即小车的大脑,我们采用了STC89C52单片机制作的最小系统。 3、避障模块 避障方案选择,方案一:采用超声波避障。超声波受环境影响较大,电路复杂,而且地面对超声波的反射,会影响系统对障碍物的判断。

毕业设计+智能循迹避障小车设计之令狐文艳创作

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

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

目录 摘要1 第一章绪论2 1.1智能小车的意义和作用2 1.2智能小车的现状3 第二章方案设计与论证3 2.1 主控系统3 2.2 电机驱动模块4 2.3 循迹模块5 2.4 避障模块6 2.5 机械系统7 2.6电源模块7 第三章硬件设计7 3.1 AT89S52单片机的简介8 3.2总体设计11 3.3驱动电路12 3.4信号检测模块13 3.5主控电路14 第四章软件设计15 4.1主程序框图15 4.2电机驱动程序15 4.3循迹模块16 4.4避障模块20 结束语25 致谢26 附录一循迹加红外避障综合程序28 附录二实物图32

摘要 随着计算机、微电子、信息技术的快速进步,智能化技术的开发速度越来越快,智能度越来越高,应用范围也得到了极大的扩展。智能作为现代的新发明,是以后的发展方向,它可以按照预先设定的模式在一个环境里自动的运作,不需要人为的管理,可应用于科学勘探等用途。智能电动小车就是其中的一个体现。设计者可以通过软件编程实现它的行进、循迹、停止的精确控制以及检测数据的存储、显示,无需人工干预。因此,智能电动小车具有再编程的特性,是机器人的一种。 本设计采用AT89S52单片机加电机驱动电路和红外遥控及循迹模块还有红外接收一体化传感器设计而成,采用模块化的设计方案,运用红外遥控器控制小车的前进、后退、左转、右转、启动和停止。 关键词:智能小车;STC89C52单片机;L9110;红外对管 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智能小车的意义和作用 自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、宇航、国防等领域。近年来机器人的智能水平不断提高,并且迅速地改变着人们的生活方式。人们在不断探讨、改造、认识自然的过程中,制造能替代人劳动的机器一直是人类的梦想。 随着科学技术的发展,机器人的感觉传感器种类越来越多,其中视觉传感器成为自动行走和驾驶的重要部件。视觉的典型应用领域为自主式智能导航系统,对于视觉的各种技术而言图像处理技术已相当发达,而基于图像的理解技术还很落后,机器视觉需要通过大量的运算也只能识别一些结构化环境简单的

红外遥控发射和接收系统课程设计

红外遥控发射和接收系统设计 摘要 本设计是以红外技术为基础,可以实现无线遥控,摆脱了信息传递需要导线的限制,而且红外实现方式灵活,得到了广泛的应用。特别是随着芯片技术的发展,红外集成芯片价格的降低,更加扩展了红外的应用范围。现在在我们的日常生活中都能感受到红外的应用,以及它给我们带来的便利。本设计充分利用能够很容易买到的普通电视机遥控器,通过编码发射红外线,然后由通用红外接收芯片sw0038实现对红外的接收,但是因为考虑到题目的要求仅仅是实现对一个开关的简单开管控制,所以舍弃了依靠单片机来对遥控器发出的红外进行解码实现多种控制的方案。本方案简洁可行,充分利用现有的资源进行开发,取得比较好的效果,并且具有良好的移植性,可以通过简单的修改就应用到其他领域。 关键字:红外遥控红外解码双稳态 Abstract This design is take the infrared technology as a foundation, realizing the wireless remote control, getting rid of the the limit of wire information transmission. Beacause infrared technology is easy to be realized,it is widely used in many fields. Specially ,with the chip technology development, infrared integrated chip price reducing, even more expanded the infrared application scope . Now in our daily life ,we can feel the application of the infrared, and the convenience it has brought us.In this design,I take ordinary television remote control device to realize coding and Infrared Emission,then it is received by the general infrared receive chip sw0038 .what the topic requests is merely the realization of a simple switch control,so I give up the program on the MCU. The program is simple and feasible, making full use of the existing resources for development, and achieve fairly good results.It has a good portability,so only after a little change,it can be transplanted to other fields. Key word: infrared remote control infrared decode bistability

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所示。

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

封面

作者: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智能小车的意义和作用 自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、宇航、国防等领域。近年来机器人的智能水平不断提高,并且迅速地改变着人们的生活方式。人们在不断探讨、改造、认识自然的过程中,制造能替代人劳动的机器一直是人类的梦想。 随着科学技术的发展,机器人的感觉传感器种类越来越多,其中视觉传感器成为自动行走和驾驶的重要部件。视觉的典型应用领域为自主式智能导航系统,对于视觉的各种技术而言图像处理技术已相当发达,而基于图像的理解技术还很落后,机器视觉需要通过大量的运算也只能识别一些结构化环境简单的目标。视

相关主题