Vai al contenuto
PLC Forum


Programma Settimanale


Messaggi consigliati

Inserito:

Salve a tutti,

ho un quesito da porvi, tanto per cambiare.

Il mio sistema è composto da un plc serie 200 (cpu 226) e da un pannello Siemens MP 277 o in alternativa un tp 270.

Utilizzando l'orologio del pannello devo poter "tenere alto" un segnale per un periodo di tempo impostabile.

Forse un esempio è più chiaro: io devo far funzionare una motore solamente dalle 12.00 di venerdì alle 05 .30 di martedì di ogni settimana.

Per ora ho creato la pagina dove impostare il giorno della settimana, l'ora e i minuti di inizio ed il giorno della settimana, l'ora e i minuti della fine. Inoltre ho prelevato la data e l'ora del pannello.

Ora manca la parte più difficile.


Inserita:

Ciao mazzucconi, una volta ho risolto il tuo problema con semplice scrip su OP, il quale mi settava/resetta una memoria per attivare un allarme di inizio produzione.

Altrimenti devi demandare il tutto al PLC, (prima cosa sincronizzare l'ora tra OP e PLC)

A te la scielta.

Se lo recupero vedo di inviarti lo script.

Inserita:

Caro Mazzuconi,

La cosa piu' affidabile e' associare tutto al controllo dell'orologio PLC , anche perche' questa funzione ti permette un controllo sicuro anche se il pannello fosse scollegato o assente.

E' molto semplice, usa la funzione READ_RTC , e specifica nel dato di uscita il byte dal quale il plc scrive le informazioni una volta eseguita l'operazione.

I dati averranno disposti in questo modo se ad esempio scegli di usare la VB100 come partenza:

VB100 =anno (0-99) formato BCD

VB101 = mese formato BCD

VB102 = giorno formato BCD

VB103 = ora formato BCD

VB104 =minuti formato BCD

VB105 = Secondi formato BCD

VB106 = Riservato Siemens sempre a zero

VB107 = Giorno della settimana 1=domenica (valore BCD)

Converti i valori da BCD a INT , e poi esegui dei semplici confronti sul singolo byte per attivare quello che ti pare , quando ti pare.

Esempio

LDB>= VB100, 7 //l'anno 2007

AB>= VB101, 8 // il mese di agosto

AB>= VB103, 1 // il giorno 1

AB>= VB104, 18 // alle ore 18

AB>= VB105, 2 // e due minuti

AB>= VB105, 10 // e 10 secondi

S M10.0, 1 // setto l'uscita

Ciao

Ivan

Inserita:
prendi l'ora di sistema e convertila in secondi (o in minuti se la precisione di +/- min. ti basta), fai lo stesso con il dato impostato dal tuo Cliente (p.e. le 15:30 = 15*60 + 30 => min dalla mezzanotte; *60 = sec. dalla mezzanotte), poi esegui un normale confronto fra il tuo risultato e l'ora di sistema convertita.

E' un metodo molto semplice e sicuro (debug immediato).

Questo l'ho trovato sul forum, è una vecchia discussione !

Segui questa strada !

Ciao

Inserita:

Grazie per i consigli, ma per quanto riguarda l'orologio plc credo sia hardware e il posto del modulo è già occupato da una eprom.

Per questo motivo devo utilizzare l' ora del pannello.

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...