NEWS
Anfänger Beratung für Projekt.
-
und davon habe ich 0 Plan.
-
und davon habe ich 0 Plan. `
Dafür gibt es das Forum -
-
Ah, ok.
Kannt ich auch noch nicht.
Muss ich mir morgen mittag mal anschauen.
Gruß
-
Also,
ich scheitere schon beim hinzufügen des Sensors.
nehmen wir mal den DS18B20:
https://flows.nodered.org/node/node-red … b20-sensor
Ich habe den installiert:
pi@raspberrypi:~ $ npm install node-red-contrib-ds18b20-sensor node-red-contrib-ds18b20-sensor@1.2.6 node_modules/node-red-contrib-ds18b20-sensor └── underscore@1.8.3
Aber er wird nicht in der "Node" liste angezeit.
Neustart habe ich gemacht.
Auch habe ich versucht den in
cd $HOME/.node-red
zu installieren (wie es unter "Adding Nodes" steht)
Aber er taucht einfach nich auf.
Was mache ich falsch?
Gruß
-
Die Anleitung auf node-red.org gilt für die standalone-Version.
Wenn du im Adapter nodes hinzufügen willst, gibst du sie einfach in der Konfiguration im dafür vorgesehenen Feld ein und startest den Adapter neu.
Gruß
Rainer
-
Hi, also du meinst:
-Unter Instanzen auf node-red.0 drücken
-Unter Zusätzliche NPM-Module npm install node-red-contrib-ds18b20-sensor eintragen?
-
Hi, also du meinst:
-Unter Instanzen auf node-red.0 drücken
-Unter Zusätzliche NPM-Module npm install node-red-contrib-ds18b20-sensor eintragen? `
knapp daneben!Nicht den Befehl, sondern nur den Paketnamen, z.B. node-red-contrib-ds18b20-sensor, wenn er denn so heisst.
Gruß
Rainer
-
Ah ok,
hab ihn in der liste.
Jetzt noch kurz den Sensor in Pi einstellen und mal schauen ob er läuft.
Muss ich das "node-red-contrib-ds18b20-sensor" jetzt immer da stehen lassen oder ist und bleibt das Modul dann drin?
Danke und Gruß
-
Immer drin lassen solange du es in Flows verwendest.
Gruß
Rainer
-
Ok, gut.
eine Wichtige Frage habe ich dann noch.
Den Flow startet man mit "Deploy" aber wie halte ich ihn wieder an bei z.B: einer Intervallabfrage?^^
Oder geht das nur indem man die Instanz neu startet?
Gruß
-
deploy ist nur so ähnlich wie installieren.
Damit der flow regelmäßig läuft, musst du inject verwenden und da den Intervall eingeben.
Schau dir vielleicht mal die node-red tutorials an?
-
Naja, da stehen ein paar Basics drin.
Aber allgemein gibt es scheinbar recht wenig Infos zu dem ganzen.
Ich such seit ner Stunde nach einer Möglichkeit den Output vom Sensor auf 2 Stellen zu runden.
Leider habe ich noch nicht Ansatzweise etwas gefunden was da für einen Anfänger verständlich und umsetzbar ist.
-
Naja, da stehen ein paar Basics drin. ` stimmt - nämlich zB wie das mit deploy und inject funktioniert
Wenn dir die "Basics" zu wenig sind, kannst du ja hier alles durchlesen: http://noderedguide.com
Eine Stunde um in google "javascript runden" einzugeben?
-
Ich hab bei Google gesucht.
Toll, findet man 100 verschiedene Formeln die man in den Funktionblock kopiert und keine funktioniert.
Auch steht da nicht wie man den input bezeichnet.
-
zum Runden brauchst du aber keine Formel, oder?
Du solltest am Anfang ein bischen Geduld haben, die Tutorials machen, mit kleinen Programmen anfangen.
Gleich mit einem Sensor loszulegen, wo du noch gar nicht weisst wo vorne und hinten ist, wird schwierig und braucht noch mehr Geduld.
-
Dann halt Befehl statt Formel( oder wie auch immer man das nennt).
Ich würde halt gerne wissen ob ich das ganze überhaupt umsetzen kann ohne Javascript lernen zu müssen.
Weil ich dann auch das ganze in Python umsetzen kann, da findet man 99% der Sachen die man braucht recht schnell und die Sprache ist auch einfacher.
Was mich in iobroker anspricht ist die vis, welche scheinbar recht einfach Schöne GUIs macht.
Zumindest schönere als z.b. Tkinker oder Kivy.
****Bis jetzt funktioniert:
-DS18b20
-DHT22
-Relais
-Sonnenauf/untergang****
<u>Hilfe bräuchte ich im moment bei:</u>
<u>Sensoren:</u>
-BH1750 (noch keine Ahnung wie ich damit umgehen soll)
-HC-SR04 (noch keine Ahnung wie ich damit umgehen soll)
<u>LED Steuerung:</u>
-WS2801 LEDs
Damit komme ich nicht weiter.
ich habe dafür https://www.npmjs.com/package/rpi-ws2801 genommen.
Ich habe es installiert und eingetrage.
var leds = require('rpi-ws2801'); // connecting to Raspberry Pi SPI leds.connect(10); // assign number of WS2801 LEDs // set all colors to yellow console.log("fill all yellow"); // fill(r, g, b) // r, g, b: value as hex (0x00 = 0, 0xFF = 255, 0x7F = 127) leds.fill(0xFF, 255, 0x00); // after 2 seconds set first 6 LEDs to (red, green, blue, red, green, blue) setTimeout(function(){ console.log("red green blue red green blue"); // setRGB(ledIndex, hexColor); // ledIndex: 0 = LED1, 1 = LED2, … // hexColor: '#FF0000' = red, '#00FF00' = green, ... leds.setRGB(0, '#FF0000'); // set LED1 to red leds.setRGB(1, '#00FF00'); // set LED2 to green leds.setRGB(2, '#0000FF'); // set LED3 to blue // setColor(ledIndex, color); // ledIndex: 0 = LED1, 1 = LED2, … // color: array[red, green, blue] = [255,0,0] = red, [0,255,0] = green leds.setColor(3, [255,0,0]); // set LED4 to red leds.setColor(4, [0,255,0]); // set LED5 to green leds.setColor(5, [0,0,255]); // set LED6 to blue // send all set colors to SPI via update(); leds.update(); }, 2000)
Dabei bekomme ich aber auch immer nur eine Fehlermeldung raus:
16.1.2017, 16:52:57ae1fe2ff.f22cdfunction : (error)ReferenceError: require is not defined (line 1, col 12)
-
Hi
Ich hatte von javascript auch keinen plan, bis ich mit iobroker angefangen habe.
Ich habe zuerst in nodered die Logik zusammen gebaut.
Mit FUNCTION kann man mit ein paar Zeilen javascript deine Zahlen runden. Das ist ganz easy, nimm google und "runden javascript".
unter nodered im Forum gibts auch ein paar Beispiele, oder auf nodered.org. Die kannst du per copy and import+paste als Beispiele
in dein Nodered Editor reinladen und dann gucken wie das andere gemacht haben.
Solltest du diese LED Stripes nehmen wollen (WS2812 oder wie die hiessen), dazu gibt es ein paat python scripte mit denen du die steuern kannst.
Das python script kannst du in Nodered mit EXEC wieder ausführen.
So weit war ich dann irgendwann auch mit meinem Projekt, und habe es dann einfach in javascript zusammen geschustert. Das ganing dann viel schneller
Aber der Lernerfolg mit Nodered hält einem bei der Stange
Zum iobroker: Die Möglichkeiten mit der Visu von iobroker sind schon echt gut! Open Source seitig habe ich nichts einfacheres gefunden und die Leute hier
helfen einem auch wo Sie können (dafür mal von mir hier einen dicken "Daumen Hoch!")
Jetzt weiß ich nicht wie weit du in der Elektronik bewandert bist, aber bzgl. der Heizung solltest du dir überlegen ob du da nicht eine Schutzschaltung mit verwenden willst.
Wenn der Raspi die Heizung über den Port einschaltet und dann abstürtzt, wird es wohl etwas warm für die Fischchen (Schlangen, Schildkröten, Krokodile oder so)
Mit einem Atmel tiny plus Miniprogramm z.B. kannst du einen Watchdog zwischen schalten. Bleiben die regelmässigen Rücksetzsignale vom Script weg (über einen zweiten GPIO), schaltet die Heizung aus.
LG
Uwe
-
Naja,
ich habe aber kein interesse daran großartig Javascript zu lernen.
Ich kann es weder Beruflich noch Privat gebrauchen.
Da bleibe ich dann lieber bei Python und schau wie ich die GUI da hinbekomme.
Das geht schneller, dazu gibt es wesentlich mehr Anfängerfreundliche tutorials und es ist 100% Raspberry kompatibel.
-
ich habe aber kein interesse daran großartig Javascript zu lernen. `
wie gesagt sehr viel geht mit Blockly per drag and drop.Innerhalb der nodes bei node-red musst du allerdings js einsetzen.
Da bleibe ich dann lieber bei Python … dazu gibt es wesentlich mehr Anfängerfreundliche tutorials `
Mal hier gesehen:http://www.iobroker.net/?page_id=5385&lang=de
falls du es dir doch anders überlegen willst
Gruß
Rainer