Vai al contenuto
PLC Forum


Ton E Il Suo Time.


ferentarius

Messaggi consigliati

Ciao a tutti, come faccio in KOP ad utilizzare il blocco TON dandogli in pasto una word?

Il TON vuole come parametro in ingresso un tipo di dato TIME.

Come faccio a convertire una semplice word (dato che mi arriva da un pannello operatore) in un dato da dare in pasto alla TON.

Ero capace di farlo in AWL, ma qui non trovo come fare.

Mi date una mano per favore?

Grazie e ciao.

Fer.

Link al commento
Condividi su altri siti


Ottimo, hai ragione, funziona, grazie e ciao.

è una cosa che non ho trovato io o non c'è scritto da molte parte?

sull'. del blocco non mi sembra ci sia scritto.

boh boh, comunque grazie.

Fer.

Link al commento
Condividi su altri siti

Ho detto gatto senza averlo nel sacco.

Ti avevo detto "funziona". Troppo presto, avevo solo visto che la DINT era un parametro che veniva accettato dal blocco TON.

Però ora mi da questo mex di errore la CPU:

"Errore CPU temporaneo: Errore di lunghezza di campo in FC 10"

In effetti cosa vuol dire mettere una DINT in quel posto? che base di tempi dovrebbe avere? come dovrebbe gestire il timer?

Grazie e ciao.

Fer.

Link al commento
Condividi su altri siti

Prendi la variabile A che vuoi passare a PT, la muovi nella variabile del DB dati del TON.PT.

Mi spiego meglio:

crei un TON il quale crea un DBA;

crei una variabile A (DINT);

muovi la variabile A in DBA.PT;

usi la variabile DBA.PT in PT del TON....

Link al commento
Condividi su altri siti

io di solito uso il -(TON)-, in un db uso una variabile come IEC-timer per definire il timer e poi creo una variabile TIME ( te la da in ms) per assegnargli il tempo

Link al commento
Condividi su altri siti

x mrsunday:

anch'io all'inizio facevo così!!!!! poi ho usato questo sistema per avere la possibilità quando vado sul display di poter inserire nel campo del display uuna unità in minuti o secondi invece di avere solo millisecondi!!!

i campi I/O del display mi dà lapossibilità di inserire 5000ms, che poi il TON li trasforma in 5 secondi, con il miio sistema posso mettere a display 5 e il TON li prende come 5 secondi....l'ho fatto perchè certe variabili inserite da display mi ci volevano in 5 ore da fare girare un motore....quindi non potevo fare inserire all'operatore 18000000 ms!!!

Tutto qui....mi sa che non stato molto chiaro....

poi non sò se c'è qualche altra soluzione!!!

Link al commento
Condividi su altri siti

lucacortinovis.autom

Io per ovviare al problema mi sono costruito un temporizzatore che utilizza il bit di clock della CPU. Imposto un tempo di preset in secondi e sommo i fronti di salita del bit di clock in secondi. Un comparatore mi dice quando ho raggiunto il tempo di preset.

Link al commento
Condividi su altri siti

Provate a vedere le immagini e ditemi se qualcosa non è chiaro!!!

non si possono aggiungere immagini?

Modificato: da beppexx80
Link al commento
Condividi su altri siti

Ma vi piace così tanto complicarvi la vita?

Perché non dichiarate semplicemente la variabile in formato TIME?

Il formato TIME non è altro che una DINT con il tempo in millisecondi.

Per la visualizzazione sul HMI nell'unità di misura desiderata, basta una semplicissima scalatura da fare nel pannello operatore stesso.

Link al commento
Condividi su altri siti

penso che la scalatura sia possibile su tutti i pannelli, uno volta si poteva fare anche su quelli base con il vecchio Protool comunque basta selezionare la variabile e andare nelle proprietà e vedere se ti da la funzione

"scala lineare"

Link al commento
Condividi su altri siti

X Batta e Mrsunday:

nel mio pannello KPT400 non c'è la possibilità o la funzione scala lineare...se qualcuno ha qualche idea migliore è ben accetta....

Come no?

Ho appena provato proprio con un KPT400 mono, e funziona.

- Seleziona la variabile nella tabella delle variabili dell'HMI

- Apri la scheda "Proprietà"

- Scegli "Scala lineare"

- Metti il segno di spunta per abilitare la scalatura

- Inserisci i valori di scalatura

Se, per esempio, desideri impostare un tempo in secondi, potresti inserire i seguenti valori:

PLC: valore iniziale = 0 --- valore finale = 1000

HMI: valore iniziale = 0 --- valore finale = 1

Link al commento
Condividi su altri siti

occhio che come dice Batta devi selezionare la variabile dalla tabella delle variabili dell'HMI, non dal campo di definizione che hai messo nell'immagine

Link al commento
Condividi su altri siti

Ho visto "Scala lineare" certo che potevano mettere queste proprietà di scala lineare anche quando si seleziona la variabile a display.....che palle!!!! ci sono proprietà ovunque!!!

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...