Montag, 22. Februar 2021

Wasserkühlung Grundlagen - 01 Konfigurationen

Dies ist das erste Video einer kleinen Tutorialreihe über selbst gebaute Wasserkühlungen, zu gut Denglisch: "Custom Waterloops". Die meisten Wasserkühlungen bestehen aus einer Pumpe, hier goldfarben und orange, einem CPU-Block, hier hellgelb, einem Radiator, hier rot, und einem Ausgleichsbehälter, hier türkis.


Das erste Bild zeigt zwei geläufige Konfigurationen, die man zum Beispiel bei allen "All In One (AIO)"-Wasserkühlungen findet. Rechts ein Kreislauf mit oben am Gehäusedeckel befestigtem Radiator, links einer mit an der Front befestigtem Radiator. Beide liegen, respektive stehen natürlich im Innern des Gehäuses, wobei die erste Variante mit dem obenliegenden Radiator zusätzlich voraussetzt, dass in der oberen Abdeckung ausreichen dimensionerte Lüftungsschlitze vorhanden sind, durch die die warme Luft aus dem Gehäuse geblasen werden kann. Bei den AIO-Lösungen wird die Einbaulage in der Regel nur von der Größe des Gehäuses und der Länge der Schläuche zwischen der Pumpe-Ausgleichsbehälter-Kombination und dem Radiator bestimmt - die Lage der CPU ist vom Mainboard und seiner Befestigung im Gehäuse ja fest vorgegeben.

Beim Ansaugen kalter Aussenluft durch einen Radiator sollte man generell darauf achten, dass die Außenluft über einen Staubfilter angesaugt wird. Gelangt der Staub ungefiltert in das Gehäuse, setzt er sich gern überall dort fest, wo es besonders warm ist, also Prozessor, Grafikkarte und Chipsatz. Wird irgendwann etwas feuchtere Luft angesaugt, kann die zusammen mit Staub für nur schwer auffindbare Kriechströme sorgen, die zu erratischem Verhalten des PC führen können. Moderne Gehäuse ab der mittleren Preisklasse sind meist mit Filtern ausgestattet, die den meisten Staub draußen halten. Zur Not tut es ein relativ engmaschig gewebtes Stück Gardinenvlies, das man vor die Ansaugöffnungen spannt. Es sollte so befestigt werden, dass man es zum Reinigen jederzeit entfernen kann. Es gibt im Handel biegsame Magnetstreifen, mit denen man hervorragende Filter bauen kann. Bereits vorhandene Filter sollte man regelmäßig mit einem Staubsauger vom festgehaltenen Staub befreien, sonst kommt irgendwann keine Kühlluft mehr in das Gehäuse.


Das zweite Bild zeigt einen liegenden Radiator am Gehäusedeckel und einen stehenden an der Front. Der zweite Radiator kann bei thermisch stark beanspruchten Prozessoren - insbesonders iNTEL verkauft ja erprobte Raumheizungen, die für heimelige Wärme in der guten Stube sorgen - noch ein wenig mehr an Kühlung bringen, wenn die Lüfter ausreichend schnell drehen. Der Nachteil dieser Konfiguration ist der durch den zweiten Radiator verdoppelte Durchflusswiderstand des Kühlmediums. Der ist zwar weit weg von einer bedenklichen Behinderung des Durchflusses, erfordert aber gegebenenfalls - auch wegen des verlängerten Weges durch alle Komponenten - eine etwas kräftigere Pumpe. Wie immer gilt das geflügelte Wort: "Probieren geht über studieren!"


Im dritten Bild wurde noch ein zweiter Kühlblock für die Graphikkarte hinzugefügt. Von Lösungen mit nur einem Radiator für eine Kombination aus CPU- und GPU-Wasserblock rate ich dringend ab - die zweite Komponente bekommt dabei immer das von der ersten Komponente erwärmte Wasser ab! Der Wasserkreislauf sollte so gestaltet sein, dass das erhitzte Wasser aus dem CPU-Block erst einmal durch den ersten Radiator läuft, bevor es dann über den GPU-Block geleitert wird. Von dort geht es durch den zweiten Radiator und den Vorratsbehälter, bevor es erneut durch den Kreislauf gepumpt wird. Da diese Zusammenstellung von der thermischen Effizienz her nicht besonders gut abschneidet, sollte man nicht am Material sparen, und lieber mit der letzten Variante liebäugeln.


Das vierte Bild zeigt die kompromisslose Variante des letzten Aufbaus - zwei Pumpen, zwei Ausgleichsbehälter, zwei Radiatoren und zwei Kühlblöcke. Damit wird sichergestellt, dass die Abwärme einer Komponente nicht unfreiwillig die Temperatur der anderen erhöht. Damit sind wir am Ende des ersten Teils angelangt. Es sind sicher weitere Varianten mit noch mehr Radiatoren möglich, das Gehäuse setzt der Phantasie hier aber relativ enge physikalische Grenzen.


Auf meinem YouTube-Kanal gibt es wie immer ein Video mit diesem Tutorial.

Wasserkühlung Grundlagen - 02 Material und Durchlüftung

Material


Ein wichtiger Aspekt wurde im ersten Teil nicht erwähnt: Die im Kühlkreislauf verwendeten Materialien. Hier gibt es nur zwei Möglichkeiten – entweder man verwendet ausschließlich Komponenten aus Aluminium, oder solche, in denen Kupfer, Messing und Edelstahl verbaut ist. Eine bunte Mischung beider Materialgruppen birgt die Gefahr in sich, dass elektrochemische Prozesse das "unedlere" Aluminium auswaschen, und die ausgewaschenen Aluminiumpartikel sich galvanisch mit den "edleren" Metallen Kupfer, Messing und Edelstahl verbinden. Da das Element Kupfer etwas bessere Wärmeleitfähigkeitswerte als das Element Aluminium besitzt, sollte man hier keine billigen Kompromisse eingehen, und von Haus aus auf eine reine Kupferlösung setzen. Es dürfte sowieso recht schwer sein, einen Wasserblock aus Aluminium zu finden.

Durchlüftung



Normalerweise wird Kaltluft an der Gehäusefront angesaugt, und an der Rückseite wieder ausgeblasen. Dazu genügt im Prinzip ein einziger Lüfter an der Front, der die Luft durch das Gehäuse bläst. Dabei würde sich die Luft aber nicht unbedingt wie erwünscht geradlinig durch das Gehäuse bewegen, sondern sich trichterförmig ausbreiten, wobei der an die Gehäusewände oder andere Hindernisse geleitete Anteil sich verwirbeln und diffus im Gehäuse zirkulieren würde.


Aufgrund dieser Überlegung ist es üblich, zur Gewährleistung eines gerichteten Luftstroms die Luft auf einer Seite in das Gehäuse hinein zu blasen, um es an der anderen Seite wieder herauszusaugen. Auch dabei gibt es Verwirbelungen und eine diffuse Luftbewegung, die aber im Großen und Ganzen der vorgegebenen Richtung folgt. Verbaut man noch mehr Lüfter, nähert sich der tatsächliche Luftstrom immer weiter der Idealvorstellung, die wir uns eigentlich wünschen.


Die gezielte Ausrichtung des Luftstroms ist natürlich durch die maximale Anzahl von Lüftern begrenzt, die physikalisch in das Gehäuse passen. Zudem kann man in der Regel auf der Rückseite nur einen Lüfter verbauen, da die I/O-Blende und die Plätze für die Grafik- und andere Steckkarten nur wenig Platz für eine riesige Lüfterbatterie lassen. Dadurch ist eine symmetrische Lenkung des Luftstroms nahezu unmöglich. In großen Gehäusen mit vielen Lüfterplätzen sollte man daher überlegen, ob man die Luft nicht eher von oben und der Rückseite über das Mainboard blasen lässt, um sie dann an der Front abzusaugen und aus dem Gehäuse zu blasen.

Auch hier gilt einmal mehr: „Probieren geht über studieren!“


Auf meinem YouTube-Kanal gibt es wie immer ein Video mit diesem Tutorial.

Wasserkühlung Grundlagen - 03 Wasserpegel und Entlüftung

Wasserpegel



Dieses Mal geht es um das leidige Thema "Luft im Kreislauf" und die sich daraus ergebende (und damit einzig sinnvolle!) Konfiguration der Komponenten. Wasser folgt immer der Schwerkraft - auch in hermetisch dichten, in sich geschlossenen Systemen. Das bedeutet, dass sich überall dort Luft ansammelt, wo eine Komponente über die Füllhöhe des Ausgleichsbehälters ragt. Es mag für manch einen ja super toll aussehen, wenn zylindrische Röhren, die am Gehäuseboden stehen, bunt blinken, irre Töne von sich geben und Nebelschwaden für die eingebaute Lasershow emittieren. Was für simple Gemüter "gut ausschaut", ist aber weder von der Energiebilanz noch von physikalischen Gesichtspunkten her betrachtet besonders sinnvoll.


Es ist eher kontraproduktiv, da alle über der Füllhöhe des Zylinders liegenden Komponenten bis zu diesem Pegel Luft ziehen und trocken fallen. Bis die Pumpe diese Luftblasen zurück in den Zylinder gepumpt hat, kann einiges an Zeit vergehen, während der CPU - bei größeren Anlagen mit GPU-Block auch die GPU - überhitzen und sich entweder ausschalten oder abrauchen können.


Aus diesem Grund die goldene Faustregel: Der Füllstand des Ausgleichsbehälters ist der Referenzpegel, er muss am höchsten Punkt des Systems liegen! Um ein luftfreies System zu erhalten, verbindet man die Anschlüsse aller Komponenten nach dem Plan, den man sich gemacht hat. Sind alle Schläuche verlegt, füllt man über den Ausgleichsbehälter ganz unten angefangen eine Komponente nach der anderen mit Wasser, und bewegt sie so lange hin und her, bis keine Luft mehr austritt. Das tut man so lange, bis alle Komponenten luftfrei befüllt sind. Anschließend montiert man alles nach Plan, und kann sich an einer luftfreien Wasserkühlung erfreuen.

Der hier nur in der Theorie beschriebene Füllvorgang wird in einer späteren Folge anhand einer realen Wasserkühlung im Detail vorgeführt.


Auf meinem YouTube-Kanal gibt es wie immer ein Video mit diesem Tutorial.

Sonntag, 27. Dezember 2020

Lampensteuerung mit Tastern

Die nächste Bastelidee ist eine Beleuchtungssteuerung, die Lampen, LEDs oder LED-Streifen ein- und ausschaltet. Da die Steuerung mittels eines Arduino Nano erfolgt, kann man auch diverse Funktionen programmieren, die - wenn überhaupt! - nur mit recht hohem Aufwand an Denkleistung und Bauteilen als diskrete Schaltung realisierbar wäre. Da die Schaltung die Beleuchtung meines Wohnzimmers steuert, ist sie auf meine speziellen Bedürfnisse zugeschnitten. Es gibt drei Deckenleuchten, die einzeln an- oder abgeschaltet werden können, mit einem separaten Zentraltaster aber auch alle zusammen geschaltet werden können. Leuchten einer oder mehrere der drei LED-Streifen, schaltet ein Druck auf den Zentraltaster sie aus. Sind alle drei aus, werden sie bei Betätigung des Zentraltasters alle drei eingeschaltet. Des weiteren habe ich noch eine Beleuchtung unter meinem Multifunktionstisch, die ich benötige, um Staubsaugen oder Wartungsarbeiten am PC nicht im Dunkeln durchführen zu müssen, und einen Flächenstrahler, der variabel über meinem Arbeitstisch hängt, und für Bastelarbeiten, Fotosessions oder Videoaufnahmen die Arbeitsfläche ausleuchtet. Nachdem nun jedem klar sein sollte, um was es konkret geht, kommen wir ohne weiteres Gelabere zur Sache.


Die Schaltung



Lampensteuerung mit Tastern


Der Schaltplan der Steuerung ist recht simpel gestrickt. Da Google das mit dem Skalieren von Bildern eher schlecht als recht auf die Reihe bekommt, empfehle ich, den Schaltplan über den Link herunterzuladen und auszudrucken...

Man benötigt für meine Version der Schaltung einen Arduino Nano, sechs Taster, sechs Widerstände mit jeweils zehn Kiloohm, fünf Power-MOSFETs (ich verwende meinen Standardtyp IRFZ44N) und fünf (oder mehr...) Leuchtmittel mit einer Nennspannung von 12 Volt. Sparschwaben dürfen gern die 5 Cent für die sechs Widerstände einsparen, und die sechs Eingangspins explizit als INPUT_PULLUP deklarieren. Da mein Code die Eingangspins über trgX.attach(PinZuordnung.INPUT) definiert, kann ich allerdings nicht garantieren, dass das funktioniert. In meiner Schaltung liegen die Eingänge normalerweise auf 5 Volt und werden beim Betätigen des entsprechenden Tasters auf Null Volt gezogen. Die verwendete Funktion trgX.fell() reagiert auf diese Änderung, und die Auswertelogik schaltet dann entsprechend die Leuchtmittel ein oder aus. Mehr ist zur Schaltung nicht anzumerken.


Der Quellcode


Herunterladen kann man den Quellcode hier. Es handelt sich um eine *.ino-Datei, die man in einen gleichnamigen Ordner packen sollte, um sie aus der Arduino-IDE heraus starten zu können. Alternativ dazu kann man die Datei auch im Herunterladungs-Ordner per Doppelklick "starten" - die Arduino-IDE poppt dann auf und fragt, ob sie einen Projektordner gleichen Namens anlegen soll. Nach der Bestätigung ist man am gleichen Punkt, an dem man nach manuellem Anlegen des Ordners wäre. Sollte die Arduino-IDE beim ersten Kompilierversuch die Bounce2.h nicht finden, ist es an der Zeit, die Bounce2-Bibliothek zu installieren. Das geschieht durch Ausklappen des Menüs Werkzeuge und Klick auf den Menüpunkt Bibliotheken verwalten. Ganz oben ist neben den zwei Ausklappkästchen auf der rechten Seite ein Eingabefeld, in das man Bounce2 eingibt. Nach kurzer Suche im Internet zeigt der Dialog nun alle Bibliotheken an, die den Suchbegriff enthalten. Suchen Sie Bounce2 und installieren Sie die Bibliothek. Fertig!


Definitionen


In den ersten beiden Blöcken werden Namenszuweisungen für die verwendeten Pins festgelegt, im dritten Block werden die Variablen für die Schaltzustände der einzelnen Leuchtmittel definiert und auf Null (LOW) gesetzt, der letzte Block weist sechs Instanzen der Klasse Bounce Namen zu und initialisiert sie.
#include <Bounce2.h>

#define LB0    2               /* Taster        1   D2     hinten  */
#define LB1    3               /*               2   D3     Mitte   */
#define LB2    4               /*               3   D4     vorne   */
#define LB3    5               /*               4   D5     alle    */
#define LB4    6               /*               5   D6     oben    */
#define LB5    7               /*               6   D7     unten   */

#define LS0    8               /* Leuchtmittel  1   D8     hinten  */
#define LS1    9               /*               2   D9     Mitte   */
#define LS2   10               /*               3   D10    vorne   */
#define LS3   11               /*               4   D11    oben    */
#define LS4   12               /*               5   D12    unten   */

int    out0 = LOW;             /* Leuchtmittel  1 anfänglich AUS   */
int    out1 = LOW;             /*               2                  */
int    out2 = LOW;             /*               3                  */
int    out3 = LOW;             /*               4                  */
int    out4 = LOW;             /*               5                  */

Bounce trg0 = Bounce();        /* merkwürdiges C++ Zeug...         */
Bounce trg1 = Bounce();
Bounce trg2 = Bounce();
Bounce trg3 = Bounce();
Bounce trg4 = Bounce();
Bounce trg5 = Bounce();

Setup()


Im Setup()-Teil werden die zuvor definierten Instanzen der Bounce-Klasse den zuvor definierten Pins des Arduino zugewiesen. Danach wird für jeden Taster die Entprellzeit in Millisekunden festgelegt, die 75 ms reichen aus, um selbst stark prellende Taster zuverlässig zu entprellen. Anschließend werden die Ausgangspins zugeordnet, bevor zum Abschluss alle Leuchtmittel ausgeschaltet werden. Mehr muss im Setup nicht erledigt werden.
void setup()
{
 trg0.attach(LB0, INPUT);      /* merkwürdiges C++ Zeug...         */
 trg1.attach(LB1, INPUT);
 trg2.attach(LB2, INPUT);
 trg3.attach(LB3, INPUT);
 trg4.attach(LB4, INPUT);
 trg5.attach(LB5, INPUT);
 trg0.interval(75);            /* Entprellzeiten                   */
 trg1.interval(75);
 trg2.interval(75);
 trg3.interval(75);
 trg4.interval(75);
 trg5.interval(75);
 pinMode(LS0, OUTPUT);         /* Ausgangspins festlegen           */
 pinMode(LS1, OUTPUT);
 pinMode(LS2, OUTPUT);
 pinMode(LS3, OUTPUT);
 pinMode(LS4, OUTPUT);
 digitalWrite(LS0, out0);      /* alle Leuchtmittel aus            */
 digitalWrite(LS1, out1);
 digitalWrite(LS2, out2);
 digitalWrite(LS3, out3);
 digitalWrite(LS4, out4);
}

Endlosschleife


in der loop()-Funktion, die nach dem Setup in einer Endlosschleife ausgeführt wird, ist die komplette Steuerlogik daheim. Zuerst werden die aktuellen Zustände der Taster abgefragt:
 trg0.update();
 trg1.update();
 trg2.update();
 trg3.update();
 trg4.update();
 trg5.update();
Anschließend werden - entsprechend den anfangs geschilderten Vorgaben - die Leuchtmittel entsprechend ein- oder ausgeschaltet. Um ein beliebiges Leuchtmittel ein- oder auszuschalten, genügt der folgende Code:
 if(trgX.fell())
 {
  outX = !outX;
 }
Wurde Taster X betätigt, wird der Ausgang in seinen anderen Zustand - aus HIGH wird LOW, aus LOW wird HIGH - umgeschaltet. Diese Funktion muss für jeden Taster und das zugeordnete Leuchtmittel vorhanden sein. Nutzt man die analogen Eingänge A0 bis A5 (A6 und A7 sind beim Nano ausschließlich analog nutzbar!) als digitale Eingänge, kann der Nano bis zu 9 Taster mit 9 zugeordneten Leuchtmitteln verwalten. Für den Zentraltaster, der mehrere Leuchtmittel gemeinsam schaltet, wird der folgende Code verwendet:
 if(trg3.fell())
 {
  if(out0 || out1 || out2 || out3 || out4)
  {
   out0 = 0;
   out1 = 0;
   out2 = 0;
   out3 = 0;
   out4 = 0;
  }
  else
  {
   out0 = 1;
   out1 = 1;
   out2 = 1;
  }
 }
Man beachte hier, dass trg3 ein tatsächlich vorhandener Taster ist, der auf dem Schaltpult neben den Tastern für die anderen Leuchtmittel sitzt. Es ist aber der einzige Taster, dem mehr als ein Leuchtmittel zugeordnet ist. Die Logik ermittelt zuerst einmal, ob irgendein Leuchtmittel eingeschaltet ist. Sind alle aus, werden alle drei Hauptleuchtmittel eingeschaltet. Leuchtet mindestens eines, werden alle fünf Leuchtmittel ausgeschaltet. Wenn man ein wenig mit der Logik herumspielt, kann man mit etwas mehr Code auch wesentlich komplexere Schaltvorgänge programmieren. Sind alle Zustände analysiert und der Logik entsprechend gesetzt, müssen die Änderungen der Variablen noch an die Ausgänge weitergegeben werden:
 digitalWrite(LS0, out0);
 digitalWrite(LS1, out1);
 digitalWrite(LS2, out2);
 digitalWrite(LS3, out3);
 digitalWrite(LS4, out4);
Damit sind alle Aufgaben abgearbeitet und der Arduino beginnt einmal mehr, die loop()-Funktion auszuführen.


Fazit


Auf meinem YouTube-Kanal kann man sich die Beleuchtungssteuerung in Aktion anschauen. Ich hoffe, ich konnte ein wenig dazu beitragen, die Grundlagen der in Programmen verwendeten Logik aufzuzeigen und Interesse am Programmieren zu wecken. Ach ja - die Kommentarfunktion bei YouTube und auf meinen Blogs ist moderiert. Da ich die Benutzerschnittstelle von G-mail nicht ausstehen kann, schaue ich recht selten dort vorbei, sodass sich die Freigabe von Kommentaren extrem verzögern kann. Wirklich wichtige Rückfragen daher bitte per E-mail.

Abschließend noch eine kleine Bildergalerie:











Donnerstag, 17. Dezember 2020

Leuchtibunti weg (ASUS Prime X570-Pro)

Dieses Mal gibt es eine Ausbauhilfe für Erwachsene, die das sonst absolut empfehlenswerte ASUS Prime X570-Pro von dem für unreife Halbwüchsige und Kleinkinder verbauten Leuchtibunti-Zeug befreit. Das heißt: Zumindest einmal von der oben verschraubten Plastikverkleidung des I/O-Blechs. Die rechts unten sitzende Beleuchtung der Plastikverkleidung des Chipsatzkühlers ist leider auf dem Board selbst verlötet. Man könnte die gar lieblich leuchtenden bunten Lichtelein zwar ablöten, würde damit aber die Garantie für das Board verlieren, und könnte schlimmstenfalls die mehrfach übereinander liegenden Leiterbahnschichten irreparabel beschädigen, sprich: das Board schrotten. Schaltet dieses unnütze Kinderspielzeug also lieber im BIOS aus, um auf der sicheren Seite zu bleiben!


Das Entfernen


geht reichlich simpel von der Hand. Dreht das Board so um, dass die Lötseite nach oben schaut. Im Bereich der I/O-Blende gibt es diverse Senkkopfschrauben, von denen die Kühlkörper festgehalten werden, und zwei Linsenkopfschrauben, die die Platikverkleidung fixieren. Eine sitzt ganz links in einer Linie mit den Stehbolzen des oberen M.2-Steckplatzes, die andere auf der gegenüberliegenden Seite (entlang der Platinenkante...) in der Nähe des Lochs für die Befestigung des Mainboards. Sind beide entfernt, fällt die Plastikverkleidung ohne jegliches Nachhelfen freiwillig ab - bitte keine rohe Gewalt anwenden! An die Plastikverkleidung ist ein Platinchen mit sechs RGB-LEDs und diversen Widerständen angeschraubt. Die sind für den normalen Betrieb eines PC absolut sinn- und nutzlos, und man kann diese absolute Ressourcenverschwendung getrost ausbauen, indem man beherzt an dem kleinen Käbelchen zieht, um den Stecker vom Mainboard zu lösen. Ich gehe davon aus, das ein Prozessor in einem geschlossenen Gehäuse weder klaustrophobische Anfälle bekommt, noch die Arbeit verweigern wird, weil er sich im Dunkeln fürchtet...

Die beiden Schräubchen und das Platinchen nebst Kabelstrang sollte man in der Originalverpackung des Boards aufbewahren - man weiß ja nie, ob man das Board nicht doch einmal als Einschlafhilfe für den eigenen Nachwuchs oder die Enkelchen missbrauchen könnte...

Auf meinem YouTube-Kanal gibt es wie immer ein Video, das die mechanische Entfernung zeigt.

Viel Spaß mit dem Leuchtibunti-freien ASUS Prime X570-Pro!

Freitag, 11. Dezember 2020

Nützliche Helferlein: LED-Platinchen


Das LED-Platinchen ist ein handliches ("Yes, it's a really handy tool!") Helferlein, wenn man den Zustand mehrerer Logikausgänge - Ausgänge, die entweder den Zustand Ein (annähernd Betriebsspannung) oder Aus (annähernd Massepotenzial) haben können - einer Schaltung visuell sichtbar machen möchte, ohne "das große Besteck" (Logikanalysator) herausholen zu müssen. Hier ist der Schaltplan zum Herunterladen, und hier der zum Anschauen:


Die Schaltung


Je nach Bedürfnissen kann man die Schaltung mit gemeinsamer Anode oder Kathode aufbauen. Letztere benötigt man nur in Schaltungen, in denen das Schaltelement (bipolare Transistoren, Power-MOSFETs, Schalter, Taster, et cetera) an Plus hängt, und beim Durchschalten der Strom über die LED(s) nach Masse abfließt. In normalen Logikschaltungen kommt in der Regel nur die obere Variante mit der gemeinsamen Anode zum Einsatz. Da moderne Dioden schon bei relativ geringen Strömen wesentlich heller leuchten als ihre betagten Vorgänger beim Mehrfachen davon, habe ich keinen konkreten Widerstandswert angegeben. Einfach mal - wie auf meinem LED-Platinchen - mit 680 Ohm anfangen, und dann je nach Gusto und Leuchtkraft einen etwas geringeren (heller) oder höheren (dunkler) Widerstandswert wählen - je nachdem, was die Bastelkiste so hergibt. Zur Not kann man auch ein Potenziometer verwenden - die maximal zwanzig Milliampere sollter selbst das schwächste Exemplar aushalten. Auch die Anzahl der LEDs ist offen - ich hatte seinerzeit alle noch vorhandenen der gezeigten Bauform genommen, mehr als neun Stück in verschiedenen Farben waren halt nicht mehr da...

Die Verdrahtung ist (wie bei mir üblich) fliegend auf einen übrig gebliebenen Fetzen einer beidseitig beschichteten und durchkontaktierten Lochrasterplatine gelötet. Dank der langen Beinchen der Widerstände und LEDs braucht man normalerweise keinen zusätzlichen Draht für die Verbindungen. Als Anschlüsse habe ich dünne Kabel (Litze) an die einzelnen LEDs gelötet, und auf der anderen Seite einzeln abgeknipste Pins von einer der 40-Pin-Leisten, die man zum Beispiel für den Anschluss des Arduino Nano auf Steckbrettern verwendet (Uno und Mega haben Buchsen- statt Steckerleisten).


Und Tschüss...


Eben das. Vorher aber noch der Link zum obligatorischen Video und die obligatorische Fotogalerie:



Samstag, 7. März 2020

"Potzblitz" - Positionssignal für Flugmodelle

Der "Potzblitz" ist mit insgesamt drei ICs - einem NE555 Timer, einem CD4518 Dekadenzähler und einem CD4011 Vierfach-NAND - aufgebaut. Es gibt periodisch zwei schnell aufeinander folgende Lichtblitze ab, zwischen den einzelnen Doppelblitzen liegen länger anhaltende Pausen - von jeweils zehn Timerimpulsen werden acht unterdrückt, nur die letzten beiden der kontinuierlich durchgezählten zehn Impulse schalten per Power-MOSFET den/die Verbraucher für kurze Blitzimpulse ein. Je nach verwendetem MOSFET kann man 11,4 (IRFZ44N) oder gar 18 (IRL2203N) Ampere ohne zusätzliche Kühlung schalten, was für LEDS oder Lampen mit einer Gesamtleistung bis maximal 136,8 (IRFZ44N), respektive 216 Watt (IRL2203N) Watt bei 12 Volt Nennspannung reicht. Da man den IRFZ44N bei Amazon für wenige Euronen im Fünfzigerpack hinterher geschmissen bekommt, ist das mein Wald- und Wiesen-Power-MOSFET, der überall zum Einsatz kommt, wo Ströme bis zu 10 Ampere ohne zusätzliche Kühlung geschaltet werden müssen.


Der Schaltplan


Hier ist der Schaltplan des Potzblitz:

PotzBlitz Schaltplan

Die Timerschaltung


Der NE555 wird mittels der Dioden zum Erzeugen asymmetrischer Ausgangsimpulse mit einem Puls-Pause-Verhältnis (aka "Duty Cycle") von etwa 15 bis 20 Prozent (die Zeit, in der das Signal auf Maximalpegel steht) gezwungen. Die Frequenz und das Puls-Pause-Verhältnis richtet sich nach den tatsächlichen Werten der eingesetzten Bauteile. Da die Ausgangsfrequenz nicht kritisch ist, genügt es vollauf, ähnliche Werte einzusetzen. Der 12 Kiloohm-Widerstand bestimmt maßgeblich die Zeit, in der das Signal auf Massepotenzial liegt, der 10 Mikrofarad-Kondensator die Ausgangsfrequenz. Der kleinere Folien- oder Keramikkondensator mit 10 Nanofarad von Pin 5 nach Masse dient ausschließlich der Stabilisierung der internen Referenzspannung des ICs.


Der Dekadenzähler


Nur der erste der beiden Dekadenzähler des CD4518 wird für den Potzblitz verwendet. Bei jeder steigenden Flanke des am Takteingang eingespeisten Signals wird sein Inhalt um eine binäre Eins hochgezählt. Der Reset-Eingang muss immer auf Masse liegen, da ein Signal an diesem Eingang den Zähler so lange auf Null zurücksetzt, bis er wieder Massepotenzial führt. Für das Zählen bei steigender Signalflanke am Takteingang muss der Enable-Eingang auf dem Potenzial der Versorgungsspannung liegen. Alternativ dazu könnte man auch den Takteingang auf Massepotenzial legen. In diesem Fall würde der Zähler dann immer bei fallender Signalflanke am Enable-Eingang um eine binäre Eins hochgezählt. Der Signalverlauf an den Ausgängen der vier D-Flipflops A1, B1, C1 und D1, die intern zu einer bis zehn zählenden Einheit verschaltet sind, sieht wie folgt aus:




Die Ausgangslogik


Auch von den vier NAND-Gattern des CD4011 werden nur zwei verwendet - man könnte die Schaltung also durchaus mit einem zweiten Timer erweitern, um damit den ungenutzten zweiten Dekadenzähler und die beiden übriggebliebenen NAND-Gatter einer sinnvollen Verwendung zuzuführen. Da die gegebene Schaltung das nicht tut, sind die Eingänge der ungenutzten NAND-Gatter auf Massepotenzial gelegt, um unerwünschte Störungen oder gar ein Eigenschwingen zu verhindern. Wie man dem Signalverlauf entnehmen kann, benötigt man zum Erzeugen der gewünschten Blitzimpulse nur den Ausgang D des Dekadenzählers. Er und das Taktsignal werden an jeweils einen der Eingänge des ersten NAND-Gatters geführt, das seinen Ausgang nur dann auf Massepotenzial (LOW, L) zieht, wenn an beiden Eingängen ein positives Signal (HIGH, H) anliegt. Alle anderen Kombinationen (H und L, L und H, L und L) ziehen den Ausgang auf das Potenzial der Versorgungsspannung (H). Da das Ausgangssignal exakt das Gegenteil davon ist, was wir für die erwünschten zwei Blitze benötigen - es gäbe in dieser Form Dauerlicht mit zwei sehr kurzen Dunkelpausen - muss das Ausgangssignal des ersten NAND-Gatters noch invertiert werden. Das geht ganz simpel, indem wir beide Eingänge des zweiten NAND-Gatters mit dem Ausgangssignal des ersten "füttern". Dadurch ergibt sich am Ausgang des zweiten NAND-Gatters exakt das Signal, das wir ursprünglich haben wollten. Um höhere Lasten schalten zu können, führen wir das Signal nun noch an das Gatter eines Power-MOSFET, mit dem wir die oben angegebene Leistung schalten können.

Auf meinem YouTube-Kanal kann man sich den "Potzblitz" in Aktion anschauen. Ich hoffe, dass der/die/das eine oder andere die Schaltung (für was auch immer...) brauchen kann. Viel Spaß beim Nachbauen!