Ich muss es zugeben, wenn es um Dokumentation geht bin ich eine Niete. Beim durchforsten der Handy Fotos auf der Suche nach Bildern von meinen HCAN Basteleien fand ich die erste selbstgeätze Platine vom März 2012.
Dann wirds ja höchste Zeit damit anzufangen:
Wie man unschwer erkennen kann: nicht so toll geworden. Ich musste viele gerissene Leiterbahnen mit Schaltlitze reparieren, trotzdem funktioniert die Platine und wird wohl irgendwann zum basteln von neuen Features in meiner Testumgebung eingesetzt.
Der Fusion PCB service von seeedstudio.com sei allen bastlern wärmstens ans herz gelegt, die mal 2-3 wochen auf ihre platinen warten können.
Mein erster Versuch, mit eagle eine Platine from scratch zu desginen, ist geglückt; die Platine tut genau das was sie soll, allerdings reicht das noch nicht. Für die Ansteuerung der LEDs habe ich eine auf dem ZXLD1366 basierende Konstantstromquelle entworfen, die auch sehr gut funktioniert. Zum dimmen braucht man allerdings schon mindestens 10bit pwm mit mindestens 200Hz Grundfrequenz. Meine erste Idee war, dies in Software zu realisieren. Dabei habe ich mich einzig an diesem Foren-Post orientiert: http://www.mikrocontroller.net/topic/107392#948916
Das ist zwar nicht „originaaal“ PWM, aber für meine Zwecke voll ausreichend und sehr effizient: 5% cpu-belastung bei 8 kanal 12bit pwm mit ca. 250Hz auf einem 8Mhz Atmega644
Die HCAN firmware arbeitet dummerweise auch interrupt-basiert, so dass sich die interrupts hier zwangsläufig in die quere kommen, auch wenn der pwm-timer vorrang vor dem HCAN-timer hat. So kommt es zu unschönem Flackern der LEDs, das hat einen WAF von gefühlten -9000.
Die Firmware komplett umzuschreiben wäre zu aufwändig, deswegen musste ich nach einer Hardware Lösung suchen:
Der pca9685 löst alle Probleme auf einen Schlag, ist intern mit 25Mhz getaktet, wird per i2c angesteuert und kommt ohne weitere Komponenten aus. Eine seeedstudio-Bestellung später war der Prototyp fertig.
Unten links das Hostinterface wie schon oben gesehen. rechts daneben das 24V Netzteil für die Controller und als Arbeitsspannung für die Relais, und das grössere 48V Netzteil für die LEDs.
Die beiden Glübirnen sind der Platzhalter für die 230V Rollädenmotoren (hoch/runter) und werden über die beiden 16A/230V relais in der Dose darüber angesteuert.
In der Mitte die neue HCAN controller Platine inkl. pca9685. In der Dose oben rechts der LED Treiber, und darüber natürlich die LEDs. Das sind 4 3 x CREE XM-L T3 auf Rundplatine, in diesem Bild stark heruntergedimmt. Bei voller Ansteuerung mit 700mA sind das 24W und es wird schön hell 🙂
High-Power LEDs wollen gut behandelt und vor allem gut gekühlt werden. Deswegen befestige ich die Platinen mit Wärmeleitpaste und M3 schrauben, für die ich vorher passende Gewinde schneide, WD40 nicht vergessen dabei!
…to be continued.
Hallo Garving,
sehr schöne Modifikationen des Projektes! Ich habe folgende Fragen:
– welchen Klemmen benutzt Du auf der smd-Platine?
– Darf ich die eagle-Dateien zu dieser smd-Version des Controllers auf meine Seite hochstellen? Dann bitte ich dich um Zusendung von .sch und .brd und ein, zwei Fotos
– Wenn Du den pca9685 per i2c ansteuerst, wie machst Du das aus der Original HCAN-Firmware heraus?
– Bezugsquelle für den runden Kühlkörper?
PS: hcan-3.0 kommt definitiv, Deine pwm-Geschichte würde ich da mit einfließen lassen… Wenn Du willst?!
Danke und viele Grüße,
Ulrich
Moin Ulrich,
– die Klemmen sind RIA federkraftklemmen RM 2,5mm. Die sind bequem ohne Werkzeug zu bedienen und halten auch sehr dünne Kabel ordentlich. Für Schalterreihen habe ich oft einfach ein billiges Cat5-Kabel verlegt, die dicken WAGO-Klemmen werden da zu Seitenschneidern.
– eagle-dateien schick ich dir demnächst rüber.
– ich hab die i2c lib von peter fleury eingebaut, allerdings die mit inline-asm. Da ich bis HCAN weder in C noch für µC programmiert hab, ist das ganze etwas holperig geworden und erstmal nur etwas mehr als ein proof-of-concept. ich habe ein extra feature-bit für powerport eingeführt, mit dem ich zwischen ULN-ports und LED-ports unterscheiden kann. dann habe ich taster.c modifiziert, dass beim langen drücken entsprechende dimm-kommandos an die powergroup gesendet werden.
– meinst du diese kühlkörper? die gibts auch günstiger bei tme.eu
für hcan-3.0 würde ich gerne etwas beisteuern.. ab nächstem jahr habe ich hoffentlich auch etwas luft um eine anbindung an z.b. openremote zu realisieren.
c-ya
Stoffel
Hallo Stoffel,
recht vielen Dank! Ich werde ab Januar auch mehr Zeit für dieses Projekt haben. Zumindest i2c war bei mir sowieso angedacht, Du hast mir das quasi „vorweg“ genommen – kann ich ja gern in die „offiziellen“ Quellen einbauen! Viele Grüße Ulrich