mbambi Inserito: 15 giugno 2005 Segnala Share Inserito: 15 giugno 2005 (modificato) Salve a tutti.Devo implementare una semplice logica di pausa /lavoro per una serie di pompe.Essendo una delle mie prime esperienze con Step 7, ho visto che non è possibile inserire direttamente i tempi che imposto da pannellino (TP-170b) direttamente nel timer (TW), ma si devono fare altri tipi di controlli con CMP e ADD varie .In attesa di eventuali consigli e di un metodo veloce per sviluppare tale sequenza vi ringrazio anticipatamente.P.S. Dimenticavo che il linguaggio di programmazione a cui mi riferisco è il KOP. Modificato: 15 giugno 2005 da mbambi Link al commento Condividi su altri siti More sharing options...
Matteo Montanari Inserita: 15 giugno 2005 Segnala Share Inserita: 15 giugno 2005 (modificato) Essendo una delle mie prime esperienze con Step 7, ho visto che non è possibile inserire direttamente i tempi che imposto da pannellino (TP-170b) direttamente nel timer (TW), ma si devono fare altri tipi di controlli con CMP e ADD variesei sicuro di quello che scrivi?se rendi il tempo impostato nei timer, varibile (ES.DB1.DBW2) e non fisso (S5T#3S) puoi fare assumere a DB1.DW2 tutti i valori che vuoi.i CMP e ADD varie ti servono se vuoi dare diverse base dei tempi al tuo timer, ma se si tratta di cambiare da 000 a 999 secondi puoi impostare una base dei tempi fissa (secondi appunto) e modificare solo il tuo valore da 000 a 999.// Come impostare un valore 0..999 su di un timer //; // Il valore, come detto, deve essere compreso tra // 0 e 999, in base alla base dei tempi si determina // la durata del tempo //; // Il valore deve essere espresso in BCD. //; // Nel caso in cui il valore sia in decimale // occorre fare una conversione: //; L #Valore_DEC ITB T #Valore_BCD //; // La base dei tempi può assumere 4 diversi valori // = 0 calcolo della durata in 0.01 sec // = 1 calcolo della durata in 0.1 sec // = 2 calcolo della durata in 1.0 sec // = 3 calcolo della durata in 10.0 sec //; // = 0 calcolo della durata in 0.01 sec //; L W#16#0 T #BaseTempo //; // = 1 calcolo della durata in 0.1 sec //; L W#16#1000 T #BaseTempo //; // = 2 calcolo della durata in 1.0 sec //; L W#16#2000 T #BaseTempo //; // = 3 calcolo della durata in 10.0 sec //; L W#16#3000 T #BaseTempo //; // Unione tra Base tempo e valore di tempo //; L #Valore_BCD L #BaseTempo OW T #SpTimer //; U #AbilitazioneTimer L #SpTimer SE #NumeroTimervolendo puoi utilizzare anche una varibile per la base dei tempi.oppure puoi utilizzare la funzione (presente nelle librerie standard "IEC Function Blocks") FC 40 che ti permette di convertire un valore di tempo (TIME) in un valore comprensibile dai timer (S5T).certo che se il tuo pannellino non permette di inserire e/o modificare le varibili è tutta un altra cosa...P.S. Dimenticavo che il linguaggio di programmazione a cui mi riferisco è il KOP.e chi se ne frega, nello step 7 di base hai a disposizione 3 linguaggi, di cui uno lo usano solamente i Krukki, te ne rimangono sempre 2, non fossilizzarti ad utilizzarne solo uno... è come dire che quando piove non esci... Modificato: 15 giugno 2005 da keosmm Link al commento Condividi su altri siti More sharing options...
jake Inserita: 15 giugno 2005 Segnala Share Inserita: 15 giugno 2005 Solitamente io uso delle DB col tipo di dati S5T, queste le farò puntare poi dal pannello; potrai avere così la dbw per il SET del Timer e la dbw per vedere lo scorrere del tempo.Esempio: L DB3.DBW 52 //Setti il tempo del timer SE T 78 LC T 78 T DB3.DBW 54 //Lettura del timerNon ricordo al momento sul pannello come devi dichiarare il tipo della Db che vai a puntare, ma credo BCD o che ci sia TIMER.Good Luck, Jake Link al commento Condividi su altri siti More sharing options...
mbambi Inserita: 16 giugno 2005 Autore Segnala Share Inserita: 16 giugno 2005 Per il momento ho fatto come segue:Ho fatto una conversione utilizzando l'FC40 TIM_S5TI e passando il valore di ritorno al TW del Timer che mi interessa.Il problema però si è presentato sul pannello perchè inserendo un Campo di I/O non è possibile specificare come formato TIMER e non sono riuscito a trovare qualcosa che mi possa fare una conversione da DECIMALE (da pannello operatore TP170B) a TIMER.Come posso fare?Inoltre il valore che inserisco nella TIM_S5TI è in base ms!Grazie a tutti in anticipo Link al commento Condividi su altri siti More sharing options...
mbambi Inserita: 16 giugno 2005 Autore Segnala Share Inserita: 16 giugno 2005 Il valore che riesco ad impostare dal pannello operatore mi arriva in ms e devo quindi convertirlo almeno in sec.Come posso fare? Link al commento Condividi su altri siti More sharing options...
Matteo Montanari Inserita: 16 giugno 2005 Segnala Share Inserita: 16 giugno 2005 Il problema però si è presentato sul pannello perchè inserendo un Campo di I/O non è possibile specificare come formato TIMERse leggi le caratteristiche di FC 40:Descrizione Con la funzione FC 40 è possibile convertire il formato di dati TIME nel formato S5TIME. Durante la conversione si arrotonda per difetto. Se il parametro di ingresso è maggiore del formato S5TIME rappresentabile (maggiore di TIME#02:46:30.000), viene emesso come risultato S5TIME#999.3 ed il risultato binario BIE viene azzerato. Parametro Dichiarazione Tipo di dati Area di memoria Descrizione IN INPUT TIME E, A, M, D, L, Cost. Variabile di ingresso nel formato TIME RET_VAL OUTPUT S5TIME E, A, M, D, L Variabile di ritorno nel formato S5TIMEda nessuna parte è indicato di scirvere TIMER ma TIME.il valore viene convertito in millisecondi perchè è la base principale dei timer.Il valore che riesco ad impostare dal pannello operatore mi arriva in ms e devo quindi convertirlo almeno in sec.Come posso fare?hai un codice scritto nel mio messaggio precedente, devi somente mettere la varibile (da 0 a 999) nel pannello, utilizzare il codice che ti ho dato con la base dei tempi 2 ed il tuo lavore 1 equivale ad 1 secondo, il valore 10 a 10 secondi, il valore 100 a 100 secondi e così via.se non ti piace l'awl prendi ogni operazione e mettila in un segmento KOP ed il gioco è fatto. Link al commento Condividi su altri siti More sharing options...
mbambi Inserita: 16 giugno 2005 Autore Segnala Share Inserita: 16 giugno 2005 Ok, ho capito, ma #BaseTempo a cosa corrisponde rispetto alla mia variabile di tipo S5TIME?Io devo fare una MOV di W#16#2000 nella BaseTempo della variabile TIME (S5TIME), come faccio ad impostare la BaseTempo di TIME?Scusa ancora per le semplici domande, ma sono un po' nel panico. Link al commento Condividi su altri siti More sharing options...
mbambi Inserita: 16 giugno 2005 Autore Segnala Share Inserita: 16 giugno 2005 Ulteriori aggiornamenti:Ho provato a fare una WOR della base di tempo che mi interessa (1sec.) nella variabile TIME di tipo S5TIME, ma non me l'accetta in ingresso. Link al commento Condividi su altri siti More sharing options...
Matteo Montanari Inserita: 16 giugno 2005 Segnala Share Inserita: 16 giugno 2005 prendi questo codice e copialo in un segmento vuoto del tuo FCnelle varibili temporanee (nella parte alta della finestra)devi specificare cosa sono:Valore_DEC = IntValore_BCD = IntValore_BCD_word = WordBaseTempo = IntBaseTempo_word = WordSpTimer = S5TimeSpTimer_word = Word U( U( U( L #Valore_DEC ITB T #Valore_BCD_word UN OV SAVE CLR U BIE ) SPBNB _005 L W#16#3000 T #BaseTempo_word SET SAVE CLR _005: U BIE ) SPBNB _006 L #Valore_BCD_word L #BaseTempo_word OW T #SpTimer_word SET SAVE CLR _006: U BIE ) SPBNB _007 L #SpTimer_word T #SpTimer _007: NOP 0ripsondendo alla tua domanda:Ok, ho capito, ma #BaseTempo a cosa corrisponde rispetto alla mia variabile di tipo S5TIME?cosa ne dici di leggere il manuale? nel manuale in linea è presente la parte che spiega il funzionamento dei timer.inoltre ti chiarisce anche la differenza tra time e timer, dove mi sembra che hai un pò di confusione in testa. Link al commento Condividi su altri siti More sharing options...
dago_ Inserita: 16 giugno 2005 Segnala Share Inserita: 16 giugno 2005 Prova cosi: Link al commento Condividi su altri siti More sharing options...
Ramrod Inserita: 26 luglio 2008 Segnala Share Inserita: 26 luglio 2008 Ciao a tutti,volevo chiedervi se e dove ho sbagliato.Dopo aver finito un impianto(di sole prese,in quanto sto ristrutturando la casa e quindi faccio un po alla volta)con differenziale da 25A e a valle un mt da 16A,i conduttori ho usato per le prese tutte da 16A fili da 2,5mm con montante da 4mm.Dal contatore al differenziale(sono 7 metri di lunghezza)ho usato fili da 6mm.Toccando col cercafase il verdegiallo proprio in questo tratto ho notato che c'era della corrente,provando col tester un puntale appunto sul verdegiallo della massa e un puntale sul neutro,mi dava una lettura con un - davanti ad una bassa cifra,provando sui due cavi e cioè fase e neutro mi dava la giusta lettura,preciso che il cavo verdegiallo di cui ho parlato ancora non lo collego a nessun dispersore,provando a collegare un qualsiasi punto della terra con un rubinetto ad esempio,la corrente che mi trovavo sul filo di massa non c'era più.Ora io mi chiedo è mai possibile che in un tratto di 7metri con conduttori da 6mm ci sia questa corrente sul gialloverde?E' normale tutto ciò?In quanto ancora non mi collego con il dispersore a terra.Da premettere che nel tratto dal contatore al differenziale i conduttori sono integri.Grazie per la vostra chiarezza e gentilezza,come sempre!! Link al commento Condividi su altri siti More sharing options...
verosatx Inserita: 26 luglio 2008 Segnala Share Inserita: 26 luglio 2008 se non erro hai detto che il G/V non è ancora collegato a TERRA, prima fai il collegamento alla palina, poi se ci sono problemi scatta il differenziale.Penso che sia induzione quella che vedi con il cercafase.ciao Link al commento Condividi su altri siti More sharing options...
Ramrod Inserita: 26 luglio 2008 Segnala Share Inserita: 26 luglio 2008 Grazie Verosatx,effettivamente ancora non collego l'impianto di terra ad un dispersore e poi quando collego un qualsiasi punto dell'impianto terra ad un corpo entrante nel muro(tipo tubi idraulici),la corrente non ce l'ho più appunto sul gialloverde.Mi spieghi che cos'è l'induzione,e perchè si ha questo effetto?? Link al commento Condividi su altri siti More sharing options...
settepertre Inserita: 26 luglio 2008 Segnala Share Inserita: 26 luglio 2008 l'induzione è quell'effetto che fa girare anche i motori elettriciquando passa della corrente in un filo, crea un campo elettromagnetico che, se ci sono altri conduttori nei pressi, crea delle correnti (in ambito domestico molto basse), un altro esempio è il trasformatore dove una "spirale" di filo (primario) crea tensione in una altra "spirale" (secondario) Link al commento Condividi su altri siti More sharing options...
Pierluigi Borga Inserita: 26 luglio 2008 Segnala Share Inserita: 26 luglio 2008 Evita assolutamente di usare tubazioni dell'imp idraulico o altro per creare il dispersore di fatto, dal punto di origine dell'impianto o almeno da una cassetta di derivaz principale colleghi tutti i fili GV e esci con un conduttore di 16mmq da collegare ad un dispersore a picchetto (con pozzetto ispezionabile) oppure anche ai ferri delle armature della fondazione... Link al commento Condividi su altri siti More sharing options...
Ramrod Inserita: 27 luglio 2008 Segnala Share Inserita: 27 luglio 2008 Quindi questo fenomeno,cioè l'induzione,si viene a creare ogni qualvolta si fa un impianto con filo di massa portato ovunque,ma non lo si collega diciamo così al suo "capolinea" e cioè la nuda terra?? Link al commento Condividi su altri siti More sharing options...
solchiere Inserita: 27 luglio 2008 Segnala Share Inserita: 27 luglio 2008 Quindi questo fenomeno,cioè l'induzione,si viene a creare ogni qualvolta si fa un impianto con filo di massa portato ovunque,ma non lo si collega diciamo così al suo "capolinea" e cioè la nuda terra??No. Il fenomeno dell'induzione elettromagnetica avviene quando si hanno due o più conduttori affiancati per una parte dipercorso in cui circoli una corrente (alternata). Infatti un cavo elettrico percorso da corrente crea un campo elettromagnetico, ma il fenomeno è anche contrario, ovvero un campo elettromagnetico (di intensità variabile) genera una corrente in un conduttore.Nel tuo caso hai due conduttori: in uno dei quali circola una corrente che crea un campo e.m. che interessa anche un altro conduttore che viaggia assieme e parallelamente inducendo una (piccola) corrente.A mio avviso il fenomeno interessante invece è un accoppiamento capacitivo: due cavi che viaggiano affiancati per un tratto costituiscono un piccolo condensatore. Infatti vi sono 2 conduttori ed un isolante ovvero il dielettrico. Per questo motivo sul cavo di terra SCOLLEGATO misuri una piccola corrente.Al di la di queste condiderazioni puramente indicative (non particolarmente tecniche, ne tanto meno precise ed accurate) una volta collegato a terra il cavo di terra molto probabilmente il problema non si presenterà più poichè le piccole correnti dovute ai fenomeni citati verrebberò fugate verso terra. Link al commento Condividi su altri siti More sharing options...
Ramrod Inserita: 27 luglio 2008 Segnala Share Inserita: 27 luglio 2008 Grazie a tutti voi!!!!!!! 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