Inhaltsverzeichnis:

SteamPunk-Radio - Gunook
SteamPunk-Radio - Gunook

Video: SteamPunk-Radio - Gunook

Video: SteamPunk-Radio - Gunook
Video: "Ретро" радио. 2024, Juli
Anonim
SteamPunk-Radio
SteamPunk-Radio

Projekt: SteamPunk-Radio

Datum: Mai 2019 – August 2019

ÜBERBLICK

Dieses Projekt ist ohne Zweifel das komplexeste, das ich je unternommen habe, mit sechzehn IV-11 VFD-Röhren, zwei Arduino Mega-Karten, zehn LED-Neonlichtschaltungen, einem Servo, einem Elektromagneten, zwei MAX6921AWI IC-Chips, fünf DC-Netzteilen, einer HV-Stromversorgung Stromversorgung, zwei DC-Voltmeter, ein DC-Amperemeter, UKW-Stereoradio, 3W-Leistungsverstärker, LCD-Bildschirm und Tastatur. Abgesehen von der obigen Stückliste mussten zwei Softwareprogramme von Grund auf neu entwickelt werden und schließlich erforderte der Bau des gesamten Radios rund 200 Arbeitsstunden.

Ich beschloss, dieses Projekt auf die Instructables-Site aufzunehmen, ohne zu erwarten, dass die Mitglieder dieses Projekt in seiner Gesamtheit reproduzieren, sondern die Elemente auszuwählen, die für sie von Interesse waren. Zwei Bereiche, die für die Site-Mitglieder von besonderem Interesse sind, können die Steuerung der 16 IV-11 VDF-Röhren mit zwei MAX6921AWI-Chips und der zugehörigen Verkabelung sowie die Kommunikation zwischen zwei Mega 2650-Karten sein.

Die verschiedenen in diesem Projekt enthaltenen Komponenten wurden lokal bezogen, mit Ausnahme der IV-11-Röhren und der MAX6921AWI-Chips, die beide über EBay bezogen wurden. Ich wollte verschiedene Gegenstände wieder zum Leben erwecken, die sonst jahrelang in Kisten schmachten würden. Alle HF-Ventile wurden mit dem Verständnis beschafft, dass alle ausgefallene Einheiten waren.

Schritt 1: TEILELISTE

LISTE DER EINZELTEILE
LISTE DER EINZELTEILE
LISTE DER EINZELTEILE
LISTE DER EINZELTEILE
LISTE DER EINZELTEILE
LISTE DER EINZELTEILE

1. 2 x Arduino Mega 2560 R3

2. RDA5807M UKW-Radio

3. PAM8403 3W Verstärker

4. 2 x 20W Lautsprecher

5. Dipol FM Ariel

6. 16 X IV-11 VDF-Röhren

7. 2 x MAX6921AWI IC-Chip

8. 2 x MT3608 2A Max DC-DC Step Up Power Module Booster Power Module

9. 2 x XL6009 400KHz Automatisches Buck-Modul

10. 1 Kanalmodul, 5V Low Level Trigger für Arduino ARM PIC AVR DSP

11. 2 Kanal 5V 2-Kanal Modulschild für Arduino ARM PIC AVR DSP

12. Elektromagnet, der 2,5 kg / 25 N Magnetsauger anhebt Elektromagnet DC 6 V

13. 4-Phasen-Schrittmotor kann vom ULN2003-Chip angetrieben werden

14. 20*4 LCD 20X4 5V Bluescreen LCD2004 Display LCD-Modul

15. IIC/I2C Serielles Schnittstellenmodul

16. 6 x Bits 7 x WS2812 5050 RGB LED-Ringlampenlicht mit integrierten Treibern Neo Pixel

17. 3 x LED-Ring 12 x WS2812 5050 RGB-LED mit integrierten Treibern Neo Pixel

18. 2 x LED-Ring 16 x WS2812 5050 RGB-LED mit integrierten Treibern Neo Pixel

19. LED-Streifen Flexible RGB 5m Länge

20. 12 Tasten Folientastatur 4 x 3 Matrix Array Matrixtastatur Switch Tastatur

21. BMP280 Digitaler Luftdruck-Höhensensor 3.3V oder 5V für Arduino

22. DS3231 AT24C32 IIC-Modul Präzisions-RTC-Echtzeituhrmodul

23. 2 x Lineares Drehpotentiometer mit gerändelter Welle 50K

24. 12V 1 Ampere Netzteil

Schritt 2: IV-11 VDF-ROHRE UND MAX6921AWI IC-CHIP

IV-11 VDF-ROHRE UND MAX6921AWI IC-CHIP
IV-11 VDF-ROHRE UND MAX6921AWI IC-CHIP
IV-11 VDF-ROHRE UND MAX6921AWI IC-CHIP
IV-11 VDF-ROHRE UND MAX6921AWI IC-CHIP
IV-11 VDF-ROHRE UND MAX6921AWI IC-CHIP
IV-11 VDF-ROHRE UND MAX6921AWI IC-CHIP

Die Verwendung des MAX6921AWI-Chips in diesem Projekt baut auf meinem vorherigen Weckerprojekt auf. Jeder Satz von acht IV-11-Röhrchen wird über einen einzelnen MAX6921AWI-Chip unter Verwendung der Multiplex-Steuerungsmethode gesteuert. Die beiden beigefügten PDFs zeigen die Verdrahtung des Acht-Röhren-Sets und wie der MAX6921AWI-Chip mit dem Röhren-Set und wiederum mit dem Arduino Mega 2560 verdrahtet ist. Eine strikte Farbcodierung der Verdrahtung ist erforderlich, um sicherzustellen, dass Segment und Netzspannungsleitungen werden getrennt gehalten. Es ist sehr wichtig, die Röhrenausgänge zu identifizieren, siehe angehängtes PDF, dazu gehören die 1,5-V-Heizungsstifte 1 und 11, der 24-V-Anodenstift (2) und schließlich die acht Segment- und "dp" -Pins 3 - 10 Es lohnt sich auch, jedes Segment und „dp“mit einem einfachen Prüfstand zu testen, bevor mit der Verdrahtung des Rohrsatzes begonnen wird. Jeder Röhrenstift ist in Reihe mit dem nächsten in der Röhrenreihe verdrahtet, bis zur letzten Röhre, wo zusätzliche Kabel hinzugefügt werden, um eine Remote-Verbindung zum MAX6921AWI-Chip zu ermöglichen. Der gleiche Vorgang wird für die beiden Heizungsversorgungsleitungen Pin 1 und 11 fortgesetzt. Ich habe für jede der 11 Leitungen farbigen Draht verwendet, als mir die Farben ausgingen, begann ich die Farbsequenz erneut, fügte jedoch ein schwarzes Band um jedes Ende des Drahtes mit Schrumpfschlauch. Die Ausnahme von der obigen Verdrahtungsreihenfolge ist für Pin 2, die 24-Anoden-Versorgung, bei der ein einzelner Draht zwischen Pin 2 und den Anodenstromausgängen auf dem MAX6921-Chip verdrahtet ist. Details zum Chip und seinen Anschlüssen finden Sie im beigefügten PDF. Es kann nicht genug betont werden, dass der Chip zu keiner Zeit während des Betriebs des Chips heiß werden sollte, warm nach ein paar Stunden Gebrauch ja, aber niemals heiß. Der Schaltplan des Chips zeigt die drei Verbindungen zum Mega, Pins 27, 16 und 15, die 3,5-V-5-V-Versorgung vom Mega-Pin 27, seinen GND zum Mega-Pin 14 und die 24-V-Versorgung Pin1. Überschreiten Sie niemals die 5 V-Versorgung und halten Sie den Anodenspannungsbereich zwischen 24 V und maximal 30 V. Bevor Sie fortfahren, verwenden Sie einen Durchgangsprüfer, um jeden Draht zwischen seinen am weitesten entfernten Punkten zu testen.

Ich habe die AWI-Version dieses Chips verwendet, da es das kleinste Format war, mit dem ich arbeiten wollte. Die Herstellung des Chips und seines Trägers beginnt mit zwei Sätzen von 14 PCB-Pins, die auf einer Steckplatine platziert werden, wobei der Chipträger über den Pins mit Pin 1 oben links platziert wird. Löten Sie die Stifte mit Flussmittel und Lötzinn und „verzinnen“Sie jedes der 28 Chip-Beinpads. Sobald der Chip fertig ist, platzieren Sie den Chip des Chipträgers und achten Sie darauf, die Beine des Chips mit den Beinpolstern auszurichten und sicherzustellen, dass die Kerbe im Chip in Richtung Pin 1 zeigt. Ich fand es hilfreich, ein Stück Klebeband über einer Seite des Chips zu verwenden stabilisieren Sie den Chip vor dem Löten. Stellen Sie beim Löten sicher, dass Flussmittel auf die Beinpads aufgetragen wurde und der Lötkolben sauber ist. Drücken Sie im Allgemeinen auf jedes Chipbein, dies wird es leicht auf das Beinpad biegen und Sie sollten den Lotverlauf sehen. Wiederholen Sie dies für alle 28 Beine, Sie sollten während dieses Vorgangs kein Lötmittel in den Lötkolben geben.

Nach Abschluss reinigen Sie den Chipträger von Flussmittel und testen Sie dann mit einem Durchgangsprüfer jedes Bein, indem Sie eine Sonde auf das Chipbein und die andere auf den PCB-Pin legen. Stellen Sie zum Schluss immer sicher, dass alle Verbindungen zum Chipträger hergestellt wurden, bevor Sie den Strom tatsächlich einschalten. Wenn der Chip heiß wird, schalten Sie sofort ab und überprüfen Sie alle Verbindungen.

Schritt 3: RGB-LICHTSEILE & NEON-LICHTRING

RGB-LICHTESIL & NEON-LICHTERRING
RGB-LICHTESIL & NEON-LICHTERRING
RGB-LICHTSEILE & NEON-LICHTERRING
RGB-LICHTSEILE & NEON-LICHTERRING
RGB-LICHTSEILE & NEON-LICHTERRING
RGB-LICHTSEILE & NEON-LICHTERRING
RGB-LICHTSEILE & NEON-LICHTERRING
RGB-LICHTSEILE & NEON-LICHTERRING

Dieses Projekt erforderte zehn Lichtelemente, drei RGB-Lichtseile und sieben NEON-Lichtringe unterschiedlicher Größe. Fünf der NEON-Lichtringe wurden in einer Reihe von drei Ringen verdrahtet. Diese Art von Beleuchtungsringen sind sehr vielseitig in der Steuerung und in den Farben, die sie anzeigen können. Ich habe nur die drei Primärfarben verwendet, die entweder ein- oder ausgeschaltet waren. Die Verkabelung bestand aus drei Drähten, 5V, GND und einer Steuerleitung, die über den Slave Mega gesteuert wurde, siehe angehängte Arduino-Liste „SteampunkRadioV1Slave“für Details. Die Zeilen 14 bis 20 sind wichtig, insbesondere die definierte Anzahl der Lichteinheiten, diese müssen mit der physikalischen Nummer übereinstimmen, sonst funktioniert der Ring nicht richtig.

Die RGB-Lichtseile erforderten den Bau einer Steuereinheit, die drei Steuerleitungen vom Mega übernahm, die jeweils die drei Grundfarben Rot, Blau und Grün steuerten. Die Steuereinheit bestand aus neun TIP122 N-P-N Transistoren, siehe beigefügtes TIP122 Datenblatt, jede Schaltung besteht aus drei TIP122 Transistoren, wobei ein Bein geerdet ist, das zweite Bein an eine 12V Stromversorgung angeschlossen ist und das mittlere Bein an die Mega-Steuerleitung angeschlossen ist. Die RGB-Seilversorgung besteht aus vier Leitungen, einer einzelnen GND-Leitung und drei Steuerleitungen, eine von jedem der drei TIP122-Mittelbeine. Dieser liefert die drei Primärfarben, die Intensität des Lichts wird über einen analogen Schreibbefehl mit einem Wert von 0 für Aus und 255 für Maximum gesteuert.

Schritt 4: ARDUINO MEGA 2560-KOMMUNIKATION

ARDUINO MEGA 2560 KOMMUNIKATION
ARDUINO MEGA 2560 KOMMUNIKATION
ARDUINO MEGA 2560 KOMMUNIKATION
ARDUINO MEGA 2560 KOMMUNIKATION
ARDUINO MEGA 2560 KOMMUNIKATION
ARDUINO MEGA 2560 KOMMUNIKATION

Dieser Aspekt des Projekts war für mich neu und erforderte als solcher den Rohbau eines IC2-Verteilers und den Anschluss jedes der Mega GNDs. Die IC2-Verteilerplatine ermöglichte den Anschluss der beiden Mega-Karten über die Pins 21 und 22, die Platine wurde auch zum Anschluss des LCD-Bildschirms, des BME280-Sensors, der Echtzeituhr und des FM-Radios verwendet. Einzelheiten zur Einzelzeichenkommunikation vom Master zum Slave finden Sie in der angehängten Arduino-Datei „SteampunkRadioV1Master“. Die kritischen Codezeilen sind Zeile 90, die den zweiten Mega als Slave-Einheit definieren, Zeile 291 ist ein typischer Aufruf einer Slave-Aktionsanforderungsprozedur, die Prozedur beginnt bei Zeile 718, schließlich Zeile 278, die eine Antwort von der Slave-Prozedur zurückgibt, jedoch I beschlossen, diese Funktion nicht vollständig zu implementieren.

Die angehängte Datei „SteampunkRadioV1Slave“beschreibt die Slave-Seite dieser Kommunikation, kritische Zeilen sind Zeile 57, definiert die Slave-IC2-Adresse, Zeilen 119 und 122, und die Prozedur „receiveEvent“startet eine 133.

Es gibt einen sehr guten You Tube-Artikel: Arduino IC2 Communications von DroneBot Workshop, der sehr hilfreich war, um dieses Thema zu verstehen.

Schritt 5: ELEKTROMAGNETSTEUERUNG

ELEKTROMAGNETSTEUERUNG
ELEKTROMAGNETSTEUERUNG
ELEKTROMAGNETSTEUERUNG
ELEKTROMAGNETSTEUERUNG

Ein neues Element in diesem Projekt war wiederum die Verwendung eines Elektromagneten. Ich habe eine 5V-Einheit verwendet, die über ein Einkanalrelais gesteuert wird. Diese Einheit wurde verwendet, um die Morse-Code-Taste zu bewegen, und sie funktionierte sehr gut mit kurzen oder langen Impulsen, die die "Punkt"- und "Strich"-Sounds lieferten, die eine typische Morse-Taste aufweist. Bei der Verwendung dieses Geräts trat jedoch ein Problem auf, es führte eine Gegen-EMK in den Stromkreis ein, die dazu führte, dass der angeschlossene Mega zurückgesetzt wurde. Um dieses Problem zu lösen, fügte ich eine Diode parallel zum Elektromagneten hinzu, die das Problem löste, da sie die Gegen-EMK auffangen würde, bevor sie den Stromkreis beeinflusste.

Schritt 6: UKW-RADIO & 3W VERSTÄRKER

UKW-RADIO & 3W VERSTÄRKER
UKW-RADIO & 3W VERSTÄRKER
UKW-RADIO & 3W VERSTÄRKER
UKW-RADIO & 3W VERSTÄRKER

Wie der Projektname vermuten lässt, ist dies ein Radio und ich habe mich für ein RDA5807M FM-Modul entschieden. Obwohl dieses Gerät gut funktioniert, erfordert sein Format sehr große Sorgfalt beim Anbringen von Drähten, um eine Leiterplatte zu erstellen. Die Lötfahnen an diesem Gerät sind sehr schwach und brechen ab, was es sehr schwierig macht, einen Draht an diese Verbindung zu löten. Das beigefügte PDF zeigt die Verkabelung dieses Geräts, SDA- und SDL-Steuerleitungen sorgen für die Steuerung dieses Geräts vom Mega, die VCC-Leitung benötigt 3,5 V, überschreiten Sie diese Spannung nicht oder das Gerät wird beschädigt. Die GND- und ANT-Leitung sind selbstverständlich, die Lout- und Rout-Leitungen speisen eine Standard-3,5-mm-Kopfhörerbuchse. Ich habe eine Mini-FM-Antennenbuchse und eine Dipol-FM-Antenne hinzugefügt und der Empfang ist sehr gut. Ich wollte die Kopfhörer nicht zum Radiohören verwenden, also fügte ich zwei 20-W-Lautsprecher hinzu, die über einen PAM8403 3W-Verstärker mit dem Eingang zum Verstärker verbunden waren, wobei der gleiche 3,5-mm-Kopfhörerstecker und ein handelsübliches 3,5-mm-Stecker-zu-Stecker-Kabel verwendet wurden. An diesem Punkt stieß ich auf ein Problem mit dem Ausgang des RDA5807M, das den Verstärker überforderte und erhebliche Verzerrungen verursachte. Um dieses Problem zu lösen, habe ich jeder der Kanalleitungen zwei Widerstände von 1M und 470 Ohm in Reihe hinzugefügt, und dies beseitigte die Verzerrung. Mit diesem Format konnte ich die Lautstärke des Geräts nicht auf 0 reduzieren, selbst wenn das Gerät auf 0 gesetzt wurde, wurde der Ton nicht vollständig entfernt, daher habe ich einen "radio.setMute(true)"-Befehl hinzugefügt, wenn die Lautstärke auf 0 gestellt wurde und dies entfernte effektiv alle Geräusche. Die letzten drei IV-11-Röhrchen in der unteren Reihe der Röhrchen zeigen normalerweise die Temperatur und Luftfeuchtigkeit an. Wenn jedoch der Lautstärkeregler verwendet wird, ändert sich diese Anzeige auf das aktuelle Volumen mit maximal 15 und minimal 0. Diese Volumenanzeige ist angezeigt, bis das System die Oberrohre von der Anzeige des Datums zur Anzeige der Uhrzeit aktualisiert, woraufhin die Temperatur wieder angezeigt wird.

Schritt 7: SERVOSTEUERUNG

SERVOSTEUERUNG
SERVOSTEUERUNG
SERVOSTEUERUNG
SERVOSTEUERUNG

Der 5V Servo wurde verwendet, um das Uhrwerk zu bewegen. Nach dem Kauf eines „nur für Teile“-Uhrwerks und dem Entfernen der Hauptfeder und der Hälfte des Mechanismus wurde der Rest gereinigt, geölt und dann mit dem Servo angetrieben, indem der Servoarm an einem der originalen Ersatzuhrräder befestigt wurde. Der kritische Code für den Betrieb des Servos ist in der Datei „SteampunRadioV1Slave“ab Zeile 294 zu finden, wo 2048 Impulse eine 360-Grad-Drehung erzeugen.

Schritt 8: ALLGEMEINE KONSTRUKTION

ALLGEMEINE KONSTRUKTION
ALLGEMEINE KONSTRUKTION
ALLGEMEINE KONSTRUKTION
ALLGEMEINE KONSTRUKTION
ALLGEMEINE KONSTRUKTION
ALLGEMEINE KONSTRUKTION

Der Karton stammte von einem alten Radio, der alte Lack entfernt, vorne und hinten entfernt und dann neu lackiert. Bei jedem der fünf Ventile wurde die Basis entfernt und dann wurden NEON-Lichtringe sowohl an der Ober- als auch an der Unterseite angebracht. Die beiden hintersten Ventile hatten sechzehn kleine Löcher in die Basis gebohrt und dann sechzehn LCD-Leuchten an jedem Loch versiegelt, wobei jede LCD-Leuchte mit der nächsten in Reihe verdrahtet war. Für alle Rohrleitungen wurden 15-mm-Kupferrohre und -verbindungen verwendet. Interne Trennwände bestanden aus 3 mm dickem, schwarz lackiertem Lagenmaterial und die Vorderseite bestand aus 3 mm klarem Plexiglas. Messingblech mit herausgedrückten Formen wurde verwendet, um das vordere Plexiglas und die Innenseite jedes der IV-11-Rohrschächte auszukleiden. Die drei vorderen Bedienelemente für Ein/Aus, Lautstärke und Frequenz verwenden alle lineare Drehpotentiometer, die über ein Kunststoffrohr am Schaft eines Absperrschiebers befestigt sind. Die kupferförmige Antenne wurde aus 5 mm verseiltem Kupferdraht hergestellt, während die spiralförmige Spule um die beiden obersten Ventile aus 3 mm Edelstahldraht mit kupferfarbener Farbe hergestellt wurde. Drei Verteilerplatinen wurden aufgebaut, 12V, 5V und 1,5V, und eine weitere Platine verteilt die IC2-Anschlüsse. Vier DC-Netzteile wurden mit 12V von einem 12V, 1 Ampere Netzteil versorgt. Zwei versorgen die MAX6921AWI IC-Chips mit 24 V, einer liefert eine 5 V-Versorgung zur Unterstützung aller Beleuchtungs- und Bewegungssysteme und einer liefert 1,5 V für die beiden IV-11-Heizkreise.

Schritt 9: SOFTWARE

Die Software wurde in zwei Teilen entwickelt, Master und Slave. Das Master-Programm unterstützt den BME208-Sensor, die Echtzeituhr, zwei MAX6921AWI-IC-Chips und IC2. Das Slave-Programm steuert alle Lichter, Servo, Elektromagnet, Amperemeter und beide Voltmeter. Das Master-Programm unterstützt die sechzehn IV-11-Röhren, das LCD-Rückdisplay und die 12-Tasten-Tastatur. Das Slave-Programm unterstützt alle Beleuchtungsfunktionen, Servo, Elektromagnet, Relais, Amperemeter und beide Voltmeter. Eine Reihe von Testprogrammen wurde entwickelt, um jede der Funktionen zu testen, bevor jede Funktion zu den Master- oder Slave-Programmen hinzugefügt wurde. Siehe angehängte Arduino-Dateien und Details zu den zusätzlichen Bibliotheksdateien, die zur Unterstützung des Codes benötigt werden.

Include-Dateien: Arduino.h, Wire.h, radio.h, RDA5807M.h, SPI.h, LiquidCrystal_I2C.h, Wire.h, SparkFunBME280.h, DS3231.h, Servo.h, Adafruit_NeoPixel.h, Stepper-28BYJ -48.h.

Schritt 10: PROJEKTÜBERPRÜFUNG

Image
Image
PROJEKTÜBERPRÜFUNG
PROJEKTÜBERPRÜFUNG
PROJEKTÜBERPRÜFUNG
PROJEKTÜBERPRÜFUNG

Ich habe die Entwicklung dieses Projekts mit seinen neuen Elementen wie Mega-Kommunikation, Elektromagnet, Servo und Unterstützung von sechzehn IV-11 VFD-Röhren genossen. Die Komplexität der Schaltung war manchmal eine Herausforderung und die Verwendung von Dupont-Steckverbindern verursacht von Zeit zu Zeit Verbindungsprobleme. Die Verwendung von Heißkleber zum Sichern dieser Verbindungen hilft, zufällige Verbindungsprobleme zu reduzieren.