《乐高机器人巡线原理》由会员分享,可在线阅读,更多相关《乐高机器人巡线原理(5页珍藏版)》请在人人文库网上搜索。

1、一、冃U言在机器人竞赛中,“巡线”特指让机器人沿着场地中一条固定线路(通常是黑线)行 进的任务。作为一项搭建和编程的基本功,巡线既可以是独立的常规赛比赛项目,也能成 为其他比赛项目的重要技术支撑,在机器人比赛中具有重要地位。二、光感中心与小车转向中心以常见的双光感巡线为例,光感的感应中心是两个光感连线的中点,也就是黑线的中间位 置。而小车的转向,是以其车轮连线的中心为圆心进行的。很明显,除非将光感放置于小 车转向中心,否则机器人在巡线转弯的过程中,探测线路与做出反应之间将存在一定差距。 而若将光感的探测中心与转向中心重合,将大幅提升搭建难度并降低车辆灵活性。因此, 两个中心的不统一是实际存在的。

2、,车辆的转向带动光感的转动,同时又相互影响,造成机 器人在巡线时对黑线的反应过快或者过慢,很多巡线失误由此产生。所以在实际操作中,一般通过程序与结构的配合,在程序中加入一定的微调动作来弥补其中的误差。而精准的微调,需要根据比赛场地的实际情况进行反复调试。三、车辆结构巡线任务的核心是让机器人小车按照场地中画出的路线行进,因此,根据任务需要选择合 适搭建方式是完成巡线任务的第一步。1、前轮驱动前轮驱动的小车一般由两个动力轮和一个万向轮构成,动力轮位于车头,通过左右轮 胎反转或其中一个轮胎停转来实现转向,前者的转向中心位于两轮胎连线中点,后者转向 中心位于停止不动的轮胎上。由于转向中心距离光感探测中。

3、心较近,可以实现快速转向,但由于机器人反应时间的限制,转向精度有限。2、后轮驱动后轮驱动的小车结构和转向中心与前轮驱动小车类似,由于转向中心靠后,相对于前 轮驱动的小车而言,位于车尾的动力轮需要转动较大的幅度,才能使车头的光感转动同样 角度。因此,后轮驱动的小车虽转向速度较慢,但精度高于前轮驱动小车。对于速度要求 不高的比赛而言,一般采用后轮驱动的搭建方式。3、菱形轮胎分布菱形轮胎分布是指小车的两个动力轮位于小车中部,前后各有一个万向轮作为支撑。这样 的结构在一定程度上可以视为前轮驱动和后轮驱动的结合产物,转向速度和精度都介于两 者之间。这种结构的优势在于转向中心位于车身中部,转弯半径很小,甚。

4、至能以自身几何 中心为圆心进行原地转向,适合适用于转90弯或数格子行进等一些比较特殊的巡线线路。这种结构最初应用于RC灿器人足球上,居中的动力源可以让参赛选手为机器人安装更多 的固定和防护装置,以适应比赛中激烈的撞击,具有很好的稳定性。而对于NXT机器人而言,由于伺服电机的形状狭长不规律,将动力轮位于车身中部的做法将大幅提升搭建难度, 并使车身重心偏高,降低转弯灵活性。4、四轮驱动四轮驱动的小车四个轮胎都有动力,能较好地满足一些比赛中爬坡任务的需要。小车的转 向中心靠近小车的几何中心,因此能进行原地转弯运动,具有较好的灵活性,特别适用于 转90 弯或数格子行进等任务一些比较特殊的巡线线路。虽然。

5、与后轮驱动小车相比,转向 中心比较靠前,转向精度较小,但四轮驱动小车没有万向轮,转弯需要靠四个轮胎同时与 地面摩擦,加大转弯的阻力,因而转弯精度应介于菱形轮胎分布的小车和后轮驱动小车之四轮驱动的小车最大优势在于具有普遍适应性,熟练掌握此结构的参赛选手能在参加FLL工程挑战赛、WRO世界机器人奥林匹克等一些比较复杂的比赛中占据一定优势。四、编程方案1、单光感巡线单光感巡线是巡线任务中最基础的方式,在行进过程中,光感在黑线与白色背景间来回晃动,因此,这种巡线只能用两侧电机交替运动的方式前进,行进路线呈“之”字形。这种巡线方式结构简单易于掌握,但由于只有一个光感,对无法在完成较为复杂的巡线任务(如 。

6、遇黑线停车、识别线路交叉口等),且速度较慢。基本思路:光感放置于黑线的左侧,判黑则左轮不动右轮前进,判白则右轮不动左轮前进, 如此交替循环。参考程序如下图:2、单光感巡线+独立光感数线在很多比赛中,机器人需要做的不仅仅是沿着黑线行进,还需要完成一些其他任务,如在循迹路线上增加垂直黑线要求停车、放置障碍物要求躲避等内容。此时,单光感巡线已不能满足要求。下面以要求定点停车为例,简要介绍单光感巡线+独立光感数线的编程模 式。基本思路:在此任务中要求在垂直黑线处停车,则需要跳出单光感巡线的循环程序体系,可以通过设置循环程序的条件实现这一功能。由于程序的设定,负责巡线的3号光感在行进时始终位于黑线的左侧。

7、,不会移动到黑线右侧的白色区域,因此在黑线右侧设置一个光感(4号)专门负责监视行进过程中黑线右侧的区域,当此光感判黑时,即可判断出小车行进到垂直黑线处,于是终止单光感巡线的循环程序,执行规定的停车任务,然后向前行进一小段距离驶过垂直黑线,继续单光感巡线任务。参考程序如下图:上述程序只适用于停车一次的需要,在实际比赛中需以定点停车、蔽障任务为基点,将巡线赛道划分为若干个小段依次设定程序,或采用两重循环的程序,重复执行巡线定点停车任务:3、双光感巡线双光感巡线是机器人竞赛中最常见的巡线模式,两个光感分别位于黑线两侧,以夹住黑线 的方式行进。根据两个光感读取的数值不同,可以将光感的探测结果分为左白右。

8、黑、左黑 右白、双白和双黑四种情况,根据这四种探测结果,分别执行右转、左转、直行和停车四 种动作的程序命令。由于这种方法能让两个电机同时工作,机器人运动的速度较快,同时 采取两个光敏监测黑线,精度也有所提高。基本思路:使用两重光感分支程序叠加,为四种探测结果设定与之对应的程序反应,形成循环程序结构,参考程序如下图:4、双光感巡线+独立光感数线一般而言,一个以巡线为基础的比赛,会在巡线的基础上增加定点停车、识别交叉口、绕 开障碍等多项任务,想要准确识别并完成这些任务,需要在掌握上述双光感巡线技术的基 础上,以定点停车、蔽障任务为基点,将巡线赛道划分为若干个小段,使用传感器、逻辑 判断等方式跳出双。

9、光感巡线的循环程序,执行与完成任务相对应的程序,然后重新进行巡 线任务。以双光感巡线+独立光感数线的模式为例,在双光感巡线的基础上,在其中一个光感的外侧 再放置一个光感。由于使用双光感巡线,标记行进路线的黑线将始终位于前两个光感之间, 因而第三个光感探测到黑线只会是两种情况一一抵达停车地点或巡线路线交叉处,于是以第三个光感探测到黑线作为结束循环的条件进行编程,参考程序如下: 注:由于光感放置位置的原因,使得第三个光感判黑的时候,前两个光感探头必然同时处 于黑线上或十分接近,完全能以第三个光感判黑代替前两个光感同时判黑的情况,因此在 巡线循环部分将双光感判黑的一个分支跳过不予编程。五、延展上述内。

10、容为巡线任务的基础知识,仅根据光感的探测做出反应,简单地将光感探测中心与 小车转向中心重合(将小车视为一个仅有重量没有体积的质点),可完成一些线路有弧度的 平滑路线,对于较难的巡线弯道,如直角弯、“ V字形弯道等特殊线路,则必须考虑转向 中心和探测中心的区别,需要特殊对待。一般而言,在探测到此类弯道之后,需要先精确控制小车运行时间,将小车的转向中心移动到弯道的中心(如“ V字形弯道的定点),此时光感全部脱离黑线,再原地转动车身, 当负责夹住黑线行进的光感重新探测到黑线时,则小车已完成转弯任务并回到循迹路线, 然后继续执行巡线任务。以上内容仅为本人的一些经验粗略总结,如有不当之处,敬请大家指正,希望能起到抛砖 引玉的作用。

乐高机器人巡线C语言程序,乐高机器人巡线原理相关推荐

  1. 像聊天机器人一样的c语言程序,示例:聊天机器人

    结合咱们之前的学习,本节将带领大家来编写一个聊天机器人的雏形.下面的代码中展示了一个很傻的聊天程序. package main import ( "bufio" "fmt ...

  2. 贝塞尔函数 c语言程序,贝塞尔函数Bessel(原理与实现)

    程序实现: // crt_bessel1.c #include #include int main( void ) { double x = 2.387; int n = 3, c; printf( ...

  3. 数字积分法插补c语言程序,数字积分法插补原理

    <数字积分法插补原理>由会员分享,可在线阅读,更多相关<数字积分法插补原理(19页珍藏版)>请在人人文库网上搜索. 1.3单元 数字积分法插补原理,掌握数字积分法插补基本原理 ...

  4. 机器人编程与python语言的区别_一分钟看懂“机器人编程”和“少儿编程”的区别!...

    随着编程学习全球化的趋势,国内编程学习热潮日盛,越来越多的家长开始让孩子接触学习编程. 然而在挑选学习课程的过程中,机器人编程和少儿编程是最让家长头疼的问题之一. 因为两者的名称都有"编程& ...

  5. pwm调速c语言,PWM调速的C语言程序编写

    <PWM调速的C语言程序编写>由会员分享,可在线阅读,更多相关<PWM调速的C语言程序编写(6页珍藏版)>请在人人文库网上搜索. 1.PWM调速的C语言程序编写关于PWM的原理 ...

  6. 在c语言中pwm的作用,PWM调速的C语言程序编写(非常简单);

    <PWM调速的C语言程序编写(非常简单);>由会员分享,可在线阅读,更多相关<PWM调速的C语言程序编写(非常简单);(4页珍藏版)>请在人人文库网上搜索. 1.PWM调速的C ...

  7. 三轮机器人巡线程序_亮宁机器人巡线、测试综合程序分析

    本程序包括三项功能:巡线,测光值和测试电机连线是否正确. 一个程序中书写多项功能函数,需要使用哪个就屏蔽暂时不用的函数.具体分析看程序中的注释语句. 整个程序运用于轨迹赛已足够! #include i ...

  8. 乐高编程学c语言吗,乐高编程和少儿编程的区别

    大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答. 乐高编程和少儿编程的区别如下: 1.乐高编程是以调用编程模块指令让机器动起来为目的.通常需要编程的模块是已经写好存储在模块里的,学 ...

  9. python程序语言和机器人控制-利用树莓派+Python语言制作一部机器人就是如此简单!...

    前段时间,接触了一款在开源硬件界被称为是"人气之王"的树莓派(Raspberry Pi)袖珍计算机,功能强大的她拥有一颗SOC,集CPU.GPU.DSP和SDRAM为一体,以SD卡 ...

  10. 拼插机器人课和围棋课_乐高机器人教育与乐高玩具的区别!

    原标题:乐高机器人教育与乐高玩具的区别! 当下,少儿编程乐高机器人编程作为中小学生素质教育的重点,深的很多家长青睐.信息时代的人们对关于人工智能.信息科技的教育看法都不约而同的表示未来会火,孩子会用到 ...

最新文章

  1. 云端飘 String s=new String(abc)创建了几个对象?
  2. [git]通过commit_id找回文件
  3. 性感的CSS Menus
  4. 常用公差配合表图_涨知识!常用的机械测量工具,你都知道吗?
  5. 使用Swagger UI的Document和Test API
  6. linux 软件安装方式
  7. git恢复到master版本_关于git,请教如何恢复版本库?
  8. CentOS被攻击的分析过程
  9. STL源码剖析(侯捷)笔记——STL概述
  10. 【学习笔记】InformationTheory——熵,条件熵,联合熵,互信息,交叉熵
  11. 安全基础-防火墙四种登录方式 SSH Telnet SSH
  12. 【戴明环】PDCA-问题闭环思维模型
  13. UEFI.源码分析.DXE的异步事件服务.第一部分.事件驱动
  14. 图像工作回顾之七:人脸姿态估计
  15. 黑苹果使用小技巧之按键设置
  16. 【OCM第18期开班】第18期11g OCM培训将于8月23日,晚20点在腾讯课堂开班,第1场考试免费培训!!!...
  17. 包教包会—全网最易懂的全加器高位进位和低位进位讲解
  18. 2006电子商务大盘点
  19. c语言常见warning的消除方法及重要性
  20. aaa_base is needed by MySQL-server-5.5.23-1.sles11.x86_64

热门文章

  1. TCP通信调试助手===wireshark使用
  2. 【017】基于vue.js的网易云web端(实现播放、登录)(Node接口实现)
  3. 民宿营销方案,解决民宿运营三大痛点
  4. 皮尔特沃夫服务器在什么位置,你知道LOL大区的服务器在哪吗?很有可能就在你家旁边...
  5. 单例模式详解(附常见的7种单例模式源码)
  6. XF660R型号良田高拍仪接口开发,通过图片文件的二进制数据进行图片上传
  7. 调用微信接口方法说明--JS-SDK
  8. pr2020lut导入_lut调色预设怎么用?LUT预设导入fcpx/PR/AE/PS 详细教程
  9. 好用的抖音视频剪辑软件推荐
  10. python提取pdf表格数据 无边框_Python使用Tabula提取PDF表格数据