2014-06-12 31 views
0

有沒有一種方法(Cylon.js)用Cylon Sphero獲取加速度計和陀螺儀數據?我想使用Sphero作爲控制器,並且locator事件不會返回有用的信息。這是我目前做的事情得到locator數據(咖啡腳本)Cylon.js和Sphero

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() 

回答