Mundarija:
- 1 -qadam: kerakli komponentlar
- 2 -qadam: dasturiy ta'minotga bog'liqlik
- 3 -qadam: Displeyni sozlash
- 4 -qadam: MidiIdentifier dasturi
- 5 -qadam: Kosonni yaratish
- 6 -qadam: Hammasini bir joyga to'plash
Video: MidiIdentifier: 6 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:27
Salom, "o'z midi/pianino/musiqa/qo'shiq identifikatorini noldan yaratish" ga xush kelibsiz. Keyingi bosqichlarda biz sizga malinaga kerakli dasturiy ta'minotni o'rnatish va korpusni qurish bo'yicha ko'rsatma beramiz - barcha fayllar.
Agar siz 70-80 -yillarda o'sgan bo'lsangiz, siz hatto dizaynning ba'zi qismlarini taniy olasiz. Biz ilhomni asosan Apple II -dan oldik. Pastki old qismidagi engil yuqoriga burchak va biroz yuqoriga burilgan klaviatura ramziy ma'noga ega (solishtirish uchun rasmlarga qarang).
Mayli, ketaylik!
1 -qadam: kerakli komponentlar
Quyida biz ishlatgan qismlar ro'yxati bilan tanishishingiz mumkin. Boshqa karnaylar yoki boshqa klaviatura yotibdimi? Qanday bo'lmasin, davom eting va ulardan foydalaning! Agar sizda hamma narsa bo'lsa, aniq qismlar unchalik muhim emas.;)
- Raspberry Pi 3 Model B (boshqa malina ham ishlaydi)
- 7 dyuymli sig'imli sensorli displey (Raspberry Pi RPI Raspberry Pi uchun 3,5 dyuymli sensorli ekran TFT LCD (A) 320 * 480/Raspberry Pi Model B/Raspberry Pi Model B uchun to'lqin)
- Karnay (Basetech Mini USB kompyuter kompyuteri)
- Midi USB klaviaturasi (AKAI LPK25 | Noutbuklar uchun 25-tugmachali ultra-portativ USB MIDI klaviatura boshqaruvchisi)
- Lazerni kesish uchun yog'och (qalinligi taxminan 3 mm)
2 -qadam: dasturiy ta'minotga bog'liqlik
MidiIdentifier uchun haqiqiy dasturiy ta'minotni o'rnatishdan oldin, birinchi navbatda bir qator bog'liqliklar o'rnatilishi kerak. Ularning aksariyati har bir Raspbian OS tarqatish tizimiga oldindan o'rnatilgan "apt-get" vositasi bilan o'rnatilishi mumkin. Tegishli bog'liqliklarni o'rnatish uchun zarur bo'lgan maxsus buyruqlar quyida, shu jumladan, bog'liqlikning funksionalligi haqida qisqacha ma'lumot berilgan. Bog'liqliklar quyidagicha:
1. Raspbian operatsion tizimining toza tasviri
2. Fluidsynth (audio chiqish va pianino yozuvlarini audio yaratish uchun zarur):
sudo apt-get install fluidsynth
Quyidagi URL manzilidan Fluidsynth tovush shriftini yuklab oling:
de.osdn.net/frs/g_redir.php?m=kent&f=andr…
Fluidsynth avtomatik ishga tushirishni sozlash:
crontab -e
Quyidagi qatorni qo'shing:
@reboot/usr/bin/screen -dm/usr/bin/fluidsynth -alsa -m alsa_seq -i -s -o "shell.port = 9988" -g 2 /FluidR3_GM.sf2
3. Py-Audio-ni o'rnating (har xil ovozli kirish va chiqish funktsiyalari uchun zarur):
sudo apt-get install python3-pyaudio
4. Telnet (audio chiqishi uchun javob beradigan Fluidsynth serveriga ulanish uchun kerak):
sudo apt-get telnet-ni o'rnating
5. Ekran (ilovani fon vazifasi sifatida ishga tushirish uchun kerak):
sudo apt-get o'rnatish ekrani
6. Git (midiIdentifier dasturini yuklab olish / kod omborini klonlash uchun kerak)
sudo apt-get install git
3 -qadam: Displeyni sozlash
Sensorli ekran bilan to'g'ri ishlashi uchun Raspbian OS ba'zi konfiguratsion o'zgarishlarni talab qiladi. Bu yuklash konfiguratsiya fayliga turli xil o'zgartirishlarni kiritishni talab qiladi. E'tibor bering, faylga tasodifiy o'zgartirishlar Raspberry Pi -ni to'g'ri yuklanishiga to'sqinlik qilishi mumkin.
1. Yuklash konfiguratsiya faylini siz tanlagan matn muharriri bilan oching (ya'ni nano). Faylga o'zgartirish kiritish uchun root imtiyozlari (sudo) talab qilinadi. Faylni ochish va tahrir qilish buyrug'i:
sudo nano /boot/config.txt
Quyidagi qatorlarni qo'shing (agar mavjud bo'lsa, iltimos, mavjudlarini olib tashlang)
max_usb_current = 1
hdmi_group = 2 hdmi_mode = 87 hdmi_cvt 1024 600 60 6 0 0 0 hdmi_drive = 1
Iltimos, "=" belgilaridan oldin va keyin bo'sh joylar qo'ymaslikka e'tibor bering.
Faylni saqlang va yoping. Agar siz nanodan foydalansangiz, quyidagilarni bajaring:
CTRL + X tugmalar birikmasini bosing "Y" va Enter tugmasini bosing
2. Displeyni HDMI va Raspberry Pi tasodifiy USB portiga ulang.
3. Orqa nuri yoqing (kalit displeyning orqa tomonida joylashgan)
4. Raspberry Pi -ni qayta ishga tushiring.
4 -qadam: MidiIdentifier dasturi
Quyida ilova "pi" nomli foydalanuvchi ostida ishlaydi deb taxmin qilamiz. Agar bunday bo'lmasa, katalog yo'llarini mos ravishda o'zgartirish kerak (ya'ni /home /pi bo'ladi /home /[sizning foydalanuvchi]).
1. Github -dan midiIdentifier omborini quyidagi buyruq bilan klonlang:
git klon
2. Pythonpath -ga omborni qo'shing.
~/. Bashrc faylini oching (ya'ni nano bilan, oldingi bosqichga qarang).
Quyidagi qatorni qo'shing:
PYTHONPATH = "$ {PYTHONPATH}:/home/pi/workpace/midiIdentifier/src"
Faylni saqlang va uni quyidagi buyruq bilan qayta yuklang:
. ~/.bashrc
Ya'ni: nuqta oralig'i tilde slash dot bashrc. Raspberry Pi -ni qayta ishga tushiring.
3. Ilovani avtomatik ishga tushirishni sozlash.
Bosh katalogda "start_gui.sh" nomli fayl yarating va quyidagi qatorlarni qo'shing:
#!/bin/bash
uyqu 3 cd/home/pi/ish maydoni/midiIdentifier/src/guiMI python3 /home/pi/workspace/midiIdentifier/src/guiMI/gui.py uyqu 30
~/. Config/lxsession/LXDE-pi/autostart faylini oching va quyidagi qatorni qo'shing:
@lxterminal -e /home/pi/start_gui.sh
4. MidiIdentifier ishlashi uchun midi fayllar to'plamini midi katalogiga qo'lda ko'chirish kerak. Mualliflik huquqining buzilishining oldini olish uchun bu fayllar bizning git omborimizga kiritilmagan. Ularni har xil onlayn manbalardan yuklab olish mumkin, chunki ularni oddiy Google qidiruvi yordamida topish mumkin. Fayllarni yuklaganingizdan so'ng, ular quyidagi katalogga ko'chirilishi kerak:
/home/pi/ish maydoni/midiIdentifier/files/new_midi
Shundan so'ng, midi fayllarini quyidagi buyruq bilan tahlil qilish kerak:
python3 /home/pi/workspace/midiIdentifier/src/converterMI/midiToText.py
5. Raspberry Pi -ni qayta ishga tushiring.
6. Tabriklaymiz, siz erishdingiz! Hozircha midiIdentifier ishga tushishi kerak!
5 -qadam: Kosonni yaratish
Bu qism aslida juda oldinga siljiydi - agar sizda lazerli kesgichdan foydalanish imkoni bo'lsa. Yakuniy korpusning o'lchamlari taxminan. 450 mm x 100 mm x 300 mm (G/H/D), shuning uchun sizga kamida 450 mm x 250 mm (bu eng katta bo'lak) kesadigan lazerli kesuvchi kerak bo'ladi. Shu bilan bir qatorda, siz qismlarni kichik qismlarga bo'lishingiz mumkin, bu sizga korpusni kichikroq lazerli kesgich yordamida yasashga imkon beradi. Bundan tashqari, agar siz kichikroq klaviaturadan foydalansangiz, umuman olganda kichikroq tuzilishdan qutulishingiz mumkin. Biz qalinligi 3 mm bo'lgan kontrplakdan foydalanamiz. Yaxshi natijalarga erishish uchun siz lazer kesgichingizning tezligi va quvvat parametrlarini sinab ko'rishingiz kerak bo'ladi.
Ekranning qutisini kesish uchun kerak bo'lgan barcha fayllar va umumiy holat bu qadamning pastki qismida joylashgan.
Majburiy emas: Agar siz bizning konstruktsiyamizni o'zgartirmoqchi bo'lsangiz yoki sizni faqat lazerni kesish uchun fayllarni loyihalash jarayoni qiziqtirsa, o'qing:
O'lchamlarni sezish uchun qog'ozga asosiy eskizni chizganimizdan so'ng, biz Adobe Illustrator -dan foydalanib, lazerni kesish uchun fayllarni loyihalashtirdik (ularning veb -saytidan 1 haftalik sinov versiyasini olishingiz mumkin). Biz individual chiziqlarni chizmadik, chunki bu erda sizga yordam beradigan ajoyib bepul onlayn vosita, Yog'och. Biz AI fayllarimizni SVG formatida eksport qildik va ularni turli xil qirralarni bir -biriga bog'lab turgan yog'ochga olib keldik. Do'stlik sizga turli xil burchaklar uchun profillarni keyinchalik qayta ishlatish uchun belgilash imkonini beradi va loyihani saqlashga imkon beradi. Shunday qilib, biz quyida o'z profilimiz va loyihalarimizni qo'shdik. Agar siz bizning dizaynimizga ozgina o'zgartirish kiritmoqchi bo'lsangiz, bu ayniqsa foydalidir, chunki ularni kesish uchun bardoshlik va hokazolarni Adobe Illustrator fayllariga qaraganda osonroq o'zgartirish mumkin.
6 -qadam: Hammasini bir joyga to'plash
- Dasturiy ta'minotni Raspberry Pi -ga o'rnatganingizdan so'ng (va u to'g'ri ishlashini sinovdan o'tkazdi) va barcha kontrplakni kesib tashlaganingizdan so'ng, siz dasturiy ta'minot va uskunalarni birlashtirishni boshlashingiz mumkin. Buni qilishning oson yo'li yo'q va bu, albatta, bir oz itarish, tortish, tarash, o'lchash, kesish, yopishtirish va qimirlashni o'z ichiga oladi.
- Birinchidan, orqa plastinkadan tashqari, to'liq korpusni bir joyga qo'yish kerak. Bundan tashqari, ekran qutisini hali biriktirmang, bu oxirgi qadam bo'ladi. Agar siz qo'shimcha qo'llab -quvvatlash uchun elim ishlatmoqchi bo'lsangiz, davom eting.
- Pianinoni orqa tomondan korpusga joylashtiring, ulanganligiga ishonch hosil qiling, chunki uni keyinroq ulash qiyin bo'ladi. Yog'ochdan ushlab turing va uni ushlab turish uchun kesishingiz kerak bo'laklarning balandligini o'lchang. Bu bo'laklarni (2 yoki 3) kesib oling va ularni pianino va qutining tagiga mahkamlang, pianinoni kerakli joyda saqlang va tugmachalarni bosmasligingizga ishonch hosil qiling.
- Plitalarni mahkamlang, karnaylar keyinchalik asosiy korpusga menteşalar bilan o'rnatiladi. Buning uchun siz issiq elim yoki ikkita komponentli elimdan foydalanishingiz mumkin. Quyida yog'och tayanchni joylashtiring, shunda ular keyinchalik qutilar qo'yilsa ham gorizontal holatda qoladi.
- To'liq ekran qutisini (ichki ekran, qutining pastki qismidagi teshikdan chiqadigan kabellar) asosiy korpusga menteşalar orqali ulang.
- Asosiy korpusga o'ralgan holda ekran qutisini gorizontal holatda ushlab turish uchun korpusga yog'och blok qo'shing (rasmlarga qarang). Bu qo'llab -quvvatlash bloki ekranni har xil tik burchak ostida ushlab turish uchun kichik nurni ulash uchun ham ishlatiladi.
- Karnayni plastinkalarga ulang (biz oddiy ikki tomonlama lentani ishlatardik). Tashish uchun ekran va qutilar qutiga qaytarilishi mumkin!
- Nihoyat, barcha kabellarni malinaga ulang.
Va bu hammasi, siz tugadingiz! Umid qilamizki, bizning darsligimiz sizga yoqdi va agar siz midiIdentifierni o'zingiz qurishga qaror qilsangiz, sizdan eshitishni istardik!
Tavsiya:
Batareya bilan ishlaydigan ofis. Quyosh panellari va shamol turbinasi: Sharq/G'arbni avtomatik almashtirish bilan quyosh tizimi: 11 qadam (rasmlar bilan)
Batareya bilan ishlaydigan ofis. Quyosh tizimi Sharq/G'arbning avtomatik panellari va shamol turbinasi bilan almashinuvi bilan: Loyiha: 200 kvadrat metrli ofis batareyali bo'lishi kerak. Ofis, shuningdek, ushbu tizim uchun zarur bo'lgan barcha tekshirgichlar, batareyalar va komponentlarni o'z ichiga olishi kerak. Quyosh va shamol energiyasi batareyalarni zaryad qiladi. Faqat kichik muammo bor
NaTaLia ob -havo stantsiyasi: Arduino quyosh energiyasi bilan ishlaydigan ob -havo stantsiyasi to'g'ri yo'l bilan amalga oshirildi: 8 qadam (rasmlar bilan)
NaTaLia ob -havo stantsiyasi: Arduino quyosh energiyasi bilan ishlaydigan ob -havo stantsiyasi to'g'ri yo'lga qo'yildi: 1 yil davomida 2 xil joyda muvaffaqiyatli ishlaganimdan so'ng, men quyosh energiyasi bilan ishlaydigan ob -havo stantsiyasining loyiha rejalari bilan bo'lishaman va uning qanday qilib uzoq vaqt yashay oladigan tizimga aylanganini tushuntiraman. quyosh energiyasidan o'tgan davrlar. Agar ergashsangiz
Twinky bilan eng zo'r Arduino robot bilan tanishing: 7 qadam (rasmlar bilan)
Twinky bilan eng zo'r Arduino roboti bilan tanishing: Salom, men sizga "Jibo" ni o'zim qanday yaratganimni o'rgataman. lekin "Twinky" deb nomlangan, men buni ochib bermoqchiman … Bu nusxa emas! Men ikkiyuzlamachilik bilan qurardim va shundan keyingina shunga o'xshash narsaning mavjudligini tushundim: bu erda
OpenLH: Biologiya bilan ijodiy tajriba o'tkazish uchun ochiq suyuqlik bilan ishlash tizimi: 9 qadam (rasmlar bilan)
OpenLH: Biologiya bilan ijodiy eksperimentlar uchun ochiq suyuqlik bilan ishlash tizimi: Biz bu ishni moddiy, ko'milgan va mujassamlangan o'zaro ta'sir xalqaro konferentsiyasida (TEI 2019) taqdim etganimizdan faxrlanamiz. Tempe, Arizona, AQSh | 17-20 mart. Hamma yig'ish fayllari va qo'llanmalar bu erda mavjud. Oxirgi kod versiyasi
Vaqt o'tishi bilan rasmlar uchun kamera osonlashtirildi: 22 qadam (rasmlar bilan)
Vaqt o'tishi bilan suratga olish uchun kamera osonlashtirildi. Men boshqa ko'rsatmalarni vaqtni tez suratga olish filmlarini suratga olishni tekshirib ko'rdim. U kino qismini juda yaxshi yoritgan. U filmlar yaratish uchun yuklab olishingiz mumkin bo'lgan bepul dasturiy ta'minot haqida gapirib berdi. Men o'z -o'zimga aytdim, men o'ylaymanki, agar men qila olsam