Problema con relè

Ciao a tutti, sto cercando di far funzionare una scheda a singolo relè, ho scritto un semplice programmino che mi dovrebbe attivare e disattivare a intervalli di 2 sec. il relè; Lo collego ma il relè non si attiva e disattiva; rimane attivato; Ho cambiato pin digitale, ma mi da lo stesso problema; così ho testato con voltmetro se la tensione del pin digitale in questione cambiava con regolarità;
La tensione passa a intervalli regolari di 2sec da 0V a 3.34V; Mi sapete indicare perchè il relè non si attiva e disattiva?
Il relè in questione è quello in allegato;

Non si vede l’allegato :slight_smile:
Inoltre metti anche uno schema (anche disegnato a mano o una foto di buona risuoluzione) di come hai collegato il relé e il codice che hai scritto (tra gli appositi tag CODE) così abbiamo di fronte lo scenario completo e riusciamo ad aiutarti meglio

Ho riallegato l’immagine,non penso sia un errore di codice… perchè il pin digitale cambia il suo stato … . Il collegamento effettuato è : Vcc al+5V arduino,GND al GND arduino e IN al pin digitale impostato come uscita.

Stando così le cose direi che hai fatto tutto correttamente, l'unica cosa che ti posso suggerire (se non lo hai già fatto) è quello di mettere dei messaggi di debug sul monitor seriale all'avvio di Arduino (nel setup quindi) e ogni volta che lo stato del pin cambia per verificare che l'attivazione del relé non resetti Arduino (non credo m non si sa mai) per troppo assorbimento. Se si resetta prova ad alimentare Arduino da un alimentatore anziché dalla porta USB o a cambiare porta USB (alcune erogano veramente pochi pochi mA è già capitato ad altri utenti del forum). Se non si resetta allora ti chiedo questo, se tu stacchi il pin IN dal pin digitale e lo colleghi direttamente a GND o +5V il relé scatta? Se non scatta neanche così il relé, o il circuito di controllo, è rotto

Ah altra cosa che mi è venuta in mente, hai provato a cambiare pin di Arduino per attivare il relé? Magari è rotto il Pin di Arduino

Per quanto riguarda i messaggi di debug sul monitor seriale, l'ho fatto; a intervalli di 2 sec passa il messaggio da low a high... Ho provato a cambiare anche pin e la situazione è sempre la stessa; Ho provato a scollegare il pin IN e il relè scatta; Non mi resta che provare ad alimentare da un'altra sorgente;

Hai anche il messaggio in Avvio nel setup? Perché visti i tempi lunghi (2secondi) se entra in funzione il BOD o un interferenza che fa riavviare senza quello non te ne rendi conto. Altre idee per ora non me ne vengono in mente...

Mi sa che c'è qualche problema fra le tensioni di alimentazione... La scheda del relè è alimentata a 5V, mentre Arduino a 3,3V?

Sicuro che bastino 3.34V per attivarlo? In genere si attivano al 75% della tensione nominale e si disattivano sotto il 10% quindi, essendo un relè da 5V dovrebbero servire circa 3,75V

maubarzi: Sicuro che bastino 3.34V per attivarlo? In genere si attivano al 75% della tensione nominale e si disattivano sotto il 10% quindi, essendo un relè da 5V dovrebbero servire circa 3,75V

e come faccio ad aumentare la tensione del pin digitale arduino?

tech2019:
La tensione passa a intervalli regolari di 2sec da 0V a 3.34V; Mi sapete indicare perchè il relè non si attiva e disattiva?

Beh intanto sai che in genere vanno a logica negativa, si? Ossia per attivarlo devi mandarlo LOW, non HIGH.
Secondo, posta comunque il tuo codice, non si sa mai.
Terzo, se metti HIGH il pin non vedo perché dovrebbe andare a 3.3V e non a 5V. Ma tu hai collegato il carico a quel relé o lo stai facendo andare per test senza carico, sentendo lo scatto? E se hai messo del carico, come è collegato? Insomma, come ti ha chiesto anche fabpolli, metto programma e schema di TUTTI i collegamenti, e vediamo.

Dacci queste info e vediamo.

Se Arduino è alimentato a 3,3V e la scheda a relè a 5V e vuole una chiusura a massa, è probabile che con 3,3V si ecciti come con una chiusura a massa.

Non avevo pensato a quest'aspetto, in effetti sbaglio sempre e ragiono che se non specificato l'utente usa Arduino Uno. Quindi l'altra domanda è: Che Arduino usi?

docdoc: Beh intanto sai che in genere vanno a logica negativa, si? Ossia per attivarlo devi mandarlo LOW, non HIGH. Secondo, posta comunque il tuo codice, non si sa mai. Terzo, se metti HIGH il pin non vedo perché dovrebbe andare a 3.3V e non a 5V. Ma tu hai collegato il carico a quel relé o lo stai facendo andare per test senza carico, sentendo lo scatto? E se hai messo del carico, come è collegato? Insomma, come ti ha chiesto anche fabpolli, metto programma e schema di TUTTI i collegamenti, e vediamo.

Dacci queste info e vediamo.

void setup() { Serial.begin(9600); pinMode(8,OUTPUT); // put your setup code here, to run once: digitalWrite(8,LOW); }

void loop() { digitalWrite(8,LOW); Serial.println("low"); delay(2000); digitalWrite(8,HIGH); Serial.println("alto");

delay(2000); // put your main code here, to run repeatedly:

}

Datman: Se Arduino è alimentato a 3,3V e la scheda a relè a 5V e vuole una chiusura a massa, è probabile che con 3,3V si ecciti come con una chiusura a massa.

Alimento arduino con usb ed alla scheda stessa collego il modulo relè.

Allora prova così: Stacchi il filo che unisce il morsetto IN del rele e l'uscita del tuo arduino. Lo stacchi solo dalla parte Arduino. Quindi ti trovi in mano il filo collegato solo a IN Lo provi a collegare alternativamente al GND (arduino o rele è lo stesso) e a VCC Non devi collegarlo fisso, solo toccare alternativamente GND e VCC E ci dici cosa succede

steve-cr: Allora prova così: Stacchi il filo che unisce il morsetto IN del rele e l'uscita del tuo arduino. Lo stacchi solo dalla parte Arduino. Quindi ti trovi in mano il filo collegato solo a IN Lo provi a collegare alternativamente al GND (arduino o rele è lo stesso) e a VCC Non devi collegarlo fisso, solo toccare alternativamente GND e VCC E ci dici cosa succede

Quando lo collego al GND fa il tac e si accende la lucetta verde; quando tocco +5V non fa nulla;

Datman: Se Arduino è alimentato a 3,3V e la scheda a relè a 5V e vuole una chiusura a massa, è probabile che con 3,3V si ecciti come con una chiusura a massa.

Infatti dice che rimane attivato, essendo a logica negativa... mi sa che i 3,3 sono pochini.

Perfetto. Adesso sai che funziona in negativo. Quindi solo quando fai digitalWrite (pin, LOW). Per riportarlo a spento dovrai fare il contrario digitalWrite (pin, HIGH).

steve-cr: Perfetto. Adesso sai che funziona in negativo. Quindi solo quando fai digitalWrite (pin, LOW). Per riportarlo a spento dovrai fare il contrario digitalWrite (pin, HIGH).

Il fatto è che a me rimane sempre attivo, anche quando ho il pin in stato High perchè in tale stato è a 3.34V e non a 5V. Poichè ho provato anche con altri pin digitali e tutti sono a 3.34 V in high, sarà un problema della scheda ?

Che Arduino usi? Originale o clone? Ne hai un altro per provare?