Page 1 of 1
Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
30 Aug 2012, 20:31
by filosofo
salve a tutti sono alle prese con la costruzione, anzi con lo studio di un inverter per il mio camper, visto che quest'anno quello che avevo comprato dall cina ha fatto pluffff e tanto fumo.
in giro ce ne sono di tutti i tipi, ad onda quadra, sinusoidali, sinusoidali puri
ma quelli buoni costano un tantino, allora mi vorrei cimentare nella costruzione di uno di questo cosi ma non per risparmiare ma per capirci un pò
in modo da realizzarne dopo uno bello grosso di emergenza per la mia abitazione .
in particolare vorrei realizzarne uno con tensione ingresso 12/24VDC e uscita 220VAC con una potenza di almeno 1kw.
Pensate sia una cosa fattibile o è un'impresa ardua specie per me che sono, un pò per così dire, alle prime armi.
Vorrei fare qualcosa a partire da un ATmega32 con Bascom, quindi mi piacerebbe sapere da dove dovrei partire per la generazione della sinusoide.
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
31 Aug 2012, 01:31
by flz47655
Se sei alle prime armi lascia stare la 220, inoltre spenderesti molti più che comprarne uno già fatto..
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
31 Aug 2012, 12:48
by deluca
non facciamo scoraggiare subito filosofo,
sappiamo bene che l'oggetto è possibile comprarlo ma del resto come tutte le cose che tentiamo di realizzare con le schede con un micro a bordo....
dal controllo motore, al riproduttore di file mp3.
quello che vuole realizzare è fattibile e possibile.
Inoltre la realizzazione di un inverter può risultare molto istruttivo poichè bisogna affrontare problematiche di elettronica digitale, analogica e di potenza.
vediamo se c'è interesse..............
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
31 Aug 2012, 13:30
by flz47655
Ciao filosofo,
Non volevo scoraggiarti, più che altro ti consigliavo di fare prima qualche progetto con la bassa tensione prima di andare su un progetto con l'uscita a 230..
Progetti come controllo motore (se con tensioni 0-12/24v), riproduttore di file mp3 (3.3v o 5v), etc.. li vedo molto meno pericolosi proprio perché con tensioni non mortali.
Che esperienze hai con la 230? (ufficialmente è passata da 220 a 230, quindi più correttamente bisogna parlare di 230v)
Ciao
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
31 Aug 2012, 13:35
by filosofo
flz lo so che sarà una impresa non semplice, e che devo stare attento con la 230,
però la cosa mi interessa e costruirne uno da zero sarebbe una bella soddisfazione.
io possiedo un certo numero di micro atmega32 e come micro vorrei usare proprio questo.
sto cercando di capire come creare una forma d'onda sinusoidale attraverso il pwm.
mi viene difficile però come calcolare la freq del pwm e quindi non so come configurarlo per ottenere in uscita la freq sinusoidale di 50Hz.
mi potete dare qualche delucidazione ?
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
31 Aug 2012, 14:13
by flz47655
Ciao
Per creare una sinusoide ci possono essere diverse strade (io conosco queste):
- circuito oscillatore con op-amp (es. a ponte di wien)
- pwm
- dds
Se non hai una sinusoide perfetta (es. col PWM), puoi aggiungere un filtro passa basso per eliminare le frequenze di non interesse. Se vuoi una sinusoide molto pulita il filtro deve essere molto ripido (non un RC per intenderci).
Un DDS è in pratica un processore digitale (può essere un MCU con apposito software o un chip dedicato) con un DAC integrato che serve per generare i vari valori analogici della sinusoide.
Trovi dei chip DDS a pochi euro (io ad esempio ho preso un AD9834 che utilizzo con Arduino) che ti concedono una certa flessibilità, puoi cambiare frequenza, ampiezza, etc.. da MCU
Queste sinusoidi andranno poi in qualche modo fatte passare per uno stadio di potenza che è forse la parte più dedicata perché potrebbe cambiare le caratteristiche dell'onda.
Purtroppo non so dirti altro perché non mi intendo di inverter
Ciao
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
31 Aug 2012, 14:36
by cyclone
@filosofo
secondo me per costruire un inverter hai bisogno di un micro in grado di generare 2 segnali pwm (segnale sinusoidale) su due uscite indipendenti,
un driver per pilotare i mosfet, 2 mosfet di potenza, un trasformatore bifilare di potenza e le batterie con eventuale carica batterie.
In linea di massima questi dovrebbero essere i componenti principali di un inverter DC/AC.
di che potenza hai bisogno?
ciao
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
31 Aug 2012, 15:20
by filosofo
io avrei voluto realizzare un inverter da 1000 VA anche per carichi induttivi, tipo motori ed elettrodomestici.
ma siccome penso che un kilo non siano così pochi potrei partire col farne una da 300/500 watt magari per alimentare le luci del camper o della mia abitazione.
In ingresso cosa conviene avere la 12 o una 24 volt generata da 2 batterie da 12 messe in serie?
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
01 Sep 2012, 15:10
by deluca
@cyclone, perfetto nulla da obiettare
@filosofo,
per il momento invece di preoccuparti della parte di potenza che possiamo vedere anche dopo dedicati alla generazione della sinusoide attraverso l'impiego dei timer usati come modulatori pwm.
Sai configurarli con il bascom?
se vuoi usare come micro l'atmega32 ti consiglio di sfruttare il timer1 come generatore pwm a 2 canali e l'overflow del timer0 per prelevare i valori da una tabella che contiene i valori seno normalizzati a 8 bit.
Magari prova prima con una tabella non molto risoluta, magari con 32 valori del seno e poi aumentane la risoluzione per migliorare e smussare la sinusoide.
So a priori che detto così non è banale, ma prima di darti altri aiuti, vorrei che ti sforzassi almeno per chiedermi altro

dai si parte, mettiti al lavoro

ciao
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
01 Sep 2012, 16:09
by filosofo
deluca,
che frequenza di pwm in khz devo scegliere per far funzionare bene lo stadio di potenza?
andrebbe bene sui 10 khz?
c'è una utility che permette di calcolare i valori dei registri del timer per avere 2 pwm a 10 khz?
grazie sempre.
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
02 Sep 2012, 14:46
by deluca
filosofo la freq del pwm non la puoi scegliere a caso e non sei tu che la decidi, avrai sempre dei valori frefissati per ogni configurazione anche perchè i valori che puoi assegnare al prescaler sono limitati.
il valore della fpwm dipende da come configuri il timer1 come pwm, dai bit di risoluzione dal prescaler e in primis dal clock della cpu.
quindi con una freq di clock pari a 16Mhz, prescaler=1, risoluzione 8 bit avrai un frq pwm pari a 31250Hz.
per configurare in bascom il timer1 come pwm per ottenere 31250 Hz con f-clock=16Mhz:
- Code: Select all
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 1
in questo modo avrai 2 uscite pwm che potrai comandare in modo indipendente : oc1a e oc1b.
Le variabili su cui dovrai scrivere i valori a 8 bit saranno Pwm1a e Pwm1b.
esegui qualche test e fammi sapere.
ciao
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
02 Sep 2012, 20:29
by filosofo
scusate,
aiutandomi con l'help sto tentando di configurare i timer per generare i pwm per produrre in uscita un segnale sinusoidale.
sto cercando di capire come fare, almeno sono sulla strada giusta?
ancora non ho le uscite, come devo procedere o cosa manca per andare avanti?
sto usando una risoluzione a 32 livelli per la funzione seno, sono sufficienti o ne devo calcolare altri?
sto dividendo 180°/32 = 5,625° quindi ho calcolato un valore seno 32 volte ogni 5,625° è giusto?
sto facendo così sin(5,526)=0.098 poi 0.098 x 255 = 24.99 che arrotondato = 25 primo valore della tabella
- Code: Select all
$regfile = "m32def.dat" 'specifico il micro
$crystal = 16000000 'cristallo usato
$baud = 19200 'baud rate se serve
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 1
Config Timer0 = Timer , Prescale = 64
Dim Sine_table(32) As Byte
Dim Index As Byte
Setup:
For Index = 0 To 31
Sine_table(index + 1) = Lookup(index , Sine_dat) ' leggo Sine_dat
Next Index
'------------------------------------------------------------
Do
Loop
End
Sine_dat:
Data 025 , 050 , 074 , 098 , 120 , 142 , 162 , 180 , 197 , 212 , 225 , 235 , 244 , 250 , 254 , 255
Data 254 , 250 , 244 , 235 , 225 , 212 , 197 , 180 , 162 , 142 , 120 , 098 , 074 , 050 , 025 , 000
scusate tutte queste domande

ma penso che possano giovare anche ad altri
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
02 Sep 2012, 20:45
by flz47655
32 livelli vanno bene per una prova, poi ti consiglio di usare più livelli che puoi nel progetto finale per una sinusoide migliore
Se tabuli solo i valori di 180° gli altri (da 181 a 360) li devi calcolare sul momento sfruttando le simmetrie della sinusoide
Il calcolo è giusto
Ciao
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
02 Sep 2012, 21:02
by filosofo
flz
secondo i miei calcoli per realizzare l'inverter bastano solo 0-180° (mezza sinusoide) perchè sto utilizzando 2 uscite pwm.
non so se il mio ragionamento è giusto...
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
02 Sep 2012, 21:10
by flz47655
Scusami non ho seguito il ragionamento, perché due pwm da 180°? Io avrei fatto tutto con uno ad esempio..
NB: Non mi intendo di inverter
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
04 Sep 2012, 08:59
by deluca
@filosofo il tuo ragionamento non fa una piega, esatto
per realizzare un inverter sinusoidale con trasformatore bifilare o con presa centrale bisogna pilotare alternativamente gli avvolgimenti del primario a bassa tensione con una modulazione pwm relativa al periodo di una semionda sinu 0-180°.
la sinusoide completa sarà il frutto dei 2 pwm.
fatemi sapere se volete approfondire
ciao
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
04 Sep 2012, 09:10
by flz47655
Ok, mi era sfuggito il trasformatore bifilare, adesso ho capito
Ciao
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
04 Sep 2012, 09:42
by tonid
per realizzare un inverter sinusoidale con trasformatore bifilare o con presa centrale bisogna pilotare alternativamente gli avvolgimenti del primario a bassa tensione con una modulazione pwm relativa al periodo di una semionda sinu 0-180°.
la sinusoide completa sarà il frutto dei 2 pwm.
Effettivamente è molto più semplice di quanto pensassi. Da quì in avanti non resta altro che pilotare dei driver per mosfet che a loro volta inviano la semionda positiva(prima uno e poi l'altro) ai due estremi del trasformatore che avendo la presa centrale a gnd genera in uscita una tensione alternata con frequenza pari a quella d'ingresso......Domanda,essendo il trasformatore un carico induttivo sarebbe utile prevedere dei diodi polarizzati inversamente per evitare correnti di ritorno sui mosfet ?
Re: Inverter 220 volt per camper con ATmega32 e Bascom

Posted:
04 Sep 2012, 09:55
by deluca
attenzione, non è così semplice come uno potrebbe pensare....
i diodi switching per le tensioni indotte inverse sono necessari specie se andiamo su in potenza e in freq di pwm.
bisogna prevedere varie protezioni, contro il corto e anche contro i sovraccarichi.
poi hai necessità di avviare l'inverter sinusoidale in softstart.
prevedere i dead-time per il pilotaggio dei mosfet....
calcolare bene il filtro da applicare in uscita del trasformatore
controreazionare negativamente l'uscita in modo da mantenere costante il valore efficace al variare del carico e della tensione delle batterie.
un inverter può essere un oggetto piuttosto semplice da realizzare ma il difficile è tenerlo in vita garantendo l'affidabilità sia dell'inverter stesso sia dei dispositivi ad esso collegati.
ciao
ps. se lo desideri, tienici al corrente sull'avanzamento del progetto.
