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

Pridružen-a: Pet 08 Okt 2004 0:55 Prispevkov: 4974 Aktiv.: 21.01 Kraj: LJ
|
Objavljeno: Sob Apr 01, 2006 11:31 pm Naslov sporočila: Mehak start asihronskega motorja |
|
|
Mene pa zanima, če je lahko input (krmilna LED) na MOC3021 stalno vključena ali jo moramo vključevat samo za kakšno mS, da trenutno sproži triak, ki potem sam drži do konca sinusa
Poizkusil sem jo stalno vezat na 5v preko 680 upora in deluje ... res pa nisem dolgo pustil tako.
Sprašujem zato, ker moram drugače še dopolnit program PICa. Sedaj mi jo program vklopi na željeni točki sinusa in drži do nule.
|
|
Nazaj na vrh |
|
 |
Silvo Moderator


 
Pridružen-a: Pon 24 Feb 2003 17:09 Prispevkov: 14672 Aktiv.: 61.98 Kraj: Koroška-okolica Dravograda
|
Objavljeno: Ned Apr 02, 2006 7:59 am Naslov sporočila: |
|
|
Za omenjenega ne vem, a po moje je dovolj impulz. Triac itak potem sam "drži" do prehoda skozi "0" (lastnost triaca)
_________________ lp
Silvo |
|
Nazaj na vrh |
|
 |
reber Član


Pridružen-a: Pon 26 Maj 2003 12:20 Prispevkov: 2279 Aktiv.: 9.63 Kraj: Bled
|
Objavljeno: Ned Apr 02, 2006 8:18 am Naslov sporočila: |
|
|
LED lahko krmiliš po želji, le toka naj ne bi presegel. No, tudi tok lahko presežeš za kratek čas. Vse je v data sheetu. Jaz imam precej aplikacij narejenih z omenjenim OPTO pa je LED stalno vključena. Uporabljam večinoma 3063 ki je 5mA verzija, zaradi porabe.
|
|
Nazaj na vrh |
|
 |
Iztok Član

Pridružen-a: Pet 08 Okt 2004 0:55 Prispevkov: 4974 Aktiv.: 21.01 Kraj: LJ
|
Objavljeno: Ned Apr 02, 2006 2:05 pm Naslov sporočila: |
|
|
@Silvo, program PICa sem napisal tako, da mi na prehodu sinusa preko nule resetira izhod na optokopler in starta TMR0. Po preteku določenega časa na TMR0 pa spet vključi v željeni točki sinusa. Če bi moral dajati samo impulze na G triaka pa moram v program dodati še kakšno zanko ali časovno zakasnitev za impulz po sprožitvi T0IF ... ampak če ni potrebno bom to pustil tako kot je, ker zadeva deluje točno tako kot sem želel.
@reber, MOC3063 za sinusno regulacijo ni primeren, ker ima Zero-Cross ... tako vsaj piše v datasheetu.
Tudi jaz bi uporabil 3023, če bi ga le dobil. Mi pa tudi 3021 na dobrih 7mA normalno deluje, čeprav po datasheetu potrebuje za proženje LED 15mA. Bom pa to v končni aplikaciji vseeno povečal na vsaj 12mA.
|
|
Nazaj na vrh |
|
 |
Silvo Moderator


 
Pridružen-a: Pon 24 Feb 2003 17:09 Prispevkov: 14672 Aktiv.: 61.98 Kraj: Koroška-okolica Dravograda
|
Objavljeno: Ned Apr 02, 2006 2:20 pm Naslov sporočila: |
|
|
Iztok ne rabiš dosti komplicirat. Da triac "prime" je dovolj impulz par S
Po tem, ko ga vključiš napiši vmes deset NOP pa ga izključi. Če mi napišeš kateri triac boš uporabil, lahko pogledam v katalog kaka je min. dolžina impulza.
_________________ lp
Silvo |
|
Nazaj na vrh |
|
 |
reber Član


Pridružen-a: Pon 26 Maj 2003 12:20 Prispevkov: 2279 Aktiv.: 9.63 Kraj: Bled
|
Objavljeno: Ned Apr 02, 2006 3:43 pm Naslov sporočila: |
|
|
Iztok je napisal/a: |
@reber, MOC3063 za sinusno regulacijo ni primeren, ker ima Zero-Cross ... tako vsaj piše v datasheetu.
|
seveda, imaš prav, naslov teme je 3061 tako da ...
Drugače pa 3023 oziroma serija od 3021 do 3023 . Vedno jih pa ni na zalogi, ponavadi takrat, ko jih rabiš. Sicer pa, za impulzno poganjanje je skoraj vseeno, zaradi porabe je bolj važno takrat, kadar je LED stalno vključena, če pa je impulzno je pa tudi 15mA verzija v redu, glede napajanja pa tudi ni panike, daš malce večji kondenzator v napajanju pa je.
|
|
Nazaj na vrh |
|
 |
Iztok Član

Pridružen-a: Pet 08 Okt 2004 0:55 Prispevkov: 4974 Aktiv.: 21.01 Kraj: LJ
|
Objavljeno: Ned Apr 02, 2006 3:52 pm Naslov sporočila: |
|
|
Silvo hvala za ponudbo, to zakasnitev z nekaj NOPi poznam. Ampak če naredim to, bom moral pri trajnem 100% vklopu zelo točno "loviti" začetek sinusa. Če pa po soft-startu za stalno 100% delovanje samo še trajno vklopim RB4 (prav tako RB5) mi vsi ti problemi odpadejo.
Pripenjam še načrt moje zamisli v katerem so vidni tudi uporabljeni elementi.
LP
Opis: |
|
Velikost datoteke: |
49.37 KB |
Pogledana: |
1560 krat |

|
|
|
Nazaj na vrh |
|
 |
Slemi Član

Pridružen-a: Pet 29 Okt 2004 13:29 Prispevkov: 386 Aktiv.: 1.63 Kraj: Hrastnik
|
Objavljeno: Ned Apr 02, 2006 4:08 pm Naslov sporočila: |
|
|
Za "soft-start" boš v vsakem peimeru rabil nekaj, kar ti bo dalo impulz ob prehodu skozi nič.
_________________ slemi.info - en
slemi.si - slo |
|
Nazaj na vrh |
|
 |
Silvo Moderator


 
Pridružen-a: Pon 24 Feb 2003 17:09 Prispevkov: 14672 Aktiv.: 61.98 Kraj: Koroška-okolica Dravograda
|
Objavljeno: Ned Apr 02, 2006 4:29 pm Naslov sporočila: |
|
|
Res Iztok zna biti problem, če bi impulz priletel takrat, ko na triacu še ne bi bila dovolj visoka napetost. Ampak izhod moraš tudi izključit. Še večji problem bo, če izhod ne bo izključen pravi čas. (moraš ga sicer izključiti še v isti periodi) Mogoče se zadeve lotiš takole. (tudi kode ne bo dosti) Ob prehodu skozi "0" prožiš prekinitev. V prekinitveni rutini obrišeš TMR0. Predelilnik nastaviš na 1/32 kar znese pri 4Mmz - (interni oscilator koliko vidim iz načrta) nekaj več kot 8ms. Na kar gledaš kako daleč je že prišel TMR0 (primerjaš ga z neko zeljeno vrednostjo) Torej pri 100% vključiš izhod takoj izključiš ga pa, ko se števec "obrne" Postavi T0IF. 0%= števec .255
_________________ lp
Silvo |
|
Nazaj na vrh |
|
 |
Iztok Član

Pridružen-a: Pet 08 Okt 2004 0:55 Prispevkov: 4974 Aktiv.: 21.01 Kraj: LJ
|
|
Nazaj na vrh |
|
 |
Silvo Moderator


 
Pridružen-a: Pon 24 Feb 2003 17:09 Prispevkov: 14672 Aktiv.: 61.98 Kraj: Koroška-okolica Dravograda
|
Objavljeno: Ned Apr 02, 2006 10:12 pm Naslov sporočila: |
|
|
problem bi bil, če bi bil impulz dolg le toliko da triac prime - recimo 10uS in bi bil prisoten takoj ob prihodu. Takrat triac ne bi prijel. Seveda, če je signal prisoten celo perjodo potem ni problema.
_________________ lp
Silvo |
|
Nazaj na vrh |
|
 |
Silvo Moderator


 
Pridružen-a: Pon 24 Feb 2003 17:09 Prispevkov: 14672 Aktiv.: 61.98 Kraj: Koroška-okolica Dravograda
|
Objavljeno: Pon Apr 03, 2006 10:04 pm Naslov sporočila: |
|
|
Iztok,
Na hitro sem spisal res preprost program za tvoj hardver. Zadevo sem sprobal na protobordu z žarnico ter triacom priključenim direkt na pic-a. Nisem imel triaca z zelo malim Ig-jem, tako da mi žarnice ni prižgalo do konca. Ne vem sicer a je bil vzrok to, ali pa mi je slabo "lovilo" prehod skozi "0". Če imaš narejen hardver, poskusi tale program. Aktven je le izhod. Vezje začne "delati" takoj pri vklopu. Če bo zadeva delala zadovoljivo, se mi zdi smiselno uporabiti kakega malčka (12F675) z ad vhodom na katerega bi priključil trimer za nastavitev startnega časa.
Opis: |
|
 Download |
Ime datoteke: |
mehki.zip |
Velikost datoteke: |
1.3 KB |
Downloadano: |
47 krat |
_________________ lp
Silvo |
|
Nazaj na vrh |
|
 |
Iztok Član

Pridružen-a: Pet 08 Okt 2004 0:55 Prispevkov: 4974 Aktiv.: 21.01 Kraj: LJ
|
Objavljeno: Pet Apr 07, 2006 12:23 am Naslov sporočila: |
|
|
Sem preizkusil Silvotov program in lepo deluje. Edinole Duty+ cikel pride le do 81,3%. Vseeno bi v večini aplikacij lahko po dosegu teh % že vklopil stalni - direkten vklop.
V vzrok pa se nisem preveč poglabljal, ker so Silvotovi programi napisani tako profi, da se kot začetnik težko znajdem v vseh profi bližnjicah in okrajšavah direktnih ukazov v registre.
Vzrok nedoseganja 100% verjetno tiči v razmerju med frekvencami TMR0, predelilniku in "osnovni" frekvenci 100Hz. Za rešitev tega bi moral TMR0 doseči overflow šele na vrednosti cca. 313 ...
Seveda so še druge rešitve.
Za začetek me je malo zmedlo že to, da je v programu definicija:
Koda: |
...
#define START PORTB,3 ;start
#define IZHOD PORTB,4 ;izhod za krmiljenje triaca
...
|
IZHOD je kasneje uporabljen (bsf/bcf), dočim START pa kasneje v programu ni nikjer več omenjen.
|
|
Nazaj na vrh |
|
 |
Sokrat Član


Pridružen-a: Čet 25 Avg 2005 11:00 Prispevkov: 5584 Aktiv.: 23.59
|
Objavljeno: Pet Apr 07, 2006 9:46 am Naslov sporočila: |
|
|
Iztok, ce si izracunal, da bi TMR0 moral priti do 313 (kar seveda ne more, saj gre za 8-bitni stevec) za normalno delovanje, potem uporabi prescaler (1:2) in bo meja samo se 313/2, kar je manjse od 255. Ob overflowu tako nastais vrednost na 256 - zeljeno stevilo ciklov - overhead do tega mesta (= overhead interrupta + kode), pa bo delalo do priblizno 313 ciklov, nastavitev pa bo malenkost bolj "groba" (pac koraki po 2 cikla namesto po en cikel).
|
|
Nazaj na vrh |
|
 |
Iztok Član

Pridružen-a: Pet 08 Okt 2004 0:55 Prispevkov: 4974 Aktiv.: 21.01 Kraj: LJ
|
Objavljeno: Pet Apr 07, 2006 12:29 pm Naslov sporočila: |
|
|
@Sokrat, vem da 8 bitov ne gre čez 255, zato sem napisal da so še druge rešitve.
Rešitev z precsalerjem sem tudi uporabil, čeprav se potem spremeni razmerje h00-hFF / 0-100%. Se pravi, da 100% moč ni pri vrednosti 255, ampak pri cca. 156.
Tudi pri moji verziji programa se je pojavil isti problem z območjem. Ker pa sem se zadeve lotil z drugega konca kot Silvo se pri meni tistih "manjkajočih" 19% pojavi ob startu. Se pravi, da mi ob vklopu ne starta iz 0% in gre do 81%, ampak mi starta že direkt z 19% in gre do 100% ... seveda v območju TMR0 od h00 do hFF . Za tako nezahtevno aplikacijo popolnoma zadostuje.
Zato tudi nisem kompliciral z matematiko, kjer bi lahko tistih 156 spremenil v območje 0-255 in tako dobil cel razpon 0-100%.
|
|
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: 488 dni
Powered by phpBB © 2001, 2005 phpBB Group
|