Tartalomjegyzék:

Tobias - Arduino Music Box TVoutout -tal: 5 lépés (képekkel)
Tobias - Arduino Music Box TVoutout -tal: 5 lépés (képekkel)

Videó: Tobias - Arduino Music Box TVoutout -tal: 5 lépés (képekkel)

Videó: Tobias - Arduino Music Box TVoutout -tal: 5 lépés (képekkel)
Videó: Tobias - Arduino Music Box 2024, November
Anonim
Tobias - Arduino Music Box TVout -al
Tobias - Arduino Music Box TVout -al
Tobias - Arduino Music Box TVout -al
Tobias - Arduino Music Box TVout -al
Tobias - Arduino Music Box TVout -al
Tobias - Arduino Music Box TVout -al

Először is hadd mutassam be Tóbiást, a barátnőm óriási mackóját, aki inspirálja ezt a projektet.

Tóbiásnak személyisége van, idővel felépülve, miközben tréfásan azon gondolkodunk, mit csinál, amíg távol van a munkahelyétől.

A projektet egyszerű ajándéknak szánták, egy Arduino -t piezo hangszóróval, amely a kedvenc dalát játssza. Gyorsan kiment az irányításom alól, és zenei doboz lett:

  • 3D nyomtatással
  • USB -csatlakozás nélkül is képes zenét játszani AA elemekkel
  • zongora „billentyűkkel”, amelyek minden hangnál felvillannak
  • képes képeket reprodukálni egy régi CRT televízión RCA csatlakozókon keresztül

Kellékek

  • Arduino Nano
  • Hangszóró (sérült régi rádióból vettem)
  • Váltókapcsoló (3 tűs) - módválasztó
  • Rotációs potenciométer - hangerőszabályzó
  • 2x 220Ω ellenállás
  • 1x 440Ω ellenállás vagy 2x 220Ω ellenállás
  • 1x 1kΩ ellenállás
  • 11 db 3 mm -es led
  • 2x RCA csatlakozó
  • vezetékek
  • 3,5 mm -es fehér akril
  • forró ragasztó vagy szuper ragasztó

Eszközök:

  • forrasztó készlet
  • 3d nyomtató
  • számítógép Arduino IDE -vel a kód feltöltéséhez

1. lépés: Kód - feltöltés

Szükséged lesz:

  • TVout könyvtár - lehetővé teszi az Arduino számára, hogy képeket és hangokat tegyen RCA vagy SCART csatlakozású televízióra
  • arduino -volume1 - Ez a könyvtár javítja a hangminőséget, az 1. módban használatos (egyedül az Arduino TV -csatlakozás nélkül). A 2. módban azonban nem lehet egyidejűleg használni, mivel a TVout könyvtár ugyanazt az időzítőt használja, mint a hangerő1

Ha meg szeretné változtatni a zenét vagy a képet, tekintse meg a következő lépéseket, ha nem csak a kódot tölti fel Arduino készülékére, hanem először győződjön meg arról, hogy mindkét könyvtár telepítve van.

2. lépés: Kód (módosítsa a zenét)

Kód (módosítsa a zenét)
Kód (módosítsa a zenét)

Itt megtalálod a dalt:

A zenét részekre bontottam, és minden ismétlődő részhez betűket rendeltem. Ezután minden jegyzethez 1-16 értéket rendeltem, és minden tömb 0. sorába helyeztem. Az értékek a lejátszandó hang frekvenciájának felelnek meg (tömbfrekvencia ). Az 1. sorba az egyes hangok időtartamát írtam. Példa:

const bájt melB1 [2] [6] PROGMEM = {

{11, 8, 0, 8, 7, 6}, // megjegyzés

{1, 3, 1, 1, 1, 1}}; // időtartam

Ha másik dalt szeretne használni:

  • változtassa meg a freq tömböt az új kívánt frekvenciákkal (megjegyzések)
  • módosítsa a dal egyes részeinek megfelelő tömböket
  • void music () esetén válassza ki a lejátszási sorrendet
  • módosítsa az „X” -t a tömbdeklarációban az egyes sorok elemeinek számára, és változtassa meg a megfelelő üreget is, például:

melB1 [2] [X]

void melodiaB1 () {

for (a = 0; a <X; a ++) {

3. lépés: Kód (módosítsa a képet / fényképet)

Kód (módosítsa a képet / fényképet)
Kód (módosítsa a képet / fényképet)
Kód (módosítsa a képet / fényképet)
Kód (módosítsa a képet / fényképet)
Kód (módosítsa a képet / fényképet)
Kód (módosítsa a képet / fényképet)

A GIMP segítségével fotóim fekete -fehérre változtattam, lépések:

Színek / telítettség = 0

A képet 95x95 pixel felbontásra kell változtatni. A TVout könyvtár nagyobb felbontásokat tesz lehetővé, de a használni kívánt kód mérete miatt kénytelen voltam csökkenteni a felbontást.

  • Téglalap kiválasztó eszköz (képarány - fix 1: 1)
  • Szerkesztés/másolás
  • Fájl/Létrehozás/Vágólapról
  • Kép/méretarányos kép (95x95)

Feltétlenül fekete -fehérré kell alakítani a képet, és nem szürkeárnyalatos.

  • Fuzzy Select Tool és Free Select Tool segítségével kiválaszthatja azokat a területeket, amelyeket feketén szeretnék megjeleníteni.
  • Ceruza (fekete), hogy fekete legyen a választékunk
  • Kiválasztás / megfordítás (megfordítja a választékot)
  • Ceruza (fehér), hogy a terület többi részét fehérre színezze
  • Színek / Fényerő-kontraszt (kontraszt a maxival, hogy a fekete fekete legyen)

Most, hogy a kép fekete -fehérben van, 95x95 képpontos felbontással

Fájl/exportálás (. BMP)

Az új kép kódra konvertálásához az Image2Code -ot használtam

Ez szinte jó tömböt eredményez. Ezután lemásoltam és beillesztettem az Arduino IDE -be.

A szerkesztés / keresés használata:

  • keressen rá az összes „0xFF” kifejezésre, és cserélje ki „0” -ra (az összes cseréje)
  • tegye ugyanezt a „0x00” esetén, és cserélje ki az „1” -re
  • Az összes „{“és „}” törlése

A "0" fekete pixel lesz

Az "1" fehér pixel lesz

4. lépés: 3D modell

3D modell
3D modell

A doboz 3D modelljének elkészítéséhez a SketchUp programot használtam. A 3D nyomtatóm korlátai és az általam elképzelt nehézségek miatt a belső kapcsolatok létrehozása miatt úgy döntöttem, hogy a modellt 4 részből állítom össze.

Feltöltöttem a SketchUp fájlt, ha valamit meg akar változtatni a tervezésen, ha nem, akkor csak nyomtassa ki a.stl fájlokat

5. lépés: Összeszerelés

Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés

Az összeszerelés nem bonyolult, de nehéz a doboz mérete és a csatlakoztatandó vezetékek száma miatt.

Ajánlott: