我开发了一个机器人应用,让 HEXA 机器人可以追逐光——HEXA The Light Chaser
2017-11-09 00:00
330 查看
可编程全地形机器人HEXA在正式面向用户时,曾发起“HEXA人类导师计划”,收到了来自全球各个国家机器人爱好者的购买和申请。经过一段时间的探索,有不少用户利用HEXA开发出了许多有趣的应用,我们将陆续把用户们开发的技能分享给大家,并分享出具体实现的代码,感兴趣的伙伴们可以尝试体验。
这次我们分享的是来自澳大利亚堪培拉的一名科学老师,他利用HEXA开发了一个可以追寻光的Skill(机器人应用),以下是他实现的经过:
我是一个科学老师,几个月前参与了HEXA人类导师计划。这几个月我都在各种倒腾HEXA,熟悉它的SDK,希望能给我的学生们开发一些新的好玩的skill。上个周末我在看小黄人电影得到了一个灵感,我想让HEXA变成一个小黄人一样的机器人,能追着舞台灯光跑,古怪又逗趣。
所以我开始考虑如何使用HEXA的传感器才能达到我想要的效果。本想用HEXA自带的传感器和摄像头的照相功能和寻找亮色,但结果不太让人满意。在一个明亮的房间里,HEXA开始无目的的乱走,我修改了两次感测到颜色的范围,但似乎没有帮助,测试结果依然不好。后来我考虑给HEXA安装一个光强传感器。看了Vincross论坛上其他用户的帖子,我把光强传感器装在硬件接口上并跑通了源代码。
现在它可以看到光了,而且迅速迎着光行动起来,就像个迷恋自拍的网红。但光线必须直接照在传感器上。对于那些没有感应到的光,目前HEXA还无能为力。这不是一个完美的skill,不过作为一个用来启发学生学习编程的硬件设备,这就足够了。
以下是我开发过程中的代码思路。
大家可能对HEXA有点不太熟悉,这里给大家简单介绍一下,感兴趣的朋友可以进一步了解: HEXA是一个可以灵活适应多种场景的全地形可编程机器人,它集成了各种必要的传感器,并搭载强大易用的机器人软件操作系统(MIND OS)。HEXA是主要面向技术发烧友和科技爱好者的机器人开发平台,官方提供了完整的开发工具,喜欢机器人或者想要做机器人开发的朋友,可以直接跳过底层的硬件电路和结构力学,用HEXA直接上手来学习和开发机器人应用。
最后打一个硬广:双十一期间,HEXA工程机正在低价发售,可以直接优惠1111元,另外现货发售。活动时间到11月11日,近期想要入手的话是一个合适的机会。
购买地址:Vincross官网
对于HEXA开发感兴趣的朋友可以加入我们的交流群,QQ群:455783546;微信群可以扫下面二维码:
这次我们分享的是来自澳大利亚堪培拉的一名科学老师,他利用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;微信群可以扫下面二维码:
相关文章推荐
- 机器人应用(Skill)精选丨让HEXA机器人成为直播网红,还可以接收红外信号
- 公司开发多个应用的时候是否可以使用同一个签名(*.jks)
- 设计并实现一个LogService,应用开发时可以打印log到视图(TextView)中显示
- 一个可以将flex应用运行于手机上的开发工具ELIPS_STUDIO
- 一个人的 Android 开发 泡在网上的日子 / 文 发表于2017-03-30 17:08 第3637次阅读 一个人,开发 3 编辑推荐:稀土掘金,这是一个针对技术开发者的一个应用,你可以在掘金上
- 如果你想开发一个应用(1-12)
- Hadoop:The Definitive Guid 总结 Chapter 5 MapReduce应用开发
- iOS开发UIScrollView的底层实现-你也可以自己实现一个scrollView
- 5分钟创建一个SpringBoot + Themeleaf的HelloWord应用
- 现在还在用VB6编程的朋友可以来看一下,我写的一个小程序,在VB6开发环境下支持鼠标滚动轮的操作
- Qt WebKit可以做什么(三)——开发包含丰富web内容的本地应用
- cocos2d-x 3.0 学习笔记: 一个可以拖拽的Label及schedule的应用
- 完成“易写易库(EXEK)”之后,计划再开发一个可以写EF类库的易语言模块
- 串口通信(MSComm)开发过程记录(包含一个可以通信的比较基础的程序版本)
- 在Debian中建立Beaglebone black的应用开发环境之五:来一个hello world
- SystemBarTint是两年以前的一个开源库,现在我们依然可以用它很方便的给应用加上。
- 【UWP应用开发学习】如何各页面公用一个对象
- 使用C#开发一个简单的P2P应用
- 如何开发一个OPhone平台的输入法应用
- 移动应用可以通过微信沟通接口连接公众号 微信涨粉多了一个新通道