本文整理汇总了Golang中github.com/hybridgroup/gobot/platforms/intel-iot/edison.NewEdisonAdaptor函数的典型用法代码示例。如果您正苦于以下问题:Golang NewEdisonAdaptor函数的具体用法?Golang NewEdisonAdaptor怎么用?Golang NewEdisonAdaptor使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了NewEdisonAdaptor函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: main
func main() {
gbot := gobot.NewGobot()
board := edison.NewEdisonAdaptor("edison")
button = gpio.NewGroveButtonDriver(board, "button", "2")
blue = gpio.NewGroveLedDriver(board, "blue", "3")
green = gpio.NewGroveLedDriver(board, "green", "4")
work := func() {
Reset()
gobot.On(button.Event(gpio.Push), func(data interface{}) {
TurnOff()
fmt.Println("On!")
blue.On()
})
gobot.On(button.Event(gpio.Release), func(data interface{}) {
Reset()
})
}
robot := gobot.NewRobot("airlock",
[]gobot.Connection{board},
[]gobot.Device{button, blue, green},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
示例2: main
func main() {
gbot := gobot.NewGobot()
e := edison.NewEdisonAdaptor("edison")
button := gpio.NewGroveButtonDriver(e, "button", "2")
work := func() {
gobot.On(button.Event(gpio.Push), func(data interface{}) {
fmt.Println("On!")
})
gobot.On(button.Event(gpio.Release), func(data interface{}) {
fmt.Println("Off!")
})
}
robot := gobot.NewRobot("bot",
[]gobot.Connection{e},
[]gobot.Device{button},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
示例3: main
func main() {
gbot := gobot.NewGobot()
edisonAdaptor := edison.NewEdisonAdaptor("edison")
blinkm := i2c.NewBlinkMDriver(edisonAdaptor, "blinkm")
sensor := gpio.NewAnalogSensorDriver(edisonAdaptor, "sensor", "2")
work := func() {
gobot.On(sensor.Event("data"), func(data interface{}) {
brightness := uint8(
gobot.ToScale(gobot.FromScale(float64(data.(int)), 0, 4096), 0, 255),
)
fmt.Println("sensor", data)
fmt.Println("brightness", brightness)
blinkm.Rgb(0, brightness, 0)
})
}
robot := gobot.NewRobot("sensorBot",
[]gobot.Connection{edisonAdaptor},
[]gobot.Device{blinkm, sensor},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
示例4: main
func main() {
gbot := gobot.NewGobot()
e := edison.NewEdisonAdaptor("edison")
sensor := gpio.NewAnalogSensorDriver(e, "sensor", "0")
led := gpio.NewLedDriver(e, "led", "3")
work := func() {
sensor.On(gpio.Data, func(data interface{}) {
brightness := uint8(
gobot.ToScale(gobot.FromScale(float64(data.(int)), 0, 4096), 0, 255),
)
fmt.Println("sensor", data)
fmt.Println("brightness", brightness)
led.Brightness(brightness)
})
}
robot := gobot.NewRobot("sensorBot",
[]gobot.Connection{e},
[]gobot.Device{sensor, led},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
示例5: main
func main() {
gbot := gobot.NewGobot()
adaptor := sphero.NewSpheroAdaptor("Sphero", "/dev/rfcomm0")
board := edison.NewEdisonAdaptor("edison")
spheroDriver := sphero.NewSpheroDriver(adaptor, "sphero")
sensorAccel := i2c.NewGroveAccelerometerDriver(board, "accel")
work := func() {
gobot.Every(time.Millisecond*20, func() {
if x, y, z, err := sensorAccel.XYZ(); err == nil {
degree := math.Sin(y/x) * 360
spheroDriver.Roll(uint8(100+z), uint16(degree))
}
})
}
robot := gobot.NewRobot("sphero",
[]gobot.Connection{adaptor, board},
[]gobot.Device{sensorAccel, spheroDriver},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
示例6: main
func main() {
gbot := gobot.NewGobot()
board := edison.NewEdisonAdaptor("edison")
accel := i2c.NewGroveAccelerometerDriver(board, "accel")
work := func() {
gobot.Every(500*time.Millisecond, func() {
if x, y, z, err := accel.XYZ(); err == nil {
fmt.Println(x, y, z)
fmt.Println(accel.Acceleration(x, y, z))
} else {
fmt.Println(err)
}
})
}
robot := gobot.NewRobot("accelBot",
[]gobot.Connection{board},
[]gobot.Device{accel},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
示例7: main
func main() {
flag.Parse()
config, err := config.Configuration(*configFilePath)
if err != nil {
panic(err)
}
logging.SetLogLevel(config.LogLevel)
gbot := gobot.NewGobot()
broker := broker.NewMQTTBroker("edison processor", config.BrokerUrl)
err = broker.Connect()
if err != nil {
panic(err)
}
logging.Log.Info("Successfully connected to broker")
adapter := edison.NewEdisonAdaptor("edison")
// adapter := testutils.NewMockAdapter("mockAdapter")
service := sensors.Initialize(gbot, adapter, broker)
for pin, stype := range config.Sensors {
switch stype {
case "touch":
service.NewTouchSensor(pin)
case "sound":
service.NewSoundSensor(pin)
}
}
logging.Log.Info("Starting gobot bot...")
gbot.Start()
}
示例8: main
func main() {
gbot := gobot.NewGobot()
e := edison.NewEdisonAdaptor("edison")
touch := gpio.NewGroveTouchDriver(e, "touch", "2")
work := func() {
gobot.On(touch.Event(gpio.Push), func(data interface{}) {
fmt.Println("On!")
})
gobot.On(touch.Event(gpio.Release), func(data interface{}) {
fmt.Println("Off!")
})
}
robot := gobot.NewRobot("blinkBot",
[]gobot.Connection{e},
[]gobot.Device{touch},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
示例9: main
func main() {
gbot := gobot.NewGobot()
e := edison.NewEdisonAdaptor("edison")
button := gpio.NewButtonDriver(e, "myButton", "2")
led := gpio.NewLedDriver(e, "myLed", "4")
work := func() {
gobot.On(button.Event("push"), func(data interface{}) {
led.On()
})
gobot.On(button.Event("release"), func(data interface{}) {
led.Off()
})
}
robot := gobot.NewRobot("buttonBot",
[]gobot.Connection{e},
[]gobot.Device{led, button},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
示例10: main
func main() {
gbot := gobot.NewGobot()
e := edison.NewEdisonAdaptor("edison")
blinkm := i2c.NewBlinkMDriver(e, "blinkm")
work := func() {
gobot.Every(3*time.Second, func() {
r := byte(gobot.Rand(255))
g := byte(gobot.Rand(255))
b := byte(gobot.Rand(255))
blinkm.Rgb(r, g, b)
color, _ := blinkm.Color()
fmt.Println("color", color)
})
}
robot := gobot.NewRobot("blinkmBot",
[]gobot.Connection{e},
[]gobot.Device{blinkm},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
示例11: main
func main() {
gbot := gobot.NewGobot()
board := edison.NewEdisonAdaptor("edison")
screen := i2c.NewGroveLcdDriver(board, "screen")
work := func() {
screen.Write("hello")
screen.SetRGB(255, 0, 0)
gobot.After(5*time.Second, func() {
screen.Clear()
screen.Home()
screen.SetRGB(0, 255, 0)
screen.Write("goodbye")
})
screen.Home()
<-time.After(1 * time.Second)
screen.SetRGB(0, 0, 255)
}
robot := gobot.NewRobot("screenBot",
[]gobot.Connection{board},
[]gobot.Device{screen},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
示例12: main
func main() {
gbot := gobot.NewGobot()
e := edison.NewEdisonAdaptor("edison")
led := gpio.NewRgbLedDriver(e, "led", "3", "5", "6")
work := func() {
gobot.Every(1*time.Second, func() {
r := uint8(gobot.Rand(255))
g := uint8(gobot.Rand(255))
b := uint8(gobot.Rand(255))
led.SetRGB(r, g, b)
})
}
robot := gobot.NewRobot("rgbBot",
[]gobot.Connection{e},
[]gobot.Device{led},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
示例13: main
func main() {
gbot := gobot.NewGobot()
e := edison.NewEdisonAdaptor("edison")
led := gpio.NewLedDriver(e, "led", "3")
work := func() {
brightness := uint8(0)
fadeAmount := uint8(15)
gobot.Every(100*time.Millisecond, func() {
led.Brightness(brightness)
brightness = brightness + fadeAmount
if brightness == 0 || brightness == 255 {
fadeAmount = -fadeAmount
}
})
}
robot := gobot.NewRobot("pwmBot",
[]gobot.Connection{e},
[]gobot.Device{led},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
示例14: main
func main() {
gbot := gobot.NewGobot()
a := api.NewAPI(gbot)
a.Start()
// digital
board := edison.NewEdisonAdaptor("edison")
button = gpio.NewGroveButtonDriver(board, "button", "2")
blue = gpio.NewGroveLedDriver(board, "blue", "3")
green = gpio.NewGroveLedDriver(board, "green", "4")
red = gpio.NewGroveLedDriver(board, "red", "5")
buzzer = gpio.NewGroveBuzzerDriver(board, "buzzer", "7")
touch = gpio.NewGroveTouchDriver(board, "touch", "8")
// analog
rotary = gpio.NewGroveRotaryDriver(board, "rotary", "0")
sensor = gpio.NewGroveTemperatureSensorDriver(board, "sensor", "1")
sound = gpio.NewGroveSoundSensorDriver(board, "sound", "2")
work := func() {
Reset()
gobot.On(button.Event(gpio.Push), func(data interface{}) {
TurnOff()
fmt.Println("On!")
blue.On()
})
gobot.On(button.Event(gpio.Release), func(data interface{}) {
Reset()
})
gobot.On(touch.Event(gpio.Push), func(data interface{}) {
Doorbell()
})
gobot.On(rotary.Event("data"), func(data interface{}) {
fmt.Println("rotary", data)
})
gobot.On(sound.Event("data"), func(data interface{}) {
DetectSound(data.(int))
})
gobot.Every(1*time.Second, func() {
CheckFireAlarm()
})
}
robot := gobot.NewRobot("airlock",
[]gobot.Connection{board},
[]gobot.Device{button, blue, green, red, buzzer, touch, rotary, sensor, sound},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}
示例15: main
func main() {
gbot := gobot.NewGobot()
e := edison.NewEdisonAdaptor("edison")
button := gpio.NewButtonDriver(e, "myButton", "5")
led := gpio.NewLedDriver(e, "myLed", "13")
work := func() {
button.On(gpio.ButtonPush, func(data interface{}) {
led.On()
})
button.On(gpio.ButtonRelease, func(data interface{}) {
led.Off()
})
}
robot := gobot.NewRobot("buttonBot",
[]gobot.Connection{e},
[]gobot.Device{led, button},
work,
)
gbot.AddRobot(robot)
gbot.Start()
}