Ingresso 12 V su 3,3 V GPIO, TVS abbattuto o Schottky tirato su?


12

Sto costruendo il mio PLC che deve accettare ingressi permanenti fino a 30 V CC in un STM32F con ingressi 3,3 V.

L'ingresso commutato dovrà funzionare con 8-30 V, ma il 90% delle volte la tensione di ingresso sarà fissata a 12 V o 24 V. Gli ingressi saranno sempre e solo interruttori come i finecorsa, quindi non mi preoccupo di rilevare ingressi inferiori a 8 V o ingressi da sensori, ecc., Inoltre, non sono preoccupato per la velocità poiché realisticamente il più veloce che gli interruttori si sposteranno ogni 1 s; Devo solo essere sicuro che il mio microcontrollore sia protetto.

Voglio un circuito universale che posso usare in più prodotti / progetti di tipo simile, quindi il conteggio dei componenti, i costi e lo spazio PCB devono essere minimi, quindi non voglio davvero utilizzare gli accoppiatori ottici.

Due ingegneri elettronici hanno raccomandato quanto segue, ma non sono sicuro del modo migliore:

Inserisci qui la descrizione dell'immagine

Dovrei usare quello in alto o quello in basso? Qualche perchè?


5
Di solito non lo dico, ma sembra un buon posto per un fotoaccoppiatore.
Matt Young,

@MattYoung potresti aggiornare il tuo commento per dire perché sarebbe necessario un fotoaccoppiatore?
Richard Chambers,

1
Il circuito che chiedo in questa domanda è un circuito di ingresso da un PLC di marca importante.
Ron Beyer,

Risposte:


17

Questo è in realtà un problema secolare con i PLC e non è così semplice come le soluzioni previste.

Il problema più grande che hai è che oltre ad avere una grande varietà di potenziali tensioni logiche che devi essere in grado di gestire, i livelli logici effettivi possono essere molto più alti della guida 3.3V che stai utilizzando internamente. Alcuni sensori e dispositivi hanno soglie logiche superiori a 5 V. Pertanto, il semplice utilizzo di un circuito di interruzione, come indicato, non rileverà il livello basso di tali sensori.

Lo stadio di input dei PLC deve essere molto più flessibile.

Anche se il livello logico di basso livello è accettabile, ciascuno di questi circuiti presenta problemi diversi.

Limitazione Zener / TVS.

inserisci qui la descrizione dell'immagine

Questo circuito ha il vantaggio che, per una tensione di ingresso nota, lo zener può essere dimensionato per non consentire mai alla tensione di superare la tensione della rotaia. Normalmente si sceglierebbe uno zener con una tensione inversa più piccola rispetto alla guida, ma superiore alla soglia logica di alto livello.

Tuttavia, lo zener trascorrerà gran parte della sua vita inversa, in quanto tale si paga una penalità sotto forma di tempo di recupero inverso quando il segnale di ingresso diminuisce che ritarderà il segnale di un fumo.

VIH

Diodo limitatore over-rail

inserisci qui la descrizione dell'immagine

L'uso del diodo fino al binario ha il problema che la tensione di uscita continuerà a superare Vcc, anche se solo di poco. Tuttavia, ciò può comunque essere dannoso per l'input. Inoltre, in questo caso il tempo di recupero inverso significa che, per fronti di ingresso rapidi, un'alta tensione lo farà passare molto brevemente.

Così

VOL

alternative


Opto-accoppiamento.

Un metodo comune utilizzato dai PLC è l'uso di accoppiatori ottici.

schematico

simula questo circuito - Schema creato usando CircuitLab

Questo metodo offre l'ulteriore vantaggio dell'isolamento e della separazione del terreno. Il problema è che è necessario un qualche tipo di condizionamento del segnale tra il sensore e l'ingresso per garantire che il LED sia acceso alla soglia corretta e che la corretta quantità di corrente sia alimentata attraverso il LED. Tale condizionamento potrebbe essere il semplice resistore mostrato sopra o un circuito complesso che include un comparatore di qualche tipo.

Anche la velocità dell'accoppiatore ottico è un fattore limitante. Tuttavia, questo metodo è comunemente usato perché ti dà la massima flessibilità.

Condizionamento dell'ingresso analogico

Un altro metodo è quello di accettare il segnale in una forma analogica, confrontarlo con un riferimento variabile con isteresi e generare il livello logico in quel modo.

schematico

simula questo circuito

Ovviamente i componenti, incluso il comparatore, devono essere scelti per adattarsi alle tensioni di ingresso massime. Il circuito mostrato è abbastanza semplice, può diventare molto più complesso con filtri, regolatori, protezione ESD ecc.

Combinazione

Per motivi di isolamento, è possibile combinare quanto sopra e fare in modo che il comparatore fornisca un driver di corrente costante al LED di un accoppiatore ottico.

Se avessi sviluppato un prodotto, avrei assemblato tutto ciò su un piccolo modulo plug-in che potrebbe essere inserito in prese sul bordo della scheda su una scheda "madre", come usano per le schede nei PC. In questo modo puoi sostituirli facilmente se uno si frigge. Tale metodo consente anche di rendere disponibili altri tipi di input, ad esempio un input in fibra ottica.


2
Un BJT o un FET non sarebbe un modo buono, sicuro ed economico per farlo? OK, il segnale verrebbe invertito, ma il software lo risolverebbe. Domanda genuina, non cercando di essere intelligente.
DiBosco,

VOL

Grazie per la tua risposta molto dettagliata, ho appena aggiornato la mia domanda per rispondere ad alcuni dei problemi che hai menzionato. La tensione di ingresso sarà di 8-30 V con una frequenza massima di 1 secondo
Terry Gould,

@TerryGould cool, allora ti ho già mostrato praticamente tutto quello che devi sapere :)
Trevor_G

Cambierebbe molto se l'ingresso fosse tollerante a 5V? Molti su STM32F sono, con massimo assoluto a 5,3 V. Anche Vih è 0,7 * Vdd, quindi 2,3 V per una guida da 3,3 V.
Jan Dorniak,

5

100k è troppo alto. Si innescherebbe da quasi tutti i relè o le operazioni di commutazione nelle vicinanze. Non molto affidabile per un PLC se me lo chiedi.

In realtà ci sono standard e regolamenti per i PLC . Dal momento che vorresti che tutti i fornitori di PLC avessero un comportamento simile nelle installazioni, e sarebbe bello se diversi modelli potessero essere collegati tra loro senza problemi.

Ad esempio, l'ingresso considera solo una su quando è affonda almeno ~ 2 mA ed è sopra 10V. (IEC 61131-2) secondo 61131-2

Non puoi ottenerlo proprio con i passivi, motivo per cui ci sono parti come SN65HVS880.

Nella mia risposta precedente ho fornito un esempio schematico di come puoi provare ad avvicinarti a questo comportamento con i passivi *.

Un semplice 100K e un BAT54S non saranno affidabili, posso dirlo per esperienza.

esempio di input plc
risposta precedente

* trigger schmitt separato non essenziale


2

Entrambi sono accettabili Dovrai assicurarti che il resistore sia dimensionato correttamente in modo che la corrente di ingresso non faccia scendere la tensione di ingresso sotto V_IH, ma con CMOS questo è banale poiché la corrente di ingresso è così piccola (100k va quasi sicuramente bene)

Con il secondo l'unico avvertimento è che devi essere sicuro che il carico totale su 3,3 v non sia mai inferiore a 30 V / 100 k (volte per quanto molti ingressi hai), altrimenti la guida da 3,3 V potrebbe essere tirata su tensione che potrebbe danneggiare i dispositivi su di esso. Se si mette il micro in modalità di sospensione, potrebbe assorbire così poco.

L'altro avvertimento è che in entrambi i casi la resistenza da 100k agisce con la capacità di ingresso come filtro passa basso, che rallenta gli ingressi. Se c'è una capacità di ingresso di 10pF, avranno una frequenza di commutazione massima di circa 100kHz e un ritardo di circa 2 microsecondi.


VOL

"Né funziona se VOL del sensore collegato> 1,5 V o giù di lì." - aggiungere una resistenza da GPIO a terra per formare un divisore di tensione. Problema risolto!
Bruce Abbott,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.