PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [ERLEDIGT] Regelung brauche Hilfe



Tobgen
19.07.2005, 11:08
Hallo an alle,

versuche mit einem PIC 16F876 eine Regelung folgendermaßen aufzubauen:

Es werden 2 LEDs (rot grün) über PWM angesteuert (CCPR1L und CCPR2L). Beide werden in Ihrer Helligkeit überwacht durch Tageslichtsensoren (OPT 101) und jeweils die analoge Spannung an RA0 und RA1 zu vergleich verwendet (beide sind bei 100% abgeglichen).

Wird eine dunkler so muß die andere auch abdunkeln (immer gleiche Helligkeit von beiden) und umgekehrt.

RA0 Led rot CCPR1L
RA1 LED grün CCPR2L


movfw Led rot
subwf LED grün
btfsc STATUS,Z
decf CCPR2L

Das was passiert ist, dass die LED auf Null runtergedimmt wird und dann wieder bei 100% anfängt.
Ganz so einfach ist es anscheinend nicht, kann mir jemand einen Tip geben wie man eine solche regelung von 2 LEDs realisieren kann??

Danke im voraus

Tobgen

20.07.2005, 09:49
Hallo

Ob der Check aufs Zero-Flag richtig ist, kann ich im Moment nicht nachpruefen... Ich mach das normalerweise in C :-)

Ich nehme an, Du hast die LED's direkt an den PWM-Ausgang angehaengt und auch den Lichtsensor (als/via Spannungsteiler) an den ADC gekoppelt.
Falls ja, koennte es ein Problem sein, dass die LED ja nur "voll leuchten" oder "voll dunkel" sind, Zwischenstufen gibts ja bei PWM nicht. Ebenso beim Sensor; der hat dann nur 100% und 0% (kommt noch ein bissel aufs Timing an).
Somit waere der gemessene Wert immer groesser als der Sollwert. CCPR2L wird also immer dekrementiert, laeuft ueber (8Bit) und faengt dann bei 100% wieder an zu dekrementieren (sofern ich den Code richtig interpretiere)

Ein Problem bleibt noch, dass deine Regelung nur runter regelt. Wenn's also dunkler ist als es sein soll, wird das nicht mehr korrigiert.

mfg
Felix

20.07.2005, 12:01
Hallo Felix,

das mit dem runterregeln ist schon ok. Aber in einer Sache stimmt ich Dir nicht zu, warum soll ich beim Sensor nur 100% und 0% bekommen ??? Er liefert doch analoge Zwischenwerte wenn die Helligkeit sich verändert. Wo ich auch sicher bin ist, dass ich mit PWM die Helligkeit regeln kann oder????????????
Ich denke das sich das Problem ein Timing Probelm ist.
Wenn Du vielleicht eine Idee hast wäre ich Dir sehr dankbar.

Gruß

Tobgen

21.07.2005, 08:49
Hallo


Er liefert doch analoge Zwischenwerte wenn die Helligkeit sich verändert.
Kenn den Sensor grad nicht. Wasnds fuer einer?


Wo ich auch sicher bin ist, dass ich mit PWM die Helligkeit regeln kann oder????????????
Das kommt auf die Hardware an, die am PWM-Ausgang haengt. Wenn da nur ne LED (mit Vorwiderstand) dran ist, dann kennt die LED nur ganz hell oder ganz dunkel (die Zwischenstufen fabriziert das Auge).

Kannste mal den Schaltplan posten?

Gruess
Felix

22.07.2005, 12:06
Hallo Felix, ich hatte Dir leider nicht die genaue Regelung gepostet: Das PWM Signal steuert einen LED Treiber HV9910, der mir durch die Stromregelung die LED dimmt.
Den Stromlaufplan kann ich im Moment leider nicht posten (PC Probleme).

Gruß

Tobgen