 |

|
Elektronika.lt portalo forumas
Jūs esate neprisijungęs lankytojas. Norint dalyvauti diskusijose, būtina užsiregistruoti ir prisijungti prie forumo.
Prisijungę galėsite kurti naujas temas, atsakyti į kitų užduotus klausimus, balsuoti forumo apklausose.
Administracija pasilieka teisę pašalinti pasisakymus bei dalyvius,
kurie nesilaiko forumo taisyklių.
Pastebėjus nusižengimus, prašome pranešti.
Dabar yra 2025 10 16, 18:08. Visos datos yra GMT + 2 valandos.
|
|
|
 |
Forumas » Mikrovaldikliai » Sinusinio signalo darymas su PWM
|
Jūs negalite rašyti naujų pranešimų į šį forumą Jūs negalite atsakinėti į pranešimus šiame forume Jūs negalite redaguoti savo pranešimų šiame forume Jūs negalite ištrinti savo pranešimų šiame forume Jūs negalite dalyvauti apklausose šiame forume
|
|
|
Puslapis 1 iš 2 Pereiti prie 1, 2 Toliau |
|
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 17, 20:15 |
|
|
|
Kokiu principu būtų galima padaryti sinusoidės pusperiodžius pasitelkiant PWM'ą? Čia kaip suprantu kažkokia formulikė turėtų būti?  |
|
_________________ Teorija - kai viską žinai, bet niekas neveikia,
Praktika - kai viskas veikia, bet nežinai kodėl.
Skype : VytautasRX |
|
|
|
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 17, 20:29 |
|
|
|
Kažko neto klausi... Su PWM galima reguliuoti impulso skverbtį, o sinusas pastoviai turi turėti 50% skverbtį (jei apskritai galima taip pavadinti). Tad nebent iš 50% impulso galima tikėtis gauti sinusą, bet ir tai gažaus sinuso padaryti nepavyks. Bet kažkiek suapvalinti kampus galima naudojant RC grandinėlę (ŽD filtrą).
O jei kalbi apie PWM būdu valdomą sinus generatorių (dažnio keitimą), tai galima susirasti įtampa valdomą generatorių su varikapu, ir iš PWM su RC pasidaryti įtampą priklausomą nuo PWM pločio. |
|
|
|
|
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 17, 20:40 |
|
|
|
|
_________________ Teorija - kai viską žinai, bet niekas neveikia,
Praktika - kai viskas veikia, bet nežinai kodėl.
Skype : VytautasRX |
|
|
|
 |
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 17, 20:51 |
|
|
|
Vytautasr rašo: |
Aš tikriausiai neteisingai išsireiškiau. Man pvz. iš 100KHz PWM reiktu padaryti 1Hz maždaug sinusinį signalą. Čia parašyta kaip tai atrodo, bet man lieka nelabai aiški programinė dalis. |
Tai čia panašiai kaip ir parašiau antru variantu. Iš PWM padaromas analoginis signalas su RC filtru. Ir laikui bėgant keičiant PWM, keisis analoginis lygis. Jei pvz., kas 100mS didinsi PWM plotį kas 25, o pasiekus 250 vėl pradėsi nuo 0, tai išėjime gausi 1Hz pjūklą. Sinusui gauti reikėtų naudoti lentelę ir šiek tiek daugiau taškų paimti. |
|
|
|
|
 |
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 17, 20:55 |
|
|
|
Citata: |
...Sinusui gauti reikėtų naudoti lentelę ir šiek tiek daugiau taškų paimti. |
Va mane būtent šita dalis ir domintų, ar galima išsiversti be lentelės, kad pats procikas apsiskaičiuotų reikšmes, kažkokia funkcija?  |
|
_________________ Teorija - kai viską žinai, bet niekas neveikia,
Praktika - kai viskas veikia, bet nežinai kodėl.
Skype : VytautasRX |
|
|
|
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 17, 21:41 |
|
|
|
Vytautasr rašo: |
Va mane būtent šita dalis ir domintų, ar galima išsiversti be lentelės, kad pats procikas apsiskaičiuotų reikšmes, kažkokia funkcija?  |
Žymiai paprasčiau yra panaudoti lenteles iš kokių 100 reikšmių, ar mažiau. Bet jei nori pasportuoti - žinoma kad galima. Paimk Sin(x) funkcijos Makloreno eilutę, ir pasiskaičiuok kiekvieną reikšmę:
.gif) |
|
|
|
|
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 17, 21:49 |
|
|
|
lenteles didels nereikia, nes reiki atsiminti tik 1/4 pusperiodzio, bet del didesnio grecio galima ir pilna sinusoide irasyti.
su pwm kazko gero negausi, nebent mazo daznumo sinusoides
sakykim tavo pwm tikslumas 1/32 (5bitu signalas) tada sunusoide turetu buti padaryta is 100 taku
tai iseina kad 1 hz signalui reikia pwm 3200 hercu.
o jei noresi padaryti 1khz tai jau reikes 3.2mhz pwm
nebent zinoma mazinsi tiksluma, tada mazes pwm daznumas |
|
|
|
|
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 17, 22:25 |
|
|
|
vakaras rašo: |
.gif) |
Supratau, tikrai geriau pasinaudoti lentele  |
|
_________________ Teorija - kai viską žinai, bet niekas neveikia,
Praktika - kai viskas veikia, bet nežinai kodėl.
Skype : VytautasRX |
|
|
|
 |
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 18, 09:46 |
|
|
|
Jokiu maklareno eiluciu nebutina Paimi paprasciausias funkcija Sin(x) ir viskas. Tik reliam laike AVR nelabai speja skaiciuoti. Geriausiai pasidaryti lentele. Buvau padares reliam laike pvz.
x kinta nuo 0 iki 1
tada skaiciuojam sin(x)
ir atnaujinam OCR registro reiksme naujai gauta (aisku cia dar koeficientas reikalingas nes sinx funkcija duoda reiksmes nuo 0 iki 1)
Viskas vaziuoja tik jei nori didesnio sinuso daznio jau avr nepatempia sinuso skaiciavimu greitai.
Todel geriau lentele. Tarp kito toks pastebejimas kad kuo didesnio daznio sinusa generuoji tuo maziau reiksmiu uztenka kad gautum pakankamai gera signala. Bet aisku viskas nuo poreikiu priklauso.
Pas mane ant Mega88 sukasi 3 faziu keitiklis is 24 V i 380V 3kW, PWM'as 10 kHz. Kadangi schemoi naudoju transformatorius tai sinusas puikus, ypac po apkrova. |
|
|
|
|
 |
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 18, 20:46 |
|
|
|
Martynas rašo: |
Jokiu maklareno eiluciu nebutina Paimi paprasciausias funkcija Sin(x) ir viskas. Tik reliam laike AVR nelabai speja skaiciuoti. Geriausiai pasidaryti lentele. Buvau padares reliam laike pvz.
x kinta nuo 0 iki 1
tada skaiciuojam sin(x) |
O gal tu manai sin(x) cia tokia asamblerio komanda?
kas tavo manymu tos sin(x) komandos viduje?
Citata: |
Pas mane ant Mega88 sukasi 3 faziu keitiklis is 24 V i 380V 3kW, PWM'as 10 kHz. Kadangi schemoi naudoju transformatorius tai sinusas puikus, ypac po apkrova. |
tai 10khz pwm yra netoli maksimumo. |
|
|
|
|
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 18, 21:27 |
|
|
|
Digix rašo: |
O gal tu manai sin(x) cia tokia asamblerio komanda? |
Ne ASM o C. As naudoju "Codevision AVR C Compiler".
Su ASM tai aisku kad uzsiknisimas skaiciuoti SIN |
|
|
|
|
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 18, 21:57 |
|
|
|
sin(x) "standartinė" funkcija naudoja tą patį skleidimą eilutę naudojant slankaus kablelio skaičius, ir sudeda gana daug eilutės narių (didesniam tikslumui išlaužti). AVRams tokios užduotys gana sunkios.
Reikalui esant galima situaciją supaprastinti naudojant tą pačią eilutę su sveikais skaičiais, pvz., paaugintais iš 256, 1000 ar pan. Ir imti vos 5-6 eilutės narius. Rezultatas gausis panašus, tik N kartų greičiau. |
|
|
|
|
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 18, 23:39 |
|
|
|
siaip lentele uzimtu net maziau vietos, sakykim 50 reiksmiu butu 50 baitu, o i 50 baitu tik 25 komandos telpa.
8 bitu matematika cia neapsieisi, todel su lentele bent 1000 kartu greciau veiks. Tuo labiau kad AVR atminties turi daug daugiau nei reikia. |
|
|
|
|
 |
Sinusinio signalo darymas su PWM |
Parašytas: 2006 08 19, 08:50 |
|
|
|
GAl nevisai į temą, bet kažkur šitame forume buvo kalba apie keitiklį iš 12V į 220V su sinusiniu išėjimu. Ten rusiškas straipsnis ir sinusas realizuotas uC pagalba, berods AT90S2313. Jeigu įdomu, galėčiau įmesti į mail, nes nežinau, kaip čia prisegti bylą (ten ~4MB pdf).
Va, radau: http://rapidshare.de/files/21379860/sinus.rar.html |
|
Paskutinį kartą redagavo Domantas, 2006 08 19, 08:53. Redaguota 1 kartą |
|
|
|
|
 |
Google paieška forume |
|
 |
Naujos temos forume |
|
 |
FS25 Tractors
Farming Simulator 25 Mods,
FS25 Maps,
FS25 Trucks |
 |
ETS2 Mods
ETS2 Trucks,
ETS2 Bus,
Euro Truck Simulator 2 Mods
|
 |
FS22 Tractors
Farming Simulator 22 Mods,
FS22 Maps,
FS25 Mods |
 |
VAT calculator
VAT number check,
What is VAT,
How much is VAT |
 |
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija |
 |
FS25 Mods
FS25 Maps,
FS25 Cheats,
FS25 Install Mods |
 |
FS25 Mods
Farming Simulator 25 Mods,
FS25 Maps |
 |
ATS Trailers
American Truck Simulator Mods,
ATS Trucks,
ATS Maps |
|

|
 |