首页 寻迹避障一体小车

寻迹避障一体小车

举报
开通vip

寻迹避障一体小车循迹避障一体小车 一) 小车功能实现描述 利用光电传感(红外对射管,红外发射与接收二极管组成)检测黑白线,实现小车能跟着白线(或黑线)行走,同时也可避开障碍物,即小车寻迹过程中,若遇障碍物可自行绕开,绕开后继续寻迹。 二) 电路详细分析 1. 光电传感 循迹光电传感器原理,利用黑白线对红外线不同的反射能力。然后通过光敏二极管或光敏三极管,接收反射回的不同光强信号,把不同光强转换为电流信号,最后通过电阻,转换为单片机可识别的高低电平。光电传感器实现循迹的基本电路如下图所示 、 循迹传感器基本电路 电路解释:TC端...

寻迹避障一体小车
循迹避障一体小车 一) 小车功能实现描述 利用光电传感(红外对射管,红外发射与接收二极管组成)检测黑白线,实现小车能跟着白线(或黑线)行走,同时也可避开障碍物,即小车寻迹过程中,若遇障碍物可自行绕开,绕开后继续寻迹。 二) 电路详细 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 1. 光电传感 循迹光电传感器原理,利用黑白线对红外线不同的反射能力。然后通过光敏二极管或光敏三极管,接收反射回的不同光强信号,把不同光强转换为电流信号,最后通过电阻,转换为单片机可识别的高低电平。光电传感器实现循迹的基本电路如下图所示 、 循迹传感器基本电路 电路解释:TC端是传感器工作控制端,为高电平时,发光二极管不工作,传感器休眠,为低电平时,传感器启动。Signal端为检测信号输出,当遇到黑线,黑线吸收大量的红外线,反射的红外线很弱,光敏三极管不导通,signal输出高电平,当遇到白线,与黑线相反,反射的红外线很强,使光敏三极管导通,signal输出低电平。 寻迹部分 调整左右传感器之间的距离,两探头距离约等于白线宽度最合适,一般白线宽度选择范围为3 – 5 厘米比较合适。注意:该传感器的灵敏度是可调的,偶尔传感器遇到白线却不能送出相应的信号,通过调节传感器上的可调电阻,适当的增大或减小灵敏度。另外,循迹传感器的安放也算是比较有讲究的,有两种 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 ,一种是两个都是放置在白线内侧但紧贴白线边缘,第二种是都放置在白线的外侧,同样紧贴白线边缘。我们通常采用第二种方法。 编写程序使小车遇白线时,小车跟着白线走。当小车先前前进时,如果向左偏离了白线。那么右边传感器会产生一个低电平,单片机判断这个信号,然后向右拐。回到白线后。两传感器输出信号为高电平。小车前进。如果小车向右偏离白线,左边传感器产生一个低电平,单片机判断这个信号,然后向左拐。如此如此,小车必不偏离白线。若小车的两对光电传感器同时输出的信号为高电平(黑底)或低电平(白底),即单片机判断的都为高电平或低电平,小车向前直走,在此过程中(直走)小车若遇白线,小车又重复上面动作跟着白线走。 避障部分 当小车在寻迹(沿着白线走或直走)过程中遇障碍物,小车亦可自行转弯,转弯动作完成后,又继续寻迹。  2. 电机驱动电路 电机驱动芯片采用L298N,是一款承受高压大电流的全桥型直流/步进电压驱动器,如下图 电机控制芯片L298N的引脚排列 L298N引脚编号与功能 引脚编号 名称 功能 1 电流传感器A 在该引脚和地之间接小阻值电阻可用来检测电流 2 输出引脚1 内置驱动器A的输出端1,接至电机A 3 输出引脚2 内置驱动器A的输出端2,接至电机A 4 电机电源端 电机供电输入端,电压可达46V 5 输入引脚1 内置驱动器A的逻辑控制输入端1 6 使能端A 内置驱动器A的使能端 7 输入引脚2 内置驱动器A的逻辑控制输入端2 8 逻辑地 逻辑地 9 逻辑电源端 逻辑控制电路的电源输入端为5V 10 输入引脚3 内置驱动器B的逻辑控制输入端1 11 使能端B 内置驱动器B的使能端 12 输入引脚4 内置驱动器B的逻辑控制输入端2 13 输出引脚3 内置驱动器B的输出端1,接至电机B 14 输出引脚4 内置驱动器B的输出端2,接至电机B 15 电流传感器B 在该引脚和地之间接小阻值电阻可用来检测电流       L298N内部原理图 电机驱动A/B的控制逻辑如下表所示 输入信号 电机运动方式 使能端A/B 输入引脚1/3 输入引脚2/4 1 1 0 前进 1 0 1 后退 1 1 1 紧急停车 1 0 0 紧急停车 0 X X 自由转动         电机驱动A/B的工作原理 电机控制逻辑如下:以电机A为例,当使能端A为高电平是,如果输入端M1 Direction引脚为高电平,三极管导通,输入引脚1为低电平而输入引脚2为高电平,电机A反转;如果输入端M1 Direction引脚为底电平,三极管截止,输入引脚1为高电平而输入引脚2为低电平,电机A正转。 电机驱动原理图 3. 中文液晶显示器128x64 带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块。其显示分辨率为128×64, 内置8192个16*16点汉字,和128个16*8点ASCII字符集。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字,也可完成图形显示。具有低电压低功耗特点。由该模块构成的液晶显示 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。 基本特性: 低电源电压(VDD:+3.0--+5.5V) 显示分辨率:128×64点 内置汉字字库,提供8192个16×16点阵汉字(简繁体可选) 内置 128个16×8点阵字符 2MHZ时钟频率 显示方式:STN、半透、正显 驱动方式:1/32DUTY,1/5BIAS 视角方向:6点 背光方式:侧部高亮白色LED,功耗仅为普通LED的1/5—1/10 通讯方式:串行、并口可选 内置DC-DC转换电路,无需外加负压 无需片选信号,简化软件 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 工作温度: 0℃ - +55℃ ,存储温度: -20℃ - +60℃ 模块接口说明: PIN15 LED+ 背光正极,接4.8V-5V PIN116 LED- 背光负极,接0V       *注:1:如在实际应用中仅使用并口通讯模式,可将PSB接固定高电平,也可以将模块上的J8和“VCC”用焊锡短接;2:模块内部接有上电复位电路,因此在不需要经常复位的场合可将该端悬空;3:如背光和模块共用一个电源,可以将模块上的JA、JK用焊锡短接。 引脚控制信号应用 D/I,R/W的配合选择决定控制界面的4种模式: D/I R/W 功能说明 L L MPU写指令到指令暂存器(IR) L H 读出忙 标志 禁止坐卧标志下载饮用水保护区标志下载桥隧标志图下载上坡路安全标志下载地理标志专用标志下载 (BF)及地址记数器(AC)的状态 H L MPU写入数据到数据暂存器(DR) H H MPU从数据暂存器(DR)中读出数据       E信号操作: E状态 执行动作 结果 高——>低 I/O缓冲——>DR 配合/W进行写数据或指令 高 DR——>I/O缓冲 配合R进行读数据或指令 低/低——>高 无动作         内部寄存器信号 ● 忙标志:BF     BF标志提供内部工作情况,BF=1表示模块在进行内部操作,此时模块不接受外部指令和数据。BF=0时,模块为准备状态,随时可接受外部指令和数据。利用STATUS RD 指令,可以将BF读到DB7总线,从而检验模块之工作状态。 ●字型产生ROM(CGROM)     字型产生ROM(CGROM)提供8192个此触发器是用于模块屏幕显示开和关的控制。DFF=1为开显示(DISPLAY ON),DDRAM的内容就显示在屏幕上,DFF=0为关显示(DISPLAY OFF)。DFF 的状态是指令DISPLAY ON/OFF和D/IT信号控制的。 ● 显示数据RAM(DDRAM) 模块内部显示数据RAM提供64×2个位元组的空间,最多可控制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提供图象定义(造字)功能,可以提供四组16×16点的自定义图象空间,使用者可以将内部字型没有提供的图象字型自行定义到CGRAM中,便可和CGROM中的定义一样地通过DDRAM显示在屏幕中。 ● 地址计数器AC 地址计数器AC地址计数器是用来贮存DDRAM/CGRAM之一的地址,它可由设定指令暂存器来改变,之后只要读取或是写入DDRAM/CGRAM的值时,地址计数器的值就会自动加一,当D/I为“0”时而R/W为“1”时,地址计数器的值会被读取到DB6——DB0中。 ●光标/闪烁控制电路 此模块提供硬体光标及闪烁控制电路,由地址计数器的值来指定DDRAM中的光标或闪烁位置。 指令操作 模块控制芯片提供两套控制命令,基本指令和扩充指令如下: 指令表1:(RE=0:基本指令) 指令 指 令 码 功 能 D/I R/W D7 D6 D5 D4 D3 D2 D1 D0 清除 显示 0 0 0 0 0 0 0 0 0 1 将DDRAM填满"20H",并且设定DDRAM的地址计数器(AC)到"00H" 地址 归位 0 0 0 0 0 0 0 0 1 X 设定DDRAM的地址计数器(AC)到"00H",并且将游标移到开头原点位置;这个指令不改变DDRAM 的内容 显示状态开/关 0 0 0 0 0 0 1 D C B D=1: 整体显示 ON C=1: 游标ON B=1:游标位置反白允许 进入点设定 0 0 0 0 0 0 0 1 I/D S 指定在数据的读取与写入时,设定游标的移动方向及指定显示的移位 游标或显示移位控制 0 0 0 0 0 1 S/C R/L X X 设定游标的移动与显示的移位控制位;这个指令不改变DDRAM 的内容 功能设定 0 0 0 0 1 DL X RE X X DL=0/1:4/8位数据 RE=1: 扩充指令操作 RE=0: 基本指令操作 设定CGRAM地址 0 0 0 1 AC5 AC4 AC3 AC2 AC1 AC0 设定CGRAM 地址 设定DDRAM地址 0 0 1 0 AC5 AC4 AC3 AC2 AC1 AC0 设定DDRAM 地址(显示位址) 第一行:80H-87H 第二行:90H-97H 读取忙标志和地址 0 1 BF AC6 AC5 AC4 AC3 AC2 AC1 AC0 读取忙标志(BF)可以确认内部动作是否完成,同时可以读出地址计数器(AC)的值 写数据到RAM 1 0 数据 将数据D7——D0写入到内部的RAM (DDRAM/CGRAM/IRAM/GRAM) 读出RAM的值 1 1 数据 从内部RAM读取数据D7——D0(DDRAM/CGRAM/IRAM/GRAM)                         指令表2:(RE=1:扩充指令) 指令 指 令 码 功 能 D/I R/W D7 D6 D5 D4 D3 D2 D1 D0 待命模式 0 0 0 0 0 0 0 0 0 1 进入待命模式,执行其他指令都终止 卷动地址开关开启 0 0 0 0 0 0 0 0 1 SR SR=1:允许输入垂直卷动地址 SR=0:允许输入IRAM和CGRAM地址 反白选择 0 0 0 0 0 0 0 1 R1 R0 选择2行中的任一行作反白显示,并可决定反白与否。初始值R1R0=00,第一次设定为反白显示,再次设定变回正常 睡眠模式 0 0 0 0 0 0 1 SL X X SL=0:进入睡眠模式SL=1:脱离睡眠模式 扩充功能设定 0 0 0 0 1 CL X RE G 0 CL=0/1:4/8位数据 RE=1: 扩充指令操作 RE=0: 基本指令操作 G=1/0:绘图开关 设 定绘图RAM地 址 0 0 1 0 AC6 0 AC5 0 AC4 AC3 AC3 AC2 AC2 AC1 AC1 AC0 AC0 设定绘图RAM先设定垂直(列)AC6AC5…AC0再设定水平(行)地址AC3AC2AC1AC0将以上16位地址连续写入即可                         注:当IC1在接受指令前,微处理器必须先确认其内部处于非忙碌状态,即读取BF标志时,BF需为零,方可接受新的指令;如果在送出一个指令前并不检查BF标志,那么在前一个指令和这个指令中间必须延长一段较长的时间,即是等待前一个指令确实执行完成。 三、显示应用 1、字符显示 带中文字库的128X64-0402B每屏可显示4行8列共32个16×16点阵的汉字,每个显示RAM可显示1个中文字符或2个16×8点阵全高ASCII码字符,即每屏最多可实现32个中文字符或64个ASCII码字符的显示。带中文字库的128X64-0402B内部提供128×2字节的字符显示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个字符显示区域有着一一对应的关系,其对应关系如下表所示。 80H 81H 82H 83H 84H 85H 86H 87H 90H 91H 92H 93H 94H 95H 96H 97H 88H 89H 8AH 8BH 8CH 8DH 8EH 8FH 98H 99H 9AH 9BH 9CH 9DH 9EH 9FH                 其中,C语言编译器具有直接把中文转换成ASCII码字符功能。对照下面原理图,编译程序示例,并下载到实验板上,观测现象。 4. 寻迹避障程序 #include #define uchar unsigned char #define uint unsigned int sbit RM1=P0^0; sbit RM2=P0^1;//右电机 sbit LM1=P0^2; sbit LM2=P0^3;//左电机 sbit bzh=P2^6; sbit RAD=P0^6;//红外接收右电机转 sbit LBD=P0^7;//红外接收左电机转 sbit rs=P3^5;//    LCD的RS  sbit rw=P3^6;//    LCD的R/W sbit en=P3^7;//    LCD的E  void lcd_string(uchar *strpoint); void delay(uint a) { uint b,c; for(b=a;b>0;b--) for(c=120;c>0;c--); } uchar i=0; void checkbusy()//检查LCD忙 {    uchar dat; rs=0;    //rs=1为数据,=0为命令. rw=1;    //rw=1为读,=0为写. do { P1=0x00; en=1; //E信号下降沿锁存DB7~DBO dat=P1; //读入P1的值 en=0; //锁存 dat=0x80 & dat;    //BUSY:1内部在工作,0正常状态 }while(!(dat==0x00));rw=0; } void sentcom(uchar com) { checkbusy(); //检查Busy rs=0; en=0; P1=com; delay(5); en=1; delay(5); en=0; } void sentdata(uchar date) //写数据 { checkbusy(); rs=1; en=0; P1=date; delay(5); en=1; delay(5);                                                                      en=0; } //初始化    LCM  void    lcd_init()  {  sentcom(0x38);//功能设置,一次送8位数据,基本指令集  sentcom(0x0C);//0000,1100      整体显示,游标off,游标位置off  sentcom(0x01);//0000,0001    清DDRAM  sentcom(0x02);//0000,0010    DDRAM地址归位  sentcom(0x80);//1000,0000    设定DDRAM    7位地址000,0000到地址计数器AC  } void lcd_string(char *strpoint)//在当前显示位置显示LCD字符串 {    register i=0; while(strpoint[i]!=0){ sentdata(strpoint[i]); i++; } } void  stop() { lcd_init(); sentcom(0x80); lcd_string("现代创新实训室 ");//C编译系统本省也具有转换功能,所以也可以这样写 sentcom(0x90); lcd_string("寻迹避障一体小车");                  sentcom(0x88); lcd_string("--指导:文方老师");                sentcom(0x98); lcd_string("--设计:刘志聪  "); } void  tracing() { sentcom(0x80); lcd_string("现代创新实训室 "); sentcom(0x90); lcd_string("--指导:文方老师");                  sentcom(0x88); lcd_string("--设计:刘志聪  ");                sentcom(0x98); lcd_string("  小车寻迹中---"); } void  bypass() { sentcom(0x80); lcd_string("现代创新实训室 "); sentcom(0x90); lcd_string("--指导:文方老师");                  sentcom(0x88); lcd_string("--设计:刘志聪  ");                sentcom(0x98); lcd_string("  小车避障中---"); } void find() {tracing(); while(bzh==1) {    if(LBD&&RAD==1) {    RM1=1;LM1=1; RM2=0;LM2=0;    }    if(RAD==0) {            RM1=0;LM1=1; RM2=0;LM2=0; if(LBD==0) { RM1=1;LM1=1; RM2=0;LM2=0; delay(i);    } }                                        if(LBD==0) {        RM1=1;LM1=0; RM2=0;LM2=0; if(RAD==0) { RM1=1;LM1=1; RM2=0;LM2=0; delay(i); }    } }      }      void bizhan() {      bypass(); if(bzh==0) {    RM1=1;LM1=0; RM2=0;LM2=1; delay(100); } } void main() {  stop(); delay(2000);    while(1) { find(); bizhan(); }        }
本文档为【寻迹避障一体小车】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_337177
暂无简介~
格式:doc
大小:105KB
软件:Word
页数:22
分类:互联网
上传时间:2019-05-11
浏览量:62