机器人循迹详解.ppt

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
机器人循迹详解; 机器人利用灰度传感器,在沿着黑色引导线循迹的过程中,会遇到很多种情况,其中一种情况就是如图所示的路口。 在路口时,黑色引导线往往有多个方向,那么机器人该怎么办呢?;路口判断:机器人在遇到路口时,需要我们用程序告诉机器人该怎么走(左拐、右拐、停止等或做出其它动作)。;是否检测到路口处的判定方法;循迹程序与路口判断的结合;遇到路口时的程序;循迹的程序;lcd.Clear(); lcd.shu(0,0,analogRead(0)); lcd.shu(0,2,analogRead(1)); lcd.shu(0,4,analogRead(2)); lcd.Update(); if(analogRead(0)>L&analogRead>M&analogRead>R) { Lmotor.run(3500); Rmotor.run(-1000); delay(700); } if(analogRead(0)>L) { Lmotor.run(3500); Rmotor.run(1000); } if(analogRead(1)>M) { Lmotor.run(3500); Rmotor.run(1000); } if(analogRead(0)>R) { Lmotor.run(3500); Rmotor.run(1000); };多路口循迹;多路口解决办法;第二个路口;第三个路口;如何让这三个路口建立联系呢?;int i; int L= ,M= ,R= ;//将检测好的灰度设定值填写进去 void setup () { } void loop() { if(i==1) { lcd.Clear(); lcd.shu(0,0,analogRead(0)); lcd.shu(0,2,analogRead(1)); lcd.shu(0,4,analogRead(2)); lcd.shu(10,5,i); lcd.Update(); if(i==1) { if(analogRead(0)>L&analogRead>M&analogRead>R)) { Lmotor.run(3500); Rmotor.run(-1000); delay(700); i=2; } } if(i==2) { if(analogRead(0)>L&analogRead>M&analogRead>R)) { Lmotor.run(3500); Rmotor.run(-1000); delay(700); i=3; } } if(i==3) { if(analogRead(0)>L&analogRead>M&analogRead>R)) { Lmotor.run(3500); Rmotor.run(-1000); delay(700); } } if(analogRead(0)>L) { Lmotor.run(3500); Rmotor.run(1000); } if(analogRead(1)>M) { Lmotor.run(3500); Rmotor.run(1000); } if(analogRead(0)>R) { Lmotor.run(3500); Rmotor.run(1000); };这张图纸路口很多,但是我们只需要将每个路口分开,单独研究,在组合在一起,也就不难了。我们先来根据规则分析一下任务。 沿着黑色引导线循迹 路口处要按黑线的指定方 向行进。 路口4处喇叭响起,路口5处喇叭灭掉。7处要顺时针绕行,进入绕行轨道时红色探测灯亮起,??出绕行轨道红色探测灯灭掉(机器人的眼睛)。 进入基地后,机器人的机身需要进入基地(投影二分之一以上)。 停止后红色探测灯开启,喇叭响三秒。 图纸有规定时间t,除结束循迹外只能在休息站处停止。 ;显示灰度和路口变量的程序,为了方便,这里的变量不再用i而是用lukou。 lcd.Clear(); lcd.shu(0,0,analogRead(0)); lcd.shu(0,2,analogRead(1)); lcd.shu(0,4,analogRead(2)); lcd.shu(10,5,lukou); lcd.Update();;我们和刚才一样,将程序分成几块来编写。 1、显示灰度检测值,和路口变量的程序。 2、非路口时的循迹程序。 3、路口时的程序。 4、特定路口的制定动作。 5、利用电机转速和休息站调整机器人完成任务的时间。 ;我们不难发现,每个路口的检测程序,格式都是一样的,只需要将每个路口需要做的动作填写进去就可以了。 以图三的4路口为例。4处需要右拐,并且喇叭响起。 以次类推,就可以把所有路口

文档评论(0)

138****2866 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档