Created
September 17, 2015 15:01
-
-
Save dexterlabora/9d3512730f9c65ce959e to your computer and use it in GitHub Desktop.
IoL - Traffic Signal - LED Sequence
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//trafficsignal.js | |
var five = require("johnny-five"); | |
var board = new five.Board(); | |
//Arduino board connection | |
board.on("ready", function() { | |
// Traffic Signal LEDs | |
var trafficSignalLedRG = new five.Led(49); //Signal Red & Green | |
var trafficSignalLedY = new five.Led(50); //Signal Yellow | |
var trafficSignalLedGR = new five.Led(51); //Signal Green & Red | |
var trafficSignalState = 0; // Initialize Signal State | |
function trafficSignal(){ | |
if (trafficSignalState == 0){ // Red | |
console.log("traffic crossing RG"); | |
trafficSignalLedRG.on(); | |
trafficSignalLedY.off(); | |
trafficSignalLedGR.off(); | |
trafficSignalState = 1; | |
setTimeout(trafficSignal,6000); | |
} else if (trafficSignalState == 1){ // Yellow | |
console.log("traffic crossing Y"); | |
trafficSignalLedRG.off(); | |
trafficSignalLedY.on(); | |
trafficSignalLedGR.off(); | |
trafficSignalState = 2; | |
setTimeout(trafficSignal,2000); | |
} else if (trafficSignalState == 2){ // Green | |
console.log("traffic crossing GR"); | |
trafficSignalLedRG.off(); | |
trafficSignalLedY.off(); | |
trafficSignalLedGR.on(); | |
trafficSignalState = 3; | |
setTimeout(trafficSignal,6000); | |
} else if (trafficSignalState == 3){ // Yellow | |
console.log("traffic crossing Y"); | |
trafficSignalLedRG.off(); | |
trafficSignalLedY.on(); | |
trafficSignalLedGR.off(); | |
trafficSignalState = 0; | |
setTimeout(trafficSignal,2000); | |
} | |
} | |
trafficSignal(); // Start Traffic Signal | |
}); | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment