You are on page 1of 5

INFOTEH-JAHORINA, Vol. 5, Ref. A-1, p. 1-5, March 2006.

REGULATOR BRZINE OBRTANJA TROFAZNOG ASINHRONOG MOTORA REALIZOVAN KORITENJEM MIKROKONTROLERA ROTATION SPEED REGULATOR FOR THREE-PHASE ASYNCHRONOUS MOTOR REALIZED USING MICROCONTROLLER
eljko Ivanovi, Zlatko Bundalo, Branko Blanua, Elektrotehniki fakultet, Banja Luka Sadraj - U radu se opisuje praktino realizovan trofazni generator impulsno-irinski modulisanih upravljakih signala za naponsko-frekventni regulator brzine obrtanja asinhronog elektrinog motora. Opisani generator je realizovan koritenjem mikrokontrolera AT89C52 proizvoaa Amtel. U radu se prvo ukratko izlau teoretske osnove realizacije sa aspekta mogue implementacije pomou koritenog mikrokontrolera. Zatim se opisuje praktina realizacija. Data je principijelna ema, opisan nain funkcionisanja i izloene mogunosti regulatora. Prikazan je i analiziran algoritam realizovanog programa za upravljanje generatorom. Dat je algoritam glavnog programa i procedura za obradu prekida. Pored regulacije brzine obrtanja mogua je i promjena smjera rotacije motora. Dati su dijelovi praktino razvijenog i realizovanog softvera. Prikazani su neki dobiveni rezultati simulacije i mjerenja. Teoretska razmatranja su simulirana pomou Matlab-a. Mjerenja su izvrena na praktino realizovanom generatoru upravljakih signala. Opisana realizacija je jednostavna i jeftina, ali veoma efikasna. Koritenjen 8-bitnog mikrokontrolera opte namjene sa skromnim mogunostima efikasno je implementiran relativno sloeni algoritam generisanja potrebnih upravljakih signala i regulacije brzine obrtanja trofaznog asinhronog motora. Abstract - A practically realized three-phase generator of pulse-width modulated control signals for voltage-frequency regulator of rotation speed of induction asinchrone electric motor is described in the paper. Described generator is realized by using Atmel microcontroller AT89C52. In the paper firstly are shortly described theoretical fundamentals of realization from the point of implementation by used microcontroller. Then the practical realization is described. It is given principle scheme, described way of functioning and are presented possibilities of the regulator. It is given and analised algorithm of main program and procedure for interrupt processing. Besides speed rotation regulation it is also possible change of motor rotation direction. Parts of practically developed and realized software are given. Some results obtained by simulation and measurements are presented. Theoretical considerations are simulated by using Matlab. Measurements are made on practically realized generator of control signals. The described realization is simple and inexpensive, but very effective. By using 8-bit general-purpose microcontroller with simple abilities it is effective implemented relatively complex algorithm for generating of needed control signals and for regulation of rotation speed of three-phase induction motor. 1. UVOD Elektrini motori predstavljaju osnovni element svakog elektrinog pogona [1,2]. Elektrini pogoni, s obzirom na mogunost regulacije, mogu biti: regulisani ili neregulisani. Istorijski gledano prvi regulisani elektrini pogoni koristili su motore za jednosmjernu struju koji su gotovo idealni sa stanovita upravljanja. Neki nedostaci motora jednosmjerne struje doveli su do pokuaja da se motori naizmjenine struje (prvenstveno asinhroni motorri) pokuaju upotrijebiti kao pogonske maine u regulisanim pogonima. Iako jednostavne konstrukcije, asinhroni motor sloen je za upravljanje. Meutim, sa razvojem elektronike, asinhroni motor poinje da osvaja i polja gdje su dominirali motori jednosmjerne struje pogoni sa promjenljivom brzinom. Uvoenjem mikroprocesora i mikrokontrolera u upravljaki dio pogona omogueno je da se uz male dodatne trokove postigne izvoenje sloenih algoritama upravljanja, tako da pogoni sa asinhronim motorima postaju konkurentni pogonima sa jednosmjernom strujom. 1 Jedna od mogunosti upravljanja brzinom asinhronog motorima je U/f metoda koja je koriena u praktinom rjeenju koje se opisuje u ovom radu. U/f metoda ima niz dobrih osobina: mogunost kontinualne promjene brzine u irokim granicama uz zadravanje konstantnog prevalnog momenta u oblasti do nominalne brzine, mogunost upravljanja brzinom motora u oblasti punog ili oslabljenog polja, jednostavnost algoritma [1,2]. U radu se opisuje jedan praktino realizovan trofazni generator impulsno-irinski modulisanih upravljakih signala za naponsko-frekventni regulator brzine obrtanja asinhronog elektrinog motora. Generator je realizovan koritenjem mikrokontrolera AT89C52 proizvoaa Amtel. Prvo se ukratko izlau teoretske osnove realizacije sa aspekta mogue implementacije pomou mikrokontrolera. Potom se opisuje praktina realizacija. Data je principijelna ema, opisan nain funkcionisanja i izloene mogunosti regulatora. Prikazan je algoritam programa za upravljanje generatorom: algoritam glavnog programa i procedura za obradu prekida. Pored

INFOTEH-JAHORINA, Vol. 5, Ref. A-1, p. 1-5, March 2006. regulacije brzine obrtanja mogua je i promjena smjera rotacije motora. Dati su dijelovi praktino realizovanog softvera. Teoretska razmatranja su simulirana pomou Matlab-a. Mjerenja su izvrena na praktino realizovanom generatoru upravljakih signala. U radu su prikazani neki rezultati dobiveni simulacijom i mjerenjima. Opisana realizacija je jednostavna i jeftina, ali veoma efikasna. Koritenjen jeftinog 8-bitnog mikrokontrolera opte namjene sa skromnim mogunostima efikasno je implementiran relativno sloeni algoritam generisanja potrebnih upravljakih signala za regulaciju brzine obrtanja trofaznog asinhronog motora. 2. OPIS REALIZACIJE Skalarno upravljanje asinhronim motorima zasniva se na injenici da se brzina obrtanja asinhronog motora moe mijenjati promjenom frekvencije i napona napajanja, pri emu je bitno zadrati odnos US/fS konstantnim, da bi se fluks magneenja odrao konstantnim [1,2]. Us je napon, a fs frekvencija napajanja asinhronog motora. Na sl. 1. je prikazana principijelna ema regulisanog pogona za asinhroni motor. Upravljanje pogonom vri se pomou upravljake jedinice. Na izlaznim prikljucima upravljake jedinice generiu se impulsno-irinski modulisani (PWM) signali za tranzistorski invertorski stepen. Upravljaka jedinica je realizovana pomou Atmelovog 8bitnog mikrokontrolera AT89C52. Osnovne karakteristike mikrokontrolera AT89C52 znaajne za ovu realizaciju su: kompatibilan sa MCS-51 proizvodima, 8 kB interne fle memorije za smijetanje programskog koda, raspon frekvencije oscilatora u granicama od 0 Hz do 24 MHz, 256 x 8 bit internog RAM-a, 32 programabilne I/O linije (etiri porta), tri 16 bitna tajmera/brojaa, est moguih vektora prekida sa dva nivoa prioriteta, integrisan oscilator [3]. regulatora. Na osnovu izabranog naina rada generiu se potrebni signali koji upravljaju tranzistorskim invertorom.
D E S E T IC E D2 11 13 13 11 1 3 5 7 9 1 3 5 7 9 +5 V J E D I N IC E D1

+5V 7x 10k 1 R8 C +5V 10k S T A R T /S T O P L E F T / R IG T H 40 10k 8 7 6 5 4 3 2 14 13 12 11 10 9 8 1k5 1k5 14 13 12 11 10 9 8 39 38 37 36 35 34 33 32 1 2 3 4 5 6 7 8 19 18 9 C2 33p + 5V 33p C 10 1 0 u /1 0 V 2 SW 1 RESET C 11 1 u /1 0 V 1 SW 2 U P 10 C 16 1 SW 6 S TA R T/S T O P 2 1 SW 3 UP 1 u /10 V S T A R T /S T O P 2 SW 7 L E F T /R IG T H 2 1 C 12 1 u /1 0 V 2 1 SW 4 D OW N C 15 1 u /1 0 V L E FT / R IG T H C 13 1 u /1 0 V 2 1 SW 5 D O W N 10 C 14 1 u /1 0 V 2 IND. SMIJERA OBR. 3 1 R7 1k D 12 8 .2 k +5V +5V 31 R 26 P P P P P P P P P P P P P P P P 0 .0 / A 0 .1 / A 0 .2 / A 0 .3 / A 0 .4 / A 0 .5 / A 0 .6 / A 0 .7 / A D0 D1 D2 D3 D4 D5 D6 D7 P 2 .0 /A 8 P 2 .1 /A 9 2 .2 /A 1 0 2 .3 /A 1 1 2 .4 /A 1 2 2 .5 /A 1 3 2 .6 /A 1 4 2 .7 /A 1 5 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 29 30 VCC

10

12

14

10

g0 f0 e0 d0 c0 b0 a0 g1 f1 e1 d1 c1 b1 a1

1 2 3 4 5 6 7 1 2 3 4 5 6 7

14

12

P P P P P P

LE D +5 V R 29 6x10k C LE D 1 2 3 4 5 6 7

V V V V V V

1 .0 / T 2 1 .1 / T 2 -E X 1 .2 1 .3 1 .4 1 .5 1 .6 1 .7

X 1=2 4 M H z C1

X TA L1 X TA L2 RST E A /V P P

U1 A T8 9C 52

P 3 .0/R X D P 3 . 1 /T X D P 3 .2 / IN T O P 3 .3 /I N T 1 P 3 .4 /T O P 3.5 /T1 P 3 .6 /W R P 3 .7 /R D PSEN A L E /P R O G

Sl. 2. Kompletna ema upravljake jedinice. 3. PROGRAM ZA GENERISANJE UPRAVLJAKIH SIGNALA Kao to je ranije navedeno, za realizaciju upravljanja asinhronim motorima ovdje je primjenjena tehnika impulsno irinske modulacije. Ovdje e ukratko biti razmotrene i opisane teoretske osnove i realizovani program za generisanje upravljakih signala pomou mikrokontrolera. Sva razmatranja se odnose samo na jednu fazu (faza A), a iz krajnjeg rezultata se jednostavno dobivaju relacije i za preostale dvije faze (B i C). Da bi se dolo do formule pomou koje se moe odrediti vrijeme voenja gornjeg tranzistora invertora posmatrae se sljedea relaciju: Tpwm T pwm Vc tonA = + , (1) 2 2 Vtm gdje je: Tpwmperiod noseeg signala, Vctrenutna vrijednost moduliueg napona, Vtmmaksimalna vrijednost noseeg napona. Nakon uvrtavanja izraza za moduliui napon, Vc = Vcm sin( s t ) , dobija se sljedei izraz za voenje gornjeg tranzistora faze A: Tpwm T pwm tonA = + m sin( st ) , 2 2 (2) Vcm gdje je m = faktor amplitudske modulacije, a Vcm je Vtm maksimalna vrijednost moduliueg napona. Relacije za preostale dvije faze moemo dobiti jednostavno na osnovu 2

1 2 3 4 UPRAVLJACKA JEDINICA 5 6 6 D 2 6 D 4 6 D 6 3 4 U 1A 1 D 1 U 2A 1 D 3 4 U 3A B R ID G E D 5 4 + C 1

~ ~ +
22 0 V A C

ZA D A V A N JE U C E S TA N O S TI

M ~3
MO TO R A C

Sl.1. Principijelna blok ema regulisanog pogona sa asinhronim motorom. Na sl. 2. je prikazana kompletna ema realizovane upravljake jedinice. Upravljaku jedinicu u osnovi ini mikrokontroler AT89C52 koji obavlja sve potrebne aktivnosti. Uz njega, u sastavu upravljake jedinice postoje jo dva sedamsegmentna LED displeja, LED za indikaciju smijera obrtanja, tasteri za upravljanje radom. Mikrokontroler generie upravljake PWM signale za tranzistorski invertor, ispisuje vrijednost trenutno generisane frekvencije PWM signala na sedamsegmentnim displejima, skenira tastere za promjenu frekvencije, kao i tastere za promjenu naina rada

20

GND

INFOTEH-JAHORINA, Vol. 5, Ref. A-1, p. 1-5, March 2006. relacije (2) uvrtavajui odgovarajue poetne fazne stavove. Te relacije su date izrazima: Tpwm Tpwm 2 tonB = + m sin( st ) , (3) 2 2 3 Tpwm Tpwm 4 tonC = + m sin( st ) . (4) 2 2 3 Oito je da se relacije za vrijeme ukljuenja gornjih tranzistora faza B i C razlikuje samo po poetnim faznim stavovima u odnosu na odgovarajuu relaciju faze A. Sad e biti izvrene transformacije u relaciji (2) koje su neophodne za implementaciju pomou mikrokontrolera AT89C52. Poto je vrijeme tonA potrebno raunati samo za svaki period noseeg signala Tpwm, onda se relacija (2) moe diskretizovati na sljedei nain: Tpwm T pwm (5) tonA = + m sin( s T pwm i ) , 2 2 gdje i oznaava da se radi o i-toj periodi PWM signala. Relacija (5) se moe napisati u obliku: Tpwm T pwm (6) tonA = + m f ( x) , 2 2 gdje se m i f(x) mijenjaju u sljedeim granicama: m = 0 1 , a f ( x ) = 1 1 . Da bi se formula (6) mogla realizovati pomou mikrokontrolera AT89C52, potrebno je izvriti odreene matematike transformacije. Poto AT89C52 nema implementiranu sinusnu funkciju, jedan dio matematikih operacija mora se obaviti "izvan" mikrokontrolera, tj. moraju se odgovarajui rezultati smjestiti u tabele. Konaan izraz za vrijeme voenja gornjeg tranzistora invertora dat je relacijom: Tpwm T pwm m1 1 T pwm m 1 tonA = + (128 127 (f )) + x , (7) 2 2 256 128 2 256 gdje je m1=255 m. Kao to je reeno, jedan dio matematikih operacija mora se obaviti izvan mikrokontrolera i smjestiti u tabele. Time se ubrzava izraunavanje potrebnih vremena. Tabela za izraz (128 + 127 f ( x)) odreena je pomou programa napisanog u MATLAB-u. Pogodnim izborom perioda noseeg signala (Tpwm) mogue je olakati raun, a da se to na PWM signal uopte ne odrazi. Ako se uzme da je perioda Tpwm=1024 s raun se znatno pojednostavljuje, pa relacija (7) dobija oblik: m tonA = 512 + 4 1 Tab _ Sin 2 m1 , (8) 256 pri emu je Tab _ Sin = 128 + 127 f ( x) . Vrijeme tonA sada je izraeno u s. Zbog potrebnog odravanja odnosa US/fS konstantnim u odreenom rasponu frekvencija potrebno je napraviti tabela faktora amplitudske modulacije. Ostalo je jo da se rijei koja vrijednost Tab_Sin da bude proitana iz tabele u odreenoj periodi PWM signala. Ako se iitavanje iz Tab_Sin bude vrilo konstantnom brzinom, koja je jednaka frekvenciji noseeg signala, onda se moe izraunati najnia frekvencija koja se moe generisati na izlazu regulatora: Tmin = 1024 [OdmjerakaSin] 1024 [ s ] = 1.048 [s ] , odnosno, 1 = 0.954 [Hz] . (9) Tmin U ovom sluaju korak itanja tabele bio je jednak jedinici, to znai da se ita svaki lan Sin_Tab. Ako se eli poveati frekvencija onda se mora poveati korak isitavanja, to uz konstantnu brzinu isitavanja ima za posljedicu poveanje izlazne frekvencije f s . Ako se korak isitavanja oznai sa KORAK onda se njegova vrijednost moe izraunati, u zavisnosti od eljene frekvencije, na osnovu sljedee ralacije: Tpwm f KORAK = 1024 = 1024 s . (10) Ts f pwm f min = Radi pojednostavljenja algoritma uraena je i tabela koraka. Da bi se izaunala vremena ukljuenja gornjih tranzistora i za preostale dvije faze, neophodno je pomjeriti itanje 1 podataka iz Tab_Sin. Za fazu B taj pomjeraj e biti 1024 3 2 od poetka tabele, dok e za fazu C taj pomjeraj biti 1024 3 . Tako se omoguava generisanje upravljakih PWM signala 2 koji su fazno pomjereni za . 3 Da bi se generisala odgovarajua vremena za sve tri faze koritena su sva tri tajmera mikrokontrolera AT89C52. U tajmere se upisuju poetne vrijednosti koje su proporcionalne vremenu voenja tranzistora odgovarajue faze. U dodatku ovog rada je prikazan dio programa napisanog za mikrokontroler AT89C52 koji rauna potrebnu vrijednost NtoA koja se upisuje u tajmer 0. Na sl. 3. je prikazan algoritam kompletnog programa koji upravlja U/f regulatorom, kao i odgovarajue prekidne procedure. Program vri sljedee funkcije: skeniranje tastera i na osnovu stanja obavlja odreene operacije, prikazivanje frekvencije generisanog PWM signala na dva sedmosegmentna displeja, raunanje odgovarajuih vremena za generisanje PWM signala. Kada se regulator ukljui on ulazi u stop nain rada. Na sedmosegmentnom displeju trepe broj 5, to je indikacija tog naina rada frekventnog regulatora. U stop nainu se vri incijalizacija odgovarajuih bita koji slue kao indikatori stanja (puta) izvrenja programa. Takoe se vri incijalizacija tajmera kao i nekih potrebnih konstanti. Promjena smjera obrtanja motora jedino je mogua u stop nainu rada. Iz stop naina je mogue prei u start nain rada stiskanjem tastera START/STOP, pri emu se na izlazu upravljake jedinice generie najnia frekvencija (softverski ograniena na 5Hz) koja se moe generisati regulatorom. Nakon raunanja potrebnih vremena program ulazi u beskonanu petlju unutar koje se vri skeniranje tastera, ekanje prekida koje generiu tajmeri, kao i preostalih izvora prekida. Iz tog naina rada se izlazi stiskanjem tastera START/STOP, ime se vraa u stop nain. Tri tajmera mikrokontrolera generiu odgovarajue vremenske intervale koji su potrebni za PWM signale. Tajmer 0 ima dvije funkcije. On u poetnom dijelu perioda nosioca PWM signala generie vrijeme (prekida) ukljuenja gornjeg tranzistora faze A (tonA), dok u ostatku periode (TpwmtonA) generie prekid usljed isteka vremenskog intervala Tpwm. Tajmeri 1 i 2 imaju funkciju generisanja vremena ukljuenja gornjih tranzistora faza B i C, respektivno. Po isteku 3

INFOTEH-JAHORINA, Vol. 5, Ref. A-1, p. 1-5, March 2006. vremenskih intervala tonA, tonB ili tonC odgovarajui tajmer generie prekid, pri emu se gornji tranzistor odgovarajue faze iskljuuje, a nakon isteka mrtvog vremena vri se ukljuivanje donjeg tranzistora odgovarajue faze. Sl. 4. Talasni oblik faznih napona za fs = 50 Hz. Sinusoida na tim slikama predstavlja srednju vrijednost PWM napona na izlazu U/f regulatora.

Sl. 5. Talasni oblik linijskih napona za fs = 50 Hz. Sva mjerenja su izvrena na prototipu praktino realizovanog regulatora. Na sl. 6. i sl. 7 su prikazani snimljeni oblici upravljakih signala izmeu faza A-B i A-C, na dvije uestanosti, 25 i 50 Hz respektivno.

Sl. 3. Algoritam realizovanog programa. 4. REZULTATI SIMULACIJE I MJERENJA Sva teoretska razmatranja o generisanju PWM signala simulirana su pomou programa napisanog u MATLAB-u. Program se sastoji od etiri zavisna m - fajla. Prva tri m-fajla slue za generisanje odgovarajuih tabela. etvrti, glavni program, napisan je tako da priblino opisuje algoritam koji izvrava mikrokontroler. Na sl. 4. su prikazani simulacijom dobiveni talasni oblici faznih napona faza A, B i C pri frekvenciji od 50 Hz, dok su na sl. 5. prikazani oblici linijskih napona pri istoj frekvenciji.

Sl. 6. Talasni oblik upravljakih signala izmeu faza A B i A C za f=25Hz

Sl. 7. Talasni oblik upravljakih signala izmeu faza A B i A C za f=50Hz

INFOTEH-JAHORINA, Vol. 5, Ref. A-1, p. 1-5, March 2006. 5. ZAKLJUAK U ovom radu je opisana praktina realizacija U/f metode regulacije brzine obrtanja trofaznog asinhronog motora uz upotrebu vrlo jeftinog i jednostavnog mikrokontrolera opte namjene (AT89C52). Iako na tritu postoje mikrokontroleri ija je arhitektura prilagoena ovakvim primjena, te takvi mikrokontroleri pomou kojih se mogu generisati PWM signali bez neki velikih softverskih komplikacija, opisana realizacija je praktino vrlo primjenjiva i prihvatljiva. Ona je jeftina i jednostavna, ali efikasna i fleksibilna sa stanovita praktine primjen. Upotrebom jeftinog 8-bitnog mikrokontrolera opte namjene sa skromnim mogunostima efikasno je realizovan i implementiran relativno sloen algoritam za generisanje neophodnih upravljakih signala i regulaciju brzine obrtanja trofaznog asinhronog motora. Postignuta je mogunost promjene smijera obrtanja motora i promjene frekvencije u opsegu od 5Hz do 100Hz sa korakom od 1Hz i od 10Hz. Sve je to potvreno kroz rezultate simulacije i mjerenja. DODATAK
;*********************************************** ; PROGRAM ZA GENERISANJE TROFAZNIH PWM ; SIGNALA KOJI UPRAVLJAJU TRANZIST. INVERTOROM ; ; MIKROKONTROLER: AT89C52 ; UCESTANOST OSCILATORA: 24 MHz ;*********************************************** ;----------------------------------------------; RACUNANJE VREMENA NtonA ZA FAZU A, ; RACUNANJE VREMENA TPWM ;----------------------------------------------mov dph, ugaoA_H ; pocetak tab_sin za fazu A u reg. DPTR mov dpl, ugaoA_L ; pocetak tab_sin za fazu A u reg. DPTR clr a ; nula u akumulator movc a, @a+dptr ; u akumulator odgovarajuca vrijednost tab_sin ;----------------------------------------------; U narednom dijelu programa implementirano je ; neophodno 16-bitno mnoenje ;----------------------------------------------mov sin_fun , a ; vrijednost Sin_Tab se uva u prom. sin_fun mov b, osamU_H ; u registar B 8*Tab_Nap visi bajt mul ab ; mnozenje 8*Tab_Nap_H sa Sin_Tab mov osamPs_H, b ; visi bajt rezultata u promjenjljivu osamPs_H mov r0, a ; nizi bajt rezultata u registar R0 mov a, sin_fun ; punjenje akumulator sa Tab_Sin mov b, osamU_L ; u registar B 8*Tab_Nap nizi bajt mul ab ; mnozenje 8*Tab_Nap_L sa Sin_Tab clr Cy ; brisanje zastavice prenosa zbog sabiranja mov a, r0 ; u A se smijesta nizi bajt rezultata 8*Tab_Nap*Tab_Sin add a, b ; sabiranje sa osamU_L mov osamPs_L, a ; rezultat se smijesta u promjenlj. OsamPs_L jnb Cy, SKOK_A0 ; ispitivanje da li je bilo prenosa inc osamPs_H ; ako je bilo prenosa inkrementiranje osamPs_H SKOK_A0: ;----------------------------------------------; Sabiranje dobijenog rezultata sa konstantom ; 645111+4*Tab_Nap ;----------------------------------------------clr Cy ; brisanje zastavice prenosa zbog oduzimanja mov a, constU_L ; u akumulator 64511+4*Tab_Nap,nizi bajt subb a, osamPs_L ; oduzimanje 8*Tab_Nap*Sin_Tab od 64511+4*Tab_Nap mov TonA_L , a ; rezultat na lok. TonA_L sa koje ce se ucitati u TL0 mov a, constU_H ; u akumulator 64511+4*Tab_Nap,visi bajt subb a, osamPs_H ; oduzimanje 8*Tab_Nap*Sin_Tab od 64511+4*Tab_Nap mov TonA_H, a ; rezultat na lok. TonA_H sa koje ce se ucitati u TH0 clr Cy ; brisanje zastavice prenosa zbog oduzimanja mov a, #0ffh ; racunanje preostalog vremena do Tpwm=0f7ffh subb a, TonA_L ; racunanje preostalog vremena do Tpwm=0f7ffh mov TonA_Lp, a ; rezultat na lok. TonA_Lp sa koje ce se ucitati u TL0 mov a, #0f7h ; racunanje preostalog vremena do Tpwm=0f7ffh subb a, TonA_H ; racunanje preostalog vremena do Tpwm=0f7ffh mov TonA_Hp, a ; rezultat na lok. TonA_Hp sa koje ce se ucitati u TH0 ;-------------------------------------------; Racunanje sljedeceg polozaja u Tab_Sin ;--------------------------------------------clr Cy ; brisanje zastavice prenosa zbog oduzimanja mov a, ugaoA_L ; u akumulator upis polozaja odmijerka Tab_Sin add a, korak ; njegovo sabiranje sa korakom mov ugaoA_L, a ; njegovo smijestanje na lokaciju ugaoA_L jnb Cy, SKOK_A1 ; ako nije bilo prenosa nastavi dalje izvravr. programa inc ugaoA_H ; ako je bilo prenosa inkrementiraj ugaoA_H ;-------------------------------------------; Provjera da li je dolo do kraja Tab_Sin ;-------------------------------------------SKOK_A1: mov a, ugaoA_H ; u trenutnu vrijednost polozaja unutar Tab_Sin cjne a, #14h, SKOK_A2 ; poredjenje sa gornjom granicom tabele Tab_Sin mov ugaoA_H , #10h ; upisivanje pocetne pozicije Tab_Sin SKOK_A2: ; RACUNANJE VREMENA NtonB ZA FAZU B

Listing 1. Dio programa u asemblerskom jeziku koji rauna NtonA LITERATURA [1] S. Vukosavi, Digitalno upravljanje elektrinim pogonima, Akademska misao, Beograd, 2003. [2] V. Vukovi, Elektrini pogoni, Elektrotehniki fakultet, Beograd, 1997. [3] www.atmel.com

You might also like