Turinys:
Video: HX1 -DM - atnaujinta „Arduino DUE“varomoji būgno mašina (pagaminta naudojant „Dead Maschine MK2“): 4 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:46
Spec
- Hibridinis „Midi“valdiklis / būgno mašina: „Arduino DUE“maitinamas!
- 16 greičio jutiklių pagalvėlės su labai mažu vėlavimu 1> ms
- 8 rankenėlės, kurias vartotojas gali priskirti bet kuriai „Midi #CC“komandai
- 16 kanalų įmontuotas sekos sekimo įrenginys (nereikia kompiuterio !!)
- MIDI įvesties/išvesties/per funkcijas (galima naudoti kaip USB midi sąsają!)
- Dalinis MIDI laikrodžio ir MTC palaikymas (dirbant su MMC ir DAW valdymu)
Tai neabejotinai vienas sudėtingiausių projektų, su kuriais dirbau, kalbėjau apie 17 išvesties poslinkių registrų, 6 įvesties poslinkių registrus, 2x 16 kanalų multiplekserius, dirbančius prie plokštės. Aš neįsivaizduoju, kas yra ir kur, be to, aš niekada nesugadinau su pamainų registrais / multiplekseriais prieš ……
Tai prasidėjo kaip impulsinis pirkimas „eBay“, aš tikrai norėjau „Native Instruments Maschine“, nes man visada patiko būgno pagalvėlės, palyginti su man priklausančia „MPC“studija, taigi, kai pamačiau sugedusį „eBay“už 40 svarų sterlingų, pagalvojau Norėčiau pataisyti situaciją blogiausiu atveju: „Jei negaliu to išspręsti, turiu„ Arduino DUE “ir keli UNO guli, visada galėčiau nulaužti“
Šiaip man labai patinka tos būgnų pagalvėlės !!!!
Prekės
1 x sugedusi vietinių instrumentų mašina MK2
1 x „Arduino Due“.
17 x SN74HC595 - 8 bitų išvesties poslinkių registrai
6 x SN74HC165 - 8 bitų įvesties poslinkio registrai
2 x 74HC4067 - 16 kanalų multiplekseriai.
2 x 3,2 colio 256 x 64 OLED ekranai.
šiek tiek plokščios vielos (tiks senas diskelio kabelis)
1 žingsnis: remontas
„EBay“pardavėjas buvo toks malonus, kad aprašyme nurodė, ko tikėtis, ir pašalino USB prievadą. Plokštė patyrė per didelę įtampą ir neįsijungė. Sužinok multimetrą … Atrodė, kad plokštėje yra trumpas.. „Anksčiau aš suremontavau daugybę pagrindinių plokščių su šortais. Taigi kaip tai gali būti sunku!?!“Paaiškėjo, kad tai buvo per daug įtampos (ir tikriausiai iš dalies plokštės dizainas), išimta beveik KIEKVIENA plokštės komponentas, įskaitant pagrindinį procesorių. Ši lenta buvo tikrai bloga!
Aš toliau gaminau ir kišau savo multimetrą, šiek tiek tyrinėjau komponentus ir supratau, ką kiekvienas daro, ir NI puikiai padėjo padaryti viską gana akivaizdžiai, naudodamas įvairius pagrindinės plokštės bandymo taškus.
2 žingsnis: įsilaužimas
Žinodamas, kad turėsiu pakeisti viską, kas yra pagrindinis procesorius (kurio nereikės), kreipiausi į „eBay“. Laimei, viskas, ko reikėjo, buvo pigu, todėl užsisakyti jų buvo smagu. ?
17 x SN74HC595 - 8 bitų išvesties poslinkių registrai
17 išvesties poslinkių registrų yra naudojami būgno pagalvėlės įvairiaspalviams šviesos diodams ir visiems mygtukų šviesos diodams (tiksliau-136) valdyti. Tai tikrai paprasta naudoti ir greitai surasta biblioteka naudojant „Arduino IDE“, kad sutaupytumėte… jie yra surišti grandinėmis.
6 x SN74HC165 - 8 bitų įvesties poslinkio registras
Šie įvesties poslinkių registrai puikiai tinka keliems įėjimams 1 kanale. Iš viso yra 48 mygtukai.
2 x 74HC4067 - 16 kanalų multiplekseriai
Mes turime 16 įklotų ir 8 rankenėlių, kurios taip pat yra analoginės. Man buvo lengviau juos naudoti, nes tie, kurie buvo lentoje, buvo 8 kanalų, ir man kilo problemų ieškant, kur prijungti duomenų kaiščius.. cue spageti sandūra….
2 x 3,2 colio 256 x 64 OLED ekranai
Turi turėti ekranus !!! Neradau jokios informacijos originaliuose skystųjų kristalų ekranuose, kurie buvo pristatyti „NI Maschine“, ir man nebuvo sunku sugaišti laiko bandant, todėl nusprendžiau užsisakyti šiek tiek iš Kinijos … Norėdami tai padaryti, naudoju UG8x8 biblioteką. Nauji ekranai buvo šiek tiek mažesni už originalą, todėl aš tiesiog pašalinau „blogus gabalus“.
1 x „Arduino Due“
Aš tai gulėjau kurį laiką, laukdamas projekto, kuris būtų pakankamai vertas visos šios galios! Iškilo problema, su kuria susidūriau. Atrodo, kad kai kuriose šių plokščių peržiūrose yra atstatymo problema, o tai reiškia, kad kartais turėjau paspausti iš naujo nustatymo mygtuką, kad įkeltas eskizas būtų paleistas. Tai buvo lengvai ištaisyta naudojant 10K rezistorių (apie tai yra pranešimas „Arduino“forume).
3 žingsnis: Kodas
Mane tikrai sužavėjo tai, kiek palaikoma „Arduino“bendruomenė, rasti kodo pavyzdžių ir bibliotekų įvairiems komponentams buvo tikrai paprasta ir paprasta.
USB midi paleidimas ir paleidimas buvo lengvas ir truko kelias minutes. Šviesos diodai užtruko šiek tiek laiko, ir aš turėjau sukurti eskizą, kuris palaipsniui nustatė kiekvieną kaištį AUKŠTĄ per 1 sekundės intervalą ir užrašiau pastabą. Aš padariau masyvą, kuriame buvo PIN kodai, kad būtų lengviau viską koduoti.
Aš padariau 2 bibliotekas, kad galėčiau pasikalbėti su multiplekseriais, viena tvarko analogines pagalves, o kita - rankenėles. Vėlgi, tai buvo tikrai paprasta. Pridedu juos, naudokitės redagavimu ir pan.
Norėjau turėti seką ir galimybę įrašyti be kompiuterio, radau informacijos, kaip konvertuoti BPM į ms, ir radau puikią „Arduino DUE“laikmačio biblioteką.
Naudodamas laikmačio biblioteką, galėjau nustatyti skaitymo įvestis ir dalykus intervalais:
Pads @ 1ms - radau, kad tai būtų geriausia pusiausvyra tarp atsako / atmetimo artefaktų.
Mygtukai @ 40ms - naudojau eilės biblioteką, todėl nebuvo praleista jokių paspaudimų.
Apdorojimas atliekamas pagrindinėje kilpoje, pertraukimo metu negalite padaryti per daug, nes tai užrakins „Arduino“.
Midi stuff @BPM (ms) - sekos nustatymui, esant norimam BPM, vadinama funkcija, kuri atnaujina, kuri turi būti paleista ETC, ir padidina ritmo skaitiklį.
4 žingsnis: Išvada
Nesu tikras, ką čia padariau, bet aš labai didžiuojuosi, trinkelės puikiai reaguoja, turėjau susimokėti apie laiką, kad gaučiau tinkamą pusiausvyrą su reagavimo ir perkrovimo problemomis. Sekos nustatymas veikia puikiai ir, kai išsiaiškinsiu DAW palaikymą, galėsiu visiškai integruoti šį dalyką į savo darbo eigą ir galėsiu pridėti dalykų prie valdiklio, kurio visada norėjau!. Tai buvo tikrai įdomus darbas ir puikus pratimas suprasti C, suprasti atvirkštinę inžineriją ir tai, kaip veikia multiplekseriai, poslinkių registrai ir MIDI seka. Aš ir toliau tobulinu pagrindinį kodą ir galbūt vieną dieną jį išleisiu kaip atviro kodo ritmo kūrėjas.
PATARIMAI:
Radau, kaip pakeisti DUE USB pavadinimą redaguojant vieną iš antraštės failų Arduino/SAM aplanke.
„MIDI-OX“yra puikus įrankis išbandyti „Midi“funkcionalumą
NUORODOS:
www.usb.org/sites/default/files/midi10.pdf - USB MIDI Spechttps://midi.teragonaudio.com/tech/miditech.htm https://guitargearfinder.com/guides/convert-ms -mi … Šiek tiek informacijos, kaip konvertuoti BPM į ms
travis-ci.com/SMFSW/Queue - Mygtuko įvestims, kad nepraleistume jokių paspaudimų!
github.com/olikraus/u8g2/wiki/u8x8referenc… - UG8 lib LED/LCD ekranams
github.com/ivanseidel/DueTimer/releases - „Arduino DUE Timing lib“
www.pjrc.com/teensy/td_libs_Encoder.html - „Encoder Lib“didelei rankenėlei
shiftregister.simsso.de/ - „ShiftIn Register lib“- Sukūrė Henrikas Heine, 2016 m. liepos 24 d.
forum.arduino.cc/index.php?topic=57636.0 - „MIDI Time Code“medžiaga
Rekomenduojamas:
„Raspberry Pi“būgno mašina: 5 žingsniai
„Raspberry Pi“būgnų mašina: mėginių sequencer, per „Raspberry Pi + Python“. Sekos sekimo priemonė turi 4 polifonijas ir leidžia vartotojui saugoti ir nustatyti 6 skirtingas sekas, kurias jie gali keisti realiuoju laiku, ir palaiko galimybę keisti skirtingus mėginius . Aš w
Žmogaus ir kompiuterio sąsaja: Funkcija Gripper (pagaminta Kirigami) riešo judesiu naudojant EMG: 7 žingsniai
Žmogaus ir kompiuterio sąsaja: Funkcija Gripper (pagaminta Kirigami) pagal riešo judesį naudojant EMG: Taigi tai buvo mano pirmasis bandymas naudoti žmogaus ir kompiuterio sąsają. Naudodamas EMG jutiklį užfiksavau savo riešo judesio raumenų aktyvinimo signalus, juos apdorojau per python ir arduino ir paleido origami pagrindu pagautą griebtuvą
Lengvas pažadinimas: išmani pažadinimo lemputė, pagaminta naudojant „Raspberry Pi“: 6 žingsniai
Lengvas pažadinimas: išmani pažadinimo lemputė, pagaminta naudojant „Raspberry Pi“: įvadas Į mokymo programos projektą1 turėjau ką nors padaryti. Mane visada žavėjo, kaip tokia pažadinimo lemputė jums praverstų, kaip ir „Philips“. Taigi nusprendžiau padaryti žadintuvą. Pažadinimo žibintą padariau su Raspberr
Skaičiavimo skalė, pagaminta naudojant „Arduino“: 6 žingsniai
Skaičiavimo skalė, pagaminta naudojant „Arduino“: Šis projektas vis dar yra šiek tiek nebaigtas, tačiau jis pasiekė tašką, kai naudinga pasidalyti informacija, kad kiti galėtų ja pasinaudoti. Iš esmės tai yra skalė, sukurta naudojant „Arduino“kaip mikrovaldiklį, bendras
„Arduino“servo būgno mašina: 4 žingsniai
„Arduino Servo“būgno mašina: Tai paprasta dviejų mikro servo ir „Arduino Uno“valdoma būgno mašina arba robotas. Servos montuojamos ant L formos medinio laikiklio, kuris yra pritvirtintas prie spąstų būgno su 4 stipriais magnetais. Servo rankenos yra prisukamos prie dviejų lazdelių, kurios tarnauja kaip