HM-DW-WM 2-Kanal PWM Dimmer

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

Moderator: Co-Administratoren

papa
Beiträge: 340
Registriert: 22.05.2018, 10:23
Danksagung erhalten: 7 Mal

Re: HM-DW-WM 2-Kanal PWM Dimmer

Beitrag von papa » 21.08.2019, 11:08

Psi hat geschrieben:
20.08.2019, 20:59
Ich habe das Gerät mal in Betrieb genommen.

Sketch: https://github.com/pa-pa/AskSinPP/blob/ ... -DW-WM.ino

* Gerät lässt sich sofort per Serial anlernen
* RSSI etwas schlechter als Original HM-Geräte im selben Raum aber besser als meine sonstigen Bastelein
* Hab leider nur 2,6A auf 24V aber hier ist keine Erwärmung spürbar
* Der Helligkeitsübergang ist etwas ruckelig.
* Das "anschalten" war etwas knifflig. Es gibt 3x Helligkeits-Kanäle und 3x Farbtemperatur.
* FarbTemp wird über Kanal 2 gesteuert, 4 und 6 habe keine Auswirkung
* Helligkeit wird über 1 und 5 gesteuert, die Verknüpfungsregel verstehe ich nicht ganz aber zumindest kann man einen auf 100% stellen und mit dem anderen dann wie gewohnt justieren
* Der aktuelle RasperryMatic bietet für das Device *keine* Einstellmöglichkeiten für die Kanäle an. Dies war schon mal anders da ich schon öfter HM-LC-DW gebaut habe. Über den Homematic-Manager von Hobbyquaker kann man allerdings Params setzen und es scheint, als würden die auch greifen.

Flashe ich den Sketch mit

Code: Alles auswählen

typedef DimmerDevice<HalType,ChannelType,2,1> DimmerType;
zeigt die CCU wieder 6 Kanäle an. 1 und 2 Regeln allerdings nun wie erwartet und die anderen 4 sind "tot".
Nur mal ganz kurz - weil keine Zeit.

Die 8bit PWM sieht man leider beim Übergang. Ich nehme für den Dimmer nen STM32 mit 16bit PWM. Das sieht dann ganz super aus. Vielleicht würde hier auch nen anderer AVR helfen.

Die viruellen Kanäle müssen jeweils eingeschaltet werden. Siehe auch https://www.elv.de/elektronikwissen/vir ... logik.html
Wenn Du den Sketch auf 2 Kanäle reduzierst, brauchst Du auch eine passende XML Datei. Sonst legt Dir die CCU immer alle 6 Kanäle an.
Anfragen zur AskSin++ werden nur im Forum beantwortet

Benutzeravatar
Psi
Beiträge: 148
Registriert: 09.08.2018, 19:58
Wohnort: Nürnberg
Hat sich bedankt: 8 Mal
Danksagung erhalten: 3 Mal

Re: HM-DW-WM 2-Kanal PWM Dimmer

Beitrag von Psi » 21.08.2019, 11:28

papa hat geschrieben:
21.08.2019, 11:08
Die 8bit PWM sieht man leider beim Übergang. Ich nehme für den Dimmer nen STM32 mit 16bit PWM. Das sieht dann ganz super aus. Vielleicht würde hier auch nen anderer AVR helfen.
Ich dachte, dass der ATMega328p einen FastPWM Mode hat?
Google gibt hier auch etwas aus: https://github.com/swharden/AVR-project ... -bit%20pwm
papa hat geschrieben:
21.08.2019, 11:08
Die viruellen Kanäle müssen jeweils eingeschaltet werden.
Siehe auch https://www.elv.de/elektronikwissen/vir ... logik.html
Das ist mir bewusst allerdings scheint der Default von AskSin++ nicht ganz richtig gesetzt zu werden. Dieser ist laut Doku für den ersten Helligkeits- und Farbtemp-Kanal jeweils 0 OR Chan1 bzw 0 OR Chan2 wobei Chan 3..6 standardmäßig auf Inaktiv stehen sollten. Stelle ich das (per HM-Manager) so ein dann siehts auch gut aus.
papa hat geschrieben:
21.08.2019, 11:08
Wenn Du den Sketch auf 2 Kanäle reduzierst, brauchst Du auch eine passende XML Datei. Sonst legt Dir die CCU immer alle 6 Kanäle an.
Das ist klar (ausgenommen Devices die ihre Kanal-Zahl selbst reporten können)


Bezüglich dem Darstellungsfehler der Geräteeinstellung konnte ich dank Jerome das Problem auf einen TCL-Error einschränken. Warum dieser aber passiert ist noch nicht klar.

pmayer
Beiträge: 8
Registriert: 17.07.2019, 12:39
Hat sich bedankt: 13 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: HM-DW-WM 2-Kanal PWM Dimmer

Beitrag von pmayer » 21.08.2019, 11:57

papa hat geschrieben:
21.08.2019, 11:08
Die 8bit PWM sieht man leider beim Übergang. Ich nehme für den Dimmer nen STM32 mit 16bit PWM. Das sieht dann ganz super aus. Vielleicht würde hier auch nen anderer AVR helfen.
Wir bauen genau aus diesem Grund gerade noch einen anderen Dimmer (10 Kanal, Hutschiene) auf ESP32-basis mit PCA9685 und damit 12-bit Auflösung: https://hackaday.io/project/166533-din- ... pwm-dimmer

Liege ich eigentlich richtig, dass ich im HM-DW-WM sowieso nur 0-100% (0.00 - 1.00) dimmen kann und es dort keine Abbildung einer Dimmkurve auf 0-255 gibt? Welches Gerät emulierst du für deine 16bit oder ist das ein selbstdefiniertes Gerät?

(Bin leider nur noch kurz da, Flieger geht heute Nachmittag)
blog allgeek.de, twitter @pregopm, github codmpm

papa
Beiträge: 340
Registriert: 22.05.2018, 10:23
Danksagung erhalten: 7 Mal

Re: HM-DW-WM 2-Kanal PWM Dimmer

Beitrag von papa » 21.08.2019, 13:44

pmayer hat geschrieben:
21.08.2019, 11:57
papa hat geschrieben:
21.08.2019, 11:08
Die 8bit PWM sieht man leider beim Übergang. Ich nehme für den Dimmer nen STM32 mit 16bit PWM. Das sieht dann ganz super aus. Vielleicht würde hier auch nen anderer AVR helfen.
Wir bauen genau aus diesem Grund gerade noch einen anderen Dimmer (10 Kanal, Hutschiene) auf ESP32-basis mit PCA9685 und damit 12-bit Auflösung: https://hackaday.io/project/166533-din- ... pwm-dimmer

Liege ich eigentlich richtig, dass ich im HM-DW-WM sowieso nur 0-100% (0.00 - 1.00) dimmen kann und es dort keine Abbildung einer Dimmkurve auf 0-255 gibt? Welches Gerät emulierst du für deine 16bit oder ist das ein selbstdefiniertes Gerät?
examples/stm32/HM-DW-WM

Die Dimmerkurve wird durch die Klasse DimmerControl mit dem Templateargument PWM8 bzw. PWM16 bestimmt. Es gibt auch ein DualWhiteControl, was dann richtiges Dual-White-Handling macht. Also Helligkeit (Channel 1) und Farbtemperatur (Channel 2) berechnet. Siehe auch https://github.com/pa-pa/AskSinPP/issues/40
Anfragen zur AskSin++ werden nur im Forum beantwortet

Benutzeravatar
Psi
Beiträge: 148
Registriert: 09.08.2018, 19:58
Wohnort: Nürnberg
Hat sich bedankt: 8 Mal
Danksagung erhalten: 3 Mal

Re: HM-DW-WM 2-Kanal PWM Dimmer

Beitrag von Psi » 21.08.2019, 17:44

Hi,
wenn ich das richtig verstehe hat der 328P einen 16-Bit Timer auf TC1 (PIN 9 und 10).
Da das CC1101-ChipSelect an GPIO-10 hängt könnte man das auf 3 legen und hätte somit 9 und 10 frei.

Wird der TC1 in AskSin++ gebraucht?

Würde sich die PWM16-Klasse eigenen? Die ist in einem #ifdef ARDUINO_ARCH_STM32F1 gewrapped.

Gibt es sonst Gründe warum es nicht gehen sollte?

papa
Beiträge: 340
Registriert: 22.05.2018, 10:23
Danksagung erhalten: 7 Mal

Re: HM-DW-WM 2-Kanal PWM Dimmer

Beitrag von papa » 21.08.2019, 18:14

Der eine verfügbare 16bit Timer vom 328 wird für die sysclock benötigt. Bleiben nur die 2 8bit Timer für PWM.
Die PWM16 Klasse nutzt ordentlich Mathefunktionen. Könnte auf nem AVR möglicherweise zu komplex sein.
Sonst könnte man noch nen extra PWM Chip, wie den PCA9685, nehmen.
Anfragen zur AskSin++ werden nur im Forum beantwortet

TomMajor
Beiträge: 405
Registriert: 30.08.2017, 23:25
Hat sich bedankt: 5 Mal
Danksagung erhalten: 21 Mal
Kontaktdaten:

Re: HM-DW-WM 2-Kanal PWM Dimmer

Beitrag von TomMajor » 21.08.2019, 18:53

Mögliche Lösung:

"ATmega328PB has two additional 16-bit Timer/Counters(TC3 and TC4) with separate Prescaler,
Compare Mode, and Capture Mode. There are three 16-bit Timer/Counters (TC1, TC3, and TC4) and ten
PWM channels available in ATmega328PB."
Viele Grüße,
Tom

Nitram101
Beiträge: 37
Registriert: 20.02.2017, 18:00

Re: HM-DW-WM 2-Kanal PWM Dimmer

Beitrag von Nitram101 » 25.08.2019, 18:53

Hi alle zusammen,
ich habe heute mal versucht den Dimmer nachzubauen.
Habe aber beim compilieren des Sketches ein kleines Problem.
Für die Zeile:
typedef DimmerDevice<HalType,ChannelType,6,3> DimmerType;
bekomme ich folgeneden Fehler:
wrong number of template arguments (4, should be at least 5)

Alle Librayies und AskSin sind die neusten.

Hat jemand einen Tip für den Fehler, bzw welches Argument fehlt.
Vielen Dank
Martin

jp112sdl
Beiträge: 3216
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 25 Mal
Danksagung erhalten: 49 Mal
Kontaktdaten:

Re: HM-DW-WM 2-Kanal PWM Dimmer

Beitrag von jp112sdl » 25.08.2019, 19:29

Also bei mir kompiliert die in der Lib mitgelieferte HM-LC-DW-WM.ino sofort

VG,
Jérôme

Nitram101
Beiträge: 37
Registriert: 20.02.2017, 18:00

Re: HM-DW-WM 2-Kanal PWM Dimmer

Beitrag von Nitram101 » 25.08.2019, 20:05

Also hier mal der komplette Auszug aus der Fehlermeldung:


exit status 1
wrong number of template arguments (4, should be at least 5)

Dieser Bericht wäre detaillierter, wenn die Option
"Ausführliche Ausgabe während der Kompilierung"
in Datei -> Voreinstellungen aktiviert wäre.

Martin
Zuletzt geändert von Nitram101 am 26.08.2019, 08:28, insgesamt 1-mal geändert.

Antworten

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