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 63 (đối với CPU212) hoặc từ0 đến 127 
(đới với CPU 214) 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).
                
              
                                            
                                
            
 
            
                 41 trang
41 trang | 
Chia sẻ: banmai | Lượt xem: 2287 | Lượt tải: 3 
              
            Bạn đang xem trước 20 trang tài liệu Thiết kế thay thế hệ thống điều khiển role có sử dụng bộ PLC, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Trang 
56
THIẾT KẾ THAY THẾ HỆ THỐNG ĐIỀU KHIỂN RƠLE CO SỬ 
DỤNG BỘ PLC 
I - VẤN ĐỀ NÂNG CẤP ĐIỀU KHIỂN CHO CẦU TRỤC: 
 Để khắc phục các nhược điểm của hệ điều khiển bằng rơle, nâng cao mức 
độ an toàn, độ tin cậy, chính xác khi lam việc, ta thay thế các tiếp điểm rơle ở 
mạch lực bằng các van bán dẫn công suất lớn và ứng dụng bộ khả lập trình 
PLC để điều khiển hoạt động của cầu trục. 
 I -1 Lý do sử dụng các phần tử không tiếp điểm (Thyristor) là vì nó có 
những ưu điểm hơn hẳn so với hệ điều khiển rơle: 
- Hệ đơn giản 
- Thảo mãn yêu cầu về kỹ thuật 
- Dễ vận hành 
- Độ nhậy cao 
- Kích thước và trọng lượng nhỏ 
- Đóng mở an toàn và tin cậy 
- Không phát sinh hồ quang 
- Chịu được tần số đóng cắt lớn 
- Có tuổi thọ cao. 
 * Đối với hệ dùng tiếp điểm thì khối lượng công tắc tơ và tiếp điểm là khá 
lớn nên rất cồng kềnh, phức tạp: 
 I -2 Lý do sử dụng bộ điều khiển khả lập trình PLC 
- Chuẩn bị vào hoạt động nhanh: Thiết kế module cho phép thích nghi 
đơn giản với bất kỳ mọi chức năng điều khiển. Khi bộ điều khiển và các phụ 
kiện đã được lắp ghép thì bộ PLC sẵn sàng vào tư thế làm việc ngay 
- Độ tin cậy cao 
- Dễ dang thay đổi và soạn thảo chương trình: Những thay đổi cần thiết 
cả ở khi bắt đầu khởi động hoặc những lúc tiếp sau đều có thể thực hiện dễ 
dàng mà không cần có bất kỳ một thao tác nào ở phần cứng. 
 - Xử lý dữ liệu tự động 
- Tiết kiệm không gian: PLC đòi hỏi ít không gian hơn so với hệ điều 
khiển Relay tương đương. 
Trang 
57
 - Sự cải biến thuận lợi: Những bộ điều khiển nếu chỉ muốn cải biến 1 phần 
nhỏ trong dãy chức năng, có thể được tái tạo 1 cách đơn giản bằng sao chép, 
cải biên hoặc thêm vào những phần mới. Những phần, trong chương trình, 
vẫn sẵn sàng sử dụng được thì vẫn được dùng lại không cần thay đổi gì. So 
với kỹ thuật Relay, ở đây có thể giảm phần lớn tổng thời gian lắp ráp bởi vì 
có thể lập trình các chức năng điều khiển trước hoặc trong khi lắp ráp bảng 
điều khiển. 
 - Khả năng tái tạo 
- Nhiều chức năng: Người ta thường dùng PLC cho tự động hoá linh hoạt 
bởi vì dễ dàng thuận tiện trong tính toán , so sánh các giá trị tương quan, thay đổi 
chương trình và thay đổi các thông số. 
- Từ đó ta có thể rút ra ưu điểm của PLC như sau: 
 + Thời gian lắp đặt ngắn 
+ Dễ dàng thay đổi thiết kế mà không gây tổn thất 
+ Dễ dàng thay đổi thiết kế bằng phần mền 
+ ứng dụng điều khiển phạm vi rộng 
+ Dễ dàng bảo chì bảo hành nhờ khả năng tín hiệu hoá và lưu giữ mã lỗi 
+Độ tin cậy cao 
+ Chuẩn hoá được phần cứng 
+ Thích ứng với môi trường khắc nghiệt 
+ Thích ứng với sản xuất linh hoạt 
+Kích thước nhỏ 
II - THIẾT KẾ BỘ ĐIỀU KHIỂN PLC 
 II -1 – Tổng quan về PLC 
 II.1 - 1- Khái niệm chung: 
 PLC ( Programmable Logic Controller ) là bộ điều khiển logic khả lập 
trình và cũng còn gọi là PC ( Programmable Controller ). 
 Bản chất: PLC là một máy tính công nghiệp đặt tại nơi sản xuất, chương 
trình điều khiển do người lập trình nạp vào bộ nhớ của PLC để thực hiện các 
quá trình điều khiển. So với các phần tử logic thông thường thì các phần tử 
logic trong PLC được định nghĩa bằng chương trình . PLC thực chất là sự 
module hoá của bộ điều khiển bằng vi mạch ( IC - Intergrated Current ) .Về 
mặt kiến trúc PLC được thiết kế dựa trên những nguyên tắc của kiến trúc máy 
tính . 
Trang 
58
 Đặc điểm của PLC 
 - Logic các quá trình điều khiển được thực hiện bằng chương trình. 
 - Độ mềm dẻo cao . 
 - Tốc độ xử lý của PLC khá cao. 
 - Năng lượng tổn hao nhỏ. 
 - Dễ dàng sử dụng , dễ dàng ghép nối . 
- Việc lập trình tương đối đơn giản nhờ sự trợ giúp của thiết bị lập trình 
hoặc các phần mềm lập trình chuyên dụng . 
 II.1-2 Thiết bị điều khiển logic khả trình S7-200. 
 1 - Cấu hình cứng 
 S7-200 là thiết bị điều khiển logic lập trình được loại nhỏ của hãng 
Siemens (CHLB Đức ) có cấu trúc theo kiểu module và có các module mở 
rộng. Các module này được sử dụng cho những ứ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ý CPU212 hoặc CPU214. Về 
hình thức bên ngoài , sự khác nhau của 2 loại CPU này nhận biết được nhờ số 
đầu vào/ra và nguồn cung cấp. 
• CPU 212 có 8 cổng vào và 6 cổng ra có khả năng mở rộng bằng 2 module 
mở rộng 
• CPU 214 có 14 cổng vào và 10 cổng ra có khả năng mở rộng thêm 7 
module mở rộng. 
Hình 4.1 - Mô hình cấu hình cứng 
CPU212 bao gồm : 
Trang 
59
 + 512 từ đơn (word) tức là 1K byte để lưu chương trình thuộc miền bộ nhớ 
đọc\ghi được và không mất dữ liệu nhờ có giao diện với EEPROM. Vùng nhớ 
với tính chất như vậy được gọi là non-rolatile. 
 + 512 từ đơn để lưu dữ liệu trong đó có 100 từ nhớ đọc\ghi thuộc miền 
non-rolatile. 
 + 8 cổng vào logic và 6 cổng ra logic. 
 + Có thể ghép nối thêm 2 module mở rộng số cổng vào\ ra bao gồm cả 
module tương tự (analog) 
 +Tổng số cổng logic vào\ra cực đại là 64 cổng vào và 64 cổng ra. 
 + 64 bộ tạo thời gian trễ (timer) trong đó 2 Timer có độ phân giải 1 ms và 8 
Timer có độ phân giải 10 ms và 54 Timer có độ phân giải 100 ms 
 +64 bộ đếm (couter)chia làm 2 loại: loại bộ đếm chỉ đếm tiến loại bộ đếm 
vừa đếm tiến vừa đếm lùi 
 + 368 bit nhớ đặc biệt, sử dụng làm các bít trạng thái hoặc các bit đặt chế độ 
làm việc 
 + Có các chế độ ngắt và sử lý tín hiệu ngắt khác nhau bao gồm: ngắt truyền 
thông, ngắt sườn lên hoặc sườn xuống, ngắt theo thời gian và ngắt báo hiệu 
của bộ đếm tốc độ cao 
 + Bộ đếm không bị mất dữ liệu trong khoảng thời gian 50 giờ khi PLC mất 
nguồn nuôi. 
CPU214 bao gồm : 
 + CPU-214 bao gồm 14 ngõ vào và 10 ngõ ra, có khả năng thêm 7 modul 
mở rộng. 
 + 2.048 từ đơn (4 Kbyte) thuộc miền nhớ đọc / ghi non-volatile để lưu 
chương trình (vùng nhớ có giao diện với 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. 
Trang 
60
 + 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. 
 + Bộ đếm tốc độ cao với nhịp 2Khz và 7 Khz. 
 + Bộ phát xung nhanh cho dãy xung kiểu PTO hoặc kiểu PWM. 
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. 
Cấu hình cứng của PLC S7-200 bao gồm: 
Trong đó: 
• Nguồn cung cấp ( Power Supply ) Tạo ra nguồn 5VDC hoặc 24VDC tuỳ 
theo các họ PLC, thường là 24VDC (120mA tối đa) 
• Bộ xử lý trung tâm CPU ( Central Proccessing Unit ) CPU thực hiện các 
nhiệm vụ điều khiển trung tâm, các thành phần của nó bao gồm : 
lập trình chuyên dụng 
• Module vào/ra ( I/O ): Tuỳ theo các loại PLC mà số lượng đầu vào ra 
khác nhau Giao tiếp với module vào/ra có thể là dạng: Digital , Analog hoặc 
giao tiếp đặc biệt... 
• Module giao diện : ghép nối thêm với PLC . 
• Các module mở rộng : Tuỳ theo các hệ điều khiển yêu cầu mà ta ghép 
thêm các module mở rộng ( module vào/ra , EPROM module...) 
 Tất cảt hệ thống này chuyển vào các giá đỡ để gá lắp các module cùng hệ 
thống BUS địa chỉ , BUS số liệu , BUS điều khiển và BUS nguồn cung cấp . 
 KHỐI VÀO 
 CPU 
 KHỐI RA 
NGUỒN 
Tín hiệu vào Tín hiệu ra
Trang 
61
Hoạt động của CPU 
 Khi PLC được cấp nguồn , hoạt động của nó được khởi động theo các chế 
độ khởi động cứng hoặc khởi động mềm , tuỳ thuộc vào vị trí của bộ chọn chế 
độ CPU. 
 Quá trình khởi động cứng diễn ra như sau : 
 - Reset cờ , bộ đếm , bộ thời gian , .. 
 - Kiểm tra các byte vào/ra của các module vào/ra . 
 Thời gian đọc các đầu vào thực hiện chương trình và đưa tín hiệu ra được 
gọi là thời gian quét. Quá trình quét là quá trình liên tục và tuần tự từ đọc đầu 
vào, đánh giá và quyết định Logic điều khiển và đưa tín hiệu ra. Đặc điểm của 
thời gian quét là nó cho ra bộ điều khiển phản ứng với đầu vào và xử lý chính 
xác. Logic điều khiển nhanh hay chậm. Thời gian quét phụ thuộc vào tốc độ 
xử lý của CPU, độ dài của chương trình ứng dụng và được chia làm các giai 
đoạn như sau: 
 2 – Cấu trúc bộ nhớ của S7-200 
 Bộ nhớ S7-200 chia làm 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 nuôi. Bộ nhớ của S7-200 
có tính năng động cao, đọc và ghi được trong toàn vùng, loại trừ phần các bit 
nhớ đặc biệt được ký hiệu bởi SM ( Special Memory ) chỉ có thể truy nhập để 
đọc. 
 EEPROM MIỀN NHỚ NGOÀI 
Chương trình Chương trình Chương trình 
Tham số Tham số Tham số 
Dữ liệu Dữ liệu Dữ liệu 
Vùng đối tượng 
 3. Truyền thông và 
 tự kiểm tra lỗi 
1. Nhập dữ liệu từ ngoại 
vi vào 
 4. Chuyển dữ liệu từ bộ 
 đệm ra ngoại vi 
2. Thực hiện chương 
trình 
Bắt đầu
Tụ 
Trang 
62
 + Vùng nhớ chương trình (Program Memory) Vùng này để lưu giữ các 
chương trình điều khiển do người sử dụng lập nên bộ nhớ chương trình do hệ 
thống quản lý . Tại một thời điểm chỉ lưu giữ được 1 chương trình ( Ta không 
thể truy cập được vào) 
 + Vùng tham số: là miền lưu giữ các tham số như từ khoá, địa chỉ 
trạm... thuộc kiểu non-volatile đọc/ghi được. 
 + Vùng dữ liệu (Data memory): Lưu giữ toàn bộ dữ liệu bao gồm kết 
quả tính toán , trạng thái của hệ thống, hằng số được định nghĩa trong chương 
trình, bộ đệm truyền thông... Một phần của vùng nhớ này ( 200 byte đầu với 
CPU212, 1Kbyte đầu tiên đối với CPU214 ) thuộc kiểu non-volatile đọc/ghi 
được. 
 Tổ chức bộ nhớ dữ liệu do hệ thống quản lý (Chia ra các vùng nhớ để 
lưu giữ các kiểu dữ liệu khác nhau) . Đặc điểm là ngưòi dùng có thể truy cập 
đến các vùng dữ liệu (Read/write). 
Kiểu dữ liệu có các dạng sau : 
 - Bit , Byte, Word (2 Byte), double word 
 - Sting 
 - Const (hằng) 
 - Object(device): Timer, Counter 
Mỗi vùng dữ liệu được phân bố trong vùng nhớ quy ước và có một tên riêng 
(keyword) 
 + Vùng đối tượng: Timer, Counter, bộ đếm tốc độ cao và các cổng 
vào/ra tương tự được đặt trong vùng nhớ cuối cùng. Vùng này không thuộc 
kiểu non-volatile nhưng đọc/ghi được. 
 Hai vùng nhớ cuối có ý nghĩa quan trọng trong việc thực 
hiện một chương trình nên ta sẽ trình bày chi tiết như sau. 
 Vùng nhớ dữ liệu (Data memory) 
 Bao gồm các vùng nhớ : 
 + V: Variable memory 
 + I: Input image register 
 + O: Oput image register 
 + M: Intrenal memory bits 
 + SM: Special memory bits 
Trang 
63
 Tất cả các miền này đều có thể truy nhập được theo từng bit, từng byte, từng 
từ đơn ( word-2byte) hoặc từ kép (2 word) 
Hình sau mô tả vùng dữ liệu của CPU212 và CPU 214 
 CPU212 CPU214 
Miền V (đọc/ghi) 
V0 V0 
V1023 V4095 
 Vùng đệm cổng 
vào (I) (đọc/ghi) 
I0.x(x=0÷ 7) I0.x(x=0 ÷ 7) 
I7.x(x=0÷ 7) I7.x(x=0 ÷ 7) 
Vùng đệm cổng ra 
(Q) (đọc ghi) 
Q0.x(x=0÷ 7) Q0.x(x=0 ÷ 7)
Q7.x(x=0 ÷ 7) Q7.x(x=0 ÷ 7)
Vùng nhớ nội(M) 
(đọc/ghi) 
M0.x(x=0 ÷ 7) M0.x(x=0÷ 7)
M15.x(x=0 ÷ 7) M31.x(x=0 7)
Vùng nhớ đặc biệt 
(SM) (chỉ đọc) 
SM0.x(x=0 ÷ 7) SM0.x(x=0 ÷ 7)
SM29(x=0 ÷ 7) SM29(x=0 ÷ 7)
Vùng nhớ đặc 
 biệt(đọc/ghi) 
SM30.x(x=0 ÷ 7) SM30.x(x=0 ÷ 7)
SM45.x(x=0 ÷ 7) SM85.x(x=0 ÷ 7)
 Vùng đối tượng (Object) 
 Bao gồm các vùng nhớ: 
 + Timer : Bộ định thời gian 
 + Counter : Bộ đếm 
 +AI (Analog Input) : Đầu vào tương tự 
 +AQ(Analog Output): Đầu ra tương tự 
 +ACC(Accumulator) : Thanh chứa 
 + HC(high speed counter): Bộ đếm tốc độ cao 
Trang 
64
Vùng nhớ đối tượng được phân chia như sau: 
Timer (T) 
(đọc/ghi) 
CPU212 CPU214 
15 0 Bít 15 0 Bít 
T0(word) T) T0 T0 
T63 T63 T127 T127 
Bộ đếm(C) 
đọc/ghi) 
C0(word) C0 C0 C0 
C63 C63 C127 C127 
Bộ đệm cổng vào 
tương tự(AI) (chỉ 
đọc) 
AW0(word) AW0 
AW30 AW30 
Bộ đệm cổng ra 
tương tự(AQ) (chỉ 
ghi) 
AQWO(word) AQW0 
AQW30 AQW30 
 AC0 (Không có khả năng làm con trỏ) 
Thanh ghi 
Accumulator 
(đọc/ghi) 
AC1 
AC2 
AC3 
Bộ đếm tốc độ 
cao(HC) (đọc/ghi) 
HSC0 
HSC1(chỉ có trong CPU212) 
HSC2(chỉ có trong CPU214) 
 Cách truy nhập đến các vùng nhớ trong PLC S7-200 
Truy nhập bit:“Tên vùng dữ liệu” + “Số byte” + ”.” + ”số bit trong byte “ 
 Ví dụ: M1.1 bit số 2 trong byte thứ 2 của vùng nhớ M 
Truy nhập byte: ” Tên vùng dữ liệu” +”B” + số thứ tự byte 
 Ví dụ : VB2 ( byte thứ 3 trong vùng nhớ byte) 
Truy nhập Word : “Tên vùng dữ liệu”+”W” + số thứ tự của byte thấp của 
word Ví dụ : MW 0 
Truy nhập Double Word :“Tên vùng dữ liệu”+”D” + số thứ tự của byte thấp 
nhất của double word 
Trang 
65
 Ví dụ : MD1 
Truy nhập đến Object Timer/ Counter: Timer : T+ số thứ tự của Timer 
sử dụng 
 Counter : C+ số thứ tự của Counter sử dụng 
Truy nhập đến Object vào/ra tương tự :Ta truy nhập theo từng word : AIW0, 
AQW1 
Truy nhập đến Object ACC:Tuỳ theo yêu cầu sử dụng ta có thể truy nhập theo 
byte, word, hay double word 
Truy nhập đến Object HC (high speed counter):Ta chỉ truy nhập được theo 
kiểu double word. 
 3 - Mở rộng cổng vào/ra (I/O) 
+ CPU 212 cho phép mở rộng tối đa 2 module mở rộng 
+ CPU 214 cho phép mở rộng tối đa 7 module mở rộng 
Các module mở rộng tương tự và số đều có trong S7-200. Địa chỉ của các vị 
trí của module được xác định bằng kiểu I/O và vị trí của module trong móc 
xích, bao gồm các module có cùng kiểu. 
 Sau đây là ví dụ về cách đặt địa chỉ cho module mở rộng trên CPU214: 
I0.0 Q0.0 
I0.1 Q0.1 
I0.2 Q0.2 
I0.3 Q0.3 
I0.4 Q0.4 
I0.5 Q0.5 
I0.6 Q0.6 
I0.7 Q0.7 
I1.0 Q1.0 
I1.1 Q1.1 
I1.2 
I1.3 
I1.4 
I2.0 
I2.1 
I2.2 
I2.3 
Q2.0 
Q2.1 
Q2.2 
Q2.3 
I3.0
I3.1 
I3.2 
I3.3 
I3.4 
I3.5 
I3.6 
I3.7 
AIW0
AIW2 
AIW4 
AQW0 
Q3.0 
Q3.1 
Q3.2 
Q3.3 
Q3.4 
Q3.5 
Q3.6 
Q3.7 
AIW8
AIW10 
AIW12 
AQW4 
CPU214 
Modul 0 
(4vào/ 4 ra)
Modul 1 
8 vào 
Modul 2 
3 vào Analog/
1 ra Analog 
Modul 3 
8 ra 
Modul 4 
3 vào Analog/
1 ra Analog 
Trang 
66
 4 - cấu trúc chương trình S7-200 
 Có thể lập trình cho PLC S7-200 bằng cách sử dụng một trong những 
phần mềm sau đây: 
STEP 7 – Micro/DOS 
STEP 7 – Micro/WIN 
 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 con 
phải được viết sau lệnh kết thúc của chương trình chính, đó là lệnh MEND. 
 Chương trình xử lý ngắt là một bộ phận của chương trình. Nếu cần sử 
dụng chương trình xử lý ngắt phải viết sau lệnh kết thúc chương trình chính 
MEND. 
 Các chương trình con được nhóm lại thành một nhóm ngay sau chương 
trình chính. Sau đó đến ngay các chương trình xử lý ngắt. 
 II.1 -3 - 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ự: 
Main Program 
... 
MEND 
SBR 0 Chương trình con thứ nhất 
... 
RET 
SBR n Chương trình con thứ n+1 
... 
RET 
INT 0 Chương trình xử lý ngắt thứ nhất 
... 
RETI 
Thực iện trong một 
vòng quét. 
Thực hiện khi được 
chương trình chính gọi. 
Thực hiện khi có tín
Trang 
67
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ở). 
II.2- Ngôn ngữ lập trình của S7-200. 
 II.2.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. 
 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 
Trang 
68
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. 
II.2.2 -Toán hạng và giới hạn cho phép của CPU212 và CPU214 
Phương pháp truy nhập Giới hạn cho phép của các toán hạng 
CPU212 CPU214
Truy nhập bit (địa 
chỉ byte, chỉ số bit) 
V (0.0 ÷ 1023.7)
 I (0.0 ÷ 7.7) 
Q (0.0 ÷ 7.7 
M (0.0 ÷15.7) 
SM (0.0 ÷45.7) 
T (0 ÷63) 
C (0 ÷63) 
V (0.0 ÷ 4095.7)
I (0.0 ÷ 7.7) 
Q (0.0 ÷ 7.7 
M (0.0 ÷31.7) 
SM (0.0 ÷85.7) 
T (0 ÷127) 
C (0 ÷127) 
Truy nhập bit 
VB (0 ÷1023)
 IB (0 ÷7) 
 MB (0 ÷15). 
 SMB (0 ÷45) 
 AC (0 ÷3) 
 Hằng số 
VB (0 ÷4.095)
 IB (0 ÷7) 
 MB (0 ÷31). 
 SMB (0 ÷85) 
 AC (0 ÷3) 
 Hằng số 
Trang 
69
Truy nhập từ đơn 
(địa chỉ byte cao) 
VW (0 ÷ 1022)
T (0 ÷ 63) 
C (0 ÷ 63) 
IW (0 ÷6) 
QW (0 ÷6) 
MW (0 ÷14) 
SMW (0 ÷ 44) 
AC (0 ÷3) 
AIW (0 ÷30) 
AQW (0 ÷30) 
Hằng số 
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 
(địa chỉ byte cao) 
VD (0 ÷1020)
ID (0 ÷ 4) 
QD (0 ÷ 4) 
MD (0 ÷ 12) 
SMD (0 ÷ 42) 
AC (0 ÷ 3) 
HC (0) 
Hằng số. 
VD (0 ÷4092)
ID (0 ÷ 4) 
QD (0 ÷ 4) 
MD (0 ÷ 28) 
SMD (0 ÷ 82) 
AC (0 ÷ 3) 
HC (0 ÷ 2) 
Hằng số. 
 II.2.3 – Một số lệnh cơn bản dùng trong lập trình 
 1 – 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. 
Các dạng khác nhau của lệnh LD, LDN cho LAD như sau 
LAD Mô tả Toán hạng 
LD n Tiếp điểm thường mở sẽ được đóng nếu n 
= 1. 
n: I, Q, M, SM, T, 
C, V (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ẽ đóng tức thời khi 
n = 1 
n: I 
Trang 
70
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 điểm n vào bít 
đầu tiên trong ngăn xếp. 
n (bít): I, Q, M, 
SM, T, C, V 
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ị logic của điểm n 
vào bít đầu tiên trong ngăn xếp. 
n: I 
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 (=) 
 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. 
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 thái kích 
thích khi có dòng điều khiển đi qua.
n: I, Q, M, SM, T, 
C, V (bít) 
 n 
 ( ) 
Cuộn dây đầu ra được kích thích 
tức thời khi có dòng điều khiển đi 
qua. 
n: Q 
(bít) 
♦ Mô tả bằng lệnh STL như sau: 
STL Mô tả Toán hạng 
= n 
Lệnh = sao chép giá trị của đỉnh 
ngăn xếp tới tiếp điểm n được chỉ 
dẫn trong lệnh. 
n: I, Q, M, SM, T, 
C, V (bít) 
= I n 
Lệnh = I (immediate) sao chép tức 
thời giá trị của đỉnh stack tới tiếp 
điểm n được chỉ dẫn trong lệnh. 
n: Q 
(bít) 
 2 -Các lệnh ghi / 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 
LAD, logic điều khiển dòng điện đóng hoặc ngắt các cuộc dây đầu ra. Khi 
Trang 
71
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 
 Đóng một mảng gồm n các tiếp 
điểm kể từ S BIT 
S BIT: I, Q, M, SM, 
T, C, V 
n(byte): IB, QB, 
MB, SMB, VB,AC, 
Hằng số, *VD, *AC 
 Đóng một mảng gồm n các tiếp 
điểm kể từ S BIT. Nếu S BIT 
lại chỉ vào Timer hoặc Counter 
thì lệnh sẽ xóa bít đầu ra của 
Timer / Counter đó. 
Đóng tức thời một mảng gồm n 
các tiếp điểm kể từ S BIT 
S BIT: Q 
N(byte): IB, QB, 
MB, SMB, VB,AC, 
Hằng số, *VD, *AC Ngắt tức thời một mảng gồm n 
các tiếp điểm kể từ địa chỉ S 
BIT 
• Mô tả bằng lệnh STL 
STL Mô tả Toán hạng 
S S BIT n Ghi giá trị logic vào một mảng 
gồm n bít kể từ địa chỉ S BIT 
S BIT: I, Q, M, SM, 
T, C, V 
(bit) 
n: IB, QB, MB, SMB, 
VB 
(byte) AC, Hằng số, 
*VD, *AC 
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 chỉ 
vào Timer hoặc Counter thì lệnh 
sẽ xóa bít đầu ra của Timer / 
Counter. 
S I S BIT n Ghi tức thời giá trị logic 1 vào 
một mảng gồm n bít kể từ địa chỉ 
S BIT 
S BIT: Q 
(bit) 
n: IB, QB, MB, SMB, 
VB (byte) 
(byte) AC, Hằng số, 
*VD, *AC 
R I S BIT n Xóa tức thời một mảng gồm n bít 
kể từ địa chỉ S BIT 
3 – Các lệnh so sánh: 
 S BIT n 
 ( S ) 
 S BIT n 
 ( R ) 
 S BIT n 
 ( RI ) 
 S BIT n 
 ( SI ) 
Trang 
72
 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 ( =). 
 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 
 Tiếp điểm đóng khi n1 = n2 
B = Byte 
I = Integer 
D = Double Integer 
R = Real 
n1,n2 (byte) : VB , 
IB , QB, MB, SMB 
, AC , Const , 
*VD*, AC 
Tiếp điểm đóng khi n1 > n2 
B = Byte 
I = Integer 
D = Double Integer 
R = Real 
n1,n2 (từ): VW, T, 
C, IW, QW, MW, 
SMW,AC, AIW, 
Hằng số, *VD, *AC 
n1 n2 
= = B 
n1 n2 
= = I 
n1 n2 
= = D 
 n1 n2 = = R 
 n1 n2 > = B 
n1 n2 
> = I 
 n1 n2 > = R 
 n1 n2 > = D 
Trang 
73
 Tiếp điểm đóng khi 
 N1 < n2 
B = Byte 
I = Integer 
D = Double Integer 
R = Real 
n1, n2(từ kép):VD, 
ID, QD, MD, SMD, 
AC, HC, Hằng số, 
*VD, *AC 
 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ó (=, >=, 
) 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 = 
 n1 n2 
< = B 
n1 n2 
< = I 
 n1 n2 
< = R 
 n1 n2 
< = D 
Trang 
74
 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, 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: 
STL Mô tả Toán hạng 
LDB = n1 n2 
AB = n1 n2 
OB = 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 đỉnh ngăn xếp khi nội dung 
2 byte n1 và n2 thỏa mãn n1 = n2 
 n1.n2 (byte):VB, 
IB, QB, MB, 
SMB, AC, hằng 
số, *VD , *AC 
LDB > = n1 -
n2 
AB > = n1 -
n2 
OB > = 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 đỉnh ngăn xếp khi nội dung 
2 byte n1 và n2 thỏa mãn n1 > = n2 
LDB < = n1 -
n2 
AB < = n1 -
n2 
OB < = 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 đỉnh ngăn xếp khi nội dung 
2 byte n1 và n2 thỏa mãn n1 < = n2 
LDW = n1 n2 
AW = n1 n2 
OW = 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 đỉnh ngăn xếp khi nội dung 
2 từ n1 và n2 thỏa mãn n1 = n2 
n1 ,n2 (từ):VW, 
T, C, QW, MW, 
SMW,AC, AIW 
, hằng số, *VD , 
*AC 
Trang 
75
LDW > = n1 -
n2 
AW > = n1 -
n2 
OW > = 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 đỉnh ngăn xếp khi nội dung 
2 từ n1 và n2 thỏa mãn n1 > = n2 
LDW < = n1 -
n2 
AW < = n1 -
n2 
OW < = 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 đỉnh ngăn xếp khi nội dung 
2 từ n1 và n2 thỏa mãn n1 < = n2 
LDD = n1 n2 
AD = n1 n2 
OD = 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 đỉnh ngăn xếp khi nội dung 
2 từ kép n1 và n2 thỏa mãn n1 = n2 
n1 , n2 (từ kép) 
:VD, ID, QD, 
MD, SMD, AC, 
HC , hằng số, 
*VD , *AC
LDD > = n1 -
n2 
AD > = n1 -
n2 
OD > = 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 đỉnh ngăn xếp khi nội dung 
2 từ kép n1 và n2 thỏa mãn n1 > = n2 
LDD < = n1 -
n2 
AD < = n1 -
n2 
OD < = 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 đỉnh ngăn xếp khi nội dung 
2 từ kép n1 và n2 thỏa mãn n1 < = n2 
LDR = n1 n2 
AR = n1 n2 
OR = 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 đỉnh ngăn xếp nếu hai số 
thực n1 và n2 (4 byte) thỏa mãn n1 = 
n2 
n1,n2 (từ 
kép):VD, ID, 
QD, MD, SMD, 
AC, HC , hằng 
số, *VD , *AC
Trang 
76
LDR > = n1 -
n2 
AR > = n1 -
n2 
OR > = 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 đỉnh ngăn xếp nếu hai số 
thực n1 và n2 (4 byte ) thỏa mãn n1 > 
= n2 
LDR < = n1 -
n2 
AR < = n1 -
n2 
OR < = 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 đỉnh ngăn xếp nếu hai số 
thực n1 và n2 (4 byte) thỏa mãn n1 < 
= n2 
4 - Các lệnh can thiệp vào thời gian vòng quét: 
 Lệnh MEND, END, STOP, NOP, WDR. 
 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 sỗ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. 
5 - 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ó 64 timer(víi CPU212)vµ 128 Timer (CPU-214) đượ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. 
Trang 
77
 * 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 CPU212 vàCPU 214) chia theo TON, 
TONR và độ phân giải bao gồm: 
Lệnh Độ phân giải Giá trị cực đại CPU212 CPU 214 
Trang 
78
TON 
1 ms 32,767s T32 T32÷T96 
10 ms 327,67s T33÷T36 T33÷T36; T97÷ T100 
100 ms 3276,7s T37÷T63 T37÷T63; T101÷ T127 
TONR 
1 ms 32,767s T0 T0 ÷T64 
10 ms 327,67s T1÷T4 T1÷T4; T65÷T68 
100 ms 3276,7s T5÷T31 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 
TON để tạo thời gian trễ tính từ 
khi đầu vào IN được kích. Nếu 
như giá trị đếm tức thời lớn hơn 
hoặc bằng giá trị đặt trước PT thì 
T-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 
 CPU212vàCPU214 CPU214 
1 ms T32 T32 ÷T96 
10 ms T33÷T36 T33÷T36; 
100 ms T37÷T63 T101÷ T127 
Txx : T32÷T63 
 T96÷T127 
PT: VW, T, C, IW, 
QW, MW, SMW, 
AC, AIW, VD 
*AC, Hằng số. 
 Khai báo Timer số hiệu xx kiểu 
TONR để tạo thời gian trễ tính từ 
khi đầu vào IN được kích. Nếu 
như giá trị đếm tức thời lớn hơn 
hoặc bằng giá trị đặt trước PT thì 
T-bít có giá trị logic bằng 1. Chỉ 
có thể reset kiểu TONR bằng 
lệnh R cho T-bít 
 CPU212vàCPU214 CPU214 
1 ms T0 T64 
10 ms T1÷T4 T65÷T68 
100 ms T5÷T31 T69÷ T95
Txx : T0 ÷T31 
 T64 ÷T95 
PT: VW, T, C, IW, 
QW, AIW, SMW, 
AC, AIW, VD 
*AC, Hằng số. 
• 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ả Toán hạng
TON Txx n 
Khai báo Timer số hiệu xx kiểu 
TON để tạo thời gian trễ tính từ khi 
bít đầu tiên trong ngăn xếp có giá 
Txx: T32 ÷T63 
 T96 ÷T127 
TON Txx 
IN 
PT 
TONR _Txx 
IN 
PT 
Trang 
79
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 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. 
 CPU212vàCPU214 CPU214 
1 ms T32 T96 
10 ms T33÷T36 T97÷T100 
100 ms T37÷T63 T101÷ T127
n (word) : VW, T, C, 
IW,QW, MW, SMW 
AC, AIW, VD 
*AC, Hằng số 
TONR Txx n 
Khai báo Timer số hiệu xx kiểu 
TONR để tạo thời gian trễ tính từ 
khi 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 thì T-bít có giá trị logic 
bằng 1. Chỉ có thể reset Timer kiểu 
TONR bằng lệnh R cho T-bít 
 CPU212vàCPU214 CPU214 
1 ms T0 T64 
10 ms T1÷T4 T65÷T68 
100 ms T5÷T31 T69÷ T95
Txx :T0 ÷T31 
 T64 ÷T95 
n (word) :VW, T, C, 
IW,QW, AIW, SMW,
AC, AIW, VD 
*AC, Hằng số 
6 - 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 
Trang 
80
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 
 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 
 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 63 (đối với CPU212) hoặc từ 0 đến 127 
(đới với CPU 214) 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: 
CU C-Bit 
PV 
R 
 C-word Giá trị đếm tức thời 
CU C-Bit 
PV 
CD 
R 
C-word Giá trị đếm tức thời 
Trang 
81
LAD Mô tả Toán hạng 
Khai báo bộ đếm tiến theo 
sườn lên của CU. Khi giá trị 
đếm tức thời C-word Cxx lớn 
hơn hoặc bằng giá trị đặt trước 
PV, C-bít (cxx) có giá trị logic 
bằng 1. Bộ đếm được reset khi 
đầu vào R có giá trị logic bằng 
1. Bộ đếm ngừng đếm khi C-
word Cxx đạt giá trị cực đại 
32.767. 
Cxx:C0 ÷C47 
 C80 ÷C127 
PV (word) : VW , 
T, C, IW, QW, 
MW, SMW, AC, 
AIW, Hằng số, 
*VD, *AC 
 Khi báo bộ đếm tiến/lùi, đếm 
tiến theo sườn lên của CU và 
đếm lùi theo sườn lên của CD. 
Khi giá trị đếm tức thời C-
word Cxx lớn hơn hoặc bằng 
giá trị đặt trước PV, C-bít 
(cxx) có giá trị logic bằng 1. 
Bộ đếm ngừng đếm tiến khi 
C-word đạt giá trị cực đại 
32.767 và 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. 
Cxx : C48 ÷C79 
PV (word):VW,T , 
C , IW, QW, MW, 
SMW, AC,A IW, 
Hằng số, *VD, 
*AC 
Lệnh khai báo sử dụng bộ đếm trong STL như sau: 
STL Mô tả Toán hạng 
CTU Cxx n 
Khai báo bộ đếm tiến theo sườn lên 
cùa CU. Khi giá trị đếm tức thời C-
word 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 reset khi đầu ngăn 
xếp có giá trị logic bằng 1. Bộ đếm 
ngừng đếm khi C-word đạt giá trị 
cực đại 32.767. 
Cxx : C0 ÷C47 
 C80 ÷C127 
n (word):VW , T , 
C , IW , QW , 
MW, SMW, AC, 
AIW, Hằng số. 
 *VD, *AC 
CTUD Cxx n 
Khai báo bộ đếm tiến/lùi, đếm tiến 
theo sườn lên của CU và đếm lùi 
theo sườn lên của CD. Khi giá trị 
đếm tức thời C-word, Cxx lớn hơn 
hoặc bằng giá trị đặt trước n, C-bít 
có giá trị logic bằng 1, bộ đếm 
ngừng đếm tiến khi C-word đạt giá 
trị cực đại 32.767 và ngừng đếm lùi 
khi C-word đạt được giá trị cực tiểu 
Cxx: C48 ÷ C79 
n (word) : VW, T, 
C, IW ,QW, MW, 
SMW, AC, AIW, 
Hằng số, *VD, 
*AC 
CTU Cxx 
CU 
PV 
R 
CTUD Cxx 
CU 
PV 
R 
Trang 
82
32.767 CTUD reset khi bít đầu của 
ngăn xếp có giá trị logic bằng 1. 
7 - Cá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. 
 b. Lệnh MOV_W:Là lệnh sao chép nội dung của từ đơn IN sang từ đơn 
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. 
 d. Lệnh MOV_R:Là lệnh sao chép một số thực từ IN (4 byte) sang OUT (4 
byte). 
 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 
III – CHƯƠNG TRÌNH ĐIỀU KHIỂN 
 III.1 Lưu đồ điều khiển một chương trình (Xe con) ( Hình 4.2 ) 
C
h¹
y 
æn
 ®
Þn
h
G
hi
 lç
i
C
h¹
y 
tè
c 
®é
 3
C
h¹
y 
tè
c 
®é
 2
C
h¹
y 
tè
c 
®é
 1
T
èc
 ®
é 
1
T
èc
 ®
é 
3
L
μm
 v
iÖ
c
K
iÓ
m
 tr
a 
lç
i
D
õn
g 
§
K
T
èc
 ®
é 
2
§
S S
§ §
S
§
§
S
Trang 
83
III.2 – Chọn PLC và ngôn ngữ lập trình 
 Hệ thống điều khiển cầu trục gồm 3 cơ cấu Xe lớn, Xe con, Cơ cấu nâng 
hạ và đóng mở gầu. Nhưng trong đó với cơ cấu xe lớn phải chịu tải trọng lớn 
nhất nên sử dụng 2 động cơ song 2 động cơ này là giống nhau lam việc song 
song nhau nên chương trình điều khiển cho cơ cấu xe lớn là chung một 
chương trình, riêng cơ cấu nâng hạ và đóng mở gầu sử dụng 2 động cơ riêng 
biệt mỗi động cơ được điều khiển bằng một chương trình. 
 Chọn PLC vì các cơ cấu được điều khiển riêng biệt nên số đầu vào ra 
trong mỗi PLC là ít vậy ta chọn PLC cho các cơ cấu là loại PLC CPU212 để 
giảm giá thành lắp đặt nâng cấp. Với các cơ cấu có số đầu vào ra vượt quá số 
đầu vào ra của CPU212 (8 đầu vào, 6 đầu ra) ta sử dụng thêm các module mở 
rộng để kết nối thêm. 
Trang 
84
 Ngôn ngữ sử dụng để viết chương trình điều khiển là sử dụng ngôn ngữ 
dưới dang liệt kê lệnh STL để viết chương trình điều khiển cho cơ cấu. 
II.3- Phân cổng vào/ra 
 1-Tín hiệu vào đối với xe con và xe cầu là giống nhau, trong đó : 
 I0.0 : Tín hiệu vào dừng điều khiển 
I0.1 : Tín hiệu vào Start 
I0.2 : Tín hiệu vào vị trí “0” tay gạt điều khiển 
I0.3 : Tín hiệu vào cựa hạn chiều tiến 
I0.4 : Tín hiệu vào cựa hạn chiều lùi 
I0.5 : Tín hiệu vào chiều tiến 
I0.6 : Tín hiệu vào chiều lùi 
I0.7 : Tín hiệu vào tốc độ 1 
I1.0 : Tín hiệu vào tốc độ 2 
I1.1 : Tín hiệu vào tốc độ 3 
AIW0 : Tín hiệu vào tương tự 
 2- Tín hiệu vào đối với chuyển động nâng-hạ và đóng-mở gầu là giống 
nhau, trong đó : 
 I0.0 : Tín hiệu vào dừng điều khiển 
I0.1 : Tín hiệu vào Start 
I0.2 : Tín hiệu vào vị trí “0” tay gạt điều khiển 
I0.3 : Tín hiệu vào cựa hạn chiều tiến 
I0.4 : Tín hiệu vào chiều tiến 
I0.5 : Tín hiệu vào khi hãm 
I0.6 : Tín hiệu vào tốc độ 1 
I0.7 : Tín hiệu vào tốc độ 2 
I1.0 : Tín hiệu vào tốc độ 3 
I1.1 : Tín hiệu vào tốc độ 4 
AIW0 : Tín hiệu vào tương tự 
 3- Tín hiệu ra đối với xe con và xe cầu là giống nhau, trong đó : 
 Q0.0 : Tín hiệu ra báo sẵn sàng làm việc 
 Q0.1 : Tín hiệu ra chiều tiến 
 Q0.2 : Tín hiệu ra chiều lùi 
 Q0.3 : Tín hiệu ra điều khiển phanh 
 Q0.4 : Tín hiệu ra tốc độ 1 
 Q0.5 : Tín hiệu ra tốc độ 2 
 Q0.6 : Tín hiệu ra tốc độ 3 
 Q0.7 : Tín hiệu ra sự cố 
Trang 
85
 4-Tín hiệu ra đối với chuyển động nâng-hạ và đóng-mở gầu là giống 
nhau, trong đó : 
 Q0.0 : Tín hiệu ra báo sẵn sàng làm việc 
 Q0.1 : Tín hiệu ra chiều tiến 
 Q0.2 : Tín hiệu ra điều khiển phanh 
 Q0.3 : Tín hiệu ra hãm ngược 
 Q0.4 : Tín hiệu ra tốc độ 1 
 Q0.5 : Tín hiệu ra tốc độ 2 
 Q0.6 : Tín hiệu ra tốc độ 3 
 Q0.7 : Tín hiệu ra tốc độ 4 
 Q1.0 : Tín hiệu ra báo sự cố 
III.4 – Mạch đầu ra của PLC S7 -200 
D1 
D2 
D3 
D4
LED 
R1 
K1 
R2 
K1 
D5 
D6 
D7 
D8
LED
R3 
K2 
R4 
K2 
1 
2 
3 
4 PLC 
5 
6GND 
7GND 
8 
K1 
G1 
K2 
G2 
K3 
G3 
K4 
G4 
Trang 
86
Trang 
87
D1 
D2 
D3 
D4 R1 
K1 
R2 
K1 
K1 
G1 
K2 
G2 
D5 
D6 
D7 
D8 R3 
K2 
R4 
K2 
K5 
G5 
K6 
G6 
D9 
D10 
D11 
D12 R5 
K3 
R6 
K3 
K9 
G9 
K10 
G10 
D13 
D14 
D15 
D16 R7 
K4 
R8 
K4 
K13 
G13 
K14 
G14 
D17 
D18 
D19 
D20 R9 
K5 
R10 
K5 
K17 
G17 
K18 
G18 
K6 
K6 
R11 
K7 
K7 
R12 
K8 
K8 
R13 
K9 
K9 
R14 
K10 
K10 
R15 
D31 
1 2 3 4 5 GND 8 
R16 
Hình 4.4 - 10 Relay ra điều khiển kích Thyristor 
Trang 
88
III.5 Chương trình điều khiển xe 
III.5-1 CHƯƠNG TRÌNH ĐIỀU KHIỂN ĐỘNG CƠ XE CẦU 
 //BIGCAR MOTOR CONTROL PROGRAM 
//PROGRAM COMMENTS 
NETWORK 1 //Reading Inputs; Protect Curcuit 
//NETWORK COMMENTS 
LD I0.0 
LD I0.1 
A I0.2 
O Q0.0 
ALD 
LDN I0.3 
O Q0.2 
LDN I0.4 
O Q0.1 
ALD 
ON Q0.3 
ALD 
AN V0.0 
= Q0.0 
NETWORK 2 //Starting Motor 
LD Q0.0 
LPS 
A I0.5 
= Q0.1 
LPP 
A I0.6 
= Q0.2 
NETWORK 3 //Remove Brake 
LD Q0.1 
O Q0.2 
= Q0.3 
TON T37, +30 
NETWORK 4 //Speed Level 1 
LD Q0.3 
LD I0.7 
O T37 
ALD 
= Q0.4 
NETWORK 5 //Speed Level 2 
LD Q0.4 
TON T38, +30 
Trang 
89
LD I1.0 
O T38 
ALD 
= Q0.5 
NETWORK 6 //Speed Level 3 
LD Q0.0 
LPS 
A Q0.5 
TON T39, +30 
LPP 
LD I1.1 
O T39 
ALD 
= Q0.6 
NETWORK 7 //Enter value of protect circuit 
LD SM0.0 
MOVW +27, VW1 
NETWORK 8 //Compare value of present circuit with protect circuit value 
LDW>= AIW0, VW1 
= Q0.7 
NETWORK 9 //Warning 
LD Q0.7 
S V0.0, 1 
LDN Q0.7 
R V0.0, 1 
NETWORK 10 
END 
Trang 
90
III.5 -2 CHƯƠNG TRÌNH ĐIỀU KHIỂN ĐỘNG CƠ XE CON 
//SMALLCAR CONTROL PROGRAM 
//PROGRAM COMMENTS 
NETWORK 1 //Reading Inputs; Protect Curcuit 
 //NETWORK COMMENTS 
LD I0.0 
LD I0.1 
A I0.2 
O Q0.0 
ALD 
LDN I0.3 
O Q0.2 
LDN I0.4 
O Q0.1 
ALD 
ON Q0.3 
ALD 
AN V0.0 
= Q0.0 
NETWORK 2 //Starting Motor 
LD Q0.0 
LPS 
A I0.5 
= Q0.1 
LPP 
A I0.6 
= Q0.2 
NETWORK 3 //Remove Brake 
LD Q0.1 
O Q0.2 
= Q0.3 
TON T37, +30 
NETWORK 4 //Speed Level 1 
LD Q0.3 
LD I0.7 
O T37 
ALD 
= Q0.4 
NETWORK 5 //Speed Level 2 
Trang 
91
LD Q0.4 
TON T38, +30 
LD I1.0 
O T38 
ALD 
= Q0.5 
NETWORK 6 //Speed Level 3 
LD Q0.0 
LPS 
A Q0.5 
TON T39, +30 
LPP 
LD I1.1 
O T39 
ALD 
= Q0.6 
NETWORK 7 //Enter value of protect circuit 
LD SM0.0 
MOVW +71, VW1 
NETWORK 8 //Compare value of present circuit with protect circuit 
value 
LDW>= AIW0, VW1 
= Q0.7 
NETWORK 9 //Warning 
LD Q0.7 
S V0.0, 1 
LDN Q0.7 
R V0.0, 1 
NETWORK 10 //Stop 
END 
Trang 
92
III.5 -3 CHƯƠNG TRÌNH ĐIỀU KHIỂN ĐỘNG CƠ CƠ CẤU NÂNG-
HẠ 
//UP-DOWN BAIL MOTOR CONTROL PROGRAM 
//PROGRAM COMMENTS 
NETWORK 1 //NETWORK TITLE (single line) 
//NETWORK COMMENTS 
LDN I0.0 
LD I0.1 
A I0.2 
O Q0.0 
ALD 
LDN I0.3 
ON Q0.1 
ALD 
AN V0.0 
= Q0.0 
NETWORK 2 //Starting Motor 
LD Q0.0 
A I0.4 
= Q0.1 
A Q0.1 
= Q0.2 
NETWORK 3 //Invert Direct 
LD Q0.0 
A I1.1 
= Q0.3 
NETWORK 4 //Eliminate invert register 
LD Q0.1 
= Q0.4 
NETWORK 5 //Speed Level 1 
LD Q0.1 
A I0.5 
= Q0.5 
NETWORK 6 //Delay Time between Speed Level 1 and Speed Level 2 
Trang 
93
LD Q0.5 
TON T37, +30 
NETWORK 7 //Speed Level 2 
LD Q0.0 
A I0.6 
A T37 
= Q0.6 
NETWORK 8 //Delay Time 
LD Q0.1 
A Q0.5 
TON T38, +30 
NETWORK 9 //Speed Level 3 
LD Q0.0 
A I0.7 
A T38 
= Q0.7 
NETWORK 10 //Delay Time 
LD Q0.7 
A Q0.1 
TON T39, +30 
NETWORK 11 //Speed Level 4 
LD Q0.6 
A I1.0 
A T39 
= Q0.7 
NETWORK 12 //Warning mistake 
LD SM0.0 
MOVW +300, VW2 
NETWORK 13 //Compare the preset value with immediate value 
LD Q0.0 
AW>= AIW0, VW2 
= Q1.0 
NETWORK 14 //Stop control if having error 
LD Q0.0 
A Q1.0 
S V0.0, 1 
LDN Q1.0 
Trang 
94
R V0.0, 1 
NETWORK 15 //End of Main Program 
END 
III.5 - 4 CHƯƠNG TRÌNH ĐIỀU KHIỂN ĐỘNG CƠ CƠ CẤU ĐÓNG-
MỞ 
//OPEN-CLOSE BAIL MOTOR CONTROL PROGRAM 
//PROGRAM COMMENTS 
NETWORK 1 //NETWORK TITLE (single line) 
//NETWORK COMMENTS 
LDN I0.0 
LD I0.1 
A I0.2 
O Q0.0 
ALD 
LDN I0.3 
ON Q0.1 
ALD 
AN V0.0 
= Q0.0 
NETWORK 2 //Starting Motor 
LD Q0.0 
A I0.4 
= Q0.1 
A Q0.1 
= Q0.2 
NETWORK 3 //Invert Direct 
LD Q0.0 
A I1.1 
= Q1.0 
NETWORK 4 //Eliminate invert register 
LD Q0.1 
= Q0.3 
NETWORK 5 //Speed Level 1 
Trang 
95
LD Q0.1 
A I0.5 
= Q0.4 
NETWORK 6 //Delay Time between Speed Level 1 and Speed Level 2 
LD Q0.4 
TON T37, +30 
NETWORK 7 //Speed Level 2 
LD Q0.0 
A I0.6 
A T37 
= Q0.5 
NETWORK 8 //Delay Time 
LD Q0.1 
A Q0.5 
TON T38, +30 
NETWORK 9 //Speed Level 3 
LD Q0.0 
A I0.7 
A T38 
= Q0.6 
NETWORK 10 //Delay Time 
LD Q0.6 
A Q0.1 
TON T39, +30 
NETWORK 11 //Speed Level 4 
LD Q0.6 
A I1.0 
A T39 
= Q0.7 
NETWORK 12 //Warning mistake 
LD SM0.0 
MOVW +300, VW2 
NETWORK 13 //Compare the preset value with immediate value 
LD Q0.0 
AW>= AIW0, VW2 
= Q1.0 
Trang 
96
NETWORK 14 //Stop control if having error 
LD Q0.0 
A Q1.0 
S V0.0, 1 
LDN Q1.0 
R V0.0, 1 
NETWORK 15 //End of Main Program 
END 
            Các file đính kèm theo tài liệu này:
 thiet_ke_thay_the_he_thong_dieu_khien_role_co_su_dung_bo_plc_9152.pdf thiet_ke_thay_the_he_thong_dieu_khien_role_co_su_dung_bo_plc_9152.pdf