do an pid dong co dc

Upload: thanhtu4208

Post on 07-Apr-2018

225 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/6/2019 Do an Pid Dong Co Dc

    1/26

    n mn hc I : iu khin v tr ng c

    Li ni u !

    T chic my tnh u tin do Pascal pht minh ra n nhng chic mytnh by gi l mt qu trnh pht trin v cng to ln ca khoa hc kthut , nht l trong nhng thp nin gn y, s pht trin cng mau l.

    Trong , mt trong nhng ht nhn ca qu trnh pht trin l cngngh in t. Nhng chic my tnh by gi c th dng lm nhng vim con ngi trc kia b ra hng nm thc hin xong , gi c th ch tronnhy mt.

    Trong k thut mi thi gian khng cn c tnh bng giy na , m lmicr giy , thm ch cn nh hn na . Mt b iu kin t ng c th thth cho nhiu cng nhn , nhiu k s, thm ch lm nhng vic m t mnhcon ngi khng th lm ni.

    L mt sinh vin k thut , ngnh t ng , ang chp chng bc vomt lnh vc to ln y , th vic hc tp , vn ng nhng iu hc vtrong thc tin , trao i kin thc l chuyn ng nhin. V n t

    1, c th l cng trnh u tin ca nhiu bn sinh vin cng ngnh lm , nh u s hin in u tin ca mnh trong lnh vc ny.

    Trn con ng trao di , hc tp tr thnh k s thc , ngoi bn thca mnh , cn l s gip , y ca cc thy c gio. V vy em xin chthnh cm n thy hng n , cc thy cc c trong trng , cho em nhnkin thc c th hon thnh c n ny.

    Vn bit cn nhiu thiu st , em rt mong thy c gip , cho kin

    cho em nhng hiu bit su sc hn , thc hin tt hn n mn hc 2 sti .

    Em xin chn thnh cm n!

    1

  • 8/6/2019 Do an Pid Dong Co Dc

    2/26

    n mn hc I : iu khin v tr ng c

    A/ S LC VI IU KIN P89V51Rx2:

    1 1. Khi qut cc tnh nng:2+ Khi qut: 1 P89V51RD2 l vi iu khin 80C51 c 64kB Flash v 1024bytes b n

    liu RAM.Tnh nng c bit ca P89V61RD2 l ch hot ng mode x2. Ngi thi

    chy ng dng ca mnh ch ny nng i tc khi hot ng cdao ng

    2 B nh chng trnh Flash cho php lp trnh ISP hoc/v song song. Chtrnh song song c a ra thch ng vi tc cao, gim thi gian v gi

    3 IAP/ISP.

    +Cc tnh nng:

    CPU 80C51. Hot ng 5VDC trong tm tn s dao ng n 40MHz. 64kB ISP. SPI 5 PCA vi chc nng PWM/capture/compare 16bits. 4 cng xut nhp. 3 Timers/Couters 16bits. Watchdog Timer c th lp trnh c.

    8 ngun ngt. 2 thanh ghi DPTR. Tng thch mc logic TTL v CMOS. Pht hin ngun yu Ch Low-power, Power down, Idle.

    2

  • 8/6/2019 Do an Pid Dong Co Dc

    3/26

    n mn hc I : iu khin v tr ng c

    S khi ca MCU P89V51RD2:

    S qua v cc chn ca vi iu khin:1 Port 0, Port 1, Port 2, Port 3: Nh cu trc 8051 kinh in.Port 0: l port c hai chc nng cc chn t 32-39 . Trong cc thit k c nh

    dng b nh m rng n c chc nng nh cc ng vo ra.Port 2:l mt port cc chn t 21-28 c dng cho chc nng IO port hoc l b

    ch cao ca Bus a ch .

    Port 3: l port c tc dng kp , t chn 10-17. Cc chn ca port ny ngoi IO , nhiu chc nng c bit .

    Port 1: Ngoi chc nng IO port , P89V51Rx2 cn c thm nhiu chc nng mi:

    P1.0 - T2: Ng vo Counter cho Timer/Counter 2 hoc ng ra cho Counter/Timer2.P1.1 - T2EX: iu khin hng v cnh kch chc nng Capture cho timer/Counter

    3

  • 8/6/2019 Do an Pid Dong Co Dc

    4/26

    n mn hc I : iu khin v tr ng c

    P1.2 ECI: Ng vo xung nhp. Tn hiu ny l ngun xung nhp ngoi cho chPCA.P1.3 CEX0: ng vo xung nhp cho chc nng Capture/Compare modul 0.P1.4:

    o SS: Chn cng ph vo cho SPI.o CEX1: ng vo xung nhp cho chc nng Capture/Compare modul 1.

    P1.5:o MOSI: phc v SPIo CEX2: ng vo xung nhp cho chc nng Capture/Compare modul 2.

    P1.6:o MISO: phc v SPI

    o CEX3: ng vo xung nhp cho chc nng Capture/Compare modul 3.P1.7:1 o SCK: phc v SPI

    o CEX4: ng vo xung nhp cho chc nng Capture/Compare modul 4.PSEN: Cho php dng b nh chng trnh ngoi. Khi MCU s dng b nh ch

    trong chip, PSEN khng tch cc. Khi s dng b nh chng trnh ngoi,thng mc tch cc 2 ln trong mi chu k my. S chuyn mc cao sang tPSEN cng bc t bn ngoi khi ng vo RST ang mc cao trong hn 10my s a MCU vo ch lp trnh host t bn ngoi.

    2 RST: Khi ngun dao ng ang hot ng, mc cao trn chn RST trong t nhk my s Reset li h thng. Nu chn PSEN chuyn mc trong khi RST vmc cao, MCU s vo ch lp trnh host t bn ngoi, nu khng, s ho bnh thng.

    EA: Cho php s dng b nh chng trnh ngoi.1 o EA=0 :B nh ngoi.2 o EA=1:B nh trong chip.ALE/PROG: Cho php kha a ch ngoi ra, chn ny cn

    a vo ch lp trnh FLASH

    S chn ca IC:

    B/ PHN CHNG TRNH THCHIN

    I/ THIT K PHN CNG:

    Phn cng gm hai khi chnh :

    + Khi iu kin : kt iu kin

    4

    U 1

    9

    1 81 9

    2

    0

    2 93 0

    3 1

    4

    0

    12345678

    2 12 22 32 4

    2 52 62 72 8

    1 01 11 21 31 41 51 61 7

    3 93 83 73 6

    3 53 43 33 2

    R S T

    X T A L 2X T A L 1

    G

    N

    D

    P S E NA L E / P R O G

    E A / V P P

    V

    C

    C

    P 1 . 0P 1 . 1P 1 . 2P 1 . 3P 1 . 4P 1 . 5P 1 . 6P 1 . 7

    P 2 . 0 / A 8P 2 . 1 / A 9

    P 2 . 2 / A 1 0P 2 . 3 / A 1 1P 2 . 4 / A 1 2P 2 . 5 / A 1 3P 2 . 6 / A 1 4P 2 . 7 / A 1 5

    P 3 . 0 / R X DP 3 . 1 / T X D

    P 3 . 2 / I N T 0P 3 . 3 / I N T 1

    P 3 . 4 / T 0P 3 . 5 / T 1

    P 3 . 6 / W RP 3 . 7 / R D

    P 0 . 0 / A D 0P 0 . 1 / A D 1P 0 . 2 / A D 2P 0 . 3 / A D 3P 0 . 4 / A D 4P 0 . 5 / A D 5P 0 . 6 / A D 6P 0 . 7 / A D 7

  • 8/6/2019 Do an Pid Dong Co Dc

    5/26

  • 8/6/2019 Do an Pid Dong Co Dc

    6/26

    n mn hc I : iu khin v tr ng c

    J 1 2

    C O

    12

    0 . 1 u F

    0

    7 8 0 5

    1 3

    2

    I N O U T G

    N

    D

    5 V

    12

    4 7 0

    2 2 0 0 u F

    D 1 8

    L E D

    - +

    D 1 7

    B R I D G E

    1

    4

    3

    2

    + Khi x l ca kit:

    p 0 . 0

    p 2 . 4

    Y 1

    Z T A

    p 0 . 7

    p 3 . 3

    p 3 . 1

    p 1 . 5

    p 0 . 2

    p 1 7

    p 2 . 1

    p 1 . 0

    p 1 . 1

    p 2 . 6

    R 1 2

    R E S I S T O R S I P 9

    123456789

    p 3 . 1

    J 3

    C O N 8

    12345678

    p 2 . 2

    5 V

    R 1R

    C 2

    1 n1

    2

    p 1 . 1

    p 3 . 4

    0

    p 0 . 0

    S W 1

    p 2 . 4 p 3 . 7

    J 1 5

    C O N 8

    12345678

    J 4

    C O N 8

    12345678

    p 0 . 4

    p 2 . 2

    p 2 . 0

    S W 4 4

    0

    p 1 . 2

    p 0 . 2

    S W 4

    p 0 . 4

    U 1

    A T 8 9 C 5 1

    9

    1 81 9

    2

    0

    2 93 0

    3 1

    4

    0

    12345678

    2 12 22 32 42 52 62 72 8

    1 01 11 21 31 41 51 61 7

    3 93 83 73 63 53 43 33 2

    R S T

    X T A L 2X T A L 1

    G

    N

    D

    P S E NA L E / P R O G

    E A / V P P

    V

    C

    C

    P 1 . 0P 1 . 1P 1 . 2P 1 . 3P 1 . 4P 1 . 5P 1 . 6P 1 . 7

    P 2 . 0 / A 8P 2 . 1 / A 9

    P 2 . 2 / A 1 0P 2 . 3 / A 1 1P 2 . 4 / A 1 2P 2 . 5 / A 1 3P 2 . 6 / A 1 4P 2 . 7 / A 1 5

    P 3 . 0 / R X DP 3 . 1 / T X D

    P 3 . 2 / I N T 0P 3 . 3 / I N T 1

    P 3 . 4 / T 0P 3 . 5 / T 1

    P 3 . 6 / W RP 3 . 7 / R D

    P 0 . 0 / A D 0P 0 . 1 / A D 1P 0 . 2 / A D 2P 0 . 3 / A D 3P 0 . 4 / A D 4P 0 . 5 / A D 5P 0 . 6 / A D 6P 0 . 7 / A D 7

    p 0 . 3

    p 3 . 7

    0

    5 V

    p 3 . 5

    p 1 . 6

    p 3 . 4

    J 2

    C O N 8

    12345678

    5 V

    p 1 . 3

    p 3 . 2

    p 0 . 5

    R 1 3

    R E S I S T O R S I P 9

    123456789

    0

    p 2 . 0 p 1 . 3

    p 1 . 4

    C 1

    1 n1

    2

    p 0 . 7

    p 2 . 7

    p 1 . 2

    p 3 . 2

    p 2 . 6

    p 2 . 3

    p 2 . 3

    C 3C

    p 2 . 7

    p 2 . 5

    p 0 . 6p 2 . 5

    p 0 . 6

    p 3 . 6

    p 1 . 4

    p 3 . 0

    J 1 6

    C O N 812345678

    p 3 . 5

    5 V

    p 1 . 7

    p 0 . 1

    5 V

    p 0 . 1

    p 1 . 6

    p 2 . 1

    p 0 . 5

    p 3 . 0

    p 3 . 3

    p 0 . 3

    p 1 . 0

    J 1

    C O N 8

    12345678

    p 1 . 5

    p 3 . 6

    - Khi gm c cc gic cm c , xut port, giao tip bn ngoi- Bn nt bm , v nt sw44 reset lai vxl- Vi x l s t ng reset khi c ngun nh t C3- Thch anh 12Mhz s to ngun xung cho chn 18,19-

    + Khi hin th:- Hin th led 7 on:

    6

  • 8/6/2019 Do an Pid Dong Co Dc

    7/26

    n mn hc I : iu khin v tr ng c

    5 V

    G

    A

    BO 3

    C

    5 V

    R 3 03 3 08

    U 1 0

    L E D 7 . 2

    6

    12

    3

    4

    5

    7

    8

    91 0

    B

    ED

    T

    C

    D P

    A L

    FG

    F

    O 2

    O 7

    5 V

    O 5

    G G

    A

    R 3 21 K

    Q 3C 1 8 1 5

    C B

    F

    O 7

    E

    R 3 41 K

    E

    5 V

    R 3 31 K

    5 V

    BO 4

    O 4

    U 3

    7 4 4 7

    7

    126

    453

    1 3

    1 21 11 091 51 4

    1

    6

    8

    D 0D 1D 2D 3

    B I / R B OR B IL T

    ABCDEFG

    5

    V

    G

    N

    D

    O 1

    R 2 93 3 0D

    CR 2 73 3 0

    E

    5 V

    O 0

    O 4

    8

    U 9

    L E D 7 . 1

    6

    12

    3

    4

    5

    7

    8

    91 0

    B

    ED

    T

    C

    D P

    A L

    FG

    5 V

    DO 1

    R 2 83 3 0

    A

    C

    J 1 0

    C O N 8

    12345

    678

    O 5

    O 3

    F

    C

    G

    5 V0

    E

    0

    A

    O 5

    R 3 51 K

    B

    O 0

    E 8

    U 1 3

    L E D 7

    6

    12

    3

    4

    5

    7

    8

    91 0

    B

    ED

    T

    C

    D P

    A L

    FG

    O 7

    O 6

    R 3 13 3 0

    0

    AR 2 33 3 0O 2

    Q 4C 1 8 1 5

    F

    D DR 2 43 3 0

    Q 5C 1 8 1 5

    G

    U 1 1

    7 4 L S 2 4 5

    2

    0

    1

    0

    1 91

    234

    56789

    1 81 71 6

    1 51 41 31 21 1

    V

    C

    C

    G

    N

    D

    GD I R

    A 1A 2A 3A 4A 5A 6A 7A 8

    B 1B 2B 3B 4B 5B 6B 7B 8

    8

    U 1 2

    L E D 7 . 3

    6

    12

    3

    4

    5

    7

    8

    91 0

    B

    ED

    T

    C

    D P

    A L

    FG

    B

    O 6

    O 6D

    Q 2C 1 8 1 5

    F

    - Khi gm IC nng 74LS245 , c tc dng nng dng cho port iu kin.- 4 led 7 on , 4 BJT C1815 c tc ng chn led s ng cho qut led-.- IC gii m 7447 , gii m BCD sang cc chn ca led hin th s.

    +LCD:

    - Khi gm c : git cm ci 16 chn cLCD

    - Git 8 chn dnh cho bus d liu- Git 3 chn dnh cho 3 chn iu kin- in tr r28 hn dng cho led tro

    LCD- Bin R25 chnh tng phn cho L

    - Mch hin th led:

    7

    0

    R 2 6

    J 912345678

    R 2 5

    0

    5 V 5 V

    J 7

    C O N 1 6

    1234567891 01 11 21 31 41 51 6

    J 8

    123

    05 V

  • 8/6/2019 Do an Pid Dong Co Dc

    8/26

    n mn hc I : iu khin v tr ng c

    8

    R 9

    D 9p 1 . 0 R 1 5

    p 1 . 5

    5 VJ 5

    C O N 8

    12345678

    p 1 . 4

    D 1

    5 V

    0

    0

    U 6

    7 4 L S 2 4 5

    2

    0

    1

    0

    1 91

    23456789

    1 81 71 61 51 41 31 21 1

    V

    C

    C

    G

    N

    D

    GD I R

    A 1A 2A 3A 4A 5A 6A 7A 8

    B 1B 2B 3B 4B 5B 6B 7B 8

    J 1 1

    C O N 8

    1 2 3 4 5 6 7 8

    0

    p 1 . 3

    R 2

    p 1 . 7

    0

    p 1 . 2

    U 7

    7 4 L S 2 4 5

    2

    0

    1

    0

    1 91

    23456789

    1 81 71 61 51 41 31 21 1

    V

    C

    C

    G

    N

    D

    GD I R

    A 1A 2A 3A 4A 5A 6A 7A 8

    B 1B 2B 3B 4B 5B 6B 7B 8

    J 6

    C O N 8

    12345678

    R 2 2 D 1 6

    J 1 3C O N 8

    1 2 3 4 5 6 7 8

    p 1 . 6

    D 8

    0

    p 1 . 1

    5 V

    5 V

    0

  • 8/6/2019 Do an Pid Dong Co Dc

    9/26

    n mn hc I : iu khin v tr ng c

    - xut led , gm 2 IC nng dng 74LS245, cc gic cm c a ra ngo- Mt dy led hin th.

    + Khi giao tip:- RS-232:

    0

    C 4

    P 1

    5

    94837261

    5 V

    C 6

    0

    U 2

    M A X 2 3 2 _ 1

    13

    45

    1

    6

    1

    5

    2

    6

    1 2

    9

    1 1

    1 0

    1 3

    8

    1 4

    7

    C 1 +C 1 -

    C 2 +C 2 -

    V

    C

    C

    G

    N

    D

    V +

    V -

    R 1 O U T

    R 2 O U T

    T 1 I N

    T 2 I N

    R 1 I N

    R 2 I N

    T 1 O U T

    T 2 O U T

    C 7

    p 3 . 0

    0

    p 3 . 1

    5 V

    C 5

    o Mch c cng DB9 , v IC max232o IC max232 v cc t lm nn mch chuyn mc p TTL sang 232o Cp ngun cho max232 l 5v, mch trong IC v cc t s to ra ng

    10V

    - Ma trn phim:

    S W 2 6P 0 . 0

    P 0 . 3

    S W 3 5

    P 0 . 6

    S W 3 4

    P 0 . 7

    S W 2 8

    P 0 . 2

    P 0 . 4

    S W 3 1

    S W 3 8

    S W 3 2

    S W 3 9 S W 4 0

    S W 3 7

    P 0 . 1

    S W 2 9S W 2 7

    P 0 . 5

    S W 4 1

    S W 3 3

    S W 3 6

    S W 3 0

    o Mch gm 8 chn ni vi port 1 .

    9

  • 8/6/2019 Do an Pid Dong Co Dc

    10/26

    n mn hc I : iu khin v tr ng c

    o Khi qut phim . Nu nt nhn c mt chn c a vo mc cachn mc thp , khi nhn phim , th c hai chn u mc thpiu kin c th nhn ra s thay i.

    S khi Kit:

    S Ton Kt:

    10

    Ngun 5v

    Khi hin th

    Khi x l

    Khi giao tip

  • 8/6/2019 Do an Pid Dong Co Dc

    11/26

  • 8/6/2019 Do an Pid Dong Co Dc

    12/26

    n mn hc I : iu khin v tr ng c

    o Cc zener bo v mch , v x khi c dng hi t ng c v -vngun l cu diof , khng x c.-

    o T lc gai cho ng c khi chyo Nguyn tc chng trng n : khng th kch ( mc cao) cho 2 ng

    cng lc- Ngun 24VDC:

    J 1

    2 4 V A C

    12 C 4

    0 . 1 u FC 1

    2 2 0 0 u F

    R 2

    2 . 2 k

    Q 1

    J 2

    2 4 V

    12- +

    D 8 1

    4

    3

    2

    D 2

    D 1 0 D 1

    z e n e r 2 4 v

    D 7

    C 5

    4 7 0 u F

    R 1

    2 7 0

    0

    + Mch c cu diof chnh lu. T ha C4 lc phng thng thp . T C4 cao , BJT cng sut 2N3005.

    + diof gn i zener b li in th mt do BJT. V R1 duy tr ng cho zC5 lc .

    II> CHNG TRNH THC HIN:

    THNH PHN , S , GII THUT TNG QUT: Thnh phn :

    + Gm c 2 phn chng trinh chinh: Chng trnh trn my tnh , vit bng Visual basic Chng trnh trn vi x l , vit bng hp ng

    S v gii thut chnh:+ Chng trnh Visual Basic:

    o

    + Chng trnh hp ng :

    12

    GIAO IN:- Hin th- Nhn lnh

    X L :- Phn mm

    PID, c chnhsa

    - Ngt timer thc hin k,v xut kt qu

    GIAO TIP VXL:- Nhn

    liu t vxl- Truynlnh ti vxl

    Vi iukin

  • 8/6/2019 Do an Pid Dong Co Dc

    13/26

    n mn hc I : iu khin v tr ng c

    M lnh

    PWM

    Gt encoder encoder

    CHI TIT CHNG TRNH:o CHNG TRNH TRN VB: Visual basic:Giao din VB:

    Timer1

    MSComm

    < Name: gt> Timer2Cmdketnoi

    LabecdLabsovong

    Labvantoc

    Cmddung

    Cmdtien cmdlui txtvitriCmdchay

    H_vantoc txtvantoc Cmdclr_ecd

    Cmd_dungvitri

    Giao din gm c:

    13

    - Nhn m lnhT my tnhTimer 2 toxung uart

    My tnh

    Giao tipmy tnh iu xung

    m gi trencode

    Timer1: qut gi gi trencoder ln my tnh

    ng c

  • 8/6/2019 Do an Pid Dong Co Dc

    14/26

    n mn hc I : iu khin v tr ng c

    - Nt kt ni vi iu khin- Khung iu khin tin li:

    Nt tin ng c Li ng c ng ng c TextBox nhp gi tr iu xungThanh trt , to gi tr iu xung

    - Khung iu khin v tr ng c:TextBox nhp v tr chy ti

    Nt start qu trnh. Nt clear gi tr encoder Nt dng chc nng.

    - Khung hin th :Label- Hin th gi tr encoder tuyt i (c offset )

    Label- Hin th s vng tng ng ( 400 xung / vng )Label- Vn tc ng c ( c chng nhy do thay i qu nh

    - MSComm : < name : gt > : cng c giao tip vi ngoi vi thng qua cn- Timer1: lin tc ly gi tr trung bnh ca vn tc , chng nhy khi hin th- Timer2: To ngt trong khong thi gian 10ms , phc v iu khin v tr c

    c M ca chng trnh:

    Phn khai bo u chng trnh:

    Option ExplicitDim ht As Double 'v tr encoder lay veDim D_tt As Double vn tc tc thi ca ng c Private e_p As Double sai s ca v tr ng c_gi liPrivate e_tichluy As Long Sai s tch ly , dng cho thng s KIPrivate dblvitridat As Double bin lu tr v tr xc lpPrivate intvt As Integer bin lu vn tc ng c Private ht_p As Double bin lu li gi tr trc ca encoderPrivate d_p(20) As Double Bin lu li chui vn tc tc thiPrivate dang_load As Boolean nh u v tr bt u ca chui lPrivate thu_tu As Byte th t ca tn hiu a vPrivate ecd(4) As Long chui gi tr encoder ly v t vi x lPrivate trang_thai As Byte Trng thi : tin , li , dng ca ngDim P As Double H s P ca b PID-v trDim I As Double H s IDim D As Double H s D

    X l cc s kin:

    14

  • 8/6/2019 Do an Pid Dong Co Dc

    15/26

    n mn hc I : iu khin v tr ng c

    Kt ni vi my tnh:Private Sub cmdketnoi_Click()On Error Resume Nextgt.Settings = "28800,N,8,1" tc 28,8 k gt.CommPort = 1gt.RThreshold = 1gt.PortOpen = Truegt.InputLen = 1cmddung.Enabled = True Khi cha kt ni cc nt bmcmdtien.Enabled = True cha c kch hot , chngcmdlui.Enabled = True li cho chng trnhcmdchay.Enabled = Truecmdclr_ecd.Enabled = Truecmd_dungvitri.Enabled = True

    lab_trangthai.Caption = "da ket noi !" hin th gc di , phiEnd Sub Khi to gi tr ban uPrivate Sub Form_Load()Timer1.Interval = 10 ngt mi ln l10msTimer1.Enabled = True kch hot timer 1Timer2.Interval = 10Timer2.Enabled = False cm timer 2P = 0.282 Cc thng s b PIDD = 1.125 Cc gi tr c tm bng

    i = 0.0187 PP Zeigler-Nicholsintvt = 0thu_tu = 0trang_thai = 0End Sub X l nhn k t:Private Sub gt_OnComm()Dim a As Integer Dim b As DoubleSelect Case gt.CommEvent Nhn bit s kin

    Case comEvReceive Nhn d liuDim buffer As Variant b m thubuffer = gt.Inputa = Asc(buffer) chuyn k t ra m asciilab.Caption = a & " ;" & buffer hin th gc cui phibuffer = "" xa tin theo di

    If dang_load = True Then Nu nhn c imthu_tu = thu_tu + 1 bt u th np d liu

    15

  • 8/6/2019 Do an Pid Dong Co Dc

    16/26

    n mn hc I : iu khin v tr ng c

    ecd(thu_tu) = aIf thu_tu = 3 Thendang_load = Falsethu_tu = 0

    End If Else

    If a = 99 Then k t gc bt u npdang_load = Trueht = ecd(3) * 256 * 256 + 256 * ecd(2) + ecd(1) - 8388608

    Gi tr encoder tuyt i tr i gi tr offsetb = ht / 400 s vnglabsovong.Caption = Format(b, "00000.0000")labecd.Caption = htEnd If

    End If

    End Select X l cc nt bm tin , li , dng:

    Private Sub cmdtien_Click()intvt = Val(txtvantoc)trang_thai = 1If intvt >= 256 Then gi tr iu xung maxMsgBox ("gia tri phai nho hon 256")Exit Sub

    End If Call chay(intvt)End Sub

    Private Sub cmdlui_Click()intvt = Val(txtvantoc)trang_thai = 2If intvt >= 256 ThenMsgBox ("gia tri phai nho hon 256")Exit Sub

    End If Call chay(-intvt)End Sub

    Private Sub cmddung_Click()trang_thai = 0gt.Output = Chr(3) gi k t c m l 3End Sub

    16

  • 8/6/2019 Do an Pid Dong Co Dc

    17/26

    n mn hc I : iu khin v tr ng c

    S kin thanh trt:

    Private Sub H_vantoc_Change()txtvantoc = H_vantoc.Valueintvt = Val(txtvantoc)Select Case trang_thaiCase 1:Call chay(intvt) chy tiCase 2:Call chay(-intvt) chy luiEnd SelectEnd Sub

    Cc nt bm cn li , k v tr ng c

    Private Sub cmd_dungvitri_Click()Call cmddung_Click e_tichluy = 0Timer2.Enabled = False ngng timer, kt thc tm v trEnd Sub

    Private Sub cmdchay_Click()Timer2.Enabled = True bt u chy v tr

    End SubPrivate Sub cmdclr_ecd_Click()gt.Output = Chr(4) M clear encoder End Sub

    Hm chay( ):

    Private Sub chay(ByVal v As Integer)If (v > 255) Or (v < -255) Then Exit Sub Max iu xung =256

    gt.Output = Chr(0) m nhp vn tcIf v < 0 Thenv = -vgt.Output = Chr(v) truyn vn tcgt.Output = Chr(1) lnh chy liElsegt.Output = Chr(v) truyn vn tcgt.Output = Chr(2) lnh chy ti

    17

  • 8/6/2019 Do an Pid Dong Co Dc

    18/26

    n mn hc I : iu khin v tr ng c

    End If

    X l s kin timer1, timer2:

    Private Sub Timer1_Timer()Dim D_tong As DoubleDim tong As DoubleDim i As Integer D_tong = ht - ht_pD_tt = D_tong ly vn tc tc thi cho b PIDht_p = httong = 0

    For i = 20 To 2 Step -1 ly tng gi tr vn tc trong 0.2sd_p(i) = d_p(i - 1)tong = tong + d_p(i) Next

    d_p(1) = D_tongtong = tong + d_p(1)D_tong = tong / 20 ly gi tr trung bnh , x l nhpD_tong = D_tong * 10 nhylabvantoc = Format(D_tong, "0000.00") Cho gi tr ng yn trnGDEnd Sub

    Private Sub Timer2_Timer()Static g As Integer Dim e As DoubleDim v As Integer dblvitridat = Val(txtvitri) * 400e = ht dblvitridat Ly sai s cho b PIDv = PID(e, e_p) ly vn tc t b PIDCall chay(v)e_p = eIf e = 0 Then

    g = g + 1Elseg = 0End If If g = 30 Then Timer2.Enabled = False nu ng v tr trong vngEnd Sub 0.3s th dng chc nng li

    B PID:

    18

  • 8/6/2019 Do an Pid Dong Co Dc

    19/26

    n mn hc I : iu khin v tr ng c

    Private Function PID(ByVal e As Double, ByVal e_c As Double) As Integer Dim step1 As Integer Dim up As DoubleDim ui As DoubleDim ud As DoubleDim u As DoubleIf D_tt = 0 Then Hiu chnh thng s Istep1 = 3 Lm gim thi gian a sai s v 0Elsestep1 = 1End If

    up = -P * eud = -D * (e - e_c)

    If (e > -130) And (e < 130) Then Kch hot thng s Ki khi ng c e_tichluy = e * step1 + e_tichluy cch ch khong 1 vngui = -I * e_tichluyElsee_tichluy = 0ui = 0End If

    u = (up + ui + ud)If u > 255 Then u = 255 Khu bo ha

    If u < -255 Then u = -255PID = CInt(u)If e = 0 Then PID = 0End Function

    PID s:))(( 1 _ ++= k k

    S

    DTLk

    I

    S k p eeT

    T e

    T T

    e K V

    Trong h s Ts l chu k ly mu Tm thng s bng cch :

    - Cho h s khuch i K ( Ki,Kd = 0) n khi h bt u ao ng n v tr cn bng ( c kch nh ) ta c : k=0.47, T=0.31s- Kp = 0.6 x k = 0.282 ; Ti = 0.1505 ; Td = 0.03875- Vy D = 1.0927 ; I = 0.1874

    o CHNG TRNH TRN VI IU KIN :

    19

  • 8/6/2019 Do an Pid Dong Co Dc

    20/26

    n mn hc I : iu khin v tr ng c

    INCLUDE p89v51rx2.mcECD DATA 40h ; Lu gi gi tr qut xut d liuECD1 DATA41h ; 3 byte Lu gi gi tr encoder ECD2 DATA42hECD3 DATA43hECD1_P DATA44h ; 3 byte tip trung gian lu giECD2_p DATA45h ; gi tr xut, m bo xut chnh xcECD3_p DATA46hvan_toc DATA 49h ; Vn tc c nhp vo y

    nhap_vt BIT 33h ; C nhp vn tc

    org 0000hLJMP main

    org 0003hLJMP ngat_ngoai0

    org 000bhLJMP ngat_T0;ngat time de quet truyen data

    org 0023hLJMP NGAT_NT; tao toc do boau

    main:

    MOV fst,#08h ;Nng i tc x l ca MOV t2mod,#02h ; ICSETB RCLK ;cho php nhn d liu t PCSETB TCLK ;Cho php xut liu nPCMOV rcap2h,#ffh ; tc baud 28800MOV rcap2l,#f3hMOV scon,#50hSETB TR2

    ;--------------MOV CCAPM0,#01000010BMOV CCAPM1,#01000010BMOV CCAPM2,#01000010BMOV CCAPM3,#01000010BMOV CCAPM4,#01000010B

    20

  • 8/6/2019 Do an Pid Dong Co Dc

    21/26

    n mn hc I : iu khin v tr ng c

    MOV cmod,#0CLR nhap_vtMOV ccap3h,#ffhMOV ccap4h,#ffhSETB cr ; cho php chc nng PCA chy

    ;--------------

    MOV tmod,#01hMOV ien0,#10010011b

    SETB it1SETB it0MOV ip0,#05h ; u tin ngt ngoi MOV ip0h,#0MOV van_toc,#100

    MOV ecd,#1SETB tr0

    ;--------------------------------------------MOV ecd1,#0hMOV ecd2,#0hMOV ecd3,#128SJMP $

    ;-------------------------------------------ngat_nt:

    JNB ri,thoat_ngat_ntCLR riPUSH accMOV A, sbuf MOV p2,AACALL nhan_dkPOP acc

    JNB ti,thoat_ngat_ntCLR ti

    thoat_ngat_nt: RETI

    ;*******************************************************; Chng trnh trong on ny nhn tn hiu iu khin t my tnh.; Gm c nhn ch th chy ti , ng ,chy li , nhn tc chy, reset gi

    encoder

    21

  • 8/6/2019 Do an Pid Dong Co Dc

    22/26

    n mn hc I : iu khin v tr ng c

    ;------------------------------------nhan_dk:

    JNB nhap_vt,tiepMOV van_toc,ACLR nhap_vtLJMP thoat_nhan_dk

    tiep:CJNE A,#0,tiep0LCALL nhap_vantocLJMP thoat_nhan_dk

    tiep0: CJNE A,#1,tiep1LCALL chay_toiLJMP thoat_nhan_dk

    tiep1: CJNE A,#2,tiep2LCALL chay_luiLJMP thoat_nhan_dk

    tiep2: CJNE A,#3,tiep3LCALL dung_dcLJMP thoat_nhan_dk

    tiep3: CJNE A,#4,thoat_nhan_dkLCALL clr_ecd

    thoat_nhan_dk:RET

    chay_toi: MOV A , van_tocCPL AMOV ccap3h,AMOV ccap4h,#ffhRET

    chay_lui:MOV A , van_tocCPL AMOV ccap4h,A

    MOV ccap3h,#ffhRETdung_dc:

    MOV ccap3h,#ffhMOV ccap4h,#ffhRET

    nhap_vantoc:

    22

  • 8/6/2019 Do an Pid Dong Co Dc

    23/26

    n mn hc I : iu khin v tr ng c

    SETB nhap_vt ; a chng trnh thu voch

    RET ; nhp Vn tcclr_ecd:

    MOV ecd1,#0MOV ecd2,#0MOV ecd3,#128RET

    ;*******************************************************; Chng trnh trong 2 on i , gm c:; - Ngt timer 0 , lin tc gi hm hien_thi.; - Hm hien_thi tun t xut 3 byte lu tr ;v tr

    encoder ca ng c cho my tnh . Mi ;ln c gi , xut1 byte.

    ;-------------------------------------------------------

    ngat_T0: CLR tf0CLR tr0MOV th0,#fchMOV tl0,#00SETB tr0PUSH 00hMOV R0,ECDINC R0CJNE R0,#4,thoatMOV R0,#0

    thoat: MOV ECD,R0POP 00hLCALL hien_thi

    RETI;-------------------------------------------------------hien_thi:

    PUSH accMOV A,ECDCJNE A,#0,O_N_1

    MOV sbuf,#99MOV R2,ecd1MOV ecd1_p,R2

    23

  • 8/6/2019 Do an Pid Dong Co Dc

    24/26

    n mn hc I : iu khin v tr ng c

    MOV R2,ecd2MOV ecd2_p,R2MOV R2,ecd3MOV ecd3_p,R2SJMP Thoat_hien_thi

    O_N_1:CJNE A,#1,O_N_2MOV A,ecd1_pMOV sbuf,ASJMP Thoat_hien_thi

    O_N_2:CJNE A,#2,O_N_3MOV A,ecd2_pMOV sbuf,ASJMP Thoat_hien_thi

    O_N_3:CJNE A,#3,thoat_hien_thiMOV A,ecd3_pMOV sbuf,a

    Thoat_hien_thi: POP accret

    ;*******************************************************;Ngt ngoi khi c xung encoder vo vi iu khin; Nu chn cn li mc cao th ng c ang li , ngc li l ang tin.;-------------------------------------------------------------ngat_ngoai0:

    JNB p3.3,tang_encoder JMP giam_encoder

    thoat_ngat0:RETI

    ;-------------------------------------------------------tang_encoder:

    INC ECD1

    MOV R1,ecd1CJNE R1,#0,thoat_tang_ecdMOV ecd1,#0INC ECD2MOV R1,ecd2CJNE R1,#0,thoat_tang_ecdMOV ECD2,#0

    24

  • 8/6/2019 Do an Pid Dong Co Dc

    25/26

  • 8/6/2019 Do an Pid Dong Co Dc

    26/26

    n mn hc I : iu khin v tr ng c

    Mc lc :

    Trang

    Li ni u .A/ S LC V VI IU KIN P89V51Rx2.

    Khi qut cc tnh nng. 2S khi3S chn... 4

    B/ CHNG TRNH THC HINI/ Thit k phn cng..

    Khi iu khin .. 5+ Ngun cho kit vxl... 6+ Phn x l ca kit.. 6+ Phn hin th.. 7+ Phn giao tip 8

    S ton kt1Khi cng sut.1

    - Mch cu H..1- Ngun 24Vdc.. 11

    II/ Chng trnh thc hin...Thnh phn , s , gii thut tng qut.Chi tit chng trnh 1

    -Chng trnh trn visual basic. 12

    + Giao din VB 12+ Code chng trnh trn VB...13+ PID s .. 18

    - Chng trnh trn vi iu khin.. 1Mc lc :.