www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

Točnost RC oscilatorja

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Elektronika
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
Domenius
Član
Član



Pridružen-a: Sre 30 Nov 2005 14:15
Prispevkov: 1188
Aktiv.: 5.01
Kraj: Medvode

PrispevekObjavljeno: Tor Nov 28, 2006 6:44 pm    Naslov sporočila:  Točnost RC oscilatorja Odgovori s citatom

Pozdravljeni!
Spet imam en problem. Naredil sem timer z AT90S2343. Timer deluje tako, da je rele 14 ur sklenjen in 10 ur razklenjen, potem se vse ponovi. Uporabil sem mikrokontrolerjev notranji RC oscilator, ki deluje na 1MHz. V programu pa izkoriščam 8 bitni Timer0 za zakasnitve. Takt Timer-ja delim s 1024, tako da bi se po mojih izračunih moral interrupt pojaviti vsakih 261,12 ms. Ko se rutina 193015 krat ponovi, bi morala biti zakasnitev 50400 sekund, kar je 14ur. Takrat se rele razklene. Potem se rutina ponovi 137868 krat (10 ur) in rele ponovno sklene kontakte. Vse lepo in prav, a kaj ko zadeva ni točna. Pri testiranju 14 urne zakasnitve je odstopanja za priblužno +1 uro. Kako bi lahko najhitreje in najlažje rešil problem? Vezje imam že narejeno, tako da bi prosil za programsko rešitev.

Prilagam tudi program:
Koda:

‘$sim
$regfile = "2343def.dat"
$crystal = 1000000

Config Pinb.0 = Output

Dim T As Long , I As Bit
T = 0
I = 1

Config Timer0 = Timer , Prescale = 1024
On Ovf0 Tim0_isr

Enable Timer0
Enable Interrupts

Portb.0 = 1

Do
   If I = 1 Then                                            '14 ur
   If T >= 193015 Then                                      'en T je enak zakasnitvi 0,26112s
   Portb.0 = 0
   T = 0
   I = 0
   End If
   End If

   If I = 0 Then                                            ' 10 ur
   If T >= 137868 Then
   Portb.0 = 1
   T = 0
   I = 1
   End If
   End If
Loop


Tim0_isr:
   Incr T
Return

_________________
It's electric!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Highlag
Član
Član



Pridružen-a: Pet 23 Jan 2004 20:42
Prispevkov: 4034
Aktiv.: 17.03
Kraj: Črnuče

PrispevekObjavljeno: Tor Nov 28, 2006 6:51 pm    Naslov sporočila:   Odgovori s citatom

Najprej točno izmeri koliko imaš napake recimo na uro in potem to napako upoštevaj v programu. Seveda moraš imeti pogoje pod katerimi kontrolerček deluje kolikor toliko stabilne. Če niha temperatura bo nihala tudi frekvenca osciliranja.

Mikrochip ima v svojih mikrokontrolerjih en register, kjer se da pri peki frekvenca skalibrirati. Mogoče je pri Atmelu podobno?

_________________
If at first you don't succeed, destroy all evidence that you tried.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
trobida
Član
Član



Pridružen-a: Ned 09 Jul 2006 12:13
Prispevkov: 1250
Aktiv.: 5.42
Kraj: Savinjska dolina-okolica Gornjega Grada

PrispevekObjavljeno: Tor Nov 28, 2006 7:37 pm    Naslov sporočila:   Odgovori s citatom

Tako mimogrede vprašam; Domenius, v katerem programu pa si napisal ta program? Je to v navadnem Bascom AVR, ali si ga mogoče napisal v kakšnem drugem Confused ?
_________________
Lp

Tomaž, S57KO
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
GJ
Član
Član



Pridružen-a: Čet 02 Nov 2006 15:51
Prispevkov: 946
Aktiv.: 4.17
Kraj: Ljubljana

PrispevekObjavljeno: Tor Nov 28, 2006 9:40 pm    Naslov sporočila:   Odgovori s citatom

Vse prav...
Kako pa kličeš prekinitev???
A zastavic ni potrebo pobrisat???

RC oscilator je ponavadi skalibriran na 1% pri sobni temperturi, poglej datasheet.
Če imaš vezje napajano preko omrežnega transformatorja ti priporočam 'tipanje' omrežne frekvence napetosti oziroma ZCS (Zero Corssing Sense) detektor kot referenco.

Aha, potrebuješ le en dovolj velik upor in en input pin. Laughing

LP GJ
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Domenius
Član
Član



Pridružen-a: Sre 30 Nov 2005 14:15
Prispevkov: 1188
Aktiv.: 5.01
Kraj: Medvode

PrispevekObjavljeno: Tor Nov 28, 2006 10:31 pm    Naslov sporočila:   Odgovori s citatom

Highlag je napisal/a:

Mikrochip ima v svojih mikrokontrolerjih en register, kjer se da pri peki frekvenca skalibrirati. Mogoče je pri Atmelu podobno?

Tudi Atmel ga ima, a na te stvari se na žalost ne spoznam.
trobida je napisal/a:

Tako mimogrede vprašam; Domenius, v katerem programu pa si napisal ta program? Je to v navadnem Bascom AVR, ali si ga mogoče napisal v kakšnem drugem Confused ?

Ja, sem pozabil napisati da programiram v BascomAVRju.
GJ je napisal/a:

Kako pa kličeš prekinitev???
A zastavic ni potrebo pobrisat???

Ne, to vse stori BascomAVR.
GJ je napisal/a:

Če imaš vezje napajano preko omrežnega transformatorja ti priporočam 'tipanje' omrežne frekvence napetosti oziroma ZCS (Zero Corssing Sense) detektor kot referenco.

Če je le možno ne bi rad delal novega vezja ali pa lotal po zraku.

V datasheetu RC oscilator ni opisan, omenjeno je le da deluje z nominalno frekvenco 1MHz.

_________________
It's electric!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
VolkD
Član
Član



Pridružen-a: Pet 24 Sep 2004 21:58
Prispevkov: 14228
Aktiv.: 60.06
Kraj: Divača (Kačiče)

PrispevekObjavljeno: Sre Nov 29, 2006 12:04 am    Naslov sporočila:   Odgovori s citatom

Podoben problem sem reševal z CodeVisionAVR. Mikrokontroler je ATTiny26. Natančnost pa.. jah.. po 11-ih urah je šla stvar za 27 sec prehitro. No.. naslednji dan, ko je bilo malo več mrazu, je šla pa skoraj za minuto prepočasi.
_________________
Dokler bodo ljudje mislili, da živali ne čutijo, bodo živali čutile, da ljudje ne mislijo.
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Sokrat
Član
Član



Pridružen-a: Čet 25 Avg 2005 11:00
Prispevkov: 5584
Aktiv.: 23.57

PrispevekObjavljeno: Sre Nov 29, 2006 12:26 am    Naslov sporočila:   Odgovori s citatom

Darko, to je super-natancno ... vse znotraj specifikacije proizvajalca Very Happy Tezava se pojavi takrat, ko je potrebno meriti zelo kratke intervale, kjer se parcialna napak (ki se tekom dneva sicer kompenzira sama s sabo) bistveno vecja. UART je tipicen primer, kjer ti nic ne pomaga dejstvo, da se naprava segreje cez dan in ohladi ponoci - v povprecju je sicer OK, a v praksi kaksen SW UART ne deluje najbolj stabilno.

OT: to me spominja na tisti vic o statistiki: eno roko vtaknes v vrelo vodo, drugo pa v tekoci dusik in ti je v povprecju fino Laughing

_________________
Ka ti bo pa torba ce si kupu kolo ?
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
Domenius
Član
Član



Pridružen-a: Sre 30 Nov 2005 14:15
Prispevkov: 1188
Aktiv.: 5.01
Kraj: Medvode

PrispevekObjavljeno: Sre Nov 29, 2006 12:49 am    Naslov sporočila:   Odgovori s citatom

Darko, če bi bilo pri meni tako bi bil zadovoljen. Kolega bo timer namreč uporabil za vklop/izklop luči pri akvariju, kjer se minuta gol/dol ne pozna. Mogoče bo treba vsake par tednov stvar resetirati, ampak nič za to. Kako si pa rešil problem? Kar z meritvami?
_________________
It's electric!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Bozo
Član
Član



Pridružen-a: Čet 08 Jan 2004 9:21
Prispevkov: 660
Aktiv.: 2.79
Kraj: Lendava, Trimlini

PrispevekObjavljeno: Sre Nov 29, 2006 2:21 am    Naslov sporočila:   Odgovori s citatom

Če je za preklop luči v akvariju, polj kupi preklopno uro, digitalno, dobiš jo za kaka dva tisočaka v Šparu.

LP
Božo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
sulc
Član
Član



Pridružen-a: Pet 28 Jan 2005 20:34
Prispevkov: 473
Aktiv.: 2.00

PrispevekObjavljeno: Sre Nov 29, 2006 2:24 am    Naslov sporočila:   Odgovori s citatom

Razen, če si res želiš narediti svoj izdelek, ti priporočam, da uporabiš timer (tisti za vtakniti v vtičnico) iz Bau**a. Kak mesec nazaj sem dal zanj pod 1500 sit, uporabljam ga pa ravno za akvarijsko osvetlitev.
_________________
LP Aljaž
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
VolkD
Član
Član



Pridružen-a: Pet 24 Sep 2004 21:58
Prispevkov: 14228
Aktiv.: 60.06
Kraj: Divača (Kačiče)

PrispevekObjavljeno: Sre Nov 29, 2006 10:28 am    Naslov sporočila:   Odgovori s citatom

Sokrat je napisal/a:
Tezava se pojavi takrat, ko je potrebno meriti zelo kratke intervale, kjer se parcialna napak (ki se tekom dneva sicer kompenzira sama s sabo) bistveno vecja.


Stvar sem naredil kot timer za osvetljevanje tiskanih vezij. Ker pri časih do 10 min nisem uspel opaziti razlike med uro in mojim timerjem sem ga pač pustil čez noč, da sploh ugotovim kolikšna je razlika.



stevec1_2.jpg
 Opis:
 Velikost datoteke:  2.5 MB
 Pogledana:  3 krat

stevec1_2.jpg



_________________
Dokler bodo ljudje mislili, da živali ne čutijo, bodo živali čutile, da ljudje ne mislijo.
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Domenius
Član
Član



Pridružen-a: Sre 30 Nov 2005 14:15
Prispevkov: 1188
Aktiv.: 5.01
Kraj: Medvode

PrispevekObjavljeno: Sre Nov 29, 2006 10:34 am    Naslov sporočila:   Odgovori s citatom

Bozo je napisal/a:
Če je za preklop luči v akvariju, polj kupi preklopno uro, digitalno, dobiš jo za kaka dva tisočaka v Šparu.

LP
Božo

To sem tudi jaz kolegu svetoval, pa pravi da ne bi imel takšne.

_________________
It's electric!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
twom
Član
Član



Pridružen-a: Ned 26 Okt 2003 0:37
Prispevkov: 986
Aktiv.: 4.16
Kraj: Ljubljana

PrispevekObjavljeno: Sre Nov 29, 2006 9:39 pm    Naslov sporočila:   Odgovori s citatom

Če imaš prost INT pin (interupt) gor priklopi 32768 Hz kvarc, ki je izredno majhen in poceni in še dobi se v vsaki trgovini.

Z njim je narejena marsikatera ura (tudi quarc ročne ure).
Je zelo stabilen, za velko natančnost pa rabiš še nastavljiv kondenzator.


Lp,
Peter
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Elektronika Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
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: 493 dni


Powered by phpBB © 2001, 2005 phpBB Group