Παραλλαγή του Theremin
Το Theremin (θέρεμιν) είναι ένα ηλεκτρονικό μουσικό όργανο, το οποίο ελέγχεται χωρίς καμία φυσική επαφή. Το όνομά του προέρχεται από τον εφευρέτη του, Leon Theremin, ο οποίος κατοχύρωσε την πατέντα το 1928. Το συγκεκριμένο όργανο έχει προσαρμοσμένες πάνω του 2 κεραίες, οι οποίες ανιχνεύουν τη σχετική θέση των χεριών του «Thereminist», επιτρέποντάς του να ελέγχει τη συχνότητα του ταλαντωτή (oscillator) με το ένα χέρι και το πλάτος (όγκο) με το άλλο. Αμέσως μετά, τα ηλεκτρικά σήματα του Theremin περνάνε από έναν ενισχυτή σήματος και στέλνονται σε ένα μεγάφωνο.
Το έργο Arduino που ακολουθεί παρακολουθεί τις αυξομειώσεις της αντίστασης του φωτοαντιστάτη μέσω της αλλαγής του φωτισμού και στη συνέχεια αυξομειώνει τη συχνότητα του ήχου που παράγεται από το buzzer.
Arduino Code
int analogPin = A0; // Input from photoresistor connected to A0
int buzzerPin = 4; // Positive buzzer pin connected to pin 4
long max_frequency = 2500; // Max frequency for the buzzer
long frequency; // The frequency to buzz the buzzer
int readVal; // The input voltage read from photoresistor
void setup() {
pinMode(buzzerPin, OUTPUT); // set a pin for buzzer output
}
void loop() {
readVal = analogRead(analogPin); // Reads 0-1023
frequency = (readVal * max_frequency) / 1023;
buzz(buzzerPin, frequency, 10);
}
void buzz(int targetPin, long frequency, long length) {
long delayValue = 1000000/frequency/2;
long numCycles = frequency * length/ 1000;
for (long i=0; i < numCycles; i++) {
digitalWrite(targetPin,HIGH);
delayMicroseconds(delayValue);
digitalWrite(targetPin,LOW);
delayMicroseconds(delayValue);
}
}