Мазмуну:

Kids MP3 Music Box: 6 кадам (Сүрөттөр менен)
Kids MP3 Music Box: 6 кадам (Сүрөттөр менен)

Video: Kids MP3 Music Box: 6 кадам (Сүрөттөр менен)

Video: Kids MP3 Music Box: 6 кадам (Сүрөттөр менен)
Video: Черлидинг. Эстрадный танец. Танцы дети 6-8 лет. Stockholm Star Academy. 2024, Июль
Anonim
Балдар MP3 Music Box
Балдар MP3 Music Box
Балдар MP3 Music Box
Балдар MP3 Music Box

Ардуинонун айланасында жаңы DIY долбоорлорун издеп жатып, балдар үчүн RFID негизделген MP3 ойноткучтар боюнча жакшы идеяларды таптым. Ал эми рынокто бир чоң профессионалдуу оюнчук кутусу бар - бул балдар башкарышат. Алар өздөрүнүн акылдуу идеясынан чоң бизнес жасашты. Текшерип көрүңүз - сиз алардын баракчасын таба аласыз!

Менин эки балам аудиокитептерди жана музыканы уккан сайын, барган сайын жакшы эски компакт -дисктерди колдонууда, мен аны эң сонун инсанга айлантуу үчүн жакшы функциялары бар ушундай MP3 ойноткуч кутучаны курууну чечтим. алар үчүн оюнчук. Мен жакында эле биринчи 3D принтеримди сатып алгандан кийин, бул долбоор 3D басып чыгарууга кирүү үчүн жакшы аянтча болуп көрүндү.

Ошентип, мен түшүнүк фазасына кирдим - кайсы өзгөчөлүктөрдү ишке ашыргым келет - RFID, MP3 ойноткуч, WLAN (кийинчерээк жокко чыгарылган), IMU көзөмөлү, ЖК дисплейи, Ойготкуч, зымсыз кубаттоо… Мага кандайдыр бир компоненттер керек болот. Кайсы компоненттерди кайра колдоно алам? Менде дагы деле IMU, LCD модулу, кээ бир Arduino нанолору бар болчу.

Кээ бир тажрыйбага ээ болгондон кийин, жыйынды 1-2 жумушчу сессиядан кийин жасоого болот.

Базадан, жабуучу табактан жана заряддоо станциясынан турган кутуну басып чыгаруу бир аз убакытты талап кылат (принтерге жана кескичтин жөндөөлөрүнө жараша 12+ саат), бирок мен муну ширетүү учурунда жасадым.

1 -кадам: Компоненттер

Компоненттер
Компоненттер

Бул учурда компоненттер чындыгында негизги болуп саналат. Бул жерде мен бул долбоор үчүн колдонгон компоненттердин тизмеси.

1. ЖК дисплей 1602 2x16 чоң каармандар 5 V 122*44 MM көк

2. RFID окурман- NFC RFID-RC522 RF IC

3. MP3 ойноткуч - DFPlayer Mini MP3 ойнотуучу модулу MP3 үнүн декоддоо үчүн Arduino TF Card U- Disk IO/Serial Port/AD

4. Катуу сүйлөткүч- 4 ом 3 Ватт 53мм чарчы спикер 36мм тышкы магниттик көбүк кыры күмүш капкак

5. Micro SD карта 8GB

6. MPU6050 3 Axis аналогдук гироскоп сенсору

7. MINI USB NANO V3.0 CH340 5 V 16 Mt Atmega328 Micro Controller Board (дээрлик бардык казыктар колдонулат!)

8. DS3231 Precision RTC - Ойготкуч модулу

9. Powerbank JETech 3400 мАч

10. Universal DIY PCBA Qi Wireless Charger Receiver Module - Blue + Black

11. Прототип PCB Board Protoboard Консерваланган универсалдуу нан тактасы Solderless FR4 PCB Эки тараптуу 5x7 см 50x70mm FR4

12. 1x 2N 3904: NPN TO-92 40V 0, 2A 0, 5W транзистору

13. 1x1kOhm резистору базалык токту чектөө үчүн, 3x220Ohms 0, 5 w (параллель! Ватт менен камсыз кылуу үчүн - жогорку спецификалык резисторду колдонсо болот, менде болгон) эмитент менен коллектордун ортосундагы учурдагы жүктөм үчүн. 2x1kOhms ызы -чууну өлтүрүү үчүн Arduino менен DFplayer ортосундагы TX жана RX линиялары үчүн - бул жерде менде маселе болгон жок.

14. Кээ бир стандарттуу DIY электроника буюмдары - ширетүүчү, ширетүүчү, кайчы, туташтыргычтар, кабелдер …

14. Энергия көп жана чогултуу үчүн бир нече саат:)

Жогорудагы компоненттердин жалпы баасы ~ 30-35 € - көбүнчө aliexpress.com жана dx.comдон. Жеткирүү бир аз убакытты талап кылат, бирок баасы сонун.

2 -кадам: Электрондук байланыш

Электрондук байланыш
Электрондук байланыш
Электрондук байланыш
Электрондук байланыш
Электрондук байланыш
Электрондук байланыш

Мен макет тарткан жокмун, же Fritzing сыяктуу окшош куралдарды колдонгон эмесмин. Балким, кийинки убакта. Төмөндөгү сүрөттөмө байланышты көрсөтөт. Айтылбаган бардык казыктар туташкан эмес.

Лайкоо учурунда мен линиялардын байланышын ченеп жүрдүм, орнотулган компоненттер менен акыркы текшерүү дагы жүргүзүлдү. Баары чогулган соң, бир жаман байланышты издөөнүн кереги жок. Көбү GND жана чыңалууга +кам көрүшөт.

Каалаган компоненттин пин макети Google аркылуу жеткиликтүү.

LC Display

LED ---- GND

LED+--- 220Ohm аркылуу 5V powerbankке чейин

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 потенциометр Rx (контрастты жөндөө үчүн)

VDD --- Powerbank +5V

VSS --- GND

MP3 ойнотуучу DFPlayer

VCC ---+5V Powerbank

RX --- программалык Arduino D5 сериялык программасы (ызы-чуу болгон учурда 1kOhm резистору аркылуу)

TX --- программалык сериялык Arduino D9 (ызы-чуу болгон учурда 1kOhm резистору аркылуу)

SPK1 --- Динамик +

GND --- Powerbank GND

SPK2 --- Спикер-

Бош --- Arduino A7

GND --- GND

NFC522 RFID окурман

3.3V --- Arduino 3.3V

GND --- GND

MISO --- Arduino D12

MOSI --- Arduino D11

SCK --- Arduino D13

SDA --- Arduino D10

IMU 6050 гиро сенсор

VCC --- Arduino 3.3V

GND --- GND Powerbank

SCL --- Arduino A5/SCL

SDA --- Arduino A4/SDA

ADO ---+3.3V (Жогорку сигнал) I2C дареги 0x69 үчүн

DS3231 Реалдуу убакыт сааты

3, 3V --- Arduino 3.3V

SDA --- Arduino A4/SDA

SCL --- Arduino A5/SCL

GND --- GND

Учурдагы жүк Trigger

2N3904 эмиттер - GND

2N3904 базасы - 1kOhm аркылуу Arduino D6га чейин

2N3904 коллектору - 3x220Ohms аркылуу (параллель! - жогорку спецификалык резисторду колдонсо болот, менде бар болчу) +5В

Powerbank

Powerbankтин V+ жана GND линиялары аял USB коннектору аркылуу борттогу электр туташтыргычына туташып, Arduino'дун Vin/GND тармагына туташат). Powerbank капкак пластинкасындагы микросвичка аркылуу күйгүзүлөт. Мен жүктөөнүн абалын окшоштуруу жана күйгүзүү үчүн микросвичти жүктөө каршылыгы аркылуу GNDге V+ менен коштум. Андан кийин учурдагы жүк аны өчүрүүдөн сактайт.

+5V - борттогу кубат туташтыргычы +5V

GND -GND бортунда күч туташтыргычы

Powerbank +5V - жүк каршылыгы - microswitch Pin A

GND - микросвичка пин В.

3 -кадам: Электрондук Ассамблея

Электроника Ассамблеясы
Электроника Ассамблеясы
Электроника Ассамблеясы
Электроника Ассамблеясы
Электроника Ассамблеясы
Электроника Ассамблеясы

Тактанын компоненттери - MP3 ойноткуч, RTC, IMU, Arduino розеткаларга орнотулган. Тандоо жана өйдө/ылдый баскычтары, RFID, ЖК жана кубат өзүн -өзү ширетилген "тилкелүү кабелдер" аркылуу туташып, кийинчерээк кутуга батат.

Пауэрбанкты күйгүзүү үчүн микросвитчер жабылган такта - сүрөттөрдө көрсөтүлгөн эмес.

Мен орнотууну текшерүү үчүн туруктуу электр булагын колдондум.

Монтаждоодо мен ар бир компонентти жекече сынап көрдүм -> компоненттер үчүн мисал Arduino эскиздери бул жерде абдан пайдалуу.

Powerbankте автоматтык түрдө өчүрүү аз ток менен иштегендиктен, мен 70 Ом резистор аркылуу 100 мс үчүн ар 15 секунд сайын транзистор башкаруучу жүктүн чокусун коштум (чындыгында 3 параллель 220 Ом жетиштүү кубаттуулукту камсыз кылуу үчүн, бул кыска чоку, бирок үч резистор токту бөлүшөт, демек спецификацияда иштетилбейт).

Кийинчерээк Mini DFPlayer> 70mA үзгүлтүксүз тартып жатканы белгилүү болду. Мен Powerbankтин автоматтык түрдө өчүрүлүшүн кутучаны өчүрүү үчүн колдонгонум үчүн (мындан ары учурдагы жүктөмдү иштетпестен), мен азыр кайра ойлонушум керек.

Дагы эле Arduino менен DFplayerдин уйку режиминде кыйынчылыктар болуп жатат, токту ылдый түшүрүү үчүн - ток өчүрүү үчүн чектен төмөн түшпөйт. Пикир кош келиңиз.

Эскертүү: Экинчи кутуча үчүн мен башка кубат банкын кайра иреттешим керек болчу, анткени мен биринчисинин электроникасын өлтүрдүм. Жана караңыз - бул powerbank мен жүктүн агымын токтоткондон кийин 10 секунддан кийин өчөт -> өчүрүү азыр иштеп жатат.

Зымсыз кубаттоочу ресивер usb кубаттоочу банкка туташтырылган. Заряддагыч база заряддоочу кутуга салынып, менин 3D принтерим менен басылган.

4 -кадам: Программалык камсыздоо

Программалык камсыздоо
Программалык камсыздоо

Githubда жеткиликтүү болгон программа

Программалоо кызыктуу, мен мисалдардын тез ядросунан баштоону жана андан ары өнүгүүнү жакшы көрөм. Мен чындап эле спецификаларды, өзгөчөлүктөрдү пландаштырууну жана структуралаштырылган программалардын пландарын жасабагандыктан, мен кээ бир иштеп жаткан, бирок чынында эле жарашыктуу эмес кодго ээ болом. Бул ар дайым жасалуучу нерсе -> объекттерге көбүрөөк кирүү,.h жана.cpp бөлүү…

Бирок мен бул нерсенин тез иштешин каалайм, ошондуктан көп учурларда мен эң эффективдүү жолдо эмесмин.

Бирок эң сонун нерсе - HW иштеп баштаганда эле ар кандай нерселерди жасай баштаса болот.

Мен arduino IDE колдондум, бир нече китепкана талап кылынат - жөн гана arduino IDE китепкана менеджери менен жасалат.

Ошентип, программанын азыркы версиясы колдойт:

Кош келиңиз

Көлөмү (ооба)

Мурунку/кийинки ырга өтүү үчүн кутунун солго/оңго эңкейиши жана эгер RFID кийинки папкага артка жана артка өчүрүлсө.

Тындыруу/Ойнотуу (ооба)

Баштоо, жаңы RFIDди үйрөнүү - папка кийинки RFID кийинки SD карта папкасынын негизинде дайындалат. Маалыматтар Arduino EEPROMда сакталат

Ойнотуу папкасы RFIDге дайындалды-үйрөнүү функциясы аркылуу RFID-папкага дайындоо

Параметрлерди жүктөө жана сактоо, орнотууларды сактоо үчүн. Заводдук абалга келтирүү:)

Саатты жана датаны коюу.

Ойготкучту күйгүзүү/өчүрүү, ойготкучтун саатын жана мүнөтүн коюу, ойготкуч үчүн белгиленген ырды ойнотуу.

RFIDди өчүрүү - ансыз mp3 ойнотуу.

Менин тизмемдеги дагы бир нече идеялар - дагы эле ишке ашырылышы керек

Температураны көрсөтүү (RTC муну кыла алат - бул кварцка болгон таасирди компенсациялоо үчүн темпти өлчөйт)

Чайкалганда күлүп башта, Ырды ойготкучка коюу

Үйрөнүү режиминде RFIDге кайсы папка дайындалганын тандаңыз

Дүкөн папкасынын тапшырмасы жана RFID чипинде ойнотулган акыркы ыр - кутучалардын ортосунда кайра колдонулушу (мен дагы бир нерсени куруп жатам - эки бала эсинде….?)

өчүрүүнү иштетүү -бул азырынча USBге туташпай туруп иштебейт -> Powerbank аркылуу учурдагы жүктөм бул жөндөөдө азаят.

SD картадагы папканын түзүлүшү жөнүндө маалымат

Балдарым үчүн mp3 аудиокитептерим жана музыкаларым бар болчу. Ошентип, мен ырларды туура аталышка которуу үчүн кээ бир Linux сценарийлерин колдондум. Папкалар эки орундуу сандар катары аталышы керек (б.а. "00", "01", "02" …). Ал жердеги ырлар үч орундуу сандар менен аталышы керек (б.а. "001.mp3", "002.mp3",…).

Менин кошулуучу mp3ым ("Саламатсызбы, мен сиздин оюнчук кутуңуз…") "99" папкасында "001.mp3" катары сакталат.

Скрипт акылсыз далил эмес жана түп нускаларда эмес, "көчүрүү" каталогунда гана колдонулушу керек.

#!/bin/bashlet i = 1 *.mp3 файлындагы файл үчүн if (($ i <10)); анда mv "$ file" "00 $ {i}.mp3" elif (($ i <100)); анда mv "$ file" "0 $ {i}.mp3" else mv "$ file" "$ {i}.mp3" fi i ++ аткарылсын

5 -кадам: Кутуну басып чыгаруу жана чогултуу

Кутуну басып чыгаруу жана чогултуу
Кутуну басып чыгаруу жана чогултуу
Кутуну басып чыгаруу жана чогултуу
Кутуну басып чыгаруу жана чогултуу
Кутуну басып чыгаруу жана чогултуу
Кутуну басып чыгаруу жана чогултуу

Ошентип, азыр HW жана SW иштеп жатат - мага куту керек!

Баштоо үчүн эң сонун жер - Tinkercad - мен аны жакшы көрөм! Колдонууга жөнөкөй жана каалаган нерсеңизди аласыз. Чоң коомдоштукту түзүү жана акылдуу "Tinkerers" көптөгөн сонун мисалдар.

Буга түбөлүккө оңой кирүүгө болот - бул жерде бир өзгөртүү, жаңы тоо, тешик,… жаңы дизайн,….

Бирок аягында мен учурдагы кутуча дизайнына толугу менен кубанычтамын. Мен ошондой эле заряддагыч үчүн mp3 кутучаны… заряддоого коюу үчүн базалык кутучаны курдум. бул жерден караңыз

Басып чыгаруу убакытты талап кылат (~ 8-12 саат жана андан көп) жана мен ар кандай линиялардын калыңдыгы менен сынап көрдүм, аягында принтерлердин стандарттарында калдым. Учурдагы кутулар үчүн мен прототипти колдонуп жатам (адегенде эски дизайнга негизделген), бирок акыркы дизайндын тизмесинде башка нерсени түзгөн жаңы функциялары, монтаждары, бүтүндүктөрү бар.

Дагы бир маанилүү нерсе: кутуга жакшы кийимдерди алыңыз - бирок бул менин аялымдыкы болот - кутунун жаңы кийимдерин чыдамсыздык менен күтөм - жакында …

Басып чыгаруу муздагандан кийин жана электрониканын базалык сыноосу кутудан тышкары жүргүзүлгөндө, акыркы жыйынды жасоо керек болчу.

Мен тетиктерди оңдоо үчүн ысык клей колдондум - капкак пластинкасына бекитилген Микро коммутатор, ЖК жана RFID кабылдагыч. Мен компоненттерди алдын ала оңдоо үчүн эки тараптуу лента колдондум, андан кийин ысык клейди колдонуп, акыркы оңдоо пункттарын киргиздим.

Ошол эле базалык куту менен. Биринчиден, заряд алуучу табакчаны кутунун түбүнө оңдоңуз - бул жерде эки тараптуу лента жакшы иштеди - базаны ортосуна чейин тууралоо керек, заряддагыч базанын үстүнө кутуну койгондо заряддын катушкасына жакын болушу үчүн..

Андан кийин, powerbank, дагы эки тараптуу алдын ала оңдоп, андан кийин "стратегиялык" пункттарга ысык клей коюңуз. Катуу сүйлөткүч даярдалган жерлерге жагымдуу клейлер менен бекитилиши мүмкүн - жакшы жана тыгыз.

Акырында такта - мен 3D басып чыгаруу дизайнына мини -монтаждык подкладкаларды коштум, андыктан такта ошол жерге тыкан жабдылды - дагы - кээ бир стратегиялык ысык клей. Чыркыроо нерселерди бөлбөшү керек - ошондуктан мен буга бир аз көңүл бурдум.

Акыры кээ бир жеткиликтүү мини бурамаларды колдонуңуз (менин басып чыгаруу дизайнымда 3М бурамалар бар, бирок алар чыныгы бурамалар үчүн анча деле жакшы эмес)

6 -кадам: Даяр куту - бирок кийимсиз

Image
Image
Даяр куту - бирок кийимсиз
Даяр куту - бирок кийимсиз
Даяр куту - бирок кийимсиз
Даяр куту - бирок кийимсиз

Ал эми бул жерде менин балдарым үчүн даяр эки куту. Алар буга чейин бир нече бета-тестирлөөнү жүргүзүшкөн жана кээ бир программалык каталарды табышкан;-).

Мен ошондой эле RFID M3 чаптамаларынын 20 пакетин сатып алдым.

Эми мен мүмкүн болгон кичинекей фигураларды чогултуп, аларды MP3 кутусуна токендерди ойнотушум керек. Аталар жана балдар үчүн кызыктуу:)

Сунушталууда: