Përmbajtje:

Si të ndërtoni një Ukulele të ndritshme !: 21 hapa
Si të ndërtoni një Ukulele të ndritshme !: 21 hapa

Video: Si të ndërtoni një Ukulele të ndritshme !: 21 hapa

Video: Si të ndërtoni një Ukulele të ndritshme !: 21 hapa
Video: Маленький лисенок вышел к людям за помощью 2024, Korrik
Anonim
Image
Image
Të bëjë një plan
Të bëjë një plan

Unë luaj me Ukulele. Pak mesatarisht (nëse kjo është një fjalë) kështu që unë mendova, "nëse vërtet dëshironi të bëni përshtypje zonjat, keni nevojë për një mjet për t'i tërhequr ato nga fatkeqësia që po luan në skenë." Prandaj lindi "Ukulele e ndezur".

Ky projekt merr një çantë Konkursi Ukulele dhe shton një LED të kontrolluar nga Arduino në çdo pozicion me tela dhe brengosje. Ai gjithashtu shton një ekran të zbukuruar OLED dhe ndërfaqen e përdoruesit të bazuar në koduesin rrotullues për të zgjedhur mënyrën dhe intensitetin e vargut LED.

Karakteristikat e kompletuara të harduerit uke:

  1. Arduino MICRO të ndërfaqet me vargun LED, ekranin dhe pajisjen hyrëse.
  2. 48 LED me ngjyra të plota të programueshme individualisht
  3. Një ekran OLED
  4. Një kodues rrotullues për hyrjen e përdoruesit
  5. Ndërfaqe USB për energji të jashtme dhe programim Arduino

Softueri uke ka:

  1. Mënyrat themelore të kontrollit të dritës që kalojnë LED përmes hapave të tyre
  2. Një mënyrë e mrekullueshme e markeve të teatrit (shumë e përshtatshme për shfaqje!)
  3. Kontrolli i intensitetit LED
  4. Një bibliotekë e plotë e akordeve të të gjitha akordeve të pozicionit të parë Ukulele (vlera dhe karakteri i akordit)
  5. Aftësia për të shfaqur tekstin drejtues (vertikalisht) duke përdorur një grup unik 4 * 6 pikselësh

Ky udhëzues përshkruan prototipin e përfunduar. Saga e plotë e zhvillimit është e disponueshme KERTU, duke përfshirë disa gabime edukative (të dhimbshme) dhe një mësim të vlefshëm se pse DUHET të përfundoni modelin tuaj të parë deri në përfundim (pavarësisht se sa gjëra të shëmtuara bëhen). Asnjëherë nuk i dini të gjitha gjërat që vërtet nuk i dini derisa të arrini në fund (dhe pastaj akoma nuk e dini!), Por jeni shumë më mirë dhe shumë më të zgjuar për modelin e ardhshëm.

Kam ndërtuar prototipin rreth një kompleti Grizzly Concert Ukulele. Fillimi me një çantë lehtëson shqetësimin për trupin e uke (mirë, kryesisht), dhe eliminon shumicën e punës së vërtetë të tipit luthier. Këto komplete janë mjaft të plota dhe jo aq të shtrenjta në skemën e madhe të gjërave (dhe më pak të dhimbshme pasi do të bëni gabime).

Hapi 1: Bëni një Plan

Të bëjë një plan
Të bëjë një plan

Fretboardi (ose tastiera e gishtit) të përfshira në disa komplete tashmë kanë fretse të bashkangjitura. Kjo është mirë/keq. Niceshtë mirë si një kursimtar i kohës, por për sa i përket përcaktimit të një modeli stërvitjeje dhe mbajtjes së tij në vend gjatë bluarjes, është pak dhimbje. Pasi shkatërrova atë të dhënë në komplet, unë zgjodha (mirë, nuk kisha zgjidhje tjetër përveçse të blija një çantë tjetër) për të blerë një fretboard të ri.

Kur hartojmë tabelën, duhet të llogarisim rritjen e trashësisë së kërkuar për të futur PCB dhe LED (dhe mos harroni përbërësit pasivë), por jo aq shumë sa që LED -të të jenë shumë larg nga sipërfaqja e fretboardit.

Bordi i qarkut të shtypur LED (PCB) është krijuar si një bord i thjeshtë me 2 shtresa. Kjo ndihmon shumë me montimin e dorës të vargut LED dhe siguron një forcë mekanike (është tekstil me fije qelqi dhe epoksi) në qafën e Ukulele. Fillova paraqitjen në Eagle, por përfundova duke përdorur Altium Designer për shkak të kufizimeve të madhësisë së bordit. Skedarët skematikë Altium dhe PCB janë këtu.

Fetboardi i kompletit ishte vetëm 0.125 inç i trashë. Pra, duke supozuar një PCB të trashë 0,062 inç dhe duke lejuar një 0,062 inç shtesë për LED -të, do të thotë që do të na duhej të prisnim shumë (si në të gjitha) të tabelës. Për të kompensuar ne ose mund të presim pjesërisht xhepa për LED -të në tabelë me një xhep përkatës në qafë për PCB, ose mund të zëvendësojmë të gjithë fretboardin (opsioni me të cilin shkova) me një version më të trashë nga Luther Mercantile International (LMII), të cilat janë 0.25 inç për të filluar.

POR, mbani mend se ju do të keni ende për të përpunuar qafën për të kompensuar rritjen e trashësisë në tabelë. Avantazhi tjetër që ju merrni është kozmetik, pasi PCB tani është futur plotësisht brenda tabelës së përparme, gjë që i bën skajet shumë më të lehta për tu përfunduar (dhe duken shumë më bukur!) Dhe thjeshton bluarjen e qafës.

Gjërat inxhinierike (injoroni nëse dëshironi):

Nga rruga, kjo nuk komprometon vërtet ngurtësinë e qafës aq shumë. Materiali i PCB -së është shumë më i fortë se druri origjinal i dërrasës (moduli i sofrës: 10.6 GPa kundrejt modulit FR4: 24 GPa), plus që kur po ndërtojmë një Ukulele, nuk ka një sasi të madhe tensioni të vargut që përndryshe mund të shtrembërojë (kthesë ose shtrembëroj) qafën.

Një konsideratë shumë interesante (që ndoshta duhet ta llogaris akoma) është ajo që ndodh mbi temperaturën. Përgjithësisht për drurin, paralelisht me kokrrën, koeficienti termik i zgjerimit është afërsisht 3 x 10^-6/K, dhe për FR4 është 14 × 10^−6/K. Pra, ka një ndryshim mjaft domethënës. Shqetësimi është se tensioni krijohet në qafë me ndryshimin e temperaturës, e cila nga ana tjetër çaktivizon telat. Kjo është diçka që mund të kompensohet duke aplikuar një shtresë të ngjashme në anën e kundërt të boshtit neutral ose duke e afruar FR4 sa më afër aksit neutral. Por kjo do të lihet për 2.0 … Diçka për të modeluar dhe vlerësuar.

Elektronika është e vendosur në trupin e uke. Vrimat janë të prera në mur anësor (jo tingëllon!) Të UKE për të bërë vend për ekranin dhe koduesin rrotullues, plus një pllakë aksesi për të mbajtur Arduino Micro dhe për të siguruar qasje në ndërfaqen USB. Dizajni dhe vendndodhja e pllakës së hyrjes/montimit ka të ngjarë të përmirësohet për ta bërë lidhjen USB të dalë në një vend më të përshtatshëm, por siç qëndron, nuk është aq e keqe, pasi nuk është në rrugën e duhur kur jeni duke luajtur.

Skica e hapave janë si më poshtë:

  1. Mblidhni materiale
  2. Merrni mjetet që ju nevojiten
  3. Mulloni qafën për të akomoduar tabelën më të trashë
  4. Mulloni tabelën për të bërë vrima në vendet e kërkuara dhe për të krijuar xhepa për tabelën dhe LED
  5. Merrni dhe ndërtoni PCB që mban LED
  6. Fshini vrimat e hyrjes në trupin e Ukulele për ekranin OLED, koduesin rrotullues dhe panelin e hyrjes
  7. Bëni pllaka mbulimi
  8. Lidhni telat në PCB; lidhin dhe testojnë elektronikën
  9. Bashkangjitni qafën në trupin e Ukulele
  10. Stërvitni një mbajtës aksesi për të kaluar telat e PCB në trup
  11. Rreshtoni dhe ngjitni PCB -në dhe tabelën në qafë
  12. Niveloni skajet e fretboardit në qafë (hiqni materialin e tepërt)
  13. Instaloni telat e furrës
  14. Aplikoni maskimin dhe aplikoni përfundimin në Ukulele
  15. Rreshtoni dhe bashkoni urën
  16. Instaloni pajisje elektronike dhe provoni.
  17. Instaloni akordues dhe lidhni instrumentin
  18. Programoni kontrolluesin Uke
  19. Mahniteni botën me mrekullinë tuaj Ukulele!

Hapi 2: Mblidhni materiale

Lista e materialeve tona duket kështu:

  1. Kompleti Ukulele - Kam përdorur një çantë Konkursi Grizzly Ukulele (Grizzly Uke Kit në Amazon), por kjo duket se do të ndërpritet. Zimo bën një model të ngjashëm (Zimo Uke Kit @ Amazon) i cili duket se do ta bëjë punën
  2. Furboard Ukulele, e para-çarë (LMII Uke Fingerboards). Ata do ta vendosin tabelën në shkallën tuaj, e cila kursen një rrëmujë telash
  3. Epoxy - për ngjitjen e tabelës në qafë. Zgjodha epoksi pasi është në përputhje me materialin PCB. Kërkoni diçka me të paktën 60 minuta jetë pune. MOS përdorni lloje 5 minutëshe, keni nevojë për kohë për të bërë rregullime
  4. Telat Fret - gjithashtu në dispozicion nga LMII
  5. PCB e personalizuar - Skedarët Altium janë këtu. Zgjodha materialin normal të tipit FR4. Pllakat Flex (polimide) do të ishin një alternativë interesante (nëse është më e kushtueshme), pasi ato mund të jenë shumë më të holla
  6. LED 48 herë Neopixel (SK6812). E disponueshme nga Adafruit dhe Digikey
  7. 48x 0.1uF 0402 kapele - më e madhe është e pranueshme, por ju duhet të shikoni vendosjen
  8. Teli lidhës - të paktën 4 deri në 6 ngjyra për të shmangur konfuzionin, kam përdorur kryesisht tela me matës 28. Shikoni rënien e DC në lidhjet e energjisë LED (si VCC ashtu edhe GROUND … ajo rrymë duhet të kthehet në burim!)
  9. Kodifikues rrotullues-PEC16-4220F-S0024
  10. Dorezë e zbukuruar prej druri - për kodifikuesin rrotullues (unë e mora nga LMII)
  11. Ekran OLED - nga sistemet 4D ekranet OLED
  12. Bateri e jashtme USB - më e lirë gjatë gjithë kohës, plus ju mund të mbani rezervë!
  13. Arduino MICRO
  14. Fletë bronzi - për të bërë pjatën për të mbajtur arduino dhe kornizë për ekranin
  15. Materialet e tjera harxhuese duke përfshirë: letër zmerile, përfundim uretani, shkopinj të shiritit, shirita gome, saldim, fluks, furça, shirit të dyanshëm (më pëlqen shiriti UHC nga 3M) dhe vida të vogla prej druri prej bronzi (për pjatën)
  16. Përmirësime opsionale të Ukulele - akordues më të mirë, tela më të mirë, arrë dhe shalë më të mirë, inlay nëse doni të shfaqni aftësitë tuaja më të këqija)

Hapi 3: Merrni mjetet që ju nevojiten

Herët a vonë do t'ju duhet të merrni ose të keni qasje në këto:

Lista e mjeteve tona përfshin:

  1. Makinë mulliri - preferohet CNC, por mund të kaloni edhe me një ruter dhe shumë fat. Kam përdorur një kombinues CNC/router
  2. Bitet e ruterit - preferohet karabit. Pjesët e ruterit zgjidhen mbi mullinjtë e fundit pasi po përpunojmë dru, jo metal
  3. Kapëse - shumë prej tyre. Më së shumti e nevojshme për të mbajtur pjesë gjatë ngjitjes
  4. Hekuri i saldimit - majë e vogël për saldim në sipërfaqe
  5. Mikroskop ose zmadhues - mund të përpiqeni të lidhni vetëm me sytë tuaj, por nuk do ta rekomandoja, minimumi 10 herë
  6. Piskatore (për vendosjen e pjesëve në vend)
  7. Mjetet e gërryerjes (shikoni mjetet e duhura në LMII këtu, por unë kam përdorur atë që kisha në shtëpi dhe e bëra të mundur; çekiçë, skedarë dhe prerës)
  8. Mjete të ndryshme të dorës, të tilla si daltë druri, kaçavida, goditje të butë ose çekiç me lëkurë të papërpunuar (për tiganisje), etj.
  9. Lëndë gërryese - copëza të ndryshme letre zmerile

Mjetet tona softuerike përfshijnë (disa janë opsionale në varësi të buxhetit/zgjuarsisë suaj):

  1. Softueri Arduino
  2. Kodi burimor Ukulele (https://github.com/conrad26/Ukulele)
  3. Paketa e paraqitjes së PCB - Kam përdorur Altium sepse versioni falas i Eagle nuk e mbështet madhësinë e bordit që doja. Altium është një paketë paraqitjeje me paraqitje të plotë dhe jo në të vërtetë në një gamë çmimesh hobiiste. Unë kam përfshirë skedarët Gerber në faqen time për prototipin, por këto patjetër kanë nevojë për një azhurnim
  4. Softuer i modelimit 3D - kam përdorur SolidWorks, por një alternativë falas është FreeCAD (https://www.freecadweb.org/)
  5. Softueri CAM - si FeatureCAM nga Autodesk për krijimin e skedarit të mullirit NC.

Kombinimi i eksportit të skedarëve me hapa 3D nga Altium së bashku me një model 3D të tabelës fretboard eliminon shumë nga vështirësitë për t'u siguruar që gjithçka përputhet, por nuk është një kërkesë. Paraqitja e kujdesshme do të arrijë të njëjtin rezultat.

Tani që e dimë se çfarë duam të bëjmë dhe çfarë duhet të bëjmë, le të ndërtojmë një Ukulele.

Hapi 4: Mullini Qafën për të Akomoduar Fretboardin e Trashë

Mullini Qafën për të Akomoduar Fretboardin e Trashë
Mullini Qafën për të Akomoduar Fretboardin e Trashë

Para bluarjes, vini re se rrafshina origjinale e sipërfaqes së montimit të fretboardit DUHET të ruhet, ose do të keni një dërrasë të përdredhur, e cila çon në të gjitha llojet e çështjeve me rrafshimin e furrës.

Vetëm mos shkoni atje, merrni kohën tuaj dhe shtrëngoni me kujdes dhe ngurtësi qafën dhe kontrolloni shtrirjen në pjesën e ruterit në të gjithë qafën para prerjes. Koha e kaluar këtu do t'ju kursejë shumë pikëllim më vonë.

Një arsye pse zgjodha një fretboard më të trashë mbi një shtresë në qafë ishte rritja e sipërfaqes së montimit (ngjitjes). Një arsye tjetër është se thjeshton bluarjen e qafës. Ju thjesht gumëzhitni prerë të gjithë sipërfaqen në lartësinë e kërkuar.

Hapi 5: Merrni dhe Ndërtoni PCB që mban LED -të

Merrni dhe Ndërtoni PCB që mban LED
Merrni dhe Ndërtoni PCB që mban LED
Merrni dhe Ndërtoni PCB që mban LED
Merrni dhe Ndërtoni PCB që mban LED

Unë bashkova me dorë të gjithë asamblenë. Paketat LED janë veçanërisht të lehta për tu shkrirë, prandaj kujdesuni që të mos i dëmtoni ato. Unë sugjeroj të vishni një rrip statik, pasi vargu varet nga çdo LED që punon.

Dizajni i Fretboard bazohet në LED -të WS2812B. Vendosa të bëja vetëm oktavën e parë të tabelës (48 LED !!). Çdo LED mund të mendohet si një bit në një regjistër ndërrimi. Regjistri i ndërrimit është i vendosur në 800 kHz. Kam përdorur bibliotekën Adafruit (shiko seksionin e programimit) për t'i vënë gjërat në funksionim shpejt.

Fillova modelimin në Eagle, por madhësia e bordit është e kufizuar në 4 x 5 inç, kështu që më duhej (ose më saktë, zgjodha) të kaloja në Altium. Unë përdor Altium në punë, kështu që në realitet, ai i bëri gjërat më të shpejta për mua. Projekti Altium, skemat dhe skedarët pcb (dhe pjesët e bibliotekës) janë në faqen time. Bordi është në formë trapezoidale dhe i gjatë rreth 10 centimetra. Unë mendoj se duhet të isha përpjekur të ngjeshja skicën pak më shumë (rrotullimi tjetër!) Asambleja nuk ishte e keqe, por nëse mund ta përballoni, unë me të vërtetë rekomandoj një hekur saldimi të mirë (JBC Soldering Ircks) dhe një mikroskop të mirë. Po, jam i prishur dhe jo, nuk kam gjëra të tilla në laboratorin tim. Unë jam i lirë.

Unë kisha bordet e bëra në Sunstone. 129 dollarë për dy dërrasa. Kthesë e garantuar për një javë. Sidoqoftë, mos u shqetësoni për transportin. Unë nuk e vura re që kam përdorur terrenin UPS dhe përfundova duke pritur një javë shtesë për të mbërritur bordet e mia. Koha totale e montimit ishte rreth 2 orë (98 pjesë).

Hapi 6: Mulloni Fretboardin

Image
Image
Vrimat e hyrjes së mullirit në trupin e Ukulele
Vrimat e hyrjes së mullirit në trupin e Ukulele

Ne kemi nevojë të mullisim tabelën për të bërë vrima në vendet e kërkuara dhe për të krijuar xhepa për tabelën dhe LED.

Unë krijova një model 3D të fretboardit të përfunduar në Solidworks dhe krijova rutinën e bluarjes CNC duke përdorur FeatureCAM.

Pjesa e poshtme e tabelës (më e afërt me vrimën e zërit) do të duhet të bëhet më e hollë për të llogaritur ndryshimin e hapit në lartësi midis qafës dhe trupit. Padyshim që ia vlen të përshtateni testin disa herë për të qenë të sigurt se është një përshtatje mjaft e arsyeshme.

Në retrospektivë, unë duhet të kisha prerë pjesët e papërdorura të pllakës për ta bërë atë të përshtatet më mirë me mullirin (fabrika ime e lirë kishte vetëm një udhëtim me boshtin X 12 . Rendi i operacioneve duhet të vendoset në rregullimet e para të trashësisë së mullirit para xhepa mulliri, të cilat duhet të çojnë në më pak plasje midis xhepave.

Bëni rregullime manuale sipas nevojës për të shtuar hapësirë për instalime elektrike. Një gjë e rëndësishme për tu vënë në dukje është se në disa nga xhepat, unë depërtova në vendin ku do të kalojë tela e furrës. Duke pasur parasysh që është një dirigjent, sigurohuni që të mos përfundojë duke shkurtuar ndonjë gjë të rëndësishme. Gjithashtu zvogëlon forcën e materialit që mban furrën në vend. Dizajni duhet të modifikohet që të mos ndërpritet kurrë me një çarë të mërzitur.

Hapi 7: Vrimat e hyrjes në mulli në trupin e Ukulele

Vrimat e hyrjes së mullirit në trupin e Ukulele
Vrimat e hyrjes së mullirit në trupin e Ukulele

I kam bluar me dorë vrimat e hyrjes në trup. Pjesa më e vështirë është gjetja e rajonit "më të sheshtë" të asaj që është një sipërfaqe shumë e lakuar. Shënoni skicën me laps dhe gradualisht fshini materialin derisa të merrni një përshtatje të rehatshme për ekranin OLED. Mora një kornizë prej bronzi të përpunuar dhe e bashkova duke përdorur shirit lidhës 3M VHB.

Meqenëse asnjëri prej tyre nuk kërkon saktësi të madhe, kodifikuesi rrotullues dhe vrimat e panelit të hyrjes janë shumë më të lehta për t'u krijuar.

Hapi 8: Bëni Pllaka Cover

Bëni Pllaka Cover
Bëni Pllaka Cover
Bëni Pllaka Cover
Bëni Pllaka Cover
Bëni Pllaka Cover
Bëni Pllaka Cover

Ju gjithashtu duhet të punoni pllakat e kapakut për kornizën e ekranit dhe panelin e aksesit. Paneli i hyrjes ka nevojë për një vrimë (drejtkëndëshe) për lidhësin USB (mikro). Thjesht përdorni lidhësin ekzistues në Arduino, pasi nuk ka shumë mundësi për montimin e panelit për mikro USB. (megjithëse nëse do të dizajnoja nga e para, atëherë do t'i jepja njërit prej këtyre një vështrim)

Për ta mbajtur tabelën në vend, modaliteti L mbyllet nga tunxhi dhe i lidhni ato në pjesën e pasme të pllakës së hyrjes. Kjo ju lejon disa gjerësi në pozicionimin. Për të marrë pozicionimin e duhur, së pari krijoni një dërrasë montimi të dërrasës (me vrima montimi) për Arduino MICRO dhe ngjitni kllapat L në të duke përdorur 2-56 vida makinerie. Pastaj mund të ndryshoni vendndodhjen për të rreshtuar portën USB dhe të shënoni me saktësi vendet për kllapat në pjatë. Hiqni kllapat nga pllaka e perfit dhe ngjitini ato në vend. Së fundi, montoni montimin e tabelës.

Kam përdorur katër vida të vogla prej druri prej bronzi për të mbajtur panelin e aksesit prej bronzi në vend.

Në këtë pikë unë rekomandoj një përshtatje testimi para fillimit të asamblesë përfundimtare. Ky hap është opsional, por rekomandohet. Farshtë shumë më e lehtë të bësh rregullime para ngjitjes.

Hapi 9: Bashkoni telat në PCB; Lidhni dhe Testoni Elektronikën

Image
Image
Bashkangjit Qafën në Trupin Ukulele
Bashkangjit Qafën në Trupin Ukulele

Mos e lidhni akoma pajisjen elektronike akoma. Bashkangjitni telat në PCB, duke u siguruar që të lini një sasi të mjaftueshme të ngadaltë për të dalë nga vrima e hyrjes. Këto përfundimisht duhet të lidhen përgjithmonë me tabelën Arduino MICRO (fotot tregojnë një Arduino UNO, të cilën e kam përdorur për zhvillimin e kodit)

Hapi 10: Bashkojeni Qafën Trupit Ukulele

Bashkangjitni qafën në trupin e Ukulele duke ndjekur udhëzimet e përfshira me kompletin Ukulele. Veçanërisht shikoni shtrirjen e sipërfaqes së fretboardit në trupin e uke.

Hapi 11: Stërvitni një vrimë hyrëse për të kaluar telat e PCB -së në trup

Stërvitni një vrimë hyrëse për të kaluar telat e PCB -së në trup
Stërvitni një vrimë hyrëse për të kaluar telat e PCB -së në trup

Pasi zamja të jetë tharë, shponi një vrimë 10 1/4 (10mm) në një kënd për të lejuar që telat nga PCB të kalojnë në trupin e Ukulele. Sigurohuni që të mos dëmtoni tabelën e zërit.

Ju gjithashtu mund të keni nevojë të krijoni një xhep të vogël për të lejuar trashësinë e telave nën tabelë (ose opsionalisht vendosni lidhjet në krye dhe përfshini lehtësimin në tabelën e përparme.)

Një tjetër përshtatje testi nuk do të dëmtonte në këtë pikë.

Hapi 12: Rreshtoni dhe ngjitni PCB dhe Fretboard në Qafë

Rreshtoni dhe ngjitni PCB dhe Fretboard në Qafë
Rreshtoni dhe ngjitni PCB dhe Fretboard në Qafë

Unë sugjeroj të mendoni përmes kapjes (dhe ta provoni!) Para se të ngjiteni. Ju mund të dëshironi të krijoni një bllok të formuar në pjesën e poshtme të qafës për t'ju dhënë një sipërfaqe shtrëngimi të sheshtë. Fretboardi është më i madh se qafa në këtë pikë, kështu që ju duhet ta lejoni atë.

Kini shumë kujdes që të mos merrni epoksi në çdo sipërfaqe që dëshironi të përfundoni më vonë. Më mirë akoma aplikoni maskimin në të gjitha sipërfaqet e pa ngjitura para se të ngjiteni për t'u siguruar që shkon vetëm aty ku keni menduar.

Përdorni epoksi me një minimum prej 60 minutash jetë pune … do t’ju nevojiten të gjitha.

Ngjiteni PCB -në në vend së pari, duke u siguruar që zamja e tepërt të mos dalë në sipërfaqen e ngjitjes së fretboardit. Kjo siguron një metodë për të lidhur tabelën me qafën. PCB ka një përfundim të lëmuar të maskës së saldimit, kështu që e shpëlava me pak letër zmerile për t'i dhënë epoksisë një përfundim pak të përmirësuar të sipërfaqes.

Rreshtoni dhe ngjiteni tabelën në qafë. Kini kujdes të mos lini xhepa që më vonë mund të bëhen tingëllues (gumëzhimë!). Gjithashtu kini kujdes që të mos merrni zam në sipërfaqet LED.

Pasi zamja të jetë tharë, mund të dëshironi të lidhni dhe testoni elektronikën edhe një herë. Një LED i keq do t'ju bëjë të urreni jetën. Unë kisha një LED të keq (të parin!) Në prototip dhe më duhej të bëja disa punime druri krijuese për të hyrë në LED të dëmtuar dhe për ta rregulluar atë pastër.

Hapi 13: Niveloni skajet e Fretboard në Qafë dhe Shtoni Tela Fret

Pasi zamja të jetë tharë, mund të filloni të përfundoni skajet. I hoqa me kujdes materialin e tepërt të fretboardit (duke përdorur një mulli) dhe e përfundova milimetrin e fundit me lëmim me dorë.

Shtimi i telave të furrës mund të bëhet thjesht me një çekiç (me një fytyrë plastike për të shmangur dëmtimin). Vetëm mos çekiç shumë fort. Nëse e keni lidhur telin e furrës me lojëra elektronike, ato duhet të futen pa shumë vështirësi.

Gjëja për të cilën duhet të shikoni është thyerja e sipërfaqes së hollë të xhepit LED. Në prototip, unë i lejova disa xhepa LED (pranë furrës së 12 -të, ku hapësira ngushtohet) të shtrihen në vendin e furrës. Kjo është një ide e keqe, pasi kjo krijon një pikë të dobët që mund (dhe u plas) sapo të futet tela e furrës.

Hapi 14: Aplikoni maskimin dhe aplikoni Finish në Ukulele

Maskoni tabelën (nuk përfundon) dhe zonën e ngjitjes së urës dhe filloni të aplikoni përfundimin.

Kur maskoni zonën e urës, lexoni udhëzimet me kompletin tuaj, pastaj kontrolloni dy herë gjatësinë e shkallës vetëm për t'u siguruar. Kompleti që kam përdorur për prototipin ka përdorur gjatësinë e gabuar të shkallës dhe kështu ka dhënë dimensionet e gabuara për gjetjen e urës (por kishte një shënim për të kontrolluar uebfaqen për udhëzimet më të fundit!). Zorra ime më tha se ishte e gabuar, por unë pranova verbërisht autoritetin.

Alwaysshtë gjithmonë më mirë të kuptosh PSE po bën diçka, në vend që të ndjekësh verbërisht udhëzimet.

Për të përfunduar, ka shumë mësime nga Luthiers të cilët e dinë se çfarë po bëjnë në internet, kështu që unë rekomandoj që t'i konsultoni ata para se të hidheni në procesin e përfundimit.

Unë, natyrisht, nuk e bëra këtë, kështu që përfundova duke përdorur vulën e gabuar, duke rezultuar në një sipërfaqe shumë të trashë. Mos e bëj këtë.

Bej detyrat.

Hapi 15: Rreshtoni dhe Bashkoni Urën

Rreshtoni dhe lidhni Urën
Rreshtoni dhe lidhni Urën

Ky hap është mjaft i drejtpërdrejtë, por përsëri, planifikoni metodën tuaj të fiksimit dhe provojeni paraprakisht para ngjitjes. Kam përdorur një zam standard të drurit për të lidhur urën.

Hapi 16: Instaloni Elektronikë dhe Test

Instaloni elektronikë dhe provë
Instaloni elektronikë dhe provë

Tani është koha për t'i bërë instalimet tuaja të bukura. Plus që ju nuk dëshironi që ajo të fluturojë brenda trupit dhe të bëjë zhurma gumëzhimore ose më keq akoma të thyhet në skenë.

Kodi Arduino mund të përditësohet përmes portës USB, kështu që me të vërtetë nuk ka nevojë ta ndani nëse nuk doni të ngatërroni.

Hapi 17: Instaloni Tuners dhe String the Instrument

Image
Image
Programimi i Uke
Programimi i Uke

Ju gjithashtu ka të ngjarë të keni nevojë të rregulloni grindjet dhe të luani pak me konfigurimin, por pse të shqetësoheni tani, kur jeni kaq afër fundit?

Kam përmirësuar akorduesit dhe kam përdorur tela të bukur Aquila, të cilët nuk e kanë ndihmuar fare tingullin. Pra, mbajeni këtë në mend ndërsa po grumbulloni para për një projekt ukulele…

Hapi 18: Programimi i Uke

Kodi përfundimtar Arduino është në Github. Ka disa rreshta në kod për të mbështetur përmirësimet e ardhshme (si një funksion metronome dhe "rrëshqitës" për ekranin (një element UI që duket si një rrëshqitës)

Ky kod përdor një Bibliotekë Rotary Encoder (Rotary Encoder Arduino Library) për të trajtuar hyrjen e përdoruesit nga Rotary Encoder.

Ai gjithashtu përdor bibliotekën Adafruit Neopixel dhe kodin shembull të vendosur këtu. Mënyrat e teatrit dhe ylberit rrjedhin nga shembujt e dhënë me bibliotekën. (shih strandtest.ino).

Drejtuesi i ekranit sigurohet nga sisteme 4D dhe gjendet në Github këtu.

Ekzistojnë dy funksione unike të zbatuara për projektin Ukulele. E para zbaton bibliotekën e akordeve, dhe e dyta shfaq një mesazh teksti që lëviz duke përdorur një grup karakteresh të personalizuar.

Diagrami i bashkangjitur tregon vendndodhjet LED të fretboardit dhe mënyrën e lidhjes së tyre. LED 0 është e vendosur në këndin e sipërm të djathtë.

Hapi 19: Si të shfaqni një akord

Si të shfaqni një akord
Si të shfaqni një akord

Funksioni displayChord shfaq pozicionet e gishtërinjve (pozicioni i parë vetëm tani për tani) për secilën akord. Akordet e zgjedhura nga përdoruesi (shënimi dhe cilësia e rrënjës) ruhen si një palë indekse. Këto nga ana tjetër përdoren për të kërkuar gishtërinjtë për secilën akord.

Kam përdorur shënimin "GCEA" për të ruajtur akordet (p.sh. "A" është "2100"). Akordet llogariten paraprakisht për secilën shënim rrënjë dhe ruhen në një ndryshore që korrespondon me cilësinë e akordit. (pra, A major, ruhet në vendndodhjen e parë të grupit "majorChords", që korrespondon me "2100").

char* majorChords = {"2100 / n", "3211 / n", "4322 / n", "0003 / n", "1114 / n", "2220 / n", "3331 / n", " 4442 / n "," 2010 / n "," 3121 / n "," 0232 / n "," 5343 / n "};

Vini re se meqenëse ky është një varg teksti, çdo shifër mund të përfaqësojë një vlerë gjashtëkëndëshe për të llogaritur pozicionet më të mëdha se 9. Kjo do të thotë, A dhe B do të përfaqësonin LED 10 dhe 11. Për akordet e pozicionit të parë, kjo nuk ishte një çështje) Me

Vargu LED lidhet për së gjati në rreshtat prej 12 (një oktavë) përgjatë secilit varg (duke filluar me vargun A), vrapimi i mëvonshëm prej 12 fillon në furrën e parë të vargut tjetër (shiko diagramin në hapin 18). Kjo është e rëndësishme për algoritmin për të përcaktuar se cilat drita të ndizen për një akord të caktuar. Kjo do të thotë që pikselët 0 deri në 11 janë LED të vargut A, 12 deri në 23 janë LED të vargut E, etj. Kur analizoni një A = "2100" (ruhet si një varg, ka edhe një terminal null "\ n" në kod), ne e interpretojmë atë si: asnjë piksel në vargun A nuk ndizet, as në vargun E, piksel 0 (fret 1) në vargun C është ndezur dhe pixel 1 (shqetësim 2) në vargun G. Vini re se një "0" është fikur, jo LED i parë. Bazuar në instalimet elektrike, ne duam të ndezim LED -të 24 dhe 37. Kodi për të shfaqur një akord është treguar më poshtë.

për (int i = 0; i <4; i ++) {if (int (korda - '0')) {// algoritmi për të analizuar vargun e akordit int ledNumber = int (korda - '0') + (3 - i) * 12 - 1; // shiko diskutimin e mësipërm, (3-i) është të kthejë indeksin strip.setPixelColor (ledNumber, 0, 125, 125); // setPixelColor (ledNumber, vlera e kuqe, vlera jeshile, vlera blu)}}

Deklarata if kontrollon nëse led është e fikur. Nëse nuk është, atëherë merr vlerën ascii të karakterit, akordit , dhe zbret vlerën ascii për '0' për të marrë numrin ledNumber.

strip është një shembull i klasës Adafruit_NeoPixel. Funksioni setPixelColor vendos ngjyrën për pikselin e llogaritur (fiksuar në (0, 125, 125) në këtë rast.

Hapi 20: Si të shfaqni një mesazh rrotullues

Si të shfaqni një mesazh rrotullues
Si të shfaqni një mesazh rrotullues

Pra, ne kemi një grup LED 12 x 4 … pse të mos e bëjmë atë të shfaqë diçka tjetër përveç modeleve mjaft të rastësishme të dritës!

Çështja e parë është se lartësia e ekranit (4) është mjaft e kufizuar për shkak të numrit të vargjeve në një Uke. Lëvizja horizontale do të ishte kryesisht e palexueshme, por në orientime vertikale, ne mund të mbështesim 4 x 5 karaktere që funksionojnë vertikalisht.

Organizimi i karaktereve si pesë rreshta "vertikalë" do të thotë që dy karaktere mund të shfaqen njëkohësisht duke lejuar një hapësirë një vijë midis secilit karakter.

Vështirësia ishte se nuk kishte asnjë grup standard 4 x 5 karakteresh. Unë e bëra vetë duke përdorur tabelën e bashkangjitur. I caktova çdo rresht një vlere të vetme gjashtëkëndore (4 bit që përfaqësojnë se cili piksel është i ndezur ose i fikur). Kombinimi i pesë vlerave gjashtëkëndore përbëjnë një karakter (p.sh. "0" është 0x69996).

Vlerat për secilin karakter ruhen në një grup në rendin ASCII. Grupi i personazheve bën disa kompromise me shkronja të caktuara, por shumica në mënyrë të arsyeshme të qartë. (shkarravitja në fund të tabelës janë idetë me të cilat po luaja pasi kemi ngjyrën si opsion, mund t'i shtojmë "thellësi" karakterit dhe ndoshta të marrim një rezolutë shtesë.

Vargu që shfaqet përmbahet në variablin e vargut, mesazhin.

Krijohet një tampon për të përfaqësuar shfaqjen e karaktereve. Unë mendoj se thjesht mund të kem krijuar një tampon të madh me të gjithë sekuencën e përkthyer të mesazheve, veçanërisht pasi shumica e mesazheve do të jenë më pak se 20 karaktere ose më shumë. Sidoqoftë, unë zgjodha në vend që të krijoja një tampon fiks me tre karaktere (18 bajt). Vetëm dy nga personazhet shfaqen në mënyrë aktive, dhe e treta është një vështrim përpara, ku ngarkohet personazhi tjetër. Vargu LED (mendojeni si një regjistër i madh ndërrimi) është i ngarkuar me 48 bit për vargun. Kam humbur një hapësirë të kujtesës për ta bërë këtë më të lehtë për t’u konceptuar. Çdo gërvishtje merr vendndodhjen e saj të kujtesës, duke dyfishuar kërkesën e kujtesës, por nuk është shumë e dhënë me madhësinë e tamponit.

Tamponi ngarkohet me karakterin tjetër kur indeksi i daljes (treguesi) arrin në kufirin e karakterit (outputPointer në 5, 11, ose 17).

Për të ngarkuar tamponin, ne kapim karakterin e parë në "mesazh" si një vlerë ASCII dhe zbresim 48 për të marrë indeksin në grupin asciiFont. Vlera në atë indeks ruhet në kodin Char.

Pjesa e parë e mesazhit të zhvendosur korrespondon me LED 47, 35, 23 dhe 11 (pjesa e poshtme e ekranit). Pra, për numrin zero 0x0F999F, F (e majta) zhvendoset në të parën, 9 sekondën dhe kështu me radhë.

Karakteri tjetër ngarkohet duke maskuar çdo gërvishtje dhe duke e zhvendosur atë në të djathtë. Për shembullin e mësipërm, algoritmi jep (0x0F999F & 0xF00000) >> 20, pastaj (0x0F999F & 0x0F0000) >> 16, etj.

indeksi int; if (outputPointer == 17 || outputPointer == 5 || outputPointer == 11) {char displayChar = message.charAt (messagePointer); // kapni karakterin e parë të mesazhit të koduar gjatëChar = asciiFont [displayChar - 48]; nëse (displayChar == 32) koduarChar = 0x000000; messageBuffer [bytePointer+5] = bajt ((koduarChar & 0xF00000] >> 20); // maskoni të gjithë përveç gërvishtjes së fundit dhe zhvendoseni atë me 20 (e kështu me radhë) messageBuffer [bytePointer+4] = bajt ((koduarChar & 0x0F0000] >> 16); // kjo duhet të vendosë një zhurmë për vendndodhjen e kujtesës messageBuffer [bytePointer+3] = bajt ((koduarChar & 0x00F000] >> 12); // të gjashtë përfaqësojnë karakterin messageBuffer [bytePointer+2] = bajt ((koduarChar & 0x000F00) >> 8); messageBuffer [bytePointer+1] = bajt ((koduarChar & 0x0000F0) >> 4); messageBuffer [bytePointer] = bajt ((koduarChar & 0x00000F)); nëse (bytePointer == 0) {// trajtoni lakun rreth bytePointer bytePointer = 12; } else {bytePointer -= 6; // ne po mbushim nga poshtë lart; SH NOTNIM: duhet të shikoni mbrapsht këtë për të parë nëse e bën më të lehtë} nëse (messagePointer == message.length ()-1) {// trajtoni lakin rreth mesazhit mesazhPointer = 0; } else {messagePointer += 1; // kalo te karakteri tjetër}}

Pasi të jetë ngarkuar tamponi, bëhet çështje e gjurmimit se ku është treguesi i daljes dhe ngarkimi i vargut LED me 48 bitët e duhur (4 aktualët dhe 44 të mëparshmit). Siç u përmend më herët, strip është një shembull i klasës NeoPixel dhe setPixelColor përcakton ngjyrën (RGB) të çdo pixel. Funksioni show () zhvendos vlerat e ekranit në vargun LED.

// lak për të zhvendosur vazhdimisht jashtë tampon

// dua të shkruaj të gjithë shiritin në çdo kalim nëpër lak, vetëm vendndodhja fillestare ndryshon për (int row = 12; row> 0; row--) {index = outputPointer + (12-rresht); nëse (indeksi> 17) indeksi = outputPointer+(12-rresht) -18; // lak nëse është më i madh se 17 për (kolona int = 4; kolona> 0; kolona--) {strip.setPixelColor (uint16_t (12*(kolona-1)+(rreshti-1)), uint8_t (RedLED*(bitRead (messageBuffer [indeksi], kolona-1))), uint8_t (GreenLED*(bitRead (messageBuffer [index], column-1)))), uint8_t (BlueLED*(bitRead (messageBuffer [index], column-1)))); // në çdo vend ndizni LED nëse biti është një}} // outputPointer tregon bajtin aktual më të ulët në vargun e ekranit nëse (outputPointer == 0) outputPointer = 17; else outputPointer -= 1; shirit.shfaq (); }

Hapi 21: Hapni botën me magjinë tuaj Ukulele

Image
Image

Prototipit përfundimtar të Ukulele iu deshën rreth 6 muaj nisje dhe ndalesa për tu nisur.

Shumë teknologji të reja për të mësuar dhe ndoshta disa teori të përpunimit të drurit dhe muzikës për të filluar!

Çfarë duhet të bëni për versionin tjetër?

  1. Hiqni qafe ekranin dhe kodifikuesin rrotullues. Zëvendësojini ato me një modul Bluetooth të bashkangjitur në arduino. Kontrolloni atë nga distanca duke përdorur një telefon ose tabletë. Gjithçka është më mirë me Bluetooth.
  2. Përditësoni në distancë modelet e akordit në kohë reale. Diçka më e mirë mbetet për aplikacionin.
  3. Mbulesa LED. Versioni aktual nuk bën asgjë për të parandaluar që arma të mos futet në vrimat LED. Një mik bëri një mori lentesh të vogla, por unë kurrë nuk mund të kuptoja se si t'i bëja ato të qëndrojnë në vend siç duhet.
  4. Materialet alternative të fretboardit, ndoshta diçka e qartë për aq kohë sa mbajnë furrat.
  5. Më shumë drita! Eliminoni kufizimin në tekst duke shtuar më shumë "rreshta". Ky është me të vërtetë një kufizim i shkaktuar nga madhësia e tabelës së përparme dhe trupave LED.

Përsëri, shihni udhëzuesin shoqërues i cili përshkruan grupin e karaktereve që duhej të krijoja për të lejuar lëvizjen e tekstit.

Faleminderit shumë që e arritët deri këtu! Mahalo!

Recommended: