gobot
1.什么是goBot?
Gobot 是一个用 Go 编程语言编写的机器人、物理计算和物联网 (IoT) 框架。
Gobot 提供驱动程序和适配器,用于控制来自低级 Arduino 和 Raspberry Pi 的各种物理设备,以及无人机、玩具和其他本身具有 API 的完整设备。
“机器人”是主要的软件抽象,它使得为支持的设备构建有趣的高级功能变得容易。
用 Gobot 编写的机器人(Go 程序)可以在与连接设备通信的主机上运行,也可以直接在单板 Linux 计算机上运行,或者在两者之间的任何地方运行。
Gobot 还可以提供一个面向外部的 API,允许其他程序控制共享网络上从单个设备到整个机器人组,使用 JSON-over-HTTP API 实现。
Gobot 的标准化和抽象化方法使得编写可在多个硬件平台上运行的程序变得容易,几乎不需要修改。
2.环境
Installing Gobot
go get -d -u gobot.io/x/gobot/...
3.编写第一个机器人
一旦安装了 Gobot 包,您就可以开始编写自己的代码了。我们要创建的第一个程序是事物的“Hello, World”,它是一个每秒闪烁一次 LED 的程序。
demo.go 代码,需要硬件支持
######################
package main
import (
"time"
"gobot.io/x/gobot"
"gobot.io/x/gobot/drivers/gpio"
"gobot.io/x/gobot/platforms/firmata"
)
func main() {
firmataAdaptor :=firmata.NewAdaptor("/dev/ttyACM0")
led :=gpio.NewLedDriver(firmataAdaptor, "13")
work :=func() {
gobot.Every(1*time.Second, func() {
led.Toggle()
})
}
robot :=gobot.NewRobot("bot",
[]gobot.Connection{firmataAdaptor},
[]gobot.Device{led},
work,
)
robot.Start()
}
提示:
go run demo.go
warning: GOPATH set to GOROOT (D:\Users\dev\sdk\go1.15.14) has no effect
# github.com/gobuffalo/uuid
D:\Users\dev\sdk\go1.15.14\pkg\mod\github.com\gobuffalo\uuid@v2.0.5+incompatible\generator.go:32:13: undefined: uuid.NewV2
D:\Users\dev\sdk\go1.15.14\pkg\mod\github.com\gobuffalo\uuid@v2.0.5+incompatible\uuid.go:41:7: undefined: uuid.V2
网友评论