Vai al contenuto
PLC Forum


Micrologix 1500


willy76

Messaggi consigliati

Buongiorno a tutti,

                      stavo realizzando un nuovo quadro elettrico per una macchina autocostruita, premetto che non ho molta esperienza come programmatore plc.

La macchina è composta da 4 elettrovalvole e 2 teleruttori e viene comandata mediante un pulsante di start, stop e diversi selettori per le varie lavorazioni...

Essenso legata ad ogni selettore una lavorazione univoca volevo creare un controllo sugli stessi in modo da accendere una spia di allarme in caso di più selettori attivi allo stesso momento. Chiedo scusa per la spiegazione ma non saprei come spiegare in altro modo...

Supponendo di avere 6 selettori, uscirebbero un numero impressionanti di combinazioni... ho provato a cercare un po' in rete ma non ho capito con che comando posso effettuare questa segnalazione di allarme...

Dimenticavo, per programmare utilizzo Rslogix500.

Come ultima cosa vorrei un consiglio da parte vostra, ad ogni selettore corrisponde una lavorazione univoca con un relativo contatore. Volevo creare una subroutine (lad) per ogni conteggio (in modo da individuare subito il contatore in caso di modifica) e nel programma principale effettuare i richiami mediante JSR (jump to subroutine), secondo voi può creare problemi?

Scusate se per voi sono domande stupide ma vorrei imparare...

Grazie!

Link al commento
Condividi su altri siti


Giuseppe Signorella

Il metodo più semplice per che mi viene in mente ora per verificare se vi sono almeno due selettori attivi, è quello di farsi 6 confronti.

Andando a monitorare il peso dei bit all'interno di un byte. (Va bene monitorare semplicemente il byte della memoria immagine degli ingressi)

Ti faccio un esempio:

Ingresso primo selettore connesso al primo bit del byte

Ingresso secondo selettore connesso al secondo bit del byte 

Ingresso terzo selettore connesso al terzo bit del byte 

ecc

ecc

ecc

Ingresso sesto selettore connesso al sesto bit del byte 

Se il valore che leggi nel byte è 1 vuol dire che è attivo il primo selettore (do il consenso alla lavorazione e so anche che è stato selezionato il primo programma)

Se il valore che leggi nel byte è 2 vuol dire che è attivo il secondo selettore (do il consenso alla lavorazione e so anche che è stato selezionato il secondo programma)

Se il valore che leggi nel byte è 4 vuol dire che è attivo il terzo selettore (do il consenso alla lavorazione e so anche che è stato selezionato il terzo programma)

ecc

ecc

Se il valore che leggi nel byte è ad esempio 3 vuol dire che è attivo il primo ed il secondo selettore (non do il consenso alla lavorazione perche è stato selezionato il primo e secondo programma)

Buon lavoro

Modificato: da Giuseppe Signorella
Link al commento
Condividi su altri siti

Grazie mille! non ci avevo pensato...

Appena riesco ci provo e poi vi faccio sapere.... io mi immaginavo soluzioni molto più complesse... ammesso che ci riesco! :lol:

Link al commento
Condividi su altri siti

Pensavo era più facile... non riesco ad associare i vari selettori ai bit per poter fare il confronto... mi sa che per le mie conoscenza mi sono spinto troppo oltre! :lol:

Sarà il caso di studiare un pò... cercherò degli esempi in rete da cui prendere spunto.

Link al commento
Condividi su altri siti

  • 5 months later...

Se vuoi seguire la strada più semplice, devi fare solo 6 combinazioni anzi te ne bastano 5 

 

If X1 = 1 and (x2 or X3 or X4 or X5 or X6 =1) -> allarme

If X2 = 1 and (X3 or X4 or X5 or X6 =1) -> allarme

If X3 = 1 and (X4 or X5 or X6 =1) -> allarme

If X4 = 1 and (X5 or X6 =1) -> allarme

If X5 = 1 and X6 =1 -> allarme

 

Con questi hai esaurito tutte le posibbili combinazioni.

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...