Progetto Arduino – Theremin fotosensibile

Muovendo le mani in modo da oscurare o meno una fotoresistenza, si può controllare la frequenza della nota emessa dal cicalino passivo.

Versione 1.0 (“Psichedelica”)

Il cicalino passivo emette una sequenza continua di note, la cui frequenza dipende dall’intensità della luce che colpisce la fotoresistenza. In questa versione sono anche presenti quattro LED che si accendono o si spengono in base al segnale ricevuto dalla fotoresistenza.

Ricorda di attivare l’audio del video!


Strumenti

  • Arduino UNO
  • Fotoresistenza
  • Cicalino passivo
  • 4 LED
  • Cavi elettrici e resistenze

Diagramma dei collegamenti

Codice

Clicca qui per visualizzare

#define lightPin A0
#define pina 2
#define pinb 3
#define pinc 4
#define pind 5 
#define pinBuzz 8

int reading;
long freq;

void setup() 
{
  pinMode(lightPin, INPUT);
  pinMode(pina, OUTPUT);
  pinMode(pinb, OUTPUT);
  pinMode(pinc, OUTPUT);
  pinMode(pind, OUTPUT);
  Serial.begin(9600);
}


void loop() {

   reading  = analogRead(lightPin);
   freq = map(reading, 50, 200, 30, 700);
   tone(pinBuzz, freq, 200);
   delay(100);
   
   if (freq >400) {
    digitalWrite(pina, HIGH);
   } else {
    digitalWrite(pina, LOW);    
   }
   
   if (freq >450) {
    digitalWrite(pinb, HIGH);
   } else {
    digitalWrite(pinb, LOW);    
   }
   
   if (freq >500) {
    digitalWrite(pinc, HIGH);
   } else {
    digitalWrite(pinc, LOW);    
   }
   
   if (freq >550) {
    digitalWrite(pind, HIGH);
   } else {
    digitalWrite(pind, LOW);    
   }
   
}

Galleria (scorri le foto…)

Lascio un commento

Il tuo indirizzo email non sarà pubblicato.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.