Beiträge von FFA

    Hier mal mein Code, die Belegung der PIN sollte sich aus den Kommentaren im Code ergeben.

    Sicherlich kein Meisterstück, da ich mich mit Selbst-lernen und Trial and Error versucht habe.

    Funktioniert aber recht zuverlässig.

    Für Verbesserungsvorschläge bin ich offen.

    Funktionsablauf:

    Arduino liest Mikrowellensensor oder PIR aus.

    Sobald eine Bewegung erkannt wird, wird der TV eingeschaltet mittels Relais. Nach kurzer Wartezeit sendet die IR das Signal aus dem Standby aufzuwachen, gleichzeitig beginnt ein Countdown zu zählen.

    Bei erneuter Bewegungserkennung wir der Countdown zurückgesetzt.

    Bei Ende des Countdown wird das Relais abgeschaltet und Sicherheitshalber danach ein IR -Signal gesendet den TV auszuschalten (Redundanz für defektes Relais).

    Zum Debug ist auch ein SerMon inkludiert.


    Benötigt wird:

    Arduino Nano (genügt für die wenigen Funktionen) Ebay

    PIR-Sensor oder Mikrowellensensor Ebay

    Relaiskarte (nur Beispiel da viele nicht 230V zulässig sind!!) Ebay

    IR LED Ebay

    IR Sensor (zum einmaligen Einlesen der Fernbedienungssignale) Ebay

    Der Code funktioniert mit Relais als Öffner, da so bei einem Relaisausfall auch die IR an und abschalten kann.

    (Auch manuelles einschalten ist somit noch möglich). Allerdings kann so kein SSR verwendet werden!

    Infolgedessen kann auf ein Relais aber auch komplett verzichtet werden.


    Zum einmaligen Auslesen der Fernbedienung des TV folgenden Code verwenden:


    Und hier der Code der letztendlich auf dem Arduino läuft.


    Alternativ zu irsend.sendNEC(data, bits) müssen folgende Befehle ja nach TV Marke verwendet werden:

    irsend.sendSony(data, bits)
    irsend.sendRC5(data, bits)
    irsend.sendRC6(data, bits)
    irsend.sendRaw(buf, len, hertz)

    Andreas herzlichen Dank!!!

    Genau das war mein Problem, das Stichwort und Ort sind das Minimum.

    Nun hat aber danke der schlechten Qualität des Faxes das Wort "Stichwort" nicht existiert.

    Hab dann ein Pattern ohne diese angelegt welches dann eben nicht funktioniert hat.

    Meine CPU ist Intel Atom x5-Z8500 4x 1.44GHz.

    Die Auswertung dauert nur Sekunden dennoch bringt er mir immer die Fallbackanzeige dabei hat es ja schon vorher funktioniert.

    Selbst wenn ich nur:

    Schlagw{{SONDERZEICHEN}}{{SACHVERHALT}}

    {{BELIEBIGERINHALT}}

    benutze funktioniert es nicht.

    Bei mir liest der Arduino einen Mikrowellensensor aus. Falls Bewegung erkannt wird schaltet zuerst das Relais die Stromzufuhr an.

    Danach gibt eine IR Diode dem Fernseher das Signal aus dem Standby aufzuwachen.

    Dann ganz normal mittels Countdown laufen lassen und bei 15 Minuten ohne Bewegung schaltet er wieder ab.

    Funktioniert bei uns ganz gut. Vor allem da der Mikrowellensensor schon anschlägt wenn jemand vor der Tür oder dem Tor steht.

    Koordinaten{{SONDERZEICHEN}}X{{SONDERZEICHEN}}{{RECHTSWERT}}{{SONDERZEICHEN}}y{{SONDERZEICHEN}}{{HOCHWERT}}

    {{SONDERZEICHEN}}EINSATZGRUND{{SONDERZEICHEN}}

    Schlagw{{SONDERZEICHEN}}{{SACHVERHALT}}

    {{BELIEBIGERINHALT}}

    Bei der Auswertung der Faxalamierung erhalten wir folgenden Fehler:

    ERROR FeuerSoftware.EinsatzMonitor.EinsatzMonitorBackend.MailParser.PatternData Fehler beim Auswerten des Einsatz-Regex: System.Text.RegularExpressions.RegexMatchTimeoutException: Zeitüberschreitung des RegEx-Moduls beim Versuch, ein Muster mit einer Eingabezeichenfolge in Übereinstimmung zu bringen. Dies kann viele Ursachen haben, darunter sehr große Eingaben oder übermäßige Rückverfolgung aufgrund von geschachtelten Quantifizierern, Rückverweisen und anderen Faktoren.

    bei System.Text.RegularExpressions.RegexRunner.DoCheckTimeout()

    bei System.Text.RegularExpressions.RegexRunner.CheckTimeout()

    bei System.Text.RegularExpressions.RegexInterpreter.Go()

    bei System.Text.RegularExpressions.RegexRunner.Scan(Regex regex, String text, Int32 textbeg, Int32 textend, Int32 textstart, Int32 prevlen, Boolean quick, TimeSpan timeout)

    bei System.Text.RegularExpressions.Regex.Run(Boolean quick, Int32 prevlen, String input, Int32 beginning, Int32 length, Int32 startat)

    bei System.Text.RegularExpressions.Regex.Match(String input, Int32 startat)

    bei System.Text.RegularExpressions.Regex.Match(String input)

    bei FeuerSoftware.EinsatzMonitor.EinsatzMonitorBackend.MailParser.PatternData.GetEinsatzDaten(String text)

    Die Pattern sollten nur xy Koordinaten auswerten und das Einsatzstichwort dennoch kommt dieser Fehler.

    Kann wer helfen ich weiß nicht mehr weiter.