2011年7月17日星期日

上周小记 -- 我的两个简单的人机交互的小游戏

每到周末,夜深人静就想写点东西,写点东西记录一下我上周生活吧。

德国的一个著名的卡通老鼠[1],今年已经40岁了,我们所和德国WDR电视台一起组织了一个开放日--7月10日,也就是上周日,一起庆祝这个卡通老鼠40岁生日,有至少2千个儿童来我们研究所参观。
我和一个同事带了一个学生,做了两个小游戏(花了我们两周的时间),给来参观的儿童玩,我们组的其他同事也做了好几个游戏,希望可以通过这些游戏培养儿童的科学兴趣的,虽然花了很多的时间和精力,但是来参观的儿童和很多家长都表示收获不少,特别是给儿童们带来了很多欢乐,与此同时,我们这些所谓的“科技工作者”的也获得了相当的成就感,这个偶然的机会做了游戏,也获得了很大的乐趣,自己感受似乎年轻不少!


以下简单地介绍一下我做的两个小游戏:
一个是微型机器人的逃离游戏,也就是有几只微型机器人(我们使用的KheperaIII微型机器人),通过一个门,有两种情况,一种是这四个机器人通过互相交流,它们可以有秩序地通过这个门,另一种情况就是四个机器人不进行交流,它们就会争先恐后地通过这个门,然后挤成一块,最后这几只微型机器人会“很艰难”的通过这个门。我们做了一个卡通界面,这个GUI(图形用户界面)可以通过连接我们的服务器可以和机器人进行通信。在这个GUI上选择机器人,通过它们的编号,然后可以选择按左边的大象卡通按钮,机器人就会通过无线网络的交流有序的通过门,这些微型机器人上面都跑Linux,选择老鼠按钮,机器人就会想上面说的第二种情况无次序的通过门。
儿童可以通过这个游戏了解一下微机器人的通信和控制知识。

Maus_Escape_Scenario

 


第二个是关于控制机器手臂的小游戏,两个儿童可以通过Wii的控制手柄Wiimote来进行游戏,游戏的目标就是让机器手能够抓住一个塑料积木块移到目标位置,为了保证安全,我们不让儿童直接控制机器手,而采用让儿童完成指令然后让机器手自动完成运行的形式。首先可以得到一组Key,这两个儿童必须按照上面的指令,“同步”地使用Wii手柄完成游戏上出现的一组动作(有四个),如果不同步,必须重复,完成之后,这两个儿童必须摇晃Wiimote,同时游戏屏幕上会出现他们摇晃Wiimote的次数,他们摇晃的次数相加的数量越大机器手移动的距离也就越远。然后继续重复,上面的过程,机器手就会继续进行移动,最终移到目标位置,然后将抓到的塑料块放下。下面是我做的游戏的GUI,如果GUI启动,主窗口会同时显示关于机器手运行的实时视频和游戏的指令和各种信息(显示渲染使用的是SDL库,并使用了一个简单的游戏引擎,实时视频的接受和解码使用的是libvlc库),记录了玩家需要的时间,玩家的名字,花费的时间,玩家的名字可以通过我们做的一个网页输入,我们的游戏GUI也会自动从网上的数据库上读取玩家的信息。
儿童可以通过这个游戏了解一下机器手的控制知识,体验一下人机交互的感觉。

Maus_GUI

 

周记的最后再写点东西,周五和六晚上,和两个PB电子系的老同学一起吃了饭,聊聊社会的乱象,感慨一下生活,分享一下人生感悟,闲扯一下工作上的压力,遇到的趣事,大家都已经或即将步入30,突然大家也觉得自己已经老了很多。简单总结一下我们这些中年男子的感悟就是:时不待我,现在应该做到的事情就是,好好把握人生的精华时光,活在当下,珍惜现在身边的人和事。

附注:

[1]著名的卡通老鼠,http://en.wikipedia.org/wiki/Die_Sendung_mit_der_Maus

没有评论: