IoT Workshop: Lab 1 - digitale uitgang (4 / 6 stap)

Stap 4: Schrijf de Code

Aangezien we zijn met behulp van Node.js en Johnny-vijf voor dit lab kunnen we profiteren van de afhankelijkheid beheermogelijkheden Node.js waarmee. We moeten laten onze applicatie weet dat het een afhankelijkheid van het Johnny-Five-kader heeft, zodat wanneer de toepassing wordt voorbereid voor uitvoering, het voor ons de vereiste afhankelijkheden kunt halen. In Node.js wordt dit gedaan met een package.json -bestand. Dit bestand bevat enkele fundamentele meta-gegevens over de toepassing, met inbegrip van eventuele afhankelijkheden op pakketten die kunnen worden opgehaald met behulp van het knooppunt pakket Manager (NPM).

Met behulp van uw favoriete/voorkeur tekst/code-editor (ik liever Visual Studio-Code), maak een bestand in uw map van de Workshop met de naam package.json en voeg het volgende toe:

 { "name": "labs", "repository": { "type": "git", "url": "" }, "version": "0.1.0", "private": "true", "dependencies": { "johnny-five": "^0.8.0" } } 

Met het package.json kunt bestand dat u hebt gemaakt NPM pull-down de nodige modules van het knooppunt. Open een terminal-venster (Mac OS X) of Node.js troepenleiding prompt (Windows) en voer de volgende commando's (Vervang c:\Development\IoTLabs met het pad dat naar de map van uw Workshop leidt):

 cd C:\Development\IoTLabs npm install 

Vervolgens maakt u de toepassingscode zodat de LED-turn in- en uitschakelen.

Maak een ander bestand in dezelfde map met de naam lab001.js.

Het eerste ding dat u moet doen is u met werkt objecten in de toepassing definiëren. De drie dingen die belangrijk zijn een Johnny-Five kader object, een object te vertegenwoordigen de Arduino, en de uitgang-pins de LED zal worden aangesloten op.

 var five = require("johnny-five"); var board = new five.Board(); var LEDPIN = 13; 

Nu dat de objecten zijn gemaakt, kunt u het vlees van de toepassing. Johnny-Five biedt een bestuur initialisatie constructie die terugstuurt wanneer de Raad van bestuur is op en geïnitialiseerd (opgestart). In de callback is functie waar de toepassingscode wordt uitgevoerd.

Johnny-Five geven een verzameling objecten met daarin de board, de pinnen op het bord, en diverse soorten sensoren en apparaten die kunnen worden aangesloten op de Raad van bestuur. Voor dit lab zult u code schrijven die is vrij trouw aan het Arduino C programming basismodel (we krijgen in wat Johnny-Five ons later biedt). Dit zal u helpen begrijpen sommige van de basisconcepten voor hoe een Arduino Yun.

In de volgende code maakt u een callback-functie die wordt aangeroepen wanneer de Arduino is geïnitialiseerd en klaar (dit is een vijf Johnny concept). U zal digitale pin 13 (de LEDPIN variabele hierboven) instellen als een uitgang pins (versus een invoer pin), wat betekent dat de toepassing naar verwachting spanning afgeven vanaf de pin in tegenstelling tot het lezen van de spanning die binnenkomen bij de pin. Vervolgens maakt u een lus die loopt eenmaal per seconde en binnenkant dat u een lus naar de pin uitschrijven zal lage of hoge spanning. Aangezien pin 13 een digital pin is, de enige opties zijn 0 en 1 - in de wereld van de Arduino die is laag en hoog. Als u 0 (of laag) stuurt naar de pin, die gelijk is aan het uitschakelen (verzenden geen spanning). Als u stuurt 1 (of hoog) aan de pin die gelijk is aan (sturen vol spanning).

 board.on("ready", function(){ // Set pin 13 to OUTPUT mode this.pinMode(LEDPIN, five.Pin.OUTPUT); // Create a loop to "flash/blink/strobe" an led var val = 0; this.loop( 1000, function() { this.digitalWrite(LEDPIN, (val = val ? 0 : 1)); }); }); 

Johnny-Five heeft eigenlijk een objectmodel voor een LED en we kunnen ook gewoon doen de volgende, maar ik wilde u om te zien hoe de digitalWrite()-functie werkt voordat het weg te abstraheren.

 board.on("ready", function() { var led = new five.Led(LEDPIN); led.blink(1000); }); 

Gerelateerde Artikelen

IoT Workshop: Lab 2 - het lezen van een analoog signaal

IoT Workshop: Lab 2 - het lezen van een analoog signaal

In dit lab zal twee weerstanden - een statische weerstand en een variabele weerstand - maakt u een spanning divider waarmee u effectief begrijpen de lichtintensiteit gedetecteerd door een fotoweerstand - in wezen een lichtmeter. In de vorige les hebt
IoT Workshop: Lab 3 - controlerende ingang en uitgang

IoT Workshop: Lab 3 - controlerende ingang en uitgang

In dit lab u zal combineren de ideeën die u geleerd in de vorige labs (hier en hier) om te maken een veranderen van de helderheid op basis van het niveau van LED licht beschikbaar - in wezen een nachtlampje. U zal analogRead() vermogen met analogWrit
IoT Workshop: Lab 4 - verzenden van gegevens naar de wolk

IoT Workshop: Lab 4 - verzenden van gegevens naar de wolk

In dit lab zal u bouwen van een eenvoudige ambient licht detectie app (vergelijkbaar met Lab 2) en verzendt de gegevens die naar de wolk wordt verzameld. U zal het gebruik van stikstof om gegevens te verzenden naar een cloud-gateway en zult u kunnen
IoT Workshop: Prep werk

IoT Workshop: Prep werk

De labs in deze serie bouwen op elkaar om u te prototype uw eigen apparaten van Internet of Things (IoT). In dit lab die zal u Node.js en een open source framework voor interactie met hardware genaamd Johnny-Five, die werkt als een baseline controle
My Workshop/ Lab (2012)

My Workshop/ Lab (2012)

Here are some pictures of my lab where I do most of my electronic projects. Ik label hen ook met info. Het merendeel van metaal, kunststof en houtbewerking zijn gedaan buiten ons huis, in een aparte schuur. Ik heb gepost deze gids, aangezien het zou
REST gebaseerde Web Services toe te voegen aan IoT apparaat voor het toezicht op IO

REST gebaseerde Web Services toe te voegen aan IoT apparaat voor het toezicht op IO

Dit project is om een eenvoudige RESTful Web service bibliotheek voor IoT-apparaten. De bibliotheek is geschreven met C taalcode en WIZwiki-W7500ECO platform Raad van WIZnet. Met het, gebruikers kunnen een RESTful Web service implementeren op IoT app
IoT - een Raspberry Pi Robot beheren via internet met HTML en shell scripts alleen

IoT - een Raspberry Pi Robot beheren via internet met HTML en shell scripts alleen

(Als je deze Instructables, vergeet dan niet te stemmen (boven: rechts hoek vlag). het is concurreren op INTERNET of THINGS en automatisering wedstrijden. Heel hartelijk bedankt! ;-)In dit instructable, zullen we het maken van een volledig gecontrole
Intel Edison lawaai Alarm (Intel IoT)

Intel Edison lawaai Alarm (Intel IoT)

IntroductieIk heb een inbraakalarm en brandalarm, maar geen manier om te weten als ofwel zijn klinkende tenzij ik in het huis ben. In plaats van hen vervangen door 'slimme' alternatieven, ik ben van plan om te bouwen van een apparaat om te luisteren
DADD - vaders tegen dronken rijden met behulp van bout IoT

DADD - vaders tegen dronken rijden met behulp van bout IoT

Dit Instructable ziet u hoe te bouwen van een auto-veiligheidssysteem dat weerhoudt mensen van rijden onder invloed en onmiddellijk een Uber vraagt door hen uw nauwkeurige GPS-locatie. Dit project was een onderdeel van een workshop o.l.v. bout IoT bi
IoT 101 Project: Stream temperatuur van uw Raspberry Pi

IoT 101 Project: Stream temperatuur van uw Raspberry Pi

"Hello World!"-Dit is waarschijnlijk de output van het eerste programma dat u ooit heeft geschreven bij het leren hoe de code. Opzetten van een apparaat te streamen temperatuurinformatie is in snel tempo de feitelijke Internet of Things (IoT) 'H
TrekMate (Intel IoT)

TrekMate (Intel IoT)

Ons project "Trekmate" focust op automatische veiligheid van voertuigen en houdt ook toezicht op de geschiktheid van een individu. Ons project bestaat uit verschillende sensoren zoals hartslag sensor, versnellingsmeter die voortdurend gecontrole
Digitale Potentiometers Arduino Shield

Digitale Potentiometers Arduino Shield

Het Digitale Potentiometers Arduino Shield is getest op compatibiliteit met Arduino Duemilanove, Diecimilaen Arduino UNO R1/R2Dit schild is gebaseerd op het apparaat AD5206 van Analog Devices.Op het Internet vinden we enkele zeer fundamentele toepass
IoT slimme apparaat met SSR multiplug maken

IoT slimme apparaat met SSR multiplug maken

Jouwe is echt geen onbekende voor controle van AC (alternatieve huidige, niet Air Condition) met het gebruik van de microcontroller gebaseerd systeem. In de eerdere berichten op de blog waren er meerdere iteraties van arduino sous vide; een SSR (Soli
Cloud gezondheidsmonitoring (Intel IoT)

Cloud gezondheidsmonitoring (Intel IoT)

Dit project werd tentoongesteld op Intel IoT Hackthon 2015, Pune, INDIA.Dus whats het idee en de reden achter het Project:Project wil medische bijstand te verlenen aan de plattelandsbevolking met behulp van elektronische hardware en wolk platform zod