You are on page 1of 32

CHNG I : DN NHP 1.1. L do chn ti Trong gia cng c kh th yu cu v chnh xc l rt cn thit v vy cn c mt c cu iu khin v tr mt cch chnh xc.

xc.C cu ny hot ng thng qua vic iu khin t my tnh. p ng yu cu nhm chn ti : iu khin v tr ng c DC dng c cu vit-me bi v ai c. 1.2. Gii thiu ti ng c dng truyn chuyn ng quay nhng ta cng c th chuyn thnh chuyn ng tnh tin nh c cu vit-me ai c.Khi vit-me quay th ai c s chuyn ng tnh tin dc theo trc vit-me.Trn c s ta c th iu khin v tr ai c thng qua iu khin gc quay ca ng c. Vic iu khin v tr rt quan trong trong gia cng c kh ct gt trong cng nghip.ng dng trong vic iu khin cc trc ca my CN, CNC, my in, nh v l khoan, truyn ng cho cc bng ti 1.3. Mc ch nghin cu ca ti l : iu khin v tr ng c Servo DC vi nhng yu cu sau: - iu khin v tr ng c Servo DC c kim sot v tr bng b iu khin PID - iu khin trc tip ng c bng giao tip my tnh - iu khin c tc ng c Servo DC, t nghin cu iu khin ng c trong cc my cng c nh CN, CNC, bng ti v cc ng dng khc ca ng c Servo DC k c bc Servo, Servo AC. 1.4. Gii hn ti : - iu khin ng c Servo DC, loi ng c Dc kch t c lp hhoc dng nam chm vnh cu, c cng sut P < 60W, c th l ng c Servo DC 24V 50W. - iu khin ng c Servo DC bng phng php iu ch rng xung kt hp vi vic dng vi iu khin Atmega 8. - m bo n nh c v tr bng vng phn hi v tr dng encoder.

CHNG II : C S L LUN 1.1. i cng v ng c DC kch t c lp 1.1.1.Gii thiu s lc v ng c in mt chiu: ng c in mt chiu c 3 loi a.ng c in mt chiu kch t c lp
+ L U k t k t R k t - -

U u

- -

Hnh 2.1 S nguyn l C KTL b.ng c in mt chiu kch t song song


+ L U k t k t = R U u k t - -

1 +

2 -

Hnh 2.2 S nguyn l C KTSS c.ng c in mt chiu kch t ni tip

+
k t L k t

U d E u
2 -

Hnh 2.3 S nguyn l C KTNT

1 +

Trong n nhm chn ng c in mt chiu kch t c lp v : - Lm vic ti nh - iu khin tc d dng, chnh xc 1.1.2. Cu to: Cu to ng c gm: v, trc, bi, phn cm (stato), phn ng (roto), c gp v chi in

Hnh 2.4 Cu to C KTL Ngun in mt chiu DC tc ng ln cun ng qua c gp. Cng t trng khng thay i. Tc ng c ch c th iu khin thng qua dng roto. C th o chiu chuyn ng bng cch o chiu dng in qua roto

Hnh 2.5 Nguyn l C KTL

1.1.3 S nguyn l v phng trnh c tnh:


+
I k t L k t E
+ 1

k t

I u

Hnh 2.6 Nguyn l C KTL


Ikt = U kt R kt + R cdkt

Uu = Eu + Iu.Ru

M
Eu = K kt . v Iu = Mdt K kt

Suy ra :
Uu = K kt . + Mdt .Ru K kt

Kt lun : thay i tc ng c ta c 2 cch - Thay i t thng - Thay i in p cp cho phn ng ca ng c: Dng phng php PWM hoc mc thm in tr ph vo phn ng. 1.2. Gii thiu v Encoder: 1.2.1.Khi nim :
Encoder hay cn gi l b m ha quang k thut s l mt thit b chuyn i chuyn ng thnh mt chui cc xung k thut s. Bng cch m mt cch n l hoc bng cch gii m mt tp hp cc bit, xung c th c chuyn i o lng v tr tng i hay tuyt i. Encoders c cu hnh c tuyn tnh v quay, nhng loi ph bin nht l quay. Rotary encoders c sn xut trong hai hnh thc c bn: cc b m ha tuyt i ni mt t k thut s duy nht tng ng vi mi v tr ca trc quay, v m ha cc gia tng, trong sn xut xung k thut s nh cc trc quay, cho php o v tr tng i ca trc. Hu ht cc m ho quay c bao gm mt a thy tinh hoc nha m vi mt m hnh xuyn tm photographically gi t chc theo di. Theo ng xuyn tm trong mi ca khc gin on gia mt chm photoemitter-cp my d, xung k thut s c sn xut.

1.2.2 .Phn loi : C 2 loi Encoder a. Absolute encoder :

Hnh 2.7 Absolute encoder

L loi thit b m ha m cc tn hiu m u ra song song ch th gc quay tuyt i ca trc. Loi ny khng cn b m m xung m vn c th bit gc quay ca trc thit b m ha Cng ging nh nhiu loi Encoder khc, b gii m tuyt i gm mt a trn, trn c nhng khong trong sut v c. nh sng c th xuyn qua nhng phn trong sut n b cm bin quang, khi a quay th b cm bin bt ln 1 v phn nh sng b chn bi phn c lm cm bin quang xng 0. Nh vy cm bin quang s to thnh nhng xung tun t - Khi thit b m ha ny c s dng vi cng mt thit b khc, th v tr 0 ca trc xam nh gc tc . Khi trc ca thit b m ha quay v ta gc ny th gc quay c th c hin th trn b ch th ca my. Tn hiu u ra ca thit b m ha khng b nh hng bi nhiu ca thit b ng, ngt v khng yu cu iu chnh gc quay chnh xc. Hn na, thm ch nu tn hiu m ha u ra khng th c v trc quay qu nhanh, th gc quay chnh xc c ghi khi tc quay gim xung, hoc ngay khi ngun cho thit b m ha b ngt. Thm na, m ha s khng hot ng do s rung ng ca cc thit b s dng n - Loi thit b m ha tuyt i, c phn gii co hn v cho ra cc gi tr thay i trong phm vi rng hn so vi thit b m ha tng dn

b. Incremental encoder :

Incremental encoder Hnh 2.8 Incremental encoder

Cu to

L loi thit b m ha c dy xung ra ph hp vi gc ca trc quay. Thit b m ha ny khng c xung ra khi trc khng lm vic. Do cn c mt b m m xung ra Thit b m ha ch bit v tr ca trc quay bng s xung c m. Dng thit b m ha ny ch c 1 hay 2 knh ng ra: + Loi 1 chiu (ch c u knh A) l loi ch sinh ra xung khi trc quay + Loi 2 chiu (c u ra knh A v B) cng c th cho bit chiu ca trc quay, ngha l thun chiu kim ng h. Ngoi ra cn c u dy trung tnh (xung Z) cho mi vng quay, c ngha l nu quay c 1 vng th xung Z ln 1 Khi a quay theo chiu kim ng h th xung track 1 (B) tr pha hn xung track 2 (A)

1.2.3. Nguyn l hot ng ca Incremental encoder

Hnh 2.9 Nguyn l Incremental encoder Gi s encoder c 3 xung l A,B,Z nh hnh Khi truc ng c quay nh 3 cp led thu v pht hng ngoi s i trng thi lin tc.Do 2 xung A,B lch pha nhau 1 gc 90 0 v xung Z ch c 1 xung trn vng nn ta c gin xung nh hnh trn Ta dng b m m xung ny t bit c v tr ng c nh th no.Ty vo tng loi encoder m ta c cc phn gii khc nhau.Vd nh encoder ghi 200 p / r ngha l khi ng c quay 1 vng ta o c 200 xung. Encoder trong n cng l loi 200 xung/vng.Ch c 2 xung A v B khng c xung Z

1.3. Vt-me v ai c bi. 1.3.1. Khi nim C cu vt-me v ai c dng chuyn i chuyn ng quay ca ng c thnh chuyn ng tnh tin ca ai c. Khi ng c quay th ai c s chuyn ng tnh tin dc theo trc ca vt-me. Vit-me ai c thng bao gm mt trc c tin ren v lp vi mt ng c tin ren trong sao cho 2 ren nay phi cng dng v cng bc ren vi nhau. Hnh bn di l mt minh ha v n khp gia trc vt v ai c.C cu ny chnh l c cu ca bulong v ai c.Khi bulong di chuyn th ai c s chuyn ng tnh tin. Tip xc gia bulong v ai c l tip xc mt nn ai c s di chuyn tng i kh do masat ln.

Hnh 2.10 Vt-me ai c thng

1.3.2. Vt-me v ai c bi khc phc hin tng trn ta tin cc rnh ca trc vt-me c hnh trn thay v hnh thang hoc tam gic v nhng rnh ny s c t vo nhng vin bi st. Mi ghp vt me bi v ai c l nhng ng c lp y bi nhng vin bi thp. Khi trc vt xoay, nhng vin bi cun trn trong mi ren ca trc vt v ai c.

Hnh 2.11 Nguyn l vit-me bi

iu ny nhm gim ma st ca chng. Bi v cc vin bi cui cng s ri ra ngoi, nn ai c c 1 ng ng dn v vt nhng vin bi khi rnh ca trc vt v a chng tr li phn u ca ng bi pha cui ca ai c. Lc y ca ai c th khng nng n nh nhng vin bi cun trn, hn l trt. Hu ht chng cng cn 1 t ch trng chc rng du c th vo, hoc gi c s c kt bi trong cc rnh

Vt-me c 3 rnh bi Vt-me c 1 rnh bi Hnh 2.12 Cu to vt-me ai c bi Kh nng lm vic : - Do c thay chuyn ng trt thnh chuyn ng quay trn ca cc vin bi nn masat c gim ng k do chuyn ng gia trc vt-me v ai c s rt nh nhng - Cng do masat t nn trc vt-me bi c tui th cao hn vt-me thng ng thi vic truyn ng s tr nn chnh xc hn do kh c r gia vt-me v ai c

1.4. L thuyt PWM 1.4.1 iu ch rng xung l g? iu khin tc ng c nh trnh by phn nguyn l ng c c 2 cch: Mc in tr ph v phn ng v thay i in p cp cho phn ng ca ng c.Phng php PWM chnh l cch thay i in p cp cho phn ng ca ng c. iu ch rng xung l phng php iu khin tng cng sut cho ti m khng phi tiu hao bt k cng sut no trong vic iu khin ti Pulse Width Modulation (PWM) l k thut lm gim s lng ngun pht ra n ng c DC, n c ng dng trong cc h thng my mc c kh m khng cn hot ng trong tnh trng ngun Thay v gim in p vn hnh cho motor (ngha l gim ngun cho n), ngun motor c bt on/off mt cch nhanh chng. Phn trm thi gian m ngun c bt s quyt nh phn trm hot ng m n c thc hin Ging trnh by khi nim ny, trnh by tn hiu PWM n hot ng motor ti 75%, 50%, 25% ngun hot ng Mt khong rng ca tn s c th c s dng cho tn hiu PWM Mt dng sng PWM gm 8 bit, m mi mt dng sng c th l on hoc off, c lp li s dng cho ng c. Mi mt phn trm ca giy, bit iu khin quyt nh motor l np hoc ngt. Mi 1/125 ca giy dng sng c lp li

Hnh 2.13 Nguyn l PWM Thc cht ca PWM l lm thay i tng gi tr p (trung bnh) t vo hai u cc ca ng c. Khi p trung bnh thay i tc l lm thay i tc ng c ngay lp tc

C nhiu phng php iu khin PWM: Phng php tng t: tc ng nhanh v lin tc Phng php s: c th iu khin chnh xc v tr v tc ca h truyn ng IC chuyn dng Dng con vi iu khin trn board C hai phng php ph bin nht lm thay i tng in p t vo hai cc ng c Servo DC:

Hnh 2.14: Cc phng php PWM cho ng c Servo Hnh trn minh ha phng php PWM cho Servo chun (phng php 1) v Servo s (phng php 2) +Phng php 1: Bng cch thay i thi gian Ton v Toff. Trong khi chu k xung vn gi nguyn (khng i) V d: Chng ta mong mun mc logic ng ra PWM dng iu khin tc ng c Servo DC. Khi , ng c t tc Minimum thi tng ng vi tn hiu PWM l 100% off 0% on v khi ng c t tc Maximum th tng ng vi tn hiu 0% off 100% on. Tuy nhin iu ny ch l l thuyt, trong thc t phng php PWM khng bao gi t con s 100% off 0% on( hoc 0% off 100% on) m n ch mang tnh gn ng

Hnh 2.15 Phng php PWM vi tn s khng i t1 = t2 = TON + TOFF = const Trong : t1, t2: chu k xung Ton: thi gian On Toff: thi gian Off Theo tiu chun ng c Servo, ta nn chn chu k xung t1 = t2 = 20ms Chng ta thy rng, thi gian Ton cngtng th in p trung bnh tng ng cng ln, ng ngha vi tng tc ng c v hon ton ngc li nu Ton cng nh th in p trung bnh tng ng cng gim, ng ngha vi gim tc ng c

Hnh 2.16 Quan h gia thi gian Ton vi in p

+Phng php 2: Bng cch thay i tn s xung. Do trng hp ny lm cho chu k xung b thay i, tc l: t1 t2

Hnh 2.17 Phng php PWM vi tn s thay i Nhn chung c 2 phng php trn u c mt im chung l iu tit PWM dn n lm thay i tng p trung bnh t vo hai cc V CC v GND ca ng c Servo DC. Ty theo th mnh ca tng phng php, th mnh ca ngi dng m la chn phng php no l hp l, d s dng v mang li hiu qu cao

CHNG III : TNH TON THIT K PHN C KH 3.1.Gii thiu Phn c kh l ci khung ca m hnh do vy yu cu v chnh xc rt cao nht l ng tm gia cc trc phi tht chnh xc v sai s khng qu 0.2mm. Phn c kh bao gm 3 phn chnh 3.2. Bn v thit k 3.2.1.Cc gi Hai gi c thit k vi cc kch tht 100x30x70 C 2 bi 26 i din nhau gip cho vt-me quay d dng hn C 2 l 12.5 lp thanh dn hng a. Gi 1 :

Hnh 3.1 Kch tht gi 1

b. Gi 2 :

Hnh 3.2 Kch tht gi 2

3.2.2. Con chy Con chy c gn vi ai c c nhim v lin kt ai c vi thanh dn hng gip ai c chuyn ng tnh tin m khng b lc. Con chayl c gia cng chnh xc sao cho va kht vi bulong

Hnh 3.3 Kch tht con chy

3.2.3. Bn v hon chnh

Hnh 3.4 Bn v hon chnh

CHNG IV : TNH TON THIT K MCH IN 4.1.Mch ng lc Nhm s dng mch cu H bng cc MOSFET (IRF540 v IRF9540) thit k mch ng lc nhm cp ngun v iu khin o chiu ng c.Ngoi ra cn c mt MOSFET lm nhim v cp PWM iu khin tc ng c.Trong n nhm s dng MOSFET loi cm ng. 4.1.1 c tnh ca MOSFET

IRF540 (thng ng) IRF9540 (thng m) Hnh 4.1 MOSFET loi cm ng MOSFET hay cn gi l transistor c cc ca cch li, c tc dng nh mt kha K. Vic kch ng hay m kha K ty thuc vo in p t vo chn G ca FET.VG c th m hoc dng.

Ta c c tnh dn ca MOSFET nh hnh

Hnh 4.2 c tnh dn ca MOSFET 4.1.2 Mt s thng s quan trng ca MOSFET (IRF540 va IRF9540) - Dng lm vic Max t 23A 33A ty nhit mi trng cao hay thp - Kch dn bng p +- 20V - Nhit lm vic -55C 175 C - Thi gian tr +IRF 540 : turn on (11ns) v turn off (39ns) +IRF 9540 : turn on (16ns) v turn off (47ns) - Tn s chuyn mch cc i 1Mhz

4.1.3.S nguyn l a. S nguyn l


A 2 4 V B

Q R R 4 R 5 7 2 0 I R 1 4 O P 2 3 5 P T O 2 1 2 M 1 R 8 4 7 0 Q 4 G 1 F 9 5 4 0 Q 2 I R

3 R 6 7 2 0 F 9 5 4 0 4 1 O P 3 P T O 5 2 1 3 R R 7

2 R Q 5 4 9 7 0

T O

I R

5 4 0

I R

4 0

2 R R 1

4 V 1 2

M R R 1 2

C 4 O P P T O 5 2 1 I R F 1 5 4 0 Q 1 P R R 3 A B 1 2 3 4 C J

O 2

Hnh 4.3 S nguyn l mch cu H dng MOSFET b.Phn tch mch Mch dng 4 MOSFET (2 IRF540, 2 IRF9540) to cu H iu khin chiu ng c.Bn cnh 1 IRF540 lm nhim v cp PWM iiu khin vn tc ng c.Mch cn dng 3 Opto lm nhim v cch ly mch ng lc vi mch iu khin Atmega 8. IRF540 nh mt kha thng m,cn IRF9540 nh 1 kha thng ng.Khi c in th 540 ng li cn 9540 m ra. Theo mch bnh thng Q2 Q3 ng, Q4 Q5 m. - Khi ta kch mc 1 vo chn A : Q2 ng li Q4 m ra, dng in i t ngun qua Q3 qua ng c n Q4 v Mass, Q2 v Q5 m ra. - Khi ta kch mc 1 vo chn B : Q3 ng li Q5 m ra, dng in i t ngun qua Q2 qua ng c n Q5 v Mass, Q3 v Q4 m ra.

- Khi c xung PWM th Q1 s ng ngt lin tc theo xung iu khin in p trung bnh qua ng c t iu khin c tc ng c. u im ca mch : - Trnh c hin tng trng dn do cng 1 lc ch c Q2, Q5 hoc Q3, Q4 ng m thi. - C kh nng hm : Khi ngng cp ngun do qun tnh nn trong mch xut hin sut in ng cm ng.Nu ta cp mc 1 hoc mc 0 vo 2 chn A v B th s trit tiu c sut in ng ny.

4.2. Mch iu khin Nhm dng vi iu khin Atmega 8 iu khin thun nghch v cp PWM cho ng c.Ngoi ra cn dng cc IC ( h tr trong vic c encoder)

Hnh 4.4 Mch iu khin Atmega8 Phn tch mch : Mch dng Atmega 8 iu khin c MAX 232 giao tip my tnh thng qua cng COM. IC SN74LS86AN l IC cng XOR lm nhim v ghp xung tng phn gii (nhn xung) cho encoder mc ch lm cho vic iu khin chnh xc hn. IC SN74HC14 la IC strigger c tc dng lm p xung khi a t encoder.

CHNG V : THUT TON IU KHIN 5.1. tng : Dng my tnh thit k giao din truyn thng s v tr xung vi iu khin, sau vi iiu khin s nhn v x l tn hiu ri cho ng c chy n v tr nh trc. 5.2. Thc hin 5.2.1.Thit k giao din v lp trnh dng Visual Basic 6.0 Giao din gip ngi dng truyn 2 byte cha v tr cn i ca vt-me v cc thng s v chiu quay. a.Giao din

Hnh 5.1 Giao din VB

b.VB code Private Sub cmd1_Click() If cmd1.Caption = "Vitri" Then vitri = Val(txt1.Text) * 199 malenh(0) = 251 bytetosend(0) = vitri And 255 bytetosend(1) = vitri \ 256 And 255 MSComm1.Output = bytetosend() MSComm1.Output = malenh() Else cmd1.Caption = "Vitri" cmd5.Enabled = True vitri = Val(txt1.Text) * 197 malenh(0) = 251 bytetosend(0) = vitri And 255 bytetosend(1) = vitri \ 256 And 255 MSComm1.Output = bytetosend() MSComm1.Output = malenh() End If End Sub Private Sub cmd2_Click() malenh(0) = 253 MSComm1.Output = malenh() End Sub Private Sub cmd3_Click() malenh(0) = 254 MSComm1.Output = malenh() End Sub Private Sub cmd4_Click() malenh(0) = 252 MSComm1.Output = malenh() End Sub Private Sub cmd5_Click() cmd5.Enabled = False cmd1.Caption = "Ready" malenh(0) = 254 MSComm1.Output = malenh() End Sub

Private Sub Form_Load() With MSComm1 .CommPort = 1 'chose COM1 .Settings = "9600,N,8,1" 'baud 9600bps, none parity, 8 bit data, 1 bit stop .InBufferSize = 1024 .InputLen = 0 .RThreshold = 1 .SThreshold = 0 .OutBufferSize = 512 .InputMode = comInputModeBinary '.InputMode = comInputModeText .PortOpen = True End With cmd2.Enabled = False cmd3.Enabled = False End Sub Private Sub test_Click() If test.Caption = "Test" Then txt1.Enabled = False cmd5.Enabled = False cmd1.Enabled = False cmd2.Enabled = True cmd3.Enabled = True test.Caption = "Untest" Else txt1.Enabled = True cmd2.Enabled = False cmd3.Enabled = False test.Caption = "Test" cmd5.Enabled = True cmd1.Enabled = True End If End Sub

5.2.1.Lp trnh iu khin dng Atmega8 Sau khi nhn v tr do my tnh gi xung lc ny VK s cho trc vt-me quay n ng v tr th dng. Code : #include <mega8.h> #include <delay.h> #define thuan PORTC.5 #define nghich PORTC.4 int flag; unsigned int xung,xung1; unsigned int vitri; char m; // External Interrupt 0 service routine interrupt [EXT_INT0] void ext_int0_isr(void) { // Place your code here xung=xung+1; } // External Interrupt 1 service routine interrupt [EXT_INT1] void ext_int1_isr(void) { // Place your code here nghich=0; thuan=0; OCR1A=0 ; } #define RXB8 1 #define TXB8 0 #define UPE 2 #define OVR 3 #define FE 4 #define UDRE 5 #define RXC 7 #define FRAMING_ERROR (1<<FE) #define PARITY_ERROR (1<<UPE) #define DATA_OVERRUN (1<<OVR) #define DATA_REGISTER_EMPTY (1<<UDRE) #define RX_COMPLETE (1<<RXC)

// USART Receiver buffer #define RX_BUFFER_SIZE 8 char rx_buffer[RX_BUFFER_SIZE]; #if RX_BUFFER_SIZE<256 unsigned char rx_wr_index,rx_rd_index,rx_counter; #else unsigned int rx_wr_index,rx_rd_index,rx_counter; #endif // USART Receiver interrupt service routine interrupt [USART_RXC] void usart_rx_isr(void) { char status,data; status=UCSRA; data=UDR; if (data == 253) { flag = 1; thuan=1 ;nghich=0;OCR1A=80 ; } else if (data == 254) { flag =2 ; thuan=0 ;nghich=1;OCR1A=80 ; } else if (data==252) { flag=3; nghich=0;thuan=0 ;OCR1A=0 ; } else if (data==251) { xung1=xung+(unsigned int)vitri; flag=4; thuan=1;nghich=0;OCR1A=80; } else { m++; switch (m) {

case 1: vitri=(unsigned int)data; break; case 2: vitri=((unsigned int)data*256) + vitri; m=0; break; }; } } #ifndef _DEBUG_TERMINAL_IO_ // Get a character from the USART Receiver buffer #define _ALTERNATE_GETCHAR_ #pragma used+ char getchar(void) { char data; while (rx_counter==0); data=rx_buffer[rx_rd_index]; if (++rx_rd_index == RX_BUFFER_SIZE) rx_rd_index=0; #asm("cli") --rx_counter; #asm("sei") return data; } #pragma used#endif // USART Transmitter buffer #define TX_BUFFER_SIZE 8 char tx_buffer[TX_BUFFER_SIZE]; #if TX_BUFFER_SIZE<256 unsigned char tx_wr_index,tx_rd_index,tx_counter; #else unsigned int tx_wr_index,tx_rd_index,tx_counter; #endif // USART Transmitter interrupt service routine interrupt [USART_TXC] void usart_tx_isr(void) { if (tx_counter)

{ --tx_counter; UDR=tx_buffer[tx_rd_index]; if (++tx_rd_index == TX_BUFFER_SIZE) tx_rd_index=0; }; } #ifndef _DEBUG_TERMINAL_IO_ // Write a character to the USART Transmitter buffer #define _ALTERNATE_PUTCHAR_ #pragma used+ void putchar(char c) { while (tx_counter == TX_BUFFER_SIZE); #asm("cli") if (tx_counter || ((UCSRA & DATA_REGISTER_EMPTY)==0)) { tx_buffer[tx_wr_index]=c; if (++tx_wr_index == TX_BUFFER_SIZE) tx_wr_index=0; ++tx_counter; } else UDR=c; #asm("sei") } #pragma used#endif // Standard Input/Output functions #include <stdio.h> // Timer 0 overflow interrupt service routine interrupt [TIM0_OVF] void timer0_ovf_isr(void) { // Place your code here } // Declare your global variables here void main(void) { // Declare your local variables here

// Input/Output Ports initialization // Port B initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=Out Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=0 State0=T PORTB=0x00; DDRB=0x02; // Port C initialization // Func6=In Func5=Out Func4=Out Func3=In Func2=In Func1=In Func0=In // State6=T State5=0 State4=0 State3=T State2=T State1=T State0=T PORTC=0x00; DDRC=0x30; // Port D initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=P State2=P State1=T State0=T PORTD=0x0C; DDRD=0x00; // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: 250.000 kHz TCCR0=0x03; TCNT0=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: 16000.000 kHz // Mode: Fast PWM top=00FFh // OC1A output: Non-Inv. // OC1B output: Discon. // Noise Canceler: Off // Input Capture on Falling Edge // Timer 1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x83; TCCR1B=0x09; TCNT1H=0x00;

TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer 2 Stopped // Mode: Normal top=FFh // OC2 output: Disconnected ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; // External Interrupt(s) initialization // INT0: On // INT0 Mode: Any change // INT1: On // INT1 Mode: Falling Edge GICR|=0xC0; MCUCR=0x09; GIFR=0xC0; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x01; // USART initialization // Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On // USART Transmitter: On // USART Mode: Asynchronous // USART Baud rate: 9600 UCSRA=0x00; UCSRB=0xD8; UCSRC=0x86; UBRRH=0x00; UBRRL=0x67; // Analog Comparator initialization

// Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80; SFIOR=0x00; // Global enable interrupts #asm("sei") //vitri=1000; while (1) { if ((xung>=xung1)&&(flag==4)) { thuan=0; nghich=0; flag=0; } }; } 5.3. Kt qu : a.Nhng vic thc hin c: - Thi cng xong m hnh. - iu khin c v tr ca vt-me bi. - Thit k giao din truyn d liu t my tnh xung VK. b. Hn ch: - Do khng dng thut ton PID nn c sai s cng dn. - Nt nhn b nhiu qu nhiu gy sai lc trong qu trnh iu khin.

You might also like