Após a apresentação da ideia do projeto para as professoras Marisa de física e Lisbete de Desenvolvimento de Algoritmos, conseguimos, com as ideias delas também, aperfeiçoar nosso projeto.
Substituímos os 3 LEDs por um LED RGB (que muda de cor). Não será mais só 3 notas musicais, agora serão 6, que é o número de portas analógicas que o Arduíno possui. Com isso haverá também 6 LDRs.
Para se ouvir as notas musicais usaremos de um plug Jack fêmea e de uma caixinha de som. Ainda está em mente pôr uma tela de LCD, para que quando uma nota tocasse, apareceria o nome da nota tocada.
Apresentação Inicial:
Código do circuito com definições:
int ledBLUE = 10; //define o pino em que o led azul está ligado
int ledGREEN = 11; //define o pino em que o led verde está ligado
int ledRED = 12; //define o pino em que o led vermelho está ligado
int LDR1,LDR2,LDR3,LDR4,LDR5,LDR6; //declaração das variáveis dos LDRs
void setup() {
Serial.begin(9600);
pinMode(ledBLUE, OUTPUT); //define que o pino 10 será uma saida
pinMode(ledGREEN, OUTPUT); //define que o pino 11 será uma saida
pinMode(ledRED, OUTPUT); //define que o pino 12 será uma saida
pinMode(9,OUTPUT); //define que o pino 9 será uma saída
pinMode(A0, INPUT); //define que o pino A0 será uma entrada
pinMode(A1, INPUT); //define que o pino A1 será uma entrada
pinMode(A2, INPUT); //define que o pino A2 será uma entrada
pinMode(A3, INPUT); //define que o pino A3 será uma entrada
pinMode(A4, INPUT); //define que o pino A4 será uma entrada
pinMode(A5, INPUT); //define que o pino A5 será uma entrada
}
void loop() {
LDR1 = analogRead(A0); //lê o valor da resistência do LDR1
LDR2 = analogRead(A1); //lê o valor da resistência do LDR2
LDR3 = analogRead(A2); //lê o valor da resistência do LDR3
LDR4 = analogRead(A3); //lê o valor da resistência do LDR4
LDR5 = analogRead(A4); //lê o valor da resistência do LDR5
LDR6 = analogRead(A5); //lê o valor da resistência do LDR6
//imprimi os valores das resistências dos 6 LDRs
Serial.print("Valor lido no LDR1:\t");
Serial.print(LDR1);
Serial.print("\tValor lido no LDR2:\t");
Serial.print(LDR2);
Serial.print("\tValor lido no LDR3:\t");
Serial.print(LDR3);
Serial.print("\tValor lido no LDR4:\t");
Serial.print(LDR4);
Serial.print("\tValor lido no LDR5:\t");
Serial.print(LDR5);
Serial.print("\tValor lido no LDR6:\t");
Serial.println(LDR6);
if(LDR1<=300){
digitalWrite(ledBLUE,LOW); //apaga o LED azul do RGB
digitalWrite(ledGREEN,HIGH); //acende o LED verde do RGB
digitalWrite(ledRED,LOW); //apaga o LED vermelho do RGB
tone(9, 261, 1000000000); //no pino 9 emite a frequência de 261 htz por 1000000000 ms
}else if(LDR2<=300){
noTone(9); //desliga o pino 9
digitalWrite(ledBLUE, HIGH); //acende o LED azul do RGB
digitalWrite(ledGREEN,LOW); //apaga o LED verde do RGB
digitalWrite(ledRED,LOW); //apaga o LED vermelho do RGB
tone(9, 293, 1000000000); //no pino 9 emite a frequência de 293 htz por 1000000000 ms
}
else if(LDR3<=400){
noTone(9); //desliga o pino 9
digitalWrite(ledBLUE, LOW); //apaga o LED azul do RGB
digitalWrite(ledGREEN,HIGH); //acende o LED verde do RGB
digitalWrite(ledRED,HIGH); //acende o LED vermelho do RGB
tone(9, 329, 1000000000); //no pino 9 emite a frequência de 329 htz por 1000000000 ms
}
else if(LDR4<=300){
noTone(9); //desliga o pino 9
digitalWrite(ledBLUE, LOW); //apaga o LED azul do RGB
digitalWrite(ledGREEN,LOW); //apaga o LED verde do RGB
digitalWrite(ledRED,HIGH); //acende o LED vermelho do RGB
tone(9, 349, 1000000000); //no pino 9 emite a frequência de 349 htz por 1000000000 ms
}
else if(LDR5<=230){
noTone(9); //desliga o pino 9
digitalWrite(ledBLUE, HIGH); //acende o LED azul do RGB
digitalWrite(ledGREEN,HIGH); //acende o LED verde do RGB
digitalWrite(ledRED,HIGH); //acende o LED vermelho do RGB
tone(9, 392, 1000000000); //no pino 9 emite a frequência de 392 htz por 1000000000 ms
}
else if(LDR6<=350){
noTone(9); //desliga o pino 9
digitalWrite(ledBLUE, HIGH); //acende o LED azul do RGB
digitalWrite(ledGREEN,LOW); //apaga o LED verde do RGB
digitalWrite(ledRED,HIGH); //acende o LED vermelho do RGB
tone(9, 440, 1000000000); //no pino 9 emite a frequência de 440 htz por 1000000000 ms
}
else{
noTone(9); //desliga o pino 9
digitalWrite(ledBLUE, LOW); //apaga o LED azul do RGB
digitalWrite(ledGREEN,LOW); //apaga o LED verde do RGB
digitalWrite(ledRED,LOW); //apaga o LED vermelho do RGB
}
}
O circuito funcionando:
Como vocês podem ouvir, o som das notas musicais ré, mi, fá,sol e lá estão com um ruído. Após um aperfeiçoamento nenhuma delas irá ter ruído, assim como a nota musical dó.
Os valores das resistências dos 6 LDRs nas condições pode variar de acordo com a luz do ambiente.
Nenhum comentário:
Postar um comentário