Tải bản đầy đủ (.pdf) (131 trang)

ứng dụng PLC trong điểu khiển hệ thống băng chuyền phức tạp

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.5 MB, 131 trang )

Phần I: Trình bày lý thuyết

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
1












PHẦN 1


TRÌNH BÀY LÝ THUYẾT

















Chương I: Tìm hiểu chung về PLC

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
2


CHƯƠNG I


TÌM HIỂU CHUNG VỀ PLC


1.1 Giới thiệu PLC

PLC là viết tắt của Programmable Logic Controller, là thiết bị điều khiển lập
trình được (khả trình) cho phép thực hiện linh hoạt các thuật toán điều khiển logic
thông qua một ngôn ngữ lập trình. Người sử dụng có thể lập trình để thực hiện một
loạt trình tự các sự kiện. Các sự kiện này được kích hoạt bởi tác nhân kích thích
(ngõ vào) tác động vào PLC hoặc qua các hoạt động có trễ như thời gian định thì
hay các sự kiện được đếm. Một khi sự kiện được kích hoạt thật sự, nó bật ON hay
OFF thiết bị điều khiển bên ngoài được gọi là thiết bị vật lý. Một bộ điều khiển lập
trình sẽ liên tục “lặp” trong chương trình do “người sử dụng lập ra” chờ tín hiệu ở
ngõ vào và xuất tín hiệu ở ngõ ra tại các thời điểm đã lập trình.


Để khắc phục những nhược điểm của bộ điều khiển dùng dây nối (bộ điều
khiển bằng relay) người ta đã chế tạo ra bộ PLC nhằm thỏa mãn các yêu cầu sau :
- Lập trình dễ dàng , ngôn ngữ lập trình dễ học.
- Gọn nhẹ, dễ dàng bảo quản , sửa chữa.
- Dung lượng bộ nhớ lớn có thể chứa được những chương trình phức tạp.
- Hoàn toàn tin cậy trong môi trường công nghiệp .
- Giao tiếp được với các thiết bị thông minh khác như: máy tính, nối mạng, các
modul mở rộng.
- Giá cả có thể cạnh tranh được.

Trong PLC, phần cứng CPU và chương trình là đơn vị cơ bản cho quá trình
điều khiển hoặc xử lý hệ thống. Chức năng mà bộ điều khiển cần thực hiện sẽ được
xác định bởi một chương trình, chương trình này được nạp sẵn vào bộ nhớ của PLC,
PLC sẽ thực hiện việc điều khiển dựa vào chương trình này. Như vậy nếu muốn
thay đổi hay mở rộng chức năng của quy trình công nghệ, ta chỉ cần thay đổi
chương trình bên trong bộ nhớ của PLC. Việc thay đổi hay mở rộng chức năng sẽ
được thực hiện một cách dể dàng mà không cần một sự can thiệp vật lý nào so với
các bộ dây nối hay relay.

1. 2 Cấu trúc, nguyên lý hoạt động của PLC

Chương I: Tìm hiểu chung về PLC

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
3
1.2.1 Cấu trúc

Tất cả các PLC đều có thành phần chính là :

- Một bộ nhớ chương trình RAM bên trong ( có thể mở rộng thêm một số bộ
nhớ ngoài EPROM ).
- Một bộ vi xử lý có cổng giao tiếp dùng cho việc ghép nối với PLC.
- Các modul vào /ra.

Đối với các PLC lớn thường lập trình trên máy tính nhằm hỗ trợ cho việc
viết, đọc và kiểm tra chương trình. Các đơn vị lập trình nối với PLC qua cổng
RS232, RS422, RS458, …

1.2.2 Nguyên lý hoạt động của PLC

1.2.2.1 Đơn vị xử lý trung tâm

CPU điều khiển các hoạt động bên trong PLC. Bộ xử lý sẽ đọc và kiểm tra
chương trình được chứa trong bộ nhớ, sau đó sẽ thực hiện thứ tự từng lệnh trong
chương trình, sẽ đóng hay ngắt các đầu ra. Các trạng thái ngõ ra ấy được phát tới
các thiết bị liên kết để thực thi và toàn bộ các hoạt động thực thi đó đều phụ thuộc
vào chương trình điều khiển được giữ trong bộ nhớ.

1.2.2.2 Bộ nhớ

PLC thường yêu cầu bộ nhớ trong các trường hợp :
 Làm bộ định thời cho các kênh trạng thái I/O.
 Làm bộ đệm trạng thái các chức năng trong PLC như định thời, đếm, ghi
và các relay.

Mỗi lệnh của chương trình có một vị trí riêng trong bộ nhớ, tất cả mọi vị trí
trong bộ nhớ đều được đánh số, những số này chính là địa chỉ trong bộ nhớ .

Kích thước bộ nhớ :

 Các PLC loại nhỏ có thể chứa từ 300 ÷1000 dòng lệnh tùy vào công
nghệ chế tạo .
 Các PLC loại lớn có kích thước từ 1k ÷ 16k, có khả năng chứa từ 2000
÷ 16000 dòng lệnh.
Ngoài ra còn cho phép gắn thêm bộ nhớ mở rộng như RAM, EPROM.

1.2.2.3 Các ngỏ vào ra I/O

Chương I: Tìm hiểu chung về PLC

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
4
Các đường tín hiệu từ bộ cảm biến được nối vào các modul ( các đầu vào của
PLC ), các cơ cấu chấp hành được nối với các modul ra ( các đầu ra của PLC ).

Hầu hết các PLC có điện áp hoạt động bên trong là 5V, tín hiêu xử lý là
12/24 VDC hoặc 100/240 VAC.

Mỗi đơn vị I/O có duy nhất một địa chỉ, các hiển thị trạng thái của các kênh
I/O được cung cấp bỡi các đèn led trên PLC, điều này làm cho việc kiểm tra hoạt
động nhập xuất trở nên dễ dàng và đơn giản.

Bộ xử lý đọc và xác định các trạng thái đầu vào (ON/OFF) để thực hiện việc
đóng hay ngắt mạch ở đầu ra.

1.2.3 Các hoạt động xử lý bên trong PLC

Khi một chương trình đã được nạp vào bộ nhớ của PLC, các lệnh sẽ được
lưu trong một vùng địa chỉ riêng lẻ trong bộ nhớ.


PLC có bộ đếm địa chỉ ở bên trong vi xử lý, vì vậy chương trình ở bên trong
bộ nhớ sẽ được bộ vi xử lý thực hiện một cách tuần tự từng lệnh một, từ đầu cho
đến cuối chương trình. Mỗi lần thực hiện chương trình từ đầu đến cuối được gọi là
một chu kỳ thực hiện. Thời gian thực hiện một chu kỳ tùy thuộc vào tốc độ xử lý
của PLC và độ lớn của chương trình. Một chu kỳ thực hiện bao gồm ba giai đoạn
nối tiếp nhau :
 Đầu tiên, bộ xử lý đọc trạng thái của tất cả đầu vào. Phần chương trình
phục vụ công việc này có sẵn trong PLC được gọi là hệ điều hành.
 Tiếp theo, bộ xử lý sẽ đọc và xử lý tuần tự từng lệnh một trong chương
trình. Trong ghi, đọc và xử lý các lệnh, bộ vi xử lý sẽ đọc tín hiệu các đầu vào và
thực hiện các phép toán logic và kết quả sau đó sẽ xác định trạng thái của các đầu
ra.
 Cuối cùng, bộ vi xử lý sẽ gán các trạng thái mới cho các đầu ra tại các
modul đầu ra.

1.2.4 So sánh PLC với hệ thống điều khiển khác.


Chương I: Tìm hiểu chung về PLC

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
5































Hình 1.1: So sánh PLC với các hệ thống điều khiển khác


Điều khiển
Với chức năng được lưu trữ bằng
Tiếp xúc vật lý

Quy trình cứng
Bộ nhớ khả lập trình
Quy trình mềm
Không thay
đổi được
Thay đổi
được
Liên kết cứng Liên kết phích
cắm
Rơle, linh kiện điện tử, mạch
điện tử
Khả lập trình
tự do
Bộ nhớ thay
đổi được
ROM
EPROM
RAM
EPROM
PLC xử lý 1 bit
PLC xử lý từ ngữ
Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
6


CHƯƠNG II



THIẾT BỊ ĐIỀU KHIỂN LẬP TRÌNH S7 200


Thiết bị điều khiển logic khả trình PLC (Programmable Logic Control) là
thiết bị cho phép thực hiện linh hoạt các thao tác điều khiển số thông qua một ngôn
ngữ lập trình, thay cho việc phải thực hiện thuật toán đó bằng mạch số. Như vậy với
chương trình điều khiển trong mình, PLC trở thành bộ điều khiển số nhỏ gọn, dễ
dàng thay đổi thuật toán đặc biệt dễ dàng trao đổi thông tin với môi trường xung
quanh ( với các PLC hoặc máy tính).















Hình 2.1: SIMATIC S7 của Siemen


Thành phần cơ bản của S7 – 200 là khối vi xử lý CPU 212 hoặc CPU 214.
Về hình thức bên ngoài sự khác nhau của 2 loại CPU nhận biết được nhờ số đầu

vào/ra và nguồn cung cấp.

- CPU 212 có 8 cổng vào và 6 cổng ra và có khả năng mở rộng thêm bằng 2
modul mở rộng
- CPU 214 có 14 cổng vào và 10 cổng ra và có khả năng mở rộng thêm bằng 7
modul mở rộng.

2.1 Cấu trúc phần cứng của CPU 214

Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
7
S7-200 là thiết bị điều khiển logic khả trình loại nhỏ của hãng Siemens có
cấu trúc theo kiểu modul và có các modul mở rộng. Các modul này được sử dụng
cho nhiều ứng dụng lập trình khác nhau. Thành phần cơ bản của S7-200 là khối vi
xử lý CPU-214.










Hình 2.2: Cấu trúc PLC CPU 214


2.1.1 Các thông số của CPU 214

 CPU - 214 bao gồm 14 ngõ vào và 10 ngõ ra, có khả năng thêm 7 modul mở
rộng.
 2.048 từ đơn (4 kbyte) thuộc miền nhớ đọc/ghi non-volatile để lưu chương
trình (vùng nhớ có giao diện với EPROM).
 2.048 từ đơn (4 kbyte) thuộc kiểu đọc ghi để lưu dữ liệu, trong đó 512 từ đầu
thuộc miền non-volatile.
 Tổng số ngõ vào/ra cực đại là 64 ngõ vào và 64 ngõ ra.
 128 timer chia làm 3 loại theo độ phân giải khác nhau: 4 timer 1ms, 16 timer
10ms và 108 timer 100ms.
 128 bộ đếm chia làm 2 loại: Chỉ đếm tiến và vừa đếm tiến vừa đếm lùi.
 688 bít nhớ đặc biệt dùng để thông báo trạng thái và đặt chế độ làm việc.
 Các chế độ xử lý ngắt gồm: ngắt truyền thông, ngắt theo sườn lên hoặc
xuống, ngắt thời gian, ngắt của bộ đếm tốc độ cao và ngắt truyền xung.
 3 bộ đếm tốc độ cao với nhịp 2khz và 7 khz.
 2 bộ phát xung nhanh cho dãy xung kiểu PTO hoặc kiểu PWM.
 2 bộ điều chỉnh tương tự.
 Toàn bộ vùng nhớ không bị mất dữ liệu trong khoảng thời gian 190 giờ kể từ
khi PLC bị mất nguồn cung cấp.

Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
8
2.1.2 Các đèn báo trên S7-200 CPU 214

 SF (đèn đỏ): đèn đỏ SF báo hiệu hệ thống bị hỏng.
 Run (đèn xanh): đèn xanh run chỉ định PLC đang ở chế độ làm việc và thực

hiện chương trình được nạp vào trong máy.
 Stop (đèn vàng): đèn vàng stop chỉ định rằng PLC đang ở chế độ dừng
chương trình và đang thực hiện lại.
 Ix.x (đèn xanh): đèn xanh ở cổng vào báo hiệu trạng thái tức thời của cổng.
Đèn này báo hiệu trạng thái của tín hiệu theo giá trị logic của công tắc.
 Qx.x (đèn xanh): đèn xanh ở cổng ra báo hiệu trạng thái tức thời của cổng.
Đèn này báo hiệu trạng thái của tín hiệu theo giá trị logic của cổng.

2.1.3 Chế độ làm việc

PLC có 3 chế độ làm việc:
 Run: cho phép PLC thực hiện chương trình từng bộ nhớ, PLC sẽ chuyển từ
run sang stop nếu trong máy có sự cố hoặc trong chương trình gặp lệnh stop.
 Stop: cưỡng bức PLC dừng chương trình đang chạy và chuyển sang chế độ
stop.
 Term: cho phép máy lập trình tự quyết định chế độ hoạt động cho PLC hoặc
run hoặc stop.

2.1.4 Cổng truyền thông

S7-200 sử dụng cổng truyền thông nối tiếp RS485 với phích nối 9 chân để
phục vụ cho việc ghép nối với thiết bị lập trình hoặc với các trạm PLC khác.

Ghép nối S7-200 với máy tính PC qua cổng RS232 cần có cáp nối PC/PPI
với bộ chuyển đổi RS232/RS485.









Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
9










Hình 2.3: Cổng truyền thông

















Hình 2.4: Sơ đồ kết nối truyền thông cho PLC S7-200

2.1.5 Cáp truyền thông cho PLC S7-200

Do PLC thông qua liên kết RS485 nhưng máy tính chỉ có RS232 nên phải
dùng cáp chuyển đổi. Quá trình chuyển đổi được thực hiện qua các bước:
- Đặt tốc độ truyền cho cáp PC/PCI, có hai tốc độ truyền là 9600 baud và
19200 baud
- Nối đầu cáp phía PC (RS232) vào cổng COM1 hoặc COM2 của máy tính.
·····

····

1 2 3
4 5
9 8
7
6
1
2
3
4
5
6
7

8
9
Đất
24 VDC
Truyền và nhận dữ liệu
Không sử dụng
Đất
5 VDC (điện trở trong 100Ω)
24 VDC (120 mA tối đa)
Truyền và nhận dữ liệu
Không sử dụng

chân giải thích
Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
10
EPROM

Miền nhớ ngoài

- Nối đầu còn lại của cáp PC/PCI (RS485) vào cổng giao tiếp của CPU S7-
200.

2.2 Cấu trúc bộ nhớ

Bộ nhớ S7-200 được chia thành 4 vùng với 1 tụ có nhiệm vụ duy trì dữ liệu
trong một khoảng thời gian nhất định khi mất nguồn. Bộ nhớ S7-200 có tính năng
động cao, đọc, ghi được trong toàn vùng, loại trừ các bit nhớ đặc biệt SM (special

memory) chỉ có thể truy nhập để đọc.




Chương trình Chương trình Chương trình

Tham số Tham số Tham số

Dữ liệu Dữ liệu Dữ liệu

Vùng đối tượng


Hình 2.5: Cấu trúc bộ nhớ bên trong và ngoài của S7-200

 Vùng chương trình

Là nguồn nhớ được sử dụng để lưu giữ các lệnh chương trình. Vùng này
thuộc kiểu non-volatile đọc/ghi được.

 Vùng tham số

Là miền lưu giữ các tham số như: từ khóa, địa chỉ trạm… . Cũng giống như
vùng chương trình, thuộc kiểu non-volatile đọc/ghi được.

 Vùng dữ liệu

Là miền nhớ động được sử dụng để cất giữ các dữ liệu của chương trình. Nó
có thể được truy cập theo từng bít, từng byte, từng từ đơn (w-word) hoặc theo từ

kép (dw_ double word), vùng dữ liệu được chia thành những miền nhớ nhỏ với các
Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
11
công dụng khác nhau. Chúng được ký hiệu bằng chữ cái đầu theo từ tiếng anh, đặc
trưng cho công dụng riêng của chúng như sau:

V : Variable memory.
I : Input image register.
O : Output image regiter.
M : Internal memory bits.
SM : Special memory bits.

Tất cả các miền này đều có thể truy nhập theo từng bít, từng byte, từng từ
(word) hoặc từ kép (double word).

 Vùng đối tượng

Bao gồm các thanh ghi timer, bộ đếm tốc độ cao, bộ đệm vào ra, thanh ghi
AC. Vùng này không thuộc kiểu non-volatile nên đọc/ghi được .

2.3 Mở rộng cổng vào ra

CPU 214 cho phép mở rộng nhiều nhất 7 modul (bao gồm modul số và modul
tương tự). Có thể mở rộng cổng vào, ra của PLC bằng cách ghép nối thêm vào nó
các modul mở rộng về phía bên phải của CPU, làm thành một móc xích. Địa chỉ của
các vị trí của các modul được xác định cùng kiểu. Ví dụ như một modul cổng ra
không thể gán địa chỉ của một modul cổng vào, cũng như một modul tương tự

không thể có địa chỉ như một modul số và ngược lại.

Các modul mở rộng số hay tương tự đều chiếm chổ trong bộ đệm, tương tự
với số đầu vào/ra của modul .










Hình 2.6: Kết nối modul với PLC

PLC Modul kết nối
Caple kết nối
Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
12
Sau đây là địa chỉ của một số modul mở rộng trên CPU 214

Bảng 2.1: Địa chỉ của một số modul mở rộng trên CPU 214


2.4 Cấu trúc chương trình của S7-200


Có thể được lập trình cho PLC S7-200 bằng cách sử dụng một trong các phần
mềm :
Step 7 – micro / dos
Step 7 – micro / win

2.4.1 Thực hiện chương trình của S7-200

PLC thực hiện chương trình theo chu kỳ lặp. Mỗi vòng lặp được gọi là vòng
quét (scan). Mỗi vòng quét được bắt đầu bằng giai đoạn đọc cá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
MEND. Sau giai đoạn thực hiện chương trình là giai đoạn truyền thông nội bộ và

CPU 214
Modul 0
4vào/4a
Modul 1 8
vào
Modul 2
3vào/1a
analog
Modul 3
8 ra
Modul 4
3vào/1ra
I0.0 Q0.0
I0.1 Q0.1
I0.2 Q0.2

I0.3 Q0.3

I0.4 Q0.4
I0.5 Q0.5
I0.6 Q0.6
I0.7 Q0.7
I1.0 Q1.0
I1.1 Q1.1
I1.2
I1.3
I1.4
I1.5

I2.0
I2.1
I2.2
I2.3
Q2.0
Q2.1
Q2.2
Q2.3
I3.0
I3.1
I3.2
I3.3
I3.4
I3.5
I3.6
I3.7
AIW 0
AIW 2
AIW 4



AQW 0
Q3.0
Q3.1
Q3.2
Q3.3
Q3.4
Q3.5
Q3.6
Q3.7
AIW8
AIW12
AQW 4
Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
13
kiểm 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.






.



Hình 2.7: Vòng quét trong S7-200

Khi gặp lệnh vào/ra ngay lập tức 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 trực tiếp với cổng vào và ra.

Nếu sử dụng các chế độ ngắt chương trình tương ứng với từng tín hiệu 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 xử lý
ngắt chỉ được thực hiện trong vòng quét khi xuất hiện tín hiệu báo ngắt và có thể
xảy ra ở bất cứ điểm nào trong vòng quét.

2.4.2 Các toán hạng lập trình cơ bản

 I : dùng để chỉ ngõ vào vật lý nối trực tiếp vào PLC.
 Q : dùng để chỉ ngõ ra vật lý nối trực tiếp từ PLC.
 T : dùng để xác định phần tử định thời có trong PLC.
 C : dùng để xác định phần tử đếm có trong PLC.
 M và S : dùng như các cờ hoạt động như bên trong PLC.

Tất cả các phần tử (toán hạng) trên có hai trạng thái ON hoặc OFF (1 hoặc 0).

2.5 Ngôn ngữ lập trình của S7-200 CPU 214

2.5.1 Phương pháp lập trình

S7-200 biểu diễn một mạch logic cứng bằng một dãy các lệnh lập trình.
Chương trình bao gồm một dãy các tập lệnh. S7-200 thực hiện chương trình bắt
đầu từ lệnh lập trình đầu tiên và kết thúc ở lập trình cuối trong một vòng quét.
4. Chuyển dữ liệu từ bộ
đệm ảo ra ngoại vi


3. Truyền thông và
tự kiểm tra lỗi
2.Thực hiện
chương trình

1. Nhập dữ liệu từ
ngoại vi vào
Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
14
Cách lập trình cho S7-200 nói riêng và cho các PLC nói chung dựa trên ba
phương pháp cơ bản.
- Phương pháp hình thang (ladder, viết tắt là LAD).
- Phương pháp liệt kê lệnh (statement list, viết tắt là STL).
- Phương pháp lập trình theo biểu đồ khối FBD (Function block diagram):

Nếu có một chương trình viết dưới dạng LAD, thiết bị lập trình sẽ tự động
tạo ra một chương trình theo dạng STL tương ứng. Ngược lại không phải mọi
chương trình viết dưới dạng STL đều có thể chuyển sang được dạng LAD.

Phương pháp hình thang (LAD): LAD là một ngôn ngữ lập trình bằng đồ
họa, 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 mô tả các tiếp điểm của rơle.
Tiếp điểm thường mở:
Tiếp điểm thường đóng:
 Cuộn dây (coil):   mô tả 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.
Ví dụ:






Hình 2.8: Ví dụ phương pháp lập trình LAD

 Phương pháp liệt kê lệnh (STL): Là phương pháp thể hiện chương trình
dưới dạng tập hợp các câu lệnh. Mỗi câu lệnh trong chương trình, kể cả những lệnh
hình thức biểu diễn một chức năng của PLC.




Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
15
Ví dụ:








Để tạo ra một chương trình dạng STL, người lập trình cần phải hiểu rõ
phương thức sử dụng 9 bit ngăn xếp logic của CPU S7-200. Ngăn xếp là một khối 9
bit chồng lên nhau, tất cả các thuật toán liên quan đến ngăn xếp đều chỉ làm việc với
bit đầu tiên hoặc với bit thứ 2 của ngăn xếp. Giá trị logic mới đều có thể được gửi
(hoặc có thể được nối thêm ) vào ngăn xếp khi có yêu cầu phối hợp hai bit đầu của
ngăn xếp thì ngăn xếp sẽ được kéo lên một bit.















Hình 2.9: Cấu trúc của một ngăn xếp

 Phương pháp lập trình theo biểu đồ khối FBD:

STEP7 Micro/Win32 cho phép tạo ra các lệnh như các hộp logic giống với
các biểu đồ cổng chung. Trong FBD không có tiếp điểm và cuộn dây như của dạng

LAD, nhưng có các lệnh tương đương xuất phát như các hộp lệnh. Logic của
chương trình nhận được từ sự liên kết giữa các hộp lệnh.

S0
S1
S2
S3
S4
S5
S7
S6
S8
Stack 0: bit đầu tiên hay bit trên cùng của ngăn xếp

Stack 1: bit thứ hai của năn xếp

Stack 2: bit thứ ba của ngăn xếp

Stack 3: bit thứ tư của ngăn xếp

Stack 4: bit thứ năm của ngăn xếp

Stack 5: bit thứ sáu của ngăn xếp

Stack 6: bit thứ bảy của ngăn xếp

Stack 7: bit thứ bảy của ngăn xếp

Stack 9: bit thứ tám của ngăn xếp



LD I0.0
A I0.1
LDN I0.2
A I0.3
OLD
= Q0.0

Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
16
Ví dụ:








Hình 2.10: Ví dụ phương pháp lập trình FBD

2.5.2 Các toán hạng và giới hạn cho phép của CPU 214

Phương pháp truy nhập Giới hạn cho phép của các toán hạng

Truy nhập bit (địa chỉ byte,
chỉ số bit)

V ( 0.0  4095.7)
I (0.0  7.7)
Q ( 0.0 7.7)
M ( 0.0 31.7)
SM ( 0.0 85.7)
T (0 127)
C (0 127)
Truy nhập bit
VB (0 4.095)
IB (0 7)
MB (0 31).
SMB (0 85)
AC (0 3)
hằng số
Truy nhập từ đơn
VW (0 4094)
T (0 127)
C (0 127)
IW (0 6)
QW (0 6)
MW (0 30)
SMW (0 84)
AC (0 3)
Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
17
AIW (0


30)
AQW (0 30)
hằng số
Truy nhập từ kép
VD (0 4092)
ID (0  4)
QD (0  4)
MD (0  28)
SMD (0  82)
AC (0  3)
HC (0  2)
hằng số.

Bảng 2.2: Các toán hạng và giới hạn cho phép của CPU 214

2.6 Một số lệnh cơ bản dùng trong lập trình

2.6.1 Các lệnh vào, ra

 Lệnh LD, LDN trong LAD như sau:

Bảng 2.3: Mô tả lệnh LD, LDN trong LAD





LAD Mô tả Toán hạng
LD N Tiếp điểm thường mở sẽ được
đóng nếu n = 1.

N: I, Q, M, SM, T, C, V
LDN N Tiếp điểm thư
ờng đóng sẽ mở
khi n = 1.
LDI N Tiếp điểm thư
ờng mở sẽ đóng
tức thời khi n = 1
N: I
LDNI N Tiếp điểm thường đóng sẽ mở
tức thời khi n = 1
Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
18
 Lệnh Output

LAD Mô tả Toán hạng
n
( )
Cuộn dây đầu ra ở trạng
thái kích thích khi có dòng
điều khiển đi qua.
N: I, Q, M, SM, T, C, V
(bít)
n
( )
Cuộn dây đầu ra được kích
thích tức thời khi có dòng
điều khiển đi qua.

N: Q (bít)

Bảng 2.4: Mô tả lệnh Output bằng LAD

2.6.2 Lệnh ghi/xóa giá trị cho tiếp điểm

 Set (S) và Reset (R):

Lệnh dùng để đóng và ngắt các điểm gián đoạn đã được thiết kế. Trong LAD,
lệnh điều khiển dòng điện đóng hoặc ngắt các cuộn dây đầu ra. Khi dòng điều khiển
đến các cuộc dây thì các cuộn dây đóng hoặc mở các tiếp điểm (hoặc một dãy các
tiếp điểm).

LAD Mô tả Toán hạng
Đóng một mảng gồm N các
tiếp điểm kể từ S bit.

S bit: I, Q, M, SM, T, C,
V
N (byte): IB, QB, MB,
SMB, VB,AC, hằng số,
*VD, *AC
Đóng một mảng gồm n các
tiếp điểm kể từ S bit. Nếu S
bit lại chỉ vào timer hoặc
counter thì lệnh sẽ xóa bít đầu
ra của timer / counter đó.


Đóng tức thời một mảng gồm

N các tiếp điểm kể từ S bit.

S bit: Q
N (byte): IB, QB, MB,
SMB, VB,AC, hằng số,
N
( R
)
N
( SI
)
N
( S
)
Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
19
Ngắt tức thời một mảng gồm
N các tiếp điểm kể từ địa chỉ
S bit.
*VD, *AC

Bảng 2.5: Mô tả bằng lệnh Set và Reset trong LAD

2.6.3 Các lệnh tiếp điểm đặc biệt:

Có thể dùng các lệnh tiếp điểm đặc biệt để phát hiện sự chuyển tiếp trạng
thái của xung (sườn xung) và đảo lại trạng thái của dòng cung cấp (giá trị của đỉnh

ngăn xếp). LAD sử dụng các tiếp điểm đặc biệt để tác động vào dòng cung cấp. Các
tiếp điểm đặc biệt không có toán hạng riêng của chính chúng và vì thế phải đặt
chúng vào vị trí phía trước của cuộn dây hoặc hộp đầu ra. Tiếp điểm chuyển tiếp
dương/âm có nhu cầu về bộ nhớ, nên đối với CPU 214 là 256 lệnh.


LAD Mô tả Toán hạng

Tiếp điểm đảo trạng thái của dòng
cung cấp. Nếu dòng cung cấp có tiếp
điểm đảo thì nó bị ngắt mạch, nếu
không có tiếp điểm đảo thì nó thông
mạch.
Không có


Tiếp điểm chuyển đổi dương cho phép
dòng cung cấp thông mạch trong một
vòng quét khi sườn xung điều khiển
chuyển từ 0 lên 1
Không có


Tiếp điểm chuyển đổi âm cho phép
dòng cung cấp thông mạch trong một
vòng quét khi sườn xung điều khiển
chuyển từ 1 xuống 0.
Không có

Bảng 2.6: Mô tả lệnh các lệnh tiếp điểm đặc biệt


2.6.4 Các lệnh so sánh

NOT
P
N
N
( RI
)
Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
20
Khi lập trình, nếu có các quyết định về điều khiển được thực hiện dựa trên
kết quả của việc so sánh thì có thể sử dụng lệnh so sánh cho byte, từ hay từ kép của
S7-200.

LAD sử dụng lệnh so sánh để so sánh các giá trị của byte, từ và từ kép (giá trị
thực hoặc nguyên). Những lệnh so sánh thường là so sánh nhỏ hơn hoặc bằng (<=);
so sánh bằng (=) và so sánh lớn hơn hoặc bằng (> =).

Khi so sánh giá trị của byte thì không cần phải để ý đến dấu của toán hạng.
Ngược lại khi so sánh các từ hoặc từ kép với nhau thì phải để ý đến dấu của toán
hạng, ngược lại khi so sánh các từ hoặc từ kép với nhau thì phải để ý đến dấu của
toán hạng là bít cao nhất trong từ hoặc từ kép.

LAD Mô tả Toán hạng
Tiếp điểm đóng khi
n1 = n2

B = byte
I = integer
D = double integer
R = real


n1, n2 (byte) : VB ,
IB , QB, MB, SMB ,
AC , CONST , *VD*,
AC

Tiếp điểm đóng khi
n1 > n2
B = byte
I = integer
D = double integer
R = real




n1, n2 (từ): VW, T, C,
IW, QW, MW,
SMW,AC, AIW,
Hằng số, *VD, *AC

n1
n2
= = B
n1

n2
= = I
n1
n2
= = D


n1
n2
= = R


n1
n2
> = B
n1
n2
> = I


n1
n2
> = R


n1
n2
> = D
Chương II: Thiết bị điều khiển lập trình S7-200


SVTH: Nguyễn Phước Hậu
MSSV: 1041037
21
Tiếp điểm đóng khi
n1 < n2
B = byte
I = integer
D = double integer
R = real



n1, n2(từ kép):VD,
ID, QD, MD, SMD,
AC, HC, hằng số,
*VD, *AC

Bảng 2.7: Biểu diễn các lệnh so sánh trong LAD:

2.6.5 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 thì 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 nhưng 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 phải đượ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 lệnh 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 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 xong 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 nằm 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. Nói chung
(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 để ý đến giới hạn trên.



n1
n2
< = B
n1
n2
< = I


n1
n2
< = R



n1
n2
< = D
Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
22
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 vị trí khác trong chương trình. Cú pháp của 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).

Lệnh nhảy, lệnh gọi chương trình con, lệnh khai báo nhãn và lệnh thoát khỏi
chương trình con được biểu diễn trong LAD:

LAD Mô tả Toán hạng



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: 0  255





Lệnh khai báo nhãn n trong

một chương trình.
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 là n.

n: 0  255
Lệnh gán nhãn n cho một
chương trình con.
Lệnh trở về chương trình đã
gọi chương trình con có điều
kiện (bít đầu tiên của ngăn
xếp có giá trị logic bằng 1).



Không có
Lệnh trở về chương trình đã
gọi chương trình con không
điều kiện.

Bảng 2.8: Mô tả lệnh nhảy và lệnh gọi chương trình con

2.6.6 Các lệnh can thiệp vào thời gian vòng quét:

Lệnh MEND, END, STOP, NOP, WDR.
LBL:n
n
( JMP
)

n
( CALL
)
n
( CRET
)
n
( RET
)
SBR:n
Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
23

Các lệnh này được dùng để kết thúc chương trình đang thực hiện, và kéo dài
trong khoảng thời của một vòng quét.
Trong LAD và STL chương trình chính phải được kết bằng lệnh kết thúc
không điều kiện MEND. Có thể sử dụng lệnh kết thúc có điều kiện END trước lệnh
kết thúc không điều kiện.
Lệnh STOP kết thúc chương trình, nó chuyển điều khiển chương trình đến
chế độ STOP. Nếu gặp lệnh STOP trong chương trình chính hoặc trong chương
trình con thì chương trình đang thực hiện sẽ được kết thúc ngay lập tức.
Lệnh rỗng NOP không có tác dụng gì trong việc thực hiện chương trình.
Lệnh NOP này phải được đặt trong chương trình chính, hoặc chương trình ngắt,
hoặc chương trình con.
Lệnh WDR sẽ khởi động lại đồng hồ quan sát (watchdog timer) và chương
trình tiếp tục được thực hiện trong vòng quét ở chế độ quan sát.


2.6.7 Các lệnh điều khiển Timer:


Timer là bộ tạo tời thời gian trễ giữ tín hiệu vào và tín hiệu ra nên trong điều
khiển vẫn thường gọi là khâu trễ. S7-200 có 128 Timer được chia làm 2 loại khác
nhau, đó là :
 Timer tạo thời gian trễ không có nhớ (timer ON delay), ký hiệu là TON.









Hình 2.11: Lệnh TON trong LAD


IN: cho phép timer hoạt động
Txxx : số hiệu timer
PT: giá trị đặt cho timer
Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
24






Hình 2.12: Giản đồ thời gian của TON

 Timer tạo thời gian trễ có nhớ (timer on delay retentive), ký hiệu là TONR
Timer TON được dùng để tạo thời gian trễ trong một khoảng thời gian nhất
định, còn với TONR thời gian trễ sẽ được tạo trong nhều khoảng thời gian khác
nhau.








Hình 2.13: Lệnh TON trong LAD










Hình 2.14: Giản đồ thời gian của TONR
IN: cho phép Timer hoạt động
Txxx: số hiệu Timer

PT: Giá trị đặt cho Timer

Chương II: Thiết bị điều khiển lập trình S7-200

SVTH: Nguyễn Phước Hậu
MSSV: 1041037
25
 Timer tạo thời gian trễ khi mất xung kích (TOF)







Hình 2.15: Lệnh TON trong LAD







Hình 2.16: Giản đồ thời gian của TOFF
Timer TON, TOF và TONR với 3 độ phân giải khác nhau, độ phân giải 1ms,
10ms, 100ms. Thời gian trễ đượ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.
Các loại timer của S7-200 chia theo TON, TOF, TONR và độ phân giải bao
gồm :
Lệnh Độ phân giải Giá trị cực đại CPU 224

TON
TOFF
1 ms 32,767s
T32T96
10 ms 327,67s
T33T36; T97 T100
100 ms 3276,7s
T37T63; T101 T127
IN: Cho phép Timer hoạt động
Txxx: Số hiệu Timer
PT: Giá trị đặt cho Timer

×