Instabilità con Optoisolatore 817

Buongiorno, vi chiedo un aiuto con il seguente circuito:

Sto utilizzando Arduino Nano ESP32 quindi con logica a 3.3V.
Ho testato prima il circuito senza l'817 e funziona tutto perfettamente. Con il 817 ho fenomeni di instabilità (sulla chiusura del relè) che non mi riesco a spiegare. In particolare osservo che aumentando il valore di R1 l'instabilità è piu ridotta mentre aumentando la corrente l'instabilità aumenta:

R1= 30K -> rele non commuta
R1 = (da 1 a 3) K -> abbastanza bene
R1 = da 100 a 330 ohm -> peggio, oscilla abbastanza in chiusura

Avete qualche consiglio?

Le masse non sono in comune e il rele è un finder 12v dc

Puoi dirmi che modello è il finder? E che tipologia di carico hai nei contatti NC/NO del relè , per esempio R/LC/RLC.

Relè: 40.52.9.012.0000
Il test l'ho fatto senza carico, poi ci saranno i motori della chiusura automatica delle finestre.
Per completezza la sigla del 817 è "EL 817 C915"

Potrebbe essere qualcosa sull'alimentazione
Che cosa usi per il 12 volt?

Comunque manca il diodo in antiparallelo al relè

Vero, proverò con il diodo. Dovrebbe però essere un componente per salvaguardare il mosfet non credo che influenzi la stabilità del 817.
Come 12V uso un vecchi alimentatore da parete 12V 400mA.
La cosa antipatica è che senza 817 funziona perfettamente quindi credo che sia o lui o purtroppo la sua interazione con il mosfet ma non ci arrivo.
Ho un tester, se può essere d'aiuto ditemi che misure potrebbero essere rilevanti

Innazitutto i 12V, poi la tensione sul gate.

Ciao, Ale.

Come ti hanno precedentemente detto controllerei la tensione 12V e la sua stabilità. Se l'alimentatore è di quelli vecchi con trasformatore a 50Hz (lo riconosci perchè sono pesanti rispetto agli alimentatori switching) è possibile che la tensione non sia stabilizzata.

Premesse:

  • Un Arduino Nano ESP32 consuma tra 36 e i 280 mA, dipendenti dalla configurazione del WiFi ecc. Puoi trovare quello a cui faccio riferimento qua: Power Consumption on Arduino Boards | Arduino Documentation

  • Il relè di cui parli ha una bobina da 220ohm e un consumo di circa 54mA.

  • Per quanto riguarda il diodo di ricircolo di solito è necessario per salvaguardare l'interruttore, in questo caso il MOSFET, da sovratensioni prodotte dalla bobina interna del relè. Il MOSFET ha già un suo diodo interno quindi in questo caso non dovrebbero esserci problemi.

Misure:

  1. Verificare con il multimetro cosa accade alla tensione in uscita all'alimentatore quando effettui lo switch del relè.
  2. Verificare la tensione ai capi del collettore e dell'emettitore del BJT interno all'optoisolatore, prima a BJT aperto poi a BJT chiuso.

Suggerimenti/Domande:

  • Puoi momentaneamente togliere R2 che forma il partitore di tensione R1/R3 perché per sua natura il MOSFET ha un'altissima impedenza d'ingresso, ovvero scorrerà un corrente trascurabile tra il Gate e il Source o comunque abbassarla a un valore di 100ohm.
  • Perché vuoi usare proprio un MOSFET? Hai particolari specifiche sul risparmio energetico di tutto il sistema? Un banale BC337 potrebbe fare egregiamente il lavoro che richiedi a patto di ripolarizzare il circuito.

Cambiato R2=100ohm e sostituito l'alimentatore con uno piu recente, V_off=12.11V V_on=12.08V.
Ho provato con il diodo, non migliora anzi sembra che tolga potenza (click decisamente piu morbido).

Stavo facendo le misure, ho riavviato arduino con il pulsante reset e non ha piu funzionato. Smonto e ricollego e adesso non ha forza.
Ho provato a vedere se ho rovinato il pin ma non sembra, un led me lo accende.

Uhm molto strano...
Rovinato il pin potrebbe darsi quando hai messo R1 ha 100ohm, anche se supportano fino a 40mA di uscita i pin in quella configurazione (Source Current).

R1 = da 100 a 330 ohm -> peggio, oscilla abbastanza in chiusura

Fai un prova banale. Hai un alimentatore da banco o una tensione a 3.3V? Invece di attaccare anodo e catodo del optoisolatore ad arduino dagli tensione da quello.

E verifica se oscilla il relè

Avrò bruciato il 817, non funziona. Ci riprovo domani ora non ci sto piu con la testa, se continuo faccio danni. Mi consigliate i valori di R1, R2 ed R3 per il test?
Comunque ho scelto il mosfet perché consumano meno (non tanto per questo progetto ma in generale) e perché qualche giorno fa ne ho comperati 100 su Aliexpress. Sottolineo che con solo il bs170 funziona tutto è quella merda del 817 che complica il tutto

Nuovo 817 e alimentato il circuito a banco, lato potenza 11.30V, logica 3.28V.

R_1 = 220 (I_led=9.5mA)
R_2 = 100
R_3 = 10K

Rele ON
V_CE = 7.09 V_GS=8.10

Rele OFF
V_CE = 11.01 V_GS=11.01

Ogni tanto il rele cerca di scattare a off, non oscilla, fa un piccolo accenno ma torna subito a on

Con R_1 = 560 (I_led = 4mA )

Rele ON
V_CE = 8.71 V_GS=9.58

Rele OFF
V_CE = 11.02 V_GS=11.02

Con
R_1 = 1K --> non scatta
R_1 = O (ponticellato) --> non scatta

Con R1=0 il componente non si è bruciato perché tornando a R1=560 torna a funzionare!
E assurdo, maggiore è la corrente sul led maggiore dovrebbe essere la conduzione del transistor

Comunque con R1 = 560 ottengo il comportamento piu stabile, qualche volta salta ma soltanto dopo molto tempo

Rele ON
V_CE = 7.09 V_GS=8.10

La VCE a cui fai riferimento è quella del MOSFET o del BJT interno all'optoisolatore?

Il MOSFET ha la Vds... Però ci vogliono circa 16V per la Vce, la caduta sulla R da 1k e la Vgs!

BJT del optoisolatore

#Datman, scusa non ho capito.
Comunque solo cosi per sfizio ho provato a smontare un 817C da un modulo relè già pronto e magia, funziona

Con R1 = 220
Rele ON
V_CE = 5.6 e V_GS=3.4

Rele OFF
V_CE = 11.1 e V_GS=0.4

Con R1 = 560
Rele ON
V_CE = 8.5 e V_GS=1.9

Rele OFF
V_CE = 11.1 e V_GS=0.4

V_CE mi riferisco sempre al BJT del optoisolatore

Vorrei tirare quindi le somme, ho provato 3 diversi optoisolatori b1116 817c, wg pc817c 002 e el 817 c915 tutti e 3 nuovi e soltanto il b1116 817c ha funzionato, perché?
Vorrei capire meglio come funzionano questi componenti, come posso essere sicuro di lavorare in saturazione? Che modello devo scegliere se lato arduino ho V_in = 3,3V e I_max=7mA (mkr 1010)?

In alcuni schemi utilizzano un altra configurazione affermando che è il solo modo giusto

Insomma come posso essere sicuro che funzioni e magari di lavorare in saturazione (che optoisolatore devo scegliere e perchè)