PIC kontroler pauza

Rasprava o PIC mikrokontrolerima, PIC projekti i drugo vezano za PIC-eve...

Moderators: pedja089, stojke369, [eDo], trax

Post Reply
gagi011bg
Penjem se :)
Penjem se :)
Posts: 89
Joined: 18-03-2012, 02:04

PIC kontroler pauza

Post by gagi011bg »

Pozdrav svima :)

Potrebno mi je da palim i gasim led diode u vremenskom intervalu od 5 MINUTA.

Pa sam mislio da to jednostavno rešim u picBasic-u, sa PIC-om 16F628, napisao sam program u Pic basic-u,izmedju paljenja i gašenja led dioda.

U principu sam uradio ovako:

Code: Select all

@ DEVICE pic16f628a,mclr_on,INTRC_OSC_NOCLKOUT

SYMBOL LED_1=PORTB.0
SYMBOL LED_2=PORTB.1
SYMBOL LED_3=PORTB.2
SYMBOL LED_4=PORTB.3
SYMBOL LED_5=PORTB.4

start:
high led_1
pause (60000*5)

low led_1:high led_2
pause (60000*5)
..... i tako redom do LED_5
goto start 
I to radi,za sada :D,

Ali me interesuje vaše mišljenje da li će taj interval od 5 MIN,biti jednak, bez nekih velikih pomeranja pauze od 5 min, na primer,ako tako radi duže vreme 24 sata... i duži preiod,

Da ne dodje do pomeranja dužine razmaka,jer mi je potrebno BAŠ da uvek bude razmak 5 min.
gagi011bg
Penjem se :)
Penjem se :)
Posts: 89
Joined: 18-03-2012, 02:04

Re: PIC kontroler pauza

Post by gagi011bg »

Izvinjavam se prvi kod je greška,ovo je ispravka:

Code: Select all

@ DEVICE pic16f628a,mclr_on,INTRC_OSC_NOCLKOUT

SYMBOL LED_1=PORTB.0
SYMBOL LED_2=PORTB.1
SYMBOL LED_3=PORTB.2
SYMBOL LED_4=PORTB.3
SYMBOL LED_5=PORTB.4
i var byte

start:
high led_1
for i=0 to 5
pause 60000
next i


low led_1:high led_2
for i=0 to 5
pause 60000
next i
...... I TAKO REDOM DO LED_5
goto start 
pro37
Pocetnik na forumu
Pocetnik na forumu
Posts: 27
Joined: 26-11-2013, 17:41
Location: BiH

Re: PIC kontroler pauza

Post by pro37 »

Hoće, biće uvijek isti delay.

Pogledaj link, ako želiš saznati više o mjerenju vremena sa MCU-om:
http://www.pcbheaven.com/picpages/Instr ... le_Delays/
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7873
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: PIC kontroler pauza

Post by pedja089 »

Bice uvek ista pauza. Ali to nije tacno 5min, to je priblizno 5min. Tacno je nemoguce izvesti. Najpribliznije sto je moguce izvesti je uz pomoc atomskih satova, ili da se pic sinhronizuje sa nekim od njih.

Ako pic radi sam za sebe sa svojim kristalom, imaces gresku par stotina uS ili par mS, na tih 5min.
Sto znaci ako pustis pic da radi u ponoc, on ce upaliti u 00:05, pa sledecu 00:10 itd. Ali posle nekoliko nedelja, meseci takog rade upalice u 00:02 pa sledecu 00:07 itd.
Posle godinu mozda se razidje i po sat dva...
gagi011bg
Penjem se :)
Penjem se :)
Posts: 89
Joined: 18-03-2012, 02:04

Re: PIC kontroler pauza

Post by gagi011bg »

Hvala, pro37 i pedja089 na brzom odgovoru :)

Znam da je to mana PIC-a,nije savrešen kao ni sve,predpostavio sam da će biti grešaka u nekom većem vremenskom intervalu,ako se ostavi da stalno radi.

U principu pomeranja,koja je pedja089 govorio,prave problem, najbitnije mi je da bude vremenski intreval,od 5min (sad neku sekundu gore dole,ne predstavlja problem),tj, da bude ravnomeran interval paljenja i gašenja

Da na primer, posle rada nekog dužeg vremena,ne dodje do pomeranja intervala, da bude 5min upaljena neka led dioda,a razmak da se gašenje da se pomeri na 6 min., i obrunoto, :?

Najvažnije je da ti inrevali budu ravnomerni,ako je moguće.

I dal je možda pametnije,da stavim kristal,umesto da koristim interni oscilator pic-a,
ili to ne pravi neku razliku?

Čak sam razmišljao,dal je moguće nešto izvesti sa ds1307,ili nekim sličnim (Real Time Clock-om),u kombinaciji sa PIC-om,da pravi korekcije PIC-u :roll:
User avatar
zigzag9
Napredujem
Napredujem
Posts: 193
Joined: 06-06-2011, 23:35
Location: HR

Re: PIC kontroler pauza

Post by zigzag9 »

Najbolji izbor bi bio GPS modul, budući svi integrirani RTC imaju nekakav drift kojeg je nemoguće izbjeći.
Po eBayu ima modula po 10-15$, i ako se radi o samo jednom uređaju tada se isplati nabavka.

Pošto DS1307 ima relativno izražen drift, možeš probati DS3232 koji je precizniji zbog ugrađene temperaturne kompenzacije, i netreba ti vanjski kristal.
gagi011bg
Penjem se :)
Penjem se :)
Posts: 89
Joined: 18-03-2012, 02:04

Re: PIC kontroler pauza

Post by gagi011bg »

Upravo tako, radi se o jednom komadu,tako da mi je GPS modul ne ispalti.

Jedino da probam sa DS3232,koji si mi predložio,meni u principu ne treba da mi pokazuje,vreme,datum... i te stvari, kad je da povezem sa nekim Real Time Clock.

Samo da mi vrši korekciju pauze izmedju paljenja i gašenja,tj. da odražva jednak interval što je više moguće.

Nisam to do sad probao,pa da vidim ako neko ima ideju kako bi to izveo sa Real Time Clock-om.

U prinipu,bi to trebalo umesto pauze,koju sam postavio u programu,umesto nje,da se čita vremenski razmak paljenja i gašenja,koji mu se postavi,i vrši korekciju paljenja, uporedjujući ga sa Real Time Clock-om?
User avatar
zigzag9
Napredujem
Napredujem
Posts: 193
Joined: 06-06-2011, 23:35
Location: HR

Re: PIC kontroler pauza

Post by zigzag9 »

Pošto je to očito za igranku, ne isplati koristiti MCU. NE555, par dekadskih brojila i jedan T-bistabil će biti dovoljni..
gagi011bg
Penjem se :)
Penjem se :)
Posts: 89
Joined: 18-03-2012, 02:04

Re: PIC kontroler pauza

Post by gagi011bg »

Nije za igranku,
Preciznije mi je, i lakše sa PIC-om, nego sa 555,brojila.... i ostalo komplikovati.

Probaću i sa nekim Ral Time Clock-om,pa da vidim kako će biti.
Dzenny_assembly
Napredujem
Napredujem
Posts: 118
Joined: 11-09-2014, 04:03

Re: PIC kontroler pauza

Post by Dzenny_assembly »

gagi011bg wrote:Znam da je to mana PIC-a,nije savrešen kao ni sve...
Nerazumiješ, PIC je kontroler kao i svaki drugi zadužen za izvršenje aritmetičko logičkih funkcija. Od njega ne zavisi vremenska tačnost nego od preciznosti kvarc kristala kojeg koristiš. S obzirom da ne postoji savršen oscilator normalno je da češ nakon nekog vremena imati odstupanja...
gagi011bg wrote:U principu pomeranja,koja je pedja089 govorio,prave problem, najbitnije mi je da bude vremenski intreval,od 5min (sad neku sekundu gore dole,ne predstavlja problem),tj, da bude ravnomeran interval paljenja i gašenja
Ne brini, pauze če biti 5 min. bez obzira koliko dugo sklop bude
uključen sat, dan, godinu itd. pauze če uvijek biti tačno 5 min.

Kolege su ti htjele reči da je nemoguče sinhronizovati rad
sa nekim satom bez fizičke veze jer je svaki oscilator priča za sebe.

To češ najjednostavnije shvatiti ako imaš kuči dva zidna sata pa ih podesi da budu tačni u sekundu.
Vidjet češ da če se nakon nekog vremena raziči, jedan če biti brži drugi sporiji...

Nevezano za temu:
Danas postoje atomski satovi koji imaju jako visoku i stabilnu frekvenciju i koriste se za najtačnije svijecke satove. Ali ni oni nisu savršeni. U Evropi postoji nekoliko postaja sa atomskom sinhronizacijom
koje emituju amplitudno modulisani radio signal poznat kao DCF77 kojeg mogu primati svi satovi koji na sebi imaju oznaku Radio Controlled. Svake minute tj. prelaskom sekundi sa 59 na 00 se šalju podaci o vremenu datumu danu u sedmici itd. Za primanje tog signala postoje i specijalizovana IC kola pa se mogu
izraditi i satovi po želji sa atomskom sinhronizacijom. U neznam kojem Njemačkom gradu se emituje taj signal snagom od 50kw koji ima poluprečnik od oko 1500 kilometara pa tako da zahvata i naše područje.
Pozdrav :)
gagi011bg
Penjem se :)
Penjem se :)
Posts: 89
Joined: 18-03-2012, 02:04

Re: PIC kontroler pauza

Post by gagi011bg »

Hvala Dzenny_assembly, i ostalima na trudu i objašnjenju :D

Predpostavio sam da bi došlo do ostupanja u sinhronizaciji,kao što je i pedja089 govorio,ako bi pic pokušao da sinhronizujem sa nekim uredjajem,npr. nekim satom... ili slično, da bi vremenom došlo do mimoilaženja u radu,što mi trenutno nije potrebno.

Interesovala su me vaša iskustva o razmaku paljenja i gašnja,tj.pauze,da li ostaju ista,tokom dužeg vremena korišćenja,i principu, interval uvek ostaje isiti,što mi je potrebno :wink:

Pozdrav svima,i hvala još jednom :D !
User avatar
jadranko
Napredujem
Napredujem
Posts: 120
Joined: 29-01-2012, 01:29
Location: zagreb

Re: PIC kontroler pauza

Post by jadranko »

Code: Select all

@ pic16f628a

SYMBOL LED_1=PORTB.0


start:
high led_1
pause 1
high led_1
pause 1
high led_1
pause 1
high led_1
pause 4
goto start

jel može ovo raditi na ovaj način da blinka 3x po sekundu pa 4sekunde pauza

da ne otvaram novu temu kad je slična tema i pitanje
radilo bi se o nekom picu..
Post Reply