Vai al contenuto
PLC Forum


Esercizio Posizione Sensore


tecfil

Messaggi consigliati

Ciao a tutti!

Non riesco a capire bene come svolgere questo tipo di esercizi, in particolare non riesco a capire quali passaggi vengono fatti per arrivare alla soluzione. Purtroppo sulle dispense non ho trovato nessuna spiegazione in merito.

Testo:

Sia dato un sensore di posizione X con uscita in tensione V=f(X), illustrare perché è importante che f sia una funzione lineare. Si immagini di connettere un sensore, la cui uscita vale 1V+500mV*X+100mV*(X^2) dove X è la posizione espressa in metri e variabile tra 0 e 2, ad un modulo di ingressi analogici che restituisce 0x0000 a 0V e 0x0FFF a 10V. Come è possibile realizzare un programma che dal numero letto calcoli la posizione X? Si discuta il problema rispetto all'uso di un sensore lineare, la cui uscita valga 1V+500mV*X.

Soluzione:

La linearità è particolarmente importante perché la relazione permette di calcolare la grandezza misurando l'uscita del sensore è la relazione inversa. Nel caso di sensore lineare la relazione inversa è ancora una relazione lineare, mentre nel caso di un sensore con relazione quadratica la relazione inversa risulta complessa da calcolare ed applicare.

Nel caso di relazione lineare, l'uscita varia tra 1V e 2V e quindi il numero letto VAL varia tra 409 e 819. La posizione X si stima a partire da VAL=(4096/10)(1V+500mV*X) ed in particolare si ha X=(VAL(10/4096)-1V)/500mV

Io ho un bel po' di dubbi riguardo la soluzione :D :D

Il fatto che utilizzi una relazione lineare mi è chiaro, ma non ho capito che calcoli ha fatto per arrivare al risultato.

Come mai che l'uscita varia tra 1V e 2V quando nel testo dice che varia tra 0V e 10V? Come fa poi ha ricavare VAL che varia tra 409 e 819?

Sapreste indicarmi quali passaggi devo seguire?

Grazie mille

Ciao

Tecfil :)

Link al commento
Condividi su altri siti


uscita vale 1V+500mV*X+100mV*(X^2)

Questa non una relazione lineare ma è la somma di una relazione lineare ed una quadratica.

In particolare hai un piedistallo di 1V a cui si somma una parte lineare ed una parte quadratica.

O c'è qualche errore nel testo oppure non è corretta la soluzione.

Modificato: da Livio Orsini
Link al commento
Condividi su altri siti

Come mai che l'uscita varia tra 1V e 2V quando nel testo dice che varia tra 0V e 10V?

Il campo del modulo di ingresso va da 0 a 10 V, ma l'uscita del sensore ideale di riferimento si ricava dall'espressione 1V+500mV*X. Ponendo X=0 e X=2

Come fa poi ha (!) ricavare VAL che varia tra 409 e 819?

per un ingresso da 0 a 10 V l'analogica restituisce 0x0000 0x0FFF, in decimale 0 ÷ 4095. Se l'ingresso spazia tra 1 e 2 V l'uscita produrrà in decimale un decimo (409) e due decimi (819) di 4095.

Link al commento
Condividi su altri siti

Ciao!

Il testo è giusto, l'ho ricontrollato ed è uguale a quello che ho trascritto qui. Quindi per calcolare la posizione X prima converto l'uscita analogica in valore decimale, e poi calcolo quanto vale l'uscita V.

Fatto questo come ha fatto a trovare che X=(VAL(10/4096)-1V)/500mV.

Grazie mille :)

Ciaoo!

PS: scusate mi è scappata una h :D

Link al commento
Condividi su altri siti

Sarà anche giusto, ma tu hai scritto: "l'uscita vale 1V+500mV*X+100mV*(X^2)"

Se è così la relazione X=(VAL(10/4096)-1V)/500mV. non è corretta perchè manca la parte quadratica. Sarebbe valida se, e solo se, la funzione di trasferimento fosse limitata alla sola prima parte.

Modificato: da Livio Orsini
Link al commento
Condividi su altri siti

Ciao!

Allora probabilmente hanno sbagliato a scrivere la risposta all'esercizio! Grazie per la correzione.

Sapresti dirmi se c'è qua sul forum qualche guida in cui sono riportate queste formule? Perché ad esempio non ho ancora capito come mail la posizione X si stima a partire da VAL.

In altri esercizi mi è chiesto di calcolare sempre la posizione del sensore in base alla variazione della corrente e della pressione, però anche qui non trovo nessuna formula nella teoria da applicare!

Grazie

Ciao :)

Link al commento
Condividi su altri siti

L'esercizio è scritto in modo poco chiaro, tuttavia:

Per calcolare la grandezza fisica si deve rovesciare la formula con cui avviene la trasformazione da grandezza fisica a valore numerico

L'ingresso analogico per un campo 0, …,10 V fornisce 0x0000, …, 0x0FFF cioè 0,...4095.

Ogni unità di tensione del sensore produce un valore numerico di 4095/10 (VAL/V)

Il valore numerico prodotto dalla catena posizione->sensore->ingresso analogico è dato dal VAL di ogni volt. moltiplicato per i VOLT del segnale in tensione :

VAL = (4095/10) * (1V+500mV*X)

risolvendo rispetto ad X

VAL * (10/4095) = 1V+500mV*X

VAL * (10/4095) -1V = 500mV * X, quindi

X = VAL*(10/4095)-1V)/500 mV

Il 4096 è una svista, i punti del convertitore A/D sono si 4096, ma si conta da zero sia nel campo digitale che nella misura della tensione, quindi per i rapporti si deve usare 4095

Link al commento
Condividi su altri siti

Ciao!

Grazie mille per la spiegazione, ora torna tutto quanto :D

Ho anche un altro esercizio in cui non riesco a capire come arrivare in fondo (purtroppo sulla teoria non vi è alcuna spiegazione).

Testo:
Una sensore di pressione varia la sua resistenza R in funzione della pressione P secondo la legge: R[ohm]=300 + k(P-1.2bar)

dove k vale 200 Ohm/bar nel range [0-3bar]. Il sensore è alimentato a VCC=10V e il segnale in corrente Is=VCC/R viene portato ad un ingresso analogico in corrente che restituisce 0x0000 se la corrente è 0 e 0x3FFF se la corrente è 20mA.

Scrivere le formule che il PLC deve eseguire per calcolare P e, supponendo che il modulo di ingresso analogico abbia 14 bit di risoluzione, calcolare il range in corrente che corrisponde al range di pressione del sensore.

Soluzione:

Il valore di resistenza corrispondente a 3bar è pari a 6600Ohm, corrispondente ad una corrente di 15.1mA. Il valore di resistenza corrispondente a 0bar è pari a 660Ohm, corrispondente ad una corrente di 167mA. Tale valore è superiore ai 20mA massimi, quindi il range di pressione ammissibile deve essere ricalcolato.

I_max =20mA

R_min = 500Ohm

P_min = 2.2bar

Range di corrente: da 15.1mA a 20mA.

Il valore V a 14bit letto dal modulo di ingressi analogici è pari a V=(0x3FFF/20)*10/(3000+2000(P-1.2))

Anche qui non mi è chiara la soluzione :( più che altro i passaggi che segue per arrivare all'ultima equazione!

Grazie

Ciaoo :)

Link al commento
Condividi su altri siti

Gianmario Pedrani

Prima di tutto devi sapere il range o meglio il valore massimo che leggi sul dac o sulla scheda analogica quando applichi una corrente di 20 mA es per il plc della serie 300 e 1200 al valore 20 mA = 28648 ed a 0 mA = 0

una volta trovati i range del della tua scheda analogica usi la formula che ti ho indicato sotto come proporzione per ingenierizzare il valore

k1= 0

k2 = 27648

in= è il valore che leggi sul canale analogico

lo_lim = range minimo

hi_lim = range massimo

OUT = [ ((IN–LO_LIM)/(HI_LIM–LO_LIM)) * (K2–K1) ] + K1

es se voglio che linearizzare un valore 0- 20 mA in un valore 0-100 applico al lo_lim = 0 Hi_lim = 100 ed k1 e k2 li lascio invariati

ciao spero di essere stato chiaro

Link al commento
Condividi su altri siti

L'esercizio è scritto in modo poco chiaro, tuttavia:

Torno a ripetere, se il testo dell'esercizio è corretto, quindi la funzione di trasferimento del trasduttore di posizione è:

Val = 1V + 500mV*X +100mV*(X^2)

la soluzione:

VAL = (4095/10) * (1V+500mV*X)

risolvendo rispetto ad X

VAL * (10/4095) = 1V+500mV*X

VAL * (10/4095) -1V = 500mV * X, quindi

X = VAL*(10/4095)-1V)/500 mV

NON E' CORRETTA perchè manca la parte inerente ad X2 .

Link al commento
Condividi su altri siti

Il testo parla del trasduttore non lineare e ne da l'espressione, ma poi chiede:

Si discuta il problema rispetto all'uso di un sensore lineare, la cui uscita valga 1V+500mV*X.

Link al commento
Condividi su altri siti

Si discuta il problema rispetto all'uso di un sensore lineare, la cui uscita valga 1V+500mV*X.

Infatti quella è solo una parte della soluzione. Poi bisogna affrontare anche l'altro tipo di sensore, quello con funzione di trasferimento con una parte quadratica, e farne il raffornto.

Link al commento
Condividi su altri siti

Prima di tutto devi sapere il range o meglio il valore massimo che leggi sul dac o sulla scheda analogica quando applichi una corrente di 20 mA es per il plc della serie 300 e 1200 al valore 20 mA = 28648 ed a 0 mA = 0

una volta trovati i range del della tua scheda analogica usi la formula che ti ho indicato sotto come proporzione per ingenierizzare il valore

k1= 0

k2 = 27648

in= è il valore che leggi sul canale analogico

lo_lim = range minimo

hi_lim = range massimo

OUT = [ ((IN–LO_LIM)/(HI_LIM–LO_LIM)) * (K2–K1) ] + K1

es se voglio che linearizzare un valore 0- 20 mA in un valore 0-100 applico al lo_lim = 0 Hi_lim = 100 ed k1 e k2 li lascio invariati

ciao spero di essere stato chiaro

Ciao!

Grazie per la risposta, però non ho ancora capito bene come fare per risolvere l'esercizio :(

Io sono arrivato fino a questo punto:

Parto dalla formula della resistenza:
R=300+k(P-1.2bar) quindi quando ho la pressione a 0bar ottengo:
R=60 Ohm
quando invece la pressione vale 3 bar allora ottengo:
R=660 Ohm
Quindi ora sapendo che la corrente è data da
I_s=VCC/R ottengo i valori delle correnti con le due resistenze:
I_R1=0.167A
I_R2=0.015A
Sapendo che se la corrente è 20mA allora il convertitore mi fornisce il valore 0x3fff, converto questo valore da esadecimale a decimale ed ottengo:
3fff = 16383
Fatto questo mi manca da risolvere l'ultimo pezzo della consegna:
Scrivere le formule che il PLC deve eseguire per calcolare P e, supponendo che il modulo di ingresso analogico abbia 14 bit di risoluzione, calcolare il range in corrente che corrisponde al range di pressione del sensore.
Torno a ripetere, se il testo dell'esercizio è corretto, quindi la funzione di trasferimento del trasduttore di posizione è:
Probabilmente o si è dimenticata di indicare nella soluzione anche la parte quadrica, oppure le interessava solo la lineare :D Misteri dei professori :D
Per calcolarmi la parte quadrica dovrò risolvere l'equazione di secondo grado con x^2 giusto?
Grazie mille
Ciaoo :smile:
Link al commento
Condividi su altri siti

Per calcolarmi la parte quadrica dovrò risolvere l'equazione di secondo grado con x^2 giusto?

Certamente, poi usarai solo la radice reale per calcolare la posizione.

Comunque la soluzione è molto più facile di quello che sembra.

Link al commento
Condividi su altri siti

  • 2 weeks later...

Ciao a tutti!

Ho ancora un dubbio riguardo questa tipologia di esercizi. Ad esempio in questo esercizio ho risolto il primo pezzo ma non riesco a terminare la seconda parte.

Testo:
Un sensore di posizione varia la sua corrente I in funzione della pressione P secondo la legge I[mA] = 10 + k log [P/1bar] dove k vale 10mA nel range [0.3-10bar]. Il sensore è collegato ad un ingresso analogico in corrente che restituisce 0x0000 se la corrente è 0 e 0x03ff se la corrente è 20mA. Scrivere le formule che il PLC deve eseguire per calcolare P e, supponendo che il modulo di ingresso analogico abbia 10 bit di risoluzione, calcolare il range in corrente che corrisponde al range di misura del sensore e i corrispondenti valori letti dal convertitore. Calcolare anche l’errore relativo rispetto al fondo scala.

Soluzione:

Il valore di corrente corrispondente a 0.3 bar è pari a I0.3=10 + 10 * log (0.3) = 4.77 mA (N=4.77/20*3FF= 0F4 = 243).
Il valore di corrente corrispondente a 10 bar è pari a I10=10 + 10 * log (10) = 20 mA (N=20/20*3FF= 3FF = 1023).
Il valore V a 10 bit letto dal modulo di ingressi analogici è pari a V =0x03FF /20*(10 + 10 log (P/1bar) per cui, invertendo tale formula, si ottiene P = 10 ^ [(V/0x3FF*20 – 10)/10].
L’errore relativo è dovuto alla risoluzione in corrente del sistema r=20mA/1024= 0,01953125 mA e dal fondo scala FS=I10-I0.3 = 20-4.77 = 15.33 mA da cui erel = 0.01953125/15.33 = 0.13%
Il valore della corrente a 0.3bar ed a 10bar lo trovo sostituendo i due valori all'interno della relazione data dal testo.
Quello che non non riesco a capire è: N cosa mi esprime?
In base a quale relazione per trovare V devo moltiplicare l'equazione del testo per (0x03FF)/20?
Grazie
Ciaoo :)
Link al commento
Condividi su altri siti

Quello che non non riesco a capire è: N cosa mi esprime?

N è il valore numerico prodotto dal convertitore analogico/digitale. Si ottiene con una proporzione, poiché una corrente di 0 mA produce N=0x000 e una di 20 mA produce N=0x3FF basta fare la proporzione tra i mA e i numeri, per esempio : 4,77 mA / 20 mA = N / 0x3FF da cui si ricava che con 4,77 mA N = 4,77/20 * 3FF

In base a quale relazione per trovare V devo moltiplicare l'equazione del testo per (0x03FF)/20?

L'equazione del testo (10 + 10 log (P/1bar) definisce il valore della corrente in mA e, al solito, questo valore fisico della corrente che arriva al convertitore A/D va rapportata al campo numerico.

(10 + 10 log (P/1bar) / 20 = V / 0x03FF da cui

V = (10 + 10 log (P/1bar) * (0x03FF) / 20

Link al commento
Condividi su altri siti

Ciao!

Grazie per la spiegazione. Ora è molto più chiaro :D

Ultima cosa: per calcolare la risoluzione del fondo scala e l'errore che formula ha utilizzato?

Perché guardando così sembra: fondo scala: I_max - I_min, mentre errore: R/Fs

Sono corrette?

Grazie mille

Buona serata

Ciao :)

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