Mündəricat:

Uşaqlar MP3 musiqi qutusu: 6 addım (şəkillərlə birlikdə)
Uşaqlar MP3 musiqi qutusu: 6 addım (şəkillərlə birlikdə)

Video: Uşaqlar MP3 musiqi qutusu: 6 addım (şəkillərlə birlikdə)

Video: Uşaqlar MP3 musiqi qutusu: 6 addım (şəkillərlə birlikdə)
Video: ZƏMANƏ UŞAĞI 2024, Noyabr
Anonim
Uşaq MP3 musiqi qutusu
Uşaq MP3 musiqi qutusu
Uşaqlar üçün MP3 musiqi qutusu
Uşaqlar üçün MP3 musiqi qutusu

Arduino ətrafında yeni DIY layihələri axtararkən Uşaqlar üçün RFID əsaslı MP3 pleyerlər haqqında gözəl fikirlər tapdım. Bazarda bir böyük peşəkar oyuncaq qutusu var - bu adamlar idarə edir. Ağıllı fikirləri ilə böyük bir iş qurdular. Baxın - səhifələrini tapacaqsınız!

İki uşağım getdikcə daha çox audiokitab və musiqi dinləməyə başladıqca və hələ də bütün işləmə çətinlikləri ilə yaxşı köhnə kompakt disklərdən istifadə etdikcə, əla bir fərd etmək üçün bəzi gözəl xüsusiyyətlərə malik belə bir MP3 pleyer qutusu qurmağa qərar verdim. onlar üçün oyuncaq. Bu yaxınlarda ilk 3D printerimi aldıqdan sonra bu layihə 3D çapa girmək üçün yaxşı bir oyun sahəsi kimi görünürdü.

Hansı xüsusiyyətləri tətbiq etmək istəyəcəyimi - RFID, MP3 Çalar, WLAN (daha sonra ləğv ediləcək), IMU nəzarəti, LCD ekran, Zəngli saat, simsiz şarj … anlayış mərhələsinə başladım. Hansı komponentlərə ehtiyacım olacağını araşdırmaq üçün lazım idi. Hansı komponentləri yenidən istifadə edə bilərəm? Hələ də bir IMU, LCD modulu, bir neçə Arduino nanosu var idi.

Lehimləmə və ölçmə sahəsində müəyyən təcrübəyə malik olaraq, iş seanslarından sonra 1-2 ərzində edilə bilər.

Baza, örtük lövhəsi və şarj stansiyasından ibarət olan Qutunun çapı bir az vaxt aparır (printerdən və dilimləyicinin parametrlərindən asılı olaraq 12+ saat), amma bunu lehimləmə zamanı etdim.

Addım 1: Komponentlər

Komponentlər
Komponentlər

Bu arada komponentlər həqiqətən əsasdır. İşdə bu layihə üçün istifadə etdiyim komponentlərin siyahısı.

1. LCD Ekran 1602 2x16 Böyük Xarakter 5 V 122*44 MM mavi

2. RFID oxucu- NFC RFID-RC522 RF IC

3. MP3 Pleyer - DFPlayer Mini MP3 Çalar Modulu TF Kart U -Disk IO/Serial Port/AD -ni dəstəkləyən Arduino üçün MP3 Səs Kod Çözmə Kartı

4. Dinamik- 4 ohm 3 Vat 53MM Kare Dinamik 36MM Xarici Maqnit Köpük Kenar Gümüşü Qapaq

5. Micro SD Kart 8GB

6. MPU6050 3 Eksenli Analog Giroskop Sensoru

7. MINI USB NANO V3.0 CH340 5 V 16 Mt Atmega328 Micro Controller Board (demək olar ki, bütün sancaqlar istifadə olunur!)

8. DS3231 Precision RTC - Zəngli saat modulu

9. Powerbank JETech 3400 mAh

10. Universal DIY PCBA Qi Simsiz Şarj Cihazı Alıcı Modulu - Mavi + Qara

11. Prototip PCB Board Protoboard Qalınlaşdırılmış Universal Breadboard Prototipləşdirmə Lehimsiz FR4 PCB İki tərəfli 5x7 sm 50x70mm FR4

12. 1x 2N 3904: Transistor NPN TO-92 40V 0, 2A 0, 5W

13. 1x1kOhm müqavimət baza cərəyanını məhdudlaşdırmaq üçün, 3x220Ohms 0, 5 w (vatla təmin etmək üçün - paralel! Daha yüksək spesifik rezistordan istifadə edə bilərəm, məndə idi) emitent və kollektor arasındakı cari yük üçün. Arduino və DFplayer arasındakı səs -küyü öldürmək üçün TX və RX xətti üçün 2x1kOhms - burada problemim yox idi.

14. Bəzi standart DIY elektronika məhsulları - lehimləmə dəmir, lehim, qayçı, bağlayıcılar, kabellər …

14. Çox enerji və yığmaq üçün bir neçə saat:)

Yuxarıdakı komponentlər üçün ümumi qiymət ~ 30-35 € - əsasən aliexpress.com və dx.com saytlarından. Çatdırılma bir az vaxt aparır, amma qiymət əladır.

Addım 2: Elektron Bağlantısı

Elektron Bağlantı
Elektron Bağlantı
Elektron Bağlantı
Elektron Bağlantı
Elektron Bağlantı
Elektron Bağlantı

Nə tərtib etməmişəm, nə də Fritzing və ya bənzəri kimi lazımlı bir alətdən istifadə etməmişəm. Yəqin ki, sonrakı bir zamanda. Aşağıdakı təsvir əlaqəni göstərir. Qeyd olunmayan bütün sancaqlar bağlanmır.

Lehimləmə zamanı xətlərin əlaqəsini ölçməyə davam etdim, quraşdırılmış komponentlərlə son yoxlama da edildi. Hamısı yığıldıqdan sonra pis bir əlaqə axtarmağınızdan daha əsəbi bir şey yoxdur. Ən çox GND və gərginlik +ilə maraqlanır.

Hər hansı bir komponentin pin düzeni google vasitəsilə mövcuddur.

LC Ekranı

LED ---- GND

LED+--- 220Ohm-dən 5V-a qədər

DB7-Arduino D2

DB6-Arduino D3

DB5-Arduino D7

DB4-Arduino D8

E --- Arduino A1/Pin 15

R/W --- GND

RS --- Arduino A0/Pin 14

V0 --- 10Kohm potensiometr Rx (kontrastı tənzimləmək üçün)

VDD --- Powerbank +5V

VSS --- GND

DFPlayer MP3 pleyer

VCC ---+5V Powerbank

RX --- proqram seriyası Arduino D5 (səs problemi halında 1kOhm rezistor vasitəsilə)

TX --- proqram seriyası Arduino D9 (səs problemi halında 1kOhm rezistor vasitəsilə)

SPK1-Dinamik +

GND --- Powerbank GND

SPK2-Dinamik-

Məşğul-Arduino A7

GND --- GND

NFC522 RFID oxuyucusu

3.3V-Arduino 3.3V

GND --- GND

MISO-Arduino D12

MOSI-Arduino D11

SCK-Arduino D13

SDA-Arduino D10

IMU 6050 girro sensoru

VCC-Arduino 3.3V

GND --- GND Powerbank

SCL-Arduino A5/SCL

SDA-Arduino A4/SDA

I2C 0x69 ünvanı üçün ADO ---+3.3V (Yüksək siqnal)

DS3231 Real vaxt saatı

3, 3V-Arduino 3.3V

SDA-Arduino A4/SDA

SCL-Arduino A5/SCL

GND --- GND

Cari yük tetikleyicisi

2N3904 yayıcı - GND

2N3904 bazası - 1kOhm vasitəsilə Arduino D6 -ya

2N3904 kollektor - 3x220Ohms vasitəsi ilə (paralel! - daha yüksək spesifik rezistordan istifadə oluna bilər, məndə belə idi) +5V

Powerbank

Powerbankın V+ və GND xətləri bir qadın USB konnektoru vasitəsi ilə təyyarədəki elektrik konnektoruna və Arduino -nun Vin/GND -yə qoşulur). Güc bankı qapaq lövhəsindəki mikro açar vasitəsilə işə salınır. Bir yük vəziyyətini simulyasiya etmək və işə salmaq üçün bir yük müqaviməti vasitəsi ilə GND -ə V+ -ə bir lehim vurdum. Bundan sonra cari yük onu söndürməkdən qoruyur.

+5V - Gəmidəki güc konnektoru +5V

GND -GND lövhəsindəki güc konnektoru

+5V güc bankı - yük müqaviməti - A açarı

GND - B açarı

Addım 3: Elektronika Quraşdırması

Elektronika Məclisi
Elektronika Məclisi
Elektronika Məclisi
Elektronika Məclisi
Elektronika Məclisi
Elektronika Məclisi

Lövhə komponentləri - MP3 pleyer, RTC, IMU, Arduino prizlərə quraşdırılmışdır. Seçmə və yuxarı/aşağı düymələri, RFID, LCD və güc sonradan qutuya sığmaq üçün kifayət qədər uzunluğunda özünü lehimli 'bant kabelləri' ilə bağlanır.

Powerbank -ı işə salmaq üçün mikrosxem sabit örtükdür - şəkillərdə göstərilməyib.

Quraşdırmanı yoxlamaq üçün sabit bir enerji təchizatı istifadə etdim.

Montaj edərkən hər bir komponenti ayrı -ayrılıqda sınadım -> komponentlər üçün nümunə Arduino eskizləri burada çox faydalıdır.

Güc bankı aşağı cərəyanla avtomatik olaraq söndürüldüyünə görə 70 Ohm müqavimət vasitəsi ilə 100 ms ərzində hər 15 saniyədə bir tranzistorla idarə olunan yük zirvəsini daxil etdim (əslində kifayət qədər vat gücü təmin etmək üçün 3 paralel 220 Ohm, ancaq qısa bir zirvədir. Üç rezistor cərəyanı paylaşacaq və buna görə də texniki xüsusiyyətlərin üzərində işləməyəcək).

Sonradan məlum oldu ki, Mini DFPlayer davamlı olaraq> 70mA çəkir. Qutunun söndürülməsi üçün də Powerbank avtomatik söndürməsindən istifadə etdiyim üçün (artıq yükü tetiklemeyerek) indi bunu yenidən düşünməliyəm.

Hələ də cərəyanı aşağı salmaq üçün Arduino və DFplayer -in yuxu rejimində problem var - söndürmək üçün cərəyan eşikdən aşağı düşmür. Əlaqə xoş gəldiniz.

Qeyd: ikinci qutu üçün başqa bir güc bankını yenidən sifariş etməli oldum, çünki ilkin elektronikanı öldürdüm. Və buna baxın - yük cərəyanını işə salmağı dayandırdıqdan 10 saniyə sonra bu güc bankı sönür -> söndürmə indi işləyir.

Simsiz şarj qəbuledicisi usb şarj bankına qoşulmuşdur. Şarj cihazının bazası 3D printerimlə çap edilmiş bir şarj cihazı qutusuna yığılmışdır.

Addım 4: Proqram təminatı

Proqram təminatı
Proqram təminatı

Github -da mövcud olan proqramlar

Proqramlaşdırma əyləncəlidir, tez bir nümunə nüvəsi ilə başlamağı və daha da inkişaf etməyi sevirəm. Nəticədə spesifikasiyalar, xüsusiyyətlər planlaşdırma və quruluşlu proqram planları etmədiyim üçün bir az işləyən, amma əslində zərif olmayan bir kodla başa çatıram. Bu həmişə bir işdir -> obyektlərə daha çox daxil olun,.h və.cpp -də ayırın …

Ancaq bir şeyi tez bir zamanda işlətmək istəyirəm ki, bir çox hallarda oraya ən səmərəli yolda getməyim.

Ancaq ən yaxşısı odur ki, HW işləyən kimi hər şeyi etməyə başlaya bilərsiniz.

Arduino IDE -dən istifadə etdim, bir neçə kitabxana lazımdır - sadəcə arduino IDE kitabxana meneceri ilə edilir.

Beləliklə, proqramın hazırkı versiyası dəstəkləyir:

Xoş mesaj

Həcmi (duh)

Əvvəlki/sonrakı mahnıya keçmək üçün RFID -in sola/sağa əyilməsi və RFID -in irəli qovluğa keçməsi.

Dayandır/Oynat (duh)

Başlayın, yeni RFID öyrənin - qovluq növbəti RFID növbəti SD kart qovluğuna əsasən təyin edilir. Məlumatlar Arduino EEPROM -da saxlanılır

RFID-ə təyin edilmiş qovluğu oynayın-öyrənmə funksiyası vasitəsilə RFID-dən qovluğa təyin edin

Saxlanan parametrləri aktiv etmək üçün parametrləri yükləyin və qeyd edin. Zavod sıfırlaması:)

Saat və tarix ayarı.

Zəngli saatı və dəqiqəni təyin etmək, həyəcan siqnalı üçün sabit bir mahnı çalmaq/söndürmək.

RFID -i söndürün - onsuz mp3 çalın.

Siyahımda daha bir neçə fikir var - hələ də tətbiq olunmalıdır

İstiliyi göstər (RTC bunu edə bilər - kvarsın təsirini kompensasiya etmək üçün tempi ölçür)

Sarsıldıqda gülməyə başla, Mahnı həyəcan üçün təyin edin

Öyrənmə rejimində RFID -ə hansı qovluğun təyin olunduğunu seçin

Mağaza qovluğu təyinatı və RFID çipində səsləndirilən son mahnı - qutular arasında yenidən istifadə oluna bilər (başqa bir bina tikirəm - iki uşaq xatırlayır …?)

söndürmə funksiyasını aktivləşdirin -bu hal hazırda USB -yə qoşulmadan işləmir -> Powerbank vasitəsilə cari yük bu parametrdə azaldılır.

SD kartdakı qovluq quruluşu haqqında məlumat

Uşaqlarım üçün bir neçə audio kitab və musiqi saxladım. Mahnıları düzgün adlandırmaq üçün bəzi linux skriptlərindən istifadə etdim. Qovluqlar ardıcıl olaraq iki rəqəmli rəqəmlərlə adlandırılmalıdır (yəni "00", "01", "02" …). Oradakı mahnıların ardıcıl olaraq üç rəqəmli ədədlərlə adlandırılması lazımdır (yəni "001.mp3", "002.mp3",…).

Açılışda olan mp3 ("Salam, mən sənin oyuncaq qutusun …") "991" qovluğunda "001.mp3" olaraq saxlanılır.

Skript axmaq sübuta malik deyil və orijinalda deyil, yalnız "surət" qovluğunda istifadə olunmalıdır.

#!/bin/bashlet i = 1 *.mp3 faylında if if (($ i <10)); sonra mv "$ file" "00 $ {i}.mp3" elif (($ i <100)); sonra mv "$ file" "0 $ {i}.mp3" başqa mv "$ file" "$ {i}.mp3" fi i ++ tamam olsun

Addım 5: Qutunun çapı və yığılması

Qutunun çapı və yığılması
Qutunun çapı və yığılması
Qutunun çapı və yığılması
Qutunun çapı və yığılması
Qutunun çapı və yığılması
Qutunun çapı və yığılması

İndi HW və SW işləyir - bir qutuya ehtiyacım var!

Başlamaq üçün əla bir yer Tinkercaddır - sevirəm! İstifadəsi asandır və istədiyinizi əldə edirsiniz. Nəhəng bir cəmiyyətə və ağıllı "Tinkerers" dən bir çox möhtəşəm nümunəyə əsaslanaraq.

İnsan asanlıqla buna əbədi girə bilər - burada bir dəyişiklik, yeni bir montaj, çuxur,… yeni dizayn,….

Ancaq sonda hazırkı qutu dizaynından tamamilə razıyam. Şarj cihazı üçün mp3 qutusunu doldurmaq üçün bir baza qutusu da qurdum. bura bax

Çap vaxtını alır (~ 8-12 saat və daha çox) və fərqli xətt qalınlığı ilə sınadım, sonunda printer standartlarında qaldım. Mövcud qutular üçün prototip (ilkin olaraq köhnə dizayn əsasında çap olunmuş) qutularından istifadə edirəm, lakin son dizaynda işlər siyahımda başqa bir maddə yaradan bəzi yeni xüsusiyyətlər, montajlar, topuqlar var.

Və etməli olduğumuz çox vacib bir şey: qutu üçün gözəl paltarlar alın - amma bu, həyat yoldaşımın mülkü olacaq - qutunun yeni paltarlarını səbirsizliklə gözləyirik - tezliklə …

Çaplar soyuduqdan və qutunun xaricində elektronikanın əsas testi edildikdən sonra son montaj edilməli idi.

Parçaları düzəltmək üçün isti yapışqan istifadə etdim - Mikro açar, LCD və RFID qəbuledici qapaq plakasına bərkidildi. Komponentləri əvvəlcədən düzəltmək üçün bir neçə tərəfli lentdən istifadə etdim və sonra son düzəltmə nöqtələrini qoymaq üçün isti yapışqan istifadə etdim.

Baza qutusu ilə eyni. Əvvəlcə şarj alıcısının boşqabını yerə qoyun - iki tərəfli lent burada yaxşı iş gördü - qutunu şarj cihazının üstünə qoyarkən şarj bobininə kifayət qədər yaxın olması üçün bazanın ortasına uyğunlaşdırılmalıdır..

Sonra powerbank, yenidən iki tərəfli olaraq əvvəlcədən düzəldin, sonra 'strateji' nöqtələrə bir az isti yapışqan qoyun. Dinamik, hazırlanmış montaj yerlərində gözəl yapışqan nöqtələri ilə düzəldilə bilər - gözəl və sıx.

Nəhayət, lövhə - 3D çap dizaynına bəzi mini montaj yastıqları daxil etdim, buna görə lövhəyə səliqəli şəkildə quraşdırılmışam - yenə - bəzi strateji isti yapışqan nöqtələri. Çıngırdaklıq şeyləri parçalamamalıdır - buna görə buna bir az diqqət yetirdim.

Və nəhayət, bəzi mövcud mini vintlərdən istifadə edin (mənim çap dizaynımda 3M vint montajları var, amma əsl vintlər üçün əslində əla deyil)

Addım 6: Bitmiş qutu - hələ paltarsız

Image
Image
Bitmiş qutu - hələ paltarsız
Bitmiş qutu - hələ paltarsız
Bitmiş qutu - hələ paltarsız
Bitmiş qutu - hələ paltarsız

Və burada uşaqlar üçün hazır iki qutu var. Onsuz da bəzi beta testləri apardılar və bəzi proqram səhvləri tapdılar;-).

Mən də 20 paket RFID M3 stikeri aldım.

İndi mümkün olan bütün kiçik rəqəmləri toplayıb MP3 qutusu üçün ayələr oynamağa məcbur etməliyəm. Atalar və uşaqlar üçün əyləncə:)

Tövsiyə: