Forum: Mikrocontroller und Digitale Elektronik Schaltplan Review (Dekorationsschale)


von Roland K. (chozo)


Angehängte Dateien:

Lesenswert?

Hallo Elektronikprofis!

Da ich mich seit kurzer Zeit intensiver mit Microkontrollern beschäftige 
(bin jedoch noch Anfänger), habe ich beschlossen eine beheiz- und 
beleuchtbare Schale für Duftöle zu bauen.
Das ganze soll nach der Fertigstellung als Weihnachtsgeschenk dienen.

Meine Idee war eine Heizfolie auf der Unterseite einer Glasschale zu 
befestigen, und diese so zu beheizen. Analog dazu beleuchte ich diese 
mit standard LEDs in verschiedenen Farben von unten. Anschließend gebe 
ich etwas Sand, Wasser und das Düftöl hinein.

Für die Umsetzung habe ich mir folgendes gedacht:
Die Heizfolie wird über einen BD437 Transistor mittels PWM zur 
Temperaturregelung angesteuert (Poti mit 10k), sie wird mit 12V 
betrieben und hat eine Leistung von 20W.
Die LEDs sind dimmbar, und durch zwei Taster einstellbar (Poti, 
Lauflicht, Farbwahl).

Die Potis und Taster werden an den Input-Steckern angeschlossen, die 
LEDs am Colour-Stecker. Für die Heizfolie ist ein eigener Stecker 
vorgesehen.

Die Basiswiderstände wurden mit Hilfe des Artikels auf dieser Seite 
berechnet.

Bitte um Kritik und Verbesserungsvorschläge.

Grüße
Roland

von Tim (Gast)


Lesenswert?

Also den Sinn von Q7 musst du mir mal erklären.
Verpolungsschutz?
Vorwiderstände für die Leds?
R5 und R3 sind mit Sicherheit zu klein.
Soviel strom das die 10 Ohm etwas bringen kommt
aus dem Port gar nicht raus.
Da muss also noch ein Transistor dazwischen -> Darlington.

Für die Leds guck dir mal den ULN2003 an.

von Jean Payer (Gast)


Lesenswert?

Hi,

Reset Beschaltung fehlt und Programmer Interface !

von msch (Gast)


Lesenswert?

Für TemperaturREGELUNG fehlt ein Temperatursensor..

von Roland K. (chozo)


Angehängte Dateien:

Lesenswert?

@Tim:
Der Q7 ist für die Dimmung der LEDs gedacht, da er am OC1A angschlossen 
ist.
Verpolungsschutz wird nicht benötigt.
Die Vorwiderstände der LEDs sind leider schon in den Kabeln eingelötet.
Darlington werde ich einbauen, bzw. einen kleinen Transistor dafür 
verwenden.

@Jean Payer
Reset werde ich beschalten.
Nur zum Verständnis: Reicht es den Reset einfach an die 5V des 7805 
anzuschließen?
Programmer Interface wird nicht benötigt, da ich dies auf meiner 
Testplatine vornehmen werde.

@msch
Die "Regelung" der Temperatur erfolgt manuell über einen Poti.

Ich habe noch eine Skizze der Schale zum Verständnis angehängt.
Die LEDs und Heizfolie befinden sich nicht auf der Platine, sondern sind 
über Kabel über einen Stecker damit Verbunden.
Kann es hier zu Überhitzungen der Bauteile kommen, da die Heitzfolie und 
deren Transistor relativ warm werden? Die Bauteile befinden sich in 
einer zugeschnittenen Plastikröhre, die keine Luftschlitze oder 
dergleichen hat.

Liebe Grüße
Roland

von Mike J. (linuxmint_user)


Lesenswert?

Ist der Boden deiner Glasschale glatt?
Wenn nicht dann hält die Folie sicher nicht lange/gut daran.

Bei einem Transistor fällt immer eine recht hohe Spannung (0.7V) ab und 
dein Transistor verheizt dann ungefähr 0.7 * 1.66A = 1.16 Watt !

Du kannst einen MosFET nutzen um den Strom zu schalten, am Gate muss nur 
eine gewisse Spannung anliegen damit er öffnet.

von Roland K. (chozo)


Angehängte Dateien:

Lesenswert?

Hallo,

@Mike J.
Der Boden der Glasschale ist glatt.

ich habe nun die oben genannten Vorschläge umgesetzt.
Den BC338 habe ich durch einen BC547C ersetzt.
Der BD437 wurde mit einem MosFET des Typs IRFZ44N ausgetauscht.
Reicht die Beschaltung dieses Transistors aus, um ihn als Schalter zu 
verwenden da FETs ja, nach einem Artikel dieser Seite, höhere Spannungen 
(~12V) dazu benötigen?

Danke für die Hilfe!
Roland

von Mike J. (emjey)


Lesenswert?

Imm Datenblatt des IRFZ44N steht:
Gate-to-Source Voltage
 = +/-20V

Es fallen laut Tabelle im Datenblatt bei einem Strom von 2A und 5V am 
Gate eine Spannung von etwa 0.1V zwischen Drain und Source ab.
Das sind 50 mOhm bzw. 0.2 Watt Verlustleistung bei 2A und 5V Gate 
Spannung.

Bei dem Mosfet wären es um die 130mW wenn er durchschaltet.

Verbinde den MosFET immer über einen 10 bis 30 Ohm Widerstand mit dem 
PWM-Pin des Controllers.

Die PWM Frequenz sollte nicht über 10kHz liegen, du hast ja keinen 
Treiber für das Gate.
Als Treiber (für höhere Frequenzen) eignet sich eine Komplementäre 
Anordnung eine PNP und NPN Transistors. (BC547 und BC557)


Zwischen Gate und Source solltest du einen sehr großen Widerstand hängen 
(100k Ohm) damit das Gate entladen werden kann.

--------------

Der BC547C hat eine hohe Verstärkung (300 bis 500 fache des Basis 
Stroms), er kann aber nur 100mA schalten.
Wenn man mal von der 100 Fachen Verstärkung ausgehen würde brauchst du 
minimal 1mA Basis-Strom um ihn durchzuschalten.

An OC1A befindet sich R3, der ist 402 Ohm groß und lässt somit 11mA 
durch.
Du kannst den Portpin entlasten da.


Wie viel Strom fließen durch die farbigen LEDs?
In Summe dürfen es jedenfalls nicht mehr als 100mA sein.
100mA/6 = 16mA pro Farbe

Die LEDs brauchen noch einen Vorwiderstand, schau mal wie hoch die 
Durchbruchspannung bei dem entsprechenden Strom ist.

z.B.:
An einer roten LED fällt eine Spannung von 1.85V ab wenn durch ihr ein 
Strom von 20mA fließt.
Bei einer gelben sind das 2V und bei einer weißen 2.8 bis 3V.

Für die rote kann man einen Vorwiderstand von (5-1.85)/0.016 = 196,875 
Ohm (200 Ohm) nehmen.

--------------

von Mike J. (emjey)


Lesenswert?

Ohje, ich habe den Text ein paar mal verändert und jetzt ist er unlesbar 
geworden.

> Du kannst den Portpin entlasten da.
ersetzen durch:  Du kannst so den Portpin etwas entlasten.

zum MosFET Treiber:
http://www.mikrocontroller.net/attachment/35809/Bild_2.png

von Roland K. (chozo)


Angehängte Dateien:

Lesenswert?

Hallo,

danke Mike für deine ausführliche Hilfe!

Zum ersten Punkt:
Ich habe einen Treiber wie von die vorgeschlagen eingebaut.
Diesen habe ich jedoch etwas modifiziert, und nur die Bauteile 
eingebaut, die ich für notwendig halte. Hoffe das stimmt so.

Punkt Zwei:
Wie weiter oben beschrieben habe ich die Vorwiderstände der LEDs bereits 
in die Kabel eingelötet.
Den Basiswiderstand des Transistors für die PWM habe ich nun angepasst, 
da hier ein Maximalstrom von 20mA fließt.

Hoffe meine Änderungen sind nicht total falsch.

Grüße
Roland

von Mike J. (emjey)


Angehängte Dateien:

Lesenswert?

Es sieht alles gut aus.

Wie hoch ist Vcc bei dir?
Mit dem Gate Treiber schaffst du es nicht eine höhere Spannung von über 
4.4V an das Gate zu legen.
Die maximale Spannung am I/O-Pin ist 5V (da der AVR mit 5V versorgt 
wird) und dann fällt da noch die Basis-Emitter-Spannung (0.6V) ab.

Schau dir mal den Anhang an, mit diesem Treiber kannst du an das Gate 
eine Spannung von Vcc-0.6V legen.

6 * 20mA= 120mA sind doch zu viel für den kleinen Transistor, der 
schafft nur 100mA. Oder sind die nicht alle gleichzeitig an?

Du kannst auch einen kleinen N-kanal MosFET nehmen dem stört es dann 
nicht wenn alle LEDs leuchten sollten.

----------

Wenn du einen kleinen schnellen Treiber haben möchtest schau dir mal den 
im Anhang an, den verwende ich häufig.
Der Treiber ist aber invertierend, das heißt: wenn der PWM Eingang auf 
Low ist, dann ist das Gate des MosFET auf High.
(dauert ca. 60ns bis er umgeschaltet hat)


Wenn der MosFET standardmäßig aus sein soll kann man bei der Basis des 
linken Transistors einen 10k Widerstand nach Vcc gehen lassen.

Wenn du bei dem AVR nutzt man dan den Modus "Set On Compare match".

von Roland K. (chozo)


Lesenswert?

Hallo,

Vcc ist bei mir 12V.
Mir ist eben aufgefallen, dass ich mit 12V vermutlich keinen "normalen" 
FET als Schalter verwenden kann. Ich habe bei diversen Onlineanbieter 
ein paar nicht Logic Level FETs untersucht, und leider hatten alle eine 
Ugs von ~20V.
Am einfachsten wird es sein, wenn ich einen Darlingtontransistor 
verwende bzw. einen BD437 mit einem BC547 kombiniere.

@mike
Danke für deine Hilfe!
Beim PWM-Transistor beträgt der Strom maximal 20mA.
Ein schneller Treiber für den FET wird eigentlich nicht benötigt, da die 
Frequenz maximal 100Hz beträgt (Heizfolie).

Grüße
Roland

von Simon L. (simon_l)


Lesenswert?

Hi,

die 20V Ugs sind ein Maximalwert! Bei 20V brennt die Gateisolierung 
durch. Ein normaler FET wird mit etwa 15Vgs betrieben, in den 
Datenblättern ist meist der Rdson @10V angegeben, Logig-Level-FETs 
erreichen schon bei 4,5V einen guten Rdson. z.B der IRF8252

Gruß Simon

von Mike J. (linuxmint_user)


Lesenswert?

Ich nutze in meinem Schaltungen oft kleine FETs die bis zu 3A schalten 
können und im SOT23 Gehäuse daherkommen.
Die maximale Gatespannung wird mit 8V angegeben, bei 1.8V am Gate sind 
sie aber schon offen.

von Roland K. (chozo)


Angehängte Dateien:

Lesenswert?

Ich habe nun versucht alle Vorschläge soweit umzusetzen.
Zur Ansteuerung des IRFZ44N verwende ich nun nur mehr einen BC547C, da 
ich den vorgeschlagenen BC557 nicht benötige (Frequenz ~100Hz).
Die nötige Spannung sollte soweit auch kein Problem darstellen (VCC = 
12V).

Wenn es keine Einwände mehr gibt werde ich beginnen das Board zu 
entwerfen.

Danke für die Hilfe!
Roland

von Mike J. (linuxmint_user)


Lesenswert?

Informiere dich mal über den "Spannunsfolger".
Du gibst 5V über den PWM-Pin an die Basis des NPN-Transistors und am 
Emitter liegt dann eine Spannung von maximal 4.4V an.

Im Datenblatt fängt die Kurve der "Typical Transfer Characteristics" 
erst bei 4.5V an, das wär also sehr knapp.

Also bei 100Hz kannst du direkt den PWM-Pin über die 15 Ohm mit dem Gate 
verbinden.

Nimm die Schaltung "MosFET_Treiber_invertierend.png" , dann liegen 
wirklch 12V am Gate an.

Programmierst du den AVR in einer anderen Fassung?
Wenn nicht musst du den 6 Poligen ISP-Sockel (+5V,GND,RESET, 
MOSI,MISO,SCK) noch hinzufügen.
An RESET muss dann ein 10k Widerstand und 100nF, wenn Reset nach Masse 
gezogen wird begibt sich der AVR in den Programmiermodus.

von Roland K. (chozo)


Angehängte Dateien:

Lesenswert?

Hallo,

aus Zeitgründen kann ich mich leider erst jetzt wieder melden.
Ich habe den Treiber von Mike J. zur Steuerung meines FETs eingebaut.
Meine Transistoren sind vom Typ BC547C anstatt der BC847C, da ich noch 
einige davon zur Verfügung habe. Probleme dürften dadurch nicht 
auftreten.

Bitte um eine letzte Kontrolle.

Grüße
Roland

von Mike J. (linuxmint_user)


Lesenswert?

Der Transistor Q10 (vom Treiber) :

Momentan ist es so dass der PullUp widerstand R5 und der Basiswiderstand 
R11 einen Spannungsteilerbilden.
Wenn der Controller-Ausgang jetzt auf Masse gesetzt liegt an der Basis 
immer noch eine Spannung an die höher als 0.6V ist.

Lösung:
Verlege den Basiswiderstand R11 zwischen den Basis-Anschluss von Q10 und 
dem unteren Anschlusspunkt von R5, dann kann der I/O-Pin des AVR die 
Basis richtig auf Masse ziehen.


Sicherheit :
Du hast noch nicht über den Temperatursensor gesprochen, das kann z.B. 
ein NTC oder PTC sein. Kosten um die 33 cent bei Reichelt.

Es geht auch zur Not mit einer Diode wie die 1N4148, deren 
Durchbruchspannung sinkt etwas mit steigender Temperatur.
Bei 20°C 0.6V und bei 100°C vielleicht 0.5V .
(mit heißem Wasser mal ausprobieren, vorher Silikonschlauch um die 
Diode)

Wenn das Wasser verdunstet ist gibt es keine Flüssigkeit mehr die kühlt 
und dann steigt die Temperatur der Schale.

Du hast ja noch den ADC5 frei und wandelst eh ADC werte :)

von Roland K. (chozo)


Angehängte Dateien:

Lesenswert?

Hallo Mike,

danke für deine ausführliche Hilfe!
Ich habe noch ein paar Änderungen, inkl. deiner Vorschläge, im 
Schaltplan vorgenommen, und hoffe, dass diese nun korrekt sind.
Als Temperatursensor verwende ich einen LM35.

Ab welcher Temperatur würdest du vorschlagen die Heizfolie 
auszuschalten?
Ich denke ~60-70°C sind ausreichend.

von Mike J. (linuxmint_user)


Lesenswert?

Ja, das ist nicht so einfach.
Mir ist schon mal ein Kompotschälchen zersprungen als ich es mit heißem 
Wasser unter dem Wasserhahn abspülen wollte.

Ich denke dass 20W nicht so extrem viel sind und die Schale wird sich ja 
nicht so schnell aufheizen, aber das muss man ausprobieren.

Wenn ich das Wasser meiner 1Liter Ätzküvette auf 45 bis 50 Grad bringen 
möchte dauert das mit einem 50W Aquarienheizstab bestimmt eine Stunde.

Ich würde es erst mal mit 60 Grad probieren und den Sensor in der Nähe 
der Heizfolie befestigen, einfach um die Temperaturunterschiede nicht zu 
groß werden zu lassen.

Gehe auch von dem schlimmsten Fall aus dass die Schale mal bricht (aus 
welchem Grund auch immer) und gestalte es so dass das Wasser nicht über 
die Elektronik/Netzteil fließen kann.

Nutzt du eine Loch/Streifenrasterplatine für den Aufbau oder ätzt du 
eine Platine?

Ich habe damals so viel Zeit für einen gescheiten Streifenrasteraufbau 
verbraucht dass ich jetzt fast nur noch ätze, inclusive der Erstellung 
des Layouts bin ich damit etwas schneller, hab nicht so viele Lötfehler 
und spare im Endeffekt dann doch richtig Zeit ein :)

von Roland K. (chozo)


Lesenswert?

Hallo Mike,

sorry, dass ich mich erst jetzt wieder melde.
Habe den Thread nach erfolgreicher Fertigstellung der Duftschale leider 
vergessen.

Zur Temperatur:
Den Sensor habe ich noch nicht dazu gebaut, da die Schale und die Luft 
im Gehäuse maximal um die 60°C, ohne Wasser, erreicht. Dies sollte auch 
für die Bauteile kein Problem darstellen.

Bzgl. einer gebrochenen Schale habe ich das Problem, dass die Elektronik 
nur unter dieser Platz hat. Werde bei Gelegenheit aber eine 2A Sicherung 
einbauen.

Meine Platinen ätze ich mir selber ebenfalls mit einem 50W Heizstab. 
Evtl. lasse ich mir beim Glaser aber eine größere anfertigen, in der 
dann ein 150W Stab hineinkommt.

Eine Frage hätte ich noch:
Wenn der IRFZ44N an keiner Last hängt (keine Heizfolie angeschlossen), 
dann beginnt der Controller wahllos die LEDs anzusteuern. Dieser Umstand 
hat mir einen PWM-Transistor zerstört.

Woran kann das liegen?
Dem Controller müsste egal sein ob an einem Ausgang etwas angeschlossen 
ist oder nicht.

Grüße
Roland

von Mike J. (linuxmint_user)


Lesenswert?

Es könnte höchstens der Transistor der an PB1 hängt kaputt gegangen 
sein, da über ihn mehr als 120mA fließen wenn alle LEDs an sind.

Den kannst du auch durch einen N-Kanal MosFET ersetzen dann ist es an 
der Stelle nicht mehr so kritisch.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.