- Tarvittavat materiaalit
- Node.js: n asentaminen Raspberry Pi: lle
- LED-valon vilkkuminen Node.js: n avulla
- Node.js LED -merkkivalo ja selitys
- Piirikaavio LED-valon vilkkumisesta Node.js: n avulla
- Vadelma Pi
Aiemmissa Raspberry Pi -oppaissa olemme käyttäneet monia erilaisia ohjelmointikieliä ja -ohjelmistoja hallitsemaan Raspberry Pi -ohjelmaa, mukaan lukien Python, upotettu C, pullo jne. Tehokkaan Raspberry Pi -levyn horisontin laajentamiseksi käytämme tänään erittäin suosittua JavaScript-pohjaista ympäristöä (Node.js) hallita Raspberry Pi GPIO: ita sekä paikallisesti että maailmanlaajuisesti asettamalla se verkkopalvelimeksi. Alun perin Node.js kehitettiin Google Chromea varten, mutta myöhemmin Google avasi sen.
Tässä opetusohjelmassa ohjaamme Raspberry Pi: hen kytkettyä LEDiä kahdella tavalla
- Ensin kirjoitamme yksinkertaisesti JavaScript-koodin Node.js: n avulla, jotta LED vilkkuu
- Toisessa menetelmässä luomme HTML-sivun kahdella painikkeella LEDin kytkemiseksi päälle ja pois. Tätä HTML-verkkosivua isännöidään vadelma pi: llä ja se voidaan avata millä tahansa verkkoselaimella. Joten tässä Vadelma Pi toimii verkkopalvelimena
Tarvittavat materiaalit
- Raspberry pi -levy, johon on asennettu Raspbian
- LED
Tässä opetusohjelmassa käytän ulkoista näyttöä HDMI-kaapelilla yhteyden muodostamiseen Raspberry Pi: hen. Jos sinulla ei ole näyttöä, voit käyttää SSH-asiakasta (Putty) tai VNC-palvelinta muodostaaksesi yhteyden Raspberry pi -laitteeseen kannettavan tietokoneen tai tietokoneen avulla. Jos havaitset vaikeuksia, noudata tuijottamista Vadelma Pi -oppaan kanssa.
Node.js: n asentaminen Raspberry Pi: lle
Asennamme Node.js: n piirilevylle seuraavien komentojen avulla.
Vaihe 1: - Tarkista ensin vadelma pi -levyn varsiversio tällä komennolla.
uname -m
Minun tapauksessani versio on 7.
Vaihe 2: - Lataa asennusohjelma kopioimalla tämä linkki päätelaitteeseen. Älä unohda muuttaa versiota alla olevassa linkissä.
wget https://nodejs.org/dist/v4.6.1/node-v4.6.1-linux-armvl.tar.gz
Vaihe 3: - Pura tiedostot alla olevalla komennolla
tar -xvf-solmu-v4.6.1-linux-armvl.tar.gz
Vaihe 4: - Suorita lopuksi nämä komennot lisätäksesi tärkeät tiedostot myös paikallisiin hakemistoihin.
cd-solmu-v4.3.1-linux-armvl sudo cp -R * / usr / local /
Node.js on nyt asennettu Raspberry Pi -laitteeseesi. Tarkista solmun versio vahvistusta varten tällä komennolla.
solmu –versio
Ennen kuin aloitamme Node.js-palvelimen luomisen, näemme ensin, kuinka kirjoitetaan komentosarja vilkkumaan LED-valolla node.js: n (npm onoff -paketti) avulla.
LED-valon vilkkuminen Node.js: n avulla
Jos haluat hallita Raspberry Pi: n GPIO: ta Node.js: n avulla, käytämme onoff-moduulia.
Käytämme NPM pakettienhallintaohjelma asentaa ONOFF Moduuli alla komennolla
npm asennus on off
Nyt kirjoitamme käsikirjoituksen ledin vilkkumiselle. Avaa nanoeditori ja anna nimi tiedostolle komennolla
nano blink_led.js
Jos olet aloittelija Node.js: ssä ja sen paketeissa, voit npm: n dokumentaation ymmärtää komentosarjaa paremmin.
Node.js LED -merkkivalo ja selitys
Ilmoita ensin ledin, viiveen ja GPIO: n muuttujat. Yhdistän LEDin Raspberry Pi GPIO 4: llä.
var Gpio = vaatia ('onoff'). var LED = uusi Gpio (4, 'out'); var blinkInterval = setInterval (blinkLED, 500);
Nyt teemme toiminnon vilkkumisen aloittamiseksi.
toiminto vilkkuu LED () {if (LED.readSync () === 0) {LED.writeSync (1); // aseta lähtö 1 eli kytke led päälle} else {LED.writeSync (0); // aseta lähtö arvoon 0 eli kytke led pois päältä }}
Tee vastaavasti toiminto, joka lopettaa vilkkumisen
function endBlink () {clearInterval (blinkInterval); LED.writeSync (0); LED.unexport (); // Tuo GPIO vapaana resursseihin} setTimeout (endBlink, 10000);
Täydellinen Node.js-koodi vilkkuvalle LEDille annetaan tämän opetusohjelman lopussa. Joten kopioi ja liitä koodi tiedostoon led_blink.js , jonka olemme aiemmin luoneet nano- komennolla, tallenna tiedosto painamalla Ctrl + x, paina sitten Y ja paina Enter.
Suorita komentosarja avaamalla pääte ja kirjoittamalla seuraava komento:
solmu blink_led.js
Näet, että LED vilkkuu 10 sekunnin ajan ja sen jälkeen se lakkaa vilkkumasta. Tarkista koko toiminta tämän opetusohjelman lopussa olevassa videossa.
Piirikaavio LED-valon vilkkumisesta Node.js: n avulla
Vadelma Pi
Tule nyt mielenkiintoiseen osaan, täällä aiomme tehdä oman web-palvelimen, josta voimme hallita Raspberry pi: n GPIO: ta verkkosivun avulla.
Tätä varten meidän on ensin tehtävä HTML-sivu ja kirjoitettava komentosarja back-end-tehtävän suorittamiseksi eli RPi GPIO: n hallitsemiseksi.
Vaihe 1: - Tee hakemisto, joka tallentaa kaikki tiedostot yhteen paikkaan.
mkdir nodejs_palvelin
Vaihe 2: - Sisällä nodejs_server kansio vielä yhden kansion tallentamista HTML-tiedoston.
cd nodejs_server mkdir-näkymät
Vaihe 3: - Jos haluat lisätä kuvia html-sivullesi, sinun tulee tehdä toinen kansion nimeltään julkinen päähakemistossa eli nodejs_server- kansiossa. Tee julkiseen kansioon kuvakansio ja tallenna kaikki kuvat tähän kansioon.
Vaihe 4: - Teemme nyt HTML-sivun. Tätä varten siirry näkemyksiä hakemistoon ja avaa nano tekstieditori tiedostonimi index.ejs
Käsikirjoituksessa ei ole mitään hienoa. Se on vain HTML-tiedosto, joka tekee Päälle ja Pois-painikkeen.
Kopioi liittää alla oleva HTML-koodi nanotekstieditoriin ja tallenna se.
Tervetuloa Nodejs Serveriin
Led-tila: <% = status%>Vaihe 5: - Meidän on nyt kirjoitettava JavaScript-koodi. Käytämme solmun pikakehystä vastaamaan käyttäjän suorittamiin
Voit seurata linkkiä saadaksesi lisätietoja Node Expressistä.
Avaa pääte ja avaa nano- tekstieditori index.js- tiedostonimellä nodejs_server- kansiossa, kopioi ja liitä sitten alla oleva Java-komentosarjakoodi ja tämä tiedosto.
var express = vaatia ('express'); var app = ilmaista (); var polku = vaatia ('polku'); var gpio = vaatia ('rpi-gpio'); gpio.setup (7, gpio.DIR_OUT); app.set ('katseluohjelma', 'ejs'); app.use (express.static (polku.liity (__ dirname, 'public'))); console.log (polku.liity (__ dirname, 'public')); app.get ('/', function (req, res) { res.render ('index', {status: "Paina painiketta"}; }); app.post ('/ led / on', function (req, res) { gpio.write (7, true, function (err) { if (err) heitä virhe; console.log ('Written True to pin'); console.log (path.join (__ dirname, 'public')); return res.render ('hakemisto',{status: "Led on päällä"}); }); }); app.post ('/ led / off', function (req, res) { gpio.write (7, false, function (err) { if (err) heittää virhe; console.log ('Written False to pin'); console.log (polku.liity (__ dirname, 'julkinen')); return res.render ('hakemisto', {tila: "Led on pois päältä"}); }); }); app.listen (3000, function () { console.log ('Palvelin aloitettu portissa : 3000!') })
Vaihe 6: - Nodejs_server- hakemiston sisällä meidän on suoritettava seuraava komento asentaa node.js-kirjastot
npm asentaa
Vaihe 7: - Nyt teidän palvelin on valmis työhön. Käynnistä paikallinen palvelin suorittamalla seuraava komento nodejs_server- hakemistossa
solmu index.js
näet terminaalissa viestin, että palvelimesi käynnistetään määritetyssä portissa.
Vaihe 8: - Avaa nyt selain ja avaa Raspberry Pi URL, jossa on porttinumero eli raspberrypi: 3000
Varmista, että vadelma pi ja kannettava tietokone, jossa avaat selaimen, ovat yhteydessä samaan verkkoon.
Näet seuraavan sivun selaimessa.
Paina nyt LED On -painiketta kytkeäksesi LED: n päälle ja LED Off- painiketta sammuttaaksesi LED: n.