Olá e Bom dia a todos,

Gostaria de saber se alguém poderia me ajudar a programação de um projeto que estou fazendo.

O projeto é uma estufa automatizada que estou montando com um arduino uno. Basicamente a ideia é que através de um sensor lm35, dependendo da temperatura, iria ser acionado três relés diferentes na saída. Porém consigo fazer a medição do sensor, mas não consigo ativar os relés de saída.

Cada relé funcionaria em uma faixa de temperatura. Espero que alguém possa me ajudar.

Obg e att

(:

Exibições: 1827

Responder esta

Respostas a este tópico

Mostre a programação, que podemos ajudar.

As temperaturas são pré-definidas ou controláveis por um display?

#include <LiquidCrystal.h> // Inclui a biblioteca para utilizar o LCD
#define sensor 0 // Define o pino A0 como sensor
#define resistencia 8
#define cooler 9
#define janela 10
int Ventrada; // Variável para ler o sinal do pino do Arduino
float Temperatura; // Variável que recebe o valor convertido para temperatura
LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // Define os pinos usados no LCD

void setup(){
lcd.begin(16, 2); // Inicia o LCD
lcd.print("Guaracy Silveira"); // Imprime permanentemente na linha 0
pinMode(resistencia,OUTPUT);
pinMode(cooler,OUTPUT);
pinMode(janela,OUTPUT);

}

void loop(){
Ventrada = analogRead (sensor); // Manda o Arduino ler o pino e armazena o valor em “Ventrada”
Temperatura=(500*Ventrada)/1023; // Converte o valor de tensão em temperatura e armazena em “Temperatura”
if Temperatura
lcd.setCursor(0, 1); // Move o cursor do display para a primeira coluna e segunda linha
lcd.print(Temperatura); // Exibe o valor de temperatura no display
lcd.print(" C"); // Escreve “°C” no lcd depois da temperatura

delay(1000); // Aguarda 1 segundo para efetuar uma nova leitura de temperatura
}

Agora queria acionar as saidas digitais 8,9,10 de acordo com a temperatura
ex: Quando a temperatura atingir 15 graus acionar saida 8, se chegar a 20 graus acionar a 9 e 10.

OBG

if ((temperatura > 15) and (temperatura<20)) 

{

digitalWrite(rele1,HIGH);

digitalWrite(rele2,LOW);

digitalWrite(rele3,LOW);

}

if (temperatura >= 20) 

{

digitalWrite(rele1,LOW);

digitalWrite(rele2,HIGH);

digitalWrite(rele3,HIGH);

}

else

{

digitalWrite(rele1,LOW);

digitalWrite(rele2,LOW);

digitalWrite(rele3,LOW);

}

caro amigo faça um switch case ai dentro de cada caso voce voce bota o valor binario lido pelo lm35.. entao quando o ad ler aquele valor vai ser correspondido ao caso do switch... e fazendo isso voce pode ativar junto a porta logica que ativa o transistor que por consequente ativar o relé... espero ter ajudado... qualquer coisa estou aqui

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço