A seguir, o roteiro resumido do experimento ( você pode ver o roteiro completo clicando aqui)
a) Material: Régua, Lanterna, Jumpers e Jumpers Garras Jacaré, Papel cartão para construção da canaleta, Fita adesiva, Sensor LRD, Resistência de 33KOhms, Placa Arduino, Computador;
b) Montagem:
- Primeiramente montamos a placa Arduino segundo o esquema abaixo:
- O software da placa Arduino é livre é pode ser baixado em http://arduino.cc/ ( neste site você também encontra uma série de códigos e dicas de uso do Arduino).
- A seguir programamos a placa Arduino para fazer a leitura da porta serial e retornar o valor da tensão e da resistência no LDR de acordo com a intensidade da luz no ambiente.
- Prendemos o sensor LDR numa canaleta graduada e protegida da luz do ambiente externo.
- Uma fonte de luz é movida ao longo da canaleta de 1cm em 1cm. Em cada posição, o LDR lê 10 dados e faz uma média dessas 10 leituras.
- Esses dados são coletados e transferidos para uma planilha eletrônica na qual a relação distância fonte de luz ao LDR versus resistância é obitda graficamente.
- Como a intensidade não pode ser calculada diretamente, optou-se por fazer uma relação entre a distância de separação da fonte luminosa com a condutância no LDR (em unidades arbitrárias).
- Por fim, um gráfico é construído com os dados, para analisar sua relação com a Lei dos Inversos dos Quadrados das Distâncias.
A seguir, o código do programa com o qual a placa Arduino foi alimentada e uma imagem da montagem experimental são fornecidos na sequência desse post.
unsigned long tempo; // float tempo;
char leitura; // variável que armazenará a leitura na porta serial (LDR)
float myInts[10];
int i = 0; //contador que vai determinar o no. de medidas em uma dada distância
int LDR; // declara a variavel LDR (em bits)
float VLDR; // tensão no LDR (em Volts)
float RLDR; //resistência no LDR
float CLDR; //condutância no LDR
float I; //corrente elétrica
float VRST; //tensão no resistor
float somavldr = 0; //variável de armazenamento dos valores de tensão no LDR
float somarldr = 0; //variável de armazenamento dos valores de resistência no LDR
float somacldr = 0; //variável de armazenamento dos valores de condutância no LDR
float mediavldr = 0; //valor médio da tensão no LDR
float mediarldr = 0; //valor médio da resistência no LDR
float mediacldr = 0; //valor médio da condutãncia no LDR
void setup(){
pinMode(A0, INPUT); //instruindo a ler no pino analógico 0
Serial.begin(9600); //definindo taxa de transmissão de dados (bauds)
Serial.print("VLDR"); //Imprime o rótulo "VLDR" na coluna superior de dados no monitor serial
Serial.print(" "); // introduz um espaço para as colunas
Serial.print("RLDR"); //Imprime o rótulo "RLDR" na coluna superior de dados no monitor serial
Serial.print(" "); // introduz um espaço para as colunas
Serial.print("CLDR"); //Imprime o rótulo "CLDR" na coluna superior de dados no monitor serial
Serial.println(); //Nova linha de texto
}
void loop()
{
leitura = Serial.read(); //leitura da porta serial - valores lidos estão em bits
somavldr = 0; //armazenamento dos valores de tensão no LDR para um posterior cálculo da média
somarldr = 0; //armazenamento dos valores de resistência no LDR para um posterior cálculo da média
somacldr = 0; //armazenamento dos valores de condutância no LDR para um posterior cálculo da média
i = 0; // zeragem do contador após a realização de 10 medidas a uma determinada distância
if (leitura =='l') { //caso o operador digite 'l' no monitor serial, o arduino realizará as medidas
while(i < 10){ // enquanto o contador i for menor que 10, o arduino continuará executando o bloco de instruções abaixo
tempo= millis(); // base de tempo para a coleta de dados (microssegundos)
LDR = analogRead(A0); // leitura da porta serial (analógica) no pino 0 - aqui está ligado o LDR
VLDR = (LDR*5.00000)/1024.00000; //conversão dos valores lidos em bits para tensão (em Volt) - a porta serial tem tensão máxima de 5,0 V
VRST = 5.00000 - VLDR; // cálculo da tensão no resistor de 33 kOhm
I = VRST/33.00000; //(33kOhm)
RLDR = VLDR/I; //cálculo da resistência no LDR (Ohm)
CLDR = (I/VLDR)*1000.00000; //cálculo da condutância no LDR (C = I/V ou C=1/R) (unidades arbitrárias - .10^3 para facilitar gráficos)
somavldr =(somavldr + VLDR); //armazenamento dos valores de tensão no LDR para um posterior cálculo da média
somarldr = (somarldr + RLDR); //armazenamento dos valores de resistência no LDR para um posterior cálculo da média
somacldr = (somacldr + CLDR); //armazenamento dos valores de condutância no LDR para um posterior cálculo da média
Serial.print(VLDR,5); // imprime o valor da tensão no LDR (VLDR - Volt)
Serial.print(" "); // introduz um espaço para as colunas
Serial.print(RLDR,5); // imprime o valor da resistência no LDR (RLDR - Ampère)
Serial.print(" "); // introduz um espaço para as colunas
Serial.print(CLDR,5); // imprime o valor da condutância no LDR (Ohm^-1 = Siemens)
Serial.print(" "); // introduz um espaço para as colunas
Serial.println(); // imprime os dados e cria uma nova linha
i++; //após uma iteração do loop de while, incrementa o valor do contador em 1
delay(1000); //pausa o programa por um intervalo de tempo de 1000 ms = 1,0 s
} //fecha o laço de while
mediavldr = somavldr/10; //calcula o valor médio de tensão no LDR
mediarldr = somarldr/10; //calcula o valor médio de resistência no LDR
mediacldr = somacldr/10; //calcula o valor médio de condutância no LDR
Serial.print("VLDR Medio: "); //imprime o valor médio de tensão no LDR
Serial.println(mediavldr,5);
Serial.print("RLDR Medio: "); //imprime o valor médio de resistância no LDR
Serial.println(mediarldr,5);
Serial.print("CLDR Medio: "); //imprime o valor médio de condutãncia no LDR
Serial.println(mediacldr,5);
} // fecha o laço de if
} //fecha o programa
Betting Sites in 2021: Make Money by Betting on Sports
ResponderExcluirBetting is the most popular way to make money หารายได้เสริม on sports. Learn about the different types of bets and odds, where to 메리트카지노 bet on kadangpintar sports.