Bài giảng Ứng dụng PLC điều khiển các hệ truyền động thủy khí công nghiệp - Chương 3: Ngôn ngữ lập trình cho PLC
Các lỗi hay gặp trong lập trình
1. Không được lập trình Hai hoặc nhiều " Thang " khác nhau hay " nhánh hoàn thiện" trong cùng một Network
2. Nếu một lệnh OUT, hoặc một lệnh FUN luôn cần điều kiện thực hiện là ON, thì lệnh này không được nối trực tiếp với đường trục nguồn Power bus bên trái mà Thay vào đó phải nối qua một tiếp điểm cờ thường ON - ( ALWAYS ON SM0.0).
3. Một nhánh không được xuất phát từ một nhánh song song khác.
4. Nếu một địa chỉ bít dùng lặp lại trên hai lệnh OUT PUT khác nhau thì lệnh OUT PUT đi trước sẽ không có tác dụng
84 trang |
Chia sẻ: Tiểu Khải Minh | Ngày: 22/02/2024 | Lượt xem: 88 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Bài giảng Ứng dụng PLC điều khiển các hệ truyền động thủy khí công nghiệp - Chương 3: Ngôn ngữ lập trình cho PLC, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
CHƢƠNG 3
NGÔN NGỮ LẬP TRÌNH CHO PLC
5
7
58
I. Các bƣớc lập trình cho PLC
1.Tìm hiểu rõ các yêu
cầu công nghệ
2.Liệt kê cổng vào ra,
lựa chọn PLC
3.Phân cổng vào ra
4. Dựng lƣu đồ
chƣơng trình
5. Dịch lƣu đồ ra giản
đồ thang
6.Lập trình giản đồ
thang vào PLC
59
7.Mô phỏng chƣơng
trình, kiểm tra phần
mềm
Chƣơng trình đúng ?
8.Nối PLC với thiết bị
thực
9.Kiểm tra kết nối
Sửa
chƣơng
trình
Chƣơng trình đúng ?
10. Chạy hệ thống
Đúng
Sai
Sai
Đúng
60
11.Lƣu cất chƣơng
trình, bàn giao
Kết thúc
61
Lƣu ý trong một số bƣớc lập trình:
Bƣớc 2: Liệt kê đầy đủ các cổng vào ra, các cổng dự trữ, cần thiết khi phát
triển hệ thống.v.v và chọn PLC có số đầu vào ra lớn hơn hoặc bằng theo yêu
cầu.
Bƣớc 3 : Phân cổng vào ra cho PLC về nguyên tắc nên tuân thủ các nguyên
tắc để thuận tiện cho việc lập trình, theo dõi kiểm tra phát hiện lỗi như sau :
Phân cổng vào ra theo chức năng yêu cầu: ví dụ đầu vào đếm tốc độ
cao, đầu vào Analog, đầu vào logic, phải đúng với các đầu vào chức năng của
PLC
Phân cổng vào ra có dụng ý: theo tên gọi, hoặc theo trình tự tác động để
tận dụng được các khả năng tín hiệu hoá của PLC. dễ theo dõi phát hiện lỗi và
dễ lập trình.
62
II. Cấu trúc bộ nhớ cho PLC
Chức năng:
- Lưu trữ tạm thời các bảng trạng thái I/O.
- Lưu trữ chương trình, dữ liệu,
- Làm bộ đệm trạng thái các chức năng PLC.
Phân loại:
- RAM
- EEPROM
- Bộ nhớ ngoài
63
II. Cấu trúc bộ nhớ cho PLC
PHÂN CHIA BỘ NHỚ
Gồm 4 vùng:
Vùng chƣơng trình: lƣu trữ lệnh chƣơng trình
Vùng tham số: lƣu trữ các tham số nhƣ từ khóa, địa
chỉ,
Vùng dữ liệu: lƣu trữ dữ liệu của chƣơng trình nhƣ kết
quả tính, bộ đệm truyền thông,
Vùng đối tƣợng: lƣu dữ liệu cho các đối tƣợng lập trình
nhƣ counter, timer, thanh ghi, bộ đệm ngõ vào/ra tƣơng
tự.
64
II. Cấu trúc bộ nhớ cho PLC
VÙNG NHỚ DỮ LIỆU PLC S7-200
Là miền nhớ động, cóthểtruy cập theo bit, byte, word,
Dword.
Chia làm 5 miền nhỏ:
- Miền I (Input image register)
- Miền Q (Output image register)
- Miền V (Variable Memory)
- Miền M (internal Memory bits)
- Miền SM (Special memory bits)
65
II. Cấu trúc bộ nhớ cho PLC
VÙNG NHỚ DỮ LIỆU PLC S7-200
Miền I: là thanh ghi đệm, lƣu các giá trị ngõ vào khi PLC hoạt
động.
Miền Q: thanh ghi đệm, chứa các kết quả chƣơng trình để
điều khiển ngõ ra.
Miền V: lƣu các kết quả trung gian khi thực hiện chƣơng
trình.
66
II. Cấu trúc bộ nhớ cho PLC
VÙNG NHỚ DỮ LIỆU PLC S7-200
Miền M: đƣợc sử dụng nhƣ các relay điều khiển để lƣu trạng
thái trung gian của 1 hoạt động hoặc các thông tin điều khiển
khác.
Miền SM: chứa các bit đểlựa chọn và điều khiển các chức
năng đặc biệt của CPU.
67
II. Cấu trúc bộ nhớ cho PLC
68
II. Cấu trúc bộ nhớ cho PLC
PHƢƠNG THỨC TRUY CÂP BỘ NHỚ
Theo Bit: tên miền + địa chỉbyte + ‘.’+ chỉsốbit
M0.0, I2.5, Q1.0,
Theo Byte: tên miền + B + địa chỉbyte
VB5, IB2, QB0, (VB5=V5.0 V5.1 V5.7)
Theo Word: tên miền + W + địa chỉbyte cao của word
VW0, QW1, IW2, (VW0=VB0 VB1)
Theo Double word: tên miền + D + địa chỉ word cao của
double word VD0, QD2, ID1,
(VD0 = VW0 VW2 = VB0 VB1 VB2 VB3)
69
III. Các lệnh cơ bản cho PLC
PLC có 3 ngôn ngữ lập trình
Ngôn ngữ liệt kê dòng lệnh (STL)
Ngôn ngữ giản đồ thang (LAD)
Ngôn ngữ khối chức năng ( FBD)
70
III. Các lệnh cơ bản cho PLC
Ngôn ngữ liệt kê dòng lệnh (STL)
Sử dụng các lệnh gợi nhớ.
Phù hợp cho ngƣời có kinh nghiệm lập trình.
Điều khiển nhiều chức năng hơn LAD và FBD.
Có thể từ STL chuyển sang LAD và FBD.
71
III. Các lệnh cơ bản cho PLC
Ngôn ngữ giản đồ thang (LAD)
Chƣơng trình tƣơng tự nhƣ sơ đồ nối dây mạch điện.
Mô phỏng chuyển động của dòng điện từ nguồn qua các
điều kiện ngõ vào tác động đến ngõ ra.
Phù hợp với ngƣời mới bắt đầu.
72
III. Các lệnh cơ bản cho PLC
Ngôn ngữ giản đồ thang (LAD)
Sử dụng các lệnh nhƣ các khối logic.
Chƣơng trình là sự kết nối các hộp.
73
III. Các lệnh cơ bản cho PLC
1. Lệnh LD (LoaD) :
Lệnh LD dùng để đặt một công tắc logic thường mở vào chương
trình.
Chƣơng trình STL: lênh LD luôn xuất hiện ở vị trí
đầu tiên của một nhánh chương trình hoặc mở đầu một
khối logic.
Cú pháp: LD bit
Toán hạng
Địa chỉ Loại dữ liệu Vùng biến nhớ
bit bool I,Q,V,M
Ví dụ: LD I0.1
74
III. Các lệnh cơ bản cho PLC
Chƣơng trình dạng LAD: lệnh LD thể hiện công tắc
logic thường mở đầu tiên nối trực tiếp với bus bên trái
của một nhánh chương trình hay công tắc thường mở
đầu tiên của logic.
75
III. Các lệnh cơ bản cho PLC
2. Lệnh LDN (LoadD Not) :
Lệnh LDN dùng để đặt một công tắc logic thường đóng vào
chương trình.
Cú pháp:
Siemens: LDN bit
Omron: LD NOT bit
Toán hạng
Địa chỉ Loại dữ liệu Vùng biến nhớ
bit bool I,Q,V,M
Ví dụ: LDN I0.1
76
III. Các lệnh cơ bản cho PLC
Chƣơng trình dạng LAD:
77
III. Các lệnh cơ bản cho PLC
3. Lệnh gán ’ = ‘ (OUTPUT) :
Cú pháp: = bit
Toán hạng
Địa chỉ Loại dữ liệu Vùng biến nhớ
bit bool I,Q,V,M
Ví dụ: = Q0.0
78
III. Các lệnh cơ bản cho PLC
79
III. Các lệnh cơ bản cho PLC
4. Lệnh SET / RESET :
-Lệnh SET dùng để đặt trạng thái của bit về mức logic 1 vĩnh viễn.
- Lệnh RESET dùng để đặt trạng thái của bit về mức logic 0 vĩnh
viễn.
Cú pháp: S S_bit n : Ghi giá trị logic 1 vào n bít
kể từ bít S_bit
R R_bit n : Ghi giá trị logic 0 vào n bít
kể từ bít R_bit
Toán hạng
Địa chỉ Loại dữ liệu Vùng biến nhớ
bit bool I,Q,V,M
80
III. Các lệnh cơ bản cho PLC
LAD STL
81
IV. Các lệnh logic cho PLC
1. Lệnh AND
Cú pháp: A bit
Toán hạng
Địa chỉ Loại dữ liệu Vùng biến nhớ
bit bool I,Q,V,M,T,C
LAD STL
82
IV. Các lệnh logic cho PLC
2. Lệnh AND NOT
Cú pháp: AN bit
Toán hạng
Địa chỉ Loại dữ liệu Vùng biến nhớ
bit bool I,Q,V,M,T,C
LAD STL
83
IV. Các lệnh logic cho PLC
3. Lệnh OR
Cú pháp: O bit
Toán hạng
Địa chỉ Loại dữ liệu Vùng biến nhớ
bit bool I,Q,V,M,T,C
LAD STL
84
IV. Các lệnh logic cho PLC
4. Lệnh OR NOT
Cú pháp: ON bit
Toán hạng
Địa chỉ Loại dữ liệu Vùng biến nhớ
bit bool I,Q,V,M,T,C
LAD STL
85
IV. Các lệnh logic cho PLC
5. Lệnh NOT
Lệnh đảo giá trị logic
Cú pháp: NOT
LAD STL
86
III. Các lệnh logic cho PLC
6. Lệnh OLD ( OR LOAD)
Nối song song 2 tổ hợp khối
LAD STL
87
III. Các lệnh logic cho PLC
7. Lệnh ALD ( AND LOAD)
Nối nối tiếp 2 tổ hợp khối
LAD STL
88
III. Các lệnh logic cho PLC
Ví dụ 1: chuyển chƣơng trình dạng Ladder sang STL
1.
2.
89
III. Các lệnh logic cho PLC
Ví dụ 2: chuyển chƣơng trình dạng STL sang Ladder
90
III. Các lệnh logic cho PLC
8. Lệnh khai báo điểm rẽ nhánh và gọi lại điểm rẽ nhánh
( LPS , LPP)
91
III. Các lệnh logic cho PLC
Ví dụ 1: chuyển chƣơng trình dạng Ladder sang STL
92
III. Các lệnh logic cho PLC
Ví dụ 2:
Ban đầu xilanh ở vị trí KH1.
Bấm nút Start, xilanh chuyển động
tịnh tiến ra đẩy chi tiết và quay trở lại
khi gặp KH 2. Xilanh chuyển động
lùi về và dừng lại khi gặp KH1
93
III. Các lệnh logic cho PLC
Ví dụ 3:
Ban đầu xilanh ở vị trí KH1.
Bấm nút Start, xilanh chuyển động
tịnh tiến ra đẩy chi tiết và quay trở lại
khi gặp KH 2. Xilanh chuyển động
lùi về và dừng lại khi gặp KH1
94
III. Các lệnh logic cho PLC
95
III. Các lệnh logic cho PLC
Ví dụ 4:
96
III. Các lệnh logic cho PLC
PLC
M I0.0 I0.1 I0.2 I0.3 I0.4 I0.5
+24 0
Q0.1 Q.02 Q0.3 Q0.4
+24V
0V
RL1 RL2 RL3 RL4
Start Stop KH1.1 KH1.2 KH2.2 KH2.1
97
III. Các lệnh logic cho PLC
Ví dụ 5: Máy cắt phôi tự động
98
III. Các lệnh logic cho PLC
Ví dụ 6: Bơm nƣớc thải
B1
B2
P-1
P-2
Hố thu nước thải
FS1
FS2
FS3
99
III. Các lệnh logic cho PLC
Ví dụ 7: Bơm cấp nƣớc
B1
P-1
FS3
Bể ngầm
FS1
FS2
Bể nước
10
0
III. Các lệnh logic cho PLC
Ví dụ 8: Hệ thống vận chuyển sản phẩm
10
1
III. Các lệnh logic cho PLC
9. Lệnh phát hiện sƣờn lên EU ( Edge Up)/ Sƣờn xuống
ED ( Edge Down)
EU: Lệnh này phát hiện sự chuyển trạng thái của tín hiệu từ mức
0 lên mức 1.
ED: Lệnh này phát hiện sự chuyển trạng thái của tín hiệu từ mức
1 xuống mức 0
10
2
III. Các lệnh logic cho PLC
10
3
IV. Các bit đặc biệt hay dùng
- SM0.0 :
- SM0.1:
- SM0.2:
- SM0.3:
- SM0.4:
- SM0.5:
- SM0.6:
- SM0.7:
10
4
V. Bộ định thì- Timer
1. Định nghĩa:
Là bộ đếm xung có chu kỳ xác định và khi được kích hoạt
nó sẽ thực hiện đủ số xung tương ứng với thời gian cần đã đặt.
Thời gian trễ = n x độ phân giải
n: số xung
độ phân giải: 1ms, 10ms, 100ms
PLC S7-200 CPU 214 CPU 222 CPU 224
Timer 256 ( T0-T255) 256 ( T0-T255) 256 ( T0-T255)
ON/OFF delay 1ms T32,T96 T32,T96 T32,T96
10ms T33-T36
T97-T100
T33-T36
T97-T100
T33-T36
T97-T100
100ms T37-T63
T101-255
T37-T63
T101-255
T37-T63
T101-255
10
5
V. Bộ định thì- Timer
2. Lệnh TON ( On Delay):
10
6
V. Bộ định thì- Timer
2. Lệnh TOF ( Off Delay):
10
7
V. Bộ định thì- Timer
Ví dụ 1:
10
8
V. Bộ định thì- Timer
Ví dụ 2:
10
9
V. Bộ định thì- Timer
Cảm biến vùng:
11
0
V. Bộ định thì- Timer
Ví dụ 2:
11
1
V. Bộ định thì- Timer
Ví dụ 2:
KH1 KH2 KH1
XL1
KH3 KH4
XL 2
KH1 KH2 KH1 T=2.5s
KH3 KH4
XL1
XL 2
KH3
KH3
KH2
KH2
1
2
11
2
V. Bộ định thì- Timer
Ví dụ 2:
KH1 KH2 KH1
XL1
KH3 KH4
XL 2
KH1 KH2 KH1 T=2.5s
KH3 KH4
XL1
XL 2
KH3
KH3
KH2
KH2
1
2
11
3
V. Bộ định thì- Timer
Ví dụ 2:
KH1 KH2 KH1
XL1
KH3 KH4
XL 2
KH3
KH2
1
M0.0
11
4
V. Bộ định thì- Timer
Ví dụ 2:
KH1 KH2 KH1 T=2.5s
KH3 KH4
XL1
XL 2
KH3
KH2
M0.1
M0.2
11
5
V. Bộ định thì- Timer
VD2.1
11
6
V. Bộ định thì- Timer
11
7
V. Bộ định thì- Timer
11
8
V. Bộ định thì- Timer
VD3
KH1
KH2
KH3
15s 60s
11
9
V. Bộ định thì- Timer
VD4
KH1
KH2
KH3
KH4
XL1
XL2
12
0
V. Bộ định thì- Timer
VD5
KH1
KH2
5s
12
1
V. Bộ định thì- Timer
VD6
KH1
KH2
5s
12
2
V. Bộ định thì- Timer
Ví dụ 3: Đèn giao thông
Điều khiển tín hiệu đèn giao thông ở các ngã
tư với các thông số về thời gian như sau:
Đèn xanh sáng 25s, đèn Vàng sáng 5s,
đèn Đỏ sáng 30s,
. Khởi động hệ thống bằng nhấn
nút PB_Start, dừng bằng cách nhấn PB_Stop.
12
3
V. Bộ định thì- Timer
BT1
BT2
BT3
Ví dụ 3: Băng tải
Bấm nút khởi động: BT3 chạy, sau đó 5s BT2 chạy, sau 5s BT1 chạy
Bấm nút dừng: BT1 dừng, sau 5s BT2 dừng, sau 5s BT3 dừng
12
4
V. Bộ định thì- Timer
12
5
V. Bộ định thì- Timer
12
6
V. Bộ định thì- Timer
12
7
V. Bộ định thì- Timer
Ví dụ 3: Máy ép
12
8
Bộ đếm dùng để đếm sự kiện xảy ra.
Có 2 loại bộ đếm: + Đếm tăng ( Counter-Up)
+ Đếm giảm ( Counter-Down)
+ Đếm thuận nghịch
V. Bộ đếm - Counter
12
9
1. Bộ đếm tăng – CTU
Đếm số sườn lên của tín hiệu đầu vào, kết quả đếm này
được so sánh với giá trị đặt. Khi giá trị tức thời này
lớn hơn hoặc bằng giá trị đặt thì bit Cxx có giá trị
logic 1
V. Bộ đếm - Counter
Cú pháp: CTU Cxx PV
CU: đầu vào xung đếm
R : đầu vào Reset
PV :giá trị đặt
Cxx: C0-C255
13
0
1. Bộ đếm tăng – CTU
Đếm số sườn lên của tín hiệu đầu vào, kết quả đếm
này được so sánh với giá trị đặt. Khi giá trị tức thời
này lớn hơn hoặc bằng giá trị đặt thì bit Cxx có giá trị
logic 1
V. Bộ đếm - Counter
Cú pháp: CTU Cxx PV
CU: đầu vào xung đếm
R : đầu vào Reset
PV :giá trị đặt VW; T; C; IW; QW; MW; SMW;
AC; AIW; Constant
Cxx: C0-C255
13
1
2. Bộ đếm lùi – CTD
Đếm số sườn lên của tín hiệu đầu vào. Bộ counter sẽ
đếm lùi bắt đầu từ giá trị đặt. Khi giá trị tức thời này
bằng 0 bit Cxx có giá trị logic 1
V. Bộ đếm - Counter
Cú pháp: CTD Cxx PV
CD: đầu vào xung đếm
LD : đầu vào đặt giá trị ban đầu
PV :giá trị đặt VW; T; C; IW; QW; MW; SMW;
AC; AIW; Constant
Cxx: C0-C255
13
2
V. Bộ đếm - Counter
13
3
3. Bộ đếm tiến/ lùi – CTUD
V. Bộ đếm - Counter
Cú pháp: CTUD Cxxx PV
CU: đầu vào đếm tiến
CD: đầu vào đếm lùi
R : đầu vào Reset
PV :giá trị đặt VW; T; C; IW; QW; MW; SMW;
AC; AIW; Constant
Cxx: C0-C255
13
4
V. Bộ đếm - Counter
13
5
V. Bộ đếm - Counter
Dây chuyền đếm sản phẩm
Moi hop 40 qua tao
Băng tải hộp
B¨ Băng tải táo
Start Stop
Cảm biến
hộp
Cảm biến táo
13
6
V. Bộ đếm - Counter
13
7
VI. Các lỗi hay gặp trong lập trình
1. Không được lập trình Hai hoặc nhiều " Thang " khác
nhau hay " nhánh hoàn thiện" trong cùng một Network
13
8
VI. Các lỗi hay gặp trong lập trình
2. Nếu một lệnh OUT, hoặc một lệnh FUN luôn cần điều
kiện thực hiện là ON, thì lệnh này không được nối trực
tiếp với đường trục nguồn Power bus bên trái mà
Thay vào đó phải nối qua một tiếp điểm cờ thường ON
- ( ALWAYS ON SM0.0)...
13
9
VI. Các lỗi hay gặp trong lập trình
3. Một nhánh không được xuất phát từ một nhánh song
song khác.
14
0
VI. Các lỗi hay gặp trong lập trình
4. Nếu một địa chỉ bít dùng lặp lại trên hai lệnh OUT PUT
khác nhau thì lệnh OUT PUT đi trước sẽ không có tác
dụng
Các file đính kèm theo tài liệu này:
- bai_giang_ung_dung_plc_dieu_khien_cac_he_truyen_dong_thuy_kh.pdf