舞蹈机器人
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
说说我们的基地
——记自己在舞蹈机器人基地半智能机器人组的一年
随着新生军训的口号声,一个新的学年又不知不觉地开始了,而自己也已经进入了大四。回想自己已经过去的三年大学时光,如果真的有从头再来的机会的话,我一定会这样做的。我从小热爱计算机,不过在加入基地前我几乎没有认真地学过一项计算机方面的技术,说到底还是自己太浮躁,不踏实,没有充分利用好时间,更重要的是,自己一个人也没有足够的实验条件。
加入基地之后,我结识了许多技术十分出色的朋友。是他们和他们在基地的工作使我认识到了自己与许多人的许多差距,无论是技术上,还是做事上。尤其是看着09级那些干劲十足的学弟们,我真的为自己在一年前的半堕落状态感到惭愧。基地浓厚的学习气氛极大地鞭策了我去继续学习、实践计算机的知识与技术。从之前对硬件与底层软件基本一窍不通,到现在能够明白一整套软件&硬件&机械系统的工作原理,能够通过看电路自己焊飞线来实现想要的功能,知道如何编写程序来操作硬件,懂得了课本上讲得很虚幻的工作原理是怎样真真切切地表现在机器人的电路板和软件上的,我感谢基地给我带来的变化。
如果让我举出我这三年最幸运的事情,那应该是加入了舞蹈机器人基地;
如果让我举出我这三年最遗憾的事情,那一定是没有早一年,甚至早两年加入舞蹈机器人基地。
在这篇文章中,我愿意把我在基地这短短一年的经历与大家分享,同时向大家介绍一下我们基地的半智能机器人项目。希望更多的人能够更多地了解我们这个充满热情,崇尚技术的团队,并加入到我们中间。——————————————————————————————————————————
我是在去年这个时候加入的舞蹈机器人基地,说起来应该算是基地里资历比较浅的队员了。我接触编程很早,可是我对硬件方面的设计从来都不怎么懂。在加入的第一个学期里,我对基地的满桌子满地的器件那是各种好奇啊,什么模拟舵机、数字舵机、各种芯片、单片机、传感器,还有一堆堆的焊好的与没焊好的PCB电路板。我时常拿起一个器件,问问旁边的同学“这是什么”,而他们总会耐心地给我讲。
记得当时组长给我们演示机器人做动作时,他的笔记本的USB口上插着一个模块,这个模块又通过几根线与机器人上的电路板相连,机器人通过一个直流电源箱供电。他在笔记本上操作一个看起来很专业的机器人调试软件,机器人居然就随着他的指令做动作。我心里的好奇之火一下子熊熊燃烧起来了,心里的感觉一直是:好神奇,好神奇……
后来又了解到机器人上的电路板是我们基地电路组的同学自己设计并焊接的,而笔记本上的上位机调试软件同样是我们基地软件组的同学自己编写的,电脑与机器人之间的通讯协议也是我们自己定义的,机器人身上的各部分零件也都是基地机械组的同学设计的。
于是当时的我一下子对这帮人充满了佩服和羡慕,佩服的是他们的技术,羡慕是因为不知道自己啥时候才能学懂这些东西。后来通过学习和请教,我逐渐明白了这套系统的工作原
理。其实并没有想象中那么复杂,但整个机器人系统中仍然随处都能看到基地成员大大小小的智慧,另外这套系统的工作量还是非常可观的。更重要的是,这一切都是由我们这一群西工大的本科生自主完成的!——————————————————————————————————————————
后来,我被分去参与一个全新的项目——半智能机器人组
这个组和基地以往的传统舞蹈机器人组有很大不同。新型机器人除了要具备像传统机器人一样根据已有动作序列做动作的能力,还必须具备通过感知周围环境信息并自主决定要去做什么的能力,甚至要具备一定的思考能力、具有情感变化。我们组这一次仍然是去参加机器人舞蹈比赛,另外还去参加了仿人机器人竞走比赛。机器人舞蹈比赛开赛以来,我们基地将首次为舞蹈机器人引入智能化的元素。对于如何设计舞蹈比赛的剧本,最一开始的时候那叫个众说纷纭啊,因为关键在于如何通过5分钟的表演来展示出我们机器人智能化的一面。经过讨论后我们确定了这样的表演内容:模拟一堂数学课的情境:机器人通过识别摄像头识别桌子的位置,并走到桌子前,桌子面前的白板上有一道手写体数学题(如:6×(5-2+7)÷3),机器人通过摄像头采集白板图像,识别出算式中每一个字符并计算出结果,将运算结果写在桌子上,最后跳一段舞蹈结果表演。不过后来这个方案又做了一些调整和优化,最终演化成了“老男孩”机器人… 呵呵,这是后话了,集体的智慧是无穷的。。。
方案确定下来,为机器人展开的设计工作也紧接着展开了。
机械方面,我们沿用了以往机器人机械结构中的优秀设计,同时专门为这次比赛所需的写字和步行做了进一步修改与优化。最终的机器人形态美观,稳定性比较出色。
电路/硬件方面,由于单片机已经完全不能胜任文字识别、方向计算、路径计算、动态产生动作序列等大运算量的工作,我们不再沿用传统舞蹈机器人的以单片机为控制核心的结构,而采用了嵌入式系统中广泛使用的ARM处理器。这回采用的S3C2440处理器基于ARM9架构,主频400MHz,具有USB、UART、通用GPIO等丰富的扩展接口,运算能力能够满足我们的要求。
硬件上从单片机跨越到ARM处理器,电路板的设计难度一下子增加了许多,外围电路也要增加好多,比如USB、高速串口通信等。不过这个问题难不倒我们,确切的说是难不倒电路组的以诺同学。。他很快完成第一版电路的设计,不过后来这个板子由于USB芯片工作不稳定,他又重新设计了第二版电路。(其实后来发现是焊一个芯片时用错了东西而引起的问题,哎,冤枉第一个板子了…)【硬件】硬件系统的大致结构:
本帖最后由startar 于2011-9-17 00:43 编辑
上个学期中间,软件部分的编写工作一直在缓慢地进行着。不过不知不觉暑假就到了,一考完试,大家便全身心投入到机器人的调试工作中。那个时候软件的各个部分已经基本完成,只是功能不够完善,Bug到处都是。不过,调试工作本来就是去完善功能,发现Bug的过程嘛~。那段时间的紧张调试虽然很辛苦,但还是非常欢乐的。
有次(忘了是谁了)有事找我们詹头儿,可他睡得正香。我走过去在熟睡的头儿面前平静地说:“刚又烧了5个舵机”。(ps: 我们用的数字舵机一个500RMB,另一种大扭矩的型号AX-18要1200RMB)只见头儿立刻睁眼,睡意全无地瞪着我,叫道“啊??”。随后他看到几个人在一旁窃笑。。。
看来人睡着的时候的确是很纯真的,我们当时真的是全身心扑在机器人调试中去了。据