Archiv verlassen und diese Seite im Standarddesign anzeigen : Projekt: Wandlampe [Stillgelegt]
Hallo zusammen,
Erstmal eine kurze Vorgeschichte. Meine Freundin wollte noch eine Lampe fürs Wohnzimmer und dabei hab ich mir gedacht, das wäre doch eine tolle idee um mit dem Mirkrocontroller etwas herumzuspielen. Also hab ich mich etwas in die ganze Software eingearbeitet. Jetzt dachte ich mir, bevor ich eine Platine ätzen lasse, will ich sie einfach gegenchecken lassen.
Zur Schaltung:
Über P1 oder P2 werden 12V eingespeißt, mit J1 ist da einstellbar über Interne oder Externe Spannungsquelle.
P2 geht zu der Bedieneinheit (vier Potis und einem Schalter) damit wird die Helligkeit der LED´s in den Farben Rot,Blau,Grün und Weiß eingstellt, die über P3 angesteuert werden.
Der Controller also nun die 4 Analogsignale verarbeiten und einen PWM auf die vier Ausgänge für die LED´s zu legen.
Nun kann ich die Schaltung so dafür verwenden oder habe ich irgendwas vergessen.
Grüße und Danke im vorraus
Hallo!
Wenn ich das richtig verstanden habe, willst du mit dem Schalter SW1 einen "Lampentest" durchführen. Dazu speist du über Dioden direkt in die Ansteuerleitungen vom µC zu den LEDs 5V ein. Das kann richtig schön scheppern, wenn die Pins vom Mega 8 zu diesem Zeitpunkt auf logisch 0 sind, oder gerade fleißig das PWM-Signal ausgeben. Besser wäre es, du schließt den Schalter am Mega8 an und machst den "Lampentest" per Software.
Weiters sehe ich keinen Entstörkondensator an den Versorgungsspannungsanschlüssen des Mega8, ich würde hier unbedingt noch zwei 100nF-Keramik-Kondensatoren einplanen. Ebenfalls über einen 100nF-Kerko würde ich AREF auf Masse legen, damit die Referenzspannung schön sauber ist.
Welche LEDs verwendest du? Du darfst pro Pin nur 40mA ziehen und gesamt maximal 200mA - darauf ist zu achten.
Grüße
Thomas
Das mit dem Schalter hab ich Total verplant, danke für den Hinweiß.
Ich wollte den LED-Test eigendlich von Hardwareseite machen, das ich die auch prüfen kann bevor ich den Controller eingebaut haben (Ich gehe davon aus das ich fürs Programm erstellen länger brauch).
Den LED-Test (Hardwareseitig) könnte ich doch auch realisieren mit weiteren 4 Dioden, die vor den Ausgängen geschalten sind und einen Pulldown-Widerstand dahinter?
Die Ausgänge vom Controller dienen nur als Steuerspannung. Über den P3 gehen auch 12V als Lastspannung zu den LED´s. Diese werden dann über einen Tranistor (BC237) durchgeschalten. Schaltplan für das LED-Board im Anhang.
LED:
Ultrahelle, 5 mm
I = 20 mA
U = 3,6 V
Ich wollte den LED-Test eigendlich von Hardwareseite machen, das ich die auch prüfen kann bevor ich den Controller eingebaut haben (Ich gehe davon aus das ich fürs Programm erstellen länger brauch).
Dann würde ich aber empfehlen, einfach per Abgreifklemme manuell Spannung auf das LED-Board zu geben. Für so eine triviale Sache zusätzliche Dioden und einen Schalter einzubauen halte ich für etwas overklilled.
Die Ausgänge vom Controller dienen nur als Steuerspannung. Über den P3 gehen auch 12V als Lastspannung zu den LED´s. Diese werden dann über einen Tranistor (BC237) durchgeschalten. Schaltplan für das LED-Board im Anhang.
Also einen NPN-Transistor würd ich nicht als Highside-Schalter nehmen, der Basistrom fließt hierbei über die Last und der Transistor kann eventuell nicht komplett durchschalten. Entweder du verwendest einen PNP-Transistor, oder du setzt den NPN-Transistor unter die LEDs.
Grüße
Thomas
Weiters sehe ich keinen Entstörkondensator an den Versorgungsspannungsanschlüssen des Mega8, ich würde hier unbedingt noch zwei 100nF-Keramik-Kondensatoren einplanen. Ebenfalls über einen 100nF-Kerko würde ich AREF auf Masse legen, damit die Referenzspannung schön sauber ist.
Nochmal dazu, also insgesammt 3 Stück?
1. auf den AREF(Pin21).
2. zwischen 5V und GND
3. zwischen 12V und GND
Entweder du verwendest einen PNP-Transistor, oder du setzt den NPN-Transistor unter die LEDs.
für einen NPN bräucht ich doch negatives Potential, oder iree ich mich jetzt dabei?
Für den PNP unter den LEDs hätte ich doch eine Kurzschluss beim durchschalten, da die Basis dann auf Masse liegt. (jedenfalls hatten ander das oft genug damals in der schule) Zudem würden die LEDs doch auf gewisse weise dauernt unter Spannung stehen.
Weiters sehe ich keinen Entstörkondensator an den Versorgungsspannungsanschlüssen des Mega8, ich würde hier unbedingt noch zwei 100nF-Keramik-Kondensatoren einplanen. Ebenfalls über einen 100nF-Kerko würde ich AREF auf Masse legen, damit die Referenzspannung schön sauber ist.
Nochmal dazu, also insgesammt 3 Stück?
1. auf den AREF(Pin21).
2. zwischen 5V und GND
3. zwischen 12V und GND
Ja, drei Stück wären nötig.
Zwischen AREF und GND.
Zwischen VCC und GND
Zwischen AVCC und GND
Und das ganze möglichst nahe an den Pins.
Entweder du verwendest einen PNP-Transistor, oder du setzt den NPN-Transistor unter die LEDs.
für einen NPN bräucht ich doch negatives Potential, oder iree ich mich jetzt dabei?
Negatives Potential brauchst du nicht.
Für den PNP unter den LEDs hätte ich doch eine Kurzschluss beim durchschalten, da die Basis dann auf Masse liegt. (jedenfalls hatten ander das oft genug damals in der schule) Zudem würden die LEDs doch auf gewisse weise dauernt unter Spannung stehen.
Ich sagte, wenn du einen PNP-Typen nimmst, dann kannst du diesen so belassen, wo du jetzt deinen NPN-Transistor hast.
Grüße
Thomas
Edit: Ich hab dir die Möglichkeiten mal eben schnell aufgezeichnet.
Okay dann schonmal danke bis hierhin =D>
werde die änderungen sobald ich diese habe wider reinposten.
da fehlt doch noch ein richtig dicker Elko am 7805 zwischen Out ung GND.
Sicher? hab nur schaltung mir solch einem aufbau gefunden, bzw dieser ist aus dem Datenblatt sogar raus.
http://www.strippenstrolch.de/1-2-11-der-spannungsregler-78xx.html
Yossarian
06.01.2010, 20:23
Hallo
Wenn der pnp verwendet werden soll, sollte er an die Versorgungsspannung des AVR gelegt werden, sprich 5V.
Mit freundlichen Grüßen
Benno
Hallo
Wenn der pnp verwendet werden soll, sollte er an die Versorgungsspannung des AVR gelegt werden, sprich 5V.
Achja, stimmt. Sry, da war wohl ein Denkfehler meinerseits dirn.
Dann bleibt dem Threadersteller nur noch die NPN-Lösung übrig.
Grüße
Thomas
http://www.strippenstrolch.de/1-2-1.....spannungsregler-78xx.html
sowie ich das verstehe auf dieser Seite, kann man ihn größer wählen wenn große Strom-Entnahme-Stöße zu erwarten sind.
Da hier aber nur der ATMEGA8 damit betrieben wird, eine LED so wie eine handvoll hochohmiger Potis, werde ich ihn nicht mit 1000µF bemessen müssen, ich lasse mich natürlich gerne eines besseren belehren.
Das mit dem Transitoren, ist nun soweit klar, danke nochmal :-D
nein, 1000µF sind ein bischen groß,
aber ich würde schon ein bischen mehr nehmen,
als das was du vorschlägts
Ich würd so zwischen 10 und 100µ nehmen.
Grüße
Thomas
An ähnliche Werte habe ich auch gedacht,
ich würd 47µF nehmen.
Dann ist die Spannung ausreichend stabil, und für aref vom Atmega gibts ja extra Kondensatoren.
Wie siehts denn jetzt aus, mit deiner Wandlampe?
Grüße
Thomas
;)
Ich war die vergangenen Tag nicht da, deswegen hat es ein wenig gedauert ;-)
So hier also alle Pläne und auch überarbeiteten (Verdrahtungsplan mit dabei)
Wie zuvor bitte ich um ein kurzes drüber schauen ob es so passen würde.
Grüße
Fabian
Hallo!
Also zwischen AVCC und AGND würd ich noch einen 100nF-Kerko setzen, damit auch die analoge Seite des AVRs entstört ist.
Was ich immer lustig finde: Die gesamte Schaltung mit der selben Funktion lässt sich mit wesentlich weniger Bauteilen analog aufbauen. Aber lass dich dadurch nicht entmutigen, der Spass am Programmieren fällt dann leider total weg. Außerdem würden bei der analogen Lösung die Transistoren warm werden, also auch nicht gerade sehr ökonomisch. ;)
Grüße
Thomas
;)
klar lässt sich die auch Analog aufbauen, nur wie du schon gesagt hast - wo bleibt der spaß am Programmieren. Nebenbei zum analogen, würdest du es dann über eine Strombegrenzerschaltung machen oder? Würde mich nämlich auch Interessieren.
Außer dem noch fehlenden Kondensator zwischen AVCC und AGND, würde die Schaltung ansich so in Ordnund sein?
klar lässt sich die auch Analog aufbauen, nur wie du schon gesagt hast - wo bleibt der spaß am Programmieren. Nebenbei zum analogen, würdest du es dann über eine Strombegrenzerschaltung machen oder? Würde mich nämlich auch Interessieren.
Ich denke hier an eine Konstantstromquelle per PWM gesteuert. Die PWM erzeugt ein NE556 und der erhält sein Signal von einem OP, welcher den Strom entsprechend misst. Mit Potis kann man dann in die Regelung eingreifen und den Strom entsprechend ändern.
Außer dem noch fehlenden Kondensator zwischen AVCC und AGND, würde die Schaltung ansich so in Ordnund sein?
Soweit ich das gesehen habe - ja.
Grüße
Thomas
Da ich von Hardwareseite erstmal etwas warten muss (nein die Platinen mach ich erst so ziemlich gegen ende), habe ich mir über die Programmierung intensiver Gedanken gemacht.
Dabei erschieh es mir unnötig bei jedem Durchlauf der Hauptschleife die Analogen Eingänge einzulesen und auszuwerten.
Stattdessen wäre es doch sinnvoller die Eingänge nur einzulesen wenn eine Änderung stattgefunden hat.
Nur stelle ich mir gerade die Frage wie ich das realisieren könnte.
Bisherige Idee:
(Extra Zweig vom Poti-Schleifkontakt zum Interrupteingang µC)
Ich entkoppel den Gleichspannungsanteil mit einem Kondensator in Reihe und gehe damit auf eine Schmitt-Trigger (da sich sonst die Signaländerung ja im mV-Bereich befinden können und sich dabei der Controller nicht angesprochen fühlen würde)
Dieses Signal würde dann auf den Interrupteingang gelegt werden, der dann die Auslese Routine startet.
Problem:
1. Wenn ich mich nicht Irren sollte, die fertigen Schmitt-Trigger invertieren und OP´s im allgemeinen sollten doch +Ub und -Ub bekommen.
Auch hier habe ich vage im Kopf das es jedoch auch mit +UB und GND gehen sollte. Dann könnte ich einen Nichtinvertierenden Aufbauen, doch kommt hier das zweite Problem...
2. Die Spannungsänderung kann auch ins negative gehen (Potentiometer mehr richtung GND verändern) und der µC kann mit negativen Signalen auf dem Interrupt Eingang ebenfalls nichts anfangen.
Hat jemand eine Idee wie man so etwas realisieren kann und bin ich mit meiner Denkweise total auf dem Holzweg?
Grüße
Besserwessi
16.01.2010, 21:06
Bei der Schaltung sind auch noch ein paar Probleme:
1) Die Verschaltung der Potis wird so nicht funktionieren. Die 1 M Potis sind reichlich viel, und irgendwie falsch angeschlossen. Weiss nicht genau was damit erreicht werden soll und kann daher nicht sagen wie es besser wäre.
2) Die Spannung der LEDs hängt von der Farbe ab. Entsprechend müssen die Vorwiderstände bei den roten LEDs vermutlich größer sein als bei den blauen und weissen. Bei den roten könnte man auch 4 oder gar 5 in Reihe schalten.
Das auslesen der AD wandler in jedem Durchgang ist nicht so schlimm. Der µC hat ja sonst nichts zu tun, und so schnell ändern sich die Poties ja nicht. Es reicht also wenn man die AD Wandler z.B. alle 50 ms ausließt. Das ist für den µC ein kleine Ewigkeit.
Der Weg die Änderungen analog zu detektieren ist ziehmlich aufwendig und richtig gut geht es auch nicht (analoge speicher haben immer etwas Drift).
Wenn man als µC einen Mega88 oder Mega48 (gleicher Sockel wie der Mega8) nimmt, könnte man die LEDs rein über Hardware PWM steuern. Der µC könnte dann mit niedriegerer Frequenz (z.B. 250 kHz) laufen und die meiste Zeit im Stromsparmodus bleiben. Dazu müßte man nur sehen das man für die LED-steuerung die passenden Pins nimmt.
Wenn noch eine AD kanal frei ist, könnte man darüber eventuell die Helligkeit des Raumes messen - nur so als Idee.
Bei den Elkos wäre ein etwas größere Elko bei den 12 V sinnvoll, damit das Netzteil die Strompulse vom PWM nicht so mitkriegt. Ggf. auch noch ein Keramikkondensator direkt am Kabel eingang, damit man auf dem Kabel nicht so viel Störungen abgibt. Der Elko hinter dem 7805 ist eigentlich nicht nötig, die 2mal 100 nF am µC reichen schon. So viel Strom wird hier ja auch garnicht gebraucht: ca. 1 mA für den µC, ca. 1 mA für die Poties und dann der Basistrom (max. 4 mal 4,5 mA) und auch da würde die Hälfte reichen.
P.S. Bei LEDs ist die Verlustleistung übrigens fast die gleiche bei einer analogen Ansteuerung oder der einfachen PWM Version wie hier. Nur hat man hier die Verluste an den Widerständeen statt am Transistor.
µC:
Ich hab den ATMEGA8 nur gewählt, weil ich genau den herumliegen haben und endlich mal verbauen wollte (bei den stückpreisen aber nicht notwenig)
Das mit den Hardware PWM´s hört sich richtig gut an, ich glaube mein MEGA8 wird weiterhin in der Schublade bleiben ;-)
Der ATMEGA48 sollte doch reichen? soviel Speicher brauch ich ja nicht. Habe ich das richtig gelesen das er 6 PWM-Kanäle besitzt?
Potis auf der CPU-Platine:
Diese Potis dienen als Voreinstellung. Hier könnte man einen Maximalhelligkeit einstellen bzw. eine Farbe sperren (wäre der Fall wenn der Schleifer auf GND steht)
Potis auf der Remote Platine:
Ich habe leider keine anderen Schiebepotentiometer gefunden (Conrad) die weniger haben als 1M, deswegen auch dieser Wert.
Elko:
Ehrlich gesagt hab ich mir das auch schon gedacht da ich ja schon 2 Keramik habe, jedoch ist das meine erstes Board was ich plane - also hier im Sinne dachte ich mir, die anderen werden da bestimmt schon ihre Erfahrungen gemacht haben.
Der Kerko am Kabeleingang für die 12V existiert bereit (Auf der 5 Seite oben rechts). Jedoch dem Remote board werde ich noch einen am Kabeleingang spendieren.
LEDs:
Da hast du recht, hab ich auch gerade eben gesehen als du es gesagt hast. Muss ich nochmal überarbeiten, jedoch stehen die Layouts für die Platinen schon so ziemlich gerade auch bei den LED-Board. mehr als drei in einem Strang wäre jetzt zu viel Aufwand um nochmal anzufangen.
Grüße
Leider hab ich diese Projekt erstmal stillgelegt da die Lampe nun nicht mehr benötig wird. Der Einsatzort (mein Wohnzimmer) wurden heute komplett umgestellt.
Will jedoch ein andere irgendwann man den Faden hier wieder aufnehmen. Stelle ich ihm gerne meine Unterlagen zu verfügung natürlich würde ich mich aber dann auch um ein Feedback freuen.
Grüße
Furay
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.