智能小车程序流程图

智能小车程序流程图

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

智能小车控制程序1

/*实现前进与后退功能*/ /*控制智能车向前行驶10秒,然后停3秒,再向后行驶6秒,停止*/ /********************************************************/ #include #define uint unsigned int /*进行端口声明时,应与具体硬件连接相对应,如不相互对应,将影响程序功能的正常实现*/ sbit S1=P1^3; //对电机端口声明 sbit S2=P1^4; sbit S3=P1^5; sbit S4=P1^6; /*功能函数定义*/ void delay(uint del) //延时函数,延时del毫秒 { uint i,j; for(i=0; i

{ go(); //前进 delay(10000); //前进10秒 stop(); //停止 delay(3000); //停3秒 back(); //后退 delay(6000); //后退6秒 stop(); //停止 }

智能循迹小车程序

#include #define uchar unsigned char #define uint unsigned int //D0-D7:f,b,a,e,d,h,c,g 共阴依次编码 //74LS04反相器驱动数码管 uchar code table[10] = {0x5F,0x42,0x9E,0xD6,0xC3,0xD5,0xDD,0x46,0xDF,0xD7}; uchar i = 0; //用于0-3数码管轮流显示 uint j = 0; //计时的次数 uint time=0; //计时 uint pwm=16; //占空比 uint speed; //调制PWM波的当前的值 sbit R=P3^2; //右边传感器P3^2 sbit L=P3^3; //左边传感器P3^3 //电机驱动口定义 sbit E NB=P1^0; //前轮电机停止控制使能 sbit E NA=P1^1; //后轮控制调速控制端口 sbit I N1=P1^2; //前轮 sbit I N2=P1^3; //前轮 sbit I N3=P1^4; //后轮 sbit I N4=P1^5; //后轮 void Init() { TMOD = 0x12; //定时器0用方式2,定时器1用方式1 TH0=(256-200)/256; //pwm TL0=(256-200)/256; TH1 = 0x0F8; //定时2ms TL1 = 0x30; EA = 1; ET0 = 1; ET1 = 1; TR0 = 1; TR1 = 1; } void tim0(void) interrupt 1 //产生PWM { speed ++; if(speed <= pwm) //pwm 就相当于占100的比例 { ENA = 1; } else if(speed < 100) { ENA = 0; }

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

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

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

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.

PWM调速+循迹__智能小车程序

//T0产生双路PWM信号,L298N为直流电机调速,接L298N时相应的管脚上最好接上10K 的上拉电阻。 /* 晶振采用12M,产生的PWM的频率约为100Hz */ #include #include #define uchar unsigned char #define uint unsigned int sbit en1=P3^4; /* L298的Enable A */ sbit en2=P3^5; /* L298的Enable B */ sbit s1=P1^0; /* L298的Input 1 */ sbit s2=P1^1; /* L298的Input 2 */ sbit s3=P1^3; /* L298的Input 3 */ sbit s4=P1^2; /* L298的Input 4 */ sbit R=P2^0; sbit C=P2^1; sbit L=P2^2; sbit key=P1^4; uchar t=0; /* 中断计数器*/ uchar m1=0; /* 电机1速度值*/ uchar m2=0; /* 电机2速度值*/ uchar tmp1,tmp2; /* 电机当前速度值*/ /* 电机控制函数index-电机号(1,2); speed-电机速度(0-100) */ void motor(uchar index, char speed) { if(speed<=100) { if(index==1) /* 电机1的处理*/ { m1=abs(speed); /* 取速度的绝对值*/ s1=1; s2=0; } if(index==2) /* 电机2的处理*/ { m2=abs(speed); /* 电机2的速度控制*/ s3=1; s4=0; } } } void Back(void) {

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

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

智能循迹小车程序

智能循迹小车程序 Document number:BGCG-0857-BTDO-0089-2022

#include<> #define uchar unsigned char #define uint unsigned int //D0-D7:f,b,a,e,d,h,c,g 共阴依次编码 //74LS04反相器驱动数码管 uchar code table[10] = {0x5F,0x42,0x9E,0xD6,0xC3,0xD5,0xDD,0x46,0xDF,0xD7}; uchar i = 0; //用于0-3数码管轮流显示uint j = 0; //计时的次数 uint time=0; //计时 uint pwm=16; //占空比 uint speed; //调制PWM波的当前的值 sbit R=P3^2; //右边传感器 P3^2 sbit L=P3^3; //左边传感器 P3^3 //电机驱动口定义 sbit ENB=P1^0; //前轮电机停止控制使能 sbit ENA=P1^1; //后轮控制调速控制端口 sbit IN1=P1^2; //前轮 sbit IN2=P1^3; //前轮 sbit IN3=P1^4; //后轮

sbit IN4=P1^5; //后轮 void Init() { TMOD = 0x12; //定时器0用方式2,定时器1用方式1 TH0=(256-200)/256; //pwm TL0=(256-200)/256; TH1 = 0x0F8; //定时2ms TL1 = 0x30; EA = 1; ET0 = 1; ET1 = 1; TR0 = 1; TR1 = 1; } void tim0(void) interrupt 1 //产生PWM { speed ++; if(speed <= pwm) //pwm 就相当于占100的比例{ ENA = 1; }

智能循迹小车总体设计方案

智能循迹小车总体设计方案 1.1 整体设计方案 本系统采用简单明了的设计方案。通过高发射功率红外光电二极管和高灵敏度光电晶体管组成的传感器循迹模块黑线路经,然后由AT89S52通过IO口控制L298N驱动模块改变两个直流电机的工作状态,最后实现小车循迹。 1.2系统设计步骤 (1)根据设计要求,确定控制方案; (2)将各个模块进行组装并进行简单调试; (3)画出程序流程图,使用C语言进行编程; (4)将程序烧录到单片机内; (5)进行调试以实现控制功能。 1.2.1系统基本组成 智能循迹小车主要由AT89S52单片机电路、循迹模块、L298N驱动模块、直流电机、小车底板、电源模块等组成。 (1)单片机电路:采用AT89S52芯片作为控制单元。AT89S52单片机具有低成本、高性能、抗干扰能力强、超低功耗、低电磁干扰,并且与传统的8051单片机程序兼容,无需改变硬件,支持在系统编程技术。使用ISP可不用编程器直接在PCB板上烧录程序,修改、调速都方便。 (2)循迹模块:采用脉冲调制反射红外发射接收器作为循迹传感器,调制信号带有交流分量,可减少外界的大量干扰。信号采集部分就相

当于智能循迹小车的眼睛,有它完成黑线识别并产生高、低平信号传送到控制单元,然后单片机生成指令来控制驱动模块来控制两个直流电机的工作状态,来完成自动循迹。 (3)L298N驱动模块:采用L298N作为点击驱动芯片。L298N具有高电压、大电流、响应频率高的全桥驱动芯片,一片L298N可以分别控制两个直流电机,并且带有控制使能端。该电机驱动芯片驱动能力强、操作方便、稳定性好,性能优良。L298N的使能端可以外接电平控制,也可以利用单片机进行软件控制,满足各种复杂电路的需要。另外,L298N的驱动功率较大,能够根据输入电压的大小输出不同的电压和功率,解决了负载能力不够的问题。

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

第二章智能寻迹避障小车寻迹系统设计 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、避障模块 避障方案选择,方案一:采用超声波避障。超声波受环境影响较大,电路复杂,而且地面对超声波的反射,会影响系统对障碍物的判断。

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(); //*此处调用看似多余,但可以确保机器人高速运转下动作的连贯性 }

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

智能寻迹小车以及程序

寻迹小车 在历届全国大学生电子设计竞赛中多次出现了集光、机、电于一体的简易智能小车题目。笔者通过论证、比较、实验之后,制作出了简易小车的寻迹电路系统。整个系统基于普通玩具小车的机械结构,并利用了小车的底盘、前后轮电机及其自动复原装置,能够平稳跟踪路面黑色轨迹运行。 总体方案 整个电路系统分为检测、控制、驱动三个模块。首先利用光电对管对路面信号进行检测,经过比较器处理之后,送给软件控制模块进行实时控制,输出相应的信号给驱动芯片驱动电机转动,从而控制整个小车的运动。系统方案方框图如图1所示。 图1 智能小车寻迹系统框图 传感检测单元 小车循迹原理 该智能小车在画有黑线的白纸“路面”上行驶,由于黑线和白纸对光线的反射系数不同,可根据接收到的反射光的强弱来判断“道路”—黑线。笔者在该模块中利用了简单、应用也比较普遍的检测方法——红外探测法。 红外探测法,即利用红外线在不同颜色的物理表面具有不同的反射性质的特点。在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色地面时发生漫发射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,则小车上的接收管接收不到信号。 传感器的选择 市场上用于红外探测法的器件较多,可以利用反射式传感器外接简单电路自制探头,也可以使用结构简单、工作性能可靠的集成式红外探头。ST系列集成红外探头价格便宜、体积小、使用方便、性能可靠、用途广泛,所以该系统中最终选择了ST168反射传感器作为红外光的发射和接收器件,其内部结构和外接电路均较为简单,如图2所示:

图2 ST168检测电路 ST168采用高发射功率红外光、电二极管和高灵敏光电晶体管组成,采用非接触式检测方式。ST168的检测距离很小,一般为8~15毫米,因为8毫米以下是它的检测盲区,而大于15毫米则很容易受干扰。笔者经过多次测试、比较,发现把传感器安装在距离检测物表面10毫米时,检测效果最好。 R1限制发射二极管的电流,发射管的电流和发射功率成正比,但受其极限输入正向电流50mA的影响,用R1=150的电阻作为限流电阻,Vcc=5V作为电源电压,测试发现发射功率完全能满足检测需要;可变电阻R2可限制接收电路的电流,一方面保护接收红外管;另一方面可调节检测电路的灵敏度。因为传感器输出端得到的是模拟电压信号,所以在输出端增加了比较器,先将ST168输出电压与2.5V进行比较,再送给单片机处理和控制。 传感器的安装 正确选择检测方法和传感器件是决定循迹效果的重要因素,而且正确的器件安装方法也是循迹电路好坏的一个重要因素。从简单、方便、可靠等角度出发,同时在底盘装设4个红外探测头,进行两级方向纠正控制,将大大提高其循迹的可靠性,具体位置分布如图3所示。

智能循迹小车详细制作过程

(穿山乙工作室) 三天三十元做出智能车 0.准备所需基本元器件 1).基本二驱车体一台。(本课以穿山乙推出的基本车体为例讲解) 2).5x7cm 洞洞板、单片机卡槽、51单片机、石英晶体、红色LED 、1K 电阻、10K 排阻各一个;2个瓷片电容、排针40个。 3).5x7cm 洞洞板、7805稳压芯片、红色LED 、1K 电阻各一个;双孔接线柱三个、10u 电解电容2个、排针12个、9110驱动芯片2个。 4).5x7cm 洞洞板、LM324比较器芯片各一个;红外对管三对、4.7K 电阻3个、330电阻三个、红色3mmLED 三个。 一、组装车体 基本设计思路: 1.基本车架(两个电机一体轮子+一个万向轮) 2.单片机主控模块 3.电机驱动模块(内置5V 电源输出) 4.黑白线循迹模块

(图中显示的很清晰吧,照着上螺丝就行了) 二、制作单片机控制模块 材料:5x7cm洞洞板、单片机卡槽、51单片机、石英晶体、红色LED、1K电阻、10K排阻各一个;2个瓷片电容、排针40个。 电路图如下,主要目的是把单片机的各个引脚用排针引出来,便于使用。我们也有焊接好的实物图供你参考。(如果你选用的是STC98系列的单片机在这里可以省掉复位电路不焊,仍能正常工作。我实物图中就没焊复位)

三、制作电机驱动模块 材料:5x7cm洞洞板、7805稳压芯片、红色LED、1K电阻各一个;双孔接线柱三个、10u电解电容2个、排针12个、9110驱动芯片2个。 电路图如下,这里我们把电源模块与驱动模块含在了同一个电路板上。因为电机驱动模块所需的电压是+9V左右(6—15V 均可),而单片机主控和循迹模块所需电压均为+5V。 这里用了一个7805稳压芯片将+9V电压稳出+5V电压。 +9V

智能循迹小车设计

智能循迹/避障小车研究 工作报告 一、智能循迹小车程序结构框图 二、Proteus仿真图 三、软件程序设计

一、智能循迹小车程序结构框图 经过几天在网上的查找,对智能循迹/避障小车有了大致的了 解, 一般有三个模块: 1、最基本的小车驱动模块,使用两个二相四线步进电机对小车的两个后轮分别进行驱动,前轮最好用万向轮,能使小车更好地转弯; 2、小车循迹模块,在小车底部有三个并排安装的红外对管,对黑色与白色的反射信号不同,经单片机处理后对小车进行相应处理; 3、避障模块,我写的程序中对于避障模块是用中断来处理的(即安装在小车车头的红外对管检测到有障碍物后,就会向单片机的P3_2口输出一个高电平或是低电平,这时中断程序将对小车进行预先设定好的避障处理),但是在程序结构框图中,我不太会表示中断处理方式,所以就用查询的方式画了。

N Y N Y 二、Proteus 仿真图 我用Proteus 大概地仿真了小车的运行状态。图中的两个二相四线步进电机就代表小车的左右轮(假定步进电机顺时针转动方向为小车前进方向),网上有很多种驱动芯片,在仿真时我只使用L298N 芯

片来驱动步进电机。用三个单刀双制开关模拟用于小车循迹的三个红外对管的输出信号,经一个与门与三极管开关连接到P3_3口,中断程序对P1_0, P1_1, P1_2三个口进行检测,并做出相应处理。同时因为避障模块的优先级高于循迹模块,所以将外部中断0用于避障,外部中断1用于循迹。P1_3口则用于检测小车是否到达终点。 1、小车驱动模块: 使用一片298芯片驱动一个二相四线步进电机,电机的电压为12V。

智能避障小车系统

智能避障小车系统设计 学科:新技术专题 班级:-------- 姓名:- - - 学号:17号 指导教师:---- 电气信息工程学院

一、系统设计概述 通过飞思卡尔智能车竞赛的学习和启发,本设计实现一款具有自动避障运行功能的智能小车,通过光电开关和超声波测距模块配合识别前方是否有障碍物,如果遇到障碍物则通过舵机改变行驶方向。直流电机驱动模块采用PID闭环控制,可以达到速度稳定、快速、准确的控制,使智能小车能够及时制动和恒速运行。 本设计报告针对传感器信号处理设计、电路设计、控制算法等方面进行重点阐述。 二、总体系统构想框图 本设计中智能避障小车的体系结构如上图。根据功能不同,避障小车的系统

结构大致包括传感器、控制、执行机构、人机接口和电源五大部分。 1.传感器部分 负责感知外部世界的环境信息和车模自身的状态信息,为小车完成路况判断和实现小车的运动控制提供所需的信息。传感器部分包括光电开关、超声波测距模块和编码器测速模块三个子模块。 2.控制部分 分析传感器数据,提取路况信息,运行控制算法,向执行机构发出动作信号,控制赛车朝无障碍方向行驶。控制部分主体是16位单片机MC9S12XS128。 3.执行机构 负责执行动作信号,实现车的前进、变速和转向。执行机构包括电机和舵机以及电机驱动模块。 4.人机接口 实现模式和参数选择、状态指示、实时监控以及数据存储等人机交互功能,包括拨码开关、LED 、蜂鸣器、无线等模块。 5.电源部分 负责向各部分提供合适的电源,包括电池和稳压模块 三、核心传感器模块 1、超声波测距模块 超声波模块采用目前比较常用的URM37超声波传感器 默认是232接口,可以调为TTL 接口,URM05大功率超声波 传感器测试距离能到10 米,算是目前来说测试距离比较远的一款。 功能应用:超声波测距模块通过超声波发收的时间差计算得前方 障碍物的距离,作为车体前方主要测距模块判断前方路况。 2、光电传感器 光电开关是传感器的一种,它把发射端和接收端 之间光的强光电开关弱变化转化为电流的变化以 达到探测的目的。它所使用的冷光源有红外光、 红色光、绿色光和蓝色光等,可非接触,无损 伤地迅速和控制各种固体、液体、透明体、黑体、 柔软体和烟雾等物质的状态和动作。具有体积小、 功能多、寿命长、精度高、响应速度快、检测距 离远以及抗光、电、磁干扰能力强的优点。 功能应用:由于光电开关相比没有超声波测距远,

智能小车速度控制程序

/************************************************************************** ** 简单寻迹程序:接法 EN1 EN2 PWM输入端,本程序不输入PWM,直接使插上跳线帽,使能输出,这样就能全速运行 接上测速模块 测速模块电源+5V GND 取自于单片机板靠近液晶调节对比度的电源输出接口 把测速模块输出OUT1 OUT2 接入单片机P3。2 P3。3 P1_0 P1_1 接IN1 IN2 当P1_0=1,P1_1=0; 时左上电机正转左上电机接驱动板子输出端(蓝色端子OUT1 OUT2) P1_0 P1_1 接IN1 IN2 当P1_0=0,P1_1=1; 时左上电机反转 P1_0 P1_1 接IN1 IN2 当P1_0=0,P1_1=0; 时左上电机停转 P1_2 P1_3 接IN3 IN4 当P1_2=1,P1_3=0; 时左下电机正转左下电机接驱动板子输出端(蓝色端子OUT3 OUT4) P1_2 P1_3 接IN3 IN4 当P1_2=0,P1_3=1; 时左下电机反转 P1_2 P1_3 接IN3 IN4 当P1_2=0,P1_3=0; 时左下电机停转 P1_4 P1_5 接IN5 IN6 当P1_4=1,P1_5=0; 时右上电机正转右上电机接驱动板子输出端(蓝色端子OUT5 OUT6) P1_4 P1_5 接IN5 IN6 当P1_4=0,P1_5=1; 时右上电机反转

P1_4 P1_5 接IN5 IN6 当P1_4=0,P1_5=0; 时右上电机停转 P1_6 P1_7 接IN7 IN8 当P1_6=1,P1_7=0; 时右下电机正转右下电机接驱动板子输出端(蓝色端子OUT7 OUT8) P1_6 P1_7 接IN7 IN8 当P1_6=0,P1_7=1; 时右下电机反转 P1_6 P1_7 接IN7 IN8 当P1_6=0,P1_7=0; 时右下电机停转 P3_2接四路寻迹模块接口第一路输出信号即中控板上面标记为OUT1 P3_3接四路寻迹模块接口第二路输出信号即中控板上面标记为OUT2 P3_4接四路寻迹模块接口第三路输出信号即中控板上面标记为OUT3 P3_5接四路寻迹模块接口第四路输出信号即中控板上面标记为OUT4 四路寻迹传感器有信号(白线)为0 没有信号(黑线)为1 四路寻迹传感器电源+5V GND 取自于单片机板靠近液晶调节对比度的电源输出接口 关于单片机电源:本店驱动模块内带LDO稳压芯片,当电池输入6V时时候可以输出稳定的5V 分别在针脚标+5 与GND 。这个输出电源可以作为单片机系统的供电电源。 ****************************************************************************/ #include

相关文档
最新文档