Internet of Things/Node-RED: verschil tussen versies

Uit Lab
Naar navigatie springen Naar zoeken springen
Geen bewerkingssamenvatting
 
(14 tussenliggende versies door dezelfde gebruiker niet weergegeven)
Regel 1: Regel 1:
== Node-RED ==
== Node-RED ==


Node-RED [http://nodered.org] is een omgeving om grafisch een [[../node.js]] server-configuratie te maken. Dit is in het bijzonder bedoeld Je kunt dit gebruiken voor IoT-toepassingen, maar ook voor meer klassieke websites en web-apps.
Node-RED [http://nodered.org] is een omgeving om grafisch een [[../node.js]] server-configuratie te maken. Je kunt dit gebruiken voor IoT-toepassingen, maar ook voor meer klassieke websites en web-apps.


Met behulp van de standaard-verzameling nodes kun je al eenvoudige toepassingen maken. Een toepassing bestaan uit één of meer "flows": knopen die via gerichte verbindingen verbonden zijn.
Met behulp van de standaard-verzameling nodes kun je al eenvoudige toepassingen maken. Een toepassing bestaan uit één of meer "flows": een netwerk van knopen en verbindingen, op één pagina (tab). Je kunt meerdere flows definiëren, op verschillende tabs.


In het bijzonder kun je je toepassing koppelen aan allerlei andere interfaces. Zo kun je bijvoorbeeld MQTT-boodschappen afhandelen, en deze in een database opslaan. In een andere flow kun je een http GET-request afhandelen, met een pagina met deze MQTT-gegevens als respons.
In het bijzonder kun je je toepassing koppelen aan allerlei andere interfaces. Zo kun je bijvoorbeeld MQTT-boodschappen afhandelen, en deze in een database opslaan. In een andere flow kun je een http GET-request afhandelen, met een pagina met deze MQTT-gegevens als respons.
* [[/NodeRed-installatie]]
* [[/NodeRed-configuratie]]


== Het installeren van Node-RED in Cloud9 (c9.io) ==
== Het installeren van Node-RED in Cloud9 (c9.io) ==
Regel 11: Regel 14:
# maak een Node.js workspace aan (via het dashboard: Create new workspace)
# maak een Node.js workspace aan (via het dashboard: Create new workspace)
# installeer volgens de standaard-methode hierin Node-RED (in een "bash" terminal-venster, als shell-commando)
# installeer volgens de standaard-methode hierin Node-RED (in een "bash" terminal-venster, als shell-commando)
## <code>sudo npm install -g node-red</code>
## <code>sudo npm install -g --unsafe-perm node-red</code>
# kopieer de bijgaande file naar <code>settings.js</code>
## <code>wget https://gist.githubusercontent.com/eelcodijkstra/9c0fb0afba8151060853/raw/50b85e72387ff5b3ab25b7fefd4f198bc073f6d3/settings.js</code>
## je kunt dit bestand ook vinden op GitHub: [https://gist.github.com/eelcodijkstra/9c0fb0afba8151060853 settings.js]. Via de Raw button krijg je het "kale"bestand in de browser.
# start Node-RED op met het commando:  
# start Node-RED op met het commando:  
## <code>node-red -s settings.js</code>
## <code>node-red</code>
# je vindt het gebruikersinterface nu via de URL: <code> workspacename-username-c9.io</code>
# je vindt het gebruikersinterface nu via de URL: <code>workspacename-username-c9.io</code>
## dit kun je ook vinden via het menu bovenin, links van "Run": Preview -> Preview running application
## dit kun je ook vinden via het menu bovenin, links van "Run": Preview -> Preview running application
## dit is een publieke URL: je kunt dit via de browser op elke computer gebruiken
## dit is een publieke URL: je kunt dit via de browser op elke computer gebruiken
## (ook anderen kunnen dit gebruiken; met alle voor- en nadelen vandien)
## (ook anderen kunnen dit gebruiken; met alle voor- en nadelen vandien)
# je kunt de server stoppen door middel van ^C (control-C) in hetzelfde terminal-venster.
# je stopt de server door middel van ^C (control-C) in hetzelfde terminal-venster.
=== Uitleg ===
 
Cloud9 biedt je een virtuele machine voor elke workspace. In deze virtuele machine kun je een webserver draaien. Al die verschillende virtuele machines moeten een klein aantal IP-adressen delen. Hiervoor bepaalt Cloud9 het IP-adres en het PORT-nummer voor elke virtuele webserver, respectievelijk <code>process.env.IP</code> en <code>process.env.PORT</code>. Deze gegevens moeten ingevuld worden in de node-red instellingen in het bestand <code>settings.js</code>. Dit is al voor je gedaan in het bestand dat je hierboven gekopieerd hebt.
: Als je node-red op je eigen computer gebruikt, dan kun je de default-instellingen gebruiken: <code>127.0.0.1</code> (localhost), met port: 1880.


==== Voor gevorderden ====


Je kunt node-red starten en stoppen via een terminal (shell). Een alternatief is om een eigen "runner" aan te maken. Dan kun je de "Run" knop gebruiken.


== Tutorial: first flow ==
== Tutorial: first flow ==

Huidige versie van 26 sep 2017 om 13:44

Node-RED

Node-RED [1] is een omgeving om grafisch een Internet of Things/node.js server-configuratie te maken. Je kunt dit gebruiken voor IoT-toepassingen, maar ook voor meer klassieke websites en web-apps.

Met behulp van de standaard-verzameling nodes kun je al eenvoudige toepassingen maken. Een toepassing bestaan uit één of meer "flows": een netwerk van knopen en verbindingen, op één pagina (tab). Je kunt meerdere flows definiëren, op verschillende tabs.

In het bijzonder kun je je toepassing koppelen aan allerlei andere interfaces. Zo kun je bijvoorbeeld MQTT-boodschappen afhandelen, en deze in een database opslaan. In een andere flow kun je een http GET-request afhandelen, met een pagina met deze MQTT-gegevens als respons.

Het installeren van Node-RED in Cloud9 (c9.io)

  1. maak een Node.js workspace aan (via het dashboard: Create new workspace)
  2. installeer volgens de standaard-methode hierin Node-RED (in een "bash" terminal-venster, als shell-commando)
    1. sudo npm install -g --unsafe-perm node-red
  3. start Node-RED op met het commando:
    1. node-red
  4. je vindt het gebruikersinterface nu via de URL: workspacename-username-c9.io
    1. dit kun je ook vinden via het menu bovenin, links van "Run": Preview -> Preview running application
    2. dit is een publieke URL: je kunt dit via de browser op elke computer gebruiken
    3. (ook anderen kunnen dit gebruiken; met alle voor- en nadelen vandien)
  5. je stopt de server door middel van ^C (control-C) in hetzelfde terminal-venster.


Tutorial: first flow

Je kunt een tutorial voor node-red vinden op: http://nodered.org/docs/getting-started/first-flow.html

Een eenvoudige chat-toepassing

Koppelen aan MQTT

Koppelen aan Twitter (enz.)