Hallo zusammen,
ich hab mich auch mal ein bisschen mit der Treiberprogrammierung beschäftigt.
Erfolge sind zu verzeichen.
Als Grundlage dient der 4-Star Treiber von KD.
Der Ok aber nicht optimal ist, ein paar Layout Details sind einfach nicht optimal aber mehr dazu später.
Verwendeter Chip ist der Tiny13V der von Haus aus auf dem Board vorhanden ist.
Eigenschaften:
-Keine Memory (naja 40s Memory mit 1µF Kondensator und ca. 4s mit 100nF)
-beliebige Anzahl von Mod/Helligkeitsstufen (noch im Programm später vielleicht über I.B.S ähnliches System)
-leider noch keine Akkuüberwachung (Layout lässt das so nicht zu)
-4kHz PWM
- bis auf 1/255 Pulsbreite Runteregelbar( vielleicht später auch noch bis auf 1/1024 bei 1kHz)
Änderungen auf dem 4-Star Board:
- V+ vor der Diode mit Pin 5 verbunden (erkennt das an/ausschalten)
-Widerstand von Pin 5 auf GND (Definierter GND beim ausschalten der Versorgungsspannung)
- unbekannten (warschinlich 100nF) Kondensator gegen 1µF Kondensator ausgetauscht.
Das ganze ist in C-Programmiert.
Vorgehen zur Off-Erkennung:
Lampe war an und wird ausgeschalten:
- Interrupt wird ausgelöst
- Wenn Lampe kürzer als 2s angeschalten war wird der Mod um eins hoch gesetzt
- PWM wird abgeschalten
- Attiny13 wird in den Sleepmode geschickt
(durch den Sleepmode wird der Stromverbrauch sehr gering 0,15µA)
Lampe wird unter 40s wieder angeschalten:
-Attiny13 wacht aus dem Sleep Mode auf
-PWM an mit neuem Modus
Lampe länger als 40s ausgeschalten(Kondensator<1,8V entladen):
-µC fährt aus dem Reset in Nullzustand --> Mod-0
Keine Akkuüberwachung, da der Spannungsteiler der Spannungsmessung nach der Diode? ist. Der aktuelle Spannungsteiler würde aber den Kondensator innerhalb von wenigen ms entladen und ein so hoher Spannungtsteiler der die Entlandung genug herauszögern würde ist zu hochohmig für den ADC.
Ausprobiert habe ich das ganze auf dem Steckbrett mit einem AMC7135 und dem Tiny13V
Nachdem das ganze gut funktionierte, habe ich das ganze in eine neue Eigenbau Lampe "SL II" eingebaut(stell ich mal die Tage vor).
Leider traft dann Versuchsaufbau auf die Realität --> der kleine Schalter war besser entprellt als der Forwardclicky der neuen Lampe --> Treiber wieder raus und nochmal an der Entprellung gearbeitet.
Da ich keine Lust hatte die ganze Lampe mehrfach zu zerlegen, musste eine geeignetes Testobjekt her um die Software-Änderungen in der Realität testen zu können.
Die Wahl fiel auf den
Dorcy Mod der schon mehrfach umgebaut wurde und der Kühlkörper eh schon verbastelt war.
Das neue I.L.P (In Light Programming) System war entstanden
.
Die neue Entprellung brachte das erwünschte Ergebnis das Mod umschalten funktioniert sehr gut und fehlerfrei.
Da nicht jede Lampe von oben gut erreichbar ist habe ich Testweise eine Platine umgebaut das die Programmierung durch die Sterne erfolgen kann.
Die 4-Star Platinen sind eindeutig nicht das Beste für meinen selbstprogrammierten Treiber, da einfach zu viel gepfuscht werden muss. Als Grundlage waren sie aber ganz ok.
Weitere Ziele:
- I.B.S ähnliche System wäre praktisch.
- Zwei Mod Treiber ähnlich der Jet III M
Wer den Quelltext möchte, kann mich gerne anschreiben.
Gruss Matthias