文章内容

成都信息工程大学 - 《成都信息工程大学报》

逐梦少年和机器人的成长故事

——访学校创新创业实验班机器人团队

作者:王思慧    
2019-04-12     浏览(189)     (0)

创新创业实验班成员与机器人之间的故事,他们在实验室中不断探索和成长,遇到问题解决问题,永远别放弃。

团队成员在调试人型机器人

可爱的Nao机器人


  控制工程学院创新创业实验班始建于2009年,是成都信息工程大学自动化专业、测控技术与仪器专业、电气工程及其自动化专业、机械电子专业等学生的综合教学实践基地和教学改革与创新的研究平台,实验室一直致力于培养更多的技术人才、更踏实的学习人才,以此带动更多的同学参与技术学习,形成良好的技术学习氛围。
  选择,不后悔
  “14秒03!”
  王永生按下手机的暂停键,正给坐在地上调试机器人的李硕报时,微微张着的嘴因突如其来的喜悦而忘了合上。他和李硕两相对视,两人都很清楚,这个测试成绩对于冲刺冠军非常有利。
  2017年10月底,由王永生和李硕带领的小组代表学校参加了在西南石油大学举办的第二届四川省机器人大赛。比赛的内容是要求各大高校选派的Nao机器人在一条双向的跑道上进行折返跑。作为加分项目,跑道上同时放有一个红球,Nao机器人成功识别后用“脚”轻轻踢一下,总过程用时最少的队伍即为获胜。
  测试的成绩加上比赛当天现场的调试结果,让大家都很有信心冲刺冠军,但最后的结果却事与愿违:Nao机器人腿部电机的部分老化给小组成绩带来了致命的一击。“很遗憾,也很无奈。”李硕说。
  比赛结束后有很长一段时间,实验室里每个人脸上都挂着沮丧。王永生看着实验室墙上贴着的参赛照片,还有那一个又一个的项目成果,心中知晓过往成绩给这一届队员带来的巨大压力。看着在实验室不停对着电脑敲击的成员们,王永生知道,此刻他们最需要的是鼓励。他伸手轻轻拍了拍身旁正在钻研控制算法的学弟,大声说道:“不就是个意外嘛,又不是我们的能力问题,没什么大不了的。还等着明年看你们带着Nao再去大展身手呢,你们可是第九届实验班的主力,振作起来!”
  付出并没有带来想要的回报,这种失落感同样落在了龚庆与刘瑞栋这对搭档身上。
  彼时,第六届实验班的学长刚离开,他们得在众多方向中做出与团队现有基础最相适应的选择。立项的那个阶段,日子过得很辛苦。以前跟着前辈们一起做,省掉了最苦最难的环节,感觉还不错。但真正轮到自己要挑起第七届的大梁时,作为人型机器人项目的负责人,龚庆才发现要学的东西太多。
  冬日的一个下午,被用作固定实验室的6201号房间里,包括第七届、第八届以及即将成立的第九届实验班在内的成员们围坐成一圈,关于自己和机器人的故事,每个人都有话要说……
  对王永生和李硕而言,日程表已经排到大三下学期;对于龚庆和刘瑞栋而言,毕业在即,摆在他们眼前的不光是对于项目前途的忧心,还有毕业后何去何从的艰难抉择。尽管有很多困难,回想起从当初进入实验班这个集体到一路走来的点滴收获,四个人一致表示:“我庆幸,也不后悔当初的选择。”
  缘分,刚刚好
  龚庆与团队的结缘始于大一那年一门与机器人有关的选修课。课堂展示环节,教室内突然进来几个人,怀里还抱着一个“大家伙”:“是双足机器人,也就是我们现在负责的人型机器人最开始的版本。”当时的机器人协会会长和一名来自实验班的成员共同完成了这次展示。看到其中一人把手中的遥控器微微往下倾斜,教室前方空地上的双足机器人便“听话”地慢慢俯身下去,当下就勾起了龚庆的好奇心,加之自己本身对人型机器人有一定的了解。等到第七届实验班的报名表格发到手上时,龚庆果断地签上了自己的名字,“进入实验室第一件事就是去找到当时演示的学长问个清楚,才知道原来是在遥控器里装了一个姿态传感器,让双足机器人可以完成走路、起身和弯腰等基本动作。”
  2009年第一届创新创业实验班开办的时候,人型机器人就被学校采购回来作为课堂教学模具使用。当时机器人内部的舵机和控制板的性能较差,组成电路板的51单片机最多只能写入2K空间的程序,再大就写不进去了。那段时间,只能用人型机器人来简单地跳跳舞,然后测试其基础性能。
  “换还是不换?”作为实验班各类项目的指导老师,刘鹏不止一次思考过这个问题。如果换,摆在他面前的顾虑有两个:一是经费高;二是当时的实验班成员对机器人内部的构造并不熟悉,即便将性能更好的机器人引入实验室,意义也不大。
  后来的决定是先从电路板开始换。三批实验班成员不断完善单片机的改造:先将51单片机换成飞思卡尔单片机,但由于其控制舵机的输出过多,性能也不是很好,才换成现在的DSP单片机。
  “并不是要求同学们非得做出什么产品来,就拿这样一个升级换代的过程来说,重要的是学习能力的逐步提升,通过提升看自己能做到什么程度。一开始因为条件限制,只能去借鉴别人做得好的方面,在此基础上去观摩去学习,最后做出一个属于自己的东西出来。”刘鹏认为,“这样的一个学习流程是非常必要的。只有基础打得扎实,才有底子去做得更好。”
  在实验班成员和指导老师的共同努力下,包括硬件和软件在内,经过一番全自主改造的人型机器人在第七届实验班成员手中已大致成型。与第一次买回来做教学模具的版本相比,在运算速度和储存容量等方面都有了很大的改进。
  到了第七届,也就是龚庆和刘瑞栋所在的项目小组需要做的便是继续完善人型机器人的功能并负责相关动作的开发与添加。两人的分工明确:龚庆负责开发动作,刘瑞栋则负责编写DSP数据处理芯片的内部程序。
 探索,进行时
  人型机器人稳稳地立在桌子最显眼的地方,走近看却发现它没有一个真正意义上的“头”。也不知道是谁在本该是脸部的位置上贴了一张差不多大小的便签,上面画着一个大大的笑脸,让人型机器人变得“有头有脸”。
  大家都笑称人型机器人可是见过不少世面的,不仅在学院科技开放日上进行过活动展示,更是在学校更名大学考察时为专家们送上过精彩的表演。龚庆心中却始终记着:如果它在表演中意外倒下,那不是表演失误,那就是事故。大到构造挡板,小到每一颗螺丝钉,实验室中的人型机器人全由成员们自主拼装。由于每个机器人自身机组的差异,在一个机器人上已经实现的一套动作并不能直接拿到另一个机器人身上去用。而造成这些差异的正是那看似不起眼的螺丝钉,在各类零件的连接处都有一个九孔的转盘,选择哪个孔拧进去,拧的松紧程度都会产生不一样的效果。转盘是塑料的,所以斜着也是可以把钉子给拧进去的,但是这样会把洞口扩大,和正着拧进去的结果又会不一样。这给他们接下来的工作增添了不少的麻烦。
  实验室里人型机器人的数量为十台,一个个调试的话往往很耗时间。当时的程序是直接在编译器上事先写好,编成机械码后再输入到机器人的DSP上去。由于控制程序无法在机器人带电的情况下直接进行调整,为防止偏差的产生还必须断电操作。龚庆回忆道:“但凡出现偏差,都得先把电断了,回到电脑前调整完程序里的参数后,再把信息重新编译进去。那个时候做得最多的就是这个。”
  这时,同届另一个项目组负责的Nao机器人引起了龚庆的关注。Nao自带的一个线上编程功能可以在不断电的情况下对机器人进行调试,而且调试结果会马上在机器人身上体现出来。他觉得自己找到了解决一直困扰自己问题的办法,兴奋地拉起同伴:“那我们也来做这样的一个上位机吧。”
  当时团队内有一个目标是让十台人型机器人联动起来,龚庆觉得时机已然到来,尤其是在上位机的想法逐渐成熟以后,两人的分工有了新的变化。但同时,开始负责实现机群同步的刘瑞栋也遇到了麻烦。
  最简单的想法是做一个小型局域网,使得十台机器人可以共享彼此的信息。可是当时刘瑞栋还没有系统学习过在大三才开课的《单片机》课程,全英文的DSP教程让他理解起来非常吃力。他最先想到的是加上一个蓝牙模块,可是,蓝牙只能实现一对一的传输,无法做到一对多。翻阅各种网站和资料后,他又找来替代品——Zigbee,然而Zigbee又不能实现与手机的通信。最后的解决办法是选择其中的一个机器人做主机,在上面同时插上蓝牙和Zigbee,让蓝牙先和手机建立起通信,然后再借助Zigbee向其他机器人发送信息。“Zigbee的作用很像咱们平时用的WiFi。”刘瑞栋这样形容道。
  成长,在路上
  人型机器人因为做的是全自主的改造,硬软件方面都需要下功夫。相比而言,Nao机器人的自由度更高,硬件方面也做得更完善,需要的就是对其进行一些功能的优化和拓展,包括王永生和李硕在内,前后已有五届总共20人左右参与这项工作。
  第七届Nao项目组的题目是基于Nao机器人的人脸识别系统。具体而言是做机器人的视觉方向,让Nao能够感知周围的环境。这项工作大多与图像处理相关,来自自动化专业的李硕坦言这与自己的专业并不搭边,所以身边能够提供帮助的人并不多。“全得自学,文字要一点点地去查词典,代码要一条条地慢慢斟酌。”期间还发生了一个让人啼笑皆非的小插曲。作为世界范围内教育行业都在广泛应用的一款机器人,相关网站上提供有许多用户的Nao使用视频。“其中有一个美国人在视觉方面就做得很好,正好那时我们遇到一个问题一直没能解决,项目成员便鼓起勇气发了一封邮件过去。英语也不是很好,一封邮件一半用不多的单词量拼凑,一半靠有道翻译软件,就这么给发了过去。”没想到的是对方很热心,很快就回复了邮件,在线交流一番后,问题终于得到解决。
  李硕和王永生在大一下期的时候便加入到实验室。等Nao机器人的人脸识别功能做完,他们的项目时间已经过了四分之三,余下的时间又开始进行语音识别的工作。Nao所在的制作公司本身有提供自带的语音库,进行一些简单的对话不成问题,但和智能却完全搭不上边。
  一次成功的对话必须做好两件事,即听和说。如何让外形可爱的Nao既能听懂别人说的话,又能流畅地自我表达呢?语音识别的算法很重要。百度语音和图灵机器人官网上提供有可供使用的算法,将两者的API(应用程序接口)对接起来,调用其中的一部分运用到Nao的身上,这样一来便大大简化了语音识别功能的开发过程,紧接着再按照团队内的思维写一套适用的程序进行完善。到了第七届结题时,Nao机器人已经可以完成人脸和语音的识别、智能对话和一些简单的舞蹈动作。
  结合立项方向,团队内给了Nao一个新的定位:娱乐家居型机器人。为了让Nao成为一个称职的“管家”,做到口渴时帮忙接杯水,出门时帮忙查天气预报等家庭生活的基础服务,团队一直不懈地努力着。“理论到实践真的要走完一条很长的路才行。”这种心有余而力不足的无力感,每个人都有过深刻的体会。
  王永生解释道:“不仅仅是动作,还要考虑最优路径和最优规划。听起来像是初中高中做过的那种很简单的数学题,但上手实施起来,再加上执行末端就会发现工作量太大了。”不过进步的感觉让王永生觉得喜悦,“特别是在参加一些比赛以后,准备的那个过程会让人飞速成长,因为大家心里有一根弦紧绷着:必须要在有限的时间内做完并做好某些事情。”
  趁着Nao寄回远在法国的原产商进行维修,每个人都计划从不同方向,抓紧时间完善自身的理论知识。
  这是控制工程学院创新创业实验班几个逐梦少年与机器人之间的故事,听起来是否像极了那个一直奔跑着的你顽强的、不低头的成长经历。出现一个问题解决一个问题,成长就是这样的一个过程。少数问题没能解决也不要紧,累了就暂作休息,调整好了再来,但是,永远别放弃。