intTypePromotion=1

Bài giảng Điều khiển lập trình 2 - Trường ĐH SPKT TP. Hồ Chí Minh

Chia sẻ: Nguyễn Thị Ngọc Lựu | Ngày: | Loại File: PDF | Số trang:154

0
511
lượt xem
228
download

Bài giảng Điều khiển lập trình 2 - Trường ĐH SPKT TP. Hồ Chí Minh

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Cuốn sách Bài giảng Điều khiển lập trình 2 có 5 chương. Chương I: PLC S7-300. Chương II: Tập lệnh của S7-300. Chương III: Mạng Profibus-DP. Chương IV: Mạng ASI. Chương V: Phần mềm WINCC. Đây là tài liệu thích hợp cho sinh viên khoa Điện tử.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Điều khiển lập trình 2 - Trường ĐH SPKT TP. Hồ Chí Minh

  1. TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT TPHCM KHOA ĐIỆN TỬ BÀI GIẢNG: ĐIỀU KHIỂN LẬP TRÌNH 2 BIÊN SOẠN: GV ThS Nguyễn Tấn Đời GV ThS Tạ Văn Phương TP HỒ CHÍ MINH, THÁNG 01 NĂM 2008
  2. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn MỤC LỤC CHƯƠNG I: PLC S7-300 1.1 Giới thiệu về PLC S7-300. 1 1.2 Các Module của PLC S7-300 1 1.3 Các Module hoạt động. 4 1.4 Các kiểu dữ liệu. 5 1.5 Cấu trúc bộ nhớ. 5 1.6 Chu kỳ quét của PLC S7-300 7 1.7 Trao đổi dữ liệu giữa CPU và Module mở rộng. 8 1.8 Cấu trúc chương trình của PLC S7-300 9 1.9 Các khối OB đặc biệt 10 M P. HC h uat T yt CHƯƠNG II: TẬP LỆNH CỦA S7-300 12 ph am K H Su 1.1 Cấu trúc lệnh và trạng thái kết quả 12 ruo ng D n©T 1.2 Nhóm lệnh logic 14 1.3 Nhóm lệnh đặc biệt Ban quye 20 1.4 Nhóm lệnh so sánh 23 1.5 Nhóm lệnh toán học 28 1.6 Lệnh chuyển đổi số BCD sang số nguyên 29 1.7 Lệnh về Timer 30 1.8 Lệnh về Counter. 40 CHƯƠNG III: MẠNG PROFIBUS- DP 47 3.1 Tổng quan 47 3.1.2 Kiến trúc giao thức và kỹ thuật truyền 48 3.1.3 Truy cập BUS 49 3.1.4 Dịch vụ truyền dữ lịêu 49 3.1.5 Cấu trúc bức điện 50 3.2 Profibus – DP 51 3.2.1 Cấu hình hệ thống và thiết bị 52 3.2.2 Đặc tính vận hành của hệ thống 53 3.2.3 Trao đổi dữ liệu giữa Master và Slaver 53 3.2.4 Đồng bộ hoá dữ liệu vào /ra 54 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  3. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn 3.2.5 Tham số hoá và chuẩn đoán hệ thống 55 3.2.6 Giao tiếp trực tiếp giữa các Slave 55 3.2.7 Chế độ đẳng thời 56 3.3 Giới thiệu Module EM-277 57 3.3.1 Giới thiệu 57 3.3.2 Các thông số của EM-277 57 3.3.3 Cấu trúc vùng nhớ của Master và Slave 58 3.4 Kết nối mạng với module EM-277 61 3.4.1 Thiết lập địa chỉ mạng cho khối EM-277 61 3.4.2 Truyền dữ liệu giữa trạm chủ và khối EM-277 61 3.4.3 Tệp cơ sở dữ liệu của thiết bị ( các tệp GSD) 64 3.4.5 Ứng dụng mạng Profibus –DP điều khiển thiết bị 64 M P. HC CHƯƠNG IV : MẠNG ASI 75 uat T 4.1 Giới thiệu về mạng ASI K y th 75 pham 4.1.1 Khái niệm H Su 75 ruo ng D 4.1.2 Giao tiếp ASI n©T 77 quye 4.1.3 Hoạt động của mạng n Ba ASI 82 4.1.4 Ứng dụng mạng ASI 84 4.2 Các AS-I MASTER 86 4.2.1 Giới thiệu 86 4.2.2 AS-I Master PLC S7-200 86 4.2.3 AS-I Master cho PLC S7-300 89 4.2.4 AS-I Gateway 91 4.3 Các thành phần mạng ASI 92 4.3.1 Cáp AS-I 92 4.3.2 Các Module AS-I 93 4.3.3 Lắp đặt Module AS-I 97 4.3.4 AS-I Repeater/Extender 97 4.3.5 Bộ định địa chỉ 99 4.4 Chế độ AS-I MASTER 100 4.4.1 Nguyên tắc Master/Slaver trong AS-I 100 4.4.2 Chuyển đổi dữ liệu 102 4.5 Hệ thống AS-I 108 4.5.1 Thiết lập hệ thống AS-I 108 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  4. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn 4.5.2 Hệ thống truyền dữ liệu AS-I 109 4.5.3 Cấu trúc bức điện 110 4.6 AS-I MASTER MODULE CP 243-2 113 4.6.1 Giới thiệu module CP 243-2 113 4.6.2 Đặc tính kỹ thuật của Module CP 243-2 115 CHƯƠNG V: PHẦN MỀM WINCC 129 5.1 Giới thiệu chung về WinCC 129 5.1.1 Khái niệm 129 5.1.2 Đặc điểm 129 5.1.3 Ưu điểm của Version WinCC 6.0 131 5.2 Các độ Poject trong WINCC 131 5.2.1 Single-user Project 131 M P. HC 5.2.2 Multi-user Project 132 uat T 5.2.3 Client Project K y th 132 pham 5.3 Sử dụng WINCC H Su 133 uo ng D © Tr 5.3.1 Thiết lập Driver kết nối giữa WinCC và PLC 133 qu yen 5.3.2 Định nghĩa các Tag an B 134 5.3.3 Tạo giao diện người dùng 134 5.3.4 Tạo ảnh động và hiệu ứng cho đối tượng 136 5.3.5 Biểu diễn giá trị của quá trình Logging Editor 136 5.3.6 Thiết lập cảnh báo và thông báo lỗi 137 5.3.7 Tạo Function và Action 138 5.3.8 Thiết lập Report 138 5.3.9 Chạy chương trình WinCC 139 5.4 Điều khiển và giám sát qua mạng PROFIBUS 140 5.4.1 Yêu cầu 140 5.4.2 Kết nối phần cứng 141 5.4.3 Khai báo phần cứng trên SIMATIC MANAGER 141 5.4.4 Thiết lập giao diện trên WinCC và thiết lập giao tiếp với S&-300 146 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  5. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn TÀI LIỆU THAM KHẢO [1] Nguyễn Doãn Phước, tự động hóa với Simatic S7-300, NXB KHKT, 2006 [2] Hoàng Minh Sơn, Mạng truyền thông công nghiệp , NXB KHKT, 2001. [3] Trần Thu Hà, Tự động hoá trong công nghiệp với WinCC, NXB Hồng Đức, 2007. [4] TT Việt Đức - ĐH Sư phạm Kỹ thuật Tp.HCM, SIMATIC S7-300 Điều khiển hệ thống. [5] TT Việt_Đức - Trường ĐH Sư phạm Kỹ thuật Tp.HCM, Tài liệu huấn luyện PROFIBUS - DP&FMS. [6] Siemens, AS-Interface – Introdution and Basic information, 2000. [7] Siemens, S7-300 Programmable Controller Hardware and installation. M P. HC [8] Internet. uat T K y th pham H Su ruo ng D n©T an quye B Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  6. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 1 CHƯƠNG 1: PLC S7-300 1.1 GIỚI THIỆU VỀ PLC S7-300: PLC S7-300 là thiết bị điều khiển lo g i c k h ả t r ì n h c ỡ t r u n g b ì n h do hãng S iemens sản xuất với kích thước nhỏ, gọn. Chúng có kết cấu theo kiểu các Module được sắp xếp trên các thanh rack. Trên mỗi rack cho phép đặt được nhiều nhất 8 Module mở rộng (không kể CPU, Module nguồi nuôi). Một CPU S7-300 có thể làm việc trực tiếp với nhiều nhất 4 rack. S7-300 được thiết kế dựa trên tính chất của PLC S7-200 (đã được trình bày trong môn học ĐKLT 1) và bổ sung những tính năng mới, đặc biệt trong điều khiển liên kết cả hệ thống nhiều PLC, gọi là mạng PLC – sẽ được trình bày trong các chương sau. 1.2 CÁC MODULE CỦA PLC S7-300: Nhằm mục đích tăng tính mềm dẻo trong các ứng dụng thực tế, M đối tượng điều các P. HC khiển của một trạm S7-300 được chế tạo theo Module. at T thu Các Module gồm có: Module CPU, nguồn, ngõ ham Kysố, tương tự, mạng, …Số lượng p vào/ra H Sutế, song tối thiểu bao giờ cũng có một n D Module nhiều hay ít tùy vào yêu cầug thực © Truo yen Module chính là CPU, các Module còn lại nhận truyền tín hiệu với đối tượng điều khiển, các Module chứcan qu chuyên dụng như PID, điều khiển động cơ,… chúng được B năng gọi chung là Module mở rộng. Cấu hình của một trạm PLC S7-300 như sau: CPU Hình 1.1: Các khối trên một thanh rack của trạm PLC S7-300. TRANG - 1 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  7. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 1 - Module CPU: chứa bộ vi xử lý, hệ điều hành, bộ nhớ, các bộ định thời gian, bộ đếm, cổng truyền thông (RS485)… và có thể có vài cổng vào/ra số onboard. PLC S7-300 có nhiều loại CPU khác nhau, chúng được đặt tên theo bộ vi xử lý có trong CPU như CPU312, CPU314, CPU315, CPU316, CPU318… Những Module cùng có chung bộ vi xử lý nhưng khác nhau về cổng vào/ra onboard, khác nhau về các khối hàm đặc biệt có sẵn trong thư viện của hệ điều hành được phân biệt với nhau trong tên gọi bằng cách thêm cụm từ IFM (Intergrated Function Module). Ví dụ Module CPU314 IFM. Ngoài ra còn có các loại Module CPU với hai cổng truyền thông, trong đó cổng truyền thông thứ hai có chức năng chính là phục vụ việc nối mạng phân tán có kèm theo những phần mềm tiện dụng được cài đặt sẵn trong hệ điều hành. Các loại CPU này được phân biệt với các CPU khác bằng tên gọi thêm cụm từ DP (Distributted Port) trong tên gọi. Ví dụ Module CPU 314C-2DP… Hình vẽ sau minh họa một số CPU của PLC S7-300: M P. HC uat T K y th pham H Su ruo ng D n©T an quye B CPU 312 IFM CPU 314C-2PIP CPU 314 CPU 314C-2DP Hình 1.2: Các Module tích hợp CPU của PLC S7-300. - Module mở rộng: chia làm 5 loại o PS ( Power Supply): Module nguồn nuôi. Có 3 loại 2A, 5A và 10A. o SM (Signal Module): Module mở rộng cổng tín hiệu vào/ra, bao gồm: o DI (Digital Input): Module mở rộng các cổng vào số. Số các cổng vào số mở rộng có thể là 8, 16, hoặc 32 tuỳ thuộc vào từng loại Module. o DO (Digital Output): Module mở rộng các cổng ra số. Số các cổng ra số mở rộng có thể là 8, 16 hoặc 32 tuỳ thuộc vào từng loại Module. o DI/DO (Digital input/Digital output): Module mở rộng các cổng vào/ra số. Số các cổng vào/ra số có thể là 8 vào/8 ra hoặc 16 vào/16 ra tùy thuộc từng loại Module. o AI (Analog input): Module mở rộng cổng vào tương tự. Chúng là bộ chuyển đổi tương tự số 12 bits (AD). Số các cổng vào tương tự có thể là 2, 4, 8 tùy từng loại Module. TRANG - 2 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  8. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 1 o AO (Analog output): Module mở rộng các cổng ra tương tự. Chúng là những bộ chuyển đổi số tương tự (DA). Số các cổng ra tương tự có thể là 2, 4 hoặc 8 tùy thuộc từng loại. o AI/AO (Analog input/Analog output): Module mở rộng vào/ra tương tự. Số cổng vào/ra tương tự có thể là 4 vào/2 ra hoặc 4 vào/4 ra tùy từng loại Module. o IM (Interface Module): Module ghép nối. Đây là loại Module chuyên dụng có chức năng nối các nhóm Module mở rộng lại với nhau thành một khối và được quản lý chung bởi một CPU. Một CPU có thể làm việc trực tiếp nhiều nhất 4 rack, mỗi rack tối đa 8 Module mở rộng và các rack được nối với nhau bằng Module IM. o FM (Function Module): Module có chức năng điều khiển riêng, ví dụ như Module điều khiển động động cơ bước, Module điều khiển động cơ servo, Module PID, điều khiển đếm tốc độ cao… o CP (Communication Module): Module phục vụ truyền thông trong mạng giữa các bộ PLC với nhau hoặc giữa PLC với máy tính. HCM Hình sau minh họa một số Module mở rộng của PLC uat TP. S7-300: K y th pham H Su ruo ng D n©T an quye B a) Module nguồn (PS) b) Module vào số (DI) c) Module ra analog (AO) d) Module ra số (DO) e) Module chức năng (FM) f) Module truyền thông Hình 1.3: Module mở rộng của PLC S7-300 TRANG - 3 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  9. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 1 1.3 CÁC MODE HOẠT ĐỘNG: - PLC S7-300 có 4 mode hoạt động, gồm: o RUN_P: Xử lý chương trình, có thể đọc và ghi được từ PG. o RUN: Xử lý chương trình, không thể đọc từ PG. o STOP: Dừng, chương trình không được xử lý. o MRES: Chức năng reset hệ thống (Module Reset Các mode này được chọn dựa vào công tắc chọn ở mặt trước CPU như hình 1.4 Trong đó: 1. Đèn báo trạng thái 2. Card nhớ 3. Nút chọn kiểu làm việc 4. Đầu nối 24V M P. HC 5. Cổng giao tiếp MPI uat T 6. Ngăn để pin K y th pham H Su ruo ng D n©T an quye B Hình 1.4: Mặt trước CPU S7-300 - Ngoài ra, CPU còn có các đèn chỉ báo giúp người sử dụng chẩn đoán được trạng thái hiện tại của PLC. o SF: báo lỗi trong nhóm, trong CPU hay trong các Module. o BATF: lỗi pin, hết pin hoặc không có pin. o DC5V: báo có nguồn 5V. o FRCE: báo ít nhất có một ngỏ vào/ra đang bị cưỡng bức hoạt động. o RUN: nhấp nháy khi CPU khởi động và sáng khi CPU làm việc. o STOP: sáng khi PLC dừng, chớp chậm khi có yêu cấu reset bộ nhớ, chớp nhanh khi đang reset bộ nhớ. - Các thành phần khác trên CPU: o Card nhớ: dùng để lưu chương trình mà không cần pin trong trường hợp mất điện. o Ngăn để pin: nằm dưới nắp, chứa pin cung cấp năng lượng cho RAM khi mất điện. o Đầu nối MPI: đầu nồi dành cho thiết bị lập trình hay các thiết bị cần giao tiếp qua cổng MPI. o Đầu nối điện 24V: cung cấp nguồn cho CPU. TRANG - 4 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  10. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 1 1.4 CÁC KIỂU DỮ LIỆU: Tương tự như PLC S7-200, các kiểu dữ liệu sử dụng trong chương trình của PLC S7-300 gồm có: - BOOL: có dung lượng 1 bit, giá trị là 0 hoặc 1, sử dụng cho biến có 2 giá trị - BYTE: dung lượng 8 bit, thường dùng biểu diễn số nguyên dương từ 0 đến 255, mã BCD của số thập phân 2 chữ số, mã ASCII của ký tự,… - WORD: dung lượng 2 byte, biểu diễn số nguyên dương từ 0 đến 65535. - INT: dung lượng 2 byte, biểu diễn số nguyên từ -32768 đến 32767. - DINT: dung lượng 4 byte, biểu diễn số nguyên từ -2147483648 đến 2147483647. - REAL: dung lượng 4 byte, biểu diễn số thực có dấu phẩy. Ngoài ra còn có các kiểu dữ liệu khác: - S5T (S5TIME): biểu diễn khoảng thời gian, tính theo giờ/phút/giây/mgiây - TOD: biểu diễn khoảng thời gian tính theo giờ/phút/giây M - DATE: biểu diễn thời gian theo năm/tháng/ngày P. HC uat T - CHAR: biểu diễn ký tự (tối đa 4 ký tự). K y th pham H Su ruo ng D T 1.5 CẤU TRÚC BỘ NHỚ:en © quy Ban Bộ nhớ PLC được minh họa trong hình 1.5, gồm: vùng nhớ chứa thanh ghi, vùng nhớ System, vùng nhớ Work, và vùng nhớ Load. Hình 1.5: Phân chia vùng nhớ S7-300 TRANG - 5 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  11. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 1 - Load memory: Là vùng nhớ chứa chương trình ứng dụng do người sử dụng viết và được chứa trong các OB, FC, FB hoặc trong các khối chương trình trong thư viện hệ thống được sử dụng (SFB, SFC) và các khối dữ liệu DB. Vùng nhớ này tạo ra từ một phần RAM của CPU và EEPROM. Khi thực hiện lệnh xóa bộ nhớ (MRES) thì toàn bộ các khối chương trình trong RAM bị xóa hết. Tương tự, khi chương trình được Download từ máy tính vào CPU, chúng sẽ được ghi lên phần RAM của vùng nhớ này. Vùng nhớ chương trình được chia làm 3 miền: o OB (Organization Block): miền chứa chương trình tổ chức. o FC (Function): miền chứa chương trình con được tổ chức thành hàm, có biến hình thức để trao đổi dữ liệu với chương trình đã gọi. o FB (Function Block): Miền chứa chương trình con được tổ chức thành hàm, có khả năng trao đổi dữ liệu với bất kỳ khối chương trình nào. Các dữ liệu được xây dựng trên một khối riêng gọi là DB. - Work memory: Là vùng nhớ chứa các khối dữ liệu DB đang mở, khối chươngCM (OB, FB, FC, P. H trình h uat T SFC, SFB) đang được CPU thực hiện. Tại một thờitđiểm nhất định vùng nhớ này Ky am hiện khối chương trình này xong chỉ chứa một khối chương trình. Sau khi ph u thực g DH S thì nó sẽ bị CPU xóa khỏi worknmemory và nạp vào khối chương trình kế tiếp ruo đến lượt thực hiện. uyen © T B an q Vùng nhớ này chia thành 2 miền: o DB (Data Block): Miền chứa các dữ liệu tổ chức thành khối, kích thước và số lượng do người sử dụng quy định. Chương trình có thể truy cập miền này theo bit (DBX), byte (DBB), Word (DBW), Double word (DBD). o L (Local data block): Miền dữ liệu cục bộ được các khối chương trình OB, FC, FB sử dụng cho các biến tạm thời và trao đổi các biến hình thức với các khối đã gọi nó. Nội dung dữ liệu trong khối này sẽ bị xoá khi kết thúc chương trình tương ứng trong OB, FC, FB. Miền này có thể truy cập theo bit (L), byte (LB), word (LW) hoặc duoble word (LD). Tùy theo các khối chương trình khác nhau mà bảng khai báo chứa các biến khác nhau nhằm phục vụ cho yêu cầu của khối đó. - System memory: Chứa các tham số của hệ điều hành và chương trình ứng dụng, chia làm 7 miền. o Miền I: (Process image input): miền bộ đệm các cổng vào số. Trước khi thực hiện chương trình, PLC đọc tất cả dữ liệu đầu vào và cất vào miền nhớ này. PLC không đọc trực tiếp cổng vào mà đọc từ bộ đệm I. o Miền Q: (Process image output): miền bộ đệm các cổng ra số. Khi kết thúc chương trình, PLC chuyển giá trị logic từ bộ đệm Q đến các cổng ra số. Thông thường chương trình không gán trực tiếp giá trị tới cổng ra mà chỉ chuyển chúng vào bộ đệm Q. TRANG - 6 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  12. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 1 o Miền M: miền nhớ các bit cờ. Chương trình ứng dụng sử dụng vùng nhớ này để lưu các tham số cần thiết và có thể truy nhập theo bit, byte, word, double word. o Miền T: miền nhớ phục vụ bộ thời gian. Bao gồm việc lưu trữ giá trị thời gian thời gian định trước, thời gian tức thời và giá trị logic đầu ra của timer. o Miền C: miền phục vụ bộ đếm. Bao gồm việc lưu trữ giá trị đặt trước, giá trị tức thời và giá trị logic đầu ra. o Miền PI: miền địa chỉ cổng vào các Module tương tự. Các giá trị tương tự tại các cổng vào sẽ được chuyển tự động theo những địa chỉ. Chương trình ứng dụng có thể truy cập miền PI theo bit (PI), theo byte (PIB), theo từ (PIW), hoặc theo từ kép (PID). o Miền PQ: miền địa chỉ cổng ra các Module tương tự. Giá trị theo những địa chỉ này sẽ được Module tương tự chuyển tới các cổng ra tương tự. Chương trình ứng dụng có thể truy cập miền nhớ PQ theo bit (PQ), theo byte (PQB), theo từ (PQW) hoặc theo từ kép. Trong các vùng nhớ trình bày trên không có vùng nhớ làm bộ đệm cho cổng vào/ra tương tự, như vậy mỗi M lệnh truy nhập Module tương tự (đọc hoặc gửi giá TP. HC có tác dụng trực trị) đều huat tiếp tới cổng vật lý. Ky t pham H Su ruo ng D ©T u en 1.6 CHU KỲ QUÉT CỦAyPLC S7-300: B an q Tương tự PLC S7-200, PLC S7-300 thực hiện chương trình theo chu trình lặp. Mỗi vòng lặp được gọi là vòng quét. - Vòng quét được bắt đầu bằng giai đoạn truyền thông nội bộ và kiểm tra lỗi. - Bước tiếp theo là giai đoạn chuyển dữ liệu từ các cổng vào số tới bộ đệm ảo I. - Sau đó là giai đoạn thực hiện chương trình. Chương trình được thực hiện từ lệnh đầu tiên đến lệnh kết thúc của khối OB1. Kết quả được lưu trong bộ đệm Q. - Sau cùng là giai đoạn chuyển các nội dung của bộ đệm ảo Q tới các cổng ra số. Hình 1.6: Vòng quét chương trình TRANG - 7 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  13. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 1 Bộ đệm I và Q không liên quan tới các cổng vào/ra tương tự nên các lệnh truy nhập cổng tương tự được thực hiện trực tiếp với cổng vật lý mà không thông qua bộ đệm. Thời gian cần thiết để PLC thực hiện được một vòng quét gọi là thời gian vòng quét. Thời gian vòng quét không cố định, tức là không phải vòng quét nào cũng được thực hiện trong một khoảng thời gian như nhau. Có vòng quét thực hiện lâu, có vòng quét thực hiện nhanh tùy thuộc vào số lệnh trong chương trình được thực hiện, tùy thuộc vào khối lượng dữ liệu được truyền thông trong vòng quét. Việc đọc dữ liệu từ đối tượng để xử lý, tính toán và gửi tín hiệu tới đối tượng cần một khoảng thời gian trễ đúng bằng thời gian vòng quét. Thời gian vòng quét quyết định tính thời gian thực của chương trình điều khiển. Việc đọc dữ liệu từ đối tượng để xử lý, tính toán và gửi tín hiệu tới đối tượng cần một khoảng thời gian trễ đúng bằng thời gian vòng quét. Thời gian vòng quét quyết định tính thời gian thực của chương trình điều khiển. Nếu sử dụng các khối OB đặc biệt có chế độ ngắt như OB40, OB80, OB35 thì chương trình của khối đó được thực hiện khi xuất hiện tín hiệu báo ngắt cùng loại. Thời gian vòng quét càng lớn khi có nhiều tín hiệu ngắt xuất hiện trong vòng quét. M P. HC uat T y th ph 1.7 TRAO ĐỔI DỮ LIỆU GIỮA CPU VÀuMODULE MỞ RỘNG: am K DH S các ng Sự trao đổi dữ liệu giữa CPU với TruoModule mở rộng trong một trạm PLC thông qua n© bus nội bộ. quye Ban - Ngay đầu vòng quét các dữ liệu tại cổng vào của Module số (DI) được CPU chuyển đến bộ đệm vào I. Đến cuối vòng quét, nội dung bộ đệm số ngõ ra được CPU chuyển tới cổng ra của các Module số (DO). Việc thay đổi nội dung hai bộ đệm này được thực hiện bởi chương trình ứng dụng. Trong chương trình ứng dụng có nhiều lệnh đọc ngõ vào số thì cho dù giá trị thực có của cổng này đã bị thay đổi trong quá trình thực hiện vòng quét, chương trình sẽ vẫn luôn đọc được cùng một giá trị từ I và đó là giá trị của cổng vào có tại thời điểm đầu vòng quét. Nếu chương trình có nhiều lần thay đổi giá trị cổng ra số thì do nó chỉ thay đổi nội dung bit nhớ tương ứng trong Q nên chỉ có giá trị ở lần thay đổi cuối cùng được đưa tới cổng ra vật lý của Module DO. - Khác với việc đọc/ghi cổng số, việc truy nhập cổng vào/ra tương tự lại được CPU thực hiện trực tiếp trên Module tương tự (AI/AO). Như vậy lệnh đọc giá trị từ địa chỉ thuộc vùng PI sẽ thu được giá trị đúng bằng giá trị thực có ở cổng tại thời điểm thực hiện lệnh, khi thực hiện lệnh gửi một giá trị tới địa chỉ vùng PQ, giá trị đó được gửi trực tiếp đến cổng ra tương tự của Module. TRANG - 8 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  14. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 1 Hình 1.7: Trao đổi dữ liệu giữa CPU và Module mở rộng M P. HC thuat T 1.8 CẤU TRÚC CHƯƠNG TRÌNH PLC S7-300:Ky ham Su p Chương trình do người dùng viết cho ng DH được lưu trong vùng nhớ chương trình, S7-300 có 2 dạng với cấu trúc khác uyen © nhau: Truo an q - Lập trình tuyếnBtính: Toàn bộ chương trình điều khiển lưu trong 1 khối trong bộ nhớ. Dạng chương trình phù hợp với bài toán nhỏ, đơn giản. Khối được chọn ở đây là khối OB1. Đây là khối chứa các lệnh được thực hiện thường xuyên trong chu kỳ quét của PLC. Lệnh 1 Vòng quét Lệnh 2 OB1 … Lệnh n Hình 1.8: Lập trình tuyến tính - Lập trình có cấu trúc: Chương trình được chia thành từng phần nhỏ với các yêu cầu riêng biệt, mỗi phần có thể lưu trong một vùng nhớ khác nhau. Dạng này phù hợp với bài toán phức tạp, có nhiều yêu cầu khác nhau. TRANG - 9 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  15. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 1 PLC S7-300 có 4 loại khối cơ bản: o Khối OB (Organization Block): là khối tổ chức và quản lý chương trình điều khiển. Có nhiều loại OB với các chức năng khác nhau, chúng được phân biệt dựa vào số nguyên gán thêm phía sau. OB1, OB35, OB40… OB1 là khối luôn được CPU quét và thực hiện lặp lại các lệnh theo thứ tự từ trên xuống dưới. o Khối FC (Program Block): là khối chương trình với các chức năng riêng, giống như 1 chương trình con. Một chương trình có thể có nhiều khối FC, chúng được phân biệt dựa theo số nguyên gán thêm phía sau, FC1, FC2, … o Khối FB (Function Block): là 1 khối FC đặc biệt có khả năng trao đổi lượng dữ liệu lớn với các khối chương trình khác. Một chương trình có thể có nhiều khối FB, chúng được phân biệt dựa theo số nguyên gán thêm phía sau, FB1, FB2, … o Khối DB (Data Block): là khối chứa các dữ liệu cần thiết để thực hiện chương trình. Các tham số của khối này do người sử dụng tự đặt. Một HCM chương trình có thể có nhiều khối DB, chúng được phân biệt dựa theo số nguyên gán thêm phía sau, DB1, DB2, uat TP. y th ph am K nhau bằng các lệnh gọi khối, Chương trình trong các khối được liênu kết với g DH S ruon chuyển khối. n©T quye Ban 1.9 CÁC KHỐI OB ĐẶC BIỆT: Nếu OB1 là khối được thực hiện liên tục trong từng vòng quét thì các khối OB khác chỉ được thực hiện khi có tín hiệu báo ngắt tương ứng. Chương trình viết cho các khối này chính là các chương trình xử lý tín hiệu ngắt, bao gồm: - OB10 (Time of date interrupt): chương trình trong khối OB10 sẽ được thực khi giá trị của đồng hồ thời gian thực nằm trong một khoảng thời gian đã quy định. OB10 có thể gọi một lần hay nhiều lần cách đều nhau từng phút, từng giờ, từng ngày… - OB20 (Time delay interrupt): chương trình trong khối OB20 sẽ được thực hiện sau một koảng thời gian trễ đặt trước kể từ khi gọi chương trình hệ thống SFC32 để đặt thời gian trễ. - OB35 (Cyclic interrupt): chương trình trong OB35 sẽ được thực hiện cách đều nhau một khoảng thời gian nhất định. Mặc định thời gian này là 100ms, song ta có thể thay đổi nó trong bảng tham số của CPU nhờ phần mềm STEP7. - OB40 (Hardware interrupt): OB40 sẽ được thực hiện khi có tín hiệu ngắt từ ngoại vi đưa vào CPU thông qua cổng vào ra số onboard đặc biệt, hoặc thông qua Module SM, CP, FM. - OB80 (Cycle time fault): được thực hiện khi thời gian vòng quét vượt quá thời gian cực đại đã quy định (mặc định là 150ms) hoặc có tín hiệu ngắt gọi OB nào đó mà OB này chưa kết thúc ở lần gọi trước. TRANG - 10 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  16. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 1 - OB81 (Power supply fault): khi có lỗi về nguồn nuôi thì CPU sẽ gọi OB81. - OB82 (Diagnostic interrupt): được gọi khi có phát hiện có sự cố từ các Module vào/ra mở rộng. Các Module mở rộng này phải có khả năng tự kiểm tra. - OB85 (Not load fault): được gọi khi chương trình có sử dụng chế độ ngắt nhưng - chương trình ngắt lại không có trong OB tương ứng. - OB87 (Communication Fault): được gọi khi CPU thấy có lỗi truyền thông. - OB100 (Start up information): được thực hiện một lần khi CPU chuyển trạng thái từ STOP sang RUN. - OB121 (Synchronous error): được thực hiện khi CPU thấy lỗi logic trong chương trình như sai kiểu dữ liệu hoặc lỗi truy cập các khối DB, FC, FB không có trong CPU. - OB122 (Synchronous error): được thực hiện khi CPU phát hiện có, lỗi truy nhập Module trong chương trình, ví dụ chương trình có lệnh truy nhập Module vào/ra nhưng lại không tìm thấy Module này. M P. HC uat T K y th pham H Su ruo ng D n©T an quye B TRANG - 11 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  17. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 2 CHƯƠNG 2 : TẬP LỆNH CỦA PLC S7-300 1.1 CẤU TRÚC LỆNH VÀ TRẠNG THÁI KẾT QUẢ: Trong tài liệu ĐKLT 1 đã trình bày về các phương pháp lập trình cho PLC, gồm có ngôn ngữ lập trình dạng STL, LAD và FBD. Phần này sẽ trình bày chủ yếu về cấu trúc và kết quả của lệnh dạng STL. Một lệnh STL của PLC S7-300 gồm có: “Tên lệnh” + “Toán hạng”. Ví dụ: A I0.0 là lệnh nạp giá trị ngõ vào có địa chỉ I0.0 Trong đó: A là “Tên lệnh” I0.0 là “Toán hạng” Lưu ý: toán hạng có thể là dữ liệu hoặc là địa chỉ của một vùng nhớ nào đó. - Toán hạng là dữ liệu: o Dữ liệu logic M P. HC o Số nhị phân uat T K y th Số thập lục phân pham H Su o o Số nguyên kiểu INT (2 Truo ng D byte) © yen o Số nguyên kiểu qu Ban DINT (4 byte) o Số thực kiểu REAL o Dữ liệu về thời gian o Dữ liệu của bộ đếm, định thời o Dữ liệu kiểu ký tự - Toán hạng là địa chỉ nhớ: Địa chỉ trong bộ nhớ PLC S7-300 gồm 2 phần: phần chữ và phần số. Ví dụ: địa chỉ ngõ vào I0.5 Trong đó: o Phần chữ: chỉ vị trí và kích thước của vùng nhớ. o Phần số: chỉ địa chỉ của vùng nhớ trong miền đã được xác định. - Thanh ghi trạng thái: Khi thực hiện lệnh, CPU sẽ ghi lại trạng thái của phép tính trung gian cũng như ghi lại kết quả vào 1 thanh ghi đặc biệt 16 bit, gọi là thanh ghi trạng thái. Tuy nhiên chỉ có 9 bit thấp của thanh ghi này được sử dụng, có cấu trúc như sau: 8 7 6 5 4 3 2 1 0 BR CC1 CC0 OV OS OR STA RLO FC TRANG - 12 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  18. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 2 Trong đó: o FC (Fisrt Check): khi thực hiện các lệnh logic liên tiếp nhau gồm các phép tính ^ (VÀ), V (HOẶC), ĐẢO thì bit FC=1. Khi kết thúc các lệnh thì FC=0. Ví dụ: A I0.0 // FC=1 AN I1.0 //FC=1 = Q0.0 //FC=0 o RLO (Result of Logic Operation): thể hiện kết quả tức thời của phép tính logic vừa thực hiện. Ví dụ: A I0.0 Nếu trước khi thực hiện bit FC=0 thì có tác dụng chuyển nội dung ngõ vào I0.0 vào bit trạng thái RLO. Còn khi bit FC=1 thì có tác dụng thực hiện phép tính VÀ M(RLO ^ I0.0), kết HC quả được ghi trở lại vào RLO. uat TP. y th am K trị logic của tiếp điểm được chỉ STA (Status Bit): bit trạng thái, luôn ph giá o u có trong lệnh. ng DH S Truo n ©đều gán cho bit STA giá trị của ngõ vào I0.3. Ví dụ: cả hai lệnh ye qu sau Ban A I0.3 AN I0.3 o OR: ghi lại giá trị của phép tính VÀ cuối cùng được thực hiện để thực hiện phép tính HOẶC (V) sau đó. o OS (Overflow Store bit): ghi giá trị bit bị tràn. o OV (Overflow bit): bit báo kết quả phép tính bị tràn. o CCO và CC1 (Condition Code): hai bit báo trạng thái của kết quả phép tính với số nguyên, số thực, dịch chuyển hoặc phép tính logic trong ACCU. o BR (Binary Result bit): bit trạng thái cho phép liên kết giữa hai ngôn ngữ STL và LAD. Cho phép người lập trình viết một khối chương trình FB hoặc FC bằng STL, nhưng có thể gọi và sử dụng chúng trong chương trình khác viết bằng LAD. Để có mối liên kết này, cần phải kết thúc trong chương trình trong FB, FC bằng lệnh ghi giá trị vào BR: 1 nếu chương trình không có lỗi, 0 nếu chương trình có lỗi. Chú ý: Một chương trình viết bằng STL có thể gồm nhiều network. Mỗi network chứa một đoạn chương trình phục vụ một việc cụ thể. Ở đầu mỗi network , thanh ghi trạng thái TRANG - 13 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  19. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 2 nhận giá trị 0, chỉ sau khi thực hiện lệnh đầu tiên của network các bit trạng thái mới thay đổi theo phép tính. 1.2 NHÓM LỆNH LOGIC: - Lệnh gán: o STL: Cú pháp = Toán hạng là địa chỉ bit I, Q, M, L, D, T, C. Lệnh gán giá trị logic của RLO tới ô nhớ có địa chỉ được chỉ thị trong toán hạng. Lệnh tác động vào thanh ghi trạng thái như sau: M P. HC Tlệnh. huat Ký hiệu: (-) Chỉ nội dung bit không bị thay đổi theo Ky t ham (x) Chỉ nội dung bit bị thaypđổi theo lệnh. H Su ng D o LAD: © Truo uyen B an q = Khi giá trị logic của bit tại bằng 1 thì RLO có giá trị 1. Khi giá trị logic của bit tại bằng 0 thì RLO có giá trị bằng 0. - Lệnh gán có điều kiện giá trị 1: o STL: Cú pháp S Toán hạng là địa chỉ bit I, Q, L, M, D. Nếu RLO=1 lệnh sẽ ghi giá trị 1 váo ô nhớ có địa chỉ trong toán hạng. Lệnh tác động vào thanh ghi trạng thái như sau: TRANG - 14 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
  20. Truong DH SPKT TP. HCM http://www.hcmute.edu.vn ĐIỀU KHIỂN LẬP TRÌNH 2 CHƯƠNG 2 o LAD: Nếu RLO = 1 thì địa chỉ cụ thể được đặt ở mức 1 và duy trì ở trạng thái này cho đến khi nó bị xóa về 0 bằng lệnh reset. M P. HC - Lệnh gán có điều kiện giá trị 0: uat T K y th o STL: pham H Su Cú pháp R ruo ng D n©T quye bit I, Q, M, L, D. B n Toán hạng làađịa chỉ Nếu RLO=0, lệnh sẽ ghi giá trị 0 vào ô nhớ có địa chỉ trong toán hạng. Lệnh tác động vào thanh ghi trạng thái như sau: o LAD: Nếu RLO = 1 thì địa chỉ cụ thể được đặt ở mức 0 và duy trì ở trạng thái này cho đến khi nó đặt lên 1 bằng lệnh set. - Lệnh AND: o STL: TRANG - 15 Thu vien DH SPKT TP. HCM - http://www.thuvienspkt.edu.vn
ADSENSE
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2