可编程全地形机器人 HEXA 在正式面向用户时,曾发起“ HEXA 人类导师计划”,收到了来自全球各个国家机器人爱好者的购买和申请。经过一段时间的探索,有不少用户利用 HEXA 开发出了许多有趣的应用,我们将陆续把用户们开发的技能分享给大家,并分享出具体实现的代码,感兴趣的伙伴们可以尝试体验。
这次我们分享的是来自澳大利亚堪培拉的一名科学老师,他利用 HEXA 开发了一个可以追寻光的 Skill (机器人应用),以下是他实现的经过:
我是一个科学老师,几个月前参与了 HEXA 人类导师计划。这几个月我都在各种倒腾 HEXA,熟悉它的 SDK,希望能给我的学生们开发一些新的好玩的 skill。上个周末我在看小黄人电影得到了一个灵感,我想让 HEXA 变成一个小黄人一样的机器人,能追着舞台灯光跑,古怪又逗趣。
所以我开始考虑如何使用 HEXA 的传感器才能达到我想要的效果。本想用 HEXA 自带的传感器和摄像头的照相功能和寻找亮色,但结果不太让人满意。在一个明亮的房间里,HEXA 开始无目的的乱走,我修改了两次感测到颜色的范围,但似乎没有帮助,测试结果依然不好。后来我考虑给 HEXA 安装一个光强传感器。看了 Vincross 论坛上其他用户的帖子,我把光强传感器装在硬件接口上并跑通了源代码。
现在它可以看到光了,而且迅速迎着光行动起来,就像个迷恋自拍的网红。但光线必须直接照在传感器上。对于那些没有感应到的光,目前 HEXA 还无能为力。这不是一个完美的 skill,不过作为一个用来启发学生学习编程的硬件设备,这就足够了。
以下是我开发过程中的代码思路。
var direction float64
for {
// Rotating
hexabody.MoveHead(direction, 10)
direction += 1
if direction == 360 {
direction = 0
}
// set i2c parameters
err := i2c.Set(0x39, 0x80, 0x03)
if err != nil {
log.Error.Println(err)
}
raw, err := i2c.Value(0x39, 0xAC, 2)
light := int(raw[0]) + 256*int(raw[1])
// check the Luminosity of light
if light > 500 {
log.Info.Println(light, raw)
hexabody.WalkContinuously(0, WALK_SPEED)
time.Sleep(5000 * time.Millisecond)
hexabody.StopWalkingContinuously()
}
}
大家可能对 HEXA 有点不太熟悉,这里给大家简单介绍一下,感兴趣的朋友可以进一步了解:HEXA 是一个可以灵活适应多种场景的全地形可编程机器人,它集成了各种必要的传感器,并搭载强大易用的机器人软件操作系统( MIND OS )。HEXA 是主要面向技术发烧友和科技爱好者的机器人开发平台,官方提供了完整的开发工具,喜欢机器人或者想要做机器人开发的朋友,可以直接跳过底层的硬件电路和结构力学,用 HEXA 直接上手来学习和开发机器人应用。
最后打一个硬广:双十一期间,HEXA 工程机正在低价发售,可以直接优惠 1111 元,另外现货发售。活动时间到 11 月 11 日,近期想要入手的话是一个合适的机会。
购买地址:Vincross 官网
对于 HEXA 开发感兴趣的朋友可以加入我们的交流群,QQ 群:455783546 ;微信群可以扫下面二维码:
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.