r0v0 Inserito: 19 dicembre 2006 Segnala Inserito: 19 dicembre 2006 ciao rddiegoscusa se ti faccio domandi banali ma sono proprio alle prime armi ..anzi mi ritrovo solo con una fionda in mano e con l'elastico strappato dunque sono riuscito a vedere il valore di acc1 da me scritto...volevo chiederti se chiamo un registro pippo questo nome lo devo prima dichiarare sulla tabella dei simboli? quale indirizzo gli devo dare ? cioe` finche` erano bit usavo per esempio i0.0 ma visto che si tratta di un numero intero credo dovro` dargli l`indirizzo di un registro solo che non ho la piu` pallida idea di cosa scrivere nel campo degli indirizzi ...provo ...andrebbe bene bm 1 ...cioe` un byte memorizzato nell`area di merker e 1 a indicare il primo registro?lo so sono piu` di una domanda .....ti ringrazio anticipatamissimamente il rovo
rddiego Inserita: 19 dicembre 2006 Segnala Inserita: 19 dicembre 2006 non c'è bisogno di didchiararlo nella tabella dei simboli almeno che, appunto non gli voglia dare un simbolicol'area di memoria Merker è quella accessibile immediatamentee puoi leggerla e scriverla liberamente a bit a byte a word a doubleword o floating point (virgola mobile)in base alla cpu hai una differente estensione di questa memoriaM 0.0MB 0MW 0MD 0il primo indirizzo di memoria è sempre 0 (questo numero indica sempre il numero del byte tienilo bene a mente........mi raccomando conserva questo che ti dico che è fondamentale.... è il numero del byte)siccome questa area di memoria non è molto estesa e te ne servisse ancora esiste tutta l'area definita dall'utente (da te ) e suddivisa in Data Block DB. Questa area va definita e caricata nel PLC prima di utilizzarla ed è praticamente identica all'area Merker e sarà richiamata cosìDBxx.DBX 0.0DBxx.DBB 0DBxx.DBW 0DBxx.DBD 0xx sta per il numero del DB che hai scelto a partire da 1 in poiper definire un DB fai aggiungi blocchi -> blocco dati -> dagli un numero poi apri il blocco ed all'interno scriverai tutti i simbolici delle tue nuove variabili dichiarandone anche il tipo (bool, byte etc. etc.)
r0v0 Inserita: 19 dicembre 2006 Autore Segnala Inserita: 19 dicembre 2006 ciao rddiegograzie per le informazioni...provo a fare qualche prova (semplice) e a simulareper ora grazie ancora rovo
r0v0 Inserita: 20 dicembre 2006 Autore Segnala Inserita: 20 dicembre 2006 ciao rddiegosono il tu0 incubo :ph34r: ho un po` smanettato con gli accumulatori...mi sono letto e riletto quello che mi hai scritto ...volevo chiederti e` possibile per esempio mettere in uscita quello scritto sull` acc1?ciao e grazie per la tua pazienzailrovo
rddiego Inserita: 20 dicembre 2006 Segnala Inserita: 20 dicembre 2006 se in uscita intendi su una A certo che puoi farloL xxxxT AW yyaltrimenti spiegami meglio che vuoi fare, magari prova a dirmi cosa e come hai smanettato..
r0v0 Inserita: 20 dicembre 2006 Autore Segnala Inserita: 20 dicembre 2006 grazie rddiegostavo provando a fare un piccolo programma dove premuto un tasto partiva un temporizzatore e dopo il tempo impostato si abilitasse un' uscita...ma cavolo non riesco a fare un ca[at][at]o!!!!!ho una confusione nella zucca che non immagini o almeno ci provi ad immaginarlo visto gli strafalcioni che ho scritto nel forum fino ad ora.... ho provato a scrivere cosi` A I 0.0 L S5T#5S Sd T 1 = Q 4.0non funziona perche` l`uscita va a 1 quando metto l`ing a 1 e il temporizzatore parte ma come se fosse un`altra cosa...non capisco come interpreta le istruzioni il plc...pensavo che prima caricasse il temporizzatore poi una volta passato il tempo l`uscita q 4.0 andasse a 1 e se poi scrivendo sotto queste altre istruzioni .... ls5t#5 sf t1 r q 0.4 = q 4.0mi riportasse la mia uscita a 0 ma forse c`e` qualcosa di ben piu` complicato che mi sfugge o he ho letto ma non ho capito...molto piu` probabileciao rddiego.....grazie ancorail rovo
Ospite drei Inserita: 20 dicembre 2006 Segnala Inserita: 20 dicembre 2006 //Il timer T1 conta con l'ingresso A0.0 ad ONA I 0.0L S5T#5SSd T 1//Finito di contare il timer T1 attiva l'uscita Q4.0A T 1= Q 4.0
r0v0 Inserita: 20 dicembre 2006 Autore Segnala Inserita: 20 dicembre 2006 GRAZIEE DREIfunziona !!!! belin un mese che cerco di fare qualcosa ma solo ora ho capito che non ci ho capito ancora niente!!!adesso provero` a vedere se riesco a fare abilitare l`uscita e dopo un po` di tempo a resettarla nuovamentevi faccio saPEREANCORA GRAZIEIL ROVO
r0v0 Inserita: 20 dicembre 2006 Autore Segnala Inserita: 20 dicembre 2006 ciao dreivolevo chiederti come si fa a far partire un temporizzatore senza dover abilitare nessun ingresso?per eesmpioricevere dei dati su un`uscita dopo un po` di tempo ciao e grazie ancorail rovo
Ospite drei Inserita: 21 dicembre 2006 Segnala Inserita: 21 dicembre 2006 Il timer in questione viene attivato quando lo stato dell'RLC è a 1.Quindi ti serve mettere a 1 l'RLC, senza usare un bit puoi usare la funzione SET, tipo:SETL S5T#5SSd T 1oppure mettere davanti al timer un bit negato (che naturalmente non deve mai andare ad ON):AN M100.0 //Bit sempre ad OFFL S5T#5SSd T 1
r0v0 Inserita: 22 dicembre 2006 Autore Segnala Inserita: 22 dicembre 2006 ciao a tuttiprima che me ne dimentichi volevo fare gli auguri a tutti di buon natale e felice anno nuovo.....e ringraziarvi per avermi aiutato ad imparare qualcosa sui plc...io saro` in ferie fino all`otto cosi` per un po` non vi scoccero` con i miei strafalcioni ciao e auguroni ancorail rovo
r0v0 Inserita: 22 dicembre 2006 Autore Segnala Inserita: 22 dicembre 2006 cioa a tuttimi potreste dire perche` non funziona niente di quello che scrivo...ho provato questo SET L S5T#5S SD T 1 A T 1 = Q 0.1 R T 1 SET L S5T#10S SD T 1 A T 1 = q 0.0cosi` non mi dovrebbe settare dopo il tempo t1 la porta 1 poi resettare t1 caricare l`altro tempo quindi settarmila porta 0?invece mi abilita subito le due uscite e intanto parte il tempopensavo che il plc eseguisse le istruzioni sequenzialmente ma credo che non sia proprio cosi` e credo che forse non ho ancora capito bene come gestisce le uscite con gli ingressi ciao e grazie ancora il rovo
rddiego Inserita: 22 dicembre 2006 Segnala Inserita: 22 dicembre 2006 mai e poi mai utilizzare lo stesso timer T più di una volta nello stesso programma.. mai!!!poi non usare l'istruzione SET che ha ben poco senso usato così visto che un timer serve a ritardare qualcosa, questo qualcosa se non c'è che senso ha ritardare cosa?????non ho capito cosa ho detto, ma il succo è che non ha senso usare l'istruzione SET per vviare un temporizzatoreun timer parte quando vede il passaggio del RLC da 0 a 1 non semplicemente con RLC =1 quindi per avviare un timer più volte devi sempre fare in modo che la condizione che lo ha avviato cada almeno per un ciclo di scansione.Quindi per esempio se olessi generare un impulso ogni x tempo scriverestiAN T1L S5T#1SSD T1ogni secondo T1 è =1 ed al momento dell'istruzione AN T1 l'RLC =0 quindi T1 trona =0 l'RLC ripassa =1 e così il timer si riattiva all'infinitotu hai scritto R T1 pensando di azzerare T1 e farlo ripartire? ma con quela istruzione l'RLC è sempre =1 e quindi non ottieni il risultatoper concludere nel tuo esempio devi usare sicuramente due timer T1 e T2 e come condizione di avvio dei timer metti qualsiasi cosa (in realtà non so che vuoi fare con le uscite)per esempio vuoi accendere una lampada e poi l'altra e poi spegnerle e ricominciare?AN T2L S5T#5SSD T1A T1= Q0.0A T1L S5T#10SSD T2oppure prima una lampada poi spegni e accendi l'altra e via così?AN T2L S5T#5SSD T1AN T1= Q0.0A T1L S5T#10SSD T2A T1= Q0.1questi esmpi solo per riprendere i tuoi esempi
r0v0 Inserita: 8 gennaio 2007 Autore Segnala Inserita: 8 gennaio 2007 ciaointanto buon anno a tutti ...finito le ferie e da oggi si ricominciagrazie rddiego per la tua risposta al mio ultimo mail....volevo chiederti io mi sono fatto spedire dalla siemens il software per simulare il plc solo che era free per 15 giorni...e siccome ormaI NE SONO PASSATI ANCHE TRENTA DALL`INSTALLAZIONE nel provare a lanciarlo mi chiede in continuazione che non riesce a trovare la chiave di licenza.....ma questa chiave e` possibile averla ancora per un po` di tempo o bisogna per forza comprae tutto il pacchetto software?in questo momento mi ritrovo col programma non funzionante e non saprei proprio come fare per poterlo imparare ancora un po`ti ringrazio anticipatamenteciaoil rovo
r0v0 Inserita: 8 gennaio 2007 Autore Segnala Inserita: 8 gennaio 2007 ciao rddiegonon mi insultare ma non capiso una cosa nei tuoi esempiil primo dice AN T1L S5T#1SSD T1quindi fai il negato di t1 carichi il tempo e con sd un tipo di impulso ....an t1 serve negarlo per cambiare il valore dell`rlc un po` come mi hai spiegato nei tuoi esempi?AN T2L S5T#5SSD T1A T1= Q0.0A T1L S5T#10SSD T2in quest`altro esempio credo tu faccia la stessa cosa pero` non capisco perche` neghi t2 poi abiliti il tipo di impulso con t1 quindi and di t1 e porti l`uscita di t1 in q0.0 ma non dovresti portarci quello di t2 o comunque perche` qua usi due tipi di timer? sparo...per caso al posto di t2 volevi scrivere t1? nemmeno la parte del timer 10 sec mi e` molto chiaraAN T2L S5T#5SSD T1AN T1= Q0.0A T1L S5T#10SSD T2A T1= Q0.1stessa cosa per questo esempio....neghi t2 credo per cambiare quel famoso valore di rlc quindi carichi il valore 5 secondi ...sd tipo di impulso ...and di t1 quindi uscita du q0.0...il pezzo ancora sotto quello dei dieci secondi farebbe l`and di t1 ...poi non capisco perche` il ritaro dell`inserzione finisca su t2 e non su t1 e quindi uscita t1 su q0.1 ....sono una zucca vuota che per capire le cose mi ci vuole piu` tempo del normale ma spero che tu mi possa dare un aiutinoti ringrazio anticipatamenterovo
r0v0 Inserita: 10 gennaio 2007 Autore Segnala Inserita: 10 gennaio 2007 ciao a tuttiho provato e riprovato a fare qualcosa con sto benedetto plc ma niente ...nemmeno una lampadina accesa e poi spenta dopo un po` di tempo...solo con gli esempi che mi ha gentilmante dato rddiego tutto funziona a meraviglia....non ho proprio idea di come funzioni questo arnese della malora...non ho nemmeno capito l`rlc...mi sa che non riusciro` a fare il lavoro che mi hanno dato in tempo...sono una zucca vuota....mi sono riletto e riletto alcune tesine sulla programmazione in awl ma non e` servito a niente...bo` io pero`continuo sperando che mi venga l`illuminazoioneciao a tuttiil rovo
rddiego Inserita: 10 gennaio 2007 Segnala Inserita: 10 gennaio 2007 calma calma....AN T1L S5T#1SSD T1tradotto in parole: se il temporizzatore T1 non ha finito di contare , allora carica il tempo di 1 secondo al temporizzatore T1 e fallo partire.cosa succede :primo ciclo di scansione((RLC =0))- il temporizzatore T1 non ha finito di contare (non è neanche mai partito) (( RLC = 1))- carica 1 secondo a T1 - avvia T1 secondo ciclo di scansioneGli altri due esempi sono identici solo che sono usati due temporizzatori T1 e T2 e sono legati tra loro in quel modo solo perchè vogliamo creare una sequenza tra di loro:1- parte T1 (solo se non ha finito T2)2- finisce T1 e quindi parte T23- finisce T2 e riparte il cicloTi ricordo che l'istruzione di avvio di un temporizzatore è da fare una sola volta i tutto il programma cioè SD T1 può essere scritto solo una volta. Se hai bisogno di altri temporizzatori utilizzerai T2 - T3 .. Tn- il temporizzatore T1 non ha finito di contare(( RLC = 1))- carica 1 secondo a T1 - NON avvia T1 perchè non c'è stato un passaggio da 0 a 1 dell'RLC (intanto sta contando)n cicli di scansione uguali al secondo ciclo finchè non passa il tempo di un secondo caricato nel temporizzatore- il temporizzatore T1 ha finito di contare (l'istruzione AN T1 è quindi falsa)(( RLC = 0))- carica 1 secondo a T1 - T1 viene arrestato e azzeratosuccessivo ciclo- il temporizzatore T1 non ha finito di contare o non sta contando (l'istruzione AN T1 è quindi vera)(( RLC = 1))- carica 1 secondo a T1 - T1 viene avviato nuovamentee così via all'infinito.............
rddiego Inserita: 10 gennaio 2007 Segnala Inserita: 10 gennaio 2007 scusa ho scritto delle frasi in mezzo....calma calma....AN T1L S5T#1SSD T1tradotto in parole: se il temporizzatore T1 non ha finito di contare , allora carica il tempo di 1 secondo al temporizzatore T1 e fallo partire.cosa succede :primo ciclo di scansione((RLC =0))- il temporizzatore T1 non ha finito di contare (non è neanche mai partito) (( RLC = 1))- carica 1 secondo a T1 - avvia T1 secondo ciclo di scansione- il temporizzatore T1 non ha finito di contare(( RLC = 1))- carica 1 secondo a T1 - NON avvia T1 perchè non c'è stato un passaggio da 0 a 1 dell'RLC (intanto sta contando)n cicli di scansione uguali al secondo ciclo finchè non passa il tempo di un secondo caricato nel temporizzatore- il temporizzatore T1 ha finito di contare (l'istruzione AN T1 è quindi falsa)(( RLC = 0))- carica 1 secondo a T1 - T1 viene arrestato e azzeratosuccessivo ciclo- il temporizzatore T1 non ha finito di contare o non sta contando (l'istruzione AN T1 è quindi vera)(( RLC = 1))- carica 1 secondo a T1 - T1 viene avviato nuovamentee così via all'infinito.............Gli altri due esempi sono identici solo che sono usati due temporizzatori T1 e T2 e sono legati tra loro in quel modo solo perchè vogliamo creare una sequenza tra di loro:1- parte T1 (solo se non ha finito T2)2- finisce T1 e quindi parte T23- finisce T2 e riparte il cicloTi ricordo che l'istruzione di avvio di un temporizzatore è da fare una sola volta i tutto il programma cioè SD T1 può essere scritto solo una volta. Se hai bisogno di altri temporizzatori utilizzerai T2 - T3 .. Tn
r0v0 Inserita: 10 gennaio 2007 Autore Segnala Inserita: 10 gennaio 2007 ciao rddiegograzie mille mi sono stampato la tua risposta cosi` cerchero` di capire cosa mi sfugge pensavo fosse un po` piu` semplice la cosa.... ma forse perche` sono ancora agli inizi... sperando in un futuro di riuscire a fare megliocerto che sto rlc in questo caso ha una funzione importante ma scartabellando tra tutti i pdf scaricati anche quelli della siemens non viene quasi mai citato ...parlano di qualunque cosa tranne di sto bit...o forse dovrei cercarlo sotto qualche altro nome !!!!!comunque grazie veramente non dico che ero disperato ma quasiper ora ti riringrazio per la tua pazienza e disponibilita`]ciao e grazie il rovo
rddiego Inserita: 11 gennaio 2007 Segnala Inserita: 11 gennaio 2007 ma ascolta se tu vai nell'. e cerchi un temporizzatore qualunque per esempio S_EVERZ (TON) ti spiega molto chiaramente, anche con diagrammi temporali, come si comportano tutti i bit interessati, come si avvia, come si resetta eccetera.
r0v0 Inserita: 11 gennaio 2007 Autore Segnala Inserita: 11 gennaio 2007 ciao rddiegonon voglio farti perdere altro tempo...non mi e` molto chiaro la tua risposta ma provero` ancora...ho provato anche a cercare sull`halp quello che mi hai detto ma nessun temporizzatore con quel nome....non riesco proprio a capire il funzionamento del bit rlc...non ho per niente chiaro il concetto di istruzioni sequenziali ...avolte mi sembra che il programma faccia piu` cose in una volta sola ....bo` vedro` di trovare qualche altra documentazione in girociao e grazie ancora il rovops quello che non riesco a capire tanto per cambiare e` che ho guardato sulle dispense scricate dalla siemens e del bit rlc ne parlano pochissimo si preoccupano di piu` sul cablaggio dell`hardware....forse danno per scontato che si abbia ben chiaro il suo funzionamento..ma a me e` piu` oscuro della notte =0)))ri ciao
r0v0 Inserita: 11 gennaio 2007 Autore Segnala Inserita: 11 gennaio 2007 ciao rddiegovolevo chieerti una cosa ..l`ennesimaAN T2L S5T#5SSD T1AN T1= Q0.0A T1L S5T#10SSD T2A T1= Q0.1in questo esmpio quando io runno il programma la scansione del ciclo non si ferma per esempio al valore 5 secondi aspetta che passi questo tempo e poi prosegue con l`istruzione successiva ...cioe` quando fa la scansione la fa per tutto il programma...forse ora capisco perche` mi ritrovavo con due temporizzatori che andavano nello stesso momento...o con i bit uscita che si accendevo nello stesso istantesono proprio dal principio...ciao e grazie
rddiego Inserita: 11 gennaio 2007 Segnala Inserita: 11 gennaio 2007 non l'hai trovato??!!!apri simatic managerpremi F1 visualizza il Sommariola penultima voce (credo) è "Richiamo delle guide di riferimento .... "scegli Descrizione del linguaggio AWLti si apre un'altra guidavisualizza Indicecerca l'istruzione "SE"et voilà.... tutto è spiegato benissimo NB. le istruzioni sono tutte in tedesco ma tu vedo che hai impostato la lingua di programmazione in inglese
r0v0 Inserita: 11 gennaio 2007 Autore Segnala Inserita: 11 gennaio 2007 AN T 2 negando t2 ottengo l`rlc che da 0 passa a 1 L S5T#5S quindi carica questo valore ...qui rlc sempre a1 SD T 1 tipo di ritardo in questo caso sull`accensione rlc sempre a1 e intanto il timer va avanti e anche la scansione che sel suo giro vede che non e` cambiato niente da prima ...giusto? A T 1 and di t1 ma siccome il ritardo e` ancora a 0anche l`rlc lo sara` = Q 0.0 uscita a zero come l`rlc A T 1 con questa istruzione faccio l'and tra t1 e l`rlc ma tutti e due a zero quindi non carica ancora il valore e il t2 e` ancora fermo L S5T#10S rlc ancora a zero SD T 2 rlc ancora a zeroscansione dove accade qualcosa AN T 2 rlc che da 0 passa a 1 come da prima istruzione L S5T#5S rlc ancora a 1 SD T 1 finiti i cinque secondi fronte di salita quindi and tra il fronte di salita e t1 quindi 1 rlc sempre1 A T 1 anche qui rlc sempre a 1 = Q 0.0 idem come sopra A T 1 and tra rlc che e` a 1 e t1 che e` a 1 L S5T#10S carica il valore in t2 rlc a 1 SD T 2 quindi qui impulso ritardato sull`accensione quindi avro` 0 prima che passino i 10 secondi e intanto le scansioni vanno avanti e rlc a 1 quindi negato sd t2 con negato di t2 ho in uscita 0 rlc va a 0 al momento del fronte di salita ho 1 su sd t2 e negato di an t2 che e` 1 quindi nuovamente rlc a 1 e il programma gira all`infinitoso che non e` totalmente giusto ma spero di aver capito qualcosa ciao e grazie ancorail rovo
r0v0 Inserita: 15 gennaio 2007 Autore Segnala Inserita: 15 gennaio 2007 ciao a tuttiniente ...credo che a sto punto mi rassegnero`...non riesco a fare proprio nulla con il plc ...nemmeno accendere e spegnere una lampadina....non riesco proprio a capire come ragiona sta scatoletta....il bit rlc mi fa le pernacchie ...i bit di uscita si abilitano quando non dovrebbero...be` non male e` circa un mese che ci sto studiando otto ore al giorno e i risultati praticamene nulli...ciao a tuttiil rovo
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