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

Đề án tốt nghiệp lập trình PLC điều khiển máy bán nước tự động

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

ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

CHƯƠNG I

DẪN NHẬP
I.

Đặt vấn đề

Tự động ngày càng đóng vai trò quan trọng trong đời sống và công nghiệp. Ngày nay
ngành tự động đã phát triển tới trình độ cao nhờ những tiến bộ của lý thuyết điều khiển tự
động, của những ngành khác như điện tử, tin học, … Nhiều hệ thống điều khiển đã ra đời,
nhưng phát triển mạnh và có khả năng phục vụ rộng là bộ điều khiển PLC. Sở dó như thế, do bộ
PLC có nhiều ưu điểm nổi bậc so những bộ điều khiển khác :
ƒ

Đơn giản, dể dàng thay đổi, lập trình .

ƒ

Tin cậy trong môi trường công nghiệp.

ƒ

Cạnh tranh được giá thành với các bộ diều khiển khác.

Cuối thập niên 60 xuất hiện khái niệm về PLC và đã được phát triển rất nhanh. Năm 1974
PLC đã sử dụng nhiều bộ xử lý như : mạch đònh thời, bộ đếm, dung lượng nhớ đến 12KB và có
1024 điểm nhập xuất. Năm 1976 đã giới thiệu hệ thống đưa tín hiệu vào ra từ xa. Năm 1977


PLC đã dùng đến vi xử lý. Năm1980 phát triển các khối nhập xuất thông minh nâng cao điều
khiển thuận lợi qua viễn thông, nâng cao việc phát triển phần mềm, dùng máy tính cá nhân lập
trình. Đến năm 1985 đã thành lập mạng PLC.
Riêng nước ta sắp tới đây hành rào thuế quan khu vực được loại bỏ, kinh tế mở cửa hợp
tác với nước ngoài. Trước tình hình đó, nền công nghiệp sẽ gặp không ít khó khăn do còn nhiều
dây chuyền có công nghệ lạc hậu. Để có chổ đứng và thế mạnh trên thương trường, nhà nước
đã đặc biệt chú trọng đến ứng dụng và phát triển tự động trong sản xuất, nhằm nâng cao năng
suất, chất lượng sản phẩm và hạ giá thành. Một trong những phương án tốt nhất và được sử
dụng rộng hiện nay là thay thế những hệ thống đó bằng bộ điếu khiển PLC. Để phát triển mạnh
hơn nữa, nhiệm vụ đặt ra hàng đầu là đào tạo những chuyên gia về tự động điều khiển nói
chung và về PLC nói riêng.
Là một kỹ sư điện công nghiệp, công việc sẽ gắn liền với điều khiển, vận hành hệ thống
sản xuất. Như vậy, những hiểu biết về PLC sẽ tạo nhiều thuận lợi để làm việc tốt hơn. Khi đang
còn ngồi trên ghế nhà trường, việc tìm hiểu, nghiên cứu để nắm vững phương pháp lập trình
trên bộ PLC rất có ý nghóa và là điều kiện tốt nhất học hỏi, tích lũy kinh nghiệm.
II.

Giới hạn đề tài

Do hạn chế về thời gian, tài liệu tham khảo và nhiều điều kiện khách quan khác nhau,
nên đề tài chỉ nghiên cứu những nội dung sau :
ƒ

Thiết lập lưu đồ điều khiển.

ƒ

Lập trình điều khiển trên bộ PLC của SIMATIC S7-200 CPU 214.

ƒ


Xây dựng mô hình điều khiển.

ƒ

Kết nối PLC với mô hình.

Nhưng nội dung trọng tâm vẫn là phần lập trình.

SVTH: LÊ THÀNH TÂM

1


ĐỒ ÁN TỐT NGHIỆP

III.

GVHD: NGUYỄN THỊ YẾN TUYẾT

Mục đích nghiên cứu

Qua thời gian dài nghiên cứu lý thuyết về PLC cũng như tập lệnh của SIMATIC S7-200,
bản thân nhận thấy cần học hỏi nhiều hơn nữa về phương pháp lệnh trình, cũng như kinh
nghiệm khắc phục sự cố khi chạy chương trình. Với đề tài tốt nghiệp này là điều kiện tốt nhất
sẽ giúp ích rất nhiều trong quá trình học hỏi đó. Mục đích nghiên cứu chỉ để làm quen với thực
tế, thấy được mối quan hệ giữa lý thuyếùt và thực tiễn.”Lập trình PLC điều khiển máy bán nước
tự động” điều quan trọng cần rút ra được sau quá trình thực hiện là cách thức và trình tự giải
quyết một vấn đề được đặt ra trước bằng phương pháp lập trình và thấy được khả năng ứng
dụng của PLC trong công nghiệp.


SVTH: LÊ THÀNH TÂM

2


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

CHƯƠNG II

GIỚI THIỆU BỘ PLC CỦA SIMATIC S7-200
I.

Tổng quát về PLC

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 trog 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 môi
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 .

SVTH: LÊ THÀNH TÂM

3


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

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

a. 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ôït đơ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, …
b. 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
song :

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
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ôït 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 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.

SVTH: LÊ THÀNH TÂM

4


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

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


SVTH: LÊ THÀNH TÂM

5


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

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 .
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
lỳ 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 Delay đượ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.
™ 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.

SVTH: LÊ THÀNH TÂM

6


ĐỒ ÁN TỐT NGHIỆP

II.

GVHD: NGUYỄN THỊ YẾN TUYẾT


PLC SIMATIC S7-200 CPU 214

1. Cấu trúc phần cứng của CPU 214
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-214.
♦ CPU-214 bao gồm 14 ngõ vào và 10 ngõ ra, có khả năng thêm 7 modul mở rộng.
♦ 2.048 từ đơn (4 Kbyte) thuộc miền nhớ đọc / ghi non-volatile để lưu chương trình (vùng
nhớ có giao diện với 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.
Các đèn báo trên S7-200 CPU214
♦ 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.

SVTH: LÊ THÀNH TÂM

7


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

™ 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 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 1đó đ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

3

2

1

·····
····
5

4

9

8

7

6

1
2
3
4
5
6
7

8
9

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

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 để đọ

EEPROM

Tụ

Chương trình
Tham số

SVTH: LÊ THÀNH TÂM


Chương trình
Tham số

MIỀN NHỚ NGOÀI
Chương trình
Tham số
8


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

Dữ liệu
Vùng đối tượng

Dữ liệu

Dữ liệu

♦ 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 nonvolatile đọ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).
♦ 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 .
3. Mở rộng cổng vào ra
CPU 214 cho 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

CPU214
SVTH: LÊ THÀNH TÂM


Modul 0

Modul 1

Modul 2

Modu3

Modul 4

4vào/4a

8 vào

3vào/1a

8 ra

3vào/1a
9


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

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

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

AQW 0

Q3.5

I1.2
I1.3
I1.4
I1.5

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
SVTH: LÊ THÀNH TÂM

10


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

Main program
MEND

Thực hiện trong vòng quét

SBRO Chương trình con thứ nhất
RET

Thực hiện khi chương trình chính gọi

SBRn Chương trình thứ n+1
RET
INT 0 Chương trình xử lý ngắt thứ nhất

RET I

INT n Chương trình xử lý ngắt thứ n+1
RET I

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ộ
đệm ảora ngoại vi
.
3. Truyền thông và
tự kiểm tra lỗi

1. Nhập dữ liệu từ
ngoại vi vào
2.Thực hiện
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
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.
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.

SVTH: LÊ THÀNH TÂM

11


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

♦ 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ở).
III.

NGÔN NGỮ LẬP TRÌNH CỦA S7-200 CPU 214

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 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
cung cấp cho rơ le.


⎯( )⎯ mô tả rơ le được mắc theo chiều dòng điện

♦ 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),

SVTH: LÊ THÀNH TÂM

12


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

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. Các toán hạng và giới hạn cho phép của CPU 214
Phương pháp truy nhập
Truy nhập bit (đòa chỉ byte, chỉ
số bit)

Giới hạn cho phép của các toán hạng

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)

Truy nhập bit

T

(0 ÷127)

C

(0 ÷127)

VB

(0 ÷4.095)

IB

(0 ÷7)

MB

(0 ÷31).

SMB (0 ÷85)
AC


(0 ÷3)

Hằng số
Truy nhập từ đơn

VW (0 ÷4094)
T

(0 ÷127)

C

(0 ÷127)

IW

(0 ÷6)

QW

(0 ÷6)

MW (0 ÷30)
SMW (0 ÷84)
AC

(0 ÷3)

AIW (0 ÷30)


SVTH: LÊ THÀNH TÂM

13


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

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ố.
3. Một số lệnh cơ bản dùng trong lập trình
4.


3.1. 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

c3


c2

c4

c3

c5

c4

c6

c5

c7

c6

c8

c7

Bò nđẩlệynra
khỏi ngăn xếp
Hình a: Trạng thái của ngăn xếp trước và sau khi thực hiệ
h LD
Trước

SVTH: LÊ THÀNH TÂM


LDN

Sau

c0

∼m

c1

c0

c2

c1

14


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

c3

c2

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
LD

LDN

LDI

n


n

n

LDNI

Mô tả
Tiếp điểm thường mở sẽ
được đóng nếu n = 1.

n: I, Q, M, SM, T, C, V
(bit)

Tiếp điểm thường đóng
sẽ mở khi n = 1.

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

Toán hạng

n: I

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
LD n


SVTH: LÊ THÀNH TÂM

Mô tả

Toán hạng

Lệnh nạp giá trò logic
n (bít): I, Q, M, SM, T,
của điểm n vào bít đầu tiên C, V
trong ngăn xếp.

15


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

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.


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.

n: I

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ả
n
( )
n
( )

Toán hạng

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


Cuộn dây đầu ra được
kích thích tức thời khi có
dòng điều khiển đi qua.

n: Q

(bít)

(bít)

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

4.2.

Mô tả

Toán hạng

= n

Lệnh = sao chép giá trò của
n: I, Q, M, SM, T, C,
đỉnh ngăn xếp tới tiếp điểm n V
được chỉ dẫn trong lệnh.
(bít)

= In

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)

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 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).
SVTH: LÊ THÀNH TÂM

16


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

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
S BIT


S BIT

S BIT

S BIT

n
(S)

n
(R)

Toán hạ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
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 đó.

n
( SI )


Đóng tức thời một mảng gồm
n các tiếp điểm kể từ S BIT

n
( RI )

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

STL
S S BIT n

R S BIT n

SI

Mô tả

S BIT

SVTH: LÊ THÀNH TÂM

S BIT: Q

Mô tả

Toán hạng


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)
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ì
n: IB, QB, MB, SMB,
lệnh sẽ xóa bít đầu ra của VB
Timer / Counter.
(byte) AC, Hằng số,
*VD, *AC
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)

17


ĐỒ ÁN TỐT NGHIỆP

RI

GVHD: NGUYỄN THỊ YẾN TUYẾT

S BIT


Xóa tức thời một mảng gồm
n bít kể từ đòa chỉ S BIT

n: IB, QB, MB, SMB,
VB (byte)
(byte) AC, Hằng số,
*VD, *AC

4.3.

Các lệnh logic đại số (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

O n
A n

AN n
ON n

AI n
OI n

ANI n

ONI n

Mô tả
Lệnh thực hiện toán tử ^ (A) và V
(O) giữa giá trò logic của tiếp điểm n
và giá trò bít đầu tiên trong ngằn xếp.
Kết quả được ghi lại bít đầu trong ngăn
xếp.

Toán hạng
n: I, Q, M, SM, T, C, V
(bit)

Lệnh thực hiện toán tử ^ (A) 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 trong
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) và V (O) giữa giá trò logic của tiếp
điểm n và giá trò bít đầu tiên trong
ngằn xếp. Kết quả được ghi lại bít đầu
trong ngăn xếp.

n: 1
(bit)

Lệnh thực hiện tức thời toán tử ^
(A) 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 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.

SVTH: LÊ THÀNH TÂM

18


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

Bảng sao tóm tắt cú pháp gọi các lệnh stack logic trong STL.
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 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.

Không có

OLD

Lệnh tổ hợp giá trò của bít đầu tiên và thứ hai
của 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.

Không có

LPS

Lệnh logic Push (LPS) sao chụp giá trò của bít
đầu 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.

Không có

LRD

Lệnh sao chép giá trò của bít thứ hai vào bít đầu
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í.


Không có

LPP

Lệnh kéo ngăn xếp lên một bít. Giá trò của bít
sau được chuyển cho bít trước.

Không 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:

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

SVTH: LÊ THÀNH TÂM


19


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

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

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ư sau:
SVTH: LÊ THÀNH TÂM

20


ĐỒ ÁN TỐT NGHIỆP

Trước

GVHD: NGUYỄN THỊ YẾN TUYẾT

ALD

Sau

c0


m

c1

c2

c2

c3

c3

c4

c4

c5

c5

c6

c6

c7

c7

c8


m= c0^ c1

c8

Trước

OLD

Sau

c0

m

c1

c2

c2

c3

c3

c4

c4

c5


c5

c6

c6

c7

c7

c8

m= c0 v c1

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
SVTH: LÊ THÀNH TÂM

21



ĐỒ ÁN TỐT NGHIỆP

Trước

LPS

GVHD: NGUYỄN THỊ YẾN TUYẾT

Trước LRD Sau

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

0

0

0

X^y
(And)

xvy
(Or)

x XOR
y


0

0

0

1

0

1

1

1

0

0

1

1

1

1

1


1

0

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

SVTH: LÊ THÀNH TÂM

Mô tả

Toán hạng

22


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

ANDW IN1 IN2

Lệnh thực hiện phép logic AND
IN1: VW, T, C,
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

ORW

Lệnh thực hiện phép logic OR
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

IN1

IN2

IN2

ORD IN1

IN2

IN2: VW, T, C,
IW, QW

Lệnh thực hiện phép logic XOR
(word) W, CA,
giữa các bít tương ứng của hai từ
AIW,
*VD, *AC

IN1 và IN2 . Kết quả được ghi lại
vào IN2

XORW IN1 IN2

ANDD IN1

*AC, Hằng số.

Lệnh thực hiện phép logic AND
IN1: VD, ID, QD,
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ố.
giữa các bít tương ứng của hai từ
kép IN1 và IN2. Kết quả được ghi
lại vào IN2
IN2: VD, ID, QD,
Lệnh thực hiện phép logic XOR MD, SMD
giữa các bít tương ứng của hai từ
(Dword)AC,
kép IN1 và IN2. Kết quả được ghi
*VD, *AC
lại vào IN2

XORD IN1 IN2


Biểu diễn trong LAD
LAD
WAND
EN
IN1
IN2

WOR
EN
IN1
IN2

SVTH: LÊ THÀNH TÂM

Mô tả
W

OUT

W

OUT

Toán hạng

Lệnh thực hiện phép
IN1: VW, T, C, IW,
tính logic AND theo từng QW
bít của hai từ IN1 và IN2.

(word) SMW, AC,
Kết quả được ghi vào từ
AIW, VD
OUT.
*AC, Hằng số.

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

23


ĐỒ ÁN TỐT NGHIỆP

WXOR
WOR
EN
EN
IN1
IN1
IN2
IN2


W
W

OUT
OUT

WAND
EN
IN1
IN2

DW

OUT

WOR
EN

DW

IN1
IN2

OUT

WXOR
EN
IN1
IN2


4.4.

GVHD: NGUYỄN THỊ YẾN TUYẾT

DW

OUT

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

Lệnh thực hiện phép
IN1: VD, ID, QD,
tính logic AND giữa các MD, SMW
bít của hai từ kép IN1 và
(Dword) AC, AIW,
IN2. Kết quả được ghi
Hằng số, VD, AC
vào từ OUT.
IN2: VD, ID, QD,
Lệnh thực hiện phép
MD, SMW
tính logic OR giữa các bít
của hai từ kép IN1 và

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

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

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

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

LAD
NOT

SVTH: LÊ THÀNH TÂM


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

Toán hạng
Không có

24


ĐỒ ÁN TỐT NGHIỆP

GVHD: NGUYỄN THỊ YẾN TUYẾT

có tiếp điểm đảo thì nó thông mạch.

P

N

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

Không có

Tiếp điểm chuyển đổi âm cho phép
dòng cung cấp thông mạch trong một

vòng quét khi sườn xung điều khiển
chuyển từ 1 xuống 0.

Không có

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

NOT

Lệnh đảo giá trò của bít đầu tiên trong ngăn
xếp.

Không có

EU

Lệnh nhận biết sự chuyển tiếp trạng thái từ
0 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.

Không có

ED


Lệnh nhận biết sự chuyển tiếp trạng thái từ
1 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.

Không có

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
c0

SVTH: LÊ THÀNH TÂM

∼c
0

Trước
1


EU Sau
c1

Trước ED
C0

Sau
1

25


×