C51单片机应用与C语言程序设计(第4版)——基于机器人工程对象的项目实践 课件 ch10 机器人循线竞赛.pptx

C51单片机应用与C语言程序设计(第4版)——基于机器人工程对象的项目实践 课件 ch10 机器人循线竞赛.pptx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第10讲机器人循线竞赛“十三五”职业教育国家规划教材工作导向创新实践教材程序设计(第4版)

本讲使用的QTI(QuickTrackInfrared)传感器如图10-2所示。任务1QTIl传感器及其通信接口QTI传感器的引脚如图10-3所示,将传感器上的光电管面对你摆放的时候,如图10-3(a)所示,从上到下3个引脚依次为GND、VCC、SIG;其背面有具体的标记,如图10-3(b)所示。本讲所用QTI传感器的性能参数如下:●工作温度:-40~85℃;●工作电压:5V;●连续电流:50mA;●功耗:100mW。具体定义如下:●GND:电源地线;●VCC:5V直流电源;●SIG:信号输出。

首先

将4个QTI传感器分别用M3螺钉固定到开槽杆件上,具体的固定方式如图10-4所示。其次

将QTI传感器安装模组固定到机器人前端,具体方式如图10-5所示。接着

然后用套件中附带的3PIN杜邦线和3PIN插针将QTI传感器的引脚连接到机器人的教学板上。最后

QTI传感器输出接口与教学板的连接如图10-6所示。任务2安装QTI传感器到机器人前端

任务3编写QTl传感器的测试程序(1)读取每个QTI传感器引脚的电平;连接好电路以后,我们要编写一个测试程序,以检查各个QTI传感器是否连接正确,并能够正常工作。参考“胡须”传感器测试程序和红外传感器测试程序,编写QTI传感器测试程序,实现如下功能:连接好电路以后,我们要编写一个测试程序,以检查各个QTI传感器是否连接正确,并能够正常工作。参考“胡须”传感器测试程序和红外传感器测试程序,编写QTI传感器测试程序,实现如下功能:(2)将读取的结果通过串口送至PC进行显示。Test4QTI.c是如何工作的程序首先进行串口初始化,然后将P07、P06、P05和P04的I/O口的状态送入串口,这里的左中右是按照机器人本身的方向确定的。此时若已经将机器人与PC的串口连接,打开串口调试工具,便可以在软件界面看到如图10-7所示的画面。

任务4设计算法实现机器人无接触传感器游中国RobotTourChina.c是如何工作的在程序开始处先定义3个全局变量,作为机器人3种典型动作的变量。intright90Steps=4intleft90Steps=48intUTurnSteps=48,//右转90°的脉冲数//左转90°的脉冲数//180°掉头的脉冲数

20%30%40%50%首先

将RobotTourChina.c输入计算机中保存起来,并创建工程将其加入,编译、连接生成HEX文件。然后

应用Progisp单片机下载编程软件,将HEX可执行文件下载到单片机上。接着

下载时要先将连接到P16和P17上的QTI传感器插针断开,才能正常下载。最后

下载完成后就可以调试机器人了。任务4设计算法实现机器人无接触传感器游中国执行调试

检测4个QTI传感器的返回值。根据4个QTI传感器的返回值决定机器人的运动方式。不断重复步骤(1)和步骤(2),直到机器人到达深圳结束。0102030405任务5修改算法实现机器人游中国

任务6用数组实现机器人游中国比赛第1种改进方案是增加QTI传感器的数量,让机器人能够更好地分辨出90°弯口和直线跟踪的状态。第2种改进方案是减少对QTI传感器的依赖,只使用4个QTI传感器跟踪直线,不用分辨弯角,甚至十字路口和景点。具体算法如下:(1)循线行走到第1个丁字路口,90°右转。(2)循线行走到左转路口,90°左转。(3)循线行走到右转路口,90°右转。(4)循线行走到福州景点,调头。(5)..

任务7改进运动执行程序,提升执行的可靠性改进的办法是改写这些运动子函数,加入加速和减速的过程,让子函数能够按照我们的期望尽可能地准确运动。以右轮为支点转弯,带加减速//pulseLeft最大转弯速度,steps:最大速度转弯步数//pulseLeft1500向前右转根据机器人的运动特征,按照以下代码编写和修改子程序//pulseLeft1500向后左转

任务7改进运动执行程序,提升执行的可靠性函数函数voidSLMotionStartWithRamping(intsteps,intMaxVec)让机器人逐步加速到最大速度MaxVec,然后以最大速度前进steps指定的步数。前进的方向由MaxVec决定,最大速度大于0时前进,小于0时后退。函数voidSLMotionStopWithRamping(intMaxVec)则是让机器人从最大速度的运行状态逐步停下来,而不是急停。函数FollowLine(intsteps)让机器人以最大速度循线一段距离,

您可能关注的文档

文档评论(0)

lai + 关注
实名认证
内容提供者

精品资料

版权声明书
用户编号:7040145050000060

1亿VIP精品文档

相关文档