|
|
| 当前位置:首页 > 机器人开发 > 机器人过丁字路口:并排安装4个地面灰度传感器 |
机器人过丁字路口:并排安装4个地面灰度传感器 |
| 来源:机器人的天空 时间:2026/3/11 |
|
机器人已经可以用2个或4个传感器,又快又稳定地进行 巡线运动了吧?不过,如果机器人行走的路线上除了直线、曲线还有各种路口又该怎么办 呢?这次的实验就来解决这个问题,先来看看图9-5中这样的丁字路口,机器人应该采 用什么样的策略才能通过。
为了让机器人成功通过各种路口, 一般我们还是需要给机器人并排安上4个传感器。 但是和用上节课中对4个传感器的使用不一样,这里用内侧两个传感器帮助机器人完成 巡线。而当外侧的两个传感器检测到黑线时,就知道了机器人遇到了路口。这时就可以 根据具体情况,让机器人做出转弯动作了。 实验器材 · 已经组装好的机器人; · 计算机及软件编程环境; ·USB 下载线; · 主控制器; · 杜邦连接线若干; · 4个使用杜邦连接线的地面灰度检测传感器; · 用黑色胶布粘贴的丁字路口。 实验步骤 1.连接机器人 在机器人的底盘上并排安装4个地面灰度传感器,用杜邦连接线把它们按顺序分别 连接到主控板的A0~A3 端口,其中Z左端的传感器连接A0 口,Z右端的连接 A3 口。 2.调试灰度阈值 同样,像以前一样通过实验确定机器人所采用的灰度阈值。因为4个传感器的电路 和安装上可能会出现微小的差别,所以这里比较稳妥的处理方式是不要嫌麻烦,为它们每 个都测量一个灰度阈值。 3.编 写 和调试程序 通过上面的分析可以知道,对于机器人来说,只要是Z左或Z右端的传感器检测到了 黑线,就代表机器人遇到了路口。这时就可以停止巡线而进入90°转弯的过程。根据这 个思路,请同学们自己去编写或是参考下面的示例程序,将机器人通过丁字路口的程序实 现。这个示例程序大部分结构和上节课的示例程序类似,所不同的只是对机器人Z外端 两个传感器检测到黑线时的处理,我们用省略号把同上节课例程重复的大部分内容略过。 const int TurnTime=300; void loop()( leftValue=analogRead(LeftPort); leftMiddleValue=analogRead (LeftMiddlePort); rightMiddleValue=analogRead(RightMiddlePort); rightValue=analogRead(RightPort);
if(leftValue analogWrite(RightSpeedPort,ForwardSpeed); }else if(leftValue>Threshold II rightValue>Threshold){ digitalWrite(LeftDirPort,LOW); analogWrite(LeftSpeedPort,ForwardSpeed); analogWrite(RightSpeedPort,ForwardSpeed); delay(TurnTime); digitalWrite(LeftDirPort,HIGH); }else if(leftMiddleValue>Threshold){ analogWrite(LeftSpeedPort,TurnHighSpeed); analogWrite(RightSpeedPort,TurnLowSpeed); }else{ analogWrite(LeftSpeedPort,TurnLowSpeed); analogWrite(RightSpeedPort,TurnHighSpeed); } delay(100); //原地转90°所需的时间 &&rightMiddleValue< //直行 //原地向左转90° //向右转弯 //向左转弯 //延时.100ms 请注意,如果大家直接套用上面给出的示例程序,机器人往往是不会乖乖地通过路口 的。这时,就需要请同学们仔细观察机器人遇到路口的反应。然后,根据机器人运动时所 表现出的现象不同,对问题的所在进行判断并解决。比如,机器人的传感器端口接线的顺 序有错误;机器人转90°弯的速度或时间参数不合适,导致转向过度或不足等。就是在这 个过程中大家解决问题的能力才会得到提高,因此请同学们千万不要满足于弄懂了原理, 一 定要动手动脑,对机器人进行实际的调试工作。
|
| 相关推荐 |
|
»
机器人学会探测障碍:红外避障传感器的模块
» 会走迷宫的机器人需要的材料:主控制器,地面灰度检测传感器模块4块,红外避障传感器1个,黑色胶带1卷 » 机器人的舵机:对电机转动位置的精确控制 » 机器人舵机的控制:PWM信号,周期是20ms, 脉冲的宽度从1~2ms 秒之间 » 机器人挥舞手臂需要的器材:机器人,USB下载线,主控制器 ,舵机 » 机器人巡线挑战赛的器材与步骤:机器人,绝缘胶布1卷,制作货仓和卸货塔的硬纸板,检测传感器 » 灭火机器人的技能:接近火源和灭火装置 » 灭火机器人的开发过程:连接机器人,驱动风扇,寻找火源 » Arduino机器人的主控制板接口使用说明 » 移动机器人同时定位和地图创建(SLAM)原理:机器人的位姿和地图信息 » 基于多机器人协作的关键问题:有限带宽和地图拼接 » 迎宾机器人的位置传感器:电位器、光电编码器 |
![]() ![]() ![]() |
![]() |
|
|
|||||||||||||||||||||||||||||||||||||||||
| 版权所有 © 创泽智能机器人集团股份有限公司 中国运营中心:北京·清华科技园C座五楼 生产研发基地:山东日照太原路71号 电话:4008-128-728 |