EnergiAlternativa

Page Index Toggle Pages: 1 ... 14 15 [16] 17 18 19 Send TopicPrint
Hot Topic (More than 100 Replies) Voltmetro, Amperometro, Wattmetro, Contatori Assor (Read 133298 times)
ElettroshockNow
Forum Administrator
*****
Offline


yottawatt

Posts: 3920
Location: Roma
Gender: Male
Zodiac sign: Gemini
Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #225 - 19.05.15 at 23:07:47
Print Post  
CITAZIONE (eolo1234, 19/05/2015 20:30:10 ) Quote:
buona sera a tutti
scusate non vorrei essere insistente ma non c e propio nessuno che puo aiutarmi

grazie


Prova a caricare un programma semplice per testare gli ingressi analogici.

Poi controlla nuovamente le uscite dalla scheda adattatrice :
- circa 2,5V per i sensori
- circa 3V per la tensione (metti un condensatore per il test,poi lo rimuovi  quando lo connetti ad arduino)

Fatto ciò  controlla come alimenti Arduino.

Deve prendere alimentazione dal Vin e devi usare l'uscita 5V per creare l'offset  dei sensori corrente.

Ciao
Elettro
  

Il Tempo non lo vede nessuno,il lavoro lo vedono tutti (Mamma)
Impara a rubare con gli occhi (Papà)
Back to top
YouTube  
IP Logged
 
eolo1234
Ex Member
*


--------

Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #226 - 20.05.15 at 09:23:00
Print Post  
Ciao grazie Elettro provo a fare come mi hai detto

Ma vorrei sapere una cosa dopo l'alimentatore 4v 8v e la scheda che stabilizza i voltaggi va messa un altro circuito oppure esco e vado diretto su arduino  come da schema ( perché da quel poco che capisco di elettronica mi sembra che esce in alternata e non vorrei che devo trasformarla in contiua )
  
Back to top
 
IP Logged
 
iannez
New Member
*
Offline


--------

Posts: 31
Gender: Male
Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #227 - 20.05.15 at 14:40:28
Print Post  
Ciao Eolo,
l'uscita a 8v viene poi raddrizzata e filtrata per alimentare arduino.
per cui va bene cosi.

l altra è quella che tramite il partitore serve poi per leggere
l intera forma dell'onda tramite l ingresso di arduino.
  
Back to top
 
IP Logged
 
eolo1234
Ex Member
*


--------

Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #228 - 20.05.15 at 14:54:57
Print Post  
grazie iannez
quindi per l uscita 3v devo creare il partitore non ce uno schema cosi lo costruisco
invece quella da 8v la devo attaccare direttamente ad arduino ? oppure devo raddrizzarla e filtrarla se e cosi mi serve lo schema anche di quello

grazie
  
Back to top
 
IP Logged
 
ElettroshockNow
Forum Administrator
*****
Offline


yottawatt

Posts: 3920
Location: Roma
Gender: Male
Zodiac sign: Gemini
Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #229 - 20.05.15 at 15:00:02
Print Post  
CITAZIONE (iannez, 20/05/2015 14:40:28 ) Quote:
l altra è quella che tramite il partitore serve poi per leggere
l intera forma dell'onda tramite l ingresso di arduino.


Sad non proprio tutta ,ma solo le semionde positive.

Perchè?
Se sapevo che il progetto avrebbe nutrito interesse mi sarei impegnato di più.
Quando lo realizzai ,ho aperto il cassetto e ho visto quello che avevo.

La scelta migliore sarebbe stata due piccoli trasformatori isolati.
Uno dedicato all'alimentazione (andava benissimo anche il già bello e pronto alimentatorino con spina) e uno per ridurre la 220 a livelli accettabili.

Il segnale cosi' ridotto (Vpp di circa 3V) lo avrei addizionato ad un offset di 2,5V (tensione prelevata tramite partitore e condensatori di livellamento usando i +5V di Arduino),in maniera tale da ottenere una sinusoide avente Vmin =1V e Vmax=4V e ovviamente zero a 2,5V.

Gli stessi 2,5V possono essere usati anche per i sensori corrente purchè nel partitore resistivo scorrano almeno 20mA per evitare fluttuazioni durante i piccoli assorbimenti del convertitore.

Ancora meglio è usare un generatore di tensione di riferimento da 2,5V dove prelevare gli offset.

Poi un ingresso analogico sul nodo offset e un ingresso per ogni segnale (uno per la tensione ... uno per la corrente1 ... uno per la corrente2 ....)

Questo è quello che farei oggi ....

Ieri ho aperto il cassetto ed ho trovato quel trasfo ... che non mi ha consentito di :
-essere immune a disturbi introdotti da assorbimenti di Arduino
-avere un offset e di conseguenza misurare tutta l'onda della tensione (quindi perdita della potenza attiva e reattiva)


Vabbè il progetto è da rifare ...,ma è più semplice di quello che sembra ...

Le linee guida le ho scritte e sarei onorato se qualcuno le sfruttasse e condividesse .

Ciao
Elettro
  

Il Tempo non lo vede nessuno,il lavoro lo vedono tutti (Mamma)
Impara a rubare con gli occhi (Papà)
Back to top
YouTube  
IP Logged
 
ElettroshockNow
Forum Administrator
*****
Offline


yottawatt

Posts: 3920
Location: Roma
Gender: Male
Zodiac sign: Gemini
Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #230 - 20.05.15 at 16:13:54
Print Post  
Ecco la versione grafica di quello che ho descritto nel post precedente.
Accoppiato al codice allegato (Da testare) vi consentirà di avere un Powermeter con i fiocchi (ancora migliorabile) senza paragoni con il progetto originale della discussione. 



//**************************************************

#include < LiquidCrystal.h >
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);//ASSEGNAZIONE PIN  LCD
const int BACKLIGH_PIN = 10;

int OffsetPin = A4;
int TensionePin = A1;
int CorrentePin_1 = A2;
int CorrentePin_2 = A3;
float Fattore_Conversione_Tensione = 1.03; //da calcolare
float Fattore_Conversione_Corrente_1 = .2212; //da calcolare
float Fattore_Conversione_Corrente_2 = .2212 ; //da calcolare
float TensioneRMS ;
float CorrenteRMS_1 ;
float CorrenteRMS_2 ;
float PotenzaAttiva_1;
float PotenzaAttiva_2;
float PotenzaApparente_1;
float PotenzaApparente_2;
float FattorediPotenza_1;
float FattorediPotenza_2;

void setup() {
  pinMode(BACKLIGH_PIN, OUTPUT);
  digitalWrite(BACKLIGH_PIN, HIGH);
  lcd.begin(16, 2);
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("PowerMeter");
  lcd.setCursor(0,1);
  lcd.print("Enhanced");
  delay(2000);
  lcd.clear();
ADCSRA&=0X90+ 0b101; //Setta ADC prescaler a 32
 
 
}

void loop() {
float SommaV=0;
float SommaI_1=0;
float SommaI_2=0;
float SommaP_1=0;
float SommaP_2=0;
int NumCampionamenti = 0;
int Offset = analogRead(OffsetPin);
unsigned long start = micros() ;
while (micros() < (start + 20000)){
float Tensioneinst = (analogRead(TensionePin)-Offset)*Fattore_Conversione_Tensione;
float Correnteinst_1 = (analogRead(CorrentePin_1)-Offset)*Fattore_Conversione_Corrente_1;
float Correnteinst_2 = (analogRead(CorrentePin_2)-Offset)*Fattore_Conversione_Corrente_2;


SommaV += pow(Tensioneinst,2);
SommaI_1 += pow(Correnteinst_1,2);
SommaI_2 += pow(Correnteinst_2,2);
SommaP_1 += (Tensioneinst*Correnteinst_1);
SommaP_2 += (Tensioneinst*Correnteinst_2);
NumCampionamenti++;
}

TensioneRMS = sqrt(SommaV / NumCampionamenti);
CorrenteRMS_1 = sqrt(SommaI_1 / NumCampionamenti);
CorrenteRMS_2 = sqrt(SommaI_2 / NumCampionamenti);
if (CorrenteRMS_1 < 0.10) {//soglia minima
CorrenteRMS_1=0;
SommaP_1=0;}
if (CorrenteRMS_2 < 0.10) {//soglia minima
CorrenteRMS_2=0;
SommaP_2=0;}
PotenzaAttiva_1 = SommaP_1/ NumCampionamenti;
PotenzaAttiva_2 = SommaP_2/ NumCampionamenti;
PotenzaApparente_1 = TensioneRMS * CorrenteRMS_1;
PotenzaApparente_1 = TensioneRMS * CorrenteRMS_1;
FattorediPotenza_1 = PotenzaAttiva_1/PotenzaApparente_1;
FattorediPotenza_2 = PotenzaAttiva_2/PotenzaApparente_2;


lcd.setCursor(0, 0);
lcd.print(TensioneRMS,0);
lcd.print("V                     ");
lcd.setCursor(5, 0);
lcd.print(CorrenteRMS_1,1);
lcd.print("A                     ");
lcd.setCursor(11, 0);
lcd.print(CorrenteRMS_2,1);
lcd.print("A                     ");
lcd.setCursor(0,1);
lcd.print(PotenzaAttiva_1,0);
lcd.print("W                     ");
lcd.setCursor(6,1);
lcd.print(PotenzaAttiva_2,0);
lcd.print("W                     ");
lcd.setCursor(12,1);
lcd.print(FattorediPotenza_1,2);
lcd.print("                     ");

}
//***************************************************




Ciao
ElettroshockNow

PS:levare gli spazi su < LiquidCrystal.h >

Modificato da ElettroshockNow - 20/05/2015, 19:57:20
  

Il Tempo non lo vede nessuno,il lavoro lo vedono tutti (Mamma)
Impara a rubare con gli occhi (Papà)
Back to top
YouTube  
IP Logged
 
eolo1234
Ex Member
*


--------

Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #231 - 20.05.15 at 18:36:07
Print Post  
ciao Elettro

il circuito non mi sembra complicato neanche per uno scarso come me
avrei sempre il solito problema offset e programmazione
  
Back to top
 
IP Logged
 
ElettroshockNow
Forum Administrator
*****
Offline


yottawatt

Posts: 3920
Location: Roma
Gender: Male
Zodiac sign: Gemini
Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #232 - 20.05.15 at 18:43:03
Print Post  
CITAZIONE (eolo1234, 20/05/2015 18:36:07 ) Quote:
ciao Elettro

il circuito non mi sembra complicato neanche per uno scarso come me
avrei sempre il solito problema offset e programmazione


Lo stò Testando .... Wink
  

Il Tempo non lo vede nessuno,il lavoro lo vedono tutti (Mamma)
Impara a rubare con gli occhi (Papà)
Back to top
YouTube  
IP Logged
 
eolo1234
Ex Member
*


--------

Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #233 - 20.05.15 at 18:46:21
Print Post  
Elettro sei un grande

io nel frattempo sto testando arduino
ma per il trasformatore non si puo usare lo stesso usando la porta 8v

quello che non capisco perche se io copio un programma gia testato e corretto con i vari parametri e offset perche non dovrebbe funsionare
  
Back to top
 
IP Logged
 
ElettroshockNow
Forum Administrator
*****
Offline


yottawatt

Posts: 3920
Location: Roma
Gender: Male
Zodiac sign: Gemini
Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #234 - 20.05.15 at 19:26:17
Print Post  
CITAZIONE (eolo1234, 20/05/2015 18:46:21 ) Quote:
Elettro sei un grande

io nel frattempo sto testando arduino
ma per il trasformatore non si puo usare lo stesso usando la porta 8v

quello che non capisco perche se io copio un programma gia testato e corretto con i vari parametri e offset perche non dovrebbe funsionare

Perchè ci sono in gioco le tolleranze.

Programma testato e funzionante (Qualche errore Tongue )
A breve lo allego con qualche info per la taratura e ovviamente video Wink

Poi una volta che avete tutti i dati ,ognuno lo può personalizzare a piacimento.
  

Il Tempo non lo vede nessuno,il lavoro lo vedono tutti (Mamma)
Impara a rubare con gli occhi (Papà)
Back to top
YouTube  
IP Logged
 
iannez
New Member
*
Offline


--------

Posts: 31
Gender: Male
Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #235 - 20.05.15 at 19:27:37
Print Post  
appena ho un momento replico lo schema e provo, per ora tnxx 1000 Smiley

ho un paio di domande forse banali...

- perche usiamo campionare cosi:

unsigned long start = micros() ;
while (micros() < (start + 20000)){
qualcosa da fare
}

piuttosto che un ciclo for classico da 0 a n iterazioni?

- sto facendo test con un partitore ad cazzum come si suol dire
ma che funziona.
leggo in rms 250v corretti che ci sono nella mia abitazione.
poi ho estesto il codice utilizzando una lettura tensionemax
che sommo e poi divido per il numero dei campionamenti per
avere una media istantanea... solo che i valori differiscono cosi:

250vrms 160v circa istantanea... è normale?

mi sarei aspettato un 250*0.707 che non da 160v

tutto questo perche vorrei visualizzare anche la tensione non rms
come la corrente non rms insieme chiaramente a tutti gli altri valori
calcolati.

cosa sto sbagliando a livello concettuale?
  
Back to top
 
IP Logged
 
ElettroshockNow
Forum Administrator
*****
Offline


yottawatt

Posts: 3920
Location: Roma
Gender: Male
Zodiac sign: Gemini
Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #236 - 20.05.15 at 20:07:52
Print Post  
CITAZIONE (iannez, 20/05/2015 19:27:37 ) Quote:
- perche usiamo campionare cosi:

unsigned long start = micros() ;
while (micros() < (start + 20000)){
qualcosa da fare
}

Per semplicità .
Faccio eseguire nel ciclo while più conversioni possibili nel tempo di 20mS (Arduino usa il Timer0).
Cosi' facendo è possibile aumentare o diminuire il prescaler dell'ADC senza dover calcolare il tempo necessario per ogni conversione e il conseguente numero di campionamenti necessari per campionare un'onda intera.
Calcola che se un giorno vorrai aggiungere un ulteriore sensore ti basterà copiare e incollare alcune linee di codice Wink

Per il resto ... perchè vuoi rinunciare al True RMS .
Il mio PowerMeter ne è sprovvisto e ne sento la necessità .

Con alti carichi induttivi la potenza attiva è molto distante dall'apparente .

Ciao
Elettro

PS:Codice aggiornato e FUNZIONANTE

A breve video e procedura per tarare sensori.
  

Il Tempo non lo vede nessuno,il lavoro lo vedono tutti (Mamma)
Impara a rubare con gli occhi (Papà)
Back to top
YouTube  
IP Logged
 
eolo1234
Ex Member
*


--------

Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #237 - 20.05.15 at 20:15:04
Print Post  
Elettro aggiornerai la versione 3.5 cosi come e con i 2 rele?
  
Back to top
 
IP Logged
 
iannez
New Member
*
Offline


--------

Posts: 31
Gender: Male
Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #238 - 20.05.15 at 20:17:08
Print Post  
tnx ma il tempo 20ms è un dato particolare uscito da qualche
specifica o è indicativo e cioe poteva essere chesso 50ms?

no elettro no voglio rinunciare a niente anzi!!!
aggiungevo frequenza e anche la V non rms e I non rms

ma è il conto che non mi torna.

in pratica ho aggiunto questo:

if ( Correntemax < Correnteinst ) Correntemax=Correnteinst;
if ( Correntemin > Correnteinst ) Correntemin=Correnteinst;

Tensionemax += Tensioneinst;
Correntemax += Correnteinst;

} // chiudo ciclo campionamento

Tensionemax /= NumCampionamenti;
Correntemax /= NumCampionamenti;

poi li printo su lcd ma con il risultato di cui sopra.

mi aspetto si una discrepanza ma non cosi
non mi tornano i conti.

sbaglio concettualmente sicuramente.

Cheesy
  
Back to top
 
IP Logged
 
ElettroshockNow
Forum Administrator
*****
Offline


yottawatt

Posts: 3920
Location: Roma
Gender: Male
Zodiac sign: Gemini
Re:Voltmetro, Amperometro, Wattmetro, Contatori Assorbimento
Reply #239 - 20.05.15 at 21:14:20
Print Post  
CITAZIONE (iannez, 20/05/2015 20:17:08 ) Quote:
tnx ma il tempo 20ms è un dato particolare uscito da qualche
specifica o è indicativo e cioe poteva essere chesso 50ms?

20mS è il Periodo di un'onda a 50Hz
Ma nel nostro calcolo possiamo usare suoi multipli.

Ci sarà cmq un errore dato dallo scostamento della  frequenza rispetto alla cononica 50Hz ,ma non superiore all' 1% (con le nuove normative ci adegueremo più avanti Smiley)

CITAZIONE (iannez, 20/05/2015 20:17:08 ) Quote:
sbaglio concettualmente sicuramente.


Il contrario era più esatto.
Cioè misuri la tensione di picco e di conseguenza (tenendo sempre in condiderazione un'onda sinusoidale pura) calcoli il valore efficace dividendolo per 1.41.

Per la corrente invece sommi più letture e dividi per il numero delle campionature per ottenere una corrente media in una unità di tempo.
  

Il Tempo non lo vede nessuno,il lavoro lo vedono tutti (Mamma)
Impara a rubare con gli occhi (Papà)
Back to top
YouTube  
IP Logged
 
Page Index Toggle Pages: 1 ... 14 15 [16] 17 18 19
Send TopicPrint
 

TOP100-SOLAR Galleria Immagini EnergiAlternativa