LabSupply - steuerbares Netzgerät mit M401 - Teil 1 - AZ-Delivery

Einfacher Selbstbau, coole Features

Zielsetzung

Für Versuchsaufbauten benötigt man eine saubere Stromversorgung. Häufig möchte man sie vom Computer aus steuern, z. B. um eine Kennlinie aufzunehmen. Man wünscht sich eine Spannungs- und Strommessung, sowie eine Strom-/ Leistungsbegrenzung und noch mehr.

 

Zwei Blogbeiträge stellen dieses Labornetzgerät vor, das einige Merkmale professioneller Geräte bietet und doch einfach aufzubauen ist. Der „Pfiff“ liegt im Sketch, der es steuert.

 

Klassische Laborgeräte sind längsgeregelt. Sie „verbraten“ also eine Menge Energie - oft den größeren Teil. Dazu sind sie viel massiver und komplizierter als das kompakte LabSupply.


Benötigte Komponenten:

1x Nano V3

1x DSN-V288 Volt-/ Amperemeter

1x ACS712 - 5 A

1x StepDown-Wandler M401

1x MCP 42010 elektronisches Potentiometer 10 kΩ

1x Notebook-Netzgerät, 19,5V

Widerstände 1 kΩ, 5,7 kΩ und 4x 470 Ω

Elektrolytkondensatoren: 2.200 µF, 100 µF und 0,1 µF

LEDs: 2x rot, 1x grün und 1x gelb

Lochrasterplatine(n)

 

Konzept

Das LabSupply besteht aus einem Notebook-Netzteil, das 19,5 V abgibt und einem StepDown Wandler M401. Wir verwenden also zwei Schaltnetzteile. Besondere Sorgfalt ist somit nötig, um die Wandler-Artefakte (Störungen ab ≥ 180 kHz und darüber) zu begrenzen.

 

Wir erstellen ein Gerät mit folgenden Eigenschaften:

-   Spannung einstellbar: 1,3 - 6 V bei bis zu 4 A; Genauigkeit ~ 0,1 V bei 19,5V Input

-   Spannungsbereich erweiterbar für Eingangsspannungen > 19,5 V Input (max. 40 V)

-   Geeignet für nahezu jeden Typ von LabTop-Netzgerät

-   Die Spannung ist außerdem auch manuell einstellbar

-   Rauschen ca. 10 mV (@180 kHz) bei 1A Last

-   Optionale lastabhängige Spannungsregelung (abschaltbar)

-   Spannungsmessung

-   Strommessung

-   Eigenständiges Anzeigeinstrument für Spannung und Strom

-   Kalibrierfunktion mit Protokoll; wichtig bei anderen Eingangsspannungen als 19,5 V

-   Einstellbare Strombegrenzung**

-   Einstellbare Leistungsbegrenzung**

-   Betrieb als Stromquelle**

-   RampUp/ RampDown Funktion**

[** Wird in Teil II des Blogbeitrages beschrieben]

Der StepDown Wandler M401

Der StepDown Wandler M401 kann mit einer Eingangsspannung bis zu 36 V betrieben werden. Ungekühlt leistet er bis zu 4 A Ausgangsstrom, was max. 160 W entspricht. Das sind recht ordentliche Daten. Gekühlt / belüftet leistet er bis zu 8 A.

 

Der Wandler kommt mit einem eingebauten 50 kΩ-Potentiometer, das über einen separaten Schalter verfügt, mit dem das Modul ein-/ ausgeschaltet wird.

Wir ersetzen dieses analoge Potentiometer durch ein elektronisches Poti MCP42010 (10 kΩ) oder MCP 41010 (ebenfalls 10 kΩ). So wird das Modul durch den Nano V3 steuerbar.

Der M401 wird umgebaut

Das mechanische Poti wird vorsichtig ausgelötet, um später das elektronische Potentiometer nutzen zu können. Dabei sind Fingerspitzengefühl und etwas Geduld nötig. Die Platine wird evtl. leicht beschädigt. Hier sehen wir sie mit ausgebautem Poti, das mit zwei Drähten wieder angeschlossen wurde. Der Schalter wird überbrückt (Detailbild: Gebogener weißer Draht):

Das Detailbild zeigt, dass der Poti-Schleifer und der rechte Anschluss verbunden sind. Nun sollten Sie überprüfen, ob der Wandler weiterhin einwandfrei arbeitet. Dieser Zwischenschritt wird unbedingt empfohlen.

Regelbereich des LabSupply

Unser Versuchsaufbau lässt sich von 1,3 V bis 19,5 V mit dem mechanischen Poti regeln. Das spätere LabSupply weist einen kleineren Regelbereich auf: 1,3 V bis 6,3 V. Das reicht uns zwar in der Regel völlig. Aber: Warum ist das so und was kann man ggfls. daran verändern?

Kern der Sache ist die gemeinsame Masse, die wir zwischen dem Wandler M401 und dem Nano V3 sowie seinem elektronischen Poti MCP42010 haben. Warum wir das mechanische 50 kΩ-Poti durch ein elektronisches 10 kΩ-Poti ersetzen, erkläre ich noch.


So sieht das Blockschaltbild aus:


Auf der linken Seite ist der Netzanschluss angedeutet. Dadurch dass wir ein Laptop – Netzteil zur Primärversorgung verwenden, vermeiden wir den Umgang mit der Netzspannung. Seine 19,5 V Ausgangsspannung wird mit dem M401 verbunden (Polarität beachten!). Die schwarz eingezeichnete Masse verbindet die Eingangs – und Ausgangsseite durchgängig.

 

Auch der positive Pol vom Laptop–Netzteil führt zum M401. An dessen Ausgang nehmen wir die geregelte Spannung ab. Das mechanische Poti ist massefrei mit der Schaltung verbunden. Nur deswegen ist der volle Regelbereich verfügbar. Dies ist eine Eigenschaft der Schaltung, die wir mit dem MCP42010 nicht ohne weiteres nachbilden können. Das Poti ist als Rheostat (var. Widerstand) geschaltet, nicht als Spannungsteiler. Der Abgriff (engl. wiper) ist mit einem Pol des Potiwiderstandes verbunden.

Der Regelbereich kann mit einem elektronischen 10 kΩ Potentiometer voll genutzt werden. Versuche mit einem elektronischen 50 kΩ (dem MCP42050) ergaben, dass damit nur rund 20% des Einstellbereiches nutzbar waren. Ein 10 kΩ-Poti ist also die deutlich bessere Wahl.

Will man einen MCP42050 (50 kΩ) einsetzen, um den Regelbereich zu 100% zu nutzen (1,3 V - 19,5 V), dann trennt man die SPI-Steuerung galvanisch z.B. per Optokoppler und spendiert dem 42050 eine eigene, komplett erdfreie Stromversorgung. Ein schönes Alternativprojekt …

 

Tücken mancher LabTop-Netzteile

Technik wird immer „intelligenter“, was auch für Netzteil-Knubbel gilt. Viele davon haben drei Anschlüsse. Wenn man daran misst, findet man 19,5 V -  wie erwartet. Bei kleiner Belastung

bricht sofort die Spannung zusammen. Was ist da los?

 

Tatsächlich braucht das Netzgerät die Information, dass etwas angeschlossen wird und was es ist. Zu dem Thema empfehle ich diesen Blogbeitrag: https://art-of-electronics.blog/labor-tagebuch/#Notebook_Adapter.  Dort findet sich auch eine Lösung dieses Problems.

Versuchsaufbau

Hier der Aufbau in Fritzing-Darstellung:

Die Schaltung

Die Schaltung ist rund um den StepDown-Wandler M401 aufgebaut. Auf der linken Seite kommt die Betriebsspannung 19,5 V / 2.5 A (bis 4 A Input ohne zusätzliche Kühlung möglich) ins Gerät. Parallel zur Eingangsspannung liegt ein Elko von 2200 µF, um die Eingangsspannung nochmals zu glätten und Stromspitzen bei Laständerungen abzufangen. 

 

Die Eingangsspannung gelangt ohne Umwege direkt zum M401. Polarität beachten! Mein Bild ist eine symbolische Darstellung. Die Platine des M401 sieht ein wenig anders aus.

 

Der Nano V3 wird über den USB-Anschluss des Rechners versorgt. Auch über einen weiteren StepDown-Wandler kann man den Nano V3 betreiben. Da der PC für die Steuerung gebraucht wird, scheint mir dieser Weg naheliegender.

 

Auf der Ausgangsseite des Gerätes läuft der Minuspol (!) der geregelten Spannung zwecks Strommessung zunächst durch das DSN-VC288. Am Anzeigegerät ist dafür die dicke, schwarze Leitung (siehe Anleitungs-PDF) vorgesehen. Im Messgerät ist ein Shunt von 0,03Ω eingebaut. Die Spannung, die über diesem Shunt abfällt, wird gemessen. Die dicke, rote Leitung ist die Masse für den Ausgang. Dass die eine Leitung rot ist, ist ein wenig ungewohnt.

 

Die Strommessung des LabSupply erfolgt über den bewährten ACS712-5A. Er ist in den positiven Ausgangspfad eingeschleift und kommt völlig ohne Shunt aus.

 

Die aktuelle Ausgangsspannung wird über einen Spannungsteiler R1/R2 (5,7 k/ 1k) auf ein für den Nano V3 verträgliches Maß reduziert und kommt an A0 an.

 

A1 nimmt das Ausgangssignal des ACS712-5A auf. A2 ist mit dem mechanischen 50 kΩ-Poti verbunden, das ausgebaut wurde. Es wird verwendet, wenn Sie die Ausgangsspannung manuell einstellen möchten und das Gerät dabei ohne PC, sondern z.B. mit einer Powerbank nutzen.

In der manuellen Betriebsart schaltet der Schalter des Potis auf EIN und legt den Anschluss D12 auf + 3,3 V. Hinweis: Im Schaltplan habe ich keinen 10 kΩ-Widerstand von D12 nach Masse eingezeichnet. Offenbar brauchen manche User einen solchen Widerstand am Nano, weil sonst das Potential das Anschlusses D12 „schwimmt“. Am besten gleich nachrüsten.

 

Die LED 4 (in der Reihe ganz unten) ist über einen 470 Ω-Widerstand mit D2 verbunden. Sie leuchtet auf, wenn die manuelle Betriebsart gewählt wird.

 

Die oberste, rote LED 1 zeigt an, dass der gewählte Maximalstrom erreicht wurde (an D3).

Die gelbe LED 2 zeigt an, wenn die Regelung aktiv ist bzw. der Kalibrierlauf (an D4).

Die grüne LED 3 zeigt an, dass LabSupply als Stromquelle aktiv ist (an D5).

MCP42010

Das elektronische Potentiometer MCP42010 (10 kΩ) ist ein 14-Pin Chip. Er enthält zwei Potis, von denen wir nur eines benötigen. Es gibt alternativ den MCP41010, ein 8-Pin Chip mit einem Poti.

 

Das Poti hat 256 mögliche Einstellungen, somit eine theoretische Auflösung von 39 Ω pro Bit. Bedingt durch die Bauart des CMOS-Chips bietet es keine Einstellung „0 Ω“. Es ist immer ein Minimalwiderstand von rund 125 Ω vorhanden.

 

Der Chip verträgt einen maximalen Strom von 1 mA, der durch den Poti-Abgriff („wiper“) fließen darf. Wir haben Glück: Der M401 lässt bei der niedrigsten Ausgangsspannung einen Strom von 0,7 mA durch das Poti fließen, bei der höchsten Spannung 0,4 mA. Das kann bei anderen StepDown-Reglern ganz anders sein. Falls Sie einen anderen Regler „digitalisieren“ wollen, messen Sie bitte zuerst den Strom durch das mechanische Einstellpoti.

 

Diese einfache Schaltung habe ich auf zwei kleinen Lochrasterplatinen aufgebaut und ihr ein kleines Gehäuse spendiert. Es hat sich im praktischen Laborbetrieb gut bewährt.

Der Sketch

 

Der Nutzen des LabSupply kommt aus dem Sketch. Das Gerät kann z.B. einen Akku exakt nach Plan aufladen, kleine Experimente per externer Programmsteuerung ablaufen lassen, oder Regelungsaufgaben übernehmen. Es taugt bis zu einer Ausgangsfrequenz von ~ 50 Hz als „Signalgenerator“, oder als „Stromquelle mit Arbitrary-Generator“.

 

Um diesen Beitrag übersichtlich zu halten, gehe ich hier nur auf einen Teil der Funktionen ein. Der Blogbeitrag Teil 2 beschreibt Strombegrenzung, Stromquellenfunktion, RampUp/ RampDown und Details der Kalibrierung und liefert die Sketches dazu.

 

Sketch Download

 

Übersichtlich dank Commandprocessor

Wie schon beim TDMM Teil 6, verwende ich auch hier wieder den schönen Commandprocessor <MD_cmdProcessor.h> von dieser Github-Seite. Damit wird der Sketch sauber und klar gegliedert. Auch wenn mal viel Code notwendig ist, bleibt alles überschaubar. Bei diesem kleinen Sketch verwende ich fast nur globale Variablen.

 

Nachdem die Bibliotheken eingebunden und die Variablen definiert sind, folgen direkt die Definitionen der Funktionen, die vom Commandprocessor aufgerufen werden können. Einzige Ausnahme ist void handlerHelp, die unterhalb der Anweisungstabelle steht.

 

Nachdem alle void handlerXY definiert sind, folgt die Anweisungstabelle. In der ersten Spalte steht das Kommando, das der Nano V3 über die USB-Schnittstelle erhält. Ganz wichtig dabei: Am CR („Neue Zeile“) erkennt der Prozessor, dass die Anweisung beendet ist. Diese Voreinstellung braucht man für die serielle Schnittstelle.

 

Eine Anweisung wir z.B. so eingegeben: u 2.5 <CR>

Damit stellt man die Ausgangsspannung auf 2.5 Volt ein. Wichtig ist der „ . “ statt des gewohnten

„ , “ für die Dezimalstelle. Das ist uns aus der Programmierung bereits vertraut.

 

Es kann Anweisungen mit mehreren Parametern geben. Darauf gehe ich in Teil 2 ein.

 

In der Anweisungstabelle folgt die Bezeichnung der Funktion, die aufgerufen werden soll. Danach folgt in der Tabelle ein String, der den Parameter zeigt. Der ausgeschriebene Text beschreibt die Funktion. Er wird ausgegeben, wenn Sie mit „h“ oder „?“ die Anweisungstabelle in der Help-Funktion auflisten.

Die nachfolgende Integerzahl bestimmt, in welchem Teil des Help-Blocks die Funktion angezeigt werden soll. Zwischen den Blöcken gibt es eine Leerzeile für bessere Übersicht.

 

Unsere void setup()ist recht kompakt. Die nötigen Dienste werden gestartet, die LEDs leuchten nacheinander auf und damit sind wir auch schon fertig.

Auch die void loop() kommt mit wenigen Anweisungen aus. Gleich die erste Anweisung CP.run(); ruft den Commandprocessor auf. Es folgt eine selbsterklärende Funktion, die den Potischalter abfragt (manuelle Einstellung?), ggfls. die Spannung am mechanischen Poti misst und in eine Einstellung für das elektronische Poti umsetzt.

 

Die nachfolgende Schleife wird nur dann durchlaufen, wenn der Parameter uregler den Wert TRUE hat. Das bedeutet, dass die automatische Lastregelung aktiviert wurde. Der M401 hat einen eigenen Regler, der ausgezeichnet funktioniert. Bei höherer Belastung hat sich die Unterstützung durch den Software-Regelkreis jedoch bewährt. Es ist eine ganz einfache Regelung, die den Potiabgriff des elektronischen Potis so verstellt, dass die gewünschte Ausgangsspannung wieder zur Verfügung steht. Experten der Regelungstechnik sind damit vermutlich nicht zufrieden.

Spannungsmessung

Mit der Funktion void umeasure() erfolgt die Spannungsmessung an A0. Es werden 10 Messungen durchgeführt und daraus der Mittelwert gebildet. In der Fritzing-Darstellung sieht man am Eingang A0, nach dem Spannungsteiler, noch einen 100 nF-Kondensator. Er unterdrückt Wandlerartefakte, die eine Messung stören können, abhängig vom Ausgangsstrom.

 

Nach der Durchschnittsermittlung folgt eine Tabelle mit empirischen Korrekturfaktoren. Die Spannungsmessung ist nicht 100% linear. Eine Fehlerursache ist der erwähnte Kondensator.

Funktionen des LabSupply M401

Der Funktionsumfang ist selbsterklärend. So stellt sich die Funktionstabelle auf dem Bildschirm dar:

Bitte das Zeilenende auf **Neue Zeile** einstellen.

 

?    Help

h    Help

 

u  u Usoll: [V]

r    Regelung ein/aus

um   Spannung messen

im   Strom messen

 

ca   Calibrierlauf

cp   Calibrierdaten ausgeben

wp wp    Wiper setzen 0-255

 

rt   Ramp Funktionstest

 

Wichtigste Funktion ist die Spannungseinstellung. Sie braucht immer den Sollwert als Parameter. Gleiches gilt für „wp“ mit der man den „wiper“ des Potis direkt setzen kann.

Alle anderen Funktionen brauchen keine Parameter und sind wohl selbsterklärend.

Kalibrierung

Das Gerät kann mit unterschiedlichsten Eingangsspannungen betrieben werden. Versuche zeigen, dass es mit 12 V genauso gut funktioniert, wie mit fast 40 V Eingangsspannung aus zwei zusammen geschalteten Notebook-Netzteilen.

 

Diese Änderungen verändern den Faktor zwischen Potistellung und Ausgangsspannung.

 

Die Funktion void handlerU() übernimmt die gewünschte Ausgangsspannung als Sollwert Usoll . Mithilfe der Variablen ustep wird die „wiper“-Einstellung gefunden. Diese Variable hat in unserem Sketch - bei den beschriebenen Bedingungen - den Wert 0.02686. Dieser Wert wird aus den Kalibrierdaten errechnet. Darin liegt der ganze Sinn dieser Funktion.

 

Man geht so vor, dass man die Kalibrierfunktion ca ohne angeschlossene Belastung laufen lässt. Sie liefert eine solche Liste als Ausgabe:



Man sieht in der Liste zu jeder Einstellung des „wiper“ am MCP42010, welche Spannung dazu gehört. Dabei erkennt man, dass dieser Zusammenhang bis zur wiper-Einstellung 200 perfekt linear ist. Der Hersteller gibt 1% Genauigkeit an.

 

Ab 200 wird der Zusammenhang nichtlinear. Wir berücksichtigen bei der Berechnung von ustep nur die Einstellungen von wiper 0 … 200 und kommen so genau auf den Wert 0.02686.

 

Entsprechend geht man vor, wenn man andere Eingangsspannungen verwenden möchte.

Mit der Anweisung „cp“ kann man die Kalibrierdaten nochmals ausgeben, sie liegen im RAM.

 

Während des Laufes leuchtet die gelbe LED konstant. Es darf jetzt kein Verbraucher angeschlossen sein. Sobald die höchste Spannung erreicht ist, beginnt die LED zu blinken und die Ausgangsspannung läuft Schritt für Schritt auf die Minimalspannung 1,3 V zurück.

Ramp-Funktionstest „rp“

Dies ist ein Test, mit dem Sie auf einem Oszilloskop sehen können, wie schnell das LabSupply auf die Usoll-Einstellung reagiert. Viele Faktoren beeinflussen die Reaktionsgeschwindigkeit. Immerhin haben wir auf der Ausgangsseite des Gerätes einen 100 µF-Kondensator, wir haben mehrere delay  Funktionen, die allesamt ihren Sinn haben. Man kann durchaus mit deren Werten „spielen“, ohne etwas kaputt zu machen. So kann das Gerät noch schneller reagieren. Es kommt aufs Ziel an. Wir werden uns in Teil 2 eingehend mit „RampUp / RampDown“ beschäftigen und Anwendungen dafür kennen lernen.

Fazit

Sie haben ein Labor-Netzgerät vor sich, das von seiner Steuerungssoftware „lebt“, ansonsten aber ganz einfach aufgebaut ist … und natürlich manchen Einschränkungen unterliegt.

Der Nachbau lohnt auf jeden Fall. Inzwischen nutze ich es ständig in der täglichen Praxis.

 

Für arduinoProjekte für fortgeschritteneStromversorgung

Lascia un commento

Tutti i commenti vengono moderati prima della pubblicazione