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 ?
Tags:
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);
}
}
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por