Robótica Livre
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Ir para baixo
avatar
LucyAnna800
Mensagens : 98
Data de inscrição : 11/06/2022
Idade : 12
Escola : Colegio Lindaura Ribeiro Lucas

exrecicio 2.23 comentado e testado Empty exrecicio 2.23 comentado e testado

Qui Nov 30, 2023 10:48 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.23
* Tema: Função WHILE
* Atividade: Construir um luximetro, para aferir ambiente de trabalho conforme NBR ISO/CIE 8995-1
* Descrição: O Luximetro deverá informar apenas se a luminosidade está acima do ajuste piscando o LED vermelho, abaixo fica aceso.
* Hardware: Ligar um led em um pino digital configurado como SAÍDA, usar o LDR e TRIMPOT em entradas analógicas
* Comandos: pinMode, digitalWrite, while(), analogRead(),
* DICA1: A função while() será usada para fazer o pisca rodar enquanto a luminosidade for maior que o definido pelo TRIMPOT
* DICA2: Usar duas variáveis de controle para LDR e TRIMPOT
* DICA3: Usar um pisca-pisca de um led dentro do while()
* DICA4: Fazer a leitura do LDR e TRIMPOT e comparar para acionar o pisca
* DICA5: As escalas do LDR e TRIMPOT são diferentes, usar map() para ajustar as escalas
*/

//DEFINICOES INICIAIS
#define ledM 3 //batizado o pino 3 de ledM
#define ldr A0 //batizado o pino A0 de ldrL
#define trimpot A1 //batizado o pino A1 de trimpot

//DECLARAcAO DE VARIAVEIS
int luminosidade = 0; //batizada a varíavel int de luminosidade que é igual a zero
int ajuste = 0; //batizada a varíavel int de ajuste que é igual a zero

//FUNÇÕES COMPLEMENTARES
void debug() {  //esta é uma função complementar que são programas ou parte deles que são chamados pelo programa principal para execução de determinada tarefa que pode se repetir em vários momentos.
Serial.print("TRIMPOT"); //imprime uma porta serial na palvra TRIMPOT
Serial.print(ajuste); //imprime uma porta serial na varíavel ajuste
Serial.print("LDR = "); //imprime uma porta serial na palavra LDR =
Serial.println(luminosidade); //imprime uma porta serial e pula uma linha na varíavel luminosidade
}

//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600); //incia uma porta serial
pinMode(ledM, OUTPUT); //configurado o ledM de OUTPUT

}

//PROGRAMA PRINCIPAL
void loop() {
void debug(); // a função debug é uma função complementar que são programas ou parte deles que são chamados pelo programa principal para execução de determinada tarefa que pode se repetir em vários momentos. Para declarar a função usa o void, para invocar não usa
//minimo LDR = 11 TRIMPOT = 0
//maximo LDR = 834 TRIMPOT = 1022
luminosidade = analogRead(ldr); //luminosidadeé igual a leitura analógica do ldr
ajuste = map(analogRead(trimpot), 0, 1022,11,834);  //a função map vai ajustar os valores entre o ldr e o trimpot
while(luminosidade > ajuste){  //enquanto a luminosidade for maior que o ajuste se executará os comandos abaixos
luminosidade = analogRead(ldr);  //Aqui a variável inteira ‘sensor’ vai armazenar a tensão analógica convertida para digital presente no pino A0 que foi batizado de trimpot
ajuste = map(analogRead(trimpot), 0, 1022,11,834);  //a função map vai ajustar os valores entre o ldr e o trimpot
debug();  // a função debug éuma função complementar que são programas ou parte deles que são chamados pelo programa principal para execução de determinada tarefa que pode se repetir em vários momentos.
digitalWrite(ledM, HIGH); //ledM aceso Daqui para baixo precisa avaliar a necessidade
delay(300); //tempo
digitalWrite(ledM, LOW); //ledM apagado
delay(300); //tempo
}
digitalWrite(ledM, HIGH); //ledM aceso
} tem mais fechamento de chaves que abertura
debug();  // a função debug éuma função complementar que são programas ou parte deles que são chamados pelo programa principal para execução de determinada tarefa que pode se repetir em vários momentos.
digitalWrite(ledM, HIGH); //ledM aceso
delay(300); //tempo
digitalWrite(ledM, LOW); //ledM apagado
delay(300); //tempo
}
digitalWrite(ledM, HIGH); //ledM aceso
}
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5115
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

exrecicio 2.23 comentado e testado Empty Re: exrecicio 2.23 comentado e testado

Sáb maio 04, 2024 10:01 am
Oi Lucy, tem uns errinhos de programação. Vou editar e colocar as correções em vermelho
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos