Vai al contenuto
PLC Forum


Orologio S7200


plett ivan

Messaggi consigliati

Ciao ragazzi sto realizzando un programmino per il comando di un impianto di allarme.

Questa dovra accendersi ad una certa ora la sera e spegnersi la mattina sempre ad orario, ma non ho capito come si imposta l'orologio, qualcuno di voi può per cortesia crearmi i segmenti che dovrò inserire nel mio programmino per far accendere e spegnere l'allarme ad orario ? I programma da me creato è in kop, e la CPU è una S7200 224.

Ringrazio anticipatamente tutti gli amici del forum.

Ciao .

Link al commento
Condividi su altri siti


Ciao, scusa ma non riesco in questo momento a farti il programma, comunque le funzioni da usare sono le

Leggi orologio hardware (TODR) legge dall’orologio hardware l’ora e la data attuali e li carica in un buffer di 8 byte iniziando dall’indirizzo T.

L’operazioneImposta orologio hardware (TODW) scrive nell’orologio hardware l’ora e la data attuali iniziando dall’indirizzo del buffer di 8 byte specificato da T.

T anno

T+1 mese

T+2 giorno

T+3 ora

T+4minuti

T+5secondi

T+6 niente

T+7 giorno della settimana (1= domenica)

I valori della data e dell’ora devono essere codificati in formato BCD (ad esempio 16#97 per l’anno 1997).

Con semplici operazioni di confronto tra numeri BCD vai ad attivare il tuo segmento.

Se devi accendere una luce dalle 8:00 fino alle 20:00 farai un confronto se VBX (T+3) maggiore di 8 e minore di 20 allora....

Link al commento
Condividi su altri siti

Ciao Rimonta

ti ringrazio per la tua risposta, ma penso che solo non ce la farò, io per adesso ho creato i primi sette segmenti inserendo l' operazione leggi orologio hardware ( TODR ) e come o indirizzo di memoria ho messo relativamente per ognuno

VB0 = anno

VB1,= mese

VB2 = giorno

VB3 = ora

VB4 = minuti

VB5 = secondi

VB6 = niente

VB7 = giorno settimana

Come continuo ora ?

Ti ringrazio anticipatamente.

Link al commento
Condividi su altri siti

  • 2 weeks later...

Ciao a tutti gli amici del forum,

scusate la mia insistenza , ma nessuno di voi puo darmi una mano a realizzare i segmenti necessari per poter spegnere ed accendere un bit a una determinata ora tramite orologio hardware ? Rimonta è stato gentilissimo, ma la sua spiegazione non è sufficente al mio grado di preparazione.

Grazie.

Link al commento
Condividi su altri siti

Giuseppe Signorella


Network 1		 // Lettura dell'orologio HW dell'S7 200

LD SM0.0		 // Bit sempre ad 1

TODR VB100		 // Legge la data è l'ora e lo memorizza a partire da VB100 fino a VB107


Network 2		 // accendi alle 13:00 l'uscita Q0.0

LD SM0.0		 // Bit sempre ad 1

AB= VB103, 16#13         //DA ESPRIMERE IN ESADECIMALE

AB= VB104, 16#00

S Q0.0, 1		 // Setta ad 1 l'uscita Q0.0


Network 3		 // spegni alle 14:10 l'uscita Q0.0

LD SM0.0		 // Bit sempre ad 1

AB= VB103, 16#14         //DA ESPRIMERE IN ESADECIMALE

AB= VB104, 16#10

R Q0.0, 1		 // Resetta a 0 l'uscita Q0.0

Dove avrai come (come spiegato da rimonta)

VB100 = anno

VB101,= mese

VB102 = giorno

VB103 = ora

VB104 = minuti

VB105 = secondi

VB106 = niente

VB107 = giorno settimana

N.B. i valori devono essere espressi in esadecimale.

By By

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

Ciao Giuseppe,

ti ringrazio per la tua disponibilità, spero prima o poi di poter ricambiare, ma ti volevo chiedere se me lo puoi scrivere in Kop.

Grazie nuovamente !!!!!

Link al commento
Condividi su altri siti

Giuseppe Signorella

Non ho su questo pc il microwin, anche perché è da un po che non lo uso, ma il software è più tosto semplice, dovrebbe presentarsi pressapoco in questo modo:

RTC_S7_200.jpg

Link al commento
Condividi su altri siti

Giuseppe Signorella
Dove posso andare a leggere l'ora hardware della CPU ?

Forse sono io a non capirti, ma fino ad ora di cosa si è parlato nei post?

L'ora della CPU la leggi mediante l'apposita istruzione e la memorizzi integralmente nella memoria V sotto formato di byte, per l'esattezza 8 byte dove ogni singolo byte assume un significato ben definito e specificato nel manuale di sistema. (Che ti invito a leggere) Nell'esempio da me menzionato viene scritto a partire dalla VB100 fino alla VB107.

Unica precisazione, in alcune CPU devi inserire l'apposito modulo RTC che va inserito nell'apposita fessura frontale.

Modificato: da Giuseppe Signorella
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...