文档库 最新最全的文档下载
当前位置:文档库 › 智能小车红外避障程序

智能小车红外避障程序

智能小车红外避障程序
智能小车红外避障程序

#include

#include

#include

#define FLeftMotor P1_0 = 1 ; P1_1 = 0

#define BLeftMotor P1_0 = 0 ; P1_1 = 1

#define FRightMotor P1_2 = 1 ; P1_3 = 0

#define BRightMotor P1_2 = 0 ; P1_3 = 1

#define LeftStop P1_0 = 1 ; P1_1 = 1

#define RightStop P1_2 = 1 ; P1_3 = 1

#define CarStop P1_0 = 1; P1_1 = 1 ; P1_2 = 1 ; P1_3 = 1 Senser=P3^2//延时//

Void delay1(unsigned int i)

{

While(--i)

}

//******************************************************** // 左转

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

void TurnLeft_1()

{

LeftStop ;

FRightMotor ;

}

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

// 壁障程序

//******************************************************** void Obstacle_Avoid(void)

{

if(!Senser)

{

Fleftmotor;

Frightmotor;

}

if((RightSenser) {

Turnright();

delay1(300);

Fleftmotor;Frightmotor;

Delay1(300);

Turnleft();

delay1(300);

Fleftmotor;Frightmotor; }

//右转//

void Turnright()

{

Rightstop;

Fleftmotor;

}

void Turnleft()

{

Leftstop;

Frightmotor;

}

中断方式:

#include

#include

# include

#define qianjin P1=0x0A; //前进//

#define zuozhuan P1=0x02; //左转//

#define youzhuan P1=0x08; //右转//

#define houtui P1=0x05; //后退//

#define shatin P1=0x0f; //刹停//

IE=0x05;

SETB EXO;SETB EX1;

V oid bizhang (void) interrupt 0;

V oid delay (unsigned char i);

V oid main (void)

{ while(1){

qianjin; }

}

V oid bizhang ( ) interrupt 0 //壁障函数// { EA=0;

zuozhuan;

delay(500);

shatin;

if(!(EX0||EX1))

{ zuozhuan;

delay(500);

shatin;

}

qianjin;

delay(30000);

zuozhuan;

delay(500);

EA=1;

}

V oid delay (unsigned char i) //延时函数// { while(--i);

}

红外避障小车讲解

目的: 本毕业设计是红外蔽障小车的设计,通过设计使学生系统的熟悉和掌握单片机控制系统设计方面的内容体系、开发流程和程序设计,培养学生具有综合运用所学的理论知识去开拓创新及解决实际问题的能力。培养学生掌握设计题的思想和方法,树立严肃认真的工作作风、培养学生调查研究、查阅技术文献、资料、手册以及编写技术文献的能力。同时是为了掌握电路设计的方法和技巧。如何将学习到的理论知识运用到实际当中去,怎样能够活学活用,深入的了解电子元器件的使用方法,了解各种元器件的基本用途和方法,能够灵活敏捷的判断电路中出现的故障,学会独立设计电路,积累更多的设计经验,加强焊接能力和技巧,完成基本的要求。并能完美的完成这次实训。 目录 一、任务书...............................P1 二、引言..............................P2 二、要求与发挥...........................P4 三、设计摘要.............................P6 四、模块方案比较.......................P7 1.避障模块 2.驱动模块

3.控制模块 五、程序设计.........................P9 1.程序流程图 2.程序编写 六、工作原理.........................P13 七、结论............................P13 八、参考文献........................P14 九、毕业设计(论文)成绩评定表.....P15 任务: 利用单片机、红外实现避障,要求具有下述功能: 1.小车前进可以避开(前、左、右)20cm的障碍物; 2.实现下车前进时,不碰障碍物; 3.具有声音播报功能。 引言 随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成CPU、存储器、定时器、并行和串行接口、看门狗、前置放大器、A/D转换器、D/A转换器等多种电路,这就很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。这种技术促使机器人技术也有了突飞猛进的发展,目前人

红外避障小车设计说明

红外避障小车

前言 --------------------------------------------------- 随着生产自动化的发展需要,机器人已经越来越广泛地应用到生产自动化上,随着科学技术的发展,机器人的传感器种类也越来越多,其中红外传感器已经成为自动行走和驾驶的重要部件。 红外的典型应用领域为自主式智能导航系统,机器人要实现自动避障功能就必须要感知障碍物,感知障碍物相当给机器人一个视觉功能。智能避障是基于红外传感系统,采用红外传感器实现前方障碍物检测,并判断障碍物远近。 由于时间和水平有限,我们暂选最基本的避障功能作为此次设计的目标。 本设计通过小车这个载体再结合由AT89S51为核心的控制板可以达到其基本功能,再辅加由漫反射式光电开关组成的避障电路、555组成的转速控制电路、电源电路、差分驱动电路就可以完善整个设计。

目录 前言------------------------------------------------------------------------------1 目录------------------------------------------------------------------------------2 摘要------------------------------------------------------------------------------3 功能概述------------------------------------------------------------------------3硬件设计------------------------------------------------------------------------3 避障电路------------------------------------------------------------------------4单片机电路---------------------------------------------------------------------7

基于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

超声波避障小车程序设计

/****************************************************************************** *****************************/ //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;

红外寻迹避障电路总结讲解

光电传感器 一、反射式光电传感器简介 反射式光电传感器在机器人中有着广泛的应用。可以用来检测地面明暗和颜色的变化,也可以探测有无接近的物体。这种光电传感器的基本原理是,自带一个光源和一个光接收装置,光源发出的光经过待测物体的反射被光敏元件接收,再经过相关电路的处理得到所需要的信息。相应的,光谱范围,灵敏度,抗干扰能力,输出特性等都是反射式光电传感器的重要参数。 二、简单比较型光电传感器 在上左图中,JP1是光电管,接收光强在上面转换成电流,在R上成为电压信号,与RA1的标准值进行比较,从LM339输出逻辑电平给单片机。 R越大,光电流产生的电压变化越大,传感器也就越灵敏。但是若R过大,当光比较强的时候,R上的电压会达到VCC而不再变化,这就是所谓的饱和。在这种比较型的传感器电路中,饱和只会使强光与强光难以分辨,但仍可以区分强光和弱光,它并不是影响比较结果的重要因素。但在后面介绍的几种调制型传感器中,饱和是必须避免的,因为它会掩盖交流分量。高灵敏度和饱和是一对矛盾,在后面提到了一些相关的解决方案。 LM339是开路输出的,10K的电阻是为了使输出电压正确。如果后面是51之类开路输入的单片机,这个电阻可以省略。 假如把光敏管放在下边,电阻放在上边。这样当光线较暗时比较器输入电压接近VCC,超过比较器LM339能够正常工作的最高输入电压Vm,比较器不能正常工作(LM339的共模输入电压最低能低到0,但是最高达不到VCC),因此灵敏度做不高。为了使比较器正常工作,电阻值应使得光照时比较器输入电压Vi大幅下降,满足VCC-I*RVCC-Vm。这样,光再强一点,I*R接近VCC,Vi 就会降到0附近,光敏管就会饱和,降低了区分颜色的可靠性。 而现在把光敏管放在上边,电阻放在下边,就可以解决这个问题:这时Vi=I*R,使用较小的R可以保证Vi

红外避障电动小车C51程序

红外避障电动小车C51程序 时间:2009-05-13 来源: 作者: 点击:1400 字体大小:【大中小】 #include"reg51.h" #include #define uchar unsigned char #define uint unsigned int #define left_infrare 0 #define right_infrare 1 #define dj_state1 0X5F //前进 #define dj_state2 0X4F //右转 #define dj_state3 0X1F //左转 #define dj_state4 0X0F //后退 #define dj_state5 0XfF //停车 #define light_off 0x0f //关转向灯 #define left_light 0X5F //左转向灯两个是5f #define right_light 0XaF //右转向灯0xaf,两个是0xbf #define back_light 0XcF //刹车灯即后灯 #define front_light 0x3f //前灯 #define light_on 0xff //开所有灯 #define true 1 #define false 0 #define LCD_Data P0 #define Busy 0x80 //用于检测LCD状态字中的Busy标识 sbit c=P1^2; //转向灯使能端 uchar code talk1[]={"backward"}; uchar code talk2[]={"forward"}; uchar code talk3[]={"Turnleft"}; uchar code talk4[]={"Turn right"}; uchar flage =0x00; sbit ledcs=P1^2; //74H573的片选信号 //sbit left_led=P0^2; //左红外发射管 //sbit right_led=P0^3; //右红外发射管 sbit LCD_RS = P1^5; //LCD定义引脚 sbit LCD_RW = P1^6; // sbit LCD_E = P1^7 ; void Delay5Ms(void) { uint TempCyc = 5552; while(TempCyc--); } //400ms延时 void Delay400Ms(void)

自动避障小车课程设计

单片机系统 课程设计 成绩评定表 设计课题:自动避障小车 学院名称:电气工程学院 专业班级:自动1105 学生姓名: 学号: 指导教师: 设计地点:31-630 设计时间:

单片机系统课程设计 课程设计名称:自动避障小车 专业班级:自动1105 学生姓名: 学号: 指导教师: 课程设计地点:31-630 课程设计时间:

单片机系统课程设计任务书

目录 1概述-------------------------------------------------------------- 4 1.1研究背景----------------------------------------------------- 4 1.2设计思想及基本功能------------------------------------------- 4 2总体方案设计------------------------------------------------------ 4 2.1方案论证----------------------------------------------------- 4 2.2系统框图----------------------------------------------------- 5 2.3总体方案设计------------------------------------------------- 6 3硬件电路设计------------------------------------------------------ 7 3.1电源电路----------------------------------------------------- 7 3.2晶振电路----------------------------------------------------- 8 3.3复位电路----------------------------------------------------- 8 3.4键盘电路----------------------------------------------------- 8 3.5显示电路----------------------------------------------------- 9 3.6超声波测距电路---------------------------------------------- 10 3.7舵机电路---------------------------------------------------- 11 3.8电机驱动电路------------------------------------------------ 11 3.9电机转速测量电路-------------------------------------------- 13 3.10设计PCB和腐蚀电路板--------------------------------------- 14 4系统软件设计----------------------------------------------------- 16 4.1分模块程序设计---------------------------------------------- 18 4.2主程序设计-------------------------------------------------- 20 5系统调试 ------------------------------------------------------- 20 6总结 ----------------------------------------------------------- 22参考文献:------------------------------------------------------- 23附录A硬件电路图------------------------------------------------- 24附录B 源程序 ---------------------------------------------------- 25

毕业论文:智能避障小车

毕业论文:智能避障小车 摘要 避障是智能小车应具备的基本功能之一以P89C51RA芯片为核心采集前方障碍信息并对智能小车进行控制选用红外避障传感器检测智能小车前方的障碍物设计了智能小车的自动避障系统并阐述其工作原理该系统设计简单成本低实时性好在室环境中取得了预期的实验结果使智能小车无碰撞到达目的地关键词P89C51RA智能红外避障传感器 Abstract The obstacle avoidance is one of the main functions that an independently intelligent carriage should be provided Use the P89C51RA as a key component collecting the environmental information and controlling the intelligent carriage a kind of obstacle avoidance system of intelligent carriage is designed In this system infrared obstacle avoidance sensors are used to detect the barrieswhich are front of distance between the intelligent carriage and the barriers The systems design is simple and has lower cost and better real time features And at the same time this system has obtained anticipated experimental results in the indoor environment That is the intelligent carriage can arrive at the destination without any collision Keywords P89C51RA intelligent infrared obstacle avoidance sensors

智能小车循迹,避障,红外遥控C语言知识学习代码

//智能小车避障、循迹、红外遥控C语言代码 //实现功能有超声波避障,红外遥控智能小车,红外传感器实现小车自动循迹,1602显示小车的工作状态,另有三个独立按键分别控制三种状态的转换 //注:每个小车的引脚配置都不一样,要注意引脚的配置,但是我的代码注释比较多,看起来比较容易一点 #include #include #include"lcd.h" #include #define uchar unsigned char #define uint unsigned int uchar ENCHAR_PuZh1[8]=" run ";//1602显示数组 uchar ENCHAR_PuZh2[8]=" back "; uchar ENCHAR_PuZh3[8]=" stop "; uchar ENCHAR_PuZh4[8]=" left "; uchar ENCHAR_PuZh5[8]=" right "; uchar ENCHAR_PuZh6[8]=" xunji "; uchar ENCHAR_PuZh7[8]=" bizhang"; uchar ENCHAR_PuZh8[8]=" yaokong"; #define HW P2 //红外传感器引脚配置P2k口 #define PWM P1 /* L298N管脚定义*/ /******************************

超声波引脚控制 ******************************/ sbit ECHO=P3^2; //超声波接收引脚定义兼红外遥控按键state_total =2 sbit TRIG=P3^3; //超声波发送引脚定义 /////红外控制引脚配置 sbit KEY2=P3^7; //红外接收器数据线兼循迹按键state_total= 0 sbit KEY1=P3^4; //独立按键p3.4控制自动避障state_total=1 uchar state_total=3,state_2=0;//总状态控制全局变量0为自动循迹模块1为自动避障模块2为红外遥控 uchar state_1,DAT; //红外扫描标志位 uchar time_1=0,time_2=0;//定时器1中断全局变量time_ 2控制PWM脉冲计数time_1控制转弯延时计数也做延时一次0.005s uchar time,timeH,timeL,state=0;//超声波测量缓冲变量state为超声波状态检测控制全局变量 uint count=0; //1602显示计数 /**************************/ unsigned char IRCOM[7]; //红外接收头接收数据缓存IRCOM[2]存放的为数据unsigned char Number,distance[4],date_data[8]={0,0,0,0,0,0,0,0}; //红外接收缓存变量 /***********/ void IRdelay(char x); //x*0.14MS 红外头专用delay void run();

自动避障小车设计

自动避障小车 技术报告 前言 设计背景:在科学探索和紧急抢险中经常会遇到对与一些危险或人类不能直接到达的地域的探测,这些就需要用机器人来完成。而在机器人在复杂地形中行进时自动避障是一项必不可少也是最基本的功能。因此,自动避障系统的研发就应运而生。 我们的自动避障小车就是基于这一系统开发而成的。随着科技的发展,对于未知空间和人类所不能直接到达的地域的探索逐步成为热门,这就使机器人的自动避障有了重大的意义。我们的自动避障小车就是自动避障机器人中的一类。自动避障小车可以作为地域探索机器人和紧急抢险机器人的运动系统,让机器人在行进中自动避过障碍物。

目录 一、设计目标: (3) 二、方案设计: (4) 2.1直流调速系统 (4) 2.2检测系统 (4) 三硬件设计 (5) 3.1、SPCE061A单片机最小系统 (5) 3.1.1.SPCE061A时钟电路 (8) 3.1.2.PLL锁相环 (9) 3.1.3.看门狗Watchdog (9) 3.1.4.低电压复位(LVR) (10) 3.1.5.I/O端口 (10) 3.1.6.时基与定时器 (11) 3.1.7.SPCE061A的定时器/计数器 (11) 3.1.8.ADC、DAC (12) 3.2、超声波传感器 (12) 四软件设计 (16) 4.1软件设计各模块 (16) 4.2速度控制 (17) 4.3障碍物检测 (17) 4.4看门狗 (17) 4.5基频中断 (18)

4.6程序设计流程图 (19) 五:测试数据、测试结果分析及结论 (19) 程序附录 (21) 1.主程序: (21) 2.中断程序 (24) 3、测距程序 (28) 一、设计目标: 1.小车从无障碍地区启动前进,感应前进路线上的障碍物 后,能自动避开障碍物。 2.根据障碍物的位置选择下一步行进方向,选择左拐还是右 拐,若障碍物在左边则自动右拐,若障碍物在右边则左拐,若障碍物在正前方可任意选择左拐或者是右拐,以达到避开障碍物的目的。 3.通过利用单片机内时钟源的控制设定左拐和右拐的时间, 从而能持续前进。 4.为达到速度的可控性,需设置两个独立按键对小车进行控 速。

循迹、红外避障、遥控综合程序

循迹、红外避障、遥控综合程序 /**********************ZYWIFI0939C-WIFI机器人实验板例程************************ * 平台:ZYWIFI0939C-WIFI机器人+ Keil U4 + STC89C52 * 名称:ZY-1智能小车参考程序 * 公司:湖南智宇科教设备有限公司 * 淘宝:https://https://www.wendangku.net/doc/c52069013.html,/ * 网站:https://www.wendangku.net/doc/c52069013.html, * 编写:智宇公司研发一部 * 日期:2015-1-15 * 交流:智能车QQ:261339276 * 晶振:11.0592MHZ * 说明:免费开源,不提供源代码分析 * 硬件设置:要有自己动手能力,才能完成实验 * 使用说明:根据下面IO口自己用杜邦线连接各种模块,可以自己修改各种模块IO口* 视频教程:本小车配套学习C语言详细视频教程,资料统一网盘下载重点提示:本程序只做参考,不提供技术支持,请自己研究吸收。 ******************************************************************/ #include #include #include //包含HL-1蓝牙智能小车驱动IO口定义等函数#define Left_1_led P3_7 //左循迹传感器 #define Right_1_led P3_6 //右循迹传感器 #define LeftIRBZ P3_5 //左避障传感器 #define RightIRBZ P3_4 //右避障传感器 sbit SB1=P2^3; //定义蜂鸣器端口 sbit IRIN=P3^3; //定义红外接收端口 unsigned char code LedShowData[]={0x03,0x9F,0x25,0x0D,0x99, //定义数码管显示数据 0x49,0x41,0x1F,0x01,0x19};//0,1,2,3,4,5,6,7,8,9 unsigned char code RecvData[]={0x19,0x46,0x15,0x43,0x44,0x40,0x0D,0x0E,0x00,0x0F}; unsigned char IRCOM[7]; #define ShowPort P0 //定义数码管显示端口unsigned char temp = 1; void Delay1ms(unsigned int i) { unsigned char j,k; do{

红外避障小车课程设计报告

前言 --------------------------------------------------- 随着生产自动化的发展需要,机器人已经越来越广泛地应用到生产自动化上,随着科学技术的发展,机器人的传感器种类也越来越多,其中红外传感器已经成为自动行走和驾驶的重要部件。 红外的典型应用领域为自主式智能导航系统,机器人要实现自动避障功能就必须要感知障碍物,感知障碍物相当给机器人一个视觉功能。智能避障是基于红外传感系统,采用红外传感器实现前方障碍物检测,并判断障碍物远近。 由于时间和水平有限,我们暂选最基本的避障功能作为此次设计的目标。 本设计通过小车这个载体再结合由AT89S51为核心的控制板可以达到其基本功能,再辅加由漫反射式光电开关组成的避障电路、555组成的转速控制电路、电源电路、差分驱动电路就可以完善整个设计。

目录 前言------------------------------------------------------------------------------1目录------------------------------------------------------------------------------2摘要------------------------------------------------------------------------------3功能概述------------------------------------------------------------------------3硬件设计------------------------------------------------------------------------3 避障电路------------------------------------------------------------------------4单片机电路---------------------------------------------------------------------7电机转速控制电路------------------------------------------------------------7电源电路------------------------------------------------------------------------8电机驱动电路---------------------------------------------------------------9主程序设计--------------------------------------------------------------------12小结-----------------------------------------------------------------------------23参考文献-----------------------------------------------------------------------23

红外对管循迹避障

#include #include #define uchar unsigned char #define uint unsigned int #pragma data:code const table[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //延时函数 void delay(uint ms) { uint i,j; for(i=0;i

break; } case 4: //右转 { PORTA|=0X01; break; } case 5: //停止 { break; } } } void main() { chushihua(); run(1); while(1) { if(PINB&(BIT(0))) //避障 { run(2); run(3); delay(10); } if(!(PINB&(BIT(1)))) //左测红外对管循迹超出 { run(3); delay(10); } if(!(PINB&(BIT(2)))) //右测红外对管循迹超出 { run(4); delay(10); } run(1); } }

红外避障小车实验

红外避障小车实验报告 一、实验简介 在本实验中,我们在“创意之星”模块化学习套件所提供的机械构件基础上,组装出四轮驱动式小车结构。利用机器人的控制器和系统程序,通过多传感器融合技术结合逻辑判断算法对智能小车的运行状态进行实时调控,最终实现自主探路、判断及选择正确的行进路线功能,完成自主躲避障碍物的任务。 二、实验目的 (1)掌握基本构型和传感器的安装方法,并能搭建出能完成一定功能的机器人,利用创意之星组件,进行避障小车的组 装,调试,利用红外传感器进行路障感应,完成避障功能。(2)会用控制器联机调试舵机工作状态,会查询各种传感器的数据。 (3)通过 NorthStar 的流程图功能,实现简单的逻辑控制(4)能通过编程实现智能小车自主躲避障碍物的功能 (5)对避障小车的避障原理有充分的理解,掌握其避障的方法,能够对实验过程中出现的问题进行解决,发现问题, 解决问题。

三、实验器材 计算机( 1 台);标准版控制器( 1 个);红外接近传感器( 2 个);红外测距传感器( 1 个);直流电源( 1 个);充电器( 1 个);数字舵机( 4 个);多功能调试器( 1 个);轮子( 4 个);螺丝刀( 1 个); KD ( 4 个); L3-1 ( 4 个); U3H ( 5 个);I7 ( 1 个);螺丝和垫片(若干) 四、实验原理 利用红外传感器,其优点是对近距离的障碍物反应速度灵敏,不同方位的传感器之间信号不会相互干扰,最终选择红外传感器作为小车的眼睛,进行避障。 由于本次实验小车轮子没有实现转弯功能,所以通过设定左右两组轮子的不同前进速度来实现转弯功能。当向右转时,左侧轮子的速度要比右侧轮子的前进速度快,反之实现左转功能,此设计需小心谨慎,防止出现轮子不同步,无法实现转弯功能。 五、实验内容 ( 1 )搭建智能小车,掌握基本构型的组装方法,主要包括舵机和轮子的连接、传感器的安装以及舵机和传感器的接线 ( 2 )通过编程控制智能小车的前进、后退、变速以及转向( 3 )将控制策略的流程图用真正的程序语言实现,并下载到

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

封面

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

小车自动避障与路径规划

第3章系统总体结构及工作原理 该系统主要以超声波测距为基本测距原理,并在相应的硬件和软件的支持下,达到机器人避障的效果。 3.1机器人总体硬件设计 3.1.1传感器的分布要求 为了全方位检测障物的分布状况,并及时为机器人系统提供全面的数据,可将所需的八个传感器均匀排列在机器人周围,相邻每对传感器互成45度角。为了避免相互干扰,八个传感器以程序运行周期为周期,进行循环测距。传感器排列示意图如下: 图3.1.1 传感器分布图

图3.1.2 硬件设计总体框架图 上图为支持机器人运行实用程序的硬件部分的总体设计框架图,由负责相关任务的同学提供。在超声波信号输入单片机以后,由存储在单片机中的主程序调用避障子程序,根据输入信号执行避障指令,并使相关数据返回主程序,转而提供给电机和LED显示器的驱动程序使用,最后,由电机执行转向指令,结果则显示在LED显示器上。

图3.1.3 软件总体框架图 由上图可知,本文作者负责的超声波避障程序为软件总体设计中的子程序部分。在主程序运行过程中,若调用超声波避障程序,机器人在自行轨迹规划后,将程序处理所得数据送给电机处理成立程序,控制电机动作。具体的避障程序设计将在第4章进行。 3.2超声波测距原理 测距原理:超声波是指频率高于20KHz的机械波。为了以超声波作为检测

手段,必须产生超生波和接收超声波。完成这种功能的装置就是超声波传感器,习惯上称为超声波换能器或超声波探头。超声波传感器有发送器和接收器,但一个超声波传感器也可具有发送和接收声波的双重作用。超声波传感器是利用压电效应的原理将电能和超声波相互转化即在发射超声波的时候,将电能转换,发射超声波;而在收到回波的时候,则将超声振动转换成电信号。[8]超声波测距的原理一般采用渡越时间法TOF(time of flight)。首先测出超声波从发射到遇到障碍物返回所经历的时间,再乘以超声波的速度就得到二倍的声源与障碍物之间的距离,即:[8] D=ct/2 其中D为传感器与障碍物之间的距离,以m计,c为超声波速度,这里以340m/s计,t为超声波从发送到接收的总时间,以s计。据此原理可以用超声波传感器测得的距离为避障程序提供所需的数据。[8] 第4章轨迹规划算法的实现方案 4.1轨迹规划算法的层次化设计 根据上述材料分析,可以将机器人轨迹规划算法设计分为基础控制层、行为控制层和坐标计算层,三个层次进行。 4.1.1基础控制层设计 基础控制层可定义为基本行为层,这层算法的任务是寻找目标点,并确保机器人可以顺利到达指定目标位。在确定目的地位置的情况下,为了达到上述目的,计算机必须对机器人的方位进行时实计算。应用人工势场法原理,可以将目标点设为引力极,牵引机器人运动。对此动作建立相应的模型,可以使用建立平面坐标作为虚拟势场的方法来给机器人定义方位,将机器人关于目标点的时实偏角作为虚拟引力方向,以确定机器人下一步所需转过的角度,并时实检测,是否已到达目的地,若已到达,则可认为虚拟引力此刻为0,并发出信号控制程序终止运行总体程序。 由此,可确定基础控制层所需的各参数: (1)机器人的时实坐标x, y值,由专门的坐标计算层提供,为了提高精 确度,可以采用厘米为单位制。 (2)机器人的速度v,测量后设为定值使用。 (3)周期T,直接设置为定值使用。 (4)偏转角de,可通过机器人与横坐标之间的夹角pe,减去机器人到目 标点连线与横坐标的夹角E得到。

相关文档
相关文档 最新文档