Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Arduino TEA5767 FM-Radioempfänger

Komponenten und Verbrauchsmaterialien

Arduino Micro
× 1
TEA5767-Modul
× 1
Arduino-LCD-Bildschirm
× 1
Drehpotentiometer (allgemein)
10k Ohm
× 1
LM386-Audioverstärker
× 1
3W Lautsprecher
× 1
Breadboard (generisch)
× 1
Audiokabel
× 1
Jumper (generisch)
× 1
FM-Sender
× 1

Apps und Onlinedienste

Arduino IoT Cloud

Über dieses Projekt

Einführung

Liebe Freunde willkommen zurück! In diesem Tutorial bauen wir einen einfachen FM-Radioempfänger auf einem Steckbrett .

Bitte sehen Sie sich das angehängte Video an, um es einige Sekunden lang anzuhören. Wie Sie sehen, funktioniert das Radio einwandfrei und wir können etwas Musik hören. Ich übertrage einige sichere YouTube-Tracks mit diesem kostengünstigen FM-Transmitter auf dieser Frequenz. Ich verwende das LCD-Display des Nokia 5110, um die ausgewählte Frequenz, die Signalstärke und ein Stereosymbol anzuzeigen, wenn wir Stereoton empfangen. Das Gehirn des Projekts ist der kleine und kostengünstige Arduino Nano . Wir können die Lautstärke des Lautsprechers mit diesem Potentiometer steuern und wir können die Radiofrequenz mit diesem Potentiometer ändern.

Es ist ein faszinierendes Projekt und relativ einfach zu bauen. Mal sehen, wie man es baut.

Schritt 1:Holen Sie sich alle Teile

Die für den Bau dieses Projekts benötigten Teile sind die folgenden:

  • Arduino Nano
  • FM-Radiomodul
  • Nokia 5110 LCD
  • 10K Potentiometer
  • Audioverstärker
  • 3-W-Lautsprecher
  • Großes Steckbrett
  • Audiokabel
  • Überbrückungsdrähte
  • 3 in 1 Drähte
  • FM-Sender
  • Powerbank

Die Gesamtkosten des Projekts betragen rund 15 $.

Schritt 2:Nokia 5110 LCD

Das Nokia 5110 ist mein Lieblingsdisplay für meine Arduino-Projekte.

Das Nokia 5110 ist ein einfacher grafischer LCD-Bildschirm, der ursprünglich als Handy-Bildschirm gedacht war. Es verwendet den PCD8544-Controller, der ein CMOS-LCD-Controller/-Treiber mit geringem Stromverbrauch ist. Aus diesem Grund hat das Display einen beeindruckenden Stromverbrauch.

Es verbraucht nur 0,4 mA, wenn es eingeschaltet ist, aber die Hintergrundbeleuchtung ist deaktiviert. Es verbraucht weniger als 0,06 mA im Schlafmodus! Das ist einer der Gründe, die dieses Display zu meinem Favoriten machen. Die PCD8544 ist über eine serielle Busschnittstelle mit Mikrocontrollern verbunden. Das macht den Bildschirm sehr einfach mit Arduino zu verwenden. Sie müssen nur 8 Drähte anschließen. Ich habe ein detailliertes Tutorial zur Verwendung des Nokia 5110 LCD mit Arduino vorbereitet.

Ich habe dieses Video in diesem Tutorial angehängt, es wird nützliche Informationen über das Display liefern, daher empfehle ich Ihnen, es sorgfältig anzusehen. Die Kosten für das Display betragen etwa 4 $.

Du kannst es hier bekommen.

Schritt 3:TEA5767 FM-Radiomodul

Das Projekt ist um dieses FM-Radiomodul herum aufgebaut.

Das Modul verwendet den TEA5767 Funkchip , dieses hier. Der Chip verwendet die I2C-Schnittstelle, sodass er problemlos mit Arduino verwendet werden kann. Auf dem Modul finden wir auch einen Audioverstärker. Leider handelt es sich hier um einen Kopfhörerverstärker, sodass wir keinen Lautsprecher direkt an den Ausgang des Moduls anschließen können, da das Audiosignal sehr schwach ist. Wir müssen es zuerst verstärken. Außerdem gibt es keine Möglichkeit, die Lautstärke, die aus dem Modul kommt, per Software zu steuern, daher werden wir später ein Potentiometer verwenden. Am Modul befinden sich zwei Kopfhörerbuchsen, einer für die Antenne und der andere als Standard-Kopfhörerausgang. Das Modul wird mit einer kleinen Antenne geliefert, aber Sie können Ihre eigene leicht bauen, wenn Sie möchten.

Du kannst es hier bekommen.

Schritt 4:Anschließen der Teile

Bauen wir nun die Schaltung nach diesem Schaltplan auf.

Zuerst legen wir alle Teile auf das Steckbrett. Wir verbinden den Massestift jedes Teils mit der Masseschiene des Steckbretts und den Vcc-Pin jedes Teils mit der positiven Schiene des Steckbretts, mit Ausnahme des Potentiometers, das die Lautstärke steuert. Verbinden wir nun das Funkmodul. Der SLC-Pin geht an den analogen Pin 5 des Arduino Nano und der SDA-Pin an den analogen Pin 4. Jetzt verbinden wir den mittleren Pin des Potentiometers mit dem analogen Pin 0. Mit diesem Potentiometer werden wir die Frequenz auswählen.

Jetzt müssen wir das Volume-Potentiometer anschließen, um die Lautstärke regeln zu können. Ich habe ein Audiokabel verwendet. Ich habe ein Ende des Kabels in den Audioausgang des Moduls gesteckt. Als nächstes schneide ich das andere Ende ab, um 4 Drähte im Kabel zu finden. Das Modul gibt Stereoton aus, aber diesmal verwenden wir nur einen Audiokanal. Also schließe ich nur zwei der Drähte an. Einer davon ist GND und der andere ist das Audiosignal, das verstärkt werden muss. Das Audiosignalkabel geht zum Eingangspin des Lautstärkepotentiometers. Der mittlere Pin des Potentiometers ist das Audiosignal, das ausgegeben wird.

Um das Audiosignal zu verstärken, verwende ich dieses Modul, das den LM386-Verstärkerchip verwendet. Das Audiosignal geht zu diesem Pin, der Massepin vom Audiokabel geht zu diesem Pin. Jetzt müssen wir nur noch das Modul mit Strom versorgen. Also verbinden wir diesen Pin mit der positiven Schiene des Steckbretts und diesen Stift mit der negativen Schiene des Steckbretts. Jetzt müssen wir nur noch einen kleinen Lautsprecher an den Ausgang des Moduls anschließen. Mit diesem kleinen Potentiometer können wir die Verstärkung des Signals steuern. Jetzt müssen wir nur noch das Nokia 5110 Display anschließen. Bitte sehen Sie sich mein ausführliches Video zur Verwendung des Nokia 5110-Displays an, um zu sehen, wie Sie es anschließen, oder folgen Sie dem Schema.

Anschließen des Nokia 5110 LCD-Displays

  • RST geht an Digital Pin 12 des Arduino
  • CE geht an Digital Pin 11 des Arduino
  • DC geht an Digital Pin 10 des Arduino
  • DIN geht an Digital Pin 9 des Arduino
  • CLK geht an Digital Pin 8 des Arduino
  • VCC geht zu Arduino 3.3V
  • LIGHT geht an Arduino GND (Hintergrundbeleuchtung an)
  • GND geht an Arduino GND

Der letzte Schritt, der optional ist, besteht darin, einen 330μF-Kondensator auf diese Weise an das Steckbrett anzuschließen, um das Rauschen des Audiosignals zu reduzieren.

Wenn wir das Projekt jetzt einschalten, sehen wir, dass für 3 Sekunden ein Begrüßungsbildschirm angezeigt wird und danach ist der Ton aus dem Lautsprecher zu hören. Die Klangqualität ist bei diesem Lautsprecher und diesem Audioverstärker nicht die beste. Wenn ich einen anderen handelsüblichen Lautsprecher mit integriertem Verstärker verwende, ist die Klangqualität perfekt. Hör zu. Das Ausgangssignal des Moduls ist also perfekt, aber der Verstärker und der Lautsprecher, den ich verwendet habe, reduzieren die Klangqualität, sodass ich nach besseren suchen muss. Nachdem wir nun die Hardware gebaut haben, werfen wir einen Blick auf die Softwareseite des Projekts.

Schritt 5:Code des Projekts

In diesem Projekt verwenden wir zwei Bibliotheken. Ich verwende die Graphikbibliothek Nokia5110 und eine Bibliothek für den TEA5767 FM-Chip.

Der Code funktioniert so. Zuerst initialisieren wir das Funkmodul und das Display und zeigen für drei Sekunden einen Splash-Screen an. Ich habe diesen Begrüßungsbildschirm in Photoshop entworfen. Sehen Sie sich das Video-Tutorial an, das ich beigefügt habe, wenn Sie wissen möchten, wie Sie Ihre Grafiken auf ein Nokia 5110-Display hochladen.

void setup() { radio.setMonoReception(); radio.setStereoNoiseCancellingOn(); initScreen(); showSplashScreen(); Serial.begin(9600);} 

Als nächstes lesen wir in der Schleifenfunktion alle paar Millisekunden den Wert vom Potentiometer ab, das die Frequenz steuert. Wir erhalten den Analogwert vom Potentiometer und ordnen ihn einem Frequenzwert zu. Da wir einen Analogwert lesen, ist dieser Wert nicht konstant; es geht leicht nach oben oder unten, auch wenn wir das Potentiometer nicht drehen.

frequencyInt =map(val, 2, 1014, 8700, 10700); //Analogwert zur Frequenz von 87,0 MHz bis 107,00 MHz float frequency =frequencyInt/100.0f; 

Um eine stabile Frequenz zu erreichen, stellen wir das Radio nur dann auf eine andere Frequenz ein, wenn sich die Frequenz stark verändert hat. Wenn es also eine signifikante Frequenzverschiebung gibt, stimmen wir das Funkmodul auf diese Frequenz ab, erhalten die Signalstärke und drucken sie auf dem Bildschirm aus, wir drucken bei Bedarf das Stereosymbol und schließlich drucken wir die ausgewählte Frequenz .

if (Frequenz - vorherigeFrequenz>=0.1f || vorherigeFrequenz - Häufigkeit>=0.1f) { lcd.clrScr(); radio.selectFrequenz(Frequenz); printSignalStrength(); printStereo(); printFrequenz (Frequenz); vorherigeFrequenz =Häufigkeit; } 

So funktioniert der Code, er ist einfach, funktioniert aber ok. Wie immer finden Sie den Code des Projekts, der diesem Schritt beigefügt ist.

Da dies ein Projekt in Entwicklung ist, finden Sie die neueste Version des Codes auf der Webseite des Projekts hier:http://educ8s.tv/arduino-fm-radio-project

FMRadio.zip

Schritt 6:Abschließende Gedanken

Wie Sie in etwa einer halben Stunde sehen können, können wir ein FM-Radio auf einem Steckbrett bauen. Wie cool ist das!

Die Klangqualität, die wir aus diesem Projekt herausholen, ist noch nicht so toll. Ich werde mehr an diesem Projekt arbeiten, um es in allen Bereichen zu verbessern. Ich möchte dieses Projekt in ein komplettes Radio mit einem Retro-3D-gedruckten Gehäuse verwandeln. Zuallererst werde ich verschiedene Audioverstärker und Lautsprecher ausprobieren, um eine gute Audioqualität aus diesem Projekt herauszuholen. Ich werde es auch vom Steckbrett entfernen und eine dauerhafte Version davon auf einem Prototyping-Board erstellen. Ich werde auch ein Gehäuse für dieses Projekt entwerfen, damit es wie ein Radio aussieht. Natürlich braucht auch der Code des Projekts viele Verbesserungen und Optimierungen. Eine Funktion, die ich hinzufügen möchte, ist eine Feinabstimmungsfunktion, die die Klangqualität noch weiter verbessert.

Das Projekt benötigt etwa 50 mA Strom, wenn die Hintergrundbeleuchtung des Displays deaktiviert ist. Wir können die aktuellen Software- und Hardware-Tricks weiter reduzieren, damit dieses Projekt batteriebetrieben werden kann. Ich denke, das Ergebnis wird beeindruckend sein, ich kann es kaum erwarten, dieses Projekt auf meinem Schreibtisch fertigzustellen. Dieses Video war nur der Anfang.

Ich würde gerne Ihre Meinung zu diesem Projekt hören. Finden Sie dieses Projekt interessant? Und welche Art von Verbesserungen schlagen Sie vor? Hast du irgendwelche Tricks aus deiner Erfahrung, die dieses Projekt verbessern können?

Bitte posten Sie Ihre Kommentare im Kommentarbereich unten und vergessen Sie nicht, das Video zu liken und mit Ihren Freunden zu teilen, wenn Sie es interessant finden! Vielen Dank!

Code

  • Code-Snippet Nr. 1
  • Code-Snippet #3
Code-Snippet Nr. 1Nur-Text
void setup() { radio.setMonoReception(); radio.setStereoNoiseCancellingOn(); initScreen(); showSplashScreen(); Serial.begin(9600);}
Code-Snippet #3Kurztext
if (Frequenz - vorherigeFrequenz>=0.1f || vorherigeFrequenz - Frequenz>=0.1f) { lcd.clrScr(); radio.selectFrequenz(Frequenz); printSignalStrength(); printStereo(); printFrequenz (Frequenz); vorherigeFrequenz =Häufigkeit; }

Schaltpläne


Herstellungsprozess

  1. Arduino Digital Dice
  2. Pi-Arduino Internetradio
  3. Iron Man
  4. Finde mich
  5. Arduino 3D-gedruckter Roboterarm
  6. Arduino-Befeuchtersteuerung
  7. FM-Radio mit Arduino und RDA8057M
  8. NeoMatrix Arduino Pong
  9. Arduino-Joystick
  10. Schrittzähler (Arduino 101)