Met behulp van de LilyPad Arduino, een manier om te tonen in het bereik van een octaaf maken op basis van de duim positionering.
LEVERINGEN
Zwarte katoenen gebreide handschoen
Geleidende draad
LilyPad Arduino
Naai-naald
Piëzo-luidspreker
SCHAKELAARS
1. plaats de rechterkant LilyPad omhoog op de achterkant van de handschoen zodanig dat pinnen 5-13 in de buurt van de vingers zijn. De tekst "LilyPad Arduino" moet ondersteboven wanneer u de handschoen met de vingers ophouden.
2. Neem een lange streng van geleidende draad en bind het rond van de LilyPad poort 13. Knoop het eens of tweemaal strak rond de haven zodat het stevig is aangesloten.
3. Zet beide uiteinden van de knoop door de naald, en naai met de wol van de wijsvinger. Wanneer u in de buurt van de top van de wijsvinger bereikt, hecht af rond aan de linker kant aan de voorzijde van de vinger.
4. Maak een paar steken op het puntje van de vinger om een groter oppervlak voor de schakelaar.
5. Wanneer u klaar bent, binden de draad in een knoop en losse eindjes afgesneden.
6. Herhaal stap 2-5 met de andere schakelaars. Dit is waar ze naartoe gaan:
12 midden van wijsvinger
11 top van de middelvinger
10 midden van middelvinger
9 top van de ringvinger
8 midden van de ringvinger
7 top van Pink
6 top van palm tussen weinig en ringvinger
Zorg dat u niet te laten om het even welk van de draden paden kruis.
LUIDSPREKER
1. Sluit de grond pin aan het topje van de duim met behulp van dezelfde methode als hierboven, de LilyPad rondgaan. Laat een ruimte in de stiksels onder pin 2 waar de draad aan de onderzijde van het weefsel zijn zal, omdat je moet gaan over het in de volgende stap.
2. Sluit de pin 2 naar een plek op de pols van de handschoen, gaat over de ruimte die je nog in de grond-thread.
3. met behulp van een ander stuk van geleidende draad, naai vanaf elk punt op de draad van de grond aan de pols, het maken van een knoop over een centimeter naar links van de waar u pin 2 verbonden.
4. Duw de pinnen van de spreker in de pols van de handschoen, zodat de + is verbonden met pin 2 en de – is aangesloten op de grond.
TIPS
-De handschoen materiaal zal stretch wanneer je hem aan, zo Naai de geleidende draad met één of andere verslapping.
-Zorg ervoor dat u alleen Naai de ene kant van de handschoen-laat niet de draad doorlopen naar de andere kant, omdat dan je zal uw handschoen dicht te naaien.
-Niet de LilyPad plaats te ver omhoog op de handschoen; Houd het dichter aan uw pols dan uw gewrichten.
CODE
int speakerPin = 2;
int switchPin6 = 6;
int switchPin7 = 7;
int switchPin8 = 8;
int switchPin9 = 9;
int switchPin10 = 10;
int switchPin11 = 11;
int switchPin12 = 12;
int switchPin13 = 13;
int ledPin = 13;
int switchPins [7] = {6, 7, 8, 9, 10, 11, 12};
VOID Setup {}
pinMode (ledPin, OUTPUT);
pinMode (speakerPin, OUTPUT);
pinMode (switchPin12, INPUT);
pinMode (switchPin13, INPUT);
pinMode (switchPin6, INPUT);
pinMode (switchPin7, INPUT);
pinMode (switchPin8, INPUT);
pinMode (switchPin9, INPUT);
pinMode (switchPin10, INPUT);
pinMode (switchPin11, INPUT);
int i = 6;
terwijl (ik < 13) {}
digitalWrite (i, hoge);
i ++;
}
}
void loop {}
digitalWrite (ledPin, hoge);
terwijl (1) {}
Als (digitalRead(switchPin6) == LOW) {}
digitalWrite (ledPin, laag);
makeNoise (6, 2093);
digitalWrite (ledPin, hoge);
breken;
}
Als (digitalRead(switchPin7) == LOW) {}
makeNoise (7, 2349);
breken;
}
Als (digitalRead(switchPin8) == LOW) {}
makeNoise (8, 2637);
breken;
}
Als (digitalRead(switchPin9) == LOW) {}
makeNoise (9, 2793);
breken;
}
Als (digitalRead(switchPin10) == LOW) {}
makeNoise (10, 3136);
breken;
}
Als (digitalRead(switchPin11) == LOW) {}
makeNoise (11, 3520);
breken;
}
Als (digitalRead(switchPin12) == LOW) {}
makeNoise (12, 3951);
breken;
}
Als (digitalRead(switchPin13) == LOW) {}
makeNoise (13, 4186);
breken;
}
}
}
VOID makeNoise (int switchPin, int frequencyInHertz) {}
lange delayAmount = (long)(1000000/frequencyInHertz);
Booleaanse y = true;
terwijl (y) {}
digitalWrite(speakerPin,HIGH);
delayMicroseconds(delayAmount);
digitalWrite(speakerPin,LOW);
delayMicroseconds(delayAmount);
y = checkforchange(switchPin);
}
int switchValues [7];
int i = 0;
terwijl (ik < 7) {}
switchValues [i] = digitalRead(switchPins[i]);
i ++;
}
}
Booleaanse checkforchange (int currentSensor) {}
Als (digitalRead(currentSensor) == HIGH) {}
return false;
}
return true;
}