是否有使用 Cylon Sphero 获取加速度计和陀螺仪数据的方法 (Cylon.js)?我想将 Sphero 用作控制器,并且该locator
事件不返回有用的信息。这就是我目前正在做的获取locator
数据(咖啡脚本)
Cylon = require 'cylon'
connectionDefaults =
name : 'sphero'
adaptor : 'sphero'
port : '/dev/tty.Sphero-WYW-AMP-SPP'
deviceDefaults =
name : 'sphero'
driver : 'sphero'
spheroDoWork = ( robot )->
SPHERO = robot.sphero
DATA = {}
sampleRateHz = 420
intN = 20
intM = 1
packetCount = 20
mask = 21
mask2 = packetCount * 2
velMin = 50
distance = 0
timeBetweenData = intN / sampleRateHz
handleConnect =->
console.log '== SPHERO READY...'
SPHERO.setDataStreaming( intN, intM, mask, packetCount, mask2 )
SPHERO.detectLocator()
SPHERO.stop()
handleLocator =( data )->
raw =
yDist : data[0]
xDist : data[1]
accel : data[2]
yVel : data[3]
xVel : data[4]
DATA.prev = DATA.curr
DATA.curr = raw
console.log '=== PREV DATA', DATA.prev
console.log '=== CURR DATA', DATA.curr
SPHERO.on 'connect', handleConnect
SPHERO.on 'locator', handleLocator
Cylon.robot
connection : connectionDefaults
device : deviceDefaults
work : spheroDoWork
.start()