exercicio 2.4
2 participantes
- brunodavidsteiner
- Mensagens : 96
Data de inscrição : 21/05/2022
Escola : Juscelino K. de Oliveira
exercicio 2.4
Sáb maio 27, 2023 11:00 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.4
* Tema: Função IF
* Atividade: Acender um LED se a luminosidade for maior que o ajuste do trimpot
* Descrição: Usar uma entrada analógica para medir a intensidade da luz e outra para comparar o valor e usar esse valor para acender um LED
* Hardware: Ligar os leds nos pino digitais configurado como SAÍDA DIGITAL e o LDR e o TRIMPOT em uma entrada analógica
* Comandos: pinMode, analogRead, digitalWrite,delay, map, IF ELSE
* Dica1:A o conversor analógico possui 10 bits ou seja de 0 até 1024
* Dica2:Comparar se o valor do LDR ultrapassar o valor estabelecido pelo trimpot e acender o LED e se baixar apagar o LED
*/
//DEFINICOES INICIAIS
#define led 3//programa o led no pino 3
#define ldr A0//programa o ldr mo pino A0
#define TRIMPOT A1//programa o TRIMPOT no A1
//DECLARAcAO DE VARIAVEIS GLOBAIS
int Luminosidade;//variaver tipo int para controlar a luminosidade
int ajuste;//variavel int para ajuste
//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);//inicia a porta cerial no valor de 9600
pinMode(led, OUTPUT);//programa o led como saida
}
//FUNÇÕES COMPLEMENTARES
void debug(){
Serial.print("Luminosidade = ");//luminosidade = e da um espaço
Serial.print(Luminosidade);//valos da luminosidade
Serial.print(" TRIMPOT = ");//espaço TRIMPOT = espaço
Serial.println(ajuste);//variavel int ajuste e pula uma linha
}
//PROGRAMA PRINCIPAL
void loop() {
Luminosidade = analogRead(ldr);// luminosidade e igual ao analogRead ldr
ajuste = analogRead(TRIMPOT);
debug();
Serial.println(Luminosidade);//imprime o que esta escrito na variavel e depois pula uma linha
delay(200);//pausa de tempo pausa de tempoi de 200 milisegundos
if (Luminosidade > 725) {//programa da funçao if
digitalWrite(led, HIGH);//acende o led
} else {//caso nao for apaga o led
digitalWrite(led, LOW);//apaga o led
}
}
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.4
* Tema: Função IF
* Atividade: Acender um LED se a luminosidade for maior que o ajuste do trimpot
* Descrição: Usar uma entrada analógica para medir a intensidade da luz e outra para comparar o valor e usar esse valor para acender um LED
* Hardware: Ligar os leds nos pino digitais configurado como SAÍDA DIGITAL e o LDR e o TRIMPOT em uma entrada analógica
* Comandos: pinMode, analogRead, digitalWrite,delay, map, IF ELSE
* Dica1:A o conversor analógico possui 10 bits ou seja de 0 até 1024
* Dica2:Comparar se o valor do LDR ultrapassar o valor estabelecido pelo trimpot e acender o LED e se baixar apagar o LED
*/
//DEFINICOES INICIAIS
#define led 3//programa o led no pino 3
#define ldr A0//programa o ldr mo pino A0
#define TRIMPOT A1//programa o TRIMPOT no A1
//DECLARAcAO DE VARIAVEIS GLOBAIS
int Luminosidade;//variaver tipo int para controlar a luminosidade
int ajuste;//variavel int para ajuste
//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);//inicia a porta cerial no valor de 9600
pinMode(led, OUTPUT);//programa o led como saida
}
//FUNÇÕES COMPLEMENTARES
void debug(){
Serial.print("Luminosidade = ");//luminosidade = e da um espaço
Serial.print(Luminosidade);//valos da luminosidade
Serial.print(" TRIMPOT = ");//espaço TRIMPOT = espaço
Serial.println(ajuste);//variavel int ajuste e pula uma linha
}
//PROGRAMA PRINCIPAL
void loop() {
Luminosidade = analogRead(ldr);// luminosidade e igual ao analogRead ldr
ajuste = analogRead(TRIMPOT);
debug();
Serial.println(Luminosidade);//imprime o que esta escrito na variavel e depois pula uma linha
delay(200);//pausa de tempo pausa de tempoi de 200 milisegundos
if (Luminosidade > 725) {//programa da funçao if
digitalWrite(led, HIGH);//acende o led
} else {//caso nao for apaga o led
digitalWrite(led, LOW);//apaga o led
}
}
Re: exercicio 2.4
Qua maio 31, 2023 12:15 am
Oi Bruno, esse programa parece que funcionou, mas tem um detalhe que compromete a precisão.
Como não usou o map() para ajustar as escalas, tem valores que variam numa faixa de maximo e minimo e outra variável variando em outra faixa, então vai ter alguns valores que não vai conseguiur ajustar. Nota 8.0
Como não usou o map() para ajustar as escalas, tem valores que variam numa faixa de maximo e minimo e outra variável variando em outra faixa, então vai ter alguns valores que não vai conseguiur ajustar. Nota 8.0
Permissões neste sub-fórum
Não podes responder a tópicos
|
|