Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Récepteur radio FM Arduino TEA5767

Composants et fournitures

Arduino Micro
× 1
Module TEA5767
× 1
Écran LCD Arduino
× 1
Potentiomètre rotatif (générique)
10k ohm
× 1
Amplificateur audio LM386
× 1
Haut-parleur 3W
× 1
Planche à pain (générique)
× 1
Câble audio
× 1
Câbles de raccordement (générique)
× 1
Émetteur FM
× 1

Applications et services en ligne

Arduino IoT Cloud

À propos de ce projet

Présentation

Chers amis, bienvenue! Dans ce tutoriel, nous allons construire un simple récepteur radio FM sur une maquette .

Veuillez regarder la vidéo ci-jointe pour l'écouter pendant quelques secondes. Comme vous pouvez le voir, la radio fonctionne bien et nous pouvons entendre de la musique en sortir. Je transmets des pistes sûres de YouTube à l'aide de cet émetteur FM peu coûteux à cette fréquence. J'utilise l'écran LCD Nokia 5110 pour afficher la fréquence sélectionnée, la force du signal et une icône stéréo si nous recevons un son stéréo. Le cerveau du projet est le petit et bon marché Arduino Nano . Nous pouvons contrôler le volume du haut-parleur à l'aide de ce potentiomètre, et nous pouvons changer la fréquence radio à l'aide de ce potentiomètre.

C'est un projet fascinant et relativement facile à construire. Voyons comment le construire.

Étape 1 :Obtenez toutes les pièces

Les pièces nécessaires à la construction de ce projet sont les suivantes :

  • Arduino Nano
  • Module radio FM
  • LCD Nokia 5110
  • Potentiomètre 10K
  • Amplificateur audio
  • Haut-parleur 3 W
  • Grande planche à pain
  • Câble audio
  • Cavaliers
  • Fils 3 en 1
  • Émetteur FM
  • Banque d'alimentation

Le coût total du projet est d'environ 15$.

Étape 2 : écran LCD Nokia 5110

Le Nokia 5110 est mon écran préféré pour mes projets Arduino.

Le Nokia 5110 est un écran LCD graphique de base qui était à l'origine destiné à un écran de téléphone portable. Il utilise le contrôleur PCD8544 qui est un contrôleur/pilote LCD CMOS à faible consommation. Pour cette raison, l'écran a une consommation d'énergie impressionnante.

Il n'utilise que 0,4 mA lorsqu'il est allumé, mais le rétroéclairage est désactivé. Il utilise moins de 0,06 mA en mode veille ! C'est l'une des raisons qui font de cet affichage mon préféré. Le PCD8544 s'interface aux microcontrôleurs via une interface de bus série. Cela rend l'écran très facile à utiliser avec Arduino. Il vous suffit de connecter 8 fils. J'ai préparé un didacticiel détaillé sur l'utilisation de l'écran LCD Nokia 5110 avec Arduino.

J'ai joint cette vidéo dans ce didacticiel, elle fournira des informations utiles sur l'affichage, je vous encourage donc à la regarder attentivement. Le coût de l'affichage est d'environ 4 $.

Vous pouvez l'obtenir ici.

Étape 3 : Module radio FM TEA5767

Le projet est construit autour de ce module radio FM.

Le module utilise la puce radio TEA5767 , celui-ci ici. La puce utilise l'interface I2C, elle est donc simple à utiliser avec Arduino. Sur le module, on retrouve également un amplificateur audio. Malheureusement, il s'agit d'un ampli casque donc on ne peut pas brancher directement un haut-parleur à la sortie du module car le signal audio est très faible. Nous devons d'abord l'amplifier. De plus, il n'y a aucun moyen de contrôler le volume qui sort du module avec un logiciel, nous allons donc utiliser un potentiomètre plus tard. Sur le module, il y a deux prises casque, l'une pour l'antenne et l'autre pour la sortie casque standard. Le module est livré avec une petite antenne, mais vous pouvez facilement construire la vôtre si vous le souhaitez.

Vous pouvez l'obtenir ici.

Étape 4 :connexion des pièces

Construisons maintenant le circuit selon ce schéma de principe.

Tout d'abord, plaçons toutes les pièces sur la planche à pain. Nous connectons la broche de masse de chaque partie au rail de masse de la planche à pain et la broche Vcc de chaque partie au rail positif de la planche à pain, à l'exception du potentiomètre qui contrôlera le volume. Maintenant, connectons le module radio. La broche SLC va à la broche analogique 5 de l'Arduino Nano, et la broche SDA va à la broche analogique 4. Maintenant, nous connectons la broche du milieu du potentiomètre à la broche analogique 0. Avec ce potentiomètre, nous allons sélectionner la fréquence.

Nous devons maintenant connecter le potentiomètre de volume pour pouvoir contrôler le volume. J'ai utilisé un câble audio. J'ai branché une extrémité du câble à la sortie audio du module. Ensuite, j'ai coupé l'autre extrémité pour trouver 4 fils à l'intérieur du câble. Le module produit un son stéréo, mais nous n'utiliserons cette fois qu'un seul canal audio. Donc, je ne connecte que deux des fils. L'un d'eux est GND et l'autre est le signal audio qui doit être amplifié. Le fil de signal audio va à la broche d'entrée du potentiomètre de volume. La broche du milieu du potentiomètre est le signal audio qui sort.

Pour amplifier le signal audio, j'utilise ce module qui utilise la puce d'amplification LM386. Le signal audio va à cette broche, la broche de masse du câble audio va à cette broche. Maintenant, il ne nous reste plus qu'à alimenter le module. Nous connectons donc cette broche au rail positif de la planche à pain et cette broche au rail négatif de la planche à pain. La seule chose que nous devons faire maintenant est de connecter un petit haut-parleur à la sortie du module comme celui-ci. Avec ce petit potentiomètre, on peut contrôler l'amplification du signal. Il ne nous reste plus qu'à connecter l'écran Nokia 5110. Veuillez regarder ma vidéo détaillée sur l'utilisation de l'écran Nokia 5110 pour voir comment le connecter, ou suivez le schéma.

Connexion de l'écran LCD Nokia 5110

  • RST va à la broche numérique 12 de l'Arduino
  • CE va à la broche numérique 11 de l'Arduino
  • DC va à la broche numérique 10 de l'Arduino
  • DIN va à la broche numérique 9 de l'Arduino
  • CLK va à la broche numérique 8 de l'Arduino
  • VCC passe à Arduino 3.3V
  • LIGHT va à Arduino GND (rétroéclairage activé)
  • GND passe à Arduino GND

La dernière étape, qui est facultative, consiste à connecter un condensateur de 330 μF à la maquette comme celle-ci pour réduire le bruit sur le signal audio.

Si nous mettons maintenant le projet sous tension, nous pouvons voir qu'un écran de démarrage s'affiche pendant 3 secondes et après cela, nous pouvons entendre le son du haut-parleur. La qualité sonore n'est pas des meilleures avec cette enceinte et cet amplificateur audio. Si j'utilise une autre enceinte commerciale avec un amplificateur intégré, la qualité sonore est parfaite. Vérifiez-le. Ainsi, le signal de sortie du module est parfait, mais l'amplificateur et le haut-parleur que j'ai utilisés réduisent la qualité du son, je dois donc en rechercher de meilleurs. Maintenant que nous avons construit le matériel, examinons le côté logiciel du projet.

Étape 5 :Code du projet

Dans ce projet, nous utilisons deux bibliothèques. J'utilise la bibliothèque graphique Nokia5110 et une bibliothèque pour la puce FM TEA5767.

Le code fonctionne comme ça. Dans un premier temps, nous initialisons le module radio et l'affichage, et nous affichons un écran de démarrage pendant trois secondes. J'ai conçu cet écran de démarrage dans Photoshop. Regardez le didacticiel vidéo que j'ai joint si vous voulez savoir comment télécharger vos graphiques sur un écran Nokia 5110.

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

Ensuite, dans la fonction de boucle, nous lisons la valeur du potentiomètre qui contrôle la fréquence toutes les quelques millisecondes. Nous obtenons la valeur analogique du potentiomètre et nous la mappons à une valeur de fréquence. Puisque nous lisons une valeur analogique, cette valeur n'est pas constante; il monte ou descend légèrement même si on ne tourne pas le potentiomètre.

fréquenceInt =map(val, 2, 1014, 8700, 10700); //Valeur analogique à la fréquence de 87,0 MHz à 107,00 MHz fréquence flottante =fréquenceInt/100,0f ; 

Ainsi, pour obtenir une fréquence stable, nous n'accordons la radio sur une fréquence différente que si la fréquence a considérablement changé. Donc, s'il y a un décalage important dans la fréquence, nous accordons le module radio à cette fréquence, nous obtenons la force du signal, et nous l'imprimons à l'écran, nous imprimons l'icône stéréo si nécessaire et enfin, nous imprimons la fréquence sélectionnée .

if(fréquence - précédenteFréquence>=0,1f || précédenteFréquence - fréquence>=0,1f) { lcd.clrScr(); radio.selectFrequency(fréquence); printSignalStrength(); printStereo(); printFrequency(fréquence); fréquence précédente =fréquence ; } 

C'est ainsi que fonctionne le code, il est simple mais fonctionne bien. Comme toujours, vous pouvez trouver le code du projet attaché à cette étape.

Puisqu'il s'agit d'un projet en développement, vous pouvez trouver la dernière version du code sur la page web du projet ici :http://educ8s.tv/arduino-fm-radio-project

FMRadio.zip

Étape 6 :Réflexions finales

Comme vous pouvez le voir en une demi-heure environ, nous pouvons construire une radio FM sur une maquette. À quel point cela est cool!

La qualité sonore que nous obtenons de ce projet n'est pas encore excellente. Je vais travailler davantage sur ce projet pour l'améliorer dans tous les domaines. Je veux transformer ce projet en radio complète avec un boîtier rétro imprimé en 3D. Tout d'abord, je vais essayer différents amplificateurs audio et haut-parleurs pour obtenir une bonne qualité audio de ce projet. Je vais également l'éloigner de la maquette et en faire une version permanente sur une planche de prototypage. Je vais également concevoir un boîtier pour ce projet pour le faire ressembler à une radio. Bien sûr, le code du projet a également besoin de beaucoup d'améliorations et de réglages. Une fonctionnalité que je voudrais ajouter est une fonctionnalité de réglage fin qui améliorera encore plus la qualité sonore.

Le projet nécessite environ 50 mA de courant lorsque le rétroéclairage de l'écran est désactivé. Nous pouvons encore réduire le courant de certaines astuces logicielles et matérielles afin que ce projet puisse être alimenté par batterie. Je pense que le résultat sera impressionnant, j'ai hâte de voir ce projet terminé sur mon bureau. Cette vidéo n'était que le début.

J'aimerais avoir votre avis sur ce projet. Trouvez-vous ce projet intéressant ? Aussi, quel genre d'améliorations proposez-vous? Avez-vous des astuces tirées de votre expérience qui peuvent améliorer ce projet ?

Veuillez publier vos commentaires dans la section commentaires ci-dessous et n'oubliez pas d'aimer la vidéo et de la partager avec vos amis si vous la trouvez intéressante ! Merci beaucoup !

Code

  • Extrait de code n° 1
  • Extrait de code 3
Extrait de code n°1Texte brut
configuration vide() { radio.setMonoReception(); radio.setStereoNoiseCancellingOn(); initScreen(); showSplashScreen(); Serial.begin (9600);}
Extrait de code n°3Texte brut
if(fréquence - fréquence précédente>=0,1f || fréquence précédente - fréquence>=0,1f) { lcd.clrScr(); radio.selectFrequency(fréquence); printSignalStrength(); printStereo(); printFrequency(fréquence); fréquence précédente =fréquence ; }

Schémas


Processus de fabrication

  1. Dés numériques Arduino
  2. Radio Internet Pi-Arduino
  3. Iron Man
  4. Trouvez-moi
  5. Bras robotique Arduino imprimé en 3D
  6. Contrôle de l'humidificateur Arduino
  7. Radio FM utilisant Arduino et RDA8057M
  8. NeoMatrix Arduino Pong
  9. Joystick Arduino