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

Ir para baixo
lucca senn dallagassa
lucca senn dallagassa
Mensagens : 331
Data de inscrição : 09/03/2020
Idade : 17
Escola : Lindaura Ribeiro Lucas

exercicio 2.07 Empty exercicio 2.07

Qua Ago 05, 2020 10:12 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.7
* Tema: Função IF / ELSE / IF
* Atividade: Termometro de Leds
* Descrição: Utilizar 3 leds para informar a temperatura, se abaixo de 30 graus verde, se maior que 30 e menor que 50 amarelo e se maior que 50 vermelho
* Hardware: Ligar os LED em pinos digital configurados como SAÍDA e o NTC em uma entrada analógica
* Comandos: pinMode, analogRead, IF ELSE IF, digitalWrite
* Dica1:A saída analógica aceita valores entre 0 e 255, e o conversor analógico possui 10 bits ou seja até 1024
* Dica2:Usar o debug() para verificar os valores do NTC para cada temperatura e aplicar nas comparações do IF/ELSE/IF
* Dica3:A função IF/ELSE/IF após encontrar uma condição verdadeira, não executa as demais comparações
* Dica4:Montar a função IF/ELSE/IF de forma que a condição anterior não atenda a próxima
*/

//DEFINICOES INICIAIS
#define ledVerde 2//Definido que o pino 2 vai se chamar ledVerde
#define ledAmarelo 3//Definido que o pino 3 vai se chamar ledAmarelo
#define ledVerm 4//Definido que o pino 4 vai se chamar ledVuerm
#define ntc A0//Definido que o pino A0 vai se chamar ntc



//DECLARAcAO DE VARIAVEIS GLOBAIS
int temperatura;//Variavel para guardar o nome temperatura

//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.print(9600);//Para abrir a porta serial
pinMode(ledVerde, OUTPUT);//Definido ledVerde como SAIDA
pinMode(ledAmarelo, OUTPUT);//Definido ledAmarelo como SAIDA
pinMode(ledVerm, OUTPUT);//Definido ledVerm como SAIDA
}

//FUNÇÕES COMPLEMENTARES
void debug(){
Serial.println(analogRead(ntc));//Pular uma linha depois do ntc
delay(200);//Temporiza por 200ms
}

//PROGRAMA PRINCIPAL

void loop() {
temperatura = analogRead(ntc);//Definido que a temperatura e igual ao valor do ntc
if(temperatura < 30) {//Sera que temperatura e menor do que 30
digitalWrite(ledVerde, HIGH);//Definido que o ledVerde vai acender
digitalWrite(ledAmarelo, LOW);//Definido que o ledAmarelo vai apagar
digitalWrite(ledVerm, LOW);//Definido ue o ledVerm vai apagar
}
else if(temperatura <= 50){//Sera que temperatura e maior ou igual a 50
digitalWrite(ledVerde, LOW);//Definido que o ledVerde vai apagar
digitalWrite(ledAmarelo, HIGH);//Definido que o ledAmarelo vai acender
digitalWrite(ledVerm, LOW);//Definido ue o ledVerm vai apagar
} else {
digitalWrite(ledVerde, LOW);//Definido que o ledVerde vai apagar
digitalWrite(ledAmarelo, LOW);//Definido que o ledAmarelo vai apag
digitalWrite(ledVerm, HIGH);//Definido que o ledVerm vai acender
}
}
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5039
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

exercicio 2.07 Empty Re: exercicio 2.07

Ter Ago 11, 2020 9:09 pm
Fala Lucca,
Sabe porque não deu certo? Porque não calibrou o sensor.
Quando fala 30 graus ou 50 graus não quer dizer que o conversor AD vai retornar 30 ou 50, ele retorna um número entre 0 e 1023 proporcional ao valor que é colocado na estrada A0
Então precisa usar a função map() com os valores de entrada e saida para calibrar o sensor.
Nota 5.0
lucca senn dallagassa
lucca senn dallagassa
Mensagens : 331
Data de inscrição : 09/03/2020
Idade : 17
Escola : Lindaura Ribeiro Lucas

exercicio 2.07 Empty Re: exercicio 2.07

Qui Ago 27, 2020 8:38 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.7
* Tema: Função IF / ELSE / IF
* Atividade: Termometro de Leds
* Descrição: Utilizar 3 leds para informar a temperatura, se abaixo de 30 graus verde, se maior que 30 e menor que 50 amarelo e se maior que 50 vermelho
* Hardware: Ligar os LED em pinos digital configurados como SAÍDA e o NTC em uma entrada analógica
* Comandos: pinMode, analogRead, IF ELSE IF, digitalWrite
* Dica1:A saída analógica aceita valores entre 0 e 255, e o conversor analógico possui 10 bits ou seja até 1024
* Dica2:Usar o debug() para verificar os valores do NTC para cada temperatura e aplicar nas comparações do IF/ELSE/IF
* Dica3:A função IF/ELSE/IF após encontrar uma condição verdadeira, não executa as demais comparações
* Dica4:Montar a função IF/ELSE/IF de forma que a condição anterior não atenda a próxima
*/

//DEFINICOES INICIAIS
#define ledVerde 2//Definido que o pino 2 vai se chamar ledVerde
#define ledAmarelo 4//Definido que o pino 4 vai se chamar ledAmarelo
#define ledVerm 5//Definido que o pino 5 vai se chamar ledVuerm
#define ntc A0//Definido que o pino A0 vai se chamar ntc



//DECLARAcAO DE VARIAVEIS GLOBAIS
int temperatura;// Variavel tipo int nomeada Temperatura

//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(ledVerde, OUTPUT);//Definido ledVerde como SAIDA
pinMode(ledAmarelo, OUTPUT);//Definido ledAmarelo como SAIDA
pinMode(ledVerm, OUTPUT);//Definido ledVerm como SAIDA
}

//FUNÇÕES COMPLEMENTARES
void debug(){
Serial.println(analogRead(ntc));//Pular uma linha depois do ntc
delay(200);//Temporiza por 200ms
}
//1 - 476 : 2 - 642 : 3 -

//PROGRAMA PRINCIPAL

void loop() {
temperatura = analogRead(ntc);//Definido que a temperatura e igual ao valor do ntc
if(temperatura < 476) {//Sera que temperatura e menor do que 476
digitalWrite(ledVerde, HIGH);//Definido que o ledVerde vai acender
digitalWrite(ledAmarelo, LOW);//Definido que o ledAmarelo vai apagar
digitalWrite(ledVerm, LOW);//Definido ue o ledVerm vai apagar
}
else if(temperatura <= 642){//Sera que temperatura e maior ou igual a 642
digitalWrite(ledVerde, LOW);//Definido que o ledVerde vai apagar
digitalWrite(ledAmarelo, HIGH);//Definido que o ledAmarelo vai acender
digitalWrite(ledVerm, LOW);//Definido ue o ledVerm vai apagar
} else {
digitalWrite(ledVerde, LOW);//Definido que o ledVerde vai apagar
digitalWrite(ledAmarelo, LOW);//Definido que o ledAmarelo vai apag
digitalWrite(ledVerm, HIGH);//Definido que o ledVerm vai acender
}
}
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5039
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

exercicio 2.07 Empty Re: exercicio 2.07

Ter Set 01, 2020 10:02 pm
Lucca, no video fiz uma pegadinha, falei dela e como voce caiu. Ou não assistiu o video inteiro ou não prestou atenção.
lucca senn dallagassa
lucca senn dallagassa
Mensagens : 331
Data de inscrição : 09/03/2020
Idade : 17
Escola : Lindaura Ribeiro Lucas

exercicio 2.07 Empty Re: exercicio 2.07

Ter Set 08, 2020 9:52 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.7
* Tema: Função IF / ELSE / IF
* Atividade: Termometro de Leds
* Descrição: Utilizar 3 leds para informar a temperatura, se abaixo de 30 graus verde, se maior que 30 e menor que 50 amarelo e se maior que 50 vermelho
* Hardware: Ligar os LED em pinos digital configurados como SAÍDA e o NTC em uma entrada analógica
* Comandos: pinMode, analogRead, IF ELSE IF, digitalWrite
* Dica1:A saída analógica aceita valores entre 0 e 255, e o conversor analógico possui 10 bits ou seja até 1024
* Dica2:Usar o debug() para verificar os valores do NTC para cada temperatura e aplicar nas comparações do IF/ELSE/IF
* Dica3:A função IF/ELSE/IF após encontrar uma condição verdadeira, não executa as demais comparações
* Dica4:Montar a função IF/ELSE/IF de forma que a condição anterior não atenda a próxima
*/

//DEFINICOES INICIAIS
#define ledVerde 2//Definido pino 2 como ledVerde
#define ledAmarelo 3//Definido pino 3 como ledAmarelo
#define ledVerm 4//Definido pino 4 como ledVerm
#define ntc A0//Definido pino A0 como ntc

//DECLARAcAO DE VARIAVEIS GLOBAIS
int temperatura;//Variavel tipo int com o nome temperatura

//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(ledVerde, OUTPUT);// Define o ledVerde como SAIDA
pinMode(ledAmarelo, OUTPUT);// Define o ledAmarelo como SAIDA
pinMode(ledVerm, OUTPUT);// Define o ledVerm como SAIDA
Serial.begin(9600);//Para inicializar o Serial monitor
}

//FUNÇÕES COMPLEMENTARES
void debug (){
Serial.println(analogRead(ntc));//vai ler o ntc na porta analogica e ligar o Serial monitor par descobrir os valores de temperatura do ntc
delay(200);//Temporiza por 200 ms
}

//PROGRAMA PRINCIPAL
//1 - 385; 2 - 253;
void loop() {
temperatura = analogRead(ntc);//Temperatura e igual o valor do ntc
if(temperatura < 385){//Temperatura e menor do que 385?
digitalWrite(ledVerde, HIGH);//acende ledVerde
digitalWrite(ledAmarelo, LOW);//apaga ledAmarelo
digitalWrite(ledVerm, LOW);//apaga ledVerm
}
else if(temperatura <= 253){//Temperatura e menor ou igual a 253?
digitalWrite(ledVerde, LOW);//apaga ledVerde
digitalWrite(ledAmarelo, HIGH);//acende ledAmarelo
digitalWrite(ledVerm, LOW);//apaga ledVerm
} else {
digitalWrite(ledVerde, LOW);//aapaga ledVerde
digitalWrite(ledAmarelo, LOW);//apaga ledAmarelo
digitalWrite(ledVerm, HIGH);//acende ledVerm
}
}
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5039
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

exercicio 2.07 Empty Re: exercicio 2.07

Sex Set 11, 2020 10:06 pm
Agora parece que acertou a calibração mas a sequencia está errada. Voce testa esses programas antes de publicar ?
lucca senn dallagassa
lucca senn dallagassa
Mensagens : 331
Data de inscrição : 09/03/2020
Idade : 17
Escola : Lindaura Ribeiro Lucas

exercicio 2.07 Empty Re: exercicio 2.07

Qui Set 17, 2020 9:41 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.7
* Tema: Função IF / ELSE / IF
* Atividade: Termometro de Leds
* Descrição: Utilizar 3 leds para informar a temperatura, se abaixo de 30 graus verde, se maior que 30 e menor que 50 amarelo e se maior que 50 vermelho
* Hardware: Ligar os LED em pinos digital configurados como SAÍDA e o NTC em uma entrada analógica
* Comandos: pinMode, analogRead, IF ELSE IF, digitalWrite
* Dica1:O conversor analógico possui 10 bits ou seja até 1024
* Dica2:Usar o debug() para verificar os valores do NTC para cada temperatura e aplicar nas comparações do IF/ELSE/IF
* Dica3:A função IF/ELSE/IF após encontrar uma condição verdadeira, não executa as demais comparações
* Dica4:Montar a função IF/ELSE/IF de forma que a condição anterior não atenda a próxima
*/

//DEFINICOES INICIAIS
#define ledVerde 2//Definido pino 2 como ledVerde
#define ledAmarelo 3//Definido pino 3 como ledAmarelo
#define ledVerm 4//Definido pino 4 como ledVerm
#define ntc A0//Definido pino A0 como ntc

//DECLARAcAO DE VARIAVEIS GLOBAIS
int temperatura;// Variavel tipo int nomeada temperatura

//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);//Iniçializa a porta Serial
pinMode(ledVerde, OUTPUT);//Definido ledVerde como SAIDA
pinMode(ledAmarelo, OUTPUT);//Definido ledAmarelo como SAIDA
pinMode(ledVerm, OUTPUT);//Definido ledVerm como SAIDA
}

//FUNÇÕES COMPLEMENTARES
void debug (){
Serial.println(analogRead(ntc));//Imprime a leitura do ntc na porta Serial
delay(200);//Temporiza por 200 ms
}
//30 = 385 ; 50 = 563 ;

//PROGRAMA PRINCIPAL
void loop() {
temperatura = analogRead(ntc);//Carrega a variavel temperatura com o valor da leitura do ntc
if(temperatura < 385){//Se temperatura for menor que 30 graus
digitalWrite(ledVerde, HIGH);//ledVerde acende
digitalWrite(ledAmarelo, LOW);//ledAmarelo apaga
digitalWrite(ledVerm, LOW);//ledVerm apaga
}
else if(temperatura <= 563){//Se temperatura for menor ou igual a 50 graus
digitalWrite(ledVerde, LOW);//ledVerde apaga
digitalWrite(ledAmarelo, HIGH);//ledAmarelo acende
digitalWrite(ledVerm, LOW);//ledVerm apaga
} else {
digitalWrite(ledVerde, LOW);//ledVerde apaga
digitalWrite(ledAmarelo, LOW);//ledAmarelo apaga
digitalWrite(ledVerm, HIGH);//ledVerm acende
}
}
lucca senn dallagassa
lucca senn dallagassa
Mensagens : 331
Data de inscrição : 09/03/2020
Idade : 17
Escola : Lindaura Ribeiro Lucas

exercicio 2.07 Empty Re: exercicio 2.07

Qui Set 17, 2020 9:41 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.7
* Tema: Função IF / ELSE / IF
* Atividade: Termometro de Leds
* Descrição: Utilizar 3 leds para informar a temperatura, se abaixo de 30 graus verde, se maior que 30 e menor que 50 amarelo e se maior que 50 vermelho
* Hardware: Ligar os LED em pinos digital configurados como SAÍDA e o NTC em uma entrada analógica
* Comandos: pinMode, analogRead, IF ELSE IF, digitalWrite
* Dica1:O conversor analógico possui 10 bits ou seja até 1024
* Dica2:Usar o debug() para verificar os valores do NTC para cada temperatura e aplicar nas comparações do IF/ELSE/IF
* Dica3:A função IF/ELSE/IF após encontrar uma condição verdadeira, não executa as demais comparações
* Dica4:Montar a função IF/ELSE/IF de forma que a condição anterior não atenda a próxima
*/

//DEFINICOES INICIAIS
#define ledVerde 2//Definido pino 2 como ledVerde
#define ledAmarelo 3//Definido pino 3 como ledAmarelo
#define ledVerm 4//Definido pino 4 como ledVerm
#define ntc A0//Definido pino A0 como ntc

//DECLARAcAO DE VARIAVEIS GLOBAIS
int temperatura;// Variavel tipo int nomeada temperatura

//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);//Iniçializa a porta Serial
pinMode(ledVerde, OUTPUT);//Definido ledVerde como SAIDA
pinMode(ledAmarelo, OUTPUT);//Definido ledAmarelo como SAIDA
pinMode(ledVerm, OUTPUT);//Definido ledVerm como SAIDA
}

//FUNÇÕES COMPLEMENTARES
void debug (){
Serial.println(analogRead(ntc));//Imprime a leitura do ntc na porta Serial
delay(200);//Temporiza por 200 ms
}
//30 = 385 ; 50 = 563 ;

//PROGRAMA PRINCIPAL
void loop() {
temperatura = analogRead(ntc);//Carrega a variavel temperatura com o valor da leitura do ntc
if(temperatura < 385){//Se temperatura for menor que 30 graus
digitalWrite(ledVerde, HIGH);//ledVerde acende
digitalWrite(ledAmarelo, LOW);//ledAmarelo apaga
digitalWrite(ledVerm, LOW);//ledVerm apaga
}
else if(temperatura <= 563){//Se temperatura for menor ou igual a 50 graus
digitalWrite(ledVerde, LOW);//ledVerde apaga
digitalWrite(ledAmarelo, HIGH);//ledAmarelo acende
digitalWrite(ledVerm, LOW);//ledVerm apaga
} else {
digitalWrite(ledVerde, LOW);//ledVerde apaga
digitalWrite(ledAmarelo, LOW);//ledAmarelo apaga
digitalWrite(ledVerm, HIGH);//ledVerm acende
}
}
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5039
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

exercicio 2.07 Empty Re: exercicio 2.07

Qua Set 23, 2020 10:17 pm
Muito bom, nota 10.0
Conteúdo patrocinado

exercicio 2.07 Empty Re: exercicio 2.07

Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos