入门六引导机器人寻黑线.docx

上传人:b****6 文档编号:6034295 上传时间:2023-01-03 格式:DOCX 页数:12 大小:386.65KB
下载 相关 举报
入门六引导机器人寻黑线.docx_第1页
第1页 / 共12页
入门六引导机器人寻黑线.docx_第2页
第2页 / 共12页
入门六引导机器人寻黑线.docx_第3页
第3页 / 共12页
入门六引导机器人寻黑线.docx_第4页
第4页 / 共12页
入门六引导机器人寻黑线.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

入门六引导机器人寻黑线.docx

《入门六引导机器人寻黑线.docx》由会员分享,可在线阅读,更多相关《入门六引导机器人寻黑线.docx(12页珍藏版)》请在冰豆网上搜索。

入门六引导机器人寻黑线.docx

入门六引导机器人寻黑线

入门六引导机器人寻黑线

机器人既能够做一些基本动作----前进、后退、左转、右转,又能够唱歌,那么能否沿着一条黑线行走呢?

同时能够实现自主的校正的功能,使机器人一直保持在黑线上呢?

只需在机器人底部安装一个光电模快,机器人就可以完成寻黑线行走了。

任务要求:

将机器人放在起跑线外(A区内),要求用声音控制机器人的启动,启动后机器人沿着黑线行走,在停止区停止(B区内),然后进行2S钟的声音报警。

场地示意图如图6-1所示。

6.1场地示意图

一、光电模块介绍

(一)光电模块的功能

光电模块又叫光敏传感器模块,它分为绝对光电模块和模拟光电模块,绝对光电模块可以识别白色和黑色(或有色差的颜色)。

绝对光电模块可以识别不同的颜色,如黑色呈现高电位(光敏传感器模块的电位显示灭),白色呈现低电位(光敏传感器模块的电位显示亮),利用它的这一特性,可以让机器人做多种动作。

利用左侧和右侧的接受光强不一致,也可以让机器人走规定路线。

光电模块调节部分实物如图6-2所示,光电模块调节部分示意图实物如图6-3所示(

表示正极),光电模块下半部分实物图如图6-4所示,光电模块下半部分示意图如图6-5所示(

表示正极)。

右光敏传感器调整电位器

右光敏传感器电位显示

左光敏传感器电位显示

左光敏传感器调整电位器

图6-2光电模块调节部分实物图

 

图6-3光电模块调节部分示意图

 

图6-4光电模块下部分实物图

 

图6-5光电模块下部分示意图

(二)光电模快的原理

绝对光电模块由辅助光源(发光二极管)、光敏电阻和比较运算放大器组成。

它是利用光敏电阻原理设计的,即:

光敏电阻的阻值与其接收的光线强度成反比。

光线越强,阻值越小。

光电模快的驱动电路图如图6-6所示。

 

图6-6光电模快驱动电路图

当光敏电阻接收的光强接近时,其阻值较小,与固定电阻分压后,使比较器的同向输入端电压低于反向输入端,比较运算放大器输出低电平。

通过调整电位器滑动臂的位置,即可改变使比较运算放大器输出低电平时的绝对光强。

电阻的滑动臂向下调,反向输入端电压降低,需要更强的光照使光敏电阻的阻值更小,才能使同向输入端电压低于反向输入端,输出低电平。

反之亦然。

两个光电模块配合,即可完成“按黑线行走”。

绝对光电模块的缺点是受环境光线影响较大,需要根据环境光线强弱的变化随时调整电阻的电位器滑臂位置,才能获得较好的效果。

理想的经常分压点的电压低于电源电压的1/2,在比较器设定的电压之内,两个比较器均输出高电平。

当其中一个光敏电阻接收光强较强时,分压点的电压将高于电源电压的1/2,超出比较器设定的电压,相应的比较器输出低电平。

(三)光电模块与主板的连接方法

绝对光电模块的组合图如图6-7所示,绝对光电模块与主板的组合图如图6-8所示,左光电模快连接到单片机的RC6引脚上,右光电模快连接到单片机的RC7引脚上。

对应QBasic程序语言里的pin14和pin15位变量。

 

 

 

图6-7绝对光电模块的组合图(注:

蓝色线连接蓝色线)

 

 

图6-8绝对光电模块与主板的组合图

(四)光电模快与机器人底盘的固定方法

具体的固定方法如图6-9所示

 

图6-9光电模快与机器人底盘的固定方法

(五)光电模快的调整方法

把机器人放在黑线上,打开5V电池组的开关,光电模块的工作指示灯的正常状态应为灭,如果不灭,逆时针调整电位器让其指示灯灭。

然后把机器人放在白线上,光电模块的工作指示灯的正常状态应该是亮的,如果不亮,顺时针调整电位器让其指示灯变亮。

 

二、程序设计

(一)QBasic语言基本语句(四)

1.定义变量语句(SYMBOL)

【格式】SYMBOL变量=变量类型

【功能】字节变量、它位变量、字变量均须用SYMBOL语句定义后才能使用。

【说明】

通用QBASIC语言中,位变量bit0~bit32、字节变量b0~b4、字变量w0~w1,均可以直接使用。

除以上变量外,其它字节变量,可直接使用;其它位变量、字变量均须用SYMBOL语句定义后才能使用。

SYMBOL变量=WORD定义为双字节变量

SYMBOL变量=BYTE定义为单字节变量(可省略不写)

SYMBOL变量=BIT定义为位变量

一个程序中,最多可用的变量数为128个字节,如使用双字节变量,则占两个空间。

2.块结构条件转移语句(IF/THEN/ELSE)

【格式】

IF条件表达式THEN

语句块1

ELSE

语句块2

ENDIF

【功能】如果条件表达式成立,则执行语句块1,然后转到ENDIF语句的下一个语句。

当条件表达式不成立,则执行ELSE和语句块2,然后转到ENDIF语句的下一个语句执行。

【说明】

⑴从关键词IF到ENDIF是一个条件条件转移语句。

在块结构条件转移语句中,可缺少ELSE和语句块2,当条件表达式不成立,不执行任何语句,转到ENDIF语句的下一个语句执行。

ENDIF是两个词,中间必须骨空格。

例1:

有声音执行前进500ms后停止,没有声音执行后退500ms后停止;

 

 

3.转子程序语句和返回语句(GOSUB/RETURN)

【格式】

GOSUB行标号

程序主程序

END

行标号

程序子程序1

RETURN

行标号

程序子程序2

RETURN

【功能】

转子语句(GoSub)使流程转向一个子程序,返回语句(RETURN)使流程从子程序返回到调用于程序的GoSub语句的下一个语句。

【说明】

①主程序和子程序是BASIC实现结构化程序设计的重要体现,子程序是一个独立模块,它和主程序不在同一模块中。

②子程序用来简化程序并增加程序的可读性。

③转子语句使流程转向一个子程序,其语法为:

GoSub行标号,其中行标号指明子程序的开始位置。

④子程序嵌套一般不超过16级。

例2;控制机器人走正方形

 

 

(二)程序流程图及清单

 

三、运行与调试

(一)调试方法与运行过程

(1)调试方法

将上面的程序按照程序的下载方法下载到机器人主板上,观察机器人运行情况,并调整时间参数,让机器人最终能够沿黑线行走,在停止区域停止。

(2)运行过程

机器人运行过程视频见光盘视频6-1所示。

(二)故障排除的方法

现象

解决办法

程序无法下传成功,出现错误

检查通讯下载线是否正常连接,5V电池组是否电量充足

机器人运行时不沿黑线行走

(1)由于绝对光电模块受环境影响很大,因此在运行前应调节绝对光电模块上的电位器,让两个发光二极管在黑线上为全灭,在白色的地方上为全亮,让绝对光电模块处于正常状态。

(2)调整程序的参数,重点是调速前进和左右转的参数,达到一个最佳的值。

(3)检查左右光电模块是否安装反了。

四、技能训练

1.任务要求:

机器人启动前必须放在起跑线外(A区),要求声控启动,沿黑线行走冲过没黑线的一段距离,然后继续沿黑线行走,在停止区(B区)停止并进行声音报警2S。

场地示意图如图6-10所示。

 

 

图6-10场地示意图

提示:

当绝对光电模块检测到全白的时候,对遇到的全白次数进行计次,第一次遇到的时候强行冲过去,第二次遇到的时候停止并进行声音报警。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > IT认证

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1