Fernüberwachung Gewächshaus

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Da mein Dad bald nen Gewächshaus hat, möchte ich folgendes realisieren:

    1. Überwachung der Temperatur (Innen, Außen)
    2. Luftfeuchtigkeit
    (3. geschlossene Fenster / Türen)
    4. Stromausfall (den Raspberry Pi durch Autobatterie absichern)
    5. Auswertung auf Webseite
    6. Alarmmeldung (Tür/Fenster, Temp > x°C) über UMTS Stick per SMS/Mail


    Ich wäre für Anregungen und Links sehr dankbar!

    Zu:

    Notstromversorgung


    Mfg Ghoethe

    -------------------------------------------
    Update: 21.08.2013

    Step 6: UMTS-Anbindung, leider hab ich nicht hinbekommen ihn direkt anzubinden (vielleicht zu doof, vielleicht zu schusselig, zu ungeduldig). Bin den Umweg über einen UMTS-Router gegangen: Hab mich für den "TP-Link 3012" entschieden. Ging völlig problemlos :)

    Hier meine angepassten Files:
    alarm.py
    temp-google.py
    mysqlbackup-date.sh
    avr-google.php // erweitert um den Time-Slider

    aktuell_0822.jpg


    -------------------------------------------
    Update: 08.08.2013

    Step 4: Automatische Mail bei Temp High/Low (Hilfe gabs hier) [welcher Sensor + aktuelle Temperatur wird in Mail angezeigt]
    Step 5: System-Infos auf der Webseite (Tutorial)

    -------------------------------------------
    Update: 06.08.2013

    Step 0: Apache,PHP,FTP,Mysql installiert , No-IP installiert --> Autostart (irgendwie klappt das bei mir nicht über init.d, deshalb umweg über php)
    Step 1: Türüberwachung erstmal wieder rausgenommen, auf insgesamt 7 Temp-Sensoren aufgestockt
    Step 2: Export-Funktion aller Temperaturdaten in CSV Datei eingefügt (Hilfe gabs hier) (Als Backup oder zum weiter rumspielen)
    Step 3: Tägliches Backup (MySQL Dump) auf externen FTP-Server (Hilfe 1 / Hilfe 2 / Hilfe 3)

    aktuell_0806.jpg
    (template von Chris1705)

    -------------------------------------------
    Update: 03.08.2013

    3. Test: Tutorial von ps915 umgesetzt, protokolliert den Türkontakt schön per sqlite Datenbank (autostart klappt leider noch nicht)
    4. Test: Tutorial von ThomasH umgesetzt und angepasst, DS18B20 Temperatursensoren werden jetzt per mySQL Datenbank aufgezeichnet und hübsch ausgewertet (autostart klappt bei mir)

    -------------------------------------------

    Update: 30.07.2013

    Komponenten jetzt alle da:

    Raspberry Pi
    Steckbrett + Cobbler
    Tür/Fenster Reed Kontakt
    AM2302 - Temperatur+Luftfeuchte Sensor (DHT22)

    1. Test: Script.1 meldet in der SSH Konsole "Door Alarm! (Hilfe durch Tutorial)
    2. Test: Script.2 schreibt alle 30sek die Temp+Luftfeuchte online in Google.Doc (Hilfe durch Tutorial)

    Bin bis hierhin schon echt begeistert, hoffe der weitere Verlauf ist genauso erfolgreich.

    ----------------------------------------------
    To-Do-Liste:

    - Alarmmeldung per SMS/Mail bei Tür/Fenster + Temperatur Abfall
    - Momentan hängt der Raspberry Pi noch per Lankabel am Router --> soll auf UMTS-Stick geändert werden
    - Relaiskontakt --> Meldung bei Stromausfall
    - Notstrom-Erweiterung

    Einmal editiert, zuletzt von ghoethe (25. August 2013 um 15:28)

  • Mit dem EFS-10 bekommst Du Probleme, mit dem kann der PI nichts anfangen, da mußt Du nach eine Messelektronik zwischenbauen. Sieh Dich hier mal um, hier wurden schon drei oder vier Typen beschrieben, die Du direkt anschließen kannst (I2C, seriell ...)

    Ein Steckbrett ist für den Einsatz in feuchter Umgebung ungeeignet, Du dürftest schon nach einer Woche Kontaktprobleme bekommen. Ich würde dafür auch sämtliche Platinen reichlich mit Plastikspray überziehen, dann leben die länger.
    Die Installation Apache, Php ... ist hier in den Tutorials ausgiebig beschrieben.
    SMS und EMail ist beides möglich.

  • Ich sehe das "unter Tropenbedingungen" schon auch eher als Extremtest ;) ...

    Vielleicht bringt ein einigermassen dichtes Gehäuse nur mit einem kleinen Lüfter zur Kühlung und zum kontrollierten Luftaustausch was. Dorthinein dann vllt. einen doppelten Boden und so einen Luftentfeuchter für Wohnungen.

    cu,
    -ds-


  • Ich sehe das "unter Tropenbedingungen" schon auch eher als Extremtest ;) ...

    Vielleicht bringt ein einigermassen dichtes Gehäuse nur mit einem kleinen Lüfter zur Kühlung und zum kontrollierten Luftaustausch was. Dorthinein dann vllt. einen doppelten Boden und so einen Luftentfeuchter für Wohnungen.

    cu,
    -ds-

    ich könnte mir eine IP65 Alukiste vorstellen, in der Erde eingebudelt, das Alu sorgt für den Wärmeabtransport, der PI könnte unter Umständen runter getaktet werden was seine Abwärme verringert, im Erdreich wird es vielleicht keine 60°C oder mehr warm ? wie in der Umgebungsluft ?

    Leitungen dicht rein und raus könnte eine Herausforderung werden....

    Schmelzkleber, Silikon im Schrumpfschlauch ?
    Das UMTS Modul müsste ja auf jeden Fall draussen bleiben, das wäre das nächste Problem, Wärme und Feuchtigkeit !

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • neben dem gewächshaus steht nen geräteschuppen, ca. 4m leitungslänge. dort wäre normale raumfeuchte und die könnte man mit luftentfeuchter unten halten, und dann bräuchte man es auch nicht in ne kiste packen.

    sind solche distanzen machbar?


  • neben dem gewächshaus steht nen geräteschuppen, ca. 4m leitungslänge. dort wäre normale raumfeuchte und die könnte man mit luftentfeuchter unten halten, und dann bräuchte man es auch nicht in ne kiste packen.

    sind solche distanzen machbar?

    Zur Distanz kann ich leider nicht viel sagen ... I2C ist wohl nicht machbar, 1Wire könnte funktionieren.

    Ich würde mir das aber trotzdem überlegen ... da hast Du stärkere Temeratur-/Klimaschwankungen und deshalb eher Probleme mit Kondenswasser. Den ganzen Schuppen mit Luftentfeuchter? Das wird imho nicht funktionieren ...

    Wie schon erwähnt ... der Pi in einer dichten Box mit kontrolliertem Luftfluss und einem Raumentfeuchter sollte m.E. schon ganz gut funktionieren ...

    cu,
    -ds-

  • I2C geht per Level-Shifter auch weiter. Bei dem Feuchtigkeitssensor kann ich nur wie oben auch, die seriellen Sensoren empfehlen. Die Stromversorgung würde ich ständig von der Autobatterie per Step-down beziehen. An die Batterie noch ein kleines Ladegerät.

    Mfg Maxl

  • die 3 zusätzlichen kühlkörper waren schon eingeplant. aber im dauerlast betrieb und mit UMTS stick?

    nochmal mit meinem dad gesprochen: luftfeuchte geht eigentlich (60-70%), nur von tropfen von oben sollte es geschützt sein, temperatur im winter ca. 5-6°C

  • Tach

    einer meiner Raspberrys läuft seit 75 Tagen.

    Der Raspberry ist sehr robust, die UMTS-Sticks stürzen gern mal ab, die sind nicht so ganz dauerbetriebsfest.
    Man kann aber ganz brutal das ganze mit einer Schaltuhr regelmäßig aus und wieder einschalten.

    Ich nehme 1Wire-Fühler und einen offiziellen Zwischenstecker und selbstgebaute Kabel.

    Mal zur Ansicht: http://www.tuboletti.com

    (Zwei der Anlagen laufen allerdings nicht über Raspberrys sondern mit C-Control und Server)

    Wenn Fragen sind, ich antworte noch auf eMail :)

    tuboletti

    Einmal editiert, zuletzt von PlainSmoke5506 (3. August 2013 um 02:37)

  • Hab mir die Seite mal angeschaut: interessanter Ansatz, aber jeden Tag Bild-Datei sichern?

    hab das nach diesem Tutorial mal probiert und angepasst, alles schön ne mySQL Datenbank mit Visualisierung, soll ja auch was fürs Auge sein :)

    update siehe oben :)

    Einmal editiert, zuletzt von ghoethe (3. August 2013 um 05:48)

  • Ja warum denn keine Bilddatei sichern? So ein Bild ist bei mir ca. 24-32 KB gross.

    Seit 2 Monaten wird der Restspeicherplatz von 1,8 GB auf meiner SD-Karte scheinbar nicht bedeutend kleiner.

    http://www.tuboletti.com/reports/4f8332…ce1/.memory.txt

    http://www.tuboletti.com/reports/4f8332…ce1/.uptime.txt

    Davon abgesehen, werden die Bilder im Internet abgelegt und ich könnte sie nach einiger Zeit automatisch auf dem Raspberry löschen lassen.

    Ich gebe zu, meine Methode ist ganz sicher nicht im Stil der Zeit, sondern eben selbstgemacht und unprofessionell, aber sie funktioniert.

    Und der Raspberry gibt auch Alarme aus, über gesms und über ssmtp.

    Noch Fragen?

    Einmal editiert, zuletzt von PlainSmoke5506 (3. August 2013 um 16:15)

  • Hallo Hallo :)

    Hä?

    Wie soll das denn gelöst sein? Wie ich schon sagte, ich bin im Herzen Afrikaner. Ich lasse auf dem Raspberry das Bild zeichnen mit Gnuplot und dann schiebe ich es mit lftp auf meine Internetseite. Peng fertig aus.

    Jede Minute Daten abfragen, jede 14. 29. 44. und 59. Minute das Bild ins Internet schieben. Thats all.
    Hier die Crontab:

    @reboot sleep 40 && sudo owfs --Celsius --usb --allow_other /home/1wire/
    */1 * * * * /home/testman/one_wire/templog_home.sh >> one_wire/`date +\%Y-\%m-\%d`.dat
    57 23 * * * /home/testman/one_wire/rm1970.sh
    14,29,44,59 * * * * /home/testman/one_wire/process.sh `date +\%Y-\%m-\%d`
    14,29,44,59 6-23 * * * /home/testman/one_wire/alarm_min.sh


    templog_home.sh:
    #!/bin/bash

    null="$(date --date 0 +%s)"
    stempel="$(date +%s)"
    uhrzeit="$(date +%t%H:%M)"
    echo "scale=2; (($stempel - $null)/3600)"|bc | sed 's/^\./0./' | tr -d '\n'
    cat /home/1wire/28.3CE8EB030000/temperature9
    cat /home/1wire/28.3CBDEB030000/temperature9
    cat /home/1wire/28.97A2EB030000/temperature9
    cat /home/1wire/28.90ADAA020000/temperature9
    cat /home/1wire/28.80ACAA020000/temperature9
    cat /home/1wire/28.F68AAA020000/temperature9
    cat /home/1wire/28.46B7EB030000/temperature9
    cat /home/1wire/28.16BFEB030000/temperature9
    cat /home/1wire/28.46E8EB030000/temperature9
    cat /home/1wire/28.7FAAEB030000/temperature9
    cat /home/1wire/28.E0E8EB030000/temperature9
    echo "$uhrzeit"


    rm1970.sh:
    #!/bin/bash
    #Programm rm1970.sh

    if [ -f /home/testman/one_wire/1970-01-01.dat ];then
    rm /home/testman/one_wire/1970-01-01.dat
    fi

    exit 0


    process.sh:
    #!/bin/bash
    date +%s > /home/testman/one_wire/.alive.txt
    df -h > /home/testman/one_wire/.memory.txt
    uptime > /home/testman/one_wire/.uptime.txt
    /home/testman/one_wire/clean.sh
    /home/testman/one_wire/one_wire.plot $1
    /home/testman/one_wire/copy.sh $1
    /home/testman/one_wire/lftp_transfer.sh $1 &


    lftp_transfer.sh:
    #!/bin/bash
    lftp -u der_user,das_passwort http://www.die_domain.de <<MARKE
    lcd /home/testman/one_wire
    cd /4f833298-738a-452c-8aeb-f975516d4ce1
    put aktuell.png
    put .alive.txt
    put .memory.txt
    put .uptime.txt
    cd /4f833298-738a-452c-8aeb-f975516d4ce1/archiv
    put $1.png
    quit
    MARKE


    copy.sh:
    #!/bin/bash

    cp /home/testman/one_wire/$1.png /home/testman/one_wire/aktuell.png


    clean.sh:
    #!/bin/bash
    #Programm clean.sh

    if [ `pgrep lftp` ]; then
    echo "LFTP hing fest "`date +%Y-%m-%d\ %H:%M` >> clean.log
    killall -9 lftp
    fi

    exit 0


    one_wire.plot:
    #!/bin/bash
    gnuplot <<MARKE

    # Plotten von gemessenen Daten 15.06.2013
    # One Wire Fühler, Raspberry Computer, Übertragung über Drahtnetzwerk
    #====================================================================

    set terminal png
    set terminal png size 1280,1024
    set output '/home/testman/one_wire/$1.png'

    set title 'Temperaturverlauf $1'
    set yrange [-25:100]
    set ytics 5
    set y2range [-25:100]
    set y2tics 5
    set y2tics border
    set xrange [-0.5:24.5]
    set xtics rotate 1
    set x2range [-0.5:24.5]
    set x2tics rotate 1
    set x2tics border
    set xlabel 'Uhrzeit'
    set ylabel 'Temperatur °C'
    set mxtics 2
    set mytics 5
    set grid x
    set grid y

    plot '/home/testman/one_wire/$1.dat' using 1:9 title 'Kessel' with lines lc rgb "black" lw 2, \
    '/home/testman/one_wire/$1.dat' using 1:6 title 'Warmwasser_1' with lines lc rgb "red" lw 2, \
    '/home/testman/one_wire/$1.dat' using 1:7 title 'Warmwasser_2' with lines lc rgb "orange" lw 2, \
    '/home/testman/one_wire/$1.dat' using 1:8 title 'Zirkulation' with lines lc rgb "magenta" lw 2, \
    '/home/testman/one_wire/$1.dat' using 1:5 title 'Kaltwasser' with lines lc rgb "blue" lw 2, \
    '/home/testman/one_wire/$1.dat' using 1:2 title 'Außen' with lines lc rgb "cyan" lw 2
    MARKE


    alarm_min.sh:
    #!/bin/bash
    #Programm alarm_min.sh

    if [ ! -f /home/testman/one_wire/alarm_min.lock ];then
    alarm_temp=$(cat /home/1wire/28.F68AAA020000/temperature9 | tr -d [:blank:])
    if [ $(echo "$alarm_temp < 50"| bc) -eq 1 ];then
    /home/testman/one_wire/alarm_min_sms.sh > /home/testman/one_wire/stack.txt
    /home/testman/gesms 017xxxxxxxx --file /home/testman/one_wire/stack.txt
    /home/testman/one_wire/alarm_min_mail.sh > /home/testman/one_wire/stack.txt
    /usr/sbin/ssmtp adress@tuboletti.com < /home/testman/one_wire/stack.txt
    date +\%s > /home/testman/one_wire/alarm_min.lock
    fi
    else
    var1=$"`date +\%s`"
    var2=$"`cat /home/testman/one_wire/alarm_min.lock`"
    var3=$(($var1 - $var2))
    if (("$var3" > "3600")) ;then
    rm /home/testman/one_wire/alarm_min.lock
    fi
    fi

    exit 0


    alarm_min_sms.sh:
    #!/bin/bash

    alarm_temp=$(cat /home/1wire/28.F68AAA020000/temperature9 | tr -d [:blank:])
    echo "+4940telefon, Strassenweg Nr, PostLeitZahl Ort, WW $alarm_temp C, Soll 50 C, DHH re, Keller,\
    Kessel Sieger Gas Guss 16 kW, Speicher Buderus 135 L"


    Das wäre so das Grundgerüst, die alarm_min_mail.sh fehlt hier noch, ist aber trivial.

    Letztendlich kann durch das aktive Erstellen eines Mailtextes auch was Aktuelles mit aufgenommen werden, wie ein Fühlerwert oder eine Uhrzeit.

    Noch die Crontab von root:
    @reboot sleep 10 && ntpdate pool.ntp.org >> ntpdate.log
    0 0 * * * ntpdate pool.ntp.org >> ntpdate.log


    Bye

    Einmal editiert, zuletzt von PlainSmoke5506 (3. August 2013 um 19:53)

  • Und jetzt ich:

    Der Netzwerkkabel-Raspberry ist eigentlich tatsächlich fertig, man muss sich wundern.

    Ein WLAN-Raspberry läuft auch auf die gleiche Weise, WLAN ist aber erstaunlich unzuverlässig wenn auch nur ein klein wenig irgendwas im Weg steht.

    Was noch richtig Erprobung braucht, ist der USB-Internetstick-Raspberry.

    Ich dachte die Übertragung geht per GPRS, das stimmt auch oft, manchmal gibt es aber keine Übertragung über Stunden oder Tage und der Raspberry ist verloren. Sowas kann ich dann nicht gebrauchen.

    Vermutlich gehe ich wieder einen Schritt zurück und sende die Daten doch wieder per SMS auf einen speziellen Server,
    der zeichnet dann die Bilder und macht die Alarme.

    Meine Überwachungsmaschine soll nicht zwingend auf einem Raspberry laufen. Es geht jeder Linux-Computer dessen Stromverbrauch man zu tragen bereit ist.

    Sämtliche angeschlossenen Teile müssen über USB angeschlossen sein, alle Teile müssen handelsüblich sein, alle Teile müssen preisgünstig sein. Vorzugsweise eben auch gebrauchte Teile.

    Der Raspberry wurde von mir ausgewählt weil er sehr wenig Strom verbraucht und weil es dafür ein Arch Linux gibt.

    Ich würde auch jede andere Basis nehmen, wenn ich denn damit umgehen könnte.

    Jetzt mal nicht lachen, die Dinger heißen wirklich so: Hersteller ist Pololu und der Baustein heißt tatsächlich "Wixel Programmable USB Wireless Module"

    Ein hochinteressantes Teil, diverse Eingänge aller Art, USB-Anschluss, ein 2,4 GHz Sender und Empfänger, etwas weiterer Betriebsspannungsbereich, leider in C programmierbar und damit bringe ich mich fast um. Ich habe 3 Stück von den Dingern, die sind auch noch billig.

    http://www.pololu.com/catalog/product/1336

    Oft brauche ich für meine Zwecke nur 6 Temperaturfühler und das Wixel Modul kann wohl auch auf RS232 aufgepeppt werden, irgendwie. Das ginge dann wieder auf ein klassisches Siemens GSM-Modem.

    Aber jetzt ist erstmal der Raspberry aktuell.

    Bye

  • Ähem...

    ich soll mich ja nicht selber loben, aber habe ich nicht irgendwie automatisches Übertragen per FTP gebastelt, siehe oben?

    Und selbst ausgelöste eMail?

    Tuboletti ist verwirrt...

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!