d-cautomazione Inserito: 17 maggio 2005 Segnala Share Inserito: 17 maggio 2005 salve qualcuno mi motrebbe spiegare come programmare in KOP un orologio concpu 314 siemens Link al commento Condividi su altri siti More sharing options...
Matteo Montanari Inserita: 17 maggio 2005 Segnala Share Inserita: 17 maggio 2005 si Link al commento Condividi su altri siti More sharing options...
ken Inserita: 17 maggio 2005 Segnala Share Inserita: 17 maggio 2005 lanci SFC1 e vai a scrivere l'orario di sistema in una variabile Date and Time.Se vuoi modificarla devi usare SFC0Trovi gli esempi nelle bibblioteche Link al commento Condividi su altri siti More sharing options...
OB1-Roby Inserita: 19 maggio 2005 Segnala Share Inserita: 19 maggio 2005 si !!!! Link al commento Condividi su altri siti More sharing options...
d-cautomazione Inserita: 22 maggio 2005 Autore Segnala Share Inserita: 22 maggio 2005 potresti mandarmi un esempio perche non riesco ad aprire le librerie "blocco" protetto non so' come fare Link al commento Condividi su altri siti More sharing options...
Matteo Montanari Inserita: 22 maggio 2005 Segnala Share Inserita: 22 maggio 2005 (modificato) potresti mandarmi un esempio perche non riesco ad aprire le librerie "blocco" protetto non so' come fareavrei voluto risponderti con:Trovi gli esempi nelle bibbliotecheo utilizzare la funzione cerca del sitoma dopo alcuni utenti mi accusano, in via indiretta, di essere maleducato.Le risposte che vengono fuori quando uno si azzarda a chiedere. Si comincia con la semplice risposta di "usa la funzione cerca" ....o nel sito o in internet....per poi continuare con le frecciate che vorrebbero essere ironiche....ma che si rilevano per quelle che sono... una maleducazione unica.quindi per essere più educato ti rispondo con:non è enecessario aprire il blocco protetto, primo perchè è protetto, secondo perchè risiede nel firmware della CPU, non puoi toglierlo, modificarlo o altro.consulta le librerie tramite apri->progetto->librerieselezione SFC0 e premi F1 per avere informazioni su come utilizzarlo. stessa cosa per SFC1oppure puoi consultre il manualeeventualmente puoi richiedere altre cose se queste non ti bastano, ma darti la pappa pronta...rimboccati le maniche e prova.P.S.: Dall'. in linea di Step7 (che credo che tu abbia)//******************************************************************************** ** //Operandi utilizzati //Operando Significato //E 0.0 Ingresso per la lettura di una variabile temporale in MD 0 //E 0.1 Ingresso per l'impostazione dell'ora //MW 0 Data, modificabile tramite STATUS VAR //MD 2 Ora, modificabile tramite STATUS VAR //MW 6 Data attuale //MW 8 Giorno attuale //MD 10 Ora del giorno attuale //******************************************************************************** ** FUNCTION FC 10 : VOID TITLE = Impostazione e lettura dell'ora della CPU VERSION : 1.0 VAR_TEMP IN_UHRZEIT : TIME_OF_DAY; // Parametro attuale TOD OUT_UHRZEIT : TIME_OF_DAY; // Parametro attuale TOD IN_DATUM : DATE; // Parametro attuale DATE OUT_DATUM : DATE; // Parametro attuale DATE IN_UHRZEIT_DATUM : DATE_AND_TIME; // Parametro attuale DT OUT_UHRZEIT_DATUM : DATE_AND_TIME; // Parametro attuale DT AKT_RETWERT : INT; // Valore attuale di ritorno END_VAR BEGIN NETWORK TITLE = Memorizzazione dell'ora e // della data desiderate // nelle variabili temporali L D#1997-1-20; //Predefinizione di una data come costante UN E 0.0; //se E 0.0 = 0; valore variabile in MW 0 con E 0.0 = 1 SPB nko1; L MW 0; //Predefinizione di un valore in MW 0 come //data (modifica tramite STATUS VAR) nko1: T #IN_DATUM; L TOD#13:30:0.0; //Predefinizione dell'ora come costante UN E 0.0; //se E 0.0=0; valore variabile in MD 2 con E 0.0 = 1 SPB nko2; L MD 2; //Predefinizione di un valore in MD 2 come //ora (modifica tramite STATUS VAR) nko2: T #IN_UHRZEIT; NETWORK TITLE = Collegamento di data e // ora nella variabile di uscita // (formato DATE_AND_TIME) CALL FC 3 //FC 3 standard "D_TOD_DT" (conversione di D e //TOD in DT) (IN1 := #IN_DATUM, // Riunisce data della variabile di //ingresso (formato DATE) IN2 : = #IN_UHRZEIT, //e ora della variabile di ingresso RET_VAL := #IN_UHRZEIT_DATUM); //(Format TIME_OF_DAY) //nella variabile di uscita //(formato DATE_AND_TIME) NETWORK TITLE = Impostazione dell'ora con fronte di salita U E 0.1; //Impostazione ora con fronte di salita su E 0.1 FP M 255.1; = M 255.0; //Merker di fronte NETWORK TITLE = Impostazione dell'ora U M 255.0; // Impostazione ora, se M 255.0=1 (fronte di salita) SPBNB _005; CALL SFC 0 // SFC 0 "SET_CLK" (impostazione allarme orologio) (PDT := #IN_UHRZEIT_DATUM, //Data e ora attuali RET_VAL := MW 200); // Codice di errore //(se SFC elaborata con errori) _005: U BIE; = A 4.0; // A 4.0=1, se impostazione ora OK NETWORK TITLE = Lettura dell'ora CALL SFC 1 //SFC 1 "READ_CLK" (lettura dell'ora) (RET_VAL := #AKT_RETWERT , //Codice di errore //(se SFC elaborata con errori) CDT := #OUT_UHRZEIT_DATUM); //Ora e data lette //(formato DT) NETWORK TITLE = Analisi della data CALL FC 6 //FC 6 "DT_DATE" (conversione da DT a DATE) (IN := #OUT_UHRZEIT_DATUM, //Lettura di ora e data //(formato DT) RET_VAL := #OUT_DATUM); //Variabile di uscita in formato DATE //(data attuale) NETWORK TITLE = Visualizzazione della data attuale L #OUT_DATUM; T MW 6; //Visualizzazione data attuale in MW 6 NETWORK TITLE = Analisi del giorno della settimana CALL FC 7 //FC 7 "DT_DAY" (conversione da DT a DAY) (IN := #OUT_UHRZEIT_DATUM, //Lettura di ora e data //(formato DT) RET_VAL := MW 8) //Visualizzazione giorno attuale in MW 8 NETWORK TITLE = Analisi dell'ora CALL FC 8 //FC 8 "DT_TOD" (conversione da DT a TOD) (IN := #OUT_UHRZEIT_DATUM, //Ora e data lette //(format DT) RET_VAL := #OUT_UHRZEIT); //Variabile di uscita in formato TOD //(ora attuale del giorno) NETWORK TITLE = Visualizzazione dell'ora attuale L #OUT_UHRZEIT; T MD 10; // Visualizzazione ora giorno attuale in MD 10 END_FUNCTION //******************************************************************************** ** ORGANIZATION_BLOCK OB 1 TITLE = Richiamo della FC 10 VERSION : 1.0 VAR_TEMP SYSTEM : ARRAY [1..20] OF BYTE; END_VAR BEGIN CALL FC 10; END_ORGANIZATION_BLOCKin questo modo penso di aver soddisfatto le tue richieste.P.S.: Imparate a leggere i manuali prima di fare richieste basilari come questa. Modificato: 22 maggio 2005 da keosmm Link al commento Condividi su altri siti More sharing options...
Stefano80 Inserita: 23 maggio 2005 Segnala Share Inserita: 23 maggio 2005 Le risposte che vengono fuori quando uno si azzarda a chiedere. Si comincia con la semplice risposta di "usa la funzione cerca" ....o nel sito o in internet....per poi continuare con le frecciate che vorrebbero essere ironiche....ma che si rilevano per quelle che sono... una maleducazione unica.Vorrei proprio sapere chi è quel sapientone che ti bastona in questo modo...Trovo che molti, quindi in accordo con te, trovino molto più comodo chiedere aiuto alla prima difficoltà, piuttosto che perdere qualche ora per cercare di capire come funzionano le cose, facili o difficili che siano.Vai keosmm che sei forte! Link al commento Condividi su altri siti More sharing options...
Savino Inserita: 24 maggio 2005 Segnala Share Inserita: 24 maggio 2005 Salve d-cautomazione,Come Ken ti aveva gia' segnalato, puoi leggere ed scrivere l'orologgio di sistemadel PLC utilizando SFC0 ed SFC1.Come prima cosa, imposta due strutture di data ,essempio:DB7 = DBREAD_SYS_DATE_TIME , per ricavare DB8 = DBWRITE_SYS_DATE_TIME , per impostareEntrambi DBs hanno questa forma:Address Name Type Initial value 0.0 STRUCT +0.0 Current_DateTime DATE_AND_TIME DT#90-1-1-0:0:0.000 =8.0 END_STRUCT Poi, ti costruisci due FC, FC7= ReadSystemDateAndTime FC8= WriteSystemDateAndTime ----------------------------------------------------------------------------------- FC7 // Ricava data ed ora dal sistema CALL SFC 1 INO :="DBREAD_SYS_DATE_TIME".Current_DateTime // DB 7.DBX0.0 RET_VAL:=MW172 // Per leggere DB7.DBB 0 // anno DB7.DBB 1 // mese DB7.DBB 2 // giorno DB7.DBB 3 // ora DB7.DBB 4 // min DB7.DBB 5 // sec DB7.DBB 6 // msec DB7.DBB 7 // msec ---------------------------------------------------------------------------------- FC8 // imposta nuovi valori per ora,min and sec. L MB 210 // Flag con nuovo valore T DB8.DBB 3 L MB211 T DB8.DBB 4 L MB212 T DB8.DBB 5 CALL SFC 0 INO :="DBWRITE_SYS_DATE_TIME".Current_DateTime // DB 8.DBX0.0 RET_VAL:=MW174 ------------------------------------------------------------------------------------ Per richiamare il FC 8 da qualche parte..... UN M 200.0 // Richiesta d'impostazione , bit M200.0 = 0 SPB JUMP CALL FC8 // imposta nuovi valori solo una volta S M 200.0 JUMP : NOP 0 -------------------------------------------------------------------------------------FC 7 potrebbe essere richiamato da OB35 .Fammi sapere se ci sei riuscito a girare........Saluto. Link al commento Condividi su altri siti More sharing options...
Savino Inserita: 24 maggio 2005 Segnala Share Inserita: 24 maggio 2005 Sorry,Ho sbagliato....Per richiamare il FC 8 da qualche parte..... UN M 200.0 // Richiesta d'impostazione , bit M200.0 = 0 SPB JUMP CALL FC8 // imposta nuovi valori solo una volta S M 200.0 JUMP : NOP 0 piutosto e' Per richiamare il FC 8 da qualche parte..... UN M 200.0 // Richiesta d'impostazione , bit M200.0 = 1 SPB JUMP CALL FC8 // imposta nuovi valori solo una volta R M 200.0 JUMP : NOP 0 Link al commento Condividi su altri siti More sharing options...
Luca Bab Inserita: 24 maggio 2005 Segnala Share Inserita: 24 maggio 2005 solo un piccolo suggerimentonei dati locali dell'OB1 ci sono disponibili ora e data di sistemabasta un semplice MOVEsalutiLuca Link al commento Condividi su altri siti More sharing options...
ken Inserita: 24 maggio 2005 Segnala Share Inserita: 24 maggio 2005 Qusta non la sapevo ad esempio.Grazie Luca Lab della dritta. Link al commento Condividi su altri siti More sharing options...
d.majovsky Inserita: 28 maggio 2005 Segnala Share Inserita: 28 maggio 2005 x Luca e Kendal OB1 basta anche:L LD12T DBx.DBDyL LD16T DBx.DBDy+4 Link al commento Condividi su altri siti More sharing options...
ken Inserita: 29 maggio 2005 Segnala Share Inserita: 29 maggio 2005 Si ho giusto guardato venerdì.Grzie! Link al commento Condividi su altri siti More sharing options...
ken Inserita: 29 maggio 2005 Segnala Share Inserita: 29 maggio 2005 Sempre parlando di orologio.Il formato è date and time. se ricordo bene sono 8 byte, ogni byte rappresenta tipo anno, mese.... ore secondi.Su apparecchiature a riga tipo OP7, per visualizzare l'ora dalla CPU, devo perforza creare la vasriabile ora, secondi, etc etc e poi visualizzarle in Hex o esiste un metodo migliore? Link al commento Condividi su altri siti More sharing options...
patmen Inserita: 21 luglio 2008 Segnala Share Inserita: 21 luglio 2008 Ciao a tutti, volevo solo chiedere un chiarimento a proposito dei fattori di utilizzo (Ku) e contemporaneità (Kc) da utilizzare per il dimensionamento di un impianto elettrico.Ci sono delle tabelle, riguardanti anche l'abitazione civile, che indicano i vari fattori da utilizzare?Se si, dove posso trovarli?C'è per caso una metodologia di calcolo che permette di individuare in modo semplice tali elementi?Grazie a tutti , aspetto una miriade di risposte Link al commento Condividi su altri siti More sharing options...
Benny Pascucci Inserita: 21 luglio 2008 Segnala Share Inserita: 21 luglio 2008 Ciao patmen,le tabelle dei fattori di utilizzazione e contemporaneità le trovi un po' dovunque: libri di impianti, manuali degli impianti elettrici, sul WEB, ad esempio con una semplice ricerca ho trovato questo ottimo link.Ovviamente troverai valori diversi a seconda della fonte e lì interviene l'esperienza, ma su questo....non posso aiutarti.... 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