Es gibt da das RepRap-Projekt, bei dem die Elektroniken sowohl einen ATmega betreiben als auch recht hohe Ströme (bis 15 Ampére) für die Heizungen über einen MOSFET aus dem gleichen Netzteil schalten. Oft ist das ein handelsübliches PC-Netzteil. Welches genau, da hat die (weltweite) Community wenig Einfluss drauf. Selber bin ich zwar Maschinenbau-Ingenieur, habe also nur begrenzt Ahnung von Elektronik, betreue aber auch die Generation 7 Elektronik. Es gibt immer wieder Meldungen, dass beim einschalten der Heizung der Brown-Out-Detector (4.3V) des ATmega (20MHz) auslöst. Das kann ich bei meinem eigenen Aufbau nachvollziehen. Offensichtlich zieht eine plötzliche Last auf der 12V-Linie auch die 5V-Linie mit runter. Fette Elkos (1000 uF) helfen da nicht, denn bei 10A sind die in Nullkommanix leer. Wie das bislang geschaltet ist, sieht man im angehängten Bild. Die 5V gehen an den ATmega, auf den 12V sind die Lastwechsel (oft per PWM mit wahlweise 70Hz - 70kHz). Die Frage ist jetzt, wie man den kurzen Spannungsausfall überbrücken und die Elektronik gegenüber nicht ganz so tollen Netzteilen robuster machen kann. Gehe ich nach http://www.sprut.de/electronic/switch/12vsnt/12vsnt.html (Scope-Bilder ganz unten), sind das etwa 2 Millisekunden. Idee 1: Die 5V (max. 300mA) durch eine Schottky-Diode laufen lassen. Dann gehen zwar 0,3V verloren, doch das Netzteil kann den Puffer-Elko nicht mehr leer saugen. Der Puffer-Elko würde seine Funktion beibehalten. Idee 2: Die 5V aus dem Netzteil weg lassen und den ATmega über einen LM7805 aus den 12V betreiben. Ist der LM7805 schnell genug, sollten die Spannungseinbrüche auf den 5V ausbleiben. Klingt das gut? Gibt es noch bessere Lösungen?
Die Sache mit der Schottky-Diode und einem angemessenen Kondensator dürfte doch schon mal helfen Markus H. schrieb: > Gehe ich nach > http://www.sprut.de/electronic/switch/12vsnt/12vsnt.html (Scope-Bilder > ganz unten), sind das etwa 2 Millisekunden. Ich würde da nicht nach irgendwelchen Bilder aus dem Netz gehen, sondern die eigenen Signale auf dem Scope ansehen. Das dürfte deutlich mehr Aussagekraft haben. Markus H. schrieb: > Es gibt immer wieder Meldungen, dass beim einschalten der Heizung der > Brown-Out-Detector (4.3V) des ATmega (20MHz) auslöst. Was nun? Tut oder tut nicht? Fragt sich natürlich, warum du bei solch einer Versorgungsspannungslage den Brown-Out auf 4.3V stehen hast. Oder läuft der Prozessor wirklich mit über 50% Auslastung (von Warteschleifen mal abgesehen)? Wenn man die paar mA aus einem separatem Linearregler holt, der über Diode und Lade-C abgekoppelt ist, wäre man allerding auf der sicheren Seite. Stromsparen scheint ja nicht das Thema zu sein.
Ich würd auch sagen: a.) separates Netzteil b.) Brownoutspannung runtersetzen c.) Brownout abschalten d.) Fehler suchen e.) etc. nach Wunsch k.
Michael schrieb: > Die Sache mit der Schottky-Diode und einem angemessenen Kondensator > dürfte doch schon mal helfen Dann werde ich das mal ausprobieren. > Ich würde da nicht nach irgendwelchen Bilder aus dem Netz gehen, sondern > die eigenen Signale auf dem Scope ansehen. Das dürfte deutlich mehr > Aussagekraft haben. Erst mal ein Scope haben :-) > Markus H. schrieb: >> Es gibt immer wieder Meldungen, dass beim einschalten der Heizung der >> Brown-Out-Detector (4.3V) des ATmega (20MHz) auslöst. > > Was nun? Tut oder tut nicht? BOD ausgelöst = Reset = Maschine gestoppt = tut nicht. > Fragt sich natürlich, warum du bei solch einer Versorgungsspannungslage > den Brown-Out auf 4.3V stehen hast. Oder läuft der Prozessor wirklich > mit über 50% Auslastung (von Warteschleifen mal abgesehen)? Der Prozessor ist bis zum Rand ausgelastet. Je höher der Takt, desto schneller kann die Maschine arbeiten. Vier Schrittmotoren synchronisiert laufen zu lassen ist eine ziemlich rechenaufwendige Geschichte. Manche stellen dan BOD tatsächlich auf 2.7V, doch da die Heizungen die ganze Zeit temperaturgeregelt laufen bedeutet das ja auch, dass er immer wieder ausserhalb der Spezifikation läuft. Da kribbelt's mir in den Zehennägeln. > Wenn man die paar mA aus einem separatem Linearregler holt, der über > Diode und Lade-C abgekoppelt ist, wäre man allerding auf der sicheren > Seite. Stromsparen scheint ja nicht das Thema zu sein.
Klaus De lisson schrieb: > c.) Brownout abschalten Das würde ich nicht empfehlen, so war das am Anfang. Schaltet man einen ATmega ohne BOD ab hat man gute Chancen, dass danach Programmspeicher inklusive Bootloader durch den Wolf ist. Manche haben das fünf Mal am Tag geschafft.
Aber die ATX Netzteile haben doch ein völlig getrenntes 5 Volt Netzteil eingebaut, das für die Standby Sächelchen nämlich. Das wird für USB und die Einschaltfunktion des Hauptnetzteils benutzt.
Matthias Sch. schrieb: > Aber die ATX Netzteile haben doch ein völlig getrenntes 5 Volt Netzteil > eingebaut, das für die Standby Sächelchen nämlich. Das wird für USB und > die Einschaltfunktion des Hauptnetzteils benutzt. Ja, für Standby wird das benutzt. Beim Einschalten (per Software) werden dann die 5VSB mit den normalen 5V zusammen gelegt.
> Idee 1: Geht > Idee 2: Geht > Klingt das gut? Gibt es noch bessere Lösungen? Vermutlich reicht ein Widerstand vor dem Elko, an dem bei Nennstrom noch kene relevante Spannung abfällt, da der uC nur Milliampere brauchen wird. Besser ist das aber nicht. Auch die Methode der aktiven Diode bringt gegenüber dem 7805 keinen Vorteil.
Markus H. schrieb: > Beim Einschalten (per Software) werden > dann die 5VSB mit den normalen 5V zusammen gelegt. Nö, nicht bei den Netzteilen, die ich bisher zerbastelt habe. Dadrin läuft immer das kleine SMPS weiter und versorgt +5V(SB). Aber das kannst du ja leicht mal messen.
Markus H. schrieb: > Klaus De lisson schrieb: >> c.) Brownout abschalten > > Das würde ich nicht empfehlen, so war das am Anfang. Schaltet man einen > ATmega ohne BOD ab hat man gute Chancen, dass danach Programmspeicher > inklusive Bootloader durch den Wolf ist. Manche haben das fünf Mal am > Tag geschafft. Stimmt,... jetzt wo du es sagst fällt mir ein, dass mir das auch oft passiert ist. Nun habe ich jedoch den "Fuse Doctor" .. deshalb hatte ich das vergessen. Gruss k.
Matthias Sch. schrieb: > Markus H. schrieb: >> Beim Einschalten (per Software) werden >> dann die 5VSB mit den normalen 5V zusammen gelegt. > > Nö, nicht bei den Netzteilen, die ich bisher zerbastelt habe. Nicht im Netzteil, aber auf der Gen7 Elektronik ;-) Wobei der Gedanke gar nicht schlecht ist, alles über 5VSB laufen zu lassen. Das sind neben dem ATmega1284P (20mA) noch rund 40mA. Macht 2,6 kWh/Jahr, damit kann die Stromrechnung leben.
Sodele. Nachdem ich zuerst die Version mit "alle Logik über 5V-Standby", dann die Version mit zwei getrennten Netzeilen ausprobiert habe und die Sache nicht einmal ein kleines bisschen besser geworden ist, kam mir langsam der Verdacht, dass das Problem ganz wo anders liegt. Also habe ich ein bisschen an den GND-Leiterbahnen herum gefummelt und siehe da, ich kann jetzt durch alle 255 Leistungsstufen durchschalten, ohne dass der ATmega einen einzigen unerwünschten Mucks macht. Das waren keine negativen Spannungsspitzen auf 5V, sondern positive Spitzen auf GND, was bekanntlich unter dem Strich, bzw. für den Brown-Out-Detektor, ziemlich genau das gleiche ist. Das Ganze habe ich nebst Reparaturanleitung aufgeschrieben. Ich glaube ein nettes Lehrstück, wie man Leiterbahnen nicht verlegen sollte: http://reprap.org/wiki/Gen7_Board_1.2#Improving_Heated_Bed_Tolerance Die neue Version dieser Elektronik soll jetzt drei getrennte Massen (Logik, Schrittmotoren, Heizelemente) bekommen, die nur über 1000 Ohm miteinander verbunden sind. Dann werden irgendwelche Störungen (hoffentlich) immer zu 99% über das Netzteil abgeleitet bevor sie einen anderen Beriech erreichen. Vielen Dank von mir und der RepRap-Community an die Mikrocontroller.net-Community für die tolle Hilfe hier und falls sich jemand wundert, warum die Leiterplatten bei RepRap teilweise so eigenartig aussehen: RepRap-Maschinen können ihre eigenen Platinen fräsen: http://reprap.org/wiki/Gen7_Stories#Markus_.22Traumflug.22_Hitter_showing_Gen7_replication
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.