我开发了一个机器人应用,让 HEXA 机器人可以追逐光——HEXA The Light Chaser

可编程全地形机器人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;微信群可以扫下面二维码:

输入图片说明

转载于:https://my.oschina.net/u/3629723/blog/1570494

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值