|
|||
CONTAGIRI
DIGITALE PER
MOTORI DI LAVATRICE - 2 |
|||
|
|||
|
|||
Tachimetro basato sulla misura della ampiezza - AMP_MODE
Nel caso in cui si misuri l'ampiezza del segnale in uscita dal sensore per ricavare gli rpm del motore, bisogna correlare l'ampiezza delle sinusoidi al numero di giri. Ovvero ad ogni volt di tensione all'uscita del sensore corrisponde un valore di RPM ( revolution per minute) o giri al minuto dell'asse del motore. Nella maggior parte dei casi, la relazione che legga gli RPM e la tensione di uscita non e' sempre di tipo proporzionale. In prima approssimazione possiamo pensare che la relazione sia di tipo proporzionale. In questo caso basta misurare la tensione, tramite un voltmetro per tensioni AC, al valore massimo di rotazione del motore e rapportarla al numero di giri dichiarati nella targa del motore. Per esempio, per il motore MCA3064 viene dato un valore RPM_max=13000 giri/min a cui corrisponde, in uscita del sensore una tensione, VAC_max =30Vac. Schema di misura - amp_modeQuesto tecnica di
misura
basata sulla tensione e' possibile implementarla mediante un
circuito elettrico che permette di misurare la tensione del
sensore e di visualizzare su display il valore stimato dei giri
motore direttamente in RPM. ![]() Fig. 2: schema a blocchi del circuito misuratore
di giri per motori lavatrici - amp_mode
Il circuito proposto fa uso di Arduino (
versione nano) che campiona e converte digitalmente, tramite
la periferica
ADC, la tensione
condizionata del sensore, la moltiplica per il fattore di proporzionalità
per poi
visualizzare il risultato mediante un display LCD. Per poter convertire la tensione del sensore, essendo di tipo sinusoidale, bisogna condizionarla ovvero convertila in una tensione DC ( corrente continua) e abbassarla nell'intervallo accettabile per l'ingresso del convertitore ADC del modulo Arduino (vfs=5V). Quindi bisogna interporre tra l'uscita del sensore e l'ingresso dell'Arduino un convertitore AC / DC, costituto da un ponte di Greatz e da un condensatore di livellamento, seguito da un partitore di tensione che abbassi la tensione VDC in modo che la tensione di uscita dal partitore Vin, al valore massimo di giri motore, sia accettabile all'ingresso del convertitore ADC dell' Arduino. La tensione VDC di uscita dal convertitore AC/DC, considerando i valori massimi ( per il massimo regime di rotazione del motore), VDC_max=
(VAC_max *1.414) - 1.2
Il fattore 1,414 e' per ricavare il valore
massimo di una sinusoide
passando dal valore efficace della sinusoide fornita dal voltmetromentre il termine 1,2 e' dovuto alla caduta di tensione che introduce il ponte a diodi di Gretz. Noto il valore di VDC_max si può calcolare il fattore di partizione p del partitore di tensione che genera la tensione Vin in ingresso all'ADC. IL fattore p e' per definizione: p= VDC/ Vin Il partitore
di tensione lo si può realizzare
tramite un partitore resistivo costituito da due resistori R1 e
R2 come
indicato in figura. Per questo
partitore si può scrivere : p= 1+R1/R2 R1 = ( p-1) x R2 Il partitore deve inoltre soddisfare altre
specifiche: la prima specifica e' che la resistenza totale, R1+R2,
introdotta dal partitore e vista dal convertitore AC/DC deve essere
abbastanza alta da non provocare uno scaricamento della tensione del
condensatore di uscita nella fasi in cui la sinusoide in ingresso e'
più bassa della tensione di uscita, caso in cui il ponte non conduce.
La
seconda specifica e' che la resistenza che deve vedere l'ingresso
dell'ADC
deve essere al massimo di 10k ohm. Definito
il partitore di tensione in base
al
valore del fattore di partizione p,
bisogna calcolare il fattore di proporzionalità, Krpm che
permette di ricavare
il valore degli RPM attuali a partire dalla tensionei Vin presente all'ingresso del ADC
dell'Arduino.
Se a regime massimi RMP_max corrisponde una Vin_max che e' rapportabile alla VDC_max tramite il fattore di
partizione p. VDC_max / p = Vin_max
il fattore Krpm e' definito come il rapporto
tra il numero di giri massimi, RPM_max,
e la tensione all'ingresso dell'ADC quando il motore ruota alla veloita
RMP_max: Krpm =
RMP_max / Vin_max Krpm = p *RPM_max
/VDC_max Quindi ricavato il fattore Krpm, il valore attuale dei giri, in rpm si ottiene moltiplicando la tensione di uscita del sensore per Krpm RPM = Vin * Krpm
Esempio di dimensionamento
Facendo riferimento al motore MCA3064 VAC_max=30V
( misurata tramite tester per tensioni AC) per cui
VDC_max =
30*1.414 -1.2= 41.22Vo puo essere
misurata con un tester in DC quando il motore e'al massimo dei giri a
valle delconvertitore AC /DC
La tensione massima accettabile
all'ingresso del canale ADC dell'arduino e' VFS ( tensione di fondo scala) che
vale 5V
per cui la Vin_max deve essere sempre minore uguale alla VFS Vin_max
<= VFS
VDC_max / p <= VFS p >= VDC_max / VFS Nel
caso del MCA3064 e Arduino Nano
p >= 41.22 / 5
p >= 8.244 scegliamo
il valore p= 10 per cui
dalle formule che definiscono p
tramite R1 e R2 possiamo
scrivere:
R2= 10k ( per la
seconda specifica)
R1= (p-1)*R2= ( 10-1) *10k = 90k a
questo punto il nostro Krpm
vale:
Krpm = p *RPM_max /VDC_max= 10*13000 / 41.22 = 3153 rpm / V Nello skrect
di Arduino Krpm e' calcolato direttamente in quanto dovranno essere
immessi come paramteri RMP_max,
VDC_max , R1 e R2.
|
|
||
|
|||
|
|||
|