Posts by Matze208


    Resultat ist immernoch der Fehler 500..


    Hallo,


    schau mal unter /var/log/apache2/ das error.log an. Meiner Meinung nach sieht das eher nach einem Programmierfehler als nach einem Berechtigungsproblem. Wenn möglich mal den Inhalt des Scriptes posten, bzw. auch Teile des Error-Logs, zu dem Zeitpunkt, wo der Fehler auftritt.


    Gruß
    Matze

    Hallo,


    Mit python könntest du das mittels threading lösen. Wenn das Lied gestartet wird, den Blink-Thread starten, wenn das Lied gestoppt wird, den LED-Thread wieder stoppen.


    Gruß Matze

    Dein Ansatz gefällt mir echt gut :thumbs1:


    Das war das, was ich auch mal ursprünglich angegangen hatte, bis von mehreren Leuten gleichzeitig die Anforderung kam, dass alle Rauchmelder Signal geben sollen... Aber die Umsetzung mit der Sirene gefällt mir echt gut :bravo2:


    Wenn du eine Sternverdrahtung anstrebst, kannst du ohne großen Aufwand jeden Rauchmelder mit einem Optokoppler abfragen. Allerdings ist mir kein NC-Kontakt beim Rauchmelder zwecks Drahtbruchsicherheit bekannt.


    Beim Bus könntest du auf 1-wire zurückgreifen ... dann entfällt schon einmal der Aufwand der Adressierung. Außerdem kannst du den Bus dann relativ einfach abfragen, je nach Bauart der Sensoren erscheinen alle Rauchmelder auf dem Bus und du erhältst einen Alarm, wenn einer fehlt (Störung/Alarm), oder es ist kein Rauchmelder auf dem Bus zu sehen und es erscheint dann derjenige, der ausgelöst hat. Ich habe eine Kombination aus Verdrahtung und Adressierung mal auf dem Breadboard aufgebaut (2xRelais pro RM, durch "Schützverriegelung" merkt man, ob der Alarm vom RM oder von einem anderen kam). Allerdings habe ich die Idee aufgrund des großen Aufwandes wieder verworfen... :(


    Wäre super, wenn wir uns über deine Verdrahtung mal austauschen könnten


    Schönen Abend
    Matze

    Hallo,


    wie führst du den das Script aus?
    Weil dein Tag im Thema ist [Python], das Script ist aber von der Syntax her ein Bash-Script.


    Dann musst du das Script auch mit Bash ausführen

    Code
    bash meinBackup.sh

    oder ausführbar machen (chmod +x) und dann mittels

    Code
    ./meinBackup.sh

    ausführen.


    Gruß
    Matze

    Bisher kann ich nur zwei "Meldelinien" an die BMA verbinden. Ich habe mich in letzter Zeit eher auf die Programmierung der Software fokussiert, als auf die Hardware bzw. Verbindung der Rauchmelder.
    Privat kann ich nur auf Funkrauchmelder zurückgreifen, da ich noch zuhause wohne. Es lassen sich aber mehr Rauchmelder an den RPI anschließen. Mein Ziel war es, überhaupt eine Benachrichtigung zu erhalten, wenn es zu einer Rauchentwicklung kommt, welcher Rauchmelder ausgelöst hat wäre eher sekundär. Allerdings habe ich über eine Sternverdrahtung bzw. auch über ein Bus-System nachgedacht. Allerdings ist der Sinn von Funk- bzw. drahtvernetzten Rauchmeldern ja das, wenn einer auslöst, alle ein akustisches Signal geben, wofür ich noch keine brauchbare Lösung gefunden habe, das Ganze über Bus- oder Sternverdrahtung (Relais?) zu realisieren.

    Hallo zusammen,


    gestern kamen meine ersten selbst entworfenen Platinen an :bravo2:
    Das möchte ich euch natürlich nicht vorenthalten. Mit der Platine lassen sich 2x Auslöser und ein externes Gerät (Blitzleuchte, Sirene) über Optokoppler ansteuern.
    Außerdem ist die Ansteuerung des Displays mit Hintergrundbeleuchtung und der Taster zum zurückstellen der Anlage bereits möglich. Die Platinen sind so gebaut, dass sie mit einem Raspberrypi B+/2B in ein Hutschienengehäuse montiert werden können.


    Auch ist die Entwicklung der Software fortgeschritten, allerdings noch lange nicht abgeschlossen/veröffentlichbar.


    Hier noch ein zwei Bilder:
    140x250 300x175
    Grüße
    Matze

    Sorry für n bisschen OT:
    Du brauchst übrigens keine IP-Adressen aus dem privaten Bereich (192.168.0.0 - 192.168.255.255; 172.16.0.0-172.31.255.255; 10.0.0.0-10.255.255.255) "[font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]aus x sen[/font]", die privaten IP-Adressen werden und dürfen nicht ins Internet geroutet werden. Lediglich dein Router bezieht eine öffentliche IP-Adresse, der Rest läuft über NAT/PAT. Das wäre was anderes, wenn du eine IP-Adresse aus dem öffentlichen Bereich hättest, bzw. eine öffentliche Domain, dann solltest du sie hier im Forum zensieren.


    Viele von uns werden z.B. eine FritzBox daheim stehen haben und deshalb IP-Adressen im Bereich 192.168.178.1-192.168.178.254 für irgendwelche Hosts/Raspberrys vergeben haben. Und auch wenn du weist, dass ich eine FritzBox habe und das Gateway deshalb die 192.168.178.1 ist, kann man trotzdem keinen Angriff etc. starten.


    Deshalb musst du dir wg. den IP-Adressen auch keine Sorgen machen, wer hier alles im Forum "r[font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]um kreucht und fleucht[/font]" ;)

    Hallo,


    du kannst auch sagen, dass php code in html Files ausgeführt wird, obwohl die Datei *.html heißt
    mittels .htaccess Datei:

    Code
    AddType application/x-httpd-php php php4 php3 html htm


    oder in der apache Konfigurationsdatei


    Code
    <Directory /var/www/deinVerzeichnis>
    AddType application/x-httpd-php php php4 php3 html htm
    </Directory>



    Gruß Matze


    Ist es möglich den Programmcode und eine komplette Teilliste (empf. Rauchmelder) hier in das Forum zu packen?


    Ja das hatte ich vor, sobald die Software ausgereift ist. Zum jetzigen Zeitpunkt kann ich es noch nicht veröffentlichen, da die Software noch Fehler enthält...

    Hallo zusammen,


    ich habe über die Weihnachtsfeiertage und den Neujahreswechsel an der Software weitergeschrieben. Ein Großteil der Funktionen ist python-Script-seitig schon implementiert. Alertings über SMS und E-Mail funktionieren mittlerweile auch. Threading wurde hinzugefügt ... Die Weboberfläche ist auch weitergebaut worden, allerdings fehlen noch diverse Dinge (Auslesen aller Werte aus der GUI, Automatische Aktualisierung, etc.) aber es ist doch einen großen Schritt weitergegangen.


    Heute ging eine Bestellung für meine ersten PCBs raus, damit das Gebastel mit der Lochrasterplatine im Hutschienengehäuse ein Ende hat. Damit ist es möglich, zwei Auslöser anzuschließen (z.B. Sammelmeldung Rauchmelder über Funk oder Kabel und noch einen weiteren Auslöser (weitere Rauchmelder"linie", Funkmeldeempfänger, Wassermelder...)).


    Des weiteren ist ein Schalter über einen Optokoppler realisiert, womit sich dann z.B. Blitzleuchten, Hausgong, Sirene etc. einschalten lassen können. Auch wird ein Taster angeschlossen, der dazu dient, durch das Hauptmenü zu navigieren, bzw. einen aufgelaufenen Alarm zu quittieren. Und als letztes noch die Steuerung für die Relaisplatine, mit der sich mehrere Rauchmelder an einen zentralen Punkt zusammenführen lassen und man trotzdem den ausgelösten Rauchmelder erhält. Die Platine ist aber erst in der Entwurfsphase.


    Schöne Grüße
    Matze

    Irgendwie komisch ist auch, dass du im ersten while überprüfst, ob alle drei GPIO-Ports auf "HIGH" sind und anschließend versuchst du jeden Status einzeln abzufragen, ob jeder Taster (?) den Wert "HIGH" hat.
    Gruß
    Matze

    Rpi-noob da liegste halt doch daneben. Schade um die Hand ...
    Er hat ja bereits geschrieben, dass der Zugriff auch von einem anderen PC im LAN nicht funktioniert. Was den fehler schonmal auf das lokale netz reduziert.

    Hallo phpman
    Standardmäßig werden solche rauchmelder über 2-draht-kabel oder über Funk miteinander vernetzt. Stromzufuhr brauchst du keine verlegen, da die 10-jahres rauchmelder sowiso nach ihrer lebenszeit getauscht werden müssen. Von dem selbstumbau mit rj45 bin ich, wir im ersten post schon beschrieben komplett abgekommen, 1. wegen der vds zertifizierung, 2. wegen der störung durch die unterspannungserkennung der rauchmelder. Es gibt zwar rauchmelder, mit zentraler spannungsversorgung aber über sinn oder unsinn im privaten bereich lässt sich streiten. Zumal wir hier dann schon eher im bereich der kommerziellen BMAs sind.
    Gruß
    Matze

    Beschränkung auf ein bestimmtes Netz? In diesem fall nur von localhost?
    Aber ohne fehlermeldung oder posten der apache config können wir nur unsere glaskugel bemühen...
    Gruß
    Matze

    Hallo,


    hast du mehrere Instanzen des Scriptes gestartet? Oder ein Script gestartet und es nicht sauber beendet?
    Die Fehlermeldung besagt, das evtl. woanders bereits auf die GPIO-Schnittstelle zugegriffen wird.
    Ansonsten hat bei mir immer geholfen, am Ende des Scriptes oder bei Keyboard-Interrrupt ein

    Code
    GPIO.cleanup()

    einzufügen. Bzw. über try, except, finally und im finally block den GPIO.cleanup.


    Schöne Weihnachten
    Gruß
    Matze

    Hallo Berker,


    ich habe die neue BMA in ein neues Gehäuse umgezogen. Das Ganze wurde jetzt in einem Hutschienengehäuse platziert. Im Bild ist nur mein Standardtext mit dem Meldeempfänger, da dieser einfacher aufzurufen war :shy:
    200x175


    Die Programmierung der Software läuft zwar weiter, aber grad eher schleppend, weil es bei mir auch mit der Ausbildung jetzt gegen Ende zugeht. Ich habe allerdings nächste Woche Urlaub und hoffe bei der Entwicklung ein gutes Stück weiter zu kommen. Habe erst letzte Woche meine Relais aus China erhalten und kann dann erst die Modulare Rauchmelderplatine entwickeln. Bis jetzt kann ich nur die Zustände abfragen, wenn alle Rauchmelder zusammengeschaltet wurden und erhalte dann eine Sammelmeldung.


    Gruß
    Matze

    Hallo,


    ich habe das Ganze bei meiner BMA auch gemacht, um mittels zwei Tastern durch das Menü navigieren zu können (20x4 Display).
    Allerdings habe ich immer einen Wert in einer Variable gespeichert und dann die Ausgabe auf dem Display je nach Wert der Variable gemacht. Wenn ich dann im Menü auf den Punkt "Zurück" navigiert habe, ist er wieder in das Hauptmenü gesprungen. War alles ein größeres Python-Script


    Gruß
    Matze

    Hallo f7q,


    willkommen im Forum. Nun zu deiner Frage: Wenn du den Klingeltaster ohne Spannungsversorgung der Klingel verwendest (also als dedizierte Klingel), dann ist das kein Problem. Du musst lediglich mit einer PullDown-Widerstandsschaltung und einem Script (python-Interrupt) den aktuellen Zustand des Tasters überwachen. Wird der Taster gedrückt, schließen die Kontakte und du erhältst ein Signal am RPI welches du mit dem Script dann auswertest. GPIO Port ist in diesem Fall egal, solange du keinen Port nimmst, der eine Sonderfunktion hat.


    Willst du aber eine(n) Taster/Klingel nutzen, der eine Spannung durch die Klingel bzw. den Klingeltrafo erhält, dann musst du das Ganze anders aufbauen (Trennung vom Klingelstromkreis mit dem Stromkreis vom RPI), da der Raspberry maximal 3,3V an den GPIO-Ports verträgt.


    Schöne Grüße
    Matze