EnergiAlternativa

Page Index Toggle Pages: 1 ... 106 107 [108] 109 110 ... 219 Send TopicPrint
Very Hot Topic (More than 500 Replies) Homemade Inverter (Read 1238425 times)
inverter90
Ex Member
****


--------

Gender: Male
Re:Homemade Inverter "modulo DC/AC"
Reply #1605 - 13.04.15 at 20:26:22
Print Post  
ok ok

unsigned int  i;
for(i=INI_SEG_SIN;i<SEG_SEMISIN;i++)
onda_rif[i]= (unsigned int)((sin(PI/SEG_SEMI_SIN*i)*PICCO_MASSIMO_ELI+AROUND));


Quindi sarebbe qualcosa del genere?


es..  onda_rif[i]= (unsigned int)((sin(3,14/160*100)*700+0,5))=1374 giusto?

L'istruzione for viene eseguita in void loop? e poi la variabile onda_rif[i] viene richiamata nella ISR?
  
Il niente è impossibile finchè non ci provi!!!
Back to top
 
IP Logged
 
BellaEli
Ex Member
****


--------

Gender: Male
Zodiac sign: Leo
Re:Homemade Inverter "modulo DC/AC"
Reply #1606 - 14.04.15 at 00:03:06
Print Post  
Allora Bolle, ora che più o meno abbiamo chiarito la questione, vediamo di andare avanti.

Abbiamo detto che abbiamo 2 possibilità (costante o caotico), entrambe valide, ma per il momento optare una scelta corretta, almeno per me che non ho mai realizzato un inverter, non è possibile, quindi scegliamo una delle due con l'idea che se ci rendiamo conto che la scelta non è quella giusta prendiamo l'altra strada.

Poiché al momento abbiamo il codice già funzionante per quella costante, risparmiamo un Timer, abbiamo dei dati progettuali tutto sommato eccellenti, direi di continuare su questa strada, poi vedremo se è da cambiare, ok ?

Prima dei tuoi interventi eravamo arrivati alla messa in frequenza/fase con l'Enel e l'idea di Elettro, a mio avviso, sembra essere ottima, quindi in settimana vedo di andare avanti per vedere come si comporta il codice, come si adatta e con che velocità...

In ogni caso non mi hai risposto ad alcune domande, quindi le ripropongo:

- Perché non ti piace il 160 ? Ti sembra piccolo o grande ? Che valore preferisci ?

- Il disturbo che hai inserito nel programmino cosa fa ? Per i punti verdi ho l'impressione che hai reso incostante il tempo di campionamento, è esatto ? E per quelli rossi ?

-Cosa pensi, in generale, dei parametri progettuali iniziali, vale a dire freq. di funzionamento: tra 45 e 55 Hz, numero di campioni: 320 per sinusoide, uno ogni 62,5 microS, PWM a 16 KHz, risoluzione PWM: 1.000 valori ?
Ci sono parametri che ti sembrano squilibrati ?
  
Back to top
 
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 #1607 - 14.04.15 at 00:38:02
Print Post  
CITAZIONE (NonSoloBolleDiAcqua, 14/04/2015 00:03:06 ) Quote:
Questo perchè se per caso il processore è impegnato a fare qualcosa che non può mollare (ovviamente tempi alti
ma cmq fattibili (possiamo anche calcolare questo limite))...questo tipo di algoritmo è in grado di riprende la situazione come se nulla fosse.

Come funzica l'arduino?

Per chi ha già realizzato l'inverter: che tempi avete utilizzato e che tempi hanno le letture di retroazione?


Allora, su questa cosa posso rispondere io! Non vedo grosse differenze fra i due sistemi, proprio perchè spesso sfugge la logica di funzionamento degli Atmel rispetto ai PIC.
Nei processori Atmel, non può succedere che il processore sia impegnato a fare qualcosa che non può mollare, e trascurare quindi i timer o gli incrementi PWM, questo "limite" quindi non esiste. Questo perchè in pochi sanno, che gli Atmel hanno delle tabelle di priorità con una particolare architettura, qui sotto ve ne allego una:


Come si vede chiaramente l'interrupt del reset ha la priorità più alta di tutte, poi vengono le varie Interrupt esterne tutti i Timer e infine l'ADC. Il While Loop ovviamente ha la priorità più bassa in assoluto.
Cosa succede se durante una lettura ADC, o un operazione nel While Loop scatta un interrupt di un Timer con più alta priorità? Semplice, il processore salva in un registro la posizione (cioè l'operazione che stava compiendo) in un registro, esegue l'interrupt del timer con più alta priorità, e solo dopo aver finito torna alle operazioni del loop o con più bassa priorità. Nel while loop infatti non metto mai nessun calcolo o operazione, lo uso solamente per menù e display. I calcoli li delego alle interrupt, decidendo quindi io quale priorità dargli in base all'interrupt in cui li colloco. E' giustissimo quindi il concetto che ha usato BellaEli di gestire tutto tramite un timer senza delegare nulla al loop.

Quando arriveremo al feedback, che leggerà tramite ADC con una priorità più bassa dei timer (con velocità di lettura impostabile da prescaler), sarà fondamentale questa architettura perchè il processore non andrà mai a trovarsi in un posto casuale, proprio perchè fin quando le interrupt con priorità più alta non hanno finito non verrà svolto nessun altro compito, viceversa lascerà perdere tutto per correre a gestire quella.
Quindi in pratica, con questa architettura, non succede mai che il processore resta inchiodato a fare un operazione e trascura PWM e timer, o cmq un interrupt con più alta priorità.

Spero di essermi spiegato al meglio, in caso chiedete pure Smiley

Kekko
  
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 #1608 - 14.04.15 at 02:57:18
Print Post  
Che lavorone che state facendo ... UAO andate forti :clap.gif:

La proposta di Bolle non è per niente male e sicuramente fondata da problemi che forse incontreremo più avanti nella gestione del feedback.
Anche se come ha già messo in evidenza Kekko il micro gestito con gli interrupt ha una marcia in più.
Ricordiamo che già il codice di BellaEli sfrutta la possibilità di calcolo in più step ,alzando una flag alla fine del calcolo ,quindi nel confronto con un eventuale codice "Caotico" potremo recuperare 60microS nell'eventualità il calcolo termini a fine interrupt.

Cmq è una strada da non abbandonare ,anzi bisogna svilupparle entrambe .... Bolle vs BellaEli :lol:

E poi son curioso di sapere come il codice caotico possa gestire e mantenere costante la frequenza PWM in uscita (piccole variazioni sono ammesse ,purchè non si scenda nell'udibile :sick:) usando il solo counter senza i timer interrupt che gestiscono in autonomia il pwm ... deve essere un capolavoro di codice Wink


CITAZIONE (BellaEli, 14/04/2015 00:38:02 ) Quote:
Prima dei tuoi interventi eravamo arrivati alla messa in frequenza/fase con l'Enel e l'idea di Elettro, a mio avviso, sembra essere ottima, quindi in settimana vedo di andare avanti per vedere come si comporta il codice, come si adatta e con che velocità...

Pronto ....
Nel frattempo uso il malandato e striminzito codice con due timer ,senza feedback e con la messa in fase stupida (rallenta se in anticipo ,accellera se in ritardo) ... ma l'hardware è pronto per nuovi test (magari se vi adattate al mio PinOut :lol:)


Ciao
ElettroshockNow
  

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 #1609 - 14.04.15 at 04:11:44
Print Post  
CITAZIONE (inverter90, 14/04/2015 02:57:18 ) Quote:
L'istruzione for viene eseguita in void loop? e poi la variabile onda_rif[i] viene richiamata nella ISR?

Ciao,
ho modificato (indegnamente) il codice di BellaEli , il sorgente è in allegato...all'interno ci sono tutte le modifiche per indicizzare il vettore onda_rif...per il resto non cambia nulla.Non ho il compilatore , sto andando alla cieca, quindi non so se compila...chi può fare questa verifica?:rolleyes:
  
Back to top
 
IP Logged
 
NonSoloBolleDiAcqua
Ex Member
*****


--------

Gender: Male
Zodiac sign: Scorpio
Re:Homemade Inverter "modulo DC/AC"
Reply #1610 - 14.04.15 at 04:39:55
Print Post  
CITAZIONE (BellaEli, 14/04/2015 04:11:44 ) Quote:
Abbiamo detto che abbiamo 2 possibilità (costante o caotico), entrambe valide, ma per il momento optare una scelta corretta, almeno per me che non ho mai realizzato un inverter, non è possibile, quindi scegliamo una delle due con l'idea che se ci rendiamo conto che la scelta non è quella giusta prendiamo l'altra strada.

Poiché al momento abbiamo il codice già funzionante per quella costante, risparmiamo un Timer, abbiamo dei dati progettuali tutto sommato eccellenti, direi di continuare su questa strada, poi vedremo se è da cambiare, ok ?

Concordo su tutta la linea,su questo punto l'ho sempre pensata come te anche perchè la vedo come l'unica via da perseguire...ma se mi concedi di effettuare altre piccolissime varianti al tuo codice (ovviamente descrivendo anche le motivazioni), non cambierà assolutamente il suo funzionamento, ma, almeno per comela vedo io, sarà pronto ad affrontare eventuali 'cunette o dossi'. Quindi se l'obiettivo rimane quello di partorire, con tutti gli utenti del forum , un inverter, di elevata qualità per tutta la gente che vorrà costruirselo (cioè di pubblico dominio): io ci sto!!!
Accendiamo?:rolleyes:

CITAZIONE (BellaEli, 14/04/2015 04:11:44 ) Quote:
- Perché non ti piace il 160 ? Ti sembra piccolo o grande ? Che valore preferisci ?

Non è che non mi piace...dipendesse da me lo farei decidere al processore...è questo l'approccio che tento di comunicare...è il sw che deve decidere. Cmq visto dalla simulazione apparentemente sembra alto, probabilmente si può scendere e la precisione rimarrà praticamente la stessa. Non hai anche tu la stessa sensazione?

CITAZIONE (BellaEli, 14/04/2015 05:30:33 ) Quote:
-Cosa pensi, in generale, dei parametri progettuali iniziali, vale a dire freq. di funzionamento: tra 45 e 55 Hz, numero di campioni: 320 per sinusoide, uno ogni 62,5 microS, PWM a 16 KHz, risoluzione PWM: 1.000 valori ?
Ci sono parametri che ti sembrano squilibrati ?

Diciamo che ho pochi elementi per capire...dipende dal processore...la risposta sui tempi ce la potrebbe dare kekko che scrive:

Quote:
Quando arriveremo al feedback, che leggerà tramite ADC con una priorità più bassa dei timer (con velocità di lettura impostabile da prescaler)

ma occorre sapere i tempi minimi e massimi della lettura dell'ADC...senza quelli si va a braccio.Smiley
  
Back to top
 
IP Logged
 
NonSoloBolleDiAcqua
Ex Member
*****


--------

Gender: Male
Zodiac sign: Scorpio
Re:Homemade Inverter "modulo DC/AC"
Reply #1611 - 14.04.15 at 05:30:33
Print Post  
CITAZIONE (ElettroshockNow, 14/04/2015 04:39:55 ) Quote:
Bolle vs BellaEli

continuo a vedere il mio intervento come fondazioni esterne al progetto...se e sempre se la struttura traballasse sarà tutto pronto per inserire un ulteriore trave di sostegno!


CITAZIONE (ElettroshockNow, 14/04/2015 04:39:55 ) Quote:
il codice caotico

il codice caotico è solo l'estremizzazione dell'apparente perdita di controllo dei tempi...l'ho estremizzato nel tentativo di far vedere che esiste un altro approccio che non è sequenziale come si è abituati nella programmazione classica tradizionale...se l'universo procede in modo caotico...ci sarà pure un motivo!Smiley


CITAZIONE (ElettroshockNow, 14/04/2015 04:39:55 ) Quote:
usando il solo counter senza i timer interrupt che gestiscono in autonomia il pwm ... deve essere un capolavoro di codice ;
)

Finalmente...è proprio vero...quando il gioco diventa duro...Cheesy
No,non ho mai detto questa cosa. Ho detto : il counter ( cioè il tempo del processore) la fa da padrone mentre gli interrupt ( o se vuoi chiamarli anche timer) sono al suo servizio per il semplice motivo che non è detto che riescono a garantire i tempi a loro dedicati.

CITAZIONE (ElettroshockNow, 14/04/2015 04:39:55 ) Quote:
Pronto ....

Shocked: ho paura a farti questa domanda...ma ...hai una scheda tutta pronta dove è possibile fare delle prove?
  
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 #1612 - 14.04.15 at 06:36:15
Print Post  
CITAZIONE (NonSoloBolleDiAcqua, 14/04/2015 05:30:33 ) Quote:
Finalmente...è proprio vero...quando il
gioco diventa duro...Cheesy
No,non ho mai detto questa cosa. Ho detto : il counter ( cioè il tempo del processore) la fa da padrone mentre gli interrupt ( o se vuoi chiamarli anche timer) sono al suo servizio per il semplice motivo che non è detto che riescono a garantire i tempi a loro dedicati.


Ok .. chiaro .
Pwm generato dal timer1 ,ma variando il duty misurando il tempo trascorso a fine calcolo con il counter.

Se è cosi' è semplice e geniale Happy

CITAZIONE (NonSoloBolleDiAcqua, 14/04/2015 05:30:33 ) Quote:
Shocked: ho paura a farti questa domanda...ma ...hai una scheda tutta pronta dove è possibile fare delle prove?


Si :blink: ... l'hardware è pronto anche ad accettare nuovi firmware,l'importante è mantenere il mio stesso pinout ,altrimenti divento matto a modificare i codici.

Per il compilatore .. è gratuito e scaricabile dal sito Arduino.
Quando ci rincontriamo ti porto un'altro arduino
  

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


--------

Gender: Male
Re:Homemade Inverter "modulo DC/AC"
Reply #1613 - 14.04.15 at 07:16:13
Print Post  
WOOOOOO che capolavoro!!! Ma perche solo 2 driver?
  
Il niente è impossibile finchè non ci provi!!!
Back to top
 
IP Logged
 
inverter90
Ex Member
****


--------

Gender: Male
Re:Homemade Inverter "modulo DC/AC"
Reply #1614 - 14.04.15 at 07:17:14
Print Post  
Ora compila bene Cheesy#####ALLEGATO-[/IMG][/IMG]?1517[/IMG]
  
Il niente è impossibile finchè non ci provi!!!
Back to top
 
IP Logged
 
NonSoloBolleDiAcqua
Ex Member
*****


--------

Gender: Male
Zodiac sign: Scorpio
Re:Homemade Inverter "modulo DC/AC"
Reply #1615 - 14.04.15 at 08:03:40
Print Post  
bene ,bravo, mi ero perso un underscore ...elimino il codice sopra.
  
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 #1616 - 14.04.15 at 08:11:50
Print Post  
CITAZIONE (inverter90, 14/04/2015 08:03:40 ) Quote:
Ma perche solo 2 driver?

Nel mio inverter genero l'alternata con un solo mezzo ponte in uscita alimentandolo a 310V duali.
Come soluzione è valida ,ma avrà bisogno di uno stadio Step Up che elevi la tensione da xxV a 310 Duali.

Se invece farai un singolo stadio con trasformatore elevatore devi avere 4 finali .
Stesso discorso se crei lo stadio Elevatore in alimentazione singola.

Vabbè alla fine cambia poco a livello software ,l'importante è avere anche le uscite in onda quadra (in teoria se ne potrebbe fare a meno )
  

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 #1617 - 14.04.15 at 08:15:03
Print Post  
CITAZIONE (ElettroshockNow, 14/04/2015 08:03:40 ) Quote:
Ok .. chiaro .

Se è cosi' è semplice e geniale Happy

sono un ragazzo semplice e partorisco solo cose semplici...però devo dire un'altra cosa...ora è presto...poi non la dico altrimenti Eli mi spara una ventina di domande...ma prometto che nel corso dello sviluppo la tirerò fuori...per ora è veramente ininfluente.

CITAZIONE (ElettroshockNow, 14/04/2015 08:03:40 ) Quote:
Si :blink: ... l'hardware è pronto anche ad accettare nuovi firmware,l'importante è mantenere il mio stesso pinout ,altrimenti divento matto a modificare i codici.

Giusto, si deve avere un codice unico e per far questo propongo questa cosa: #include "chisono.h" con presenza di #ifdef ... il codice 'principale' rimane uguale l'unica differenza è un commento diverso nell'include...in questo modo ognuno può configurarlo come vuole...massima libertà!
Senti ma hai già postato il progetto da qualche parte cioè schemi e componenti?


CITAZIONE (ElettroshockNow, 14/04/2015 08:03:40 ) Quote:
Quando ci rincontriamo ti porto un'altro arduino


ok...taccio!Smiley


PS:Per lo svolgimento io propongo una cosa, il capo del progetto sarà BellaEli, tutti gli altri possono scannarsi, dire quello che vogliono...ma l'ultima decisione spetta a lui.Accendiamo anche questa seconda lampadina? Smiley
  
Back to top
 
IP Logged
 
NonSoloBolleDiAcqua
Ex Member
*****


--------

Gender: Male
Zodiac sign: Scorpio
Re:Homemade Inverter "modulo DC/AC"
Reply #1618 - 14.04.15 at 08:43:53
Print Post  
CITAZIONE (ElettroshockNow, 14/04/2015 08:43:53 ) Quote:
...genero l'alternata con un solo mezzo ponte

giusto giustissimo...braccine corte!:lol:



Allego il file D....ho finito di eliminare tutte le costanti indicizzandole...ora non appare più da nessuna parte un 160 o dei valori scolpiti, ho sistemato anche il vettore onda ( notare il doppio uguale Tongue ) in modo da lasciare tutto inalterato.
Cmq basta variare la  #define SEG_SEMI_SIN xxxx che tutto dovrebbe fungere esattamente allo stesso modo. Ora la SEG_SEMI_SIN è una costante, potrebbe diventare una variabile e si potrebbe verificare realmente quali sono le performance...o modificarla in fase di debbug...trimmer, pulsantini...etc...etc...etc.
Se Eli mi da l'ok effettuo altre inavvertibili varianti...ma garantisco che il suo algoritmo rimarrà immuatato...almeno spero!#####ALLEGATO-[/IMG][/IMG]?1518[/IMG]
  
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 #1619 - 14.04.15 at 09:00:03
Print Post  
CITAZIONE (NonSoloBolleDiAcqua, 14/04/2015 08:43:53 ) Quote:
PS:Per lo svolgimento io propongo una cosa, il capo del progetto sarà BellaEli, tutti gli altri possono scannarsi, dire quello che vogliono...ma l'ultima decisione spetta a lui.Accendiamo anche questa seconda lampadina? Smiley

Ottima scelta .. se a lui non dispiace .
Discussione nuova o si prosegue su questa ?

Stiamo a 108 pagine e 110000 Visite .... forse avremo bisogno di un motore di ricerca nella discussione :lol:

Per il debug c'è un problema .... Io non ho il feedback :cry: perchè nel mio caso verrà gestito dagli stepup.
  

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 ... 106 107 [108] 109 110 ... 219
Send TopicPrint
 

TOP100-SOLAR Galleria Immagini EnergiAlternativa