INHOUDSOPGAWE:
- Stap 1: Deellys
- Stap 2: I2C -protokol
- Stap 3: Berei u motors voor
- Stap 4: Monteer motors op die handskoene
- Stap 5: Koppel die LCD aan
- Stap 6: Opstelling L293D
- Stap 7: Verbind u Arduino met die opstelling van L293D
- Stap 8: Kode vir beide Arduinos
- Stap 9: Skakel dit aan
- Stap 10: 'n paar bykomstighede
Video: Haptiese fluitonderwyser: 10 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:26
Is u al ooit moeg daarvoor om die vingers vir 'n hoë B -woonstel te vergeet en u in die verleentheid te stel voor u mede -orkeslede? Geen? Net ek? Om my te help om my fluitvingers te memoriseer (in plaas van te oefen), het ek 'n Haptic Flute Teacher gebou om my te help onthou hoe ek elke noot moet speel. Nadat ek hierdie artikel oor 'n haptiese klavieronderwyser gelees het, het ek probeer om een vir 'n fluit te maak. Ek het twee Arduino's, 'n paar gonsers en baie drade gebruik om hierdie ding lewendig te maak. Die Haptic Flute Teacher ken die vingers vir al die note op die fluit (insluitend flats en skerpe) en kan jou leer hoe om die chromatiese toonleer te speel! Om hierdie fluitonderwyser te gebruik, trek u die handskoene aan en kies dan die noot of liedjie op die LCD deur op 'n knoppie te druk. As die gewenste noot of liedjie vertoon word, druk die ander knoppie en die vingers wat u op die fluit sal druk, begin vibreer, wat u die vinger wys. Deur elke vinger te vibreer, is die idee dat die vinger vir die noot spiergeheue sou word. Hierdie projek is hoofsaaklik bedoel vir mense wat 'n bietjie weet hoe om fluit te speel en hulp nodig het om vingers vir notas en liedjies te memoriseer. Hierdie projek kan ook diegene help wat nie veel koördinasie of handbeserings het nie, waar hulle nie kan stilhou nie. Voordat u hierdie projek aanpak, moet u die basiese beginsels van Arduino en 'n paar stroombane ken. Met die intro uit die pad, kom ons by die bouproses!
Stap 1: Deellys
Nodig:
2 Arduino's
Broodplanke
LCD -skerm - om die noot/liedjie te vertoon
2 drukknoppies - om te kies watter noot/liedjie jy wil speel
Drade
10 vibrerende motors - om aan die handskoene vas te plak
'N Paar handskoene - om die motors te monteer
2 330 ohm weerstande
1 10k potensiometer
3 L293D -skyfies
Opsioneel:
1 Passiewe gonser
'N Boks om die elektronika te huisves terwyl u oefen
Gereedskap:
Warm gom geweer
Soldeerbout
Band
Draadstroppers
Jou brein (die belangrikste)
Stap 2: I2C -protokol
Aangesien ons met tien motors te doen het en die Arduino slegs die snelheid van die motors met PWM -penne kan beheer, benodig ons meer as een Ardunio om al tien motors te beheer. Elke Arduino het ongeveer 6 PWM -penne, dus as ons twee Arduino's verbind, het ons 'n totaal van 12 PWM -penne. Om die twee Arduinos te verbind, gebruik ons die I2C -protokol. Eenvoudig gestel, dit is 'n manier om 'n "meester" Arduino te laat beheer oor die ander "slaaf" Arduinos deur data deur die drade te stuur. Kyk na my fritzing -diagram om die I2C -protokol op te stel. Koppel A4, A5 en GND van die twee Arduino's. In die kode stuur die meester Arduino 'n waarde deur die drade en die slaaf Arduino ontvang dit. Afhangende van wat die waarde is, voer die slaaf Arduino 'n ander taak uit. As ek byvoorbeeld 'n lae C op my fluit wil speel, stuur die meester Arduino die waarde vir lae C deur die drade (terwyl ek ook vertel watter vingers aan die regterhand moet vibreer) om die slaaf Arduino te vertel om die vingers te laat gons vir lae C. Hier is meer inligting oor I2C -protokol.
Stap 3: Berei u motors voor
Hierdie motors is goedkoop en redelik sleg. Die drade val maklik uit die motor en maak dit nutteloos. Om 'n stuk warm gom te plaas, moet die draad met die motor verbind word. Trek dan die dun drade van die motor versigtig af en soldeer beter drade aan die motordrade. Dit is goed as een gebrekkig is, of as u een breek, want as u op die fluit speel, is daar geen sleutel vir u regterduim nie, dus benodig u slegs 9 motors.
Stap 4: Monteer motors op die handskoene
Trek eers die handskoene aan en maak seker dat hulle pas. Hou dit aan en gryp u motors. Vind 'n plek waar die vibrerende motors gemaklik pas en die ente sonder hindernis draai. Gryp dan 'n bietjie warm gom en terwyl die handskoen op u hand is (of nie as u nie die hitte kan hanteer nie), plak die motors op die gewenste plek op u vinger vas. Neem dan die goeie drade waarop u gesoldeer het en plak dit op die lengte van die handskoen sodat hulle nie verstrengel raak nie. Neem dan 'n paar langer drade wat uiteindelik met die Arduino verbind kan word (maak seker dat hulle lank genoeg is sodat u vrylik kan rondbeweeg as hulle aan die Arduino gekoppel is (waarskynlik om die armlengte)) en soldeer hulle aan die drade wat aan die motor gekoppel is.. Draai die twee drade van elke motor saam sodat jy weet watter drade elke motor beheer. Noudat u die motors en handskoene opgestel het, sal ons die stuurhub vir die motors op die broodbord opstel.
Stap 5: Koppel die LCD aan
Daar is verskillende stap-vir-stap gidse wat u wys hoe u 'n LCD aan 'n Arduino kan koppel. Hier is 'n skakel na die Arduino -webwerf wat u vertel hoe u dit kan aansluit. Die probleem met die Arduino -webwerf is dat die handleiding die PWM -penne gebruik vir die LCD wat ons nodig het om die motors te beheer. Ek het dus verander na watter penne die LCD koppel, sodat ek die PWM -penne vir die motors kan losmaak. Kyk na my diagram vir wat ek gedoen het. Hier is spesifiek wat ek verander het: rs = 7, en = 11, d4 = 5, d5 = 8, d6 = 12, d7 = 13. Jy gebruik die 10k -pot vir die LCD -skerm. Maak seker dat u die LCD aan die meester Arduino koppel, nie aan die slaaf Arduino nie.
Stap 6: Opstelling L293D
Ok, hierdie skyfies is motorbestuurders. Elke bestuurder kan 2 motors bestuur, met die vermoë om die motor se rigting in die kode om te keer. Vir my doeleindes het ek baie motors en nie veel ruimte nie. Aangesien dit nie saak maak in watter rigting die motor draai nie (dit gons, ongeag die manier waarop dit draai), het ek die een kant van elke motor aan die grond gekoppel en die ander aan die uitsetpen van die motorbestuurder, sodat die chip 4 motors in plaas daarvan kon beheer van 2. Kontroleer my bedradingsdiagram hierbo hoe ek dit kan opdra. Ek het ook die datablad bygevoeg vir meer inligting oor wat elke pen op die L239D -chip doen. Laat die invoerpenne vir eers leeg, want ek behandel dit in die volgende stap.
Stap 7: Verbind u Arduino met die opstelling van L293D
Neem nou u drie komponente (die handskoen met motors, die L293D-opstelling en die LCD-skerm met 2 Arduino's) en koppel dit aan mekaar. Die meester Arduino beheer die motors aan u regterhand en die slaaf Arduino beheer die motors aan u linkerhand. Op die master Arduino verbind: Rpointer -motor na pen 3; Middel = 10; Rring = 9; Rpinky = 6. Vir die slaaf Arduino verbind: Lpointer = pen 11; Middel = 10; Lring = 9; Lpinky = 6; Lthumb = 5. Die drade van die Arduino verbind met die pen van die L293D langs die pen waarmee die motor gekoppel is. Kyk na my presisie vir die presiese plekke. U moet ook u knoppies hier opstel. Dit moet vinnig opgestel word, volg my fritzing. Ek het 330 ohm weerstande vir die knoppies gebruik. Koppel die een aan pen 2 en die ander aan pen 4, beide op die master Arduino. Die een wat met pen 2 gekoppel is, kies die noot en die een wat met pen 4 gekoppel is, laat die motors tril vir die noot wat op die LCD vertoon word.
Stap 8: Kode vir beide Arduinos
Ons benodig twee afsonderlike stelle kode vir elke Arduino. Ek het dit na my GitHub opgelaai. Hulle het elkeen die name van die Arduino waarop hulle veronderstel is om opgelaai te word. Maak seker dat u deur my kode kyk. As u vrae het, moet hulle daar beantwoord word.
Stap 9: Skakel dit aan
Aangesien die motors baie krag gebruik, het ek 2 9V -batterye gebruik om dit aan te dryf. Dit is waarskynlik nie die beste nie, maar dit het vir my gewerk. Koppel die vin van beide Arduino aan die kragrails van die broodborde en verbind die grond van die meester met die relings van die broodborde. En nou is u gereed om u fluit te oefen!
Stap 10: 'n paar bykomstighede
In my kode het u moontlik opgemerk dat ek 'n paar reëls kommentaar gelewer het. Hierdie reëls is om die fluitonderwyser saam met u deur 'n passiewe zoemer te laat speel. Ek het nie 'n gonser nie, so ek het die funksie net bygevoeg net as iets cools. Los my kode eenvoudig op en voeg 'n zoemer by 'n oop pen op die Arduino. Nou het jy 'n speel saam juffrou!
Plaas die elektronika in 'n boks of sak om u fluitonderwyser draagbaar te maak!
U kan meer liedjies programmeer! Aangesien ek elke noot as 'n metode het, kan u eenvoudig 'n ander voorwaarde in my skakelstelsel byvoeg en die volgorde van die note van die liedjie wat u wil speel, plaas. Om die tydsberekening te verander, verander die vertraging tussen elke noot.
Laat weet my as u vrae of kommer het in die kommentaar hieronder. Gelukkige fluitspel!
Aanbeveel:
Haptiese kompasgordel: 9 stappe
Haptiese kompasgordel: 'n Arduino -aangedrewe gordel wat na die noorde vibreer. Die menslike waarneming was nog altyd beperk tot ons biologiese sintuie, maar wat as ons dit kon verander? In die natuur is daar diere met die vermoë om magnetiese velde, barometriese druk, ambi
Haptiese skoene vir gesiggestremdes: 12 stappe
Haptiese skoene vir gesiggestremdes: Daar is meer as 37 miljoen siggestremdes oor die hele wêreld. Die meeste van hierdie mense gebruik 'n kierie, stok of is afhanklik van 'n ander persoon om te pendel. Dit verminder nie net hul selfafhanklikheid nie, maar benadeel dit ook in sommige gevalle
WalabotEye - Object Tracker met Haptiese terugvoer: 11 stappe
WalabotEye - Objekttracker met haptiese terugvoer: Gebruik dit vir die swaarkry om 'n beter begrip van die wêreld om u te hê
Haptiese handskoen vir blindes: 7 stappe
Haptiese handskoen vir blindes: Die Haptic -handskoen is 'n toestel vir blindes en/of gesiggestremdes wat die draer inligting gee oor hindernisse in hul onmiddellike omgewing. Die handskoen gebruik twee ultrasoniese sensors wat die afstand en oriëntasie van voorwerpe aanmeld
Haptiese tekenrobot: 5 stappe (met foto's)
Haptic Drawing Robot: As deel van my meestersgraad by die dep. Industriële ontwerp aan die Universiteit van Eindhoven, ek het 'n haptiese tekenapparaat geskep wat gebruik kan word om 'n semi-outonome motor deur die verkeer te navigeer. Die koppelvlak word gekrabbel genoem en laat die gebruiker