Jump to content
Mihai_Hd

Realizare invertor 800w 24/230v sinusoida pura

Recommended Posts

Cu filtru pe iesire si asa arata sinusoida? Tare ma'ndoiesc....

Share this post


Link to post
Share on other sites

@andreigradu - nu stiu cum ai obtinut oscilograma aia... in poze nu vad nici o punte H, driver, etc.

In softul asta variatia PWM se face discret ( de la puls la puls) si nu in trepte (https://en.wikipedia.org/wiki/Pulse-width_modulation)

Am programat mai multe versiuni, pentru frecvente diferite, de dragul stiintei si pentru ca la un moment dat nu aveam quart de o anumita frecventa...

Edited by Flopi

Share this post


Link to post
Share on other sites

Eu am postat ce am eu acum in fata, sunt sigur ca poate fii gresit.

Am Q de 16MHz, nu am idee la ce frecv. exact trebuie sa fie jucaria, dar la 8MHz dadea 25Hz, acum da 50Hz, deduc ca e ok Q asta de 16MHz.

https://plus.google.com/105950977457952691373/posts/jS2C4ytv94i

Asta e ce am mai captat, am folosit ambele canale, am suprapus cele 2 canale prin inversare si semnalele sunt identice.

Am adaugat si semnalul dreptunghiular de 50hz, se vede in imagini, se suprapune foarte bine.

 

O sa trec pinii prin ceva buffer si om mai vedea ce se intampla. Poate valorile filtrului sunt eronate. Poate osciloscopul meu are ceva, sau sondele.

 

Cum spune si Florin, voi adauga si un totem-pole, nu mai dau bani pe IR2110, o sa fac un driver discret, si o sa atac 4 tranzistoare mici, ceva IRF840.  Poate chiar incerc un trafo driver ca am miezuri multe prin casa.

 

Ma refer ca acea variatie se obtine prin integrarea unor arii, adica la un semnal cu factor de umplere 1% ai o valoare , apoi urmeaza 2,3....10%.....20,30.....50% .....80,90,100% factor de umplere. Practic sinusoida e un cumul de valori medii. Filtrul netezeste forma sinusoidei obtinute.  La asta ma refeream. Poti realiza sa zicem sinusoida din 100 puncte, din 16, din 32, din 254, din cate iti imaginezi.  Apoi daca o vrei mai ascutita, sau mai plata poti genera mai multe trepte identice.  Adica sa zicem ca pleci cu 100 puncte, dar la varf o vrei mai ascutita si generezi mai multe semnale cu factor de umplere mare, astfel se ascute sinusoida. Aici depinde de distributia factorilor de umplere.

Edited by andreigradu

Share this post


Link to post
Share on other sites

Eu zic sa analizezi mai bine treaba cu driverul... Traful in cazul asta nu se prea aplica iar driverul discret e o provocare (mai ales partea flotanta).

Cat despre "cumulul de valori medii" sunt de acord cu tine. Totul tine de cerintele pe care le impui invertorului. Daca se pune accent pe distorsiuni armonice mici si eficienta maxima, atunci nu ai ce cauta cu trepte (rare), Explicatia, in mare, este ca treptele introduc o armonica la f=50hz * nr. de trepte, care cu cat e mai aproape de 50 Hz e mai greu de filtrat (si ineficient economic).

Primul meu proiect de invertor sinus a fost cu PIC16F84, in vreo 80 trepte post-2507-0-21657900-1444422602_thumb.jpg

Ulterior, cautand o solutie cat mai ieftina si eficienta am ajuns la Attiny si atmega8.post-2507-0-68422100-1444422793_thumb.jpg Aici am implementat un SINPWM pe 3 nivele .(vezi https://www.wpi.edu/Pubs/E-project/Available/E-project-042711-190851/unrestricted/PWM_Techniques_final.pdf)

Cele mai avansate invertoare folosest DSP-uri in care este implementata o bucla PID ( sau mai multe ) pentru a compara in timp real iesirea cu un semnal sinusoidal de referinta. (http://ww1.microchip.com/downloads/en/AppNotes/01279B.pdf)

Share this post


Link to post
Share on other sites

Am perseverat si am obtinut rezultatul corect.

De vina era rezistenta de 10K, am pus una mult mai mi ca, 560 Ohm, cond tot cel de 100nF.

Acum semnalul e sinus, ma rog, cele 2 jumatati care vor ataca tranzistoarele.

Am gasit in fiare un invertor mai vechi de la LIDL, modelul de 300W cu 600W peak, E busit, si ma gandesc ca o sa pun pe el un circuit de comanda din aceste, asta ca sa continui testele. 

 

https://plus.google.com/105950977457952691373/posts/48qbmJEL6QP

Share this post


Link to post
Share on other sites

Buna seara ,sunt nou in materie de programare si cer ajutor in scrierea fuse biti-lor high si low ptr Attiny13 cu ponyprog,

Problema e ca nu gasesc cum sa pun valorile manual.Am ore de cand caut dar nu i-mi apare fereastra cu high fuse bit 

si low fuse bit.

Scuzati-mi stangacia in exprimare , va multumesc.

O seara buna .

Share this post


Link to post
Share on other sites

Multumesc mult.

O zi buna.

Share this post


Link to post
Share on other sites

Pentru attiny13 -----low=7A

                         -----high=FF

 marchez casutele ca in captura trimisa de tine?

Multumesc

Share this post


Link to post
Share on other sites

Deci la mine cu ATTINY13 am deselectat CKDIV8 si functioneaza normal. Chestia cu 7A si FF nu stiu exact ce inseamna, adica in ponyprog nu apar fusebitii setati asa :)

Share this post


Link to post
Share on other sites

Asta cautam ca nebunul nu stiam ca ponyprog nu are aceasta optiune

Multumesc si scuze.

O zi buna

Share this post


Link to post
Share on other sites

nu ai pentru ce sa-ti ceri scuze, toti suntem pe forum pentru a invata reciproc, altfel care ar fi sensul.

 

deci cu attiny13 si optiunea aia bifata la mine se comporta normal, doar cu hex-ul incarcat pe microcontroller imi aprindea ledul de status dupa aproximativ jumatate de minut si frecventa sinusului era mult mai mare.

  • Like 1

Share this post


Link to post
Share on other sites

Eu zic sa analizezi mai bine treaba cu driverul... Traful in cazul asta nu se prea aplica iar driverul discret e o provocare (mai ales partea flotanta).

Cat despre "cumulul de valori medii" sunt de acord cu tine. Totul tine de cerintele pe care le impui invertorului. Daca se pune accent pe distorsiuni armonice mici si eficienta maxima, atunci nu ai ce cauta cu trepte (rare), Explicatia, in mare, este ca treptele introduc o armonica la f=50hz * nr. de trepte, care cu cat e mai aproape de 50 Hz e mai greu de filtrat (si ineficient economic).

Primul meu proiect de invertor sinus a fost cu PIC16F84, in vreo 80 trepte attachicon.gifFotografie0207.jpg

Ulterior, cautand o solutie cat mai ieftina si eficienta am ajuns la Attiny si atmega8.attachicon.gifFotografie0400.jpg Aici am implementat un SINPWM pe 3 nivele .(vezi https://www.wpi.edu/Pubs/E-project/Available/E-project-042711-190851/unrestricted/PWM_Techniques_final.pdf)

Cele mai avansate invertoare folosest DSP-uri in care este implementata o bucla PID ( sau mai multe ) pentru a compara in timp real iesirea cu un semnal sinusoidal de referinta. (http://ww1.microchip.com/downloads/en/AppNotes/01279B.pdf)

Salut, poti sa dai mai multe detalii despre implementarea SINPWM pe 3 nivele?

Cum ai calculat valorile, cate esantioane sunt intr-o alternanta a sinusoidei?

Share this post


Link to post
Share on other sites

  Esantioane nu e corect spus (mai degraba impulsuri). Metoda e descrisa destul de detaliat pe net. Sinusoida (o semiperioada) se intersecteaza cu un semnal dinte de fierastrau

post-2507-0-64737600-1445620786_thumb.png. Frecventa acestuia este egala cu frecventa dorita pentru semnalul SIN-PWM. De aici rezulta duratele impulsurilor on, respectiv off pentru semnal.  Calcularea valorilor o fac cu o implementare proprie in matlab. Astea se trec intr-un tabel si se folosesc in programul din controler pentru generarea intarzierilor (eu merg pe intreruperea TMR0... dar nu e relevant). NU folosesc functiile PWM ale controlerului, generarea se face puls cu puls. Pentru iesire generez pe o latura a puntii H impulsuri complementare cu dead time (pentru asta folosesc NOP-uri) si pe cealalta impulsuri de 50 Hz (tot cu dead time). Cam asta e in linii mari...

 Implementarea asta (pe uC-uri ATMEL/PIC slabute) nu e pentru incepatori in ale uC-urilor si in ale programarii. Trebuie sa cunoasteti si sa intelegeti destul de profund arhitectura microcontrolerului deoarece timpii sunt critici. Eu am folosit un mix de C si asm.

 Ofer cu placere sprijin pentru entuziasti, in limita timpului disponibil, dar NU am sa ofer niciodata surse... SUCCES !

  • Like 1

Share this post


Link to post
Share on other sites

Florine,te-am intrebat odata ,ce dead time  folosesti ,ma interesa sa fie la 1us pentru ca frecventa este mica si IGBT-urile sunt ieftine fata de mosi,dar nu imi aduc aminte daca mi-ai zis .Este de 1 usec ?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

We use cookies and related technologies to improve your experience on this website to give you personalized content and ads, and to analyze the traffic and audience of your website. Before continuing to browse www.tehnium-azi.ro, please agree to: Terms of Use.