 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
SimonS Član



Pridružen-a: Čet 01 Jul 2004 11:18 Prispevkov: 4770 Aktiv.: 20.08 Kraj: Kobarid
|
Objavljeno: Pet Dec 26, 2008 8:32 pm Naslov sporočila: izračun sinusa |
|
|
Pozdrav
Sedaj ne vem kdo je nor
Imam čisto enostavno funkcijo za izračun sinusa
Koda: |
if (sinus >= 180) sinus=0;
sinus += 1;
pwm_duty= sin(sinus)*100;
|
sinus in pwm_duty sta bila definirana kot INT, UNSIGNED INT, FLOAT,DOUBLE ampak funkcija me meče ven v vsakem primeru strašno čudne rezultate. Niti približno podobne kar bi moralo biti.
Seveda imam #include <math.h> _________________ Lep dan
Simon |
|
Nazaj na vrh |
|
 |
piroman Član


Pridružen-a: Čet 23 Okt 2003 12:06 Prispevkov: 2707 Aktiv.: 11.40 Kraj: Ljubljana
|
Objavljeno: Pet Dec 26, 2008 8:39 pm Naslov sporočila: |
|
|
Da ne pričakuje math.h vrednosti v radianih? _________________ One shouldn’t work on semiconductors, that is a filthy mess; who knows if they really exist!
Wolfgang Pauli, 1931 |
|
Nazaj na vrh |
|
 |
Glitch Član

Pridružen-a: Pet 07 Apr 2006 11:40 Prispevkov: 1477 Aktiv.: 6.30
|
Objavljeno: Pet Dec 26, 2008 8:42 pm Naslov sporočila: |
|
|
Verjetno si pozabil, da funkcija sin potrebuje kot v radianih.
P.S.
Hehe... piroman, ko sem pritisnil odgovori, tvojega odgovora se ni bilo. _________________ Answers: $1, Short: $5, Correct: $25, dumb looks are still free. |
|
Nazaj na vrh |
|
 |
SimonS Član



Pridružen-a: Čet 01 Jul 2004 11:18 Prispevkov: 4770 Aktiv.: 20.08 Kraj: Kobarid
|
Objavljeno: Pet Dec 26, 2008 8:54 pm Naslov sporočila: |
|
|
Nimam kota. Hočem izračunati sinusoido
Pričakujem odgovor
sin 1*100 = 1.745
sin 10*100 = 17.36
sin 20*100 = 34.20
...
jaz pa dobim odgovor
sin 1*100 = 84.14
sin 2*100 = 90.92
sin 3*100 = 14.11
sin 4*100 = -75.68
Ni mi jasno, s kje dobi tak odgovor???????? _________________ Lep dan
Simon |
|
Nazaj na vrh |
|
 |
Sokrat Član


Pridružen-a: Čet 25 Avg 2005 11:00 Prispevkov: 5584 Aktiv.: 23.51
|
Objavljeno: Pet Dec 26, 2008 8:58 pm Naslov sporočila: |
|
|
Sta ti lepo napisala ... radiani. Pretvori stopnje v radiane ( radianov je 180 stopinj). _________________ Ka ti bo pa torba ce si kupu kolo ? |
|
Nazaj na vrh |
|
 |
eddie Član

Pridružen-a: Sre 10 Dec 2003 21:02 Prispevkov: 723 Aktiv.: 3.04 Kraj: Severna primorska
|
Objavljeno: Pet Dec 26, 2008 8:59 pm Naslov sporočila: |
|
|
Zdravo!
Verjetno funkcija "razume" tvoje vnose kot sin 1(radian)*100 in ne sin 1(stopinja) *100!
sin 1 radian = 0,84,
sin 1(stopinja) pa je 0,017!
Tu tiči zajec!
Lp
EDIT: Točno Silvo! Si me prehitel.  |
|
Nazaj na vrh |
|
 |
tiger Član

Pridružen-a: Čet 05 Feb 2004 0:22 Prispevkov: 1161 Aktiv.: 4.89
|
Objavljeno: Pet Dec 26, 2008 9:01 pm Naslov sporočila: |
|
|
Hi
Zadeva je popolnoma pravilna. Kot se vpisuje v radianih 2pi =360 stopinj.
LP |
|
Nazaj na vrh |
|
 |
strobos Član

Pridružen-a: Sre 24 Sep 2003 12:19 Prispevkov: 726 Aktiv.: 3.06 Kraj: Brežice
|
Objavljeno: Pet Dec 26, 2008 9:36 pm Naslov sporočila: |
|
|
Sinusni pwm lahko narediš tudi tako, da tabeliraš sinus in se potem pomikaš po tabeli. S hitrostjo pomikanja pa določaš frekvenco sinusa.
Lp |
|
Nazaj na vrh |
|
 |
gkrusi Član



Pridružen-a: Tor 24 Jul 2007 17:22 Prispevkov: 811 Aktiv.: 3.71 Kraj: Ptuj
|
Objavljeno: Sob Dec 27, 2008 7:04 am Naslov sporočila: |
|
|
Tako je, math.h koliko sem poskušal sprejema kote v radianih. Se pravi, da boš moral vrednost, ki si jo vnesel v ° prej še delit s 360/2 = 57.2958...
1° = 0,01745 rad
2° = 0,03491 rad
10°= 0,17453 rad
90° = 1,57080 rad
180° = 3,14159 rad
360° = 6,28318 rad
Se pravi nekako tako:
Koda: |
if (sinus >= 180) sinus=0;
sinus += 1;
pwm_duty = sin(sinus/57.2958)*100;
|
_________________ Zakaj bi bilo preprosto, če je lahko zakomplicirano??? |
|
Nazaj na vrh |
|
 |
SimonS Član



Pridružen-a: Čet 01 Jul 2004 11:18 Prispevkov: 4770 Aktiv.: 20.08 Kraj: Kobarid
|
Objavljeno: Sob Dec 27, 2008 1:00 pm Naslov sporočila: |
|
|
Oh, na koncu jaz izpadem nor
Hvala za pomoč. Zadeva špilja. Ne morem pa uporabljati tabele sinusa, ker v končni fazi to ne bo čisti sinus in ga bo treba sproti računati. _________________ Lep dan
Simon |
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 7 dni
Powered by phpBB © 2001, 2005 phpBB Group
|