Pessoal, sou leigo com arduino e estou em um tcc que envolve a programação do mesmo, vcs possuem dicas para como fazer a seguinte programação: 

um termopar será ligado ao arduino para detectar temperaturas de 0 a 10 graus, quando essa faixa de temperatura for detectada, irá acionar um Led vermelho, quando Led ficar vermelho, ele irá acionar um relé que por fim acionaria uma eletroválvula, como poderia programar isso no arduino ?

Exibições: 133

Responder esta

Respostas a este tópico

Peguei esse código aqui e mudei algumas coisas:

https://www.filipeflop.com/blog/como-usar-o-termopar-tipo-k-com-ard...

Não esqueça de instalar a biblioteca do sensor (max6675.h)

Tá bem generico, dá pra melhorar bastante, mas já é alguma coisa.

#include <max6675.h>

/* Definições: GPIOs do Arduino utilizado na comunicação com o
MAX6675 */

#define LED 6
#define RELE 7
#define GPIO_SO 8
#define GPIO_CS 9
#define GPIO_CLK 10

int LIGAR_LED = 0; //TEMPERATURA
int LIGAR_RELE = 10; //TEMPERATURA


/* Definição: baudrate da comunicação com Serial Monitor */
#define BAUDRATE_SERIAL_MONITOR 115200

/* Definição: tempo entre leituras do MAX6675 */
#define TEMPO_ENTRE_LEITURAS 1000 //ms

/* Criação de objeto para comunicação com termopar */
MAX6675 termopar(GPIO_CLK, GPIO_CS, GPIO_SO);



void setup(){
Serial.begin(BAUDRATE_SERIAL_MONITOR);
pinMode(LED, OUTPUT);
pinMode(RELE, OUTPUT);
digitalWrite(LED, LOW);
digitalWrite(RELE, LOW);
}

/* Programa principal */
void loop(){
Serial.print("Temperatura: ");
Serial.print(termopar.readCelsius());
Serial.println("C");
LIGAR_LED_RELE();
delay(TEMPO_ENTRE_LEITURAS);
}


void LIGAR_LED_RELE(){
if(termopar.readCelsius() >= LIGAR_LED){
digitalWrite(LED, HIGH);
}
if(termopar.readCelsius() == LIGAR_RELE){
digitalWrite(RELE, HIGH);
}else{
digitalWrite(LED, LOW);
digitalWrite(RELE, LOW);
}
}

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço