Inhoudsopgave:
- Stap 1: Onderdelenlijst
- Stap 2: I2C-protocol
- Stap 3: Bereid uw motoren voor
- Stap 4: Montage van motoren op de handschoenen
- Stap 5: Sluit het LCD-scherm aan
- Stap 6: L293D instellen
- Stap 7: Uw Arduino aansluiten op L293D Set-Up
- Stap 8: code voor beide Arduino's
- Stap 9: aanzetten
- Stap 10: enkele extra's
Video: Haptische fluitleraar: 10 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
Ben je het ooit zat om de vingerzetting voor een hoge Bes te vergeten en jezelf in verlegenheid te brengen in het bijzijn van je mede-bandleden? Nee? Alleen ik? Om me te helpen mijn fluitvingerzettingen te onthouden (in plaats van te oefenen), heb ik een haptische fluitleraar gebouwd om me te helpen herinneren hoe ik elke noot moet spelen. Na het lezen van dit artikel over een haptische pianoleraar, probeerde ik er een te maken voor een fluit. Ik heb twee Arduino's, een paar zoemers en een heleboel draden gebruikt om dit ding tot leven te laten komen. De Haptic Flute Teacher kent de vingerzettingen van alle noten op de fluit (inclusief flats en kruizen) en kan je leren hoe je de chromatische toonladder speelt! Om deze fluitleraar te gebruiken, trek je de handschoenen aan en selecteer je vervolgens de noot of het nummer op het LCD-scherm door op een knop te drukken. Wanneer de gewenste noot of het gewenste nummer wordt weergegeven, drukt u op de andere knop en de vingers die u op de fluit zou indrukken, beginnen te trillen en laten u de vingerzetting zien. Door elke vinger te laten trillen, is het de bedoeling dat de vingerzetting voor de noot spiergeheugen wordt. Dit project is vooral bedoeld voor mensen die enigszins weten hoe ze fluit moeten spelen en hulp nodig hebben bij het onthouden van vingerzettingen voor noten en liedjes. Dit project kan ook mensen helpen die niet veel coördinatie- of handblessures hebben waarbij ze dingen niet stil kunnen houden. Voordat u dit project probeert, moet u ervoor zorgen dat u de basis van Arduino en een aantal circuits kent. Nu de intro uit de weg is, gaan we naar het bouwproces!
Stap 1: Onderdelenlijst
Vereist:
2 Arduino's
Breadboards
LCD-scherm - om de noot/het nummer weer te geven
2 drukknoppen - om te kiezen welke noot/liedje je wilt spelen
Draden
10 vibrerende motoren - om aan de handschoenen te lijmen
Een paar handschoenen - om de motoren te monteren
2 330 ohm Weerstanden
1 10k Potentiometer
3 L293D-chips
Optioneel:
1 passieve zoemer
Een doos om de elektronica in te huisvesten terwijl je oefent
Gereedschap:
Heet lijmpistool
Soldeerbout
Plakband
Draadstrippers
Je hersenen (de belangrijkste)
Stap 2: I2C-protocol
Aangezien we te maken hebben met tien motoren en de Arduino alleen de snelheid van de motoren kan regelen met PWM-pinnen, hebben we meer dan één Ardunio nodig om alle tien motoren te besturen. Elke Arduino heeft ongeveer 6 PWM-pinnen, dus als we twee Arduino's aansluiten, hebben we een totaal van 12 PWM-pinnen. Om de twee Arduino's met elkaar te verbinden gebruiken we het I2C-protocol. Simpel gezegd, dit is een manier om één "master" Arduino andere "slave" Arduino's te laten besturen door gegevens door de draden te sturen. Kijk naar mijn fritzing-diagram om het I2C-protocol in te stellen. Sluit A4, A5 en GND van de twee Arduino's aan. In de code stuurt de master Arduino een waarde door de draden en de slave Arduino ontvangt deze. Afhankelijk van wat de waarde is, voert de slave Arduino een andere taak uit. Als ik bijvoorbeeld een lage C op mijn fluit wil spelen, stuurt de master Arduino de waarde voor lage C door de draden (terwijl hij ook vertelt welke vingers van de rechterhand moeten trillen) om de slave Arduino te vertellen dat de vingers zoemen voor lage C. Hier is meer informatie over het I2C-protocol.
Stap 3: Bereid uw motoren voor
Deze motoren zijn goedkoop en behoorlijk slecht. De draden zullen gemakkelijk uit de motor vallen en ze onbruikbaar maken. U wilt een klodder hete lijm aanbrengen op de plaats waar de draad op de motor is aangesloten om ze vast te zetten. Strip vervolgens voorzichtig de dunne draden van de motor en soldeer betere draden aan de motordraden. Het is oké als er een defect is of als je er een breekt, want als je op de fluit speelt, is er geen sleutel voor je rechterduim, dus je hebt maar 9 motoren nodig.
Stap 4: Montage van motoren op de handschoenen
Trek eerst de handschoenen aan en zorg dat ze passen. Houd ze aan en pak je motoren. Zoek een plek waar de vibrerende motoren comfortabel passen en de uiteinden ongehinderd kunnen ronddraaien. Pak dan wat hete lijm en terwijl de handschoen aan je hand zit (of niet als je de hitte niet aankan) lijm je de motoren op de gewenste plek op je vinger. Neem vervolgens de goede draden die je hebt gesoldeerd en lijm deze op de lengte van de handschoen zodat ze niet in de knoop raken. Neem dan wat langere draden die uiteindelijk op de Arduino zullen worden aangesloten (zorg ervoor dat ze lang genoeg zijn zodat je vrij kunt bewegen wanneer ze op de Arduino zijn aangesloten (waarschijnlijk op armlengte)) en soldeer die aan de draden die op de motor zijn aangesloten. Draai de twee draden van elke motor samen zodat u weet welke draden elke motor aansturen. Nu je de motoren en handschoen hebt ingesteld, gaan we de besturingshub voor de motoren op het breadboard instellen.
Stap 5: Sluit het LCD-scherm aan
Er zijn verschillende stapsgewijze handleidingen die u laten zien hoe u een LCD-scherm aansluit op een Arduino. Hier is een link naar de Arduino-website die je vertelt hoe je het moet aansluiten. Het probleem met de Arduino-website is dat de tutorial de PWM-pinnen gebruikt voor het LCD-scherm die we nodig hebben om de motoren te besturen. Dus veranderde ik op welke pinnen het LCD-scherm is aangesloten, zodat ik de PWM-pinnen voor de motoren kon vrijmaken. Controleer mijn diagram voor wat ik deed. Specifiek, hier is wat ik heb gewijzigd: rs = 7, en = 11, d4 = 5, d5 = 8, d6 = 12, d7 = 13. Je gebruikt de 10k-pot voor het LCD-scherm. Zorg ervoor dat u het LCD-scherm aansluit op de master Arduino en niet op de slave Arduino.
Stap 6: L293D instellen
Ok, dus deze chips zijn motordrivers. Elke bestuurder kan 2 motoren besturen, met de mogelijkheid om de richting van de motor in de code om te keren. Voor mijn doeleinden heb ik veel motoren en niet veel ruimte. Omdat het niet uitmaakt op welke manier de motor draait (hij zoemt ongeacht de manier waarop hij draait), heb ik het ene uiteinde van elke motor op aarde aangesloten en het andere op de uitgangspen van de motordriver, waardoor de chip in plaats daarvan 4 motoren kan besturen van 2. Bekijk mijn bedradingsschema hierboven hoe je ze moet aansluiten. Ik heb ook de datasheet toegevoegd voor meer informatie over wat elke pin doet op de L239D-chip. Laat de invoerpinnen voorlopig leeg, want dat zal ik in de volgende stap behandelen.
Stap 7: Uw Arduino aansluiten op L293D Set-Up
Neem nu je drie componenten (de handschoen met motoren, L293D-opstelling en LCD-scherm met 2 Arduino's) en verbind ze met elkaar. De master Arduino bestuurt de motoren aan je rechterhand en de slave Arduino bestuurt de motoren aan je linkerhand. Sluit op de master Arduino aan: Rpointer-motor op pin 3; Rmidden = 10; Ring = 9; Rpinky = 6. Voor de slave Arduino connect: Lpointer = pin 11; Lmidden = 10; Lring = 9; Pinky = 6; Lthumb = 5. De draden van de Arduino worden aangesloten op de pin van de L293D naast de pin waarop de motor is aangesloten. Check mijn fritzing voor de exacte plekjes. Ook moet u hier uw knoppen hebben ingesteld. Deze zouden snel moeten worden opgezet, volg gewoon mijn fritzing. Ik gebruikte 330 ohm weerstanden voor de knoppen. Sluit de ene aan op pin 2 en de andere op pin 4, beide op de master Arduino. Degene die op pin 2 is aangesloten, kiest de noot en degene die op pin 4 is aangesloten, laat de motoren trillen voor de noot die op het LCD-scherm wordt weergegeven.
Stap 8: code voor beide Arduino's
We hebben twee afzonderlijke sets code nodig voor elke Arduino. Ik heb ze geüpload naar mijn GitHub. Ze hebben elk de namen van de Arduino waarnaar ze zouden moeten worden geüpload. Kijk zeker eens door mijn code. Als je vragen hebt, moeten ze daar worden beantwoord.
Stap 9: aanzetten
Omdat de motoren veel stroom verbruiken, heb ik 2 9V-batterijen gebruikt om hem van stroom te voorzien. Het is waarschijnlijk niet de beste, maar het werkte voor mij. Sluit de vin van beide Arduino aan op de powerrails van de breadboards en verbind de aarde van de master met de rails van de breadboards. En nu ben je klaar om je fluit te oefenen!
Stap 10: enkele extra's
In mijn code is het je misschien opgevallen dat ik een paar regels heb becommentarieerd. Die regels zijn bedoeld om de fluitleraar met je mee te laten spelen door middel van een passieve zoemer. Ik had geen zoemer, dus ik heb de functie gewoon toegevoegd als iets cools. Maak gewoon een opmerking over mijn code en voeg een zoemer toe aan een open pin op de Arduino. Nu heb je een meespeelleraar!
Plaats de elektronica in een doos of tas om je fluitleraar draagbaar te maken!
U kunt meer nummers programmeren! Omdat ik elke noot als methode heb, kun je gewoon een andere voorwaarde toevoegen aan mijn switch-statement en de volgorde van de noten van het nummer dat je wilt spelen. Om de timing te wijzigen, wijzigt u de vertraging tussen elke noot.
Laat het me weten als je vragen of opmerkingen hebt in de reacties hieronder. Gelukkig fluitspel!
Aanbevolen:
Haptische kompasriem: 9 stappen
Haptic Compass Belt: een door Arduino aangedreven riem die naar het noorden trilt. Menselijke waarneming is altijd beperkt gebleven tot onze biologische zintuigen, maar wat als we dat zouden kunnen veranderen? In de natuur zijn er dieren met het vermogen om magnetische velden, barometrische druk, ambi
Haptische schoen voor slechtzienden - Ajarnpa
Haptische schoen voor slechtzienden: er zijn meer dan 37 miljoen slechtzienden over de hele wereld. De meeste van deze mensen gebruiken een wandelstok, stok of zijn afhankelijk van iemand anders om te pendelen. Het vermindert niet alleen hun zelfafhankelijkheid, maar schaadt in sommige gevallen ook hun zelf
Arduino haptische controller: 4 stappen
Arduino haptische controller:
WalabotEye - Objecttracker met haptische feedback - Ajarnpa
WalabotEye - Objecttracker met haptische feedback: gebruik dit voor slechtzienden om de wereld om u heen beter te begrijpen
Moonwalk: een prothese met haptische feedback - Ajarnpa
Moonwalk: een prothese met haptische feedback: Beschrijving:Moonwalk is een drukgevoelige prothese voor personen met een verminderde tastzin (neuropathie-achtige symptomen). Moonwalk is ontworpen om individuen te helpen nuttige haptische feedback te ontvangen wanneer hun voeten in contact komen met