Table des matières:
Vidéo: Jukebox RFID : 3 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
Ceci est ma participation au concours "Audio" - si cela vous intéresse, merci de me lancer un vote
Cet article tentera de créer une version « conviviale pour le défilement » de la vidéo explicative incluse en haut de cet article
La vidéo explique en détail le flux de contrôle et le logiciel que j'utilise. Jetez-y un œil si vous souhaitez en savoir plus.
Le flux est le suivant:
Fonctionnement normal - Lecture de cartes et déclenchement de Spotify pour lire des chansons:
1) L'étiquette RFID est lue par un lecteur de carte compatible
2) Le lecteur de carte crache des données série pour chaque carte vers un Arduino
3) Arduino "Imprime en série" les données qu'il reçoit sur un Raspberry Pi
4) Pi reçoit l'ID de la carte d'Arduino. Pi recherche l'ID de la carte dans un tableau pour trouver l'URI Spotify correspondant
5) Pi appelle l'API Spotify pour lire l'URI sélectionné
Phase de configuration: associer une étiquette RFID à un URI Spotify
1) à 3) d'en haut
4) Pi attend une ligne de commande arg avec l'URI Spotify spécifique que vous souhaitez associer à la carte
5) Pi crée une nouvelle entrée (ou remplace si l'ID de carte est déjà trouvé dans le tableau) pour la paire cardID, SpotifyURI
Donc, vous ne "programmez" pas ces balises. Ces balises ont leur propre microcontrôleur intégré qui module le champ provenant de la bobine du lecteur en fonction de son identifiant spécifique. Tout ce que vous faites est de créer un dictionnaire de paires clé-valeur pour le pi à lire.
Par exemple, disons que j'ai une carte avec l'ID "2_54_57_53_23_33_3". Au départ, je ne sais pas quel est l'ID, mais lorsque je lis la sortie de l'Arduino après l'avoir numérisé, c'est ce qui sort.
Disons que je veux que cette carte joue l'album des plus grands succès d'Al Green lorsqu'elle est scannée. Pour ce faire, j'irais sur Spotify et copierais l'URI de l'album, obtenant "spotify:album:6W0V8B0fJItvOwC8v114rZ". Maintenant, comme on le voit dans la vidéo, je fournis cet URI à un programme python pour associer l'ID de carte de "2_54_57_53_23_33_3" à l'URI spotify de "spotify:album:6W0V8B0fJItvOwC8v114rZ" dans un tableau. La « clé » est l'ID de la carte et la « valeur » est l'URI.
Maintenant, lorsque je déploie le programme principal et que mon pi reçoit un ID de carte de "2_54_57_53_23_33_3", il le recherchera dans le tableau, rassemblera l'URI qui lui est associé et fournira l'URI comme argument à l'API Spotify.
Fournitures
Ordinateur dédié (raspberry pi est le meilleur pour ce tutoriel)
Module lecteur de carte RFID à connecter à l'ordinateur dédié
Cartes RFID compatibles avec votre lecteur
Facultatif mais recommandé: Un Arduino de rechange comme intermédiaire entre le lecteur et l'ordinateur pour gagner du temps de développement
Étape 1: Présentation du code
Les captures d'écran ci-jointes montrent la structure du code de base pour l'interfaçage avec Serial sur l'Arduino et le pi. L'avantage d'utiliser l'Arduino comme intermédiaire est que je peux le brancher directement sur le port USB du Pi en tant qu'entrée série. Cela m'a épargné une tonne de maux de tête puisque maintenant je n'ai plus besoin de savoir comment configurer les broches GPIO en tant qu'entrée série.
Ma combinaison particulière carte/lecteur me donne le résultat inhabituel que toutes les cartes commencent par un 2 et se terminent par un 3. Cela m'a donné un moyen rapide et sale de savoir quand une transmission commence ou se termine. Selon les cartes/lecteur que vous possédez, votre code devra changer.
Étape 2: Intégration Spotify
Maintenant, pour la partie difficile - l'interfaçage avec Spotify. Je me suis beaucoup appuyé sur 3 ressources ici:
1) Le projet Spotifyd, qui permet à votre appareil d'apparaître comme un haut-parleur supplémentaire sur votre compte Spotify.
2) Le projet Diskplayer, dans lequel un type au hasard a écrit ses propres scripts go pour s'interfacer avec l'API Spotify
3) Ce bel homme qui passe sur OAUTH avec Spotify. Sans lui, j'aurais perdu tellement d'heures de plus.
Installez d'abord Spotifyd et testez-le pour vous assurer que le pi apparaît comme un haut-parleur sur votre compte.
Ensuite, une fois que cela fonctionne, j'ai utilisé Diskplayer pour tester l'API Spotify. C'est ici qu'il vous demandera de fournir un token API Spotify. Si vous utilisez une configuration sans tête comme moi, vous ne pourrez pas l'ouvrir dans un navigateur sur le pi. Pour cette raison, vous devrez suivre les étapes énumérées dans la vidéo ci-dessus à l'étape 3). Ce projet n'aurait pas vu le jour sans l'homme de cette vidéo !
Étape 3: le rendre plus joli
Une fois que tout fonctionne, vous vous retrouverez avec un fouillis de fils qui joue tout ce que vous voulez de Spotify. Pour le nettoyer, rangez le tout dans un étui et imprimez des étiquettes pour vos cartes ! J'ai utilisé des étiquettes Avery 22822 (fournies avec un modèle Photoshop vierge pour l'impression à la maison). J'ai pu extraire des images de google et les insérer dans le modèle photoshop au besoin. Après quelques heures d'apprentissage de Photoshop, j'ai imprimé et collé les étiquettes sur mes étiquettes RFID vierges.
Je me suis beaucoup amusé avec ce projet et je l'utiliserai à l'avenir pour divertir les gens dans mon appartement. I\Laissez-moi savoir si vous finissez par le faire vous-même !
Je participe au concours "Audio" -- si vous l'avez apprécié, n'hésitez pas à voter pour cela. Merci!
Conseillé:
PlotClock, WeMos et Blynk jouant au Vintage AMI Jukebox : 6 étapes (avec photos)
PlotClock, WeMos et Blynk Playing Vintage AMI Jukebox : Quatre innovations techniques ont rendu ce projet possible : le Rowe AMI Jukebox 1977, le kit de bras robot PlotClock, le microcontrôleur WeMos/ESP 8266 et le service Blynk App/Cloud. REMARQUE : si vous n'avez pas le Jukebox à portée de main – n'arrêtez pas de lire ! Ce projet peut
Serrure de porte électrique avec lecteur d'empreintes digitales et lecteur RFID : 11 étapes (avec photos)
Serrure de porte électrique avec lecteur d'empreintes digitales et lecteur RFID : le projet a été conçu pour éviter la nécessité d'utiliser des clés. Pour atteindre notre objectif, nous avons utilisé un capteur optique d'empreintes digitales et un Arduino. Cependant, il y a des individus qui ont une empreinte digitale illisible et le capteur ne la reconnaîtra pas. Puis penser à un
Mécanisme de verrouillage de porte RFID avec un Arduino : 5 étapes (avec photos)
Mécanisme de verrouillage de porte RFID avec un Arduino : dans ce Instructable, nous allons connecter un capteur RFID RC522 à un Arduino Uno afin de créer un mécanisme de verrouillage simple contrôlé par accès RFID pour une porte, un tiroir ou une armoire. Grâce à ce capteur, vous pourrez utiliser une étiquette ou une carte RFID pour verrouiller
Interfaçage RFID MFRC522 facile avec Arduino Nano : 4 étapes (avec photos)
Interfaçage RFID MFRC522 facile avec Arduino Nano : Le contrôle d'accès est le mécanisme dans les domaines de la sécurité physique et de la sécurité de l'information, pour restreindre l'accès/l'entrée anonyme aux ressources d'une organisation ou d'une zone géographique. L'acte d'accéder peut signifier consommer, entrer ou utiliser
Encore une autre instruction sur l'utilisation du DIYMall RFID-RC522 et du Nokia LCD5110 avec un Arduino : 8 étapes (avec photos)
Encore un autre instructable sur l'utilisation du DIYMall RFID-RC522 et du Nokia LCD5110 avec un Arduino : Pourquoi ai-je ressenti le besoin de créer un autre Instructable pour le DIYMall RFID-RC522 et le Nokia LCD5110 ? Eh bien, pour vous dire la vérité, je travaillais sur une preuve de concept l'année dernière en utilisant ces deux appareils et en quelque sorte "mal placé"