Anleitung Nachbau Bewegungsmelder innen HM-SEC-MDIR-2

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

ivo-int
Beiträge: 300
Registriert: 13.04.2020, 08:55
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 37 Mal
Danksagung erhalten: 16 Mal

Re: Anleitung Nachbau Bewegungsmelder innen HM-SEC-MDIR-2

Beitrag von ivo-int » 31.10.2020, 20:01

jp112sdl hat geschrieben:
31.10.2020, 13:35
ivo-int hat geschrieben:
31.10.2020, 13:21
Im Moment komme ich nicht dahinter was die Flankentriggerung auslöst. Was könnte ich noch versuchen?
10k zwischen PIR_PIN und GND.

Ein offener Pin, der als INPUT initialisiert ist und in keine Richtung (up oder down) gepullt wird, fängt alles Mögliche an Störungen ein.
Das ist mir auch bekannt. Die Atmega sollten doch eigentlich interne Pullup Wiederstände besitzen.

Ich habe bereits mit verschiedenen Werten (>10k Ohm) bereits Versuche gemacht. Die mit Pullup oder auch mit Pulldown, je nach Variante des Pir.

Nur dann wird keine Bewegung mehr detektiert. Kennst du die Spannung bei welchem der High-Low Status des Eingang und dann der Interrupt ausgelöst wird?
_______________________________________________________________________________________________________
Raspberrymatic auf einem Raspi 4 4GB (HB-RF-USB-2) mit 2 LAN Gateways,
42 RF Geräte, 4 IP Geräte und 21 Cuxd Geräte, 24 RF Eigenbau Geräte
hm_pdetect, E-Mail, XML-API, JB HB Devices, HB-TM-Devices-AddOn, CUx-Daemon, CCU-Historian auf einem separaten Raspi

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: Anleitung Nachbau Bewegungsmelder innen HM-SEC-MDIR-2

Beitrag von jp112sdl » 31.10.2020, 20:22

ivo-int hat geschrieben:
31.10.2020, 20:01
Die Atmega sollten doch eigentlich interne Pullup Wiederstände besitzen.
Haben sie natürlich. Jedoch muss der Pin dann auch mit INPUT_PULLUP initialisiert werden.
Das in dem Fall (Motion.h) generisch zu machen, ist/war vielleicht wenig sinnvoll im Zusammenspiel mit den PIR-Sensoren!?
Keine Ahnung, da kenne ich mich nicht aus.
Du könntest sonst auch testweise in der Motion.h von INPUT auf INPUT_PULLUP ändern.
ivo-int hat geschrieben:
31.10.2020, 20:01
Kennst du die Spannung bei welchem der High-Low Status des Eingang und dann der Interrupt ausgelöst wird?
Laut Datenblatt
LOW=<0,3*VCC
HIGH=>0,5*VCC

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

ivo-int
Beiträge: 300
Registriert: 13.04.2020, 08:55
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 37 Mal
Danksagung erhalten: 16 Mal

Re: Anleitung Nachbau Bewegungsmelder innen HM-SEC-MDIR-2

Beitrag von ivo-int » 01.11.2020, 14:55

Hallo Jerome

Ich und du waren auf dem "Holzweg" :shock:. Dem Problem bin ich aber jetzt auf die Spur gekommen.

Es lag auch nicht an den Pullup und Down Widerständen. In meiner Schaltung hatte ich einen Pullup verbaut.

Ich habe mich zu sehr von den Schaltungen auf Seite 1 dieses Treads leiten lassen. Der AM312 an einer Spannungsquelle >3V hat auch bei mir funktioniert. Nur habe ich eine gebrauchte Lithium Batterie verwendet die um die 2,9V im Leerlauf hat.

Somit nahm ich den AM312 Pir im wahrsten Sinne des Wortes unter die Lupe. :idea: Auf der Platine war ein Spannungsregler verbaut. Diesen habe ich entfernt und das + überbrückt. Und siehe da, die Probleme sind weg. :?

Im meine Kurztests bin ich mit der Spannung ab Netzgerät bis auf 2,1V runter gegangen. Gemäss dem Datenblatt wäre es 2,7V, aber eben mit Spannungsregler.

Die Test habe ich mit dem pro Mini auf meinem Testboard durchgeführt. Als nächster Schritt werde ich wieder die RF328Stamp aktivieren.

Gruss Ivo
_______________________________________________________________________________________________________
Raspberrymatic auf einem Raspi 4 4GB (HB-RF-USB-2) mit 2 LAN Gateways,
42 RF Geräte, 4 IP Geräte und 21 Cuxd Geräte, 24 RF Eigenbau Geräte
hm_pdetect, E-Mail, XML-API, JB HB Devices, HB-TM-Devices-AddOn, CUx-Daemon, CCU-Historian auf einem separaten Raspi

mczeus
Beiträge: 41
Registriert: 14.01.2019, 20:56
Hat sich bedankt: 4 Mal
Danksagung erhalten: 1 Mal

Re: Anleitung Nachbau Bewegungsmelder innen HM-SEC-MDIR-2

Beitrag von mczeus » 21.11.2020, 00:48

man man ich wollte das eigentlich alleine hinbekommen, aber ich brauche schon wieder eure Hilfe.
Ich möchte gerne eine TSL2561 mit einbinden in meinem Sketch.
Ich muss den ja auf a4 und a5 anschliessen!
Möchte ich den Sketch kompelieren bekomme ich ein..

Code: Alles auswählen

  -> candidates: [Wire@1.0]
"C:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=8000000L -DARDUINO=10812 -DARDUINO_AVR_PRO -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\eightanaloginputs" "-IC:\\Users\\user\\Documents\\Arduino\\libraries\\EnableInterrupt" "-IC:\\Users\\user\\Documents\\Arduino\\libraries\\AskSinPP-master" "-IC:\\Users\\user\\Documents\\Arduino\\libraries\\Low-Power-master" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\Wire\\src" "C:\\Users\\user\\AppData\\Local\\Temp\\arduino_build_244759\\sketch\\HM-SEC-MDIR.ino.cpp" -o nul
Alternatives for TSL2561.h: []
ResolveLibrary(TSL2561.h)
  -> candidates: []
In file included from C:\temp\arduino-1.8.13\portable\sketchbook\HM-SEC-MDIR\HM-SEC-MDIR.ino:15:0:

C:\Users\user\Documents\Arduino\libraries\AskSinPP-master/sensors/Tsl2561.h:11:10: fatal error: TSL2561.h: No such file or directory

 #include <TSL2561.h>

          ^~~~~~~~~~~

compilation terminated.

Bibliothek EnableInterrupt in Version 1.1.0 im Ordner: C:\Users\user\Documents\Arduino\libraries\EnableInterrupt  wird verwendet
Bibliothek AskSinPP-master in Version 4.1.6 im Ordner: C:\Users\user\Documents\Arduino\libraries\AskSinPP-master  wird verwendet
Bibliothek Low-Power-master in Version 1.6 im Ordner: C:\Users\user\Documents\Arduino\libraries\Low-Power-master  wird verwendet
Bibliothek Wire in Version 1.0 im Ordner: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire  wird verwendet
exit status 1
Fehler beim Kompilieren für das Board Arduino Pro or Pro Mini.
in "C:\Users\user\Documents\Arduino\libraries\AskSinPP-master\sensors" habe ich eine TSL2561.h liegen.

liegt das an den "/ oder \"

warum wird die nicht gefunden?

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: Anleitung Nachbau Bewegungsmelder innen HM-SEC-MDIR-2

Beitrag von jp112sdl » 21.11.2020, 08:36

Schau mal genau hin...
Tsl2561.h:11:10: fatal error: TSL2561.h: No such file or directory

Die Tsl2561.h in sensors/ ist die Klasse für die AskSinPP, in der die Funktionen der TSL2561 Lib gekapselt sind

Du brauchst noch die TSL2561 Lib, die auf der AskSinPP-Seite verlinkt ist:
https://github.com/pa-pa/AskSinPP#optio ... -libraries
:arrow: https://github.com/adafruit/TSL2561-Arduino-Library

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

mczeus
Beiträge: 41
Registriert: 14.01.2019, 20:56
Hat sich bedankt: 4 Mal
Danksagung erhalten: 1 Mal

Re: Anleitung Nachbau Bewegungsmelder innen HM-SEC-MDIR-2

Beitrag von mczeus » 21.11.2020, 22:49

Danke es läuft alles :)

ivo-int
Beiträge: 300
Registriert: 13.04.2020, 08:55
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 37 Mal
Danksagung erhalten: 16 Mal

Re: Anleitung Nachbau Bewegungsmelder innen HM-SEC-MDIR-2

Beitrag von ivo-int » 15.12.2020, 15:37

Hallo zusammen

Ich habe sehr viele Versuche mit unterschiedlichen AVR Platinen unternommen.
- RF328Stamp mit internen Oszilator
- pro Mini mit externem Quarz auf Prototypen Board
- pro Mini mit externem Quarz auf tmStamp Platine
- HMSensor-CR2032 mit internen Oszilator
- HMSensor-CR2032 mit externen 8MHz Quarz

Da ich so viele Tests mit Netzgerät, CR2032 und CR2477 Batterien unternommen habe, kann nur mitteilen dass ich einmal kein Zyklisches Senden hatte. Ich bin der Meinung das es beim pro Mini mit Prototypen Board war. Das Problem ist aber Grundsätzlich immer noch da.

Auch die Anschaltung des PIR habe ich mit, ohne Transistor und 2 unterschiedliche Typen getestet.

Mein Fazit ist: Ich bin mir sehr sicher dass das Zyklische Senden nicht durch die Hardware und Flankentriggerung ausgelöst wird. Der Zeitliche Abstand ist immer 5 Minuten und ein paar Sekunden.

Aber aus welchem Grund ist das nur bei mir so? Ich habe diverse Foreneinträge gelesen bei denen es funktioniert hat. :?

So bin ich auf die Suche nach der Ursache auf einen Eintag in der Motion.h gestossen.

Code: Alles auswählen

// send the brightness every 5 minutes to the master
  #define LIGHTCYCLE seconds2ticks(5*60)
  class Cycle : public Alarm {
  public:
    MotionChannel& channel;
    Cycle (MotionChannel& c) : Alarm(LIGHTCYCLE), channel(c) {}
    virtual ~Cycle () {}
    virtual void trigger (AlarmClock& clock) {
      tick = LIGHTCYCLE;
      clock.add(*this);
      channel.sendState();
    }
  };
Als Versuch habe ich die Zeit auf 3*60 eingestellt. Jetzt ist auch das Zyklische Senden ca. alle 3 Minuten. Danach "channel.sendState" auskommentiert. Siehe da das Zyklische Senden ist weg.

Ich bin mir aber sicher dass das nicht im Sinne des Erfinders war.

Kann man dies an einem anderen Ort eleganter unterbinden?
Aus welchem Grund wird eine Flankentriggerung des Eingangs ausgeführt?

Gruss Ivo
_______________________________________________________________________________________________________
Raspberrymatic auf einem Raspi 4 4GB (HB-RF-USB-2) mit 2 LAN Gateways,
42 RF Geräte, 4 IP Geräte und 21 Cuxd Geräte, 24 RF Eigenbau Geräte
hm_pdetect, E-Mail, XML-API, JB HB Devices, HB-TM-Devices-AddOn, CUx-Daemon, CCU-Historian auf einem separaten Raspi

papa
Beiträge: 705
Registriert: 22.05.2018, 10:23
Hat sich bedankt: 24 Mal
Danksagung erhalten: 120 Mal

Re: Anleitung Nachbau Bewegungsmelder innen HM-SEC-MDIR-2

Beitrag von papa » 15.12.2020, 17:10

Der Motion-Channel sendet zyklisch die Helligkeit. Das macht zumindest der HM-Sec-MDIR-3 und der HM-Sen-MDIR-WM55 auch so.
Der HM-Sen-MDIR-WM55 hat das Register CYCLIC_INFO_MSG, womit man das Verhalten an- bzw. abschalten kann. Das wird derzeit aber nicht vom Motion-Channel unterstützt.
Anfragen zur AskSin++ werden nur im Forum beantwortet

ivo-int
Beiträge: 300
Registriert: 13.04.2020, 08:55
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 37 Mal
Danksagung erhalten: 16 Mal

Re: Anleitung Nachbau Bewegungsmelder innen HM-SEC-MDIR-2

Beitrag von ivo-int » 15.12.2020, 17:23

Hallo
papa hat geschrieben:
15.12.2020, 17:10
Der Motion-Channel sendet zyklisch die Helligkeit. Das macht zumindest der HM-Sec-MDIR-3 und der HM-Sen-MDIR-WM55 auch so.
Der HM-Sen-MDIR-WM55 hat das Register CYCLIC_INFO_MSG, womit man das Verhalten an- bzw. abschalten kann. Das wird derzeit aber nicht vom Motion-Channel unterstützt.
Das ist grundsätzlich gut und abschalten muss man das auch nicht können. Aber wieso wird eine Flanke des PIR's, also "Bewegung erkannt" gesendet obwohl dieser keine hat? Das geschieht immer dann wenn "channel.sendState();" ausgeführt wird. Das wiederholt sich alle 5min erneut.

Wenn ich dies bei "LIGHTCYCLE" ausklammere wird keine "Zyklische Bewegung" gesendet.

Gruss Ivo
_______________________________________________________________________________________________________
Raspberrymatic auf einem Raspi 4 4GB (HB-RF-USB-2) mit 2 LAN Gateways,
42 RF Geräte, 4 IP Geräte und 21 Cuxd Geräte, 24 RF Eigenbau Geräte
hm_pdetect, E-Mail, XML-API, JB HB Devices, HB-TM-Devices-AddOn, CUx-Daemon, CCU-Historian auf einem separaten Raspi

papa
Beiträge: 705
Registriert: 22.05.2018, 10:23
Hat sich bedankt: 24 Mal
Danksagung erhalten: 120 Mal

Re: Anleitung Nachbau Bewegungsmelder innen HM-SEC-MDIR-2

Beitrag von papa » 15.12.2020, 17:42

Kann es sein, dass das Senden einen Motion-Interrupt auslöst ? Da gab es früher schon mal Probleme, weshalb der PirInterrupt während des Sendens abgeschalten wird. Mach mal nen Delay da mit rein, bevor der Interrupt wieder eingeschalten wird.
Anfragen zur AskSin++ werden nur im Forum beantwortet

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“