savi1983 Inserito: 8 ottobre 2010 Segnala Share Inserito: 8 ottobre 2010 Buongiorno a tutti, è la prima volta che scrivo e non sono neanche sicuro di avere fatto la procedura corretta.Il mio quesito è molto semplice per chi lo sa:Scritto un programma per il plc siemens 313c come faccio a debuggarlo? esiste una barra chiamata dei punti d'arresto ma che non mi consente di inserire breakpoint e procedere step by step o altro perchè risulta oscurata.Esiste la possibilità di effettuare il debug?Grazie dell'attenzione. Link al commento Condividi su altri siti More sharing options...
cagliostro Inserita: 8 ottobre 2010 Segnala Share Inserita: 8 ottobre 2010 Salve,clicca sul link a seguire......http://support.automation.siemens.com/IT/a...;ehbid=21336333 Link al commento Condividi su altri siti More sharing options...
savi1983 Inserita: 8 ottobre 2010 Autore Segnala Share Inserita: 8 ottobre 2010 grazie mille! Link al commento Condividi su altri siti More sharing options...
savi1983 Inserita: 12 ottobre 2010 Autore Segnala Share Inserita: 12 ottobre 2010 (modificato) Ho letto attentamente il link inviatomi e sono riuscito ad utilizzare il tool dei punti di arresto...quest'ultimo mi ha lasciato un pò basito:scritto un programma in awl e inserendo qualche punto di arresto quando si fa girare il programma ovviamente si ferma sui punti di arresto indicati, perchè lo "spazzolino" del programma processa riga per riga.A questo punto ho creato salti nel programma con l'istruzione sbp e sbpn e messo il punto di arresto al richiamo del salto ma in ogni caso ad ogni giro lo spazzolino del programma processa anche questa istruzione anche se dovrebbe saltarla ma semplicemente non la esegue.In definitiva che senso ha inserire un punto di arresto (tanto ad ogni giro passa sopra a tutti i punti di arresto)? come fare affinchè il tool sia utile?Vi ringrazio in anticipo e mi scuso per la mia ignoranza. Modificato: 12 ottobre 2010 da Livio Migliaresi adeguato carattere Link al commento Condividi su altri siti More sharing options...
savi1983 Inserita: 15 ottobre 2010 Autore Segnala Share Inserita: 15 ottobre 2010 Qualcuno ha informazioni?????? Link al commento Condividi su altri siti More sharing options...
batta Inserita: 15 ottobre 2010 Segnala Share Inserita: 15 ottobre 2010 Io non ho capito qual è il problema.Prova a spiegarti meglio, magari con qualche esempio.In ogni caso, anche se penso non ci sia bisogno di dirlo tanto è evidente, bisogna prestare molta attenzione all'uso che si fa dei punti di arresto.Se si tratta di debuggare il programma in ufficio, non c'è problema. Se si è sull'impianto, con i punti di arresto si possono causare danni irreparabili. Link al commento Condividi su altri siti More sharing options...
savi1983 Inserita: 15 ottobre 2010 Autore Segnala Share Inserita: 15 ottobre 2010 Scusa se non si capisce, provo a riformularti la domanda in maniera diversa.Volevo solo dire che scrivendo un programma awl...il plc scorre istruzione per istruzione....quindi che utilità hanno i breakpoint se non posso utilizzare IF, SALTI, FOR?Inserendo un punto di arresto, ovviamente il programma si ferma, passando sopra a quella istruzione (siccome le passa tutte) ad ogni ciclo.Per ovviare ho inserito memorie aggiuntive con salti, perchè speravo che l'istruzione al richiamo del salto, venisse eseguita o scansionata solo se il salto era stato effettuato in questo modo il programma girava continuamente finchè la condizione del salto non era stata verificata....ma non è cosi siccome il plc scansiona tutte le righe sempre.Un ultima cosa....perchè possono capitare danni irreparabili usando il debug in campo? e quali tipi di danni?Qual'è il metodo piu pratico ed efficiente per debuggare un programma con blocchi di sistema e funzioni del plc che ricevono ingressi e uscite?Grazie dell' attenzione e dell'interessamento Link al commento Condividi su altri siti More sharing options...
batta Inserita: 15 ottobre 2010 Segnala Share Inserita: 15 ottobre 2010 Volevo solo dire che scrivendo un programma awl...il plc scorre istruzione per istruzione....quindi che utilità hanno i breakpoint se non posso utilizzare IF, SALTI, FOR?Inserendo un punto di arresto, ovviamente il programma si ferma, passando sopra a quella istruzione (siccome le passa tutte) ad ogni ciclo.Sono queste tue affermazioni che non capisco.Cerchiamo prima di fare un po' di chiarezza: in un punto d'arresto il programma si ferma e basta, non gli "passa sopra". Rimane fermo lì fino a quando non gli dai istruzione di proseguire.Quando darai il comando di proseguire (non importa se solo fino alla riga successiva, fino al successivo punto d'arresto o se si torna alla normale elaborazione) verrà eseguita l'istruzione.Se c'è un'istruzione di salto, se le condizioni dicono che il salto deve essere fatto, il programma proseguirà dall'etichetta di fine salto; se le condizioni dicono che non si deve saltare, la prossima istruzione elaborata sarà quella immediatamente successiva all'istruzione di salto.Insomma, non succede nulla di diverso da quello che accade quando il programma gira regolarmente.Solo che, potendo eseguire le istruzioni una alla volta, in alcuni casi è più facile capire cosa succede.Per ovviare ho inserito memorie aggiuntive con salti, perchè speravo che l'istruzione al richiamo del salto, venisse eseguita o scansionata solo se il salto era stato effettuato in questo modo il programma girava continuamente finchè la condizione del salto non era stata verificata....ma non è cosi siccome il plc scansiona tutte le righe sempre.Continuo a non capire cosa vuoi dire.Se c'è un'istruzione di salto attiva, le istruzioni successive al salto vengono... saltate.Se, con i punti di arresto attivi, fai avanzare il programma riga per riga (Esegui istruzione successiva), vedrai chiaramente quello che succede.Un ultima cosa....perchè possono capitare danni irreparabili usando il debug in campo? e quali tipi di danni?Non è usando il debug che si possono causare danni, ma con i punti d'arresto.Con i punti d'arresto l'elaborazione del programma viene bloccata nel punto d'arresto.Se c'è, per fare un esempio banale, un organo che sta traslando ed arriva a finecorsa, se l'istruzione di arresto sul finecorsa non viene letta perché il programma è bloccato su un punto d'arresto... Lascio a te trarre le conclusioni. 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