Hallo zusammen, vorweg schicke ich, dass ich kein Profi bin und mir alles soweit selbst angelesen habe. Der Profi möge mir den laienhaften Schaltplan bitte nachsehen. Zum großen Problem: Ich habe einen AtMega328p der über einen LM35 ein Heizelement steuern soll. Die Schaltung erfolgt über ein Mosfet IRLZ34n. Soweit so gut, leider habe ich am Gate des Mosfet immer ca 0.5v anliegen, was für das Mosfet schon reicht zum durchschalten. Ich kann mir nicht erklären wo die 0.5V trotz Schaltung des AVR Ausgangs auf LOW herkommen. Zum kleinen Problem: Wenn ich die Schaltung an meinen USBasp hänge und darüber mit Saft versorge (natürlich ohne Heizung+Lüfter), dann habe ich zwar auch die 0.5V am Gate des Mosfet anliegen, aber der LM35 zeigt korrekte Werte usw. Wenn ich nun aber ein 12V Netzteil an die Klemme anschließe, dann spinnt der LM35 und die Temperatur springt wild herum. Anbei der Schaltplan. Gibt es jemanden der die Muße hätte mir auf den richtigen Weg zu helfen? Für sonstige Verbesserungsvorschläge bin ich äußerst offen und bedanke mich bereits jetzt :) Grüße Andreas
Hallo, nur kurz geschaut: Du kannst nur High-Side auf diese Art schalten. Der MosFet muß mit Source an GND, das ist Bezugspunkt der Steuerspannung. Die Last ist dann Drain nach +12V. Du kannst Dir die Verhältnisse ja selbst vergegenwärtigen: 0V...0,xV (Low-Pegel vom AVR) zwischen Source und Gate -> Fet gesperrt. 3V...xV (High-Pegel vom AVR) zwischen Source und Gate -> Fet leitet. Die BEreiche für Low und Highpegel des AVR stehen in dessen Datenblatt, die nötigen Stuerspannungen im Datenblatt des Fet. Gruß aus Berlin Michael
Andreas J. schrieb: > Ich kann mir nicht erklären wo die 0.5V trotz Schaltung des AVR Ausgangs > auf LOW herkommen. Wogegen sind die 0,5V gemessen? Wie ist der Pin initialisiert und geschaltet? Hast du die 0,5V auch dann, wenn ein High ausgegeben werden soll? > Soweit so gut, leider habe ich am Gate des Mosfet immer ca 0.5v > anliegen, was für das Mosfet schon reicht zum durchschalten. Wie ist da welche Last an den Mosfet angeschlossen? Die Thresholdspannung ist mindestens 1V. D.h. bei 0,5V Ugs (=Spannung zwischen Gate und Source!) kann noch kein nennenswerter Strom fließen.
> nur kurz geschaut: Du kannst nur High-Side auf diese Art schalten. Der > MosFet muß mit Source an GND, das ist Bezugspunkt der Steuerspannung. > Die Last ist dann Drain nach +12V. > Hallo Michael, besten Dank! Ich hatte über diesen Punkt nachgedacht und es dann genau falsch rum gemacht :) Habe die Änderungen in den Schaltplan übernommen. Siehe anbei. >>Vref gehört sicher nicht an VCC. Hallo Stefan, in allen Grundschaltungen die ich mir angeschaut habe, war AREF an VCC geschaltet. U.a. hier wurde das so gemacht: https://www.darc.de/uploads/media/ATMEGA_R17.pdf Wie wäre es denn korrekt? >>Wogegen sind die 0,5V gemessen? Wie ist der Pin initialisiert und >>geschaltet? Hast du die 0,5V auch dann, wenn ein High ausgegeben werden >>soll? >>Wie ist da welche Last an den Mosfet angeschlossen? Die >>Thresholdspannung ist mindestens 1V. >>D.h. bei 0,5V Ugs (=Spannung zwischen Gate und Source!) kann noch kein >>nennenswerter Strom fließen. Hallo Lothar, 0.5V gegen GND gemessen. Der Pin ist initialisiert mit "pinmode output" und auf LOW gesetzt. Wenn ich "HIGH" setze, dann liegen 5V an, das scheint also korrekt. Die Last ist an dem Mosfet über zwei klemmen angeschlossen. Mein 12V Netzteil hat zwei identische 12V ausgänge (selbes GND), einmal 12V gehen zu X3 im Schaltplan, weitere 12V gehen zu X4 im Schaltplan. Die Last ist an die Klemmen X2 angeschlossen und soll die 12V von X4 schalten. Aktuell habe ich als Last nur eine LED mit Vorwiderstand angeschlossen, und die hat in meiner (fehlerhaften) Schaltung schon geleuchtet. Ich mutmaße, das liegt an der fehlerhaften Beschaltung des Mosfet. Der aktuelle Schaltplan ist wie gesagt nochmal angefügt. Wenn ich weiss wie das mit AREF/AVCC richtig gemacht wird, passe ich diesen Teil noch an. Danke an alle Helfenden! Grüße Andreas
Hallo, Andreas J. schrieb: > Wenn ich weiss wie das mit AREF/AVCC richtig gemacht wird, passe ich > diesen Teil noch an. so, wie es das Datenblatt des AVR sagt. ARef ist entweder Eingang für eine externe Referenzspannung oder Anschluß für einen Kondensator (100n) wenn eine interne Referenzsspannung genutzt wird. Vcc kann intern als Referenz gesetzt werden, es gibt also keinen Grund, diese mit Vcc extern zu verbinden. Was mag passieren, wenn man intern z.B. den ADC auf die interne BandGap-Referenz setzt und damit 2,5V oder 1,1V an ARef zu Vcc verbunden wird? AVcc gehört entweder direkt an Vcc oder über eine kleine Drossel, wenn man den ADC benutzt und Störungen verringern will. Steht auch im Datenblatt. Ansonsten gehören dicht an Vcc/GND und AVcc/GND 100n Kondensatoren um kurze Stromspitzen bei den internen Schaltvorgängen des ICs abzufangen. Jede Leitung hat eine Induktivität und so können manchmal schon wenige mm diesen Kondensator wirkungslos machen. Gruß aus Berlin Michael
Andreas J. schrieb: > wie das mit AREF/AVCC richtig gemacht wird Das steht im Datenblatt... An Aref kommt nur ein Pufferkondensator gegen GND. > in allen Grundschaltungen die ich mir angeschaut habe, war AREF an VCC > geschaltet. Du hast wahrscheinlich fehlerhafte Anfängerschaltungen angesehen. > 0.5V gegen GND gemessen. Hast du die 0,5V auch, wenn der Pin nirgends angeschlossen ist?
Hast du den IRLZ34n evtl. falsch herum angeschlossen (also deinen IO an Source, und die Last an Gate...)? Das könnte dann die 0.5V erklären... Pinbelegung: 1 = Gate 2 = Drain 3 = Source http://www.irf.com/package/hexfet/to220ab.pdf
> so, wie es das Datenblatt des AVR sagt. > ARef ist entweder Eingang für eine externe Referenzspannung oder > Anschluß für einen Kondensator (100n) wenn eine interne > Referenzsspannung genutzt wird. Vcc kann intern als Referenz gesetzt > werden, es gibt also keinen Grund, diese mit Vcc extern zu verbinden. > Was mag passieren, wenn man intern z.B. den ADC auf die interne > BandGap-Referenz setzt und damit 2,5V oder 1,1V an ARef zu Vcc verbunden > wird? > > AVcc gehört entweder direkt an Vcc oder über eine kleine Drossel, wenn > man den ADC benutzt und Störungen verringern will. > Steht auch im Datenblatt. > > Ansonsten gehören dicht an Vcc/GND und AVcc/GND 100n Kondensatoren um > kurze Stromspitzen bei den internen Schaltvorgängen des ICs abzufangen. > Jede Leitung hat eine Induktivität und so können manchmal schon wenige > mm diesen Kondensator wirkungslos machen. > Hallo Michael, danke, auf die Idee mit dem Datenblatt hätte ich auch gleich kommen können, bevor ich mir (wie Lothar sagte) irgendwelchen Mist "im Internet" anschaue. Da habt ihr Recht! >> 0.5V gegen GND gemessen. >>Hast du die 0,5V auch, wenn der Pin nirgends angeschlossen ist? Wenn ich alles abklemme, dann nichts messbares. Vermutlich kamen die 0.5V von der falschen Mosfet beschaltung. Ich habe den Schaltplan nochmals angepasst und die Pufferkondensatoren eingebaut (sorry für die schiefen Verbindungen, mir ging der Platz aus) Zum Thema Datenblatt und LM35 Probleme habe ich auf Seite 7 (hier: http://cdn-reichelt.de/documents/datenblatt/A200/DS_LM_35.pdf ) einige Applikationen gefunden. Frage mich jedoch an dieser Stelle, wenn ich probleme mit einer Kapazität durch die Leitung (Flachbandkabel 3 Adern, ca 50cm) hätte, wieso habe ich die Probleme nicht, wenn ich über USBasp mit SPannung versorge? Nochmals Danke und Grüße Andreas
Danke an alle, die oben gannnten Probleme scheinen fürs Erste gelöst. Nach wie vor habe ich zwar 0.48V am Gate des Mosfet, aber es wird nicht geschaltet. Die Störungen des LM35 sind mit 100nf gegen GND und einem 1k Widerstand zum AVR beseitigt. AREF auf INTERNAL zu setzen klappt jetzt mit der vorgenannten empfohlenen Beschaltung auch. Einziges Problem das bleibt/auftauchte, während die Heizung eingeschaltet ist, springen die Temperaturwerte noch herum. Das habe ich jetzt erstmal so gelöst, dass während einer Heizphase (die immer 15s dauert) nichts gemessen wird. Wenn da noch jemand eine Idee hätte, wäre das toll ;) Grüße Andreas
Die 0,5 am Ausgang des AVR sind entweder ein gravierender Messfehler oder ein gravierender Schaltungsfehler. Dass muss zuerst behoben werden, alles andere halte ich für Zeitverschwendung. Messe die Spannung direkt am GND Pin des AVR. Wieviel Volt misst du da? Tenne die Leitung zum Gate des MOSFET, so dass am AVR Pin gar nichts mehr hängt. Wieviel Volt misst du dann bei Low und High Pegel? Wieviel Volt liegen (in getrenntem Zustand) am Gate des MOSFET und am Source Anschluss des MOSFET an? Wieviel Volt misst du an beiden Anschlüssen von R9?
Stefan U. schrieb: > Die 0,5 am Ausgang des AVR sind entweder ein gravierender Messfehler > oder ein gravierender Schaltungsfehler. Dass muss zuerst behoben werden, > alles andere halte ich für Zeitverschwendung. > > Messe die Spannung direkt am GND Pin des AVR. Wieviel Volt misst du da? > > Tenne die Leitung zum Gate des MOSFET, so dass am AVR Pin gar nichts > mehr hängt. Wieviel Volt misst du dann bei Low und High Pegel? > > Wieviel Volt liegen (in getrenntem Zustand) am Gate des MOSFET und am > Source Anschluss des MOSFET an? > > Wieviel Volt misst du an beiden Anschlüssen von R9? Guten Morgen, > Messe die Spannung direkt am GND Pin des AVR. Wieviel Volt misst du da? 0.48V > Tenne die Leitung zum Gate des MOSFET, so dass am AVR Pin gar nichts > mehr hängt. Wieviel Volt misst du dann bei Low und High Pegel? Nach trennen: 0.48V LOW 4.25V HIGH > Wieviel Volt liegen (in getrenntem Zustand) am Gate des MOSFET und am > Source Anschluss des MOSFET an? > Nach Trennen: Da messe ich 0V. edit: zwischen Gate und Source? Oder jeweils zu GND? > Wieviel Volt misst du an beiden Anschlüssen von R9? Da messe ich nach Trennen 0V Grüße Andreas
:
Bearbeitet durch User
> Messe die Spannung direkt am GND Pin des AVR. Wieviel Volt misst du da? > 0.48V Aha, also ist GND nicht GND! Hier liegt der Hase im Pfeffer. Irgendwo zwischen dem schwarzen Kabel deines Multimeters und dem GND Anschluss vom Mikrocontroller ist was falsch. Da müsste eigentlich eine direkte möglichst neiderohmige Verbindung ohne großartige Schnörkel und Schleifen bestehen. Wenn das so wäre, hättest du Null Volt gemessen, nicht 0,48. Korrgiere diesen Fehler, und wenn das der Einzige war, lösen sich alle deine anderen Probleme in Luft auf.
Stefan U. schrieb: >> Messe die Spannung direkt am GND Pin des AVR. Wieviel Volt misst du da? >> 0.48V > > Aha, also ist GND nicht GND! Hier liegt der Hase im Pfeffer. Irgendwo > zwischen dem schwarzen Kabel deines Multimeters und dem GND Anschluss > vom Mikrocontroller ist was falsch. Da müsste eigentlich eine direkte > möglichst neiderohmige Verbindung ohne großartige Schnörkel und > Schleifen bestehen. Wenn das so wäre, hättest du Null Volt gemessen, > nicht 0,48. > > Korrgiere diesen Fehler, und wenn das der Einzige war, lösen sich alle > deine anderen Probleme in Luft auf. Das könnte ein Missverständnis bei mir gewesen sein, ich dachte ich sollte die Spanung am Gate nicht gegenüber GND am Eingang (vom 12v Supply) messen, sondern gegenüber GND am AVR. Oder war das doch so gemeint?
Kurz gesagt: Du sollst herausfinden, ob alle GND Anschlüsse auf gleichem Potential liegen. Zwischen GND vom Netzteil udn GND vom µC darf keine messbare Spannugn sein. Ebenso nicht zwischen GND vom Netzteil und GND vom MOSFET. Da dein µC angeblich 0,5V aus gibt obwohl der Ausgang kaum belastet wird, gehe ich davon aus, dass der GND Anchluss des µC eben nicht auf GND liegt.
Andreas J. schrieb: > nicht gegenüber GND am Eingang (vom 12v Supply) messen, sondern > gegenüber GND am AVR. Alles, was GND heißt, ist miteinander verbunden und hat gleichspannungsmäßig das selbe Potential. Dein GND ist irgendwo aufgetrennt, die 0,5V passen genau zu der Spannung, die an einer (Schutz-)Diodenstrecke abfällt...
Lothar M. schrieb: > Andreas J. schrieb: >> nicht gegenüber GND am Eingang (vom 12v Supply) messen, sondern >> gegenüber GND am AVR. > Alles, was GND heißt, ist miteinander verbunden und hat > gleichspannungsmäßig das selbe Potential. Dein GND ist irgendwo > aufgetrennt, die 0,5V passen genau zu der Spannung, die an einer > (Schutz-)Diodenstrecke abfällt... Hallo zusammen, sorry für die späte Rückmeldung, bin diese Woche etwas im Stress. Ich habe die GND Punkte gegeneinander gemessen. Laut meinem (einfachen) Multimeter liegen demzufolge maximal 2-3mV Potentialdifferenz zwischen ihnen an. Ich bin also dem Problem mit den 0.48V am Gate des Mosfet nicht auf die Spur gekommen. Durchgansprüfer zeigt mir auch an, dass alle GNDs miteinander verbunden zu sein scheinen. Könnte das Mosfet oder der AVR defekt sein, nach dem ursprünglich falschen Schaltplan? Ich habe beides aus der alten Schaltung recycelt.... Grüße Andreas
Andreas J. schrieb: >> Messe die Spannung direkt am GND Pin des AVR. Wieviel Volt misst du da? > 0.48V Wogegen hast du dann da gemessen? >> Tenne die Leitung zum Gate des MOSFET, so dass am AVR Pin gar nichts >> mehr hängt. Wieviel Volt misst du dann bei Low und High Pegel? > Nach trennen: > 0.48V LOW > 4.25V HIGH Das ist also die Ausgangsspannung am leeren IO-Pin gegen Masse am uC gemessen? Was für ein Messgerät verwendest du? Welchen Innenwiderstand hat das Ding? Hast du den IO-Pin tatsächlich auf Ausgang geschaltet?
Guten Morgen Lothar, >>> Messe die Spannung direkt am GND Pin des AVR. Wieviel Volt misst du da? >> 0.48V > Wogegen hast du dann da gemessen? Ich habe die Leitung direkt hinterm Pin getrennt und dann gegen GND am AVR und auch GND am 12V Eingang (sind laut Durchgangsprüfer auch verbunden) gemessen. >>> Tenne die Leitung zum Gate des MOSFET, so dass am AVR Pin gar nichts >>> mehr hängt. Wieviel Volt misst du dann bei Low und High Pegel? >> Nach trennen: >> 0.48V LOW >> 4.25V HIGH > Das ist also die Ausgangsspannung am leeren IO-Pin gegen Masse am uC > gemessen? Exakt! > Was für ein Messgerät verwendest du? Ein 08/15 Multimeter von Voltcraft (Model 91). Bisher sind mir da keine Unstimmigkeiten aufgefallen...Ich könnte mir aber von einem Bekannten ein namhaftes Modell ausleihen! > Welchen Innenwiderstand hat das Ding? Da bin ich überfragt :( > Hast du den IO-Pin tatsächlich auf Ausgang geschaltet? Eigentlich schon, und zwar mit (ich verwende die Arduino IDE, Digital Pin 2 dort ist direkt am µC der Pin 4): pinMode (2, OUTPUT); direkt danach: digitalWrite(2, LOW); Beste Grüße Andreas
Sieht so aus, als sei der Mikrocontroller defekt.
> 0.5V am Pin
Schaltet der FET?
Funktioniert alles, was an diesem Pin hängt so, wie es soll?
Welches Spannung hast Du auf der getrennten Leitung, welche eigentlich
an den Pin angeschlossen werden soll, wenn er getrennt ist?
Sag mal, der 78L05 - wird der warm ... ähhh also sehr warm ... heiß
...!?
Hat der Temperatursensor auch einen eigenen Blocker?
Gruß
Jobst
Guten Morgen! >> 0.5V am Pin > > Schaltet der FET? Bei 0.5V noch nicht, erst wenn der AVR den Pin auf HIGH setzt. Dann aber ordnungsgemäß wie erwartet. > Funktioniert alles, was an diesem Pin hängt so, wie es soll? Bis auf die komischen 0.5V funktioniert sonst alles wie gewünscht. (Einziges Problem: Durch die ungeschirmte LM35 Leitung, die direkt neben der 12V Leitung von der Heizung verlegt ist, springen die LM35 Messwerte während einer Heizphase wild herum.) > Welches Spannung hast Du auf der getrennten Leitung, welche eigentlich > an den Pin angeschlossen werden soll, wenn er getrennt ist? Auf Mosfet Seite? Da kann ich mich jetzt ehrlich gesagt nicht genau entsinnen, sorry :( > > Sag mal, der 78L05 - wird der warm ... ähhh also sehr warm ... heiß > ...!? > Nein, mit der Hand ist nichts feststellbar. Alles scheint "normal". > Hat der Temperatursensor auch einen eigenen Blocker? Vout des LM35 ist über einen 1K Widerstand am AVR angeschlossen. Außerdem 100nf gegen GND. Oder was meintest Du mit Blocker? Grüße Andreas
Für alle interessierten hier die Auflösung: Platine neu geäzt und bestückt -> 0.5V sind verschwunden. Offenbar hat es sich also tatsächlich um einen Defekt des AVR bzw. Mosfets gehandelt. Grüße Andreas
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.