Inverter 220 volt per camper con ATmega32 e Bascom

Sezione dedicata al sistema di sviluppo BASCOM-AVR per i micro AVR
At90s, Attiny, Atmega e Xmega

Inverter 220 volt per camper con ATmega32 e Bascom

Postby filosofo » 30 Aug 2012, 20:31

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.
filosofo
 
Posts: 74
Joined: 23 Oct 2011, 09:52
Location: Dintorni di Roma

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby flz47655 » 31 Aug 2012, 01:31

Se sei alle prime armi lascia stare la 220, inoltre spenderesti molti più che comprarne uno già fatto..
flz47655
 
Posts: 639
Joined: 19 Jan 2012, 21:16

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby deluca » 31 Aug 2012, 12:48

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..............
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby flz47655 » 31 Aug 2012, 13:30

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
flz47655
 
Posts: 639
Joined: 19 Jan 2012, 21:16

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby filosofo » 31 Aug 2012, 13:35

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 ?
filosofo
 
Posts: 74
Joined: 23 Oct 2011, 09:52
Location: Dintorni di Roma

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby flz47655 » 31 Aug 2012, 14:13

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
flz47655
 
Posts: 639
Joined: 19 Jan 2012, 21:16

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby cyclone » 31 Aug 2012, 14:36

@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
User avatar
cyclone
 
Posts: 38
Joined: 27 Jan 2012, 11:49

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby filosofo » 31 Aug 2012, 15:20

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?
filosofo
 
Posts: 74
Joined: 23 Oct 2011, 09:52
Location: Dintorni di Roma

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby deluca » 01 Sep 2012, 15:10

@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
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby filosofo » 01 Sep 2012, 16:09

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.
filosofo
 
Posts: 74
Joined: 23 Oct 2011, 09:52
Location: Dintorni di Roma

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby deluca » 02 Sep 2012, 14:46

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
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby filosofo » 02 Sep 2012, 20:29

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
filosofo
 
Posts: 74
Joined: 23 Oct 2011, 09:52
Location: Dintorni di Roma

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby flz47655 » 02 Sep 2012, 20:45

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
flz47655
 
Posts: 639
Joined: 19 Jan 2012, 21:16

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby filosofo » 02 Sep 2012, 21:02

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...
filosofo
 
Posts: 74
Joined: 23 Oct 2011, 09:52
Location: Dintorni di Roma

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby flz47655 » 02 Sep 2012, 21:10

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
flz47655
 
Posts: 639
Joined: 19 Jan 2012, 21:16

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby deluca » 04 Sep 2012, 08:59

@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
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby flz47655 » 04 Sep 2012, 09:10

Ok, mi era sfuggito il trasformatore bifilare, adesso ho capito

Ciao
flz47655
 
Posts: 639
Joined: 19 Jan 2012, 21:16

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby tonid » 04 Sep 2012, 09:42

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 ?
tonid
 
Posts: 14
Joined: 31 Aug 2012, 10:43

Re: Inverter 220 volt per camper con ATmega32 e Bascom

Postby deluca » 04 Sep 2012, 09:55

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. :)
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)


Return to BASCOM-AVR

Who is online

Users browsing this forum: No registered users and 1 guest