chuong 3 NGÔN NGỮ lập TRÌNH của s7 200

25 293 0
chuong 3 NGÔN NGỮ lập TRÌNH của s7 200

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Đồ Án Tốt Nghiệp GVHD:Tống Thanh Nhân CHƯƠNG III NGÔN NGỮ LẬP TRÌNH CỦA S7-200 Phương pháp lập trình S7 – 200 biểu diễn mạch logic cứng dãy lệnh lập trình Chương trình bao gồm dãy lệnh S7 – 200 thực chương trình lệnh lập trình kết thúc lệnh cuối vòng Một vòng gọi vòng quét Một vòng (scan cycle) quét bắt đầu việc đọc trạng thái đầu vào, sau thực chương trình Scan cycle kết thúc việc thay đổi trạng thái đầu Trước bắt đầu vòng quét S7 – 200 thực thi nhiệm vụ bên nhiệm vụ truyền thông Chu trình thực chương trình chu trình lặp Cách lập trình cho S7 – 200 nói riêng cho PLC Siemens nói chung dựa hai phương pháp lập trình bản: Phương pháp hình thang (Ladder Logic viết tắt LAD) phương pháp liệt kê lệnh (Statement List viết tắt STL) Nếu chương trình viết theo kiểu LAD, thiết bị lập trình tự tạo chương trình theo kiểu STL tương ứng Nhưng ngược lại chương trình viết theo kiểu STL chuyển sang LAD Định nghĩa LAD: LAD ngôn ngữ lập trình đồ họa Những thành phần dừng LAD tương ứng với thành phần bảng điều khiển rơle Trong chương trình LAD phần tử dùng để biểu diễn lệnh logic sau: - Tiếp điểm: biểu tượng (symbol) mô tả tiếp điểm rơle Các tiếp điểm thường mở┤├ thường đóng ┤/├ - Cuộn dây (coil): biểu tượng ─( )─ mô tả rơle mắc theo chiều dòng điện cung cấp cho rơle SVTH: Lê Ngọc Thương 16 Đồ Án Tốt Nghiệp - GVHD:Tống Thanh Nhân Hộp (box): biểu tượng mô tả hàm khác làm việc có dòng điện chạy đến hộp Những dạng hàm thường biểu diễn hộp định thời gian (Timer), đếm (Counter) hàm toán học Cuộn dây hộp phải mắc chiều dòng điện - Mạng LAD: đường nối phần tử thành mạch hoàn thiện, từ đường nguồn bên trái sang đường nguồn bên phải Đường nguồn bên trái dây nóng, đường nguồn bên phải dây trung hòa đường trở nguồn cung cấp (đường nguồn bên phải thường dùng chương trình tiện dụng STEP7-Micro/DOS STEP7-Micro/WIN) Dòng điện chạy từ bên trái qua tiếp điểm đến cuộn dây hộp trở bên phải nguồn Định nghĩa STL: phương pháp liệt kê lệnh (STL) phương pháp thể chương trình dạng tập hợp câu lệnh Mỗi câu lệnh chương trình, kể lệnh hình thức, biểu diễn chức PLC Định nghĩa ngăn xếp logic (logic stack): S0 Stack – bit hay bit ngăn xếp S1 Stack – Bit thứ hai ngăn xếp S2 Stack – Bit thứ ba ngăn xếp S3 Stack – Bit thứ tư ngăn xếp S4 Stack – Bit thứ năm ngăn xếp S5 Stack – Bit thứ sáu ngăn xếp S6 Stack – Bit thứ bảy ngăn xếp S7 Stack – Bit thứ tám ngăn xếp S8 Stack – Bit thứ chín ngăn xếp Để tạo chương trình dạng STL, người lập trình cần phải hiểu rõ phương thức sử dụng bit ngăn xếp logic S7 – 200 Ngăn xếp logic khối gồm bit chồng lên Tất thuật toán liên quan đến ngăn xếp làm việc với bit với bit bit thứ hai ngăn xếp Giá trị logic gửi (hoặc nối thêm) vào ngăn xếp Khi phối hợp hai bit ngăn xếp, ngăn xếp kéo lên bit Ví dụ Ladder Logic Statement List: SVTH: Lê Ngọc Thương 17 Đồ Án Tốt Nghiệp GVHD:Tống Thanh Nhân LAD STL I0.0 LD I0.0 Q1.0 ──┤├───( ) = Q1.0 Hệ lệnh S7 – 200: chia làm ba nhóm - Các lệnh mà thực làm việc độc lập không phụ thuộc vào giá trị logic ngăn xếp - Các lệnh thực bit ngăn xếp có giá trị logic Các nhãn lệnh đánh dấu vị trí tập lệnh Các toán hạn giới hạn cho phép CPU 212 CPU 214 Phương pháp truy nhập Giới hạn cho phép toán hạng CPU 214 V (0.0 đến 4095.7) Truy nhập theo bit I (0.0 đến 7.7) (địa byte, số bit) Q (0.0 đến 7.7) M (0.0 đến 31.7) SM (0.0 đến 85.7) T (0 đến 7.7) C (0.0 đến 7.7) VB (0 đến 4095) IB (0 đến 7) MB (0 đến 31) SMB (0 đến 85) AC (0 đến 3) Truy nhập theo byte Hằng số SVTH: Lê Ngọc Thương 18 Đồ Án Tốt Nghiệp GVHD:Tống Thanh Nhân VW (0 đến 4094) Truy nhập theo từ đơn (word) T (0 đến 127) (địa byte cao) C (0 đến 127) IW (0 đến 6) QW (0 đến 6) MW (0 đến 30) SMW (0 đến 84) AC (0 đến 3) AIW (0 đến 30) AQW (0 đến 30) Hằng số VD (0 đến 4092) Thuy nhập theo từ kép ID (0 đến 4) (địa byte cao) QD (0 đến 4) MD (0 đến 28) SMD (0 đến 82) AC (0 đến 3) HC (0 đến 2) Hằng số Một số lệnh a Lệnh vào/ra: ª LOAD (LD): Lệnh LD nạp giá trị logic tiếp điểm vào bit ngăn xếp, giá trị lại ngăn xếp bị đẩy lùi xuống bit SVTH: Lê Ngọc Thương 19 Đồ Án Tốt Nghiệp GVHD:Tống Thanh Nhân ª LOAD NOT (LDN): Lệnh LD nạp giá trị logic tiếp điểm vào bit ngăn xếp, giá trị lại ngăn xếp bị đẩy lùi xuống bit Trước C0 C1 C2 C3 C4 C5 C6 C7 C8 LD Sau m C0 C1 C2 C3 C4 C5 C6 C7 Trước C0 C1 C2 C3 C4 C5 C6 C7 C8 LDN Sau ~m C0 C1 C2 C3 C4 C5 C6 C7 Bị đẩy khỏi Bị đẩy khỏi ngăn xếp ngăn xếp Các dạng khác lệnh LD, LDN cho LAD sau: LAD Mô tả Tốn hạng N ┤├ Tiếp điểm thường mở đĩng n=1 n: N ┤\├ Tiếp điểm thường đĩng mở n=1 N ┤I├ Tiếp điểm thường mở đĩng tức thời n=1 N ┤\I├ Tiếp điểm thường đĩng mở tức thời n=1 I, Q, M, SM, (bit) T, C n:1 Các dạng khác lệnh LD, LDN cho STL sau: LAD LD Mô tả n Lệnh nạp giá trị logic điểm n vào bit đầu n: I, Q, M, SM, tiên ngăn xếp LDN n Toán hạng (bit) T, C Lệnh nạp giá trị logic nghịch đảo điểm n vào bit ngăn xếp LDI n Lệnh nạp tức thời giá trị logic điểm n vào n:1 bit ngăn xếp SVTH: Lê Ngọc Thương 20 Đồ Án Tốt Nghiệp LDNI n GVHD:Tống Thanh Nhân Lệnh nạp tức thời giá trị logic nghịch đảo điểm n vào bit ngăn xếp OUTPUT (=): lệnh chép nội dung bit ngăn xếp  vào bit định lệnh Nội dung ngăn xếp không bị thay đổi Mô tả lệnh OUTPUT LAD sau: LAD Mô tả n Cuộn dây đầu trạng thái kích thích n:I,Q,M,SM,T,C có dòng điều khiển qua ─( ) n ─( I ) Toán hạng (bit) Cuộn dây đầu kích thích tức thời n: Q (bit) có dòng điều khiển qua a Các lệnh ghi/xóa giá trị cho tiếp điểm: ª SET (S) ª RESET (R): Lệnh dùng để đóng ngắt điểm gián đoạn thiết kế Trong LAD, logic điều khiển dòng điện đóng hay ngắt cuộn dây đầu Khi dòng điều khiển đến cuộn dây cuôn dây đóng mở tiếp điểm Trong STL, lệnh truyền trạng thái bit ngăn xếp đến điểm thiết kế Nếu bit có giá trị 1, lệnh S R đóng ngắt tiếp điểm dãy tiếp điểm (giới hạn từ đến 255) Nội dung ngăn xếp không bị thay đổi lệnh Mô tả lệnh S (Set) R (Reset) LAD: LAD Mô tả S bit n ──( S ) Toán hạng Đóng mảng gồm n tiếp điểm kể S-bit: I, Q, M,SM,T, từ địa S-bit C,V (bit) Ngắt mảng gồm n tiếp điểm kể n (byte): IB, QB, S bit n ──( R ) từ S-bit Nếu S-bit lại vào Timer MB, SMB, VB,AC, Counter lệnh xoá bit đầu số, *VD, *AC Timer/Counter SVTH: Lê Ngọc Thương 21 Đồ Án Tốt Nghiệp S bit n GVHD:Tống Thanh Nhân Đóng tức thời mảng gồm n tiếp S-bit: Q (bit) điểm kể từ địa S-bit ──( SI ) S bit n Ngắt tức thời mảng gồm n tiếp SMB, VB,AC, điểm kể từ địa S-bit ──( RI ) n(byte):IB,QB, MB, số, *VD, *AC Mô tả lệnh S (Set) R (Reset) STL: STL S Mô tả S-bit n Ghi giá trị logic vào mảng gồm n bit S-bit: I, Q, M,SM,T, kể từ địa S-bit R S-bit n Toán hạng C,V (bit) Xóa mảng gồm n bit kể từ địa Sbit Nếu S-bit lại vào Timer Counter lệnh xoá bit đầu Timer/Counter SI S-bit n Ghi tức thời giá trị logic vào mảng S-bit: Q (bit) gồm n bit kể từ địa S-bit RI S-bit n n (byte):IB,QB,MB, Xóa tức thời mảng gồm n bit kể từ SMB, VB,AC, địa S-bit số, *VD, *AC b Các lệnh logic đại số Boolean: Các lệnh tiếp điểm đại số Boolean cho phép tạo lập mạch logic (không có nhớ) Trong LAD lệnh biểu diễn thông qua cấu trúc mạch, mắc nối tiếp hay song song tiếp điểm thường đóng hay tiếp điểm thường mở Trong STL sử dụng lệnh A (And) O (Or) cho hàm hở lệnh AN (And Not), ON (Or Not) cho hàm kín Giá trị ngăn xếp thay đổi phụ thuộc vào lệnh SVTH: Lê Ngọc Thương 22 Đồ Án Tốt Nghiệp GVHD:Tống Thanh Nhân Ngoài lệnh làm việc trực tiếp với tiếp điểm, S7 – 200 có lệnh đặc biệt biểu diễn cho phép tính đại số Boolean cho bit ngăn xếp, gọi lệnh stack logic Đó lệnh ALD (And Load), OLD (Or Load), LPS (Logic Push), LRD (Logic Read) LPP (Logic Pop) Lệnh stack logic dùng để tổ hợp, chụp xoá mệnh đề logic LAD đếm dành cho Stack logic STL sử dụng lệnh stack logic để thực phương trình tổng thể có nhiều biểu thức Lệnh Mô tả Toán hạng ALD Lệnh tổ hợp giá trị bit thứ hai ngăn xếp Không có phép tính logic AND Kết ghi lại vào bit Giá trị lại ngăn xếp kéo lên bit OLD Lệnh tổ hợp giá trị bit thứ hai ngăn xếp Không có phép tính logic OR Kết ghi lại vào bit Giá trị lại ngăn xếp kéo lên bit LPS Lệnh Logic Push (LPS) chụp giá trị bit vào Không có bit thứ hai ngăn xếp Giá trị lại bị đẩy xuống bit Bit cuối bị đẩy khỏi ngăn xếp LRD Lệnh chép giá trị bit thứ hai vào bit Không có ngăn xếp.Các giá trị lại ngăn xếp giữ nguyên vị trí LPP Lệnh kéo ngăn xếp lên bit Giá trị bit sau Không có chuyển cho bit trước ª AND (A) Lệnh A O phối hợp giá trị logic tiếp điểm n với ª OR (O) giá trị bit ngăn xếp Kết phép tính đặt lại vào bit ngăn xếp Giá trị bit lại ngăn xếp không bị thay đổi Tác động phép tính A (And) O (Or) SVTH: Lê Ngọc Thương 23 Đồ Án Tốt Nghiệp Trước (And) C0 C1 C2 C3 C4 C5 C6 C7 C8 GVHD:Tống Thanh Nhân Sau Trước (And) Sau C0 C1 C2 C3 C4 C5 C6 C7 C8 m C1 C2 C3 C4 C5 C6 C7 C8 m C1 C2 C3 C4 C5 C6 C7 C8 ª AND LOAD (ALD) ª OR LOAD (OR) : Lệnh ALD OLD thực phép tính logic And Or hai bit ngăn xếp Kết logic ghi lại vào bit đầu ngăn xếp Nội dung lại ngăn xếp kéo lên bit Tác động lệnh ALD OLD VÀO ngăn xếp sau: Trước (And) C0 C1 C2 C3 C4 C5 C6 C7 C8 Trước Sau m C2 C3 C4 C5 C6 C7 C8 C0 C1 C2 C3 C4 C5 C6 C7 C8 (And) Sau m C1 C2 C3 C4 C5 C6 C7 C8 ª LOGIC PUSH (LPS) ª LOGIC READ (LRD) ª LOGIC POP (LPP): Lệnh LPS, LRD LPP lệnh thay đổi nội dung bit ngăn xếp Lệnh LPS chép nội dung bit vào bit thứ hai ngăn xếp, nội dung ngăn xếp sau bị đẩy xuống bit Lệnh LRD lấy giá trị bit thứ hai ghi vào bit SVTH: Lê Ngọc Thương 24 Đồ Án Tốt Nghiệp GVHD:Tống Thanh Nhân ngăn xếp, nội dung ngăn xếp sau kéo lên bit Lệnh LPP kéo ngăn xếp lên bit c Các lệnh tiếp điểm đặc biệt ┤ NOT ├ ┤P├ ┤N├ Có thể dùng lệnh tiếp điểm đặc biệt để phát chuyển tiếp trạng thái xung (sườn xung) đảo lại trạng thái dòng cung cấp (giá trị đỉnh ngăn xếp) LAD sử dụng tiếp điểm đặc biệt để tác động vào dòng cung cấp Các tiếp điểm đặc biệt toán hạng riêng chúng phải đặt chúng phía trước cuộn dây hộp đầu Tiếp điểm chuyển tiếp dương/âm (các lệnh sườn trước sườn sau) có nhu cầu nhớ CPU 214 sử dụng nhiều 256 lệnh d Các lệnh so sánh Khi lập trình, định điều khiển thực dựa kết việc so sánh sử dụng lệnh so sánh theo byte, Word hay Dword S7 – 200 LAD sử dụng lệnh so sánh để so sánh giá trị byte, word hay Dword (giá trị thực nguyên) Những lệnh so sánh thường là: so sánh nhỏ (=) Khi so sánh giá trị byte thí không cần phải để ý đến dấu toán hạng, ngược lại so sánh từ hay từ kép với phải để ý đến dấu toán hạng bit cao từ từ kép Ví dụ 7FFF > 8000 7FFFFFFF > 80000000 LAD SVTH: Lê Ngọc Thương Mô tả Toán hạng 25 Đồ Án Tốt Nghiệp n1 n2 ─┤==B├─ n1 n2 ─┤==I├─ n1 n2 GVHD:Tống Thanh Nhân Tiếp điểm đóng n1=n2 n1, n2(byte): VB, IB, B = byte QB, MB, SMB, AC, I = Integer = Word Const, *VD, *AC D = Double Integer R = Real ─┤==D├─ n1 n2 ─┤==R├─ n1 n2 ─┤>=B├─ n1 n2 ─┤>=I├─ n1 n2 Tiếp điểm đóng n1≥ n2 B = byte I = Integer = Word n1, n2(word): VW, T, C, QW, MW, SMW, AC, AIW, số, *VD, *AC D = Double Integer R = Real ─┤>=D├─ n1 n2 ─┤>=R├─ n1 n2 ─┤

Ngày đăng: 07/09/2017, 11:09

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan