Arduino, 3 fazy, 3 tyristory

Sekcia určená pre Arduino nadšencov

Moderátor: Moderátori

Používateľov profilový obrázok
misocko
Ultimate člen
Ultimate člen
Príspevky: 4319
Dátum registrácie: 14 Jún 2009, 00:00
Vek: 47

Arduino, 3 fazy, 3 tyristory

Príspevok od používateľa misocko » 21 Sep 2017, 22:18

ahojte
zatial pre zabavu, by som chcel ovladat 3 fazovy poloriadeny most (3 tyristory, 3 diody) arduinom :)
mam kod ktory pomocou potenciometra dokaze otvarat tyristor vtedy ked potrebujem, startuje vzostupnou hranou sinusovky, spozdenie "zapalenia" riadim potenciometrom. Riadenie jednej fazy funguje bezproblemovo (riadim iba hornu cast polvny, tu minusovu bude mat na starosti dioda), dve fazy by boli tiez bezproblemov , nakolko by sa mi nikdy neprekrival zapal druhej fazy s nabehom prvej fazy ked spustam prerusenie. Dokonca by nebol problem ani s troma fazami, kym by som nepotreboval nizky vykon a teda otvarat tretiu fazu az na pozicii "2c" na obrazku, ked som uz za prerusenim a vtedy moj kod samozrejme fungovat nebude. Na poziciach 1a, 1b, a 1c teda bude fungovat aj moj kod.
Ako by sa dalo riesit zapalenie tretej fazy v mieste "2c" ?
prikladam aj rozsahm regulacie jednej fazy mojim kodom"

Kód: Vybrať všetko

int x=0;
int cakaj;
int pot;
void setup()
{
  interrupts();
  pinMode(2,INPUT);
  pinMode(12,OUTPUT);
  attachInterrupt(0, zapni, RISING);
}

void loop()
 {
  pot=analogRead(A5);
  cakaj=map(pot, 0, 1023, 0, 11000);
  if(x == 1){
              delayMicroseconds(cakaj);
              digitalWrite(12, HIGH);
              delayMicroseconds(200);
              digitalWrite(12, LOW);
              x=0;
            }
 }
            
void zapni() {
              x=1;
              }


! Presun témy do správnej sekcie. presunul: 29.9.2017 mirosne !
Prílohy
3fazy sinus.PNG
max vykon.PNG
max vykon.PNG (4.02 KiB) 1971 zobrazení
min vykon.PNG
min vykon.PNG (3.78 KiB) 1971 zobrazení
0

martin knocik
Ultimate člen
Ultimate člen
Príspevky: 1639
Dátum registrácie: 23 Jan 2008, 00:00
Bydlisko: Trenčianska Turná
Vek: 33
Kontaktovať používateľa:

Re: Arduino, 3 fazy, 3 tyristory

Príspevok od používateľa martin knocik » 22 Sep 2017, 07:01

Co tak skusit posunut 2c signal do oblasti pred 1a. A tam kde bol 2c povodne by uz bol spusteny dalsim prerusenim. Efektivnejsie riesenie je samozrejme nespustat cakaciu funkciu v preruseni, prerusenie by malo byt co najkratsie. V preruseni len zmenit stav nejakej pomocnej premennej - z log.0 na log1. A v hlavnej slucke programu cakat na tuto zmenu semaforu (pomocou napr while) a potom spustit sekvenciu tych pulzov.
0
http://mkbci.com

FEL UNIZA 2015, Ing.

ľudstvo je vírus ktorý napadol Zem

nerobme si ťažkú hlavu z debilov čo nám ani po členky nesiahajú, buďme radi že my dačo dokážeme a smejme sa im akí sú sprostí

Používateľov profilový obrázok
lucky62
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1151
Dátum registrácie: 14 Feb 2012, 20:16
Bydlisko: Liptovský Mikuláš, SK

Re: Arduino, 3 fazy, 3 tyristory

Príspevok od používateľa lucky62 » 22 Sep 2017, 09:10

Presne ako píše martin.. ja len dodám, že program budeš vetviť podľa vypočítaného oneskorenia pre prvú fázu.
Vypočítaj si hodnotu oneskorenia v 1/3 periódy. Je to fixná hodnota.
  • ak oneskorenie prvej fázy vyjde menšie ako tento čas potom spínaš fázy v normálnom poradí 1, 2, 3
    ak oneskorenie prvej fázy vyjde väčšie ako tento čas potom spínaš ako prvú fázu 3 - teda v poradí 3, 1, 2
@martin, však on to tak má - v prerušení len nastavuje zapni = 1...
0
....môj bazar....

...Nikdy sa nehádaj s blbcom...

Používateľov profilový obrázok
misocko
Ultimate člen
Ultimate člen
Príspevky: 4319
Dátum registrácie: 14 Jún 2009, 00:00
Vek: 47

Re: Arduino, 3 fazy, 3 tyristory

Príspevok od používateľa misocko » 22 Sep 2017, 11:48

OK
dakujem , skusim vecer nieco zosmolit a dam vysledok :lol:
0

mroks
Okoloidúci
Okoloidúci
Príspevky: 3
Dátum registrácie: 09 Mar 2011, 00:00
Bydlisko: Handlová
Vek: 51

Re: Arduino, 3 fazy, 3 tyristory

Príspevok od používateľa mroks » 11 Nov 2017, 08:33

Výhodou TIMER1 v AVR je, že má dva nezávislé komparačné registre OCR1A a OCR1B, ktoré sú schopné vyvolať prerušenie plus prerušenie od pretečenia TIMER1. Vhodným nastavením možeš riadit otvorenie triakov v troch fázach. Síce na 6 fázové riadenie to nie je, ale tiež to môže v niektorých situáciách stačiť.
Ja som týmto spôsobom riešil dvojkanálovú reguláciu (teplota, otáčky kompresora) v teplovdušnej pájkovacej stanici.
0

Napísať odpoveď
  • Podobné témy
    Odpovedí
    Zobrazení
    Posledný príspevok