Turinys:

„MidiIdentifier“: 6 žingsniai (su nuotraukomis)
„MidiIdentifier“: 6 žingsniai (su nuotraukomis)

Video: „MidiIdentifier“: 6 žingsniai (su nuotraukomis)

Video: „MidiIdentifier“: 6 žingsniai (su nuotraukomis)
Video: Stargate: An interstellar journey to restful APIs 2024, Lapkritis
Anonim
„MidiIdentifier“
„MidiIdentifier“
„MidiIdentifier“
„MidiIdentifier“
„MidiIdentifier“
„MidiIdentifier“

Sveiki, kviečiame „nuo pat pradžių sukurti savo midi/fortepijono/muzikos/dainos identifikatorių“. Atlikdami toliau nurodytus veiksmus, mes padėsime jums įdiegti reikiamą programinę įrangą avietėje ir sukurti korpusą - visi failai įtraukti.

Jei užaugote aštuntajame ir aštuntajame dešimtmečiuose, galite net atpažinti dizaino dalis. Įkvėpimo daugiausiai sėmėmės iš „Apple II“. Nedidelis aukštyn nukreiptas kampas priekyje apačioje, taip pat šiek tiek aukštyn nukreipta klaviatūra yra simbolinės (palyginkite pažiūrėję į paveikslėlius).

Gerai, eikime!

1 žingsnis: reikalingi komponentai

Būtini komponentai
Būtini komponentai

Žemiau rasite mūsų naudojamų dalių sąrašą. Ar guli kiti garsiakalbiai ar kita klaviatūra? Bet kokiu atveju eikite į priekį ir naudokite juos! Konkrečios dalys nėra tokios svarbios, kol jas visas turite.;)

  1. „Raspberry Pi 3“modelis B (kitos avietės taip pat greičiausiai veiks)
  2. Talpus jutiklinis 7 colių ekranas („Waveshare“, skirtas „Raspberry Pi RPI Raspberry Pi“3,5 colio jutikliniam ekranui TFT LCD (A) 320 * 480/„Raspberry Pi“modelis B/„Raspberry Pi“modelis B)
  3. Garsiakalbiai („Basetech Mini USB PC Speaker“)
  4. „Midi“USB klaviatūra (AKAI LPK25 | 25 klavišų itin nešiojamas USB MIDI klaviatūros valdiklis nešiojamiesiems kompiuteriams)
  5. Mediena pjovimui lazeriu (apie 3 mm storio)

2 veiksmas: programinės įrangos priklausomybės

Programinės įrangos priklausomybės
Programinės įrangos priklausomybės

Prieš diegiant tikrąją „midiIdentifier“programinę įrangą, pirmiausia reikia įdiegti daugybę priklausomybių. Daugumą jų galima įdiegti naudojant įrankį „apt-get“, kuris yra iš anksto įdiegtas kiekviename „Raspbian“OS platinime. Žemiau rasite konkrečias komandas, būtinas atitinkamoms priklausomybėms įdiegti, įskaitant trumpą priklausomybės funkcijų aprašymą. Priklausomybės yra tokios:

1. Švarus Raspbian OS vaizdas

2. Fluidsynth (reikalingas garso išėjimui ir fortepijono natų generavimui):

sudo apt-get install fluidsynth

Atsisiųskite „Fluidsynth“garso šriftą iš šio URL:

de.osdn.net/frs/g_redir.php?m=kent&f=andr…

„Fluidsynth“automatinio paleidimo sąranka:

crontab -e

Pridėkite šią eilutę:

@reboot/usr/bin/screen -dm/usr/bin/fluidsynth -a alsa -m alsa_seq -i -s -o "shell.port = 9988" -g 2 /FluidR3_GM.sf2

3. Įdiekite „Py-Audio“(reikalingas įvairioms garso įvesties ir išvesties funkcijoms):

sudo apt-get įdiegti python3-pyaudio

4. „Telnet“(reikalingas prisijungti prie „Fluidsynth“serverio, kuris yra atsakingas už garso išvestį):

sudo apt-get įdiegti telnet

5. Ekranas (reikalingas programai paleisti kaip foninė užduotis):

sudo apt-get įdiegimo ekranas

6. „Git“(reikalinga norint atsisiųsti „midiIdentifier“programinę įrangą / klonuoti kodų saugyklą)

sudo apt-get install git

3 žingsnis: Ekrano sąranka

Ekrano sąranka
Ekrano sąranka

Kad „Raspbian OS“veiktų tinkamai su jutikliniu ekranu, reikia atlikti keletą pradinių konfigūracijos pakeitimų. Tam reikia atlikti įvairius įkrovos konfigūracijos failo pakeitimus. Atminkite, kad atsitiktiniai failo pakeitimai gali trukdyti „Raspberry Pi“tinkamai paleisti.

1. Atidarykite įkrovos konfigūracijos failą pasirinktu teksto redaktoriumi (t. Y. Nano). Šaknies privilegijos (sudo) reikalingos norint pakeisti failą. Komanda failui atidaryti ir redaguoti:

sudo nano /boot/config.txt

Pridėkite šias eilutes (jei jau yra, pašalinkite esamas)

max_usb_current = 1

hdmi_group = 2 hdmi_mode = 87 hdmi_cvt 1024 600 60 6 0 0 0 hdmi_drive = 1

Atkreipkite dėmesį, kad prieš ir po simbolių „=“nebūtų jokių tarpų.

Išsaugokite ir uždarykite failą. Jei naudojate nano, atlikite šiuos veiksmus:

Paspauskite CTRL + X Įveskite „Y“ir paspauskite „Enter“

2. Prijunkite ekraną prie HDMI ir prie atsitiktinio „Raspberry Pi“USB prievado.

3. Įjunkite foninį apšvietimą (jungiklis yra galinėje ekrano pusėje)

4. Iš naujo paleiskite „Raspberry Pi“.

4 žingsnis: „MidiIdentifier“programinė įranga

„MidiIdentifier“programinė įranga
„MidiIdentifier“programinė įranga

Toliau darome prielaidą, kad programa bus paleista pagal vartotoją, pavadintą „pi“. Jei taip nėra, reikia atitinkamai pritaikyti katalogų kelius (t. Y. /Home /pi tampa /home /[jūsų vartotojas]).

1. Klonuokite midiIdentifier saugyklą iš „Github“naudodami šią komandą:

git klonas

2. Pridėkite saugyklą prie „Pythonpath“.

Atidarykite failą ~/.bashrc (t. Y. Su nano, žr. Ankstesnį veiksmą).

Pridėkite šią eilutę:

PYTHONPATH = "$ {PYTHONPATH}:/home/pi/workspace/midiIdentifier/src"

Išsaugokite failą, tada iš naujo įkelkite naudodami šią komandą:

. ~/.bashrc

Tai yra: dot space tilde brūkšnys dot bashrc. Perkraukite „Raspberry Pi“.

3. Nustatykite programos automatinį paleidimą.

Sukurkite failą pavadinimu „start_gui.sh“namų kataloge ir pridėkite šias eilutes:

#!/bin/bash

sleep 3 cd/home/pi/workspace/midiIdentifier/src/guiMI python3 /home/pi/workspace/midiIdentifier/src/guiMI/gui.py sleep 30

Atidarykite failą ~/.config/lxsession/LXDE-pi/autostart ir pridėkite šią eilutę:

@lxterminal -e /home/pi/start_gui.sh

4. Kad midiIdentifier veiktų, reikia midi failų rinkinį rankiniu būdu nukopijuoti į midi katalogą. Siekiant išvengti autorių teisių pažeidimų, šie failai nėra įtraukti į mūsų „git“saugyklą. Tačiau juos galima atsisiųsti iš įvairių internetinių šaltinių, kaip galima rasti naudojant paprastą „Google“paiešką. Atsisiuntę failus, juos reikia nukopijuoti į šį katalogą:

/home/pi/workspace/midiIdentifier/files/new_midi

Po to midi failus reikia išanalizuoti naudojant šią komandą:

python3 /home/pi/workspace/midiIdentifier/src/converterMI/midiToText.py

5. Iš naujo paleiskite „Raspberry Pi“.

6. Sveikinu, tau pavyko! Iki šiol midiIdentifier turėtų būti paleistas!

5 žingsnis: korpuso kūrimas

Bylos kūrimas
Bylos kūrimas
Bylos kūrimas
Bylos kūrimas
Bylos kūrimas
Bylos kūrimas

Ši dalis iš tikrųjų yra gana tiesi - jei turite prieigą prie lazerinio pjaustytuvo. Galutinio korpuso matmenys yra apytiksliai. 450 mm x 100 mm x 300 mm (P/A/G), todėl jums reikės lazerinio pjaustytuvo, galinčio pjauti mažiausiai 450 mm x 250 mm (tai yra didžiausias atskiras gabalas). Arba kai kurias dalis galite padalyti į dalis, o tai leis jums sukurti korpusą mažesniu lazeriniu pjaustytuvu. Be to, jei naudojate mažesnę klaviatūrą, apskritai galite išvengti mažesnės konstrukcijos. Mes naudojome 3 mm storio fanerą. Norint gauti gerų rezultatų, gali tekti paeksperimentuoti su lazerinio pjaustytuvo greičio ir galios nustatymais.

Visus failus, kurių reikia norint iškirpti ekrano langelį, ir bendrą atvejį rasite šio veiksmo apačioje.

Neprivaloma: jei norite pakeisti mūsų konstrukciją arba jei jus tiesiog domina lazerinio pjaustytuvo failų kūrimo procesas, skaitykite toliau:

Nubraižę pagrindinį eskizą ant popieriaus, kad pajustumėte matmenis, mes panaudojome „Adobe Illustrator“, norėdami sukurti lazerinio pjaustytuvo failus (1 savaitės bandomąją versiją galite gauti iš jų svetainės). Tačiau mes nepiešėme atskirų įpjovų, nes yra puikus nemokamas internetinis įrankis, padedantis jums tai padaryti, stalių. Mes eksportavome savo AI failus kaip SVG ir importavome juos į stalių, kur sujungėme skirtingus kraštus. Stalystė leidžia apibrėžti profilius skirtingiems kampams, kad vėliau juos būtų galima pakartotinai naudoti, taip pat leidžia išsaugoti projektą. Taigi žemiau mes įtraukėme savo stalių profilius ir projektus. Tai ypač naudinga, jei norite atlikti nedidelius mūsų dizaino pakeitimus, nes juos galima pakeisti lengviau nei „Adobe“iliustratoriaus failus, kai kalbama apie pjovimo nuokrypius ir pan.

6 žingsnis: sudėkite viską kartu

Viską sujungti
Viską sujungti
Viską sujungti
Viską sujungti
Viską sujungti
Viską sujungti
  1. Įdiegę programinę įrangą „Raspberry Pi“(ir išbandę, ar ji veikia tinkamai) ir supjaustę visą fanerą, galite pradėti derinti programinę ir techninę įrangą. Nėra lengvo būdo tai padaryti ir tai tikrai apima tam tikrą stumimą, traukimą, rausimą, matavimą, pjovimą, klijavimą ir sukimąsi.
  2. Pirmiausia turite sudėti visą korpusą, išskyrus galinę plokštę. Be to, dar nepritvirtinkite ekrano dėžutės, tai bus paskutinis žingsnis. Jei norite papildomai naudoti klijus, pirmyn.
  3. Įkiškite pianiną iš galo į korpusą, įsitikinkite, kad jis prijungtas, nes vėliau bus sunku jį prijungti. Laikykite jį prieš medieną ir išmatuokite gabalų, kuriuos reikės pjauti, aukštį, kad laikytumėte vietoje. Iškirpkite šiuos gabalus (2 arba 3) ir pritvirtinkite prie fortepijono ir dėžutės pagrindo, laikydami fortepijoną toje vietoje, kur jis turėtų būti, ir įsitikinkite, kad paspaudus klavišus jis nejudės.
  4. Pritvirtinkite plokštes, kurias vėliau garsiakalbiai su vyriais uždės prie pagrindinio korpuso. Tam galite naudoti karštus klijus arba dviejų komponentų klijus. Padėkite medinę atramą žemiau, kad jie liktų horizontaliai, net jei dėžutės vėliau bus ant jų.
  5. Pritvirtinkite visą ekrano dėžutę (ekraną viduje, kabelius, kyšančius per skylę dėžutės apačioje) vyriais prie pagrindinio korpuso.
  6. Į dėklo vidų įdėkite medinį bloką, kad ekrano langelis būtų horizontalioje padėtyje, sulankstytas atgal į pagrindinį dėklą (žr. Paveikslėlius). Šis atraminis blokas taip pat bus naudojamas pritvirtinti mažą siją, kad ekranas būtų vertikalus.
  7. Pritvirtinkite garsiakalbius prie jų plokščių (naudojome paprastą dvipusę juostą). Transportuojant ekraną ir dėžes galima sulankstyti atgal į dėklą!
  8. Galiausiai prijunkite visus laidus prie aviečių.

Ir viskas, baigta! Tikėjomės, kad jums patiko mūsų pamoka, ir norėtume išgirsti jūsų nuomonę, jei nuspręsite patys sukurti midiIdentifier!

Rekomenduojamas: