- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
制作五接力机器人
一、任务描述
场地上有机器人跑道,跑道两侧有黑色轨迹,接力区为黑色区域。1号机器人将 接力棒(乒乓球)传递给2号机器人,2号机器人把接力棒(乒乓球)传递给3 号机器人,然后三号机器人再传递给四号机器人,四号机器人冲向终点区,在终 点区停止。场地示意图如图5 — 1所示:
起跑绻
图5—1场地不意图
二、硬件组装
机器人需要在跑道内行走并要产生接力,那么机器人最好的行走路线应该在 跑道中间,而跑道两侧有黑色线,可以利用机器人的光电模块探测,保证机器人 在跑道中间行走,机器人需要产生接力,应该有一个传递(接力)装置,机器人
要识别到达接力区并产生接力需要一个碰撞装置。接力机器人如图5-2所示。
图5 —2 接力机器人
三、任务难点分析
.保证机器人在跑道中间行走
解决方案:可以在机器人的两侧分别装上两个光电模块,利用光电模块可以对跑 道两侧的黑线进行检测保证机器人在跑道中间行走,考虑到接力区为黑色区域, 因此光电模块应该是检测两条跑道线的外侧,这样可以提高完成任务的成功率。
.机器人如何知道到达接力区
解决方案:在进行接力的两个机器人的前方和后方分别装上碰撞传感器,考虑到 有的接力区在跑道的弯道位置,因此接力机器人的前方和后方应分别装上两个碰 撞传感器,并将其并联且接触面尽量扩大(可以提高成功率)
.如何产生接力
解决方案:当第一台机器人检测到接力信号时启动传递装置将物体传递给第二台 机器人,第二台机器人的碰撞传感器检测到信号后延时一段时间后再启动行走。
.机器人停止
解决方案:第四台机器人利用左右两侧的光电模块检测到全黑时说明机器人到达 了停止线,此时让机器人强行前进一段时间后停止,即可让机器人停止在停止区。
四、程序设计
1.输入/输出端口说明
单片机输入/输出
引脚
对应程序中的位变量
引脚功能
RBO
pinO
左侧电机正转
RB1
pinl
左侧电机反转
RB2
pin2
右侧电机正转
RB3
pin3
右侧电机反转
RB4
pin4
电机使能控制端
RB6
pin6
前碰撞开关
RB7
Pin7
后碰撞开关
RC1
pin9
电机正转(传递装置)
RC2
PinlO
电机反转(传递装置)
RC4
pinl2
左侧光电传感器(寻 黑线)
RC5
pinl3
左侧光电传感器(寻 黑线)
RC6
pinl4
右侧光电传感器(寻 黑线)
RC7
pinl5
右侧光电传感器(寻 黑线)
2.程序流程图
3.程序清单(仅供参考,数据需要调整)
rem 1, 2, 3号接力机器人程序
dirbO=%l 1100000dirbl=%l 1110000if pin7=0 then startgoto start 1start:al:pause
dirbO=%l 1100000
dirbl=%l 1110000
if pin7=0 then start
goto start 1
start:
al:
pause 2000
rem机器人停止2秒
x=x+l
rem变量X累加
if pin6=0 then a2
rem机器人前碰撞产生信号执行A2
if x400 then a3
rem变量X的值大于400执行A3
pinb0=0
if (pin 12=1) or (pin 13=1) then zz
if (pin 14= 1) or (pin 15=1) then yz
rem左侧光电模块有
rem传感器识别到黑色执 rem行左转
rem右侧光电模块有一个 rem传感器识别到黑色执 rem行右转
Yem定义0, 1, 2, 3, 4号端口为输出端口; 5, 6, 7号 rem端口为输入端口
rem定义8, 9, 10, 11号端口为输出端口; 12, 13, 14,
reml5号端口为输入端口
pinb0=0 rem将专用变量PINB0清0
pinb 1=0 rem将专用变量PINB1清0
pause 100 rem机器人初始停止100毫秒
start 1:
rem机器人后碰撞或者声控模块产生信号rem 执行START
gotoqj
yz:
zz:qj:a3:pinb0=pause 15 pinb0=0 pause 1
zz:
qj:
a3:
pinb0=pause 15 pinb0=0 pause 1
goto al
pinb0=pause 15
pinb0=0
pause 1 goto al
pinb0=pause 1
pinb0=0
pause 2 goto al
rem机器人调速右转
rem机器人调速左转
rem机器人调速前进
if pin6=0 then a2rem机器人前碰撞产生信号执行A2if (pin 12=1) or (pi
原创力文档


文档评论(0)