phút_giây_ miligiây S5T#..... T#... 0H_0M_0S_10MS đ n 2H_46M_30S_0MS -24D_20H_31M_23S_648MS đ n 24D_20H_31M_23S_647MS Ngày Năm_tháng_ngày D#... 1990-1-1 đ n 2168-12-31 Th i gian c a ngày 32 gi :phút: giây.ngày TOD#... 0:0:0:0 đ n 23:59:59.999 Ký tự 8 ‘….’ Vi t các ký tự nh ‘HA’
§7.3. Ngơn ng l p trình
1. Cấu trúc chương trình S7-300
Các ch ơng trình đi u khi n với PLC S7-300 có th đ ợc vi t d ng đơn khối hoặc đa khối.
Chương trình đơn khối
Ch ơng trình đơn khối chỉ vi t cho các công vi c tự động đơn gi n, các l nh đ ợc vi t tuần tự trong một khối. Khi vi t ch ơng trình đơn khối ng i ta dùng khối OB1. Bộ PLC quét khối theo ch ơng trình, sau khi qua đ n l nh cuối cùng nó quay tr l i l nh đầu tiên.
Chương trình đa khối (có cấu trúc)
Khi nhi m v tự động hoá phức t p ng i ta chia ch ơng trình đi u khi n ra thành từng phần riêng gọi là khối. Ch ơng trình có th x p lồng khối này vào khối kia. Ch ơng trình đang thực hi n khối này có th dùng l nh gọi khối đ sang làm vi c với khối khác, sau khi đã k t thúc công vi c khối mới nó quay v thực hi n ti p ch ơng trình đã t m dừng khối cũ.
Các khối đ ợc x p thành lớp. Mỗi khối có:
+ Đầu khối gồm tên khối, số hi u khối và xác định chi u dài khối.
+ Thân khối: Th hi n nội dung khối và đ ợc chia thành đo n (Segment) thực hi n từng cơng đo n c a tự động hố s n xu t. Mỗi đo n l i bao gồm một số dòng l nh ph c v vi c gi i bài toán logic. K t qu c a phép toán logic đ ợc gửi vào RLO (Result of logic operation). Vi c phân chia ch ơng trình thành các đo n cũng nh h ng đ n RLO. Khi b t đầu một đo n mới thì t o ra một giá trị RLO mới, khác với giá trị RLO c a đo n tr ớc.
+ K t thúc khối: Ph n k t thúc khối là l nh k t thúc khối BEU.
Các lo i khối:
* Khối tổ chức OB (Organisation Block)
Khối tổ chức qu n lý ch ơng trình đi u khi n và tổ chức vi c thực hi n ch ơng trình.
* Khối hàm số FC (Functions)
Khối hàm số FC là một ch ơng trình do ng i sử d ng t o ra hoặc có th sử d ng các hàm chuẩn sẵn có c a SIEMENS.
* Khối hàm FB (Function Block)
Khối hàm là lo i khối đặc bi t dùng đ l p trình các phần ch ơng trình đi u khi n tái di n th ng xuyên hoặc đặc bi t phức t p. Có th gán tham số cho các khối đó và chúng có một nhóm l nh m rộng. Ng i sử d ng có th t o ra các khối hàm mới cho mình, có th sử d ng các khối hàm sẵn có c a SIEMENS.
89
+ Khối dữ liệu dùng chung DB (Sllared Data Block)
Khối dữ li u dùng chung l u trữ các dữ li u chung cần thi t cho vi c xử lý ch ơng trình đi u khi n.
+ Khối dữ liệu riêng DI (Instance Data Block)
Khối dữ li u dùng riêng l u trữ các dữ li u riêng cho một ch ơng trình nào đó trong vi c xử lý ch ơng trình đi u khi n.
Ngồi ra trong PLC S7-300 cịn hàm h thống SFC (System Function) và khối hàm h thống SFB (System Function Block).
2. Bảng lệnh của S7-300 Xem phần ph l c 2. §7.4. L p trình m t s l nh c b n 1. Nhóm lệnh 1ogic 1.1 Lệnh LD và lệnh A L p trình d ng STL A I 0.0 A I 0.1 A I 0.2 = Q 1.0 1 2. Lệnh AN L p trình d ng STL A I 0.0 AN I 0.1 A I 0.2 = Q 1.0 1.3. Lệnh O L p trình d ng STL O I 0.0 O I 0.1 O I 0.2 = Q 1.0 1.4. Lệnh ON L p trình d ng STL. O I 0.0 ON I 0.1
O I 0.2 = Q 1.0 1.5. Lệnh A và lệnh O L p trình d ng STL A I 0.0 A I 0.1 O I 0.2 = Q 1.0 1.6. Lệnh “(“ và lệnh “)” L p trình d ng STL A I 0.0 A( O I 0.1 O I 0 2 ) = Q 1.0
1 7. Lập trình với vùng dữ liệu tạm thời L
A I 0.0 = L 20.0 A L 20.0 A( O I 0.1 O I 0.2 ) = Q 0.0 A L 20.0 A( O I 0.3 O I 0.4 ) = Q 0.1 A L 20.0 A I 0.5 = Q 0.2
91 1.8. Lập trình với bít nhớ nội M Nework 1 : A I 0.0 = M 10.0 Nework 2: A I 0.1 = M 10.1 A M 10.1 = Q 0.0 Network 3: A( O I 1.0 O Q 1.0 ) A M 10.0 A M 10.1 AN I 1.0 = Q 1.0 2. Nhóm lệnh thời gian
Ch ơng trình đi u khi n sử d ng các l nh th i gian đ theo dõi, ki m soát và qu n lý các ho t động có liên quan đ n th i gian.
Khi một bộ th i gian đ ợc kh i phát thì giá trị th i gian cần đ ợc n p vào thanh ghi CV (Current value). Do đó, muốn dùng các l nh th i gian ph i n p giá trị th i gian cần đặt vào thanh ghi CV tr ớc khi bộ th i gian ho t động.
Có th n p các ki u dữ li u sau dùng cho các l nh th i gian:
+ Dữ li u th i gian thực: S5T#H_M_S_MS
+ D ng số nguyên 16 bít: W#16#.... ( d ng mã BCD) • Nạp thời gian thực: L S5T#10s
Với l nh trên giá trị th i gian đ ợc n p là 10s • Nạp thời gian dạng mã BCD:
Ví dụ: L W#16#2127
Số trên sẽ đ ợc n p vào thanh ghi CV d ng mã BCD nh hình 7. 12. Trong thanh ghi CV thì:
Số đầu chỉ mã số: Số 2. có 4 mã: 0 t ơng ứng 0,01 s 1 t ơng ứng 0,1 s 2 t ơng ứng 1s 3 t ơng ứng 10s
Với số đã vào thanh ghi CV nh trên thì th i gian đ ợc tính là ∆t :127 x 1s =127s.
Với mã càng nhỏ thì giá trị th i gian càng chính xác, vì v y nên dùng mã nhỏ.
Trong các bộ th i gian c a S7-300 ngồi tín hi u kích thích chính (b t đầu) nh các bộ th i gian c a các PLC khác, cịn có tín hi u kích thích c ỡng bức, tín hi u kích thích c ỡng bức cho phép tính l i th i gian từđầu khi có s n lên c a tín hi u này, tuy nhiên tín hi u kích thích c ỡng bức chỉ có giá trị khi tín hi u kích thích chính có giá trị 1. L nh thực hi n kích thích c ỡng bức (có đi u ki n) là: FR.
L nh FR chỉ có d ng l p trình STL. Bộ th i gian cũng có th dùng l nh R d xoá.
2.1. Bộ thời gian xung SP
Bộ th i gian đ ợc kh i phát lên 1 t i s i lên c a RLO khi RLO là 1 thì bộ th i gian vẫn duy trì tr ng thái 1 cho đ n khi đ t giá trị đặt mới xuống. Nh ng khi RLO v khơng thì bộ th i gian v khơng ngay.
Có hai ki u l p trình: Kiểu thứ nhất có lệnh NOP: A I 0.1 L S5T#10S SP T 1 A I 0.2 R T 1 NOP 0 NOP 0 A T 1 = Q 1.0 D ng LA D hình 7. 1 3.
93 Trong l p trình trên cịn hai chân BI và BCD ch a sử d ng ph i dùng l nh NOP đ giữ chỗ. Chân BI là chân đ l y giá trị th i gian hi n th i d ng nhị phân, chân BCD là chân đ l y giá trị th i gian hi n th i d ng mã BCD, có th dùng l nh L hoặc LC đ đọc các giá trị th i gian.
Kiểu thứ hai (không dùng lệnh NOP)
2.2. Bộ thời gian mở rộng SE
Bộ th i gian xung m rộng SE đ ợc kh i phát lên 1 l i s n lên c a RLO sau đó khơng ph thuộc RLO nữa cho đ n khi đ th i gian đặt mới v không. Cũng t ơng tự nh bộ th i gian SP, các bộ th i gian khác cũng ln có hai ki u l p trình.
A I 0.0 L S51 # 10S SE T 1 NOP 0 L T 1 T MW 2 LC T 1 T MW 5 A T 1 = Q 0.1
2.3 Bộ thời gian bắt đầu trễ SD
Th i gian b t đầu ch m hơn so với s n c a RLO một kho ng bằng
không.
2.4.Bộ thời gian bắt đầu trễ 1ưu trữ SS
Th i gian b t đầu ch m hơn so với s n lên c a RLO một kho ng th i gian bằng th i gian đặt trong l nh và sau đó khơng ph thuộc RLO nữa. Nó chỉ v khơng khi có l nh xố R. A I 0.1 L S5T#10S SS T 1 A I 0.2 R T 1 NOP 0 NOP 0 A T 1 = Q 1.0 2.5. Bộ thời gian tắt trễ SF
Bộ th i gian lên 1 t i s n lên c a RLO. Khi RLO v khơng thì bộ th i gian ti p t c duy trì tr ng thái một kho ng th i gian nữa bằng kho ng đã đặt trong l nh rồi mới v không. Đ xố th i gian dùng l nh R, khi có l nh R từ 0 lên 1 thì bộ th i gian đ ợc đặt v khơng và tr ng thái tín hi u vẫn giữ 0 cho đ n khi bộ th i gian đ ợc kh i phát
95 l i. A I 0.1 L ST5#10S SF T 1 A I 0.2 NOP 0 NOP 0 A T 1 = Q 1.0 3. Nhóm lệnh đếm
Giá trị trong thanh ghi CV (current value) là giá trị đ m tức th i
c a bộđ m, CV ln khơng âm, do đó l nh đ m lùi sẽ không dẫn khi CV = 0.
Giá trị đ m PV có th đ ợc đặt tr ớc bằng l nh L, ví d L C#4 (đặt giá trị đ m bằng 4). Tuy nhiên, khác với bộ th i gian, giá trị đ m chỉ đ ợc n p vào CV khi có l nh đặt bộ đ m (S). N u không đặt giá trị đ m thì bộ đ m có th vẫn ti n hành đ m (chỉ khi CV = 0 thì khơng đ m lùi).
Giá trị đầu ra c a bộ đ m sẽ là 1 n u CV ≠ 0, bằng 0 n u CV = 0. Bộ đ m có th đ ợc xố ch động bằng tín hi u xố R.
Cũng t ơng tự nh bộ th i gian, bộ đ m cũng có th dùng l nh kích đ m (đ m c ỡng bức) FR (l nh có đi u ki n), bộđ m cũng đ m xung khi đi u ki n c a FR đ m b o. L nh FR chỉ có d ng l p trình STL.
Có th dùng l nh L hoặc LD đ đọc giá trị tức th i c a bộ đ m vào ACCU1 đ xử lý. L nh L đọc số d ng cơ số 2, l nh LD đọc số d ng BCD. 3.1. Lệnh đếm lên CU A I 0.0 CD C 2 BLD 101 NOP 0 NOP 0 NOP 0 NOP 0 NOP 0 A C 2 = Q 1.0
L nh BLD đ hi n thị d ng LAD. Với các l nh trên khi đầu vào IO 0 có s n lên thì giá trị bộ đ m CV tăng thêm 1 đơn vị, tức là khi đã có chỉ một lần s n lên c a 10.0 thì đầu ra Qui ln là 1 (khơng xố).
Chân CV là chân đ l y giá trịđ m d ng nhị phân, chân CV_BCD là chân đ l y giá trị đ m d ng mã BCD, có th dùng l nh L hoặc LC đ đọc các giá trị đ m.
3.2. Lệnh đếm xuống CD A I 0.0 CD C 2 BLD 101 A I 0.1 L C#4 NOP 0 NOP 0 NOP 0 A C 2 = Q 1.0 Trong phần l p trình trên có: L nh L C#4 là n p số đ m bằng 4. Trên hình 7.20 khi I0.0 có tr ớc, bộ đ m vẫn khơng làm vi c vì khi đó CV = 0, cho đ n khi có l nh đặt bộ đ m, I0.1 có thì bộ đ m b t đầu đ ợc n p giá trị đ m, CV = 4. Từ khi này mỗi lần I0.0 có thì giá trị đ m gi m một đơn vị, sau 4 xung vào giá trị đ m CV = 0 Khi CV≠ 0 đầu ra Q1.0 có, khi CV = 0 đầu ra Q1.0 m t.
3.3. Lệnh đếm vừa tiến vừa lùi
A I 0.0 CU C 1 A I 0.1 CD C 1 A I 0.2 L C#3 A I 0.3 R C 1
97 L C 1 T MW 0 LC C 1 T MW 1 A C 1 = Q 1.0 Từ gi n đồ nh n th y: khi đầu vào đ m ti n có l p tức bộ đ m làm vi c, giá trị đ m tăng 1 đơn vị, CV ≠ 0, đầu ra Q 1.0 có. Ti p đó đầu vào đ m lùi có, do do bộ đ m l i gi m 1 đơn vị (CV = O) đầu ra Q1.0 l i m t.
Tuy nhiên, n u đầu vào đ m lùi có tr ớc thì bộ đ m khơng đ m vì khi đó CV = 0 Ti p đó d u vào đặt bộđ m SET có làm giá trịđ m đ ợc n p vào CV (CV = 3), từ đó n u có đầu đ m ti n thì giá trị đ m tăng 1 đơn vị, có đầu đ m lùi giá trị đ m gi m 1 đơn vị, đầu ra Q1.0 có. Khi có đầu RESET giá trị đ m l p tức v 0, đầu ra Q1.0 v 0.
PH L C 1
CÁC PH N M M L P TRÌNH PLC 1. T p trình cho OMRON
1. Phần mềm SYSWIN (cho OMRON)
Phần hướng dẫn được thực hiện trên version 3.2. 1.1. Khởi động
1. Kh i động máy tính ch độ Windows, b t công tác nguồn c a khối PLC. 2. Kh i động phần m m SYSWIN từ bi u t ợng hoặc từ file ch ơng trình nh hình P. 1. Cửa sổ màn hình ban đầu có d ng nh hình P.2. Trong cửa sổ có 2 thanh cơng c hỗ trợ cho q trình so n th o chính là:
• Thanh trên: ngoài một số chức năng nh so n th o văn b n bình th ng cịn một số chức năng đ so n th o l nh nh chỉ ra trên hình P.3.
• Thanh dọc: Lần l ợt tử trên là: Con trỏ (đ chọn), ti p đi m th ng h , th ng kín, thanh nối ngang, thanh nối dọc, cuộn dây th ng m , cuộn dây th ng đóng, khối hàm (RUN), bộ th i gian (TIM), bộ đ m (CNT).
99 3. Ki m tra một sốđi u ki n tr ớc khi t p trình:
+ Ki m tra xem máy tính đã đ ợc k t nối với PLC ch a. Khi máy tính đã đ ợc
k t nối với PLC thì bi u t ợng k t nối sáng, n u ch a đ ợc k t nối thì nháy vào bi u t ợng k t nối h thống sẽ tự k t nối với PLC.
+ N u sự k t nối khơng thực hi n đ ợc có th ph i khai báo l i cổng nh chỉ ra
trên hình P.4. (đ ng dẫn Project \ Communications).
1.2. Soạn thảo: Theo LAD
1. M một file ch ơng trình mới hoặc một file ch ơng trình đã có (ch độ mặc định đã có một file mới đ ợc m ra).
2. Nháy chuột trái vào khối muốn chọn (ti p đi m, cuộn dây. khối hàm....).
3. Đ a con cho đ n vị trí đặt l nh (vị trí tơ đen), nháy chuột trái và vào địa chỉ l nh (đầu vào có các địa chỉ: 0, đ n 11; đầu ra có các địa chỉ: 1000 đ n 1007).
4. Khi cần ghi chú thích d ới mỗi l nh thì chọn l nh cần ghi chú thích, vào hộp SYM: ( phía d ới màn hình nh chỉ ra trên hình P.2) ghi những đi u cần chú thích, câu chú thích ph i li n nhau (khơng dùng d u cách) sau đó chọn Store.
5. K t thúc một Network chèn thêm Network một từ bi u t ợng nh chỉ ra trên hình P.3.
6. N u so n sai Network nào thì đánh d u và xố Network đó từ bi u t ợng hình P.3.
7. Ti n hành so n th o h t các Network.
8. Kết thúc chương trình phải có lệnh kết thúc. Muốn vào l nh k t thúc thì chọn Netwoks và vị trí l nh k t thúc, chọn FUN, nháy vào vị trí đặt l nh, sau đó vào tên l nh END(01) nh chì ra trên hình P.3, hoặc chọn các khối m c Select sau đó chọn OK.
9. Đ đổ ch ơng trình sang PLC chọn Online \ Download program to PLC nh trên hình P.5.
Chú ý: Khi đổ chương trình sang PLC thì PLC phải đang ở trạng thái
MONITOR hoặc trạng thái PROGRAM (STOP/PRG). Muốn chuy n đổi các tr ng thái trên thì chọn Shift + F10 hoặc bi u t ợng “PLC Mode” nh hình P.3.
10 Đ ch y ch ơng trình chọn tr ng thái MONITOR hoặc RUN tử bi u t ợng “PLC Mode”.
101
2. Sử dụng thiết bị lập trình cầm tay (cho OMRON)
2.1. Cấu tạo thiết bị lập trình cầm tay
Thi t bị l p trình cầm tay có các khối chính nh hình P.6. 1. Màn hình
2. Cơng t c chọn ch độ: có 3 ch độ
* PROGRAM: ch độ này đ l p trình hoặc thực hi n các thay đổi ch ơng trình, * MONITOR: Ch độ này đ thay đổi các giá trị c a bộ đ m và th i gian trong khi PLC vẫn đang v n hành,
* RUN: Ch độ này đ ch y ch ơng trình dã n p trong PLC (khi PLC đang ch độ này thì khơng đổ ch ơng trình mới sang PLC đ ợc).