Vai al contenuto
PLC Forum

Partecipa anche tu alla Live su Youtube martedì 28/01/2025 per festeggiare i 24 anni di PLC Forum

Per ulteriori informazioni leggi questa discussione: https://www.plcforum.it/f/topic/326513-28012025




Ton E Il Suo Time.


Messaggi consigliati

Inserito:

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.


Inserita:

Ciao,

al TON in PT basta che gli dai in pasto una DINT.

Inserita:

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.

Inserita:

Sinceramente l'ho scoperto per caso....avevo il tuo stesso problema!!!

Inserita:

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.

Inserita:

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

Inserita:

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

Inserita:

Ok!!! questa volta il gatto c'è l'hai nel sacco?

Inserita:

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

lucacortinovis.autom
Inserita:

scusa beppexx80 puoi specificare meglio come fai ?

lucacortinovis.autom
Inserita:

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.

Inserita: (modificato)

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

non si possono aggiungere immagini?

Modificato: da beppexx80
Inserita:

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.

Inserita:

x Batta:

ma si può fare anche sul pannello KPT400?

Inserita:

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"

Inserita:

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

Inserita:

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

Inserita:

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

Inserita:

perché fare le cose semplici quando c'è sempre un sistema per complicarle......

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