maury983 Inserito: 19 dicembre 2007 Segnala Share Inserito: 19 dicembre 2007 Salve a tutti, è un pò che utilizzo questo ottimo forum per risolvere i miei problemi nella realizzazione della tesi a conclusione dei miei studi, non avevo prima di adesso aperto nessuna discussione, ma mi trovo di fronte un problema che non riesco a risolvere da tempo. Ho la necessità di gestire un elenco di movimentazioni all'interno di un magazziono automatico, gestito da un PLC Siemens s300 CPU318-2 e interfaccia ethernet CP343-1. Abbiamo pensato alla codifica di queste movimentazione tramite una tabella di traduzione, tale tabella è memorizzata in un DB globale come un array di interi. Ora ho la necessita di gestire questo DB tramite SCL in maniera tale che veda questo blocco come una coda e la gestisca come tale, quindi una gestione di tipo FIFO. Qualcosa ho abbozzato ma purtroppo non ho mai usato l'SCL e non so come richiamare in maniera iterativa a indicizzata il DB con i dati della coda, credo l'SCL sia la scelta migliore per la gestione di una coda, che ne pensate? Inoltre i dati devono essere per forza di tipo globale e memorizzati in un blocco dati in quanto dovrei poterli modificare, in maniera da accodare altre movimentazione da uno schedulatore sviluppato in C++ che comunica con il PLC tramite industrial ethernet grazie ad una interfaccia Applicom PCI/PCU2000ETH.Vi ringrazio per il vostro aiuto e tempo, spero che qualcuno possa aiutarmi. Link al commento Condividi su altri siti More sharing options...
TravelMen Inserita: 19 dicembre 2007 Segnala Share Inserita: 19 dicembre 2007 dai un occhi qua Puntatore SCL Link al commento Condividi su altri siti More sharing options...
maury983 Inserita: 20 dicembre 2007 Autore Segnala Share Inserita: 20 dicembre 2007 Grazie, ma avevo già visto quella discussione e risponde solo in parte ai miei problemi.Più che di un indirizzamento indiretto avevo bisogno di qualcosa di parametrizzato da inserire all'interno di un ciclo, in quanto per la gestione FIFO della coda devo ciclare tutta la coda in maniera automatica, conoscete gli algoritmi simbolici di inserzione e di uscita dei dati da una coda??Beh una cosa del genere però in SCL che scriva su questi dati globali nel DB.In un certo senso devo variare l'indice del DB, del tipo DB64.DBWxxx dove xxx deve essere l'ìindice da variare.Altre idee? Link al commento Condividi su altri siti More sharing options...
TravelMen Inserita: 20 dicembre 2007 Segnala Share Inserita: 20 dicembre 2007 In un certo senso devo variare l'indice del DB, del tipo DB64.DBWxxx dove xxx deve essere l'ìindice da variare.Secondo me la tua soluzione è la seguente:"DBDatiSup".dw[indWord]in cui "DBDatiSup" è il nome simbolico della DB"IndWord" è l'indirizzo della word nella DB (formato INT)oppure"DBDatiSup".dx[indByte,IndBit]in cui "DBDatiSup" è il nome simbolico della DB"IndByte" è l'indirizzo del byte nella DB (formato INT)"IndBit" è l'indirizzo del bit nella DB (formato INT)oppureWORD_TO_BLOCK_DB(IndDB).dbx18.0in cui "IndDB" è l'indirizzo della DB (formato WORD)oppure pui mischiare le coseWORD_TO_BLOCK_DB(IndDB).dw[indWord]in cui "IndDB" è l'indirizzo della DB (formato WORD)"IndWord" è l'indirizzo della word nella DB (formato INT)scritta da Beppe nel link che ti ho indicato. Scusa ma altrimenti non ho capito cosa cerchi. Link al commento Condividi su altri siti More sharing options...
maury983 Inserita: 20 dicembre 2007 Autore Segnala Share Inserita: 20 dicembre 2007 Quindi quell'IntWord posso tranquillamente definirla come una variabile temporanea all'interno di una funzione SFC per poi usarla come indice dei dati nel DB secondo quella sintassi?...ok ora provoGrazie. Link al commento Condividi su altri siti More sharing options...
maury983 Inserita: 20 dicembre 2007 Autore Segnala Share Inserita: 20 dicembre 2007 Ah ma un altra cosa, il DB posso richiamarlo in ogni momento all'interno del codice SCL o devo richiamarlo all'inizio con qualche dichiarazione di variabile o qualche riga di inizializzazzione, scusa la domanda un pò stupida, ma come ho detto non ho mai programmato con l'SCL. Link al commento Condividi su altri siti More sharing options...
TravelMen Inserita: 20 dicembre 2007 Segnala Share Inserita: 20 dicembre 2007 Non sono uno esperto di SCL, ma penso che siccome stai scrivendo qualcosa per siemens, suppongo che valgono le stesse regole ovvero se non hai bisogno di aprire altre DB, allora ti basta aprirla all'inizio del tuo codice, altrimenti dovrai aprirla ogni volta che vorrai utilizzare una sua variabile.Prendi il tutto con le pinze non sono uno pratico di SCL, ma più tosto di AWL e KOP. Link al commento Condividi su altri siti More sharing options...
maury983 Inserita: 20 dicembre 2007 Autore Segnala Share Inserita: 20 dicembre 2007 Ti ringrazio, infatti ho il problema di aprire questi dati e leggerli in SCL ho compilato ma mi continua a dare degli errori...Non ci sono molte persone che conoscono questo benedetto SCL, ma farlo in AWL? Come posso implementare la gestione della coda per il prelievo e l'inserimento come due funzioni separate? Link al commento Condividi su altri siti More sharing options...
TravelMen Inserita: 20 dicembre 2007 Segnala Share Inserita: 20 dicembre 2007 Analizziamo una cosa per volta una FIFO in AWL è fattibile senza grossi sforzi, per prima cosa sappiamo che il primo dato si troverà sempre in DBxx.DBW0, per tanto quando ci serve lo andremo a leggere, se dobbiamo memorizzare un altro dato avremmo da qualche parte un valore che indica la prima posizione libera (es in fondo alla DB es. DBxx.DBW1000 il valore del primo dato libero nella DB).Dopo questa semplice premessa dovremmo realizzare due funzioni (in un FC se la cosa deve essere indipendente dalla DB), la prima quella che gestirà lo scarico del dato in DBxx.DBW0 e lo spostamento verso l'alto del resto, mentre la seconda si occuperà di archiviare il/o i nuovi dati.Ti allego un esempio di FC che gestisce una FIFO, mi scuso per l'assenza di commenti appena la termino ve la ripasso con i commenti, dovrebbe essere abbastanza capibile.P.S. Chiedo scusa se uso inglese invece del tedesco per il codice.Rimango a disposizione per chiarimenti in merito Link al commento Condividi su altri siti More sharing options...
TravelMen Inserita: 20 dicembre 2007 Segnala Share Inserita: 20 dicembre 2007 Ho appena terminato di mettere i commenti ed eliminato le parti meno importanti, tale esempio vuole essere una traccia, non assicuro che sia perfettamente valido per la tua applicazione.Bun lavoro a tuttie buone feste. Link al commento Condividi su altri siti More sharing options...
maury983 Inserita: 20 dicembre 2007 Autore Segnala Share Inserita: 20 dicembre 2007 Grazie mille per l'impegno Travelman, non sono molto pratico neanche di AWL però credo di poterci mettere mano grazie ai tuoi commenti.Appena ho qualche risultato ti farò sapere.Buone Natale e complimenti al forum, ottimo davvero. Link al commento Condividi su altri siti More sharing options...
sirex70 Inserita: 30 marzo 2009 Segnala Share Inserita: 30 marzo 2009 Ciao a tutti,Oggi osservando l'elettricista,ho notato che stava "sguainando" un cavo fror(almeno credo fosse quello),utilizzando di conseguenza i cavi diventati ormai unipolari,da profano quale sono vorrei capire:i cavi a questo punto sono ancora a norma?Intendo questi cavi hanno la stessa resistenza al calore o alla fiamma,degli altri?Grazie Link al commento Condividi su altri siti More sharing options...
Nino1001 Inserita: 30 marzo 2009 Segnala Share Inserita: 30 marzo 2009 Beh!....se alla fine di un lavoro ti manca qualche spezzone di cordicella ecco cge si recupera in quel modo. Non lo so se è a norma , comodo sicuramente! Link al commento Condividi su altri siti More sharing options...
davman Inserita: 30 marzo 2009 Segnala Share Inserita: 30 marzo 2009 a quanto ne so io l' fg7 e credo anche il fror è composto da cordine no7vvk ulteriormente rivestite, quindi direi che è a norma oltre che comodo Link al commento Condividi su altri siti More sharing options...
Carlo Albinoni Inserita: 30 marzo 2009 Segnala Share Inserita: 30 marzo 2009 (modificato) Penso che i normatori non si siano mai occupati di questo argomento. Ma se vuoi toglierti il dubbio scrivi al CEI. Modificato: 30 marzo 2009 da Carlo Albinoni 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