th trên hình 1.1 g m hai qu bóng ch hai tr ng thái Floor và First.. Tr ng thái u vào Tr ng thái ti p theo Red èn đ èn xanh Green... Hình Error!. No text of specified style in document..
Trang 1Tu n N i dung Giáo trình BT, TN,…
1
Ch ng I: Khái ni m v i u khi n Logic
1.1 Khái ni m v i u khi n Logic
Trang 213 5.3 K thu t ghi d ch
5.4 S d ng bi u đ ch c n ng tu n t (SFC)
Làm bài t p và thí nghi m
14 Ch ng VI: Ghép n i và truy n thông v i PLC
Trang 3CH NG 1: KHÁI NI M CHUNG V I U KHI N LOGIC
1.1 Khái ni m v KLG
M t h th ng có th đ c coi là m t t h p các b ph n t ng tác l n nhau,
đ c t ch c đ th c hi n m t m c tiêu nào đó, thông th ng là đ đ t đ c giá tr gia t ng - thông qua quá trình thay đ i các tính ch t v t lý, hóa h c hay sinh h c, s p
đ t l i v trí, trao đ i thông tin – trên các lo i nguyên li u thô, n ng l ng, bán thành
ph m, s c lao đ ng – trong các đi u ki n môi tr ng nh t đ nh N u nh các quá trình
x y ra trong các đi u ki n nh t đ nh đ u tuân theo nh ng quy lu t hóa lý hay sinh h c
c a chính nó thì đ đ m b o k t qu c a quá trình là các s n ph m mong mu n ta có
th tác đ ng vào các đi u ki n này Vi c tác đ ng vào các đi u ki n đ quá trình x y
ra nh mong mu n g i là đi u khi n th c hi n vi c đi u khi n c n ph i theo dõi các đ i l ng thay đ i liên quan đ n b n thân quá trình và các tham s th hi n các
đi u ki n mà quá trình đang x y ra thông qua các thi t b đo nh các sensor Các k t
qu mong mu n đ c th hi n nh các l ng đ t Nh v y đi u khi n liên quan đ n
vi c ti p nh n các giá tr l ng đ t, các giá tr c a các tham s , các giá tr liên quan
đ n đ i l ng thay đ i theo quá trình, x lý các thông tin này theo m t quy lu t nào
đó, sau đó đ a ra các tín hi u tác đ ng lên quá trình
N u theo dõi quá trình theo th i gian có th phân lo i quá trình thành lo i liên
t c và lo i r i r c Quá trình là liên t c n u có th xác đ nh ho c mô t đ c các đ i
l ng liên quan đ n quá trình m i đi m theo th i gian, ví d quá trình thay đ i nhi t
đ , thay đ i áp su t, các ph n ng hóa h c, … Quá trình là r i r c n u ch có th bi t
đ c giá tr các đ i l ng liên quan đ n quá trình nh ng th i đi m nh t đ nh theo
th i gian ho c th m chí không bi t đ c th i đi m xu t hi n c a chúng Lo i sau này
g i là các s ki n S ki n ch cho th y s hi n di n c a chúng khi chúng x y ra
có th đi u khi n, kh ng ch đ c các quá trình, m t v n đ quan tr ng là
có th có đ c mô t toán h c c a chúng S d ng các công c toán h c đ mô t các quá trình g i là mô hình hóa ây chính là quá trình dùng t duy trìu t ng đ mô t các quá trình V i t duy trìu t ng m t s quá trình có b n ch t r t khác nhau l i có
th đ c mô t b i các mô hình gi ng nhau, do đó đ c nghiên c u b ng các công c toán h c gi ng nhau
Các quá trình liên t c có th đ c mô t b i h ph ng trình vi phân Nh phép tính
vi phân có th mô t đ c s thay đ i c a các đ i l ng quan tâm trong nh ng kho ng
th i gian nh tùy ý Các h th ng liên t c là đ i t ng nghiên c u c a lý thuy t đi u khi n t đ ng c bi t đ i v i l p các h th ng tuy n tính, đ c mô t b i h ph ng trình vi phân tuy n tính, các ph ng pháp và công c nghiên c u đã đ c phát tri n
và ng d ng t lâu nay
i v i các h th ng r i r c, v i c m nh n ban đ u, có th ngh r ng vi c mô t
và nghiên c u chúng s d dàng h n M t trong nh ng cách ti p c n ngây th nh t đ i
v i h th ng r i r c là có th li t kê đ c h t nh ng đáp ng có kh n ng x y ra Ví
Trang 4d m t chi c qu t đi n thông th ng có th tr ng thái ch y ho c d ng Qu t có th
ch y n u ta đóng công t c c p ngu n đi n cho đ ng c qu t Qu t s d ng n u ta c t công t c c p đi n cho đ ng c Hình dung v chi c qu t s ph c t p d n lên n u b xung thêm nh ng tr ng thái th c t khác Ch đ ch y có th c n phân bi t thêm ch y
t c đ nào, đ n gi n nh t có th là qu t có ba c p t c đ , 1, 2, 3 Khi trong ch đ
qu t có th c s ho t đ ng hay không khi công t c ngu n đã đóng tránh b nh
h ng khi đi n áp l i có s thay đ i b t th ng tín hi u t b c m bi n gió (c m
bi n áp su t không khí) ch th c s đ c x lý sau m t kho ng th i gian nh t đ nh, ví
d sau 30s Nh ng bi n đ ng nháy, m t đi n áp ngu n ng n 5 – 10s s không nh
h ng gì đ n tr ng thái ho t đ ng c a qu t Rõ ràng là đ mô t h th ng xác th c
h n, s l ng các tr ng thái s t ng lên nhanh chóng Th c t , m t trong nh ng khó
kh n l n khi nghiên c u các h r i r c là s l ng các tr ng thái quá l n, đ n m c ch
c n li t kê ra chúng đã là không th , ngay c v i s tr giúp c a các máy tính hi n đ i
Khái ni m v đi u khi n logic (Logic Control) liên quan đ n các h th ng r i
r c, trong đó đáp ng c a quá trình ch có th bi t đ c nh ng th i đi m nh t đ nh theo th i gian ho c khi nh ng s ki n x y ra Th i đi m s ki n x y ra có th hoàn toàn không bi t tr c đ c áp ng c a h th ng có th ch u s nh h ng c a tình
đ c n gi i quy t cho quá trình đi u khi n, có th k ra sau đây:
- H th ng có th ph i trong các ch đ làm vi c khác nhau, tuân theo l nh
đi u khi n t bên ngoài Ch đ đ n gi n nh t có th th y là ch y (Start), d ng (Stop)
- H th ng có th ph i chuy n t ch đ này sang ch đ khác theo m t trình t
nh t đ nh, xác đ nh b i m t s đi u ki n nh t đ nh Cách th c ho t đ ng này r t
ph bi n đ i v i các quá trình công nghi p Ví d đ kh i đ ng m t dây chuy n công ngh luôn đòi h i nh ng tr t t ch t ch , b ph n nào ph i ch y
tr c, b ph n nào ph i ch y sau, c ng nh tuân th quá trình t ng t c theo quy
lu t nh t đ nh i u t ng t c ng x y khi c n d ng dây chuy n l i
- m b o quá trình x y ra theo các trình t v th i gian nh t đ nh m b o tính
đ ng b là ví d v nhi m v ki u này
Trang 5- T ng tác gi a các b ph n Trong m t h th ng các b ph n có t ng tác l n nhau, ch đ ho t đ ng khâu này có th t o ra nh ng đi u ki n nh t đ nh quy
đ nh ho t đ ng c a các b ph n khác m b o nh ng m i quan h này trong các h th ng phân tán, kích c l n là m t nhi m v không h d dàng
- Ph n ng t c th i tr c m t s s ki n S ki n có th tham gia vào các ho t
đ ng bình th ng, ví d nh m t chuy n đ ng đ n m t công t c cu i hành trình, c n ph i d ng l i ho c chuy n đ ng ng c l i, l nh đi u khi n đ n khi
m t nút b m ch c n ng nào đó tác đ ng, … S ki n th ng tham gia đ m b o
an toàn cho quá trình nh khi bánh r ng truy n chuy n đ ng b v , v t l thâm
nh p khu v c nguy hi m, ho c can thi p t c th i c a ng i v n hành n nút
d ng kh n c p khi th y có hi n t ng b t th ng
i u khi n logic đ c nghiên c u trong nhi u l nh v c:
- K thu t tính toán (Computer Science);
- L p trình (Programming);
- Mô ph ng (Simulation);
- Truy n thông (Communication);
- Các h th ng đi u khi n công nghi p (Industrial Control)
đây s ch quan tâm đ n nh ng v n đ c a đi u khi n logic trong các h th ng đi u khi n công nghi p, trong đó ng i k s c n thi t k h th ng đi u khi n đ đ m b o quá trình x y theo đúng quy trình công ngh yêu c u, ho t đ ng an toàn, tin c y, v i
ti p c n các v n đ đ i v i m t h th ng đi u khi n công nghi p
Nhi m v thi t k m t h th ng đi u khi n logic tuân theo các b c gi ng nh các nhi m v thi t k b t k nào, đó là:
1 Phân tích quá trình đ làm rõ các yêu c u v công ngh mong mu n;
2 Trên c s các yêu c u công ngh mong mu n c n mô t đ c h th ng
b ng ngôn ng k s phù h p Ngôn ng k s đây đ c hi u là m t công c mô t
đ c thù nào đó mà d a trên k t qu mô t h th ng, g i là mô hình, có th chuy n mô hình này sang d ng ng d ng đ c thông qua các thi t b ph n c ng cùng v i các
ph n m m c n thi t;
3 Mô ph ng h th ng V i nh ng h th ng ph c t p ho c quan tr ng không
th d dàng xây d ng ngay các thi t b th nghi m, có th là do quá đ t ti n ho c quá
Trang 6nguy hi m trong th nghi m Các công c mô ph ng trên máy tính ngày nay cho phép
th nghi m trên mô hình g n v i các đ c đi m th c t , t đó có đ c nh ng đ c tính
đ c các ng d ng mà không nh t thi t ph i đ c gi i thích ng n ngu n b ng các suy
lu n ch t ch , nh trong t duy ki u toán h c
1.2 Mô hình hóa các h th ng r i r c
Mô t các h th ng r i r c t ra ph c t p h n nhi u so v i các h th ng liên
t c M c đ ph c t p th hi n ch ta có th r i r c hóa các quá trình đ n m c đ nào m c đ ti p c n ban đ u quá trình có th ch phân chia ra theo m t vài ch đ làm vi c, ví d nh ch y và d ng nh v i chi c qu t đã nói đ n trên đây Sau đó quá trình r i r c có th l i ti p t c đ ph n ánh th c t m t cách chi ti t h n Gi a các
tr ng thái làm vi c l i có th có m i quan h v i nhau, có th x y ra đ ng th i ho c theo m t tr t t nh t đ nh nào đó Khi s l ng các tr ng thái nhi u lên cùng v i các
m i quan h gi a chúng, rõ ràng vi c xác đ nh đ c các đ c tính, các tính ch t c a h
th ng tr nên khó kh n h n nhi u N u nh m c đích c a vi c mô hình hóa h th ng
là đ suy lu n ra đ c, đoán tr c đ c các đáp ng c a h th ng thì vi c đ a ra quá nhi u các kh n ng đáp ng x y ra c ng không giúp ích đ c gì nhi u cho quá trình thi t k h th ng đi u khi n
1.1.1 i s Bool
M t trong nh ng công c toán h c có c s đ y đ nh t đã đ c nghiên c u k
l ng là đ i s Bool, theo tên c a nhà toán h c gi a th k XIX Gorge Boole, hay còn
g i là đ i s logic [1] Trong đ i s Bool khái ni m trìu t ng đ a ra có d ng đ n gi n
nh t là coi s ki n ch có th là có ho c không, t n t i ho c không t n t i, đúng ho c sai Khái ni m đ n gi n đúng ho c sai đ c th hi n b ng hai ch s 1 và 0 t o nên c
s h đ m c s 2, bi n t t c các phép toán s h c c b n ch còn l i là phép c ng
V m t v t lý đúng hay sai có th đ c th c hi n b ng m t m ch đi n đóng hay m hay vi c t o nên m c đi n áp gi a 0 – 5 V Các khóa bán d n dùng tranzito có th d dàng th c hi n đ c các quá trình v t lý này đã t o nên cu c cách m ng l n là s ra
đ i c a các thi t b đi n t s , sau đó là máy tính đi n t mà nh h ng c a chúng đ n
m i m t đ i s ng, kinh t , k thu t thì m i ng i đ u bi t
M c dù d a trên khái ni m c b n nh t là đúng ho c sai, 0 ho c 1, đ i s Bool
có kh n ng mô t hàng lo t các quá trình th c t Các m i quan h logic ph c t p nh
Trang 7s l a ch n các tác đ ng c n thi t trong m t t h p r t l n các tín hi u đ u vào th
hi n qua các hàm logic Các công c phân tích c a đ i s Bool cho phép t i thi u hóa các ph n t logic c n thi t đ xây d ng nên các b đi u khi n logic h u hi u là c s cho nh ng ng d ng th c t c a lý thuy t này
i s Bool là c s đ xây d ng nên các m ch đi n tính toán, các vi m ch logic đ ph c h p cao (Complex Programmable Logic Device – CPLD) hay các m ch
t h p logic có th l p trình đ c (Flexible Programmable Gate Array – FPGA), ngày càng đ c ng d ng r ng rãi
Tuy nhiên trìu t ng hóa đ n m c coi m t cái gì đó ch là đúng ho c sai s là quá khiên c ng khi mô t các quá trình th c t ho c s d n đ n ph i phân chia quá trình ra quá nhi u m c đ chi ti t đ n m c không th phân tích n i bù đ p nh ng khi m khuy t này l nh v c đ i s logic đã phát tri n lên các h ng chuyên sâu m i là logic m (Fuzzy Logic) và m ng n ron Các b c phát tri n cao h n c a logic đã t ra
có nh ng ng d ng th c t quan tr ng và c n đ n nh ng nghiên c u chuyên sâu, ngoài ph m vi mu n đ c p đ n đây
V i s phát tri n c a k thu t máy tính con ng i đã có nh ng công c h u hi u khác
đ mô t m t cách trìu t ng nh ng quá trình th c t mà không ph i d a trên t duy
ki u toán h c ó là nh ng công c t duy b ng ngôn ng hay b ng hình nh đây
mu n nói đ n các công c đ mô hình hóa các quá trình m t cách tr c giác thông qua các lo i đ th
1.1.2 Automat h u h n (Finite State Machine - FSM)
Automat h u h n hay là máy tr ng thái h u h n dùng ngôn ng hình nh, d i
d ng đ th đ mô t các quá trình [2] Các tr ng thái (state), th hi n d i d ng đ th
là m t hình khép kín, ch nh t hay tròn, có th g i chung là qu bóng N i gi a các
tr ng thái là các m i tên ch kh n ng chuy n t b c này sang b c khác (Transition) th này đ c g i là đ th tr ng thái (State graph) M i m i tên ng
v i m t đi u ki n logic c n ki m tra hay là các tín hi u đ u vào FMS ho t đ ng b t
đ u t m t tr ng thái ban đ u, qua các b c chuy n ph thu c vào các đi u ki n logic
có cho phép hay không, đ n m t tr ng thái b t k nào đó n u có th Nh ng tr ng thái
có th đ n đ c t tr ng thái ban đ u trong đ th g i là tr ng thái đ c phép FMS có
th đ a ra tác đ ng đ u ra ph thu c vào các đ u vào và tr ng thái hi n t i N u đánh
s các tr ng thái và gán cho các đi u ki n logic các m c logic 0,1, có th bi u di n FMS d i d ng b ng, r t thu n l i cho bi u di n d i d ng ký t , có th chuy n t môi tr ng so n th o này sang môi tr ng khác m t cách d dàng
Trang 8Hình Error! No text of specified style in document 1 Ví d v FSM mô hình
b đi u khi n thang máy
Ví d FSM cho trên hình 1.1 Gi s có b đi u khi n thang máy, ch có hai
t ng, t ng 1: First; và t ng ng m: Floor Có hai l nh chuy n đ ng, lên: Up; và xu ng: Down B đi u khi n có hai đèn ch th , đèn đ ch t ng ng m: Red; và đèn xanh ch
t ng 1: Green M i đèn s sáng khi thang t ng t ng ng th trên hình 1.1 g m hai qu bóng ch hai tr ng thái Floor và First Tín hi u đ u vào là hai l nh Up, Down Hành đ ng c n th c hi n khi các tr ng thái là làm sáng đèn t ng ng và t t đèn kia m i th i đi m b đi u khi n s theo dõi tín hi u đ u vào và th c hi n b t, t t đèn nh mong mu n
N u coi đ u vào: Up = 1; Down = 0;
Tr ng thái: Floor = 0; First = 1;
èn (tín hi u ra): On = 1; Off = 0,
Có th l p b ng tr ng thái nh sau:
B ng Error! No text of specified style in document.-1 B ng tr ng thái c a
FSM trên hình 1.1
Tr ng thái u vào Tr ng thái ti p
theo Red èn đ èn xanh Green
Trang 9hình sang ng d ng trên m ch đi n t r t thu n ti n Trong các h th ng t đ ng hóa
ph c t p State graph r t hay đ c dùng, có th không ph i đ thi t k mà là đ mô t
hi u b ng các m i tên, n i các n t v i các v trí và ng c l i, th hi n các v trí đã chu n b các đi u ki n cho các b c chuy n x y ra Các cung không bao gi n i gi a cùng các v trí c ng nh cùng các b c chuy n
Các cung n i t v trí đ n b c chuy n g i là cung đ u vào Các cung n i b c chuy n v i v trí g i là các cung đ u ra
T i các v trí có m t s l ng các token nào đó S phân b các token t i các v trí g i là s đánh d u B c chuy n s x y ra n u có token t t c các cung đ u vào Khi chuy n các token s b đ a sang đ u cu i c a t t c các cung đ u ra Khi có kh
n ng chuy n, t t c các b c chuy n đ u có kh n ng chuy n nh nhau, tuy nhiên không th bi t là cái nào s chuy n vì m i l n ch có m t token đ c chuy n đi Vì các token có th phân b các v trí khác nhau, th m trí nhi u token t i m t v trí, nên
do tính không th bi t tr c c a mô hình PetriNet mô hình này có th mô t r t t t tình tr ng tranh ch p (concurrent) c a h th ng phân tán
Hình Error! No text of specified style in document 2 Ví d v Petri Net
Gi ng nh các ngôn ng dùng hình nh khác Petri Net cho phép mô t b ng đ
th các quá trình nh y c p, bao g m l a ch n, suy lu n và các ho t đ ng tranh ch p
Trang 10Petri Net có đ nh ngh a toán h c chính xác cho các ng ngh a c a nó và có n n t ng lý thuy t đ y đ đ phân tích nó
t đ ng riêng, trong đó có th phân chia h th ng thành các b ph n ch c n ng và các
đ c tính dòng s li u liên quan đ n m i b ph n và xem xét đ c t ng tác gi a các
b ph n v i nhau
Ví d v Statecharts cho trên hình 1.2 v ch đ c a đ ng h b m gi Trong
ch đ b m gi ta mu n đ ng h ch th th i gian theo phút, chính xác đ n ph n tr m giây, d i d ng: mm:ss:cc Ch đ b m gi có th ch y l p l i (Lap) ho c ch b m gi
m t l n (Lap_stop) th g m hai tr ng thái Stop (d ng) và Run (ch y) Trong Stop
có hai tr ng thái con là Reset (xóa h t) và Lap_stop (d ng vòng l p) Trong tr ng thái Run có hai tr ng thái con là Running và Lap, ngoài ra còn ch a m t đ th tr ng thái TIC th c hi n vi c đ m gi chính xác đ n ph n tr m giây (cent) Các tr ng thái đ c kích ho t nh nút b m đ t ch đ , t ng ng v i các tín hi u logic ch y (START) và
ch y l p l i (LAP) Các nút b m này n u b m ti p s v ch đ tr c đó Ví d đang trong tr ng thái Reset, b m nút START s chuy n sang Running N u đang trong Running b m START l n n a s v ch đ xóa h t Reset Tín hi u START c ng tác
đ ng t ng t gi a tr ng thái vòng l p (Lap) và xóa vòng l p (Lap_stop) Trong các
tr ng thái có th g n v i các ho t đ ng (activities) Ví d tr ng thái Running có ho t
đ ng trong quá trình tr ng thái này tích c c, ký hi u là:
disp_cent=cent; /ch th ph n tr m giây
disp_min=min ; /ch th phút
…
Trang 11Hình Error! No text of specified style in document 3 Ví d Statecharts v ch
c bi t Stateflow do Matlab phát tri n, c ng là m t d ng c a Statecharts, đ a ra kh
n ng thi t k h th ng đ a trên mô hình (Model-based design), tích h p trong môi
tr ng mô ph ng cùng Simulink, t o nên kh n ng thi t k m u nhanh (Fast Prototyping)
o Stateflow
Stateflow là m t d ng công c đ h a t ng tác, tích h p cùng công c mô
ph ng Simulink c a Matlab dùng đ mô hình hóa các h t ng tác Các h t ng tác chuy n t tr ng thái ho t đ ng này sang tr ng thái ho t đ ng khác do tác đ ng c a các
s ki n ho c các đi u ki n nh t đ nh Các h th ng này mô hình hóa logic hay cách
th c ho t đ ng cho các thi t b hay m t h th ng t đ ng hóa nh b m, qu t, đ ng c
ho c m t h máy móc thi t b nào đó
Stateflow bi u di n các ch đ ho t đ ng c a thi t b b ng đ th tr ng thái (FSM), ví d ch đ làm vi c c a chi c qu t trong nhà có th là cao, trung bình, th p
và d ng (High, Medium, Low, Off) Ph n m m Stateflow cung c p các đ i t ng đ
h a, có th g p ra t h p tho i các m u, n i chúng v i nhau b ng các cung có h ng
đ ch ch đ hay đi u ki n chuy n t tr ng thái này sang tr ng thái khác Ngoài ra còn có th xác đ nh:
- Các s li u đ u vào, đ u ra;
- Các s ki n đ kích ho t đ th tr ng thái;
Trang 12- Các tác đ ng và các đi u ki n g n v i các tr ng thái và các đi u ki n đ xác đ nh hành vi c a đ th tr ng thái
V i Stateflow có th m r ng kh n ng c a đ th tr ng thái b ng cách:
- Thêm vào các c u trúc phân c p;
- Mô hình các tr ng thái làm vi c song song (tranh ch p);
đi u khi n
Ví d v đ th tr ng thái c a Stateflow cho trên hình 1.4 ây là mô hình m t
h p s t đ ng đi u khi n ô tô H p s s t đ ng chuy n s tùy theo t c đ c a xe và
- Các tr ng thái n i v i nhau b ng các cung ch s ki n (UP, DOWN)
ho c các đi u ki n (speed > down_th: t c đ l n h n ng ng th p; speed < down_th:
t c đ nh h n ng ng th p; speed > up_th: t c đ l n h n ng ng t c đ cao; speed
< up_th: t c đ nh h n ng ng t c đ cao; …)
- V i m i tr ng thái có th có các tác đ ng (action) gây nên các ho t đ ng
c n thi t khi h th ng đang trong m t tr ng thái nào đó Các tác đ ng có th là lo i kích ho t khi vào tr ng thái, entry; khi đang trong tr ng thái, during, khi ra kh i
Trang 13Hình Error! No text of specified style in document 4 Ví d Stateflow đi u
khi n h p s t đ ng xe ô tô
M c dù không có ph n ng ngh a ch t ch nh UML [6, 9], đi u có th d n t i không t i u v mã phát sinh, l i ch ng trình r t khó phát hi n và g r i, nh ng Stateflow r t phù h p cho nh ng ng i phát tri n ng d ng trong các h th ng đi u khi n, trong đó ng i k s t p trung vào các nhi m v đ m b o ch c n ng đi u khi n cho h th ng ch không ph i là các chuyên gia v l p trình hay mô hình hóa
1.1.5 GRAFCET
GRAFCET c ng là m t ngôn ng đ th đ c phát tri n Pháp t 1977, nh là
m t ph ng pháp mô t đ c tính cho các b đi u khi n logic [10] T n m 1988 GRAFCET đ c công nh n nh m t chu n qu c t b i IEC và mang tên đ th hàm
tu n t (Sequential Function Charts – SFC) Ngày nay GRAFCET/SFC là m t ph n trong chu n qu c t ngôn ng l p trình IEC 61131 cho các b đi u khi n logic l p trình đ c (Programmable Logic Controller – PLC) GRAFCET đ c dùng ph bi n trong công nghi p vì giao di n đ th rõ ràng c a nó GRAFCET có c s toán h c t
Trang 14ho t tr c tiên khi h th ng b t đ u ho t đ ng Các tr ng thái có th đ c kích ho t
Hình Error! No text of specified style in document 5 Cú pháp c a GRAFCET
Các b c chuy n (transitions): dùng đ k t n i các tr ng thái M i b c chuy n có m t đ h p th nh t đ nh B c chuy n là đ c phép n u t t các tr ng thái phía trên nó đ u tích c c Khi đ h p th c a m t b c chuy n đ c phép tr nên là
đ thì b c chuy n đ c kích ho t ngay l p t c Khi b c chuy n kích ho t các tr ng thái trên nó tr nên th đ ng và các tr ng thái ti p sau nó tr nên tích c c
Hành đ ng (actions): g m hai lo i, lo i theo m c và lo i theo xung Lo i theo
m c kéo dài m t kho ng th i gian h u h n theo m t bi n logic nào đó và gi nguyên
tr ng thái tác đ ng ch ng nào tr ng thái g n v i nó còn tích c c Hành đ ng theo m c
có th là có đi u ki n ho c không đi u ki n Lo i hành đ ng theo xung có nhi m v thay đ i giá tr m t bi n nào đó Bi n có th là logic nh ng không nh t thi t nh v y
M t hành đ ng theo xung đ c th c hi n ngay khi tr ng thái c a nó tr nên tích c c
Có th đ a vào các bi n ph thu c th i gian đ t o nên các hành đ ng có tr ho c x y
ra trong kho ng th i gian nh t đ nh M t hành đ ng theo m c bao gi c ng có th chuy n thành m t hành đ ng theo xung
h p th (receptivities) M i b c chuy n có m t đ h p th nh t đ nh
h p th có th là m t đi u ki n logic, m t s ki n hay đi u ki n logic k t h p v i s
ki n Trên đ th s ki n th hi n b ng m t ch cái (bi n) bên c nh trái c a nó có m i tên lên ho c xu ng, ví d x,y M i trên lên ch s ki n x y ra s n lên c a xung, m i tên xu ng ch s ki n g n v i s n xu ng
Ngôn ng GRAFCET đ c phát tri n v i m c đích s d ng cho các b PLC Ngôn ng đ c dùng tr c h t v i m c đích mô t h th ng b ng đ th đ có th
Trang 15phân tích, đánh giá s ho t đ ng m t cách tr c giác Vi c ng d ng th c t đ c th c
hi n b ng cách chuy n đ th GRAFCET sang m t ngôn ng thông d ng khác là đ
th d ng b c thang (Ladder Diagrams – LD) LD là ngôn ng đ n gi n, th a h ng t các s đ đi u khi n logic dùng r le tr c đây Các s đ LD r t d th c hi n đ i v i các h th ng nh nh ng khi h th ng tr nên ph c t p h n thì s đ LD s r t khó
qu n lý
V m t ng d ng GRAFCET th ng đi cùng v i m t lo i PLC do m t hãng phát tri n Do đó s d ng GRAFCET ch hi u qu khi ta đ nh xây d ng h th ng đi u khi n trên lo i PLC đó, khi đó ph n m m so n th o ch ng trình s chuy n t đ ng
h th ng mô t b i GRAFCET sang ngôn ng LD, cài đ t trên PLC N u không có
nh ng đi u ki n này thì vi c chuy n GRAFCET sang d ng cài đ t trên PLC s r t khó
kh n, đ n m c mà nh ng u th c a ngôn ng đ th c ng không còn giá tr gì
1.3 Chu n IEC 61131 và các b đi u khi n l p trình đ c
1.3.1 PLC và ngôn ng l p trình theo chu n
PLC là b đi u khi n logic l p trình đ c, đ c nhi u nhà s n xu t phát
tri n v i kích c t nh đ n l n và đ c ng d ng r ng rãi trong công nghi p
Tuy nhiên tính ph bi n c a PLC làm n y sinh hàng lo t v n đ M c dù v n
mang m t s đ c đi m chung v ph n c ng, ph n m m nh ng gi a các lo i
PLC có nhi u đi m khác nhau, đ c bi t là v ph n m m mà c th là ngôn ng
l p trình đi u khi n Các hãng khác nhau có th phát tri n nh ng t p l nh khác
nhau, các hàm khác nhau và cách s d ng các ch c n ng quan tr ng nh b
đ m, b đ nh th i, truy n thông c ng có nhi u đi m khác bi t Ngay c gi a
các lo i PLC c a cùng m t hãng c ng có th có s khác nhau r t l n S b t
t ng thích gây ra nhi u khó kh n cho ng i s d ng khi mu n chuy n đ i
ch ng trình đi u khi n có s n trên m t lo i PLC này sang m t lo i PLC khác
khi nâng c p ho c s a ch a h th ng, khi mu n s d ng ph i h p nhi u lo i
PLC khác nhau trong cùng m t thi t b máy móc Ngay c vi c h c và s d ng
các lo i PLC khác nhau c ng s tiêu t n nhi u công s c và th i gian
Do nh ng lý do trên mà t ch c IEC (International Electrotechnical
Commission) đ ra chu n cho ngôn ng l p trình mang tên IEC 61131 [12]
IEC 61131 không ph i là m t ngôn ng mà là các chu n đ ngôn ng c th
ph i tuân theo Chu n IEC 61131 đ a ra các quy đ nh v b đi u khi n kh
trình, trong đó có PLC, và các thi t b ngo i vi đi kèm, t ph n c ng (c khí,
đi n, đi n t , khí nén, th y l c, ), truy n thông đ n ph n m m và ngôn ng
l p trình B tiêu chu n này g m nhi u ph n, m i ph n xét đ n m t khía c nh
nh t đ nh, và do đó t o thành m t chu n “con” bên trong b tiêu chu n IEC
61131 và th ng đ c kí hi u b i s th t c a ph n (ví d IEC 61131-1, IEC
61131-2, ) Trong đó tiêu chu n IEC 61131-3, t c ph n 3 c a b tiêu chu n
Trang 16IEC 61131, v i tên g i “Programming Languages”, qui đ nh v các ngôn ng l p trình
c ng nh cách th c l p trình đi u khi n cho t t c các thi t b , các quá trình và các b
đi u khi n Nh ng qui đ nh trong tiêu chu n IEC 61131-3 đem l i m t cách nhìn nh n
m i v l p trình cho các h th ng đi u khi n, đ m b o tính hi u qu cao và s c m nh
Chu n IEC 61131-3 nói riêng và b tiêu chu n IEC 61131 nói chung đã v t ra ngoài gi i h n là m t b tiêu chu n v PLC mà tr thành m t b tiêu chu n cho các thi t b đi u khi n kh trình (Programmable Controller) nói chung Hi n nay, ph n l n các b đi u khi n trong th c t đ u là các b đi u khi n kh trình B i v y, ph m vi
áp d ng c a b tiêu chu n IEC 61131 tr nên r t r ng l n M t đi m c n chú ý n a là
ph n nhi u các qui đ nh trong b tiêu chu n IEC 61131 d ng khuy n cáo, ngh a là nên đ c tuân theo ch không b t bu c B i v y m c dù nhi u s n ph m c a các hãng khác nhau đ c nói là “tuân theo chu n IEC 61131” nh ng v n có th không th c
hi n đ y đ và hoàn toàn đúng nh nh ng qui đ nh đ ra trong chu n
D i đây s ch ra nh ng đ c đi m quan tr ng nh t mà chu n IEC 61131-3 đem l i cho các ngôn ng l p trình đi u khi n
1.3.2 Không ph thu c vào m t ph n c ng c th nào
i u này c n thi t đ ch ng trình có th mang đi đ c (Portable) Do tính có
th mang đi đ c có th t o nên các th vi n g m các ch ng trình nh , đ c xây
d ng cho các ng d ng ph bi n, có th ghép n i vào các ng d ng l n h n i u này
c ng có ngh a là các đo n mã có th s d ng l i (reuseable) Rõ ràng là th i gian và công s c c a nh ng ng i phát tri n ng d ng s đ c gi m đáng k
1.3.3 Dùng nhi u ngôn ng trong cùng m t ch ng trình đi u khi n
ây là m t trong nh ng u đi m n i b t nh t c a chu n Vi c s d ng k t h p nhi u ngôn ng l p trình khác nhau trong cùng m t ch ng trình là đi u mong m i
c a h u h t các l p trình viên Trong cùng m t ch ng trình đi u khi n, ng i l p trình có th s d ng đ ng th i và tr c ti p nhi u ngôn ng l p trình khác nhau i u này giúp t ng tính linh ho t và hi u qu c a vi c l p trình b i có th t n d ng t i đa các u đi m c a t ng ngôn ng l p trình
IEC 61131-3 đ nh ngh a 5 ngôn ng l p trình: Ladder (LD), Function block diagram (FBD), Sequential function chart (SFC), Structure Text (ST), Instruction List (IL) ph c v cho m t d i r ng các ng d ng Ng i l p trình PLC m i n i s s d ng cùng ngôn ng l p trình, ngân sách đào t o s gi m đi, nh t là khi dùng thi t b c a nhi u hãng khác nhau tuân theo chu n này, khi c n thi t ch c n b sung thêm m t vài
ki n th c v m t b đi u khi n m i Chu n giúp t ng hi u su t c ng nh gi m th i gian th c hi n m t d án t đ ng hóa b ng cách tái s d ng các thành ph n (ch ng trình) đã đ c phát tri n tr c trong các d án khác ho c b i nh ng ng i khác
Trang 17Tuy nhiên không ph i khi nào c ng s d ng đ c 5 ngôn ng l p trình
này, còn ph thu c vào t c đ vi x lý, lo i PLC hay m c đ h tr c a hãng
Thông th ng thì vi c s d ng ngôn ng nh sau đây:
- SFC dùng cho quá trình x lý l p đi l p l i, có liên đ ng hay nh ng ho t
đ ng đ ng th i
- LD đ c ch p nh n r ng rãi b i ng i l p trình PLC kh p toàn c u, dùng cho nh ng ng d ng vào ra s , x lý c b n, khá d dàng cho vi c thay th code v sau
- IL có t c đ x lý nhanh do sát v i ngôn ng máy và hay đ c s d ng châu Âu
- ST là ngôn ng hay đ c dùng châu Âu, dùng cho nh ng ng i quen v i
l p trình b c cao, th c hi n đ c các phép toán ph c t p, n u l p trình b ng
IL và ST gây khó kh n trong vi c phát hi n và s a l i sau này
- FBD dùng cho các vào ra s hay nh ng x lý c b n, tuy nhiên l i t n di n tích màn hình quan sát khi l p trình
1.3.4 Các công c đ t c u hình
các ph ng pháp c u trúc hóa các ch ng trình PLC truy n th ng,
các ng d ng đ c gói g n trong các kh i v i các đ c tính runtime (khi đang
ch y) không rõ ràng, vi c c u hình đ n thu n là ch n PLC và phân c ng vào
ra, sau đó l p trình d a theo phân công ban đ u này, s là r t khó kh n khi
ch ng trình c a chúng ta dài hàng tr m trang IEC 61131-3 cung c p các
ph ng ti n chu n hóa và tinh vi đ tháo g khó kh n này Vì ch ng trình là
đ c l p v i ph n c ng, nên vi c c u hình c n ph i xác đ nh đ c tính runtime
cho ch ng trình (PROGRAMs) và kh i ch c n ng (FBs), giao ti p gi a các
c u hình và gán các bi n cho đ a ch ph n c ng PLC c th Gi đây chúng ta
có th c u hình b ng ch ng trình nên thoát kh i gò bó lúc l p trình và c ng
không ph i nh nhi u n a Qu n lý d án có th chia ch ng trình thành các
module cho nhi u ng i làm sau đó t ng h p l i m t cách d dàng
1.3.5 L p tài li u d án m t cách ti n l i và nhanh chóng
Chu n c ng cho phép ch ng trình c ng nh thi t b t o đi u ki n đ
giám sát, ch n đoán h th ng và thu th p d li u ph c v cho vi c t ng k t và
l p k ho ch chính xác, d dàng
1.3.6 An toàn và ti n l i h n khi dùng các bi n và ki u d li u
V i PLC và ph ng pháp l p trình thông th ng thì vi c truy c p d
Trang 18li u đ c th c hi n b i các bi n toàn c c hay là đ a ch tuy t đ i (ph n c ng), thông
th ng là đ a ch vào ra, c , kh i d li u ch ng h n nh I0.0, I0.1, Q0.0,… Ng i l p trình ph i t phân b v trí c a chúng và ph i h t s c c n th n n u không s x y ra
tr ng h p các ph n c a ch ng trình nh h ng l n nhau (ví d ghi đè d li u)
Khi l p trình theo chu n IEC 61131-3 thì không dùng đ a ch ph n c ng tr c
ti p mà thay vào đó là vi c s d ng các bi n đ c đ t tên rõ ràng Ng i l p trình
c ng không ph i xác đ nh chúng c n đ c l u gi đâu mà ch ng trình t đ ng s p
x p M i bi n có m t ki u d li u c th nh Bool, Byte, WORD, DWORD, LWORD, Integer (SINT, INT, DINT, LINT, USINT, UINT, UDINT, ULINT), REAL, LREAL, TIME, DATE, TOD hay TIME_OF_DAY, DT hay DATE_AND_TIME, WString Bi n c c b ch có ý ngh a trong ph m vi m t đ n v
t ch c ch ng trình, nên không lo nh h ng khi s d ng đ n v khác
ch ng trình (OB - Organisation Block), kh i ch c n ng (FB - Function Block), kh i
d li u (DB - Data Block) Có th th y là đây kh i ch c n ng và d li u c a kh i
ch c n ng đ c tách r i nhau t ng ng trong các kh i FB và DB Cách phân chia
nh th này g i nh đ n các ngôn ng l p trình quen thu c nh Pascal hay C v i
ch ng trình chính, hàm và d li u toàn c c (global data)
Chu n IEC 61131-3 đã ti n m t b c xa h n khi phân chia các kh i, đ c g i
tên là các đ n v t ch c ch ng trình (POU - Program Organisation Unit), theo ch c
n ng và s phân c p c u trúc Có ba lo i POU đ c quy đ nh là: Hàm (FUN - FUNction), kh i ch c n ng (FB - Function Block) và ch ng trình (PROG - PROGram) M t đi m đáng chú ý là d li u c a các kh i ch c n ng không n m riêng
n a mà đ c đ a vào ngay trong chính kh i đó ó chính là s đóng gói d li u, m t trong nh ng nguyên t c c b n c a ph ng pháp l p trình h ng đ i t ng Vi c s
d ng POU giúp h n ch đ c ch ng lo i kh i đ c s d ng, th ng nh t hóa và đ n
gi n hóa đ ng i s d ng d dàng h n H n n a, POU đ c thi t k hoàn toàn đ c
l p v i đ i t ng, chính vì th mà có th tái s d ng chúng trên nhi u n n khác nhau
1.3.8 Ph ng pháp c u hình đ c bi t
Thông th ng khi l p trình PLC vi c c u hình là ch n lo i PLC và phân c ng
Trang 19vào ra, sau đó vi t ch ng trình d a theo phân b ban đ u này Các ng d ng đ c
đ a vào các kh i (ví d OB) và không có đ c tính lúc v n hành rõ ràng
IEC 61131-3 áp d ng nh ng ti n b c a công ngh k thu t m i cho phép vi c mô hình m t d án PLC g m nh ng ng d ng có nhi u vi x lý Mô hình ph n m m theo chu n giúp ng i dùng c u trúc hóa các ng d ng h ng t i th c ti n b ng cách xây
d ng các kh i t ch c ch ng trình POU đ t o đi u ki n d dàng cho vi c b o trì, thu th p d li u và t ng kh n ng ch n đoán c a PLC M t ph n m m đ ng nh t là r t
c n thi t cho vi c t ng tính linh ho t c a các ng d ng Các tài nguyên c a PLC (các
vi x lý hay kh i CPU) đ c gán đ c tính v n hành khi c u hình và đi u đó làm cho
ch ng trình c a ta đ c l p v i ph n c ng
1.3.9 T ch c PLCopen
IEC 61131 ra đ i mang l i nhi u l i ich cho c ng i s d ng cu i và c nhà
s n xu t thi t b logic kh trình Hi n nay h u h t các hãng đ u cam k t s n xu t s n
ph m tuân theo chu n này, có th là m t ph n hay toàn ph n C ng ph i nói r ng chu n không ch áp d ng cho PLC, mà cho h u h t các thi t b đi u khi n kh trình
nh PAC, PLC, các b đi u khi n quá trình, Nhi u t ch c đang ho t đ ng nh m
ph bi n r ng rãi chu n, trong đó có vi c ra đ i c a t ch c PLCopen, t ch c khuy n khích các thành viên theo chu n PLCopen đã có r t nhi u thành viên, mà đ c bi t là các công ty t p đoàn l n nh Siemens, ABB, Allen Bradley, OMRON, Mitsubishi Electric, … Hi n t ch c không ch ho t đ ng châu Âu mà c c M , Á
Công ty Smart software solution, c ng là thành viên c a PLCopen, phát tri n
ph n m m CoDeSys và thành l p t ch c automation alliance v i h n 100 thành viên cam k t s d ng ph n m m c a hãng CoDeSys không ch đ c ch p nh n châu Âu
mà đang d n phát tri n trên toàn th gi i, là các công ty c, Th y s , Italia, Áo, Pháp, Anh, B , Ph n Lan, Th y i n, Nga, M và Trung Qu c v i nhi u lo i s n
ph m nh PLC, CNC/PLC combination, B truy n đ ng thông minh, DCS
(decentralized control system), Panel PLC, Lõi PLC, các module vào ra thông minh,
Ph n m m CoDeSys l p trình cho thi t b đi u khi n kh trình hoàn toàn tuân theo chu n IEC 61131-3 V i m t ph n m m l p trình chung theo chu n và các hãng s n
xu t thi t b ph n c ng cam k t s n ph m hoàn toàn h tr thì vi c l p trình s th ng
nh t và đ n gi n h n cho ng i s d ng
Ngoài các hãng đ c k trên còn r t nhi u hãng l n nh n a s n xu t các s n ph m h
tr theo tiêu chu n IEC 61131 nh BECKHOFF, Rexroth, Danfoss, Schneider,
Yokogawa, Emerson, Qua đó đ th y r ng chu n đã đ c ch p nh n r ng rãi nh
th nào Có m t th c t là nhi u hãng v n dùng ph n m m riêng cho PLC hay PAC và các b đi u khi n kh trình c a h , do v y v n ch a ph i là hoàn toàn theo chu n nên
ch a th t n d ng h t đ c nh ng u đi m c a l p trình theo chu n, c ng ch a th ti t
ki m đ c t i đa th i gian và công s c cho vi c l p trình Ch ng h n, khi mua PLC
c a nhi u hãng, chúng ta v n ph i h c khá nhi u, c ph n c ng l n ph n m m, c ng
Trang 20ch a th l y ch ng trình l p trình v i ph n m m c a hãng này đ sang PLC c a hãng khác đ c Trong t ng lai, nh ng h n ch trên s đ c kh c ph c vì tiêu chu n này
ch c ch n s còn đ c ch p nh n r ng h n n a và l p trình theo
Trang 21CH NG 2: M CH LOGIC T H P 2.1 C s toán h c v đ i s logic
Hàm s f c a các bi n x1, x2, …, xn đ c g i là hàm logic khi và ch khi các
bi n x1, x2, …, xn là các bi n logic và giá tr c a hàm s f c ng là giá tr logic, t c là
Phép c ng logic đ c th c hi n v i 2 bi n logic x và y ký hi u là x+y
Phép c ng logic đ c đ nh ngh a thông qua b ng giá tr 2.2 nh sau:
Trang 22 Phép nhân logic (AND)
Phép nhân logic đ c th c hi n v i 2 bi n logic x và y ký hi u là x.y ho c x*y
ho c đ n gi n là xy
Phép nhân logic đ c đ nh ngh a thông qua b ng giá tr 2.3 nh sau:
B ng 2.3 B ng giá tr c a phép nhân logic
Lu t De Morgan
n 2 1 n 2
1
x
xxx
x.x
x
x.xx
xx
Trang 24M t hàm logic n bi n b t k bao gi c ng có th bi u di n thành t ng chu n
Ta nh n th y có 2 t h p giá tr bi n làm cho hàm có giá tr 1 là (x1,x2) = (0,0)
và (x1,x2) = (1,1) V i t h p (x1,x2) = (0,0), vì hai bi n đ u nh n giá tr 0 nên tích các bi n t ng ng s là x x V i t h p (x1,x2) = (1,1), vì hai bi n đ u nh n giá tr
x x V i t h p (x1,x2)=(1,0), vì bi n x1 nh n giá tr 1 nên ph i l y giá tr đ o,
bi n x2 nh n giá tr 0 nên đ c gi nguyên, t ng các bi n t ng ng s là x +x2 Do
đó hàm logic có th đ c bi u di n d i d ng tích chu n đ y đ nh sau
y=f(x1, x2)= (x x )(x +x2)
Trang 25t h p bi n làm cho hàm có giá tr không xác đ nh
D ng tích chu n đ y đ
Hàm logic b ng 2.4 có th vi t nh sau:
f(x1,x2,x3)=(1,4) v i N = 2,3,6 Trong đó các s 1, 4 là giá tr th p phân c a t h p bi n (theo th t x1x2x3) làm cho hàm có giá tr b ng 0; và 2, 3, 6 là các giá tr th p phân c a
t h p bi n làm cho hàm có giá tr không xác đ nh
Trong các ô ghi các giá tr c a hàm t ng ng v i t h p bi n ng v i ô đó
Ví d : B ng Các nô bi u di n hàm logic trong b ng 1.5
B ng 2.6 B ng Các nô bi u di n hàm logic trong b ng 2.5
Trang 26x3x4x5
x1x2
000 001 011 010 110 111 101 100
2.1.4 Các ký hi u m ch logic
mô t các m ch logic th c hi n các hàm logic, ng i ta th ng dùng các ký
hi u c a các ph n t logic th c hi n các phép toán logic c b n Các ký hi u đó bao
Trang 27- Phép NAND
2.1.5 M ch r le-ti p đi m
M ch logic c ng có th đ c bi u di n b ng s đ r le- ti p đi m M t s ký hi u
đ c s d ng trong m ch r le –ti p đi m bao g m:
- Nút n th ng m : Bình th ng khi không b tác đ ng thì hai c c c a nút n đ c cách ly N u n nút thì hai c c c a nút n s đ c n i v i nhau và có
th cho phép dòng đi n ch y qua
- Nút n th ng đóng: Bình th ng khi không b tác đ ng thì hai c c
c a nút n đ c n i v i nhau và có th cho phép dòng đi n ch y qua N u n nút thì hai c c c a nút n s đ c cách ly và không cho dòng đi n ch y qua
- Công t c hàng trình th ng m : Bình th ng khi không b tác đ ng thì hai c c c a công t c hành trình đ c cách ly N u b tác đ ng thì hai c c c a công
t c hành trình s đ c n i v i nhau và có th cho phép dòng đi n ch y qua
- Công t c hành trình th ng đóng: Bình th ng khi không b tác đ ng thì hai c c c a công t c hành trình đ c n i v i nhau và có th cho phép dòng
đi n ch y qua N u b tác đ ng thì hai c c c a công t c hành trình s đ c cách ly
và không cho dòng đi n ch y qua
- R le g m 2 ph n cu n dây , ký hi u là m t hình ch nh t đ ng và các ti p
đi m Ti p đi m có 2 lo i c b n là ti p đi m th ng m và th ng đóng Ti p
đi m th ng m , ký hi u Bình th ng khi cu n dây không có đi n thì 2
đi m c c c a ti p đi m b cách ly và không cho phép dòng đi n đ c ch y qua
N u c p đi n cho cu n dây thì cu n dây này s làm cho hai c c c a ti p đi m
đ c n i v i nhau và có th cho phép dòng đi n ch y qua Ti p đi m th ng đóng, ký hi u Bình th ng khi cu n dây không có đi n thì 2 đi m c c c a
ti p đi m đ c n i v i nhau và có th cho phép dòng đi n ch y qua N u c p đi n cho cu n dây thì cu n dây này s làm 2 đi m c c c a ti p đi m b cách ly và không cho phép dòng đi n đ c ch y qua
M ch logic có th đ c bi u di n b ng s đ r le ti p đi m nh sau:
- S đ g m 2 dây th hi n dây ngu n c p cho m ch
- Tùy thu c vào thi t b v t lý t ng ng v i các bi n logic mà ta có th bi u di n các bi n d i d ng nút n, công t c hành trình hay các ti p đi m
- Các bi n tr ng thái bình th ng đ c bi u di n b ng các ph n t tr ng thái
Trang 28th ng m
- Các bi n tr ng thái đ o thì đ c bi u di n b ng các ph n t tr ng thái th ng đóng
- u ra đ c bi u di n b ng cu n dây c a r le Cu n dây có đi n thì có ngh a là
đ u ra nh n giá tr 1, không có đi n thì nh n giá tr 0 Khi cu n dây thay đ i tr ng thái có đi n ho c không có đi n thì các ti p đi m (r le) t ng ng c ng thay đ i
tr ng thái theo (coi là t c th i)
- Phép c ng logic đ c bi u di n b ng cách n i hai ph n t song song v i nhau
- Phép nhân logic đ c bi u di n b ng cách n i hai ph n t n i ti p v i nhau
- u ra đ c bi u di n b ng cách n i cu n dây v i t h p k t n i các ph n t đ u vào
Ví d m ch r le-ti p đi m th c hi n hàm logic
y=f(x1,x2)= x x + x1.x2
Khi x1 = x2 = 0 ngh a là cu n dây x1 và x2 (không v đây) không có đi n, do đó các ti p đi m tr ng thái nh hình v Khi đó dòng đi n có th đi t 1-7-5-2, cu n dây Y có đi n , ngh a là y = f(x1,x2) = 1
Khi x1=x2 = 1 ngh a là cu n dây x1 và x2 có đi n Khi đó ti p đi m x1 (1-3), x2(3-5) đóng l i, các ti p đi m x1(1-7), x2(7-5) m ra Khi đó dòng đi n có th đi t 1-3-5-2,
cu n dây Y có đi n , ngh a là y = f(x1,x2) = 1
Khi x1 = 0, x2 = 1 ngh a là cu n dây x1 không có đi n và cu n dây x2 có đi n Khi đó các ti p đi m x1 gi nguyên tr ng thái nh hình v Ti p đi m x2(3-5) đóng l i, x2(7-5) m ra Cu n dây Y b cách ly kh i ngu n đi n, ngh a là y = f(x1,x2) = 0
Khi x1 = 1, x2 = 0 ngh a là cu n dây x1 có đi n và cu n dây x2 không có đi n Khi đó các ti p đi m x2 gi nguyên tr ng thái nh hình v Ti p đi m x1(1-3) đóng l i, x2(1-7) m ra Cu n dây Y b cách ly kh i ngu n đi n, ngh a là y = f(x1,x2) = 0
2.2 nh ngh a và phân lo i
M ch t h p là m ch mà tr ng thái đ u ra c a m ch ch ph thu c vào t h p các tr ng thái đ u vào mà không ph thu c vào trình t tác đ ng c a các đ u vào Theo quan đi m đi u khi n thì m ch t h p là m ch h , h th ng không có ph n h i,
Trang 29x1 x2
xn
…… M CH
T H P ……
y1 y2
d ng các ph n t logic đ th c hi n m ch logic Tuy nhiên bi u th c đ i s mà ta
nh n đ c trong ch ng I th ng không t i thi u, ngh a là s l ng bi n và phép toán
là không t i u Do v y s l ng ph n t logic c n thi t đ th c hi n hàm logic s l n, gây ra t ng chi phí và ph c t p trong vi c g r i ph n d i đây s đ c p đ n m t
s ph ng pháp t i thi u hóa hàm logic t h p
- Ph ng pháp đ i s
Trang 31 S vòng ph i là ít nh t
- B c 3:
M i vòng s t ng ng v i tích các bi n mà giá tr các bi n đó là không thay đ i trong các ô trong vòng đó Hàm rút g n b ng t ng các tích t ng ng v i các vòng
Vi c nhóm các ô có giá tr 1 c nh nhau ho c đ i x ng nhau thành m t nhóm
th c ch t chính là áp d ng tính ch t xy + xy = x c a phép toán logic Theo cách s p
x p c a b ng các nô thì hai ô c nh nhau ho c đ i x ng nhau ch khác nhau m t giá tr
bi n, ví d là y Nên khi ghép hai ô đó l i v i nhau thì s rút g n đ c bi n y, và bi u
th c t ng ng v i nhóm 2 ô đó s ch còn l i t h p các bi n không đ i tr , đây là
x Tính ch t này có th m r ng ra cho 2m ô c nh nhau ho c đ i x ng nhau (qua tr c phân chia vùng nh n giá tr 0 và vùng nh n giá tr 1 c a 1 bi n) Chý ý r ng trong nhóm 2m ô thì s có đúng m bi n b đ i tr Giá tr c a m ph i là t i đa và s vòng ph i
là t i thi u đ đ m b o k t qu thu đ c là t i u
Ví d 1:
T i thi u hóa hàm logic f(x1, x2, x3) = (0,2,5,6,7)
Bi u di n hàm logic b ng b ng Các nô nh d i đây
Trang 32Có th nhóm các ô v i nhau nh sau:
- Ô x x x (000) và x x x (010), 2 ô này ch có bi n x2 là đ i tr nên t h p rút g n t ng ng còn x x
- Ô x x x (101) và x1.x2.x3 (111), 2 ô này ch có bi n x2 là đ i tr nên t h p rút g n t ng ng còn x1.x3
- Ô x1.x2.x3 (111) và x x x (110), 2 ô này ch có bi n x3 là đ i tr nên t h p rút g n t ng ng còn là x1.x2
- Ô x x x (101) và x1.x2.x3 (111), 2 ô này ch có bi n x2 là đ i tr nên t h p rút g n t ng ng còn x1.x3
- Ô x x x (010) và x x x (110), 2 ô này ch có bi n x1 là đ i tr nên t h p rút g n t ng ng còn là x x
T i thi u hóa hàm logic f(x1, x2, x3)=(0,5,7) v i N = 2,3,6
Bi u di n hàm logic b ng b ng Các nô nh d i đây
x2x3
x1
Trang 33Sau khi nhóm nh trên ta th y các ô có giá tr 1 đã đ c nhóm h t v i s vòng là ít
nh t M t s ô không xác đ nh không nh t thi t ph i thu c m t vòng nào đó Nh v y hàm rút g n là f(x1,x2,x3) =x x + x1.x3
Ph ng pháp b ng Các nô khá tr c quan, tuy nhiên khi s bi n t ng lên thì vi c nhóm các ô tr nên ph c t p và vi c ch n s t i đa trong m t nhóm c ng nh s nhóm
là t i thi u tr nên khó kh n Thêm vào đó, vi c th c thi ph ng pháp này trên các công c tính toán r t khó kh n
2.3.3 Ph ng pháp Quine Mc Clusky
C ng nh ph ng pháp b ng Các nô, ph ng pháp Quine Mc Clusky c ng áp d ng tính ch t xy + xy = x c a phép toán logic Tuy nhiên ph ng pháp này xem xét l n
l t kh n ng rút g n c a t t c các k t h p c a hai t h p bi n ban đ u và c sau
t ng b c rút g n B ng cách này vi c rút g n đ c trình bày d i d ng thu t toán và
có th l p trình cho máy tính th c hi n
Các b c th c hi n thu n toán Quine Mc Clusky nh sau:
- B c 1: Ghi các t h p bi n làm cho hàm có giá tr b ng 1 theo mã nh phân Các
bi n b đ o thì ghi thành 0, các bi n đ c gi nguyên thì ghi thành 1 Ví d x1x x3 s ghi thành 101
- B c 2: Nhóm các t h p bi n theo s ch s 1 trong bi u di n nh phân c a t
h p bi n t tên nhóm i là nhóm có i ch s 1 trong bi u di n nh phân Ghi các
t h p bi n này trong 1 c t
- B c 3: Xem xét kh n ng ghép c a m i t h p c a nhóm th i v i t ng t h p
c a nhóm th i+1 trong cùng m t c t Hai t h p ch đ c ghép v i nhau khi bi u
di n nh phân c a chúng ch khác nhau 1 bít cùng 1 v trí Khi ghép 2 t h p v i nhau ta s ghi sang c t bên c nh t h p m i hình thành b ng cách gi nguyên các
ph n gi ng nhau và thay ph n khác nhau b ng d u g ch ngang (-) Sau khi đã xem xét t t c các kh n ng ghép c a toàn b các t h p, đánh d u sao (*) vào các t
Trang 34h p bi n đã tham gia ghép và d u v () vào các t h p không th ghép
- B c 4: L p l i b c trên v i c t v a m i hình thành cho đ n khi không k t h p
đ c n a Chú ý, hai t h p có d u (-) ch ghép đ c v i nhau khi mà ch có 1 v trí bít khác nhau và bít đó ph i là 0 và 1, không th là “-“
- B c 5: L p b ng ph t i thi u đ ch n s t h p không th ghép t i thi u có th
ph h t đ c s t h p ban đ u B ng ph t i thi u có các c t t ng ng v i s t
h p nguyên g c ban đ u Các hàng t ng ng v i s t h p không th ghép đ c
n a Trên m t hàng, n u t h p ng v i hàng đó có th “ph ” t h p ng v i c t (n u thay t h p rút g n d u “-“ b ng s 0 ho c 1 thì s đ c t h p nguyên g c
đ c v i nhau và t h p m i hình thành lag 00- T ng t v i các t h p khác ta thu
đ c c t t h p II Trong t h p II ta th y 00- và 10- có c ng ch khác nhau bít đ u tiên nên có th ghép đ c v i nhau và đ c t h p -0- T ng t v i các t h p khác Riêng t h p 1-1 không ghép đ c v i t h p nào nên ta đánh d u () Các t h p đã tham gia ghép đ c đánh d u (*) n c t t h p III thì không ghép đ c n a nên quá trình ghép d ng đây
Trang 3501 (4&5;6&7) (4&6;5&7)
011-*(6&7) -101*(5&13) 1-01 (9&13)
-1-1 (5&7;13&15) (5&13;7&15)
Trang 36B ng ph :
0000 0100 0101 0110 0111 1000 1001 1010 1101 1111 0-00 x X
1000, 1010, và 1111 Ta còn các t h p nguyên g c ch a b ph g m có 0000, 1001
và 4 t h p rút g n ch a dùng đ n n đây vi c ch n t h p rút g n đ ph 3 t h p nguyên g c tr nên đ n gi n h n nhi u Ví d ta có th ch n 0-00, khi đó ô 0000 b
ph , và t h p -000 là không c n thi t, vì các t h p mà t h p -000 ph đã b ph h t
Ti p theo ta ch n t h p rút g n 100- đ ph t h p nguyên g c còn l i Nh v y các
t h p nguyên g c đã đ c ph h t Cu i cùng ta thu đ c k t qu
f(x1,x2,x3,x4) = x x x x x x x x x x x x x
Trang 37CH NG 3: M CH LOGIC TU N T 3.1 Khái ni m c b n v m ch logic tu n t
3.1 Khái ni m c b n v m ch logic tu n t
3.1.1 Gi i thi u chung
M ch logic tu n t là m ch mà trong đó tr ng thái c a tín hi u ra không nh ng
ph thu c vào tín hi u vào mà còn ph thu c vào c trình t tác đ ng c a tín hi u vào, ngh a là ph thu c vào các tr ng thái tr c đó c a m ch hay là m ch có nh các tr ng thái Nh v y, v m t thi t b thì m ch tu n t không nh ng ch có các ph n t đóng
m logic mà còn có các ph n t nh
S đ c u trúc c b n c a m ch trình t nh hình 3.1 Nét đ c tr ng đây là
m ch có ph n h i th hi n qua các bi n n i b (Y1, Y2 và y1, y2)
Ho t đ ng trình t c a m ch đ c th hi n s thay đ i c a bi n n i b Y Trong quá trình làm vi c, do s thay đ i c a các tín hi u vào X (X1, X2, …) s d n
đ n thay đ i các tín hi u ra Z (Z1, Z2, …) và c tín hi u n i b Y (Y1, Y2, …) S thay đ i c a bi n Y (Y1, Y2, …) s d n đ n thay đ i bi n y (y1, y2, …) sau th i gian (1, 2, …) S thay đ i c a các bi n y (y1, y2, …) l i có th d n đ n thay đ i các tín
hi u ra Z, k c Y, r i l i s thay đ i c a Y l i d n đ n s thay đ i c a y … Quá trình
n u c ti p t c lâu dài nh v y s làm cho h m t n đ nh, ngh a là m ch không làm
vi c đ c Yêu c u đ t ra là ph i làm cho m ch n đ nh, ngh a là khi m ch tu n t có
s thay đ i c a tín hi u vào s chuy n t m t tr ng thái n đ nh này sang tr ng thái n
đ nh khác và tr i qua m t s tr ng thái trung gian không n đ nh
Z1 Z2 y2
M CH
T H P
Trang 38M t trong nh ng công c đ mô t ho t đ ng c a m ch tu n t là bi u đ đóng m theo th i gian Ví d ta có s đ m ch r le-ti p đi m (hình 3.2a) và bi u đ đóng m (hình 3.2b) d i đây
Hình 3.2: S đ m ch r le ti p đi m và bi u đ đóng m
Trong bi u đ đóng m , chi u ngang bi u th th i gian Các s bi u th tên
tr ng thái c a h th ng Nét đ m bi u th t i th i đi m đó giá tr bi n là 1 (nút b n
ho c cu n dây có đi n) Nét m nh bi u th giá tr 0 (nút n tr ng thái không b tác
đ ng, cu n dây ch a có đi n)
Tr ng thái 1 là tr ng thái ban đ u, t c là ch a tác đ ng gì vào các bi n đ u vào Khi đó, các nút ch a b tác đ ng, a1=a2 = 0 và các cu n dây ch a có đi n, Y=Z=0
N u ta ch n nút a1, a1=1, thì cu n dây Y có đi n, Y=1 (tr ng thái 2) N u ta
nh tay ra không n nút a1 n a, a1=0, cu n dây Y m t đi n, Y=0, h th ng quay v
tr ng thái 1
Ti p theo, n u ta ch n nút a1 thì h th ng tr ng thái 2 Khi đó, cu n dây Y
có đi n làm các ti p đi m y đóng l i Sau đó trong lúc v n gi nút a1 và n ti p nút a2, a2=1 Nút n th ng đóng a2 m ra, tuy nhiên cu n dây Y v n có đi n vì ti p đi m y song song v i a2 đã đóng l i tr c đó duy trì đi n cho cu n dây Y Nút n a2 th ng
m bây gi đóng l i, c ng v i ti p đi m y đã đóng làm cho cu n dây Z có đi n Z=1 (tr ng thái 3) Bây gi ta nh tay kh i nút n a2, a2=0, (v n n nút a1)thì ti p đi m a2
th ng m s tr v tr ng thái th ng m và làm cho cu n dây Z m t đi n, Z = 0
Cu n dây v n có đi n, Y =1 H th ng tr l i tr ng thái 2 Và n u ta nh tay kh i nút a1 thì tr ng thái l i tr v tr ng thái 1
Khi h th ng đang tr ng thái 1, n u ta ch n nút a2, a2 = 1, khi đó c cu n dây Y và Z c ng đ u không có đi n, Y = Z = 0 (tr ng thái 4) N u ta v n gi a2 và n thêm a1 thì cu n dây Y và Z c ng v n không có đi n Vì khi đó nút n th ng đóng a2 b n tr c nên m ch b h Khi n nút a1 c ng không làm Y có đi n Vì Y không
có đi n nên ti p đi m y v n m , làm cho Z c ng không có đi n ây là tr ng thái s 5
Trang 39N u sau đó ta v n gi nút a1 và th nút a2 ra thì h th ng quay v tr ng thái 2 Và n u
th nút a1 ra thì t tr ng thái 2 h th ng s tr v tr ng thái 1
Có th th y rõ trong ví d này khác bi t c b n c a m ch logic tu n t và
m ch t h p Trong m ch logic t h p, hàm ch có 1 giá tr v i 1 t h p bi n Tuy nhiên trong m ch logic tu n t thì khác Trong ví d này tr ng thái 3 và 5 có cùng t
h p bi n đ u vào (a1=a2=1), tuy nhiên đ u ra c a tr ng thái 3 là Y=Z=1, khác v i đ u
ra c a tr ng thái 5 là Y=Z=0 Giá tr c a m ch logic tu n t không nh ng ph thu c vào t h p đ u vào mà còn ph thu c vào trình t th c hi n, t c là các tr ng thái tr c
đó n a, hay nói m t cách khác là m ch có nh
3.2 T ng h p m ch logic tu n t
Bài toán t ng h p m ch tu n t là bài toán khó, h n n a t m t yêu c u đ ra
l i có nhi u cách gi i quy t khác nhau, do v y v n đ chung đây là ph i d a vào
m t ch tiêu t i u nào đó, đ ng th i đ tìm đ c l i gi i t i u thì ngoài các suy đoán logic ng i thi t k còn ph i t n d ng các kinh nghi m th c t r t phong phú và đa
d ng D i đây ch đ c p đ n m t s b c th c hi n chung và các ví d c th đ minh h a ph ng pháp t ng h p m ch tu n t Các ph ng pháp t ng h p m ch tu n
h p
Trình t t ng h p m ch logic tu n t s d ng ph ng pháp ma tr n tr ng thái nh sau:
B c 1:
Xác đ nh các tr ng thái c a h và xây d ng graph chuy n tr ng thái u tiên ta ph i
li t kê đ c t t c các tr ng thái mà ta c n quan tâm c a h và ph i ch ra đ c m i liên h gi a các tr ng thái đó b ng các cung tròn có h ng M t cung tròn có h ng
t tr ng thái i đ n tr ng thái j cho ta bi t h th ng có th chuy n t tr ng thái i sang
tr ng thái j
Trang 40B c 2:
L p b ng chuy n tr ng thái MI B ng chuy n tr ng thái MI có s hàng b ng s tr ng thái c a h , m i hàng ng v i m t tr ng thái S c t chia làm 2 vùng, vùng các bi n
đ u vào và vùng các bi n đ u ra T i vùng các bi n đ u ra, s c t b ng s đ u ra, và ta
đi n giá tr c a các bi n đ u ra ng v i các tr ng thái c a h vào các ô t ng ng v i hàng c a tr ng thái đó
i v i vùng bi n đ u vào, s c t b ng s t h p bi n đ u vào (N bi n đ u vào s có
2N c t) M i c t ng v i m t t h p bi n đ u vào và đ c vi t theo th t gi ng nh
v i b ng Các nô Vi c đi n vào các ô vùng này nh sau (d a vào graph chuy n
tr ng thái)
a) T i ô trong hàng c a tr ng thái i, thu c c t ng v i đ u vào c a tr ng thái i
ta đi n (i) (s và có vòng tròn bao quanh) Ta g i đây là các tr ng thái i n
đ nh
b) N u tr ng thái i có th chuy n sang tr ng thái j thì t i ô trong hàng c a
tr ng thái i, thu c c t đ u vào c a tr ng thái j ta đi n s j Ta g i là tr ng thái trung gian
B c 3:
Rút g n b ng chuy n tr ng thái MI thành MII Nguyên t c rút g n b ng chuy n MI là
ta ghép các hàng c a b ng MI Các hàng trong b ng MI có th ghép đ c v i nhau khi chúng th a mãn các yêu c u sau:
a) Không quan tâm đ n các đ u ra c a các tr ng thái ng v i các hàng
b) T t c các ô cùng c t ph i đ c đi n cùng m t s (không quan tâm đ n n
đ nh hay trung gian), ho c là ô tr ng N u ch c n m t c t có 2 ô trong c t
đó đi n s khác nhau thì không ghép đ c
Nguyên t c ghép 2 hay nhi u hàng trong b ng MI thành m t hàng trong b ng MII nh sau:
a) N u ghép các ô có tr ng thái n đ nh thì ghi tr ng thái n đ nh
b) N u không có tr ng thái n đ nh thì ghi tr ng thái trung gian (n u có)
ho c đ tr ng
Chú ý: Trong b ng MII không có vùng đ u ra, vì khi ghép các hàng vào thì m t hàng
trong MII có th ng v i nhi u đ u ra
B c 4:
Xác đ nh và mã hóa bi n trung gian T b ng MII ta s xác đ nh s bi n trung gian
c n thi t N u s hàng c a MII là H thì s bi n trung gian là S, là s nh nh t sao cho
2S H Sau khi ch n s bi n trung gian, ta s phân chia các hàng (các tr ng thái) ng
v i các t h p bi n trung gian m t cách h p lý
B c 5: