EnergiAlternativa

Page Index Toggle Pages: 1 ... 120 121 [122] 123 124 ... 219 Send TopicPrint
Very Hot Topic (More than 500 Replies) Homemade Inverter (Read 1248307 times)
ElettroshockNow
Forum Administrator
*****
Offline


yottawatt

Posts: 3920
Location: Roma
Gender: Male
Zodiac sign: Gemini
Re:Homemade Inverter "modulo DC/AC"
Reply #1815 - 26.04.15 at 17:21:50
Print Post  
Ma il TCNT raggiunto il valore massimo torna indietro .
I  sostanza se il TCNT è  inferiore a OCR1A in uscita ho 1 ,oppure se superiore a OCR1B il canale B è  a 1.
Il cambio può  avvenire sia sopra che sotto gli estemi degli OCR ,ma mai tra o due OCR.

Quindi la If dovrebbe essere diversa ,ma raramente non veritiera ,quindi mi sembra proprio una bella  soluzione.

Cmq domani voglio mettere un While(1)  in un interrupt alto ,voglio confermare che non si blocca niente .
  

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
 
BellaEli
Ex Member
****


--------

Gender: Male
Zodiac sign: Leo
Re:Homemade Inverter "modulo DC/AC"
Reply #1816 - 26.04.15 at 18:02:57
Print Post  
Essendo un Phase Correct, nell 'IF dovrai gestire TCNT1 sia in salita che in discesa...

Pensavo che potresti completare l'if con un else del genere:

if ...
else {
while (TCNT1 - S[pos] - deadtime < 0)
{}
// quando è finito il while possiamo procedere normalmente
}

In questo caso l'attesa sarà al massimo deadtime uS !

Naturalmente devi gestire TCNT1 in salita e discesa...

Che dici ?
  
Back to top
 
IP Logged
 
ElettroshockNow
Forum Administrator
*****
Offline


yottawatt

Posts: 3920
Location: Roma
Gender: Male
Zodiac sign: Gemini
Re:Homemade Inverter "modulo DC/AC"
Reply #1817 - 26.04.15 at 18:09:39
Print Post  
Si mi piace.
Ma se faccio :
While ( TCNT1 > OCR1A && TCNT1 < OCR1B ) { }
OCR1A = nuovo calore ;
OCR1B = nuovo valore ;

Però  manca qualcosa ...
Si potrebbe generare incrocio con i nuovi valori ?
  

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
 
BellaEli
Ex Member
****


--------

Gender: Male
Zodiac sign: Leo
Re:Homemade Inverter "modulo DC/AC"
Reply #1818 - 26.04.15 at 19:37:49
Print Post  
Quote:
Però manca qualcosa ...


Considera che sto col cell, sto solo ragionando concettualmente, per il codice ho bisogno del PC...

In ogni caso, dovrebbe essere più qualcosa del genere:

while (TCNT1 > S[pos] - deadtime && TCNT1 < S[pos] + deadtime) {}

Procedo...

Giusto ?
  
Back to top
 
IP Logged
 
ElettroshockNow
Forum Administrator
*****
Offline


yottawatt

Posts: 3920
Location: Roma
Gender: Male
Zodiac sign: Gemini
Re:Homemade Inverter "modulo DC/AC"
Reply #1819 - 26.04.15 at 19:59:55
Print Post  
Sisi è  meglio come fai te usando il valore del pwm successivo ,grazie Smiley.

Quello che manca è la situazione degli OCR attivi.
  

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:Homemade Inverter "modulo DC/AC"
Reply #1820 - 26.04.15 at 20:29:50
Print Post  
Trovato ....
Il While deve restare vero se il TCNT è  compreso tra il valore più  basso tra OCR1A e S[pos]-deadtime e il valore massimo tra OCR1B e S [pos) + deadtime .

Così  si ha la certezza del non incrocio.

Per me hai trovato il motivo ...GRAZIEEEEEEE
Infatti torna tutto.
I piccoli incroci avvenivano nelle variazioni dove la finestra nella quale si possono far danni è  più ampia... invece scomparivano  (o quasi a questo punto) quando non avvenivano  variazioni.
  

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
 
NonSoloBolleDiAcqua
Ex Member
*****


--------

Gender: Male
Zodiac sign: Scorpio
Re:Homemade Inverter "modulo DC/AC"
Reply #1821 - 26.04.15 at 21:16:07
Print Post  
Musica...questa si che è musica:clap.gif:
  
Back to top
 
IP Logged
 
ElettroshockNow
Forum Administrator
*****
Offline


yottawatt

Posts: 3920
Location: Roma
Gender: Male
Zodiac sign: Gemini
Re:Homemade Inverter "modulo DC/AC"
Reply #1822 - 26.04.15 at 21:31:39
Print Post  
CITAZIONE (NonSoloBolleDiAcqua, 26/04/2015 21:16:07 ) Quote:
Musica...questa si che è musica:clap.gif:

Dai dai ..codice codice...... Che io rubo Smiley
  

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
 
kekko.alchemi
Forum Administrator
*****
Offline


EA Lab

Posts: 1690
Location: Tusculum
Gender: Male
Zodiac sign: Scorpio
Re:Homemade Inverter "modulo DC/AC"
Reply #1823 - 27.04.15 at 00:56:18
Print Post  
CITAZIONE (NonSoloBolleDiAcqua, 26/04/2015 21:31:39 ) Quote:
quindi sei sceso con valori del vettore bidimensionale e 200 e la forma d'onda ancora 'tiene'...hai verificato il limite inferiore? :rolleyes:


Ma quindi alla fine cosa ha deciso il capo progetto? Smiley Perchè se usate il pwm "sistema Elettro" (che non piaceva per il più basso rendimento) vanno bene pochi valori, se usate il "sistema Free", 200 valori totali sono decisamente pochi! La sinusoide verrà un trapezio con carichi induttivi... A questo punto credo che non siano molto chiare le differenze, forse sarebbe il caso di scendere nel dettaglio, perchè è una cosa non del tutto semplice.
Io continuo a dire che il giusto compromesso è proprio il sistema del grande Elettro! Ma aggiungo che con il sistema a bassa tensione con trasfo di uscita il rendimento cala, e cala sempre di più man mano che si riduce il deadtime. Penso sia ovvio poi, che con il sistema a bassa tensione (anche utilizzando il pwm forzato) il feedback è d'obbligo! Non si può "tralasciare" come nell'ottima soluzione di Elettro.

CITAZIONE (BellaEli, 26/04/2015 21:31:39 ) Quote:
CITAZIONE (kekko.alchemi, 25/04/2015 21:50:37 ) Quote:
Posso aggiungere una cosa, senza scoraggiare nessuno?


Nooooooo !!! Stai zitto !!!


Non so se riuscirò a stare zitto!! :lol: Tutto questo casino che si risolve con quattro pezzetti di silicio, e con prestazioni di granlunga superiori. Perchè complicarsi la vita? :rolleyes:
Se vuoi coinvolgermi, devi sapere che sono fatto così, a volte seguo una strada, per poi capire che sopra di me c'è un autostrada, quindi prendo la rampa e ovviamente salgo sopra... stravolgendo quindi tutto quanto (è inutile mettere la quinta su una strada sterrata) Smiley

Devo poi fare i complimenti a tutti quanti!! E' proprio bello vedere uno spirito di collaborazione così intenso! Amici che si aiutano a vicenda per il raggiungimento di unico obiettivo! Grazie Forum, grazie EA!! E grazie a tutti voi!

Sono sicuro che in modo o nell'altro si raggiungerà l'obiettivo! Kekko.
  
Back to top
 
IP Logged
 
BellaEli
Ex Member
****


--------

Gender: Male
Zodiac sign: Leo
Re:Homemade Inverter "modulo DC/AC"
Reply #1824 - 27.04.15 at 01:40:19
Print Post  
x Elettro:

finalmente sono davanti a un PC, vediamo di fare un'analisi più dettagliata...

Prima di andare avanti faccio una piccola deduzione logica:

Poichè utilizzi un'alimentazione con "0" centrale e un semiponte, suppongo che il tuo vettore S[] (tralasciando il margine per il feedback) abbia i seguenti valori:

Indice 0 -> valore 255
Indice 50 -> valore 511
Indice 100 -> valore 255
Indice 150 -> valore 0
Ipotetico indice 200 (In realtà riparte da 0) -> 255

Fatta questa premessa, andiamo avanti:


CITAZIONE (ElettroshockNow, 26/04/2015 21:31:39 ) Quote:
Il While deve restare vero se il TCNT è  compreso tra il valore più  basso tra OCR1A e S[pos]-deadtime e il valore massimo tra OCR1B e S [pos) + deadtime.


Dunque ci sono quattro possibili casi in cui ti puoi trovare.

Per semplificare l'analisi lavoriamo solo sulla semionda positiva, quindi avremo:

1) Prima metà della semionda, i valori del PWM verranno incrementati ad ogni ISR, TCNT1 sta salendo verso 511;

2) Prima metà della semionda, i valori del PWM verranno incrementati ad ogni ISR, TCNT1 sta scendendo verso 0;

3) Seconda metà della semionda, i valori del PWM verranno decrementati ad ogni ISR, TCNT1 sta salendo verso 511;

4) Seconda metà della semionda, i valori del PWM verranno decrementati ad ogni ISR, TCNT1 sta scendendo verso 0.


Analizziamoli uno alla volta:

Caso 1:


Studiando un po' i disegni e facendo un po' di prove "a mente", si deduce che il cambio nella banda gialla deve essere evitato.

Caso 2:


In questo caso la banda gialla è più estesa, e va esattamente da OCR1A a S[pos] + deadtime

Per i casi 3 e 4 sono stanco, ma dovrebbe essere corretta la tua intuizione.

Quindi la forumla corretta definitiva è:

while ((TCNT1 > min(OCR1A, S[pos] - deadtime)) && (TCNT1 < max(OCR1B, S[pos] + deadtime))) {1}

Sono contento che abbiamo trovato l'inghippo !!!

Avanzo un piacere... Wink


CITAZIONE (kekko.alchemi, 27/04/2015 00:56:18 ) Quote:
Ma quindi alla fine cosa ha deciso il capo progetto?


Per ora siamo rimasti con il sistema free e relativo feedback.

Tuttavia, strada facendo, potremmo sembre cambiare idea !!!


CITAZIONE (kekko.alchemi, 27/04/2015 00:56:18 ) Quote:
...se usate il "sistema Free", 200 valori totali sono decisamente pochi! La sinusoide verrà un trapezio con carichi induttivi... A questo punto credo che non siano molto chiare le differenze, forse sarebbe il caso di scendere nel dettaglio, perchè è una cosa non del tutto semplice.


Attualmente stiamo lavorando con 320 campioni totali (intera sinusoide).

Sarei davvero felice se scendessi nel dettaglio per spiegarmi le differenze, così inizio a prepararmi a cosa mi aspetta...


CITAZIONE (kekko.alchemi, 27/04/2015 00:56:18 ) Quote:
Penso sia ovvio poi, che con il sistema a bassa tensione (anche utilizzando il pwm forzato) il feedback è d'obbligo!


Certo, certo, il feedback, essendo una parte complessa, la sposto più avanti: generalmente faccio così nella vita, prima le cose facili, quelle difficili alla fine !


CITAZIONE (kekko.alchemi, 27/04/2015 00:56:18 ) Quote:
Se vuoi coinvolgermi, devi sapere che sono fatto così...


Beh è normale che leggi questo topic come osservatore, tu il tuo inverter lo hai già completato, sei stato praticamente il socio (di Elettro) che ha aperto questo topic, non sei stimolato come lo saresti su un progetto nuovo !!!

Tuttavia, per me, l'importante è che ci sostieni con qualche prezioso consiglio dettato dalle tue conoscenze, dalle tue esperienze, dalle tue intuizioni cosa che del resto fai in ogni post !


CITAZIONE (kekko.alchemi, 27/04/2015 00:56:18 ) Quote:
E' proprio bello vedere uno spirito di collaborazione così intenso!


Quoto ogni parola !!!
  
Back to top
 
IP Logged
 
ElettroshockNow
Forum Administrator
*****
Offline


yottawatt

Posts: 3920
Location: Roma
Gender: Male
Zodiac sign: Gemini
Re:Homemade Inverter "modulo DC/AC"
Reply #1825 - 27.04.15 at 13:14:42
Print Post  

Ummm .. un buco nell'acqua.
I registri vengono aggiornati ,ma presi  in considerazione  dopo il TOP ..
Giusto?
  

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
 
BellaEli
Ex Member
****


--------

Gender: Male
Zodiac sign: Leo
Re:Homemade Inverter "modulo DC/AC"
Reply #1826 - 27.04.15 at 22:44:44
Print Post  
Perché dici un buco nell'acqua ? Per la tabella o hai ancora incroci ?

Superficialmente ho dato un'occhiata al datasheet ma non mi è ancora chiaro il significato di quel "TOP".

Che problema si verifica ? Tu cosa pensi ?

Kekko conosci il significato di quel TOP ?
  
Back to top
 
IP Logged
 
farstar1965
Ex Member
**


--------

Gender: Male
Re:Homemade Inverter "modulo DC/AC"
Reply #1827 - 28.04.15 at 08:46:07
Print Post  
Nella mia profonda ignoranza mi stavo leggendo questo.
Nel mentre lo posto magari (sicuramente) ci capite di più.
Probabilmente conoscete già.

LINK


Grazie. Marco.
  
Più impari più ti rendi conto di quanto sei ignorante.
Back to top
 
IP Logged
 
BellaEli
Ex Member
****


--------

Gender: Male
Zodiac sign: Leo
Re:Homemade Inverter "modulo DC/AC"
Reply #1828 - 28.04.15 at 10:22:10
Print Post  
Ciao Elettro,

ho ripensato al tuo dubbio e ricontrollato il datasheet:

non mi sono ancora chiari alcuni meccanismi ma ipotizzando che il registro OCR1A e B siano bufferati vorrà dire che quando tu scrivi:

OCR1A = 100

tale valore non verrà scritto direttamente nel registro OCR1A, ma in un buffer temporaneo e solo quando il contatore TCNT1 raggiunge il valore 511 il valore 100 dal buffer verrà trasferito nel registro OCR1A.

Ora suppongo che il tuo (lecito) dubbio è il seguente:

se la logica adottata dal micro fosse quella appena descritta non dovrei avere in nessun caso incroci !

Ma adottando il ciclo while (...) il problema si risolve oppure no ?

Resto in attesa...
  
Back to top
 
IP Logged
 
ElettroshockNow
Forum Administrator
*****
Offline


yottawatt

Posts: 3920
Location: Roma
Gender: Male
Zodiac sign: Gemini
Re:Homemade Inverter "modulo DC/AC"
Reply #1829 - 28.04.15 at 10:41:36
Print Post  
Sisi l'ho provato ora solo a scopo di curiosità  ed oltre a piccole variazione di forma non ha alcun effetto sui piccoli incroci.

Problema non presente se non faccio ricalcolare  la sinusoide.

Cmq sono arrivato alla conclusione che alcuni volt di differenza durante il funzionamento  ibrido  ed alimentato solo da rete sono accettabili.

In fin dei conti se le batterie son scariche son scariche Smiley ....
e per quanto posso migliorare l'inverter non potrò  mai raggiungere un relè.

Quindi torno sui miei passi e abbandono il feedback ... più  in là  ci tornerò  altrimenti ora mi sto' fossilizzando  su un problema bypassabile ....

Per il discorso TOP .. io ho interpretato il datasheet come te ,quindi problemi di incrocio non possono esistere.
Quindi quei extra consumi che ho reputato incroci ,possono essere in realtà valori errati di OCR che non riesco a scovare ....
Il motivo ... Bo! !!

Altra info per chi userà  il sincro.
Ho provato  interrupt con bassa priorità  (Timer0 con input esterno e analog compare ) e con entrambi non si ottengono buoni risultati.
Quindi son tornato all'INT ad alta priorità  ,ma ho aggiunto una riga che conta gli eventuali errori di sincro e nel caso fossero superiori  a 3 disattiva l'interrupt.

Ciao ,grazie e scusate per il fuori onda ....

Continuo a seguirvi e prometto di metter su un inverter più  piccolo per i test del vostro firmware  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
 
Page Index Toggle Pages: 1 ... 120 121 [122] 123 124 ... 219
Send TopicPrint
 

TOP100-SOLAR Galleria Immagini EnergiAlternativa