Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Hier gehts um Fragen zum Eigenbau von Impfkiste, HEPA-Bank, Autoklaven, Pasteusierungsgeräte, Inkubatoren.. usw.

Moderatoren: Mycelio, leuchtpilz, davidson30

Benutzeravatar
fabi
Foren - Mitglied
Beiträge: 51
Registriert: Dienstag, 16. März 2021 18:15
Wohnort: Österreich

Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von fabi » Samstag, 29. Mai 2021 17:21

Halli Hallo!
Ich möchte dir einen Weg vorstellen die Feuchtigkeit und vieles mehr automatisiert in deinem Fruchtungsraum mithilfe eines Raspberry Pi und der open source Software TerrariumPI zu regeln.

Wenn du über die folgende Ausführung im schnelldurchlauf drüber fliegst, wird das wohl schrecklich kompliziert ausschauen. Aber zum Glück macht man jeden Schritt nach und nach und dann schaut das schon ganz anders aus;)
Außerdem sind in dieser Anleitung nur die wichtigsten Punkte zusammengefasst. Solltest du bei einem Schritt Probleme haben, findest du im Internet für genau diesen Schritt eine ausführliche Anleitung.
Manche hören das wohl ungern aber: das englischsprachige Internet ist informativer als die kleine deutsche Blase. Und im Zweifel beantworte ich gerne fast jede Frage.


Was du brauchst:
  • Raspberry Pi 2 oder 3 (ab 20€)
  • Sensor zur Messung der Feuchtigkeit, idealerweise BME280 (ab 6€)
  • Lötkolben + Lötzinn
  • Wenn du keine Kabel direkt an deinen Pi löten möchtest female jumper (ab 2€)
  • Isolierband oder besser Schrumpfschlauch
  • Weiteres Zubehör wie Netzstecker/-Kupplungen, Steckdosen, Kabel, Kabelbinder, Holz für Gehäuse, usw., abhängig von deinem Aufbau.
Bei den Preisangaben handelt es sich lediglich um Richtwerte, damit du eine ungefähre Ahnung hast in welchen Rahmen sich die Preise aufhalten können.
Bei keinem der Links beziehe ich einen Vorteil, sie dienen euch lediglich die harte Arbeit des tippens zu Ersparen;)




Allgemeines

TerrariumPI 3.9.9
Bildschirmfoto 2021-05-29 um 15.34.58.png
Bildschirmfoto 2021-05-29 um 15.36.02.png
  • Bei TerrariumPI handelt es sich um eine kostenlose und freie Software, hauptsächlich von teyosh geschrieben und im Jahr 2016 veröffentlicht. Frei bedeutet, dass jeder dabei mitschreiben kann oder den gesamten Code kopieren und eigene Wege gehen kann. Über Spenden freut sich theyosh natürlich.
  • Wie der Name schon sagt, wurde diese Software zur Steuerung von Terrarien programmiert, ist aber genau so gut für viele andere Anwendungen geeignet.
  • Die Software stellt die Messungen der Sensoren grafisch bis zu einem Zeitraum von einem Jahr dar. Wenn ein Wert einen high oder low Alarm auslöst, wird ein Relais für eine bestimmte Zeit geschalten. Außerdem kann man Relais wie Zeitschaltuhren regeln. Das wären die für uns wichtigsten Funktionen. Zusätzlich könnte man noch Strom- und Wasserverbrauch dokumentieren, Türschalter installieren, Musik abspielen und Webcams aufstellen.
  • Bald wird Version 4.0 verfügbar sein. Der Code wurde komplett neu geschrieben und optimiert. Außerdem kann man mit einem Raspberry nun mehrere "Bereiche", also Fruchtungsräume steuern.
Raspberry Pi
  • Getestet und sicher funktionsfähig mit TerrariumPI 3.9.9 sind der Raspberry Pi 2 und 3. Andere wie z.B. Pi 4 oder Pi Zero könnten auch funktionieren.
  • Die SD-Karte sollte mindestens 4GB groß sein, da diese inzwischen selten sind empfiehlt es sich für fast den gleichen Preis gleich eine Karte mit 16 oder 32GB zu kaufen.
    Fall bitte nicht auf ultra-billig-Angebote rein, dabei handelt es sich oft um SD-Karten, die in Wirklichkeit nur einen Bruchteil ihrer angegebenen Kapazität haben und deswegen oft für Datenverlust und Abstürze führen.
Sensoren
  • Ich empfehle mindestens 2 Sensoren einer Art für wichtige Messungen zu haben, falls einer der Sensoren ausfällt, kann die Software immernoch den jeweiligen Parameter z.B. Luftfeuchtigkeit regeln.
  • Zur Messung der Feuchtigkeit und Temperatur empfehle ich den BME280, der auch bei einer hohen Luftfeuchtigkeit eine hohe Genauigkeit und geringe Trägheit hat. Außerdem wird er über den I2C bus ausgelesen, was vereinfacht den Vorteil hat, dass alle I2C Sensoren über die gleichen 4 Leitungen am Pi angeschlossen werden.
  • Dann gibt es auch noch den DHT11 oder DHT22 um Temperatur und Luftfeuchtigkeit zu messen. Dieser ist aber viel träger als der BME280 und gibt in der Regel nach Wochen bis Monaten den Geist auf. Außerdem wird dieser über GPIO ausgelesen, jeder dieser Sensoren wird an einem eigenen Pin am Pi angeschlossen.
  • Desweiteren besitze ich noch den Lichtsensor BH1750, der die Helligkeit von 0-65535lx messen kann. Dieser läuft über den I2C bus, wird aber bei der TerrariumPI Version 3.9.9 nicht unterstützt. Man kann ihn aber über ein Script auslesen und die Werte in die Software einpflegen lassen.
  • Für die CO2 Messung gibt es z.B. den MH-Z19B. Da ich diesen aber (noch) nicht besitze, kann ich dazu nichts sagen. CO2 Sensoren werden bei der Version 3.9.9 nicht unterstützt, man kann sie aber wie den oben genannten Lichtsensor hinzufügen.
Relais
  • Ein Relais ist eine Art Schalter, den der Raspberry Pi automatisch schalten kann. Damit steuern wir also Lüfter, Befeuchter, Heizung, Lampen usw. an.
  • Es gibt 1, 2, 4, 8 und 16-Kanal Relais, also mit der entsprechenden Anzahl an "Schaltern". Wie viele Kanäle du brauchst hängt von deinem Aufbau ab.
    Ich habe einen 4-Kanal Relais und damit steuer ich:
    • 1 Lüfter für Umluft im Zelt
    • 1 Lüfter um die Luft aus dem Zelt zu saugen
    • 1 Lüfter und 2 Ultraschall Vernebler über eine Dreifachsteckdose für die Feuchtigkeitsregulierung
    • Der vierte Kanal ist noch frei
  • An einem Relais kannst du deine Verbraucher nicht direkt anstecken, du kannst also entweder so wie ich Stecker Kupplungen verwenden oder eleganter wäre Steckdosen an dein Gehäuse schrauben.
    Außerdem brauchst du noch einen Stecker um das Relais an eine Steckdose anzuschließen.
  • Du bastelst mit 230V Spannung herum. Ich appeliere an deinen gesunden Menschenverstand und denke du weißt was das bedeutet.
Hier findest du eine vollständige Liste der unterstützten Hardware bei TerrariumPI.

Gehäuse
  • Dein Raspberry Pi und Relais willst du natürlich nicht offen rumliegen haben, deswegen brauchst du ein Gehäuse um das alles sicher und halbwegs Sporengeschützt zu verwahren.
  • Ich habe eine einfache Box aus Holz gebaut, du kannst natürlich auch Kunststoff nehmen.
    Wenn du denkst Metall wäre eine gute Idee, solltest du dieses Vorhaben nun abbrechen. (Außer du weißt was du tust, dann würdest du das hier aber wahrscheinlich nicht lesen)

Praktischer Teil
Auf dieser Seite sieht man die Pinbelegung des Raspberrys.
FL_2021-05-29-AUT-54272.jpg
I2C Sensoren
Die Anschlüsse dieser Sensoren sind schön beschriftet mit VIN, GND, SCL und SDA, evtl. hat er zusätzlich CS und SDO.
  • Hast du zwei mal den selben Sensor, dann haben diese die gleiche Adresse und du musst eine Verbindung auf dem Board trennen. Lese dazu das hier, durchsuche selber das Internet oder schreibe mir.
    Wenn der Sensor die Anschlüsse CS und SDO hast, kannst du bei einem Sensor SDO einfach mit GND verbinden. CS bleibt frei. Damit bekommt dieser Sensor eine andere Adresse. Das wird erst später wichtig.
    Falls du mehr als zwei der gleichen I2C Sensoren benutzen willst, lohnt es sich einen I2C Multiplexer wie den TCA9548A zu nutzen. An diese Platine kannst du 8 I2C Geräte anschließen und jedes bekommt automatisch eine eigene Adresse.
  • Löte die Adern deines 4-adrigen Kabels (Klingelleitung) an VIN, GND, SCL und SDA des Sensors.
    Achte darauf, bei allen Sensoren die gleiche Farbe für die gleichen Pins zu verwenden.
    Lasse das Kabel lang genug, verlege es probeweise schon so wie es am Ende sein soll.
FL_2021-05-29-AUT-54278.jpg
  • Löte die gleichen Enden von allen Kabeln mit (Jumper) Kabeln zusammen.
    Ich muss hoffentlich nicht erwähnen, dass alle Adern wieder isoliert werden müssen
FL_2021-05-29-AUT-54275.jpg
  • Verbinde die vier (Jumper) Kabel mit den folgenden Pins deines Raspberry Pis:
    • VIN -> Pin 1 3v3 Power oder Pin 2/4 5v Power. Ist dein Kabel länger als 2m empfiehlt sich Pin 2 oder 4 mit 5v
    • SDA -> Pin 3 GPIO2 (I2C1) SDA
    • SCL -> Pin 5 GPIO3 (I2C1) SCL
    • GND -> Pin 6 oder 9 Ground
      • Auf dieser Seite ist ein recht eindeutiges Bild zur Pinbelegung.
    Wenn du keine Jumper Kabel hast, musst du die Kabel an die Pins löten.
FL_2021-05-29-AUT-54273.jpg

GPIO Sensoren
Lange Anleitung;)
Die Anschlüsse dieser Sensoren sind oft nicht beschriftet, schau die Belegung im Datenblatt für deinen Sensor (z.B. DHT22) nach.
Du kannst die Bilder von den I2C Sensoren als Hilfestellung nehmen, achte nur drauf die Datenleitung von zwei GPIO Sensoren nicht zu verbinden. Diese müssen alle ihren eigenen Pin am Raspberry bekommen!
  • Löte die meist 3 Anschlüsse des Sensors an ein Kabel.
    Achte darauf, bei allen Sensoren die gleiche Aderfarbe für die gleichen Pins zu verwenden.
    Lasse das Kabel lang genug, verlege es probeweise schon so wie es am Ende sein soll.
  • Falls du mehrere GPIO Sensoren verwendest, kannst du die Enden der Adern für die Spannung (VCC, Vin) und Masse (GND) mit einem (Jumper) Kabel zusammenführen. Löte jeweils ein (Jumper) Kabel an die Enden der Datenleitung (DATA, signal)
    Ich muss hoffentlich nicht erwähnen, dass alle Adern wieder isoliert werden müssen
  • Verbinde die (Jumper) Kabel mit den folgenden Pins deines Raspberry Pis:
    • VCC -> Pin 1 3v3 Power oder Pin 2/4 5v Power. Ist dein Kabel länger als 2m empfiehlt sich Pin 2 oder 4 mit 5v
    • GND -> Pin 6 oder 9 Ground
    • DATA -> Pin 11,13,15,16,18 usw. GPIO
      Es eignet sich jeder bei pinout.xyz grüner GPIO Pin
    Wenn du keine Jumper Kabel hast, musst du die Kabel an die Pins löten.

Relais
  • Mit (Jumper) Kabeln verbindest du nun folgende Pins des Relais mit dem Raspberry Pi:
    • VCC -> Pin 2/4 5v Power
    • GND -> Pin 6, 14 oder 20 Ground
    • IN1 -> Pin 16, 18, 22 usw. GPIO
    • IN2 -> Pin 16, 18, 22 usw. GPIO
      ...
      Für IN_ eignet sich jeder bei pinout.xyz grüner GPIO Pin
  • Jeder Kanal des Relaisboards hat 3 Schraubklemmen, in der Mitte ist in der Regel der Eingang, rechts und links ist einer im Ruhezustand geöffnet und der andere geschlossen. Am einfachsten nimmst du einen Durchgangsprüfer um zu testen welcher der beiden im Ruhezustand Durchgang hat, ansonsten lässt du den Zufall entscheiden und siehst später ob dein Verbraucher durchgehend läuft obwohl das Relais nicht geschalten hat.
  • Wenn du für die weitere Verkabelung des Relais mit den Steckern / Steckdosen eine Anleitung brauchst, solltest du das jemanden machen lassen, der sich auskennt.
Damit ist der praktische Teil mehr oder weniger abgeschlossen
Zuletzt geändert von fabi am Sonntag, 30. Mai 2021 10:47, insgesamt 2-mal geändert.
Benutzeravatar
fabi
Foren - Mitglied
Beiträge: 51
Registriert: Dienstag, 16. März 2021 18:15
Wohnort: Österreich

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von fabi » Samstag, 29. Mai 2021 17:22

Software

1. Raspian Image auf SD-Karte schreiben
Lade eine Software runter um das Betriebssystem auf die SD Karte zu kopieren, z.B. Raspberry Pi Imager. Ich persönlich nutze aber lieber Etcher.
  • Verbinde die SD-Karte mit deinem PC.
  • Etcher
    • Lade Raspberry Pi OS Lite herunter und entpacke die .zip Datei, normalerweise reicht ein Doppelklick auf die Datei. Nun solltest du eine .img Datei haben.
    • Öffne etcher
    • Wähle unter flash from file die gerade entpackte .img Datei aus
    • Im nächsten Feld wählst du deine SD Karte aus
    • Zu guter letzt Flash!
  • Raspberry Pi Imager
    • Öffne die Software
    • Wähle unter Betriebssystem -> Raspberry Pi OS (other) -> Raspberry Pi OS Lite (32-bit)
    • Wähle die SD-Karte aus
    • Klicke auf Schreiben
Bei der Lite Variante handelt es sich um eine Version ohne grafische Oberfläche. Du hast also nur das Terminal / Befehlseingabe. Diese Version ist für Terrarium Pi jedoch notwendig. Keine Angst, du musst nur eine Hand voll Befehle eingeben, danach kannst du gemütlich alle Einstellungen über die grafische Weboberfläche machen.


2. Betriebssystem vorbereiten
Falls du deinen Pi für die Konfiguration an einem Bildschirm und Tastatur anschließt kannst du die nächsten zwei Schritte überspringen, kannst dir dann aber selber die Befehle aus dem Internet raussuchen um SSH zu aktivieren und den Pi mit dem Internet zu verbinden.
  • Erstelle nun eine Datei mit der Bezeichnung ssh. Öffne dazu einfach TextEdit (Mac) oder Nodepad (Windows) und speichere das leere Dokument als „ssh“ in den Hauptordner boot auf der SD-Karte. Entferne danach die Dateiendung .txt, .rtf oder sonstige Endungen.
    Falls du keine Endungen siehst, google nach "Dateiendung anzeigen Windows oder Mac“)
  • Damit sich der Raspberry Pi direkt mit dem Wlan verbinden kann, erstelle eine Textdatei und speichere sie in das selbe Verzeichnis mit dem Namen „wpa_supplicant.conf“ und diesem Inhalt:

    Code: Alles auswählen

    country=DE
    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    update_config=1
    
    network={
        ssid="Netzwerk-Name"
        psk="Passwort"
    }
    
    Netzwerk-Name und Passwort musst du natürlich mit deinen entsprechenden Daten ersetzen. Die "" bleiben erhalten! Speichere die Datei und falls sie eine andere Endung als .conf hat, entferne diese.
sdkarte.png
  • Nun kannst du die Karte auswerfen, in deinen Raspberry Pi stecken und diesem Saft geben, er fährt automatisch hoch.

3. PC über SSH mit dem Raspberry Pi verbinden
Nun Verbinden wir den PC mit dem Raspberry Pi
Mac Nutzer
  • Öffne Terminal und gebe folgende Befehle ein

    Code: Alles auswählen

    ssh-keygen -R raspberrypi.local
    Optional, nutzbar wenn bereits eine Verbindung mit einem anderen Pi oder einer alten Installation bestanden hat.
    Damit werden die gespeicherten Daten dieser Verbindungen gelöscht, was eine Fehlermeldung beim nächsten Befehl verhindert.

    Code: Alles auswählen

    ssh pi@raspberrypi.local
    Mit diesem Befehl versucht der PC sich mit deinem Raspberry Pi zu verbinden.
    Wenn im Terminal nichts passiert, könnte der Pi noch nicht fertig hochgefahren sein, drücke ctrl+c und gebe den letzten Befehl erneut ein (Pfeil hoch Taste)
    Falls nach 5 Minuten immer noch nichts passiert, konnte der Pi sich nicht mit dem Wlan verbinden und es passt etwas nicht mit der wpa_supplicant.conf Datei. Passwort oder Netzwerkname falsch? Im richtigen Ordner gespeichert?
    Stecke das Stromkabel vom Raspberry Pi ab und entferne danach die SD-Karte um die Datei am PC zu überprüfen.
  • Falls eine Warnung mit Auswahl Yes / No kommt, tippe y und enter
  • Gebe das Passwort ein, standardmäßig raspberry
    Es erscheinen keine Zeichen oder Sternchen wenn du das Passwort eingibst, lass dich davon nicht verunsichern.
ssh.png


Windows Nutzer:
  • evtl. musst du auch Bonjour installieren
  • Starte Putty
  • Gebe folgende Daten ein:
    - Hostname oder IP Adresse: raspberrypi.local
    - Port: 22
    - Verbindungstyp: SSH
  • Drücke Öffnen
    Wenn die Verbindung fehlschlägt, könnte der Pi noch nicht fertig hochgefahren sein.
    Falls nach 5 Minuten immer noch nichts passiert, konnte der Pi sich nicht mit dem Wlan verbinden und es passt etwas nicht mit der wpa_supplicant.conf Datei. Passwort oder Netzwerkname falsch? Im richtigen Ordner gespeichert?
    Stecke das Stromkabel vom Raspberry Pi ab und entferne danach die SD-Karte um die Datei am PC zu überprüfen.
  • Bestätige eine Sicherheitswarnung mit Ja
  • Benutzername: Pi
  • Passwort: raspberry

4. Terrarium Pi installieren
Nun sind wir mit dem Raspberry Pi verbunden und es geht für Mac und Windows gleich weiter.
Gebe folgende Befehle ein, du kannst sie hier kopieren und direkt in das Terminal einfügen.

Code: Alles auswählen

passwd
Ändere das Passwort für den Pi. Du musst zuerst das alte Passwort raspberry eingeben und dann zwei mal dein neues.
Es erscheinen evtl. keine Zeichen oder Sternchen wenn du das Passwort eingibst, lass dich davon nicht verunsichern.

Code: Alles auswählen

hostname -I
(Optional) Die IP-Adresse wird angezeigt, speichere sie dir ab.

Code: Alles auswählen

sudo apt-get update

Code: Alles auswählen

sudo apt -y install git
Die Software git wird installiert.

Code: Alles auswählen

git clone --recursive --depth 1 https://github.com/theyosh/TerrariumPI.git
TerrariumPI wird heruntergeladen.

Code: Alles auswählen

cd TerrariumPI
Du gehst in den neu erstellten Ordner TerrariumPI

Code: Alles auswählen

sudo ./install.sh 3
Die Software wird installiert.
-> Die zwei Fragen mit Enter bestätigen.
die Installation kann 15-45 Minuten in Anspruch nehmen. Abhängig von deinem Raspberry Pi und der Geschwindigkeit der SD-Karte.
Alles unnötige wird vom Betriebssystem gelöscht und nur die notwendigen Softwarepakete werden hinzugefügt. Wenn du also vor hast auch andere Software auf deinem Pi zu installieren, solltest du das erst tun nachdem du TerrariumPI installiert hast.
Wenn die Installation erfolgreich abgeschlossen wurde, wirst du gefragt, ob du einen Neustart machen willst, bestätige dies.


5. Terrarium Pi konfigurieren
  • Warte ein paar Minuten und gebe dann an deinem PC in deinem Browser die vorher gespeicherte IP-Adresse oder raspberrypi.local ein und füge :8090 hinzu. Also z.B. 192.168.0.118:8090 oder raspberrypi.local:8090
  • Du solltest nun die Weboberfläche von deinem TerrariumPI sehen.
  • Gehe bei der linken Leiste auf System -> Settings
  • Es kommt ein Feld zur Authentifizierung. Benutzer: admin Passwort: password
  • Dort solltest du nun das Passwort ändern, am besten nimmst du das gleiche wie du für deinen Raspberry Pi gewählt hast. Den Benutzernamen kannst du auch ändern. Ich empfehle dir die Sprache erst später auf deutsch zu stellen, da die Bezeichnungen bei mir auf Englisch sind. Auch an weiteren Einstellungen kannst du später spielen, lass uns als nächstes die Sensoren einfügen.
  • Drücke ganz unten auf submit um die Änderungen zu speichern
  • Gehe bei der linken Leiste auf Sensors -> Settings
  • Rechts oben ist ein blaues Feld mit einem +, damit fügst du neue Sensoren hinzu.
  • Bevor wir das machen können, müssen wir aber erst herausfinden was für eine Adresse deine Sensoren haben.
    • Hast du einen GPIO Sensor, ist die Adresse die Pin-Nummer. Vergleiche hier, wenn die Datenleitung an GPIO 17 angeschlossen ist, ist die Pin-Nummer 11 und damit ist das die Adresse.
    • Bei einem I2C Sensor müssen wir nochmal das Terminal benutzen.
    • Verbinde dich wie oben über ssh mit deinem Raspberry Pi, dann gebe ein:

      Code: Alles auswählen

      i2cdetect -y 1
      i2c.png
      In meinem Fall habe ich drei Sensoren mit den Adressen 23, 76 und 77. Der Lichtsensor hat 23, die zwei BME280 76 und 77. Im Internet kann man auch herausfinden, welche Adressen diese Sensoren haben, besser es ist aber selber diesen Befehl einzugeben um sicher zu stellen, dass sie überhaupt vom System erkannt wurden.
  • Jetzt können wir den ersten Sensor hinzufügen!
    • Type: Wähle den Typ des Sensors
    • Adress: oben haben wir schon besprochen welcher Wert hier rein muss
    • Name: Die Bezeichnung für den Sensor
    • Alarm min: Wenn dieser Wert unterschritten wird, wird ein Alarm ausgelöst der ein Relais schalten könnte
    • Alarm max: Wenn der Wert überschritten wird, wird ein Alarm ausgelöst
    • Limit min: geringster Wert, der in den Graphen angezeigt wird
    • Limit max: höchster Wert, der in den Graphen angezeigt wird
    • Max diff: Maximale Differenz, die zwischen zwei Messungen zulässig ist
    • Drücke add und dann auf submit um die Änderung zu speichern
      • Wenn du mehrere Sensoren hintereinander ohne zu speichern hinzufügst, kann es passieren, dass sie einfach verschwinden oder beim speichern nichts passiert...
Sensor.png
  • Füge nun alle Sensoren hinzu, bzw. den BME280 oder DHT22 2 mal, einmal für Feuchtigkeit und einmal für die Temperatur.
  • Gehe bei der linken Leiste auf Switches -> Settings
  • Blaues + rechts oben
  • Füge dein Relais hinzu
    • Hardware: unsere Relais sind immer GPIO, falls dein Relais schaltet wenn kein Strom anliegt, wähle GPIO Inverse.
    • Adress: wie bei den GPIO Sensoren
    • Name: Selbsterklärend
    • Power usage: Leistung deines Verbrauchers, kannst du auch auf 0 stellen, ist aber interessant zu wissen wie viel das System verbraucht
    • Water flow: Wasserverbrauch.
    • Timer: disable wenn du das Relais mit einem Sensor Alarm steuern willst, als Zeitschaltur enable
      • Zeitschaltuhr:
        • Bei 24h Betrieb Timer start und stop auf 00:00 lassen.
        • Timer on duration: Zeit in der der Verbraucher läuft
        • Timer off duration: Zeit in der der Verbraucher aus ist
          • Beispiel: on:10, off:20 Der Verbraucher läuft 10 Minuten und ist dann 20 Minuten aus
Relais.png
  • Gehe bei der linken Leiste auf System -> Environment
  • Hier verbindest du die Sensoren mit den Relais
  • In diesem Beispiel automatisieren wir die Feuchtigkeitsregulierung
  • Klicke bei Humidity ganz rechts auf den Pfeil, damit sich das Feld erweitert
    • Mode: Sensor
    • Sensors: Wenn du auf das Feld klickst, siehst du die Sensoren, die Typ Humidity sind. Du kannst mehrere auswählen
    • Day/Night difference: Gebe z.B. -10 ein, dann ist der Alarm nachts um 10 niedriger.
    • Day/Night source: Quelle die bestimmt wann Tag / Nacht ist, Licht oder Wetter. Beides müsste man noch hinzufügen. Am einfachsten stellt man beim selben Fenster bei "lights" auf mode: timer und gibt die Zeiten selber ein. (Oder lässt die Einstellung erstmal einfach weg)
    • Low alarm öffnen, die ersten vier Felder sind bei Mode: Sensor deaktiviert, light und door state kann man auf ignore stellen
    • Power on: Zeit in Sekunden, die der Verbraucher läuft
    • Settle timeout: Zeit in Sekunden, die gewartet wird, bis das Relais bei bestehendem Alarm wieder anschaltet
    • Power switches: hier kann man die Relais auswählen, die schalten sollen
  • Der high alarm funktioniert genauso, den habe ich bisher aber noch nicht gebraucht
Humidity.png
Dashboard.png
Relais übersicht.png

Was für ein Pipifax! Das wars schon, so einfach geht das... :D
Wenn ihr fehler oder unnötig komplizierte Formulierungen findet, könnt ihr mir gerne bescheid geben. Ich werde das ganze in der nächsten Zeit sowieso noch etwas überarbeiten und weitere Dinge hinzufügen.


Anmerkung zum Thema Passwort:
Seltsamerweise wurde und wird behauptet, dass Passwörter mit Sonderzeichen, Großbuchstaben und Zahlen besonders sicher sind. Dies ist leider nicht unbedingt richtig. Viel entscheidender ist die Gesamtanzahl der Zeichen.
Der einzige Weg ein Passwort zu "hacken" ist nach wie vor durch probieren jeder möglichen Kombination. Die andere Sache wäre eine Datenbank zu hacken und dadurch die Passwörter aller dort Registrierten zu "klauen", da ist es aber egal wie gut dein Passwort war.
Wenn die Polizei z.B. dein Handy beschlagnahmt und du ihnen deine vierstellige Zahlenkombination nicht mitteilst, brauchen sie nur wenige Tage oder Wochen bis eine Software durch "raten" die Kombination rausgefunden hat.

Wie leicht kannst du dir dieses Passwort merken: W=rf*2c!? ? Es besteht aus 9 Zeichen
Und wie schauts mit diesem aus: ManhabicheintollesPasswort!!! Dieses besteht aus 27 Zeichen
Beim ersten hat man zwar mehr Sonderzeichen was grob gesagt die Anzahl möglicher Zeichen verdoppelt, beim zweiten hat man insgesamt das dreifache an Zeichen wobei jedes Zeichen mehr die Möglichkeiten expotenziell vervielfacht.
Man könnte das schön nachrechnen, aber ich denke hier hat da keiner Lust drauf.
Lange Rede kurzer Sinn: Nehm Sätze als Passwört(er). Sie sind sicherer und leichter zu merken.
Zuletzt geändert von fabi am Samstag, 05. Juni 2021 17:27, insgesamt 2-mal geändert.
Benutzeravatar
fabi
Foren - Mitglied
Beiträge: 51
Registriert: Dienstag, 16. März 2021 18:15
Wohnort: Österreich

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von fabi » Samstag, 29. Mai 2021 17:23

Webinterface: Zugriff aus dem Internet
  • Verbinde dich mit deinem Raspberry Pi über SSH
  • Für den Zugriff aus dem Internet gibts einige komplizierte Wege. Einen sehr einfachen stelle ich euch hier nun vor.
  • Schau bei deinen e-Mails nach ob von dataplicity etwas gekommen ist, bestätige deine e-Mailaderesse und erstell dort einen Account.
  • Auf der devices Seite sollte dein Raspberry Pi gelistet sein, drücke auf ihn und eine Seite mit Terminal und einer rechten Leiste sollte sich öffnen.
  • Bei der rechten Seite ist "Wormhole" disabled", aktiviere Wormhole.
  • Die Adresse unter Wormhole ist die, mit der du auf das Interface zugreifen kannst.


Nicht unterstützte Sensoren mit einem Script implementieren
  • Als erstes musst du ein Script finden mit welchem der Pi den Sensor auslesen kann. In meinem Beispiel wird das der Helligkeitssensor BH1750 sein.
  • Gehe als erstes auf die Issues Seite von TerrariumPI, entferne im Feld rechts neben Filters is:issue is:open und gebe die Bezeichnung deines Sensors ein.
  • Falls du dort nichts findest gibst du deine Sensorbezeichnung + Tutorial / Anleitung in der Suchmaschine deiner Wahl ein. Achte darauf, dass es sich um ein python script handelt, das erkennst du dadran, dass in der ersten Zeile vom code das steht: #!/usr/bin/python3
  • Du wirst am Script wahrscheinlich noch ein paar Änderungen vornehmen müssen, versuch aber erst mal, dass du überhaupt ein Ergebnis rausbekommst und ändere erst mal nur die Sensoradresse, falls nötig.
Das hier ist z.B. mein Code

Code: Alles auswählen

#!/usr/bin/python3
import smbus
import time

DEVICE     = 0x23
POWER_DOWN = 0x00
POWER_ON   = 0x01
RESET      = 0x07
bus = smbus.SMBus(1)

def convertToNumber(data):
  result=(data[1] + (256 * data[0])) / 1.2
  return (result)

def readLight(addr=DEVICE):
  data = bus.read_i2c_block_data(addr,0x20)
  return convertToNumber(data)

def main():
  lightLevel=readLight()
  print (format(lightLevel,'.2f'))

if __name__=="__main__":
   main()
  • Teste das Script:
    • Öffne ein Terminal (SSH) mit deinem Raspberry Pi
    • gebe nano ein, ein Texteditor öffnet sich. Kopiere dort den code ein.
    • strg/ctrl + X zum beenden, mit Y bestätigen, dass du die Datei speichern willst, Namen eingeben, zb. BH1750test1.py
    • python3 Dateiname eingeben, z.B. python3 BH1750test1.py
  • Unser Ziel ist es, dass nur eine Zahl ausgegeben wird, ohne Einheit am Ende, Dauerschleife oder sonstwas. Das hinzubekommen könnte etwas Spielerei werden, besonders wenn man keine Ahnung vom programmieren hat...
  • Wenn das geschafft ist speichern wir uns die Datei am besten in einem besonderen Ort ab, wieso weiß ich nicht, aber so ist das script wenigstens schön aufgeräumt (und ich hab ehrlicherweise noch nicht den Weg zu meinem Benutzerverzeichnis gefunden). Also folgende Befehle eingeben:
    • cd /usr/local/sbin/
    • sudo nano
    • Nun wie oben die Datei erstellen
    • sudo chmod +x Dateiname
    • Damit haben wir die Datei "ausführbar" gemacht, es braucht also kein python3 mehr vorangestellt, das testen wir indem wir den Dateinamen eingeben und enter drücken, es sollte die Zahl ausgegeben werden
    • Damit haben wir die unangenehmere Arbeit erledigt und können das Terminal schließen.
  • Im Webinterface von TerrariumPI auf Sensoren -> Settings gehen und einen neuen Sensor hinzufügen.
    • Unter Hardware "Custom script" wählen.
    • Bei Adress gebe ich in meinem Fall "/usr/local/sbin/bh1750.py" an
    • Der Rest ist weiter oben ja schon ausgeführt
Zuletzt geändert von fabi am Samstag, 05. Juni 2021 21:17, insgesamt 3-mal geändert.
Benutzeravatar
Mycomane
Ehren - Member
Beiträge: 541
Registriert: Montag, 23. August 2010 17:52
Wohnort: Schlumpfhausen

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von Mycomane » Samstag, 29. Mai 2021 18:38

:shock: :shock: :shock:

Na, dann kann ich ja nun meinen Fruchtungsraum regeln (lassen)! 8) 8)

Vielen Dank für die ausführlichen Informationen, die du mit uns geteilt hast. :!:

Jetzt nur noch einen Lagerraum suchen, um den Fruchtungsraum freizubekommen, und die Fabrik kann in die Produktion gehen. :lol:

Ja, das englische Netz ist oft durchaus informativer, bzw. umfangreicher/mannigfaltiger.

Hoffe, dass ich bald mal dazu komme mich um die Technik zu kümmern.

Also zu meinen Zeiten als Terraristiker hat es so etwas nicht gegeben. :)

LG, Fabian
Fruchtbar ist die Hyphe noch ... aus der da einst die Spore kroch ...
Benutzeravatar
Zitronenfalltür
Ehren - Member
Beiträge: 373
Registriert: Donnerstag, 11. Januar 2018 13:12

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von Zitronenfalltür » Samstag, 29. Mai 2021 19:36

Doppeldaumen für die ausführliche Anleitung!

Da ich mich nach wie vor um die Arduino Programierung drücke, mich Raspi und ähnliches immer schon interessiert hat, hab mir einen raspi 2 für kleines Geld bestellt. Sollte demnächst kommen.
Freu mich schon!
Du bastelst mit 230V Spannung herum. Ich appeliere an deinen gesunden Menschenverstand und denke du weißt was das bedeutet.
Als Hochspannungsbastler hantiere ich mit weit höhern Spannungen von mehren zig tausend Volt. Die Spannung ist nicht unbedingt das Problem, sondern Stromstätke und die niedrige Frequenz.

Vor Netzspannung mit 50Hz hab ich großen Respekt!

Also bitte seid vorsichtig, auch wenn es "nur" 230V sind! Kann das Ende bedeuten.

Grüße, Markus.
Zuletzt geändert von Zitronenfalltür am Sonntag, 30. Mai 2021 16:57, insgesamt 1-mal geändert.
Benutzeravatar
fabi
Foren - Mitglied
Beiträge: 51
Registriert: Dienstag, 16. März 2021 18:15
Wohnort: Österreich

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von fabi » Sonntag, 30. Mai 2021 10:28

Danke und bitte, hab ich doch sehr gern gemacht :)
Benutzeravatar
Nesel
Foren - Mitglied
Beiträge: 58
Registriert: Montag, 15. März 2021 22:53

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von Nesel » Mittwoch, 02. Juni 2021 00:01

Wow! Echt cool!
Ich habe deine Anleitung jetzt nur überflogen, aber ich finde das schon sehr beeindruckend und mit der Anleitung kann man das ziemlich sicher schon recht gut nachbauen.

Ich hab da nur einen Punkt wo ich trotzdem Bauchschmerzen habe (ist für dich wohl keine Überraschung :P )
fabi hat geschrieben: Samstag, 29. Mai 2021 17:21
  • Du bastelst mit 230V Spannung herum. Ich appeliere an deinen gesunden Menschenverstand und denke du weißt was das bedeutet.
Ich finde mit 230V/10-16A/50Hz, also was aus der normalen Steckdose kommt, sollte man nicht basteln! Entweder man weiß was man tut oder man lässt das von jemanden machen der weiß was er tut!
Da hilft auch kein appellieren an den gesunden Menschenverstand, da muss man klipp und klar sagen: Wenn du nicht weißt was du tust hast du eine gute Chance dich, deine(n) Lebenspartner(in) und deine Kinder mit Strom umzubringen!
Oder wie es ein befreundeter Elektriker ausgedrückt hat: Strom macht klein, schwarz und häßlich.
Benutzeravatar
Zitronenfalltür
Ehren - Member
Beiträge: 373
Registriert: Donnerstag, 11. Januar 2018 13:12

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von Zitronenfalltür » Mittwoch, 02. Juni 2021 20:00

Geht ja auch ohne Netzspannung. Lüfter, Befeuchter und was man sonnst so noch braucht gibt's auch für 12V.

Sind hier Fragen erlaubt?
Hab einen Raspi 2. Rasperian ist auf SD, Raspi startet auch. Weiter bin ich noch nicht. Der 2er hat kein Wlan. Kann ich den auch über LAN Kabel mit dem PC verbinden? WLAN Adapter werd ich mir noch bestellen, hab ich aber noch nicht.

Grüße, Markus
Benutzeravatar
fabi
Foren - Mitglied
Beiträge: 51
Registriert: Dienstag, 16. März 2021 18:15
Wohnort: Österreich

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von fabi » Mittwoch, 02. Juni 2021 21:41

Zitronenfalltür hat geschrieben: Mittwoch, 02. Juni 2021 20:00 Sind hier Fragen erlaubt?
Natürlich
Zitronenfalltür hat geschrieben: Mittwoch, 02. Juni 2021 20:00
Hab einen Raspi 2. Rasperian ist auf SD, Raspi startet auch. Weiter bin ich noch nicht. Der 2er hat kein Wlan. Kann ich den auch über LAN Kabel mit dem PC verbinden? WLAN Adapter werd ich mir noch bestellen, hab ich aber noch nicht.

Grüße, Markus
Klar, du kannst ihn auch mit einem LAN Kabel mit dem PC verbinden.
Bei den Netzwerkeinstellungen von deinem PC sollte auch irgendwo etwas wie "Internetverbindung teilen" zu finden sein, dann hat dein Raspi über die LAN Verbindung auch Internetzugriff.

Oder du steckst das Teil mit dem Kabel direkt an den Router.
Benutzeravatar
Zitronenfalltür
Ehren - Member
Beiträge: 373
Registriert: Donnerstag, 11. Januar 2018 13:12

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von Zitronenfalltür » Freitag, 04. Juni 2021 19:21

Hy. Ganz so einfach scheint es nicht zu sein. Hab nach dieser Anleitung:

https://www.control-led.de/init/default ... C-aufbauen

Die IP Adresse der LAN Verbindung mit: sudo nano /etc/dhcpcd.conf dort eingetragen. Funktioniert nicht.
Bin mir aber nicht mal sicher ob ich die Verbindung zwischen Raspi und PC korrekt frei gegeben habe.

Verbindungskabel ist ein Crossoverkabel, dass ich mit einem Patch Kabel verlängert habe. Geht das überhaupt? Bestell mir gleich einen WLAN Adapter, brauch ich eh.

Grüße, Markus.
Benutzeravatar
fabi
Foren - Mitglied
Beiträge: 51
Registriert: Dienstag, 16. März 2021 18:15
Wohnort: Österreich

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von fabi » Freitag, 04. Juni 2021 22:02

Ja stimmt schon, wirkt doch irgendwie seltsam aufwändig.
Ich empfehle dir deinen Raspi mit einem stinknormalen LAN Kabel direkt mit dem Router zu verbinden, dann kannst du dir das alles sparen.

Falls du doch noch weiter diesen Weg probieren möchtest, habe ich noch das hier gefunden:
Connect the Pi to PC's ethernet port using a regular ethernet cable
Go to "Network Connections" on the Windows PC and select the "Wireless Network Connection"
Right-click and select properties. In the "Sharing" tab under "Internet Connection Sharing" enable both checkboxes.
Restart your PC. This step is very important.
Now your Pi will obtain an IP address from your PC and can access internet through your PC
Außerdem wär hier noch eine andere Anleitung, da macht der andere Sachen um das selbe Ergebnis zu erhalten... :D https://intux.de/2014/10/raspberry-pi-m ... verbinden/

Nicht verzweifeln... Mein erstes mal mit dem Pi war auch sehr belastend. Sobald ich einen Schritt weiter gekommen bin, gabs das nächste Problem.
Benutzeravatar
Zitronenfalltür
Ehren - Member
Beiträge: 373
Registriert: Donnerstag, 11. Januar 2018 13:12

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von Zitronenfalltür » Samstag, 05. Juni 2021 12:36

Vielen Dank für's 'raussuchen! hört sich sich sehr gut an.
Nicht verzweifeln... Mein erstes mal mit dem Pi war auch sehr belastend
Das kenn ich nur zu gut. Grad wenn man so überhaupt keine Ahnung hat, wie ich von Linux :roll:
Benutzeravatar
Zitronenfalltür
Ehren - Member
Beiträge: 373
Registriert: Donnerstag, 11. Januar 2018 13:12

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von Zitronenfalltür » Samstag, 05. Juni 2021 14:43

Sorry für Doppelpost...

Hab's noch nicht hinbekommen und mich darum der Bastelei gewidmet.
Hab ungefähr die gleiche Relaiskarte wie du. Wenn ich es richtig erkenne, hat du die Spulen der Relais über den Pi versorgt?
Als Versorgung für den Pi hab ich ein Handynetzteil mit 2,0A. reicht das dafür? oder kann ich an GND und VCC der Karte ein externes Netzteil
mit 5V hängen? Ist dafür der Jumper auf dem Board? Kam leider ohne Dokumentation...

Grüße, Markus.
Benutzeravatar
fabi
Foren - Mitglied
Beiträge: 51
Registriert: Dienstag, 16. März 2021 18:15
Wohnort: Österreich

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von fabi » Samstag, 05. Juni 2021 16:28

Ich habe das offizielle Netzteil mit 2,5A, aber ich denke 2,0 sollte für unsere Zwecke auch schon reichen.
Zur Spannung bzw. wie am besten anschließen gibts viele verschiedene Meinungen.
Als ich das gemacht habe, hab ich gar nicht so genau geschaut und bin nach nur einer Anleitung gegangen und habe alles direkt an den Pi angeschlossen, VCC an 5V, die IN an GPIO ohne Widerstand. Bisher funktioniert alles einwandfrei.

Du könntest probieren ob das Relais mit den 3,3V auch schaltet, oft tun sie das, manchmal eben nicht.
Wenn dus an 5V anschließt wird ein 1kOhm Widerstand zwischen IN und GPIO empfohlen oder du verkomplizierst dir das ganze noch mehr indem du dir einen ULN2803 dazwischenschaltest.
Ich habe auch mal gelesen, dass diese Widerstände auf den Relaisboards schon verbaut sind und man sich das deswegen einfach sparen kann. Könnte ich bei Gelegenheit ja mal nachmessen.

Ich habe nichts offizielles gefunden, aber es wird behauptet, dass eine Relaisspule 80mA braucht.
Mit der Spannungsversorgung von einem externen Netzteil entfernst du den Jumper und schließt dort bei VCC+ und GND - an. Bei den Hauptanschlüssen mit den IN's schließt du aber trotzdem VCC und GND vom Pi an.

ps. Destomehr ich mich da einlese, desto mehr sorgen mache ich mir um mein Beerchen.
Ich werde aber standhaft bleiben und lasse das so wies ist und werde berichten wenn, falls überhaupt, irgendwas den Geist aufgibt.
Benutzeravatar
Mycomane
Ehren - Member
Beiträge: 541
Registriert: Montag, 23. August 2010 17:52
Wohnort: Schlumpfhausen

Re: Anleitung: Fruchtungsraum automatisiert regeln mit einem Raspberry Pi

Beitrag von Mycomane » Samstag, 05. Juni 2021 17:38

Mensch Jungenz, :wink:

ihr macht mich gerade etwas fertig mit den Hausaufgaben, die ihr mir stellt.
Bzw. die ich mir selbst stelle wegen eurer Beiträge.
Da kann ich mir nur zurufen: 6, setzen! :cry:

Hoffe den Stoff irgendwann einmal aufholen zu können.
Bitte nicht schimpfen:
Ihr habt das sicher schon genau ausdiskutiert, aber ich schalte schnell ab, wenn es mir zu hoch wird. :roll:

Was genau könnt ihr alles steuern?
Luftfeuchtigkeit, Temperatur, CO2-Gehalt?
Kaffeetemperatur der Schwiegermutter etc. ...? :mrgreen:
Oder hängt das nur von den Sensoren ab?
Was könnt ihr über die Regeltechnik alles ansteuern?
Kann man damit "normale" Geräte schalten, die ich mit einem Stecker in eine Steckdose stecken würde?
Bzw. eine handelsübliche Steckdosenleiste schalten?
Ist das abhängig von der Leistung der zu schaltenden Verbraucher?

Sorry für die blöden Fragen.
Würde mich nur interessieren, bevor ich viel Zeit investiere um mich einzuarbeiten.

LG, Fabian
Fruchtbar ist die Hyphe noch ... aus der da einst die Spore kroch ...
Antworten

Zurück zu „Technik-Ecke“