论文部分内容阅读
在青少年机器人比赛和活动中,机器人循线是一个最基本的动作,但往往也是最不稳定的动作,本文就机器人循线的一些基本思路和方法做相应的讨论和总结。如无特殊说明,本文都以中鸣机器人和机器人快车为例。
一、用一个灰度传感器让小车在黑线上行进
⑴单灰度走黑线的情况分析
在行进过程中,灰度有两种情况,要么在白线上,要么在黑线上。
⑵阐释原理
当灰度在黑线上时,让机器人朝一个方向弧线偏转,紧接着灰度会来到白线上。
当灰度在白线上时,让机器人朝反方向弧线偏转,那么灰度又会回到黑线上。
重复上述动作,则机器人就会以Z字型向前行走
⑶编程思路
A.首先编写程序分别测出黑线和白线的光值,然后取两者的平均值存入一个变量,假设是GZ,如果测得的黑线值为20,白线值为100,则GZ=60。
B.在小车行进过程中需要不断的实测灰度的返回值,那么当这个值小于GZ时,灰度肯定在黑线上,当这个值大于GZ大于时,灰度肯定在白线上。
C.用条件语句进行分情况处理,设变量GRAY为保存返回值的变量,那么:
当GRAY<=GZ时,让小车右转
当GRAY>GZ时,让小车左转
D.将条件语句嵌套在while语句当中,确保小车重复执行上述检测,以Z字型在黑线上行走
⑷程序代码如图所示
A.if条件语句的使用方法
从工具栏中拖动if图标到编辑窗口会自动形成两个树枝状的图标,分别表示if的头和尾。
点击if的头图标,在左边的属性窗口设置if的条件表达式
如果条件成立则执行蓝色树枝后面的語句,如果不成立则执行红色树枝后面的语句
B.所有语句都必须放在循环语句里面,在小车行走的过程中,需要不断的检测灰度传感器的值以及不断将返回值与平均值作比较,以确定小车什么时候右转,什么时候左转。
【注意事项】
在编写走黑线程序前,应先矫正马达,当两个马达的状态都为0时,是否转向一致,如果不一致的话,最好的办法是将转向不对的马达连接线反插在控制器端口上,比如,原来黑线靠右,现在让黑线靠左。当然不管左右,黑线都必须对应G口。
左右走弧线,是要求两个马达转向一致的,设置是只需一个快一个慢即可,比如向右走弧线就可以左快右慢的设置马达。
一、用一个灰度传感器让小车在黑线上行进
⑴单灰度走黑线的情况分析
在行进过程中,灰度有两种情况,要么在白线上,要么在黑线上。
⑵阐释原理
当灰度在黑线上时,让机器人朝一个方向弧线偏转,紧接着灰度会来到白线上。
当灰度在白线上时,让机器人朝反方向弧线偏转,那么灰度又会回到黑线上。
重复上述动作,则机器人就会以Z字型向前行走
⑶编程思路
A.首先编写程序分别测出黑线和白线的光值,然后取两者的平均值存入一个变量,假设是GZ,如果测得的黑线值为20,白线值为100,则GZ=60。
B.在小车行进过程中需要不断的实测灰度的返回值,那么当这个值小于GZ时,灰度肯定在黑线上,当这个值大于GZ大于时,灰度肯定在白线上。
C.用条件语句进行分情况处理,设变量GRAY为保存返回值的变量,那么:
当GRAY<=GZ时,让小车右转
当GRAY>GZ时,让小车左转
D.将条件语句嵌套在while语句当中,确保小车重复执行上述检测,以Z字型在黑线上行走
⑷程序代码如图所示
A.if条件语句的使用方法
从工具栏中拖动if图标到编辑窗口会自动形成两个树枝状的图标,分别表示if的头和尾。
点击if的头图标,在左边的属性窗口设置if的条件表达式
如果条件成立则执行蓝色树枝后面的語句,如果不成立则执行红色树枝后面的语句
B.所有语句都必须放在循环语句里面,在小车行走的过程中,需要不断的检测灰度传感器的值以及不断将返回值与平均值作比较,以确定小车什么时候右转,什么时候左转。
【注意事项】
在编写走黑线程序前,应先矫正马达,当两个马达的状态都为0时,是否转向一致,如果不一致的话,最好的办法是将转向不对的马达连接线反插在控制器端口上,比如,原来黑线靠右,现在让黑线靠左。当然不管左右,黑线都必须对应G口。
左右走弧线,是要求两个马达转向一致的,设置是只需一个快一个慢即可,比如向右走弧线就可以左快右慢的设置马达。