Indholdsfortegnelse:

RFID Jukebox: 3 trin (med billeder)
RFID Jukebox: 3 trin (med billeder)

Video: RFID Jukebox: 3 trin (med billeder)

Video: RFID Jukebox: 3 trin (med billeder)
Video: Juuke — музыкальный плеер RFID 2024, November
Anonim
Image
Image
RFID Jukebox
RFID Jukebox

Dette er mit bidrag til "Audio" -konkurrencen - hvis du er interesseret i dette, så send mig en stemme

Dette indlæg vil forsøge at oprette en "rullevenlig" version af vejledningsvideoen, der er inkluderet øverst i dette indlæg

Videoen går meget i detaljer om kontrolflowet, og hvilken software jeg bruger. Tag et kig på det, hvis du gerne vil lære mere.

Forløbet er som følger:

Normal betjening - Læsningskort og udløsning af Spotify til afspilning af sange:

1) RFID -mærket læses af en kompatibel kortlæser

2) Kortlæser spytter serielle data for hvert kort ud til en Arduino

3) Arduino "Seriel udskriver" de data, den modtager til en hindbær pi

4) Pi modtager kort -id fra Arduino. Pi slår kort -id'et op i en tabel for at finde den tilsvarende Spotify URI

5) Pi kalder Spotify API for at afspille valgt URI

Opsætningsfase: Tilknytning af RFID -tag til en Spotify URI

1) til 3) ovenfra

4) Pi forventer en kommandolinjearg med den specifikke Spotify URI, du ønsker at knytte til kortet

5) Pi opretter en ny post (eller tilsidesætter, hvis kort -ID allerede findes i tabellen) for cardID, SpotifyURI -par

Så du "programmerer" ikke disse tags. Disse tags har deres egen indbyggede mikrokontroller, der modulerer feltet, der kommer fra læserens spole til melodien af det specifikke ID. Alt du gør er at oprette en ordbog med nøgleværdipar, som pi kan læse fra.

Lad os f.eks. Sige, at jeg har et kort med ID "2_54_57_53_23_33_3". Jeg ved i første omgang ikke, hvad ID'et er, men da jeg læste output fra Arduino efter at have scannet det, er det det, der kommer ud.

Lad os sige, at jeg vil få dette kort til at spille Al Greens største hits -album, når det scannes. For at opnå dette ville jeg gå til Spotify og kopiere albumets URI og få "spotify: album: 6W0V8B0fJItvOwC8v114rZ". Nu, som det ses i videoen, leverer jeg denne URI til et python -program for at forbinde kort -id'et "2_54_57_53_23_33_3" med spotify -URI for "spotify: album: 6W0V8B0fJItvOwC8v114rZ" i en tabel. "Nøglen" er kort -id'et, og "værdien" er URI.

Når jeg nu implementerer hovedprogrammet, og min pi modtager et kort -id på "2_54_57_53_23_33_3", vil det slå det op i tabellen, samle den URI, der er knyttet til det, og levere URI som et argument til Spotify API.

Forbrugsvarer

Dedikeret computer (hindbær pi er bedst til denne vejledning)

RFID -kortlæsermodul til tilslutning til den dedikerede computer

RFID -kort kompatible med din læser

Valgfrit, men anbefalet: En ekstra Arduino som mellemmand mellem læseren og computeren for at spare udviklingstid

Trin 1: Kodeoversigt

Kodeoversigt
Kodeoversigt
Kodeoversigt
Kodeoversigt

De vedhæftede skærmbilleder viser den grundlæggende kodestruktur for grænseflade med Serial på Arduino og pi. Fordelen ved at bruge Arduino som mellemmand er, at jeg kan tilslutte den direkte til Pi's USB -port som en seriel indgang. Dette reddede mig masser af hovedpine, da jeg nu ikke behøver at vide, hvordan jeg konfigurerer GPIO -benene som seriel indgang.

Min særlige kort/læser -kombination giver mig det usædvanlige resultat, at alle kort begynder med et 2 og slutter med et 3. Dette gav mig en hurtig og beskidt måde at vide, hvornår en transmission starter eller slutter. Afhængigt af de kort/læsere, du har, skal din kode ændres.

Trin 2: Spotify -integration

Image
Image
Spotify -integration
Spotify -integration
Spotify -integration
Spotify -integration
Spotify -integration
Spotify -integration

Nu til den hårde del - grænseflade med Spotify. Jeg stolede stærkt på 3 ressourcer her:

1) Spotifyd -projektet, som gør det muligt for din enhed at blive vist som en ekstra højttaler til din Spotify -konto.

2) Diskplayer -projektet, hvor en eller anden tilfældig fyr skrev sine egne go -scripts til grænseflade med Spotify API

3) Denne smukke mand, der går over OAUTH med Spotify. Uden ham havde jeg spildt så mange flere timer.

Installer først Spotifyd, og test det for at sikre, at pi'en vises som en højttaler til din konto.

Så når det virker, brugte jeg Diskplayer til at teste spotify API. Det er her, det vil bede dig om at levere et Spotify API -token. Hvis du kører en hovedløs opsætning som mig, kan du ikke åbne den i en browser på pi. Af denne grund skal du følge trinene i videoen ovenfor i trin 3). Dette projekt ville ikke være sket uden manden i den video!

Trin 3: Få det til at se pænere ud

Få det til at se pænere ud!
Få det til at se pænere ud!

Når alt fungerer, vil du sidde tilbage med et rod af ledninger, der afspiller alt, hvad du vil have fra Spotify. For at rense det skal du lægge alt i en æske og printe nogle etiketter til dine kort! Jeg brugte Avery 22822 etiketter (som leveres med en tom Photoshop -skabelon til udskrivning derhjemme). Jeg var i stand til at trække billeder fra google og slå dem i Photoshop -skabelonen efter behov. Efter et par timers indlæring i Photoshop printede jeg og satte etiketterne på mine tomme RFID -tags.

Jeg havde en masse sjov med dette projekt og vil bruge det i fremtiden til at underholde folk i min lejlighed. Jeg / Lad mig vide, hvis du ender med at lave det selv!

Jeg deltager i dette i "Audio" -konkurrencen - hvis du nød det, er du velkommen til at stemme på dette. Tak!

Anbefalede: