Do việc nghiên cứu lý thuyết còn chưa sâu, chưa đánh giá được chính xác các giá trị cũng như lựa chọn thiết bị còn sơ sài. Trong quá trình làm còn máy móc nhiều phần lý thuyết cũng như mở rông còn chưa đào sâu suy nghĩ. Ví dụ như mạch hiện thị thang đo giá trị còn chưa có, phần hiệu chỉnh đo bằng hàm PID.
Qua bài báo cáo lý thuyết PLC, chúng em đã tìm hiểu được các cảm biến nhiệt độ ở giá trị cao, các modul analog bộ khuếch đại va PLC S7-200.
Trong bài báo cáo đã làm rõ quy trình thiết kế hệ thống các sơ đồ nối dây, đi dây. nhưng chưa chuyên sâu và gặp nhiều vấn đề trong thuật toán và chương trình.
72 trang |
Chia sẻ: lylyngoc | Lượt xem: 14361 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Ứng dụng PLC S7 200 đo, điều khiển và cảnh báo nhiệt độ trong lò với giải đo [ 0 – 1200 ]°C, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Các đầu vào/ra số:
- Đầu vào (Ix.x ): kết nối với nút bấm, công tắc, sensor…với điện áp vào tiêu chuẩn 24VDC.
- Đầu ra (Qx.x): kết nối với thiết bị điều khiển với các điện áp 24VDC/220VAC ( tùy theo loại CPU ).
- Đầu vào nguồn: 24VDC/220VAC ( tùy theo loại CPU ).
1.2. Đèn trạng thái:
- Đèn RUN (màu xanh): Chỉ báo PLC đang ở chế độ làm việc và thực hiện chương trình đã được nạp vào bộ nhớ chương trình.
- Đèn STOP (màu vàng): Chỉ báo PLC đang ở chế độ dừng và không thực hiện chương trình, các đầu ra đều ở trạng thái “OFF”.
- Đèn SF/DIAG: Chỉ báo hệ thống bị hỏng tức do lỗi phần cứng hoặc hệ điều hành.
- Đèn Ix.x(màu xanh): Chỉ báo trạng thái của đầu vào số(ON/OFF).
- Đèn Qx.x(màu xanh): Chỉ báo trạng thái của đầu ra số(ON/OFF).
1.3. Port truyền thông:
- Port truyền thông nối tiếp RS485: Giao tiếp với PC, PG, TD200, OP, mạng biến tần…
- Port cho module mở rộng: Kết nối với module mở rộng.
1.4. Công tắc chuyển chế độ:
- RUN: Cho phép PLC thực hiện chương trình, khi chương trình lỗi hoặc gặp lệnh STOP thì PLC tự động chuyển sang chế độ STOP mặc dù công tắc vẫn ở vị trí RUN ( quan sát đèn trạng thái ).
- STOP: Dừng cưỡng bức chương trình đang chạy, các đầu ra chuyển về OFF.
- TERM: Cho phép người dùng chọn một trong hai chế độ RUN/STOP từ xa, ngoài ra còn được dùng để download chương trình người dùng.
1.5. Vít chỉnh tương tự:
Mỗi PLC đều có từ một đến hai vít chỉnh tương tự có thể xoay được 270 độ để thay đổi giá trị của vùng nhớ biến trong chương trình.
2. Cấu trúc phần cứng:
Cấu trúc phần cứng của một PLC gồm có các module sau:
- Module nguồn.
- Module đầu vào.
- Module đầu ra.
- Module đơn vị xử lý trung tâm (CPU).
- Module bộ nhớ.
- Module quản lý phối ghép vào ra.
Khối ngõ vào
Bộ nguồn
Đơn vị xử lý trung tâm
Quản lý ghép nối
Bộ nhớ
Khối ngõ ra
Mô hình tổng quát của một PLC
2.1. Đơn vị xử lý trung tâm (CPU Central Processing Unit):
CPU dùng để xử lý, thực hiện những chức năng điều khiển phức tạp quan trọng của PLC. Mỗi PLC thường có từ một đến hai đơn vị xử lý trung tâm. CPU thường được chia làm hai loại: đơn vị xử lý “một bit” và đơn vị xử lý “từ ngữ”:
- Đơn vị xử lý “một bit”: Chỉ áp dụng cho những ứng dụng nhỏ, đơn giản, chỉ đơn thuần xử lý ON/OFF nên kết cấu đơn giản, thời gian xử lý dài.
- Đơn vị xử lý “từ ngữ”: Có khả năng xử lý nhanh các thông tin số, văn bản, phép toán, đo lường, đánh giá, kiểm tra nên cấu trúc phần cứng phức tạp hơn nhiều tuy nhiên thời gian xử lý được cải thiện nhanh hơn.
2.2. Bộ nhớ:
Bao gồm các loại bộ nhớ RAM, ROM, EEFROM, là nơi lưu trữ các thông tin cần xử lý trong chương trình của PLC. Bộ nhớ được thiết kế thành dạng module để cho phép dễ dàng thích nghi với các chức năng điều khiển với các kích cỡ khác nhau. Muốn mở rộng bộ nhớ chỉ cần cắm thẻ nhớ vào rãnh cắm chờ sẵn trên module CPU
Bộ nhớ có một tụ dùng để duy trì dữ liệu chương trình khi mất điện
2.3. Khối vào/ra:
Khối vào ra dùng để giao tiếp giữa mạch vi điện tử của PLC (điện áp 5/15VDC) với mạch công suất bên ngoài (điện áp 24VDC/220VAC). Khối ngõ vào thực hiện việc chuyển mức điện áp từ cao xuống mức tín hiệu tiêu chuẩn để đưa vào bộ xử lý.
Khối ngõ ra thực hiện việc chuyển mức tín hiệu từ tiêu chuẩn sang tín hiệu ngõ ra và cách ly quang.
2.4. Bộ nguồn:
Biến đổi từ nguồn cấp bên ngoài vào để cung cấp cho sự hoạt động của PLC.
2.5. Khối quản lý ghép nối:
Dùng để phối ghép giữa PLC với các thiết bị bên ngoài như máy tính, thiết bị lập trình, bảng vận hành, mạng truyền thông công nghiệp.
1.3.1.2. CẤU TRÚC BỘ NHỚ:
1. Phân chia bộ nhớ:
Bộ nhớ của PLC S7-200 được chia thành bốn vùng cơ bản và hầu hết có thể đọc ghi được chỉ trừ vùng nhớ đặc biệt (SM) chỉ có thể truy cập để đọc.
EEFROM Miền nhớ ngoài
Cấu trúc bộ nhớ của PLC.
- Vùng nhớ chương trình: Là miền nhớ được dùng để lưu trữ các lệnh được dùng trong chương trình.Vùng này thuộc kiểu non-volatile có thể đọc và ghi được.
- Vùng nhớ tham số: Dùng để lưu giữ các tham số như từ khóa, địa chỉ trạm… Vùng này thuộc kiểu non-volatile có thể đọc và ghi được.
- Vùng dữ liệu: Dùng để cất giữ các dữ liệu của chương trình bao gồm kết quả các phép tính, các hằng số được định nghĩa trong chương trình, bộ đệm truyền thông…
- Vùng đối tượng: Bao gồm các bộ đếm, bộ định thì, các cổng vào ra tương tự. Vùng này không thuộc kiểu non-volatile nhưng có thể đọc và ghi được.
Hai vùng nhớ cuối có ý nghĩa quan trọng trong việc thực hiện một chương trình.
2. Vùng nhớ chương trình:
Vùng nhớ chương trình gồm ba khối chính: OB1, SUBROUTIN và INTERRUPT.
- OB1: Chứa chương trình chính, các lệnh trong khối này luôn được quét trong mỗi vòng quét.
- SUBROUTIN: Chứa chương trình con, được tổ chức thành hàm và có biến hình thức để trao đổi dữ liệu, chương trình con sẽ được thực hiện khi có lệnh gọi từ chương trình chính.
- INTERRUPT: Miền chứa chương trình ngắt, được tổ chức thành hàm và có khả năng trao đổi dữ liệu với bất kỳ một khối chương trình nào khác. Chương trình này sẽ được thực hiện khi có sự kiện ngắt xảy ra.
3. Vùng nhớ dữ liệu:
Vùng dữ liệu là một vùng nhớ động. Nó có thể được truy cập theo từng bit, từng byte, từng từ đơn (word) hay từ kép (double word) và được sử dụng làm miền lưu trữ dữ liệu cho các thuật toán, các hàm truyền thông, lập bảng, các hàm dịch chuyển, xoay vòng thanh ghi, con trỏ địa chỉ…Vùng dữ liệu được chia thành những vùng nhớ nhỏ để phục vụ cho những mục đích và công dụng khác nhau, bao gồm các vùng sau:
- V (Variable memory): Vùng nhớ biến.
- I (Input image register): Vùng đệm đầu vào.
- Q (Output image register): Vùng đệm đầu ra.
- M (Internal memory bits): Vùng nhớ các bit nội.
- SM (Special memory): Vùng nhớ đặc biệt.
Cách thức truy cập địa chỉ của vùng nhớ dữ liệu:
3.1. Truy cập trực tiếp:
- Truy cập theo bit: Tên miền nhớ + địa chỉ byte + • + chỉ số bit.Ví dụ:V10.4 chỉ bit 4 của byte 10 thuộc miền nhớ V.
- Truy cập theo byte: Tên miền nhớ + B + địa chỉ byte. Ví dụ VB15 chỉ byte 15 trong miền nhớ V.
- Truy cập theo từ: Tên miền nhớ + W + địa chỉ byte cao của từ. Ví dụ VW183 chỉ từ đơn gồm hai byte là VB183 và VB184 trong đó VB183 là byte cao trong từ 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
VB183(byte cao) VB184(byte thấp) VW183
- Truy cập theo từ kép: Tên miền + D + địa chỉ byte cao trong miền.Ví dụ VD345 chỉ từ kép gồm 4 byte 345, 346, 347, 348 trong miền nhớ V trong đó 345 là byte cao trong từ kép. 31 24 23 16 15 8 7 0
VB183(byte cao) VB184 VB185 VB186(byte thấp) VD183
3.2. Truy cập gián tiếp:
Truy cập địa chỉ gián tiếp thông qua con trỏ (pointer). Con trỏ là một miền nhớ từ kép chứa địa chỉ của vùng nhớ khác. Các vùng nhớ V, L và thanh ghi chỉ mục ( AC1,AC2,AC3 ) có thể được sử dụng như là con trỏ. Để sử dụng con trỏ phải sử dụng lệnh MOVE_D để chuyển địa chỉ của vùng nhớ được định địa chỉ gián tiếp vào vùng con trỏ. Con trỏ cũng có thể được chuyển tới chương trình con như là một tham số. S7-200 cho phép con trỏ truy cập các vùng nhớ V,M,I,Q,S,T,C theo giá trị hiện hành và không cho phép truy cập theo từng bit và các vùng nhớ AI,AQ,HC,SM,L. Để truy cập gián tiếp dữ liệu địa chỉ của một vùng nhớ, phải tạo một con trỏ cho vùng đó bằng cách sử dụng ký tự & cùng với vùng nhớ có địa chỉ cần lấy. Toán hạng đầu vào của lệnh phải bắt đầu với ký tự & để chỉ rằng địa chỉ vùng nhớ, thay cho nội dung của nó được chuyển vào vùng định nghĩa toán hạng đầu ra của lệnh. Quy ước sử dụng con trỏ để truy nhập như sau:
- & địa chỉ byte (cao): Toán hạng lấy địa chỉ của byte, từ hoặc từ kép.
VD: MOVD &VW100,AC1: Tạo con trỏ bằng cách đưa địa chỉ byte cao VB100 vào trong thanh ghi AC1, thanh ghi AC1 sẽ chứa địa chỉ của VW100
- * con trỏ: Toán hạng lấy nội dung của byte, từ hoặc từ kép mà con trỏ chỉ vào.
Theo ví dụ trên, khi đã tạo con trỏ ta có thể lấy nội dung của AC1 và chuyển vào VW300 bằng cách dùng toán hạng lấy nội dung trỏ vào thanh ghi AC1
VD: MOVW &AC1,VW300: Nội dung của AC1 được chuyển vào VW300.
4. Vùng đối tượng:
Vùng đối tượng được sử dụng để lưu giữ dữ liệu cho các đối tượng lập trình như các giá trị tức thời, giá trị đặt trước của bộ đếm, hay timer. Dữ liệu kiểu đối tượng bao gồm các thanh ghi của Timer,
Counter, HSC, bộ đệm vào ra tương tự và các thanh ghi chỉ mục.
I.2.7. Ngôn ngữ lập trình.
Có 3 dạng ngôn ngữ lập trình cơ bản đó là:
Phương pháp hình thang ( Ladder Logic ) viết tắt là LAD.
Phương pháp liệt kê lệnh ( Statemnt List ) viết tắt là STL.
Phương pháp theo dạng dữ liệu hình khối( Data Block) viết tắt là DB.
Nếu chương trình dược viết theo kiểu LAD, thiết bị lập trình sẽ tự tạo ra một chương trình theo kiểu STL tương ứng. Nhưng ngược lại không phải một chương trình nào được viết theo kiểu STL cũng có thể chuyển được sang LAD.
Ở trong đồ án em sử dụng phương pháp hình thang(LAD).
LAD là một ngôn ngữ lập trình bằng đồ hoạ. Những thành phần cơ bản dùng trong LAD tương ứng với các thành phần của bảng điều khiển bằng rơle.Trong chương trình LAD các phần tử cơ bản dùng để biểu diễn lệnh logic như sau.
Tiếp điểm: Là biểu tượng (symbol) mô tả các tiếp điểm của rơ le, các tiếp điểm đó có thể là thường mở hoặc thường đóng
Cuộn dây (coil): Là biểu tượng mô tả các rơ le được mắc theo chiều dòng điện cung cấp cho rơ le.
Hộp (box): Là biểu tượng mô tả các hàm khác nhau, nó làm việc khi có dòng điện chạy đến hộp. Những dạng hàm thường được biểu diễn bằng hộp là các bộ thời gian (Timer), bộ đếm (Counter) và các hàm toán học..
Mạng LAD: Là đường nối các phần tử thành một mạch hoàn thiện, đi từ đường nguồn bên trái sang đường nguồn bên phải. Đường nguồn bên trái là dây nóng, cấp (đường nguồn bên phải thường không được thể hiện khi dùng chương trình tiện dụng STEP7-Mcro/Dos hoặcMicro/Win).
I.2.8. Các tập lệnh cơ bản trong S7-200.
I.2.8.1 Lệnh về bit.
Tiếp điểm thường mở.
Tiếp điểm thường đóng.
Cuộn coil, ngõ ra.
Trạng thái đảo bit
Set bit.
Lấy sườn lên..
Lấy sườn xuống
I.2.8.2. Lệnh nạp tiếp điểm thường mở, thường đóng vào thanh nguồn (LD, LDI)
Bảng1 Mô tả lệnh nạp tiếp điểm vào thanh nguồn
Ladder
Vùng nhớ
Mô tả
N: X, Y, M, S, T, C
Tieáp ñieåm thöôøng môû seõ ñöôïc ñoùng neáu n = 1
N: X, Y, M, S, T, C
Tieáp ñieåm thöôøng môû seõ ñoùng töùc thôøi khi n = 1
Lệnh trên STL
Vùng nhớ
Mô tả
LD n
n: I, Q, M, SM, (bit) T, C, V
Lệnh nạp giá trị logic của điểm n vào bit đầu tiên trong ngăn xếp
LDN n
n: I, Q, M, SM, (bit) T, C, V
Lệnh nạp giá trị logic nghịch đảo của điểm n vào bit đầu tiên trong ngăn xếp
I.2.8.3. Lệnh đầu ra (OUT)
Bảng 2 Mô tả lệnh OUT
Ladder
Vùng nhớ
Mô tả
n; I, Q, M, SM,
T, C, V
Cuộn dây đầu ra ở trạng thái kích thích khi có dòng điện điều khiển đi qua
Lệnh trên STL
Vùng nhớ
Mô tả
= n
n: I, Q, M, SM,
(bit) T, C, V
Sao giá trị của định ngăn xếp tới tiếp điểm n được chỉ định trong lệnh
I.2.8.4. Nối tiếp tiếp điểm thường mở, tiếp điểm thường đóng (AND, ANI)
Bảng 3 Mô tả các lệnh nối tiếp điểm
Ladder
STL
Vùng nhớ
Chức năng
AND n
n: X, Y, M, S, T, C
Lệnh thực hiện phép tính logic and giữa giá trị của tiếp điển n với giá trị logic bit đầu tiên của ngăn xếp. Kết quả lưu giữ ở bit đầu tiên của ngăn xếp.
AN n
n: X, Y, M, S, T, C
Lệnh thực hiện phép tính logic and giữa giá trị nghịch đảo của tiếp điển n với giá trị logic bit đầu tiên của ngăn xếp. Kết quả lưu giữ ở bit đầu tiên của ngăn xếp.
I.2.8.5. Lệnh nối song song tiếp điểm thường mở, tiếp điểm thường đóng (OR, ORI)
Bảng 4 Mô tả các lệnh nối tiếp điểm
Ladder
Intruction
Vùng nhớ
Chức năng
OR
n: X, Y, M, S, T, C
Lệnh thực hiện phép tính logic or giữa giá trị logic của tiếp điển n với giá trị logic bit đầu tiên của ngăn xếp. Kết quả lưu giữ ở bit đầu tiên của ngăn xếp.
ON
n: X, Y, M, S, T, C
Lệnh thực hiện phép tính logic or giữa giá logic trị nghịch đảo của tiếp điển n với giá trị logic bit đầu tiên của ngăn xếp. Kết quả lưu giữ ở bit đầu tiên của ngăn xếp.
I.2.8.6. Lệnh lấy sườn lên, sườn xuống (LDP, LDN)
Bảng 5 Mô tả các lệnh lấy sườn
Ladder
Toán hạng
Mô tả
Không có
n: X, Y, M, S, T, C
Không có
n: X, Y, M, S, T, C
I.2.8.9. Lệnh nối nối tiếp các khối lệnh (ANB)
Bảng 8 Lệnh nối tiếp và các khối lệnh
Ladder
Intruction
Vùng nhớ
Bước lập trình
ANB
(And Block)
1
I.2.8.10. Lệnh nối song song các khối lệnh (ORB)
Bảng 9 Lệnh nối song song và các khối lệnh
Ladder
Intruction
Vùng nhớ
Bước lập trình
ORB
(Or Block)
1
I.2.8.11. Lệnh rẽ nhánh (MPS, MRD, MPP)
Bảng 10 Lệnh rẽ nhánh
Ladder
Intruction
Vùng nhớ
Bước lập trình
MPS
MRD
MPP
1
1
1
I.2.8.12. Lệnh ghi xóa giá trị tiếp điểm (SET, RST)
Bảng 11 Các lệnh ghi và xóa tiếp điểm
Ladder
Intruction
Vùng nhớ
Bước lập trình
SET n
n: Y, M, S
1
RST n
n: Y, M, S, T, C, D, V, Z
1
Mô tả: Lệnh SET: Lệnh ghi giá trị logic 1 cho toán hạng n (tiếp điểm n) khi đầu vào của nó được thỏa mãn.
Lệnh RST: Lệnh ghi giá trị logic 0 cho toán hạng n (tiếp điểm n) khi đầu vào của nó được thỏa mãn.
I.2.8.13. Lệnh lấy sườn xung tín hiệu đầu vào (PLS, PLF)
Bảng 12 Lệnh lấy sườn và các tín hiệu dầu vào
Ladder
Intruction
Vùng nhớ
Bước lập trình
PLS n
n: Y, M
2
PLF n
n: Y, M
2
I.2.8.14. Lệnh chuyển dữ liệu (MOV)
Bảng 13 Mô tả các lệnh dịch chuyển dữ liệu
Ladder
Intruction
Vùng nhớ
Bước lập trình
MOV S D
S: Dữ liệu nguồn 16 bit (K, H, D, T, C, V, Z)
D: Dữ liệu đích 16 bit (D, T, C, V, Z)
5
I.2.8.15 Lệnh tiếp điểm so sánh (=, >, , >=, <=)
Bảng 14 Các lệnh so sánh
Ladder
Intruction
Vùng nhớ
Bước lập trình
LD = n1 n2
n1, n2: K, H, D, T, C
1
LD < n1 n2
n1, n2: K, H, D, T, C
1
LD > n1 n2
n1, n2: K, H, D, T, C
1
LD n1 n2
n1, n2: K, H, D, T, C
1
LD <= n1 n2
n1, n2: K, H, D, T, C
1
LD >= n1 n2
n1, n2: K, H, D, T, C
1
Mô tả: Lệnh tiếp điểm so sánh thực hiện việc so sánh dữ liệu trong 2 từ n1 và n2 hoặc 1 hằng số với dữ liệu của một từ. Kết quả của phép so sánh sẽ có giá trị bằng 1 nếu đúng (đóng tiếp điểm so sánh) và bằng 0 nếu sai (mở tiếp điểm so sánh).
I.2.8.16. Lệnh nối tiếp tiếp điểm so sánh (AND=, AND>, AND, AND>=, AND<=)
Bảng 15 Lệnh nối tiếp điểm so sánh
Ladder
Intruction
Vùng nhớ
Bước lập trình
AND = n1 n2
n1, n2: K, H, D, T, C
1
AND < n1 n2
n1, n2: K, H, D, T, C
1
AND > n1 n2
n1, n2: K, H, D, T, C
1
AND n1 n2
n1, n2: K, H, D, T, C
1
AND <= n1 n2
n1, n2: K, H, D, T, C
1
AND >= n1 n2
n1, n2: K, H, D, T, C
1
Mô tả: Lệnh thực hiện phép toán AND giữa một tiếp điểm với tiếp điểm so sánh. Tùy thuộc vào trạng thái của tiếp điểm và kết quả của phép so sánh mà cho kết quả tổ hợp logic.
I.2.8.17. Lệnh nối song song tiếp điểm so sánh (OR, OR, OR>=, OR<=)
Bảng 16 Lệnh nối song song điểm so sánh
Ladder
Intruction
Vùng nhớ
Bước lập trình
OR = n1 n2
n1, n2: K, H, D, T, C
1
OR < n1 n2
n1, n2: K, H, D, T, C
1
OR > n1 n2
n1, n2: K, H, D, T, C
1
OR n1 n2
n1, n2: K, H, D, T, C
1
OR <= n1 n2
n1, n2: K, H, D, T, C
1
OR >= n1 n2
n1, n2: K, H, D, T, C
1
Mô tả: Lệnh thực hiện phép toán OR giữa một tiếp điểm với tiếp điểm so sánh. Tùy thuộc vào trạng thái của tiếp điểm và kết quả của phép so sánh mà cho kết quả tổ hợp logic.
I.2.8.18. Lệnh điều khiển Timer:
Timer là bộ tạo thời gian giữa tín hiệu ra nên trong điều khiển vẫn thường được gọi là khâu trễ. Nếu ký hiệu tín hiệu (logic) vào là x(t) và thời gian trễ tạo ra bằng Timer là t thì tín hiệu đầu ra của Timer đó sẽ là x(t – t). S7 – 200 có 64 bộ Timer (với CPU 212) hoặc 128 Timer (với CPU 214) được chia làm hai loại khác nhau là:
- Timer tạo thời gian trễ không có nhớ (On-Delay Timer), ký hiệu là TON.
- Timer tạo thời gian trễ có nhớ (Retentive On-Delay Timer), ký hiệu là TONR.
Hai kiểu Timer của S7 – 200 (TON và TONR) phân biệt với nhau ở phản ứng của nó đối với trạng thái đầu vào. Cả hai Timer kiểu TON và TONR cùng bắt đầu tạo thời gian trễ tín hiệu kể từ thời điểm có sườn lên ở tín hiệu đầu vào, tức là khi tín hiệu đầu vào chuyển trạng thái logic từ 0 lên 1, được gọi là thời gian Timer được kích, và không tính khoảng thời gian khi đầu vào có giá trị logic 0 vào thời gian trễ tín hiệu đặt trước. Khi đầu vào có giá trị logic bằng 0, TON tự động reset còn TONR thì không tự động reset. Timer TON được dùng để tạo thời gian trễ trong một khoảng thời gian (miền liên thông), còn với TONR thời gian trễ sẽ được tạo ra trong nhiều khoảng thời gian khác nhau. Timer TON và TONR bao gồm 3 loại với ba độ phân giải khác nhau, độ phân giải 1ms, 10ms và 100ms. Thời gian trễ t được tạo ra chính là tích của độ phân giải của bộ Timer được chọn và giá trị đặt trước cho Timer. Ví dụ Timer có độ phân giải 10ms và giá trị đặt trước là 50 thì thời gian trễ sẽ là t = 500ms. Timer của S7 – 200 có những tính chất cơ bản sau:
Các bộ Timer được điều khiển bởi một cổng vào và giá trị đếm tức thời. Giá trị đếm tức thời của Timer được nhớ trong thanh ghi 2 byte (gọi là T-word) của Timer, xác định khoảng thời gian trễ kể từ khi Timer được kích. Giá trị đặt trước của các bộ Timer
Được ký hiệu trong LAD và STL là PT. Giá trị đếm tức thời của thanh ghi T-word thường xuyên được so sánh với giá trị đặt trước của Timer
Bảng 17 Cú pháp khai báo Timer
LAD
Mô tả
Toán hạng
Khai báo Timer số hiệu xx kiểu TON để tạo thời gian trễ tính từ khi đầu vào IN được kích. Nếu như giá trị đếm tức thời lớn hơn hoặc bằng giá trị đặt trước PT thì T-bit có giá trị logic bằng 1. có thể reset Timer kiểu TON bằng lệnh R hoặc bằng giá trị logic 0 tại đầu vào IN.
Txx (word)
CPU214: 32÷63, 96÷127
PT: VW, T, (word) C, IW, QW,MW, SMW, AC, AIW, hằng số
Khai báo Timer số hiệu xx kiểu TONR để tạo thời gian trễ tính từ khi đầu vào IN được kích. Nếu như giá trị đếm tức thời lớn hơn hoặc bằng giá trị đặt trước PT thì T-bit có giá trị logic bằng 1. Chỉ có thể reset Timer kiểu TON bằng lệnh R cho T-bit.
Txx (word)
CPU214: 0÷31, 64 ÷95
PT: VW, T, (word) C, IW, QW, MW, SMW, AC, AIW, hằng số
- Mỗi bộ Timer, ngoài thanh ghi 2 byte T-word lưu giá trị đếm tức thời, còn có một bit ký hiệu là T-bit, chỉ thị trạng thái logic đầu ra. Giá trị logic của bit này phụ thuộc vào kết quả so sánh giữa giá trị đếm tức thời với giá trị đặt trước.
- Trong khoảng thời gian tín hiệu x(t) có giá trị logic 1, giá trị đếm tức thời trong T-word luôn được cập nhật và thay đổi tăng dần cho đến khi nó đạt giá trị cực đại. Khi giá trị đếm tức thời lớn hơn hay bằng giá trị đặt trước, T-bit có giá trị logic 1.
Khi sử dụng Timer kiểu TONR, giá trị đếm tức thời được lưu lại và không bị thay đổi trong khoảng thời gian khi tín hiệu đầu vào có logic 0. Giá trị của T-bit không được nhớ mà hoàn toàn phụ thuộc vào kết quả so sánh giữa giá trị đếm tức thời và giá trị đặt trước.
Khi reset một bộ Timer, T-word và T-bit của nó đồng thời được xóa và có giá trị bằng 0, như vậy giá trị đếm tức thời được đặt về 0 và tin hiệu đầu ra cũng có trạng thái logic bằng 0.
Bảng 18 Độ phân giải của Timer.
Lệnh
Độ phân giải
Giá trị cực đại
CPU 214
TON
1 ms
32,767 s
T32 và T96
10 ms
327,67 s
T33 ÷ T36, T97 ÷ T100
100 ms
3276,7 s
T32 ÷ T96, T101 ÷ T127
TONR
1 ms
32,767 s
T0 và T64
10 ms
327,67 s
T1 ÷ T4, T65 ÷ T68
100 ms
3276,7 s
T5 ÷ T31, T69 ÷ T95
Bộ đếm tiến CTU đếm số sườn lên của tín hiệu logic đầu vào, tức là đếm số lần thay đổi trạng thái logic từ 0 lên 1 của tín hiệu. Số xung đếm được, được ghi vào thanh ghi 2 byte của bộ đếm, gọi là thanh ghi C-word.
Nội dung của thanh ghi C-word, gọi là giá trị đếm tức thời của bộ đếm, luôn được so sánh với giá trị đặt trước của bộ đếm, được ký hiệu là PV. Khi giá trị đếm tức thời bằng hoặc lớn hơn giá trị đặt trước này thì bộ đếm báo ra ngoài bằng cách đặt giá trị logic 1 vào một bit đặc biệt của nó, gọi là C-bit. Trường hợp giá trị đếm tức thời nhỏ hơn giá trị đặt trước C-bit có giá trị logic là 0.
Bảng 19 Cú pháp khai báo Counter
LAD
Mô tả
Toán hạng
Khai báo bộ đếm tiến theo sườn lên của CU. Khi giá trị đếm tức thời C-word Cxx lớn hơn hoặc bằng giá trị đặt trước PV, C-bit (Cxx) có giá trị logic bằng 1. Bộ đếm được reset khi đầu vào R có giá trị logic bằng 1. Bộ đếm ngừng đếm khi C-word Cxx đạt được giá trị cực đại.
Cxx: (word)CPU 214: 0 ÷47, 80 ÷127
PV(word):VW,T,C,IW,QW,MW,SMW,AC,AIW,hằngsố,*VD,*AC
Khai báo bộ đếm tiến/lùi, đếm tiến theo sườn lên của CU, đếm lùi theo sườn lên của CD. Khi giá trị đếm tức thời C-word Cxx lớn hơn hoặc bằng giá trị đặt trước PV, C-bit (Cxx) có giá trị logic bằng 1. Bộ đếm ngừng đếm tiến khi C-word Cxx đạt được giá trị cực đại 32.767 và ngừng đếm lùi khi C-word Cxx đạt được giá trị cực đại –32.768. CTUD reset khi đầu vào R có giá trị logic bằng 1.
Cxx: (word)CPU 214: 48 ÷79
PV:(word):VW,T,C,IW,QW,MW,SMW,AC,AIW,
hằngsố,*VD,*AC
Khác với các bộ Timer, các bộ đếm CTU và CTUD đều có chân nối với tín hiệu điều khiển xóa để thực hiện việc đặt lại chế độ khởi phát ban đầu (reset) cho bộ đếm, được ký hiệu bằng chữ cái R trong LAD, hay được qui định là trạng thái logic của bit đầu tiên của ngăn xếp trong STL. Bộ đếm được reset khi tín hiệu xoá này có mức logic là 1 hoặc khi lệnh R (reset) được thực hiện với C-bit. Khi bộ đếm được reset, cả C-word và C-bit đều nhận giá trị 0.
Bộ đếm tiến/lùi CTUD đếm tiến khi găp sườn lên của xung vào cổng đếm tiến, ký hiệu là CU hoặc bit thứ 3 của ngăn xếp trong STL, và đếm lùi khi gặp sườn lên của xung vào cổng đếm lùi, ký hiệu là CD trong LAD hoặc bit thứ 2 của ngăn xếp trong STL. Bộ đếm tiến CTU có miền giá trị đếm tức thời từ 0 đến 32.767. Bộ đếm tiến/lùi CTUD có miền giá trị đếm tức thời từ –32.768 đến 32.767.
I.2.8.19. Lệnh nhảy và lệnh gọi chương trình con
Các lệnh của chương trình, nếu không có những lệnh điều khiển riêng, sẽ được thực hiện theo thứ tự từ trên xuống dưới trong một vòng quét. Lệnh điều khiển chương trình cho phép thay đổi thứ tự thực hiện lệnh. Chúng cho phép chuyển thứ tự thực hiện, đáng lẽ ra là lệnh tiếp theo, tới một lệnh bất cứ nào khác của chương trình, trong đó nơi điều khiển chuyển đến được đánh dấu trước bằng một nhãn chỉ đích. Thuộc nhóm lệnh điều khiển chương trình gồm: lệnh nhảy, lệnh gïọi chương trình con. Nhãn chỉ đích, hay gọi đơn giản là nhãn, phải được đánh dấu trước khi thực hiện nhảy hay lệnh gọi chương trình con.
Việc đặt nhãn cho lệnh nhảy phải nằm trong chương trình. Nhãn của chương trình con, hoặc của chương trình xử lý ngắt được khai báo ở đầu chương trình. Không thể dùng lệnh nhảy JMP để chuyển điều khiển từ chương trình chính vào một vào một nhãn bất kỳ trong chương trình con hoặc trong chương trình xử lý ngắt. Tương tự như vậy cũng không thể từ một chương trình con hay chương trình xử lý ngắt nhảy vào bất cứ một nhãn nào nằm ngoài các chương trình đó.
Lệnh gọi chương trình con là lệnh chuyển điều khiển đến chương trình con. Khi chương trình con thực hiện các phép tính của mình thì việc điều khiển lại được chuyển trở về lệnh tiếp theo trong chương trình chính ngay sau lệnh gọi chương trình con. Từ một chương trình con có thể gọi được một chương trình con khác trong nó, có thể gọi như vậy nhiều nhất là 8 lần trong S7 – 200. Đệ qui (trong một chương trình con có lệnh gọi đến chính nó) về nguyên tắc không bị cấm song phải chú ý đến giới hạn trên.
JMP, CALL, LBL, SBR: Lệnh nhảy JMP và lệnh gọi chương trình con SBR cho phép chuyển điều khiển từ vị trí này đến một vị trí khác trong chương trình. Cú pháp lệnh nhảy và lệnh gọi chương trình con trong LAD và STL đều có toán hạng là nhãn chỉ đích (nơi nhảy đến, nơi chứa chương trình con).
Bảng lệnh 20 Các JMP, CALL
LAD
STL
Mô tả
Toán hạng
n
─( JMP)
JMP Kn
Lệnh nhảy thực hiện việc chuyển điều khiển đến nhãn n trong một chương trình.
n: CPU 214: 0÷255
LBL: n
JMP Kn
Lệnh khai báo nhãn n trong một chương trình.
n
─( CALL)
CALL Kn
Lệnh gọi chương trình con, thực hiện phép chuyển điều khiển đến chương trình con có nhãn n.
n: CPU 214: 0÷255
SBR:n
SBR Kn
Lệnh gán nhãn cho một chương trình con.
─( CRET)
CRET
Lệnh trở về chương trình đã gọi chương trình con có điều kiện (bit đầu của ngăn xếp có giá trị logic bằng 1)
Không có
─( RET)
RET
Lệnh trở về chương trình đã gọi chương trình con không điều kiện.
Bảng 21 Các lệnh ghi đọc thời gian.
LAD
STL
Toán hạng
TODR T
T: VB, IB, QB, MB, SMB, *VD, *AC (byte)
TODW T
Tuyệt đối không sử dụng lệnh TODR và lệnh TODW đồng thời vừa trong chương trình chính, vừa trong chương trình xử lý ngắt. Khi một lệnh TODR hay TODW đã được thực hiện, thì khi gọi chương trình xử lý ngắt, các lệnh làm việc với đồng hồ thời gian thực trong chương trình xử lý ngắt sẽ không được thực hiện nữa. Bít SM4.5 sẽ có logic 1 trong những trường hợp như vậy.
I.2.8.20. Các lệnh dịch chuyển ô nhớ
Bảng 22 Cú pháp lệnh MOV_B
LAD
Toán hạng
MOV B
EN
IN OUT
IN :VB,IB,QB,MB,SMB
OUT :VB,IB,QB,MB,SMB
1.3.1.3. MỞ RỘNG CỔNG VÀO RA:
Các PLC họ S7-200 đều có thể mở rộng thêm các đầu vào/ra và các chức năng nâng cao khác bằng cách ghép nối thêm các module mở rộng về phía bên phải của PLC tạo thành một móc xích các module. Địa chỉ của các vị trí các module được xác định bằng kiểu vào ra và vị trí của các module trong móc xích, bao gồm các module có cùng kiểu.
Các module mở rộng số hay tương tự đều chiếm chỗ trong bộ đệm tương ứng với số đầu vào ra của module.
Ví dụ cách đặt địa chỉ module mở rộng của CPU224:
1.3.1.4. THỰC HIỆN CHƯƠNG TRÌNH:
PLC thực hiện chương trình theo chu trình lặp. Mỗi vòng lặp gọi là một vòng quét. Mỗi vòng quét được bắt đầu bằng giai đoạn đọc dữ liệu từ các cổng vào vùng bộ đệm ảo, tiếp theo là giai đoạn thực hiện chương trình. Trong từng vòng quét chương trình được thực hiện bằng lệnh đầu tiên và kết thúc tại lệnh kết thúc. Sau giai đoạn thực hiện chương trình là giai đoạn truyền thông nội bộ và kiểm tra lỗi. Vòng quét được kết thúc bằng giai đoạn chuyển các nội dung của bộ đệm ảo tới các cổng ra. Như vậy tại thời điểm thực hiện lệnh vào ra, thông thường lệnh không làm việc trực tiếp với cổng vào ra mà chỉ thông qua bộ đệm ảo của cổng trong vùng nhớ tham số. Việc truyền thông giữa bộ đệm ảo với ngoại vi trong các giai đoạn 1 và 4 do CPU quản lý. Khi gặp lệnh vào ra ngay lập tức thì hệ thống sẽ cho dừng mọi công việc khác ngay cả chương trình xử lý ngắt để thực hiện lệnh này một cách trực tiếp với cổng vào/ra.
Nếu sử dụng các chế độ ngắt, chương trình con tương ứng với các chế độ ngắt được soạn thảo và cài đặt như một bộ phận của chương trình. Chương trình ngắt chỉ được thực hiện khi có sự kiện báo ngắt và có thể xảy ra bất kỳ lúc nào trong một vòng quét.
1.3.1.5. CẤU TRÚC CHƯƠNG TRÌNH:
Chương trình của PLC S7-200 được lưu trong bộ nhớ chương trình và có thể được lập dưới hai dạng cấu trúc khác nhau:
- Chương trình tuyến tính: Toàn bộ chương trình nằm trong khối chương trình chính (OB1), các lệnh trong chương trình luôn được quét từ đầu đến cuối chương trình và quay lại từ đầu trong quá trình PLC hoạt động. Chương trình này chỉ thường áp dụng với các ứng dụng không phức tạp lắm.
- Chương trình có cấu trúc: Chương trình được chia thành những phần nhỏ và mỗi phần thực hiện một nhiệm vụ riêng biệt, từng phần nằm trong những khối riêng biệt (OB1, SUBROUTIN, INTERRUPT). Loại chương trình này thường áp dụng với những yêu cầu phức tạp và nhiều khâu. Khi lập trình chương trình có cấu trúc thường sử dụng ngoài chương trình chính còn có chương trình con và chương ngắt. Chương trình con được viết trong khối chương trình con và được gọi trong chương trình chính khi có lệnh gọi. Chương trình ngắt được viết trong khối chương trình ngắt và thực hiện mỗi khi có sự kiện ngắt xảy ra bất kể trong thời điểm nào của vòng quét. Cả hai loại chương trình này đều có khả năng trao đổi dữ liệu với các chương trình khác.
1.3.1.6. KIỂU DỮ LIỆU:
Trong PLC S7-200 có các kiểu dữ liệu được cho trong bảng sau:
Kiểu dữ liệu Kích thước Nội dung Dải giá trị
BOOL 1 bit Boolean 0;1
BYTE 8 bits Số nguyên không dấu 0 ÷ 255
BYTE 8 bits Số nguyên có dấu (chỉ áp dụng cho lệnh SHRB) -128 ÷ 127
WORD 16 bits Số nguyên không dấu 0 ÷ 65535
INT 16 bits Số nguyên có dấu -32678 ÷32676
DWORD 32 bits Số nguyên không dấu 0 ÷ 4294967295
DINT 32 bits Số nguyên có dấu -2147383648÷2147383648
REAL 32 bits Số thực có dấu theo IEEE -2147383648÷2147383648
STRING 0–255 bytes Kiểu dữ liệu chuỗi ASCII Mã ASCII từ 128 ÷ 255
1.3.1.7.THIẾT BỊ LẬP TRÌNH:
Có hai loại thiết bị có thể dùng để lập trình cho PLC S7- 200 là PG và PC
- PG: Là thiết bị lập trình chuyên dụng được dùng cho PLC S7-200 tuy nhiên chỉ sử dụng để lập trình với ngôn ngữ STL
- PC: Là máy tính cá nhân trên đó có cài phần mềm STEP7-MICROWIN. Phần mềm này cho phép lập trình với cả ba ngôn ngữ là STL, LAD và FBD. Để cài phần mềm này người phải có bản quyền và PC phải cài hệ điều hành WIN98/2000/NT/XP.Hiện nay hầu hết sử dụng STEP7 MICROWIN 3.0, 3.2, 4.0 để lập trình cho S7 để có thể sử dụng được những ứng dụng nâng cao.
1. Giao diện làm việc:
Sau khi đã cài đặt phần mềm STEP7-MICROWIN và vào chương trình làm việc, giao diện làm việc sẽ được thể hiện như sau:
Navigation Bar-InstructionTree-Cross Reference-Data Block-Status Chart-Symbol Table
Output Window-Status Bar Program Editor Local Variable Table
- Navigation Bar: Thể hiện các khối và các lệnh làm việc được tạo sẵn trong phần mềm. Để sử dụng các khối này ta chỉ cần kích vào nút biểu tượng tương ứng với khối cần dùng.
- Instruction Tree: Thể hiện tất cả các khối và lệnh sử dụng trong chương trình dưới dạng cây Cross Reference, Data Block, Status Chart, Symbol Table sẽ được trình bày chi tiết ở phần sau.
- Program Editor: Đây là vùng chính để thực hiện chương trình bằng cách đưa các lệnh vào trong vùng và sắp xếp chúng theo cách thức của người dùng để tạo ra một chương trình. thư mục. Muốn làm việc với lệnh nào chỉ việc Click đúp chuột vào vị trí đó để chọn thiết bị làm việc.
- Các khối
- Menu bar và Toolbar: Là các thanh công cụ giúp thực hiện nhanh các lệnh và chức năng sử dụng trong chương trình.
2. Các khối sử dụng trong giao diện lập trình:
2.1. Khối Programe Block:
Gồm ba khối chính:
1. Khối OB1: Là khối chứa chương trình chính, luôn được quét trong mỗi vòng vòng quét. Đây là khối chính trong việc thiết kế chương trình và bắt buộc phải có.
2. Khối SUBROUTIN: Là khối chứa chương trình con. Chương trình chứa trong khối này sẽ được thực hiện mỗi khi có lệnh gọi thực hiện từ chương trình chính.
3. Khối INTERRUPT: Là khối chứa chương trình ngắt. Khối này sẽ được thực hiện mỗi khi có sự kiện ngắt xảy ra.
Cách tạo chương trình con hay chương trình ngắt
Có thể tạo nhiều chương trình con hay chương trình ngắt tuy nhiên không thể tạo nhiều chương trình chính do chương trình chính chỉ có một. Có thể xóa hay đổi tên chương trình con hay chương trình ngắt bằng cách click chuột phải vào biểu tượng chương trình và chọn “Delete” hay “Rename”
2.2. Khối Data Block:
Đây là khối chứa dữ liệu của một chương trình. Ta có thể định dạng dữ liệu trước trong khối này và sử dụng chúng trong chương trình. Khi tải chương trình vào PLC thì toàn bộ nội dung của khối sẽ đượcn lưu vào bộ nhớ của PLC. Khối chỉ làm việc với dữ liệu của vùng nhớ V.
Để tạo dữ liệu trong khối này ta có click vào biểu tượng trên màn hình hoặc trên cây thư mục chọn khối và click vào biểu tượng “USER”, khi đó màn hình chương trình sẽ chuyển sang làm việc với khối.
Cách tạo dữ liệu được thể hiện bên dưới.
Ví dụ về cách tạo một Data Block :
2.3. Khối System Block:
Đây là khối định dạng các chức năng làm việc của hệ thống. Khối này gồm có 10 khối chính:
1. Communication Ports: Định dạng cho cổng giao tiếp của PLC.
Địa chỉ mặc định của PLC là 2, có thể thay đổi địa chỉ này.
Tốc độ truyền mặc định là 9600kbps.
2. Retentive Ranges: Khối này cho phép chọn 5 vùng nhớ có thể lưu dữ liệu khi PLC bị mất điện, nếu vùng nào được chọn thì dữ liệu vùng đó được giữ, ngược lại sẽ bị reset về 0.
3. Password: S7-200 có 3 mức chọn mật mã,thông thường chọn mức cao nhất để bảo mật bản quyền, số ký tự tối đa là 8. Trường hợp PLC đã có password thì người không có password không thể upload từ PLC về máy tính nhưng có thể DownLoad chương trình vào PLC bằng các chọn “clear PLC”, khi đó toàn bộ dữ liệu sẽ bị xóa.
4. Output table:
Khối này cho phép chọn trạng thái ngõ ra của PLC là ON hay OFF khi PLC chuyển trạng thái từ RUN sang STOP. Chế độ mặc định của phần mềm là OFF.
5. Input Filter:
Cho phép chọn thời gian lọc tín hiệu ngõ vào của PLC. Thời gian lọc tín hiệu ngõ vào là thời gian mà ngõ vào không đổi trạng thái thì PLC mới cho phép nhận trạng thái đó. Nếu sự thay đổi trạng thái diễn ra trong thời gian ngắn hơn thời gian lọc thì PLC sẽ không nhận tín hiệu đó và coi như trạng thái của ngõ vào là không thay đổi.
Thời gian lọc mặc định của đầu vào là 6.4ms
6. Pulse Catch Bits:
PLC cho phép chọn ngõ vào có thể bắt những tín hiệu nhanh khi chu kỳ quét chưa kịp quét, tín hiệu đó sẽ được giữ cho đến khi chu kỳ quét được thực hiện.
7. Background Time:
Background time còn gọi là thời gian nền, được chuyên dùng cho việc xử lý các yêu cầu truyền thông trong chế độ chạy ở trạng thái biên dịch hoặc đáp ứng. Background time được cho dưới dạng phần trăm và tác động đến thời gian quét. Khi tỷ lệ chọn càng tăng thì thời gian quét càng chậm. Tỷ lệ hợp lý được chọn là 10%.
8. EM Configuration:
Khối này cho phép người sử dụng xem được cấu hình vị trí của module được sử dụng. Địa chỉ này được lưu trong vùng nhớ V.
9. Configure LED:
Khối này cho phép người dùng đặt cấu hình cho đèn SF/DIAG. Có hai chế độ có thể được sử dụng để thông báo.
10. Increase Memory:
Khối cho phép người dùng tăng hoặc không tăng bộ nhớ trong chế độ chạy của PLC bằng cách đánh dấu vào vị trí “Disable Edit in Run to increas memory”.
2.4. Khối Symbol Table:
Khối này cho phép người dùng đặt biểu tượng và chú thích các địa chỉ sử dụng trong chương trình. Khi ta đặt biểu tượng ( symbol ) và chú thích ( comment ) thì trong chương trình sẽ thể hiện các biểu
tượng này thay cho địa chỉ. Công việc này sẽ giúp cho người dùng dễ dàng giám sát các địa chỉ được sử dụng trong chương trình.
2.5. Khối Status Chart:
Khối này giúp người dùng có thể giám sát và hiệu chỉnh các dữ liệu trong chương trình bằng cách đưa các dữ liệu cần giám sát vào trong khối. Quá trình quan sát dữ liệu chỉ được thực hiện khi PLC đang ở chế độ RUN. Người dùng có thể giám sát dữ liệu bằng hai cách: Dùng Chart Status hoặc Trend
View trên thanh công cụ. Chart Status thể hiện giá trị dữ liệu ở dạng bảng và Trend View thể hiện dữ liệu dưới dạng biểu đồ theo thời gian. Có thể quan sát dữ liệu thông qua các công cụ là Chart Status hoặc Single read tuy trong đó chức năng Chart Status có thể cập nhật giá trị của dữ liệu khi PLC chuyển sang chế độ STOP còn chức năng Single Read thì không. Ta có thể thay đổi và cập nhật giá trị của dữ liệu thông qua các chức năng Write và Force trên thanh công cụ.
Ví dụ về hoạt động của một bảng dữ liệu trong chương trình:
2.6. Khối Cross Reference:
Khối Cross Reference được thể hiện dưới dạng bảng giúp người dùng có thể giám sát được vị trí và loại của dữ liệu dùng trong chương trình. Bảng chỉ được thể hiện khi chương trình được Download xuống PLC và quan sát ở chế độ online.
2.7. Khối Communication:
Khối này giúp người dùng kết nối với thiết bị lập trình bằng cách định dạng cho cổng giao tiếp.
Các bước thực hiện như sau:
1. Click chuột vào biểu tượng của khối trên màn hình giao diện chương trình người dùng, khi đó sẽ hiện ra một bảng thông báo như sau:
Trong bảng này ta chọn địa chỉ của PLC, thường mặc định là 2, sau đó chọn ô “Search all baud rates” để tìm tất cả các tốc độ truyền thông yêu cầu, tiếp theo Click chuột vào biểu tượng “Set PG/PC interface” để cài đặt giao diện truyền thông, một cửa sổ sẽ hiện ra như sau:
Trong cửa sổ này ta chọn Properties để định dạng cổng truyền thông. Nếu ta dùng cổng truyền thông loại nào thì ta chọn loại đó, sau đó chọn các thông số cho chuẩn truyền thông như thể hiện bên dưới.
Sau khi chọn xong các thông số ta nhấn “OK”để thoát khỏi cửa sổ này và quay lại cửa sổ trước đó, tại đây ta chọn chuẩn là PC/PPI cable (PPI) nếu cáp sử dụng là PPI, sau đó nhấn “OK”để thoát về cử sổ ban đầu.
Tại đây ta click đúp chuột vào biểu tượng “Double - Click to refresh ”. Nếu quá trình giao tiếp thành công tại đó sẽ hiển thị loại PLC đang kết nối có nghĩa là chương trình đã nhận dạng được loại PLC, nếu không sẽ hiển thị cảnh báo lỗi. Nếu có lỗi xảy ra ta phải kiểm tra thông báo lỗi để tìm cách khắc phục lỗi sau đó thực hiện lại các bước như trên.
Sau khi kết nối thành công ta tiến hành viết hoặc đọc chương trình, nếu muốn viết chương trình vào PLC thì ta chọn “Download” còn ngược lại thì chọn “Upload”. Để Upload hay Download thì người dùng phải kết nối cáp với PLC và chuyển PLC sang chế độ STOP. Việc này được thực hiện như sau:
- Từ thanh menu ta chọn ‘File” và kéo thả xuống, tại đây ta chọn Upload hoặc DownLoad.
- Trên thanh Toolbar ta chọn mũi tên xuống cho việc DownLoad và mũi tên lên cho việc Upload.
- Nhấn phím Ctrl + U cho việc Upload và Ctrl + D cho việc DownLoad.
1.3.2 Các module, đối tượng mở rộng
- Module đầu vào số: EM221, có nhiều loại bao gồm 8/16 đầu vào và điện áp 24VDC/120- 230VAC
- Module đầu ra số: EM222 bao gồm 4/8 đầu ra 24VDC/RELAY/230VAC.
- Module vào/ra số: EM223 bao gồm 4/8/16 đầu vào 24VDC và 4/8/16 đầu ra 24VDC /RELAY/230VAC.
- Module đầu vào tương tự: EM231
+Các thông số kĩ thuật
+ Cách kết nối ngõ vào ra
+ Switch chọn giá trị phân giải.
Lưu ý: dòng điện ngõ vào: 0 đến 20 mA. Độ phân giải: 5µA hay từ 1,25mV đến 2,5mV. Giá trị ngõ vào: -32000 đến 32000 ( lưỡng cực) hay từ 0 đến 32000 ( đơn cực)
+mạch ngõ vào của Module EM 231
- Module vào ra tương tự: EM232
+ Các thông số kĩ thuật
+ Các thông số chi tiết
+ Cách kết nối ngõ ra
- Module đầu ra tương tự: EM235
+ Các thông số kĩ thuật
+ Cách kết nối ngõ vào ra
+ Switch chọn độ phân giải
Lưu ý: độ phân giải: 5µA hay từ 12,5µV đến 5mV, giá trị ngõ vào -32000 đến 32000 hay từ 0 đến 32000
+ Mạch ngõ vào của module EM 235
- Ngoài ra còn có các loại module thích hợp cho những ứng dụng khác như module điều khiển vị trí, module truyền thông.
Bảng giới thiệu các loại module mở rộng:
Chương 2: Thiết kế hệ thống
Từ yêu cầu đề tài: Ứng dụng PLC đo,điều khiển và cảnh báo nhiệt độ lò với giải đo [ 0; 1200oC]. Xây dựng hệ thống theo các bước sau.
Chọn thiết bị
Bộ điều khiển trung tâm:
Thiết bị điều khiển lập trình (PLC – Programable logic controler) là thiết bị điều khiển đặc biệt dự trên bộ vi xử lý, sử dụng bọ nhớ lập trình được để lưu giữ các lệnh, thực hiện các chức năng và thuật toán để điều khiển các quá trình có thể mô tả thiết bị như sau:
PLC
Chương trình
Tín hiệu Tín hiệu
ngõ vào ngõ ra
Chọn CPU 224 (S7-200) của siemens.
Đặc tính kỹ thuật:
+ Nguồn cung cấp :220VAC
+ Ngõ vào là 14 DI DC
+ Ngõ ra là : 10 DC Relay
+ Bộ nhớ chương trình :12KB
+ Bộ nhớ dữ liệu :8KB
+ Profibú DP extenduble
+ Điều khiển PID :có
+ Phần mềm: step 7 Micro / Win
+ Thời gian xử lý 1024 lệnh nhị phân : 0,37ms
+ Bit memory / Counter / Timer: 256/ 256 /256
+ Bộ đếm tốc độ cao : 6 x 60 Khz
+ bộ đếm lên / xuống : có
+ Ngắt phần cứng : 4
+ Số đầu vào / ra số cực đại vào ( lắp thêm Môdul Analog mở rộng) : AI/AO /MAX: 28/ 7 / 35 hoặc 0/ 14/ 14 .
+ IP 20
+ Kích thước rộng x cao x sâu: 120 x 80 x62
Để có thể đo , điều khiển nhiệt độ trong lò cần lắp thêm Modul mở rộng Modul Analog EM 235.
Đặc tính của Modul EM 235
+ Có 4 ngõ vào là AIW0, AIW2, AIW4, AIW6 và một ngõ ra. Ngõ vào và ngõ ra có thể thể hiện là điện áp hoặc dòng điện.
+ Switch chọn độ phân giải
+ Điện áp vào ; Từ 0 đến 10 V chế đọ đơn cực , -10 V đến + 10 V chế độ lưỡng cực
Thông số ngõ vào :
+ Dòng điện,điện áp ngõ vào : Điện áp tối đa 30 V độ phân giải 12 bits, dòng điện tối đa 32mA độ phân giải 12 bits.
Thông số ngõ ra :
+ Điện áp ra : từ -10 đến +10V phân giải 12 bit
+ Dòng điện từ 0 – 20mA độ phân giải 11 bit
Lưu ý: độ phân giải: 5µA hay từ 12,5µV đến 5mV, giá trị ngõ vào -32000 đến 32000 hay từ 0 đến 32000
+ Mạch dũ liệu ngõ vào :
+ Configuration Switch table for EM 235 Analog Combination.
Thiết bị thu nhiệt độ trong lò
Là dụng cụ chuyển đổi đại lượng nhiệt thành các đại lượng vật lý khác như điện, áp suất... Cảm biến nhiệt độ có khả năng nhận biết được tín hiệu nhiệt độ một cách chính xác và chuyển đổi thành tín hiệu đo lường.
Cụ thể bài tập lớn này chúng em sử dụng cặp nhiệt điện:
Đây là dụng cụ đo nhiệt độ rộng rãi trong công nghiệp
Hiệu ứng thomson: qua 1 dây dẫn có dòng điện I và hiệu nhiệt trên dây dẫn là T1-T2 thì sẽ có 1 sự hấp thụ - tỏa nhiệt
Hiệu ứng pentier: khi dong điện đi qua 1 mối nối của 2 dây dẫn thì tại vị trí mối nối sẽ có sự hấp thụ hay tỏa t0
Hiệu ứng seebeck: trong 1 dây dẫn bất kì khi có sự chênh lệch nhiệt độ tại 1 điểm thì ngay tại điểm đó xuất hiện 1 xuất điện động.
Hiệu ứng nhiệt điện, hay hiệu ứng Peltier-Seebeck, là sự chuyển nhiệt năng trực tiếp thành điện năng và ngược lại, trên một số kết nối giữa hai vật dẫn điện khác nhau. Kết nối này thường gọi là cặp nhiệt điện. Cụ thể, chênh lệch nhiệt độ giữa hai bên kết nối sinh ra một hiệu điện thế giữa hai bên kết nối và ngược lại. Hiệu ứng này là cơ sở cho ứng dụng trong một số máy lạnh và máy phát điện, không có các bộ phận chuyển động
Nguyên tắc, cấu tạo của cặp nhiệt điện dựa theo cơ sở thực nghiệm. Khi nung nóng 1 dây kim loại hay 1 đoạn dây, tại đó tập trung điện tử tự do và có khuynh hướng khuếch đại từ nơi tập trung nhiều đến nơi tập trung ít. Có nghĩa là từ đầu nóng (+) sang (-) (hiệu ứng seebeck) ở đoạn dây xuất hiện 1 suất điện động thomson phụ thuộc vào bản chất kim loại.
Cấu tạo: cặp nhiệt điện được cấu tạo bằng 2 sợi kim loại khác nhau, và cosits nhất là 2 mối nối. một đầu được giữ ở nhiệt đọ chuẩn gọi là đầu ra đầu con lại tiếp xúc với đối tượng đo. Cặp nhiệt điện có cực âm và cực dương đánh dấu mầu đo tùy theo vật liệu chế tạo, cặp nhiệt điện được phân loại thành các loại sau:
Loại J: kết hợp giữa sắt và constantan, trong đó sắt là cực dương constantan là cực âm.
Hệ số seebeck là 51μV/0C ở 200C
Loại T: kết hơp giữa đồng với constantan, đồng là cực dương
Hệ số seebeck là 40μV/0C ở 200C
Loại K: kết hợp giữa chromel (+) và alumel (-)
Hệ số seebeck là 40μV/0C ở 200C
Loại E: kết hợp giữa chromel (+) và constantan (-)
Hệ số seebeck là 62μV/0C ở 200C
Loại S,R,B: dùng hợp kim platinum và chodinum, có
Hệ số seebeck là 7μV/0C ở 200C
Cách sử dụng:
Cặp nhiệt điện cần có vỏ bảo vệ, chống tác nhân bên ngoài. Đặt ở nơi thích hợp vì nhiệt không phân bố đều.
Vị trí lắp đặt: tránh những nơi có từ trường điện trường mạnh.
Để cặp nhiệt thẳng đứng đề phòng ống bảo vệ bị biến dạng do nhiệt độ cao.
Dựa vào biểu đồ trên, ta sử dụng cặp nhiệt kế K để phù hợp cới bài tập.
(dải đo từ 0-12000. Dải điện áp từ 0-55mV)
Ta có công thức:
U= S(Td - Ta)
S: độ nhạy của cảm biến S=40μV/0C ở nhiệt độ môi trường là 200C.
Td: nhiệt đọ cần đo.
Ta: nhiệt đọ môi trường.
Do tín hiệu của cảm biến phụ thuộc vào giá trị đo và nhiệt độ môi trường nên cần có biện pháp khử giá trị môi trường.
Mặt khác, do điện áp thay đổi 1 lượng rất nhỏ khi nhiệt độ thiết bị thay đổi từ 0-12000 nên nó phải được đưa qua 1 bộ khuếch đại điện áp trước khi đưa vào ngõ vào analog của PLC
Cụ thể, ta sử dụng mạch đơn giản để khuếch đại điện áp nó phụ thuộc vào giá trị của 2 điện trở R1và R2.
Bộ khuếch đại không đảo
Vout= Vin ( 1 + R1 R2 )
Tính toán các đại lượng cần đo:
Điện áp tại đầu ra của cảm biến tại 1200 0C là:
40×10-6 (1200 - 20) = 4.42×10-2 (V)
Điện áp đầu vào là 2000C của cảm biến có giá trị là:
40×10-6 (200-20) = 7.2×10-3 (V)
Công thức đầu ra của mạch khuếch đại:
Vout = Vin ( 1+R1 R2 )
Sử dụng moldun analog EM235 với dải đo đầu vào đơn cực 0 – 10v
SW1
SW2
SW3
SW4
SW5
SW6
OFF
ON
OFF
OFF
OFF
ON
Bật các Switch như trên bảng qua moldun analog EM235
Tương tự với giá trị nhiệt độ là 12000C. ta chọn giá trị điện áp là 9V (vì có thể nhiệt độ còn tăng do van vỡ hay nhiều vấn đề khác).
9 = 4,27×10-2 (1+R1 R2) → R1 R2 = 1119159
Chọn R1 = 11,5 KΩ
R2 = 60 Ω
Voutmin = 7,2×10-3 ( 1+ 11,5×10-3 60 )=1,4 V
Đầu ra đại số 1,4V là:
4586,4 ≈ 4586
9V tương ứng với: 29484
Trong dải đo từ 0÷12000C
Do nhiệt độ ổn định của hệ là 6000C ta chọn khoảng dao động từ 5000C÷7000C, đây là dải ổn định nhiệt độ của lò tương tự với cach tính trên ta có:
ở 5000C
Vout = 40×10-6 (500 - 20)(1+
= 3,7 (V)
Tín hiệu output của analog là: 12121
ở 7000C
Vout = 40×10-6 (700 - 20) (1+
= 5,24 (V)
Tín hiệu số output của analog là: 17166
12121 ≤ tổn định ≤ 17166 = 14742 + 2424
(ta sử dụng hàm ADD_DI để thay đổi giá trị báo hệ thống ổn định).
Để chuyển đổ tín hiệu điện của cảm biến sang tín hiệu số thì trong PLC Modul EM 235 sử dụng lệnh “ MOV-w” chuyển đổi.
Van điều chỉnh (nhiệt độ) SPV
Chọn van điện tử được sử dụng rộng rãi trong công nghiệp, đong mở cung cấp nhiên liệu cho lò.
Cấu tạo của van gồm 3 phần:
+ lò xo
+ cuộn dây
+ van điện tử
Nguyên lý hoạt động:
ở điều kiện bình thường cuộn dây được cung cấp sẽ kéo van điện tử dóng kín cửa nạp. Khi ngắt điện khỏi nguồn (cuộn dây), từ trường bị mất đi nhờ lực đàn hồi của lò xo van điện tử được đẩy lên trạng thái mở. Tùy thuộc vào thời gian đóng ngắt điện mà van điện tử mở lâu hay nhanh ,do vậy PLC có thể điều chỉnh được nhiệt độ trong lò.
Thiết bị giao tiếp máy tính
Đa số các thiết bị ngày nay đều có thể giao tiếp với máy tính và các tính năng của máy tính. Do đó , mạch điều khiển ở đây cũng được trang bị để có khả năng đó. Mặc dù nó cũng có yêu cầu bắt buộc là nạp chương trình điều khiển từ máy tính, nhưng xa hơn nữa nó có thể trao đổi với máy tính về các thông số của quá trình điều khieennr, trạng thái của mạch và có thể được điều khiển bởi máy tính…
Để kết nối với máy tính ta có thể kết nối sau : Đối với S2-200.
+ Dùng MDI card nối thẳng.
+ Qua cổng RS- 232 cần có bộ chuyển đổi PC/PPI là KS232/RS 485.
Trong đề tài này chúng em sử dụng qua cổng RS- 232.
Sơ lược về chuẩn RS -232:
Trong kỹ thuật truyền dữ liệu giữa các hẹ thống với nhau, người ta có thể phân 2 cách truyền: song song hay nối tiếp. Nhưng do cách truyền song song rất bị nhiễm tác động nên không thể truyền đi xa được , do đó cũng ít được sử dụng. Truyền dữ liệu nối tiếp có 2 loại: đồng bộ và không đồng bộ. Trong cách đồng bộ dãy ký tự được truyền sẽ kèm theo ký tự đồng bộ SYN (mã ASC II là 22). Phương thức này cho tốc độ truyền khác cao nhưng do mạch xử lý truyền và nhận khá phức tạp nên chỉ ứng dụng cho nhưng yêu cầu về truyền tốc độ cao. Còn trong thong thường, đặc biệt trong lĩnh vực điều khiển tự động, thì không yêu cầu về tốc độ mà yêu cầu về sự chính xác và tin cậy nhưng đơn giản chi phí thấp. Khi đó, cách truyền không đồng bộ rất phù hợp. Theo cách truyền dữ liệu thì các dữ liệu được truyền riêng rẽ , phân làm từng phần có bít bắt đầu, các bít dữ liệu của kỹ tự cần truyền , bit chẵn lẻ và bit kết thúc.
Trạng thái đánh dấu : là khoảng thời gian không có dữ liệu truyền. Trong suốt thời gian này, thiết bị phát sẽ giữ đường truyền ở mức cao.
+ Bit bắt đầu : 1 bit thấp cho biết việc truyền dữ liệu sẽ bắt đầu.
+ Các bit ký tự : là dòng dữ liệu gồm 5,6,7 hay 8 bit mã hóa kỹ tự đường truyền bit chẵn lẻ là 1 bit tùy chọn được phát đi để kiểm tra các lỗi truyền dữ liệu.
+ Các bít kết thúc : 1 hay nhiều bit cao được chèn trong dòng truyền để báo việc kết thúc 1 ký tự, cũng như cho bít thiết bị nhận có đủ thời gian chuẩn bị để sẵn sang nhận ký tự kế tiếp.
Có thể mô phỏng qua hình sau
Địa chỉ các cổng RS232 và sơ đồ ghép nối với máy tính
Xây dựng sơ đồ khối ,sơ đồ đấu dây.
Xây dựng sơ đồ khối
Khối điều khiển: đây là thiết bị nhận tín hiệu , xử lý điề khiển. Đó chính là PLC S7- 200 CPU 224 với Modul Analog 235
Khối cảm biến: là cảm biến nhiệt độ Thermocouple loại k chuyên để đo nhiệt độ trong lò với dải đo lên tới (-2700, 13720).
Khối khuếch đại: trong đề tài này chúng em dung bộ khuếch đại không đảo OA, vì tín hiệu từ cảm biến là tín hiệu điện áp, sau khi xem xét thì thấy tín hiệu nhỏ nên dung bộ khuếch đại đó cho dễ dàng trong việc tính toán.
Đối tượng cần đo, điều khiển: là lò nhiệt có nhiệt độ từ 0 – 1200, khi nhận thấy giá trị vượt ngưỡng cho phép thì có tín hiệu cảnh báo và thông qua khối giao tiếp người điều khiển có thể đóng/mở van nhiên liệu để thay đổi nhiệt độ trong lò.
Khối giao tiếp: đó chính là máy tính, thông qua máy tính người ta có thể dễ dàng biết được nhiệt độ trong lò là bao nhiêu và có thể điều khiển lò dễ dàng…
Sơ đồ đấu dây
I0.0
CPU 224
Q0.0
I0.1
Q0.1
I0.2
Q0.2
I0.3
Q0.3
.
.
ß-
M
L
AIw0
EM 235
Modul
Analog
Q0.1
AIw2
AIw4
AIw6
RUN
Van mở đóng
TLA
~
THA
220V
Xây dựng chương trình trong PLC S7-200
Bảng địa chỉ:
symbol
Address
comment
Start
I0.0
Bật hệ thống
Stop
I0.1
Dừng hệ thống
A
I0.2
Điều khiển van mở
B
I0.3
Điều khiển van đóng
Run
Q0.0
Đèn báo hệ thống bắt đầu làm việc
TLA
Q0.1
Đèn cảnh báo mức thấp < 2000C
THA
Q0.2
Đèn cảnh báo mức cao > 12000C
C
Q0.3
Đèn báo trạng thái van
D
Q0.4
Đèn báo trạng thái normal
E
Q0.5
Đèn báo sự cố
Network 1: khởi động hệ thống.
Network 2: mở hoặc đóng van.
Network 3: nạp tín hiệu từ module analog.
Network 4: TLA cảnh báo mức thấp.
Network 5: THA cảnh báo mức cao.
Network 6: gán giá trị cho ACO vá sử dụng lệnh cộng.
Network 7: giá trị lớn hơn hoặc bằng 12121.
Network 8: giá trị nhỏ hơn hoặc bằng AC1
Network 9: chế độ normal.
Network 10: định thời gian 6 phút.
Network 11: báo sự cố.
CHƯƠNG III: KẾT LUẬN
Kết quả nghiên cứu lý thuyết
Do việc nghiên cứu lý thuyết còn chưa sâu, chưa đánh giá được chính xác các giá trị cũng như lựa chọn thiết bị còn sơ sài. Trong quá trình làm còn máy móc nhiều phần lý thuyết cũng như mở rông còn chưa đào sâu suy nghĩ. Ví dụ như mạch hiện thị thang đo giá trị còn chưa có, phần hiệu chỉnh đo bằng hàm PID...
Qua bài báo cáo lý thuyết PLC, chúng em đã tìm hiểu được các cảm biến nhiệt độ ở giá trị cao, các modul analog bộ khuếch đại va PLC S7-200.
Trong bài báo cáo đã làm rõ quy trình thiết kế hệ thống các sơ đồ nối dây, đi dây... nhưng chưa chuyên sâu và gặp nhiều vấn đề trong thuật toán và chương trình.
Kết quả nghiên cứu thực nghiệm
Được triển khai trên phần mềm mô phỏng của S7-200 các giá trị thấp nhiệt va cap nhiệt và giá trị ổn định đã được đề cập trong thuật toán.
Tất cả đều dựa trên lý thuyết và chưa có cơ sở thực hành, các giá trị, thang đo đều có giá trị dễ dàng thay đổi trong phần chương trình PLC.
Các file đính kèm theo tài liệu này:
- btl_plc_ban_sua_971.docx