Bài 4: Ngôn ngữ lập trình PLC S7-200
4.1 Phương pháp lập trình
4.2 Bảng lệnh của S7-200
4.3 Toán hạng và giới hạn cho phép
4.4 Giới thiệu về phần mềm Microwin
4.5 Cú pháp hệ lệnh của S7-200
11/10/15 10:47
BMC-K.DIENTU
1
4.1 Phương pháp lập trình
Cách lập trình cho S7-200 nói riêng và PLC
của SIEMENS nói chung dựa trên 2 phương
pháp cơ bản:
Phương pháp hình thang (Ladder Logic viết
tắt là LAD)
Phương pháp liệt kê lệnh (Statement List
viết tắt STL)
11/10/15 10:47
BMC-K.DIENTU
2
4
11/10/15 10:47
BMC-K.DIENTU
3
4
11/10/15 10:47
BMC-K.DIENTU
4
4
11/10/15 10:47
BMC-K.DIENTU
5
4.2 Tập lệnh của S7-200
4.2 Tập lệnh của S7-200
11/10/15 10:47
BMC-K.DIENTU
6
4.2 Tập lệnh của S7-200
11/10/15 10:47
BMC-K.DIENTU
7
4.3 Toán hạng và giới hạn cho phép
11/10/15 10:47
BMC-K.DIENTU
8
4.3 Toán hạng và giới hạn cho phép
11/10/15 10:47
BMC-K.DIENTU
9
4.4 Giới thiệu về phần mềm Step7-Microwin 4.0
11/10/15 10:47
BMC-K.DIENTU
10
4.5. Cú pháp hệ lệnh của S7-200
4.5.1. Lệnh vào/ ra:
Lệnh vào:
LD + Địa chỉ (Load): nạp giá trị logic địa chỉ sau câu lệnh
vào đỉnh ngăn xếp, các bit cũ trong ngăn xếp được đẩy xuống
1 bit, thông tin cũ S8 mất.
LDN + địa chỉ (Load Not): tương tự như trên chỉ khác nạp
giá trị logic nghịch đảo.
LDI + địa chỉ (Load Immediate)
LDNI + địa chỉ (Load Not Immediate): Nạp tức thời giá trị
logic có địa chỉ sau câu lệnh vào bit đầu tiên trong ngăn xếp,
các bit cũ trong ngăn xếp được đẩy xuống 1 bit, thông tin cũ
S8 mất.
11/10/15 10:47
BMC-K.DIENTU
11
4.5.1. Lệnh vào / ra
Lệnh ra:
= + địa chỉ: sao chép giá trị logic từ đỉnh ngăn xếp
đến địa chỉ sau câu lệnh. Giá trị đỉnh ngăn xếp giữ
nguyên.
= I + địa chỉ: sao chép tức thời giá trị logic từ đỉnh
ngăn xếp đến địa chỉ sau câu lệnh.
11/10/15 10:47
BMC-K.DIENTU
12
4.5.2. Lệnh thao tác logic
A + địa chỉ: thực hiện phép toán “Và” giữa giá trị
logic ở đỉnh ngăn xếp với giá trị logic có địa chỉ sau
câu lệnh, kết quả ghi đè lên đỉnh của ngăn xếp.
O + địa chỉ: thao tác tương tự như trên chỉ khác thực
hiện phép toán “Hoặc”.
AN + địa chỉ:
ON + địa chỉ: tương tự như hai lệnh trên chỉ khác lấy
giá trị logíc nghịch đảo của địa chỉ sau câu lệnh, thao
tác với giá trị tại đỉnh ngăn xếp.
11/10/15 10:47
BMC-K.DIENTU
13
4.5.2. Lệnh thao tác logic
AI + địa chỉ;
OI + địa chỉ;
ANI + địa chỉ;
ONI + địa chỉ : Hoàn toàn tương tự như 4 lệnh trên,
nhưng thực hiện tức thời phép toán logic giữa giá trị
logic đỉnh ngăn xếp với giá trị logic có địa chỉ sau
câu lệnh, kết quả ghi tại đỉnh của ngăn xếp.
11/10/15 10:47
BMC-K.DIENTU
14
4.5.3. Lệnh đặt logic
S + địa chỉ (Set): Thực hiện phép đặt giá trị
logic lên 1 của địa chỉ sau câu lệnh với điều
kiện đỉnh ngăn xếp phải bằng 1.
R + địa chỉ (Reset): Thực hiện xoá giá trị logíc
của các điểm có địa chỉ sau câu lệnh với điều
kiện đỉnh ngăn xếp bằng 1.
11/10/15 10:47
BMC-K.DIENTU
15
Ngoài ra còn thực hiện giữa các bít trên ngăn xếp:
ALD (And Load): thực hiện phép toán “Và” giữa 2 bit đầu
tiên của ngăn xếp, kết quả ghi lại đỉnh, các bít còn lại từ S2
được kéo lên 1 bit.
OLD (Or Load): hoàn toàn tương tự như trên chỉ khác
phép toán “Hoặc”.
LPS (Logic Push): sao chép nội dung của bit đầu tiên vào
bit thứ 2 của ngăn xếp, các bít còn lại đẩy xuống 1 bit, S8
cũ mất.
LRD (Logic Read): lấy giá trị logic của bit thứ 2 ghi vào
bit đầu tiên của ngăn xếp, giá trị S0 cũ mất, các bit còn lại
giữ nguyên.
LPP (Logic Pop): thực hiện kéo tất cả các bit trong ngăn
xếp lên 1 bit S0 mất S8 chống.
11/10/15 10:47
BMC-K.DIENTU
16
11/10/15 10:47
BMC-K.DIENTU
17
4.5.4. Ví dụ:
1. LÖnh LD vµ lÖnh A
LD I
0.0
A
I
0.1
A
I
0.2
=
Q
1.0
2. LÖnh AN
LD I
0.0
AN I
0.1
A
I
0.2
=
Q
1.0
11/10/15 10:47
I 0.0 I 0.1 I 0.2
Q1.0
( )
I 0.0 I 0.1 I 0.2
BMC-K.DIENTU
Q1.0
( )
18
3. LÖnh O
LD I
O
I
O
I
=
Q
4. LÖnh ON
LD I
ON I
O
I
=
Q
11/10/15 10:47
0.0
0.1
0.2
1.0
I 0.0
( )
I 0.1
I 0.2
I 0.0
0.0
0.1
0.2
1.0
Q1.0
Q1.0
( )
I 0.1
I 0.2
BMC-K.DIENTU
19
5. LÖnh OLD
LD I
A
I
LD I
OLD
=
Q
6. LÖnh ALD
LD I
LD I
O
I
ALD
=
Q
11/10/15 10:47
0.0
0.1
0.2
I 0.0
I 0.1
Q1.0
( )
I 0.2
1.0
0.0
0.1
0.2
I 0.0
I 0.1
Q1.0
( )
I 0.2
1.0
BMC-K.DIENTU
20
7. LÖnh LPS, LRD, LPP
LD
LPS
LD
O
ALD
=
LRD
LD
O
ALD
=
LPP
A
=
11/10/15 10:47
I
I
I
0.0
I 0.0
I 0.1
( )
I 0.2
0.1
0.2
I 0.3
Q
0.0
I
I
0.3
0.4
Q
0.1
I
Q
0.5
0.2
Q0.0
Q0.1
( )
I 0.4
I 0.5
BMC-K.DIENTU
Q0.2
( )
21
Chú ý:
Sơ đồ LAD ở trên không soạn thảo được với
phần mềm hiện có, nó chỉ được dùng để mô tả
mạch logic của chương trình STL tương ứng.
Khi dùng các lệnh LPS, LRD, LPP bắt buộc
phải viết trong STL.
11/10/15 10:47
BMC-K.DIENTU
22
4.5.5. Các lệnh tiếp điểm đặc biệt
11/10/15 10:47
BMC-K.DIENTU
23
4.5.6 Các lệnh so sánh
11/10/15 10:47
BMC-K.DIENTU
24
4.5.6 Các lệnh so sánh
11/10/15 10:47
BMC-K.DIENTU
25