Vai al contenuto

Analog Output


Messaggi consigliati

Inserito:

Buonasera a tutti,

piccolo quesito...

Ho un S7-1200 con modulo 4AI e 2AO.

Acquisisco il 4-20 mA, lo normalizzo, lo scalo lo utilizzo in una formula e il valore (manipolato) me lo ritrovo sull'HMI. fin qui tutto regolare (il risultato ha un range che va da -XX a +XX).

questo valore, lo devo rendere disponibile su un uscita 4-20 mA.

sto facendo fatica a scalare il valore e normalizzarlo sull'uscita..

 

qualche dritta?

grazie mille

Inserita:

la scalatura per l'uscita analogica dev'essere fra 0 e 16384 se non erro.

 

Simone.Salarsi
Inserita:

Di solito con siemens il range dei segnali analogici è 0..27684.

il tuo -XX corrisponderà a 0 (4mA) e il tuo +XX sarà 27648 (20mA)

 

Comunque questa è la tabella dei valori che trovi sul manuale dei moduli analogici
image.thumb.png.a3d8414c7f805687b262e826748a911c.png

Inserita:

Niente ragazzi, 

mi sto incartando scusate.

Chiedo umilmente venia ma non mi sto raccapezzando.

 

il risultato della mia formula si trova in %MD204

 

devo prendere %md204 e scalarlo con scale_x al valore minimo e massimo e lo chiamerò ValoreScalato

Poi il ValoreScalato lo normalizzo (Norm_x) con valore min 0 e max 27648 mettendolo sulll'uscita analogica %qw96 (Ad esempio) corretto?

 

per così non mi confinfera la cosa...

 

sicuramente sbaglio in qualcosa.

grazie ancora

 

 

Simone.Salarsi
Inserita:

prima devi normalizzare il valore e poi scalarlo tra 0 e 27648

Inserita:
Quote

 

Niente ragazzi, 

mi sto incartando scusate.

Chiedo umilmente venia ma non mi sto raccapezzando.

 

il risultato della mia formula si trova in %MD204

 

devo prendere %md204 e scalarlo con scale_x al valore minimo e massimo e lo chiamerò ValoreScalato

Poi il ValoreScalato lo normalizzo (Norm_x) con valore min 0 e max 27648 mettendolo sulll'uscita analogica %qw96 (Ad esempio) corretto?

 

per così non mi confinfera la cosa...

 

sicuramente sbaglio in qualcosa.

grazie ancora

 

 

Nada, non mi confinfera

Forum.PNG

Simone.Salarsi
Inserita: (modificato)

devi usare un real in uscita da norm_x, anche una temporanea va bene così non sprechi merker

Modificato: da Simone.Salarsi
Inserita:
Quote

 

Niente ragazzi, 

mi sto incartando scusate.

Chiedo umilmente venia ma non mi sto raccapezzando.

 

il risultato della mia formula si trova in %MD204

 

devo prendere %md204 e scalarlo con scale_x al valore minimo e massimo e lo chiamerò ValoreScalato

Poi il ValoreScalato lo normalizzo (Norm_x) con valore min 0 e max 27648 mettendolo sulll'uscita analogica %qw96 (Ad esempio) corretto?

 

per così non mi confinfera la cosa...

 

sicuramente sbaglio in qualcosa.

grazie ancora

 

 

Nada, non mi confinfera

Forum_1.PNG

Inserita: (modificato)

Come detto da @Simone.Salarsi in uscita dal Norm_X la variabile deve essere reale perchè esce un numero con la virgola tu hai messo un intero MW236 ed essendo un numero intero viene arrotondato a 1 e va tutto in pappa.

Quando ci sono dei calcoli i numeri interi vanno evitati, si rischia di perdere i decimali e quindi i calcoli vengono errati.

Modificato: da acquaman
Inserita:

Grazie mille. erroraccio mio!

caffè pagato per tutti.

 

:) 

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