INTERFACCIA RELE' PER PC


 
Introduzione
Descrizione
Elenco Componenti
Collaudo e messa a punto
Relay.exe
Accendi.exe
Spegni.exe
Binary.exe
Delay.exe

Wsec.exe
Waitfor.exe

Possibili Applicazioni del Circuito
Clicca sull'immagine per ingrandirla

Fig.1 - Interfaccia rele' montata in contenitore plastico


INTRODUZIONE


Con il rapido progresso della tecnologia dei computers, quasi ognuno di noi dispone di un vecchio 8088 o un 286 che non sa come utilizzare.

Questi computer sono disponibili per essere adoperati come controllori dedicati ad usi particolari come accendere/spegnere luci o altri apparati elettrici.

Il progetto descrive un circuito semplicissimo per comandare 7 rele' di potenza tramite l'interfaccia parallela del PC.



Foto: S. Mastropietro



Ogni rele' viene comandato dallo stato ON/OFF di un predefinito bit della porta parallela.

Di seguito viene riportato l'elenco della documentazione:

>>> Torna all'indice


DESCRIZIONE

Il circuito e' imperniato sull'integrato ULN2003.

All'interno del chip sono alloggiati 7 darlington di potenza con i quali vengono pilotati altrettanti rele' RL1-RL7.

I transistor sono adatti a ricevere in ingresso espressamente dei livelli a 5 Volt.

I diodi di volano che normalmente si aggiungono per evitare le extratensioni di spegnimento della induttanza dei rele' sono gia' contenuti nel chip stesso.



Foto: S. Mastropietro



E' ovvio che i transistor invertono la polarita' del segnale d'ingresso.

Il condensatore C1 e' usato come filtro la tensione d'alimentazione a 24V.

Il cavo della parallela va collegato al connettore P9.

La tensione di alimentazione dei rele' va collegata al connettore P8.

Il cavo verso la porta parallela non dovrebbe superare la distanza di un metro, anche se non dovrebbero esserci problemi visto che il circuito non ha elementi di memoria.

Ogni uscita del rele' dispone di un deviatore collegato ai connettori P1-P7 a 3 vie corrispondenti ai rele' RL1-RL7 rispettivamente.

Il pin 2 di ogni connettore corrisponde al centrale del deviatore mentre il pin 1 e' relativo al contatto NO e il pin 3 al contatto NC.

Ad ogni rele' e' associato un led verde che si accende quando la bobina relativa e' eccitata.

Le resistenze vengono utilizzate per polarizzare i led.

Per semplificare il circuito stampato e' stato previsto il montaggio delle resistenze in verticale.

Ogni rele' dispone di un deviatore doppio.

Per semplicita' e' stato utilizzato un solo deviatore sfruttando sia il contatto normalmente chiuso che quello normalmente aperto.

Qualora non servisse il contatto normalmente chiuso (caso piu' comune) e' possibile usare dei connettori a 2 vie invece che tre, lasciando libero il foro relativo al pin 3.

Per questo circuito sono stati utilizzati dei rele' a 24 V.

E' possibile usare anche rele' con  tensioni di funzionamento diverse da 24 V, purche' inferiori, cambiando se necessario il valore delle resistenze dei diodi. 

>>> Torna all'indice  


ELENCO COMPONENTI


Piastrina

Cavo di collegamento

Clicca sull'immagine per ingrandirla

Fig.2 - Interno dell'interfaccia

>>> Torna all'indice


COLLAUDO E MESSA A PUNTO


Preparare un cavo flat a 16 pin collegando da un lato un IDC 16 femmina e dall'altro un connnettore DB25 maschio.

Durante la crimpatura del connettore DB25 accertarsi di posizionare il cavo flat sul lato estremo del pin 1.



Foto: S. Mastropietro



Cio' e' dovuto al fatto che vengono utilizzati solo i pin 1-8 e 14-21 della porta parallela lasciando gli altri 9 inutilizzati.

Per il controllo dei rele' sono utilizzati i bit D0-D6 della porta parallela.

Per semplificare il circuito stampato ed evitare l'uso di un biplaccato, la connessione dei pin e' stata realizzata in ordine inverso a quello che ci si poteva aspettare:

D0 = RL7
D1 = RL6
D2 = RL5
D3 = RL4
D4 = RL3
D5 = RL2
D6 = RL1

Nella programmazione della porta bisogna tener conto di questo fattore.

Scompattando il file relativo alla parte software si possono trovare all'interno tre utility DOS:


Creare una directory di destinazione dei file e utilizzare il PC in modalita' DOS per evitare problemi con Windows.

Connettere una sorgente di tensione continua a 24V sul connettore P8.

Connettere 7 carichi sui connettori P1-P7.

Collegare il cavo flat accertandosi del corretto orientamento del pin 1 sul connettore P9 a meno che non abbiate usato un IDC polarizzato per evitare l'inversione del collegamento.

Lanciare il batch file TEST.BAT e controllare che i rele' si attivino e disattivino in sequenza da RL7 a RL1 con una cadenza di un secondo.

Vedere anche gli altri due esempi TEST1.BAT e TEST2.BAT per vedere l'uso di: ACCENDI, SPEGNI e BINARY.

Utilizzando le utility descritte e' possibile creare dei file batch secondo i gusti.

Clicca sull'immagine per ingrandirla

Fig.3 - Vista posteriore del contenitore

>>> Torna all'indice


RELAY.EXE


L'utility RELAY va utilizzata nel seguente modo:

RELAY <hex byte>

Il valore di hex byte puo' essere specificato nel range 00h (tutti i rele' OFF) - 7Fh (tutti i rele' ON).

Esempio: RELAY 5A

La porta parallela generera' l'output 5Ah (binary 0101 1010) causando l'attivazione dei rele' RL6, RL4, RL3, RL1.

Di seguito viene riportato il sorgente del programma.

Relay .c

>>> Torna all'indice


ACCENDI.EXE


L'utility ACCENDI va utilizzata nel seguente modo: 

ACCENDI <N. rele'> con il numero di rele' da attivare (da 1 a 7)

Di seguito viene riportato il sorgente del programma.

Accendi.c

>>> Torna all'indice


SPEGNI.EXE


L'utility SPEGNI va utilizzata nel seguente modo: 

SPEGNI <N. rele'> con il numero di rele' da disattivare (da 1 a 7)

Di seguito viene riportato il sorgente del programma.

Spegni.c

>>> Torna all'indice


BINARY.EXE


L'utility ACCENDI va utilizzata nel seguente modo: 

SPEGNI <bin> con il numero binario composto da 7 bits

Di seguito viene riportato il sorgente del programma.

Binary.c

>>> Torna all'indice


DELAY.EXE


L'utility DELAY va utilizzata nel seguente modo:

DELAY <millisecondi>

Il valore massimo ammesso e' 32767. Il programma non controlla che il parametro possa avere valore minore di 1 o maggiore di 32767.

Esempio: DELAY 100

Il programma rimane fermo per 100 millisecondi prima di terminare.

Di seguito viene riportato il sorgente del programma.

Delay.c

>>> Torna all'indice


WSEC.EXE  



L'utility WSEC va utilizzata nel seguente modo:

WSEC <secondi>

Il valore massimo ammesso e' 32767. Il programma non controlla che il parametro possa avere valore minore di 1 o maggiore di 32767.

Esempio: WSEC 10

Il programma rimane fermo per 10 secondi prima di terminare.

Di seguito viene riportato il sorgente del programma.

Wsec.c

>>> Torna all'indice


WAITFOR.EXE


L' utility WAITFOR va utilizzata nel seguente modo:

WAITFOR <HH:MM>

La notazione usata e quella in ore-minuti su 24 ore.

I valori ammessi sono 0-23 per HH e 0-59 per MM.

Esempio: WAITFOR 18:30

Con questo comando, il PC rimane in attesa fino alle ore 6 e 30 del pomeriggio.

Di seguito viene riportato il sorgente del programma.

waitfor.c

>>> Torna all'indice


POSSIBILI APPLICAZIONI DEL CIRCUITO


Il circuito e' stato progettato come complemento al Progetto del Presepio Elettronico Multimediale per aggiungere ulteriori 7 uscite ON/OFF di potenza.

I contatti dei rele' sostengono una corrente nominale di 10A @ 220V pari a oltre 2KW, ma per ragioni di affidabilita' sarebbe opportuno limitare la corrente a 3/4 A, specialmente per carichi fortemente induttivi.

Un'altra interessante applicazione e' quella di un timer programmabile a 7 uscite.



Foto: S. Mastropietro


E' possibile utilizzarlo come timer one-shot.

Ad esempio lo uso come timer per il bromografo o per il cancellatore di EPROM.

Con la potenzialita' del PC e' possibile programmare il timer per tempi molto lunghi e stabilire l'accensione e lo spegnimento delle uscite ad ore prestabilite.

Tenuto conto della notevole potenza che il circuito riesce a controllare, potrebbe anche essere utilizzato per accendere e spegnere una insegna luminosa costituita da sette gruppi di lampade, creando degli splendidi effetti durante le feste natalizie o altri tipi di manifestazioni.

>>> Torna all'indice


Scritto da Sergio Salvitti - All Rights Reserved @ 2004 - www.salvitti.it