Kazalo po Svet elektronike forumu Svet elektronike
Revija za prave elektronike
 
AlbumAlbum   Pomoč pogostih vprašanjPomoč pogostih vprašanj   IščiIšči   Seznam članovSeznam članov   Skupine uporabnikovSkupine uporabnikov   Registriraj seRegistriraj se 
 Tvoj profilTvoj profil   Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil   PrijavaPrijava 

intervalno vklapljanje z AT892051

 
Objavi novo temo   Odgovori na to temo    Kazalo po Svet elektronike forumu -> Digitalna elektronika
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
ata
Profesionalec


Pridružen/-a: Pon Apr 2004 9:26
Prispevkov: 110

PrispevekObjavljeno: Tor Avg 17, 2010 7:22 pm    Naslov sporočila: intervalno vklapljanje z AT892051 Odgovori s citatom

Prosim za pomoč.kako napisati program da recimo ventilator ni vklopljen 1uro nato deluje 10 minut in spet ni vklopljen in se cikel ponavlja
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
Jure
Urednik


Pridružen/-a: Pon Jan 2004 12:51
Prispevkov: 2132
Kraj: Ljubljana

PrispevekObjavljeno: Tor Avg 17, 2010 10:53 pm    Naslov sporočila: Odgovori s citatom

Jaz bi se tega lotil s programom za Timer. V njem imaš rutino za generiranje 1 sekunde. S tem lahko potem delaš kar hočeš npr: ko timer prešteje 10 minut naredi to in to...

Lp
Jure
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
reber
Profesionalec


Pridružen/-a: Pon Jan 2004 9:40
Prispevkov: 187
Kraj: Bled

PrispevekObjavljeno: Sre Avg 18, 2010 8:39 am    Naslov sporočila: Odgovori s citatom

Ampak s hex datoteko si najbrž ne moremo kaj dosti pomagati Rolling Eyes ali pač? bi lahko pripel bolj "human friendly" datoteko Wink
_________________
Kontakt izključno na
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
ata
Profesionalec


Pridružen/-a: Pon Apr 2004 9:26
Prispevkov: 110

PrispevekObjavljeno: Sre Avg 18, 2010 8:51 am    Naslov sporočila: Odgovori s citatom

Jure je napisal/a:
Jaz bi se tega lotil s programom za Timer. V njem imaš rutino za generiranje 1 sekunde. S tem lahko potem delaš kar hočeš npr: ko timer prešteje 10 minut naredi to in to...

Lp
Jure

Jaz si res ne morem pomagati z hex datoteko .Z wait ukazi znam z timerjem 0 pa ne.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
Jure
Urednik


Pridružen/-a: Pon Jan 2004 12:51
Prispevkov: 2132
Kraj: Ljubljana

PrispevekObjavljeno: Sre Avg 18, 2010 11:12 am    Naslov sporočila: Odgovori s citatom

Ups.... moja napaka... tukaj je del kode, kjer je prikazana prekinitvena rutina:

Koda:
$regfile = "2313DEF.DAT"
Dim Clock As Byte , Stevec As Byte , Segmenti As Byte , X As Byte , P15 As Bit , P16 As Bit , P17 As Bit
Dim Clock12 As Word , Stevec1 As Bit , Stevec2 As Byte , Mux As Byte , Prikaz As Bit
Dim T1 As Bit , T2 As Bit , T3 As Bit
Dim Clock1 As Byte , Mod1 As Byte , Pisk As Bit , Vec As Bit , Odsteva As Bit
Dim Izracun As Bit , Pomozna_v As Byte , Enice As Byte , Desetice As Byte , Minute As Word , Ure As Word

' SEGMENTI SO NA Pb.1 DO Pb.7
' Pb.6 utripa glede na to, v kaksnem rezimu delovanja je Timer
' Mod=1=>sek =>Pb.6 hitro utripa, Mod=2=>min =>Pb.6 pocasi utripa,
' Mod=3=>ure =>Pb.6 gori
Config Timer0 = Timer , Prescale = 1
'To get/set the value from the timer access the timer/counter register
'lets reset it to 0
'Tcnt0 = 0 ' or
'Timer0 = 0

'Config Timer0 = Timer , Gate = Internal , Mode = 2
Config Debounce = 10
'Gate = Internal    notranje prozen
'Mode = 2           8 bitni s avtomatskim vnosom
On Ovf0 Tim0_isr
'you may also use TIMER0 for OVF0, it is the same
Config Timer0 = Timer , Prescale = 1
Enable Timer0                                               ' enable the timer interrupt
Enable Interrupts                                           'allow interrupts to occur

Portd = &B01001111
Ddrd = &B111110000

Portb = &B00000000
Ddrb = &B11111111

If Pind.3 = 0 Then
 Stevec = 0
 Writeeeprom Stevec , 0
End If

Readeeprom Stevec2 , 0

'zacetne nastavitve

Clock = 0
'Stevec = 0     nadomesceno z vrednostjo v EEPROM-u
Stevec = Stevec2
T1 = Pind.0                                                 ' UP tipka
T2 = Pind.2                                                 ' DOWN tipka
T3 = Pind.1                                                 ' MODE tipka
'PD.0 in PD.1 skupaj  ' START tipka
P16 = 1
P15 = 0
Mod1 = 2
Portd.6 = 1
Pisk = 0
Reset Segmenti
Minute = 0
Clock12 = 0
Ure = 0
Vec = 0                                                     'pomeni, da je vec, kot 1 min
Odsteva = 1                                                 'pomeni, da se ne odsteva - samo nastavljamo cas
'odsteva je zato, da displej gori, kadar cas nastavljamo

'------------------------------------------------------------------
'Glavni program

Do

T3 Alias Pind.1
T1 Alias Pind.0
T2 Alias Pind.2


If Mod1 = 1 Then
   Portb.6 = P15
End If                                                      ' signalizacija SEKUND, hitro utripanje na Pb.6

If Mod1 = 2 Then
   Portb.6 = P16                                            ' signalizacija MINUT, pocasno utripanje na Pb.6
End If

If Mod1 = 3 Then
   Portb.6 = 0                                              'signalizacija UR, Pb.6 gori stalno
End If

   If Mod1 > 1 And Stevec > 2 And Odsteva = 0 Then
      Vec = 0                                               'ne prikazuj LED
      Else
      Vec = 1                                               'prikazuj LED
   End If


Gosub Tipke
Gosub Izracun1

Loop
End
'------------------------------------------------------------------
'Prekinitvena rutine

 Stevec = 0
 Writeeeprom Stevec , 0

'------------------------------------------------------------------

Tim0_isr:
Incr Clock12
If Clock12 > 46874 Then
   Clock12 = 0
   P16 = Not P16                                            'sekundni impulz
   P17 = Not P17                                            'pomozna indikacija sekund
End If

Incr Clock
If Clock > 190 Then                                         'vsakih 5 mS je sprememba MUX-a
   Clock = 0
   Incr Mux
   If Mux > 3 Then
      Mux = 0
   End If
   Prikaz = 1
   Incr Clock1
   If Clock1 > 23 Then
      Clock1 = 0
      P15 = Not P15                                         ' hitro utripanje LED-ice 150mS
   End If
End If
Return
'------------------------------------------------------------------


Če bi potreboval še kaj piši.

Lp
Jure
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
ata
Profesionalec


Pridružen/-a: Pon Apr 2004 9:26
Prispevkov: 110

PrispevekObjavljeno: Sre Avg 18, 2010 1:21 pm    Naslov sporočila: Odgovori s citatom

Pogledal forum -Vaš post, sprogramiral zeljeno in uspelo mi je.Program deluje tako: če je kontrola napetosti aparature v redu pri določeni zahtevi(nizki zunanji temp.) vklaplja in izklaplja porabnika (intervalno-deluje-miruje)
Drugi del skrbi za zakasnitev vklopa motorja in glede na temperaturo določenega procesa vklaplja in izklaplja določene funkcije....TČ
Jure lepa hvala za pomoč ravno tako Rebru.
ps:rešil dokončno problem ds senzorjev,vse deluje brezhibno(štirje na istem vodilu v parazitski vezavi.)
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
Jure
Urednik


Pridružen/-a: Pon Jan 2004 12:51
Prispevkov: 2132
Kraj: Ljubljana

PrispevekObjavljeno: Sre Avg 18, 2010 8:20 pm    Naslov sporočila: Odgovori s citatom

Ata,

super, to me veseli! Zdaj bi lahko vse skupaj spravil v članek, da ga lahko preberejo vsi tisti, ki jih zanima ogrevanje.

Lp
Jure
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
ata
Profesionalec


Pridružen/-a: Pon Apr 2004 9:26
Prispevkov: 110

PrispevekObjavljeno: Čet Avg 19, 2010 8:36 am    Naslov sporočila: Odgovori s citatom

Jure je napisal/a:
Ata,

super, to me veseli! Zdaj bi lahko vse skupaj spravil v članek, da ga lahko preberejo vsi tisti, ki jih zanima ogrevanje.

Lp
Jure

Če bo tč. delovala tako kot mora(nizkotemp del ze deluje dve leti-ogrevna voda do50st.c) sem pripravljen napisati članek ki bi bil v pomoč samograditeljem( energetika) vendar ne v podrobnostih,ki jih tudi jaz nisem dobil na nobenem forumu namreč obstaja velika moznost zlorabe znanja in izkušenj.Te naprave so strokovno zelo zahtevne in tudi jaz sem vlozil veliko ur in znanja v projekt.Kako tč deluje in kako je sestavljena sem se naučil pri proučevanju raznih shem in opisov .ki jih pa najdeš veliko na spletu-domačem in tujem.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
vilko
Profesionalec


Pridružen/-a: Pon Jan 2004 11:54
Prispevkov: 807
Kraj: Ljubljana

PrispevekObjavljeno: Sob Avg 21, 2010 7:33 am    Naslov sporočila: Re: intervalno vklapljanje z AT892051 Odgovori s citatom

ata je napisal/a:
Prosim za pomoč.kako napisati program da recimo ventilator ni vklopljen 1uro nato deluje 10 minut in spet ni vklopljen in se cikel ponavlja


Koda:


' Začnem zanko:
do
  ' Čakam eno uro:
  for i = 1 to 3600
     wait 1   ' čakam 1 sekundo
  next
  ' Vklopim ventilator
  reset  pin, ki je preko tranzistorja vezan na rele
  ' Čakam 10 minut:
  for i = 1 to 600
     wait 1
  next
  ' Izklopim ventilator
  set   pin, ki je preko tranzistorja vezan na rele 

  ' in nazaj v zanko:
Loop

_________________
Sliši se paradoksalno, a je vendarle res:
Nekateri ljudje imajo vedno vse prav. No, včasih.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
ata
Profesionalec


Pridružen/-a: Pon Apr 2004 9:26
Prispevkov: 110

PrispevekObjavljeno: Sob Avg 21, 2010 2:39 pm    Naslov sporočila: Re: intervalno vklapljanje z AT892051 Odgovori s citatom

Vilko hvala,še bolj enostavno kot sem jaz zakompliciral
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
ata
Profesionalec


Pridružen/-a: Pon Apr 2004 9:26
Prispevkov: 110

PrispevekObjavljeno: Pon Avg 23, 2010 10:13 am    Naslov sporočila: Re: intervalno vklapljanje z AT892051 Odgovori s citatom

Hvala vsem za pomoč. Prilagam del programa za intervalno regulacijo npr. vent.
Koda:


Do

Senzor
Temperature
Locate 1 , 1 : Lcd "TEM ZUNAJ  "
Zrak = T4
Lcd T
Lcd Chr(46)
Lcd T1

If T > 28 Then
P3.7 = 1
End If
If P3.1 = 1 Then
P3.7 = 1
End If
If T < 28 Then

End If
If P3.1 = 0 Then

P3.7 = 0

End If
 For I = 1 To 8                                               'sekunde po zelji
Wait 1
Next

 P3.7 = 1
  For I = 1 To 40                                             'sekunde po zelji
Wait 1
Next

 P3.7 = 0
If P3.1 = 1 Then                                              'stikalo pogoj za vklop
P3.7 = 1
End If


Loop
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo    Kazalo po Svet elektronike forumu -> Digitalna elektronika Časovni pas GMT + 1 ura, srednjeevropski - zimski č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
You cannot attach files in this forum
You cannot download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group