Problema con relè

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?

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

E' un clone della WAVGAT.

Il relé funziona, i collegamenti sono corretti, il programma anche resta un malfunzionamento della scheda che non eroga la tensione necessaria a far disattivare il relé, o ne hai un altro per fare la prova e capire se effettivamente è quella scheda danneggiata e un altra uguale invece funziona o se entrambe le schede (uguali) non erogano la tensione necessaria allora funzionano così e non puoi usarle tal quali, in ogni caso se anche così fosse sono fuori specifiche quindi eviterei di usarle a prescindere.
Se poi le vuoi usare a tutti i costi ti serve frapporre al modulo relé un interfaccia con un transistor che ti permetta di pilotarlo 0-3V3 e usare questo per pilotare il modulo relé, ma non so se ne vale la pena transistor, resistenze cablaggio ecc. vedi tu

Ho anche un modulo a 8 relè optoisolati; con lo stesso codice il relè connesso si attiva e disattiva secondo aspettative; Mi sa allora che dovrò prendere un'altra scheda :frowning: ....... .

Probabilmente è solo la resistenza di pull-up del transistor della schedina ad un relé che è troppo bassa per i 3,3 volt.

Che valore di resistenza dovrei usare ? Magari riesco a recuperare la scheda....

Ad ogni modo grazie per l'aiuto che mi state dando.

Vedo le resistenze della scheda ad un relé che sono tutte da 1k. Guarda quella dell'altra scheda a relè che ti sta funzionando: magari sono diverse

Ne ha una da 510 e una 1000 Ohm, quella scheda lì però è optoisolata....

Immagino che, semplicemente, il microcontrollore sulla scheda sia alimentato a 3,3V...

Datman:
Immagino che, semplicemente, il microcontrollore sulla scheda sia alimentato a 3,3V...

Come faccio a controllare?

Pubblica una foto molto dettagliata

Ecco:

Non riesco a leggere la sigla completa dell'AMS1117: potrebbe essere -5 o -3.3. Comunque, solo misurando con un tester analogico o digitale la tensione direttamente sul microcontrollore potremo essere sicuri della tensione a cui è alimentato, poiché i 3,3V potrebbero andare solo al connettore per dispositivi esterni.
Cerca atmega328p datasheet e da lì scopri quali sono i pin di alimentazione su cui misurare la tensione. Il negativo del tester puoi metterlo a massa dove ti è più comodo.

E' un :

AMS 1117
5.0 H839MP