0

是否有使用 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()
4

1 回答 1

1

在与hybrid小组合作更新setDataStreamingin 之后cylon.js,所有传感器数据现在都可以通过 git https://github.com/hybridgroup/cylon-sphero获得

于 2014-06-19T17:09:51.987 回答