http.createServer(function(req, res){
     var parts = req.url.split("/"),
     operator = parseInt(parts[1],10);
     
     if (operator == 0) {
         console.log("Izključevanje LED");
         board.digitalWrite(13, board.LOW);
     }
     if (operator == 1) {
         console.log("Vključevanje LED");
         board.digitalWrite(13, board.HIGH);
     }
     
     if (operator == 2) {
         console.log("Izključevanje LED");
         board.digitalWrite(8, board.LOW);
     }
     
     if (operator == 3) {
         console.log("Vključevanje LED");
         board.digitalWrite(8, board.HIGH);
     }                
     
     res.writeHead(200, {"Content-Type": "text/plain"});
     res.write("Za test vpišite kot naslov: \nhttp://192.168.254.128:8080/1\nin pritisnite ENTER \n");
     res.end("Vrednost vnešenega operatorja je: " + operator);
 }).listen(8080, "192.168.254.128");
export const setPayloadForPin = (
  maybeConnection: string | Connection | Board,
  payload: ?Object,
) => {
  if (payload == null) {
    return;
  }

  const connection =
    typeof maybeConnection === 'string'
      ? findConnectionForRootId(maybeConnection)
      : maybeConnection;

  if (!connection) {
    return;
  }

  // backwards compatible with Stack
  const board: Board = (connection.board || connection: any);
  const {MODES} = board;

  const normalizedPin = analogToDigital(payload.pin);
  board.pinMode(normalizedPin, MODES[payload.mode]);
  const communicationType = FIRMATA_COMMUNICATION_METHOD[MODES[payload.mode]];
  if (typeof payload.value !== 'undefined') {
    /* $FlowFixMe computed property call */
    board[`${communicationType}Write`](payload.pin, +payload.value);
  }

  if (payload.onRead) {
    setReader((connection: any), communicationType, payload);
  }
};
var board = new firmata.Board("/dev/ttyACM0", function() {
    console.log("Priključitev na Arduino");
    console.log("Omogočimo pin 8");
    board.pinMode(8, board.MODES.OUTPUT);
    console.log("Omogočimo pin 13");
    board.pinMode(13, board.MODES.OUTPUT);
});
window.addEventListener('message', function(event) {
  var data = event.data;
  var command = data && data.command;
  var payload = data && data.payload;
  if(command === 'runScript' && payload) {

    connectedSerial = new SerialPort(window.parent);
    log('connecting...', 'info');

    window.io = io = new firmata.Board(connectedSerial, {repl: false, skipHandshake: false, samplingInterval: 300});
    io.once('ready', function(ir){
      console.log('io ready');
      log('connect success');
      io.name = 'Firmata';
      io.isReady = true;

      try {
        var f = new Function(payload);
        f();
        log('script run ok');
      } catch(e){
        log(e, 'danger');
      }
    });
    io.on('error', function(err){
      log(e, 'danger');
    });
  }
});
示例#5
0
文件: blink.js 项目: corpr8/solarweb
var board = new firmata.Board("/dev/ttyATH0", function(err) {
  if (err) {
    console.log(err);
    board.reset();
    return;
  }

  console.log('connected...');
  console.log('board.firmware: ', board.firmware);

  board.pinMode(ledPin, board.MODES.OUTPUT);

  var url = require('url');
  var http = require('http');

  http.createServer(function(request, response) {
    var params = url.parse(request.url, true).query;

    if (params.value.toLowerCase() == 'high') {
      board.digitalWrite(ledPin, board.HIGH);
    } else {
      board.digitalWrite(ledPin, board.LOW);
    }

    response.writeHead(200);
    response.write("The value written was: " + params.value);
    response.end();
  }.bind(this)).listen(8080);

  console.log('Listening on port 8080 ...');
});
示例#6
0
 function digital_write (pin, value) {
     if (value) {
         board.digitalWrite(pin, board.HIGH);
     } else {
         board.digitalWrite(pin, board.LOW);                
     }
 }
var board = new firmata.Board("/dev/ttyACM0", function() {
    console.log("Priključitev na Arduino");
    board.pinMode(0, board.MODES.ANALOG); // analogni pin 0
    board.pinMode(1, board.MODES.ANALOG); // analogni pin 1
    board.pinMode(2, board.MODES.OUTPUT); // smer DC motorja
    board.pinMode(3, board.MODES.PWM); // PWM motorja oz. hitrost
});
示例#8
0
module.exports = net.connect(options, function() { //'connect' listener
    console.log('connected to server!')

    let socketClient = this

    //we can use the socketClient instead of a serial port as our transport
    let io = new firmata.Board(socketClient)

    io.once('ready', function(){
        console.log('io ready')
        io.isReady = true

        let board = new five.Board({io: io, repl: true})

        board.on('ready', function(){
            //Full Johnny-Five support here
            console.log('five ready')

            var led = new five.Led(6)

            setInterval(function () {
                blinkLed(led, 2000)
            }, 4000)


        })
    })

})
示例#9
0
    var board = new firmata.Board('/dev/ttyATH0', function(err) {

        if (err) {

            console.error('There was an error connecting to the sensor board.');
            return;

        }
        else {

            var sensorPin = 3;
            board.pinMode(sensorPin, board.MODES.INPUT);

            board.digitalRead(sensorPin, function(data) {

                var state = '';

                if (data === 0) state = 'UP';
                else state = 'DOWN';

                thisModule.setState(state, data);

            });

        }

    });
 socket.on("ukazArduinu", function(stevilkaUkaza){
     if (stevilkaUkaza == "1") {
         board.digitalWrite(13, board.HIGH); // na pinu 13 zapišemo 1
     }
     else if (stevilkaUkaza == 0) {
         board.digitalWrite(13, board.LOW); // na pinu 13 zapišemo 0
     }
 });
示例#11
0
var board = new firmata.Board('/dev/tty.XadowBLESlave-XadowBLES', function(err) {
  console.log('connected!');
  console.log('Firmware: ' + board.firmware.name + '-' + board.firmware.version.major + '.' + board.firmware.version.minor);

  board.pinMode(6,0x01);
  board.analogWrite(6,255);
  // board.digitalWrite(17,Board.HIGH)
});
示例#12
0
 function set_mode (pin, mode) {
     if (mode == "in") {
         board.pinMode(pin, board.MODES.INPUT);
     } else if (mode == "out") {
         board.pinMode(pin, board.MODES.OUTPUT);
     } else {
         console.log("unknown mode");
     }
 }
function kontrolniAlgoritem () {
    odstopanje.pop(); // odrežemo eno vrednost iz polja
    odstopanje.unshift(želenaVrednost - dejanskaVrednost);
    pwm += Kp*(odstopanje[0] - odstopanje[1]) + Ki*odstopanje[0] + Kd*(odstopanje[0] - 2*odstopanje[1] + odstopanje[2]);
    if(Math.abs(pwm) > 70) {pwm = 70};
    if (pwm > 0) {board.digitalWrite(2,0)}; // določimo smer če je > 0
    if (pwm < 0) {board.digitalWrite(2,1)}; // določimo smer če je < 0
    board.analogWrite(3, Math.abs(pwm));
    console.log("PWM = " + pwm);
};
示例#14
0
	setInterval(function() {
		if (ledOn) {
			console.log('ON');
			board.digitalWrite(13, board.HIGH);
		} else {
			console.log('OFF');
			board.digitalWrite(13, board.LOW);
		}
		ledOn = !ledOn;
	}, 500);
示例#15
0
function init(){

	board.pinMode(13,board.MODES.OUTPUT);
	board.digitalWrite(13,0);

	board.pinMode(9,board.MODES.SERVO);
	board.servoWrite(9,0);
	
	server();

}
示例#16
0
 function endEmergency() {
     board.digitalWrite(LED, board.LOW);
     board.digitalWrite(LEDPIN, board.LOW);
     board.digitalWrite(BUZZER, board.LOW);
     exec('curl http://192.168.1.81:9999/sendLocalEvent?eventName=ev1',
         function (error, stdout, stderr) {
             if (error !== null) {
                 console.log('exec error: ' + error);
             }
         });
 }
示例#17
0
 board.digitalRead(BUTTON, _.debounce(function (e) {
     if (e == 1) {
         console.log('manual fire triggered');
         board.digitalWrite(LED, board.HIGH);
         board.digitalWrite(LEDPIN, board.HIGH);
         board.digitalWrite(BUZZER, board.HIGH);
         postEmergency();
         setTimeout(function(){
             endEmergency();
         },15000);
     }
 }, 2000, true));
示例#18
0
文件: blink.js 项目: corpr8/solarweb
  http.createServer(function(request, response) {
    var params = url.parse(request.url, true).query;

    if (params.value.toLowerCase() == 'high') {
      board.digitalWrite(ledPin, board.HIGH);
    } else {
      board.digitalWrite(ledPin, board.LOW);
    }

    response.writeHead(200);
    response.write("The value written was: " + params.value);
    response.end();
  }.bind(this)).listen(8080);
示例#19
0
            setInterval(function() {

                if (ledOn) {
                    console.log("+");
                    board.digitalWrite(ledPin, board.HIGH);
                } else {
                    console.log("-");
                    board.digitalWrite(ledPin, board.LOW);
                }

                ledOn = !ledOn;

            }, 500);
示例#20
0
var board = new Board('/dev/ttyACM0', function(err) {
    if(log) console.log('Arduino connected');
    

    board.pinMode(lumPin, board.MODES.PWM);
    board.pinMode(temPin, board.MODES.PWM);
    board.pinMode(testPin, board.MODES.PWM)

    //setInterval(function(){
      if(log) console.log("Setting lum " + lum + " and temp " + temp);
      board.analogWrite(lumPin, lum);
      board.analogWrite(temPin, temp);
    //},100)
});
示例#21
0
function servoMot(flag){

	var degrees = 10;
	var incrementer = 10;

	if(flag === 'init'){

		time = setInterval(function(){
			if(degrees >= 180 || degrees === 0){
				incrementer *= -1;
			}
			degrees += incrementer;
			board.servoWrite(9,degrees);
		},500);

	}

	if(flag === 'stop'){

		clearInterval(time);
		board.servoWrite(9,degrees);

	}

}
示例#22
0
		time = setInterval(function(){
			if(degrees >= 180 || degrees === 0){
				incrementer *= -1;
			}
			degrees += incrementer;
			board.servoWrite(9,degrees);
		},500);
示例#23
0
var board = new firmata.Board(modem, function(err){
  if (!err) {
    console.log('connected: ' + modem);
  } else {
    console.log('problem with: ' + modem);
    console.log(err);
    process.exit()
  }

  // configure ports
  board.pinMode(5, board.MODES.INPUT);

  // prepare server
  var server = http.createServer(function (req, res) {
    router(req, res, finalhandler(req, res));
  }).listen(port);

  // add websockets
  var wss = new WebSocketServer({server: server});
  wss.on('connection', function connection(ws) {
    console.log('websocket connected');
    ws.on('message', function incoming(message) {
      console.log('received: %s', message);
    });

    board.digitalRead(5, function(val, err) {
      if (val == 1) {
        console.log(val);
        ws.send('{"state": ' + val + '}');
      }
    });
  });
});
function emitSocket(type, value){
	if (clientIDs.length > 0) {

		board.digitalWrite(dataLed, board.HIGH);

		setTimeout(function(){
			board.digitalWrite(dataLed, board.LOW);
		}, 50);

		switch(type){
			case 'horizontalPosition':
				//io.sockets.emit('horizontalPosition', value);
				gameClient.emit('horizontalPosition', value);
			break;

			case 'jump':
				//io.sockets.emit('jump', value);
				gameClient.emit('jump', value);
			break;

			case 'weight':
				gameClient.emit('weight', value);
			break;
		}
	}
}
示例#25
0
var board = new firmata.Board('/dev/tty.XadowBLESlave-XadowBLES', function(err) {
  console.log('connected!');
  console.log('Firmware: ' + board.firmware.name + '-' + board.firmware.version.major + '.' + board.firmware.version.minor);

  board.on('string', function(string){
    console.log('receiving string: "%s"', string);
  });

  var sendString = function(string) {
    console.log('sending string: ' + string);
    var bytes = new Buffer(string + '\0', 'utf8');
    var data = [];
    data.push(START_SYSEX);
    data.push(STRING_DATA);
    for (var i = 0, length = bytes.length; i < length; i++) {
        data.push(bytes[i] & 0x7F);
        data.push((bytes[i] >> 7) & 0x7F);
    }
    data.push(END_SYSEX);
    board.sp.write(data);
  }

  setInterval(function() {
    var string = 'HackPHX';
    sendString(string);
  }, 1000);


});
示例#26
0
        function (next) {

            var ledPin = 13;
            var board = new firmata.Board("/dev/tty.usbmodem1d1141", function(err) {

                if (err) {
                    console.log(err);
                    return;
                }
                console.log("connected");

                console.log("Firmware: " + board.firmware.name + "-" + board.firmware.version.major + "." + board.firmware.version.minor);

                //var ledOn = true;

                board.pinMode(ledPin, board.MODES.OUTPUT);
                next(null);

            });

            theApp.board = board;
            theApp.ledPin = 13;




        },
示例#27
0
文件: repl.js 项目: frentrop/rgbled
var board = new firmata.Board(serialport, function (error) {
    if (error) {
        console.log(error);
        return;
    }

    console.log('Connected to ' + serialport);
    console.log('Firmware: ' +
        board.firmware.name + '-' +
        board.firmware.version.major + '.' +
        board.firmware.version.minor
        );

    var context = repl.start("RGB>").context;
//    context.sses = sendSysExString;
    context.sendPixel = sendPixel;
    context.rainbow = rainbow;
    context.sendPackedPixel = sendPackedPixel;

    board.on('string', function(data) {
        var message = '';

        for (var index = 0, length = data.length; index < length; index += 2) {
            message += String.fromCharCode(
                ((data.charCodeAt(index+1) & 0x7F) << 7) +
                (data.charCodeAt(index)   & 0x7F)
                );
        }

        if (messageHandler != null) messageHandler(message);
    });
});
示例#28
0
var board = new firmata.Board('/dev/ttyATH0', function(err) {

	if (err) {
		console.log(err);
		return;
	}

	board.pinMode(magnetPin, board.MODES.INPUT);

	board.digitalRead(magnetPin, function(value) {
		console.log(value);
	});


	console.log('ready');

});
示例#29
0
var board = new firmata.Board('/dev/cu.usbmodem1411', function (err) {
	var bite;
	board.pinMode(pin, board.MODES.OUTPUT);
	function loop () {
		board.digitalWrite([pin, (bite ^= 0x01)]);
	}
	setInterval(loop, 500);
});
示例#30
0
文件: app.js 项目: waattt/obsess-node
				setTimeout(function(){
					setMotor(70, 0);
					board.digitalRead(botSensor,function(value){
						if(value == 1){
							setMotor(0, 0);
						}
					});
				},delay);