Go 언어로 Sphero를 제어해서 해봤어요.
앞서 이곳 기사Node.js로 조작된 로봇볼 Sphero에서 Hello World.에서 Cyloy가 언급됐다.js 썼어요.
Cylon.js가 IoT에 대한 노드입니다.js 프레임워크입니다.그 자매 프로젝트에는 Go 언어를 위한 Gobot이 있다.
요즘 Go를 배우고 있기 때문에 Gobot도 사용해 봤어요.
Gobot
Gobot은 Cylon입니다.js 자매 프로젝트
사이트는 여기 있습니다.http://gobot.io/
$ go get github.com/hybridgroup/gobot
어쨌든 이걸로Sphero를 조작할 수도 있습니다.
시용 견본
우선 여기 기사Node.js로 조작된 로봇볼 Sphero에서 Hello World.를 참고하여 포트 정보를 확인하세요.
제 sphero 포트는
/dev/tty.Sphero-RRY-AMP-SPP
입니다.$ go get github.com/hybridgroup/gobot/platforms/sphero
샘플 코드를 바탕으로 실행해 보세요.사이트면
fmt
도 포장을 읽었지만 필요 없어 기술에서 삭제했습니다.sphero.go
package main
import (
"time"
"github.com/hybridgroup/gobot"
"github.com/hybridgroup/gobot/platforms/sphero"
)
func main() {
gbot := gobot.NewGobot()
adaptor := sphero.NewSpheroAdaptor("sphero", "/dev/tty.Sphero-RRY-AMP-SPP") // ポートを自分の環境にあわせる
driver := sphero.NewSpheroDriver(adaptor, "sphero")
work := func() {
gobot.Every(3*time.Second, func() {
driver.Roll(30, uint16(gobot.Rand(360)))
})
}
robot := gobot.NewRobot("sphero",
[]gobot.Connection{adaptor},
[]gobot.Device{driver},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
집행하다.$ go run sphero.go
2015/06/23 04:18:44 Initializing Robot sphero ...
2015/06/23 04:18:44 Initializing connections...
2015/06/23 04:18:44 Initializing connection sphero ...
2015/06/23 04:18:44 Initializing devices...
2015/06/23 04:18:44 Initializing device sphero ...
2015/06/23 04:18:44 Starting Robot sphero ...
2015/06/23 04:18:44 Starting connections...
2015/06/23 04:18:44 Starting connection sphero on port /dev/tty.Sphero-RRY-AMP-SPP...
2015/06/23 04:18:47 Starting devices...
2015/06/23 04:18:47 Starting device sphero...
2015/06/23 04:18:47 Starting work...
나는 이런 느낌으로 sphero가 또르르 움직인다는 것을 표현하고 싶다.LED 색상 변경
sphero.go
sphero.go
/*省略*/
work := func() {
gobot.Every(3*time.Second, func() {
r := uint8(gobot.Rand(255))
g := uint8(gobot.Rand(255))
b := uint8(gobot.Rand(255))
driver.SetRGB(r,g,b)
fmt.Println(r,g,b)
})
}
/*省略*/
총결산
더 많은 일을 하고 싶었지만 졸려서 포기했어요.
Cylon.Gobot은 js보다 sphero에 설치하는 방법이 더 많을 수 있습니다.
더 만져봐.
Reference
이 문제에 관하여(Go 언어로 Sphero를 제어해서 해봤어요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/n0bisuke/items/10aff44c92e752402bea텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)