You are on page 1of 75

LUẬN VĂN TỐT NGHIỆP 1 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
CHƯƠNG 3
NGHIÊN CỨU VỀ PLC S7-200

I Tổng quát về PLC


2.1. 1. Giới thiệu PLC
PLC 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.
Các thiết kế đầu tiên là nhằm thay thế cho các phần cứng Relay dây nối và các Logic thời
gian .Tuy nhiên, bên cạnh đó việc đòi hỏi tăng cường dung lượng nhớ và tính dể dàng cho PLC
mà vẫn bảo đảm tốc độ xử lý cũng như giá cả. Chính điều này đã gây ra sự quan tâm sâu sắc đến
việc sử dụng PLC trong công nghiệp. Các tập lệnh nhanh chóng đi từ các lệnh logic đơn giản đến
các lệnh đếm,định thời, thanh ghi dịch, sau đó là các chức năng làm toán trên các máy lớn. Sự
phát triển các máy tính dẫn đến các bộ PLC có dung lượng lớn, số lượng I / O nhiều hơn.
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 qui 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 .

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 2 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

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


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.
Bên cạnh đó, một bộ PLC hoàn chỉnh còn đi kèm thêm môdul đơn vị lập trình bằng tay
hay bằng máy tính. Hầu hết các đơn vị lập trình đơn giản đều có đủ RAM để chứa đựng chương
trình dưới dạng hoàn thiện hay bổ sung . Nếu đơn vị lập trình là đơn vị xách tay, RAM thường là
loại CMOS có pin dự phòng, chỉ khi nào chương trình đã được kiểm tra và sẳn sàng sử dụng thì
nó mới truyền sang bộ nhớ PLC . Đố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, …
2.1.3 . Nguyên lý hoạt động của PLC
 Đơ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ớ.
 Hệ thống bus
Hệ thống Bus là tuyến dùng để truyền tín hiệu, hệ thống gồm nhiều đường tín hiệu song
song:
- Address Bus : Bus địa chỉ dùng để truyền địa chỉ đến các Modul khác nhau.
- Data Bus : Bus dùng để truyền dữ liệu.
- Control Bus : Bus điều khiển dùng để truyền các tín hiệu định thì và điểu khiển đồng
bộ các hoạt động trong PLC .
Trong PLC các số liệu được trao đổi giữa bộ vi xử lý và các modul vào ra thông qua Data
Bus. Address Bus và Data Bus gồm 8 đường, ở cùng thời điểm cho phép truyền 8 bit của 1 byte
một cách đồng thời hay song song.
Nếu môdul modul đầu vào nhận được địa chỉ của nó trên Address Bus,nó sẽ chuyển tất cả
trạnh thái đầu vào của nó vào Data Bus. Nếu một địa chỉ byte của 8 đầu ra xuất hiện trên Address

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 3 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Bus, modul đầu ra tương ứng sẽ nhận được dữ liệu từ Data bus. Control Bus sẽ chuyển các tín
hiệu điều khiển vào theo dõi chu trình hoạt động của PLC .
Các địa chỉ và số liệu được chuyển lên các Bus tương ứng trong một thời gian hạn chế.
Hệ thống Bus sẽ làm nhiệm vụ trao đổi thông tin giữa CPU, bộ nhớ và I /O.Bên cạch đó,
CPU được cung cấp một xung Clock có tần số từ 1÷ 8 MHZ. Xung này quyết định tốc độ hoạt
động của PLC và cung cấp các yếu tố về định thời, đồng hồ của hệ thống.
 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 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ớ .
Địa chỉ của từng ô nhớ sẽ được trỏ đến bởi một bộ đếm địa chỉ ở bên trong bộ vi xử lý. Bộ
vi xử lý sẽ giá trị trong bộ đếm này lên một trước khi xử lý lệnh tiếp theo. Với một địa chỉ mới,
nội dung của ô nhớ tương ứng sẽ xuất hiện ở đấu ra, quá trình này được gọi là quá trình đọc .
Bộ nhớ bên trong PLC được tạo bỡi các vi mạch bán dẫn, mỗi vi mạch này có khả năng
chứa 2000 đến 16000 dòng lệnh, tùy theo loại vi mạch. Trong PLC các bộ nhớ như RAM,
EPROM đều được sử dụng .
RAM (Random Access Memory ) có thể nạp chương trình, thay đổi hay xóa bỏ nội dung
bất kỳ lúc nào. Nội dung của RAM sẽ bị mất nếu nguồn điện nuôi bị mất . Để tránh tình trạng này
các PLC đều được trang bị một pin khô, có khả năng cung cấp năng lượng dự trữ cho RAM từ vài
tháng đến vài năm. Trong thực tế RAM được dùng để khởi tạo và kiểm tra chương trình. Khuynh
hướng hiện nay dùng CMOSRAM nhờ khả năng tiêu thụ thấp và tuổi thọ lớn .
EPROM (Electrically Programmable Read Only Memory) là bộ nhớ mà người sử dụng
bình thường chỉ có thể đọc chứ không ghi nội dung vào được. Nội dung của EPROM không bị
mất khi mất nguồn, nó được gắn sẵn trong máy, đã được nhà sản xuất nạp và chứa hệ điều hành
sẵn. Nếu người sử dụng không muốn mở rộng bộ nhớ thì chỉ dùng thêm EPROM gắn bên trong
PLC. Trên PG (Programer) có sẵn chổ ghi và xóa EPROM.
Môi trường ghi dữ liệu thứ ba là đĩa cứng hoặc đĩa mềm, được sử dụng trong máy lập
trình.Đĩa cứng Hoặc đĩa mềm có dung lượng lớn nên thường được dùng để lưu những chương
trình lớn trong một thời gian dài .
Kích thước bộ nhớ:
- Các PLC loại nhỏ có thể chứa từ 300 đến 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 đến 16K, có khả năng chứa từ 2000 đến 16000 dòng
lệnh.

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 4 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Ngoài ra còn cho phép gắn thêm bộ nhớ mở rộng như RAM, EPROM.
 Các ngỏ vào ra I / O
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/24VDC hoặc
100/240VAC.
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 .
2. 3. Các hoạt động xử lý bên trong PLC
a. Xử lý chương trình
Khi một chương trình đã được nạp vào bộ nhớ của PLC, các lệnh sẽ được 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 và được gọi là hệ điều hành .
 Tiếp theo, bộ xử lý sẽ đọc và xử lý tuần tự 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, 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.
b. Xử lý xuất nhập
Gồm hai phương pháp khác nhau dùng cho việc xử lý I / O trong PLC :
 Cập nhật liên tục
Điều nay đòi hỏi CPU quét các lệnh ngỏ vào (mà chúng xuất hiện trong chương trình),
khoảng thời gian Relay được xây dựng bên trong để chắc chắn rằng chỉ có những tín hiệu hợp lý
mới được đọc vào trong bộ nhớ vi xử lý. Các lệnh ngỏ ra được lấy trực tiếp tới các thiết bị. Theo
hoạt động logic của chương trình, khi lệnh OUT được thực hiện thì các ngỏ ra cài lại vào đơn vị I
/ O, vì thế nên chúng vẫn giữ được trạng thái cho tới khi lần cập nhật kế tiếp.

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 5 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
 Chục ảnh quá trình xuất nhập
Hầu hết các PLC loại lơn có thể có vài trăm I / O, vì thế CPU chỉ có thể xử lý một lệnh ở
một thời điểm . Trong suốt quá trình thực thi, trạng thái mỗi ngõ nhập phải được xét đến riêng lẻ
nhằm dò tìm các tác động của nó trong chương trình. Do chúng ta yêu cầu relay 3ms cho mỗi ngõ
vào, nên tổng thời gian cho hệ thống lấy mẫu liên tục trở nên rất dài và tăng theo số ngõ vào.
Để làm tăng tốc độ thực thi chương trình, các ngõ I / O được cập nhật tới một vùng đặc biệt
trong chương trình. ở đây, vùng RAM đặc biệt này được dùng như một bộ đệm lưu trạng thái các
logic điều khiển và các đơn vị I / O. Mỗi ngõ vào ra đều có một địa chỉ I / O RAM này. Suốt quá
trình copy tất cả các trạng thái vào trong I / O RAM. Quá trình này xảy ra ở một chu kỳ chương
trình (từ Start đến End).
Thời gian cập nhật tất cả các ngõ vào ra phụ thuộc vào tổng số I /O được copy tiêu biểu là
vài ms. Thời gian thực thi chương trình phụ thuộc vào chiều dài chương trình điều khiển tương
ứng mỗi lệnh mất khoảng từ 1÷ 10 µ s.
2.4 PLC SIMATIC S7-200 CPU 226
2.4.1 Cấu trúc phần cứng của CPU 226
S7-200 là thiết bị điều khiển logic khả trình loại nhỏ của Hãng SIEMNS (CHLB Đức) 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 -226
- CPU-226 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 EEPROM).
- 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.
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 6 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Các đèn báo trên S7 -200 CPU226
- 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.
 Cổng vào ra
- 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 Ix.x. Đè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 Qx.x. Đè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.
 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.
 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. Tốc độ truyền cho máy lập trình
kiểu PPI là 9600 baud. Tốc độ truyền cung cấp của PLC theo kiểu tự do là 300 ÷ 38.400 baud.
Để ghép nối S7 -200 với máy lập trình
1 PG702 hoặc các loại máy lập trình thuộc họ PG7xx
có thể dùng một cáp nối thẳng MPI. Cáp đó đi kèm với máy lập trình.
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ân Giải thích

1 Đất
2 24 VDC
5 4
·····
3 2 1 3
4
5
Truyền và nhận dữ liệu
Không sử dụng
Đất
····
9 8 7 6
6 5 VDC (điện trở trong 100?)
7 24 VDC (120 mA tối đa)
8 Truyền và nhận dữ liệu
===============================================================
9 Không sử dụng
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 7 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

2.4.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 để đo

EEPROM Miền nhớ ngoài

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


Tham số Tham số Tham số
Tụ Dữ liệu Dữ liệu Dữ liệu
Vùng đối tượng

♦ 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 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).
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 8 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
♦ 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 nhưng đọc / ghi được .
2.4.3 Mở rộng cổng vào ra
CPU226cho phép mở rộng nhiều nhất 7 Modul. Các modul mở rộng tương tự và có thể mở
rộng cổng vào 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 .

Sau đây là địa chỉ của một số modul mở rộng trên CPU214
Modul 0 Modul 1 Modul 2 Modul3 Modul 4
CPU214 4vào/4a 8 vào 3vào/1a 8 ra 3vào/1a
Analog
I0.0 Q0.0 I2.0 I3.0 AIW 0 Q3.0 AIW8
I0.1 Q0.1 I2.1 I3.1 AIW 2 Q3.1 AIW12
I0.2 Q0.2 I2.2 I3.2 AIW 4 Q3.2 AQW 4
I0.3 Q0.3 I2.3 I3.3 Q3.3
I0.4 Q0.4 Q2.0 I3.4 Q3.4
I0.5 Q0.5 Q2.1 I3.5 AQW 0 Q3.5
I0.6 Q0.6 Q2.2 I3.6 Q3.6
I0.7 Q0.7 Q2.3 I3.7 Q3.7
I1.0 Q1.0
I1.1 Q1.1
I1.2
I1.3
I1.4
I1.5

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 9 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
2.4.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
Những phần mềm này đều có thể cài đặt được trên các máy lập trình họ
PG 7xx và các máy tính cá nhân.
Các chương trình cho S7 -200 phải có cấu trúc bao gồm chương trình chính (main program)
và sau đó đến các chương trình con và các chương trình xử lý ngắt.
Chương trình chính được kết thúc bằng lệnh kết thúc chương trình (MEND).
Chương trình con là một bộ phận của chương trình, các chương trình phải được viết sau lệnh
kết thúc chương trình đó là lệnh MEND.
Các chương trình xử lý ngắt cũng là một bộ phận của chương trình. Nếu cần sử dụng phải
viết sau lệnh kết thúc chương trình chính (MEND).
Các chương trình được nhóm lại thành một nhóm ngay sau chương trình chính, sau đó đến
các chương trình xử lý ngắt. Cũng có thể do trộn lẫn các chương trình con và chương trình xử lý
ngắt ở sau chương trình chính

2.5 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à 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.

4. Chuyển dữ liệu từ bộ 1. Nhập dữ liệu từ N


đệm ảora ngoại vi ngoại vi vào
.

3. Truyền thông và 2.Thực hiện


tự kiểm tra lỗi chương trình

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
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
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 10 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự độ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 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. 6. Các toán hạng lập trình cơ bản
Có 6 phần tử lập trình cơ bản, mỗi phần tử có công dụng riêng. Để dễ dàng xác định thì mỗi
phần tử được gán cho mộ ký tự:
- 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).
Cuộn dây có thể được dùng để điều khiển trực tiếp ngõ ra từ PLC (như phần tử Q) hoặc có thể
điều khiển bộ định thì, bộ đếm hoặc cờ (như phần tử M, S). Mỗi cuộc dây được gắn với các công
tắc. Các công tắc này có thể là thường mở hoặc thường đóng.
Các ngõ vào vật lý nối đến bộ điều khiển lập trình (phần tử I) không có cuộn dây để lập trình.
Các phần tử này chỉ có thể dùng ở dạng các công tắc mà thôi (loại thường đóng và thường mở).
2.7 NGÔN NGỮ LẬP TRÌNH CỦA PLC S7-200 CPU 226
2.7. 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 (scan).
Một vòng quét (scan cyele) được bắt đầu bằng một việc đọc trạng thái của đầu vào, và sau
đó thực hiện chương trình. Vòng quét kết thúc bằng việc thay đổi trạng thái đầu ra. Trước khi bắt
đầu một vòng quét tiếp theo S7 -200 thực thi các nhiệm vụ bên trong và nhiệm vụ truyền thông.
Chu trình thực hiện chương trình là chu trình lặp.
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 hai phương pháp
cơ bản. Phương pháp hình thang (Ladder, viết tắt là LAD) và phương pháp liệt kê lệnh
(Statement list, viết tắt là STL).
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ự dộ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.
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 11 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
 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 (Symbol) 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): Là biểu tượng ( ) 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. Cuộn dây và các hộp phải mắc đúng
chiều dòng điện.
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 pha, đường nguồn bên phải là dây
trung hòa và cũng là đường trở về nguồn cung cấp (thường không được thể hiện khi dùng chương
trình tiện dụng STEPT MICRO / DOS hoặc STEPT – MICRO /WIN. Dòng điện chạy từ trái qua
tiếp điểm đến đóng các cuộn dây hoặc các hộp trở về bên phải nguồn.
 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.

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

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ỉ V (0.0 ÷ 4095.7)
số bit)
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)

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 12 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Truy nhập bit VB (0 ÷ 4.095)
IB (0 ÷ 7)
MB (0 ÷ 31).
SMB (0 ÷ 85)
AC (0 ÷ 3)
Hằng sốH
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)
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ố.

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 13 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
2.7.3 Một số lệnh cơ bản dùng trong lập trình
a. Các lệnh vào ra
* Load (LD): Lệnh LD nạp giá trị logic của một tiếp điểm vào trong bít đầu tiên của ngăn xếp
(xem hình a), các giá trị cũ còn lại trong ngăn xếp bị đẩy lùi xuống một bít.
• Load Not (LDN): Lệnh LDN nạp giá trị logic nghịch đảo của một tiếp điểm vào trong bít
đầu tiên của ngăn xếp (xem hình b), các giá trị còn lại trong ngằn xếp bị đẩy lùi xuống một
bít.
Trước LD Sau
c0 M
c1 c0
c2 c1 Hình a: Trạng thái
của ngăn xếp trước và
c3 c2 sau khi thực hiện lệnh
c4 c3 LD

c5 c4
Trước LDN Sau
c6 c5
c0 ∼m
c7 c6
c1 c0
c8 c7
c2 c1
c3 c2khỏi ngăn xếp
Bị đẩy ra
c4 c3
c5 c4
c6 c5
c7 c6
c8 c7
Bị đẩy ra khỏi ngăn xếp
Hình b: Trạng thái của ngăn xếp trước và sau khi thực hiện lệnh LDN.
Các dạng khác nhau của lệnh LD, LDN cho LAD như sau:
LAD Mô tả Toán hạng
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 14 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
LD n Tiếp điểm thường mở sẽ n: I, Q, M, SM, T, C, V
được đóng nếu n = 1. (bit)

LDN n Tiếp điểm thường đóng


sẽ mở khi n = 1.

LDI n Tiếp điểm thường mở sẽ n: I


đóng tức thời khi n = 1
LDNI n Tiếp điểm thường đóng
sẽ mở tức thời khi n = 1

Các dạng khác nhau của lệnh LD, LDN cho STL như sau:
Lệnh Mô tả Toán hạng
LD n Lệnh nạp giá trị logic của n (bít): I, Q, M, SM, T,
điểm n vào bít đầu tiên C, V
trong ngăn xếp.
LDN n Lệnh nạp giá trị logic
nghịch đảo của điểm n vào
bít đầu tiên trong ngăn xếp.
LDI n Lệnh nạp tức thời giá trị n: I
logic của điểm n vào bít đầu
tiên trong ngăn xếp.
LDNI n Lệnh nạp tức thời giá trị
logic nghịch đảo của điểm n
vào bít đầu tiên trong ngăn
xếp.

OUTPUT (=)
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 15 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Lệnh sao chép nội dung của bít đầu tiên trong ngăn xếp vào bít được chỉ định trong lệnh. Nội
dung của ngăn xếp không bị thay đổi.L
Mô tả lệnh bằng LAD như sau:
LAD Mô tả Toán hạng
n Cuộn dây đầu ra ở trạng n: I, Q, M, SM, T, C, V
( ) thái kích thích khi có dòng (bít)
điều khiển đi qua.
n Cuộn dây đầu ra được kích n: Q
( ) thích tức thời khi có dòng (bít)
( ) điều khiển đi qua.

Mô tả bằng lệnh STL như sau:


STL Mô tả Toán hạng
Lệnh = sao chép giá trị của n: I, Q, M, SM, T, C,
= n đỉnh ngăn xếp tới tiếp điểm n V
được chỉ dẫn trong lệnh. (bít)
Lệnh = I (immediate) sao n: Q
= In chép tức thời giá trị của đỉnh (bít)
stack tới tiếp điểm n được chỉ
dẫn trong lệnh.

2.8 Các lệnh ghi C / xóa giá trị cho tiếp điểm
SET (S) ; RESET (R):
Lệnh dùng để đóng và ngắt các điểm gián đoạn đã được thiết kế. Trong LADL, logic điều
khiển dòng điện đóng hoặc ngắt các cuộc 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).
Trong STL, lệnh truyền trạng thái bít đầu của ngăn xếp đến các điểm thiết kế. Nếu bít này có
giá trị =1, các lệnh S và R sẽ đóng ngắt tiếp điểm hoặc một dãy các tiếp điểm (giới hạn từ 1 đến
255). Nội dung của ngăn xếp không bị thay đổi bởi các lệnh này.
Mô tả bằng lệnh LAD
LAD Mô tả Toán hạng

===============================================================
S BIT n
GVHD: BÙI (THU
S ) HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 16 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Đóng một mảng gồm n các S BIT: I, Q, M, SM, T,
tiếp điểm kể từ S BIT C, V
n(byte): IB, QB, MB,
SMB, VB,AC, Hằng số,
Đóng một mảng gồm n các *VD, *AC
S BIT n tiếp điểm kể từ S BIT. Nếu S
(R) BIT lại chỉ vào Timer hoặc
Counter thì lệnh sẽ xóa bít đầu ra
của Timer / Counter đó.

S BIT n Đóng tức thời một mảng gồm S BIT: Q


( SI ) n các tiếp điểm kể từ S BIT
N(byte): IB, QB, MB,
Ngắt tức thời một mảng gồm SMB, VB,AC, Hằng số,
S BIT n n các tiếp điểm kể từ địa chỉ S *VD, *AC
( RI ) BIT

STL Mô tả Toán hạng


S S BIT n Ghi giá trị logic vào một S BIT: I, Q, M, SM, T,
mảng gồm n bít kể từ địa chỉ S C, V
BIT (bit)

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 17 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
R S BIT n Xóa một mảng gồm n bít kể
từ địa chỉ S BIT. Nếu S BIT lại n: IB, QB, MB, SMB,
chỉ vào Timer hoặc Counter thì VB
lệnh sẽ xóa bít đầu ra của
Timer / Counter. (byte) AC, Hằng số,
*VD, *AC
SI S BIT Ghi tức thời giá trị logic 1 vào S BIT: Q
n một mảng gồm n bít kể từ địa chỉ (bit)
S BIT
RI S BIT Xóa tức thời một mảng gồm n n: IB, QB, MB, SMB,
n bít kể từ địa chỉ S BIT VB (byte)
(byte) AC, Hằng số,
*VD, *AC

2.9 Các lệnh logic đại số C (BOOLEAN)


Các lệnh tiếp điểm đại số Boolean cho phép tạo lập được các mạch logic (không có nhớ).
Trong LAD các lệnh này được biểu diễn thông qua cấu trúc mạch, mắc nối tiếp hay song song
các tiếp điểm thường đóng và các tiếp điểm thường mở. STL có thể sử dụng các lệnh A (And) và
O (Or) cho các hàm hở hoặc các lệnh AN (And Not), ON (Or Not) cho các hàm kín.

Giá trị của ngăn xếp thay đổi phụ thuộc vào từng lệnh.:

Lệnh Mô tả Toán hạng


===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 18 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

Lệnh thực hiện toán tử ^ (A) và V n: I, Q, M, SM, T, C, V


O n (O) giữa giá trị logic của tiếp điểm n và (bit)
giá trị bít đầu tiên trong ngằn xếp. Kết
A n quả được ghi lại bít đầu trong ngăn xếp.
Lệnh thực hiện toán tử ^ (A) và V
AN n (O) giữa giá trị logic nghịch đảo của
tiếp điểm n và giá trị bít đầu tiên trong
ON n ngằn xếp. Kết quả được ghi lại bít đầu
trong ngăn xếp.
Lệnh thực hiện tức thời toán tử ^ (A) n: 1
AI n và V (O) giữa giá trị logic của tiếp điểm (bit)
n và giá trị bít đầu tiên trong ngằn xếp.
OI n Kết quả được ghi lại bít đầu trong ngăn
xếp.
Lệnh thực hiện tức thời toán tử ^ (A)
ANI n và V (O) giữa giá trị logic nghịch đảo
của tiếp điểm n và giá trị bít đầu tiên
ONI n trong ngằn xếp. Kết quả được ghi lại bít
đầu trong ngăn xếp.

Ngoài những lệnh làm việc trực tiếp với tiếp điểm, S7-200 còn có 5 lệnh đặc biệt biểu diễn
các phép tính của đại số Boolean cho các bit trong ngăn xếp, được gọi là các lệnh stack logic. Đó
là các lệnh ALD (And load), OLD (Or load), LPS (Logic push), LRD (Logic read) và LPP (Logic
pop). Lệnh stack logic được dùng để tổ hợp, sao chụp hoặc xóa các mệnh đề logic. LAD không
có bộ đếm dành cho lệnh stack logic. STL sử dụng các lệnh stack logic để thực hiện phương trình
tổng thể có nhiều biểu thức con.

Bảng sao tóm tắt cú pháp gọi các lệnh stack logic trong STL.:

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 19 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Lệnh Mô tả Toán hạng
ALD Lệnh tổ hợp giá trị của bít đầu tiên và thứ hai của Không có
ngăn xếp bằng phép tính logic. Kết quả ghi lại vào bít
đầu tiên. Giá trị còn lại của ngăn xếp được kéo lên
một bít.
OLD Lệnh tổ hợp giá trị của bít đầu tiên và thứ hai của Không có
ngăn xếp bằng phép tính logic V. Kết quả ghi lại vào
bít đầu . Giá trị còn lại của ngăn xếp được kéo lên
một bít.
LPS Lệnh logic Push (LPS) sao chụp giá trị của bít đầu Không có
tiên vào bít thứ hai trong ngăn xếp. Giá trị còn lại bị
đẩy xuống một bít. Bít cuối cùng bị đẩy ra khỏi ngăn
xếp.
LRD Lệnh sao chép giá trị của bít thứ hai vào bít đầu Không có
tiên trong ngăn xếp. Các giá trị còn lại của ngăn xếp
giữ nguyên vị trí.
LPP Lệnh kéo ngăn xếp lên một bít. Giá trị của bít sau Không có
được chuyển cho bít trước.

AND (A)
OR (O)
Lệnh A và O phối hợp giá trị logic của một tiếp điểm n với giá trị bít đầu tiên của ngăn xếp.
Kết quả phép tính được đặt lại vào bít đầu tiên trong ngăn xếp. Giá trị của các bít còn lại trong
ngăn xếp không bị thay đổi.

Luật tính toán của các phép tính logic And và Or như sau:

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 20 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
x y x ^ x v
y (And) y (Or)
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 1

Tác động của lệnh AND và OR vào ngăn xếp như sau
Trước A Sau m= c0 ^ c1
c0 m
c1 C1
c2 C2
c3 C3
c4 C4
c5 C5
c6 C6
c7 C7
c8 C8

Trước O Sau m= c0 v c1
c0 m

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 21 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
c1 C1
c2 C2
c3 C3
c4 C4
c5 C5
c6 C6
c7 C7
c8 C8
AND LOAD (ALD)
OR LOAD (OLD):
Lệnh ALD và lệnh OLD thực hiện phép tính logic And và Or giữa hai bít đầu tiên của ngăn
xếp. Kết quả của phép logic này sẽ được ghi lại vào bít đầu trong ngăn xếp. Nội dung còn lại của
ngăn xếp được kéo lên một bít.
Tác động của lệnh ALD và OLD vào ngăn xếp như sauT:
Trước ALD Sau m= c0^ c1
c0 m
c1 c2
c2 c3
c3 c4
c4 c5
c5 c6
c6 c7
c7 c8
c8

Trước OLD Sau m= c0 v c1

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 22 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
c0 m
c1 c2
c2 c3
c3 c4
c4 c5
c5 c6
c6 c7
c7 c8
c8

LOGIC PUSH (LPS)


LOGIC READ (LRD)
LOGIC POP (LPP)
Lệnh LPS, LRD và LPP là những lệnh thay đổi nội dung bít đầu tiên của ngăn xếp. Lệnh LPS
sao chép nội dung của bít đầu tiên và bít thứ hai trong ngăn xếp, nội dung ngăn xếp sau đó bị đẩy
xuống một bít. Lệnh LRD lấy giá trị của bít thứ hai ghi vào bít đầu tiên của ngăn xếp, nội dung
ngăn xếp đó được kéo lên một bít. Lệnh LPP kéo ngăn xếp lên một bít.

Sơ đồ minh họa thay đổi ngăn xếp của các lệnh LPS, LRD và LPP

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 23 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Trước LPS Sau Trước LRD Sau Trước LPP Sau
C0 c0 c0 c1 c0 c1
c1 c0 c1 c1 c1 c2
c2 c1 c2 c2 c2 c3
c3 c2 c3 c3 c3 c4
c4 c3 c4 c4 c4 c5
c5 c4 c5 c5 c5 c6
c6 c5 c6 c6 c6 c7
c7 c6 c7 c7 c7 c8
c8 c7 c8 c8 c8

ORW, ORD
ANDW, ANDD
XORW, XORD
Lệnh thực hiện các thuật toán logic And, Or và Exclusive Or của đại số Boolean trên 2 bite
hoặc 4 byte (mảng nhiều bít hoặc ít điểm).
Ngoài các lệnh logic làm với tiếp điểm, S7-200 cung cấp thêm những lệnh logic có khả năng
thực hiện các thuật toán logic trên một mảng nhiều tiếp điểm (hay nhiều bít) như trên 2 byte hoặc
4 byte. Luật tính toán của chúng như sau:

x Y X^y xvy x XOR


(And) (Or) y
0 0 0 0 0
0 1 0 1 1
1 0 0 1 1
1 1 1 1 0

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 24 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Cách biểu diễn các lệnh logic này trong LAD và STL được tóm tắt trong bảng sau. Chúng sử
dụng bít nhớ đặc biệt SM 1.0 để thông báo về trạng thái kết quả phép tính được thực hiện (kết quả
bằng 0).
Biểu diễn trong STL
STL Mô tả Toán hạng
Lệnh thực hiện phép logic AND IN1: VW, T, C,
ANDW IN1 IN2 giữa các bít tương ứng của hai từ IW, QW.
IN1 và IN2. Kết quả được ghi lại (word) SMW,
vào IN2 AC, AIW, *VD
*AC, Hằng số.
Lệnh thực hiện phép logic OR
ORW IN1 IN2 giữa các bít tương ứng của hai từ IN2: VW, T, C,
IN1 và IN2. Kết quả được ghi lại IW, QW
vào IN2
(word) W, CA,
Lệnh thực hiện phép logic XOR AIW, *VD, *AC
XORW IN1 IN2 giữa các bít tương ứng của hai từ
IN1 và IN2 . Kết quả được ghi lại
vào IN2
Lệnh thực hiện phép logic AND IN1: VD, ID, QD,
ANDD IN1 IN2 giữa các bít tương ứng của hai từ MD, SMQ.
kép IN1 và IN2. Kết quả được ghi (Dword) AC, HC,
lại vào IN2 *CD,*AC
Lệnh thực hiện phép logic OR Hằng số.H
ORD IN1 IN2 giữa các bít tương ứng của hai từ
kép IN1 và IN2. Kết quả được ghi
IN2: VD, ID, QD,
lại vào IN2
MD, SMD
Lệnh thực hiện phép logic XOR (Dword)AC,
XORD IN1 IN2 giữa các bít tương ứng của hai từ *VD, *AC
kép IN1 và IN2. Kết quả được ghi
lại vào IN2

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 25 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Biểu diễn trong LAD
LAD Mô tả Toán hạng
Lệnh thực hiện phép IN1: VW, T, C, IW,
WAND W
tính logic AND theo từng QW
EN
bít của hai từ IN1 và IN2. (word) SMW, AC,
IN1 Kết quả được ghi vào từ AIW, VD
IN2 OUT OUT.
*AC, Hằng số.

IN2: VW, T, C, IW,


Lệnh thực hiện phép QW,
WOR W tính logic OR giữa các bít (word) SMW, AC,
EN tương ứng của hai từ IN1 AIW, *VD, *AC, Hằng
và IN2. Kết quả được ghi số.
IN1 vào từ OUT.
IN2 OUT
OUT: VW, T, C,
IW, QW, MW,
(word) SMW, AC,
Lệnh thực hiện phép *VD, *AC
tính logic XOR giữa các
bít tương ứng của hai từ
IN1 và IN2. Kết quả được
ghi vào từ OUT.

Lệnh thực hiện phép IN1: VD, ID, QD,


WAND DW tính logic AND giữa các MD, SMW
EN bít của hai từ kép IN1 và (Dword) AC, AIW,
IN2. Kết quả được ghi vào Hằng số, VD, AC
IN1
IN2 OUT
từ OUT.

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 26 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Lệnh thực hiện phép IN2: VD, ID, QD,
WOR DW tính logic OR giữa các bít MD, SMW
EN
của hai từ kép IN1 và IN2. (Dword) AC, AIW,
IN1 Kết quả được ghi vào từ Hằng số, *VD, *AC
IN2 OUT OUT.

OUT: VD, ID, QD,


MD, SMD,
(Dword) AC, *VD,
Lệnh thực hiện phép *AC
tính logic XOR giữa các
bít của hai từ kép IN1 và
IN2. Kết quả được ghi vào
từ OUT.

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


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ác lệnh sườn trước và sườn sau) có nhu cầu về bộ nhớ,
nên đối với CPU226là 256 lệnh.

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 27 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

Các lệnh tiếp điểm đặc biệt được biểu diễn như sau trong LAD

LAD Mô tả Toán hạng


Tiếp điểm đảo trạng thái của dòng cung Không có
cấp. Nếu dòng cung cấp có tiếp điểm đảo
NOT
thì nó bị ngắt mạch, nếu không có tiếp
điểm đảo thì nó thông mạch.
Tiếp điểm chuyển đổi dương cho phép Không có
dòng cung cấp thông mạch trong một
P vòng quét khi sườn xung điều khiển
chuyển từ 0 lên 1
Tiếp điểm chuyển đổi âm cho phép Không có
N 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.

Các lệnh tiếp điểm đặc biệt được biểu diễn như sau trong STL
STL Mô tả Toán hạng
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 28 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

NOT Lệnh đảo giá trị của bít đầu tiên trong ngăn Không có
xếp.
EU Lệnh nhận biết sự chuyển tiếp trạng thái từ 0 Không có
lên 1 trong một vòng quét của đỉnh ngăn xếp.
Khi nhận được sự chuyển tiếp như vậy đỉnh
ngăn xếp sẽ có giá trị bằng 1 trong một vòng
quét.
ED Lệnh nhận biết sự chuyển tiếp trạng thái từ 1 Không có
xuống 0 trong một vòng quét của đỉnh ngăn xếp.
Khi nhận được sự chuyển tiếp như vậy đỉnh
ngăn xếp sẽ có giá trị bằng 1 trong một vòng
quét.

NOT (NOT)
EDGE UP (EU)
EDGE DOWN (ED)
Lệnh NOT, EU và ED thực hiện các thuật toán đặc biệt trên bít đầu tiên của ngăn xếp. Lệnh
NOT đảo giá trị của bít đầu tiên trong ngăn xếp. Lệnh EU khi phát hiện thấy sườn lên từ 0 đến 1
trong bít đầu tiên của ngăn xếp thì đặt giá trị 1 vào bít đầu tiên của ngăn xếp trong khoảng thời
gian bằng một vòng quét.

Tác động của lệnh vào ngăn xếp như sau:


Trước NOT Sau Trước EU Sau Trước ED Sau
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 29 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
c0 ∼c 1 c1 C0 1
0
c1 c1 c1 c1 C1 c1
c2 c2 c2 c2 C2 c2
c3 c3 c3 c3 C3 c3
c4 c4 c4 c4 C4 c4
c5 c5 c5 c5 C5 c5
c6 c6 c6 c6 C6 c6
c7 c7 c7 c7 C7 c7
c8 c8 c8 c8 C8 c8

2.11 Các lệnh so sánh

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 s (=)và so
sánh lớn hơn hoặc bằng v (> =).
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.

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


LAD Mô tả Toán hạng
===============================================================
GVHD: n1
BÙI THUn2 HÀ SVTH : Nguyễn Tiền Hải
==B
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 30 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

Tiếp điểm đóng khi


n1 = n2 n1,n2 (byte) : VB ,
n1 n2 B = Byte IB , QB, MB, SMB ,
==I AC , Const , *VD*, AC
I = Integer
n1 n2 D = Double Integer
==D R = Real

n1 n2
==R
==B Tiếp điểm đóng khi
N1 > n2 n1,n2 (từ): VW, T,
n1 n2 C, IW, QW, MW,
>=B B = Byte
SMW,AC, AIW,
==B I = Integer
Hằng số, *VD, *AC
n1 n2 D = Double Integer
>=I
R = Real

n1 n2
>=D
==B
n1 n2
>=R
==B
Tiếp điểm đóng khi
n1 n2 N1 < n2 n1, n2(từ kép):VD,
<=B ID, QD, MD, SMD,
B = Byte
==B AC, HC, Hằng số,
I = Integer *VD, *AC
n1 n2
<=I D = Double Integer
R = Real
n1 n2
<=D
==B
n1 n2
<=R
==B
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 31 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

Trong STL, những lệnh so sánh thực hiện phép so sánh byte, từ và từ kép. Căn cứ vào kiểu so
sánh (<=, =, >=), kết quả của phép so sánh có giá trị bằng 0 (nếu đúng) hoặc 1 (nếu sai) nên có
thề sử dụng kết hợp cùng với các lệnh gogic LA, A, O. Để tạo ra được các phép so sánh mà S7
-200 không có lệnh so sánh tương ứng như: so sánh không bằng nhau (< >), so sánh nhỏ hơn
(>),có thể tạo ra được nhờ dùng kết hợp lệnh NOT với các lệnh đã có c (=, >=, <=). Ví dụ sau
mô tả việc thực hiện pháp so sánh không bằng nhau (< >) giữa nội dung của từ V >W100 và hằng
số 50 bằng cách sử dụng kết hợp phép so sánh bằng nhau LDW = và lệnh đảo NOT.
LDB =, LDW =
LDD =, LDR =
* Lệnh kiểm tra tính bằng nhau của nội dung 2 byte, từ, từ kép, hoặc số thực. Trong trường
hợp phép so sánh cho kết quả đúng, bít đầu tiên trong ngăn xếp sẽ có giá trị logic bằng 1.
LDB < = , LDW < =
LDD < = , LDR < =
* Lệnh so sánh nội dung của byte, từ, từ kép hoặc số thực thứ nhất có nhỏ hơn hoặc bằng nội
dung của byte, từ, từ kép hoặc số thực thứ hai hay không. Trong trường hợp phép so sánh cho kết
quả đúng, bít đầu tiên trong ngăn xếp có giá trị logic bằng 1.

LDB > =, LDW > =


LDD > =, LDR > =
* Lệnh so sánh nội dung của byte, từ, từ kép hoặc số thực thứ nhất có lớn hơn hoặc bằng nội
dung của byte, từ, từ kép hoặc số thực thứ hai hay không. Trong trường hợp phép so sánh cho kết
quả đúng, bít đầu tiên trong ngăn xếp có giá trị logic bằng 1.
AB =, AW =
AD =, AR =
* Lệnh kiểm tra tính bằng nhau của nội dung 2 byte, từ, từ kép, hoặc số thực. Trong trường
hợp phép so sánh cho kết quả đúng, sẽ thực hiện phép tính logic And giữa bít đầu tiên trong ngăn
xếp với giá trị logic.
AB < =, AW < =
AD < =, AR < =
Lệnh so sánh nội dung của byte L, từ, từ kép hoặc số thực thứ nhất có nhỏ hơn hoặc bằng nội
dung của byte, từ, từ kép hoặc số thực thứ hai hay không. Trong trường hợp phép so sánh cho kết
quả đúng, sẽ thực hiện phép tính logic AND giữa bít đầu tiên trong ngăn xếp với giá trị logic 1
Biểu diển lệnh so sánh trong STL:

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 32 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
STL Mô tả Toán hạng
LDB = n1 n2 Lệnh thực hiện phép tính
logic Load, And hoặc Or giữa n1 , n2 (byte):VB, IB,
AB = n1 n2 giá trị logic 1 với nội dung QB, MB, SMB, AC, hằng
đỉnh ngăn xếp khi nội dung 2 số, *VD , *AC
OB = n1 n2 byte n1 và n2 thỏa mãn n1 = n2

LDB > = n1 n2 Lệnh thực hiện phép tính


logic Load, And hoặc Or giữa
AB > = n1 n2 giá trị logic 1 với nội dung
đỉnh ngăn xếp khi nội dung 2
OB > = n1 n2 byte n1 và n2 thỏa mãn n1 > = n2

LDB < = n1 n2 Lệnh thực hiện phép tính


logic Load, And hoặc Or giữa
AB < = n1 n2 giá trị logic 1 với nội dung
đỉnh ngăn xếp khi nội dung 2
OB < = n1 n2 byte n1 và n2 thỏa mãn n1 < = n2

LDW = n1 n2 Lệnh thực hiện phép tính


logic Load, And hoặc Or giữa n1 ,n2 (từ):VW, T, C,
AW = n1 n2 giá trị logic 1 với nội dung QW, MW, SMW, AC,
đỉnh ngăn xếp khi nội dung 2 AIW , hằng số, *VD ,
OW = n1 n2 từ n1 và n2 thỏa mãn n1 = n2 *AC

LDW > = n1 n2 Lệnh thực hiện phép tính


logic Load, And hoặc Or giữa
giá trị logic 1 với nội dung
AW > = n1 n2 đỉnh ngăn xếp khi nội dung 2
từ n1 và n2 thỏa mãn n1 > = n2
OW > = n1 n2
LDW < = n1 n2 Lệnh thực hiện phép tính
logic Load, And hoặc Or giữa
giá trị logic 1 với nội dung
AW < = n1 n2 đỉnh ngăn xếp khi nội dung 2
từ n1 và n2 thỏa mãn n1 < = n2

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 33 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
OW < = n1 n2
LDD = n1 n2 Lệnh thực hiện phép tính
logic Load, And hoặc Or giữa n1 , n2 (từ kép) :VD, ID,
giá trị logic 1 với nội dung QD, MD, SMD, AC, HC ,
AD = n1 n2 đỉnh ngăn xếp khi nội dung 2 hằng số, *VD , *AC
từ kép n1 và n2 thỏa mãn n1 = n2
OD = n1 n2
LDD > = n1 n2 Lệnh thực hiện phép tính
logic Load, And hoặc Or giữa
giá trị logic 1 với nội dung
AD > = n1 n2 đỉnh ngăn xếp khi nội dung 2
từ kép n1 và n2 thỏa mãn n1 > =
OD > = n1 n2 n2

LDD < = n1 n2 Lệnh thực hiện phép tính


logic Load, And hoặc Or giữa
giá trị logic 1 với nội dung
AD < = n1 n2 đỉnh ngăn xếp khi nội dung 2
từ kép n1 và n2 thỏa mãn n1 < =
OD < = n1 n2 n2

LDR = n1 n2 Lệnh thực hiện phép tính


logic Load, And hoặc Or giữa n1 ,n2 (từ kép):VD, ID,
giá trị logic 1 với nội dung QD, MD, SMD, AC, HC ,
AR = n1 n2 đỉnh ngăn xếp nếu hai số thực hằng số, *VD , *AC
n1 và n2 (4 byte) thỏa mãn n1 =
OR = n1 n2 n2

LDR > = n1 n2 Lệnh thực hiện phép tính


logic Load, And hoặc Or giữa
giá trị logic 1 với nội dung
AR > = n1 n2 đỉnh ngăn xếp nếu hai số thực
n1 và n2 (4 byte ) thỏa mãn n1 >
OR > = n1 n2 = n2

LDR < = n1 n2 Lệnh thực hiện phép tính


logic Load, And hoặc Or giữa
giá trị logic 1 với nội dung
AR < = n1 n2 đỉnh ngăn xếp nếu hai số thực
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 34 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
n1 và n2 (4 byte) thỏa mãn n1 <
OR < = n1 n2 = n2

2.12 Lệnh nhảy 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 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.
Nếu lệnh nhảy hay lệnh gọi chương trình con được thực hiện thì đỉnh ngăn xếp luôn có giá trị
logic 1. Bởi vậy trong chương trình con các lệnh có điều kiện được thực hiện như các lệnh không
điều kiện. Sau các lệnh LBL (đặt nhãn) và SBR, lệnh LD trong STL sẽ bị vô hiệu hóa.
Khi một chương trình con được gọi, toàn bộ nội dung của ngăn xếp sẽ được cất đi, đỉnh của
ngăn xếp nhận giá trị logic mới là 1, các bít khác của ngăn xếp nhận giá trị logic 0 và điều khiển
được chuyển đến chương trình con đã được gọi. Khi thực hiện xong chương trình con và trước
khi điều khiển được chuyển trở lại chương trình đã gọi nó, nội dung ngăn xếp đã được cất giữ
trước đó sẽ được chuyển trở lại ngăn xếp.
Nội dung của thanh ghi AC không được cất giữ khi gọi chương trình con, nhưng khi một
chương trình xử lý ngắt được gọi, nội dung của thanh ghi AC sẽ được cất giữ trước khi thực hiện
chương trình xử lý ngắt và nạp lại khi chương trình xử lý ngắt đã được thực hiện xong. Bởi vậy
chương trình xử lý ngắt có thể tự do sử dụng bốn thanh ghi AC của S7 -200.
JMP.CALL
LBL.SBR
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 35 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
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 và trong STL như sau:

LAD STL Mô tả Toán hạng


Lệnh nhảy thực hiện n: 0 ÷ 255
n JMP Kn việc chuyển điều khiển
( JMP ) đến nhãn n trong một
chương trình.
LBL Kn Lệnh khai báo nhãn n
trong một chương trình.
LBL:n

Lệnh gọi chương trình


CALL Kn con, thực hiện phép n: 0 ÷ 255
n chuyển điều khiển đến
( CALL ) chương trình con có nhãn
là n.
SBR Kn Lệnh gán nhãn n cho
SBR: n một chương trình con.

Lệnh trở về chương


CRET trình đã gọi chương trình
n con có điều kiện (bít đầu
( CRET ) tiên của ngăn xếp có giá trị
logic bằng 1). Không có

n Lệnh trở về chương


( RET ) RET trình đã gọi chương trình
con không điều kiện.

2.12.1 Các lệnh can thiệp vào thời gian vòng quét:
Lệnh MEND, END, STOP, NOP, WDR.
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 36 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
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 NOT không có tác dụng gì trong việc thực hiện
chương trình. Lệnh NOT 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.

Sử dụng lệnh MEND, END, STOP và WDR trong LAD và STL như sau:
LAD STL Mô tả
( END ) END Lệnh kết thúc chương trình chính hiện
hành có điều kiện.
( MEND ) Lệnh kết thúc không điều kiện dùng để
MEND kết thúc một chương trình hiện hành.

( STOP ) Lệnh STOP kết thúc chương trình hiện


STOP hành và chuyển sang chế độ STOP.

( WDR ) WDR Lệnh WDR khởi tạo lại đồng hồ quan sát.
Lệnh NOT không có hiệu lực trong
( NOT ) NOT chương trình hiện hành.
Toán hạng n là một số nằm trong khoảng

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 37 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
0÷ 25

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


Timer là bộ tạo thời gian trễ giữa 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ễ. Nếu ký hiệu tín hiệu (logic) vào là x (t) và thời gian trễ được tạo ra bằng Timer là
r thì tín hiệu đầu ra của Timer đó sẽ là x (t-r).
S7-200 có 128 Timer (CPU-226) đượ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.
* Timer tạo thời gian trễ có nhớ (Timer on delay retentive), 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 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 điểm 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 được đặ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ự 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 trong nhiều khoảng thời gian khác nhau.
Timer TON và TONR bao gồm 3 loại với 3 độ phân giải khác nhau, độ phân giải 1ms, 10 ms,
100 ms. Thời gian trễ r đượ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ụ một bộ Timer có độ phân giải bằng 10 ms và giá trị đặt trước 10 ms
thì thời gian trễ sẽ là r = 500 ms
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.
Mỗi bộ Timer, ngoài thanh ghi 02 byte T -word lưu giá trị đếm tức thời, còn có 1 bít, ký hiệu
bằng T -bít, chỉ trạnh thái logic đầu ra. Giá trị logic của bít 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 hoặc bằng giá trị đặt trước, T-bít có giá trị logic 1.
Các loại Timer của S7 -200 (đối với CPU 226) chia theo TON, TONR và độ phân giải bao
gồm:

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 38 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Lệnh Độ phân giải Giá trị cực đại CPU 226
1 ms 32,767s T32÷ T96
TON 10 ms 327,67s T33÷ T36; T97÷ T100
100 ms 3276,7s T37÷ T63; T101÷ T127
1 ms 32,767s T0 ÷ T64
TONR 10 ms 327,67s T1÷ T4; T65÷ T68
100 ms 3276,7s T5÷ T31; T69÷ T95

Cú pháp khai báo sử dụng Timer trong LAD như sau:

LAD Mô tả Toán hạng


Khai báo Timer số hiệu xx kiểu Txx : T32÷ T63
TON để tạo thời gian trễ tính từ khi
T96÷ T127
đầ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 -bít 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 PT: VW, T, C, IW,
QW, MW, SMW,
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 39 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
TON Txx
=====================================================================
IN 1 ms T32 ÷ T96 AC, AIW, VD
10 ms T33÷ T36; *AC, Hằng số.
PT T97÷ T100
100 ms T37÷ T63;
T101÷ T127
Khai báo Timer số hiệu xx kiểu Txx : T0 ÷ T31
TONR để tạo thời gian trễ tính từ
T64 ÷ T95
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 -bít
có giá trị logic bằng 1. Chỉ có thể PT: VW, T, C, IW,
reset kiểu TONR bằng lệnh R cho
T -bít QW, AIW, SMW,
TONR _Txx AC, AIW, VD
1 ms T0 ÷ T64
IN *AC, Hằng số.
10 ms T1 ÷ T4 ;
T65 ÷ T68
PT
100 ms T5 ÷ T31;
T69 ÷ T95

Cú pháp khai báo sử dụng Timer trong STL như sau:


TON, TONR khai báo sử dụng Timer của S7 -200, lệnh khai báo sử dụng Timer là lệnh có
điều kiện. Tại thời điểm khai báo tín hiệu đầu vào có giá trị logic bằng giá trị logic của bít đầu
tiên trong ngăn xếp.
STL Mô tảM Toán hạng
Khai báo Timer số hiệu xx kiểu Txx: T32 ÷ T63
TON Txx n TON để tạo thời gian trễ tính từ khi bít
T96 ÷ T127
đầu tiên trong ngăn xếp có giá trị logic
1. Nếu như giá trị đếm tức thời lớn hơn
hoặc bằng giá trị đặt trước n thì T -bít n (word) : VW, T, C,
có giá trị logic bằng 1. Có thể reset IW,QW, MW, SMW
Timer kiểu TON bằng lệnh R hoặc
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 40 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
bằng giá trị logic 0 tại đầu vào. AC, AIW, VD
1 ms T96 *AC, Hằng số
10 ms T97 ÷ T100
100 ms T101 ÷ T127
Khai báo Timer số hiệu xx kiểu Txx :T0 ÷ T31
TONR Txx n TONR để tạo thời gian trễ tính từ khi
T64 ÷ T95
bít đầu tiên trong ngăn xếp có giá trị
logic 1. Nếu như giá trị đếm tức thời
lớn hơn hoặc bằng giá trị đặt trước n n (word) :VW, T, C,
thì T -bít có giá trị logic bằng 1. Chỉ có IW,QW, AIW, SMW,
thể reset Timer kiểu TONR bằng lệnh AC, AIW, VD
R cho T -bít
*AC, Hằng số
1 ms T64
10 ms T65 ÷ T68
100 ms T69 ÷ T95
Chú ý: 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 -bít 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.
Các Timer được đánh số từ 0 đến 127 (đối với CPU 226). Một Timer được đặt tên là Txx,
trong đó xx là số hiệu của Timer. Txx đồng thời cũng là địa chỉ hình thức của T -word và T -bít
vẫn được phân biệt với nhau nhờ kiểu lệnh sử dụng với Txx. Khi dùng lệnh làm việc với từ, Txx
được hiểu là địa chỉ của T -word, ngược lại khi sử dụng lệnh làm việc với tiếp điểm, Txx được
hiểu là địa chỉ của T -bít.
Một Timer đang làm việc có thể được đưa lại về trạng thái khởi động ban đầu. Công việc đưa
một Timer về trạng thái ban đầu được gọi là reset Timer đó.
Khi reset một bộ Timer, T-word và T -bít 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à tín hiệu đầu ra cũng có trạng thái logic bằng 0. Có thể
reset bất cứ bộ Timer của S7 -200 bằng lệnh R (reset). Điều đó nói rằng khi dùng lệnh R cho T
-bít của một Timer, Timer đó sẽ được đưa về trạng thái ban đầu và lệnh R cho một Txx vừa xóa T
-word vừa xóa T -bít của Timer đó.
Có hai phương pháp để reset một Timer kiểu TON:
• Xóa tín hiệu đầu vào.
• Dùng lệnh R (reset).

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 41 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Dùng lệnh R là phương pháp duy nhất để reset các bộ Timer kiểu TONR. Đặt giá trị 0 cho giá
trị đếm tức thời của một Timer cũng không thể xóa T -bít của Timer đó. Cũng như vậy, khi đặt
một giá trị logic 0 cho T -bít của một Timer không thể xóa giá trị đếm tức thời của Timer đó. Cú
pháp reset một timer Txx bằng lệnh R là
R Txx K1
Chú ý rằng lệnh R thuộc nhóm lệnh có điều kiện.

2.15 Các lệnh điều khiển Counter


Counter là bộ đếm hiện chức năng đếm sườn xung trong S7 -2000. Các bộ đếm của S7 -2000
được chia ra làm 2 loại: bộ đếm tiến (CTU) và bộ đếm tiến /lùi (CTUD).
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ố sườn 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 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 bít đặc biệt của nó, được gọi là
C -bít. Trường hợp giá trị đếm tức thời nhỏ hơn giá trị đặt trước thì C -bít có giá trị logic là 0.
Khác với các bộ Counter, các bộ đếm CTU đề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 bít đầu tiên của ngăn xếp trong STL. Bộ đếm được
reset khi tín hiệu xóa này có mức logic là 1 hoặc khi lệnh R (reset) được thực hiện với C -bít. Khi
bộ đếm được reset, cả C -word và C -bít đều nhận giá trị 0.

Bộ đếm CTU của S7 -200

CU C-Bit
Giá trị đếm tức thời
C-word
PV
R

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 42 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
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, ký hiệu là CU
trong LAD hoặc bít thứ 3 của ngăn xếp trong STL, và đếm lùi khi gặp sườn của xung vào cổng
đếm lùi, được ký hiệu là CD trong LAD hoặc bít thứ 2 của ngăn xếp trong STL.
Giống như bộ đếm CTU, bộ đếm CTUD cũng được đưa về trạng thái khởi phát ban đầu
bằng 2 cách.
Khi đầu vào logic của chân xóa, ký hiệu bằng R trong LAD hoặc bít thứ nhất của ngăn xếp
trong STL, có giá trị logic là 1 hoặc,
Bằng lệnh R (reset) với C -bít của bộ đếm.
CTUD có giá trị đếm tức thời đúng bằng giá trị đang đếm và được lưu trong thanh ghi 2
byte C -word của bộ đếm. Giá trị đếm tức thời luôn được so sánh với giá trị đặt trước PV của bộ
đếm. Nếu giá trị đếm tức thời lớn hơn bằng bằng giá trị đặt trước thì C -bít có giá trị logic bằng 1.
Còn các trường hợp khác C -bít có giá trị logic bằng 0.
Bộ đếm CTUD của S7 -200

CU C-Bit

Giá trị đếm tức thời PV


C-word
CD
R

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 là 32.767
Các bộ đếm được đánh số từ 0 đến 127 (đới với CPU 226) và ký hiệu bằng Cxx, trong đó xx là
số thứ tự của bộ đếm. Ký hiệu Cxx đồng thời cũng là địa chỉ hình thức của C -word và của C -bít.
Mặc dù dùng địa chỉ hình thức, song C-word và C -bít vẫn được phân biệt với nhau nhờ kiểu lệnh
sử dụng làm việc với từ hay với tiếp điểm (bít).

 Lệnh khai báo sử dụng bộ đếm trong LAD như sau:


LAD Mô tả Toán hạng

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 43 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Khai báo bộ đếm tiến theo sườn Cxx:C0 ÷ C47
lên của CU. Khi giá trị đếm tức thời
C80 ÷ C127
CTU Cxx C -word Cxx lớn hơn hoặc bằng giá
trị đặt trước PV, C-bít (cxx) có giá
CU trị logic bằng 1. Bộ đếm được reset PV (word) :
khi đầu vào R có giá trị logic bằng VW , T, C, IW,
PV 1. Bộ đếm ngừng đếm khi C -word QW, MW, SMW,
Cxx đạt giá trị cực đại 32.767. AC,
R AIW, Hằng số,
*VD, *AC

Khi báo bộ đếm tiến /lùi, đếm Cxx : C48 ÷ C79


tiến theo sườn lên của CU và đếm
CTUD Cxx lùi theo sườn lên của CD. Khi giá
trị đếm tức thời C -word Cxx lớn PV
CU (word):VW,T , C ,
hơn hoặc bằng giá trị đặt trước PV,
C-bít (cxx) có giá trị logic bằng 1. IW, QW, MW,
PV SMW, AC,A IW,
Bộ đếm ngừng đếm tiến khi C
-word đạt giá trị cực đại 32.767 và Hằng số, *VD, *AC
R ngừg đếm lùi khi C -word đạt giá
trị cực tiểu 32.767 CTUD reset khi
đầu vào R có giá trị logic bằng 1.
Lệnh khai báo sử dụng bộ đếm trong STL như sau:
STL Mô tả Toán hạngT
Khai báo bộ đếm tiến theo sườn lên Cxx : C0 ÷ C47
cùa CU. Khi giá trị đếm tức thời C -word
C80 ÷ C127
lớn hơn hoặc bằng giá trị đặt trước n, C-
bít có giá trị logic bằng 1. Bộ đếm được
CTU Cxx n reset khi đầu ngăn xếp có giá trị logic n (word):VW , T ,
bằng 1. Bộ đếm ngừng đếm khi C -word C , IW , QW , MW,
đạt giá trị cực đại 32.767. SMW, AC, AIW,
Hằng số.
*VD, *AC
Khai báo bộ đếm tiến /lùi, đếm tiến Cxx: C48 ÷ C79
theo sườn lên của CU và đếm lùi theo

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 44 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
sườn lên của CD. Khi giá trị đếm tức thời n (word) : VW, T,
CTUD Cxx n C -word, Cxx lớn hơn hoặc bằng giá trị C, IW ,QW, MW,
đặt trước n, C-bít có giá trị logic bằng 1, SMW, AC, AIW,
bộ đếm ngừng đếm tiến khi C -word đạt Hằng số, *VD, *AC
giá trị cực đại 32.767 và ngừng đếm lùi
khi C -word đạt được giá trị cực tiểu
32.767 CTUD reset khi bít đầu của ngăn
xếp có giá trị logic bằng 1.

2.16 Các lệnh số học

a. Lệnh cộng (ADD)


Lệnh ADD _I
Là lệnh thực hiện phép cộng các số nguyên 16-bít IN1 và IN2.
Trong LAD kết quả là một số nguyên 16-bít được ghi vào OUT, tức là:
IN1 + IN2 = OUT.
Còn trong STL, kết quả cũng là một giá trị 16-bít nhưng được ghi vào IN2, tức là IN1 + IN2 =
IN2.
Lệnh ADD _DI:
Là lệnh thực hiện phép cộng các số nguyên 32-bít IN1 và IN2
Trong LAD, kết quả là một số nguyên 32-bít được ghi vào OUT, tức là:
IN1 + IN2 = OUT.
Còn trong STL, kết quả cũng là một giá trị 32-bít nhưng được ghi vào IN2, tức là IN1 + IN2 =
IN2.
Lệnh ADD _R:
Là lệnh thực hiện phép cộng các số thực 32-bít IN1 và IN2.
Trong LAD, kết quả là một số thực 32-bít được ghi vào OUT, tức là:
IN1 + IN2 = OUT.
Còn trong STL, kết quả cũng là một giá trị thực 32-bít nhưng được ghi vào IN2, tức là IN1 +
IN2 = IN2.
b. Lệnh trừ b (SUB):
Lệnh SUB _I:
Là lệnh thực hiện phép trừ các số nguyên 16-bít IN1 và IN2
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 45 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Trong LAD kết quả là một số nguyên 16-bít và được ghi vào OUT, tức là:
IN1 - IN2 = OUT.
Còn trong STL, kết quả là một giá trị 16-bít nhưng được ghi lại vào IN2, tức là IN1 - IN2 =
IN2.
Lệnh SUB -DI:
Là lệnh thực hiện phép trừ các số nguyên 32-bít IN1 và IN2
Trong LAD kết quả là một số nguyên 32-bít được ghi vào IN2, tức là:
IN1 - IN2 = IN2.
Còn trong STL, kết quả là một giá trị 32-bít nhưng được ghi lại vào IN2, tức là IN1 - IN2 =
IN2.
Lệnh SUB _R:
Là lệnh thực hiện phép trừ các số thực 32-bít IN1 và IN2
Trong LAD kết quả là một số thực 32-bít được ghi vào OUT, tức là:
IN1 - IN2 = OUT.
Trong STL, kết quả là một giá trị 32-bít nhưng được ghi lại vào IN2, tức là IN1 - IN2 = IN2.
Cú pháp dùng lệnh cộng và trừ trong LAD và STL như sau:

LAD STL
+I IN1
ADD I IN2
EN

IN1
IN2 OUT

-I IN1
SUB I IN2
EN

IN1
IN2 OUT

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 46 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
+ D IN1 IN2
ADD DI
EN

IN1
IN2 OUT

- D IN1 IN2
SUB DI
EN

IN1
IN2 OUT

+ R IN1 IN2
ADD R
EN

IN1
IN2 OUT

- R IN1 IN2
SUB R
EN

IN1
IN2 OUT

c. Lệnh nhân (MUL):


Lệnh MUL:
Trong LAD: Lệnh thực hiện phép nhân 2 số nguyên 16-bít IN1 và IN2 và cho ra kết quả 32-
bít chứa trong từ kép OUT (4 byte).
Trong STL: Lệnh thực hiện phép nhân giữa 2 số nguyên 16-bít n1 và số nguyên chứa trong từ
thấp (từ 0 đến bít 15) của toán hạng 32-bít n2 (4 byte). Kết quả 32-bít được ghi vào n2.
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 47 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Lệnh MUL _R:
Trong LAD: lệnh thực hiện phép nhân hai số thực 32-bít IN1 và IN2 và cho ra kết quả 32-bít
chứa trong từ kép OUT (4 byte).
Trong STL: Lệnh thực hiện phép nhân giữa số thực 32-bít được ghi vào IN2.
Cú pháp dùng lệnh trong LAD và STL như sau:
LAD STL
MUL n1 n2
MUL

EN

IN1
IN2 OUT

*R IN 1 IN2
MUL R

EN

IN1
IN2 OUT

d. Lệnh chia (DIV)


Trong LAD: Lệnh thực hiện phép chia số nguyên 16-bít IN1 cho số nguyên 16-bít IN2. Kết
quả 32-bít chứa trong từ kép OUT gồm thương số ghi trong mảng 16-bít từ bít 0 đến bít15 (từ
thấp) và phần dư cũng 16-bít ghi trong mảng từ bít -16 đến bít -31 (từ cao).
Trong STL: Lệnh thực hiện phép chia số nguyên 16-bít n1 cho số nguyên, số nguyên 16-bít
nằm trong từ thấp từ bít 0 đến bít 15 của toán hạng 32-bít n2. Kết quả 32-bít được ghi lại vào n2
bao gồm thương số ghi trong mảng 16-bít từ bít 0 đến bít 15 (từ thấp) và phần dư ghi trong mảng
16-bít từ bít -16 đến bít -31 (từ cao).
Lệnh DIV _R:
Trong LAD: lệnh thực hiện phép chia số thực 32-bít IN1 cho số thực 32-bít IN2 và cho ra kết
quả 32-bít chứa trong từ kép OUT.
Trong STL, lệnh thực hiện phép chia số thực 32-bít IN1 cho số thực 32-bít IN2, kết quả 32-bít
được ghi lại vào IN2.
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 48 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Cú pháp dùng lệnh chia hai số trong LAD và STL như sau:

LAD STL
DIV n1 n2
DIV
EN

IN1
IN2 OUT

/R n1 n2
DIV R
EN

IN1
IN2 OUT

e. Lệnh lấy căn bậc 2 (SQRT):


Là một lệnh thực hiện lấy căn bậc hai của số thực 32-bít IN. Kết quả cũng là một số 32-bít
được ghi vào từ kép OUT.

Cú pháp dùng lệnh lấy căn bậc hai của một số thực như sau:
LAD STL
SQRT IN OUT
SQRT
EN

IN OUT

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 49 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

2.13Các lệnh cộng trừ một đơn vị


a. Lệnh INC _B:
Là lệnh cộng số nguyên 1 vào nội dung của byte đầu vào.
Trong LAD: Kết quả được ghi vào OUT, tức là: IN1 + 1 = OUT.
Trong STL: Kết quả được ghi vào IN.
Cú pháp dùng lệnh INCW trong LAD và trong STL như sau:
LAD STL
INCW IN
INC B
EN

IN OUT

b. Lệnh INC _W
Lệnh cộng số nguyên 1 vào nội dung từ đơn In.
Trong LAD: Kết quả được ghi vào OUT.
Trong STL: Kết quả được ghi lại vào IN.

Cú pháp dùng lệnh INCW trong LAD và trong STL như sau:
LAD STL
INCW IN
INC W
EN

IN OUT

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 50 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

c. Lệnh INC _DW (DOUBLE WORD)


Là lệnh cộng số nguyên 1 vào nội dung từ kép IN
Trong LAD: Kết quả được ghi vào OUT, tức là: IN + 1 = OUT
Trong STL: Kết quả được ghi vào IN, tức là: IN + 1 = IN
Cú pháp dùng lệnh INCD trong LAD và trong STL như sau:
LAD STL
INCD IN
INC DW
EN

IN OUT

d. Lệnh DEC _B
Là lệnh bớt nội dung của byte đầu vào đi 1 đơn vị.
Trong LAD: Kết quả được ghi vào OUT, tức là: IN - 1 = OUT
Trong STL: Kết quả được ghi vào IN, tức là: IN - 1 = IN

Cú pháp dùng lệnh DECW trong STL và DEC _W trong LAD như sau:
LAD STL
DECB IN
DEC B
EN

IN OUT

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 51 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
e. Lệnh DEC _W
Là lệnh bớt nội dung IN đi 1 đơn vị.
Trong LAD: Kết quả được ghi vào OUT, tức là: IN - 1 = OUT
Trong STL: Kết quả được ghi vào IN, tức là: IN - 1 = IN
Cú pháp dùng lệnh DECW trong STL và DEC _W trong LAD như sau:
LAD STL
DECW IN
INC W
EN

IN OUT

f. Lệnh DEC _DW


Là lệnh giảm nội dung từ kép IN đi 1 đơn vị.
Trong LAD: Kết quả được ghi vào OUT, tức là: IN - 1 = OUT
Trong STL: Kết quả được ghi vào IN, tức là: IN - 1 = I

Cú pháp dùng lệnh DECDW trong STL hay DEC _DW trong LAD như sau:

LAD STL

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 52 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
DECD IN
INC DW
EN

IN OUT

2.14Các lệnh dịch chuyển nội dung ô nhớ


Các lệnh dịch chuyển nội dung ô nhớ thực hiện việc di chuyển hoặc sao chép số liệu từ
vùng này sang vùng khác trong bộ nhớ.
Trong LAD hay trong STL lệnh dịch chuyển thực hiện việc di chuyển hay sao chép nội
dung của một byte, một từ đơn, một từ kép hoặc một giá trị thực từ vùng này sang vùng khác
trong bộ nhớ.
a. Lệnh MOV _B
Là lệnh sao chép nội dung của byte IN sang byte OUT.
Cú pháp dùng lệnh MOV _B trong LAD hay MOVB trong STL như sau:
LAD STL
MOVB IN OUT
MOV B
EN

IN OUT

b. Lệnh MOV _W
Là lệnh sao chép nội dung của từ đơn IN sang từ đơn OUT.

Cú pháp dùng lệnh MOVW trong STL hay MOV _W trong LAD như sau:
LAD STL

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 53 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
MOVW IN OUT
MOV W
EN

IN OUT

c. Lệnh MOV _DW


Là lệnh sao chép nội dung của từ kép IN sang từ kép OUT.
Cú pháp dùng lệnh MOVD trong STL hay MOV _DW trong LAD như sau:
LAD STL
MOVD IN OUT
MOV DW
EN

IN OUT

d. Lệnh MOV _R
Là lệnh sao chép một số thực từ IN (4 byte) sang OUT (4 byte).
Cú pháp dùng lệnh MOV _R trong LAD hay MOVR trong STL:
LAD STL
MOVR IN OUT
MOV R
EN

IN OUT

e. Lệnh SWAP
Là lệnh trao đổi nội dung của Byte thấp và Byte cao trong nội dung từ đơn IN
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 54 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Cú pháp dùng lệnh SWAP trong LAD hay trong STL như sau:
LAD STL
SWAP IN

SWAP
EN

IN OUT

2.15Các lệnh dịch chuyển thanh ghi


Các lệnh dịch chuyển thanh ghi được chia làm hai nhóm:
• Nhóm các lệnh làm việc với thanh ghi có độ dài bằng một từ đơn (16-bít) hay một từ kép
(32-bít).
• Nhóm các lệnh làm việc với thanh ghi có độ dài tùy ý mà được định nghĩa trong lệnh.
Nhóm lệnh với thanh ghi có độ dài 16 hoặc 32 bít.
Lệnh dịch chuyển thuộc nhóm này cho phép dịch chuyển và quay các bít trong các từ đơn và
trong các từ kép.
Số lần dịch chuyển các bít của từ đơn hay từ kép được chỉ thị bằng một toán hạng trong được
gọi là số lần đếm đẩy.
Số lần quay các bít của từ đơn hay từ kép cũng được chỉ thị bằng một toán hạng trong lệnh,
được gọi là số lần đếm quay.
Khi sử dụng các lệnh dịch chuyển các bít của từ đơn hay từ kép cần chú ý:
Sẽ không thực hiện việc dịch chuyển nếu như số đếm lần đẩy bằng 0.
Nếu số lần đẩy có giá trị lớn hơn 0, bít nhớ tràn SM1.1 có giá trị logic của bít cuối cùng được
đẩy ra.
Nếu số đếm lần đẩy lớn hơn hoặc bằng 16 (từ đơn), lớn hơn hoặc bằng 32 (từ kép) khi dịch
chuyển thì lệnh sẽ chỉ thực hiện với số đếm lần đẩy lớn nhất là 16 hoặc 32.
Lệnh SRW (đẩy các bít từ đơn sang phải) và SDR (đẩy các bít từ kép sang phải) sẽ chuyển giá
trị 0 vào bít cao nhất của từ hoặc từ kép tại mỗi lần đẩy. Sau khi thực hiện lệnh, bít SM1.1 sẽ có
giá trị ủa bít thứ N -1 của từ đơn hoặc từ kép với N là số lần đẩy.

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 55 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Lệnh SLW (đẩy các bít từ đơn sang trái) và SRD (đẩy các bít từ kép sang trái) sẽ chuyển giá
trị logic 0 vào bít thấp nhất của từ hoặc từ kép tại mỗi lần đẩy. Sau khi thực hiện lệnh, bít SM1.1
sẽ có giá trị của bít thứ 16-N đối với từ đơn hoặc 32-N đối với từ kép, trong đó N là số lần đẩy.
Bít báo kết quả 0 (bít SM1.0) sẽ có giá trị logic bằng 1 nếu như sau khi thực hiện lệnh đẩy nội
dung của từ đơn hay từ kép bằng 0.
Khi sử dụng lệnh quay các bít của từ đơn hay từ kép cần chú ý:
Lệnh quay thực hiện phép đẩy vòng tròn sang trái hay phải các bít của một từ đơn hoặc của
một từ kép. Tại mỗi lần quay, giá trị logic của bít bị đẩy ra khỏi đầu này cũng là giá trị logic được
đưa vào đầu kia của từ hay của từ kép.
Lệnh quay sẽ không thực hiện nếu như số đếm lần quay có giá trị là 0 hay bằng bội số của 16
(với từ đơn) hoặc 32 (với từ kép).
Đối với các giá trị khác của số đếm lần quay lớn hơn 16 (đối với từ đơn) hoặc 32 (đối với từ
kép), lệnh sẽ thực hiện với số đếm lần quay mới bằng phần dư của số đếm lần quay cũ chia cho
16 hoặc chia cho 32.
Khi thực hiện lệnh quay sang phải RRW (với từ đơn) hay RRD (với từ kép), tại mỗi lần quay
giá trị thấp nhất trong từ hoặc từ kép được ghi vào bít báo tràn SM1.1. Sau khi lệnh được thực
hiện xong bít SM1.1 sẽ có giá trị logic bít 16-N của từ đơn hoặc 32-N của từ kép, trong đó N là số
đếm lần quay.
Khi thực hiện lệnh quay sang trái RLW (với từ đơn) hay RLD (với từ kép) tại mỗi lần quay,
giá trị logic của bít cao nhất trong từ hoặc từ kép được ghi vào bít báo tràn SM1.1. Sau khi lệnh
được thực hiện xon bít SM1.1 sẽ có giá trị logic bít thứ N -1 trong từ đơn hoặc từ kép, trong đó N
là số đếm lần quay (mới).
Bít báo kết quả 0 (bít SM1.0) sẽ có giá trị logic 1 nếu từ hay từ kép được quay có giá trị bằng
0.
a. Lệnh SHR _R:
Là lệnh dịch chuyển các bít của từ đơn IN sang phải N vị trí, trong đó N được gọi là số đếm
lần dịch chuyển. Tại mỗi lần dịch chuyển, giá trị logic 0 được đưa vào bít cao (bít thứ 15) và giá
trị logic của bít thấp (bít 0) được chuyển vào bít báo tràn SM1.1.
Trong LAD kết quả được ghi vào OUT, còn trong STL kết quả vẫn nằm trong IN.

Cú pháp của lệnh như sau:

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 56 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
LAD STL

SHR W SRW IN N
EN

IN OUT
N

b. Lệnh SHLb _W:


Là lệnh dịch chuyển các bít của từ đơn IN sang trái n vị trí, trong đó N được gọi là số đếm
lần dịch chuyển. Tại mỗi lần dịch chuyển, giá trị logic 0 được đưa vào bít thấp (bít 0) và giá trị
logic của bít cao (bít thứ 15) được chuyển vào bít báo tràn SM1.1. Trong LAD kết quả được ghi
vào từ OUT, còn trong STL kết quả vẫn nằm trong IN.
Cú pháp dùng lệnh này như sau:
LAD STL

SHL W SLW IN N
EN

IN OUT
N

c. Lệnh SHR _DW:


Là lệnh dịch chuyển các bít của từ kép IN sang phải N vị trí với N là số đếm lần dịch
chuyển. Tại mỗi lần dịch chuyển, giá trị logic 0 được đưa vào bít cao (bít thứ 31) và giá trị của bít
thấp (bít 0) được chuyển vào bít báo tràn SM1.1. Trong LAD kết quả được ghi vào từ kép OUT,
còn trong STL kết quả vẫn nằm trong IN.

Cú pháp dùng lệnh dịch chuyển này như sau:


LAD STL
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 57 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

SHR DW SRD IN N
EN

IN OUT
N

d. Lệnh SHLd _DW:


Là lệnh dịch chuyển các bít của từ kép IN sang trái N vị trí, trong N được gọi là số đếm lần
dịch chuyển. Tại mỗi lần dịch chuyển, giá trị logic 0 được đưa vào bít thấp (bit 0) và giá trị logic
của bít cao (bít 31) được chuyển vào bít báo tràn SM1.1
Trong LAD kết quả được ghi vào từ kép OUT.
Trong STL kết quả vẫn nằm trong IN.
Cú pháp của lệnh này như sau:
LAD STL

SHL DW SLD IN N
EN

IN OUT
N

e. Lệnh ROR _W:


Là lệnh quay các bít của từ đơn IN sang phải N lần, với N được gọi là số đếm lần quay. Tại
mỗi lần quay, giá trị logic của bít thấp (bít 0) được chuyển vào bít báo tràn SM1.1 vừa được ghi
lại vào bít cao (bít 15) của từ IN.
Trong LAD kết quả được ghi vào từ OUT.
Trong STL kết quả vẫn nằm trong IN.
Cú pháp của lệnh này như sau:

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 58 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
LAD STL

ROR W RRW IN N
EN

IN OUT
N

f. Lệnh ROR _DW


Là lệnh quay các bít của từ kép IN sang phải N lần, trong đó N được gọi là số lần quay. Tại
mỗi lần quay, giá trị logic của bít thấp (bít 0) vừa được chuyển vào bít báo tràn SM1.1 vừa được
chuyển vào bít cao (bít 31) của từ kép IN. Trong LAD kết quả được ghi vào từ OUT. Còn trong
STL kết quả vẫn nằm trong IN.
Cú pháp dùng lệnh này như sau:
LAD STL

ROR DW RRD IN N
EN

IN OUT
N

g. Lệnh ROL -W:


Là lệnh quay các bít của từ đơn IN sang trái N lần với N là số đếm lần quay. Tại mỗi lần quay,
giá trị logic của bít cao (bít 15) vừa được chuyển vào bít báo tràn SM1.1 vừa được ghi lại vào bít
thấp của từ IN.
Trong LAD kết quả được ghi vào từ OUT.
Trong STL kết quả vẫn nằm trong IN

Cú pháp dùng lệnh này như sau:


===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 59 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
LAD STL

ROL W RLW IN N
EN

IN OUT
N

h. Lệnh ROL -DW


Là lệnh quay các bít của từ kép IN sang trái N lần, trong đó N được gọi là số đếm lần quay.
Tại mỗi lần quay, giá trị logic của bít cao (bít 31) vừa được chuyển vào bít báo tràn SM1.1 vừa
được ghi lại vào bít thấp (bít 0) của từ kép IN.
Trong LAD kết quả được ghi vào từ OUT.
Trong STL kết quả vẫn nằm trong IN
Cú pháp dùng lệnh này như sau:
LAD STL

ROL DW RLD IN N
EN

IN OUT
N

2.16Hàm đổi dữ liệu tương ứng thanh ghi 7 nét


Hàm SEG chuyển đổi số nguyên hệ cơ số Hexa trong khoảng 0 H F sang thành giá trị bit
tương ứng của thanh ghi 7 nét .
Hàm SEG lập giá trị các bit của thanh ghi 7 nét tương ứng với nội dung của 4 bit thấp của byte
đấu vào IN. Kết quả được ghi cào byte đầu ra OUT

Sơ đồ các bit của thanh ghi 7 nét


Số Thanh ghi 7 nét

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 60 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
nguyên - g f e d c b a
0 0 0 1 1 1 1 1 1 a
1 0 0 0 0 0 1 1 0
f b
2 0 1 0 1 1 0 1 1 g

3 0 1 0 0 1 1 1 1 c
e
4 0 1 1 0 0 1 1 0
d
5 0 1 1 0 1 1 0 1
6 0 1 1 1 1 1 1
7 0 0 0 0 0 1 1 1
8 0 1 1 1 1 1 1 1
9 0 1 1 0 0 1 1 1
A 0 1 1 1 0 1 1 1
B 0 1 1 1 1 1 0 0
C 0 0 1 1 1 0 0 1
D 0 1 0 1 1 1 1 0
E 0 1 1 1 1 0 0 1
F 0 1 1 1 0 0 0 1

LAD STL Toán hạng

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 61 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
IN (Byte) :VB, IB, QB,
ENCO IN OUT MB, SMB, AC, *VD, *AC,
SEG
hằng số
EN

IN OUT OUT(byte): VB, IB, QB,


MB, SMB, AC, *VD, *AC

3.15 Đồng hồ thời gian thực


Đồng hồ tời gian thực chỉ có ở CPU226. Để có thể làm việc với đồng hồ thời gian thực
CPU226cung cấp hai lệnh đọc và ghi giá trị cho đồng hồ . Những giá trị đọc được hoặc ghi
được với đồng hồ thời gian thực là các giá trị về ngày, thánh, năm, và các giá trị giờ, phúc,
giây .Các dữ liệu đọc, ghi với đồng hồ thời gian thực trong LAD và trong STL có độ dài một
byte và phải được mã hóa theo kiểu số nhị phân BCD .

Byte 0 Năm ( 0 ÷ 99)


Byte 1 Tháng (0 ÷ 12)
Byte 2 Ngày (0 ÷ 31)
Byte 3 Giờ (0 ÷ 23)
Byte 4 Phúc (0 ÷ 59)
Byte 5 Giây (0 ÷ 59)
Byte 6 0
Byte 7 0 ngày trong tuần
Các dữ liệu hợp lệ là:
Năm Tháng Ngày Giờ Phút Giây
(yy) (mm) (dd) (hh) (mm) (ss)
0 ÷ 99 1 ÷ 12 1 ÷ 31 0 ÷ 23 0 ÷ 59 0 ÷ 59

Riêng giá trị về ngày trong tuần là một số tương ứng với nội dung của nibble (4 bit) thấp
trong byte theo kiểu:
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 62 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Chủ Thứ Thứ Thứ Thứ Thứ Thứ
nhật hai máy tư năm sáu bảy
biến áp
1 2 3 4 5 6 7

READ_RTC (LAD)
TODR (STL)
Lệnh đọc nội dung của đồng hồ thời gian thực với bộ đệm 8 byte được chỉ thị trong lệnh bằng
toán hạng T.
SET_RTC (LAD)
TODW (STL )
Lệnh ghi nội của bộ đệm 8 byte được chỉ thị trong lệnh bằng toán hạng T vào đồng hồ thời
gian thực .
Cú pháp sử dụng lệnh đọc, ghi dữ liệu với đồng hồ thời gian thực trong LAD, STL:
LAD STL Toán hạng
TODR T
READ RTC
EN T(byte) : VB , IB ,
QB , MB , SMB ,
*VD , *AC
T

TODW T
SET RTC
EN

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

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 63 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
gọi chương trình xử lý ngắt, các lệnh làn 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 lệnh.

3.16 Tổng quan về họ PLC S7-200 của hãng Siemens:

Có hai series: 21x (loại cũ không còn sản xuất nữa) và 22x (loại mới). Về mặt tính
năng thì loại mới có ưu điểm hơn nhiều. Bao gồm các loại CPU sau: 221, 222,
224, 224XP, 226, 226XM trong đó CPU 224XP có hỗ trợ analog 2I/1O onboard và 2
port truyền thông.

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 64 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Bảng 2.2: Các loại CPU S7-200

Bảng 2.3: So sánh các thông số và đặc điểm kỹ thuật của series 22x

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 65 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Bảng 2.4: Mã số và các thông số về điện áp nguồn và I/O

Bảng 2.5: Các thông số về công suất tiêu thụ và dòng điện I/O

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 66 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
3.17 Cấu trúc phần cứng của S7-200:
3.17.1 . Hình dáng bên ngoài:
1. Các đèn trạng thái:
• Đèn RUN-màu xanh: Chỉ định PLC ở 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ỉ định PLC ở chế độ STOP, dừng chương trình đang thực
hiện lại (các đầu ra đều ở chế độ off).
• Đèn SF-màu đỏ, đèn báo hiệu hệ thống bị hỏng có nghĩa là lỗi phần cứng hoặc hệ
điều hành. Ở đây cần phân biệt rõ lỗi hệ thống với lỗi chương trình người dùng, khi lỗi
chương trình người dùng thì CPU không thể nhận biết được vì trước khi download
xuống CPU, phần mềm lập trình đã làm nhiệm vụ kiểm tra
trước khi dịch sang mã máy.

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 67 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

Hình 2.3: CPU S7-200 module

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 68 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
• Đèn Ix.x-màu xanh: Chỉ định trạng thái On/Off của đầu vào số.
• Đèn Qx.x-màu xanh: Chỉ định trạng thái On/Off của đầu vào số.
• Port truyền thông nối tiếp: RS 485 protocol, 9 chân sử dụng cho việc
phối ghép với PC, PG, TD200, TD200C, OP, mạng biến tần, mạng công
nghiệp.

Tốc độ truyền - nhận dữ liệu theo kiểu PPI ở tốc độ chuẩn là 9600 baud.
Tốc độ truyền - nhận dữ liệu theo kiểu Freeport là 300 ÷ 38400 baud.

Hình 2.4: Cấu trúc của port RS 485

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 69 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

Bảng 2.6: Mô tả chức năng của các chân của port RS 485

2. Công tắc chọn chế độ:


• Công tắc chọn chế độ RUN: Cho phép PLC thực hiện chương trình, khi
chương trình gặp lỗi hoặc gặp lệnh STOP thì PLC sẽ tự động chuyển sang chế
độ STOP mặc dù công tắc vẫn ở chế độ RUN (nên quan sát đèn trạng thái).
• Công tắc chọn chế độ STOP: Khi chuyển sang chế độ STOP, dừng cưỡng bức
chương trình đang chạy, các tín hiệu ra lúc này đều về off.
• Công tắc chọn chế độ TERM: cho phép người vận hành chọn một trong hai chế
độ RUN/STOP từ xa, ngoài ra ở chế độ này được dùng để download chương trình
người dùng.
3. Vít chỉnh định tương tự: Mỗi CPU có từ 1 đến 2 vít chỉnh định tương tự, có thể xoay
được một góc 270°, dùng để thay đổi giá trị của biến sử dụng trong chương trình.
4. Pin và nguồn nuôi bộ nhớ: Sử dụng tụ vạn năng và pin. Khi năng lượng của tụ bị cạn
kiệt PLC sẽ tự động chuyển sang sử dụng năng lượng từ pin.
3.17.2 . Giao tiếp với thiết bị ngoại vi:
a) Thiết bị lập trình loại PGxx được trang bị sẵn phần mềm lập trình, chỉ lập trình được với
ngôn ngữ STL.
b) Máy tính PC: Hệ điều hành Win 95/98/ME/2000/NT4.x.
Trên đó có cài đặt phần mềm Step7 Micro/Win 32 và Step7 Micro/Dos. Hiện nay hầu hết sử
dụng Step7 Mcro/Win 32 version 3.0, 3.2, 4.0. V4.0 cho phép người lập trình có thể xem được
giá trị, trạng thái cũng như đồ thị của các biến. Nhưng chỉ sử dụng được trên máy tính có cài
đặt hệ điều hành Window 2000/ WinNT và PLC loại version mới nhất hiện nay. Sau đây là
cách cài đặt và giao tiếp giữa PC-PLC:

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 70 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

Hình 2.6: Cài đặt phần mềm STEP7 trên Window 95/98/ME/2000/NT

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 71 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
Sau khi thực hiện xong, trên màn hình sẽ xuất hiện:
Sau khi đã tiến hành lắp đặt phần cứng xong, ta tiến hành thiết lập truyền thông giữa PC/PG
với PLC. Đó là thiết lập tốc độ, số bit dữ liệu truyền/nhận, bit chẵn lẽ, cổng COM, địa chỉ
PLC, thời gian Time out... được tiến hành như sau:

Hình 2.8: Thiết lập kết nối giữa PC/PG tới PLC

1. Kích chuột vào biểu tượng Communications trên Group bar.


2. Kiểm tra việc thiết lập truyền thông.
3. Kích double vào biểu tượng Refresh để dò tìm địa chỉ và các thông số
của PLC.
4. Nếu không nhận được phản hồi từ PLC hoặc Window vẫn không thiết lập được
===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 72 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
truyền thông thì kích vào Set PG/PC interface sau đó kích double vào PC/PPI cable.
5. Đánh dấu vào PC/PPI cable và chọn properties...
6. Vào PPI/Addres đặt địa chỉ 2 (địa chỉ mặc định) và tốc độ truyền là 9.6 kbps.
Vào Local connection/ connnection to chọn port kết nối (COM1/COM2/USB),
chấp nhận việc lựa chon này bằng nút OK.

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 73 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================
7. Vào kích double biểu tượng Refresf lần nữa để xem sự kết nối giữa PC
và PLC.
c) Giao tiếp với mạng công nghiệp:
• Nếu là mạng PPI thì chỉ cần đầu nối và nối trực tiếp vào Port truyền thông của
CPU.
• Nếu là mạng Profibus - DP phải có thêm modul EM 277.
• Nếu là mạng Ethernet hoặc internet phải có thêm modul CP 243-1/ CP 243-
1IT.
• Nếu là mạng AS-I phải có thêm modul CP 243-2.
• Ngoài ra còn có thêm TD200 (Text Display) dùng để hiển thị và thông báo
bằng text, có thể điều chỉnh trực tiếp giá trị của biến trong chương trình người
dùng, đóng vai trò như một panel vận hành.
TP070 loại này là Touch panel, được thiết kế đặc biệt cho S7-200, có chức năng như
HMI (Human Mechanical Interface).
Tip!: Gói phần mềm STEP 7 Micro/Win32 V3.x cũng được chia ra nhiều modul. Modul
chính dùng để thực hiện nhữnh chức năng cơ bản, một số modul chuyên dụng như: USS hay
Modbus, S7-200 Toolbox: TP_Desinger cho OP 070 (để cấu hình cho TO 070),
Microcomputing limited, ActiveX components để hỗ trợ việc truyền thông giữa PC với PLC
qua các ngôn lập trình khác. S7-200 OPC server for random OPC clients cũng sủ dụng cho
việc truy xuất dữ liệu với S7-200.
3.17.3 Giao tiếp giữa sensor và cơ cấu chấp hành:
S7-200 có hai loại cơ bản:
AC/DC/RLY_loại này điện áp nguồn cung cấp từ 85 ÷ 264VAC, tần số 47 ÷ 63 Hz;
Điện áp vào: có nguồn cung cấp điện áp chuẩn cho sensor là 24VDC.
Điện áp ra: loại này sử dụng nguồn điện ngoài, có thể là DC hoặc AC nhưng không vượt
quá 220V. Nếu sử dụng đối với những thiết bị tiêu thụ có công suất bé khoảng chừng vài
Woat thì có thể lấy trực tiếp nguồn của cảm biến.
Sau đây là thí dụ về mạch điện giao tiếp giữa PLC với cảm biến và cơ cấu chấp hành là
động cơ 1 chiều có đảo chiều quay.

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 74 KHOA ĐIỆN TỬ

Khảo sát, ứng dụng PLC S7-200. Thiết kế thi công lắp ráp mô hình đóng mở cửa tự động
=====================================================================

Hình 2.9: Sơ đồ mạch điện giao tiếp giữa CPU 221 loại
AC/DC/RLY và cơ cấu chấp hành

===============================================================
GVHD: BÙI THU HÀ SVTH : Nguyễn Tiền Hải
Bùi Thi Đào
Trần Đình Hà
Bùi Thi Dung
Nguyễn Văn Cảnh
LUẬN VĂN TỐT NGHIỆP 17 KHOA ĐIỆN TỬ

Khảo sát - Ứng dụng PLC S7 -200. Thiết kế mô hình chạy chữ dùng PLC S7-200

Hình 2.10: Sơ đồ mạch giao tiếp giữa CPU 226AC/DC/RLY


với sensor và cơ cấu chấp
hành

Hình 2.11: Sơ đồ mạch giao tiếp giữa CPU 226DC/DC/DC


với sensor và cơ cấu chấp hành

DC/DC/DC_Nguồn nuôi
24VDC.
Nguồn nuôi cảm biến 24VDC.
Đầu ra Transitor hở colector nguồn cung cấp 24VDC.

757575757575

GVHD :Hà Thị Kim Duyên SVTH: Nguyễn Quốc Việt


Lương Thị Hảo
Hoàng Tiến Nam

You might also like