Sisukord:
- Samm: hankige kõik osad
- Samm: ESP32 plaat
- Samm: MP3 dekooder
- 4. samm: Nextion -ekraan
- Samm: kõigi osade ühendamine
- 6. samm: projekti kood
- 7. samm: lõplikud mõtted ja täiustused
Video: Interneti -raadio ESP32 abil: 7 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:48
Kallid sõbrad, tere tulemast teise Instructable'i! Täna ehitame odava ESP32 plaadi abil suure 3,5 -tollise ekraaniga Interneti -raadioseadme. Uskuge või mitte, aga nüüd saame luua Interneti -raadio vähem kui 10 minutiga ja vähem kui 30 dollariga. Katta on palju, alustame siis!
Paar kuud tagasi lõpetasin Arduino FM -raadio projekti, mis töötab suurepäraselt ja näeb minu arvates veelgi parem välja. Kui soovite näha, kuidas ma selle projekti ehitasin, saate lugeda juhendit siit. Probleem on selles, et kuigi see raadio tundub lahe, pole see otstarbekas, kuna elan Lõuna -Kreeka väikelinnas ja suurtes Kreeka raadiojaamades, mida ma eelistan kuulata, pole siin saatjaid. Niisiis, ma kuulan oma lemmikraadioid veebis oma süle- või tahvelarvutis, mis pole ka nii praktiline. Niisiis, ma kavatsen täna ehitada Interneti -raadioseadme, et saaksin kuulata oma lemmikraadiojaamu üle kogu maailma!
Nagu näete, on projekti esimene versioon leivaplaadil valmis. Lülitame selle sisse. Nagu näete, loob projekt Interneti -ühenduse ja voogesitab seejärel muusikat eelmääratud raadiojaamadest.
Olen häälestunud Ateena raadiojaamale Real FM ja nende nuppude abil saame muuta raadiojaama, mida kuulame. Olen salvestanud oma lemmikraadiojaamad ESP32 mällu, et saaksin neile hõlpsasti juurde pääseda. Selle potentsiomeetriga saan muuta kõlari helitugevust. Näitan kuulatava raadiojaama nime suurel 3,5”ekraanil, millel on retro kasutajaliides. Projekt töötab hästi ja seda on väga lihtne ehitada.
Saate sama projekti koostada vähem kui 10 minutiga, kuid teil peab olema teatud kogemus. Kui see on teie esimene projekt, kaaluge kogemuste saamiseks kõigepealt lihtsama projekti ehitamist. Vaadake minu juhenditest lihtsaid projektiideid ja kui olete Arduinoga mugavam, tuleb elektroonika selle laheda projekti üles ehitamiseks tagasi. Alustame nüüd oma Interneti -raadio ehitamist.
UUENDA 6.6.2019
Müraprobleem on lahendatud isolaatoritrafo lisamisega. Vaadake uuendatud shemaatilist diagrammi. Tänan!
Samm: hankige kõik osad
Meil on vaja järgmisi osi:
- ESP32 ▶
- MP3 dekooder ▶
- Isolatsioonitrafo ▶
- Võimendi ▶
- 3W kõlar ▶
- 3,5 -tolline Nextion -ekraan ▶
- Nupud ▶
- Leivalaud ▶
- Juhtmed ▶
Projekti kogumaksumus on umbes 40 dollarit, kuid kui te ekraani ei kasuta, on projekti maksumus umbes 20 dollarit. Hämmastav värk. Me saame ehitada oma Interneti -raadio vaid 20 dollariga!
Samm: ESP32 plaat
Projekti tuumaks on muidugi võimas ESP32 plaat. Kui te pole sellega tuttav, on ESP32 kiip järg populaarsele ESP8266 kiibile, mida oleme varem mitu korda kasutanud. ESP32 on metsaline! See pakub kahte 32 -bitist töötlemissüdamikku, mis töötavad sagedusel 160 MHz, tohutul hulgal mälu, WiFi -ühendust, Bluetoothi ja paljusid muid funktsioone, mille maksumus on umbes 7 dollarit! Hämmastav värk!
Palun vaadake üksikasjalikku ülevaadet, mille olen selle plaadi jaoks ette valmistanud. Lisasin video selle juhendi juurde. See aitab mõista, miks see kiip muudab igaveseks viisi, kuidas me asju teeme! Üks põnevamaid asju ESP32 puhul on see, et kuigi see on nii võimas, pakub see sügava une režiimi, mis nõuab vaid 10 μs voolu. See muudab ESP32 ideaalseks kiibiks väikese energiatarbega rakenduste jaoks.
Selles projektis loob ESP32 plaat Interneti -ühenduse ja seejärel võtab see kuulatavalt raadiojaamalt MP3 -andmed vastu ning saadab ekraanile mõned käsud.
Samm: MP3 dekooder
Seejärel saadetakse MP3 andmed SPI liidese abil MP3 dekoodri moodulisse. See moodul kasutab VS1053 IC -d. See IC on spetsiaalne riistvara MP3 -dekooder. See võtab ESP32 -lt MP3 -andmed ja muudab need tõesti kiiresti helisignaaliks.
Helisignaal, mida see selles helipistikus väljastab, on nõrk ja mürarikas, seega peame selle mürast puhastama ja võimendama. (Kui kasutate kõrvaklappe, ei pea signaali mürast puhastama ega võimendama.) Sellepärast kasutan heli mürast puhastamiseks isolatsioonitrafot ja helisignaali võimendamiseks PAM8403 helivõimendit. kõneleja juurde. Olen ühendanud ESP32 -ga ka kaks nuppu, et muuta MP3 -voogu, kust andmeid saame, ja Nextion -kuvarit, et kuvada kuulatavat raadiojaama.
4. samm: Nextion -ekraan
Valisin selle projekti jaoks Nextioni ekraani, kuna seda on väga lihtne kasutada. Selle juhtimiseks peame ühendama ainult ühe juhtme.
Nextion -kuvarid on uut tüüpi kuvarid. Nende tagaküljel on oma ARM -protsessor, mis vastutab ekraani juhtimise ja graafilise kasutajaliidese loomise eest. Seega saame neid kasutada mis tahes mikrokontrolleriga ja saavutada suurepäraseid tulemusi. Olen koostanud selle Nextioni ekraani üksikasjaliku ülevaate, mis selgitab põhjalikult nende toimimist, nende kasutamist ja nende puudusi. Seda saate lugeda siit või vaadata lisatud videot.
Samm: kõigi osade ühendamine
Kõik, mida peame tegema, on ühendada kõik osad vastavalt sellele skemaatilisele skeemile. Skemaatilise diagrammi leiate siit. Ühendus on lihtne.
Siiski tuleb märkida kahte asja. MP3 dekoodri moodul väljastab stereosignaali, kuid ma kasutan selles projektis ainult ühte helikanalit. Helisignaali saamiseks ühendasin helikaabli mooduli helipistikupessa ja lõikasin selle nii, et selle sees oleks neli juhtmest. Ühendasin kaks juhtmest. Üks neist on GND ja teine ühe kahe helikanali helisignaal. Soovi korral saate ühendada mõlemad kanalid võimendusmooduliga ja juhtida kahte kõlarit.
Iga helikanal peab enne võimendiga ühendamist läbima eraldustrafo, et kõrvaldada kõik mürad
Andmete ekraanile saatmiseks peame ühendama ainult ühe juhtme ESP32 TX0 tihvtiga. Pärast osade ühendamist peame koodi laadima ESP32 -sse ja GUI laadima Nextioni kuvale.
GUI Nextioni ekraanile laadimiseks kopeerige fail InternetRadio.tft, mida ma teiega jagan, tühjale SD -kaardile. Asetage SD -kaart ekraani tagaküljel asuvasse SD -kaardi pesasse. Seejärel lülitage ekraan sisse ja GUI laaditakse. Seejärel eemaldage SD -kaart ja ühendage toide uuesti.
Pärast koodi edukat laadimist käivitame projekti. See kuvab ekraanil mõne sekundi jooksul teksti „Ühendamine…”. Pärast Interneti -ühenduse loomist loob projekt ühenduse eelmääratud raadiojaamaga. Riistvara töötab ootuspäraselt, kuid vaatame nüüd projekti tarkvarapoolt.
6. samm: projekti kood
Kõigepealt lubage mul teile midagi näidata. Projekti kood on vähem kui 140 koodirida. Mõelge sellele, saame luua 3,5 -tollise ekraaniga Interneti -raadio, millel on 140 koodirida, see on hämmastav. Seda kõike saame muidugi saavutada erinevate teekide abil, mis sisaldavad tuhandeid koodiridu. See on Arduino ja avatud lähtekoodiga kogukonna jõud. See teeb tegijatele asja lihtsaks.
Selles projektis kasutan ESP32 tahvli jaoks raamatukogu VS1053.
Alguses peame määratlema WiFi-võrgu SSID ja parooli. Järgmisena peame siia salvestama mõned raadiojaamad. Vajame hosti URL -i, teed, kus voog asub, ja porti, mida peame kasutama. Salvestame kogu selle teabe nendesse muutujatesse.
char ssid = "sinu SSID"; // teie võrgu SSID (nimi) char pass = "yourWifiPassword"; // teie võrgu parool
// Vähesed raadiojaamad
char *host [4] = {"149.255.59.162", "radiostreaming.ert.gr", "realfm.live24.gr", "secure1.live24.gr"}; char *path [4] = {"/1", "/ert-kosmos", "/realfm", "/skai1003"}; int -port [4] = {8062, 80, 80, 80};
Sellesse näidesse olen lisanud 4 raadiojaama.
Seadistusfunktsioonis lisame nuppudele katkestused, vormindame MP3 dekoodri mooduli ja loome ühenduse Wi-Fi-ga.
tühine seadistus () {
Seriaalne algus (9600); viivitus (500); SPI.begin ();
pinMode (eelmineNupp, INPUT_PULLUP);
pinMode (järgmine nupp, INPUT_PULLUP);
attachInterrupt (digitalPinToInterrupt (previousButton), previousButtonInterrupt, FALLING);
attachInterrupt (digitalPinToInterrupt (nextButton), nextButtonInterrupt, FALLING); initMP3Decoder (); connectToWIFI (); }
Tsükli funktsioonis kontrollime kõigepealt, kas kasutaja on valinud erineva raadiojaama kui see, kust me andmeid saame. Kui jah, siis loome ühenduse uue raadiojaamaga, muidu saame voost andmeid ja saadame need MP3 dekoodri moodulisse.
void loop () {if (radioStation! = previousRadioStation) {station_connect (radioStation); previousRadioStation = raadiojaam; } if (client.available ()> 0) {uint8_t bytesread = client.read (mp3buff, 32); player.playChunk (mp3buff, baitlugemine); }}
See on kõik! Kui kasutaja vajutab nuppu, toimub katkestus ja see muudab muutuja väärtust, mis ütleb, millise vooga ühenduse luua.
tühine IRAM_ATTR previousButtonInterrupt () {
staatiline allkirjastamata kaua last_interrupt_time = 0;
allkirjastamata pikk interrupt_time = millis (); if (interrupt_time-last_interrupt_time> 200) {if (radioStation> 0) radioStation--; muidu radioStation = 3; } last_interrupt_time = interrupt_time; }
Ekraani värskendamiseks saadame lihtsalt jadaporti mõned käsud.
void drawRadioStationName (int id) {String käsk; lüliti (id) {juhtum 0: käsk = "p1.pic = 2"; Serial.print (käsk); endNextionCommand (); murda; // 1940 UK raadio juhtum 1: command = "p1.pic = 3"; Serial.print (käsk); endNextionCommand (); murda; // KOSMOS GREEK case 2: käsk = "p1.pic = 4"; Serial.print (käsk); endNextionCommand (); murda; // REAL FM GREEK juhtum 3: command = "p1.pic = 5"; Serial.print (käsk); endNextionCommand (); murda; // SKAI 100,3 KREEKA}}
Nüüd vaatame Nextion Display GUI -d. Nextioni graafiline kasutajaliides koosneb taustpildist ja pildist, millel kuvatakse raadiojaama nimi. ESP32 tahvel saadab käske raadiojaama nime muutmiseks manustatud piltidelt. See on väga lihtne. Palun vaadake lisateabe saamiseks Nextioni ekraanijuhendit, mille olen juba mõnda aega tagasi ette valmistanud. Soovi korral saate kiiresti kujundada oma GUI ja kuvada sellel rohkem asju.
Nagu alati, leiate käesolevast juhendist lisatud projekti koodi.
7. samm: lõplikud mõtted ja täiustused
See projekt on väga lihtne. Tahtsin lihtsat Interneti -raadio projekti skeletti, millega töötada. Nüüd, kui projekti esimene versioon on valmis, saame selle parandamiseks lisada palju funktsioone. Esiteks pean ma kavandama korpuse kogu elektroonika jaoks.
Selles raamatus, mis räägib kõigi aegade kõige ilusamatest raadiotest, on selle projekti jaoks korpuseks väga lahedad raadiod. Ma arvan, et ehitan selle suurejoonelise Art Deco raadio ümber korpuse. Mida arvate, kas teile meeldib selle raadio välimus või eelistate midagi kaasaegsemat? Kas teil on muid korpuse ideid? Samuti, kas teile meeldib see Interneti -raadio projekt ja milliseid funktsioone peame selle jaoks kasulikumaks muutma? Mulle meeldiks lugeda teie mõtteid ja ideid, nii et palun postitage need allpool olevasse kommentaaride sektsiooni.
Soovitan:
Ehitage oma Interneti-juhitav video voogesitusrobot Arduino ja Raspberry Pi abil: 15 sammu (piltidega)
Arduino ja Raspberry Pi abil saate luua oma Interneti-juhitava videovoo robot: olen @RedPhantom (teise nimega LiquidCrystalDisplay / Itay), 14-aastane Iisraeli õpilane, kes õpib Max Sheini kõrgkooli kõrgkoolis. Teen selle projekti kõigile õppimiseks ja jagamiseks! Võimalik, et olete mures
Toatemperatuur Interneti kaudu BLYNK ESP8266 ja DHT11 abil: 5 sammu (koos piltidega)
Toatemperatuur Interneti kaudu BLYNK ESP8266 ja DHT11 abil: Tere poisid, täna valmistame toatemperatuuri monitori, mille abil saame oma tuba igal pool maailmas jälgida ja selleks kasutame BLYNK IoT plaadivormi. DHT11 toatemperatuuri lugemiseks kasutame ESP8266
Juhtige kogu maailmas Interneti abil Arduino abil: 4 sammu
Juhtige kogu maailmas Interneti abil Arduino abil: Tere, ma olen Rithik. Teeme teie telefoni kasutades Interneti -juhitud LED -i. Kasutame sellist tarkvara nagu Arduino IDE ja Blynk. See on lihtne ja kui teil õnnestub, saate juhtida nii palju soovitud elektroonilisi komponente Asjad, mida vajame: riistvara:
Kella tegemine M5stick C abil Arduino IDE abil RTC reaalajas kell M5stack M5stick-C abil: 4 sammu
Kella tegemine M5stick C abil, kasutades Arduino IDE | RTC reaalajas kell koos M5stack M5stick-C-ga: Tere, selles juhendis olevad poisid, me õpime, kuidas Arduino IDE abil kella m5stick-C arendusplaadiga teha. Nii kuvab m5stick kuupäeva, kellaaja ja amp; kuunädal ekraanil
ESP32 ja OLED -ekraan: Interneti -kell - DHT22: 10 sammu (piltidega)
ESP32 ja OLED -ekraan: Interneti -kell - DHT22: see juhendatav võistleb võistlusel: "GIF -ide väljakutse 2017", kui teile meeldib, andke oma hääl, klõpsates ülaltoodud bänneril. Suur tänu!;-) See õpetus on jätk teekonnale, et selle suurepärase IoT-seadme kohta rohkem teada saada