• Du musst dich registrieren, bevor du Beiträge verfassen kannst. Klicke auf Jetzt registrieren!, um den Registrierungsprozess zu starten. Registrierte User surfen werbefrei, können Suchen durchführen und sehen die volle Darstellung des Forums!!!

Reifeschranksteuerung per Raspberry pi Tutorial

deraaf

Grillkaiser
5+ Jahre im GSV
Super Ding. JSON direkt aus dem Web Service? Was hast Du denn ja für einen Webserver laufen (kenne jetzt den PI nicht)?

Schönen Gruß
Peter
 
OP
OP
Tommy_j

Tommy_j

Fleischtycoon
Bei mir läuft ein apache2 server, auf dem mein Php-script und 2 json datein stehen und beschrieben sowie abgefragt werden können. Momentan lade ich mir aus der current.json die Werte ins Php-Script die mein Programm im 5 Sekunden Takt dort reinschreibt.
später soll das auch umgekehrt funktionieren, die Sollwerte werden im Php-script eingegeben und in die settings.json gespeichert werden, das Programm fragt bei jedem Loop die setting.json ab und nimmt diese Sollwerte an
 

deraaf

Grillkaiser
5+ Jahre im GSV
Ok... wäre da ne kleine Postgre oder ne MySql nicht noch ne Alternative? Sprich Du schreibst direkt in die DB und lädst von dort die current data? Macht das Leben m.E. einfacher um online Parameter zu ändern.

Viele Grüße
Peter
 
OP
OP
Tommy_j

Tommy_j

Fleischtycoon
Mit dem ändern der Daten habe ich keine Probleme, die ensprechenden Zeilen habe ich schon, mein Problem ist die Graphische umsetzung in HTML...
Bin heute nicht dazu gekommen, werde morgen mal eine Skizze erstellen was ich bräuchte....

Bin heute aber gut mit meiner Programmation vorangekommen, die Sollwerte lassen sich jetzt beim laufenden Betrieb ändern, fehlt nur noch mein richtigern Sensor, dann wäre das Hauptprogramm einsatzbereit...
 
OP
OP
Tommy_j

Tommy_j

Fleischtycoon
Neue Programmversion:
Im Anhang findet ihr die letzte Version meines Programms, ledier funktioniert sie bis jetzt immer noch nur mit dem Temperatursensor Ds18b20, der von mir bestellte Temperatur und Luftfeuchtigkeitssensor lässt leider immer noch auf sich warten, sobald der Sensor wird er eingebunden und dann sollte alles laufen.

Was kann das Programm mitlerweile:
  • Alle Werte können ohne Unterbrechung des Betriebes geändert werden
  • regeln der Temperatur auf den eingestellten Wert
  • regeln der Luftfeuchtigkeit auf den eingestellten Wert (sensor muss noch eingebunden werden)
  • 2 einstellbare Timer (Luftaustausch, Luftumwelzung)
  • Hysteresewerte für Temperatur und Luftfeuchtigkeit in den Optionen einstellbar
  • 3 Mode (Automatik) (Heizen) (Kühlen)
  • Automatik heizt und kühlt automatisch
  • Kühlen soll zum Dry Aged gedacht sein, die Hysteres kann man dazu optional strenger schalten so dass die eingestellte Temperatur nicht überschritten werden kann
  • Heizen ???? hab ich mal dazu gesetzt, eine Anwendung dafür hab ich nicht so direkt
  • Abfrage der Temperatur sowie Luftfeuchtigkeit mit einem Internetbrowser per Lan /Wlan /Handy /Tablet....

Installation:
Die Dateien Rss.py und setup.py werden in das Verzeichniss /home/pi/Rss/ kopiert, die restliche Dateien kommen ins Verzeichnis /var/www/

Gebrauchsanweisung
Zuerst starten wir die Datei setup.py (sudo python setup.py) und geben die von uns gewünschte Werte bei der Abfrage ein.
!!!! Aufpassen !!!! die Werte müssen unbedingt richtig eingegeben werden, es gibt bis jetzt keine Begrenzung was eingegeben werden kann

Danach wird die Datei Rss.py gestartet (sudo python Rss.py), dieses Programm startet jetzt mit den in setup.py festgelegten Werten und läuft automatisch.
!!!Aufpassen!!! das Terminalfenster darf nicht geschlossen werden, sonst ist das Programm beendet

Wollen wir die Sollwerte im laufenden Betrieb ändern wollen, öffnen sie ein zusätzliches Terminalfenster und starten sie setup.py und geben sie die neuen Werte ein.
!!!!Aufpassen!!!! alle werte müssen bis zum Schluss eingegeben werden, die Werte werden zum schluss des Programms erst an Rss.py gesendet.

Wechseln sie zum Rss Terminal und überprüfen sie ob die neuen Werte übernommen wurden
screen.jpg
 

Anhänge

OP
OP
Tommy_j

Tommy_j

Fleischtycoon
ich hoffe heute Abend etwas Zeit zu finden, dann werde ich euch mal den Anschluss der Relayskarte zu dokumentieren
 
  • Like
Wertungen: ick

Reiny

Grillkönig
Hallo Tommy,

sehr schoen, nur weiter so!
Zum Thema "heizen" kann es sein, dass der Reifeschrank in einer Umgebungstemperatur von 16 Grad steht und man am Anfang der Salamireifung knapp ueber 20 Grad braucht. Das ist so ein Fall, wo man die Heizung braucht.


Gruesse, Reiny
 
OP
OP
Tommy_j

Tommy_j

Fleischtycoon
Ja Reiny aber das macht er im Automatikmodus automatisch.
Im Aumatikmodus wird einfach die Wunschtemperatur eingestellt und schon läufts, allerdings habe ich da etwas mehr Luft in der Hysterese gelassen um ein Aufschwingen zu vermeiden... Deshalb auch der extra Kühlmodus für Dey Aged wo wir doch lieber Graadgenau an die Gewünschte Temperatur halten
 

Brutzelnerd

Bundesgrillminister
Hi Tommy!
Cool, wie weit dein Projekt schon fortgeschritten ist, ich trte im Moment bissel auf der stelle, wird aber auch wieder besser!
Hast du in deiner Steuerung irgendeine Notfallfunktion? Wenn sich der PI irgendwo aufhängt, dass sich das ganze resetet? Ist mir schon 2 mal passiert, dass irgendwas nicht passte und dann ist der Controller "eingefroren" ond die Heizung war gerade an und lief natürlich dann auch erstmal munter weiter.
Ich habe zwar einen sogenannten Watchdog eingebaut, doch der macht nur nen softwarereset, was offensichtlich nicht reicht!
Bin am überlegen, ob ich einfach ne Zeitschaltuhr in die Stromversorgung klemme und immer mal den Strom unterbreche, somit Resetet der Controller!
Wenn ich nur Schinken reife, ändern sich auch nicht die Prarameter, aber ist natürlich nicht gerade die beste Art und Weise, ich muss mal sehen!
VG
Konrad
 
OP
OP
Tommy_j

Tommy_j

Fleischtycoon
Moin Konrad
Ja dafür habe ich die Funktion "def cleanup"
Sollte das Programm ein Fehler erzeugen werden sämtliche Relais auf 0 gesetzt.
Des weiteren werde ich noch eine Funktion erstellen die die Zeit zwischen den letzen Messungen misst, sollte während 30 Sekunden kein gültiger Wert gemessen werden,.schaltet alles ab.
Mit cronjob,einem Rasbian Program/Service, sollte es möglich sein das Programm neu starten zu lassen, aber da muss ich mich erst mal einlessen.
 

deraaf

Grillkaiser
5+ Jahre im GSV
Das geht doch mit einem cronjob? Schreib doch eine Semaphore weg, nach /tmp oder irgendwo hin. Und lass nen Job alle Minute oder so nachschauen was der Status ist. Wäre doch ne Idee?

Viele Grüße
Peter
 
OP
OP
Tommy_j

Tommy_j

Fleischtycoon
Ja cronjob führt mir ein Programm zu festgelegten Zeiten aus, jedoch macht er das ob das Programm schon läuft oder nicht...
Ich werde mir ein Script schreiben müssen was per Cronjob ausgeführt wird und dieses überprüft ob das Programm läuft und mir gegebenenfalls das Programm startet

if [ "$(ps ax |grep "criptname")" ];
then
echo "Script läuft schon";
exit;
else
/path/to/script/Script;
fi
 
OP
OP
Tommy_j

Tommy_j

Fleischtycoon
So heute mal etwas Zeit gehabt die Verkablung zu dokumentieren.
Auf den Bildern seht ihr das Relaysboard mit der externen Stromversorgung.
Das Relaysboard muss beim Raspberry extern mit 5v gespeist werden, da der Raspberry nicht genug Strom liefert.
Bei der Auslieferung sitzt rechts, da wo jetzt mein Stecker sitzt ein Jumper, dieser muss entfernt werden. An den Anschluss GND kommt die Masse und an JD-VCC die 5 Volt.
DSC_0875.JPG

DDafür empfehle ich wie auf den Bildern ein doppeltes USB-Netzteil zu benutzen.
DSC_0873.JPG


Jetzt werden noch die GPIO Ausgänge sowie einmal 3V vom Raspberry an das Relaysboard mittels weiblichen Jumperkabel gesteckt und schon läuft alles.
DSC_0876.JPG

Die Pinbelegung stelle ich heute Abend hier rein
 

Anhänge

  • Like
Wertungen: ick
OP
OP
Tommy_j

Tommy_j

Fleischtycoon
Schade @Reiny,
Es hätte mich nämlich gefreut wenn mein Tutorial hier wenigstens einen zum Nachbauen verführt hätte.
Aber wenn alles bis mal fertig ist und zur meiner Zufriedenheit läuft, werden wir einen Weg finden wenn du eine solche Steuerung haben möchtest.
 

ick

Putenfleischesser
5+ Jahre im GSV
Also ich werde es auf jeden Fall nachbauen, bin auch kein Experte, abder die Denkarbeit hast Du ja schon für uns übernommen :-)

Gruß
Rolf
 

Brutzelnerd

Bundesgrillminister
Hi Tommy!
Du hast je sogar noch paar Relais frei! Wird bei deinen Relais auch ein Transistor vorgeschalten oder kommen die Ausgänge direkt ran?
Ich bin am Überlegen, ob ich nicht auch so ein Board für meine Steuerung nutzen sollte, denn wenn die Transistoren und Widerstände schon verbaut sind, dann kann ich es ja als Anbauteil konzipieren, würde viel Arbeit sparen!
VG
Konrad
 

Brutzelnerd

Bundesgrillminister
Hi Tommy!
Hab gerade noch mal geschaut, werde auch so ein Relaisboard kaufen, die sind von Hausaus mit nem Optokoppler ausgestattet und vorallem echt preiswert, da kosten die einzelnen Relais schon mehr als dass ganze Board, ist als gekauft, danke für die Anregung!!
VG
Konrad
 

deraaf

Grillkaiser
5+ Jahre im GSV
Also @Tommy_j , wenn ich die Zeit finde bau ich das aber gerne nach!
Viele Grüße
Peter
 
Oben Unten