PWM Dimmer Basisfrequenz für PC-Lüfter anpassen

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

Moderator: Co-Administratoren

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: PWM Dimmer Basisfrequenz für PC-Lüfter anpassen

Beitrag von jp112sdl » 07.07.2020, 20:37

Asselhead hat geschrieben:
07.07.2020, 20:14
Habe die Zeile dann noch entsprechend angepasst:

Code: Alles auswählen

OCR3B = map(value, 0, 320, 0, 255);
Sollte eigentlich nicht nötig sein, weil

Code: Alles auswählen

ICR3   = 160;
den maximalen Wert angibt.

Also wäre

Code: Alles auswählen

[code]OCR3B = map(value, 0, 200, 0, 160);
eigentlich ganz korrekt, oder?

Bei mir haut es zumindest so hin.

Btw.: Du hast den ersten Wert (200) geändert. Das ist der, der von der CCU kommt (100% = 200). Wenn dann musst du die 255 anpassen...

Kommen bei dir die seriellen Ausgaben bei 115200 oder 57600 Baud?

VG,
Jérôme ☕️

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

Asselhead
Beiträge: 308
Registriert: 07.02.2019, 17:04
System: CCU
Wohnort: Niederrhein
Hat sich bedankt: 56 Mal
Danksagung erhalten: 147 Mal

Re: PWM Dimmer Basisfrequenz für PC-Lüfter anpassen

Beitrag von Asselhead » 07.07.2020, 21:04

Ich war davon ausgegangen, dass ICR3 die Frequenz 25kHz einstellt und OCR3B den Duty-Cycle.
Serielle Ausgaben kommen bei mir mit 57600 Baud.

So oder so stimmen mit meinen Einstellungen Duty-Cycle und Prozentangabe in der CCU überein :mrgreen:
Viele Grüße

Stefan

Asselhead
Beiträge: 308
Registriert: 07.02.2019, 17:04
System: CCU
Wohnort: Niederrhein
Hat sich bedankt: 56 Mal
Danksagung erhalten: 147 Mal

Re: PWM Dimmer Basisfrequenz für PC-Lüfter anpassen

Beitrag von Asselhead » 07.07.2020, 22:03

Asselhead hat geschrieben:
07.07.2020, 21:04
Ich war davon ausgegangen, dass ICR3 die Frequenz 25kHz einstellt und OCR3B den Duty-Cycle.
Serielle Ausgaben kommen bei mir mit 57600 Baud.

So oder so stimmen mit meinen Einstellungen Duty-Cycle und Prozentangabe in der CCU überein :mrgreen:
Jetzt hab ich mich aber selbst verarscht :lol:

Mein Code hat zwar das erwünschte Ergebnis geliefert, aber Du hast natürlich recht :idea:

Hab jetzt noch einmal auf

Code: Alles auswählen

OCR3B = map(value, 0, 200, 0, 160);
geändert und das funktioniert natürlich auch und ist die korrekte Variante.

Sorry für die Verwirrung - war erst einmal happy, das es geklappt hat :)
Viele Grüße

Stefan

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: PWM Dimmer Basisfrequenz für PC-Lüfter anpassen

Beitrag von jp112sdl » 07.07.2020, 22:57

Ich bin auch ein gutes Stück weitergekommen.
Aber reicht erstmal für heut
Bildschirmfoto 2020-07-07 um 22.55.53.png
Bildschirmfoto 2020-07-07 um 22.51.55.png
Bildschirmfoto 2020-07-07 um 22.52.06.png

VG,
Jérôme ☕️

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

TomMajor
Beiträge: 1793
Registriert: 30.08.2017, 23:25
Hat sich bedankt: 175 Mal
Danksagung erhalten: 399 Mal
Kontaktdaten:

Re: PWM Dimmer Basisfrequenz für PC-Lüfter anpassen

Beitrag von TomMajor » 07.07.2020, 23:59

da ist ganz schön was entstanden in der kurzen Zeit, der Wahnsinn.

Timer2 8bit mit 25kHz gut zu wissen, auch wenn dann die Auflösung "nur" 1,25% ist, in den meisten (Lüfter-)Fällen dürfte das egal sein.

Viele 4-pin PWM Lüfter stehen bei 0% nicht still sondern laufen dann mit ihrer Minimaldrehzahl, siehe z.B. das Diagramm:
https://www.overclock.net/forum/25910648-post.html
Viele Grüße,
Tom

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: PWM Dimmer Basisfrequenz für PC-Lüfter anpassen

Beitrag von jp112sdl » 08.07.2020, 07:03

TomMajor hat geschrieben:
07.07.2020, 23:59
Viele 4-pin PWM Lüfter stehen bei 0% nicht still sondern laufen dann mit ihrer Minimaldrehzahl, siehe z.B. das Diagramm:
https://www.overclock.net/forum/25910648-post.html
Danke für die Grafik.
Ja dann ist es wohl am sinnvollsten, noch einen extra Pin zu nutzen, um die Stromzufuhr bei 0% Leistungswert über einen FET komplett zu abzuschalten.

VG,
Jérôme ☕️

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

Asselhead
Beiträge: 308
Registriert: 07.02.2019, 17:04
System: CCU
Wohnort: Niederrhein
Hat sich bedankt: 56 Mal
Danksagung erhalten: 147 Mal

Re: PWM Dimmer Basisfrequenz für PC-Lüfter anpassen

Beitrag von Asselhead » 08.07.2020, 08:23

jp112sdl hat geschrieben:
07.07.2020, 22:57
Ich bin auch ein gutes Stück weitergekommen.
Aber reicht erstmal für heut
Bildschirmfoto 2020-07-07 um 22.55.53.png
Bildschirmfoto 2020-07-07 um 22.51.55.png
Bildschirmfoto 2020-07-07 um 22.52.06.png
Der Wahnsinn, wie schnell hier ein neues Device entstanden ist.

Da könnte EQ3 neidisch werden :wink:
Viele Grüße

Stefan

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: PWM Dimmer Basisfrequenz für PC-Lüfter anpassen

Beitrag von jp112sdl » 08.07.2020, 10:17

Asselhead hat geschrieben:
08.07.2020, 08:23
Da könnte EQ3 neidisch werden :wink:
Man sieht an der HmIP Produktpalette ganz gut, was nach ein paar Jahren HM BidCos für den Hersteller lohnenswert übrig geblieben ist bzw. was man nicht übernommen hat.
z.B. RGBW Controller, DualWhite Controller, Statusanzeige, Keymatic, Winmatic, Drehgriffsensor, Fernbedienungen (12-/19 Kanal), HM Sen EP, 0-10V Sollwertgeber ... da gibt es bestimmt noch einiges mehr.
Und genau so ist das hier, sowie alle anderen Homebrew Projekte, eher eine Nische.

Aber es macht Spaß und Laune, eigene Ideen zu integrieren.

PS: Um mit den Projekten möglichst nah am Hersteller zu bleiben, werde ich auch wenig dokumentieren. :mrgreen: :lol:

VG,
Jérôme ☕️

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

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

Re: PWM Dimmer Basisfrequenz für PC-Lüfter anpassen

Beitrag von papa » 08.07.2020, 10:28

jp112sdl hat geschrieben:
08.07.2020, 10:17
PS: Um mit den Projekten möglichst nah am Hersteller zu bleiben, werde ich auch wenig dokumentieren. :mrgreen: :lol:
Der ist gut ..... muss ich mir merken 8)
Anfragen zur AskSin++ werden nur im Forum beantwortet

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: PWM Dimmer Basisfrequenz für PC-Lüfter anpassen

Beitrag von jp112sdl » 08.07.2020, 20:47

Ich habe nun die vorerst finale Version von Addon + Sketch hochgeladen.

Wichtigste Infos noch in Kürze:

Code: Alles auswählen

#define USE_25KHZ
legt den Gerätetyp fest:
  • Ohne dem #define ist es ein "HB-OU-MOT-FAN" (F3 49), für 3-Pin Lüfter, die mit PWM-gesteuerter Spannung direkt versorgt werden. Hier ist eine RPM-Messung nicht möglich. Daher ist sie auch bei dem Gerätetyp nicht implementiert (WebUI).
  • Mit dem #define ist ein "HB-OU-MOT-FAN-RPM" (F3 4F), für 4-pin Lüfter. Die Spannungsversorgung erfolgt konstant, die Drehzahlregulierung über einen separaten PWM-Eingang. Hier liefert auch der TACHO-Ausgang korrekt messbare Werte.
    Die Drehzahl wird in der WebUI angezeigt.

    Desweiteren lässt sich auf Kanal:2 (Messwertkanal Drehzahl) eine Fehlerschwelle konfigurieren.
    Bildschirmfoto 2020-07-08 um 20.29.13.png
    Ist der Lüfter auf > 0% eingestellt und die Drehzahl fällt unter den konfigurierten Wert, wird das Error-Flag gesetzt und kann dann in Programmen verwendet werden (bspw. für Push-Benachrichtigung oder Notabschaltung... whatever)
    Bildschirmfoto 2020-07-08 um 20.39.30.png
Die Pin-Belegung sieht wie folgt aus:

Code: Alles auswählen

#define PWM_PIN              3 // 9 on 644PA (Bobuino Pinout) or 3 on 328P
#define TACHO_PIN            6 // input pin for tacho signal; set to 0 when using 3-pin fan
#define PWR_PIN              9 // output pin to turn off a 4-pin fan; if unused (i.e. for 3-pin fan) set to 0
#define RPM_MEASURE_INTERVAL 5 // check rpm every 5 seconds
  • PWM_PIN ist der Ausgangs-Pin, an dem das PWM-Signal ausgegeben wird
  • TACHO_PIN ist der Eingangs-Pin für das Tachosignal vom Lüfter (nur HB-OU-MOT-FAN-RPM). Bei Verwendung eines 3-pin Lüfters oder wenn die Drehzahlüberwachung nicht erfolgen soll, dann auf 0 setzen
  • PWR_PIN ist ein separater Ausgangs-Pin, um 4-pin Lüfter abzuschalten (über ein MOSFET in der GND-Leitung des Lüfters). Der Pin ist LOW bei einem Leistungswert von 0% und HIGH bei > 0%
  • RPM_MEASURE_INTERVAL ist das Intervall der Drehzahlüberwachung (nur HB-OU-MOT-FAN-RPM). Am besten so lassen ^^

VG,
Jérôme ☕️

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

Antworten

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