Vai al contenuto
PLC Forum


DIFFERENZE TRA I DUE TIPI DI TEMPORIZZATORI TON


pablopalma

Messaggi consigliati

Salve ragazzi, vorrei capire la differenza tra i due tipi di temporizzatori ton (ritardo all'inserzione) presenti nel 1200,ho capito che quelli in blu sono di tipo internazionale, gli altri quelli siemens,ma la cosa che non riesco a fare,è parametrizzare il ton siemens, sotto si mette il tempo, sopra cosa va messo?,mi da sempre errore, la guida in linea non mi ha chiarito il dubbio,anche riportando il parametro dato come esempio nella guida mi da errore,che tipo di dato va inserito?, dove c'è la freccia, grazie.

da pos.jpg

Link al commento
Condividi su altri siti


Ciao,

oltre alla guida in linea ti consiglio di scaricarti il manuale pdf che può essere di aiuto: lo trovi qui. Oltretutto Siemens Sios dovrebbe diventare la tua bibbia se vuoi utilizzare Siemens.

Per il primo timer, a pagina 4153 del manuale:

 

Quote

L'istruzione "Avvia temporizzatore come ritardo all'inserzione" salva i propri dati in una struttura del tipo IEC_TIMER o TON_TIME che può essere dichiarata nel modo seguente:
● Dichiarazione di un blocco dati del tipo di dati di sistema IEC_TIMER (ad es."MyIEC_TIMER")
● Dichiarazione come variabile locale del tipo TON_TIME o IEC_TIMER nella sezione "Static" di un blocco (ad es. #MyIEC_TIMER)

 

quindi dovrai inserire un blocco dati contenente le variabili tipiche del timer IEC; per crearlo dovrebbe apparire una finestra di selezione/creazione automaticamente quando utilizzi l'istruzione, oppure cliccando con il tasto destro dovrebbe esistere qualche voce del tipo "Crea blocco dati"; la stessa cosa dovrebbe essere accaduta per il secondo timer quando hai immesso l'istruzione; la differenza dovrebbe essere che con il primo timer "vedi" solo la bobina del timer, mentre con la seconda c'è tutto il timer.

Dimenticavo: non ho mai utilizzato la prima istruzione, ecco perchè finora ho usato il condizionale.

 

Personalmente non amo molto avere una marea di blocchi dati creati dal sistema (uno per ogni timer), quindi mi comporto così: se i timer si trovano all'interno di blocchi FC (privi di variabili STATIC), creo un blocco dati che conterrà tutti i timer e contatori, magari suddividendo in strutture di utilizzo (che so, Generali, Stazione 1, etc.); quando, durante la stesura, ho bisogno di un timer, prima lo creo nel blocco dati, immetto l'istruzione nel blocco FC, poi annullo la creazione automatica ed inserisco il nome del timer nel DB (ad esempio mioblocco.miastruttura.miotimer1); così facendo i timer che utilizzo sono tutti nello stesso blocco in ordine (ovviamente il nome del timer ha il senso della suo funzione e gli inserisco anche il commento); se, invece, utilizzo dei blocchi FB, i timer li dichiaro come variabili STATIC (anche qui nome che ha un senso e commento), i quali andranno a finire per forza nel blocco d'istanza dell'FB; questo perchè, secondo me, un blocco FB non deve contenere nulla di dichiarato al di fuori del blocco stesso, ma deve essere un blocco completamente autonomo.

 

Mi dai l'impressione di essere alle prime armi, quindi, ti rinnovo il consiglio di scaricare il manuale e di leggerlo, soprattutto se alcuni termini che ho utilizzato prima ti risultano oscuri.

 

Link al commento
Condividi su altri siti

Nel segmento 1 dovresti mettere la stessa cosa che metti nel segmento 2: una struttura di tipo IEC_Timer.

 

Ma vedo che sono arrivato un po' tardi ;-)

 

Link al commento
Condividi su altri siti

Grazie a Drugo66 e Batta,per Drugo, mi chiarisci per favore siemens sios dove lo trovo,grazie.Tornando al quesito da me posto,inserendo il timer siemens,non crea il db automatico,lo fa quando inserisco il timer iec,quello in blu per intenterci.

Link al commento
Condividi su altri siti

Scusate se insisto,ma anche leggendo il manuale non riesco a venirne fuori,ho fatto delle prove, inserendo in ton in blu,il sistema crea il db di tipo time,e sembra funzioni tutto,inserendo l'altro ton,non si crea in automatico nessun db.A questo punto l'ho creato io un db,di tipo iec timer,ma nel db non mi permette di editare nulla,associando il db da me creato al ton, sotto riesco ad impostare il tempo, ma sopra mi sottolinea in rosso il db associato,questo non mi spiego,mi da errore.

immag.jpg

Link al commento
Condividi su altri siti

8 ore fa, pablopalma scrisse:

per Drugo, mi chiarisci per favore siemens sios dove lo trovo,grazie.

 

Ti ho postato il link con il manuale, quello è il sito Siemens SIOS. In ogni caso, se fai una ricerca con Google lo trovi subito.

 

7 ore fa, pablopalma scrisse:

Scusate se insisto,ma anche leggendo il manuale non riesco a venirne fuori ..

 

Evidentemente stai sbagliando qualcosa, max.bocca ti ha postato come ha utilizzato l'istruzione senza problemi; prova a seguire passo-passo cosa leggi sul manuale, altro non so consigliarti ... l'unica cosa è verificare che TIMER6 sia un dato IEC_TIMER.

Esiste anche un'altro tipo di timer, per la serie 300; non ricordo il nome dell'istruzione, ma tu usi un 1200 e quel timer non accetta l'impostazione T# per il valore del tempo, quindi non può essere quello.

 

Link al commento
Condividi su altri siti

Ciao ragazzi,ho rifatto tutto,ma il problema persiste,praticamente creo un db,di tipo timer,poi in ob1 inserisco il ton,sotto imposto il tempo,sopra,compare il suggerimento del db creato,ma inserendolo mi da comunque l'errore segnalato in rosso.Il mio dubbio è questo: nel db va comunque settata una variabile?,ma nel mio non mi fa scrivere niente, i campi non sono editabili,allego immagine.

2.jpg

1.jpg

Link al commento
Condividi su altri siti

Da quello che vedo nel primo screen-shot, la dichiarazione l'hai scritta come se fosse un timer IEC, ma in realtà il TIA non la riconosce come tale; crea una variabile TEST nel blocco DB (una sola), poi come tipo di dati gli inserisci/selezioni IEC_TIMER; a questo punto nel OB1 sul tuo timer inserisci "Blocco_dati_1".TEST.

Così deve funzionare.

 

Link al commento
Condividi su altri siti

Ciao Drugo, il problema è proprio quello, nel db non mi fa editare nessuna variabile,ne cancellare,inserire righe ecc.,non mi fa scrivere niente.

Link al commento
Condividi su altri siti

Sul temporizzatore devi mettere solo la DB del temporizzatore senza .variabile, nell'ultimo esempio devi mettere solo "Blocco_Dati_1" e non "Blocco_Dati_1".TEST oppure direttamente DB1.

Link al commento
Condividi su altri siti

Ciao ragazzi,dopo averci sbattuto la testa ho trovato la soluzione,la dico perchè potrebbe essere utile ad altri.In pratica si tratta di un bug,nel momento in cui scrivo sopra al temporizzatore,si apre il suggerimento automatico,in cui è presente il db creato,cliccandoci sopra,il sistema lo inserisce,ma lo sottolinea in rosso,lo da come errore,infati non lo fa caricare per la simulazione.Stamattina,intenzionato a risolvere questo problema,e grazie a Max bocca,che parlava di bug,si è accesa la lampadina,ho semplicemente trascinato dalla barra di sinistra il db creato, cosi facendo finalmente è tutto ok.Comunque, ringrazio tutti voi intervenuti,in queste occasioni si apprezza appieno l'importanza del forum,grazie ancora.

Link al commento
Condividi su altri siti

19 ore fa, pablopalma scrisse:

Ciao ragazzi,dopo averci sbattuto la testa ho trovato la soluzione,la dico perchè potrebbe essere utile ad altri

 

Questo è proprio lo spirito del forum. :thumb_yello:

Link al commento
Condividi su altri siti

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 account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...