TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT TPHCM KHOA ĐIỆN TỬ
BÀI GIẢNG: GIẢN G:
Đ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
MỤC LỤC CHƯƠNG I: PLC S7-300 1.1 Giới thiệu về PLC S7-300. S7-300.
1
1.2 Các Module của PLC S7-300 S7-300 1.3 Các Module hoạt động.
1 4
1.4 Các kiểu dữ liệu. 1.5 Cấu trúc bộ nhớ. 1.6 Chu kỳ quét của PLC S7-300 S7-300
5 5 7
1.7 Trao đổi dữ liệu giữa CPU và Module mở rộng. 1.8 Cấu trúc chương trình của PLC S7-300 1.9 Các khối OB đặc biệt
8 9 10
CHƯƠNG II: TẬP LỆNH CỦA S7-300 1.1 Cấu trúc lệnh và trạng thái kết quả 1.2 Nhóm lệnh logic
12 12 14
1.3 Nhóm lệnh đặc biệt 1.4 Nhóm lệnh so sánh 1.5 Nhóm lệnh toán học
20 23 28
1.6 Lệnh chuyển đổi số BCD sang số nguyên 1.7 Lệnh về Timer Timer 1.8 Lệnh về Counter.
29 30 40
CHƯƠNG III: MẠNG PROFIBUS- DP 3.1 Tổng quan 3.1.2 Kiến trúc giao thức và kỹ thuật truyền
47 47 48
3.1.3 Truy cập BUS 3.1.4 Dịch vụ truyền dữ lịêu 3.1.5 Cấu trúc bức điện
49 49 50
3.2 Profibus – DP 3.2.1 Cấu hình hệ thống và thiết bị 3.2.2 Đặc tính vận hành của hệ thống 3.2.3 Trao đổi dữ liệu giữa Master và Slaver
51 52 53 53
3.2.4 Đồng bộ hoá dữ liệu vào /ra
54
3.2.5 Tham số hoá và chuẩn đoán hệ thống 3.2.6 Giao tiếp trực tiếp giữa các Slave Slave
55 55
3.2.7 Chế độ đẳng thời 3.3 Giới thiệu Module EM-277 3.3.1 Giới thiệu
56 57 57
3.3.2 Các thông số của EM-277 3.3.3 Cấu trúc vùng nhớ của Master và Slave Slave 3.4 Kết nối mạng với module module EM-277
57 58 61
3.4.1 Thiết lập địa chỉ mạng cho khối EM-277 3.4.2 Truyền dữ liệu giữa trạm chủ và khối EM-277 3.4.3 Tệp cơ sở dữ liệu của thiết bị ( các tệp GSD) GSD) 3.4.5 Ứng dụng mạng Profibus –DP điều khiển thiết bị
61 61 64 64
CHƯƠNG IV : MẠNG MẠN G ASI 4.1 Giới thiệu về mạng ASI
75 75
4.1.1 Khái niệm 4.1.2 Giao tiếp ASI
75 77
4.1.3 Hoạt động của mạng ASI
82
4.1.4 Ứng dụng mạng ASI 4.2 Các AS-I AS-I MASTER
84 86
4.2.1 Giới thiệu 4.2.2 AS-I Master PLC S7-200 S7-200
86 86
4.2.3 AS-I Master cho PLC S7-300 S7-300 4.2.4 AS-I Gateway 4.3 Các thành phần mạng ASI
89 91 92
4.3.1 Cáp AS-I AS-I 4.3.2 Các Module AS-I
92 93
4.3.3 Lắp đặt Module Module AS-I
97
4.3.4 AS-I Repeater/Extender Repeat er/Extender 4.3.5 Bộ định địa chỉ
97 99
4.4 Chế độ AS-I AS-I MASTER 4.4.1 Nguyên Nguyên tắc Master/Slaver trong AS-I
100 100
4.4.2 Chuyển đổi dữ liệu 4.5 Hệ thống AS-I 4.5.1 Thiết lập hệ thống AS-I
102 108 108
4.5.2 Hệ thống truyền dữ liệu AS-I 4.5.3 Cấu trúc bức điện
109 110
4.6 AS-I MASTER MODULE CP 243-2 4.6.1 Giới thiệu module CP 243-2 4.6.2 Đặc tính kỹ thuật của Module CP 243-2
113 113 115
CHƯƠNG V: PHẦN MỀM WINCC 5.1 Giới thiệu chung về WinCC
129 129
5.1.1 Khái niệm 5.1.2 Đặc điểm 5.1.3 Ưu điểm của Version WinCC 6.0 5.2 Các độ Poject trong WINCC
129 129 131 131
5.2.1 Single-user Project 5.2.2 Multi-user Project 5.2.3 Client Project
131 132 132
5.3 Sử dụng WINCC 5.3.1 Thiết lập Driver kết nối giữa WinCC và PLC
133 133
5.3.2 Định nghĩa các Tag
134
5.3.3 Tạo giao diện người dùng 5.3.4 Tạo ảnh động và hiệu ứng cho đối tượng
134 136
5.3.5 Biểu diễn giá trị của quá trình Logging Editor 5.3.6 Thiết lập cảnh báo và thông báo lỗi
136 137
5.3.7 Tạo Function và Action 5.3.8 Thiết lập Report 5.3.9 Chạy chương trình WinCC
138 138 139
5.4 Điều khiển và giám sát qua mạng PROFIBUS 5.4.1 Yêu cầu
140 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 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
141 146
TÀI LIỆU THAM KHẢO [1] [2] [3] [4] [5] [6] [7] [8]
Nguyễn Doãn Phước, tự động hóa với Simatic S7-300, NXB KHKT, 2006 Hoàng Minh Sơn, Mạng truyền thông công nghiệp , NXB KHKT, 2001. Trần Thu Hà, Tự động hoá trong công nghiệp với WinCC, NXB Hồng Đức, 2007. TT Việt Đức - ĐH Sư phạm Kỹ thuật Tp.HCM, SIMATIC S7-300 Điều khiển hệ thống. 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. Siemens, AS-Interface – Introdution and Basic information, 2000. Siemens, S7-300 Programmable Controller Hardware and installation. Internet.
Đ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 logic khả trìnhcỡ trung bình do hãng Siemens 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 đíc h tăng tính mềm dẻo trong cá c ứng dụng thực tế, các đối tượng điều khiển của một trạm S7-300 được chế tạo theo Module. Các Module gồm có: Module CPU, nguồn, ngõ vào/ra số, tương tự, mạng, …Số lượng Module nhiều hay ít tùy vào yêu cầu thực tế, song tối thiểu bao giờ cũng có một 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ức năng chuyên dụng như PID, điều khiển động cơ,… chúng được 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
ĐIỀU KHIỂN LẬP TRÌNH 2
-
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:
CPU 312 IFM
-
CHƯƠNG 1
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 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 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. DO (Digital Output): Module mở rộng các cổng ra số. Số các cổng ra số o mở rộng có thể là 8, 16 hoặc 32 tuỳ thuộc vào từng loại Module. DI/DO (Digital input/Digital output): Module mở rộng các cổng vào/ra o 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
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 1
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. AI/AO (Analog input/Analog output): Module mở rộng vào/ra tương tự. o 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… CP (Communication Module): Module phục vụ truyền thông trong mạng o giữa các bộ PLC với nhau hoặc giữa PLC với máy tính. Hình sau minh họa một số Module mở rộng của PLC S7-300: o
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
Đ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ý. MRES: Chức năng reset hệ thống (Module Reset o 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 5. Cổng giao tiếp MPI 6. Ngăn để pin
-
-
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. FRCE: báo ít nhất có một ngỏ vào/ra đang bị cưỡng bức hoạt động. o 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. Đầ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 o tiếp qua cổng MPI. o Đầu nối điện 24V: cung cấp nguồn cho CPU.
TRANG - 4
Đ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 DATE: biểu diễn thời gian theo năm/tháng/ngày CHAR: biểu diễn ký tự (tối đa 4 ký tự). 1.5 CẤU TRÚC BỘ NHỚ: 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
Đ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. FC (Function): miền chứa chương trình con được tổ chức thành hàm, có o 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ương trình (OB, FB, FC, SFC, SFB) đang được CPU thực hiện. Tại một thời điểm nhất định vùng nhớ này chỉ chứa một khối chương trình. Sau khi thực hiện khối chương trình này xong thì nó sẽ bị CPU xóa khỏi work memory và nạp vào khối chương trình kế tiếp đến lượt thực hiện. 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. Miền Q: (Process image output): miền bộ đệm các cổng ra số. Khi kết thúc o 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
ĐIỀU KHIỂN LẬP TRÌNH 2
o
o
o
o
o
CHƯƠNG 1
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. 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. 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. 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). 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 lệnh truy nhập Module tương tự (đọc hoặc gửi giá trị) đều có tác dụng trực tiếp tới cổng vật lý.
1.6 CHU KỲ QUÉT CỦA PLC S7-300: 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
Đ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. 1.7 TRAO ĐỔI DỮ LIỆU GIỮA CPU VÀ MODULE MỞ RỘNG: Sự trao đổi dữ liệu giữa CPU với các Module mở rộng trong một trạm PLC thông qua bus nội bộ. - 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
Đ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 1.8 CẤU TRÚC CHƯƠNG TRÌNH PLC S7-300: Chương trình do người dùng viết cho S7-300 được lưu trong vùng nhớ chương trình, có 2 dạng với cấu trúc khác nhau: Lập trình tuyến tí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. ệnh 1
L
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
Đ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 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, Chương trình trong các khối được liên kết với nhau bằng các lệnh gọi khối, chuyển khối. 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
Đ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.
TRANG - 11
Đ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 o Số nhị phân o Số thập lục phân o Số nguyên kiểu INT (2 byte) o Số nguyên kiểu 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 BR
7 CC1
6 CC0
5 OV
4 OS TRANG - 12
3 OR
2 STA
1 RLO
0 FC
Đ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À (RLO ^ I0.0), kết quả được ghi trở lại vào RLO. o STA (Status Bit): bit trạng thái, luôn có giá trị logic của tiếp điểm được chỉ trong lệnh. Ví dụ: cả hai lệnh sau đều gán cho bit STA giá trị của ngõ vào I0.3. 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
Đ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:
o
Ký hiệu: (-) Chỉ nội dung bit không bị thay đổi theo lệnh. (x) Chỉ nội dung bit bị thay đổi theo lệnh. LAD:
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
ĐIỀU KHIỂN LẬP TRÌNH 2
o
CHƯƠNG 2
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. -
Lệnh gán có điều kiện giá trị 0: o STL: Cú pháp R Toán hạng là địa chỉ bit I, Q, M, L, D. 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
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
Cú pháp A Toán hạng là dữ liệu kiểu BOOL hoặc địa chỉ bit I, Q, M, L, D, T, C. Nếu FC = 0 lệnh sẽ gán giá trị logic của toán hạng vào RLO. Ngược lại khi FC = 1 lệnh sẽ thực hiện phép tính AND RLO với toán hạng và ghi lại kết quả vào RLO. Lệnh tác động vào thanh ghi trạng thái như sau:
o
LAD:
Khi giá trị logic hai địa chỉ bằng 1 thì RLO có giá trị 1. Nếu có ít nhất 1 trong 2 ngõ vào xuống mức 0 thì RLO có giá trị bằng 0. -
Lệnh AND NOT: o STL: Cú pháp AN Toán hạng là dữ liệu kiểu BOOL hoặc địa chỉ bit I, Q, M, L, D, T, C. Nếu FC = 0 lệnh sẽ gán giá trị logic nghịch đảo của toán hạng vào RLO. Ngược lại khi FC =1 nó sẽ thực hiện phép tính AND RLO với giá trị nghịch đảo của toán hạng và ghi lại kết quả vào RLO. Lệnh tác động vào thanh ghi trạng thái như sau:
TRANG - 16
ĐIỀU KHIỂN LẬP TRÌNH 2
o
CHƯƠNG 2
LAD:
Với:
-
Lệnh OR: o STL: Cú pháp O Toán hạng là dữ liệu kiểu BOOL hoặc địa chỉ bit I, Q, M, L, D, T, C. Nếu FC = 0 lệnh sẽ gán giá trị logic của toán hạng vào RLO. Nếu FC = 1 nó thực hiện phép tính OR RLO với toán hạng và ghi lại kết quả vào RLO. Lệnh tác động vào thanh ghi trạng thái như sau:
o
LAD:
RLO có giá trị 1 khi có ít nhất một trong hai tín hiệu tại hai địa chỉ ở mức 1. RLO có giá trị 0 khi cả hai tín hiệu ngõ vào đều xuống mức 0.
TRANG - 17
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 2
Lệnh OR NOT: o STL: Cú pháp ON Toán hạng là dữ liệu kiểu BOOL hoặc địa chỉ bit I, Q, M, L, D, T, C. Nếu FC=0 lệnh sẽ gán giá trị logic nghịch đảo của toán hạng vào RLO. Nếu FC=1 nó thực hiện phép tính OR RLO với giá trị nghịch đảo của toán hạng và ghi lại kết quả vào RLO. Lệnh tác động vào thanh ghi trạng thái như sau:
o
LAD:
Với:
-
Lệnh AND biểu thức: o STL: Cú pháp A( ) Lệnh không có toán hạng. Nếu FC = 0 lệnh sẽ gán giá trị logic của biểu thức trong dấu ngoặc sau nó vào RLO. Nếu FC = 1 nó sẽ thực hiện phép tính AND giữa RLO với giá trị logic của biểu thức trong dấu ngoặc sau nó và ghi lại kết quả vào RLO . Lệnh tác động vào thanh ghi trạng thái như sau:
TRANG - 18
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
Ví dụ: Thực hiện Q4.0 = (I0.2 v I0.3) ^ (I0.4 v I0.5). A( O I0.2 O I0.3 ) A( O I0.4 O I0.5 ) = Q4.0 o
-
LAD:
Lệnh OR biểu thức: o STL: Cú pháp O( ) Lệnh không có toán hạng. Nếu FC = 0 lệnh sẽ gán giá trị logic của biểu thức trong dấu ngoặc sau nó vào RLO. Nếu FC = 1 nó sẽ thực hiện phép tính OR giữa RLO với giá trị của biểu thức trong dấu ngoặc sau nó và ghi lại kết quả vào RLO. Lệnh tác động vào thanh ghi trạng thái như sau:
TRANG - 19
ĐIỀU KHIỂN LẬP TRÌNH 2
o
CHƯƠNG CHƯƠNG 2
Ví dụ: Thực hiện Q4.0 = I0.2 v (I0.4 v I0.5) A I0.2 O( AN I0.4 A I0.5 ) = Q4.0 LAD:
1.3 NHÓM LỆNH TIẾP ĐIỂM ĐẶC BIỆT: Lệnh ghi giá trị logic 1 vào RLO: o STL: Cú pháp SET Lệnh không có toán hạng và có tác dụng ghi 1 vào RLO. Lệnh tác động vào thanh ghi trạng thái như sau:
o
-
LAD: lệnh không thực hiện.
Lệnh ghi giá trị logic 0 vào RLO: o STL: Cú pháp CLR Lệnh không có toán hạng và có tác dụng ghi 1 vào RLO. Lệnh tác động vào thanh ghi trạng thái như sau:
o
LAD: lệnh không thực hiện.
TRANG - 20
ĐIỀU KHIỂN LẬP TRÌNH 2
-
Lệnh đảo giá trị RLO: o STL: Cú pháp NOT Lệnh không có toán hạng và có tác dụng đảo giá trị RLO. Lệnh tác động vào thanh ghi trạng thái như sau:
o
-
CHƯƠNG CHƯƠNG 2
LAD:
Lệnh phát hiện xung cạnh lên: o STL: Cú pháp FP Toán hạng là địa chỉ I, Q, M, L, D và được sử dụng như một biến cờ để ghi lại giá trị của RLO tại vị trí này trong chương trình. RLO sẽ có giá trị trong vòng quét khi có sườn lên trong RLO. Lệnh tác động váo thanh ghi trạng thái như sau:
o
LAD:
TRANG - 21
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG CHƯƠNG 2
Khi RLO thay đổi từ 0 lên 1 kết quả của lệnh kiểm tra FB ở trạng thái 1 trong một vòng quét. Để hệ thống phát hiện được sự thay đổi cạnh lên thì RLO phải được lưu trữ trong 1 bit nhớ FB hoặc bit dữ liệu . Nếu giá giá trị RLO RLO trước đó lưu lưu trữ trong có giá giá trị 0 và RLO ở vòng quét hiện tại có giá trị 1 thì kết quả RLO của lệnh có giá trị 1 trong vòng quét. -
Lệnh phát hiện xung cạnh xuống: o STL: Cú pháp FN Toán hạng là địa chỉ I, Q, M, L, D và được sử dụng như 1 biến cờ để ghi lại giá trị của RLO tại vị trí này trong chương trình. RLO sẽ có giá trị trong vòng quét khi có sườn xuống trong RLO. Lệnh tác động vào thanh ghi trạng thái như sau:
o
LAD:
Khi RLO thay đổi từ 1 xuống 0 kết quả của lệnh kiểm tra FB ở trạng thái trong 1 vòng quét. Để hệ thống phát hiện được sự thay đổi cạnh lên thì RLO phải được được lưu trữ trong một bit bit nhớ FB hoặc hoặc bit bit dữ liệu liệu . Nếu giá giá trị RLO RLO trước đó lưu lưu trữ trong có giá giá trị 0 và RLO ở vòng quét hiện tại có giá trị 1 thì kết quả RLO của lệnh có giá trị 1 trong vòng quét.
TRANG - 22
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
1.4 NHÓM LỆNH SO SÁNH: So sánh số nguyên 16 bit:
TRANG - 23
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 2
So sánh số nguyên 32 bit:
TRANG - 24
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 2
So sánh số thực:
TRANG - 25
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
1.5 NHÓM LỆNH TOÁN HỌC: Thực hiện với số nguyên 16 bit:
TRANG - 26
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
-
Thực hiện với số nguyên 32 bit:
-
Thực hiện với số thực:
TRANG - 27
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
TRANG - 28
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
1.6 LỆNH CHUYỂN ĐỔI BCD – SỐ NGUYÊN:
TRANG - 29
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
1.7 LỆNH VỀ TIMER: 1.7.1 Giới thiệu Timer: Bộ thời gian Timer là bộ tạo thời gian trễ T mong muốn giữa tín hiệu logic ngõ vào và tín hiệu logic ngõ ra. S7 300 có 5 loại timer khác nhau. Tất cả 5 loại Timer này cùng bắt đầu tạo thời gian trễ tín hiệu kể từ thời điểm kích của tín hiệu đầu vào, tức là khi tín hiệu đầu vào chuyển trạng thái, được gọi là thời điểm timer được kích. Thời gian trễ T mong muốn được khai báo với timer bằng một word 16 bit bao gồm 2 thành phần: Độ phân giải: timer của S7 300 có 4 chế độ phân giải: 10ms, 100ms, 1s và 10s. Một số nguyên BCD trong khoảng 0 ÷ 999 được gọi là PV (reset value _ giá trị đặt trước). Thời gian trễ T mong muốn tính như sau: T = Độ phân giải *PV
Bit 14, 15 không sử dụng. Bit 13, 12 dùng để đặt độ phân giải. Bit 0 đến bit 11 là giá trị PV dưới dạng BCD (0< PV < 999). Ngay tại thời điểm kích timer, giá trị PV được chuyển vào thanh ghi 16 bit của T_word (gọi là thanh ghi CV, viết tắt current value, giá trị tức thời). Timer sẽ ghi nhớ khoảng thời gian trôi qua kể từ khi được kích bằng cách giảm dần một cách tương ứng nội dung thanh ghi CV. Nếu nội dung thanh ghi trở về bằng 0 thì timer đã đạt được thời gian trễ mong muốn T và điều này sẽ được báo ra ngoài bằng cách đổi trạng thái tín hiệu ngõ ra.
TRANG - 30
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
CPU 314 có 128 timer được đánh số từ 0 đến 127. Một timer được đặt tên là Tx, trong đó x là số hiệu của timer (0 ≤ x ≤ 127). Ký hiệu Tx cũng đồng thời là địa chỉ hình thức của thanh ghi CV (T- word) và của đầu ra T-bit của timer đó. Tuy chúng có cùng địa chỉ hình thức, song T-word và T-bit vẫn được phân biệt với nhau nhờ kiểu lệnh sử dụng với toán hạng Tx .Khi dùng lệnh làm việc với từ, Tx được hiểu là địa chỉ của Tword, ngược lại khi sử dụng lệnh làm việc với tiếp điểm Tx sẽ được hiểu là địa chỉ của T-bit. Một timer đang trong chế độ làm việc (sau khi được kích) có thể được đưa về chế độ chờ khởi động ban đầu, tức là chờ sườn lên của tín hiệu đầu vào. Công việc này gọi là reset timer. Tín hiệu reset timer được gọi là tín hiệu xoá và khi tín hiệu xoá có giá trị bằng 1 timer sẽ không làm việc. Tại thời điểm xuất hiện sườn lên của tín hiệu xoá, T_word và T-bit được xoá về 0, tức là thanh ghi CV được đặt về 0 và tín hiệu đầu ra có trạng thái 0. 1.7.2 Khai báo sử dụng Timer: Khai báo sử dụng timer gồm có 5 bước: o Khai báo tín hiệu enable nếu muốn sử dụng tín hiệu chủ động kích. o Khai báo tín hiệu đầu vào. o Khai báo tín hiệu trễ mong muốn. o Khai báo loại timer được sử dụng. o Khai báo tín hiệu xoá timer nếu muốn. -
Khai báo tín hiệu enable: Cú pháp A <Địa chỉ bit> FR Toán hạng thứ nhất “Địa chỉ bit” xác định tín hiệu sẽ được sử dụng làm tín hiệu chủ động kích cho timer có tên trong toán hạng thứ hai.
-
Khai báo tín hiệu đầu vào: Cú pháp A <Địa chỉ bit> “Địa chỉ bit” trong toán hạng xác định tín hiệu đầu vào cho timer. Ví dụ: A I2.0 FR T1 A I2.1
TRANG - 31
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
-
Khai báo thời gian trễ mong muốn: Cú pháp L “Hằng số “ trong toán hạng xác định thời gian trễ T đặt trước cho timer. Hằng số này có hai dạng: o Dạng dữ liệu thời gian trực tiếp: S5T#h_m_s_ms L S5T#00h05m20s00ms có thời gian trễ là 5 phút 20 giây. o Dạng khai báo theo độ phân giải: L W#16#2127 có thời gian trễ là 127 giây.
-
Khai báo loại timer: S7-300 có 5 loại timer được khai báo theo các lệnh: SD: Timer đóng mạch chậm Cú pháp SD Thời gian giữ trễ được bắt đầu tính từ khi có sườn lên của tín hiệu đầu vào (hoặc khi có sườn lên của tín hiệu enable đồng thời tín hiệu vào bằng 1), tức là ở ngay thời điểm đó giá trị PV (giá trị đặt trước) được chuyển vào thanh ghi T-word (CV giá trị tức thời). Trong khoảng thời gian trễ T-bit có giá trị 0. Khi hết thời gian trễ, T-bit có giá trị bằng 1. Như vậy T-bit có giá trị 1 khi T-word = 0 hay CV = 0. Khoảng thời gian trễ chính là khoảng thời gian giữa thời điểm xuất hiện sườn lên của tín hiệu đầu vào và sườn lên của T-bit. Khi tín hiệu vào bằng 0, T-bit và T-word cùng nhận giá trị 0. o
SS: Timer đóng mạch chậm có nhớ Cú pháp : SS Thời gian giữ trễ được bắt đầu tính từ khi có sườn lên của tín hiệu đầu vào (hoặc khi có sườn lên của tín hiệu enable đồng thời tín hiệu vào bằng 1), tức là ở ngay thời điểm đó giá trị PV (giá trị đặt trước) được chuyển vào thanh ghi T-word (CV giá trị tức thời). Trong khoảng thời gian trễ T-bit có giá trị 0. Khi hết thời gian trễ, tức là khi T-word = 0, T-bit có giá trị bằng 1. Khoảng thời gian trễ chính là khoảng thời gian giữa thời điểm xuất hiện sườn lên của tín hiệu đầu vào và sườn lên của T-bit. Với bộ timer trễ theo sườn lên có nhớ, thời gian trễ vẫn được tính cho dù lúc đó tín hiệu đầu vào đã về 0. o
TRANG - 32
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
SP: Timer Xung Cú pháp SP Thời gian giữ trễ được bắt đầu tính từ khi có sườn lên của tín hiệu đầu vào (hoặc khi có sườn lên của tín hiệu enable đồng thời tín hiệu vào bằng 1), tức là ở ngay thời điểm đó giá trị PV (giá trị đặt trước) được chuyển vào thanh ghi T-word (CV giá trị tức thời). Trong khoảng thời gian trễ ,tức là khi T-word có giá trị ≠ 0, T-bit có giá trị bằng 1. Ngoài thời gian trễ T-bit có giá trị bằng 0. Nếu chưa hết thời gian trễ mà tín hiệu đầu vào về 0 thì giá trị T-bit và t-word cũng về 0. o
SE: Timer giữ độ rộng xung Cú pháp SE Thời gian giữ trễ được bắt đầu tính từ khi có sườn lên của tín hiệu đầu vào (hoặc khi có sườn lên của tín hiệu enable đồng thời tín hiệu vào bằng 1), tức là ở ngay thời điểm đó giá trị PV (giá trị đặt trước) được chuyển vào thanh ghi T-word (CV giá trị tức thời). Trong khoảng thời gian trễ, tức là khi T-word có giá trị ≠ 0, T-bit có giá trị bằng 1. Ngoài thời gian trễ T-bit có giá trị bằng 0. Nếu chưa hết thời gian trễ mà tín hiệu đầu vào về 0 thì thời gian trễ vẫn được tính tiếp tục, tức là T-bit và T-word không về 0 theo tín hiệu đầu vào. o
SF: Timer mở mạch chậm Cú pháp SF Thời gian giữ trễ được bắt đầu tính từ khi có sườn lên của tín hiệu đầu vào (hoặc khi có sườn lên của tín hiệu enable đồng thời tín hiệu vào bằng 1), tức là ở ngay thời điểm đó giá trị PV (giá trị đặt trước) được chuyển vào thanh ghi T-word (CV giá trị tức thời). Trong khoảng thời gian trễ, tức là khi T-word có giá trị ≠ 0, T-bit có giá trị bằng 1. Ngoài thời gian trễ T-bit có giá trị bằng 0. o
-
Khai báo tín hiệu xóa (reset) Cú pháp A <Địa chỉ bit> R Toán hạng thứ nhất “Địa chỉ bit” xác định tín hiệu sẽ được sử dụng làm tín hiệu chủ động xóa cho timer có tên trong toán hạng thứ hai. Khi tín hiệu xóa bằng 1, T-word (thanh ghi CV) và T-bit cùng đồng thời được đưa về 0. Nếu tín hiệu xóa bằng 0, timer sẽ chờ được kích lại.
TRANG - 33
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
1.7.3 Khai báo Timer trong LAD và FBD: Timer đóng mạch chậm (SD):
Bảng khai báo thông số Timer đóng chậm:
Giản đồ thời gian Timer đóng chậm:
Khởi động: Timer khởi động khi RLO tại ngõ vào S thay đổi từ 0 lên 1. Timer bắt đầu chạy với giá trị thời gian rõ ràng đặt tại ngõ vào TV miễn là trạng thái ngõ vào S =1. Xoá: Khi RLO reset ngõ vào “R” là 1, thì giá trị thời gian hiện hành và độ phân giải bị xoá và ngõ ra Q ở trạng thái Reset.
TRANG - 34
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
Ngõ ra digital: Giá trị thời gian hiện hành có thể đọc như một số nhị phân tại ngõ ra BI và BCD. Giá trị thời gian hiện hành là giá trị ban đầu của TV trừ đi giá trị thời gian đã hoạt động của timer, tính từ khi timer được khởi động. Ngõ ra Binary: Tín hiệu tại ngõ ra “Q” là “1”, sau khi timer đã chạy hết, không có lỗi và ngõ vào “S” có tín hiệu ở trạng thái “1”. Khi timer đang hoạt động, nếu tín hiệu ở ngõ vào “S” thay đổi từ “1” xuống “0”, thì timer ngưng hoạt động. Trong trường hợp này ngõ ra Q có trạng thái tín hiệu 0. -
Timer đóng mạch chậm có nhớ (SS):
Với các thông số, kiểu dữ liệu và toán hạng khai báo giống như dang LAD và FBD của timer đóng mạch chậm (SD). Giản đồ thời gian Timer đóng chậm có nhớ:
Khởi động: Timer khởi động khi RLO ở ngõ vào S thay đổ từ 0 đến 1. Timer bắt đầu hoạt động với giá trị thời gian xác định rõ ràng tại ngã vào TV và tiếp tục hoạt động thậm chí nếu tín hiệu ngõ vào S thay đổi thành 0 trong suốt thời gian đó. Nếu tín hiệu tại ngõ vào S thay đổi từ 0 đến 1 trong khi timer đang hoạt động, thì timer sẽ khởi động mới lại. Reset: Khi RLO tại ngõ vào R là 1 thì giá trị thời gian hiện hành và độ phân giải bị xoá và ngõ ra Q ở trạng thái Reset. TRANG - 35
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
Ngõ ra nhị phân: Trạng thái tín hiệu ngõ ra Q là 1 sau khi timer đã hoạt động không bị lỗi, thì không cần chú ý đến trạng thái tín hiệu ngõ vào S là 1 hay 0. -
Timer mở mạch chậm (OFF Delay, SF):
Giản đồ thời gian của Timer mở chậm:
Khởi động: Timer khởi động khi RLO ở ngõ vào “S” thay đổi từ “1” đến “0”. Sau khi timer đã hoạt động xong, thì ngõ ra Q sẽ chuyển đổi về “0”. Nếu trạng thái tín hiệu ngõ vào “S” thay đổi từ 0 đến 1 trong khi timer đang hoạt động, thì timer sẽ dừng và thời gian kế tiếp trạng thái tín hiệu của S thay đổi từ 1 thành 0 nó sẽ bắt đầu lại từ đầu. Reset : Khi RLO ngõ vào R là 1 thì giá trị thời gian hiện hành và độ phân giải bị xoá và ngõ ra Q bị reset. Nếu cả hai ngõ vào (S và R ) có cùng trạng thái tín hiệu 1, thì ngõ ra Q không được set cho đến khi ngõ reset trở về 0. Ngõ ra nhị phân: Ngõ ra Q được kích hoạt khi RLO tại ngõ vào S thay đổi từ 0 dến 1. Nếu ngõ vào S không được kích hoạt thì ngõ ra Q vẫn có trạng thái tín hiệu 1 cho đến khi thời gian lập trình được hoàn thành.
TRANG - 36
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 2
Timer Xung (Pulse, SP):
Giản đồ thời gian của Timer xung:
Khởi động: Timer khởi động khi RLO tại ngõ vào S thay đổi từ 0 đến 1. Ngõ ra Q cũng đặt thành 1. Reset: Ngõ ra Q bị reset khi: Timer đã hoạt động xong, hoặc Tín hiệu start chuyển đổi từ 1 đến 0, hoặc Ngõ vào reset R có trạng thái tín hiệu 1. -
Timer giữ độ rộng xung (SE):
TRANG - 37
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
Giản đồ thời gian Timer giữ độ rộng xung:
Khởi động : Timer hoạt động khi RLO tại ngõ vào S thay đổi từ 0 đến 1. Ngõ ra Q cũng được set thành 1. Trạng thái tín hiệu ngõ ra Q cũng vẫn là 1, mặc dù tín hiệu ngõ vào S thay đổi thành 0. Nếu tín hiệu ngõ vào start lại thay đổi từ 0 đến 1 trong khi timer đang hoạt động, thì timer sẽ khởi động lại. Reset: Ngõ ra Q bị reset khi: Timer đã hoạt động xong, hoặc Ngõ vào reset R có trạng thái tín hiệu 1. 1.7.4 Sử dụng Timer theo lệnh bit: Tất cả những chức năng timer cũng có thể đựơc khởi động với những lệnh bit đơn giản. Sự giống nhau và khác nhau giữa phương pháp và những chức năng timer được đưa ra như sau: Giống nhau: o Điều kiện khởi động ngõ vào S. o Đặt trước giá trị thời gian. o Điều kiện reset ngõ vào R . o Đáp ứng tín hiệu tại ngõ ra Q. -
Khác nhau (trong LAD và FBD) Không có khả năng kiểm tra giá trị hiện hành, không có ngõ ra BI và BCD.
TRANG - 38
ĐIỀU KHIỂN LẬP TRÌNH 2
-
Ví dụ: Dạng LAD:
-
Dạng FBD:
CHƯƠNG 2
TRANG - 39
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 2
Dạng STL: Network 1: A I0.0 L S5T#5S SD T4 Netwok 2: A T4 = Q8.0 Network 3: A I0.1 R T4 Timer T4 sẽ được kích nếu I0.0 lên mức 1. Sau 5s, T4 đóng làm Q8.0 lên mức 1. Timer được reset nếu I0.1 lên mức 1.
1.8 LỆNH VỀ COUNTER: 1.8.1 Giới thiệu Counter: Counter là bộ đếm thực hiện chức năng đếm sườn xung của các tín hiệu đầu vào. S7300 có tối đa 256 counter (tuỳ loại CPU), ký hiệu Cx, trong đó x là số nguyên trong khoảng từ 0 đến 255. Những bộ đếm của S7-300 đều có thể đồng thời đếm tiến theo sườn lên của một tín hiệu vào thứ nhất, được ký hiệu là CU (count up) và đếm tiến theo sườn lên của tín hiệu vào thứ hai, ký hiệu CD (count down). Thông thường bộ đếm chỉ các sườn lên của tín hiệu CU và CD, song cũng có thể được mở rộng để đếm cả mức tín hiệu của chúng bằng cách sử dụng thêm tín hiệu enable. Nếu có tín hiệu enable, bộ đếm sẽ đếm tiến khi xuất hiện sườn lên của tín hiệu enable đống thời tại thời điểm CU có mức tín hiệu 1. Tương tự bộ đếm sẽ đếm lùi khi có sườn lên của tín hiệu enable và tại thời điểm CD có mức tín hiệu 1. Số sườn xung đếm được ghi vào thanh ghi 2 byte của bộ đếm, gọi là thanh ghi C word. Nội dung của C-Word được gọi là giá trị đếm tức thời của bộ đếm và ký hiệu bằng CV (current value). Bộ đếm báo trạng thái của C-Word ra ngoài thông qua chân C-bit của nó. Nếu CV ≠ 0, C-Bit có giá trị 1. Ngược lại khi CV = 0 C-bit nhận giá trị 0. CV luôn là 1 giá trị không âm. Bộ đếm sẽ không đếm lùi khi CV = 0. Khác với timer, giá trị đặt trước PV của bộ đếm chỉ được chuyển vào C-Word tại thời điểm xuất hiện sườn lên của tín hiệu đặt (set S). Bộ đếm có thể được xoá chủ động bằng tín hiệu xóa (reset). Khi bộ đếm được xóa, cả C-Word và C-bit đều nhận giá trị 0.
TRANG - 40
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
1.8.2 Khai báo sử dụng Counter: Sử dụng Counter cần khai báo các thông số sau: o Khai báo tín hiệu enable nếu muốn sử dụng tín hiệu chủ động kích đếm. o Khai báo tín hiệu đầu vào CU được đếm lên. o Khai báo tín hiệu đầu vào CD được đếm xuông. o Khai báo tín hiệu đặt set và giá trị đặt trước PV. o Khai báo tín hiệu xóa reset. Khai báo tín hiệu enable: Cú pháp A <Địa chỉ bit> FR Toán hạng thứ nhất “Địa chỉ bit" xác định tín hiệu sẽ được sử dụng làm tín hiệu kích đếm cho bộ đếm có tên trong toán hạng thứ hai. Tên của bộ đếm có dạng Cx, với 0≤ x≤ 255. -
Khai báo tín hiệu đầu vào CU: Cú pháp A <Địa chỉ bit> CU Toán hạng thứ nhất “Địa chỉ bit” xác định tín hiệu mà sườn lên của nó được bộ đếm với tên cho trong toán hạng thứ hai đếm tiến. Mỗi khi xuất hiện một sườn lên của tín hiệu, bộ đếm sẽ tăng nội dung thanh ghi Cword (CV) lên 1 đơn vị.
-
Khai báo tín hiệu đầu vào CD: Cú pháp A <Địa chỉ bit> CD Toán hạng thứ nhất “Địa chỉ bit” xác định tín hiệu mà sườn lên của nó được bộ đếm với tên cho trong toán hạng thứ hai đếm lùi. Mỗi khi xuất hiện mốt sườn lên của tín hiệu, bộ đếm sẽ giảm nội dung thanh ghi Cword (CV) xuống 1 đơn vị.
-
Khai báo tín hiệu đặt SET: Cú pháp A <Địa chỉ bit> L C# S
TRANG - 41
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
Toán hạng thứ nhất “Địa chỉ bit” xác định tín hiệu mỗi khi xuất hiện sườn. Hằng số cho trong lệnh thứ hai dưới dạng BCD sẽ được chuyển vào thanh ghi C_word của bộ đếm có tên trong toán hạng thứ 3. -
Khai báo tín hiệu đặt RESET: Cú pháp A <Địa chỉ bit> R Toán hạng thứ nhất “Địa chỉ bit” xác định tín hiệu mỗi khi xuất hiện sườn lên. Thanh ghi C-word của bộ đếm có tên trong toán hạng thứ hai sẽ được xóa về 0.
1.8.3 Khai báo counter trong LAD và FBD: Counter đếm lên:
Bảng khai báo các thông số của Counter:
Đếm lên: Khi RLO tại ngõ vào CU thay đổi từ 0 đến 1 giá trị đếm hiện hành tăng lên 1. ( tối đa = 999). Set bộ đếm: Khi RLO tại ngõ vào S thay đổi từ 0 lên 1 bộ đếm được đặt với giá trị tại ngõ vào PV.
TRANG - 42
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
Reset bộ đếm: Khi RLO =1 counter được đặt về 0. Khi điều kiện reset được thoả mãn thì counter không thể đặt và không thể đếm. PV: Giá trị đặt trước từ (0 ..999) được xác định tại ngõ vào PV ở dạng BCD, PV là hằng số đếm (C#...) qua giao tiếp dữ liệu dạng mã BCD. CV/CV-BCD: Giá trị counter có thể là một số nhị phân hoặc số BCD được nạp vào ô tích luỹ và từ đó chuyển tới các địa chỉ khác. Q: Tình trạng tín hiệu của counter có thể kiểm tra tại ngõ ra Q. Giá trị đếm bằng 0 suy ra Q = 0. Giá trị đếm khác 0 suy ra Q = 1. -
Counter đếm xuống:
Đếm xuống: Khi RLO tại ngõ vào CD thay đổi từ 0 lên 1 giá trị đếm hiện hành giảm xuống 1 ( tối thiểu bằng 0). Set bộ đếm: Khi RLO tại ngõ vào S thay đổi từ 0 lên 1 bộ đếm được đặt với giá trị tại ngõ vào CV. Reset bộ đếm: Khi RLO =1 counter được đặt về 0. Khi điều kiện reset được thoả mãn thì counter không thể đặt và không thể đếm. PV: Giá trị đặt trước từ (0 ..999) được xác định tại ngõ vào PV ở dạng BCD. CV/CV-BCD: Giá trị counter có thể là một số nhị phân hoặc số BCD được nạp vào ô tích luỹ và từ đó chuyển tới các địa chỉ khác. Q: Tình trạng tín hiệu của counter có thể kiểm tra tại ngõ ra Q Giá trị đếm bằng 0 suy ra Q = 0. Giá trị đếm khác 0 suy ra Q = 1
TRANG - 43
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 2
Counter đếm lên/xuống:
Giá trị đếm: Mỗi một bộ đếm chiếm một word 16 bit trong vùng nhớ dữ liệu hệ thống, dùng lưu trữ giá trị đếm cho counter từ (0..999) trong mã nhị phân. Đếm lên: Khi RLO tại ngõ vào CU thay đổi từ 0 đến 1 giá trị đếm hiện hành tăng lên 1, max = 999. Đếm xuống: Khi RLO tại ngõ vào CD thay đổi từ 0 lên 1 giá trị đếm hiện hành giảm xuống 1, min=0. Set bộ đếm: Khi RLO tại ngõ vào S thay đổi từ 0 lên 1 bộ đếm được đặt với giá trị tại ngõ vào CV. Reset bộ đếm: Khi RLO =1 counter được đặt về 0. Khi điều kiện reset được thoả mãn thì counter không thể đặt và không thể đếm. PV: Giá trị đặt trước từ (0 ..999) được xác định tại ngõ vào PV ở dạng BCD. Giá trị đặt vào PV là hằng số đếm (C#...) qua giao tiếp dữ liệu dạng mã BCD. CV/CV-BCD: Giá trị counter có thể là một số nhị phân hoặc số BCD được nạp vào ô tích luỹ và từ đó chuyển tới các địa chỉ khác. Ngõ ra Q : Tình trạng tín hiệu của counter có thể kiểm tra tại ngõ ra Q. Giá trị đếm bằng 0 suy ra Q = 0. Giá trị đếm khác 0 suy ra Q = 1. Các loại bộ đếm: o S_CU Bộ đếm lên ( chỉ đếm lên). o S_CD Bộ đếm xuống (chỉ đếm xuống). o S_CUD Bộ đếm lên /đếm xuống.
TRANG - 44
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 2
Giản đồ thời gian của Counter:
1.8.4 Sử dụng Counter theo lệnh bit: Tất cả những chức năng của counter cũng có thể thực hiện với những câu lệnh bit đơn giản. Sự giống nhau và khác nhau giữa phương pháp này và những chức năng counter được đưa ra trong các phần trên như sau: -
Giống nhau: o Điều kiện set ở ngõ vào SC. o Giá trị đặt trước của bộ đếm. o RLO thay đổi ngõ vào CU. o RLO thay đổi ngõ vào CD.
-
Khác nhau: o Không có khả năng kiểm tra giá trị đếm hiện hành. o Ngõ ra nhị phân Q không thể hiện được bằng biểu đồ .
TRANG - 45
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 2
-
Ví dụ sau minh họa chương trình điều khiển counter theo bit. Dạng LAD:
-
Dạng FBD:
-
Dạng STL:
TRANG - 46
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3:
CHƯƠNG 3
MẠNG PROFIBUS - DP
3.1 TỔNG QUAN: 3.1.1 Công nghệ Profibus: PROFIBUS là một bus trường chuẩn mở rộng, không phụ thuộc vào nhà sản xuất dùng cho các ứng dụng trong tự động hoá và xử lí. Sự độc lập và tính mở rộng được đảm bảo theo tiêu chuẩn quốc tế EN 50170 và EN 50254. PROFIBUS cho phép truyền thông giữa các thiết bị của các nhà sản xuất khác nhau không đòi hỏi giao tiếp đặc biệt. PROFIBUS không những sử dụng cho các ứng dụng nhanh theo chu kỳ mà còn cho các nhiệm vụ truyền thông đặc biệt khác. PROFIBUS định nghĩa 3 loại giao thức là PROFIBUS-FMS, PROFIBUS-DP, PROFIBUS-PA.. PROFIBUS-FMS là giao thức nguyên bản của PROFIBUS, được dùng chủ yếu cho việc giao tiếp giữa các máy tính điều khiển và điều khiển giám sát. PROFIBUS- DP được xây dựng tối ưu cho việc kết nối các thiết bị vào ra phân tán và các thiết bị trường với các máy tính điều khiển. PROFIBUS –PA là kiểu đặc biệt được sử dụng ghép nối trực tiếp các thiết bị trường trong các lĩnh vực tự động hóa các quá trình có môi trường dễ cháy nổ, đặc biệt trong công nghiệp chế biến. Thực chất PROFIBUS- PA chính là sự mở rộng PROFIBUS –DP xuống cấp trường cho lĩnh vực công nghiệp chế biến. 5.1.2 Kiến trúc giao thức PROFIBUS chỉ thực hiện các lớp 1, 2, 7 theo mô hình qui chiếu OSI. Tuy nhiên PROFIBUS DP và PA bỏ qua cả lớp 7 nhằm tối ưu hóa việc trao đổi dữ liệu quá trình giữa cấp điều khiển và cấp chấp hành. Một số chức năng còn thiếu được bổ sung qua lớp giao diện sử dụng nằm trên lớp 7. Bên cạnh các hàm dịch vụ DP cơ sở và mở rộng được qui định tại lớp giao diện sử dụng, hiệp hội PI còn đưa ra một số qui định chuyên biệt về đặc tính và chức năng đặc thù của thiết bị cho một số ứng dụng tiêu biểu. Các đặc tả này nhằm mục đích tạo khả năng tương tác và thay thế lẫn nhau của thiết bị từ nhiều nhà sản xuất. Cả 3 giao thhức FMS, DP, PA điều có chung lớp liên kết dữ liệu. Hình vẽ sau minh họa kiến trúc giao thức của Profibus.
TRANG - 47
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
PROFIBUS-FMS PROFIBUS- DP PROFIBUS-PA Giao diện sử dụng FMS Profiles DP- Profiles PA- Profiles Các chức năng DP mở rộng Các chức năng DP cơ sở Lớp 7 Field Message Specìication Không thể hiện (FMS) Lớp 3-6 Không thể hiện Lớp 2 Fieldbus Data Link ( FDL) Lớp 1 RS- 485/RS-485IS/ Cáp quang MBP(IEC 1158-2) Hình 3.1: Kiến trúc giao thức của Profibus -
Lớp ứng dụng của FMS bao gồm hai lớp con là FMS (Fieldbus Message Specification) và LLI (Lower layer Interface). Lớp FMS đảm nhận việc xử lí giao thức sử dụng và cung cấp các nhiệm vụ truyền thông, trong khi LLI có vai trò trung gian cho FMS kết nối với lớp 2 mà không phụ thuộc vào các thiết bị riêng biệt. Lớp LLI còn có các nhiệm vụ bình thường thuộc các lớp 3, 6, ví dụ tạo và ngắt nối, kiểm soát lưu thông. Lớp vật lí của PROFIBUS qui định về kỹ thuật truyền dẫn tín hiệu, môi trường truyền dẫn, cấu trúc mạng và các giao diện cơ học. Lớp liên kết dữ liệu ở PROFIBUS được gọi là FDL( Field Data Link), có chức năng kiểm soát truy nhập Bus, cung cấp các dịch vụ cơ bản( cấp thấp) cho việc trao đổi dữ liệu một cách tin cậy, không phụ thuộc vào phương pháp truyền dẫn ở lớp vật lí. 3.1.2 Kỹ thuật truyền: Truyền dẫn với RS-485. Truyền dẫn với RS-485IS. Truyền dẫn với cáp quang. Truyền dẫn với MBP. 3.1.3 Truy nhập Bus: PROFIBUS phân biệt hai loại thiết bị chính là trạm chủ(master) và trạm tớ(Slave). Các trạm chủ có khả năng kiểm soát truyền thông trên bus. Một trạm chủ có thể gửi thông tin khi nó giữ quyền truy nhập bus. Các trạm tớ chỉ được truy nhập bus khi có yêu cầu
TRANG - 48
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
của trạm chủ. Một trạm tớ phải thực hiện ít dịch vụ hơn, tức xử lí giao thức đơn giản hơn so với các trạm chủ. Hai phương pháp truy nhập bus có thể áp dụng độc lập hay kết hợp là Token-passing và Master/Slave. Nếu áp dụng độc lập, Token- passing thích hợp với các mạng FMS dùng ghép nối các thiết bị điều khiển và máy tính giám sát đẳng quyền, trong khi Master/Slave thích hợp với việc trao đổi dữ liệu giữa một thiết bị điều khiển với các thiết bị trường cấp dưới sử dụng mạng DP hoặc PA. Khi sử dụng kết hợp (Hình 5.2) nhiều trạm chủ có thể tham gia giữ Token. Một trạm chủ giữ Token sẽ đóng vai trò là chủ để kiểm soát giao tiếp với các trạm tớ nó quản lí, hoặc có thể tự do giao tiếp các trạm chủ khác trong mạng.
Hình 3.2: Cấu hình Multi- Master trong Profibus Cấu hình truy nhập bus kết hợp giữa Token-passing và Master/slave còn được gọi là nhiều chủ ( Multi- Master). 3.1.4 Dịch vụ truyền dữ liệu: Các dịch vụ truyền dữ liệu thuộc lớp 2 trong mô hình OSI hay còn gọi là lớp FDL (Fieldbus Data Link) chung cho cả FMS, DP, PA. PROFIBUS chuẩn hóa bốn dịch vụ trao đổi dữ liệu, trong đó ba thuộc phạm trù dịch vụ không tuần hoàn và một thuộc phạm trù tuần hoàn.
SDN( Send Data with No Acknowledge): Gửi dữ liệu không xác nhận. SDA( Send Data with Acknowledge): Gửi dữ liệu với xác nhận.
SRD( Send and Request Data with Reply): Gửi và yêu cầu dữ liệu.
CSRD( Cyclic Send and Request Data with Reply): Gửi và yêu cầu dữ liệu tuần hoàn.
TRANG - 49
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
Hình thức thực hiện các dịch vụ này được minh họa trên hình 3.3. Các dịch vụ không tuần hoàn thường được sử dụng để truyền các dữ liệu có tính chất bất thường, ví dụ các thông báo sự kiện, trạng thái vá đặt chế độ làm việc, vì vậy còn được gọi là các dịch vụ thông báo.
Hình 3.3: Các dịch vụ truyền dữ liệu Profibus 3.1.5 Cấu trúc bức điện: Một bức điện (telegram) trong giao thức thuộc lớp 2 của PROFIBUS gọi là khung (frame). Ba loại khung có khoảng cách Hamming là 4 và một loại khung đặc biệt đánh dấu một Token được qui định như sau:
Khung với chiều dài thông tin cố định, không mang dữ liệu: SD1 DA SA
SA
FC
DU
FCS ED
Khung với chiều dài thông tin khác nhau, với 1-246 byte dữ liệu: SD2 LE
FCS ED
Khung với chiều dài thông tin cố định, mang 8 byte dữ liệu: SD3 DA
FC
LEr SD2 DA SA
Token: SD4 DA SA
TRANG - 50
FC
DU FCS ED
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
Các ô DA, SA, FC và DU (nếu có) được coi là phần mang thông tin. Trừ ô DU, mỗi ô còn lại trong một bức điện điều có chiều dài 8 bit( tức một kí tự) với các ý nghĩa cụ thể như sau. Kí hiệu Tên đầy đủ SD1… Start Delimiter SD4 LE LEr DA SA DU FC FCS ED
Ý nghĩa Byte khởi đầu , phân biệt giữa các loại khung: SD1= 10H, SD2=68H, SD3= A2H, SD4=DCH Length Chiều dài thông tin( 4-249 byte) Length repeated Chiều dài thông tin nhắc lại vì í do an toàn Destination Adress Địa chỉ đích( trạm nhận), từ 0-127 Source Adress Địa chỉ nguồn( trạm gửi), từ 0-126 Data Unit Khối dữ liệu sử dụng Frame Control Byte điều khiển khung Frame Check Byte kiểm soát lỗi, HD=4 Sequence End Delimiter Byte kết thúc, ED=16H
Byte điều khiển khung ( FC) dùng để phân biệt các kiểu bức điện, ví dụ bức điện gửi hay yêu cầu dữ liệu ( Send or/and Request) cũng như xác nhận hay đáp ứng ( Acknowledgement/ Response). Bên cạnh đó, byte FC còn chứa thông tin về việc thực hiện hàm truyền, kiểm soát lưu thông để tránh việc mất mát hoặc gửi đúp dữ liệu cũng như thông tin kiểm trạm, trạng thái FDL. Trong trường hợp gửi dữ liệu với xác nhận ( SDA) , bên nhận có thể dùng một kí tự duy nhất SC=E5H để xác nhận. Kí tự duy nhất SC này cũng được sử dụng để trả lời yêu cầu dữ liệu( SRD) trong trường hợp bên được yêu cầu không có dữ liệu đáp ứng. 3.2 PROFIBUS – DP: PROFIBUS-DP được phát triển nhằm đáp ứng các yêu cầu cao về tính năng thời gian trong trao đổi dữ liệu dưới cấp trường, ví dụ giữa thiết bị điều khiển khả trình hoăc máy tính cá nhân công nghiệp với các thiết bị trường phân tán như I/O, các thiết bị đo, truyền động và van. Việc trao đổi dữ liệu ở đây chủ yếu thực hiện tuần hoàn theo cơ chế chủ/ tớ. Các dịch vụ truyền thông cần thiết được định nghĩa qua các chức năng DP cơ sở theo chuẩn EN 50 170. Bên cạnh đó, DP còn hổ trợ các dịch vụ truyền thông không tuần hoàn, phục vụ tham số hóa, vận hành và chuẩn đoán các thiết bị trường thông minh. Đối chiếu với mô hình OSI, PROFIBUS- DP chỉ thực hiện các lớp 1 và 2 vì lí do hiệu xuất xử lí giao thức và tính năng thời gian. Tuy nhiên DP định nghĩa phía trên lớp 7 TRANG - 51
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
một lớp ánh xạ liên kết với lớp 2 gọi là DDLM (Diret Data Link Mapper) cũng như một lớp giao diện sử dụng (User Interface Layer) chứa các hàm DP cơ sở và các hàm DP mở rộng. Trong khi các hàm DP cơ sở chủ yếu phục vụ trao đổi dữ liệu tuần hoàn, thời gian thực, các hàm DP mở rộng cung cấp các dịch vụ trao đổi dữ liệu không tuần hoàn như tham số thiết bị, chế độ vận hành và thông tin chuẩn đoán.
3.2.1 Cấu hình hệ thống và kiểu thiết bị: PROFIBUS-DP cho phép sử dụng cấu hình một trạm chủ (Mono-Master) hoặc nhiều trạm chủ (Multi-Master). Cấu hình hệ thống định nghĩa số trạm, gán các địa chỉ trạm cho các địa chỉ vào/ra, tính nhất quán dữ liệu vào/ra, khuôn dạng các thông báo chẩn đoán và các tham số bus sử dụng. Trong cấu hình nhiều chủ, tất cả các trạm chủ đều có thể đọc dữ liệu đầu vào/ra của các trạm tớ. Tuy nhiên, duy nhất một trạm chủ được quyền ghi dữ liệu đầu ra. Tuỳ theo phạm vi chức năng, kiểu dịch vụ thực hiện, người ta phân biệt các kiểu thiết bị DP như sau: Trạm chủ DP cấp 1 (DP-Master Class 1, DPM1): Các thiết bị thuộc kiểu này trao đổi dữ liệu với các trạm tớ theo một chu trình được quy định. Thông thường, đó là các bộ điều khiển trung tâm, ví dụ PLC hoặc PC, hoặc các Module thuộc bộ điều khiển trung tâm. Trạm chủ DP cấp 2 (DP-Master Class 2, DPM2): Các máy lập trình, công cụ cấu hình và vận hành, chẩn đoán hệ thống bus. Bên cạnh các dịch vụ của cấp 1, các thiết bị này còn cung cấp các hàm đặc biệt phục vụ đặt cấu hình hệ thống, chẩn đoán trạng thái, truyền nạp chương trình, v.v… Trạm tớ DP (DP-Slave): Các thiết bị tớ không có vai trò kiểm soát truy nhập bus, vì vậy chỉ cần thực hiện một phần nhỏ các dịch vụ so với một trạm chủ. Thông thường, đó là các thiết bị vào/ra hoặc các thiết bị trường (Truyền động, HMI, van, cảm biến) hoặc các bộ điều khiển phân tán. Một bộ điều khiển PLC (với các vào/ra tập trung) cũng có thể đóng vai trò là một trạm tớ thông minh. Trong thực tế, một thiết bị có thể thuộc một kiểu riêng biệt nói trên, hoặc phối hợp chức năng của hai kiểu. Ví dụ, một thiết bị có thể phối hợp chức năng của DPM1 với DPM2, hoặc trạm tớ với DPM1. Việc đặt cấu hình hệ thống được thực hiện bằng các công cụ (phần mềm). Thông thường, một công cụ cấu hình cho phép người sử dụng bổ sung và tham số hoá nhiều loại thiết bị của cùng một nhà sản xuất một cách tương đối đơn giản, bởi các thông tin tính năng cần thiết của các thíêt bị này đã được đưa vào cơ sở dữ liệu của công cụ cấu hình. Còn với thiết bị của các hãng khác, công cụ cấu hình đòi hỏi tập tin mô tả đi kèm, gọi là tập tin GSD (Gerate-stammdaten).
TRANG - 52
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
3.2.2 Đặc tính vận hành hệ thống: Chuẩn DP mô tả chi tiết đặc tính vận hành hệ thống để đảm bảo tính tương thích và khả năng thay thế lẫn nhau của các thiết bị. Trước hết, đặc tính vận hành của hệ thống được xác định qua các trạng thái hoạt động của các thiết bị chủ: STOP: Không truyền dữ liệu sử dụng trạm chủ và trạm tớ, chỉ có thể chẩn đoán và tham số hoá. CLEAR: Trạm chủ đọc thông tin đầu vào từ các trạm tớ và giữ các đầu ra ở giá trị an toàn. OPERATE: Trạm chủ ở chế độ trao đổi dữ liệu đầu vào và đầu ra tuần hoàn với các trạm tớ . Trạm chủ cũng thường xuyên gửi thông tin trạng thái của nó tới các trạm tớ sử dụng lệnh gửi đồng loạt vào các khoảng thời gian đặt trước. Các hàm DP cơ sở cho phép đặt trạng thái làm việc cho hệ thống. Phản ứng của hệ thống đối với một lỗi xảy ra trong quá trình truyền dữ liệu của trạm chủ (ví dụ khi một trạm tớ có sự cố) được xác định bằng tham số cấu hình “auto-clear”. Nếu tham số này được chọn đặt, trạm chủ sẽ đặt đầu ra cho tất cả các trạm tớ của nó về trạng thái an toàn trong trường hợp một trạm tớ có sự cố, sau đó trạm chủ sẽ tự chuyển về trạng thái CLEAR. Nếu tham số này không được đặt, trạm chủ sẽ vẫn tiếp tục giữ ở trạng thái OPERATE.
3.2.3 Trao đổi dữ liệu giữa Master và Slave: Trao đổi dữ liệu giữa trạm chủ và các trạm tớ gán cho nó được thực hiện tự động theo một trình tự quy định sẵn. Khi đặt cấu hình hệ thống bus, người sử dụng định nghĩa các trạm tớ cho một thiết bị DPM1, quy định các trạm tớ tham gia và các trạm tớ không tham gia trao đổi dữ liệu tuần hoàn. Trước khi thực hiện trao đổi dữ liệu tuần hoàn, trạm chủ chuyển thông tin cấu hình và các tham số đã được đặt xuống các trạm tớ. Mỗi trạm tớ sẽ kiểm tra các thông tin về kiểu thiết bị, khuôn dạng và chiều dài dữ liệu, số lượng các đầu vào/ra. Chỉ khi thông tin cấu hình đúng với cấu hình thực của thiết bị và các tham số hợp lệ thì bắt đầu thực hiện trao đổi dữ liệu tuần hoàn với trạm chủ. Trong mỗi chu kỳ, trạm chủ đọc các thông tin đầu vào lần lượt từ các trạm tớ lên bộ nhớ đệm cũng như đưa các thông tin đầu ra từ bộ nhớ đệm xuống lần lượt các trạm tớ theo một trình tự quy định sẵn trong danh sách (polling list). Mỗi trạm tớ cho phép truyền tối đa 246 Byte dữ liệu đầu vào và 246 Byte dữ liệu đầu ra. Với mỗi trạm tớ, trạm chủ gửi một khung yêu cầu và chờ đợi một khung đáp ứng (bức điện trả lời hoặc xác nhận). Thời gian trạm chủ cần để xử lý một lượt danh sách hỏi tuần tự chính là chu kỳ bus. Đương nhiên, chu kỳ bus phải nhỏ hơn chu kỳ vòng quét của chương trình điểu khiển. Thực tế, thời gian cần thiết để truyền 512 bit dữ liệu đầu vào và 512 bit dữ liệu đầu ra với 32 trạm và với tốc độ truyền 12Mbit/s nhỏ hơn 2ms.
TRANG - 53
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
yêu cầu Slave 1
Dữ liệu đầu ra
Dữ liệu đầu ra đáp ứng
Dữ liệu đầu vào ự t n ầ u t i ỏ h h c á s h n a D
Slave 1
Dữ liệu đầu vào
Dữ liệu đầu ra Slave 2
Dữ liệu đầu vào
yêu cầu Dữ liệu đầu ra
Dữ liệu đầu ra Slave n
đáp ứng
Dữ liệu đầu vào
Slave n
Dữ liệu đầu vào
DP-Master
Hình 3.4: Nguyên tắc trao đổi dữ liệu tuần hoàn Master/Slave Mô hình DP-Slave hỗ trợ cấu trúc kiểu Module của các thành viên. Mỗi Module được xếp một số thứ tự khe cắm bắt đầu từ 1, riêng Module có số thứ tự khe cắm 0 phục vụ việc truy nhập toàn bộ dữ liệu của thiết bị. Toàn bộ dữ liệu vào/ra của các Module được chuyển chung trong một khối dữ liệu sử dụng của trạm tớ. Giao tiếp dữ liệu được giám sát bởi cả hai bên trạm chủ và trạm tớ. Bên trạm tớ sử dụng cảnh giới (watchdog) để giám sát việc giao tiếp với trạm chủ và sẽ đặt đầu ra về một giá trị an toàn, nếu nội trong một khoảng thời gian quy định không có dữ liệu từ trạm chủ đưa xuống.
3.2.4 Đồng bộ hoá dữ liệu vào/ra: Trong các giải pháp điều khiển sử dụng bus trường, một trong những vấn đề cần phải giải quyết là việc đồng bộ hoá các đầu vào và đầu ra. Một thiết bị chủ có thể đồng bộ hoá việc đọc các đầu vào cũng như đặt các đầu ra qua các bức điện gửi đồng loạt. Một trạm chủ có thể gửi đồng loạt (broadcast, multicast) lệnh điều khiển để đặt chế độ đồng bộ cho một nhóm trạm tớ như sau: Lệnh SYNC: Đưa một nhóm trạm tớ về chế độ đồng bộ hoá đầu ra. Ở chế độ này, đầu ra của tất cả các trạm tớ trong nhóm được giữ nguyên ở trạng thái hiện tại cho tới khi nhận được lệnh SYNC tiếp theo. Trong thời gian đó, dữ liệu đầu ra được lưu trong vùng nhớ đệm và chỉ được đưa ra sau khi (đồng loạt) nhận được lệnh SYNC tiếp theo. Lệnh UNSYNC sẽ đưa các trạm tớ về chế độ bình thường (đưa đầu ra tức thì). TRANG - 54
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 3
Lệnh FREEZE: Đưa một nhóm các trạm tớ về chế độ đồng bộ hoá đầu vào. Ở chế độ này, tất cả các trạm tớ trong nhóm được chỉ định không được phép cập nhật vùng nhớ đệm dữ liệu đầu vào, cho tới khi (đồng loạt) nhận được lệnh FREEZE tiếp theo. Trong thời gian đó trạm chủ vẫn có thể đọc giá trị đầu vào (không thay đổi) từ vùng nhớ đệm của các trạm tớ. Lệnh UNFREEZE sẽ đưa các trạm tớ về chế độ bình thường (đọc đầu vào tức thì).
3.2.5 Tham số hoá và chẩn đoán hệ thống: Trong trường hợp có thông tin chẩn đoán, ví dụ báo cáo trạng thái vượt ngưỡng hay các báo động khác, một DP-Slave có thể thông báo cho trạm chủ của nó qua bức điện trả lời. Nhận được thông báo, trạm chủ sẽ có trách nhiệm hỏi trạm tớ liên quan về các chi tiết thông tin chẩn đoán. Để thực hiện truyền nạp các bộ tham số hoặc đọc các tập dữ liệu tương đối lớn, PROFIBUS-DP cung cấp các dịch vụ không tuần hoàn là DDLM_Read và DDLM_Write. Trong mỗi chu kỳ bus, trạm chủ chỉ cho phép thực hiện được một dịch vụ. Tốc độ trao đổi dữ liệu tuần hoàn vì thế không bị ảnh hưởng đáng kể. Dữ liệu không tuần hoàn được định địa chỉ qua số thứ tự của khe cắm và chỉ số của tập dữ liệu thuộc khe cắm đó. Mỗi khe cắm cho phép truy nhập tối đa là 256 tập dữ liệu. Các hàm chẩn đoán của DP cho phép định vị lỗi một cách nhanh chóng. Các thông tin chẩn đoán được truyền qua bus và thu nhập tại trạm chủ. Các thông báo này được phân chia thành ba cấp: Chẩn đoán trạm: các thông báo liên quan tới trạng thái hoạt động chung của cả trạm, ví dụ tình trạng quá nhiệt hoặc sụt áp. Chẩn đoán Module: các thông báo này chỉ thị lỗi nằm ở một khoảng vào/ra nào đó của một Module. Chẩn đoán kênh: trường hợp này, nguyên nhân của lỗi nằm ở một bit vào/ra (một kênh vào/ra) riêng biệt. Ngoài ra, phiên bản DP-V1 còn mở rộng thêm hai loại thông báo chẩn đoán là: Thông báo cảnh báo/báo động liên quan tới các biến quá trình, trạng thái cập nhật dữ liệu và các sự kiện tháo/lắp Module thiết bị. Thông báo trạng thái phục vụ mục đích bảo trì phòng ngừa, đánh giá thống kê số liệu….
3.2.6 Giao tiếp trực tiếp giữa các Slave (DXP) Trao đổi dữ liệu giữa các trạm tớ là một yêu cầu thiết thực đối với cấu trúc điều khiển phân tán thực sự sử dụng các thiết bị trường thông minh. Như ta đã biết, cơ chế giao tiếp chủ-tớ thuần túy làm giảm hiệu suất trao đổi dữ liệu cho trường hợp này. Chính vì thế, phiên bản DP-V2 đã bổ sung một cơ chế trao đổi dữ liệu trực tiếp theo kiểu ngang hàng giữa các trạm tớ.
TRANG - 55
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
DP Master Cấp 1
DP Slave (chào hàng)
DP Slave (đặt hàng)
DP Slave (đặt hàng)
Hình 3.5: Giao tiếp trực tiếp giữa các trạm tớ Theo như hình trên ta có thể thấy một trạm tớ (ví dụ là một cảm biến) có thể đóng vai trò là “nhà xuất bản” hay “nhà cung cấp” dữ liệu. Khối dữ liệu sẽ được gửi đồng loạt tới tất cả các trạm tớ (ví dụ một van điều khiển, một biến tần) đã đăng ký với vai trò “người đặt hàng” mà không cần đi qua trạm chủ. Với cơ chế này, không những hiệu suất sử dụng đường truyền được nâng cao, mà tính năng đáp ứng của hệ thống còn được cải thiện rõ rệt. Điều này đặc biệt quan trọng đối với các ứng dụng đòi hỏi đáp ứng cao về thời gian thực, hoặc đối với các ứng dụng sử dụng kỹ thuật truyền dẫn tốc độ thấp.
3.2.7 Chế độ đẳng thời: Đối với một số ứng dụng như điều khiển truyền đồng điện, điều khiển chuyển động, cơ chế giao tiếp theo kiểu hỏi tuần tự hoặc giao tiếp trực tiếp tớ-tớ chưa thể đáp ứng được đòi hỏi cao về tính năng thời gian thực. Vì vậy, phiên bản DP-V2 bổ sung chế độ đẳng thời, cho phép thực hiện giao cơ chế chủ/tớ kết hợp với TDMA. Nhờ một thông báo điều khiển toàn cục gửi đồng loạt, toàn bộ các trạm trong mạng được đồng bộ hóa thời gian với độ chính xác tới µs. Việc giao tiếp được thực hiện theo một lịch trình đặt trước, không phụ thuộc vào tải tức thời trên bus. Cơ chế này cho phép phối hợp hoạt động một cách chặt chẽ và nhịp nhàng giữa các trạm trên bus. Một ví dụ ứng dụng tiêu biểu là bài toán điều khiển chuyển động, trong đó trạm chủ đóng vai trò bộ điều khiển vị trí và một số trạm tớ là các biến tần với chức năng điều khiển tốc độ động cơ.
TRANG - 56
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
3.3 GIỚI THIỆU VỀ MODULE CP-EM 277: 3.3.1 Giới thiệu. CPU S7-200 có thể kết nối vào một mạng PROFIBUS DP nhờ vào sử dụng Module mở rộng EM 277. Khối EM 277 cho phép S7-200 trờ thành một trạm tớ trên mạng. Một trạm chủ có thể ghi và đọc dữ liệu từ các khối S7-200 trong mạng thông qua khối mở rộng EM 277.
Hình 3.6: Mặt trước Module EM 277
3.3.2 Các thông số của EM 277. -
-
Thông số vật lý: o Kích thước o Trọng lượng o Công suất
: 71 mm x 80 mm x 62 mm : 175 g : 2.5 W
Thông số truyền dữ liệu: o Số lượng cổng : 1 o Giao diện điện tử : RS-485 o Tốc độ PROFIBUS-DP/MPI : 9.6 ,19.2, 45.45, 93.75, 187.5, 500 Kbaud; 1, 1.5, 3, 5, 12 M baud. o Giao thức : PROFIBUS-DP Slave và MPI Slave o Chiều dài cáp : phụ thuộc tốc độ TRANG - 57
ĐIỀU KHIỂN LẬP TRÌNH 2
o
CHƯƠNG 3
Gần đến 93.75 K baud : 1200 m 187.5 K baud : 1000 m 500 K baud : 400 m 1 đến 1.5 M baud : 200 m 3 đến 12 M baud : 100 m Khả năng mạng: Địa chỉ trạm: 0-99 (thiết lập bằng nút xoay) Số luợng trạm tối đa một phân đoạn : 32 Số lượng trạm tối đa một mạng: 126, lên đến 99 trạm EM 277
3.3.3 Cấu trúc vùng nhớ của Master và Slave: Mục đích của kết nối PROFIBUS DP là trao đỗi dữ liệu. Một trạm chủ ghi dữ liệu ngõ ra đến một trạm tớ. Trạm tớ phản hồi lại bằng dữ liệu ngõ vào gửi tới trạm chủ. Trạm chủ chuyển dữ liệu từ một vùng ngõ ra I/O đến vùng đệm ngõ ra của trạm tớ (hộp thư nhận). Trạm chủ đọc dữ liệu từ vùng đệm ngõ vào của trạm tớ (hộp thư đi) và lưu trữ trong một vùng ngõ vào I/O. Vùng đệm ngõ vào và ngõ ra được đặt trong vùng nhớ biến của CPU gọi là vùng nhớ V. Trong kỹ thuật PROFIBUS-DP thì dữ liệu trao đổi được mô tả luôn tuân theo một quy tắc hướng về trạm chủ. Dữ liệu chuyển từ trạm chủ đến trạm tớ luôn gọi là dữ liệu ngõ ra. Dữ liệu chuyển từ trạm tớ đến trạm chủ luôn gọi là dữ liệu ngõ vào. Dữ liệu chuyển đến từ trạm chủ luôn được coi là dữ liệu ngõ ra mặc dù đối với trạm tớ, nó là ngõ vào. Tương tự như vậy, dữ liệu gửi về trạm chủ luôn coi là dữ liệu ngõ vào mặc dù đối với trạm tớ nó là ngõ ra. Trạm chủ xác định địa chỉ bắt đầu của bộ đệm ngõ ra (hộp thư nhận). Trạm chủ gửi offset của vùng nhớ V của vùng đệm ngõ ra đến trạm tớ như là một phần trong khai báo các thông số của trạm tớ. Nếu offset này có giá trị là 0, trạm tớ sẽ đặt bộ vùng đệm ngõ ra tại địa chỉ VB0. Nếu offset có giá trị 5000, nó sẽ đặt tại địa chỉ VB5000. Đồng thời với việc gửi đi địa chỉ bắt đầu, trạm chủ cũng xác định kích thước của vùng đệm ngõ ra (hộp thư nhận). Người điều khiển cấu hình trạm chủ để viết một số byte dữ liệu gửi tới trạm tớ. Trạm chủ gửi thông tin này đi như là một phần trong định cấu hình của trạm tớ. Trạm tớ sử dụng thông tin này để xác định kích thước của vùng đệm ngõ ra. Nếu trạm chủ quy định trạm tớ có 16 byte ngõ ra, trạm tớ sẽ xác định của vùng đệm ngõ ra là 16 byte. Ví dụ, vùng đệm ngõ ra bắt đầu từ địa chỉ VB5000, dữ liệu ngõ ra từ trạm chủ sẽ được ghi vào vùng nhớ từ VB5000 đến VB5015. Vùng đệm ngõ vào (hộp thư nhận hay dữ liệu phản hồi về trạm chủ) lập tức theo sau vùng đệm ngõ ra. Người điều khiển cũng cấu hình trạm chủ về khối lượng dữ liệu phản hồi về từ trạm tớ. Giá trị này được ghi vào trạm tớ như là một phần cấu hình của nó. Trạm tớ sử dụng thông tin này để ấn định kích thước của vùng đệm ngõ vào. Tiếp TRANG - 58
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
theo ví dụ trên, nếu như trạm chủ đặt vùng đệm ngõ ra tại địa chỉ VB5000 và ấn định kích thước là 16 byte thì vùng đệm ngõ vào bắt đầu từ địa chỉ VB5016 ngay sau vùng đệm ngõ ra. Nếu như kích thước của vùng đệm ngõ vào là 16 bytes thì nó sẽ được đặt trong vùng nhớ từ VB5016 đến VB5031.
Hình 3.7: Ví dụ về vùng nhớ V của CPU và vùng nhớ I/O của trạm chủ Sau khi kết nối giữa trạm chủ và trạm tớ được thiết lập, vị trí của vùng đệm ngỏ ra và kích thước của vùng đệm có thể được đọc từ vùng nhớ đặt biệt (SM) của CPU. Bảng dưới đây ghi lại vị trí vùng nhớ mô tả về khối EM 277 đầu tiên được kết nối. Nếu nó là khối Module thứ hai thì địa chỉ SM dời đi 50 (SMB250 đến SMB279). SMB200 đến 215 Nội dung là 16 kí tự ASCII tên Module SMB216 đến 219 Nội dung là phiên bản phần mềm của khối EM 277. Hai ký tự đầu cho biết số trước dấu chấm và hai ký tự sau cho biết số sau dấu chấm. Ví dụ: SMB216-219 có nội dung là “0102” thì phiên bản phần mềm là 1.02 SMW220 Nội dung là lưu trạng thái báo lỗi của khối EM 277. Chỉ có hai giá trị được xác định. Giá trị “0” nếu không có lỗi và nếu là giá trị “1” nghĩa là không cung cấp nguồn 24 VDC cho khối. SMB222 Đây là địa chỉ của EM 277 được đọc từ các công tắc
TRANG - 59
ĐIỀU KHIỂN LẬP TRÌNH 2
SMB224
SMB225
SMW226
SMB228 SMB229
CHƯƠNG 3
Nội dung là trạng thái kết nối PROFIBUS DP. Người điều khiển có thể giám sát vị trí này để chương trình biết là kết nối ở trạng thái hoạt động tốt hay không. Nếu như có lỗi xảy ra, chương trình có thể xử lý dựa trên lỗi của kết nối DP. Sau đây là các giá trị trạng thái được xác định: 0: không có truyền đạt thông tin DP nào xảy ra từ khi EM 277 cấp nguồn hoạt động 1 : trạm chủ DP đang truyền thông tin đến EM 277 nhưng có vấn đề trong việc cấu hình hay khai báo thông số gử từ trạm chủ. 2: khối EM 277 và trạm chủ đang trao đổi dữ liệu (hoạt động bình thường ). 3: khối EM277 và trạm chủ trước đó có trao đổi dữ liệu nhưng giờ thì không. Nội dung là địa chỉ trên mạng của trạm chủ cấu hình cho khối EM 277. Trạm chủ này có thể ghi ngõ ra và đọc ngõ vào từ trạm tớ. Nội dung là địa chỉ vùng nhớ V của vùng đệm ngõ ra. Giá trị này được lưu vào trạm tớ trong một thông điệp khai báo thông số trong suốt giai đoạn đầu của việc kết nối. Nội dung là kích thước của vùng đệm ngõ ra. Giá trị này được lưu vào trạm tớ trong một thông điệp cấu hình trong suốt giai đoạn đầu của việc kết nối. Nội dung là kích thước của vùng đệm ngõ vào. Giá trị này được lưu vào trạm tớ trong một thông điệp cấu hình trong suốt giai đoạn đầu của việc kết nối.
Lưu ý rằng vùng nhờ từ 226 đến 229 cho biết dữ liệu lưu vào EM 277 từ tram chủ. Vì vậy nếu có lập trình ở những vùng nhớ này cũng không thể thay đồi được kích thước và địa chỉ của vùng đệm. Khối EM 277 lưu những vị trí này vào CPU khi mà có một sự thay đổi trạng thái của việc kết nối hay khi trạm chủ gửi giá trị mới tới EM 277.
TRANG - 60
ĐIỀU KHIỂN LẬP TRÌNH 2
3.4
CHƯƠNG 3
KẾT NỐI MẠNG QUA MODULE EM 277:
Để kết nối mạng Profibus giữa S7-300 và S7-200 thông qua EM 277 ta thực hiện theo các bước như sau:
3.4.1 Thiết lập địa chỉ mạng DP cho khối EM 277. -
Ngắt nguồn cấp cho CPU và khối EM 277 Thiết lập nút xoay trên mặt trước của khối EM 277 để được địa chỉ mong muốn. Có 2 nút chọn X10 và X1, X10 để thiết lập hàng chục và X1 để thiết lập hàng đơn vị. Cấp nguồn lại cho CPU và khối EM 277
3.4.2 Truyền dữ liệu giữa trạm chủ và khối EM 277: Thực hiện theo 3 bước: Khai báo thông số. Thiết lập cấu hình. Trao đổi dữ liệu Hai bước đầu tiên thông thường tiến hành khi hệ thống khởi động và trạm tớ được đưa vào. Bước trao đổi dữ liệu chính là chế độ hoạt động bình thường của hệ thống. Sự khai báo thông số và thông tin về cấu hình được gửi tới các trạm tớ từ các tùy chọn mà ta thực hiện khi thiết lập hệ thống và từ các tệp cơ sở dữ liệu của thiết bị của các trạm tớ (các tệp GSD). Các tệp GSD là các tệp văn bản mô tả các thuộc tính của các thiết bị tớ. Các tùy chọn của hệ thống và các thuộc tính của trạm tớ được nạp vào trạm chủ sau này sẽ được sử dụng để thiết lập các thông điệp khai báo thông số và cấu hình gửi đến các trạm tớ. Khai báo thông số. Khi trạm chủ chuyển sang trạng thái Operate từ trạng thái Stop, nó phải dò hết tất cả các thiết bị tớ có mặt trên mạng bằng cách chuyển các khai báo thông số và cấu hình đến các trạm tớ. Trước tiên trạm chủ gửi đi một yêu cầu chuẩn đoán đến thiết bị tớ. Trạm chủ sẽ nhận được phản hồi thông báo trạng thái của trạm tớ,. số ID của trạm tớ và đã có trạm chủ nào điều khiển trạm tớ đó chưa.Số ID của trạm tớ là một số đặt biệt được ấn định bởi Tổ chức những người sử dụng mạng PROFIBUS (PROFIBUS User Organization) đến tất cả c ác thiết bị chủ tớ. Số ID 4 chữ số của trạm tớ cho phép trạm chủ kiểm tra xem thiết bị trên mạng có đúng là thiết bị đã được ta xác định trong suốt quá trình cấu hình trạm chủ. Nếu số ID không khớp với cấu hình của ta đã định hay trạm tớ đã được điều khiển bởi một trạm chủ khác, trạm chủ sẽ dừng lại quá trình cấu hình trạm tớ và thông báo lỗi. Nếu như trạm tớ hiện hữu, trạm chủ gửi một thông điệp khai báo thông số đến trạm tớ. Thông điệp này bao gồm một số mục cố định cấu hình trạm tớ cho khớp với các thông số của mạng và các thông số cấu hình các chức năng xác định và các khối bên trong trạm tớ (không bắt buột).
TRANG - 61
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 3
Khối EM 277 chỉ chấp nhận một thông số duy nhất khi tham gia vào mạng. Đó chính là offset của vùng nhớ V cho vùng đệm ngõ ra. Nếu như giá trị này được khai báo, khối EM 277 sử dụng offset này truy suất đến vùng đệm ngõ vào và ngõ ra của CPU S7 200. Nếu như không được khai báo, khối EM 277 sẽ mặc nhiên ấn định vùng nhớ V bắt đầu từ địa chỉ VB0 trong CPU S7 200. Thiết lập cấu hình. Sau thông điệp khai báo thông số, trạm chủ sẽ gửi đến trạm tớ một thông điệp thiết lập cấu hình. Thông điệp này chứa đựng cấu hình I/O mà trạm chủ ấn định cho trạm tớ. Phần lớn các thiết bị PROFIBUS có cấu hình cố định, và đối với các thiết bị này, việc truyền thông điệp cấu hình này là sự kiểm tra xem thiết bị tớ hợp thức có trên mạng hay không. Nếu như việc thiết lập cấu hình được chấp nhận, trạm tớ sẽ bị khóa vào địa chỉ của trạm chủ đó cho đến khi trạm chủ “nhả” nó ra hay trạm tớ bị ngắt điện. Chỉ có chính trạm chủ thực hiện việc cấu hình môt trạm tớ mới có thể chuyển sang chế độ trao đổi dữ liệu với trạm tớ đó. Trong trường hợp khối EM 277, việc thiết lập cấu hình cho khối EM 277 biết rằng bao nhiêu byte ngõ ra và ngõ vào trạm chủ yêu cầu nó và CPU S7 200 hỗ trợ. Khối EM 277 có thể hỗ trợ một số cấu hình chuẩn và nhiều cấu hình tùy chọn khác nếu như trạm chủ cho phép chuyển sang chế độ cấu hình không chuẩn. Sau khi nhận thông điệp thiết lập cấu hình, khối EM 277 sẽ kiểm ra xem cấu hình có thể được chấp nhận hay không và kiểm tra xem vùng đệm ngõ ra và ngõ vào có vừa bộ nhớ của CPU S7 200 không. Nếu không có vấn đề gì thông điệp thiết lập cấu hình và khai báo thông số, khối EM 277 gán vào địa chỉ của trạm chủ mà đã gửi thông điệp đó. Tùy chọn I/O mà ta xác định cũng đồng thời là tùy chọn tòan vẹn dữ liệu. Tùy chọn toàn vẹn dữ liệu cho cả trạm chủ và trạm tớ biết rằng có bao nhiêu dữ liệu được truyền giữa mạng và bộ nhớ mà không có sự ngắt quãng. PROFIBUS hổ trợ 3 loại toàn vẹn dữ liệu: byte, word và buffer. o Toàn vẹn byte đảm bảo rằng những byte được truyền sẽ được truyền toàn bộ. Toàn vẹn byte nên được sử dụng nếu tất cả các byte dữ liệu độc lập. o Toàn vẹn word bảo đảm việc truyền các word không bị ngắt bởi các quy trình khác. Toàn vẹn word nên được sử dụng khi mà dữ liệu chứa giá trị 2 byte. Toàn vẹn word buộc trạm chủ và trạm tớ chuyên 2 byte mỗi word giữa bộ nhớ và mạng như là một đơn vị mà không thể bị ngắt hay hiệu chỉnh bởi bất cừ quy trình nào khác trong CPU S7 200. o Toàn vẹn buffer bảo đảm toàn bộ vùng đệm dữ liệu được truyền như là một đơn vị duy nhất, không thể bị ngắt bởi quy trình khác. Toàn vẹn buffer buộc trạm chủ và trạm tớ chuyển toàn vùng đệm của dữ liệu (tất cả ngõ ra và ngõ vào) giữa bộ nhớ và mạng mà không bị ngắt quãng. Toàn vẹn buffer nên sử dụng khi truyền giá trị double word hay một nhóm các giá trị dữ liệu được xem như một đơn vị duy nhất.
TRANG - 62
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 3
Ví dụ: Khối EM 277 hỗ trợ cấu hình I/O của: o 8 bytes out/ 8 bytes in o 4 words out/ 4 word in o 8-byte buffer I/O Tất cả các cấu hình trên đều truyền 8 bytes đến khối EM 277 và 8 bytes ngược lại trạm chủ nhưng mà loại toàn vẹn khác nhau trong từng cách cấu hình. o Cấu hình 8-byte out/in cho phép ta ngắt quy trình truyền giữa khối EM 277 và vùng nhớ V cùa CPU S7 200 mọi lúc. o Cấu hình 4-word out/in cho phép ta chỉ được chen ngang vào giữa hai word trong suốt quá trình truyền đảm bảo cho các byte cấu tạo nên word không bị phân cách. o Cấu hình 8-byte buffer I/O khiến cho CPU S7 200 vô hiệu hóa ngắt của người sử dụng trong suốt quá trình truyền. Những tùy chọn toàn vẹn buffer trong khối EM 277 thì được giới hạn để mà thời gian ngắt của người sử dụng đã được vô hiệu hóa không làm ảnh hưởng hệ thống. Sau khi nhận một thông điệp khao báo thông số hay thiết lập cấu hình, khối EM 277 ghi offset của vùng nhớ V và kích thước vùng đệm ngõ vào và ngõ ra đến vùng nhớ đặt biệt của CPU S7 200 ngay cả khi các giá trị không hợp lý đối với CPU S7 200. Đèn DP ERROR trên bề mặt khối EM 277 sẽ sáng đỏ nếu xuất hiện lỗi trong khai báo thông số hoặc thiết lập cấu hình. Nếu như khối EM 277 không chuyển sang chế độ trao đổi với trạm chủ, ta có thể xem vị trí của các vùng nhớ SM để xác định lỗi ở đâu. Trao đổi dữ liệu. Sau khi gửi thông điệp khai báo thông số và thiết lập cấu hình đến trạm tớ, trạm chủ gửi tiếp một yêu cầu chẩn đoán khác tới trạm tớ để xác định rằng trạm tớ đã chấp nhận các thông điệp khai báo thông số và thiết lập cấu hình hay chưa. Nếu như trạm tớ xác định rằng đã có lỗi trong các thông điệp khai báo thông số và thiết lập cấu hình, trạm chủ sẽ gửi lại các thông điệp này. Nếu không có lỗi trong các phản hồi chẩn đoán, trạm chủ sẽ bước sang chế độ hoạt động-trao đổi dữ liệu. Chế độ trao đổi dữ liệu là chế độ hoạt động bình thườn trong mạng DP. Ở chế đô này, trạm chủ sẽ ghi ngõ ra đến trạm tớ và trạm tớ truyền lại ngõ vào. Nếu như trạm tớ không có ngõ ra nào cả, trạm chủ sẽ gửi một thông điệp không có dữ liệu ngõ ra và trạm tớ sẽ phản hồi với những ngõ vào của nó. Nếu như trạm tớ có ngõ ra nhưng không có ngõ vào, trạm tớ sẽ phản hồi cho thông điệp ngõ ra với một thông điệp rỗng. Đèn DX MODE trên bề mặt khối EM 277 màu xanh khi khối EM 277 đang ở trang thái trao đổi dữ liệu với trạm chủ và sẽ không sáng nếu không ở trong trạng thái trao đồi dữ liệu với trạm chủ. Đèn DP ERROR sẽ đỏ nếu như khối EM 277 vừa mới ở trạng thái trao đổi dữ liệu và hiện đang không trong trạng thái đó nửa.
TRANG - 63
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
Trạm tớ thiết lập một vùng nhớ bit chẩn đoán để phản hồi nếu nó phát hiện ra lỗi. Vùng nhớ này buộc trạm chủ gửi một yêu cầu chuẩn đoán đến trạm tớ trước khi truyền tiếp dữ liệu cho trạm tớ. Điều này cho phép trạm chủ phản hồi các lỗi của trạm tớ một cách nhanh chóng.
3.4.3 Tệp cơ sở dữ liệu của thiết bị (các tệp GSD): Các thiết bị PROFIBUS có các đặc điểm hoạt động khác nhau, các thông số về chức năng của thiết bị có thể về số lượng tín hiệu I/O hay các thông số bus như tốc độ baud. Các thông số này là riêng biệt cho từng loại thiết bị và thường được văn bản hóa trong tài liệu người dùng. Để đạt được thiết lập cấu hình Plug and Play của mạng PROFIBUS một cách đơn giản, các đặc điểm chức năng của thiết bị được ấn định trong một data sheet điện tử gọi là tệp cơ sở dữ liệu của thiết bị hay tệp GSD. Tệp GSD cung cấp chi tiết các đặt điểm của các loại thiết bị trong một định dạng được xác định một cách chính xác. Định dạng của tập GSD cho phép việc cấu hình hệ thống được đọc ra từ tệp của bất kì tất cả các thiết bị trong mạng PROFIBUS và tự động sử dụng thông tin này để cấu hình hệ thống. Trong suốt quá trình cấu hình, phần cấu hình hệ thống tự động thực hiện kiểm tra việc sai sót ở ngõ vào và sự toàn vẹn của dữ liệu chuyển vào toàn bộ hệ thống.
3.4.4 Ứng dụng mạng Profibus-DP điều khiển thiết bị: Trong phần này sẽ trình bày một ứng dụng để truyền nhận dữ liệu giữa trạm chủ (Master) S7-300 và các trạm tớ (Slaver) qua mạng Profibus – DP. Các ứng dụng cụ thể sẽ được thực hiện tương tự. Trong ứng dụng này dùng 1 PLC S7-300 làm Master và 3 PLC S7-200 để làm Slaver. Sự truyền nhận dữ liệu được thực hiện giữa S7-300 và S7-200 thông qua Module CP EM 277. Trình tự để thiết kế ứng dụng này được trình bày như sau. Thiết lập cấu hình phần cứng của S7-300 trong chương trình Step7: o Khởi động chương trình Simatic manager o Sau đó vào màn hình làm việc của chương trình
TRANG - 64
ĐIỀU KHIỂN LẬP TRÌNH 2
o
CHƯƠNG 3
Hình 3.8: Màn hình làm việc của Step 7 Bấm chọn thẻ New Projec/library sẽ xuất hiện hộp thoại NEW
Hình 3.9: Màn hình hộp thoại New
TRANG - 65
ĐIỀU KHIỂN LẬP TRÌNH 2
o
o
CHƯƠNG 3
Đặt tên cho Project trong Name, rồi chọn OK. Mở đầu Project, ta thiết lập 1 trạm S7-300 như hình vẽ:
Hình 3.10: Màn hình thiết lập trạm S7-300 Ta có thể đặt lại tên cho trạm. o Khi nhấn chọn trạm sẽ xuất hiện biểu tượng Hardware.
Hình 3.11: Chọn biểu tượng Hardware o
Nhấp đúp vào đó để thiết lập cấu hình của trạm cho giống với cấu hình thực tế. Nếu không thấy catalog các linh kiện thì chọn thẻ View/catalog
TRANG - 66
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
Hình 3.12: Chọn thẻ Catalog o
Nếu chưa có khối EM277 trong catalog thì ta cần cài đặt theo hình vẽ:
Hình 3.13: Màn hình cài đặt EM277 Sau đó chọn đường dẫn đến file GSD của khối EM277 o
Để thiết lập phần cứng, đầu tiên ta vào catalog lấy giá đỡ (rail)
Hình 3.14: Chọn biểu giá đỡ (rail)
TRANG - 67
ĐIỀU KHIỂN LẬP TRÌNH 2
o
CHƯƠNG 3
Sau đó sắp xếp các khối theo đúng thứ tự như cấu hình thực. Đầu tiên là nguồn,
Hình 3.15: Đặt nguồn vào rail Tiếp theo là CPU Khi ta kéo chọn CPU 315-2DP vào rail, sẽ xuất hiện hộp thoại
Hình 3.16: Màn hình sau khi đặt CPU
TRANG - 68
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
Bấm chọn New để thiết lập mạng, sau đó ta chọn OK
Hình 3.17: Cài đặt mạng Profibus o
Tiếp theo chọn khối EM277 kết nối vào mạng Chọn theo đường dẫn như trong hình,kéo khối EM277 ra thả vào subnet Khi đó xuất hiện hộp thoại sau:
Hình 3.18: Cài đặt module EM 277
TRANG - 69
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
Phải chọn địa chỉ cho khối này. Chú ý rằng chọn đúng địa chỉ trên Module thì CPU mới nhận được. Nhấp vào khối EM277 sẽ xuất hiện hộp thoại “properties – DP Slave”. o
Hình 3.19: Hộp thoại properties – DP Slave Vào Parameter Assignment để chọn địa chỉ. Chọn vào Parameter Assignment để chọn địa chỉ I/O offset trong vùng V-memory
TRANG - 70
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 3
Hình 3.20: Chọn địa chỉ EM 277 Có thể chọn giá trị này cho nhiều Module giống nhau.Ở đây chọn bằng 2000. o
Kế tiếp ta chọn kích thước vùng đệm
Hình 3.21: Chọn vùng đệm Kéo chọn (vd:16 byte buffer I/O) như trong hình trên. Địa chỉ vào/ra xuất hiện là địa chỉ mặc định.Ta có thể thay đổi giá trị này để sử dụng. Chú ý rằng địa chỉ vào/ra trong mỗi khối EM277 không được trùng nhau. Tương tự ta có thể đặt 3 trạm EM277. o
Chọn các Module vào ra số/tương tự theo đúng cấu hình thực, như hình sau:
TRANG - 71
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG CHƯƠNG 3
Hình 3.22: Chọn module vào/ra Chú ý rằng tại slot số 3 bỏ trống. Đó là vị trí dành cho khối mở rộng IM. Tiếp theo ta chọn nút save and compiler để biên dịch. Sau đó nhấn download để tải cấu hình phần cứng vào CPU. Nếu download download không được hoặc đèn báo lỗi phần cứng trên CPU sáng sán g lên cần cầ n kiểm tra lại việc thiết lập phần cứng. Sau khi đã download được thành công các đèn báo trạng thái trên CPU sẽ sáng lên như hình vẽ
Hình 3.23: Hình dạng EM 277 ở trạng thái trao đổi dữ liệu
TRANG - 72
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG CHƯƠNG 3
3.4.5 Chương trình minh họa: -
Chương trình S7-300:
TRANG - 73
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG CHƯƠNG 3
-
Chương trình S7-200 thu nhất: nh ất:
-
Chương trình S7-200 thứ hai:
TRANG - 74
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4:
CHƯƠNG 4
MẠNG AS_I
4.1 GIỚI THIỆU CHUNG VỀ MẠNG AS-I: 4.1.1 Khái niệm: Hệ thống AS-I (Actuator Sensor Interface) hay giao tiếp actuator / sensor là hệ thống kết nối cho cấp thấp nhất trong hệ thống tự động hóa. Các actuator và sensor được nối với trạm hệ thống tự động qua bus giao tiếp AS (AS-I bus). Giao tiếp này ra đời vào năm 1994. Hình vẽ 4.1 giới thiệu vị trí của giao tiếp AS trong hệ thống điều khiển.
Caáp quaûn lyù maïng
(Supervisory level)
Host computer) Caùc Boä ñie àu khieån laäp trình
Caáp saûn xuaát hoaëc ñieàu khieån quaù trình
(Programmable Controllers)
(Production or process control level)
Caáp caûm bieán/ cô caáu chaáp haønh
Caûm bieán/ cô caáu chaáp haønh
Actuator/sensor level
Actuator/sensor)
Hình 4.1: Vị trí của AS-Interface trong hệ thống tự động hoá AS-I là kết quả phát triển hợp tác của 11 hãng sản xuất thiết bị cảm biến và cơ cấu chấp hành có tên tuổi trong công nghiệp, trong đó có SIEMENS AG, Festo KG, Peppert & Fuchs GmbH. Tên gọi của giao tiếp này phần nào diễn tả mục đích sử dụng duy nhất của AS-I là kết nối các thiết bị cảm biến và cơ cấu chấp hành số với cấp điều khiển. Từ một thực tế là hơn 80% cảm biến và cơ cấu chấp hành trong một hệ thống máy móc làm việc với các biến logic, cho nên việc nối mạng chúng trước hết phải đáp ứng được yêu cầu về giá thành thấp cũng như lắp đặt, vận hành và bảo dưỡng đơn giản. Vì thế, các tính năng kỹ thuật được đặt ra là: Khả năng tải dữ liệu và nguồn nuôi cho toàn bộ các cảm biến và một phần lớn các cơ cấu chấp hành phải được truyền tải trên cùng một cáp hai dây. TRANG – 75
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
-
Phương pháp truyền phải thật bền vững trong môi trường công nghiệp nhưng không đòi hỏi cao về chất lượng đường truyền. Cho phép thực hiện cấu trúc mạng đường thẳng cũng như hình cây. Các thành phần giao diện có thể thực hiện với giá cả rất thấp. Các bộ nối phải nhỏ, gọn, đơn giản và giá cả hợp lý. Với các hệ thống đường truyền đã có, các yêu cầu trên chưa đáp ứng một cách thỏa đáng đã làm động lực cho việc hợp tác phát triển hệ bus AS-I. Thế mạnh của AS-I là sự đơn giản trong thiết kế, lắp đặt và bảo dưỡng cũng như giá thành thấp nhờ một phương pháp truyền thông đặc biệt một kỹ thuật kết nối điện cơ mới. Hình 4.2 minh họa các hệ thống mạng kết nối giữa các thiết bị cảm biến và cơ cấu chấp hành trên thực tế. Hình a) là cách kết nối dây theo điểm-điểm cổ điển, trong đó một bộ điều khiển như PLC đóng vai trò là nút trung tâm trong cấu trúc hình sao. Cách này có hạn chế là phức tạp và chi phí cao cho đường truyền. Có thể thay thế cách ghép nối cổ điển này bằng hệ thống bus đơn gian hơn, thực hiện theo hai phương pháp sau : Sử dụng bus trường nối PLC với các thiết bị vào/ra phân tán như hình b). Sử dụng một hệ thống bus như AS-I nối PLC trực tiếp với các cảm biến và cơ cấu chấp hành như hình c).
PLC PS CPU
Cảm biến /cơ cấu cấp hành
PS CPU
Cảm biến /cơ cấu cấp hành
PS CPU
Cảm biến /cơ cấu cấp hành
a) Nối điểm –điểm b) Bus trường vào/ra c) Giao tiếp AS-I Hình 4.2: Ghép nối cảm biến và cơ cấu chấp hành số TRANG – 76
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
4.1.2 Giao tiếp AS-I: a. Đặc tính: AS-Interface được tối ưu hóa để kết nối các sensor và các actuator nhị phân. Cáp AS-I được sử dụng vừa để trao đổi dữ liệu giữa các sensor, actuator và Master cũng như vừa cung cấp nguồn điện cho các sensor. Đơn giản hóa cấu trúc liên kết giữa các thiết bị. Giảm đáng kể giá thành dây nối và công lắp đặt hệ thống. - Nâng cao độ chính xác trong truyền dữ liệu. - Nâng cao độ linh hoạt và tính năng mở của hệ thống. Đơn giản hoá, tiện lợi trong việc chẩn đoán, định vị lỗi, sự cố các thiết bị. - Nâng cao khả năng tương tác giữa các thành phần (phần cứng và phần mềm) nhờ giao tiếp chuẩn. Mở rộng nhiều chức năng và khả năng ứng dụng mới của hệ thống ( có khả năng điều khiển phân tán, điều khiển giám sát từ xa qua Internet). Thời gian đáp ứng nhanh : AS-I Master cần tối đa 5ms để trao đổi dữ liệu tuần hoàn đến 31 trạm. Với các standard AS-I Module thì có thể lên đến 124 sensor và 124 actuator hoạt động trên cáp AS-I. - Nếu sử dụng các AS-I Module có chế độ địa chỉ mở rộng (extended addressing mode) , có thể lên đến 186 actuators và 248 sensors có thể được hoạt động với một Master có chế độ mở rộng . Các AS-I Master có chế độ mở rộng của Siemens cung cấp việc truy cập cực kỳ đơn giản các analog sensors/actuators hoặc các Modules hoạt động theo profile 7.3/7.4 . Hình 4.3 và Hình 4.4 minh họa việc nối dây thực tế theo phương pháp mới và cổ điển.
Hình 4.3 : Kết nối dây cổ điển TRANG – 77
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Hình 4.4 : Nối dây sử dụng giao tiếp AS-I b. Các thành phần mạng AS-I: Các thành phần hợp thành hệ thống AS-I bao gồm : AS-I Master. AS-I Slave: gồm các Module AS-I và các sensor/actuator có tích hợp các bộ nối AS-I. Cáp AS-I. - Nguồn AS-I. Bộ định địa chỉ. Phần mềm chẩn đoán hệ thống AS-I . Hình 2.5 trình bày các thành phần trong mạng AS-I. Hình 2.6 trình bày sơ đồ một mạng AS-I tiêu biểu.
Hình 4. 5 : Các thành phần mạng AS-I
TRANG – 78
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Bảng 4.1 trình bày các AS-I Master trong hệ thống tự động hoá của SIEMENS. System SIMATIC S5 PLC
AS-I Master CP 2433 for S5-90U,S5-100U CP 2430 for S5-135U,S5-155U SIMATIC S7 PLC CP 242-2 for S7-200 CP 242-8 for S7-200 CP 342-2 for S7-300 SIMATIC C7 C7-621 AS-I Distributed I/Os DP/AS-Interface Link 20 CP 242-8 for S7-200 CP 2433 for ET 200U CP 342-2 for ET 200M CP 142-2 for ET 200X DP/AS-Interface Link 65 IBM-compatible PCs CP 2413 for PC-AT Bảng 4.1: Các AS-I Master của Siemens
Hình 4.6 : Sơ đồ một mạng AS-I TRANG – 79
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
c. Cấu trúc mạng AS-I: Các hình vẽ dưới đây cho ta thấy các kiến trúc của hệ thống AS-I. Các thành phần thêm vào có thể được đặt dọc theo đường AS-I hoặc theo các nhóm, thí dụ như các đầu của các nhánh cây khác nhau. Các cấu trúc bao gồm: Đường dây 100m và một AS-I Slave ở cuối đường dây. Đường dây 90m và nối hình sao với 31 Slave ở cuối đường dây. Hình sao với 31 Slave và cùng hoặc không cùng chiều dài cáp đến Master. Đường thẳng với 31 Slave được phân bố trên mạng. Tổ hợp của các phần kể trên. Chú ý: Tổng chiều dài cáp bị giới hạn ở 100m. Muốn cho mạng rộng hơn ta phải sử dụng Repeater hay Extender. -
Kiểu hình sao: Các Slave được nối chung vào một Master controller thông qua cáp AS-I., theo hình vẽ 4.7
Hình 4.7 : Mạng hình sao -
Kiểu đường thẳng: Các Slave được nối nối tiếp với nhau thông qua cáp AS-I và cáp này nối vào Master Controler, theo hình vẽ 4.8
TRANG – 80
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Hình 4.8: Mạng đường thẳng -
Kiểu hình nhánh: Các Slave được nối song song với cáp AS-I thông qua các đầu nối T (T connector) và cáp AS-I này được nối vào Master Controler, theo hình vẽ 4.9.
Cáp AS-I T
Hình 4.9: Mạng hình nhánh -
Kiểu hình cây: Các Slave cũng được nối chung với nhau bằng đầu nối T và từ đầu nối này được nối song song lên cáp AS-I và từ cáp AS-I này được nối với Master Controler.
TRANG – 81
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
T connector
Hình 4.10: Mạng hình cây 4.1.3 Hoạt động của mạng AS-I: a. Nguyên tắc hoạt động mạng AS-I: Kỹ thuật truy cập Master – Slave: AS-Interface là “hệ thống một Master”, điều này có nghĩa là chỉ có một Master trên mạng AS-I điều khiển trao đổi dữ liệu. Master này sẽ hỏi xoay vòng tất cả các Slave và đợi trả lời. Địa chỉ điện tử: Mỗi AS-I Slave có một địa chỉ riêng của nó. Điều này chỉ xảy ra một lần trong hệ thống AS-I. Việc đặt địa chỉ có thể sử dụng bộ định địa chỉ hoặc thông qua AS-I Master. Địa chỉ được lưu trữ cố định trong AS-I Slave. Các AS-I Slave được cung cấp từ nhà sản xuất luôn có địa chỉ “0”. Hoạt động tin cậy và linh hoạt: Người ta sử dụng kỹ thuật truyền tốc độ cao. Master giám sát điện áp trên cáp và dữ liệu được truyền. Nếu phát hiện có lỗi truyền và hư hỏng trong các Slave, nó truyền thông điệp đến PLC. Người sử dụng có thể xử lý với thông điệp này. Việc trao đổi hay thêm các Slave trong hoạt động bình thường không làm thay đổi, không làm sai truyền thông với các mạng khác. b. Đặc tính vật lý: Cáp 2 dây cho dữ liệu và nguồn: Sử dụng cáp 2 dây có tiết diện ngang 2x1,5 mm 2 trong mạng. Cả dữ liệu và nguồn điện được truyền trên cáp này. Năng lượng khả dụng phụ thuộc vào đơn vị nguồn điện AS-I đang sử dụng. Để nối dây tối ưu , người ta sử dụng cáp được bảo vệ cơ khí để ngăn sự kết nối ngược và làm đơn giản tiếp xúc với các Module ứng dụng AS-I sử dụng kỹ thuật ấn xuyên cách điện (Penetration technique).
TRANG – 82
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Mạng cấu trúc cây: “Cấu trúc cây” của AS-I cho phép bất kỳ điểm nào trên bộ phận cáp (Cable section) cũng được sử dụng như bắt đầu một nhánh mới. Tổng chiều dài này của tất cả các subsection có thể lên đến 100 m. Tích hợp trực tiếp: Thực tế tất cả các mạch điện tử cần cho các Slave đã được tích hợp trên một IC đặc biệt. Việc này cho phép bộ kết nối AS-I được tích hợp trực tiếp vào các actuator và các sensor nhị phân. Tất cả các thành phần yêu cầu có thể được cài đặt trong không gian xấp xỉ 2 cm³. Tích hợp nhiều chức năng cho người sử dụng: Với khả năng tích hợp trực tiếp sẽ cho phép tất cả các thiết bị được trang bị đầy đủ các chức năng trên bốn đường dữ liệu và bốn đường tham số. Các actuator/sensor thông minh như vậy làm tăng thêm các khả năng của mạng như giám sát, gán tham số, kiểm tra ô nhiễm … c. Dữ liệu số: Chu kỳ quét: o Tối đa 5 ms đối với các standard AS-I Slaves. o Tối đa 10 ms đối với các AS-I Slaves có chế độ địa chỉ mở rộng AS-I sử dụng chiều dài thông điệp không đổi. Với AS-I ta không cần các thủ tục phức tạp để điều khiển việc truyền dữ liệu và nhận dạng các chiều dài thông điệp hoặc các khuôn mẫu dữ liệu. Việc này làm cho các Master có thể hỏi vòng tất cả các Slave kết nối trong vòng tối đa 5ms và cập nhật dữ liệu trên tất cả các Slave và Master. Nếu chỉ một AS-I Slave sử dụng chế độ địa chỉ mở rộng đặt tạ i một địa chỉ, Slave này được truy cập mỗi lần 5 ms. Nếu hai Slave mở rộng (Slave A và B) phát một địa chỉ, thì chu kỳ truy cập cực đại là 10ms (Slave B chỉ có thể được nối với các Master mở rộng). Số lượng Slave kết nối: o Tối đa 31 standard Slaves. o Tối đa 62 Slaves sử dụng chế độ địa chỉ mở rộng. Các Slave là các kênh nhập và kênh xuất của hệ thống AS-I. Chúng chỉ tích cực khi được gọi bởi các Master. Chúng kích các hoạt động hoặc truyền các phản ứng đến các Master khi có yêu cầu. Mỗi Slave được nhận dạng bằng một địa chỉ riêng của nó (giá trị từ 1 đến 31). Tối đa 62 Slave sử dụng chế độ địa chỉ mở rộng có thể được kết nối vào một Master có chế độ mở rộng. Cặp Slave sử dụng chế độ địa chỉ mở rộng sẽ sử dụng cùng một địa chỉ. Nói cách khác các địa chỉ từ 1 đến 31 có thể được gán cho hai Slave mở rộng. Nếu các standard Slaves được nối vào một Master có chế độ mở rộng, thì tối đa chỉ đến 31 standard Slaves được nối vào Master có chế độ mở rộng
TRANG – 83
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG CHƯƠNG 4
-
Số lượng vào/ra: o Tối đa 248 ngõ vào và ngõ ra nhị phân với các standard Module. o Tối đa 248 ngõ vào/186 ngõ ra với các Module sử dụng chế độ địa chỉ mở rộng. Mỗi Slave có thể nhận 4 bit dữ liệu và truyền 4 bit dữ liệu. Các Module đặc biệt cho phép mỗi bit b it này sẽ được dùng cho một actuator hay sensor sensor nhị phân. Điều Điều này có nghĩa là có thể kết nối tối đa 248 ngõ vào/ ra ( 124 Input /124 Output ) trên cáp AS-I với các standard AS-I Slaves. Tất cả các actuator hay sensor tiêu biểu có thể kết nối với AS-I theo cách này. Các Module được sử dụng như là các ngõ vào/ra phân tán. Nếu các Modules Modules có chế độ địa chỉ mở rộng được sử dụng, thì tối đa 4 inputs và 3 outputs cho phép ở mỗi Module; Module; nói nó i cách khác là tối đa 248 vào và 186 ra có thể hoạt động với các Modules sử dụng chế độ địa chỉ mở rộng. 4.1.4 Ứng dụng mạng AS-i: a. Dây chuyền đóng chai: Công nghệ đóng chai là một khâu rất quan trọng và phức tạp trong các nhà máy sản xuất bia, nước ngọt, nước khoáng… Do yêu cầu công nghệ nhà máy, việc lắp đặt dây chuyền rất phức tạp; rất nhiều băng tải, cảm biến … để giảm đi sự phức tạp, ta có thể ứng dụng mạng AS-I vào công nghệ này. Khi đó sơ đồ nối dây giữa các thiết bị điều khiển cũng như các sensor thông minh trở nên rất đơn giản vì việc kết nối này chỉ dùng cáp AS-I hai dây vừa cung cấp nguồn và truyền dữ liệu giữa các thiết bị mà vẫn đảm bảo đúng yêu cầu công nghệ.
TRANG – 84
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG CHƯƠNG 4
Hình 4.11: Sử dụng mạng AS-I trong sản xuất bia
Hình 4.12: Sử dụng mạng AS-I trong sản xuất và đóng gói bánh Biscuit b. Dây chuyền lắp ráp xe hơi: Dây chuyền lắp ráp xe hơi gồm nhiều công đoạn, hầu hết các công đoạn đoạn đều dùng các cá c robot tự động, trên các robot này ta có thể dùng các Module của AS-I để điều khiển và các robot này được kết nối chung nhau qua cáp AS-I, khi đó việc kết nối dây điều
TRANG – 85
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG CHƯƠNG 4
khiển các robot rất đơn giản và truyền về trung tâm điều khiển cũng chỉ bằng cáp AS-I hai dây. Ngoà Ngoà i các cá c ứng dụng trên, trê n, ta có thể dùng mạng AS-I trong nhiều ứng dụng khác, tuy nhiên tùy theo yêu cầu công nghệ mà ta có thể lựa chọn việc lắp đặt hệ thống điều khiển tự động cho phù hợp. Vì ở đây không phải là trong bất kỳ lĩnh vực nào ta cũng có thể dùng mạng AS-I được do mạng AS-I có những hạn chế riêng. 4.2 CÁC AS-I MASTER: 4.2.1 Giới thiệu: AS-Interface là hệ thống một Master. AS-I Master tạo ra sự kết nối cho điều khiển của người dùng hay kết nối với một hệ thống bus trường cấp cao hơn. Nó đóng vai trò kiểm soát toàn bộ hoạt động giao tiếp trong mạng. AS-I Master có thể là một máy tính điều khiển như PLC, PC hay IPC hoặc có thể là một bộ nối bus trường (fieldbus coupler). Trong trường hợp trạm chủ là một bộ nối bus trường, trường, nó có nhiệm nhiệm vụ chuyển đổi giao giao thức giữa giữa một đoạn bus trường (ví dụ PROFIBUS-DP) với mạng AS-I. Đối với các hệ thống SIMATIC, các bộ xử lý truyền thông (communications processors: CPs) điều điều khiển sự truyền truyền thông ở cấp trường hoặc đóng va va i trò là các ASI Masters . Các bộ xử lý truyền thông này gồm có các cổng gateway hoạt động giống như AS-I Master và cho phép truy cập các cảm biến và cơ cấu chấp hành. 4.2.2 AS-I Master PLC S7-200: PLC S7-200 được sử dụng làm AS-I Master thông qua các Module mở rộng sau: a. CP242 - 2 (Standard AS-I Master): Module CP 242-2 cho phép kết nối hệ thống AS-I vào PLC S7-200. CP 242-2 cung cấp đầy đủ các chức năng xác định của một standard AS-I Master, theo hình vẽ 4.13
TRANG – 86
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
. Hình 4.13: Hệ thống AS-I với AS-I Master CP 242-2 -
-
Các thông số kỹ thuật của CP 242-2 : o Chu kỳ quét: 5 ms cho 31 Slave . o Thứ tự địa chỉ: 8 Module vào số và 8 Module ra số, 8 Module vào và 8 Module ra analog . o Nguồn cung cấp: 5 VDC o Nguồn cung cấp cho cáp : Tùy thuộc vào loại AS-I o Dòng tiêu thụ tối đa của Master : 200 mA o Nhiệt độ vận hành : 0 – 60 oC o Kích thước : (W – H – D ) 90 x 80 x62 o Trọng lượng: 200 g. Trạng thái các đèn báo: o SF (red) :Lỗi hệ thống . o APF (red) :Lỗi nguồn cung cấp . o CER (yellow) :Lỗi cấu hình . o AUP (green) :Đang làm việc . o CM (yellow) :Chế độ cấu hình . o SET Button :Đặt cấu hình chuẩn . o DISPLAY Button :Xem trạng thái các Slave trong mạng. TRANG – 87
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Hình dáng và cách nối cáp AS-I: Hình dạng và cách ghép nối cáp AS-I vào Module CP 242-2 trình bày trên hình vẽ 4.14
Hình 4.14: Nối cáp AS-I vào CP 242-2 b. CP 243-2 (Extended AS-I Master): Module CP 243-2 cho phép kết nối AS-I vào PLC S7-200 (CPU 222, CPU 224, ...). CP 243-2 là một Master có đầy đủ các chức năng của một extended AS-I Master . c. CP 242-8 (Standard AS-I Master): Module CP 242-8 không chỉ thực hiện chức năng của CP 242-2 mà còn cho phép kết nối với PROFIBUS DP (DP Slave). Điều này làm giảm giá thành kết nối của S7-200 với PROFIBUS DP tại cùng thời điểm. Hình vẽ 4.15 minh họa hệ thống AS-I sử dụng Module CP 242-8
TRANG – 88
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Hình 4.15: Hệ thống AS-I có AS-I Master CP 242-8 4.2.3 AS-I Master PLC S7-300: PLC S7-300 được sử dụng làm AS-I Master thông qua các Module mở rộng sau: a. CP 342-2 (Standard AS-I Master): Module CP 342-2 là standard AS-I Master Module dùng cho các bộ điều khiển S7-300 và Module phân tán ET 200M. CP342-2 chiếm 16 byte inputs và 16 byte outputs trong vùng analog của bộ điều khiển mà qua đó ta có thể đọc và xuất các dữ liệu các Slave. Các thông số kỹ thuật của CP 342-2: o Chu kỳ quét : 5 ms cho 31 Slave o Thứ tự địa chỉ : 16 byte vào và 16 byte ra trong vùng analog o Nguồn cung cấp : 5 VDC o Nguồn cung cấp cho cáp : Tùy thuộc vào loại AS-I o Dòng tiêu thụ tối đa của Master : 200 mA o Nhiệt độ vận hành : 0 – 60 oC o Kích thước : (W – H – D ) 40 x 125 x115 o Trọng lượng : 200 g TRANG – 89
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
-
Trạng thái các đèn báo: o ADR (đỏ) :Lỗi địa chỉ o RUN (đỏ) :Master hoạt động o SF (đỏ) :Lỗi hệ thống. o APF đỏ) :Lỗi nguồn AS-I. o CER (vàng) :Lỗi cấu hình. o AUP (xanh) :Chế độ tự động. o CM (vàng) :Chế độ cấu hình. Hình vẽ 4.16 minh họa hệ thống AS-I sử dụng Module CP 342-2
Hình 4.16: Hệ thống AS-I với AS-I Master CP 342-2 b. CP 343-2 (Extended AS-I Master): CP 343-2 là extended AS-I Master Module dùng cho các bộ điều khiển S7-300 và Module phân tán ET 200 M. CP 343-2 chiếm 16 byte inputs và 16 byte outputs trong vùng analog của bộ điều khiển mà qua đó các AS-I standard Slave và AS-I A Slaves có thể được địa chỉ. Các AS-I B Slaves có một vùng địa chỉ I/O thêm vào mà có thể truy cập bằng cách sử dụng các hàm hệ thống SFCs. Khi sử dụng một hàm FC có thể xử lý việc gọi Master
TRANG – 90
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
từ chương trình điều khiển. FC được cung cấp theo đĩa cùng với sổ tay sử dụng CP 343-2 4.2.4 AS-I Gateways: Ngay khi sử dụng PROFIBUS DP với các thiết bị ngoại vi phân tán, thì việc sử dụng AS-Interface có thể có nhiều ưu điểm. Việc nối mạng các thiết bị ngoại vi của quá trình có thể được mở rộng vượt ra ngoài PROFIBUS đến tận các actuator/sensor. Các thiết bị sau đây có thể được sử dụng để làm gateway đến PROFIBUS: DP/AS-Interface Link 20 (kết nối được thiết kế với cấp bảo vệ IP 20 để giao tiếp AS-Interface với PROFIBUS DP). CP 242-8 (kết nối đồng thời S7-200 với PROFIBUS và AS-Interface) CP 142-2 cho ET 200X CP 342-2 cho ET 200M CP343-2 cho ET 200M (extended Master) CP 243-3 cho ET 200U S5-95U PLC với giao tiếp PROFIBUS và CP 2433 S7-300/CPU 315-2DP với CP 342-2 hoặc DP343-2 DP/AS-Interface Link (kết nối được thiết kế với cấp bảo vệ IP 65 để giao tiếp AS-Interface với PROFIBUS DP) Hình vẽ 4.17 minh họa hệ thống AS-I sử dụng gateway DP/AS Interface Link 20.
Hình 4.17: Hệ thống AS-I với DP/AS-Interface Link 20 TRANG – 91
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
4.3 CÁC THÀNH PHẦN CỦA MẠNG AS-I: Ngoài các AS-I Master được trình bày trong mục 4.2, hệ thống AS-I còn có các thành phần sau đây: 4.3.1 Cáp AS-I: Cáp AS-I được thiết kế là loại cáp 2 dây không vỏ bọc, truyền các tín hiệu và nguồn điện cho các sensor và actuator được kết nối bằng các AS-I Module. Việc kết nối mạng không bị giới hạn với mỗi loại cáp. Khi cần ta có thể thay đổi cáp 2 dây đơn giản bằng Module thích hợp hoặc các bộ nối T. Cáp AS-I gồm hai loại : Cáp dẫn điện thông thường (cáp tròn): có ưu điểm dể tìm , giá thành thấp. Cáp AS-I đặc biệt (cáp dẹt): có ưu điểm là dể lắp đặt. Đường kính lõi dây là 1,5mm để đáp ứng yêu cầu cung cấp dòng một chiều tối thiểu 2A (24VDC).
Hình 4.18: Các loại cáp AS-I
TRANG – 92
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
4.3.2 Các Module AS-I: Trong hệ thống AS-I , các AS-I Modules có thể được xem như các Module vào và ra. Cùng với các actuator và sensor, chúng tạo thành các AS-I Slave và kết nối các Slave này vào AS-I Master. Các actuator/sensor được kết nối bằng bộ nối M12. Các chân theo chuẩn DIN IEC 947 5-2. Các Module này với kích thước xấp xỉ 45x45x80 mm được sử dụng ngay bên trong thiết bị. Chúng được kết nối với cáp AS-I và có cấp bảo vệ IP67. a. Các Module AS-I: Được phân thành hai loại: AS-I Module tích cực (active): Là Module có chip AS-I tích hợp sẵn. Sử dụng Module này ta có thế kết nối được tất cả các sensor và actuator thông thường. Do đó các actuator và sensor bình thường có thể được nối mạng AS-I. AS-I Module thụ động (passive): Các Module này không chứa trong nó các linh kiện điện tử và cho phép kết nối các AS-I sensor và actuator có tích hợp AS-I chip. Các Module này được thiết kế sao cho có thể tạo ra một giao tiếp cơ – điện duy nhất với cáp AS-I. Việc này đạt được bằng cách tạo phần dưới (lower section) giống nhau của Module, do đó cũng được gọi là Module kết nối (connection Module). Các phần trên (upper section) của Module được cấu tạo đặc biệt, được gọi là các Module ứng dụng (application Module). Sự thay đổi các thành phần của Module này trãi dài từ các vỏ bọc đơn giản dùng để rẽ nhánh cáp AS-I đến các Module ứng dụng có tích hợp chip AS-I dùng để kết nối với 4 sensor hoặc actuator thông thường. Hình vẽ sau mô tả một Module dùng để kết nối với mạng AS-I cho các sensor/actuator không tích hợp chip AS-I.
Hình 4.19: Module kết nối các sensor và actuator không tích hợp AS-I chip
TRANG – 93
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Hình vẽ bên dưới minh họa một Module AS-I tích cực có 4 kết nối.
Hình 4.20: Một AS-I Module tích cực có 4 kết nối b. Các sensor/Actuator có tích hợp AS-I chip: AS-I chip đặc biệt quan trọng trong hệ thống AS-I. Các sensor và actuator có tích hợp AS-I chip có thể kết nối với mạng AS-I mà không cần Module kết nối tích cực. Board mạch dành cho AS-I chip có không gian rất nhỏ (2 cm 3). AS-I chỉ cung cấp cho 4 sensor ngõ ra và ngõ vào dữ liệu cũng như 4 ngõ ra tham số. Với các nhóm tham số vào này, ta có thể gán các tham số cho các sensor thông minh qua cáp AS-I.
TRANG – 94
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4 4 đường dữ liệu D 0 ..D3
4 đường tham số P 0 ..P3
Hình 4.21: Sensor/actuator có giao tiếp AS-I Sensor được biểu diễn theo hình vẽ trên sử dụng 3 bit dữ liệu là các ngõ vào, 1 bit dữ liệu là ngõ ra và 4 bit tham số. Các sensor có tích hợp AS-I chip được nhiều hãng sản xuất. Sau đây là một ví dụ minh họa cho một cảm biến thông minh (intelligent sensor). -
Sensor thông minh (sensor điện từ )
Hình 4.22: Sensor thông minh
TRANG – 95
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Hình vẽ 4.23 trình bày cấu trúc và các vùng hoạt động của sensor thông minh trên.
VUØNG
1
VUØNG
2
VUØNG
3
VUØNG
4
VUØNG
5
Hình 4.23: Cấu trúc một sensor thông minh Vùng 1 : Đối tượng quá gần hay sensor ngắn mạch. Vùng 2 : Chắc chắn “ON”. Vùng 3 : Không chắc chắn. Vùng 4 : Vùng chắc chắn “OFF”. Vùng 5 : Đứt dây dẫn cuộn dây sensor. Sn : Khoảng cách đóng mạch định mức. Sr : Khoảng cách đóng mạch thực. o Khả năng bus của sensor: Khả năng bus của sensor có thể được thực hiện với AS-I. Điều này giúp cho việc nối dây được đơn giản hơn, vì ở đây không cần đến các Module vào/ra trong điều khiển. Các sensor có khả năng nối bus này được kết nối trực tiếp qua cáp AS-I . o Các tín hiệu phụ: Một ưu điểm phụ là để bổ sung các tín hiệu đóng mạch nhị phân, các thông tin phụ để chẩn đoán đứt dây hay nhiễu tín hiệu khi truyền tải. Hướng dữ liệu được đưa về là các tham số của cảm biến (ví dụ như độ nhạy, khoảng cách đóng mạch, sự trễ tín hiệu …) trên cùng dây dẫn
TRANG – 96
ĐIỀU KHIỂN LẬP TRÌNH 2
o
CHƯƠNG 4
Tích hợp thông minh: Các AS-I sensor có khả năng bus đều có một bộ vi xử lý sao cho nó có khả năng chẩn đoán thông minh. Như vậy các đặc tính trễ, tuyến tính … có thể được lập trình sẳn trong sensor.
4.3.3 Lắp đặt Module AS-I: Lắp đặt một AS-I Module trên cáp AS-I thực hiện đơn giản bằng cách sử dụng kỹ thuật kết nối được mô tả như thí dụ trong hình 4.24.
(a)
(b)
(c)
Hình 4.24: Cách lắp đặt AS-I Module Việc lắp đặt được thực hiện theo các bước sau: Module kết nối được gắn vào thanh chuẩn 35mm. Module kết nối có 4 stopper, chúng dùng để đóng vào chổ hở cáp không sử dụng (a). Đặt cáp AS-I vào ,đưa nó vào đường dẫn trên các lá tiếp xúc và được an toàn về cơ học.Không có thiết lập tiếp xúc điện.Hai stopper được đặt vào trong chổ để hở cáp không sử dụng (b). Xiết chặt Module ứng dụng vào thanh gá,cáp AS-I được gép chặt vào các thanh tấm tiếp xúc .Chúng đưa vào các dây dẫn ở hai điểm và bảo đảm kết nối tin cậy.Sau khi lắp đặt đúng thì Module có kiểu bảo vệ IP 67 (c). 4.3.4 AS-I Repeater/Extender: a. Phạm vi ứng dụng: AS-I Repeater/Extender dùng để sử dụng trong môi trường giao tiếp sensor/actuator. Đây là các thiết bị dùng để mở rộng chiều dài tối đa của một hệ thống AS-I dài 100m. với một đoạn 100m có sẳn ta có thể được mở rộng thêm tối đa thành 2 đoạn 100m .
TRANG – 97
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
b. Sử dụng repeater: AS-I repeater được sử dụng khi các Slave buộc phải hoạt động trên tất cả các đoạn cáp. Cần có một bộ nguồn điện AS-I riêng cho mỗi đoạn AS-I (trước và sau repeater). Repeater có các đặc tính sau: Mở rộng chiều dài cáp đến tối đa 300m. Các Slave có thể được sử dụng ở cả 2 bên AS-I. Mỗi bên giao tiếp AS-I cần một bộ nguồn AS-I. Có cách ly điện áp cho mỗi bên. Lắp đặt trong dạng đóng vỏ Module ứng dụng chuẩn. Hệ thống có sử dụng repeater được minh họa trong hình vẽ sau:
Hình 4.25: Hệ thống có sử dụng Repeater c. Sử dụng Extender: AS-I Extender được sử dụng trong các ứng dụng mà AS-I Master được lắp đặt ở vị trí cách xa hơn chổ lắp đặt thực tế của AS-I. Các AS-I Master có khoảng cách xa đoạn AS-I 100m. Các Slave chỉ có thể được sử dụng một bên (không có Master). - Nguồn điện AS-I chỉ cần cho bên các Slave. Không có sự cách ly điện giữa 2 cáp . TRANG – 98
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
-
Chỉ thị điện áp đúng. Được lắp đặt trong dạng đóng vỏ Module ứng dụng chuẩn. Extender được gắn trên Module kết nối FK-E. Hệ thống có sử dụng extender được minh họa trong hình vẽ sau:
Hình 4.26: Hệ thống có sử dụng Extender 4.3.5 Bộ định địa chỉ:
Hình 4.27: Bộ định địa chỉ Mỗi Slave trên AS_I cần có một địa chỉ. Địa chỉ này được lưu trên Slave. Ta có thể định địa chỉ một Slave bằng bộ định địa chỉ như hình vẽ 4.27 TRANG – 99
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
-
Sử dụng bộ định địa chỉ o Để lập trình một Module (Module ứng dụng), cần gắn nó vào một adapter đặc biệt trên bộ định địa chỉ. Địa chỉ lưu trữ sẽ hiện lên màn hình chỉ thị của bộ định địa chỉ này khi ta ấn nút ADR. Địa chỉ mới được đặt bằng cách dùng nút mũi tên. Sau khi nhấn nút PRG thì địa chỉ được lưu vào Module. o Đặt địa chỉ cho các actuator/sensor thông minh thì cũng giống như với Module ứng dụng. Các actuator/sensor được nối vào bộ định địa chỉ qua đầu nối M12. Đơn vị định địa chỉ có một đầu nối cái (female) M12 được tích hợp sẵn. Bộ định địa chỉ sử dụng nguồn điện qua các pin được tích hợp sẵn và có thể nạp lại được. Khi không sử dụng thì đơn vị này tự động ngắt nguồn sau một khoảng thời gian. 4.4 CHẾ ĐỘ AS-I MASTER: 4.4.1 Nguyên tắc Master/Slave trong AS-I: a. Hoạt động của AS-I: AS_I hoạt động theo nguyên tắc Master/Slave. Điều này có nghĩa là AS_I Master kết nối với cáp AS_I điều khiển trao đổi dữ liệu với các Slave qua giao tiếp với cáp AS_I . Sơ đồ khối trong hình vẽ 4.28 minh họa 2 giao tiếp của AS_I Master CP.
AS-I slave
PLC/PC AS-I Master
CPU
CP
User program
/O
Interface to the user program
Configuration Address
AS-I cable
-
Hình 4.28: Sơ đồ khối giao tiếp AS_I Master/Slave Các lệnh gán tham số và dữ liệu xử lý được truyền qua giao tiếp giữa “Master CPU” và “Master CP”.
TRANG – 100
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Các chương trình người dùng có những hàm thích hợp để gọi và đặt các cơ chế tương ứng để đọc và ghi qua giao tiếp này . Thông tin được trao đổi với các AS_I Slaves thông qua giao tiếp giữa AS-I Master CP và cáp AS_I . Khi đó dữ liệu sẽ truyền giữa Master và Slave theo sơ đồ hình 4.29.
Hình 4.29: Truyền dữ liệu AS_I Master/Slave b. Nhiệm vụ và chức năng của AS-I Master: Qui cách AS_I Master phân biệt các Master theo dãi các chức năng khác nhau được gọi là các “profile”. Đối với standard AS_I Masters và extended AS_I Masters có 3 loại Master khác nhau: M0, M1, M2 cho standard Master, M0e, M1e, M2e cho extended Master. Các profile có các ý nghĩa thực tế như sau: Master profile M0/M0e: (hoạt động chuẩn) Master có thể trao đổi dữ liệu I/O với các AS_I Slave riêng. Master được đặt cấu hình bằng cách sử dụng cấu hình trạm được tìm thấy trên cáp được gọi là “cấu hình mong đợi” (expexted configuration). Master profile M1/M1e: Profile này bao gồm tất cả các chức năng theo qui cách AS_I Master. Master profile M2/M2e: Các chức năng của profile này phù hợp với Master profile M0/M0e, nhưng trong profile này các AS_I Master cũng có thể gán tham số cho AS_I Slave. Sự khác nhau giữa extended AS_I Masters và standard AS_I Masters là extended AS_I Masters có thể kết nối đến 62 AS_I Slave sử dụng chế độ địa chỉ mở rộng. c. Hoạt động của AS-I Slave: Kết nối với cáp AS_I : TRANG – 101
ĐIỀU KHIỂN LẬP TRÌNH 2
-
-
-
CHƯƠNG 4
AS_I Slave chứa một AS_I chip cho phép ghép một thiết bị AS_I (sensor/actuator) với cáp bus chung vào AS_I Master. AS_I chip chứa các thành phần sau: o 4 ngõ vào và ngõ ra đặt cấu hình được. o 4 ngõ ra tham số. Các tham số hoạt động, dữ liệu cấu hình gán cho I/O, mã nhận dạng (indetification code) và các địa chỉ Slave được lưu trong bộ nhớ phụ (như EEPROM). Dữ liệu I/O: Dữ liệu hữu dụng cho các thành phần tự động hóa được truyền từ AS_I Master đến AS_I Slave ở các ngõ ra dữ liệu. Các giá trị ở các ngõ vào dữ liệu sẵn sàng cung cấp cho AS_I Master khi AS_I Slave đựơc hỏi vòng. Các tham số: Bằng cách sử dụng các ngõ ra tham số của AS_I Slave, AS_I Master có truyền các dữ liệu này như các dữ liệu đơn giản không cần phải diễn dịch. Các giá trị tham số này có được dùng để điều khiển và thay đổi các chế độ làm việc bên trong của các sensor hay actuator. Ví dụ có thể cập nhật các giá trị khác chuẩn trong các giai đoạn hoạt động. Cấu hình: Cấu hình I/O chỉ ra các đường dữ liệu nào của AS_I Slave được sử dụng là các ngõ vào, các ngõ ra hoặc các ngõ ra hai chiều. Cấu hình I/O (4 bit) được qui định bởi nhà sản xuất Slave và có thể tìm thấy trong sổ tay AS_I Slave. Ngoài cấu hình I/O, kiểu AS_I Slave được mô tả bằng mã nhận dạng. Mã nhận dạng cho mỗi AS_I Slave được mã hoá bằng 4 bit. Mã này cũng được xác định bởi nhà sản xuất và có thể tìm thấy trong mô tả AS_I Slave của nhà sản xuất.
4.4.2 Chuyển đổi dữ liệu: a. Cấu trúc thông tin/dữ liệu: Truớc khi trình bày các giai đoạn hoạt động và các chức năng trong các giai đoạn này, ta cần tìm hiểu sơ lược về cấu trúc dữ liệu của hệ thống AS-I Master/Slave. Hình vẽ 4.30 giới thiệu các loại dữ liệu và các hệ thống trong mạng.
TRANG – 102
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
PLC/PC
Slave AS-I Master CP
CPU User program
Data Images I/O data
I/O data
Act.params Act. Config
Parameters
LDS Config data
LAS
Config.data (EEPROM)
Address
Expected config data Parameters LPSc able
Hình 4.30: Sơ đồ phạm vi dữ liệu và cấu trúc hệ thống AS_I -
AS-I Master có các cấu trúc sau: o Data image: chứa các thông tin lưu trữ tạm thời sau: Các tham số thực: là hình tượng của các thông số hiện có trongAS-I Slave. Cấu hình dữ liệu thực: chứa các cấu hình I/O và các mã ID của tất cả các AS-I Slave được kết nối mỗi các lần dữ liệu này được đọc từ AS-I Slave. Danh sách các AS-I Slave được phát hiện (LDS): LDS này sẽ xác định những AS-I Slave được phát hiện trên bus AS-I.
TRANG – 103
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Danh sách các AS-I Slave được tích cực (LAS): LAS này sẽ xác định các Slave đã được tích cực do AS-I Master. Dữ liệu I/O chỉ trao đổi với những AS-I Slave đã đựơc tích cực. o I/O data: là các dữ liệu vào và ra. o Configuration data: là những dữ liệu cố định (non-volatile), thường được lưu trữ trong EEPROM, có giá trị không đổi khi bị mất nguồn, gồm: Dữ liệu mong muốn: là các giá trị so sánh chọn lựa được. Danh sách các AS-I Slave vĩnh cửu: danh sách này liệt kê ra các AS-I Slave được AS-I Master yêu cầu trên cáp AS-I. AS-I Master sẽ kiểm tra liên tục khi tất cả các AS-I Slave được xác định trong LPS và khi dữ liệu của chúng phù hợp với dữ liệu được yêu cầu. AS-I Slave có các cấu trúc sau: o I/O data. o Parameters o Actual configuration data: gồm các cấu hình I/O và mã ID của AS-I Slave. o Address: AS-I Slave có địa chỉ “0” lúc cài đặt. Để cho phép trao đổi dữ liệu, các AS-I Slave phải được lập trình thêm các địa chỉ khác “0”. Địa chỉ “0” được dự trữ cho cácc chức năng đặc biệt. b. Các giai đoạn hoạt động: Sơ đồ ở hình 4.31 cho thấy các giai đoạn hoạt động riêng biệt của quá trình chuyển đổi dữ liệu. Ta thấy có 3 giai đoạn chính: Giai đoạn khởi tạo ban đầu (Initialization phase) Giai đoạn khởi động (Startup phase) Giai đoạn trao đổi dữ liệu (data exchange phase)
TRANG – 104
ĐIỀU KHIỂN LẬP TRÌNH 2
Offline phase
Starup phase
CHƯƠNG 4
Initalization
Giai on bo v
Giai đoạn kích hoạt ở chế độ bảo vệ ” Khởi động với dữ liệu đã được cấu hình”
Normal mode
Giai đoạn kích hoạt ở chế độ cấu hình ” Khởi động không cần dữ liệu đã được cấu hình”
Giai đoạn chuyển dữ liệu
Giai đoạn quản lý
Giai đoạn bao hàm
Hình 4.31: Các giai đoạn hoạt động Giai đoạn khởi tạo ban đầu (Initialization Mode): Giai đoạn này còn gọi là giai đoạn offline, thiết lập trạng thái cơ bản của Master. Module được khởi tạo sau khi chuyển mạch cấp điện hoặc theo sau khi khởi động lại trong khi hoạt động. Trong khi khởi tạo, các ảnh của tất cả các ngõ vào Slave và dữ liệu ra theo quan điểm ứng dụng được đặt giá trị “0” (không tích cực). Sau khi bật nguồn cung cấp, các tham số đã cấu hình được copy vào vùng tham số để kích hoạt trình tự sử dụng các tham số đặt trước. Giai đoạn khởi động (Startup Phase): Giai đoạn này gồm các giai đoạn nhỏ sau: o Giai đoạn phát hiện: Phát hiện các AS_I Slave trong giai đoạn khởi động
TRANG – 105
ĐIỀU KHIỂN LẬP TRÌNH 2
o
o
o
CHƯƠNG 4
Trong khi khởi động hoặc sau khi reset, AS_I Master chạy qua giai đoạn khởi động mà nó phát hiện các trạm tối đa (31 trạm) được nối vào cáp AS_I và kiểu của trạm. Kiểu của trạm được qui định bởi byte cấu hình được lưu trữ thường xuyên trên Slave và Master có thể dò ra. Byte này chỉ ra I/O của Slave và kiểu Slave (mã ID) được gán. Master cập nhật các Slave phát hiện được vào danh sách các Slave được phát hiện (LDS). Giai đoạn kích hoạt : kích hoạt các AS_I Slave Sau khi AS_I Slave được phát hiện, chúng được kích hoạt do Master truyền lệnh gọi đặc biệt. Khi kích hoạt các Slave riêng, một sự khác biệt được tạo ra giữa hai chế độ trên AS_I Master: Master ở chế độ cấu hình: Tất cả các trạm được phát hiện (ngoại trừ Slave có địa chỉ “0”) được kích hoạt. Trong chế độ này, có thể đọc các giá trị thật và cất chúng (-> chế độ cấu hình) Master ở chế độ bảo vệ: Chỉ có các trạm tương ứng với cấu hình mong đợi được cất trên AS_I Master được kích hoạt. Nếu cấu hình thật được tìm thấy trên cáp AS_I khác với cấu hình mong đợi này, thì sẽ được chỉ thị ở Master. Master đưa các trạm được kích hoạt vào danh sách các trạm được kích hoạt (LAS).
Chế độ bình thường: Sau khi hoàn tất giai đoạn khởi động, AS_I Master chuyển sang chế độ bình thường. o Giai đoạn trao đổi dữ liệu Master gửi dữ liệu tuần hoàn (dữ liệu xuất) ra các trạm và nhận các thông điệp ghi nhận (dữ liệu vào). Nếu có lỗi được phát hiện trong khi truyền dữ liệu đi, Master lặp lại hỏi vòng thích hợp. Tất cả các Slave được nối vào cáp AS_I được hỏi vòng trong 5ms. o Giai đoạn quản lý Trong giai đoạn này, tất cả các công việc hiện có của các ứng dụng điều khiển được xử lý và truyền đi. Ví dụ các công việc có thể như sau : Truyền tham số: 4 bit tham số được chuyển đến trạm mà thí dụ có thể được dùng để đặt giá trị ngưỡng. Sửa đổi các địa chỉ Slave: Chức năng này cho phép Master thay đổi các địa chỉ của Slave. o Giai đoạn bao hàm (inclusion phase): Trong giai đoạn bao hàm các Slave mới thêm vào được đưa vào trong danh sách các Slave được phát hiện và cung cấp chế độ cấu hình và chúng cũng được kích hoạt (ngoại trừ các Slave có địa chỉ “0”). Nếu Master ở chế độ TRANG – 106
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
được bảo vệ thì các Slave được lưu trữ trong cấu hình mong đợi của AS_I Master mới được kích hoạt. Với cơ chế này các Slave đã hết phục vụ tạm thời cũng được bao hàm lần nữa. c. Các chức năng giao tiếp: Để kiểm soát phản ứng Master/Slave từ chương trình người dùng, có nhiều chức năng khả dụng ở giao tiếp được minh họa ở hình vẽ 4.32.
Hình 4.32: Các chức năng giao tiếp Các hoạt động có thể có: Read/Write: Khi ghi, các tham số được chuyển đến Slave và các ảnh tham số trên CP; Khi đọc, các tham số được truyền từ Slave hoặc ảnh tham số CP vào CPU. Read and store (configured) configuration data: Các tham số được đặt cấu hình được đọc từ bộ nhớ cố định của CP. Configure actual: Khi đọc, các tham số và dữ liệu được đọc từ Slave và lưu trữ cố định trên CP. Khi ghi, các tham số và dữ liệu được lưu trữ cố định trên CP. Supply Slaves with configured parameters: Các tham số đã đặt cấu hình được truyền từ vùng nhớ cố định của CP đến các Slave. TRANG – 107
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
4.5 HỆ THỐNG AS-I: 4.5.1 Thiết lập hệ thống AS-I: Hệ thống AS_Interface là giải pháp thích hợp trong công nghiệp để nối các sensor và actuator nhị phân vào thiết bị ở cấp điều khiển. Nó ghép Sensor và Actuator vào PLC, NC, RC (Robot Controller). Phần tử cơ bản của AS_I là Slave-chip mà qua đó các sensor và các actuator được nối với cáp AS_I. Trong một chu kỳ, 4 bit thông tin được truyền nối tiếp đến mỗi Slave từ Master và 4 bit được trả lại. Dữ liệu có thể được sử dụng như dữ liệu nhập và xuất. Thông thường cáp AS_I là cáp dẹt hai dây không có bọc giáp hoặc cáp tròn chuẩn có nhiệm vụ truyền dữ liệu và nguồn điện đồng thời. Hình vẽ 4.33 minh họa hệ thống AS-I.
CONTROLLER (PLC , PC)
AS-I Master
AS-I cable
Power supply
AS-I Slave
AS-I Slave
Module
Sensor / Actuator
S/A
S/A
S/A
S/A
Hình 4.33: Nguyên tắc thiết lập hệ thống AS_I Dữ liệu truyền hai chiều trên cáp AS_I: cùng một token, actuator không những nhận lệnh đặt mà còn tự giám sát kết quả tác động của nó và báo cáo về bộ điều khiển (“intelligent actuator”). AS_I truyền 4 bit/chu kỳ, cũng như cho phép nối các thiết bị analog vào mạng, kết quả là sử dụng nhiều hơn một chu kỳ AS_I. Hình vẽ 4.34 cho thấy hình ảnh đầy đủ của một mạng AS_I.
TRANG – 108
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Hình 4.34: Hệ thống AS_I Các Module trong mạng AS_I gồm có: các Module ghép (a và b) và các Module người dùng ( c đến f). Các nhánh trong cấu trúc mạng được minh hoạ ở một số Module ghép (a ) 4.5.2 Hệ thống truyền dữ liệu AS-I: Hình vẽ 4.35 là hệ thống AS_I gồm 3 thành phần hardware được kết nối với nhau và với môi trường ngoài qua 3 giao tiếp. Các thành phần này gồm: Hệ thống truyền dẫn (transmission system) Các Slave Master Hệ thống truyền ở đây gồm cáp AS_I hai dây kết nối các Slave với nhau và đến Master qua các kiến trúc khác nhau, nguồn điện AS_I và bộ ghép dữ liệu (data decoupling). Việc truyền thông dữ liệu và năng lượng được thực hiện qua hệ thống truyền dẫn này.
TRANG – 109
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Interface 3 Controller
CONTROLLER (PLC , PC)
Interface 2 Tranmission system
AS-I Master
AS-I cable
Power supply
Interface 1 Sensor/Actuator
AS-I Slave
AS-I Slave
Module
Sensor / Actuator
S/A S/A S/A S/A
Hình 4.35: hệ thống truyền trong AS-I 4.5.3 Cấu trúc bức điện truyền: Các bức điện của AS_I được xây dựng trên nguyên tắc đơn giản, giảm thiểu các thông tin bổ trợ để tăng hiệu xuất sử dụng đường truyền.thực tế, tất cả các bức điện gửi từ trạm chủ có chiều dài cố định là 14 bit và tất cả các bức điện đáp ứng từ các trạm tớ đều có chiều dài 7 bit.Cấu trúc của chúng được minh họa trên hình 4.36 Ngh
Li gi trm ch
. . . . 0 CB A4 A3 A2 A1 A0 I4 I3 I2 I1 I0 P 1 ST
EB
Li gi trm t
0 S3 S2 S1 S0 P 1 . . . ST
Hình 4.36: Cấu trúc bức điện AS_I ST A4 … A0 PB
: Start bit : Địa chỉ của Slave : Bit kiểm tra lỗi
TRANG – 110
EB
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
CB : Control bit I4 … I0 : Phần thông tin EB : Bit kết thúc. Giữa lời gọi của trạm chủ và trả lời của trạm tớ cần một khoảng thời gian dài từ 3-8 thời gian bit. Bit điều khiển trong phần đầu lời gọi của trạm chủ ký hiệu loại thông báo dữ liệu, tham số, địa chỉ hoặc lệnh gọi. Hệ thống AS_I phân biệt 9 loại lệnh gọi được minh họa trên hình 4.37. Trao đổi dữ liệu
. 0 0 A4 A3 A2 A1 A0 0 D3 D2 D1 D0 P 1
Đặt tham số
. 0 0 A4 A3 A2 A1 A0 0 P3 P2 P1 P0 P 1
Đặt địa chỉ
.0 0 0
Reset trạm tớ
. 0 1 A4 A3 A2 A1 A0 1 1 1 0 0
P 1
Xóa địa chỉ mặc định
. 0 1 A4 A3 A2 A1 A0 0 0
0 0 0
P 1
Đọc cấu hình vào /ra
. 0 1 A4 A3 A2 A1 A0 1
0
0 0 0
P
Đọc mã căn cước
. 0 1 A4 A3 A2 A1 A0 1 0
0 0 1
P 1
Đọc trạng thái
. 0 1 A4 A3 A2 A1 A0 1 1
1 1 0
P 1
Đọc và xóa trạng thái
. 0 1 A4 A3 A2 A1 A0 1 1 1 1 1
P 1
0 0 0 0 A4 A3 A2 A1 A0 P
Hình 4.37: Cấu trúc các lệnh gọi từ trạm chủ AS_I. Chi tiết thì bức điện gồm có : ST (start bit)
Đánh dấu bắt đầu Master request = 0 : Start bit hợp lệ = 1 : Không cho phép
TRANG – 111
1
1
ĐIỀU KHIỂN LẬP TRÌNH 2
CB
(Control bit)
A0 … A4 (địa chỉ) I0 … I4 (thông tin) PB
(Parity bit)
EB
(End bit)
CHƯƠNG 4
Đánh dấu gọi dữ liệu /tham số/địa chỉ hay gọi lệnh = 0 : dữ liệu/tham số/địa chỉ = 1 : gọi lệnh Địa chỉ của Slave được gọi (5bit) Phụ thuộc vào kiểu yêu cầu 5 bit chứa thông tin sẽ được truyền đi. Chi tiết được cho cùng với mỗi thông điệp. Tổng tất cả các bit 1 trong Master request (không kể EB) phải là số chẵn (kiểm tra parity chẳn). Đánh dấu kết thúc Master request = 0 :không được phép = 1 :EB hợp lệ
TRANG – 112
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
4.6 AS-I MASTER MODULE CP 243-2: 4.6.1 Giới thiệu Module CP 243-2: Module CP 243-2 dùng để giao tiếp mạng AS_I đối với PLC S7-200. Nó cho phép liên kết giữa PLC S7-200 với các thiết bị điều khiển trong mạng AS_I. (PLC đóng vai trò như là một AS-I Master). Hình dạng thực tế của Module CP 243-2 được minh họa theo hình vẽ:
Hình 4.38: Module CP 243-2
TRANG – 113
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Hệ thống mạng AS_I kết nối qua Module CP 243-2 được biểu diễn theo hình vẽ:
Hình 4.39: Mạng AS_I dùng Module CP 243-2 Module CP 243-2 được xem như thay thế cho 2 Module mở rộng (một Module số 8DI/8DO và một Module tương tự 8AI/8AO). Đặc tính của Module CP 243-2 được thiết kế tương đương với một Module mở rộng theo tiêu chuẩn của PLC S7-200.
TRANG – 114
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG CHƯƠNG 4
4.6.2 Đặc tính kỹ thuật Module CP 243-2: a. Đặc tính kỹ thuật của Module CP 243-2 được trình bày theo bảng bên dưới: Đặc tính
Giải thích Chu kỳ AS-I 5 ms với 31 Slave 10 ms với 62 Slave dùng ở chế độ địa chỉ mở rộng Cấu hình của giao giao diện AS-I Bằng một nút nhấn ở trên mặt trước của panel hoặc là dùng dùn g lệnh lệnh cấu hình (xem (xe m phần mô tả các lệnh lệnh AS-I) AS-I) Các profile AS-I Master được hỗ trợ M1e Cáp AS-I Qua khối đầu cuối S7-200 Dòng điện tối đa cho phép tải từ đầu cuối 1 đến 3 hay từ đầu cuối 2 đến 4 là 3A Dãi địa chỉ Một moudle số 8 vào/8 rav ra và một Module tương tự 8 vào/ 8 ra Nguồn Nguồn cung cấp cho SIMATIC SIMATIC 5 V DC backplane tối đa 220 mA Dòng tổng từ nguồn 5 V DC tuỳ thuộc vào đặc tính kỹ thuật của AS Nguồn Nguồn cung cấp từ cáp AS-I AS-I I Dòng tổng từ cáp AS-I tối đa 100 mA Công suất tổng 3.7 W Nhiệt Nhiệt độ hoạt động 00 đến 450 C Nhiệt Nhiệt độ vận chuyển và và tích trữ -400 đến +70 0 C Độ ẩm Tối đa 95% ở nhiệt độ +25 0 C Loại bảo vệ IP 20 Dạng Module Module mở rộng S7-200 Kích thước (W x H x D) hệ mm 71x80x62 Khối lượng Sắp xỉ 220 g Bảng : Đặc tính kỹ thuật của Module CP 243-2
TRANG – 115
ĐIỀU KHIỂN LẬP TRÌNH 2
b. -
-
c. -
-
CHƯƠNG CHƯƠNG 4
Các chế độ của CP 243-2: Hoạt động chuẩn: Ở chế độ này các chương trình của người sử dụng có thể truy cập dữ liệu của các Slave dùng giao tiếp AS-I và dữ liệu chẩn đoán của CP 243-2. Việc lập trình đơn giản và loại này thích hợp cho phần lớn các công việc tự động. Hoạt động mở rộng: Ở chế độ này, chương trình của người sử dụng sẽ dùng giao tiếp lệnh của CP 243-2. Điều này có nghĩa là toàn bộ phạm vi các chức năng trong hệ thống AS-I sẵn sàng cho người lập trình PLC. Loại này thích hợp đối với profile M1e của AS-I Master. Hiển thị và điều khiển hoạt động: Thay đổi trạng thái hiển thị: Ta có thể thay đổi hiển thị trạng thái, hiển thị Slave, hiển thị bằng nút DISPLAY. Mỗi lần nhấn nút này sẽ chuyển sang trạng thái hiển thị kế tiếp. Ở hiển thị Slave, các Slave trên giao tiếp AS-I được hiển thị trong các nhóm 5 Slave. Ta có thể di chuyển đến các nhóm Slave bằng cách nhấn nút DISPLAY. Các Slave nhóm A (tiêu chuẩn) được hiển thị đầu tiên, rồi đến các Slave B (Led “B” sáng). sá ng). Ta chuyển trở về hiển thị trạng thái như sau: o Sau khi ta cho hiển thị nhóm cuối cùng ( Slave 30B, 31B) bằng cách nhấn nút DISPLAY. o Khi ta không nhấn nút DISPLAY trong một lúc lúc lâu (khoảng (khoả ng 8 phút). Ý nghĩa của các LED: Ở mặt trước của CP 243-2 có 2 hàng LED: o Các LED : CM, AUP, CER, APF, PWR, và SF ở hàng trên dùng hiển thị trạng thái. LED B chỉ thị các Slave B, nó được bật sáng khi chế độ hiển thị Slave là tích cực và các Slave B được hiển thị. o 5 LED đầu tiên ở hàng dưới chỉ thị các Slave được kết nối, 3 LED còn lại chỉ thị các nhóm Slave. Ý nghĩa của các LED tuỳ thuộc vào trạng thái các hiển thị nhóm. o Nếu tất cả các LED của hiển thị nhóm đều tắt, thì chế độ hiển h iển thị trạng thái là tích cực, các LED: CM, AUP, CER, APF, PWR, và SF chỉ thị trạng thái hoạt động của CP 243-2. o Nếu tối thiểu có một LED của hiển thị nhóm sáng, thì chế độ hiển h iển thị trạng thái bị tắt ( ngoại trừ LED “PWR “ vẫn sáng) và chế độ hiển thị Slave đang hoạt động.
TRANG – 116
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG CHƯƠNG 4
Ý nghĩa các led được tóm tắt trong bảng sau: LED(màu) LED(màu ) Trạng thái th ái Ý nghĩa CM ( vàng) Chế độ cấu hình LED này hiển thị chế độ hoạt động của CP 243-2 + Sáng : chế độ cấu hình + Tắt : chế độ bảo vệ AUP AUP (lục) Autopro Trong chế độ bảo vệ, LED này chỉ thị việc lập available trình địa chỉ tự động của một Slave AS-I là có thể. Việc lập trình này làm cho nó dễ dàng thay đổi một Slave bị lỗi trên cáp AS-I. CER Lỗi cấu hình LED này chỉ rằng cấu hình Slave được kiểm tra (vàng) trên cáp AS-I có phù hợp với cấu hình mong đợi hay không. Nếu không phù hợp thì LED này sẽ sáng. APF (đỏ) Lỗi nguồn AS-I Chỉ thị rằng điện áp được cung cấp bởi bộ nguồn AS-I trên cáp AS-I quá thấp hoạt bị hỏng. PWR ( lục) Nguồn Chỉ thị th ị rằng CP 243-2 đang được cấp nguồn SF (đỏ) Lỗi hệ thống LED này sáng trong các trường hợp sau : + CP 243-2 phát hiện lỗi bên trong ( ví dụ như lỗi của EEPROM ) + CP 243-2 không thể thực hiện việc chuyển đổi chế độ được yêu cầu ở hiện tại.( ví dụ như có một Slave đang tồn tại với địa chỉ 0) khi nút cài đặt được nhấn Bảng: Tóm tắt ý nghĩa các led hiển thị của CP 243-2 -
Nút cài đặt SET: Được dùng để đặt cấu hình cho CP 243-2. d. Chế độ hiển thị: Gồm 2 chế độ hiển thị trạng thái và hiển thị Slave. Chế độ hiển thị trạng t rạng thái: Chế độ hiển thị trạng thái là tích cực khi không có LED hiển thị nhóm nào sáng. Chế độ hiển thị trạng thái là chế độ mặc định trong trạng thái căn bản của CP 243-2. Chế độ hiển thị Slave: Ta có thể chuyển sang chế độ hiển thị Slave Slave bằng bằn g cách nhấn nút DISPLAY. Tiếp tục nhấn nút DISPLAY ta sẽ chuyển từ nhóm Slave này đến nhóm Slave khác.
TRANG – 117
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Các đặc tính của chế độ hiển thị Slave : o Nếu CP 243-2 ở chế độ đặt cấu hình thì tất cả các Slave được phát hiện sẽ được hiển thị. o Nếu CP 243-2 ở chế độ bảo vệ thì tất cả các Slave là tích cực được hiển thị. Ở chế độ bảo vệ, các Slave bị hỏng hoặc chưa được đặt cấu hình được chỉ thị bằng việc chớp LED tương ứng. Xét ví dụ về hiển thị Slave theo hình vẽ sau:
Hình 4.40: Ví dụ về hiển thị Slave Từ hình vẽ hiển thị bên trên, ta nhận được những thông tin sau : - Nhóm LED thứ 2 sáng (ví dụ hàng thứ 2 từ trên xuống) ( các Slave 5 – 9). - Nếu các LED thứ 2 và thứ 4 sáng có nghĩa là Slave 6 và 8 là tích cực . - Nếu LED “B” cũng sáng thì có nghĩa là Slave 6B và 8B là tích cực. e. Cấu hình giao tiếp AS-I bằng nút SET: CP 243-2 phân biệt giữa 2 chế độ hoạt động trên giao tiếp AS-I : Chế độ đặt cấu hình . Chế độ bảo vệ
TRANG – 118
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Bằng việc nhấn nút SET ta sẽ thay đổi chế độ hoạt động. Lưu ý : Nút SET chỉ có tác dụng khi bit PLC_RUN = 0 được thiết lập trong byte điều khiển của CP 243-2. Chế độ đặt cấu hình: Chế độ cấu hình được dùng để thiết lập và khởi tạo việc cài đặt giao tiếp AS-I. Nếu CP 243-2 ở chế độ cấu hình (LED “CM” sáng), nó có thể trao đổi dữ liệu với mỗi Slave AS-I được kết nối vào cáp AS-I (ngoại trừ các Slave ở địa chỉ 0). Các Slave mới được thêm vào được Master phát hiện ngay lập tức, được kích hoạt và được bao hàm trong việc trao đổi dữ liệu theo chu kỳ. Khi việc thiết lập và khởi tạo được hoàn thành, CP 243-2 có thể được chuyển sang chế độ bảo vệ bằng việc nhấn nút SET. Tại cùng một thời điểm, các Slave tích cực được cấu hình. Dữ liệu theo sau đây được lưu vĩnh viễn trong CP 243-2 : o Địa chỉ của các Slave o Các mã ID (mã ID, mã ID1 được mở rộng, mã ID2 được mở rộng ). o Cấu hình I/O. o Các tham số hiện tại của Slave. Đặt cấu hình gồm các bước sau: o Chuẩn bị cấu hình: Phải đảm bảo các tình huống sau được thực hiện : 1- CPU S7-22X phải đặt ở chế độ STOP (PLC_RUN = 0) 2- CP 243-2 và tất cả các Slave phải được kết nối vào AS-I và được cấp nguồn bởi nguồn AS-I. o Đặt cấu hình: 1- Nhấn nút DISPLAY để đặt CP 243-2 ở chế độ hiển thị trạng thái 2- Kiểm tra xem CP 243-2 có ở chế độ cấu hình hay chưa(LED “CM” sáng). Nếu chưa thì chuyển sang chế độ cấu hình bằng nút SET. 3- Bằng việc chuyển sang chế độ hiển thị Slave (bằng nút DISPLAY), ta kiểm tra xem tất cả các Slave đã kết nối vào AS-I có tồn tại hay không. 4- Nhấn nút SET để chuyển CP 243-2 sang chế độ bảo vệ : tại thời điểm CP 243-2 chuyển sang chế độ bảo vệ thì LED “CM” tắt. LED “CER” cũng tắt bởi “cấu hình mong đợi” được chứa trong CP 243-2 phù hợp với “cấu hình thật” của AS-I. Chế độ bảo vệ: Ở chế độ bảo vệ, CP 243-2 chỉ trao đổi dữ liệu với các Slave đã được cấu hình . Việc chuyển từ chế độ cấu hình sang chế độ bảo vệ chỉ thực hiện được khi mà không có Slave nào có địa chỉ 0 được kết nối với giao tiếp AS-I. Nếu Slave “0” được kết nối, LED “SF” sẽ sáng lên khi nút SET được nhấn.
TRANG – 119
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
4.1.1 Giao tiếp giữa CP 243-2 và CPU S7-200: a. Tổng quan: Module CP 243-2 chiếm 2 khe Module mở rộng liên tiếp nhau của PLC S7-200. Module số 8DI/8DO Module tương tự 8AI/8AO
Hình 4.41: Giao tiếp CP 243-2 với CPU S7-200 -
Module số: Module số chiếm 8 bit ngõ vào và 8 bit ngõ ra trong vùng địa chỉ ngõ vào và ngõ ra số. CPU S7-200 và CP 243-2 được phối hợp với nhau qua Module số. Module tương tự: Module tương tự chiếm 16 byte vào và 16 byte ra trong vùng địa chỉ ngõ vào và ngõ ra tương tự. Dữ liệu trao đổi với các AS-I Slave được xử lý thông qua Module tương tự. Cơ cấu chọn bank cho thấy khu vực dữ liệu có thể được định địa chỉ trong Module tương tự lớn hơn khu vực có thể định địa chỉ ở CPU S7-200 đối với Module mở rộng. b. Định địa chỉ CP 243-2 trong CPU S7-200: Những địa chỉ bắt đầu của các vùng địa chỉ được xác định dựa vào các yếu tố sau Loại CPU S7-200 được sử dụng.
TRANG – 120
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Khe của CP 243-2 trong CPU S7-200. Các địa chỉ của các vùng địa chỉ ngõ vào/ra số và tương tự tương ứng với cấu hình của CPU 224 được cho theo bảng sau:
Bảng : Địa chỉ vào/ra số và tương tự của CP 243-2 theo CPU 224 c. -
Module số: Ý nghĩa của dữ liệu trong Module số: Module số của CP 243-2 chứa 4 thanh ghi : o Thanh ghi nhận dạng , 8 bit. o Thanh ghi lỗi, 8 bit. o Thanh ghi ngõ vào 8DI (byte trạng thái của CP 243-2). o Thanh ghi ngõ ra 8DO (byte điều khiển của CP 243-2). Biều đồ xử lý chức năng giữa CPU và Module số của CP 243-2 được biểu diễn theo hình vẽ sau:
TRANG – 121
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Hình 4.42: Biểu đồ xử lý chức năng Module số của CP 243-2 -
-
Thanh ghi nhận dạng trong Module số: o Ý nghĩa: Thanh ghi định dạng cho biết sự tồn tại của Module số 8DI/8DO với giá trị được ấn định bên dưới. Địa chỉ nơi mà chương trình có thể truy cập thanh ghi nhận dạng dựa vào khe mà CP 243-2 được cắm vào. o Dãi giá trị: Thanh ghi định dạng có thể được đọc thông qua bộ nhớ bit đặc biệt của CPU S7-200. Nó cung cấp giá trị cố định là 05H. Ví dụ : Giả sử Module CP 243-2 được gắn trực tiếp bên cạnh S7-200. Khi đó nội dung thanh ghi nhận dạng có thể được đọc từ SMB8. Thanh ghi lỗi trong Module số: Thanh ghi này luôn cho ra giá trị “0”. CP 243-2 báo các lỗi sẽ dùng thanh ghi lỗi trong Module tương tự . Ví dụ: Nếu CP 243-2 được gắn trực tiếp bên cạnh S7-200, SMB9 luôn cho giá trị “0”.
TRANG – 122
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 4
Byte trạng thái (thanh ghi ngõ vào 8DI): Thanh ghi này trình bày trạng thái của CP 243-2 liên quan đến giao diện AS-I Master. 8 bit của byte trạng thái được cho trong bảng sau:
Bảng : Cấu trúc của byte trạng thái Các bit 0, 1 và 6 được mô tả theo bảng sau: Bit AS-I-MODE
-
Giá trị
CP_READY
0 1 0
AS-I_RESP
1 0/1
ý nghĩa CP 243-2 ở chế độ bảo vệ CP 243-2 ở chế độ cấu hình CP 243-2 chưa sẳn sàng hoạt động sau khi bật nguồn cung cấp. Sự định giá của dữ liệu I/O hoặc các thông tin khác từ CP chưa được cho phép. CP 243-2 sẳn sàng hoạt động Bit đáp ứng đối với giao diện lệnh ASI Bảng :Mô tả các bit
Byte điều khiển (thanh ghi ngõ ra 8DO) Chương trình sử dụng điều khiển việc trao đổi dữ liệu bằng CP 243-2 dùng thanh ghi này. Cấu trúc byte điều khiển co theo bảng sau:
Bảng :Cấu trúc của byte điều khiển Các bit của byte điều khiển được cho theo bảng sau: Bit BS0 … BS5
Giá trị 0 … 63 (thập phân)
Ý nghĩa Các bit chọn bank trong Module tương tự
TRANG – 123
ĐIỀU KHIỂN LẬP TRÌNH 2
AS-I_COM PLC_RUN
d. -
CHƯƠNG 4
0/1 0
Bit công việc cho giao diện lệnh AS-I Báo cho CP 243-2 biết rằng CPU S7-200 đang ở chế độ stop. CP 243-2 gửi giá trị “0” đến tất cả các Slave nhị phân. Giá trị tương tự truyền tới ngõ ra của các Slave sẽ bị ngắt. CPU S7-200 tự động đặt giá trị “0” khi chuyển từ chế độ RUN sang STOP 1 Báo cho CP 243-2 biết rằng CPU S7-200 đang ở chế độ RUN. CP 243-2 gửi nội dung ngõ ra của thanh ghi 0 đến tất cả các AS-I Slave. Chương trình sử dụng phải đặt bit này lên “1” trong suốt quá trình khởi động. Không được đặt bit PLC_RUN mãi ở mức “1” với S7-200 hoạt động các chức hệ thống chẳng hạn như : “cấu hình CPU/ cài đặt ngõ ra” hoặc “tác động các ngõ ra” Bảng : Mô tả các bit của byte điều khiển
Module tương tự: Ý nghĩa của dữ liệu trong Module tương tự: Module tương tự của CP 243-2 gồm 4 vùng : o Thanh ghi nhận dạng , 8 bit. o Thanh ghi lỗi, 8 bit. o Thanh ghi ngõ vào 8AI . o Thanh ghi ngõ ra 8AO. Biều đồ xử lý chức năng giữa CPU và Module tương tự của CP 243-2 được biểu diễn theo hình vẽ sau:
TRANG – 124
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Hình 4.43: Biểu đồ xử lý dữ liệu Module tương tự của CP 243-2 -
-
Thanh ghi nhận dạng trong Module tương tự: o Ý nghĩa: Thanh ghi định dạng cho biết sự tồn tại của Module số 8AI/8AO với giá trị được ấn định bên dưới. Địa chỉ nơi mà chương trình có thể truy cập thanh ghi nhận dạng dựa vào khe mà CP 243-2 được cắm vào. o Dãi giá trị: Thanh ghi định dạng có thể được đọc thông qua vùng nhớ bit đặc biệt của CPU S7-200. Nó cung cấp giá trị cố định là 01H. Ví dụ : Giả sử CP 243-2 được gắn trực tiếp bên cạnh S7-200. Khi đó nội dung thanh ghi nhận dạng có thể được đọc từ SMB10. Thanh ghi lỗi trong Module tương tự: Với thanh ghi này CP 243-2 báo lỗi cho chương trình sử dụng. Cấu trúc của thanh ghi lỗi được biểu diễn trên bảng sau:
Bảng : Cấu trúc của thanh ghi lỗi
TRANG – 125
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 4
Các bit và giá trị của chúng trong thanh ghi lỗi được mô tả theo bảng sau: Bit CER
Giá trị 0 1
APF
0 1
-
Ý nghĩa Cấu hình AS-I đúng ( chỉ ở chế độ bảo vệ) Led “CER” tắt Cấu hình AS-I sai ( chỉ ở chế độ bảo vệ ) Điều này cho thấy sự khác biệt giữa cấu hình của Slave được phát hiện trên cáp ASI với cấu hình mong đợi trên CP 243-2. Led “CER” sáng. Điện áp AS-I đúng Led “APF” tắt. Điện áp AS-I sai. Điều này cho thấy điện áp được cung cấp trên cáp AS-I quá thấp. Led “APF” sáng. Bảng : Mô tả bit và giá trị bit
Ghi chú : Bit “CER” chỉ thị lỗi cấu hình chỉ ở chế độ bảo vệ. Ở chế độ cấu hình thì nó luôn là “0”. Bank 0: o Dữ liệu ngõ vào nhị phân của các AS-I Slave từ 1 đến 31 hoặc 1A đến 31A. Thông qua các từ ngõ vào tương tự này ta có thể truy cập các ngõ vào nhị phân của các Slave tiêu chuẩn hoặc các Slave A. o Dữ liệu ngõ ra nhị phân của các AS-I Slave từ 1 đến 31 hoặc 1A đến 31A Thông qua các từ ngõ ra tương tự này,bạn có thể truy cập các ngõ ra nhị phân của các Slave tiêu chuẩn hay các Slave A.
4.1.2 Truy cập dữ liệu của các AS_I Slave: a. Yêu cầu: Trước khi có thể truy cập dữ liệu I/O của các AS-I Slave, bắt buộc phải theo những yêu cầu sau đây: Không kích hoạt việc lọc ngõ vào tương tự đối với CP 243-2 trong khối dữ liệu hệ thống của của CPU S7-200.
TRANG – 126
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 4
Đặt bit “PLC_RUN” (bit 7) trong byte điều khiển số lên “1” tại đầu chương trình theo chu kỳ. Kế đó việc truy cập đến dữ liệu I/O chỉ được cho phép khi bit “CP_READY” (bit 1) của byte trạng thái số được đặt lên “1”.
b. Truy cập đến các giá trị nhị phân : CP 243-2 ấn định 4 bit (một nibble) trong vùng dữ liệu vào và ra đối với mỗi AS_I Slave. PLC có thể viết và đọc nibble này. Điều này cho phép các Slave 2 hướng được định địa chỉ. - Nhiệm vụ của ngõ vào AS-I của các Slave tiêu chuẩn và các Slave A (Bank 0 trong vùng dữ liệu ngõ vào tương tự của CP) Vùng dữ liệu vào của các AS_I Slave cho theo bảng sau:
Bảng : Vùng dữ liệu vào của các AS-I Slave ( m : địa chỉ bắt đầu của Module tương tự CP ở hướng ngõ vào)
TRANG – 127
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 4
Nhiệm vụ của ngõ ra AS-I của các Slave tiêu chuẩn và các Slave A (Bank 0 trong vùng dữ liệu ngõ ra tương tự của CP)
Bảng : Vùng dữ liệu ra của các AS-I Slave ( m : địa chỉ bắt đầu của Module tương tự CP ở hướng ngõ ra) -
c. -
Trao đổi dữ liệu ở chế độ STOP của CPU S7-22xx Chế độ STOP, CPU S7-22xx tự động đặt bit PLC_RUN trong vùng điều khiển số về “0”. Do đó, CP 243-2 xuất ra dữ liệu “0” đến tất cả các Slave nhị phân. Đặc điểm của các Slave tương tự: Ở chiều ngõ vào, CP 243-2 đặt các nibble (được chỉ định tới các Slave) về “0”. Ở chiều ngõ ra, CP 243-2 không quan tâm đến các nibble được chỉ định đến các Slave này.
TRANG – 128
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5:
CHƯƠNG 5
PHẦN MỀM WINCC
5.1 GIỚI THIỆU CHUNG VỀ WINCC: 5.1.1 Khái niệm: WinCC là một phần mềm lập trình hướng đối tượng giúp thiết kế các hệ thống giám sát, điều khiển và thu thập dữ liệu một cách dễ dàng, có khả năng đặt cấu hình nhanh, là hệ thống hiện đại có thể mở rộng đến nhiều Slaver và Master. WinCC có giao diện thân thiện với người sử dụng, khả năng đáp ứng chính xác những công việc từ đơn giản đến phức tạp. Phần mềm WinCC được viết bởi hãng Siemens, nhà cung cấp hàng đầu trong lĩnh vực tự động hóa. Hiện nay WinCC là một trong ba phần mềm ứng dụng thiết kế hệ thống SCADA thành công nhất thế giới và là phần mềm số một của Châu Âu.
Hình 5.1: Sơ Đồ kết nối WinCC với PLC 5.1.2 Đặc điểm: Công nghệ phần mềm tiên tiến WINCC sử dụng công nghệ phần mềm mới nhất, nhờ sự cộng tác chặt chẽ giữa Siemen và Microsoft, người dùng yên tâm với sự phát triển của công nghệ phần mềm. Hệ thống khách chủ với chức năng SCADA: TRANG – 129
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
Ngay từ hệ thống WINCC cơ sở đã có thể cung cấp tất cả các chức năng để người dùng có thể khởi động các yêu cầu hiển thị phức tạp. Việc gọi những hình ảnh (Picture), các cảnh báo (Alarm), đồ thị trạng thái (Trend), các báo cáo (Report) có thể dễ dàng được xác lập. Có thể nâng cấp và mở rộng từ đơn giản đến phức tạp: WINCC là module trong hệ thống tự động, vì thế có thể sử dụng nó để mở rộng hệ thống một cách linh hoạt từ đơn giản đến phức tạp, từ hệ thống với một máy tính giám sát tới hệ thống có nhiều máy gaím sát hay hệ thống có cấu trúc phân tán với nhiều máy chủ (Sever) . Có thể phát triển theo từng lĩnh vực công nghiệp, từng yêu cầu công nghệ: WINCC hổ trợ các module mở rộng cho từng ứng dụng hay công nghệ. Cơ sở dữ liệu được tích hợp sẵn: Cơ sở dữ liệu SQL đã được tích hợp sẵn trong WINCC. Tất cả dữ liệu cấu hình về hệ thống và các dữ liệu về quá trình điều khiển đều được lưu trữ trong dữ liệu này. Người dùng có thể truy cập dễ dàng tới cơ sở dữ liệu của WINCC bằng SQL (Structured Query language) hoặc ODBC (Open Database Connectivity). Sự truy cập này cho phép WINCC chia sẻ dữ liệu từ các chương trình chạy trên nền Window. Các giao thức chuẩn mạnh: WINCC tích hợp những giao thức chuẩn mạnh (DDE, OLE, ACTIVE X, OPC). Các diện chuẩn như DDE OLE dùng cho việc chuyển dữ liệu từ các chương trình chạy trên nền window. Giao diện lập trình API mở: Tất cả các module của WINCC đều có giao diện mở cho giao diện lập trình ngôn ngữ C. Điều đó có nghĩa là người dùng có thể tích hợp cả cấu hình của WINCC và các hàm thực hiện vào một chương trình của người dùng. WINCC hổ trợ ngôn ngữ lập trình vạn năng-lập trình chuẩn ANSI_C, giao diện lập trình API mở cho việc truy cập dữ liệu tới các hàm của WINCC và cả dữ liệu giúp cho người sử dụng lập trình theo ý mình một cách dễ dàng. Có thể cài đặt cấu hình trực tuyến bằng WIZARDS: Khả năng lựa chọn ngon ngữ khi cài đặt, WINCC có sẵn kênh truyền thông để giao tiếp với các loại PLC của Simen. Giao tiếp với hầu hết các PLC: WINCC có khả năng giao tiếp với các loại PLC của Siemens với các giao thức hỗ trợ sẵn,ngoài ra còn có thể giao tiếp với các PLC khác bằng OPC Với các chức năng trên WINCC thực sự là một phần mềm SCADA hổ trợ hiệu quả cho người dùng, có vai trò là cửa sổ của hệ thống và là phần tử trung tâm của hệ thống
TRANG – 130
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
5.1.3 Ưu điểm của version WINCC 6.0 Tích hợp thêm module “Historian”giúp cho việc lưu trữ dữ liệu đạt hiệu quả cao Cung cấp các giải pháp bổ sung cũng mới về Web,Client,phân tích dữ liệu,các công cụ báo cáo ,bảo trì ,chẩn đoán Hổ trợ “Visual Basic For Application” cho việc tự động hoá các nhiệm vụ kỹ thuật và ngôn ngữ lập trình “VbScript” như 1 ngôn ngữ lập trình cấp cao tiện dụng. Cung cấp các tính năng hữu hiệu trong việc lưu trữ các dữ liệu quá trình và các sự kiện với nhiều cấp độ khác nhau đến 1 trung tâm lưu trữ là SQL Server. Hổ trợ tuỳ chọn “WinCC/Connectivity Pack” dữ liệu lưu trữ trong WinCC có thể được truy cập từ bất kì máy nào dùng chuẩn OPC HAD(Historical Data Access). WINCC có thể hổ trợ các cấu hình hế thống từ thấp đến cao. Hệ thống điều khiển dùng một máy tính (Single-user system). Hệ thống dùng nhiều máy tính (Multi- user system). o Cấu trúc Client/Server có dự phòng. o Cấu trúc hệ thống phân tán vơi nhiều trạm chủ. 5.2 CÁC LOẠI PROJECT TRONG WINCC: Có ba loại project có sẵn để dùng trong WINCC: 5.2.1 Single-user project: Nếu muốn làm việc với một máy tính trong một WINCC project thì ta tạo Single-user project. Có định dạng như một server cho quy trình sản xuất và đóng vai trò điều khiển trạm ngõ vào, máy tính khác không thể sử dụng project này được.
Hình 5.2: Tạo Single-user
TRANG – 131
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
5.2.2 Multi-user project: Được sử dụng khi muốn là việc với nhiều máy tính. Hệ thống Multi-user cho phép điều khiển một hệ thống bởi nhiều trạm điều khiển. Một người điều hành có thể biết những hoạt động điều khiển của một trạm khác vì các thông tin một trạm điều khiển của một user sẽ được hiển thị trên màn hình của các user khác.Trong hệ thống multi-user các trạm điều khiển cùng hoạt động một cách bình đẳng với nhau. Chúng sử dụng chung một cơ sở dữ liệu.
Hình 5.3: Tạo Multi-user Các hệ thống multi-user hoạt động theo nguyên lý Client/Server. Các server đảm nhận vai trò là một trung tâm chứa các tài nguyên dữ liệu, lien kết giữa các trạm điều hành và ghi chép các dữ liệu từ các trạm trong hệ thống. Các trạm client sử dụng các tài nguyên từ các server. Chúng giao tiếp với các server thông qua các terminal bus riêng lẻ và các trạm giao tiếp với nhau bằng giao thức chuẩn TCP/IP. Số client cho phép trên một server lên đến 16 client. 5.2.3 Client project: Nếu tạo một multi-user project thì sau đó chúng ta phải tạo clients để truy cập server. Chúng ta tạo một chương trình client trên máy tính để được sử dụng như một client. Có hai tùy chọn cơ bản : Hệ thống Multi-user với một hoặc nhiều hơn một server: Client truy cập một vài server. Dữ liệu runtime được phân bổ trên server khác. Cấu hình dữ liệu trên multi-user projects thì lấy ở những server khác nhau. Hệ thống Multi-user với chỉ một server: Client truy cập một server duy nhất. Tất cả các dữ liệu được xác định trên server và liên quan đến các clients. WinCC/ Web Navigator cho phép chúng ta có thể giám sát và điều khiển các quá trình thông qua mạng Intranet và cả mạng Internet. WinCC Web Navigator Server có các
TRANG – 132
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
chức năng của một trạm WinCC và các chức năng của một Web Server. Nó dựa trên Internet Information Server của hãng Microsoft .
Hình 5.4: Tạo Client 5.3 SỬ DỤNG WINCC: 5.3.1 Thiết lập Driver kết nối giữa WinCC và PLC: Để WINCC có thể giao tiếp với với PLC ta phải chọn Driver cho nó. Muốn chọn Driver ta phải vào “Tag Management”.
Hình 5.5: Màn hình Tag Management Chú ý : Muốn chọn kết nối với PLC S7 300 ta chọn “SIMATIC S7 Protocol Suite”
TRANG – 133
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
5.3.2 Định nghĩa các Tag: Những tag được dùng trong WinCC mô tả các giá trị thực của một đối tượng của một Project hoặc chứa giá trị tính toán cục bộ hay mô phỏng bên trong WinCC. Có hai loại tag chính trong WinCC đó là Tag nội ( External tag) và Tag ngoại ( External Tag). Những tag nội là những vùng nhớ bên trong WinCC hoặc thiết bị mô phỏng. Những tag ngoại là những vùng nhớ bên trong WinCC có khả năng giao tiếp với vùng nhớ của thiết bị ngoại vi và các đối tượng khác trong WinCC. Những nhóm tag (tag group) dùng để tổ chức các tag theo cấu trúc. Tất cả các tag được tổ chức trong tag group để cải thiện sự rõ ràng. Chẳng hạn Group các External (Process ) tags có tên là Recieve data là những tag nhận dữ liệu từ bồn hóa chất 1,2,3 trong hệ thống.
Hình 5.6: Cấu trúc phân cấp của tag 5.3.3 Tạo giao diện người dùng - Graphics Designer: Để thực hiện được chức năng giám sát và điều khiển hệ thống trên màn hình. Ta phải thiết lập giao diện người dùng mà nó được thực thi bởi công cụ “Graphics Designer”. Người dùng phải thiết kế sao cho các tính năng của các thiết bị trên màn hình phải mô phỏng được thiết bị thật trong quá trình sản xuất. Nhiệm vụ của hệ thống đồ họa: Hệ thống đồ họa được sử dụng để sáng tạo những hình ảnh mà nó sẽ hiển thị quá trình sản xuất của hệ thống trong chế độ runtime. Hệ thống đồ họa có những nhiệm vụ sau: o Hiển thị những phần tử hình ảnh người vận hành có thể điều khiển được và các static, thí dụ: Texts,graphics or buttons o Cập nhật các phần tử ảnh động lực, chẳng hạn sự thay đổi chiều dài của một thanh đồ họa mà nó liên quan đến một giá trị của quy trình sản xuất. o Giúp người điều khiển tác động tới một input, chẳng hạn click vào một nút nhấn, hoặc nhập một text trong vùng ngõ vào (I/O field) Các bước để tạo giao diện người dùng: o Khởi động Graphics Designer o Sáng tạo và đặt tên lại cho Graphics Designer TRANG – 134
ĐIỀU KHIỂN LẬP TRÌNH 2
o
o
o
CHƯƠNG 5
Xây dựng đối tượng thư viện và điều khiển ActiveX Thay đổi thư viện và hình ảnh từ phiên bản của chương trình cũ hơn . Định cấu hình và chạy runtime.
Hình 5.7: Màn Hình Thiết kế giao diện đồ họa Các thành phần trên màn hình tạo giao diện gồm: Color Palette: Thiết lập màu cho đối tượng được chọn. Có 16 màu chuẩn, tuy nhiên có thể dùng màu tùy thích do chính bạn định nghĩa. Object Palete: Chứa các đối tượng chuẩn ( Polygon, Ellipse, Rectangle,…), các đối tượng thông minh ( OLE control, OLE Elêmnt, I/O Field,…) và các đối tượng Windows ( Button, Check Box,…). Style Palette: thay đổi hình thức của đối tượng được chọn. Tuỳ vào kiểu đối tượng, mà ta có thể thay đổi kiểu đường thẳng hoặc đường viền, độ rộng của đường thẳng hoặc đường viền, kiểu kết thúc của đường thẳng, hoặc kiểu tô. Alignment Palette: Cho phép thay đổi vị trí của một hoặc nhiều đối tượng, để thay đổi vị trí các đối tượng đã chọn có liên quan đến đối tượng khác, hoặc tiêu chuẩn hoá chiều cao và bề rộng của vài đối tượng. Zoom palette: thiết lập hệ số phóng đại (phần trăm) cho sự hoạt động của cửa sổ. Các hệ số phóng đại chuẩn là: 8, 4, 1, 1/2, và 1/4. Menu Bar: Chứa tất cả các trình đơn lệnh cho Graphic Designer. Những lệnh không có hiệu lực được biểu diễn bằng màu xám. Toolbar: chứa các nút để thực hiện nhanh nhiều lệnh chung. Font Palette: cho phép thay đổi kiểu font, kích thước, và màu trong đối tượng text, cũng như là màu đường thẳng của các đối tượng chuẩn. Layer: cho hiển thị một lớp trong 16 lớp (Lớp 0 đến 15). Lớp 0 được chọn mặc định. TRANG – 135
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
5.3.4 Tạo ảnh động và hiệu ứng cho đôi tượng: Vào properties của đối tượng thiết lập thuộc tính của đối tượng và thời gian cập nhật dữ liệu. Có ba cách để thực hiện: Dùng kết nối trực tiếp ( Direct connector) với tag Dùng VBS-Action Dùng C-Action Để hiểu rõ hơn về cách tạo ảnh động ta thực hiện ví dụ về sự thể hiện quá trình làm đầy của một bồn nước được minh họa như sau:
Hình 5.8: Ví dụ minh họa 5.3.5 Biểu diễn giá trị của quá trình - Logging Editor: Chức năng Logging Editor: Thiết lập được thời gian ( chu kỳ ) cập nhật thông tin dữ liệu ( Timer) Thiết lập Archive Wizard lưu trữ dữ liệu để có thể in ra, hiển thị bảng báo cáo thông số của quá trình sản xuất khi chạy runtime. Các bước thiết lập : Mở Tag Logging Editor, Đặt cấu hình cho Timer, Tạo dữ liệu lưu trữ với Archive Wizard, Vẽ đồ thị hiển thị thông số của quá trình sản xuất.
TRANG – 136
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
Trong của sổ Graphics Designer, chọn WinCC Online Trend Control trên Tab Control bên của sổ Object Palette và kéo vào màn hình soạn thảo. 1. Tạo một bảng báo cáo Chọn WinCC Online Table Control có trong Tab “Control” bên cửa sổ Object Palette và đặt vào trang màn hình soạn thảo. 2. Cài đặt tham số Runtime Nhằm thiết lập những thuộc tính để bản ghi tag (Tag Logging) cũng được khởi động lúc chạy chương trình. Người dùng cần phải vào “Properties” của “Computer”, chọn nhãn “Startup” 3. Chạy chương trình Chú ý: Bản ghi thời gian là những khoảng thời gian mà tại đó các giá trị được lấy ra từ ảnh quá trình của quản lý dữ liệu bởi Tag-Logging. Việc lưu giữ thời gian là những khoảng thời gian mà tại đó dữ liệu được lưu trong kho lưu trữ. Việc lưu giữ thời gian thì luôn luôn là bội số (nguyên) của việc chọn bản ghi thời gian. Giá trị được cất giữ tại mỗi thời điểm (lưu giữ) thì luôn luôn là giá trị cuối cùng của bản ghi. Giá trị đầu thuộc về thời điểm trước đó. 5.3.6 Thiết lập cảnh báo và thông báo lỗi - Alarm Logging: Chức năng của Alarm Logging: Thông báo sẽ cung cấp cho người điều khiển những thông tin liên quan đến trạng thái hoạt động và lỗi của quá trình sản xuất. Những điều đó sẽ cung cấp cho người điều khiển biết vị trí tới hạn tại một phạm vi hoạt động một cách sớm hơn và nó giúp loại trừ thời gian vô ích. - Người dùng định nghĩa những sự kiện trong quy trình sản xuất của mình mà nó sẽ trigger một thông báo. Chẳng hạn: cảnh báo quá tải, cảnh báo quá nhiệt độ … Các bước thiết lập : Mở cửa sổ soạn thảo Alarm Logging Editor Khởi động System Wizard Cài đặt Message Text Dùng Message Class để đặt màu cho các message Cài đặt Limit value Tạo Message Window trên màn hình soạn thảo Thiết lập các tham số Runtime Chạy chương trình
TRANG – 137
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
5.3.7 Tạo Function và Action: Để tạo và soạn thảo Function hay Action dùng Global Script của WinCC. Function: Sử dụng hàm khi cần tính toán nhiều lần trong chương trình. Lợi ích của việc tạo Function là: o Chỉ cần lập trình một lần. Khi cần thực thi thì chỉ việc gọi hàm và đưa vào các đối số thích hợp. o Chương trình ngắn và dễ hiểu. Action: Khác với Function, Action chỉ hoạt động khi có điều kiện kích (Function không tự hoạt động khi chạy Runtime). o Action không có đối số. o Có thể tạo bản quyền cho Action. Chú ý: Action: Được tạo mới hay sửa đổi trong Global Script, chỉ dùng được trong Project tạo ra nó. Project Function: Chỉ được dùng trong Project hiện tại, có thể tạo mới hay sửa từ những hàm có sẵn. Standard Function: Dùng được trong tất cả Project, có thể tạo mới hay sửa từ những hàm có sẵn Internal Function: Dùng được trong tất cả Project, không thể tạo mới hay sửa từ những hàm có sẵn 5.3.8 Thiết kế Report - Report Designer: Chức năng của Report Designer: Thiết kế một giao diện layout để in dữ liệu được cập nhật lúc chạy runtime Các bước thiết kế Report: Tạo layout mới trong Report Designer. Thiết kế layout Cài đặt thông số in ấn Làm hoạt động Project
TRANG – 138
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
Hình 5.9: Giao diện của Layout Các thành phần trên giao diện gồm: Color Palette: thiết kế màu cho các đối tượng được chọn. Object palette: chứa các Standard Objects (Polygon, Ellipse, Rectangle, ...), Dynamic Object (Dynamic Text, Dynamic Table,...) và System Object (Date, Page Number,...). Style Palette: thay đổi sự xuất hiện của các đối tượng đã chọn. Tuỳ thuộc vào đối tượng, bạn có thể thay đổi kiểu của đường thẳng hoặc đường viền, độ rộng của đường thẳng, hoặc kiểu tô. Alignment Palette: cho phép bạn thay đổi vị trí quan sát của một hoặc nhiều đối tượng, để thay đổi vị trí của các đối tượng đã chọn có liên quan đến các đối tượng khác, hoặc tiêu chuẩn hoá chiều cao và chiều rộng của nhiều đối tượng. Zoom Palette: thiết lập hệ số (phần trăm) phóng to cho sự hoạt động của cửa sổ. Bạn có thể thiết lập các hệ số phóng to khác nhau qua những nút ấn. Menu Bar: chứa tất cả các lệnh cho Report Designer. Toolbar: chứa các nút ấn để biểu diễn nhanh chóng nhiều lệnh chung. Font Palette: cho phép bạn thay đổi kiểu font, kích thước và màu trong đối tượng text, cũng như màu đường thẳng của Standard Objects. 5.3.9 Chạy chương trình WINCC: Vào startup trong properties của computer chọn thuộc tính Run. TRANG – 139
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
5.4 ĐIỀU KHIỂN VÀ GIÁM SÁT QUA MẠNG PROFIBUS: 5.4.1 Yêu cầu: Trong phần này trình bày cách để thiết lập và điều khiển thiết bị dùng WinCC kết hợp với mạng Profibus. Để cho người đọc dễ dàng hình dung được các bước thiết lập và điều khiển, thatực hiện một mạng đơn giản đó là điều khiển và giám sát mô hình động cơ bước và mô hình cân trọng lượng dùng WinCC kết hợp với mạng Profibus. Sơ đồ hệ thống điều khiển:
EM 277
CPU 224
KHỐI ANALOG EM 231
TRẠM CÂN Máy tính
CPU 315 – 2 DP RS 232/MPI CABLE
PROFIBUS CABLE
EM 277
CPU 224
ĐỘNG CƠ BƯỚC
Hình 5.10: Sơ đồ hệ thống điều khiển Trong hệ thống này, S7-300 đóng vai trò là Master, có chức năng điều khiển, giám sát hoạt động của hệ thống. Hai khối S7-200 là hai Slave điều khiển hai mô hình (mô hình trạm cân, và mô hình động cơ bước), đồng thời gởi tín hiệu báo cáo về Master. Hai khối S7-200 được kết nối vào mạng PROFIBUS DP thông qua khối EM277.
TRANG – 140
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 5
Các bước thực hiện: o Bước 1: Kết nối phần cứng, o Bước 2: Thiết lập khai báo phần cứng trên SIMATIC Manager , o Bước 3: Thiết kế giao diện trên WinCC và giao tiếp với S7-300, o Bước 4:Viết chương trình giám sát và điều khiển.
5.4.2 Kết nối phần cứng: Kết nối S7-200 vào mạng PROFIBUS DP: o Kết nối khối EM277 với S7-200: CPU-S7-200 tự nó không thể tham gia vào mạng PROFIBUS DP, cần thông qua khối EM277. o Kết nối cáp PROFIBUS từ S7-300 đến hai khối EM277 Xác định địa chỉ cho khối EM277: Việc xác định địa chỉ cho 2 khối EM277 này trước là việc cần thiết, bởi vì khi khai báo cấu hình trong phần mềm cho CPU S7-300, CPU S7-300 này chỉ nhận ra để bắt tay với Slave khi nào địa chỉ khai báo đúng với địa chỉ thực. Trước tiên ta chưa cấp nguồn cho EM277, dùng vít xoay chọn địa chỉ cho 2 Slave: o Chọn Slave 1 có địa chỉ là 5, kết nối với S7-200 điều khiển mô hình động cơ bước. o Chọn Slave 2 có địa chỉ là 6, kết nối với S7-200 điều khiển mô hình trạm cân trọng lượng. Kết nối các trạm với máy tính: sử dụng cáp chuyển đổi RS 232 sang MPI Kết nối S7-200 với các mô hình. 5.4.3 Khai báo phần cứng trên SIMATIC Manager: Muốn sử dụng S7-300 điều khiển được thì trước tiên ta cần khai báo phần cứng để khi khởi động CPU S7-300 sẽ so sánh cấu hình khai báo với cấu hình thực. Các thao tác khai báo được trình bày chi tiết trong phần sử dụng phần mềm SIMATIC MANAGER. Khởi động chương trình Simatic manager Bấm chọn nút New Projec/Library xuất hiện hộp thoại New Đặt tên dự án vào ô Name, rồi chọn OK. Thiết lập 1 trạm S7-300: Nếu không thấy catalog các linh kiện thì chọn View/Catalog Nếu chưa có khối EM277 trong catalog thì phải cài đặt file GSD.
TRANG – 141
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
Hình 5.11: Cài đặt một file GSD mới vào catalog Sau đó chọn đường dẫn đến file GSD của khối EM277. Thiết lập mạng bằng cách chọn New trong màn hình bên dưới.
Hình 5.12: Thiết lập thông số cho CPU
TRANG – 142
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
Sau khi khai báo sẽ có kết quả như hình vẽ sau:
Hình 5.13: Màn hình cấu hình sau khi khai báo CPU -
Tiếp theo ta chọn khối EM 277 kết nối vào mạng: Chọn theo đường dẫn như trong hình, kéo khối EM 277 ra thả vào subnet, xuất hiện hộp thoại như hình vẽ:
Hình 5.14: Khai báo địa chỉ cho khối EM277
TRANG – 143
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 5
Phải chọn địa chỉ cho EM 277 (phải chọn đúng địa chỉ trên module thì CPU mới nhận được): nhấp đúp vào khối EM 277 sẽ xuất hiện hộp thoại “Properties – DP slave”, vào Parameter Assignment để chọn địa chỉ, theo hình vẽ:
Thiết lập thông số cho khối EM277 Vào Parameter Assignment để chọn địa chỉ I/O offset trong vùng V-memory, chọn giá trị Value bằng 100.
Hình 5.15: Chọn giá trị offset cho khối EM 277
TRANG – 144
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
Chọn kích thước vùng đệm: trong chương trình dùng 4 byte buffer I/O.
-
Hình 5.16: Cửa sổ chọn kích thước vùng đệm Địa chỉ vào/ra xuất hiện là địa chỉ mặc định.Ta có thể thay đổi giá trị này để sử dụng. Chú ý rằng địa chỉ vào ra trong mỗi khối EM 277 không được trùng nhau. Tương tự ta có đặt 2 trạm EM 277 cho 2 mô hình điều khiển. Tiếp theo ta chọn các module vào ra số/tương tự theo đúng cấu hình thực, đạt được kết quả như sau:
Hình 5.17: Cấu hình phần cứng sau khi khai báo Chú ý: slot 3 bỏ trống, đó là vị trí dành cho khối mở rộng IM.
TRANG – 145
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 5
Tiếp theo ta chọn nút save and compile để biên dịch. Sau đó nhấn nút download để tải cấu hình phần cứng vào CPU. o Nếu download không được hoặc đèn báo lỗi phần cứng trên CPU sáng lên cần kiểm tra lại việc thiết lập phần cứng. o Sau khi đã download được thành công các đèn báo trạng thái trên CPU sẽ sáng lên . Sau đó ta có thể tiến hành viết chương trình điều khiển .
5.4.4 Thiết kế giao diện trên WinCC và thiết lập giao tiếp với S7-300: Đầu tiên ta khởi động WinCC. Sau đó tạo 1 Project mới bằng cách nhấp vào nút New trên thanh công cụ, chọn mục Single-User Project trong hộp thoại.
-
Hình 5.18: Hộp thoại tạo project mới Đặt tên cho project. Tạo một Picture mới, có thể đổi tên picture bằng cách nhấp đúp vào nó ở cửa sổ bên phải.
Hình 5.19: Tạo
picture mới
TRANG – 146
ĐIỀU KHIỂN LẬP TRÌNH 2
CHƯƠNG 5
Dùng các công cụ trong WinCC ta tạo được giao diện như sau:
Hình 5.20: Giao diện trên WinCC -
Ta tạo các tag nội để điều khiển giao diện: giatricanduoc, giatridinhmuc, dongia, thanhtien, alamnhohon, alamquatai, alamkhtai, alamcotai.
Hình 5.21: Tạo
tag nội
TRANG – 147
ĐIỀU KHIỂN LẬP TRÌNH 2
-
CHƯƠNG 5
Tạo một tag ngoại khai báo địa chỉ để tiến hành giao tiếp với S7-300. o Khai báo địa chỉ tag ngoại kết nối S7- 300 điều khiển mô hình trạm cân: theo hình vẽ bên dưới.
Hình 5.22: Khai báo địa chỉ tag ngoại Khai báo địa chỉ tag ngoại kết nối S7- 300 điều khiển mô hình động cơ bước: tương tự như trên nhưng phải khác địa chỉ Thực hiện liên kết giữa các tag và các I/O Field trong giao diện vừa mới tạo trong Graphics Designer. Tiếp theo tạo Tag Trigger trong Global Script . Sau khi viết chương trình xong nhấn nút Complie để biên dịch, sau đó lưu chương trình lại. Kích hoạt tính năng Global Script: click phải Computer rồi chọn properties. Trong hộp thoại Computer property chọn thẻ Startup rồi check vào ô Global Script Runtime. o
-
TRANG – 148