Professional Documents
Culture Documents
Ung Dung PLC Cho He Thong Khong Che Dieu Khien Thang May 184
Ung Dung PLC Cho He Thong Khong Che Dieu Khien Thang May 184
Huy Mnh
ng dng PLC
cho h thng khng ch iu khin thang my
Huy Mnh
Chng I
tn hiu ho v l thuyt chung v ti u lut iu khin thang my
1.1 Ti u ho chng trnh iu khin thang my
Huy Mnh
phi sp hng i c phc v. Chnh v vy m h thng ny c tn l h thng hng i. L thuyt ton hc kho st cc h thng hng i c gi l l thuyt phc v m ng (cc khch hng c coi l mt m ng c phc v).
Huy Mnh
* Knh phc v L cc c cu phc v khch hng, thc hin cc yu cu ca khch hng. Thi gian phc v (Service time) v khong thi gian gia cc ln phc v l nhng i lng ngu nhin. Tu theo h thng c mt hay nhiu im phc v m ngi ta gi l h thng c mt hoc nhiu knh phc v. c trng cho knh phc v l dng phc v vi cng l /n v thi gian. Cng phc v l s khch hng c phc v xong trn mt n v thi gian. * Hng i (Queue) L s khch hng ch n lt c phc v. Tu theo s khch hng n nhiu hay t (cng ln hay b), kh nng phc v (s knh phc v, thi gian phc v) m s khch hng phi i trong hng i nhiu hay t. V vy, di hng i cng l mt i lng ngu nhin. * Lut sp hng Trong h thng hng i c mt knh phc v thng c lut sp hng iu chnh sau y: - FIFO (First - In First - Out) : Khch hng n trc phc v trc . Lut FIFO thng c dng nhng ni nh : + Sp hng trc quy tnh tin ca siu th + Sp hng vo c s dch v , phng tin vn ti . + Cc thit b sp hng trn bng ti ch n lt c lp rp .v.v. - LIFO (Last - In First - Out) : Khch hng n sau c phc v trc lut LIFO thng c dng nhng ni nh ; + Ra khi bung thanh my : ngi no vo sau cng s c ra trc tin . + c gi liu trn bng t : d liu ghi sau s c c trc . + Hng ho c xp vo thng cha : hng xp sau cng (pha trn ca hng cha s c ly ra trc v.v... - Ngu nhin : cc khch hnh u c ch u tin nh nhau v c phc v mt cch ngu nhin . Lut ny thng c ly cc trng hp sau nh : + Ph n tr em v ngi tn tt c u tin phc trc.
Huy Mnh
+ Lut FIFO cng l trng hp c bit vi u u tin l n trc . + Thi gian phc v ngn c phc v trc (shortest job first). V d trn nt giao thng xe nh gn nhanh c u tin i trc so vi xe to cng knh di chuyn chm v.v... *Chiu di hng i Chiu di hng i l s khch hng ng i oc phc v. Nu s v tr ng i khng hn ch th chiu di hng i c th di bt k . Ngc li nu s v tr ng i l hn ch th th chiu di hng ng i khng vt qu s cho trc . Trong trng hp ny nu khch hng n ng vo lc chiu di hng i y th phi ri b h thng v h thng s b mt khch hng . Chiu di hng i l mt i lng ngu nhin ph thuc vo cng dng khch hng v dng phc v. * Thi gian sp hng Thi gian sp hng l qung thi gian khch hng ng i trong hng i ch ch n lt phc v. C loi khch hng c th i bao lu cng c, ngc li c loi khch hng ch c th i trong mt thi gian nht nh, ht thi gian khch hng s ri b h thng mc du vn cn ch ng i. Trong trng hp ny h thng s mt khch hng. gim kh nng mt khch hng h thng phi tng cng dng phc v hoc tng s knh phc v. 1.2 thut ton ti u iu khin thang my :
Khi thit k thut ton ti u iu khin thang my vi h thng hng i ta thy c nhng c im cn lu nh sau : - Nu chiu di hng i ln qu c th xy ra trng hp hnh khch khng i c khng i thang my. Trong khi , n lt c phc v thang my vn chy n ng v tr gi. Nh vy s dn n lng ph thi gian v gim hiu sut hot ng ca thang. Do trong trng hp ny ta chn chiu di hng i l 60. - Khi xp xp hng i, mt vn t ra l c th mt tng c nhiu tn hiu gi thang ca nhiu ngi. V vy, mi khi c tn hiu gi thang cn phi duyt ton b hng i xem tn hiu ny c mt trong hng i hay cha, trc khi thm vo hng i.
Huy Mnh
- Khi hnh khch i vo thang my v n nt gi tng, sau qu trnh chuyn ng, thang my s dng li v tr tng gi. Tuy nhin, c th tng ny c mt trong hng i v nh vy, coi nh tn hiu gi thang ny c phc v. V vy, cn phi loi tn hiu ny ra khi danh sch hng i qu trnh phc v ca thang my khng b nhm ln. - Trong qu trnh phc v c th c nhng trng hp thang my khng phc v kp thi, dn n tnh trng mt khch hng do thang my chuyn ng n tng gi nhng khng c ngi i vo thang my. V vy cn phi c tn hiu cm bin sn Cabin hoc t thi gian tr sau khi ca bung thang khp li nhng khng c ngi th tn hiu gi thang tip theo trong hng i s c phc v. S thut ton iu khin c m t nh hnh 3-6. Trong hng i H l mt mng 60 phn t cha ti a 60 tn hiu gi sp hng. K hiu H[n] l tn hiu gi th n trong hng i. Thut ton ny c gii thch trong phn s thut ton iu khin h thng. 1.3 tn hiu ho cho h thng iu khin logic kh
trnh
Huy Mnh
gim s lng dy dn phi bin i s th t ca cc phm (m ho cc phm) thnh dng nh phn hoc dng s Hexa. Trong trng hp ny, ngi ta s dng mt b m qut bn phm. Khi c mt phm c n b m s c lnh dng li v u ra ca cc b m s thu c mt m nh phn tng ng vi s th t ca phm. M ny c gi l m qut bn phm. Nguyn tc to m qut cho bn phm c minh ho nh s hnh 2.1.
A3 A2 A1
A0
Thanh ghi ct
EN1
Hnh 2-1: S to m bn phm Ngi ta a ra cc gi tr 1 ln lt qut vo cc ct, sau c vo cc gi tr ng vi cc ct khc nhau thanh ghi hng t c th bit c m ca phm. S c th to m qut ca bng 64 nt n nh hnh 2-1. Vi mch 4001 ( 4 cng NOR ) 2 li vo ) c m thnh mch pht xung ng h 50Hz c th iu khin chy hoc dng c. Khi b pht xung chy, hai tng m nh phn (dng IC4520) s m lin tc v th hin kt qu bng xung in p cc li ra ca chng. Tng m th hai a kt qu vo A2B2C2 ca vi mch gii m 4051 (demultiplexer 1-8) khng ch cc ct ca bn phm.
Huy Mnh
Tng m th nht a kt qu vo A1B1C1 ca vi mch 4051 khng ch hng ca bn phm. Khi n phm, hai u dy hng v ct ca phm c ni vi nhau to nn in p +5V t Z2 a sang Z1 lm dng b pht xung ng h. Trn cc li ra 1..6 s gi nguyn trng thi ca hai tng m lc dng v cng chnh l m nh phn tng ng vi k t ghi trn phm n. V d khi n phm s 12 (hng 3, ct 1), b pht xung ng h tip tc chy, cc li ra ca b m c lin tc thay i v ch dng khi A1B1C1=110 (Z1 ni vi 3) v A2B2C2 = 100 (Z2 ni vi 1). Nh vy u ra ta s c m nh phn tng ng vi s 12 l 00001100. Khi nh phm, hai b m li tip tc bin i quay vng ch n khi c mt phm khc c n. Nu c mt phm th 2 c n trong khi phm th nht cha c nh th vn khng c g thay i cho n khi phm th nht c nh. Sau qu trnh bin i quay vng li c tip tc v ch dng li ng vi m nh phn ca phm th hai. Do thc t ti thit k thang my cho cao c 60 tng, bn phm ch a ra s nh phn ln nht l 63, tc l ch s dng ht 6 ng truyn d liu nn ch cn s dng 6 u vo ( INPUT ) ca PLC. b. Bn phm gi thang Bn phm gi thang c cu to v nguyn tc hot ng tng t nh bn phm gi tng. Tuy nhin do s lng phm tng ln gp i nn kt cu ca bn phm gi thang c khc i cht, tc l phi tng thm s linh kin c th a
Huy Mnh
ra m qut ca cc s t 0 n 127; trong cc phm c m t 1 n 59 dng gi thang ln tng ng vi cc tng t 1 n 59, cn cc phm c m t 62 n 120 dng gi thang xung tng ng vi cc tng t 2 n 60. Cc tn hiu ra t bn phm gi thang c a vo 7 u vo ca PLC.
Phm c n
M ASCII ra
Huy Mnh 10
Sn tng
Khi iu khin ng c ca
Sensor 2 Sensor 1
* 8 16 24 32 40 48 56
1 2 3 9 10 11 17 18 19 25 26 27 33 34 35 41 42 43 49 50 51 57 58 59
Huy Mnh 11
Chng II
cc s thut ton s dng trong iu khin thang my
Sau y l phn thuyt minh cc s thut ton c s dng trong chng trnh:
2.1 Cc chng trnh x l phm gi xung
Key=curr?
yes
Call_door
*Key_dn=1 Dn_max=key ++Ac_dn Set busy=1 yes yes Set Run=0 Key > Curr Set Run=1
Hnh 2 -1 : S thut ton ca ch ng trnh bn phm gi xung khi thang ang dng ( Busy = 0 ).
1. 2.
Kim tra trng hp ngi gi thang ng ng tng m Cabin thang my ang dng, nu ng th sang bc 2, nu sai th sang bc 3. Gi chng trnh m - ng ca ri sang bc 7.
Huy Mnh 12
3.
4. 5. 6. 7.
a v tr tng ngi ng gi thang ( Key ) vo hng i xung; t gi tr tng ln nht trong hng i bng tng c gi; tng s phn t trong hng i xung ln mt gi tr; thit lp c busy ( bo bn ) = 1; sang bc 4. So snh v tr tng ngi ng gi thang vi tng hin ti ( Current ), nu ln hn th sang bc 5, nu sai sang bc 6. Thit lp c chy ln ( Run = 0 ), sang bc 7. Thit lp c chy xung ( Run = 1 ), sang bc 7. Kt thc chng trnh.
2.1.2 C phm gi xung khi thang my ang trong hnh trnh ln ( SBN_2 ):
yes
*Key_dn=1
Ac_dn=1
Dn_max<=key?
yes
Dn_max=key
Hnh 2 -2 : S thut ton ca chng trnh bn phm gi xung khi thang ang chy ln ( Run = 0 )
Huy Mnh 13
1. 2. 3. 4. 5. 6.
Kim tra xem c s tng trong hng i xung cha, nu c th sang bc 6, nu cha th sang bc 2. a v tr tng ngi ng gi thang ( Key ) vo hng i xung; tng s phn t trong hng i xung ln mt gi tr; sang bc 3. Kim tra xem c phi l ngi gi u tin khng, nu ng th sang bc 5, ngc li th sang bc 4. Kim tra gi tr tng ln nht ( Dn_max ) trong hng i so vi tng c gi, nu Dn_max <= key th sang bc 6, ngc li th sang bc 5. t Dn_max = key. Kt thc chng trnh.
2.1.3 C phm gi xung khi thang my ang trong hnh trnh xung(SBN_3 ):
yes
*Key_dn=1?
*Key_dn=1
yes
Key>curr?
++Wt_dn
++Ac_dn
Wt_dn=1 yes
Dn_max<key ?
yes
Dn_max=key
Hnh 2-3: S thut ton ca chng trnh bn phm gi xung khi thang ang chy xung ( Run = 1 )
Huy Mnh 14
1. 2. 3. 4. 5. 6. 7. 8. 9. 2.2
Kim tra xem c s tng trong hng i xung cha, nu c th sang bc 9, nu cha th sang bc 2. a v tr tng ngi ng gi thang ( Key ) vo hng i xung; sang bc 3. So snh tng gi ( key ) vi tng hin ti ( current ), nu nh hn th sang bc 4, ngc li th sang bc 5. Tng s phn t ang c phc v ( Wt_up ) trong hng i ln 1 gi tr, sang bc 9. Tng s phn t ch c phc v ( Ac_up ) trong hng i ln 1 gi tr, sang bc 9. Kim tra xem c phi l phn t u tin c a vo hng i ch phc v, nu ng th sang bc 8, ngc li sang bc 7. So snh phn t nh nht trong hng i ln ( Up_min ) vi tng gi ( key ), nu nh hn th sang bc 8, ngc li sang bc 9. t gi tr Up_min = key. Kt thc chng trnh. Cc chng trnh x l phm gi ln
Key=curr?
yes
Call_door
*Key_up=1 Up_min=key ++Ac_up Set busy=1 yes yes Set Run=0 Key > Curr Set Run=1
Hnh 2-4: S thut ton ca chng trnh bn phm gi ln khi thang ang dng ( Busy = 0 )
Huy Mnh 15
1. 2. 3.
4. 5. 6. 7.
Kim tra trng hp ngi gi thang ng ng tng m Cabin thang my ang dng, nu ng th sang bc 2, nu sai th sang bc 3. Gi chng trnh m - ng ca ( Call door ) ri sang bc 7. a v tr tng ngi ng gi thang ( Key ) vo hng i ln; t gi tr tng nh nht trong hng i ln bng tng c gi; tng s phn t trong hng i ln mt gi tr; thit lp c busy ( bo bn ) = 1; sang bc 4. So snh v tr tng ngi ng gi thang vi tng hin ti ( Current ), nu ln hn th sang bc 5, ngc li th sang bc 6. Thit lp c chy ln ( Run = 0 ), sang bc 7. Thit lp c chy xung ( Run = 1 ), sang bc 7. Kt thc chng trnh.
2.2.2 C phm gi ln khi thang my ang trong hnh trnh xung (SBN_5 ):
yes
*Key_up=1?
Up_min<key?
yes
Up_min=key
Hnh 2-5 : S thut ton ca ch ng trnh bn phm gi ln khi thang ang chy xung ( Run = 1 ).
Huy Mnh 16
1. 2. 3. 4. 5. 6.
Kim tra xem c s tng trong hng i ln cha, nu c th sang bc 6, nu cha th sang bc 2. a v tr tng ngi ng gi thang ( Key ) vo hng i ln; tng s phn t trong hng i ln mt gi tr; sang bc 3. Kim tra xem c phi l ngi gi u tin khng, nu ng th sang bc 5, ngc li th sang bc 4. Kim tra gi tr tng nh nht ( Up_min ) trong hng i so vi tng c gi, nu Up_min >= key th sang bc 6, ngc li th sang bc 5. t Up_min = key. Kt thc chng trnh.
yes
*Key_up=1 ?
*Key_up=1
Wt_up=1 yes
Up_min>key ?
yes
Up_min=key
Hnh 2-6 : S thut ton ca ch ng trnh bn phm gi ln khi thang ang chy ln ( Run = 0 ).
Huy Mnh 17
1. 2. 3. 4. 5. 6. 7. 8. 9. 2.3
Kim tra xem c s tng trong hng i ln cha, nu c th sang bc 9, nu cha th sang bc 2. a v tr tng ngi ng gi thang ( Key ) vo hng i ln; sang bc 3. So snh tng gi ( key ) vi tng hin ti ( current ), nu nh hn th sang bc 4, ngc li th sang bc 5. Tng s phn t ang c phc v ( Ac_dn ) trong hng i ln 1 gi tr, sang bc 9. Tng s phn t ch c phc v ( Wt_dn ) trong hng i ln 1 gi tr, sang bc 9. Kim tra xem c phi l phn t u tin c a vo hng i ch phc v, nu ng th sang bc 8, ngc li sang bc 7. So snh phn t ln nht trong hng i xung ( Dn_max )vi tng gi ( key ), nu nh hn th sang bc 9, ngc li sang bc 8. t gi tr Dn_max = key. Kt thc chng trnh. X l phm gi tng:
Start Yes
Key=62 ?
0<Key<61 ? Yes Key>curr ? Yes *Key_up=1 Up_min=key ++ Ac_up Busy=1; run=0 Key<curr ? Yes *Keydn=1 Dn_max=key ++ Ac_dn Busy=1; run=1 Call Door
End
Hnh 2-7: S thut ton chng trnh x l phm gi tng khi thang ang dng ( run =0 ).
Huy Mnh 18
1. 2.
3. 4. 5.
6.
7. 8.
Kim tra phm m ca nhanh, nu c th chuyn sang bc 7, ngc li th chuyn sang bc 2. Pht hin xem phm bm c nm trong khong 0 < key < 61 khng, nu ng th sang bc 3, ngc li sang bc 8. Trong trng hp ny, ch cho php tn hiu gi tng v tn hiu m ca nhanh, cm phm dng khn cp v phm ng ca nhanh. So snh tng c gi xem c nh hn tng hin ti khng, nu ng th sang bc 6, ngc li th sang bc 4. Kim tra xem phm bm c ln hn tng hin ti khng, nu ng th sang bc 5, ngc li sang bc 8. a tng c gi vo hng i ln; gn gi tr nh nht trong hng i ln = tng c gi; tng gi tr s phn t trong hng i ln mt gi tr; thit lp c busy = 1; bt c run = 0 ( chy ln ), sang bc 8 . a tng c gi vo hng i xung; gn gi tr ln nht trong hng i xung = tng c gi; tng gi tr s phn t trong hng i xung ln mt gi tr; thit lp c busy = 1; bt c run = 1 ( chy xung ), sang bc 8 . Gi chng trnh m - ng ca ( door ), sang bc 8. Kt thc chng trnh.
Huy Mnh 19
Key=63 ? Yes
Temp=curr
Key=61 ?
Temp=1 ?
Yes
Yes
Key=62 ?
*Temp_dn=1 ?
Yes
Yes
Running=1 ?
Yes
Running=1 ?
Yes
Yes *Key_dn=1 ?
Key<=curr ?
Close-fast=1
Open-fast=1
*Key_dn=1 ++Ac_dn
*Key_up=1 ?
*Key_up=1 ++Wt_up No
*Up_min<key ?
Wt_up=1 ?
No
Up_min=key
Hnh 2-8: S thut ton x l phm gi tng khi thang ang trong hnh trnh chy xung ( run=1 ).
End
1. 2. 3. 4. 5. 6. 7.
Kim tra phm dng khn cp c m ( Scan code ) = 63 , nu c th chuyn sang bc 16, ngc li chuyn sang bc 2. Kim tra phm ng ca nhanh c m ( Scan code ) = 61, nu c th chuyn sang bc 3, ngc li th chuyn sang bc 5. Kim tra c ang chy running, nu c bt th chuyn sang bc 20, khng th sang bc 4. Thit lp c ng ca nhanh, sang bc 20. Kim tra phm m ca nhanh c m ( Scan code ) = 62, nu c th chuyn sang bc 6, ngc li th chuyn sang bc 8. Kim tra c ang chy running, nu c bt th chuyn sang bc 20, khng th sang bc 7. Thit lp c m ca nhanh, sang bc 20.
Huy Mnh 20
8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
So snh tng c gi vi gi tr tng hin ti, nu ln hn th chuyn sang bc 9, ngc li sang bc 11. Kim tra xem gi tr tng c gi c trong hng i ln hay cha, nu c th v bc 20, ngc li sang bc 10. a gi tr tng c gi vo hng i ln; tng gi tr ca phn t c trong hng i ln ( Ac_up ) mt gi tr, sang bc 20. Kim tra xem gi tr tng c gi c trong hng i xung hay cha, nu c th v bc 20, ngc li sang bc 12. a gi tr tng c gi vo hng i xung; tng gi tr ca phn t c trong hng i xung ( Wt_dn ) ln mt gi tr, sang bc 13. Kim tra xem tng c gi c phi l phn t u tin trong hng i xung khng, nu ng sang bc 15, ngc li sang bc 14. Kim tra xem tng c gi c ln hn gi tr ln nht trong hng i xung hay khng, nu ng th sang bc 15, ngc li sang bc 20. Gn gi tr Dn_max = gi tr tng c gi, sang bc 20. a gi tr tng hin ti cng 1 vo nh tm Temp, sang bc 17. So snh gi tr nh Temp vi 60, nu bng v bc 20, ngc li sang bc 18. Kim tra gi tr nh Temp c trong hng i hay cha, c th chuyn sang bc 20, cha sang bc 19. Gn gi tr nh Temp vo hng i ln, tng gi tr s phn t c trong hng i ln ln mt gi tr, sang bc 20. Kt thc chng trnh.
Huy Mnh 21
Start
Key=63 ?
Temp=curr+1
Yes
Key=61 ?
Temp=60 ?
Yes
Yes
Key=62 ?
Yes
*Temp_up=1 ?
Yes
Running=1 ?
Yes
Running=1 ?
Yes
*Key_up=1 ?
Yes
Key>curr ?
Close-fast=1
Open-fast=1
*Key_up=1 ++Ac_up
*Key_dn=1 ?
*Key_dn=1 ++Wt_dn No
Dn_max<key ?
Wt_dn=1 ?
Yes
Dn_max=key
Hnh 2-9 : S x l phm gi tng khi thang ang trong hnh trnh ln ( run =0 ).
End
1. 2. 3. 4. 5. 6. 7.
Kim tra phm dng khn cp c m ( Scan code ) = 63 , nu c th chuyn sang bc 16, ngc li chuyn sang bc 2. Kim tra phm ng ca nhanh c m ( Scan code ) = 61, nu c th chuyn sang bc 3, ngc li th chuyn sang bc 5. Kim tra c ang chy running, nu c bt th chuyn sang bc 20, khng th sang bc 4. Thit lp c ng ca nhanh, sang bc 20. Kim tra phm m ca nhanh c m ( Scan code ) = 62, nu c th chuyn sang bc 6, ngc li th chuyn sang bc 8. Kim tra c ang chy running, nu c bt th chuyn sang bc 20, khng th sang bc 7. Thit lp c m ca nhanh, sang bc 20.
Huy Mnh 22
So snh tng c gi vi gi tr tng hin ti, nu nh hn hoc bng th chuyn sang bc 9, ngc li sang bc 11. Kim tra xem gi tr tng c gi c trong hng i xung hay cha, nu c th v bc 20, ngc li sang bc 10. a gi tr tng c gi vo hng i xung; tng gi tr ca phn t c trong hng i xung ( Ac_dn ) ln mt gi tr, sang bc 20. Kim tra xem gi tr tng c gi c trong hng i ln hay cha, nu c th v bc 20, ngc li sang bc 12. a gi tr tng c gi vo hng i ln; tng gi tr ca phn t c trong hng i xung ( Wt_up ) ln mt gi tr, sang bc 13. Kim tra xem tng c gi c phi l phn t u tin trong hng i ln khng, nu ng sang bc 15, ngc li sang bc 14. Kim tra xem tng c gi c nh hn gi tr nh nht ( Up_min ) trong hng i ln hay khng, nu ng th sang bc 15, ngc li sang bc 20. Gn gi tr Up_min = gi tr tng c gi, sang bc 20. a gi tr tng hin ti vo nh tm Temp, sang bc 17. So snh gi tr nh Temp vi 1, nu bng v bc 20, ngc li sang bc 18. Kim tra gi tr nh Temp c trong hng i hay cha, c th chuyn sang bc 20, cha sang bc 19. Gn gi tr nh Temp vo hng i xung, tng gi tr s phn t c trong hng i xung ln mt gi tr, sang bc 20. Kt thc chng trnh.
Huy Mnh 23
2.4
No Li_call? Call_SBN02 Call_SBN03 Call_SBN01 Up_call ? yes Busy=1 yes Run=0? yes
Call SBN07
Call SBN09
Call SBN08
Call SBN04
Call SBN05
Call SBN06
Reset Key_buff02
Kim tra xem c phm gi tng khng, nu c chuyn sang bc 2, ngc li sang bc 8. Kim tra c busy, nu busy = 1 chuyn sang bc 3, ngc li sang bc 6. Kim tra c run, nu run = 0 chuyn sang bc 4, nu run = 1 chuyn sang bc 5. Gi chng trnh con SBN 002, sang bc 8. Gi chng trnh con SBN 003, sang bc 8. Gi chng trnh con SBN 001, sang bc 8. Reset c key_buff1 ( c phm gi tng ) = 0, sang bc 8. Kim tra xem c phm gi thang khng, c sang bc 9, ngc li sang bc 21. Kim tra c run, run = 0 th sang bc 10, run = 1 sang bc 12. Kim tra c busy, busy = 1 th sang bc 11, busy = 0 sang bc 13. Kim tra c run, run = 0 th sang bc 15, run = 1 sang bc 14. Kim tra c busy, busy = 1 th sang bc 17, busy = 0 sang bc 16. Gi chng trnh con SBN 007, sang bc 20. Gi chng trnh con SBN 009, sang bc 20.
Huy Mnh 24
Gi chng trnh con SBN 008, sang bc 20. Gi chng trnh con SBN 004, sang bc 20. Kim tra c run, run = 0 th sang bc 19, run = 1 sang bc 18. Gi chng trnh con SBN 005, sang bc 20. Gi chng trnh con SBN 006, sang bc 20. Reset c key_buff 02 ( c phm gi thang ) = 0. Kt thc chng trnh. Chng trnh ng - m ca ( door ).
T IM 2= 0?
R ead key
C lose_fast?
yes
yes
T IM 3= 0 yes
R ead key
1. 2. 3. 4.
Ra lnh m ca; t b m TIM 002, chuyn sang bc 2. Kim tra xem ht thi gian tr cha, nu cha th sang bc 3, ngc li sang bc 5. Gi chng trnh c phm ( Read_key ), sang bc 4. Kim tra xem c c ng ca nhanh khng, nu c th sang bc 5, ngc li v bc 2.
Huy Mnh 25
5. 6. 7. 8.
Ra lnh ng ca, t b TIM 003, sang bc 6. Kim tra xem ht thi gian tr cha, nu cha th sang bc 7, ngc li sang bc 8. Gi chng trnh c phm ( Read_key ), sang bc 6. Kt thc chng trnh.
Start
INC Sensor
<
Set S03 =1
Set S04 =1
<
Sensor CMP 5
Set S05 =1
Start
Start
No
Key_buff01=1 ?
No
Key_buff01=1 ?
Huy Mnh 26
1. 2. 3. 4. 5. 6. 7.
Tng gi tr sensor ln mt gi tr, chuyn sang bc 2. So snh gi tr ca sensor vi s 3, nu bng sang bc 3, ln hn sang bc 4, nu nh hn sang bc 6. Set c S03 = 1, sang bc 7. So snh gi tr ca sensor vi s 5, nu bng sang bc 5, nh hn sang bc 6. Set c S05 = 1, Reset gi tr sensor = 0, chuyn sang bc 7. Set c S04 = 1, chuyn sang bc 7. Kt thc chng trnh.
1. 2. 3.
Kim tra xem phm bm trc c x l cha, nu cha ( key_buff = 1 ) th sang bc 3, ri ( key_buff1 = 0 ) th sang bc 2. Tnh ton v a ra m ca phm c gi ( Scan code ), set key_buff1=1. Kt thc chng trnh.
Huy Mnh 27
2.7
Keyboard
Yes
busy=0 ?
Keyboard
Run=0 ?
Over_weight ?
Close =1 ? Yes
Running=1 Run up
S05 =1 ?
S03=1 ? Yes
Keyboard
Keyboard
Keyboard
Temp=curr+1
Ac_up=0 ?
Yes
Temp=Up_min?
Temp=Dn_max?
Yes
Ac_up=0 ?
Yes Slow_down
*Temp_up=1 ?
Slow_down
Keyboard
S05=1 ?
Yes Slow_down S04 =1 ? Yes S04 =1 ? Yes Stop S05 =1 ? Yes S05 =1 ? Yes --Current *Curr_dn=0 --Ac_dn Set TIM00 --Current *Curr_dn=0 Ac_up=Wt_up Wt_up=0 Run =0 Set TIM00 Keyboard Yes Open_fast ? Yes Keyboard S05 =1 ? Yes ++Current *Curr_up=0 Ac_dn=Wt_dn Wt_dn=0 Run =1 Set TIM00 Stop S04 =1 ? Yes Stop
Yes Slow_down
Open_fast ? Yes
Keyboard
TIM00=0 ?
TIM00=0 ? Yes
Keyboard
Open_fast ? Yes
Call Door
Open_fast ?
Yes Yes
Call Door
Ac_dn=0 ? Yes Busy = 0 Call Door Curr_up = 0 --Wt_up Wt_up=0 ? Yes Run = 0 Ac_up=Wt_up Wt_up =0 Yes Wt_up=0 ?
Ac_up=0 ?
Busy = 0
Busy = 0
Ac_up=0 ?
Ac_up=0 ? Yes Wt_dn=0 ? Yes Call Door Curr_dn = 0 --Wt_dn Wt_dn=0 ? Yes Busy = 0
Yes
Up_min=curr ?
Dn_max=curr ?
Yes
Up_min>curr ?
Yes
Dn_max>curr ?
Hnh 2-13: Lu thut ton ca chng trnh chnh iu khin thang my nh cao tng.
Huy Mnh 28
13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
Gi chng trnh c bn phm ( Keyboard ), chuyn sang bc 2. Kim tra c busy, busy = 0 chuyn sang bc 1, busy=chuyn sang bc 3. Kim tra c run, run = 0 chuyn sang bc 4, run = 1 chuyn sang bc 50. Kim tra c Over_weight ( qu ti ), nu Over_weight = 0 chuyn sang bc 6, Over_weight = 1 chuyn sang bc 5. Bo chung qu ti, gi chng trnh Keyboard, chuyn sang bc 4. Kim tra c ng ca hon ton ( Close ), close = 1 chuyn sang bc 8, ngc li chuyn sang bc 7. Gi chng trnh c bn phm ( Keyboard ), chuyn sang bc 6. Thit lp c running = 1 ( ang chy ), v ra lnh chy ln, chuyn sang bc 9. Kim tra sensor S03, nu c chuyn sang bc 11, ngc li chuyn sang bc 10. Gi chng trnh c bn phm ( Keyboard ) , chuyn sang bc 9. Gn Temp = current + 1 ( current l tng hin ti ), chuyn sang bc 12. Kim tra Ac_up ( s phn t c trong hng i ln cn c phc v trong hnh trnh hin ti ), Ac_up = 0 chuyn sang bc 37, ngc li chuyn sang bc 13. Kim tra xem tng sp n c cn dng khng, nu c chuyn sang bc 17, ngc li chuyn sang bc 14. Gi chng trnh c bn phm ( Keyboard ) , chuyn sang bc 15. Kim tra sensor S05, nu c chuyn sang bc 16, ngc li chuyn sang bc 14. Tng ch s tng hin ti, Reset cc sensor S03, S04, S05, chuyn sang bc 9. Ra lnh gim tc, chuyn sang bc 18. Kim tra Sensor S04, nu c chuyn sang bc 19, ngc li chuyn sang bc 18. Ra lnh dng, chuyn sang bc 20. Kim tra sensor S05, nu c chuyn sang bc 21, ngc li chuyn sang bc 20. Tng gi tr tng hin ti, xo hng i, tr s phn t trong hng i ln i mt gi tr , set TIM0 ( tr thi gian ch m ca ), chuyn sang bc 22. Kim tra TIM0, nu ht thi gian tr chuyn sang bc 25, ngc li chuyn sang bc 23. Gi chng trnh c bn phm ( Keyboard ) , chuyn sang bc 24.
Huy Mnh 29
24. Kim tra c m ca nhanh ( Open_fast ), nu c chuyn sang bc 25, ngc li chuyn sang bc 22. 25. Gi chng trnh m ca ( door ) , chuyn sang bc 26. 26. Kim tra Ac_up ( s phn t c trong hng i ln cn c phc v trong hnh trnh hin ti ), Ac_up = 0 chuyn sang bc 27, ngc li chuyn sang bc 1. 27. Kim tra s phn t trong hng i xung Wt_dn, Wn_dn = 0 th chuyn sang bc 28, ngc li chuyn sang bc 29. 28. Thit lp c busy = 0, chuyn sang bc 1. 29. So snh gi tr Dn_max ( phn t ln nht trong hng i xung ) vi tng hin ti , nu Dn_max = current chuyn sang bc 30, ngc li chuyn sang bc 31. 30. Gi chng trnh m ca, xo phn t trong hng i xung, gim s phn t trong hng i xung i mt gi tr, chuyn sang bc 32. 31. So snh gi tr Dn_max ( phn t ln nht trong hng i xung ) vi tng hin ti , nu Dn_max > current chuyn sang bc 1, ngc li chuyn sang bc 33. 32. Kim tra xem c phn t trong hng i xung khng, nu c chuyn sang bc 33, ngc li chuyn sang bc 28. 33. Thit lp c run =1, gn Ac_dn = Wt_dn, gn Wt_dn =0 ( chuyn phn t t hng i ch c phc v sang hng i cn c phc v ), chuyn sang bc 1. 34. So snh gi tr Temp vi Dn_max, nu Temp = Dn_max th chuyn sang bc 38, ngc li chuyn sang bc 35 35. Gi chng trnh c bn phm ( Keyboard ), chuyn sang bc 37. 36. Kim tra sensor S05, nu c chuyn sang bc 36, ngc li chuyn sang bc 37. 37. Tng gi tr tng hin ti, reset cc sensor S03, S04 v S05, chuyn sang bc 9. 38. Ra lnh gim tc, chuyn sang bc 39. 39. Kim tra Sensor S04, nu c chuyn sang bc 40, ngc li chuyn sang bc 39. 40. Ra lnh dng, chuyn sang bc 41. 41. Kim tra sensor S05, nu c chuyn sang bc 42, ngc li chuyn sang bc 41.
Huy Mnh 30
42. Tng gi tr tng hin ti, xo hng i, tr s phn t trong hng i xung i mt gi tr , chuyn Ac_dn = Wt_dn, gn Wt_dn = 0, chuyn sang bc 44. 43. Thit lp c run =1, set TIM0 ( tr thi gian ch m ca ),chuyn sang bc 44. 44. Kim tra TIM0, nu ht thi gian tr chuyn sang bc 47, ngc li chuyn sang bc 45. 45. Gi chng trnh c bn phm ( Keyboard ) , chuyn sang bc 46. 46. Kim tra c m ca nhanh ( Open_fast ), nu c chuyn sang bc 47, ngc li chuyn sang bc 44. 47. Gi chng trnh m ca ( door ) , chuyn sang bc 48. 48. Kim tra Ac_dn ( s phn t c trong hng i xung cn c phc v trong hnh trnh hin ti ), Ac_dn = 0 chuyn sang bc 49, ngc li chuyn sang bc 1. 49. Thit lp c busy = 0, chuyn sang bc 1. 50. Kim tra c Over_weight ( qu ti ), nu Over_weight = 0 chuyn sang bc 51, Over_weight = 1 chuyn sang bc 50. 51. Bo chung qu ti, gi chng trnh Keyboard, chuyn sang bc 50. 52. Kim tra c ng ca hon ton ( Close ), close = 1 chuyn sang bc 53, ngc li chuyn sang bc 54. 53. Gi chng trnh c bn phm ( Keyboard ), chuyn sang bc 52. 54. Thit lp c running = 1 ( ang chy ), v ra lnh chy xung, chuyn sang bc 55. 55. Kim tra sensor S03, nu c chuyn sang bc 57, ngc li chuyn sang bc 56. 56. Gi chng trnh c bn phm ( Keyboard ) , chuyn sang bc 57. 57. Gn Temp = current ( current l tng hin ti ), chuyn sang bc 58. 58. Kim tra Ac_dn ( s phn t c trong hng i ln cn c phc v trong hnh trnh hin ti ), Ac_dn = 0 chuyn sang bc 80, ngc li chuyn sang bc 59. 59. Kim tra xem tng sp n c cn dng khng, nu c chuyn sang bc 63, ngc li chuyn sang bc 60. 60. Gi chng trnh c bn phm ( Keyboard ) , chuyn sang bc 61. 61. Kim tra sensor S05, nu c chuyn sang bc 62, ngc li chuyn sang bc 59. 62. Gim ch s tng hin ti, Reset cc sensor S03, S04, S05, chuyn sang bc 55.
Huy Mnh 31
63. Ra lnh gim tc, chuyn sang bc 64. 64. Kim tra Sensor S04, nu c chuyn sang bc 65, ngc li chuyn sang bc 64. 65. Ra lnh dng, chuyn sang bc 66. 66. Kim tra sensor S05, nu c chuyn sang bc 67, ngc li chuyn sang bc 66. 67. Gim gi tr tng hin ti, xo hng i, tr s phn t trong hng i xung i mt gi tr , set TIM0 ( tr thi gian ch m ca ), chuyn sang bc 68. 68. Kim tra TIM0, nu ht thi gian tr chuyn sang bc 69, ngc li chuyn sang bc 71. 69. Gi chng trnh c bn phm ( Keyboard ) , chuyn sang bc 70. 70. Kim tra c m ca nhanh ( Open_fast ), nu c chuyn sang bc 71, ngc li chuyn sang bc 68. 71. Gi chng trnh m ca ( door ) , chuyn sang bc 72. 72. Kim tra Ac_dn ( s phn t c trong hng i ln cn c phc v trong hnh trnh hin ti ), Ac_dn = 0 chuyn sang bc 73, ngc li chuyn sang bc 1. 73. Kim tra s phn t trong hng i xung Wt_up, Wn_up = 0 th chuyn sang bc 74, ngc li chuyn sang bc 75. 74. Thit lp c busy = 0, chuyn sang bc 1. 75. So snh gi tr Up_min ( phn t nh nht trong hng i ln ) vi tng hin ti , nu Up_min = current chuyn sang bc 77, ngc li chuyn sang bc 76. 76. Gi chng trnh m ca, xo phn t trong hng i ln, gim s phn t trong hng i ln i mt gi tr, chuyn sang bc 78. 77. So snh gi tr Up_min ( phn t nh nht trong hng i ln ) vi tng hin ti , nu Up_min > current chuyn sang bc 1, ngc li chuyn sang bc 79. 78. Kim tra xem c phn t trong hng i ln khng, nu c chuyn sang bc 79, ngc li chuyn sang bc 74. 79. Thit lp c run =1, gn Ac_up = Wt_up, gn Wt_up =0 ( chuyn phn t t hng i ch c phc v sang hng i cn c phc v ), chuyn sang bc 1. 80. So snh gi tr Temp vi Up_min, nu Temp = Up_min th chuyn sang bc 84, ngc li chuyn sang bc 81. 81. Gi chng trnh c bn phm ( Keyboard ), chuyn sang bc 82.
Huy Mnh 32
82. Kim tra sensor S05, nu c chuyn sang bc 83, ngc li chuyn sang bc 80. 83. Gim gi tr tng hin ti, reset cc sensor S03, S04 v S05, chuyn sang bc 55. 84. Ra lnh gim tc, chuyn sang bc 85. 85. Kim tra Sensor S04, nu c chuyn sang bc 86, ngc li chuyn sang bc 85. 86. Ra lnh dng, chuyn sang bc 87. 87. Kim tra sensor S05, nu c chuyn sang bc 88, ngc li chuyn sang bc 87. 88. Gim gi tr tng hin ti, xo hng i, tr s phn t trong hng i ln i mt gi tr , chuyn Ac_up = Wt_up, gn Wt_up = 0, chuyn sang bc 89. 89. Thit lp c run =1, set TIM0 ( tr thi gian ch m ca ),chuyn sang bc 90. 90. Kim tra TIM0, nu ht thi gian tr chuyn sang bc 93, ngc li chuyn sang bc 91. 91. Gi chng trnh c bn phm ( Keyboard ) , chuyn sang bc 92. 92. Kim tra c m ca nhanh ( Open_fast ), nu c chuyn sang bc 93, ngc li chuyn sang bc 90. 93. Gi chng trnh m ca ( door ) , chuyn sang bc 94. 94. Kim tra Ac_up ( s phn t c trong hng i xung cn c phc v trong hnh trnh hin ti ), Ac_up = 0 chuyn sang bc 95, ngc li chuyn sang bc 1. 95. Thit lp c busy = 0, chuyn sang bc 1. Trn c s cc thut ton trnh by, chng trnh iu khin thang my c vit theo s Ladder trn phn mm SYSMAC do hng OMRON cung cp, c sot li v np vo PLC. Tuy nhin do khng c iu kin (thiu cc bn phm u vo, cc r le trung gian v.vv... ) nn khng th chy th nghim chng trnh. Do trong phn tip theo, em s trnh by chng trnh m phng thang my trn my tnh.
Huy Mnh 33
Chng III
thuyt minh s nguyn l
3.1 Gii thiu chung s nguyn l ton h thng
S nguyn l chung cho ton h thng c m t trn hnh 3-1. Trong i tng c iu khin l cabin thang my. ng c truyn ng chnh l ng c khng ng b rotor lng sc. ng c c cung cp ngun bi bin tn, l bin tn 3 pha loi MICRO MASTER ca hng SIEMENS ( c ) ch to. Trc u vo ca bin tn c lp b lc chng nhiu nh hng n li xoay chiu. Ton b h thng c iu khin bi thit b iu khin logic kh trnh PLC , l loi PLC CPM1A-40CDR do hng OMRON ( Nht bn) ch to gm 24 u vo ( Input ), 16 u ra ( Output ). Bin tn c 3 u vo s t hp thnh 8 tn s t trc cho php n hot ng khi c tn hiu u vo tng ng. Cc u vo ny c nh s t 10 n 12 v c ni vo cc u ra t IR 010.00 n IR 010.02 tng ng trn PLC. PLC s iu khin bin tn hot ng theo cc tn s c t trc ny ph hp vi gin vn tc ti u cho iu khin thang my. cung cp cc tn hiu cn thit cho qu trnh iu khin, trong s c s dng bn phm gi tng c t trong cabin thang my gm 64 phm trong cc phm t 1 n 60 c dng cho vic gi n cc tng tng ng, 3 phm khc l Open gi m ca nhanh, Close gi ng ca nhanh, Emer gi dng thang my khn cp. Bn phm gi tng c 7 u ra c ni vo u vo ca PLC nh sau : - u bo c phm gi ( bo ngt ) c a vo u vo IR 000.04 gi chng trnh ngt SBN 001 cho x l phm gi tng. Chng trnh ny s t hp cc u vo IR 000.06 n IR 000.11 ( 6 u ) tng ng vi cc bit d liu t D0 n D5 ca bn phm gi tng a n theo m nh phn v xc nh c v tr tng cn n a vo nh m v bo c keybuff01( c phm gi tng ) cho chng trnh chnh x l.
Huy Mnh 34
U li
S nguyn l h thng iu khin thang my s dng thit b iu khin logic kh trnh PLC Bin tn Bung iu khin
B lc ( Filter )
PLC
Gii m 7 thanh
Gii m 7 thanh
LED
ng c
Vi x l bn phm gi thang
Sn tng
Khi iu khin ng c ca
Sensor 2 Sensor 1
Huy Mnh 35
Bn phm gi thang gm 118 phm, trong ti mi tng t 2 nt, mt cho gi thang my i ln, mt cho gi thang my i xung, tr trng hp c bit l tng 1 ch c phm gi ln v tng thng ch c nt gi xung. Bn phm gi thang c 8 u ra c ni vo u vo ca PLC nh sau : - u bo c phm gi ( bo ngt ) c a vo u vo IR 000.05 gi chng trnh ngt SBN 002 cho x l phm gi thang. Chng trnh ny s t hp cc u vo IR 001.00 n IR 001.06 ( 7 u ) tng ng vi cc bit d liu t D0 n D6 ca bn phm gi thang a n theo m nh phn v xc nh c v tr tng cn n a vo nh m v bo c keybuff02( c phm gi thang ) cho chng trnh chnh x l. c th pht hin c v tr thang my khi cn iu chnh tc cng nh hm dng, trong n c s dng cc sensor phi tip im theo nguyn l quang hc c nh s t Sensor 1 n Sensor 5, tt c cc sensor ny c u song song vo u vo ngt 000.03 gi chng trnh ngt SBN 000 cho x l sensor. Vic cung cp thng tin v v tr tng hin ti m thang ang hot ng c thc hin nh cc n LED. Cc n LED ny c ni vo cc u ra IR 100.00 n IR 100.03 cho ch s hng chc v IR 100.04 n 100.07 cho ch s hng n v thng qua cc mch gii m 16 t 4 s dng EPROM 2764. Ngoi ra, h thng ng c ng m ca cng c PLC iu khin thng qua u vo IR 001.07 bo tn hiu ca ng hon ton cho php ng c khi ng, trong trng hp ngc li th ng c s khng c php khi ng; tn hiu cho php ng c ca quay theo chiu m ca ra c ly trn u ra IR 010.06, tn hiu cho php ng c ca quay theo chiu ng ca vo c ly trn u ra IR 010.07. m bo an ton trong cc trng hp s c, cc thit b an ton hot ng c lp vi phn iu khin nh phanh d, l xo thu lc v.v... s hot ng. Ngoi ra trong bung thang cn t mt phm bm chung hot ng nh ngun mt chiu cung cp c lp bo tn hiu khi c s c mt in li. 3.2 nguyn tc hot ng ca h thng
Khi chng trnh c vit xong, c kim nh v np vo PLC cng vi cc iu kin khc cho thang my hot ng c m bo th c th khi ng h thng. Trc ht ta cp ngun cho PLC v n chuyn sang trng thi RUN ( n RUN sng ). Sau ng cu dao cung cp ngun cho bin tn v thang my sn sng hot ng. Ti thi im hot ng ln u tin, thang my
Huy Mnh 36
c t tham s tng hot ng hin ti l 1 v n s thay i trong sut qu trnh hot ng sau ny. Tham s ny s c lu li trong sut qu trnh hot ng k c khi mt ngun cung cp v c cc LED hin th khi thang my hot ng. h thng hot ng tt th phi tin hnh bo dng nh k theo cc quy nh ca nh sn xut cc thit b s dng trong h thng.
Huy Mnh 37
Chng IV
Chng trnh m phng thang my
4.1 Mc ch
minh ho cc thut ton c s dng khi vit chng trnh cho PLC, trong bn n ny em vit mt chng trnh m phng thang my trn ngn ng C. Chng trnh cng ng thi c s dng kim tra c tnh thc t ca h thng nh phn v th tn hiu phn hi tc c ly qua b chuyn i A/D lp trn card giao tip. 4.2 S dng chng trnh
Huy Mnh 38
a. Phm gi thang Phm gi thang ln: Ngi gi phi bm vo s tng m ngi ang ng ( t 1 n 999 ) nh s dng cc phm s trn bn phm v bm phm mi tn ln, v d c ngi ang tng 30 cn i ln th ngi phi n s 3, sau l s 0 ri n phm mi tn ln. Phm gi thang xung: Ngi gi phi bm vo s tng m ngi ang ng ( t 1 n 999 ) v bm phm mi tn xung. b. Phm gi tng Ngi gi phi bm vo s tng m ngi cn n ( t 1 n 999 ) v bm phm Enter.
Huy Mnh 39
th tc ng c
Hng i xung
Hng i ln
Huy Mnh 40
Huy Mnh 41
[12] Trn Quang Vinh Cu trc my vi tnh , NXB Gio dc 1997 [13] L Vn Doanh, Phm Khc Chng K thut vi iu khin , NXB Khoa hc k thut 1998 [14] Phm Cng Ng L thuyt iu khin t ng , NXB Khoa hc k thut 1994 [15] Nguyn Phng Quang iu khin t ng truyn ng in xoay chiu ba pha, NXB Gio dc 1996 [16] Bi Quc Khnh, Phm Quc Hi, Nguyn Vn Lin, Dng Vn Nghi iu chnh t ng truyn ng in, NXB Khoa hc k thut 1996 [17] Perter Norton Nhp mn Assembler , NXB gio dc 1995 [18] Microprocessor and IC families Intel Corporation 1993 [19] V Quang Lp v Trn Xun Minh K thut bin i, H K thut cng nghip Thi nguyn.