Beiträge von luetzel

    Tach'schen,

    Anleitung für den PIR sensor gibt es auf diesem Blog:

    Wenn Dein Python script auch noch was anderes machen soll als den PIR-Sensor abfragen, dann würde das Grundgerüst mit Interrupt für den PIR-Sensor, etwa so aussehen (auf die Schnelle ...):

    Im Netz findest Du da sicher noch mehr Code-Beispiele.

    Nun gut, da findet man eigentlich zahlreiche Beispiele mit einer einfachen Google-Suche, aber weil ich gerade Zeit habe:

    Eine CSV Datei ist schon mal eine gute Lösung, aber wenn Dein Sensor 24/7 läuft kommen da mit der Zeit ne Menge Daten zusammen und wenn Dich das "Fieber" gepackt hat, dann werden da sicherlich noch mehr Sensoren angeschlossen.

    Ich rate Dir deshalb die Daten in einer MySQL-Datenbank oder mit SQLite zu sichern. Die Daten kann man sich dann nämlich auch über das Netz holen, ggf. auch über OBDC in OpenOffice oder Excel importieren. Wenn man anschließend einen Plot erstellen möchte kann man die benötigten Daten immer noch in eine CSV exportieren und zugleich unerwünschte oder fehlerhafte Messwerte rausschmeissen.

    Um Plots zu erstellen gibt es 'ne Menge Möglichkeiten. Das geht mit R oder ganz klassisch mit GNUplot. Wenn man einen Webserver (apache, lighttpd oder nginx) auf dem Pi hat, kann man solche Plots "On-The-Fly" generieren z.B. mit JGraph. Diese Plots sind dann zwar auf die Minute aktuell, es kostet den Pi aber eine Menge Resourcen bei jedem Seitenaufruf einen neuen Plot zu generieren.

    Etwas ressourcen-schonender geht es so:

    Die Daten speichere ich in einer MySQL Datenbank. In 10 Minuten Intervallen oder nach Belieben exportiere ich den gewünschten Datensatz in eine CSV Datei z.B. im Format:

    timestamp*;temp1;hum1

    *timestamp = UNIX Zeitstempel in Sekunden seit dem 01.01.1970

    Mit GNUPlot kann man dann den Plot erstellen. Dabei kann man sogar mit den Daten rechnen - z.B. aus Temperatur und rel. Luftfeuchte den Taupunkt bestimmen.

    Das klingt zwar nach vielen einzelnen Schritten, doch kann man das alles in EINEM bash script unterbringen :cool: , das man dann nur noch per crontab alle X minuten laufen lässt. Den Plot kann man dann
    als PNG Datei speichern und z.B. auf einer Webseite einbinden.

    day.png

    Das bash script findest Du in meinem Blog-Posting, dass ich vor einiger Zeit mal geschrieben habe.

    Du must im Script die Pfade zu den Dateien (CSV, plot.png) ändern, sowie die Nummern der CSV-Spalten in der "plot" Zeile, die für den Plot verwendet werden sollen. Mit den Kommentaren in meinem bash script solltest Du jedoch klarkommen.

    Und: etwas Geduld mit meinem Blog - die Seiten laden manchmal etwas langsam, weil mein Blog auf einem RasPi bzw. BananaPi läuft :thumbs1:


    Hm ich kann dir zwar nicht sagen wo der BMP085 bestellt wird, wohl aber das er soweit ich weiß auf nem Breadout-Board sitzt, also wo man eine Stiftleiste anbringen kann.

    Allerdings unterscheidet sich der BMP085 von der 1.Sammelbestellung zu dem von Adafruit.
    Den ich gerade vor mir liegen habe nennt sich GY-65 und sieht so aus wie > hier < zu sehen.

    Beim BMP085 von Adafruit ist auch noch ein Converter verbaut der 5V auf 3V3 runter regelt sowie ein i2c Levelshifter - deshalb sind da mehr Bauteile auf der Platine.

    Ah Danke - sehr gut! Mit einem Breakout-Board macht das ja dann keine Probleme. :thumbs1: Danke für die schnelle Antwort!

    Mir ist noch eine Frage zum BMP085 in den Sinn gekommen. Ich besitze schon einen BMP085 auf einem Adafruit Breakout-Board. Den kann man ja einfach auf ein Breadboard stecken.

    Wenn ich das richtig verstehe ist der Sensor den man hier mitbestellen kann unbeschaltet, d.h. so wie er im BOSCH Datenblatt abgebildet ist. Richtig? :s

    Hat jemand Erfahrungen ob man den auch auf einem Stripeboard unterbringen kann? Sind ja keine Beinchen dran wie beim DHT22 oder Dallas Temperatursensor, sondern nur Lötpunkte. :s

    Ich habe meine Platinen auch schon mit Heißkleber im Gehäuse befestigt. Das hält sehr gut und der Kleber läßt sich ja auch noch modellieren, bzw mit einem Fön wieder lösen.
    Wenn es nicht unbedingt "Profi"-Gehäuse sein müssen, dann verwende ich auch schon mal Frühstücksdosen aus Plastik mit aufklappbarem Deckel (BHT ca. 100 x 60 x 75 mm) für 50 Cent. Da passt sogar ein Half-Size Breadboard rein. Das kann man auf dem Boden festkleben. Im Deckel habe ich z.B. 16x2 LCD Displays, Schalter oder LEDs verbaut. In die Seite passt sogar ein größerer PIR Sensor. Einen Schlitz für das Flachbandkabel/T-Cobbler kann man mit einem Dremel hineinfräsen. Das Ergebnis sieht sauber verarbeitet aus und ist recht gut vor Staub und Umwelteinflüssen geschützt, ist also durchaus auch Outdoortauglich.

    Die genannten Tips (Buch kaufen, Starterkit) kann ich voll unterschreiben. Von einem Banana Pi (BaPi) würde ich einen Anfänger jedoch abraten.

    Ich habe kürzlich meinen Raspi Web-Server mit Wordpress und MySQL auf einen Banana Pi migriert - die Performance ist zwar etwas besser und man kann auch eine SATA Festplatte anschliessen, doch gibt es noch zahlreiche Bugs, die nicht so schnell gefixt werden, weil die Community für den BaPi recht klein ist.
    Die Entwicklung konzentriert sich wohl hauptsächlich auf Treiber für die GPU, weil der BaPi verkauft wurde, bevor die Hardwarebeschleunigung der Mali GPU überhaupt richtig unterstützt wurde.

    Man muss teilweise selbst Hand anlegen und den Kernel patchen - das würde ich einem Anfänger nicht so ohne Weiteres zutrauen, zumal dafür auch ein Cross-Compiler benötigt wird. Beispiel: Es gibt einen ärgerlichen cpu_freq Bug, der zu Messfehlern ("Spikes") diverser Sensoren führt (hier DS18S20 und DHT22), wenn man die CPU Frequenz nicht konstant über 600 Mhz hält. Der Bug ist mindestens seit einem halben Jahr nicht gefixt. Es gibt zwar einen Workaround, aber den patch muss man dann selbst in den Kernel kompilieren.

    Also: Fang lieber mit einem RasPi an, da ist der Support wesentlich besser und der Kernel bzw. die Linux Distris sind bereits optimiert für einen stabilen Betrieb.

    Hallo Uwe,

    das klingt ja schon mal besser - zum WLAN Drop gibt es jedenfalls zahlreiche Einträge im Forum der raspberrypi.org. Dort hatte ich auch den Tip bezgl. des PowerSave gefunden. Weil das Dongle
    "eingeschlafen" war, konnte ich mich nicht mehr auf dem Pi einloggen, bzw. erst nach dem x-ten
    Versuch oder sogar Reboot. Unter Windows, mit Putty ist dann immer die Verbindung nach kurzer Zeit abgebrochen.

    Ein weiterer Tip wäre noch das WLAN nicht üder die wpa_supplicant.conf sondern in der /etc/network/interfaces zu konfigurieren, etwa so:

    auto lo
    iface lo inet loopback
    iface eth0 inet dhcp
    auto wlan0
    allow-hotplug wlan0
    iface wlan0 inet dhcp
    wpa-ssid MeinAccessPoint
    wpa-psk 1234567890

    Grüsse,

    luetzel

    Das Problem kenne ich. Ist Dein Pi über WLAN verbunden? Ich hatte die gleichen Symptome weil die WLAN Verbindung kurzzeitg unterbrochen wurde. Das liegt meistens an der PowerSave-Funktion des WLAN Dongles. Bei einem Dongle mit dem weit-verbreiteten Realtek Chip kann man eine

    /etc/modprobe.d/8192cu.conf

    Datei anlegen, und zwar mit dem Inhalt:

    # Workaround for dropping connections because power save
    options 8192cu rtw_power_mgnt=0 rtw_enusbss=0

    Die Verbindung sollte nicht mehr abbrechen. (Reboot bzw. Reload des Moduls erforderlich).

    Falls Du

    smsc95xx 1-1.1:1.0 eth0: unexpected urb length 0

    in /var/log/messages findest, und der Pi nicht über eth0 verbunden ist, kann man auch noch eth0 per initscript deaktivieren. Das ist hier beschrieben. Es gibt/gab wohl einen Bug im USB-Treiber des Pi, der
    bei den B Modellen auftritt und zu einer Unterbrechung der Verbindung geführt hat. Die B+ Modelle
    sind davon wohl nicht mehr betroffen.

    Für das gleiche Geld gibts auch Teile im Amazon Marketplace. Habe da schon diverse Teile gekauft. Man muss schon etwas auf die Bewertungen der Verkäufer achten. Zwar wird da meistens der Versand per Luftpost angegeben, aber die Lieferzeit ist oft größer als 14 Tage. Die kürzeste Lieferzeit war mal 7 Tage aus Hong Kong. Der Zoll macht beim Amazon Marketplace in der Regel keine Probleme, wenn der Wert unter der Freigrenze ist. Allerdings ist die Verpackung oft nicht so toll. Habe mal einen Gassensor bestellt, dessen Explosionsschutzgitter im Luftpolsterumschlag total zermatscht wurde.

    Probleme gibts auch manchmal mit gefälschten Chips. Habe kürzlich ein Serial-USB-TTL Konverter gekauft. Der funktioniert auch einwandfrei. Hat leider einen gefälschten FTDI Chip. Den kann man so ohne weiteres nicht erkennen. Die böse Überraschung kam dann mit dem Windows-Treiber, der die Device-Id geändert hat und damit den Koverter unbrauchbar ("bricked") gemacht hat.

    Der Vorteil beim Marketplace ist jedoch, dass man das Geld ggf über Amazon zurückbekommen kann - die Verkäufer aus China sind da meist sehr sensibel gegenüber schlechten Bewertungen. Da kann man schon ganz gut Druck ausüben. Aber meist sind die Teile auch so billig, dass es nicht ins Gewicht fällt, wenn mal was nicht ankommt.

    Tach'schen,

    diese LCDs anzusteuern ist kein Hexenwerk. Ich habe mehrere davon bei Reichelt für €6.50, erstanden, die ich für ATtiny45/85/84 und Arduino Projekte verwendet habe. Der Nachteil ist sicherlich der "Verbrauch" an GPIO pins. Ich habe deshalb ein LCD Adapter mit einem 74HC595 shift register gebaut. Damit lässt sich das Display mit nur noch 3 Pins ansteuern. Mit der WiringPi2-Python library geht das dann auf einem RasPi auch sehr komfortabel. Für den Arduino gibt es eine angepasste HC595 Library.

    Auf meinem Blog http://luetzels.raspiblog.com findest Du eine Beschreibung, incl. Python Skript. Bitte etwas Geduld beim Laden der Seite, das kann manchmal eine Minute dauern, weil der Server auf einem RasPi gehostet wird :thumbs1:.

    Den Adpter kann man für wenige Euro auf einem Stripboard zusammenlöten - ich habe mir gerade testweise eine Platine bei Fritzing.org bestellt (wird Ende August geliefert). Wenn die Platine funktioniert, werde ich die Fritzing Datei auf meinem Blog veröffentlichen. Bei Interesse könnte man auch eine Sammelbestellung organisieren, dann liegen die Kosten (ab 10 Stück) für die Platine ohne Bauteile bei ca. €5.50.

    Gruß aus Berlin,

    luetzel