我開發了一個機器人應用,讓 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日,近期想要入手的話是一個合適的機會。code

購買地址:Vincross官網接口

輸入圖片說明

對於HEXA開發感興趣的朋友能夠加入咱們的交流羣,QQ羣:455783546;微信羣能夠掃下面二維碼:圖片

輸入圖片說明

相關文章
相關標籤/搜索