武术擂台仿人机器人系统及电路设计 - 图文(2)

2019-02-15 15:32

1.3 机器人武术擂台赛竞赛环境

在指定的擂台上有双方机器人和5个中国象棋棋子[1]。双方机器人模拟中国古代擂台搏击的规则,互相击打或者推挤。如果一方机器人整体离开擂台区域或者不能再继续行动,则另一方获胜。如果双方均未离开擂台且都能自主移动,则在比赛时间结束后,推下擂台上象棋棋子数量多的一方获胜,否则双方判为平局。

比赛场地(即擂台,如图1-1所示)大小为长、宽分别为是2400mm,高150mm的正方形矮台,台上表面即为擂台场地。底色从外侧四角到中心分别为纯黑到纯白渐变的灰度。 场地的两个角落设有坡道,机器人从出发区启动后,沿着该坡道走上擂台。场地四周围700mm处有高500mm的方形白色围栏。比赛开始后,围栏内区域不得有任何障碍物或人。

图1-1 擂台赛场地整体效果

1.4 本设计的意义及应用

本设计主要的工作有:策略的分析与制定、结构与外观的设计、电机以及电机驱动的选取、传感器电路的设计与运用、控制器电路的设计与制作、软件的编写与调试、最终对机器人进行综合的实地测试,发现问题并找出解决方案。在论文完成之前,以上问题均得到解决,并且设计出一款抗干扰能力强的红外探测模块,该模块可以用于机器人避障、循迹等,以及其他需要对对障碍物进行检查的场合。与此同时设计了一款高性能通用小型机器人控制器,该控制器板载5V3A开关电源,具有RS232以及RS422总线接口,具有数字舵机以及模拟舵机接口,并且有设备过流保护、电源过压、欠压保护等功能。

本文正是一个本着学习、实践和创新的思想设计机器人。设计思路基于机器人武术擂台赛比赛规则,设计的最终目标是:结合当前流行的机器人技术,制作出一台能够适应比赛现场复杂环境的自主战斗机器人。

2

2 竞赛策略

本章从机器人武术擂台赛比赛规则入手,分析出合理的比赛策略,系统地介绍了设计目标以及应战策略。

2.1 规则分析

由于比赛场地表面是灰度渐变的,所以机器人的自定位可以通过读取场地的灰度信息来实现。

机器人的重心应该尽可能地降低。变形方案很好地解决了由于重心高带来的晃动等问题。当需要降低重心的的候,机器人进行机械变形,增强作战稳定性。

要在比赛中取得“制高点”,在不考虑棋子的情况下应该尽快抢得中心区或离中心区域最近,机器人应轻巧灵活, 前进、后退、转动动作应自如流畅,并具有较高的加速度和较快的行进速度,刹车要及时。同时,双方机器人在攻防过程中将发生激烈冲撞,进行制约与反制约的较量,因此机器人要求稳定性好,结构有一定的刚度,四壁要有推挡板[2]。

有效的进攻是最好的防守。制作仿人机器人的基本思想是:该机器人以进攻为主、防守为辅,在出发区出发后,在没有探测到棋子的情况下,首先抢占中心区域,然后在探到敌方机器人的方位后,把自己坚固的防守部位面向敌方机器人,使敌方机器人的攻击失效,确保自己始终占领中心区域,然后再寻找机会迷惑或攻击敌方机器人[3]。当探测到棋子的时候,要对场地环境、敌方位置、敌方运动方向等进行多方位的综合判断,确保不怠慢作站时机。

2.2 设计目标

根据以上思想,本设计确定了如下的设计目标: (1)从出发区出发,10秒内自主登上擂台区域; (2)确定我方机器人在场地的大概位置和方向;

(3)能自主寻找中心区域,以在未探测到对方时自主找到擂台中心区; (4)寻找并接近棋子、寻找并接近敌方机器人; (5)推动棋子到达擂台边沿;

(6)与敌方机器人对抗,避免被推下擂台,能够推动敌方;

(7)在遭受敌方机器人攻击时能保护自己(如具备一定的隐身和迷惑功能等,减少和避免受到敌方机器人的攻击),并具有一定的反击能力;

(8)检测擂台的范围,避免掉下擂台;

(9)检测我方姿态,防止摔倒,摔倒时能够快速自行站立; (10)能够识别圆柱体,并作举起动作; (11)具备有效的抓举装置,能够举起圆柱体;

3

(12)能够检测举起任务是否成功,如果不成功能够重新尝试举起。

2.3 应战策略

2.3.1 登上擂台

在机器人启动后,机器人依靠边缘检测传感器群引导到擂台中心,不启动其他传感器的检测;

2.3.2将棋子推下擂台

推棋子时,机器人需要做三件事情:寻找棋子,推动棋子,自身定位。寻找棋子的实现主要依赖于灰度传感器和测距传感器。传感器的布局至关重要,机器人必须能够通过灰度传感器定位自己的位置,通过测距传感器确定棋子的位置。因此,构型设计时必须合理布置传感器位置。比赛中输赢的关键是把敌方推出场外,所以可以采用被动式策略寻找棋子,即机器人按照某种策略漫游,如果检测到棋子就把棋子推出场外,否则机器人继续漫游。当把棋子推出场外时,机器人会接近擂台边沿,此时机器人需要适当调整自己状态(速度,位置)以防止掉出擂台[4]。这个过程中机器人的自身定位非常重要。

找到棋子之后,如何将它们推下擂台呢?两种方法:1、闷头往前直走,不管怎么都不转弯,这样一定能走到擂台的边沿,也能够将棋子推下擂台。2、通过识别场地的灰度,判断出机器人的位置和方向,对准最近的边沿前进。

方案一胜在简单,程序实现难度小。但是可能出现机器人需要推动棋子走过超过半个场地才能到达边沿的情况。这个过程可能出现敌方干扰、推挤,失败的概率很高。方案二实现的难度比较高一些,但是效率高。

2.3.3 将敌方推下擂台

我们可以想象,两只斗牛相互推挤,赢的一定是力气比较大的一方。

首先需要考虑,什么因素会影响机器人的推力。在现实生活中我们会看到两种现象: (1)一辆汽车在爬坡,但是动力不足,反而慢慢从坡上滑了下来; (2)汽车在泥地上面行走,但走不快,因为轮子总是在打滑。

上面两个例子可以得到影响汽车行进效果的两个因素:1、动力不足。2、摩擦力不够。如果动力不足,我们的机器人可能会被敌方的小车推得轮子倒着转。如果摩擦力不够,机器人在推挤时轮子会打滑,轮子一直在转,但机器人就是不能往前走。

推动敌方和推动棋子要做的事情是一样的,即:寻找敌方→推动敌方→自身定位。不同的是,推动敌方需要更大的动力,而且自身定位更加重要。如果己方被敌方推动时,己方就必须能够及时摆脱或者进行抵抗。

所以,在比赛规则允许的条件下,机器人质量尽可能接近所要求的最大值,尽量增加机器人的动力输出、以及轮子的接地面积。我们采用四轮驱动方案,两轮驱动方案重量和推力都不够。六轮驱动方案不好转弯,机器人不够灵活。

4

2.3.4 避免被敌方推下擂台。

如果我方机器人在前进时被敌方从后面推挤,并且我方的机器人没有察觉,会出现什么情况呢?

我方机器人的动力方向和敌方机器人的动力方向刚好一致,敌方不费吹灰之力就可以将我方机器人推下擂台。所以机器人需要能够察觉这种正在被推挤的状态,并且能够通过掉头、转弯、后退等手段避开或对抗敌方机器人的推挤。

?? ?? ?? ?? ?? ??

5

4 决策系统设计

4.1 软件体系结构

Eclipse是一个开放源代码的、基于 Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。虽然大多数用户很乐于将 Eclipse当作Java IDE 来使用,但Eclipse的目标不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。

??

4.2.2 机器人舵机

CDS5500机器人舵机和控制器之间采用问答方式通信,??

通信方式为串行异步方式,一帧数据分为1位起始位,8位数据位和1位停止位,无奇偶校验位,共10位,其指令包格式如表4-1。

表4-1 CDS5500通讯指令包

字头 0XFF 0XFF ID号 ID 数据长度 Length 指令 参数 校验和 Instruction Parameter1 ...Parameter N Check Sum 本设计使用以上通讯格式控制机器人上肢舵机的动作,其控制程序见附录1 。

本设计在实际调试时,大多采用灰度梯度标定法标定灰度数据。表6-1是在一次调试中测得的数据。

表6-1灰度梯度标定数据

前 244 339 493 551 612 后 207 283 453 537 614 右 234 305 425 482 537 左 261 355 505 567 621 前-右 前-后 后-右 前-左 右-左 灰度均值 10 34 68 69 75 37 56 40 14 -2 27 22 -28 -55 -77 -17 -16 -12 -16 -6 -27 -50 -80 -85 -84 236.5 320.5 469 534.25 596 注:表中“前”表示安装在前面的灰度传感器,“前‐后”表示前面传感器减去后面传感器的差值。

根据表中数据可以看出,除左边的灰度传感器,其它三个灰度传感器的值一致性较好。

6


武术擂台仿人机器人系统及电路设计 - 图文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:概率统计习题册详细答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: