寻迹避障小车原理_第1页
寻迹避障小车原理_第2页
寻迹避障小车原理_第3页
寻迹避障小车原理_第4页
寻迹避障小车原理_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

循迹避障小车原理一)小车功能实现利用光电传感(红外对射管,红外发射与接收二极管组成)检测黑白线,实现小车能跟着白线(或黑线)行走,同时也可避开障碍物,即小车寻迹过程中,若遇障碍物可自行绕开,绕开后继续寻迹。二)电路分析光电传感循迹光电传感器原理,利用黑白线对红外线不同的反射能力。然后通过光敏二极管或光敏三极管,接收反射回的不同光强信号,把不同光强转换为电流信号,最后通过电阻,转换为单片机可识别的高低电平。光电传感器实现循迹的基本电路如下图所示|«GND|«GND电路解释:TC端是传感器工作控制端,为高电平时,发光二极管不工作,传感器休眠,为低电平时,传感器启动。Signal端为检测信号输出,当遇到黑线,黑线吸收大量的红外线,反射的红外线很弱,光敏三极管不导通,signal输出高电平,当遇到白线,与黑线相反,反射的红外线很强,使光敏三极管导通,signal输出低电平。寻迹部分调整左右传感器之间的距离,两探头距离约等于白线宽度最合适,一般白线宽度选择范围为3-5厘米比较合适。注意:该传感器的灵敏度是可调的,偶尔传感器遇到白线却不能送出相应的信号,通过调节传感器上的可调电阻,适当的增大或减小灵敏度。另外,循迹传感器的安放也算是比较有讲究的,有两种方法,一种是两个都是放置在白线内侧但紧贴白线边缘,第二种是都放置在白线的外侧,同样紧贴白线边缘。我们通常采用第二种方法。编写程序使小车遇白线时,小车跟着白线走。当小车先前前进时,如果向左偏离了白线。那么右边传感器会产生一个低电平,单片机判断这个信号,然后向右拐。回到白线后。两传感器输出信号为高电平。小车前进。如果小车向右偏离白线,左边传感器产生一个低电平,单片机判断这个信号,然后向左拐。如此如此,小车必不偏离白线。若小车的两对光电传感器同时输出的信号为高电平(黑

底)或低电平(白底),即单片机判断的都为高电平或低电平,小车向前直走,在此过程中(直走)小车若遇白线,小车又重复上面动作跟着白线走。避障部分当小车在寻迹(沿着白线走或直走)过程中遇障碍物,小车亦可自行转弯,转弯动作完成后,又继续寻迹。电机驱动电路电机驱动芯片采用L298N,是一款承受高压大电流的全桥型直流/步进电压驱动器,如下图55电施传感器B输出引脚4输出引脚3;输入引脚4便能端B55电施传感器B输出引脚4输出引脚3;输入引脚4便能端B输X引脚3谡辑地输*引脚2便能端口输入引脚1电机电源输出引脚N输出引,脚1电疏传感器卫引脚编号名称功能1电流传感器A在该引脚和地之间接小阻值电阻可用来检测电流2输出引脚1内置驱动器A的输出端1,接至电机A3输出引脚2内置驱动器A的输出端2,接至电机A

4电机电源端电机供电输入端,电压可达46V5输入引脚1内置驱动器A的逻辑控制输入端16使能端A内置驱动器A的使能端7输入引脚2内置驱动器A的逻辑控制输入端28逻辑地逻辑地9逻辑电源端逻辑控制电路的电源输入端为5V10输入引脚3内置驱动器B的逻辑控制输入端111使能端B内置驱动器B的使能端12输入引脚4内置驱动器B的逻辑控制输入端213输出引脚3内置驱动器B的输出端1,接至电机B14输出引脚4内置驱动器B的输出端2,接至电机B15电流传感器B在该引脚和地之间接小阻值电阻可用来检测电流L298N内部原理图电机驱动A/B的控制逻辑如下表所示输入信号电机运动方式使能端A/B输入引脚1/3输入引脚2/4110'-14-刖进101后退111紧急停车100紧急停车0XX自由转动

电机驱动A/B的工作原理电机控制逻辑如下:以电机A为例,当使能端A为高电平是,如果输入端M1Direction引脚为高电平,三极管导通,输入引脚1为低电平而输入引脚2为高电平,电机A反转;如果输入端M1Direction引脚为底电平,三极管截止,输入引脚1为高电平而输入引脚2为低电平,电机A正转。曰爪驱计由.再TD12P2.C8VCCB1L29ENGND■P0.0■P01■P0.2■P03■P05,次■P0.7•13Ft曰爪驱计由.再TD12P2.C8VCCB1L29ENGND■P0.0■P01■P0.2■P03■P05,次■P0.7•13Ft—1ELD〜T^-1工二J.5竟2_2_22.2.1-2.F必-pp-ppFJl.TKINLVSSVSIN3IN4OUT1ENAOUT2ENBOUT3OUT4GNDISENAISENB94GNDTVCCB2TBL5GND3.中文液晶显示器128x64带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块。其显示分辨率为128X64,内置8192个16*16点汉字,和128个16*8点ASCII字符集。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8X4行16X16点阵的汉字,也可完成图形显示。具有低电压低功耗特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。基本特性:低电源电压(VDD:++)显示分辨率:128X64点内置汉字字库,提供8192个16X16点阵汉字(简繁体可选)内置128个16X8点阵字符2MHZ时钟频率显示方式:STN、半透、正显驱动方式:1/32DUTY,1/5BIAS视角方向:6点背光方式:侧部高亮白色LED,功耗仅为普通LED的1/5—1/10通讯方式:串行、并口可选内置DC-DC转换电路,无需外加负压无需片选信号,简化软件设计

工作温度:0°C-+55°C,存储温度:-20°C-+60°C模块接口说明:接口定又引脚号标识说明PIN1GND接DVPIN2VCC接~IN3VOWOU和VEE接可调电阻'中间抽央接至V。PIN4RSCS并行榛式,RS=O.指令寄存器;RS-1,数据奇存器。串行模式=片选PINSR/WSID并行模式=写;R/W=1读,率行模式;数据PIN6ESGK井行疵式,允许信号,串祥棋式:脉冲FIN7DO井行模式:数据S率行模式=不遑接PIN801井行模式:数据1;率行模式=不连接PIN9D2井行模式:数据2串行模式=不迪接PINI1003井行模式,救据田串行模式w不连接PIN11D4井行模式:教握4:串行模式二不逢接PIN1205井行模式:教据6;串行模式:不逢接PINI13D6井行模式;敬据G;串行模式;不逐接PINil407并模式二散据.率寸堪土一不连接PIN15LED+背光正极,接PIN116LED-背光负极,接0V*注:1:如在实际应用中仅使用并口通讯模式,可将PSB接固定高电平,也可以将模块上的J8和“VCC”用焊锡短接;2:模块内部接有上电复位电路,因此在不需要经常复位的场合可将该端悬空;3:如背光和模块共用一个电源,可以将模块上的JA、JK用焊锡短接。引脚控制信号应用D/I,R/W的配合选择决定控制界面的4种模式:D/IR/W功能说明LLMPU写指令到指令暂存器(IR)LH读出忙标志(BF)及地址记数器(AC)的状态HLMPU写入数据到数据暂存器(DR)HHMPU从数据暂存器(DR)中读出数据E信号操作:E状态执行动作结果高——>低I/O缓冲——>DR配合/W进行与数据或指令高DR——>I/O缓冲配合R进行读数据或指令低/低——>高无动作内部寄存器信号•忙标志:BFBF标志提供内部工作情况,BF=1表示模块在进行内部操作,此时模块不接受外部指令和数据。BF=0时,模块为准备状态,随时可接受外部指令和数据。利用STATUSRD指令,可以将BF读到DB7总线,从而检验模块之工作状态。•字型产生ROM(CGROM)字型产生ROM(CGROM)提供8192个此触发器是用于模块屏幕显示开和关的控制。DFF=1为开显示(DISPLAYON),DDRAM的内容就显示在屏幕上,DFF=0为关显示(DISPLAYOFF)。DFF的状态是指令DISPLAYON/OFF和D/IT信号控制的。•显示数据RAM(DDRAM)模块内部显示数据RAM提供64X2个位元组的空间,最多可控制4行16字(64个字)的中文字型显示,当写入显示数据RAM时,可分别显示CGROM与CGRAM的字型;此模块可显示三种字型,分别是半角英数字型(16*8)、CGRAM字型及CGROM的中文字型,三种字型的选择,由在DDRAM中写入的编码选择,在此阶段0000H—0006H的编码中(其代码分别是0000、0002、0004、0006共4个)将选择CGRAM的自定义字型,02H—7FH的编码中将选择半角英数字的字型,至于A1以上的编码将自动的结合下一个位元组,组成两个位元组的编码形成中文字型的编码BIG5(A140—D75F),GB(A1A0-F7FFH)。•字型产生RAM(CGRAM)字型产生RAM提供图象定义(造字)功能,可以提供四组16X16点的自定义图象空间,使用者可以将内部字型没有提供的图象字型自行定义到CGRAM中,便可和CGROM中的定义一样地通过DDRAM显示在屏幕中。•地址计数器AC地址计数器AC地址计数器是用来贮存DDRAM/CGRAM之一的地址,它可由设定指令暂存器来改变,之后只要读取或是写入DDRAM/CGRAM的值时,地址计数器的值就会自动加一,当D/I为“0”时而R/W为“1”时,地址计数器的值会被读取到DB6——DB0中。•光标/闪烁控制电路此模块提供硬体光标及闪烁控制电路,由地址计数器的值来指定DDRAM中的光标或闪烁位置。指令操作模块控制芯片提供两套控制命令,基本指令和扩充指令如下:

指令表1:(RE=0:基本指令)指令孑指令码功能)DR:7D[6)[5)[4)[3)[2)[1)[0/I/W清除显示000()()0)0)()0)将DDRAM真满"20H",^§_^DDRAM的地址计数器饱)到’00H”地址归位000()0)0)0)()1)设定DDRAM的地^址数^器(AC)到"00田',并且将游标移到开头原点位置;这^^^^^^^DDRA吊的内容显示状态开/关000()0)0)1[)()ED=1:整体显示ON3C=1:游标ONB=1:游标位置反白允许进入点设定-000()0)0)0)/D指定在数据的读取与与入时,设定游标的移动方向及指定显示的移位游标或显示移位控制000()0)1S/C>F/L)()设定游标的移动与显示的移位G控制位;这个指令不改变DDRAM的内容功能设定000()1[L)i1E)()DL=0/1:4/8位数据〈RE=1:扩充指令操作RE=0:基本指令操作设定CGRAM地址0001/C5k/C4\/C3\/C2\/C1\/C0设定CGRAM地址设定DDRAM地址001(/)C5k/C4\/C3\/C2\/C1\/C0设定DDRAM地址(显示位址)'第一行:80H-87H第二行:90H-97H读取忙E01FB/C6\/C5k/C4\/C3\/C2\/C1\/C0\读取忙标志(BF)可以确认内部动作是否完成,同时可以读出地址

标志和地址计数器(AC)的值写数据到RAM孑10数据将数据D7——D0写入到内部的RAM(DDRAM/CGRAM/IRAM/GRAM)读出RAM的值E11数据从内部RAM读取数据D7——D0(DDRAM/CGRAM/IRAM/GRAM)指令表2:(RE=1:扩充指令)指令指令码D功能D/IR/WD76D5D4D3D2D1D0待命模式0000000001进入待命模式,执行其他指令都终止卷动地址开关开启000000001R-SR=1:允许输入垂直卷动地址SSR=Q允!^^^入IRAM和CGRAM^地址反白选择000000011R0选择2行中的任一行作反白显示,并可决定反白与否。初始值R1R0=00,第一次设定为反白显示,再次设定变回正常睡眠模式0000001LSXSL=0:进入睡眠模式SL=1:脱离睡眠模式扩充功能设定00001LCXERGCL=0/1:4/8位数据RE=1:扩充指令操作0RE=0:基本指令操作G=1/0:绘图开关设定绘图RAM地址001C60AC50AC40C3AC3AC2AC2AC1AC1AC0AC0A设定绘图RAM先设定垂直(列)AC6AC5…AC0再设定水平(行)地址AC3AC2AC1AC0将以A上16位地址连续写入即可

注:当IC1在接受指令前,微处理器必须先确认其内部处于非忙碌状态,即读取BF标志时,BF需为零,方可接受新的指令;如果在送出一个指令前并不检查BF标志,那么在前一个指令和这个指令中间必须延长一段较长的时间,即是等待前一个指令确实执行完成。三、显示应用1、字符显示带中文字库的128X64-0402B每屏可显示4行8列共32个16X16点阵的汉字,每个显示RAM可显示1个中文字符或2个16X8点阵全高ASCII码字符,即每屏最多可实现32个中文字符或64个ASCII码字符的显示。带中文字库的128X64-0402B内部提供128X2字节的字符显示RAM缓冲区(DDRAM)。字符显示是通过将字符显示编码写入该字符显示RAM实现的。根据写入内容的不同,可分别在液晶屏上显示CGROM(中文字库)、HCGROM(ASCII码字库)及CGRAM(自定义字形)的内容。三种不同字符/字型的选择编码范围为:0000-0006H(其代码分别是0000、0002、0004、0006共4个)显示自定义字型,02H—7FH显示半宽ASCII码字符,A1A0H〜F7FFH显示8192种GB2312中文字库字形。字符显示RAM在液晶模块中的地址80H〜9FH。字符显示的RAM的地址与32个字符显示区域有着一一对应的关系,其对应关系如下表所示。80H81H82H83H84H85H86H87H90H91H92H93H94H95H96H97H88H89H8AH8BH8CH8DH8EH8FH98H99H9AH9BH9CH9DH9EH9FH其中,C语言编译器具有直接把中文转换成ASCII码字符功能。对照下面原理图,编译程序示例,并下载到实验板上,观测现象。161514131211LO9P1.5P1.7P3.2jP3.3P3.5P3.4P3.6P3.74.寻迹避障程序#include<>#defineucharunsignedchar#defineuintunsignedintsbitRM1=P0'0;sbitRM2二P0\;rw=1;do{P1=0x00;en=1;//E信号下降沿锁存DB7~DBOdat=P1;//读入P1的值en=0;//锁存dat=0x80&dat;//BUSY:1内部在工作,0正常状态}while(!(dat=0x00));rw=0;}voidsentcom(ucharcom){checkbusy();//检查Busyrs=0;en=0;P1=com;delay(5);en=1;delay(5);en=0;}voidsentdata(uchardate)//写数据{checkbusy();rs=1;en=0;P1=date;delay(5);en=1;delay(5);en=0;}//初始化LCMvoidlcd_init(){sentcom(0x38);//功能设置,一次送8位数据,基本指令集sentcom(0x0C);//0000,1100整体显示,游标

off,游标位置off清DDRAMDDRAM地址归位清DDRAMDDRAM地址归位设定DDRAM7位地址000,0000到地址计数器ACvoidlcd_string(char*strpoint)//在当前显示位置显示LCD字符串{registeri=0;while(strpoint[i]!=0){sentdata(strpoint[i]);i++;}}voidstop(){lcd_init();sentcom(0x80);lcd_string("现代创新实训室");//C编译系统本省也具有转换功能,所以也可以这样写sentcom(0x90);lcd_string("寻迹避障一体小车");sentcom(0x88);lcd_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论