Satura rādītājs:

Noskaņas skaļrunis- spēcīgs skaļrunis noskaņas mūzikas atskaņošanai, pamatojoties uz apkārtējās vides temperatūru: 9 soļi
Noskaņas skaļrunis- spēcīgs skaļrunis noskaņas mūzikas atskaņošanai, pamatojoties uz apkārtējās vides temperatūru: 9 soļi

Video: Noskaņas skaļrunis- spēcīgs skaļrunis noskaņas mūzikas atskaņošanai, pamatojoties uz apkārtējās vides temperatūru: 9 soļi

Video: Noskaņas skaļrunis- spēcīgs skaļrunis noskaņas mūzikas atskaņošanai, pamatojoties uz apkārtējās vides temperatūru: 9 soļi
Video: Monitor Audio Silver 100 7g обзор HI-FI полочной акустики с Cambridge Audio EVO 150 2024, Jūlijs
Anonim
Noskaņas skaļrunis- spēcīgs skaļrunis noskaņas mūzikas atskaņošanai, pamatojoties uz apkārtējās vides temperatūru
Noskaņas skaļrunis- spēcīgs skaļrunis noskaņas mūzikas atskaņošanai, pamatojoties uz apkārtējās vides temperatūru

Sveiks!

Skolas projektam MCT Howest Kortrijk es izveidoju noskaņas skaļruni - šī ir vieda Bluetooth skaļruņu ierīce ar dažādiem sensoriem, iekļauta LCD un WS2812b gaismas josla. Skaļrunis atskaņo fona mūziku, pamatojoties uz temperatūru, bet to var izmantot arī kā parastu Bluetooth runātājs. Viss darbojas Raspberry Pi (datu bāze, tīmekļa serveris, aizmugure).

Tātad šī pamācība ir soli pa solim process, kā es sapratu šo projektu 3 nedēļu laikā. Tātad, ja jūs, puiši, vēlaties atjaunot manu projektu, varat sekot ceļvedim

Šis pamācošais ir mans pirmais, ko es uzrakstīju, tādēļ, ja rodas kādi jautājumi, es centīšos uz tiem atbildēt pēc iespējas ātrāk!

Mans GitHub:

1. solis: Piegādes

Raspberry Pi 3B un 16 GB SD karte

Viss mans projekts darbojas ar manu Raspberry Pi 3B ar konfigurētu attēlu, ko es paskaidrošu vēlāk (4. darbība: Raspberry Pi iestatīšana)

LCD displejs 16x2

Es izmantoju vienkāršu LCD displeju, lai drukātu temperatūru, spilgtumu un IP adresi.

Datu lapa:

DS18B20 temperatūras sensors

DS18B20 ir viena stieples sensors, kas mēra temperatūru, ražo Maxim Integrated. Ir divu veidu DS18B20 sensori, tikai komponents (kuru es izmantoju) un ūdensnecaurlaidīgā versija, kas ir daudz lielāka, taču tas nav tas, kas man vajadzīgs projektam, tāpēc es izmantoju tikai komponentu. Sensors var izmērīt temperatūru diapazonā no -55 ° C līdz +125 ° C (-67 ° F līdz +257 ° F), un tā precizitāte ir 0,5 ° C no -10 ° C līdz +85 ° C. Tam ir arī programmējama izšķirtspēja no 9 bitiem līdz 12 bitiem.

Datu lapa:

MCP3008

Lai lasītu datus no sava LDR un PIR sensora, es izmantoju MCP3008, kas ir 8 kanālu 10 bitu analogo ciparu pārveidotājs ar SPI saskarni un ir diezgan viegli programmējams.

Datu lapa:

PIR kustības sensors

Lai noteiktu, kad kāds ienāk un iziet no manas istabas, es izmantoju pasīvo infrasarkano sensoru, jo tos ir viegli lietot un tie ir mazi.

Datu lapa:

LDR

Es izmantoju fotorezistoru vai LDR (gaismas samazināšanas pretestība vai no gaismas atkarīgs rezistors), lai noteiktu telpas spilgtuma līmeni. Un arī ieslēdzu Ledstrip, kad ir tumšs.

Skaļrunis - 3”diametrs - 4 omi 3 vati

Šo skaļruņu konusu es izvēlējos pēc tam vajadzīgā sprieguma un ampēru aprēķināšanas, un tas bija ideāli piemērots manam Raspberry Pi projektam, ko ražoja Adafruit.

Pārskats:

MAX98357 I2S D klases mono pastiprinātājs

Šis ir pastiprinātājs, kas tiek piegādāts kopā ar skaļruni, tas ir ne tikai pastiprinātājs, bet arī I2S digitālais -analogais pārveidotājs, tāpēc tas ir arī lieliski piemērots manam skaļrunim un audio sistēmai.

Pārskats:

Datu lapa:

Arduino Uno

Arduino Uno ir atvērtā koda mikrokontrolleru plate, kuras pamatā ir mikrokontroles ATmega328P mikrokontrolleris, ko ražo uzņēmums Arduino.cc. Uno plāksnei ir 14 digitālās tapas, 6 analogās tapas, un tā ir pilnībā programmējama ar Arduino IDE programmatūru

Pārskats:

Līmeņu pārslēdzējs

Šī ir neliela tāfele, kas rūpējas par saziņu starp Arduino Uno un Raspberry Pi un dažādiem spriegumiem, Arduino: 5V un Raspberry Pi: 3.3V. Tas ir vajadzīgs, jo LED josla ir savienota ar Arduino un darbojas tur, bet visa pārējā informācija darbojas uz Raspberry Pi.

WS2812B - Ledstrip

Šī ir LED lente ar 60 RGB gaismas diodēm (ja vēlaties, varat iegādāties garākas sloksnes ar vairāk RGB gaismas diodēm). Kas manā gadījumā ir savienots ar Arduino Uno, bet var tikt savienots arī ar daudzām citām ierīcēm un ir patiešām vienkārši lietojams.

Datu lapa:

GPIO T-daļa, 1 maizes dēlis un daudz jumperwires

Lai savienotu visu nepieciešamo maizes dēļu un jumperwires, es neizmantoju GPIO T-daļu, bet jūs varat to izmantot, lai skaidri zinātu, kura atkritumu tvertne atrodas.

2. darbība. Shēma un elektroinstalācija

Shēma un elektroinstalācija
Shēma un elektroinstalācija
Shēma un elektroinstalācija
Shēma un elektroinstalācija

Lai izveidotu manu shēmu, es izmantoju Fritzing, tā ir programma, kuru varat instalēt un kas ļauj jums izveidot ļoti vienkāršu shematisku skatu dažādos veidos. Es izmantoju maizes dēli un shematisko skatu.

Lejupielādēt Fritzing:

Pārliecinieties, vai viss ir pareizi pievienots. Es izmantoju krāsas, lai būtu mazliet skaidrāk zināt, kur savienot vadus. Manā gadījumā vadiem es izmantoju dažādas krāsas

3. darbība. Datu bāzes dizains

Datu bāzes dizains
Datu bāzes dizains

Mēs apkopojam daudz datu no 3 sensoriem (temperatūra no DS18B20, spilgtums no LDR un statuss no PIR sensora). Tāpēc vislabāk ir saglabāt visus šos datus datu bāzē. Vēlāk es paskaidrošu, kā konfigurēt datu bāzi (5. solis: mūsu datubāzes inženierija uz RPi!) Bet vispirms ir jāizveido dizains vai ERD (entītiju attiecību diagramma). Manējais tika normalizēts ar 3NF, tāpēc mēs sadalījām komponentus un sastāvdaļu vēsturi citā tabulā. Mēs izmantojam mūzikas datu bāzi, lai izsekotu noklausītās dziesmas.

Kopumā tas ir patiešām vienkāršs un vienkāršs datu bāzes dizains, ar kuru turpmāk strādāt.

4. darbība: iestatiet Raspberry Pi

Tātad, tagad, kad esam sagatavojuši dažus projekta pamatus. Sāksim ar Raspberry Pi iestatīšanu!

1. daļa: SD kartes konfigurēšana

1) Lejupielādējiet nepieciešamo programmatūru un failus

Lai pabeigtu šo procesu, jums ir jālejupielādē 2 programmatūra un 1 operētājsistēma, t.i., Raspbian. Pirmā programmatūra: pirmā programmatūra ir Win32 Disk Imager.

sourceforge.net/projects/win32diskimager/

2. programmatūra: otrā programmatūra ir SD karšu formatētājs.

www.sdcard.org/downloads/formatter_4/

Raspbian OS: Šī ir Pi galvenā operētājsistēma.

www.raspberrypi.org/downloads/raspberry-pi-os/

Izvelciet visus failus uz darbvirsmu.

2) Iegūstiet SD karti un karšu lasītāju

Iegūstiet vismaz 8 GB 10. klases SD karti ar karšu lasītāju. Ievietojiet šo karti karšu lasītājā un pievienojiet to USB portam.

3) Formatējiet SD karti

Atveriet SD kartes formatētāju un izvēlieties disku.

Noklikšķiniet uz formāta un nemainiet citas iespējas.

Kad formatēšana ir pabeigta, noklikšķiniet uz Labi.

4) Uzrakstiet OS uz SD kartes

Atveriet win32diskimager.

Pārlūkojiet Raspbian OS.img failu, kas tika iegūts no lejupielādētā faila.

Noklikšķiniet uz atvērt un pēc tam noklikšķiniet uz Rakstīt.

Ja parādās kāds brīdinājums, ignorējiet tos, noklikšķinot uz Labi. Pagaidiet, līdz rakstīšana ir pabeigta, un tas var aizņemt dažas minūtes. Tāpēc esiet pacietīgs.

n

5) Kad tas ir izdarīts, mēs esam gatavi veikt dažus galīgos pielāgojumus pirms attēla ievietošanas mūsu RPi.

Dodieties uz SD kartes direktoriju, atrodiet failu ar nosaukumu cmdline.txt un atveriet to.

Tagad tajā pašā rindā pievienojiet “ip = 169.254.10.1”.

Saglabājiet failu.

Izveidojiet failu ar nosaukumu "ssh" bez paplašinājuma vai satura. (Vienkāršākais veids ir izveidot txt failu un pēc tam noņemt.txt)

Tagad, kad viss ir instalēts SD kartē, varat to DROŠI izņemt no datora un ievietot Raspberry Pi BEZ barošanas savienojuma. Kad SD karte ir ievietota RPI, pievienojiet LAN kabeli no datora RPi LAN portam, kad tas ir pievienots, varat pievienot barošanu RPi.

2. daļa: RPi konfigurēšana

Špakteles

Tagad mēs vēlamies konfigurēt savu Raspberry Pi, tas tiek darīts, izmantojot Putty.

Putty programmatūra:

Pēc lejupielādes atveriet Putty un ievietojiet IP '169.254.10.1' un portu '22' un savienojuma veidu: SSH.

Tagad mēs beidzot varam atvērt komandrindas saskarni un pieteikties, izmantojot startera pieteikšanās informāciju -> Lietotājs: pi & Parole: aveņu. (Ieteicams to mainīt pēc iespējas ātrāk. Šeit ir norādījumi, kā:

Raspi-config

Mums būs jāiespējo dažādas saskarnes, un, lai to izdarītu, mums vispirms ir jāievada šāds kods:

sudo raspi-config

Lietas, kas mums jāiespējo, ir saskarnes sadaļā. Mums ir jāiespējo šādas saskarnes:

  • Viena stieples
  • Seriāls
  • I2C
  • SPI

Tas bija viss, kas mums bija jādara ar raspi-config

WIFI pievienošana

Pirmkārt, jums ir jābūt root, lai šī komanda kļūtu par root

sudo -i

Kad esat root, izmantojiet šādu komandu: (aizstājiet SSID ar tīkla nosaukumu un paroli ar tīkla paroli)

wpa_passphrase "ssid" "parole" >> /etc/wpa_supplicant/wpa_supplicant.conf

Ja esat izdarījis kaut ko nepareizi, varat pārbaudīt, atjaunināt vai izdzēst šo tīklu, vienkārši ievadot šādu komandu:

nano /etc/wpa_supplicant/wpa_supplicant.conf

Tātad, pēc tam, kad mēs ievadījām mūsu tīklu, ievadīsim WPA klienta saskarni

wpa_cli

Izvēlieties savu saskarni

interfeiss wlan0

Pārlādēt failu

pārkonfigurēt

Visbeidzot, jūs varat redzēt, vai esat labi savienots:

ip a

3. daļa: RPi + instalēšanas programmatūras atjaunināšana

Tagad, kad mums ir izveidots savienojums ar internetu, jau instalēto pakotņu atjaunināšana būtu gudrs solis, tāpēc vispirms darīsim to pirms citu pakotņu instalēšanas.

sudo apt-get update

sudo apt-get jauninājums

Pēc RPi atjaunināšanas mums būs jāinstalē šāda programmatūra:

MariaDB datu bāze

sudo apt-get install mariadb-server

Apache2 tīmekļa serveris

sudo apt instalēt apache2

Python

update-alternatives --install/usr/bin/python python /usr/bin/python3.7 1 update-alternatives --install/usr/bin/python python/usr/bin/python3 2

Python pakete

Lai aizmugurējā sistēma darbotos nevainojami, jums būs jāinstalē visas šīs paketes:

  • Kolba
  • Kolbas-korķi
  • Kolba-MySql
  • Flask-SocketIO
  • PyMySQL pieprasījumi
  • Python-socketio
  • RPi. GPIO
  • Gevent
  • Gevent-websocket

Skaļruņu bibliotēka

Lai izmantotu skaļruni ar pastiprinātāju, mums būs jāinstalē tā bibliotēka

čokurošanās -sS > | bash

Step 4: Reboot

After everything has been installed we will have to reboot the pi to make sure everything works correctly

sudo reboot

Step 5: Setting Up the Database to the RPi

Datu bāzes iestatīšana RPi!
Datu bāzes iestatīšana RPi!

Tagad, kad esam instalējuši visu nepieciešamo, ievietojam mūsu izstrādāto datu bāzi mūsu Raspberry Pi!

Lai izveidotu datu bāzi, mums būs jāsavieno MySql un RPi. Šim nolūkam mēs atvērsim MySQLWorkbench un izveidosim jaunu savienojumu. Aplūkojot attēlu, jums tas ir jāmaina, lai mainītu informāciju uz jūsu.

Ja vēl neko neesat mainījis, varat izmantot SSH pi un aveņu, MySQL mysql un mysql.

Ja kaut kas nav skaidrs, varat arī sekot šai apmācībai:

Lai eksportētu savu datu bāzi, vajadzētu būt vieglāk, izmantojot PHPmyAdmin, jo, izmantojot MySql, jūs varat iegūt daudz kļūdu

6. darbība: Bluetooth konfigurēšana mūsu RPi

Mēs izveidojam Mood skaļruni, ko varam izmantot arī ar savu mūziku, tāpēc tas ir vieglāk, ja RPi ir

savienots ar Bluetooth, sekoju apmācībai, ko varat atrast šeit:

scribles.net/streaming-bluetooth-audio-fr…

Es šeit visu uzrakstīju arī visiem, kas vēlas to atjaunot

Noņemot jau darbojošos bluealsa

sudo rm/var/run/bluealsa/*

Pievienojiet A2DP profila izlietnes lomu

sudo bluealsa -p a2dp -izlietne &

Atveriet Bluetooth saskarni un ieslēdziet Bluetooth

Bluetoothctl ieslēgšana

Iestatiet pāra aģentu

aģents noklusējuma aģentā

Padariet savu RPi atklājamu

atklājams

  • Tagad savā Bluetooth ierīcē meklējiet RPi un izveidojiet savienojumu ar to.
  • Apstipriniet savienošanu pārī abās ierīcēs, špakteles veidā ierakstiet “jā”.
  • Atļaut A2DP pakalpojumu, vēlreiz ierakstiet “jā”.
  • Kad tas ir izdarīts, mēs varam uzticēties savai ierīcei, tāpēc mums tas nav jāiziet katru reizi, kad vēlamies izveidot savienojumu

uzticība XX: XX: XX: XX: XX: XX (jūsu Bluetooth Mac adrese no mūsu avota ierīces)

Ja vēlaties, lai jūsu RPi arī turpmāk būtu atklājams, tā ir jūsu izvēle, bet es gribētu to atkal izslēgt, lai cilvēki nevarētu mēģināt izveidot savienojumu ar jūsu kastīti

atklājams

Tad mēs varam iziet no mūsu Bluetooth saskarnes

Izeja

Un visbeidzot mūsu audio maršrutēšana: mūsu avota ierīce pārsūta uz mūsu RPi

bluealsa-aplay 00: 00: 00: 00: 00: 00

Tagad mūsu ierīce ir savienota ar mūsu Raspberry ar Bluetooth, un jums vajadzētu būt iespējai to pārbaudīt, atskaņojot jebkuru multividi, piemēram, Spotify utt.

7. solis: pilnīgas aizmugures sistēmas uzrakstīšana

Tātad, tagad iestatīšana ir pabeigta, mēs beidzot varam sākt rakstīt savu aizmugures programmu!

Es izmantoju Visual Studio kodu visai savai aizmugurei, jums vienkārši jāpārliecinās, vai jūsu Visual Studio projekts ir savienots ar jūsu Raspberry Pi, tas nozīmē, ka jūsu LAN kabeli ir jāpievieno jūsu RPi un jāizveido SSH savienojums. (informāciju par attālā savienojuma izveidi var atrast šeit:

Es izmantoju savas nodarbības, un tās visas ir iekļautas arī manā GitHub.

Savā aizmugures failā es izmantoju dažādas klases, tāpēc visu var izmantot atsevišķi un lai mans galvenais kods nebūtu haoss ar visiem atšķirīgajiem pavedieniem. Es izmantoju pavedienus, lai vienlaikus palaistu visas dažādās klases. Apakšā jūs atradāt visus maršrutus, lai mēs varētu viegli iegūt datus savā priekšgalā.

8. darbība: priekšējās daļas rakstīšana (HTML, CSS un JavaScript)

Tagad, kad aizmugure ir pabeigta, mēs varam sākt rakstīt pilnu priekšgalu.

HTML un CSS man bija diezgan grūti, es darīju visu iespējamo, lai tas vispirms būtu mobilais, jo es varu izveidot savienojumu ar to, lai mainītu dziesmas, izmantojot Spotify. Tātad to būtu vieglāk kontrolēt no mobilā informācijas paneļa

Jūs varat noformēt savu informācijas paneli, kā vien vēlaties, es vienkārši atstāšu savu kodu un dizainu šeit, jūs varat darīt visu, kas jums patīk!

Un Javascript man nebija vieglāks, strādāja ar dažiem GET no maniem aizmugures maršrutiem, daudzām notikumu klausītājām un dažām ligzdu struktūrām, lai iegūtu datus no maniem sensoriem.

9. solis: izveidojiet manu lietu un salieciet to visu kopā

Veidot manu lietu un salikt to visu kopā
Veidot manu lietu un salikt to visu kopā
Veidot manu lietu un salikt to visu kopā
Veidot manu lietu un salikt to visu kopā
Veidot manu lietu un salikt to visu kopā
Veidot manu lietu un salikt to visu kopā
Veidot manu lietu un salikt to visu kopā
Veidot manu lietu un salikt to visu kopā

Vispirms sāku skicēt, kā es vēlos izskatīties, kaut kas svarīgs bija tas, ka tam jābūt pietiekami lielam, lai viss varētu ietilpt, jo mums bija liela ķēde, ko ielikt korpusā, bet bija jāpaliek kompaktam, lai tas nenotiktu” t neaizņem daudz vietas

Es izgatavoju korpusu no koka, es domāju, ka ar to ir visvieglāk strādāt, ja jums nav tik daudz pieredzes ar korpusu veidošanu, un jums ir arī daudzas lietas, ko ar to var darīt.

Es sāku no vecās dēļa, kuru es uzliku, un tikai sāku zāģēt koku. Kad man bija pamata lieta, man vienkārši vajadzēja tajā urbt caurumus (daudz lietas priekšpusē, kā jūs varat redzēt attēlos un ievietot tajā dažas naglas, tas ir patiešām pamata gadījums, bet tas izskatās diezgan forši un lieliski iederas. Es arī nolēmu nokrāsot baltu, lai tas izskatās labi.

Un, kad lieta bija pabeigta, bija pienācis laiks to visu salikt kopā, kā redzams pēdējā attēlā! Kastes iekšienē ir tāds kā juceklis, bet viss darbojas, un man nebija tik daudz vietas, tāpēc iesaku varbūt izveidot lielāku lietu, ja veidojat manu projektu.

Ieteicams: