Vai al contenuto
PLC Forum


Scalatura Valore Intero Per Uscita Analogica


Mauro76

Messaggi consigliati

salve a tutti,

volevo sapere come convertire un intero che va da 0 a 100% in un uscita analogica 0 - 27468.

Ho fatto lo scale (FC105) è giusto ?

Link al commento
Condividi su altri siti


Ciao,

la funzione corretta dovrebbe essere UNSCALE (FC106): gli dai in ingresso un REAL e lo converte in intero da -27648 a 27648 (BIPOLAR) o da 0 a 27648 (UNIPOLAR); FC105 fa esattamente il contrario.

Link al commento
Condividi su altri siti

ho provato come dici tu allora: in ingresso ho messo un md50 impostato a 100.0 % in uscita mi dovrebbe dare qualcosa, ma invece niente perchè ?


io devo inserire un valore che parte da 0 e va a 100% (valore intero inserito da pannello operatore) lo devo portare fuori in uscita analogica e questo valore deve cambiare da 0 a 27468 giusto?

Link al commento
Condividi su altri siti

Prova a simulare il tutto appoggiando il valore di uscita ad un intero che puoi verificare, invece che direttamente all'uscita analogica, e vedi come si comporta; attenzione anche ai tipi di dati: se il valore 0-100% non è un REAL, devi prima convertirlo (I_DI converte da INT a DINT e DI_R converte da DINT a REAL).

Almeno così discrimini dov'è l'errore ...

Mi sono accorto adesso che hai utilizzato MD50 (chiedo venia): se è un DINT (intero a 32 bit) devi convertirlo in REAL con DI_R, prima di passarlo alla FC106.

Modificato: da drugo66
Link al commento
Condividi su altri siti

Visto che non riesco più a reperire il manuale in rete, ho pensato di postarlo nella sezione Upload del S7-300: il capitolo 6 è quello di tuo interesse.

Link al commento
Condividi su altri siti

è una semplice proporzione:

100%:27648= valore attuale : X

quindi x= valore attuale * 27648/100

questo è il modo più banale per fare un unscale senza complicarsi la vita.

attenzione però ad utilizzare le variabili in modo corretto e a mettere dei limiti per sicurezza.

valore attuale *27648 sarà sicuramente un doppio intero perciò attenzione a come si dichiarano le variabili

Link al commento
Condividi su altri siti

come dice ken

L "tuovalore"
L 27648
*D
L 100
/D
T "Tag_34":P //valore da mandare all'out analog
se il tuo valore rimane compreso tra 0 / 100
Modificato: da sesaspa
Link al commento
Condividi su altri siti

grazie drugo66 ho fatto come mi hia suggerito ed ho risolto alla perfezione, anche l'invio da pannello della percentuale al plc e con l'uscale (fc106) sono riuscito ad ottenere il risultato in uscita analogica corrispondente.

grazie a tutti e buon fine settimana.

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