Ciao a tutti, sono alle prime armi con Arduino e vi chiedo gentilmente di aiutarmi a risolvere questo dubbio, che per voi sarà banale
...
Il mio obiettivo è di avviare e fermare un motorino (che poi verrà sostituito da una piastra elettrica che farà da drive per un processo termico) con un relè in base alla temperatura controllata dal sensore MAX31850.
Ho collegato il relè ai 5V, al GND e al pin 7 di arduino. In uscita ho 2 cavi, uno collegato tramite breadbord al + di una batteria da 9V e l'altro è quello che deve dare corrente al motorino quando il relè si attiva. La terza uscita è quella normalmente chiusa del relè.
Il sensore di temperatura funziona (collegato al gnd,5V e pin 2).
ALLEGO lo schema per chiarezza.
Il problema penso sia a monte del relè, in quanto non mi switcha il contatto.
riporto qua sotto il codice utilizzato:
#include <LiquidCrystal.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS_1 2
OneWire oneWire_1(ONE_WIRE_BUS_1);
DallasTemperature sensor1(&oneWire_1);
const float baselineTemp = 24.0; //temperatura impostata
int relayPin = 7;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(relayPin, OUTPUT);
//digitalWrite(relayPin,HIGH);
delay(500);
sensor1.begin();
}
void loop() {
// put your main code here, to run repeatedly:
sensor1.requestTemperatures(); // Send the command to get temperatures
float temp_meas=sensor1.getTempCByIndex(0);
Serial.println(temp_meas);
if(temp_meas<=baselineTemp){
digitalWrite(relayPin,HIGH);
Serial.print(temp_meas);
Serial.println("ACCENDI");
delay(500);
}
else if(temp_meas>baselineTemp){
digitalWrite(relayPin,LOW);
delay(500);
}
}
