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

Ir para baixo
joao bruczkovski
joao bruczkovski
Mensagens : 46
Data de inscrição : 27/06/2022
Idade : 15
Escola : Colegio Estadual Prof Lindaura Ribeiro Lucas

Exercicio 1.13 Empty Exercicio 1.13

Ter Out 18, 2022 4:23 pm
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.13
* Tema: Pinos Analógicos
* Atividade: Fazer o led alternar o brilho conforme variações de temperatura.
* Descrição: Usar um pino analógico para controlar o brilho do led e uma entrada analógica para captar a temperatura pelo NTC
* Hardware: Ligar um led em um pino digital configurado como SAÍDA ANALÓGICA e o NTC em uma entrada analógica
* Comandos: pinMode(), analogRead(), analogWrite(),map()
* 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:O LDR não gera valores proximos a zero nem a próximos de 1023 então usar a função map() para ajustar a escala
* Dica3:Escrever o valor lido do NTC no led, tente também fazer o brilho inversamente proporcional a temperatura
*/

//DEFINICOES INICIAIS
#define ntc A0 //define o ntc no pino A0
#define led 3 //define o led1 no pino 3

//DECLARAcAO DE VARIAVEIS GLOBAIS
int temperatura; //variavel para guardar a temperatura

//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600); //começa a imprimir a porta serial
pinMode(led, OUTPUT); //led definido como saída
}

//FUNÇÕES COMPLEMENTARES
void debug(){
Serial.print("temperatura = "); //mensagem na porta serial igual
Serial.println(temperatura); //temperatura estimada
}

//PROGRAMA PRINCIPAL
void loop() {
temperatura = map(analogRead(ntc), 279, 930, 255, 0); //temperatura é ígual a função map e o ntc é configurado como pino analogico
debug(); //tudo o que esta dentro da função debug
analogWrite(led, temperatura); //led definido como pino analogico
} Very Happy Very Happy
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5788
Data de inscrição : 11/02/2019
Idade : 53
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

Exercicio 1.13 Empty Re: Exercicio 1.13

Qui Out 20, 2022 12:40 am
João o programa está correto e funcionou corretamente. Nota 10.0
No comentário da função map(), melhor seria dizer que corrige as variações dos valores de entrada do conversor AD para os valores da grandeza fisica medida, no caso a temperatura.
joao bruczkovski
joao bruczkovski
Mensagens : 46
Data de inscrição : 27/06/2022
Idade : 15
Escola : Colegio Estadual Prof Lindaura Ribeiro Lucas

Exercicio 1.13 Empty Re: Exercicio 1.13

Qui Out 20, 2022 2:53 pm
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.13
* Tema: Pinos Analógicos
* Atividade: Fazer o led alternar o brilho conforme variações de temperatura.
* Descrição: Usar um pino analógico para controlar o brilho do led e uma entrada analógica para captar a temperatura pelo NTC
* Hardware: Ligar um led em um pino digital configurado como SAÍDA ANALÓGICA e o NTC em uma entrada analógica
* Comandos: pinMode(), analogRead(), analogWrite(),map()
* 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:O LDR não gera valores proximos a zero nem a próximos de 1023 então usar a função map() para ajustar a escala
* Dica3:Escrever o valor lido do NTC no led, tente também fazer o brilho inversamente proporcional a temperatura
*/

//DEFINICOES INICIAIS
#define ntc A0 //define o ntc no pino A0
#define led 3 //define o led1 no pino 3

//DECLARAcAO DE VARIAVEIS GLOBAIS
int temperatura; //variavel para guardar a temperatura

//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600); //começa a imprimir a porta serial
pinMode(led, OUTPUT); //led definido como saída
}

//FUNÇÕES COMPLEMENTARES
void debug(){
Serial.print("temperatura = "); //mensagem na porta serial igual
Serial.println(temperatura); //temperatura estimada
}

//PROGRAMA PRINCIPAL
void loop() {
temperatura = map(analogRead(ntc), 279, 930, 255, 0); // corrige as variações dos valores de entrada do conversor AD para os valores da grandeza fisica medida
debug(); //tudo o que esta dentro da função debug
analogWrite(led, temperatura); //led definido como pino analogico
} Very Happy Very Happy
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5788
Data de inscrição : 11/02/2019
Idade : 53
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

Exercicio 1.13 Empty Re: Exercicio 1.13

Qui Out 20, 2022 9:18 pm
João, não precisava refazer o exercício. Ja tinha dado nota 10.0, a orientação sobre o comentário te passei para ajudar a entender melhor o comando ou deixar o comentário mais claro.
O que interessa é o conhecimento, como passei não precisa devolver, por isso dei a nota.
Conteúdo patrocinado

Exercicio 1.13 Empty Re: Exercicio 1.13

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