Apresentação do cronograma / Definição de projeto | 13/03/12 |
Pesquisa de materiais/ encomenda – importação | 14/03–19/03 |
Pesquisa de técnicas e recursos | 20/03 – 26/03 |
Apresentação inicial dos projetos | 27/03/12 |
Postagens/ Inicio de montagem | 28/03– 02/04 |
Apresentação do blog: | 03/03/12 |
Montagem, programação e começar a escrever o artigo | 04/4– 11/04 |
12/04–19/04 | |
20/04– 27/04 | |
Testes e Postagens no blog | 28/03– 06/05 |
Apresentação do Blog II | 07/05/12 |
Oficina Arduino | 08/05/12 |
Testes/ Montagem em placa de fenolite | 09/05-16/05 |
Montagem em placa de fenolite II | 17/05-21/05 |
Apresentação Intermediária | 22/05/12 |
Finalizar animações | 23/05-30/05 |
Últimos retoques | 31/05-10/06 |
Apresentação Final | 11/06/12 |
terça-feira, 13 de março de 2012
Cronograma
Descrição e objetivos do projeto
Nesse projeto o objetivo é o desenvolvimento de um
cubo 3D composto de Leds que possam ser controlados por arduíno, como o da
imagem a seguir:
Por mais que o projeto pareça ter seu foco apenas na parte
visual, pensamos também nos diferentes
tipos de animações que podemos realizar com um essa ferramenta a partir de inúmeras
combinações possíveis de serem feitas com os leds. Alguns exemplos de animações
interessantes :
Especificações e materiais:
Arduino Uno
Leds *
Arame
Resistores *
protoboard
Ferro de Solda
Fios
Caixa de acrílico
* O numero de Leds(e portanto, o de resistores), assim como
sua coloração e tipo (normal/RGB) ainda não foram definidos.
segunda-feira, 12 de março de 2012
quinta-feira, 8 de março de 2012
Relatório 4
Arduino com Som
O código abaixo funciona com o os LEDs em sequencia feitos no Relatório 1 Complementar em conjunto com o esquema acima.
//início
int LDR; //declara a variavel DR;
int som; // variavel som para o alarme
void setup(){
pinMode(A0, INPUT);
Serial.begin(9600);
pinMode(13, OUTPUT); //porta do LED
pinMode(12, OUTPUT); //porta do LED
pinMode(11, OUTPUT); //porta do LED
pinMode(9,OUTPUT); //porta do Som
}
void loop(){
LDR = analogRead(A0);
Serial.print("Valor lido no LDR:\t");
Serial.println(LDR);
delay(250);
if ( LDR<85){
noTone(9);
digitalWrite(13, HIGH);
digitalWrite(12, HIGH);
digitalWrite(11, HIGH);
}
if (LDR>=85 && LDR<=100){
digitalWrite(13, LOW);
digitalWrite(11, HIGH);
digitalWrite(12, HIGH);
som = map(LDR, 80.0, 180.0, 264, 264);
tone(9, som, 10000);
}
if(LDR>100 && LDR<115){
digitalWrite(13, LOW);
digitalWrite(12, LOW);
digitalWrite(11, HIGH);
som = map(LDR, 80.0, 180.0, 297, 297);
tone(9, som, 10000);
}
if(LDR>=115){
digitalWrite(13, LOW);
digitalWrite(12, LOW);
digitalWrite(11, LOW);
som = map(LDR, 80.0, 180.0, 352, 352);
tone(9, som, 10000);
}
}
//fim
quarta-feira, 7 de março de 2012
Relatório 3
Arduino com LDR
Código modificado do Relatório 1 e do Relatório 2. Imprime mais informações que os dois anteriores:
//início
int LDR; //declara a variável
unsigned int tempo;
double volt;
double tensao;
double corrente;
double resistenciaLDR;
double potenciaLDR;
double potenciaT;
double resistenciaU = 0.0;
void setup() {
pinMode(A0, INPUT);
Serial.begin(9600);
}
void loop() {
if (Serial.available() > 0) {
resistenciaU = Serial.read();
Serial.print("resistencia: ");
Serial.println(resistenciaU, 6);
}
tempo = millis(); // base de tempo para a coleta
LDR = analogRead(A0);
volt = LDR * (5.100000/1024);
tensao = 5.10 - volt;
corrente = (tensao / resistenciaU) * 1000;
resistenciaLDR = volt / (corrente / 1000.0);
potenciaLDR = volt * (corrente / 1000);
potenciaT = 5.10 * (corrente / 1000);
Serial.print(LDR);
Serial.print(" ");
Serial.print(volt,6);
Serial.print(" ");
Serial.print(tensao,6);
Serial.print(" ");
Serial.print(volt+tensao,6);
Serial.print(" ");
Serial.print(corrente,6);
Serial.print(" ");
Serial.print(resistenciaLDR,6);
Serial.print(" ");
Serial.print(potenciaLDR,6);
Serial.print(" ");
Serial.print(potenciaT,6);
Serial.print(" ");
Serial.print(tempo);
Serial.print(" "); // introduz um espaço para as colunas
Serial.println(); // imprime em linhas
delay(250);
}
//fim
terça-feira, 6 de março de 2012
Relatório 2
Arduino com LDR
Código do Arduino com LDR do Relatório 1 modificado. Esse código imprime mais informações:
//início
int LDR; //declara a variável
int tempo;
double volt;
double tensao;
void setup() {
pinMode(A0, INPUT);
Serial.begin(9600);
}
void loop() {
tempo= millis(); // base de tempo para a coleta
LDR = analogRead(A0);
volt = LDR * (5.0/1024.0);
tensao = 5-volt;
Serial.print(LDR);
Serial.print(" ");
Serial.print(volt);
Serial.print(" ");
Serial.print(tensao);
Serial.print(" ");
Serial.print(volt+tensao);
Serial.print(" ");
Serial.print(tempo);
Serial.print(" "); // introduz um espaço para as colunas
Serial.println(); // imprime em linhas
delay(250);
}
/fim
segunda-feira, 5 de março de 2012
Relatório 1 Complementar
Este é um circuito montado para leitura no LDR, acoplado a um dispositivo
Físico em que há uma sequencia de leds acendendo conforme a
distancia de bloqueio de luz no LDR.
O código do experimento:
/******************************************************************/
int LDR;
void setup(){
pinMode(A0, INPUT);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
Serial.begin(9600);
}
void loop(){
LDR = analogRead(A0);
Serial.println(LDR);
delay(250);
if ( LDR <= 300){
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
}
else if ((LDR > 300 )&&( LDR <400)){
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
}
else if ((LDR >= 400)&&( LDR <500)){
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
}
else if (LDR >= 500){
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
}
}
void setup(){
pinMode(A0, INPUT);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
Serial.begin(9600);
}
void loop(){
LDR = analogRead(A0);
Serial.println(LDR);
delay(250);
if ( LDR <= 300){
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
}
else if ((LDR > 300 )&&( LDR <400)){
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
}
else if ((LDR >= 400)&&( LDR <500)){
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
}
else if (LDR >= 500){
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
}
}
domingo, 4 de março de 2012
Relatório 1
Usando um LED
Código para fazer o LED do arduino piscar:
//início
void setup() {
pinMode(13, OUTPUT);
}
Void loop()
{
digitalWrite(13, HIGH); //LED acende;
delay(1000); //intervalo de tempo;
digitalWrite(13, LOW); //LED apaga;
delay(1000);
}
//fim
Código que utiliza o Monitor Serial para alterar o estado do LED (digite "L" ou "H" para alterar o estado do LED):
//início
int
ledPin = 13; //define o pino em que o led está ligado
char
leitura; //define a variável leitura que
corresponde a uma letra o teclado
//definido por char
void
setup() {
pinMode(ledPin, OUTPUT); //define que o pino 13 será uma saida
Serial.begin(9600);
}
void
loop() {
leitura = Serial.read(); // a variável
leitura será obtida através do teclado
if (leitura == 'L')
{
digitalWrite(ledPin,
LOW);
}
else if
(leitura == 'H') {
digitalWrite(ledPin,
HIGH);
}
}
//fim
//fim
________________________________________________
Usando um LDR
Código que lê os valores do LDR:
//início
int LDR; //declara a variavel
void setup(){
pinMode(A0,
INPUT);
Serial.begin(9600);
}
void loop(){
LDR =
analogRead(A0);
Serial.print("Valor lido no
LDR:\t");
Serial.println(LDR);
delay(250);
}
//fim
Código que imprime o tempo e o valor do LDR:
//início
int
LDR; //declara a variável
int tempo;
void setup() {
pinMode(A0, INPUT);
Serial.begin(9600);
}
void
loop() {
tempo= millis(); // base de tempo para a coleta
LDR
= analogRead(A0);
{
Serial.print(tempo);
Serial.print(" "); // introduz um espaço entre as
colunas
Serial.print(LDR);
}
Serial.println();
// imprime em linhas
delay(250);
}
//fim
//fim
Assinar:
Postagens (Atom)