- Edellytykset
- Vaaditut komponentit
- Node-RED: n asentaminen Raspberry Pi: lle
- Node-RED: n käynnistäminen Vadelma Pi: ssä
- Node-RED-käyttöliittymän ymmärtäminen
- Kaaviot
- Virtauksen luominen solmu-RED: ssä
- Painikkeen / kytkimen lisääminen Node-RED-käyttöliittymässä Raspberry Pi: n kanssa
Oletko koskaan miettinyt, onko olemassa tapaa tehdä yksinkertaisia IoT-ratkaisujen prototyyppejä ilman, että sinun tarvitsee viettää päiviä koodien kirjoittamiseen, tai rakentaa käytännön edistyneitä projekteja koodaamatta. Kyllä, tämä on mahdollista Node-Red-alustalla. IBM: n kehittämä Node-RED on avoimen lähdekoodin ohjelmointityökalu, joka yhdistää laitteistot, sovellusliittymät ja verkkopalvelut uudella ja mielenkiintoisella tavalla. Se tarjoaa selainpohjaisen muokkausohjelman, joka helpottaa ' virtausten' yhdistämistä käyttämällä paletin laajaa joukkoa solmuja, jotka voidaan ottaa käyttöön ajonaikaansa yhdellä napsautuksella.
Node-RED on tehokas työkalu esineiden internet (IoT) -sovellusten rakentamiseen tavoitteena yksinkertaistaa ohjelmointikomponenttia.
Se käyttää visuaalista ohjelmointia, jonka avulla voit yhdistää koodilohkot, jotka tunnetaan solmuina, tehtävän suorittamiseksi. Tämän päivän opetusohjelmassa tutkitaan, kuinka voit ottaa käyttöön yksinkertaisia projekteja vadelma-piille Node-RED: n avulla. Raspberry Pi solmu-punainen opetusohjelma kattaa;
- Node-RED: n asentaminen Raspberry Pi: lle.
- Johdanto Node-RED-käyttöliittymään
- Kuinka asettaa Node-RED-virrat
- Kuinka hallita Raspberry Pi GPIO -nastoja Node-RED: llä
- Kuinka käyttää solmu-PUNAISIA tuloja, lähtöjä ja jos muuta, kuten päätöksentekoa kytkimillä
Edellytykset
Tämä opetusohjelma perustuu Raspbian stretch -käyttöjärjestelmään, ja oletan, että olet perehtynyt Raspberry Pi: n asentamiseen sen kanssa ja osaat SSH: n Pi: ään käyttämällä pääteohjelmistoa, kuten kittiä. Jos sinulla on ongelmia tämän kanssa, tällä sivustolla on tonnia vadelma Pi -oppaita, jotka voivat auttaa.
Opetuksen loppuunsaattamiseksi suosittelen, että käytät vadelmapiiriin liitettyä näyttöä tai käytät VNC Viewer -ohjelmistoa. Jos sinulla ei ole näyttöä ja aloitat uudella Pi: llä, voit lukea tämän Headless Raspberry Pi -asetuksen jatkaaksesi tämän opetusohjelman kanssa. Vaikka Node-Red toimii verkkoselaimella ja siihen pääsee tietokoneellasi, johon Pi on kytketty Pi: n IP-osoitteen kautta, uskon, että VNC / monitori-kokemus antaa sinulle paremman ripaus asioita.
Demona Node-Redin toiminnan osoittamiseksi käytämme Node-PUNAISTA ohjelmoimaan Vadelma Pi: n ohjaamaan sen GPIO: hon kytkettyä LEDiä ja myöhemmin muokkaamaan ohjelmaa, jotta LEDiä voidaan ohjata kosketuspainikkeella, joka on kytketty Pi: n GPIO.
Vaaditut komponentit
Seuraavat komponentit vaaditaan tämän projektin rakentamiseen;
- Raspberry Pi 3 SD-kortilla, joka on esiladattu Raspbian Stretchillä
- 100 ohmin vastus (1)
- LED (1)
- Leipälauta (1)
- Uros-naaras-hyppyjohdot
- Kosketuspainike (1)
Node-RED: n asentaminen Raspberry Pi: lle
Vaikka Node-Red on esiasennettu Raspbian Stretch -käyttöjärjestelmään, meidän on päivitettävä se, ennen kuin voimme nauttia sen uusimmista ominaisuuksista. Node-Red- testamentin päivittäminen
- Päivitä nykyinen käyttäjä LTS 8.x- tai 10.x-versioon Node.js ja uusimpaan Node-RED-versioon
- Siirrä kaikki olemassa olevat yleisesti asennetut solmut käyttäjien ~ /.node-red-tilaan, jotta niitä voidaan hallita palettien hallinnan kautta, se EI päivitä käyttäjän asentamia olemassa olevia solmuja. Käyttäjän on tehtävä tämä manuaalisesti (katso alla).
- Asenna (uudelleen) ylimääräiset solmut, jotka on esiasennettu täydelliseen Raspbian Pi -kuvaan.
Node-Redin päivitysprosessi on kuitenkin samanlainen kuin uuden asentaminen, joten tämän opetusohjelman vuoksi käsittelemme sitä vain uutena asennuksena, jotta muita käyttöjärjestelmäversioita käyttävät ihmiset voivat seurata.
Noudata seuraavia vaiheita asentaaksesi / päivittää Node-RED Raspberry Pi -laitteellesi.
Aloitamme päivittämällä ja päivittämällä pi, jotta voimme varmistaa, että kaikki sen sisältö on ajan tasalla ja välttää yhteensopivuusongelmia. Tee tämä avaamalla pääte tai ssh: n kautta ja suorita;
Sudo apt-get -päivitys
jonka jälkeen
sudo apt-get -päivitys
Kun tämä on tehty, suorita alla oleva bash-komentosarja terminaalissa;
bash <(curl -sL
Bash skripti tekee seuraavat asiat
- Kysy, haluatko (uudelleen) asentaa ylimääräiset Pi-solmut
- Tallenna luettelo kaikista globaalisti asennetuista solmu- punaisista solmuista, jotka löytyvät hakemistosta / usr / lib / node_modules
- apt-get poista nykyinen Node-Red
- Poista kaikki solmupunaiset binäärit kansioista / usr / bin ja / usr / local / bin
- Poista kaikki solmupunaiset moduulit tiedostoista / usr / lib / node_modules ja / usr / local / lib / node_modules
- Tunnista, onko Node.js asennettu Node.js-paketista tai Debianista
- Jos se ei ole v8 tai uudempi - poista tarvittaessa ja asenna uusin v8 tai v10 LTS (ei käytä apt: tä).
- Poista koodin aiemmat versiot puhdistamalla npm-välimuisti ja.node-gyp-välimuisti
- Asenna Node-RED uusin versio
- Asenna uudelleen käyttäjätiliin kaikki solmut, jotka oli aiemmin asennettu maailmanlaajuisesti
- Asenna tarvittaessa ylimääräiset Pi-solmut uudelleen
- Rakenna kaikki solmut uudelleen - kääntää kaikki binääritiedostot vastaamaan uusinta Node.js-versiota
- Lisää solmut-punainen-alku, solmu-punainen-pysäytys ja solmu-punainen-loki -komennot kansioon / usr / bin
- Lisää valikon pikakuvake ja kuvake
- Lisää järjestelmän komentosarja ja aseta käyttäjä
- Jos Pi: llä lisätään suorittimen lämpötila -> IoT-esimerkki
Yllä oleva bash-komentosarja suorittaa monia komentoja sudo-muodossa ja poistaa olemassa olevat Node.js-tiedostot ja ytimen Node-RED-hakemistot. Voit tarkistaa tämän GitHub-sivun komentosarjan sisällön ennen sen suorittamista varmistaaksesi, että se ei vaikuta Pi: ssä jo olevaan projektiin.
Kun asennus on valmis, sinun pitäisi nyt nähdä Solmu-punainen-kuvake valikon ohjelmointisovellusten luettelossa.
Node-RED: n käynnistäminen Vadelma Pi: ssä
Node-Red voidaan käynnistää vadelma pi: n työpöydän valikko-osion kautta, päätelaitteen kautta tai ssh: n kautta.
Käynnistä vadelma pi: n työpöydällä napsauttamalla Vadelma-kuvaketta, viemällä hiiri kohtaan Ohjelmointi napsauttamalla Node-RED (Valikko> Ohjelmointi> NodeRed) käynnistääksesi sen.
Se voidaan käynnistää myös ssh: stä tai terminaalista suorittamalla;
solmu-punainen-alku
Sinun pitäisi nähdä alla olevan kaltainen ikkuna, jossa näkyy solmun punainen käynnistys työpöydällä.
Kun näet tämän, siirry valikkoon-> Internet ja käynnistä kromi-selain. Vaikka Raspberry pi ei tarvitse Internetiä Node-Redin käyttämiseen, se käyttää selainta käyttöliittymänä.
Kun kromi on käynnistetty, kirjoita osoiteriville localhost: 1880 ja sen jälkeen Enter-näppäin. 1880 on vadelmapiirin portti, jolla Solmu-Punainen on esiasetettu kommunikoimaan. Tämän pitäisi näyttää Node-Red-käyttöliittymä alla olevan kuvan mukaisesti.
Node-RED-käyttöliittymän ymmärtäminen
Node-Red rajapinta käsittää, että virtaus paneelin solmut paletti, debug konsoli ja info konsoli kuten käy ilmi yllä olevassa kuvassa.
Virtaus paneeli on, jos solmut on liitetty yhteen luoda ohjelma, joka solmu-Red kutsutaan virtausta, kun taas solmu paletti käsittää esineitä, jotka edustavat laitteita, protokollat ja ohjelmistot piirteitä liittyy laitteisiin. Se sisältää protokollat, kuten MQTT IoT: lle, ja GPIO-lähtö- ja syöttötilat levyille, kuten vadelma pi. Info konsoli antaa tietoa korostettu / valitut kohteet kun Virheenkorjauskonsolitoimii kuten Arduino Serial -näyttö ja voi antaa palautetta virtauksen ollessa käynnissä. Käyttöönottopainiketta käytetään kulun lataamiseen kohdelaitteistoon. Valikkopainike sisältää erilaisia lataustyyppejä, joiden avulla saat parhaan hyödyn projektistasi. Node-Redin ollessa käynnissä voimme nyt jatkaa demoprojektin rakentamista.
Kaaviot
Kuten johdannossa mainittiin, tämän päivän demoprojektimme tulee olemaan Raspberry Pi: n GPIO: n hallinta Node-RED-virtauksella. GPIO-tilan vaihtelun osoittamiseksi yhdistämme LED-valon GPIO: han siten, että kun kyseinen GPIO-nasta kytketään päälle, LED syttyy ja päinvastoin.
Liitä LED Raspberry PI -laitteeseen alla olevien kaavioiden mukaisesti.
Rakennan saman myös laitteistoni käyttämällä leipälautaa, LEDiä, vastusta ja joitain liitäntäjohtoja. Laitteistoni kokoonpano näyttää tältä tältä, kun yhteydet on muodostettu.
Tämä projekti voidaan helposti muuntaa kotiautomaatioprojektiksi, vain korvaamalla LED releellä ja kaikilla vaihtovirtalaitteilla, opi tekemään se käymällä läpi erilaisia kotiautomaatioprojekteja.
Virtauksen luominen solmu-RED: ssä
Kun LED on kytketty, voimme kehittää virtausta. NodeRedissä olevia ohjelmia kutsutaan virtauksiksi aivan kuten Arduino IDE kutsuu niitä luonnoksiksi. Virrat luodaan solmujen yhdistelmällä. Voit luoda useita vuoja, jotka kaikki voivat toimia samanaikaisesti, mutta tätä opetusohjelmaa varten luomme yhden virran LEDin kytkemiseksi päälle / pois.
Aloita vierittämällä Solmut-paletin alareunaan, näet vadelma pi-solmut -osan loppua kohti kahdella solmulla, joiden nimi on rpigpio. Näitä solmuja käytetään viestintään vadelma pi: n GPIO: n kanssa. Yksi solmuista on syötettävää, kun taas toinen on lähtöä eroteltu vadelma pi -logon sijainnin perusteella. Sillä tulopisteen, logo tulee ennen tekstiä, kun taas ulostulo solmu logo tulee tekstin jälkeen, kuten on esitetty alla olevassa kuvassa.
Tässä opetusohjelmassa käytämme lähtösolmua, vedä se käyttöliittymän virtausosaan. Tämä vaihe on samanlainen kuin julistamalla tietty Arduino- nastasi Outputiksi käyttämällä pinMode () -komentoa. Kaksoisnapsauta Output-solmua ja avautuu ponnahdusikkuna alla olevan kuvan mukaisesti, jotta voit muokata solmun ominaisuuksia.
Nastan alle ominaisuus osa, valitse GPIO17 (tappi 11). Määritä sitten type-ominaisuudeksi “ digital Output ” ja valitse ” Initialize pin state?”. valintaruutu, jolloin ” alustan nastataso ” -vaihtoehto jää matalaksi (0). Anna solmulle haluamasi nimi ja napsauta Valmis-painiketta.
Solmun nimen tulisi muuttua automaattisesti ominaisuusasetuksessa kirjoittamallesi nimelle. Esimerkiksi nimitin sen LEDiksi, joten myös solmun nimi muuttuu LED: ksi alla olevan kuvan mukaisesti.
LEDin kytkemiseksi päälle / pois päältä meidän on käytettävä tuloa, jotain toiminnan ohjaamiseksi. Vaikka voimme käyttää painonappia, haluan käyttää tätä esitelläksesi Node-RED-ominaisuuden, joka sallii viestien injektoinnin virtauksiin. Tätä ominaisuutta kutsutaan injektiosolmuksi. Käytämme kahta pistosolmua. Yksi on kytkeä LED päälle, kun taas toinen on sammuttaa se.
Siirry solmupalettiin ja vedä injektoitu solmu virtaukseen. Se on paletin ensimmäinen solmu, jossa on nuoli, injektiosolmu on korostettu alla olevassa kuvassa.
Kaksoisnapsauta sitä muokataksesi sen ominaisuuksia. Muuta tietotyypiksi merkkijono napsauttamalla hyötykuorman edessä olevaa avattavaa valikkoa ja kirjoita 1 hyötykuormaruutuun. Hyötykuormaruudun arvo on se, mikä syötetään virtaukseen, kun solmua painetaan. Aseta solmun nimeksi ”ON”. Tallenna painamalla ”Valmis” -painiketta.
Toista yllä oleva toiselle solmulle asettamalla hyötykuorman arvoksi "0" ja sen nimeksi "pois" alla olevan kuvan mukaisesti.
Alle ominaisuuksien funktio, toista avattavaa voidaan automatisoida injektio niin painikkeita painetaan välein. Tätä voidaan käyttää luomaan vilkkuva vaikutus. Liitä solmut toisiinsa alla olevan kuvan mukaisesti vetämällä harmaata pistettä yhdestä solmuista toiseen virtauksen luomiseksi.
Kun tämä on tehty, olemme nyt suorittaneet ensimmäisen solmupunaisen virtauksemme.
Seuraava askel on meidän käyttöön virtaus vadelma pi. Napsauta punaista käyttöönottopainiketta. Sinun pitäisi nähdä "onnistuneesti käyttöön" -salama näytön yläosassa alla olevan kuvan mukaisesti.
Aktivoi kukin solmu napsauttamalla injektiosolmujen takana olevaa harmaata painiketta.
Napsauttamalla “on” injektiosolmua, sinun pitäisi nähdä, että ruiskutettu “on” on näytetty ja LED syttyy. LED-valon pitäisi sammua, kun “off” -injektiosolmua napsautetaan.
Se siitä. Tämän kokoonpanon täydellinen toiminta löytyy tämän sivun alaosassa olevasta videosta.
Painikkeen / kytkimen lisääminen Node-RED-käyttöliittymässä Raspberry Pi: n kanssa
Selitämme, kuinka syöttöelementti liitetään / lisätään virtaukseen, viemme yllä olevan virran eteenpäin lisäämällä painikkeen korvatakseen injektoitavat solmut.
Yhdistä painike vadelma pi: hen siten, että painonapin toinen jalka on kytketty maahan ja toinen on kytketty vadelma pi: n GPIO-nastaan 4 (nasta 11), kuten alla olevissa kaavioissa on esitetty.
Kun tämä on tehty, palaa takaisin Solmu-punaiseen -ohjelmaan ja poista aiemmin käyttämäsi kaksi pistosolmua napsauttamalla solmuja ja painamalla näppäimistön Poista-näppäintä tai kaksoisnapsauttamalla solmuja ja painamalla ponnahdusikkunassa Poista. Kun tämä on tehty, vieritä solmupaletti vadelma pi -kohtaan ja valitse syöttösolmu. Se on vadelma pi -kuvake vasemmalla, ennen solmun nimeä.
Vedä solmu virtaukseen ja kaksoisnapsauta sitä muokataksesi ominaisuuksia. Aseta tappi GPIO 4: een (nasta 11) ja aseta vastuksen edessä oleva pudotusvalikko vetämään. Tämä "vetää" GPIO 4: n HIGH-tasolle. Napsauta Valmis-painiketta, kun olet määrittänyt ominaisuudet.
Jotta voimme tehdä loogisia päätöksiä kytkintä painettaessa eikä vain oikosulkea GPIO4: ää maahan, käytämme kytkinsolmua. Etsi sitä solmupaletista, toiminto-osiosta ja vedä työnkulkuun.
Kytkinsolmun avulla voit tehdä päätöksiä "if" -lausekkeiden tapaan. Se voidaan asettaa siten, että sillä on erilaiset lähdöt tuloarvosta riippuen. Tätä opetusohjelmaa varten määritämme sen kahdella lähtöpolulla, siten että kun msg.payload-ominaisuus on yhtä kuin 1 (kytkintä ei paineta), sen tulisi seurata ensimmäistä polkua ja seurata toista polkua, jos muita syötteitä tulossa havaitaan muu kuin 1 (kytkintä painetaan). Polut lisätään “+ lisää” -painikkeella. Kaksoisnapsauta solmua ja määritä yllä kuvatulla tavalla. Napsauta valmis, kun olet valmis.
Heti kun painat Valmis-painiketta, sinun pitäisi nähdä, että kaksi polkua heijastuvat kytkinsolmun näkymiin, koska sen ulostulossa on nyt kaksi risteystä.
Seuraavaksi meidän on tuotava sisään "muutos" -solmu. Muutos solmu voidaan asettaa tilan LED tuloksen perusteella argumentti solmun.
Käytämme kahta muutossolmua. Ensimmäisen hyötykuormaksi asetetaan 0, kuten alla olevassa kuvassa näkyy, ja toisen hyötykuormaksi yksi. Napsauta Valmis molempien ominaisuuksien muokkaamisen jälkeen.
Selittääksesi paremmin, muistako käytimme vetovastusta? Kun nappia ei ole painettu, tällöin ulostulo on KORKEA (1), mikä tarkoittaa, että jos siirrämme sen kytkinsolmun läpi, LED palaa, koska sen ei pitäisi olla niin, me aseta ”muutos” -solmulla LOW (0). Toista “muutos” -solmua käytetään arvon asettamiseen sellaiseksi, että kun jokin muu kuin GPIO-nastan 4 HIGH-tila havaitaan, sen pitäisi kytkeä LED-valo päälle, koska tämä tarkoittaa, että painonappia on painettu. Yhdistä muutossolmut ja muut solmut yhteen alla olevan kuvan mukaisesti.
Kun tämä on tehty, olemme nyt valmiita ottamaan projektin käyttöön. Käy yhteyden läpi varmistaaksesi, että kaikki on niin kuin pitäisi, napsauta sitten käyttöönottopainiketta. Kuten tavallista, jos onnistut, sinun pitäisi nähdä käyttöönoton onnistunut ponnahdusikkuna ja pystyä nyt hallitsemaan lediä kytkimellä.
Vaikka Node-Red tekee rakenteen prototyyppien tekemisestä helppoa ja nopeaa huolimatta koodista, se ei välttämättä sovi parhaiten, etenkin kokeneille kehittäjille, jotka haluavat joustavuutta ja hallintaa ohjelmassa. Siitä huolimatta se on loistava työkalu, jonka avulla prototyyppi rakennetaan muutamassa minuutissa.
Seuraavaan kertaan!