Frank681 Inserito: 29 agosto 2016 Segnala Share Inserito: 29 agosto 2016 Salve Inizio una nuova discussione poiche' quella esistente era vecchia di 2 anni senz arisposta , ho necessita' di gestire il passaggi oda ora legale a solare nel PLC s7 315 2pn/dp senz aavere un pannellino di supporto per cui ho visto sul support FC61 BT_LT , ho creato come da istruzioni un DB con riferimento UDT60 , il mio problema e' capire come va' paramatrizzato , il mio tedesco non e; gran che , io sono in itali UTC+1 , nell'esempio di pare sia parametrizzato su UTC . Qualcuno mi puo dare una mano Grazie Link al commento Condividi su altri siti More sharing options...
TravelMen Inserita: 30 agosto 2016 Segnala Share Inserita: 30 agosto 2016 Ciao Quote Campo di applicazione Questa FC calcola l'ora locale ricavandola dall'ora di base indicata sull'ingresso. Principio di funzionamento L'ora di base indicata all'ingresso BT viene convertita in ora locale mediante i dati memorizzati in un DB ed emessa sull'uscita LT. Il DB contiene lo scostamento dell'ora locale rispetto all'ora di base e lo scostamento dell'ora legale rispetto all'ora solare, entrambi espressi in unità di 30 minuti (DB di regolazione). Se il risultato del calcolo comporta il salto di una data, tale situazione viene segnalata mediante l'emissione di un apposito valore di ritorno. OB richiamanti L'FC BT_LT può essere richiamata a qualsiasi livello di esecuzione. Ambiente di richiamo L'FC BT_LT TIME utilizza internamente le seguenti funzioni della libreria S7 Standard Library – IEC Function Blocks, che devono essere caricate nel progetto utente con i numeri indicati: FC 1 (AD_DT_TM), FC 3 (D_TOD_DT), FC 7 (DT_DAY), FC 12 (GE_DT), FC 23 (LT_DT), FC 35 (SB_DT_TM) Elenco dei parametri Parametro Dichiarazione Tipo di dati Descrizione BT INPUT DATE_AND_TIME Ora di base WS_DAT INPUT BLOCK_DB Informazioni sul fuso orario e sul passaggio dall'ora solare all'ora legale e viceversa (DB di regolazione) RET_VAL OUTPUT INT Codice di errore LT OUTPUT DATE_AND_TIME Ora locale Valori emessi / Errori RET_VAL LT Descrizione 0 Ora locale Il blocco è stato eseguito senza errori. 1 Ora locale Non si è verificato nessun errore, ma è stata saltata una data. 8082 DT#90-01-01-0:0:0 Il DB di regolazione contiene dati non validi. Tempo di esecuzione del blocco Il tempo di esecuzione caratteristico (riferito ad una CPU 417-4 DP con versione FW 3.0) ammonta a 810 µs. e di seguito UDT60 Quote Il sistema mette a disposizione un DB contenente informazioni che vengono analizzate da più blocchi. L'utente crea tale DB come DB del tipo UDT 60 e vi memorizza i valori validi per la propria regione (riferiti all'ora locale). // Conversione ora di base<->ora locale e "Imposta allarme secondo ora locale" B2L : S : INT := 2; // Offset ora di base->ora locale [30 min] in inverno, ammesso -24 .. +24. T : INT := 2; // Differenza ora solare – ora legale [30 min], ammesso: 2 // Regola per: ora solare -> ora legale. Default: ultima domenica di marzo; ore 2:00 W2S : // in ORA SOLARE! M : BYTE := B#16#3; // Mese del cambio d'orario W : BYTE := B#16#9; // n-esima cadenza del giorno della settimana (1=primo, 2=secondo,..,9=ultimo) D : BYTE := B#16#1; // Giorno della settimana (domenica = 1) H : BYTE := B#16#2; // Ora // Regola per: ora legale -> ora solare. Default: ultima domenica di ottobre, ore 3:00 S2W : // in ORA LEGALE: M : BYTE := B#16#10; // Mese del cambio d'orario W : BYTE := B#16#9; // n-esima cadenza del giorno della settimana (1=primo, 2=secondo,..,9=ultimo) D : BYTE := B#16#1; // Giorno della settimana (domenica = 1) H : BYTE := B#16#3; // Ora Tutti i parametri con il formato BYTE vengono interpretati come valori BCD. L'orario W2S è riferito all'ora solare, l'orario S2W all'ora legale. A partire dall'anno 2002, le regole per il passaggio dall'ora solare a quella legale e viceversa sono prescritte dall'Unione Europea. Buon divertimento Link al commento Condividi su altri siti More sharing options...
DesmoGiec Inserita: 30 agosto 2016 Segnala Share Inserita: 30 agosto 2016 Se il plc è vecchio e, quindi, con un progetto già in uso..... L'uso dell'fc61 esige il caricamento degli fc che ti ha scritto travelmen, ossia FC 1 (AD_DT_TM), FC 3 (D_TOD_DT), FC 7 (DT_DAY), FC 12 (GE_DT), FC 23 (LT_DT), FC 35 (SB_DT_TM). Essendo protetto in knowhow, non puoi modificare i richiami dall'fc 61, sicchè non puoi editare il numero degli fc. Occhio quindi a come ti muovi! Ciao! Link al commento Condividi su altri siti More sharing options...
Frank681 Inserita: 30 agosto 2016 Autore Segnala Share Inserita: 30 agosto 2016 Grazie ragazzi adesso provo partendo da UTC funziona ma da UTC+1 non mi devo vedere cosa sbaglio Bye Link al commento Condividi su altri siti More sharing options...
acquaman Inserita: 2 settembre 2016 Segnala Share Inserita: 2 settembre 2016 Ciao, Io ho fatto mio questo esempio scaricato da mamma Siemens: https://support.industry.siemens.com/cs/document/26961516/come-si-può-realizzare-una-commutazione-ora-solare-ora-legale-con-wincc-flexible-(aggiornamento-alla-versione-v1-1)?dti=0&lc=it-WW Nell'esempio utilizza anche un pannello, ma funziona anche senza. Ciao. Link al commento Condividi su altri siti More sharing options...
Frank681 Inserita: 4 settembre 2016 Autore Segnala Share Inserita: 4 settembre 2016 Ciao Ragazzi Risolto infatti funziona anche senza pannello impostando S =0 e T=2 ho loscostamento che mi serve da invernale a estivo impostata ora su PLC a UTC+1 nel mio caso unica cosa per ora appoggio ora locale su un alta variabile ove faccio tutto , come posso memorizzare ora locale calcolata in un DB ? Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora