terça-feira, 13 de março de 2012

Teclado Sensitivo

O nosso projeto tem como objetivo aplicar os conhecimentos de física, em geral relacionados ao arduíno, adquiridos em sala de aula para ajudar a sociedade.
Iremos criar uma espécie de piano, capaz de emitir os sons das notas musicais sem que seja necessario tocar no teclado. Para que o projeto seja realizado, usaremos de LDRs, resistores e LEDs coloridos.
Nosso alvo são as pessoas com deficiência auditiva ou visual. O deficiente visual não precisará tocar o teclado para ouvir os sons das notas, ele usará somente a audição e o tato para ativar os LDRs para emitirem os sons. Já o deficiente auditivo, a cada nota musical tocada, um LED diferente será ligada, com isso ele terá que usar só a visão para tocar o piano.
O projeto será realizado pela Alessandra Angelo, pelo Douglas Hoshino e pela Mariana Trevisan. Todos os citados são alunos do 3º semestre do curso de Ciência da Computação da PUC-SP.

Cronograma

14/04 - Pesquisar preços e comprar os materiais do projeto
19/04 - Execução do código
28/04 - Conclusão do projeto


terça-feira, 6 de março de 2012

Acender Led condicional

Com o cicuito configurado com 3 LEDs, um LDR e um resistor; fizemos um programa que manipulava a sequência de LEDs acendendo conforme a incidência de luz no LDR.

Com o controle da incidência de luz no LDR, acendíamos os LEDs na seguinte sequência:
  • Maior incidência de luz: LED azul
  • Incidência intermediária: LED amarelo
  • Menor incidência de luz: LED vermelho
O código do experimento ficou o seguinte:

int LDR;
int ledPin = 13;
int ledPin2 = 12;
int ledPin3 = 11;

void setup(){

pinMode(A0, INPUT);
pinMode(ledPin, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(ledPin3, OUTPUT);

Serial.begin(9600);

}

void loop(){

Serial.print("Valor lido no LDR:\t");

Serial.println(LDR);

delay(1);

LDR = analogRead(A0); //porta usada para leitura da resistência do LDR

//condições para acender e apagar os leds
if (LDR > 300) {
  digitalWrite(ledPin, HIGH);
}

else{
  digitalWrite(ledPin, LOW);}

if (LDR > 350 ) {
 
  digitalWrite(ledPin2, HIGH);
}
else{
  digitalWrite(ledPin2, LOW);}


if(LDR > 400 ){
  digitalWrite(ledPin3, HIGH);
}
else{
  digitalWrite(ledPin3, LOW);}
}