ĐiỀu khiỂn ĐỘng cƠ khÔng ĐỒng bỘ 3 pha sỬ dỤng vi ĐiỀu khiỂn pic18f4431 ...

Upload: nguyen-ngoc-anh

Post on 10-Apr-2018

223 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    1/110

    i

    I HC QUC GIA TP H CH MINH

    TRNG I HC BCH KHOA

    KHOA IN IN T

    LUN VN TT NGHIP I HC

    IU KHIN NG C KHNG NG B 3 PHA

    S DNG VI IU KHIN PIC18F4431

    THEO PHNG PHP VECTOR KHNG GIAN

    TP H Ch Minh, 01/2007

    SVTH : NGUYN HUNH QUANG

    MSSV : 40202088

    CBHD : TS. PHAN QUC DNG

    B MN : CUNG CP IN

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    2/110

    ii

    NHN XT CA GIO VIN HNG DN

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Tp H Ch Minh, thng 1 nm 2007

    Gio vin hng dn

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    3/110

    iii

    NHN XT CA GIO VIN PHN BIN

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Tp H Ch Minh, thng 1 nm 2007

    Gio vin phn bin

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    4/110

    iv

    LI CM N !

    Ti xin gi li cm n chn thnh nhtn qu Thy C trngi Hc Bch

    Khoa Tp. H Ch Minh, nhng ngi truyn t cho ti nhng kin thc v kinh

    nghim qu bu trong sut thi gian ti hc tp ti trng.

    Ti xin trn trng gi li cm n n tt c cc Thy, C Khoa in - in T :

    thy L Minh Phng, thy Phan Quc Dng v thy Trn Thanh V..... tn tnh

    hng dn, gip , to miiu kin thun li ti hon thnh tt lun vn tt

    nghip ny.

    Ti xin gi li cm n n tt c nhng ngi bn, nhng ngi anh em ( L

    Trung Nam, V Vn V, Tit Vnh Phc..) nhng ngi cng gn b, cng hc

    tp v gip ti trong nhng nm qua cng nhtrong sut qu trnh thc hin lun

    vn tt nghip.

    Cui cng, ti cm n gia nh, nhng ngi thn, ngi yu (.T.T.N) v c

    bit l thn mu cho ti nhngiu kin tt nht hc tp trong sut thi gian

    di.

    Tp. H Ch Minh, thng 1 nm 2007

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    5/110

    v

    MC LC

    CHNG 1: 2GII THIU VNG C KB V PHNG PHP IU KHIN 2

    1.1> TNG QUAN VNG CNG B: .........................................................21.1.1) Gii thiu: ....................................................................................................21.1.2) Cu to: .......................................................................................................21.1.3) ng dng:....................................................................................................3

    1.2> CC PHNG PHPIU KHINNG C KB:....................................4CHNG 2: 5GII THIU V BIN TN NGUN P IU KHIN V/f=const 5

    2.1> BIN TN NGUN P:.....................................................................................52.2> PHNG PHPIU KHIN V/f:..................................................................5

    2.2.1) Phng php E/f .........................................................................................52.2.2) Phng php V/f .........................................................................................6

    2.3> PHNG PHPIU CH SIN PWM:...........................................................72.3.1) Gii thiu: ....................................................................................................72.3.2) Cc cng thc tnh ton: .............................................................................9

    2.3> PHNG PHPIU CH VECTOR KHNG GIAN ( SVM) ......................102.3.1) gii thiu chung: ........................................................................................102.3.2) S sp xp cc vector V0 -> V7 trn trc Va; Vb; Vc .........................112.3.2) Gii thiu vector Vs : .................................................................................132.3.3) Cch tnh ton thi gian to ra vectorVs

    uur

    :...........................................152.4> K THUTIU CH VECTOR KHNG GIAN: ..........................................16

    2.4.1) Gin ng ngt cc kha to ra Vector Vs trong tng sector:.......162.4.2) S tm tt ca qu trnh iu ch : ......................................................192.4.3) Tnh ton gc update ca vector Vs theo phng php iu khin V/f:...20

    CHNG 3: 22GII THIU V PICMicrocontrollers (MCUs) 223.1>TNG QUAN: ...................................................................................................22

    3.1.1> Nhng c im ni bc PIC18F4431: ....................................................243.1.2> Nhng c im chnh: ............................................................................25

    3.2>TM TT TRC PHN CNG:.......................................................................263.2.1> S chn MCU PIC18F4431 :...............................................................262.2.3) Chc nng ca tng chn:.......................................................................28

    3.3> CC MODULE C BN: ...............................................................................323.3.1> Power control PWM module : ...................................................................323.3.2> Analog to digital converter module (A/D):................................................48

    CHNG 4 : 51THIT K PHN CNG 51

    4.1> YU CU C BN : .......................................................................................514.2> S KHI CA H THNG : ....................................................................524.3> MCHNG LC : .......................................................................................53

    4.3.1) B chnh lu:..............................................................................................534.3.2) B nghch lu:............................................................................................544.3.3) Mch li ( driver) & cch ly: .......................................................................55

    4.2> MCHIU KHIN: .......................................................................................59

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    6/110

    vi

    4.2.1) S khi mch iu khin: .....................................................................594.2.2) Cc tn hiu vo ca mch iu khin: .....................................................594.2.3) Tn hiu u ra ca mch iu khin: .......................................................59

    CHNG 5: 60LP TRNH 60

    5.1> GII THUT LP TRNH : ..............................................................................605.1.1) Chng trnh chnh: ..................................................................................605.1.2) Chng trnh ngt: ....................................................................................61

    5.2> GII THCH GII THUT :.............................................................................625.2.1) Chng trnh chnh: ..................................................................................625.2.2) Chng trnh ngt : ...................................................................................62

    CHNG 6: 64KT QUT C 64

    6.1> PHN CNG:..................................................................................................646.1.1> Mch ng lc: .........................................................................................646.1.2> Mch iu khin:.......................................................................................65

    6.2> PHN MM GIAO TIP VI NGI S DNG:..........................................666.2.2) M t:.........................................................................................................676.3> DNG SNGIN P NG RA:...................................................................676.4> HNG PHT TRIN:...................................................................................68

    6.4.1) Khc phc nhng khuyt im hin ti: ....................................................68CHNG 7: 69TI LIU THAM KHO 69CHNG 8: 70PH LC 70

    8.1> S MCH (V TRN ORCAD):...............................................................708.1.1) S mch cch ly ...................................................................................70

    8.1.2 S mch li: ...........................................................................................728.1.3) S mch nghch lu : ...........................................................................738.1.4) S mch iu khin :............................................................................74

    8.2> CHNG TRNH VIT CHO PIC18F4431 : ..................................................768.3> CODE PHN MM GIAO TIP NGI S DNG:....................................102

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    7/110

    CHNG 1:GII THIU VNG C KB V PHNG PHP IU KHIN

    2

    CHNG 1:GII THIU VNG C KB V PHNG PHP IU KHIN

    1.1> TNG QUAN VNG CNG B:

    1.1.1) Gii thiu:

    ng cin khng ng b ba pha (AC Induction Motor) c s dngrt ph bin ngy nay vi vai tr cung cp sc ko trong hu ht cc h thngmy cng nghip. Cng sut ca cc ng c khng ng b c tht n500 kW (tng ng 670 hp) v c thit k tun theo quy chun c thnn c th thay i d dng cc nh cung cp.

    1.1.2) Cu to:

    Hnh 1.1: Cu to bn trong ng c KB

    1.1.2a) Phn tnh: Stato c cu to gm v my, li st v dy qun

    + V my:V my c tc dng cnh li st v dy qun, khng dng lm mch dnt. Thng v my c lm bng gang. i vi my c cng sut tng iln ( 1000kW ) thng dng thp tm hn li lm thnh v my. Tu theo cchlm ngui my m dng v cng khc nhau.

    + li st:Li st l phn dn t. V t trng i qua li st l t trng quay nn gim tn hao: li st c lm bng nhng l thp k thut in p li.

    + Dy qun:Dy qun statorc t vo cc rnh ca li st v c cch in tt vili st.

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    8/110

    CHNG 1:GII THIU VNG C KB V PHNG PHP IU KHIN

    3

    1.1.2b) Phn quay ( roto):

    Rotor c 2 loi chnh : rotor kiu dy qun v rotor kiu lng sc.

    + rotor kiu dy qun:

    Rto c dy qun ging nh dy qun ca stator. Dy qun 3 pha ca rtothng u hnh sao cn ba u kia c ni vo vnh trt thng lmbng ng t cnh mt u trc v thng qua chi than c thu vimch in bn ngoi. c im l c th thng qua chi than a in trph hay sut in ng ph vo mch in rto ci thin tnh nng mmy, iu chnh tc hoc ci thin h s cng sut ca my. Khi my lmvic bnh thng dy qun rotorc ni ngn mch. Nhc im so ving c rotor lng sc l gi thnh cao, kh s dng mi trng khcnghit, d chy n

    + rotor kiu lng sc:Kt cu loi dy qun ny rt khc vi dy qun stator. Trong mi rnh ca li

    st rotort vo thanh dn bng ng hay nhm di ra khi li st v cni tt li hai u bng hai vnh ngn mch bng ng hay nhm lm thnhmt ci lng m ngi ta quen gi l lng sc

    1.12c) Khe h khng kh:

    V rotor l mt khi trn nn khe hu. Khe h trong my in khng ngb rt nh hn ch dng in t ha ly t li v nh vy mi c th lmcho h s cng sut ca my cao hn.

    1.1.3) ng dng:

    My in khng ng b l loi my in xoay chiu ch yu dng lm ng cin( c bit l loi rotor lng sc) c nhiu u im hn so vi ng c DC. Do ktcu n gin, lm vic chc chn, hiu sut cao, gi thnh h nn ng c khngng b l loi my c dng rng ri trong cng nghip, nng nghip , i snghng ngy.

    Trong cng nghip, ng c khng ng b thng c dng lm ngunng lc cho cc my cn thp loi va v nh, cho cc my cng c cc nhmy cng nghip nh . . .

    Trong nng nghip, c dng lm my bm hay my gia cng nng sn

    phm. Trong i sng hng ngy, ng c khng ng b ngy cng chim mt v tr

    quan trng vi nhiu ng dng nh: qut gi, ng c trong t lnh, my quay da,. ..

    Tm li, cng vi s pht trin ca nn sn xut in kh ha v tng ha, phmvi ng dng ca ng c khng ng b ngy cng rng ri.

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    9/110

    CHNG 1:GII THIU VNG C KB V PHNG PHP IU KHIN

    4

    1.2> CC PHNG PHP IU KHIN NG C KB:

    So vi my in DC, vic iu khin my in xoay chiu gp rt nhiu kh khn biv cc thng s ca my in xoay chiu l cc thng s bin i theo thi gian,

    cng nh bn cht phc tp v mt cu trc my ca ng cin xoay chiu sovi my in mt chiu.

    Cc phng php iu khin ph bin:iu khin in p statoriu khin in tr rtoiu khin tn siu khin cng sut trt rto

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    10/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    5

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    2.1> BIN TN NGUN P:

    c s dng hu ht trong cc bin tn hin nay. Tc ca ng c khngng b t l trc tip vi tn s ngun cung cp. Do , nu thay i tn s cangun cung cp cho ng c th cng s thay i c tc ng b, v tngng l tc ca ng c.

    Tuy nhin, nu ch thay i tn s m vn gi nguyn bin ngun p cpcho ng c s lm cho mch t ca ng c b bo ha.iu ny dn n dng tha tng, mo dng in p v dng in cung cp cho ng c gy ra tn hao lit, tn hao ng trong dy qun Stator. Ngc li, nu t thng gim di nh mcs lm gim moment ca ng c.

    V vy, khi gim tn s ngun cung cp cho ng c nh hn tn snh mcthng i i vi gim in p cung cp cho ng c. V khi ng c hot ng vi

    tn snh mc th in p ng cc gi khng i v bng nh mc do giihn ca cch in ca Stator cng nh ca in p ngun cung cp, moment cang c s b gim.

    2.2> PHNG PHP IU KHIN V/f:

    2.2.1) Phng php E/f

    Ta c cng thc sau:

    mf

    fa = (2.1)

    + Vi f: tn s hot ng ca ng c,+ fm: tn snh mc ca ng c.

    Gi sng c hot ng di tn snh mc (a

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    11/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    6

    T 2 phng trnh trn suy ra iu kin dng in t ha khng i:

    constf

    E

    f

    EE

    a

    E

    m

    mm ===

    (2.4)

    Nh vy t thng ng cc gi khng i khi t l E/fc gi khng i(E/f = const).

    2.2.2) Phng php V/f

    Tuy nhin trong thc t, vic gi t thng khng i i hi mch iu khin rtphc tp. Nu b qua st p trn in tr v in khng tn mch stator, ta c thxem nh U E. Khi nguyn tc iu khin E/f=const c thay bng phngphp V/f=const.

    Trong phng php V/f=const (gi ngn l V/f), nh trnh by trn th tsV/fc gi khng i v bng gi tr ts ny nh mc.

    Ta c cng thc moment nh mc ng vi sn gin ca ng c:

    ( )

    ++

    +

    =

    2'21

    2'2

    1

    '22

    m

    b

    XXs

    RR

    s

    R.V

    .3

    M (2.5)

    V moment cc i chnh mc:

    ( )

    ++

    =2'

    21211

    2m

    bmax

    XXRR

    V.

    .2

    3M (2.6)

    Khi thay cc gi trnh mc bng gi tr nhn vi ts a (am, aVm, aX),Ta c c cng thc moment ca ng c tn s f khc nh mc:

    ( )2

    '2 2

    2'

    2'1 2

    1

    .

    3 .. ; ( 1)

    m

    b

    RV

    a sM aR R

    X Xa as

    =

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    12/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    7

    ( )

    1a,

    XXa

    R

    a

    R

    V.

    .2

    3M

    2'

    21

    211

    2m

    bmax >R1/a, st p trn R1 rt nh nn gi tr E suy gim rt t dn n t thng c gign nh khng i. Moment cc i ca ng c gn nh khng i.

    Tuy nhin, khi hot ng tn s thp th gi trin tr R1/a s tng i lnso vi gi tr ca (X1+X2), dn n st p nhiu in tr stator khi moment ti ln.iu ny lm cho E b gim v dn n suy gim t thng v moment cc i.

    b li s suy gim t thng tn s thp. Ta s cung cp thm cho ng

    c mt in p Uo cung cp cho ng c t thng nh mc khi f=0. T ta cquan h nh sau:U=Uo+K.f

    Vi K l mt hng sc chn sao cho gi tr U cp cho ng c bng Um tif=fm.

    Khi a>1 (f>fm),in p c gi khng i v bng nh mc. Khi ng chot ng ch suy gim t thng.

    Hnh 2.1: th biu din mi quan h gia moment v in p theo tn s trongphng php iu khin V/f=const.

    2.3> PHNG PHP IU CH SIN PWM:

    2.3.1) Gii thiu:

    to ra mt in p xoay chiu bng phng php SIN PWM, ta s dngmt tn hiu xung tam gic tn s cao em so snh vi mt in p sin chun c tn

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    13/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    8

    s f. Nu em xung iu khin ny cp cho mt b bin tn mt pha th ng ra sthu c mt dng in p dng iu rng xung c tn s bng vi tn s ngun sinmu v bin hi bc nht ph thuc vo ngun in mt chiu cung cp v tsgia bin sng sin mu v sng mang. Tn s sng mang phi ln hn tn sca sng sin mu. Sau y l hnh v miu t nguyn l ca phng php iu rng

    sin mt pha:

    Hnh 2.2: nguyn l ca phng php iu rng SIN mt pha

    Khi:

    control triV V> th2

    dcAO

    VV = (2.9)

    control triV V< th2

    dcAO

    VV =

    Nh vy, to ra ngun in 3 pha dng iu rng xung, ta cn c ngun sin3 pha mu v gin kch ng ca 3 pha sc biu din nh hnh v di y:

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    14/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    9

    Hnh 2.3: nguyn l ca phng php iu rng SIN 3 pha v dng sng in p ngra

    2.3.2) Cc cng thc tnh ton:

    Ta cn tnh c bin hi bc nht ca in p ng ra t ts bin giasng mang v sng tam gic

    Ta c cng thc sau tnh bin ca hi bc nht:

    2

    U

    .maU

    DC

    SIN(1) = (2.10)Trong ma l ts gia bin sng sin mu v bin sng mang cn gi

    l tsiu bin.

    carry

    SINsmp

    U

    Uam = (2.11)

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    15/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    10

    2.3> PHNG PHP IU CH VECTOR KHNG GIAN ( SVM)

    2.3.1) gii thiu chung:

    Sau y l s nguyn l ca b bin tn s dng 6 kha transitor cng sut :

    Hnh 2.4: S nguyn l b nghch lu 3 pha

    i vi phng php iu rng xung vector khng gian, b nghch lu cxem nh l mt khi duy nht vi 8 trng thi ng ngt ring bit t 0 n 7.

    S0 S2 S4

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    16/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    11

    Hnh 2.5: Trng thi ng ngt cc kha bn nghch lu

    Bng tm tt :

    Trng thi ca cckha

    in p pha in p dyVectorinp Q1 Q3 Q5 Van Vbn Vcn Vab Vbc Vca

    V0 0 0 0 0 0 0 0 0 0V1 1 0 0 2/3 -1/3 -1/3 1 0 -1V2 1 1 0 1/3 1/3 -2/3 0 1 -1V3 0 1 0 -1/3 2/3 -1/3 -1 1 0V4 0 1 1 -2/3 1/3 1/3 -1 0 1V5 0 0 1 -1/3 -1/3 2/3 0 -1 1V6 1 0 1 1/3 -2/3 1/3 1 -1 0V7 1 1 1 0 0 0 0 0 0

    Ghi ch: ln in p phi nhn vi VDC

    2.3.2) S sp xp cc vector V0 -> V7 trn trc Va; Vb; Vc

    i vi ngun p ba pha cn bng, ta lun c phng trnh sau:( ) ( ) ( ) 0a b cu t u t u t + + = (2.12)

    V bt k ba hm s no tha mn phng trnh trn u c th chuyn sangh ta 2 chiu vung gc. Ta c th biu din phng trnh trn di dng 3vector gm: [ua 0 0]T trng vi trc x, vector [0 ub 0]T lch mt gc 120o v vector [0

    0 uc]T lch mt gc 240o so vi trc x nh hnh sau y.

    Hnh 2.6: Biu din vector khng gian trong h ta x-y

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    17/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    12

    T ta xy dng c phng trnh ca vector khng gian trong h ta phc nh sau

    ( )(2 / 3) (2 / 3)2

    ( ) . .3

    j j

    a b cu t u u e u e = + +

    (2.13)

    + Ta xt trng hp b nghch lu trng thi u V1 :

    +VDC/2

    -VDC/2

    S1 S3 S5

    S0 S2 S4

    N

    a b c

    Ra Rb Rc

    +VDC/2

    -VDC/2

    N

    Ra

    Rb Rc

    Hnh 2.7: B nghch lu trng thi V1

    Ta c: Ra Rb Rc => Va= 2/3 Vdc ; Vb=Vc= -1/3 Vdc

    Xt trn h ta : trong 1 *( )Vs V K Va Vb Vc= = + +uur uur uur uur uur

    ; K=2/3 l h sbin hnh

    Vb

    Hnh 2.8: Vectorin p V1 trn ta

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    18/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    13

    + Tng t nh vy vi cc vector V2-> V6 , ta c gin sau:

    Hnh 2.9: Vectorin p V1->V6 trn gin

    + Ngoi ra , chng ta cn 2 trng hp c bit l vector V0 =V7= 0

    Hnh 2.10 : V7 & V0

    2.3.2) Gii thiu vector Vs :

    tng ca vic iu ch vector khng gian l to nn s dch chuyn lin tcca vector khng gian tngngca vectorin p b nghch lu trn quong trn, tng t nh trng hp ca vector khng gian ca i lng 3 phahnh sin to c. Vi s dch chuyn ca u n ca vector khng gian trn quo trn cc sng hi bc cao c loi b v bin p ra tr nn tuyn tnh.Vector tng ng y chnh l vector trung bnh trong thi gian mt chu k lymu Ts ca qu trnh iu khin b nghch lu p

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    19/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    14

    Hnh 2.11: Vector Vs trn h trc

    Hnh 2.12:in p 3 pha ng ra trong min thi gian tng ng Hnh 2.11

    VectorVsuur

    lin quan n cc trng thi kha transtior trong b bin tn ngunp VSI ( Voltage Source Inverter). Trong phng php SVM th VSI c ng ngt tn s rt ln (FPWM). FPWM quyt nh thi gian ly mu Ts cho vectorVs

    uur

    ( Ts=1/

    FPWM)

    C rt nhiu cch ng ngt cc kha BJT to ra vectorVsuur

    t cc vector0V

    uur

    ; 1Vuur

    ; 2Vuur

    ; 3Vuur

    ; 4Vuur

    ; 5Vuur

    ; 6Vuur

    ; 7Vuur

    .

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    20/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    15

    2.3.3) Cch tnh ton thi gian to ra vectorVsuur

    :

    Hnh 2.13: Vs sector 1

    Xt gc 1 phn su u tin ca hnh lc gic c to bi nh ca ba vector0V

    uur

    ; 1Vuur

    ; 2Vuur

    . Gi s trong khon thi gian Ts , ta cho tc dng vector 1Vuur

    trong

    khon thi gian TA,vector 2Vuur

    trong khon thi gian TB; vector 0Vuur

    trong khon thigian cn li trong chu k ly mu ( Ts- TA-TB). Vector tng ng c tnh bngvector trung bnh ca chui tc ng lin tip trn:

    0/70/71 2

    A ATT T

    Vs V V V Ts Ts Ts

    = + +

    uur uur uur uuur

    (2.14)

    A B 0/7Ts= T +T +T (2.15)

    Ta c tl bin c nh ngha nh sau :

    2

    3

    Vsm

    Vdc

    = (2.16)

    + trong Vs in p (pha) ng ra ca b bin tn (Va, Vb, Vc )

    Chiu phng trnh (2.14) ln trc X - Y ; s dng thm phng trnh (2.16) vts m (2.15)

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    21/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    16

    ( )

    ( )

    1

    2

    0 7 1 2

    2. .sin / 3

    3

    2. .sin

    3

    s

    s

    s

    T T m

    T T m

    T T T T

    =

    =

    =

    (2.17)

    => Nh vy trong khon thi gian ly mu Ts, thi gian tn ti ca cc trngthi TA; TB; T0/7 da vo tsm v gc pha ca vector Vs ( hay ni cch khc lda vo ln v v tr ca vector Vs trong khng gian)

    2.4> K THUT IU CH VECTOR KHNG GIAN:

    Thng thng, mt trong nhng tiu chun la chn gin ng kch linh

    kin l sao cho gim thiu ti a s ln chuyn mch ca linh kin =>gim tn haotrong qu trnh ng ngt chng. S ln chuyn mch s t nu ta thc hin trnh tiu khin sau:

    Hnh 2.14: Gin ng ngt linh kin

    2.4.1) Gin ng ngt cc kha to ra Vector Vs trong tng sector:

    Cc kha cng sut trong tng nhnh ng ngt i nghch nhau.n ginha s, ta chv trng thi ca 3 kha cng sut pha trn. Ba kha cn li ctrng thi i nghch vi 3 kha trn theo tng cp nh sau :

    + S0 S1+ S2 S3+ S4 S5

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    22/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    17

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    23/110

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    24/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    19

    2.4.2) S tm tt ca qu trnh iu ch :

    Hnh 2.15: S tm tt ca qu trnh iu ch

    Nh vy vector trung bnh ( Vs) c iu khin theo quo ng trn.Chiu quay c th thun hay nghch theo chiu kim ng h. ng trn ni tiphnh lc gic l qu o ca vector ko gian ln nht m phng php iu chvector khng gian ca b nghch lu p hai bc c tht c trong phm vi iukhin tuyn tnh. Bn knh ng trn ny chnh bng bin thnh phn c bnin p (pha) ti

    Hay3

    A B C

    VdcVs V V V = = = =

    uur uur uur uur

    ( )

    ( )

    1

    2

    0 7 1 2

    2. .sin / 3

    3

    2. .sin

    3

    s

    s

    s

    T T m

    T T m

    T T T T

    =

    = =

    Trong :

    +2

    3

    Vsm

    Vdc

    = l tsiu bin

    + Ts l chu kiu rng xung

    + l gc lch gia VA v VB

    (2.18)

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    25/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    20

    2.4.3) Tnh ton gc update ca vector Vs theo phng php iu khin V/f:

    TPW

    M

    TPWM

    Hnh 2.16: gc update ca vector Vs

    1)u tin ta chia cc sector (mi sector 60 ), thnh n phn bng nhau:=> Gc chia nh nht trong 1 sector:

    min

    60

    n = () (2.19)

    2) Ti tn st f => ( T=1/f):

    Vector Vs quay 360 trong thi gian TVector Vs quay ? trong thi gian TPWM

    =>

    WM' 360T

    PT

    = () : gc update ca vector Vs (2.20)

    3) Xy dngmin' * _ K update angle = = ( K l s nguyn)

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    26/110

    CHNG 2:GII THIU V BIN TN NGUN P IU KHIN V/f=const

    21

    => WM60

    360 *T

    PT Kn

    =

    => WM *360*T 60

    PT n

    K =

    M T=1/f

    =>WM

    1.360. .

    60P

    nK f

    f=

    Ta chn TPWM= 5 KHz ; n=512 gi tr trong 1 sector

    =>1 512

    .360. .5000 60

    K f=

    => 0.6144K f= = step size (2.21)

    Ta c tn s ft thay i t 0 -> 60 Hz

    => K= (0 ->36.684 )

    Hnh 2.17: Update vector Vs with stepsize

    Vy gc ca Vs c tnh bi cng thc sau :

    Vector update step size =DEGREE_CONSTANT x required Motor Speed (Hz)

    (2.22)Vecter angle =Vector angle + Update_angle

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    27/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    22

    CHNG 3:GII THIU V PICMicrocontrollers (MCUs)

    3.1>TNG QUAN:

    H vi iu khin PIC v dsPIC do hng ch to v sn xut vicng ngh hin i, ph hp cho cc ng dng n gin cho n phc tp.c bitngoi ngn ng lp trnh assembler nh cc MCU khc, ngi dng c th lp trnhPIC trn ngn ng C quen thuc thng qua cc phn mm h tr ( PIC18C ; CCS C; .)

    Gm cc h nh sau:

    8 bit:+ PIC10+ PIC12+ PIC16+ PIC18

    16 bit:

    + PIC24F+ PIC24H+ dsPIC30+ dsPIC33

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    28/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    23

    Ty theo cc ng dng c th m ngi dng c th chn ra Chip ph hp (theo hng dn ca nh sn xut ti trang ch ca microchip ). Trong PIC18F4431 l IC chuyn dng iu khin ng c 3 pha theo ngh ca caMicrochip

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    29/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    24

    3.1.1> Nhng c im ni bc PIC18F4431:

    14 bit Power Control PWM module:+ C n 4 knh ( mi knh gm 1 cp xung i nghch)

    + Thi gian dead time linh hot+ update tng duty cycle => ng ra PWM p ng nhanh+.

    Motion Feedback Module:+ C 3 knh capture c lp:

    - cc ch hot ng linh hot cho vic o c rng xung- Module h tr Hall Sensor- Special event trigger cho cc module khc

    + Quadrature Encorder interface:

    - 2 pha vo v 1 ng vo index t encorder- h tro c vn tc

    High speed, 200Ksps 10-bit A/D Converter:+ C 9 knh A/D+ 2 knh ly mu tc thi+ Ly mu lin tc:1 ; 2 hay 4 knh c la chn+ .

    Flexible Oscillator Structure:+ 4 ch thch anh ( h trn 40 MHz)

    + 2 ngun xung lock ngoi ln n 40 MHz+ Ch thch anh ni :

    - C 8 tn s ngi dng c th la chn : t 31Khz -> 8 MHz- OSCTUNE c th b cho s lch tn s (?)

    +..

    Peripheral Highlights:+ Chu dng cao : sink/source ( 25mA/25ma)+ 3 ngun ngt ngoi+ 2 module Capture / Compare / PWM (CCP)

    - Capture 16 bit, phn gii ti a 6.25 ns ( TCY/6)

    - Compare 16 bit, phn gii ti a 100 ns ( TCY)- PWM output: phn gii t 1 -> 10 bt

    + Module USART:

    - H tr RS-485, RS-232 v LIN1.2

    - Auto weak-up on start bit

    - Auto-Bound detect+ RS-232 s dng khi dao ng ni ( ko cn thch anh ngoi)

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    30/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    25

    3.1.2> Nhng c im chnh:

    + L CPU s dng tp lnh RISC v c tc x l cao , cng sut thp nhs dng cng ngh CMOS FLASH/EEPROM.+ Tp lnh c 75 lnh .+ Mt chu k lnh bng 4 chu k xung . S dng b dao ng 40 Mhz th chu k

    lnh l 0,1 us .+ Tn s b dao ng cho php ti 40Mhz.+ 8K x 14 word b nh FLASH lp trnh.+ 768 byte b nh RAM , trong b nh EEPROM ln n 256 byte.+ Trang b ti 34 ngt vi 8 cp ngt+ 5 port I / O.+ Trang b 3 bnh thi: 2 b 8 bit,1 b 16 bit.+ 2 module Capture/Compare/PWM.+ B chuyn i 10 bit ADC vi tc 5-10us.+ Cng serial ng b vi ch SPI(Master) v I2C (Master/Slave) thc hin

    bng phn cng .+ Ch chuyn nhn ng b/bt ng b vi 9 bit a chkim tra.+ Cng song song (PSP) 8bit .+ Cc chnh a ch:trc tip , gin tip , v tng i.+ Cho php c/ghi b nh chng trnh .+ C ch bo v m lp trnh .

    + Ch SLEEP(tm ngh) tit kim in nng .+ Cho php chn la ch dao ng ( ni , ngoi ).+ 2 chn cho php g ri hot ng ca vi iu khin.+ Lp trnh thng qua cng serial vi in th ch5 V.+ Tm in th hot ng rng: t 2 n 5.5V. Dng cp khong 25mA.+ c sn xut vi nhiu loi khc nhau cho cng 1 m vi iu khin , tu

    thuc vo s tnh nng c trang b thm . Cc kiu cm:PDIP(40chn), PLCC v QFP (cng 44 chn).

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    31/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    26

    3.2>TM TT TRC PHN CNG:

    3.2.1> S chn MCU PIC18F4431 :

    3.2.2> S cc khi chc nng :

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    32/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    27

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    33/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    28

    2.2.3) Chc nng ca tng chn:

    a)_PORT A:+ L port I/O . C tt c 6 chn, t RA0 n RA5.Trong RA2 v RA3 c thdng tip nhn in p Vref+ v Vref-.+ RA4 cn l ng vo xung clock cho Timer0. RA5 c th lm chn chn slavecho port serial ng b.

    b)_PORT B:+ L port I/O ,c thc lp trnh bi phn mm lm chc nng ko lncho tt c ng vo.+ RB0 c th lm chn ngt ngoi.+ RB3 c th lm ng vo lp trnh in th thp.+ Cc chn cn li c th lm ng vo ngt trn chn,lp trnh vi xung v dliu serial.

    c)_PORT C:+ L port I/O, c 8 chn:+ RC0 dng lm ng ra b dao ng Timer1 hoc ng vo xung timer1.+ RC1 ,RC2 c cng 3 chc nng: lm ng ra PWM / chn Compare( sosnh) / chn capture (ly mu).RC1 cn l ng vo b dao ng Timer1.+ RC3 l ng vo xung tun tng b/ hoc ra (vi ch SPI v I2C).+ RC4 lm chn nhn data (ch SPI) hay data I/O (ch I2C).+ RC5 c th xut data SPI ( ch SPI).+ RC6 c th lm chn pht bt ng b (USART) hoc xung ng b.

    d)_PORT D:+ L port I/O ,c th lm port slave song song khi giao tip vi 1 bus vi x l.

    e)_PORT E:_Port I/O ny thng dng iu khin chn/c/ghi cho port slave song song.

    f)_Cc chn khc:+ Chn 13(OSC1/CLKIN) tip nhn xung ngoi cho b dao ng thch anhbn trong.

    + Chn 14(OSC2/CLKOUT) lm ng ra b dao ng thch anh. chRC,chn ny c tn s bng ca OSC1.+ Chn 1 : lm ng vo reset .+ Chn 12, 31 l ni t Vss.Chn 11, 32 l chn cp ngun Vdd.

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    34/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    29

    M t cc I/O trch t datasheet:

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    35/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    30

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    36/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    31

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    37/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    32

    3.3> CC MODULE C BN:

    3.3.1> Power control PWM module :Power Control PWM module n gin l to ra nhiu xung ng b c rng

    thay i c ( PWM : Pulse Width Modulation ). Cc ng ra PWM ng dng trongiu khin ng c v cc ng dng chuyn i cng sut . Module PWM ny h triu khin cc ng dng sau :

    + ng c KB 1 pha v 3 pha+ Swithched Reluctance Motor+ ng c DC khng chi than+ UPS ( Uninterruptible Power Suppliers)+ Mutiple DC Brush motor

    Cc thng s c bn ca module PWM:

    + C 8 ng I/O PWM vi 4 duty cycle khc nhau+ phn gii 14 bit da trn PWM periode+ Thi gian dead time c th lp trnh ( ng dng trong trng PWM i

    nghch => chng trng dn )+ Ngt h tr update khng i( asymmertrical update ) xng trong ch

    canh gia ( center aligned mode)

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    38/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    33

    S khi ca module PWM

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    39/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    34

    Trong module PWM c 4 b to duty cycle ring bit, chng c nh s t 0 -> 3.Module ny c 8 ng ra, c nh s t 0->7. Trong chi nghch cc pinchn pin l l 1 cp. VD: PWM0 si nghch vi PWM1; PWM2 si nghch viPWM3; .

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    40/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    35

    B to dead time s chn 1 khon off gia lc xung PWM ca pin ny ang cnhxung v xung PWM ca chn i nghch ang ang cnh ln ( trong 1 cp chni nghch).iu ny ngn chn trng dn => cc kha cng sut c bo v

    3.3.1a) Cc thanh ghi iu khin:Hot ng ca module PWM c iu khin thng qua 22 thanh ghi khcnhau. 8 trong s c dng iu chnh cc thng s ca module:

    + PWM timer control register 0 ( PTCON0)+ PWM timer control register 1 ( PTCON1)+ PWM control register 0 ( PWCON0)+ PWM control register 1 ( PWCON1)+ Dead time control register (DTCON)+ Output overide register(OVDCOND)+ Output state register (OVDCONS)

    + Fault configrration register (FLTCONFIG)

    7 cp ( 14 thanh ghi) cn li : hiu chnh thng sc bit:+ PWM time base registers (PTMRH and PTMRL)+ PWM periode registers (PTPERH and PTPERL)+ PWM special event compare register ( SEVTCMPH and

    SEVTCMPL)+ PWM duty cycle #0 register ( PDC0H and PDC0L)+ PWM duty cycle #1 register ( PDC1H and PDC1L)+ PWM duty cycle #2 register ( PDC2H and PDC2L)

    + PWM duty cycle #3 register ( PDC3H and PDC3L)Nhng cp thanh ghi trn u double buffers

    3.3.1b) Cc module chc nng:PWM module h tr nhiu ch hot ng ph hp cho yu cu iu khin

    ng c. PWM module c tng hp t cc khi chc nng sau:+ PWM Time Base+ PWM Time Base Interrrupts+ PWM Period+ PWM Duty Cycle

    + Dead Time Generators+ PWM Output Overrides+ PWM Fault Inputs+ PWM Special Event Trigger

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    41/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    36

    3.3.1c) PWM Time Base:PWM time base c cung cp 12 bit timer vi chc nng prescaler and postcaler.S khi n gin ca PWM time base c trnh by trong hnh 17-4. PWM timebase c hiu chnh thng qua 2 thanh ghi PTCON0 v PTCON1. Time base c

    enabled hay disabled bi set hay clear bit PTEN trong thanh ghi PTCON1 . Ch ,cp thanh ghi PTMR ( PTMRH:PTMRL) s khng b clear khi bit PTEN b clear trongphn mm !!!

    PWM time base c 4 ch hot ng nh sau

    + Free running mode => edge aligned PWM+ Single shot mode => center aligned PWM+ Continous Up/Down count mode => support electronically commtated motors+ Continous Up/Down count mode with interrupts for double updates

    4 ch trn c la chn thng qua bit PTMOD1:PTMOD0 trong thanh ghiPTCON0.

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    42/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    37

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    43/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    38

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    44/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    39

    3.3.1d) PWM Time Base Interrrupts:PWM timer to ra interrupts da trn ch hot ng c la chn bi

    nhng bit PTMOD v nhng bit postscaler

    Interrupts trong ch FREE RUNNING:

    PWM time base ch time base ( PTMOD=00 ), s kin interrupts xy rakhi gi tr trong thanh ghi PTPER bng gi tr ca thanh ghi PTMR. Gi tr ca thanhghi PTMR sc c a v zero ngay xung clock sau .

    S dng postscaler ln hn 1:1 s gim tn s ca cc s kin interrupts .

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    45/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    40

    Interrupts trong ch SINGLE SHOT:

    Khi bit PTMOD=01 =>PWM time base ch single shot. S kin interrupts

    xy ra khi gi tr trong thanh ghi PTPER bng gi tr ca thanh ghi PTMR. Gi tr cathanh ghi PTMR sc c a v zero ngay xung clock sau .

    Nhng bit postscaler ko c tc dng g khi timer ch ny.

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    46/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    41

    Interrupts trong ch COUNTINOUS UP/DOWN COUTING:

    Khi bit PTMOD=10 =>PWM time base ch countinous up/down counting.S kin interrupts xy ra khi gi tr trong thanh ghi PTMR bng zero, v PWM timebase bt u m ln .

    Nhng bit la chn postscaler c th s dng trong ch ny ca timer lmgim tn s ca s kin interrupts .

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    47/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    42

    Interrupts trong ch DOUBLE UPDATE:

    Ch ny chc trong Up/Down Counting mode ( PTMOD=11 ). S kininterrupts xy ra mi khi gi tr thanh ghi PTMR tng ng vi zero hay khi gi trthanh ghi PTMR trng vi gi tr thanh ghi PTPER.

    Ch double update cung cp cho ngi dng thm 2 chc nng trong ch center-align mode:

    + Bandwidth c ln gp i v PWM duty cycle c update 2 lntrong mi chu k (periode)

    + C th to ra c dng sng PWM center-align khng i xng, iuny rt hu dng trong vic hn ch ti a s mo dng ca dng

    sng ng ra trong 1 sng dng iu khin ng c

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    48/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    43

    3.3.1e) PWM Period :

    PWM periode c nh ngha bi cp thanh ghi PTPER ( PTPERH vPTPERL). PWM periode c phn gii 12 bit. PTPER l cp thanh ghi doublebuffered s dng set chm ca PWM time base.

    Ni dung ca PTPER bufferc np vo thanh ghi PTPER cc thi imsau:

    + Free running mode v Single shot modes: thanh ghi PTMR c a vzero sau khi trng gi tr vi thanh ghi PTPER

    + Up/down counting mode: khi PTMR bng zero. Gi tr c lu trongPTPER buffer tng np vo thanh ghi PTPER khi PWM time base c

    disabled ( PTEN=0)

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    49/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    44

    3.3.1f) PWM duty cycle:

    PWM duty cycle c xc nh bi cc thanh ghi PDCx ( PDCxH v PDCxL).C tng cng 4 cp thanh ghi PWM duty cycle cho 4 cp xung PWM.

    + PDC0 (PDC0L v PDC0H)+ PDC1 (PDC1L v PDC1H)+ PDC2 (PDC2L v PDC2H)+ PDC3 (PDC3L v PDC3H)

    Gi tr trong mi thanh ghi xc nh khon thi gian m ng ra PWM tchcc.

    Trong ch Edge-aligned, PWM periode bt u ti Q1 v kt thc khi thanhghi duty cycle trng vi gi tr PTMR.

    Duty cycle register buffer:4 thanh ghi PWM duty cycle u c double buffered. Mi duty cycle block, u c

    thanh ghi duty clycle buffer m c th truy xut bi ngi dng. Thang ghi duty cyclebuffer th hai s gi gi tr so snh vi PWM periode hin ti.

    Trong ch edge-aligned PWM output, gi tr duty cycle mi sc update mikhi gi tr thai thanh ghi PTMR v PTPER trng nhau. Sau PTMR sc resetnh trong hnh 17-12. Ni dung ca duty cycle buffer s tng cp nht vo thanhghi duty cycle khi PWM time base b disable ( PTEN=0)

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    50/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    45

    Khi PWM time base ch Up/Down couting, gi tr duty cycle mi scupdate khi gi tr thanh ghi PTMR bng zero v PWM time base bt u m ln. Nidung ca duty cycle buffer s tng cp nht vo thanh ghi duty cycle khi PWMtime base b disable ( PTEN=0). Hnh 17-13 trnh by gin thi gian khi duty cyclec update ch Up/Down counting . Trong ch ny PWM periode phic sn sng np v tnh ton trc PWM duty cycle mi trc khi cc thayi c hiu lc.

    Khi PWM time base ch Up/Down couting vi double update mode, gi trduty cycle mi sc update khi gi tr thanh ghi PTMR bng zero v khi gi tr haithanh ghi PTMR v PTPER trng nhau. Ni dung ca duty cycle buffer s tngc np vo thanh ghi duty cycle khi mt trong hai iu kin trn xy ra.

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    51/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    46

    3.3.1g) B to thi gian dead time:

    Trong b bin tn , khi cc xung PWM chi nghch iu khin cckha cng sut pha cao; pha thp trong cng 1 nhnh, phi chn 1 khon thi giandead time. Khon thi gian dead time lm cho ng ra PWM i nghch u trng thi khng tc ng trong 1 khon thi gian ngn=> trnh trng dn khi khany ang ON , kha kia ang OFF

    Mi cp xung PWM i nghch u c mt counter 6 bit m xung, chnkhon dead time vo xung PWM. Mi b to dead time c b pht hin cnh ln vcnh xung c kt ni vi b so snh duty cycle. Dead time c np vo timerkhi pht hin PWM cnh ln hay cnh xung. Ty vo xung PWM ang cnh ln

    hay cnh xung, m 1 khon thi gian chuyn tip c lm tr cho n khi timerm v zero.

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    52/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    47

    Thanh ghi DTCON:

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    53/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    48

    Bng tm tt cc thanh ghi c lin quan ca POWER CONTROL PWM MODULE :

    3.3.2> Analog to digital converter module (A/D):

    B A/D c 5 ng vo cho PIC 28 chn v 8 cho cc PIC khc . Tn hiu analogc ly mu v gi bi tin , sau a vo b chuyn i . B ny to ra 1 ktqu s tng ng . Gi tr ny l 1 s 10 bit.

    B A /D c ng vo so snh p cao v thp ,v c th la chn thng qua kthp Vdd , Vss , RA2 hay RA3. B A/D c im c bit l c th hot ng trong khivi iu khin trng thi SLEEP . lm c iu ny , xung clock A/D phi cnhn t b dao ng RC ni ca b A/D.

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    54/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    49

    Module A/D c 9 thanh ghi :+ A/D Result High Register (ADRESH)+ A/D Result Low Register (ADRESL)+ A/D Control Register0 (ADCON0)+ A/D Control Register1 (ADCON1)

    + A/D Control Register2 (ADCON2)+ A/D Control Register3 (ADCON3)+ A/D chennel Select Register (ADCHS)+ Analog I/O Select Register 0 ( ANSEL0)+ Analog I/O Select Register 1 ( ANSEL1)

    S khi b A/D :

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    55/110

    CHNG 3: GII THIU V PICMicrocontrollers (MCUs)

    50

    Cc bc sau lm vic vi b A/D :

    1_Thit lp b A/D :+ Thit lp cc chn analog / so snh p v I/O s ( ADCON1 ) .+ Chn knh ng vo A/D (ADCONO).

    + Chn xung clock b A/D ( ADCONO).+ Kch hot A/D ( ADCONO ).2_Thit lp ngt A/D nu s dng

    + xo bit ADIF.+ Set bit ADIE.+ set bit PEIE+ set bit GIE

    3_Ch thi gian p ng cn thit.4_Bt u chuyn i : set bit ADCONO.5_Ch chuyn i A/D hon thnh bng cch hi vng bit ADCONO c b

    xo cha hay ch ngt A/D6_c kt qu t cp thanh ghi ADRESH : ADRESL , xo bit ADIF nu cn .

    7_Lp li t bc 1 hay 2 nu c yu cu. Thi gian chuyn i A/D mi bit gil TAD .

    Mt khong ch ti thiu 2TADc yu cu trc khi ln p ng k tip bt u.

    Cc thanh ghi ADRESH : ADRESL cha 10 bit kt qu ca chuyn i A/D .Khi s chuyn i A/D hon tt , kt qua vo cp thanh ghi ny , bit ADCON0 b xo v c ngt ADIF c set. Cp thanh ghi ny rng 16 bit . Do nu bitADFM =1 :ly 10 bit bean phi v ADFM = 0 th ly 10 bit bn tri , cc bit cn libng 0. Nu A/D b v hiu , cc thanh ghi ny c th dng nh 2 thanh ghi a mcch

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    56/110

    CHNG 4 : THIT K PHN CNG

    51

    CHNG 4 :THIT K PHN CNG

    4.1> YU CU C BN :

    Thit k b bin tn truyn thng ( 6 kha) ba pha iu khin ng cKB 1.5 kW

    Thng s tiu biu ca ng c 1.5 kW ( 2 HP) tn s 50 Hz nh sau :

    Cc thng s n v ng cu / saoPm Cng sut nh mc (KW) 1.5Vm in p nh mc (Vac) 380/220Im Dng in nh mc (A) 5.9/3.4

    osc H s cng sut 0.81RPM Vn tc ( vng /pht) 1420

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    57/110

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    58/110

    CHNG 4 : THIT K PHN CNG

    53

    4.3> MCH NG LC :

    4.3.1) B chnh lu:

    Yu cu:

    in p VDCu ra ca b chnh lu:

    +Trong phng php SVPWM th :3

    DC A B C

    VV V V= = =

    uur uur uur

    +ng c vn hnh chnh mc ( ) => tr bin (380* 2) / 3phaV =

    => 3* 540( )DC phaV V V uuuuur

    +ng c vn hnh chnh mc ( ) tr bin (220* 2) / 3phaV =

    => 3* 311( )DC phaV V V

    uuuuur

    Tr tc thi ca VDC c nn tng i phng Gn nh , gi thnh r

    => Ta s dng phng php chnh lu cu vi 6 diode ( c th chnh lu 1 pha ,hay 3 pha )

    Tr trung bnh in p u ra khi chnh lu cu 3 pha (khng iu khin):3 6 *

    osDCVpha

    V c

    = 515 (V) VDC yu cu (C chu sao)

    +Vpha : tr hiu dng p pha ngun (220 VAC)+= 0 : b chnh lu khng iu khin

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    59/110

    CHNG 4 : THIT K PHN CNG

    54

    Ghi ch:

    Trong iu kin thc t, nu chc ngun 1 pha thc hin chnh lu th inp VDC sau chnh lu :

    2 2 *os 200( )DC

    VphaV c V

    = =>ng c s khng th vn hnh ht nh

    mc c hai ch

    4.3.2) B nghch lu:

    C hai la chn chnh cho vic s dng kho ng ct cng sut trong iukhin ng c l MOSFET v IGBT. C hai loi MOSFET v IGBT u l linh kinc iu khin bng in p, ngha l vic dn v ngng dn ca linh kin ciu khin bng mt ngun in p ni vi cc gate ca linh kin thay v l dngin trong cc b nghch lu s dng transitor nh trc y. V vy cch s dngloi linh kin ny lm cho vic iu khin tr nn d dng hn.

    Thng thng MOSFET c s dng vi cc ng dng i hi tc cao,tuy nhin MOSFET khng c kh nng chu dng in cao. Trong khi IGBT thchhp vi cc ng dng tc thp, tuy nhin IGBT c kh nng chu c dngin cao. V vy tu vo c im ca ng dng m c s la chn linh kin phhp.

    Cc yu cu chnh t ra cho linh kin s dng lm b nghch lu :

    in p VDS ( Mosfet) hay VCE ( IGBT) > VDC

    Dng in qua linh kin > dng nh mc ca ng c 10A nhit hotng

    Chu c tn sng ngt cao

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    60/110

    CHNG 4 : THIT K PHN CNG

    55

    => IRFP460Pc la chn : tha mn cc yu t trn, c th mua d dngv gi thnh r !

    4.3.3) Mch li ( driver) & cch ly:

    a) Mch li :

    C hai phng n chnh li MOSFET hay IGBT :+ Bin p xung+ IC li

    Trong cc phng n c bin p xung, trng hp xung iu khin c cnh tcng ko di hoc tn s thp, bin p xung sm t trng thi bo ha v ng raca n khng ph hp yu cu iu khin. Do ta nn s dng loi high voltagebootstrap diver ICs.

    Trong : IR2136 l loi IC chuyn dng li MOSFET v IGBT ca hng IR- International Rectifier. IC ny c 3 knh output c lp (mi knh gm high side andlow side) dng cho cc ng dng 3 pha.

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    61/110

    CHNG 4 : THIT K PHN CNG

    56

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    62/110

    CHNG 4 : THIT K PHN CNG

    57

    b) mch cch ly:

    Cc mch pht ra tnh hiu iu khin mch cng sut dng bn dn phic cch ly vin.iu ny c th thc hin bng opto hoc bng bin p xung.

    + Bin p xung :Gm mt cun dy s cp v c th nhiu cun th cp. Vi nhiu cun dy

    pha th cp, ta c th kch ng nhiu transistor mc ni tip hoc song song.

    Bin p xung cn c cm khng tn nh v p ng nhanh. Trong trng hpxung iu khin c cnh tc ng ko di hoc tn s thp, bin p xung sm ttrng thi bo ha v ng ra ca n khng ph hp yu cu iu khin.

    + Opto :Gm ngun pht tia hng ngoi dng diode (IR - LED) v mch thu dng

    phototransistor. Do tha mn yu cu cch ly vin, ng thi p ng caopto tt hn my bin p xung.

    => ta la chn phng n dng OPTO. Yu cu t ra i vi opto l phi chuc tn sng ngt kh cao (>5KHz) m in p xung ng ra ko b mo dng.Trong , HCPL-2630 l optocouplers ca hng fairchild c tn sng ngt lntha mn yu cu trn.

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    63/110

    CHNG 4 : THIT K PHN CNG

    58

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    64/110

    CHNG 4 : THIT K PHN CNG

    59

    4.2> MCH IU KHIN:

    4.2.1) S khi mch iu khin:

    4.2.2) Cc tn hiu vo ca mch iu khin:

    Nt n iu khin ng c:+ RUN+ STOP+ F/R+ Bin triu chnh tc

    Nt n iu khin LCD:+ MODE+ UP+ DOWN+ LEFT+ RIGHT+ SELECT

    Tn hiu hi tip: (*)+ Dng in ca ng c+ in p ng c+ Tc ng c+ Nhit ca kha BJT

    Tn hiu iu khin t PC

    4.2.3) Tn hiu u ra ca mch iu khin:+ 6 xung PWM iu khin b nghch lu+ Hin th trng thi hot ng ca mch thng qua n LED+ Hin th cc thng siu khin bng LCD+ Xut tn hiu cho PC

    Ghi ch: (*) => s pht trin sau

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    65/110

    CHNG 5: LP TRNH

    60

    CHNG 5:LP TRNH

    5.1> GII THUT LP TRNH :

    5.1.1) Chng trnh chnh:

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    66/110

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    67/110

    CHNG 5: LP TRNH

    62

    5.2> GII THCH GII THUT :

    5.2.1) Chng trnh chnh:

    (1) Chng trnh bt u khi cp ngun cho PIC

    (2) Xc lp cc thng s ban u :+ I/O pin+ A/D module+ Timer+ Power Contrl PWM module+ Interrupts event

    (3) X l nt n RUN

    (4) Trng thi IDLE: hin th LED bo trng thi idle, ng thi qua li phn (3)kim tra xem nt RUN c c n hay khng

    (5) c gi tr f yu cu t bin tr (mode 1) ; LCD (mode 2) hoc PC (mode 3)

    (6) Khi tn s f yu cu thay i: tnh ton cc bin sVref, stepsize. Hai thngs ny dng update cc gi tr v ln v bc nhy ca vector Vs khichng trnh ngt PWM xy ra. Vref dng tnh ton t siu bin m =Vref/Vdc. Stepsize xc nh gc update ca vector Vs

    (7) Kim tra xem button no c n ( STOP , F/R) => x l button c

    n+ STOP button: => set cc duty cycle v zero => qua li v tr (4) : IDLE+ F/R button: => gi hm RAM_DOWN gim tc ng c v zero => o chiu

    quay vector Vs => gi hm RAM_UP tng tc ng cn tn st+ ..

    5.2.2) Chng trnh ngt :

    (1) Khi c ngt c set ln 1, sao lu trng thi ca vi iu khin

    (2) Gc ca vector Vs = gi tr gc ban u + gc update ( bc nhy). lnca vector Vs c xc nh trn tn st (=> tsiu bin m)

    (3) C tng cng 6 sector. Mi sector 60 c chia thnh 512 phn bngnhau. Khi vector Vs qut ht sector hin ti ( stepsize > 512), chuyn sang Vssector mi => (4)

    (4) Vs chuyn sang sector mi v reset gi tr stepsize. ( stepsize = stepsize 512 ). Hnh trnh by c th vn ny.

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    68/110

    CHNG 5: LP TRNH

    63

    (5) V (6) reset gi tr ca sector khi Vs qua ht 1 vng.

    (7) xc nh thi gian TA, TB, T0/2 v (Ts - T0/2)

    (8) Np cc gi tr trn vo thanh ghi PWM duty cycle

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    69/110

    CHNG 6: KT QUT C

    64

    CHNG 6:KT QUT C

    6.1> PHN CNG:

    6.1.1> Mch ng lc:

    Hnh 6.1: Mch ng lc

    + u im:Mch ng lc vn hnh n nh ng c 2 HP ( u ; khng ti ) tt ccc chiu khin thng thng( RUN, STOP, o chiu, thay i tc..).

    + Khuyt im:- Nhit cc kha cng sut kh cao ( 70-80 C)- Cha c khu hi tip dng ,hi tip tc , hi tip nhit kha cng

    sut

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    70/110

    CHNG 6: KT QUT C

    65

    + Gii php khc phc:- Nhit cc kha cng sut kh cao => thay th cc kha cng sut bngloi cht lng tt, p ng tt hn .

    - Pht trin thm khu hi tip dng => ngn chn qu dng ng c

    - Pht trin khu hi tip tc => iu khin vng kn ng c- Pht trin khu hi tip nhit ca kha cng sut => ngn chn hintng qu nhit

    6.1.2> Mch iu khin:

    Hnh 6.2: Mch iu khinu im:

    Mch iu khin c kh nng p ng cc yu cu iu khin ng c trongthc t:

    + Cc buttons iu khin ng c: RUN, STOP, o chiu, bin tr hiuchnh tc

    + Cc buttons iu khin LCD: set cc thng s ci t (thi gian tng tc,gim tc.)

    + LCD : hin th trng thi hot ng ca ng c

    + giao tip vi PC: nhn gi tr tc t t PC, hin th trng thi hotng ca motor ln my tnh

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    71/110

    CHNG 6: KT QUT C

    66

    6.2> PHN MM GIAO TIP VI NGI S DNG:

    ]Hnh 6.3: phn mm iu khin

    Hnh 6.4: phn mm iu khin ( lc ng c hot ng)

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    72/110

    CHNG 6: KT QUT C

    67

    6.2.2) M t:

    Phn mm iu khin c vit trn ngn ng Visiual Basic 6.0Phn mm giao tip vi vi x l PIC18F thng qua cng COM ( chun RS232)

    Cc nt iu khin:+ RUN / SEND: Khi ng ng c / gi tn s yu cu n vi x l+ STOP: dng ng c+ CHANGE: o chiu ng c

    Cc hin th v nhp liu:+ f request: nhp liu tn s t bn phm+ f out: hin th gi tr tn s ng ra+ V out: hin th dng in p ng ra ( V/f = const)+ Status: hin th trng thi ng c ( RUNNING , STOP)+ Direction: hin th chiu quay ca ng c ( thun ; nghch )

    6.3> DNG SNG IN P NG RA:

    Hnh 6.5: in p pha ng ra ( ti R)

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    73/110

    CHNG 6: KT QUT C

    68

    Hnh 6.6: in p pha ng ra ( ti R)

    Hnh 6.7: in p dy ng ra ( ti ng c)

    6.4> HNG PHT TRIN:

    6.4.1) Khc phc nhng khuyt im hin ti:

    + Phn cng: cp ti phn 6.1.1 trang 63

    + Phn mm ( giao tip ngi s dng v PIC18F):

    Pht trin thm phn ci t cc thng s ( PID cho u khin vng kn)

    + Phng php iu khin:iu khin vng kn

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    74/110

    CHNG 7: TI LIU THAM KHO

    69

    CHNG 7:TI LIU THAM KHO

    [1] Ts. Phan Quc Dng ,Truyn ngin[2] Ts. Nguyn Vn Nh, in tcng sut 1

    [3] Jon Buroughs,AN900: Controlling 3 phase induction motors using thePIC18F4431, Microchip Techology Inc

    [4] Rakesh Parekh,AN955:V/f Control of 3 phase induction motor usingspace vecter modulation, Microchip Techology Inc

    [5] Prof. Ali Keyhani, Pulse-Width Modulation (PWM) Techniques lecture 25,Department of Electrical and Computer EngineeringThe Ohio State University

    [6] PIC18F4431 datasheet

    [7] CCSC User Manual

    [8] Flex LCD Driver Aministrator of CCS Forum

    [9]

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    75/110

    CHNG 8: PH LC

    70

    CHNG 8:PH LC

    8.1> S MCH (V TRN ORCAD):

    8.1.1) S mch cch ly

    R35

    110

    R42

    110

    5V_1

    5V_1

    Vin1+1

    Vin1-2

    Vin2-3

    Vin2+4

    VCC8

    Vout17

    Vout26

    GND5

    U11

    HCPL2631

    R37 220

    R38 220

    0

    5V_1

    Vin1+1

    Vin1-2

    Vin2-3

    Vin2+4

    VCC8

    Vout17

    Vout26

    GND5

    U12

    HCPL2631

    R40 220

    R41 220

    0

    R43

    110

    R44

    110

    + C7

    0.1uF

    H1H2H2H3H3L1L1L2L2L3L3

    1234567

    J8

    0

    + C8

    0.1uF

    + C9

    0.1uF

    Vin1+1

    Vin1-2

    Vin2-3

    Vin2+4

    VCC 8

    Vout17

    Vout26

    GND5

    U10

    HCPL2631

    5V_2

    R33 220

    R36

    110

    R34 220

    R45

    110

    5V_2

    5V_2

    0

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    76/110

    CHNG 8: PH LC

    71

    5V_1

    15V

    C10

    100uF

    C11

    100uFC12470uF

    C1310uF

    C14470uF

    C1510uF

    C16

    104

    C17104

    12

    J5

    6V_AC

    12

    J6

    12V_AC

    IN1

    OUT3

    GND

    2

    U3 LM7805C

    IN1

    OUT3

    GND

    2

    U4 LM7815C

    2

    1

    3

    4

    -

    +

    D15

    BRIDGE_3A

    2

    1

    3

    4

    -

    +

    D16

    BRIDGE_3A

    R1

    330

    D17

    LED

    R2

    1k

    D18

    LED

    5V_2

    C18

    100uFC19470uF

    C2010uF

    C21

    104

    12

    J7

    6V_AC

    IN1

    OUT3

    GND

    2

    U5 L M7 80 5C

    2

    1

    3

    4

    -

    +

    D19

    BRIDGE_3AR3

    330

    D20

    LED

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    77/110

    CHNG 8: PH LC

    72

    8.1.2 S mch li:

    15V

    + C4.1uF

    ITRIP

    ENABLE

    ITRIP

    FAULT

    H1H1H2H2H2H2H3H3H3H3

    L1L1L1L1L2L2L2L2L3L3

    RVAR2

    +C5

    10uF

    15V 12V

    ENABLE

    + C6

    10uF

    15V

    ENABLEENABLEENABLEENABLEFAULTFAULTFAULTFAULT

    R26 100R27 100R28 100

    R29 100R30 100R31 100

    R20

    100

    R32

    100

    R21

    100

    R22

    100

    R23 100

    R24 100

    R25 100

    ITRIPITRIPITRIPITRIP

    VCC1

    HIN12

    HIN23

    HIN34

    LIN15

    LIN26

    LIN37

    FAULT8

    ITRIP9

    EN10

    RCIN11

    VSS12

    COM13

    LO314

    LO215

    LO11617

    17

    VS318

    VS222

    VS126

    VB128

    VB224

    VB320

    HO127

    HO223

    HO319

    2121

    2525

    U1

    IR2136

    1234

    56789

    10

    J1OUTPUTS

    + C11uF

    + C21uF

    + C31uF

    D1 DIODE XUNG

    D2 DIODE XUNG

    D3 DIODE XUNG

    VS1HO1

    HO3

    VS2HO2

    LO1VS3

    LO3LO2

    12345

    J3CONTROL

    COM

    HO2

    HO1

    VS2

    VS1

    HO3

    VS3

    PR 1R 5W

    LO1

    COM

    LO3

    LO2

    15V

    COM

    RVAR1

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    78/110

    CHNG 8: PH LC

    73

    8.1.3) S mch nghch lu :

    R1

    10K

    R2

    10K

    R3

    10K

    R4

    10K

    R5

    10K

    R6

    10K

    H2H2H2 H3

    L1 L2 L3L3

    S3

    H1

    S1

    COM

    F1

    FUSE

    VDC

    1

    2

    3

    J1

    MOTOR

    P1

    P2

    P31

    2

    J2

    CON2

    VDC

    COM

    1

    2

    34

    5

    6

    7

    8

    9

    10

    J3

    CON10

    COM

    L3

    L2

    L1

    H2

    S2

    H3

    S3

    H1

    S1

    S2S2S2 S3

    P1

    P2

    P3

    S3S3S3S3S3S3

    1

    2

    3

    Q1

    1

    2

    3

    Q2

    1

    2

    3

    Q3

    1

    2

    3

    Q4

    1

    2

    3

    Q5

    1

    2

    3

    Q6

    12

    J4

    AC_VOLTAGE

    D1

    D2

    D3

    D4

    C1C

    VDC

    COM

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    79/110

    CHNG 8: PH LC

    74

    8.1.4) S mch iu khin :

    8.1.4.a) Phn chnh:

    VCC

    PWM0

    RA2

    PWM5

    C3 22P

    SW_RESET

    1

    3

    C_Vcc1

    104

    SW_DIP

    SW DIP-8

    VCC

    STOP

    D2

    D7

    RA4

    PGD

    UPDOWN

    LED4

    RC7

    D5

    OSC2

    D0

    D4

    PWM3PWM4

    ENTER

    LED7

    MCRL

    PWM4

    PGC

    U16_1ZENNER

    VCC

    PWM2

    Y2 20MHZ

    PWM0

    C4 22P

    VCC

    D5

    PORTA_1

    123456

    123456

    MCRL

    D4

    LED8

    PGC

    D2

    PWM1

    PGD

    PWM2

    VCC

    OSC1

    LED5

    RA1

    RA3

    OSC1

    D1

    FR

    RC6

    PORTC_1

    8

    67

    54321

    8

    67

    54321

    MODE

    MCRL

    LED3

    D0

    PORTD_1

    PORTD_1

    8

    67

    54321

    8

    67

    54321

    PIC18F4431

    1234567

    89

    10

    1112

    1314

    15161718

    1920

    4039383736353433

    3231

    30292827

    26252423

    2221

    MCRLRA0/AN0RA1/AN1RA2/AN2RA3/AN3RA4/AN4RA5/AN5

    RE0/AN6RE1/AN7RE2/AN8

    VddVss

    OSC1/RA7OSC2/RA8

    RC0RC1/CCP2RC2/CCP1RC3/INT0

    RD0RD1/SDO

    RB7/PGDRB6/PGC

    RB5/PWM4RB4/PWM5RB3/PWM3RB2/PWM2RB1/PWM1RB0/PWM0

    VddVss

    RD7/PWM7RD6/PWM6RD5/PWM4

    RD4

    RC7/RX/DTRD6/TX/CKRC5/SCKRC4/SDA

    RD3/SCKRD2/SDI

    PORTB_1

    PORTB_1

    8

    67

    54321

    8

    67

    54321

    RA5

    D3

    D3

    LED2

    D7

    RUN

    PWM3

    PWM1

    LEFT

    LED1

    PORTB_PWM

    PORTB_PWM

    67

    54321

    67

    54321

    D6

    D1

    D6

    OSC2

    Programing conector

    CON6N

    123456

    123456

    R_RESET_SW

    1K PWM5

    C_Vcc2

    104

    RA0

    VCC

    RIGHT

    LED6

    8.1.4.b) Phn hi

    n th

    v giao ti

    p my tnh nt

    n:

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    80/110

    CHNG 8: PH LC

    75

    C_C3

    C_cocuc

    VCC

    VCC

    R_MODESW

    4k7

    SW_MODE

    1

    3

    C_1

    1UF

    SW_UP

    1

    3

    SW_RUN

    1

    3

    C_DOWNSW

    104

    C_MODESW

    104

    R_UPSW

    4k7

    BUTTON

    SW_DOWN

    1

    3

    C_C5C_cocuc

    SW_FR

    1

    3

    RC6

    R_STOPSW

    4k7

    VCC

    C_LEFTSW

    104

    D4

    R_FRSW

    4k7

    RS2

    VCC

    R_RUNSW

    4k7

    U18

    10k

    1

    3

    2

    VCC

    D7

    U10

    MAX232

    13

    8

    11

    10

    1

    3

    4

    5

    2

    6

    12

    9

    14

    7

    16

    15

    R1IN

    R2IN

    T1IN

    T2IN

    C+

    C1-

    C2+

    C2-

    V+

    V-

    R1OUT

    R2OUT

    T1OUT

    T2OUT

    VCC

    GND

    VCC

    RIGHT

    VCC

    D6

    SW_LEFT

    1

    3

    C_UPSW

    104

    RC7

    VCC

    D2

    LEFT

    RUN

    U7

    COM9NS

    59

    48

    37

    26

    1

    C_C21UF

    C_FRSW

    104

    VCC

    RS3

    MODE

    VCC

    R_RIGHTSW

    4k7

    D5

    STOP

    C_C4C_cocuc

    SW_STOP

    1

    3

    U17

    LCD

    12345678910

    11

    12

    13

    14

    15

    16

    GND

    VCC

    Vee

    RS

    R/W

    E

    DB0

    DB1

    DB2

    DB3

    DB4

    DB5

    DB6

    DB7

    Lamp-

    Lam+

    R_LEFTSW

    4k7

    DOWN

    RS2

    SW_RIGHT

    1

    3UP

    C_RIGHTSW

    104

    VCC

    C_STOPSW

    104

    D0

    FR

    R_DOWNSW

    4k7

    D1

    RS3

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    81/110

    CHNG 8: PH LC

    76

    8.2> CHNG TRNH VIT CHO PIC18F4431 :

    Chng trnh sau y c vit trn ngn ng CCS

    ////////////////////////////////////////////////////////////////////////////////////////////////

    // MODE 1: R_VAR => dieu khien = RUN , FR, STOP button va` R_VAR// MODE 2: AUTO// 1) nhap gia tri f1 (freq1)// 2) nhap gia tri f2 (freq2)// 3) nhap gia tri T ramp_up// 4) nhap gia tri T ramp_down// =>dieu khien = RUN , FR, STOP button va` mode 2 toc do ( thongbutton //thay doi toc do= "^" key)// MODE 3: PC control//////////////////////////////////////////////////////////////////////////////////////////////////////

    #include //Header file in project manager of MPLAB

    #device *=16 adc=8 HIGH_INTS=TRUE#fuses HS,NOWDT,NOPROTECT,PUT,NOBROWNOUT,NOLVP#use delay (clock=20000000) //use delay function#use rs232(baud=9600,xmit=PIN_C6,rcv=PIN_C7)

    #include // Other files in project manager of MPLAB

    //PTPER*4*sqrt(3)*SIN {data[0] -> data[511] }int16 const data[512]={0, 7, 14, 21, 28, 35, 43, 50, 57, 64,71, 78, 85, 92, 99, 106, 114, 121, 128, 135,142, 149, 156, 163, 170, 177, 184, 192, 199, 206,213, 220, 227, 234, 241, 248, 255, 262, 269, 277,284, 291, 298, 305, 312, 319, 326, 333, 340, 347,354, 361, 368, 376, 383, 390, 397, 404, 411, 418,425, 432, 439, 446, 453, 460, 467, 474, 481, 488,495, 502, 509, 516, 523, 530, 537, 544, 551, 558,565, 572, 579, 586, 593, 600, 607, 614, 621, 628,635, 642, 649, 656, 663, 670, 677, 684, 691, 698,705, 712, 719, 726, 733, 740, 747, 754, 760, 767,774, 781, 788, 795, 802, 809, 816, 823, 830, 836,843, 850, 857, 864, 871, 878, 885, 891, 898, 905,912, 919, 926, 933, 939, 946, 953, 960, 967, 973,

    980, 987, 994, 1001,1007,1014,1021,1028,1035,1041,1048,1055,1062,1068,1075,1082,1089,1095,1102,1109,1116,1122,1129,1136,1142,1149,1156,1163,1169,1176,1183,1189,1196,1203,1209,1216,1223,1229,1236,1242,1249,1256,1262,1269,1275,1282,1289,1295,1302,1308,1315,1322,1328,1335,1341,1348,1354,1361,1367,1374,1380,1387,1393,1400,1406,1413,1419,1426,1432,1439,1445,1452,1458,1465,1471,1477,1484,1490,1497,1503,1509,1516,1522,1529,1535,1541,1548,1554,1560,1567,

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    82/110

    CHNG 8: PH LC

    77

    1573,1579,1586,1592,1598,1605,1611,1617,1623,1630,1636,1642,1648,1655,1661,1667,1673,1680,1686,1692,1698,1704,1710,1717,1723,1729,1735,1741,1747,1754,1760,1766,1772,1778,1784,1790,1796,1802,1808,1814,1820,1826,1832,1839,1845,1851,1857,1863,1868,1874,

    1880,1886,1892,1898,1904,1910,1916,1922,1928,1934,1940,1946,1951,1957,1963,1969,1975,1981,1986,1992,1998,2004,2010,2015,2021,2027,2033,2038,2044,2050,2056,2061,2067,2073,2078,2084,2090,2095,2101,2107,2112,2118,2124,2129,2135,2140,2146,2151,2157,2163,2168,2174,2179,2185,2190,2196,2201,2207,2212,2218,2223,2228,2234,2239,2245,2250,2256,2261,2266,2272,2277,2282,2288,2293,22982304,2309,2314,2320,2325,2330,2335,2341,2346,2351,2356,2361,2367,2372,2377,2382,2387,2392,2398,2403,2408,2413,2418,2423,2428,2433,2438,2443,2448,2453,2458,2463,2468,2473,2478,2483,2488,2493,2498,2503,2508,2513,2518,2522,2527,

    2532,2537,2542,2547,2551,2556,2561,2566,2571,2575,2580, 2585,2589,2594,2599,2604,2608,2613,2618,2622,2627,2631,2636,2641,2645,2650,2654,2659,2664,2668,2673,2677,2682,2686,2691,2695,2699,2704,2708,2713,2717,2722,2726,2730,2735,2739,2743,2748,2752,2756,2761,2765,2769,2773,2778,2782,2786,2790,2795,2799,2803,2807,2811,2815,2820,28242828,2832,2836,2840,2844,2848,2852,2856,2860,2864,28682872,2876,2880,2884,2888,2892,2896,2900,2903,2907,2911,2915,2919,2923,2927,2930,2934,2938,2942,2945,2949,2953,2957,2960,2964,2968,2971,2975,2978,2982,2986,2989,2993,2996,3000 };

    #define RUN PIN_C0 //all BUTTON is active LOW#define FR PIN_E0#define STOP PIN_E1

    #define MENU PIN_E2 // back to previous level in MENU#define OK PIN_C1#define UP PIN_C2#define DOWN PIN_C3#define BACK PIN_C4#define NEXT PIN_C5

    //--------------------------------------------------------caculation variblefloat f_float=0,temp_float=0;

    signed long Vs_angle; //long=int16long update_angle;

    long M,Vref,Vdc=311;long TS=2000,TA,TB,Tz; //TS=PTPER*4

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    83/110

    CHNG 8: PH LC

    78

    // Fpwm=5Khz=> PTPER=500;// real TS is PTPER*0.2uS, when Fosc=20M )//Tz= T0/2

    unsigned int temp_int=0,sector,adc,count_timer1_interupt;int f,f_req;

    int1 first_run_flag,direction_flag;

    //-------------------------------------------------------- varible in MODEsint mode_select=1;int return_2_mode_select;int f1,f2;int

    T_ramp_up=10,T_ramp_down=5,T_ramp_up_ms=50,T_ramp_down_ms=25;//default value

    int eeprom_check;int1 f_select=0; //as defaultf_select=0 => f1 ; f_select=1 => f2( use in

    mode2)

    //--------------------------------------------------------TEMP varibleint32 count=0,interrupt_number=0;

    int1 disable_update_freq=0; //1= active

    #INT_PWMTB HIGH //It will generate code to save and restore the machine state,and will clear the interrupt flagvoid PWM_INTERRUPT() //caculating base on "Vref" and "stepsize"{interrupt_number=interrupt_number+1;

    TB=data[Vs_angle]; //data=PTPER*4*sqrt(3)*SIN ;// at 1st RUN: n=0

    TA=data[511-Vs_angle];M=Vref*16/Vdc; // mutiply 16=> will shift right 4 bit laterTA=TA*M;TB=TB*M;TA=(TA>>4)&0x0FFF; //4TATB=(TB>>4)&0x0FFF; //4TBTz=(TS-TA-TB)/2; //TS=4TS

    if(direction_flag==1) //FORWARD direction//

    { Vs_angle=Vs_angle+update_angle;if(Vs_angle>511){ Vs_angle=Vs_angle-511;

    sector=sector+1;if(sector>6) //sector (1)->(6){ sector=1;}

    }}

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    84/110

    CHNG 8: PH LC

    79

    else //REVERSE direction//{ Vs_angle=Vs_angle-update_angle; //n overflow to value (2^16)-

    "negative value" if n is unsigned intif(Vs_angle(6){ sector=6;}

    }}

    switch (sector){

    case 1: set_power_pwm0_duty(TS-Tz);set_power_pwm2_duty(Tz+TB);set_power_pwm4_duty(Tz);

    break;case 2: set_power_pwm0_duty(TA+Tz);

    set_power_pwm2_duty(TS-Tz);set_power_pwm4_duty(Tz);break;

    case 3: set_power_pwm0_duty(Tz);set_power_pwm2_duty(TS-Tz);set_power_pwm4_duty(Tz+TB);break;

    case 4: set_power_pwm0_duty(Tz);set_power_pwm2_duty(Tz+TA);set_power_pwm4_duty(TS-Tz);break;

    case 5: set_power_pwm0_duty(Tz+TB);set_power_pwm2_duty(Tz);set_power_pwm4_duty(TS-Tz);break;

    case 6: set_power_pwm0_duty(TS-Tz);set_power_pwm2_duty(Tz);set_power_pwm4_duty(Tz+TA);break;

    }

    }#INT_TIMER1void READ_AD_RESULT() //With an internal clock at 20mhz and with theT1_DIV_BY_8 mode, the timer will increment every 1.6us. It will overflow every104.8576ms.{

    if(count_timer1_interupt==10) // 1s{

    adc=read_adc();

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    85/110

    CHNG 8: PH LC

    80

    f_req=adc/4; //required motor speed in Hz {adc=0-255 => f_req=1-60 (Hz)}

    if(f_req>60){f_req=60;}

    count_timer1_interupt=1;

    }

    if(disable_update_freq==1){count_timer1_interupt=9;}else{count_timer1_interupt=count_timer1_interupt+1;}

    }

    void PORTS_INIT() //1

    {set_tris_a(0b00000001); //RA0 as input ( AD converter)set_tris_b(0b11000000); //PWM0=>PWM5 as output

    //PWM6,PWM7 as inputset_tris_c(0b11111111); //portC as BUTTON inputset_tris_d(0b00000000); //portD as output for display led

    }void PWM_MODULE_INIT() //2{

    setup_power_pwm_pins(PWM_COMPLEMENTARY,PWM_COMPLEMENTARY,PWM_COMPLEMENTARY,PWM_OFF );

    //module 0(PWM0,PWM1) = COMPLEMENTARY//module 1(PWM2,PWM3) = COMPLEMENTARY//module 2(PWM4,PWM5) = COMPLEMENTARY//module 3(PWM6,PWM7) = OFF

    setup_power_pwm(PWM_CLOCK_DIV_4|PWM_UP_DOWN|PWM_DEAD_CLOCK_DIV_4,1,0,500,0,1,10);

    // 1) mode:PWM_CLOCK_DIV_4; PWM_UP_DOWN;PWM_DEAD_CLOCK_DIV_4,

    // 2) postscale:1// 3) time_base:=> first value of timebase// 4) period:chu ky` xung 6 PWM =500 =>200uS// 5) compare:0

    // 6) compare_postscale:1// 7) dead_time:10 => Tdeatime=10*0.2=2uSset_power_pwm0_duty(0);set_power_pwm2_duty(0);set_power_pwm4_duty(0);

    }

    void INTERRUPTS_INIT() //3 //INT_PWM will be enable after run button ispressed !

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    86/110

    CHNG 8: PH LC

    81

    {enable_interrupts(INT_TIMER1);enable_interrupts(GLOBAL);

    }

    void ADC_INIT() //4{setup_adc_ports(sAN0); //AN0 as analog INPUTsetup_adc(ADC_CLOCK_DIV_32);set_adc_channel(0);delay_us(10);

    }void TIMER_INIT() //5{setup_timer_1(T1_INTERNAL|T1_DIV_BY_8);set_timer1(62500); //All timers count up. When a timerreaches the maximum value it will flip over to 0 and continue counting (254, 255, 0, 1,

    2...)//62500*1.6 us =0.1s

    }void PARAs_CAL(){

    f_float=f;

    temp_float=f_float*3;Vref=temp_float; //Vref(Vphase; motor in deltal mode) at f

    frequency to maintain V/f=cont=(220*sqrt(2)/sqrt(3))/60=3

    temp_float=0.6144*f_float; //0.6144=Tpwm*360*n/60 ; n=512update_angle=temp_float; //stepsize is INTERGER after this line

    }void RAM_DOWN_SPEED(){

    while(f>f_req){

    f=f-1;PARAs_CAL();delay_ms(T_ramp_down_ms); // 0.05s/Hzif(f

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    87/110

    CHNG 8: PH LC

    82

    lcd_gotoxy(10,0);printf(lcd_putc,"%2.0d",f);

    break;case 2:

    lcd_gotoxy(10,0);

    printf(lcd_putc,"%2.0d",f);break;case 3:

    fputc(f); //send value of f for PC

    lcd_gotoxy(4,0);printf(lcd_putc,"%2.0d",f_req);lcd_gotoxy(10,0);

    printf(lcd_putc,"%2.0d",f);break;

    }//end switch

    }}void RAM_UP_SPEED(){ while(ff_req){

    f=f_req; //f=f_req when ram speed finished !}

    switch(mode_select){ case 1:

    lcd_gotoxy(4,0);printf(lcd_putc,"%2.0d",f_req);lcd_gotoxy(10,0);

    printf(lcd_putc,"%2.0d",f);break;

    case 2:lcd_gotoxy(10,0);

    printf(lcd_putc,"%2.0d",f);break;

    case 3: fputc(f); //send value of f for PC

    lcd_gotoxy(4,0);printf(lcd_putc,"%2.0d",f_req);lcd_gotoxy(10,0);

    printf(lcd_putc,"%2.0d",f);break;

    }//end switch

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    88/110

    CHNG 8: PH LC

    83

    }

    }void defaul_value_in_EEPROM() //use in MODE2: AUTO ; P18F has 256 bytes

    eeprom which address from 0x00 -> 0xFF{write_eeprom(0X00,100); //temp_eeprom for checking at 1st readingwrite_eeprom(0X10,30); //f1write_eeprom(0X20,60); //f2write_eeprom(0X03,6); //T_ramp_upwrite_eeprom(0x04,3); //T_ramp_down

    }/////////////////////////////////////////////////////////////////////

    void MAIN (){

    PORTS_INIT(); //1lcd_init(); // this subrotine in flex_LCD.C filePWM_MODULE_INIT(); //2INTERRUPTS_INIT(); //3ADC_INIT(); //4TIMER_INIT(); //5

    MODE_SELECT:return_2_mode_select=0; //return_2_mode_select=0 as default;return_2_mode_select=1 when mode button is pressedswitch (mode_select){ case 1:

    lcd_gotoxy(1,1);printf(lcd_putc,"< M1:Read_AD >");

    lcd_gotoxy(1,0);printf(lcd_putc," ok");

    while( 1){

    if(!input(OK)){ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);

    goto MODE_R_VAR;}if(!input(NEXT)){ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);mode_select=2;goto MODE_SELECT;

    }

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    89/110

    CHNG 8: PH LC

    84

    if(!input(BACK)){ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);mode_select=3;

    goto MODE_SELECT;}}break;

    case 2:lcd_gotoxy(1,1);

    printf(lcd_putc,"< M2:Set freq >");lcd_gotoxy(1,0);

    printf(lcd_putc," ok");while( 1){

    if(!input(OK))

    { output_bit(PIN_D3,1);delay_ms(200);output_bit(PIN_D3,0);goto MODE_AUTO;

    }if(!input(NEXT)){ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);mode_select=3;goto MODE_SELECT;

    }if(!input(BACK)){ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);mode_select=1;goto MODE_SELECT;

    }}

    break;case 3:

    lcd_gotoxy(1,1);printf(lcd_putc,"< M3:COMPUTER >");lcd_gotoxy(1,0);

    printf(lcd_putc," ok");while( 1){

    if(!input(OK)){ output_bit(PIN_D3,1);

    delay_ms(200);

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    90/110

    CHNG 8: PH LC

    85

    output_bit(PIN_D3,0);goto MODE_COMPUTER;

    }if(!input(NEXT)){ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);mode_select=1;goto MODE_SELECT;

    }if(!input(BACK)){ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);mode_select=2;goto MODE_SELECT;

    }

    }break;

    }//==================================================// MODE_R_VAR//==================================================MODE_R_VAR:

    lcd_gotoxy(1,1);printf(lcd_putc,"T ramp up :?? s"); //clear screenlcd_gotoxy(1,0);printf(lcd_putc," "); //clear screen

    T_RAMP_UP_MODE1:while(1){

    if(!input(OK)) // OK button is pressed?{ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);

    goto NEXT_MODE1;}if(!input(UP)) // UP button is pressed?

    { output_bit(PIN_D3,1);delay_ms(200);output_bit(PIN_D3,0);

    T_ramp_up=T_ramp_up+1;if(T_ramp_up>20){T_ramp_up=5;}

    }if(!input(DOWN)) // DOWN button is

    pressed?

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    91/110

    CHNG 8: PH LC

    86

    { output_bit(PIN_D3,1);delay_ms(200);output_bit(PIN_D3,0);

    T_ramp_up=T_ramp_up-1;if(T_ramp_up user press stop BUTTON => want to return to main menu)

    }}//end while T ramp up mode1:

    T_RAMP_DOWN_MODE1:lcd_gotoxy(1,0);printf(lcd_putc,"T ramp down:?? s");

    while(1){

    if(!input(UP)) // UP button is pressed?{ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);

    T_ramp_down=T_ramp_down+1;if(T_ramp_down>20){T_ramp_down=5;}

    }if(!input(DOWN)) // DOWN button is

    pressed?{ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    92/110

    CHNG 8: PH LC

    87

    T_ramp_down=T_ramp_down-1;if(T_ramp_down user press stop BUTTON => want to return to main menu)

    }}//end while T ramp down mode1:

    NEXT_MODE1:MODE_R_VAR_return_from_stop_button:

    lcd_gotoxy(1,1);printf(lcd_putc,"M1 freq READY "); //clear screenlcd_gotoxy(1,0);printf(lcd_putc,"Rv ?? 2 RUN "); // ?? wil be cleard when value update

    //----------------- DEFAULT VALUE ------------------------------------------first_run_flag=1;direction_flag=1;

    f=0,f_req=0;

    Vs_angle=0; //default value for 1st Vs; direction=1update_angle=0;sector=1;

    count_timer1_interupt=10; // get 1st value of A/D//--------------------------------------------------------------------------

    while (1) //MAIN of MODE 1

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    93/110

    CHNG 8: PH LC

    88

    {lcd_gotoxy(4,0);printf(lcd_putc,"%2.0d",f_req); //int_timer1 is enable as default to read AD

    result =>f_req

    if(return_2_mode_select==1) //return_2_mode_select=0 as default;return_2_mode_select=1 when mode button is pressed{

    goto MODE_SELECT; //return to MODE select}

    if(!input(MENU)){ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);

    goto MODE_SELECT; //return to MAIN menu (motor isrunning => user press stop BUTTON => want to return to main menu)

    }

    //RUN Button is pressed ? ----------------------------------------------------if(!input(RUN)){ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);

    enable_interrupts(INT_PWMTB);//int_PWM must be enable after RUNbutton is pressed to prevent HIGH CURRENT ( don't know why it is, just seen it intesting if int_PWM enable b4 run button is pressed !!!)

    lcd_gotoxy(1,1);printf(lcd_putc," "); //clear screenlcd_gotoxy(1,0);printf(lcd_putc," ");lcd_gotoxy(1,1);printf(lcd_putc,"M1 freq fo DIR"); //clear screenlcd_gotoxy(1,0);printf(lcd_putc,"AD ?? ?? ? "); // ?? wil be cleard when value update

    switch(direction_flag) // direction display{ case 1:

    lcd_gotoxy(15,0);printf(lcd_putc,"F");

    break;

    case 0: lcd_gotoxy(15,0);printf(lcd_putc,"R");

    break;}

    if(first_run_flag==1) //RAM UP SPEED at 1st RUN{

    RAM_UP_SPEED();

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    94/110

    CHNG 8: PH LC

    89

    first_run_flag=0; //disable RUN button when motor isRUNNING

    }} //end if(!PIN_E0)//------------------------------------------------END of "RUN Button is pressed ?"

    while (first_run_flag==0){RAM_UP_SPEED();RAM_DOWN_SPEED();

    if(!input(FR))//FR Button is pressed ? ----------------------------------------------------

    { output_bit(PIN_D3,1);delay_ms(200);output_bit(PIN_D3,0);

    disable_interrupts(INT_TIMER1); //stop reading A/D

    temp_int=f_req; //save current f_reqf_req=0;RAM_DOWN_SPEED();direction_flag=direction_flag+1; //complement

    direction_flag=direction_flag+1switch(direction_flag) //change direction display{ case 1:

    lcd_gotoxy(15,0);printf(lcd_putc,"F");

    break;case 0:

    lcd_gotoxy(15,0);printf(lcd_putc,"R");

    break;}

    f_req=temp_int; //restore f_reqRAM_UP_SPEED();

    enable_interrupts(INT_TIMER1); //enable reading A/D}//------------------------------------------------END of "FR Button is pressed

    ?"

    if(!input(STOP)){ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);

    STOP_MOTOR_MODE1: //lable for MODEbutton is pressed => stop motor

    //disable_interrupts(INT_TIMER1); //stop reading A/Ddisable_update_freq=1;

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    95/110

    CHNG 8: PH LC

    90

    f_req=0;RAM_DOWN_SPEED();

    first_run_flag=1; //prepare for RAM_UP ifRUN button is pressed next time

    //enable_interrupts(INT_TIMER1); //enable reading A/Ddisable_update_freq=0;disable_interrupts(INT_PWMTB); // it'll enable later when

    run button is pressed

    goto MODE_R_VAR_return_from_stop_button; //return tocurrent mode

    }if(!input(MENU)){ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);

    return_2_mode_select=1;goto STOP_MOTOR_MODE1;

    }}//end while(first_run=0)

    }//while(1)

    //==================================================// END of MODE R_VAR ////==================================================

    //==================================================// MODE AUTO ////==================================================

    MODE_AUTO:lcd_gotoxy(1,1);

    printf(lcd_putc,"T ramp up :?? s"); //clear screenlcd_gotoxy(1,0);printf(lcd_putc," "); //clear screen

    T_RAMP_UP_MODE2:

    while(1){if(!input(OK)) // OK button is pressed?{ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);

    goto NEXT_MODE2;}

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    96/110

    CHNG 8: PH LC

    91

    if(!input(UP)) // UP button is pressed?{ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);

    T_ramp_up=T_ramp_up+1;

    if(T_ramp_up>20){T_ramp_up=5;}}if(!input(DOWN)) // DOWN button is

    pressed?{ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);

    T_ramp_up=T_ramp_up-1;if(T_ramp_up user press stop BUTTON => want to return to main menu)

    }}//end while T ramp up mode3:

    T_RAMP_DOWN_MODE2:lcd_gotoxy(1,0);printf(lcd_putc,"T ramp down:?? s");

    while(1){

    if(!input(UP)) // UP button is pressed?{ output_bit(PIN_D3,1);

    delay_ms(200);

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    97/110

    CHNG 8: PH LC

    92

    output_bit(PIN_D3,0);T_ramp_down=T_ramp_down+1;

    if(T_ramp_down>20){T_ramp_down=5;}

    }

    if(!input(DOWN)) // DOWN button ispressed?{ output_bit(PIN_D3,1);

    delay_ms(200);output_bit(PIN_D3,0);

    T_ramp_down=T_ramp_down-1;if(T_ramp_down user press stop BUTTON => want to return to main menu)

    }}//end while T ramp down mode2:

    NEXT_MODE2:MODE_AUTO_return_from_stop_button:

    if(return_2_mode_select==1) //return_2_mode_select=0 as default;return_2_mode_select=1 when mode button is pressed

    {goto MODE_SELECT; //return to MODE select

    }

    disable_interrupts(INT_TIMER1); //disable reading AD from R_VAR

  • 8/8/2019 IU KHIN NG C KHNG NG B 3 PHA S DNG VI IU KHIN PIC18F4431 THEO PHNG PHP VECTOR

    98/110

    CHNG 8: PH LC

    93

    lcd_gotoxy(1,1);printf(lcd_putc," "); //clear screenlcd_gotoxy(1,0);printf(lcd_putc," ");

    lcd_gotoxy(1,1);printf(lcd_putc,"M2 f1 ->"); //clear screenlcd_gotoxy(1,0);printf(lcd_putc,"Au ?? "); // ?? wil be cleard when value update

    eeprom_check=read_eeprom(0x00);if(eeprom_check!=100) //100 is default set for

    eeprom_check{ defaul_value_in_EEPROM(); //load default value}

    f1_select://f1=read_eeprom(0x10); //read f_req2 value in eepromf1=30;

    while(1){

    if(!input(OK)) //