Mục lục
Lời nói đầu
Chương I. Giới thiệu chung về “điều khiển lập trình bằng plc”
Chương II. Giới thiệu về PLC ư S7ư200 của SIEMEN
2.1 Giới thiệu thiết bị điều khiển lập trình
2.2 Tệp lệnh cơ bản dùng cụ thiết bị điều khiển khảtrình PLC S7ư200
2.3 Sơ đồ kết nối vào ra của thiết bị PLC S7ư200
2.4 Chương trình điều khiển
Chương III. Tìm hiểu tập lệnh PLC của S7ư200
3.1 Sơ đồ mạch động lực
3.2 Sơ đồ mạch điều khiển
Chương IV. Viết chương trình điều khiển cho đóng thùng bia tự động.
4.1 Thiết bị dùng trong hệ thống
4.2 Những chú ý khi vận hành và thay thế, sữa chữa kết luận.
Chương V. Chạy thử chương trình trên phần mềm mô phỏng Simulator của Siemen.
31 trang |
Chia sẻ: maiphuongdc | Lượt xem: 3970 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Đồ án Điều khiển lập trình bằng PLC cho hệ thống đóng thùng bia tự động, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ng ph−ơng pháp nuôi bộ nhớ Ram bằng 1 nguồn pin. Nếu cần l−u trữd dài
thì ta dùng loại pin có chất l−ợng cao...
- Bộ nhớ ROM (Read Only Memory): Rom là bộ nhớ chỉ đọc. Bộ nhớ này có đặc
tính trái ng−ợc với bộ nhớ Ram là rất khó xoá, nên khi có sự cố về điện thì nội dung
ch−ơng trình vẫn còn trong bộ nhớ. Nh−ng hiện này ng−ời ta có thể thay đổi nội dung
của nó. Tuỳ thuộc vào cách tạo nội dung, cách xoá nội dung, cách nập nội dung mới vào
nó mà ta có các loại bộ nhớ Rom khác nhau nh−: PROM, EPROM, RPROM, EEPROM,
EAROM.
Điển hình ở đây ta xét 2 loại bộ nhớ ROM đ−ợc dùng rộng rãi trong các PLC là
EPROM và EEPROM.
+ EPROM (Erasable Programmable Read – Only Memory): Bộ nhớ Rom có thể
xoá nội dung ch−ơng trình. Nó đ−ợc xoá bằng tia cực tím, sau khi nội dung cũ đã xoá thì
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
8
ng−ời ta dùng một thiết bị đặc biệt để ghi nội dung ch−ơng trình mới vào trong Rom.
Loại này rất phức tạp vì phải dùng thiết bị đắt tiền.
+ EEPROM (Electrically Erasable Programmble Read – Only Memory):
Bộ nhớ loại này cũng giống nh− bộ nhớ EPROM nh−ng ph−ơng thức xoá nội dung
ch−ơng trình đơn giản hơn. Tức là nó đ−ợc xoá bằng điện và việc nạp một ch−ơng trình
mới cho nó cũng đơn giản. Ngoài hai loại trên trong các PLC ng−ời ta còn th−ờng dùng
FLASH EROM. Đối với những bộ điều khiển logic theo ch−ơng trình thuộc loại lớn có
thể có nhiều Module CPU nhằm tăng tốc độ xử lý.
c. Mô đun nhập: (Input Module)
Tín hiệu vào: Các tín hiệu đầu vào nhận các thông tin điều khiển bên ngoài dạng
tín hiệu Logic hoặc tín hiệu t−ơng tự. Các tín hiệu Lôgic có thể từ các nút ấn điều khiển
các công tắc hành trình, tín hiệu báo động, các tín hiệu của các quy trình công
nghệ,Các tín hiệu t−ơng tự đ−a vào của PLC có thể là tín hiệu điện áp từ các căn nhiệt
để điều chỉnh nhiệt độ cho mọt lò nào đó hoặc tín hiệu từ máy phát tốc, cảm biến.
Các cảm biến (Sensors) đ−ợc nối với Module ngõ vào của PLC. Thông th−ờng
một Module nhập có 8 ngõ vào hoặc 16 ngõ vào hoặc có thể hơn nữa tuỳ thuộc vào yêu
cầu của ng−ời sử dụng mà chọn cho phù hợp. Đối với những ứng dụng nhỏ thì cần
khoảng 16 ngõ vào, ứng dụng trung bình thì cần khoảng 80 ngõ vào, ứng dụng cỡ dùng
các cuộn dây Rơle cho ngõ vào. Điện áp hoạt động đ−a vào các cuộn dây này th−ờng
vào khoảng 24 VDC với dòng vào vài mA (6mA), rất bé so với dòng tiêu thụ qua cuộn
dây trong rơle thực tế. Cũng có PLC hoạt động với điện áp 220V AC. Mặc dù điện áp
cao nh− vậy nh−ng vẫn đảm bảo an toàn cho mạch điện tử của PLC vì ng−ời ta sử dụng
các linh kiện cách ly (Optocoupler). Theo tiêu chuẩn công nghiệp với điện áp 24 VDC,
ng−ời ta quy định:
- Điện áp từ 0 ữ 5 VDC thể hiện logic 0 ở ngõ vào
- Điện áp từ 11 ữ 30 VDC thể hiện logic 1 ở ngõ vào
d. Mô đun xuất (Output Module):
Trong PLC thì Module xuất cũng hết sức quan trọng không kém module nhập. Nó
có thể có 8 hoặc 16 ngõ ra mà trên một Module xuất, do vậy ng−ời sử dụng có thể kết
nối nhiều module lại với nhau để đ−ợc số ngõ ra phù hợp. Đối với những ứng dụng nhỏ
thì cần 16 ngõ ra. Những ứng dụng lớn hơn có thể dùng tới 26 hoặc 256 ngõ ra. Cũng
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
9
giống nh− Module nhập thì các ngõ ra của Module xuất là các tiếp điểm của rơle, khả
năng chịu tải lớn 220V/1A. Nếu muốn khống chế phụ tải công suất lớn thì thông qua các
thiết bị trung gian nh−: CTT. Aptomat. Triac
Ngoài ra còn có PLC với ngõ ra là tín hiệu điện: Logic 0 ứng với điện áp từ 0 ữ
0,8V và logic 1 ứng với điện áp từ 12 ữ 28V với dòng ra có khi lên tới 300mA. Dải điện
áp cấp nguồn từ 12V ữ 28V.
PLC thực hiện ch−ơng trình:
PLC thực hiện ch−ơng trình theo chu trình lặp. Mỗi vòng lặp đ−ợc gọi là vòng
quét (scan). Bắt đầu mỗi vòng quét là việc quét các tín hiệu vào. Trong quá trình quét
này trạng thái hiện thời của mỗi tín hiệu vào đ−ợc chứa trong bảng ảnh. Việc quét các
đầu vào này rất nhanh, việc quét phụ thuộc vào các module vào, xung nhịp cũng nh− các
đặc tính riêng của mỗi loại CPU thực hiện ch−ơng trình sử dụng. Công việc này thực
hiện từ lệnh đầu tiên đến lệnh cuối cùng của ch−ơng trình (lệnh MEND). Nh− vậy thời
gian thực hiện ch−ơng trình sẽ phụ thuộc vào độ dài ch−ơng trình, độ phức tạp của các
lệnh, và đặc tính kỹ thuật của từng loại CPU
Hình 2.4: Chu kỳ thực hiện vòng quét của CPU trong bộ PLC
Trong quá trình thực hiện ch−ơng trình CPU luôn làm việc với bảng ảnh ra. Tiếp
theo của việc quét ch−ơng trình là truyền thông nội bộ và tự kiểm tra lỗi. Vòng quét
đ−ợc kết thúc bằng giai đoạn chuyển dữ liệu từ bộ đệm ảo ra ngoại vi. Những tr−ờng hợp
cần thiết phải cập nhật module ra ngay trong quá trình thực hiện ch−ơng trình. Các PLC
hiện đại sẽ có sẵn các lệnh để thực hiện điều này. Tập lệnh của PLC chứa các lệnh ra
trực tiếp đặc biệt, lệnh này sẽ tạm thời dừng hoạt động bình th−ờng của ch−ơng trình để
cập nhật module ra, sau đó sẽ quay lại thực hiện ch−ơng trình. Thời gian cần thiết để
Chuyển dữ liệu từ
đầu ra Q tới cổng
ra
Chuyển dữ liệu từ đầu
cổng vào tới đầu vào I
Truyền thông và
kiểm tra bộ nhớ
Thực hiện
ch−ơng trình
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
10
PLC thực hiện đ−ợc một vòng quét gọi là thời gian vòng quét (Scan time). Thời gian
vòng quét không cố định, tức là không phải vòng quét nào cũng đ−ợc thực hiện trong
một khoảng thời gian nh− nhau. Có vòng quét đ−ợc thực hiện lâu, có vòng quét đ−ợc
thực hiện nhanh tuỳ thuộc vào số lệnh trong ch−ơng trình đ−ợc thực hiện, vào khối l−ợng
dữ liệu đ−ợc truyền thông trong vòng quét đó. Một vòng quét chiếm thời gian quét ngắn
thì ch−ơng trình điều khiển đ−ợc thực hiện càng nhanh.
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
với 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 thì 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 một cách trực tiếp với cổng vào/ra.
Nếu sử dụng các chế độ ngắt, ch−ơng trình con 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.
ch−ơng 2: Giới thiệu về PLC - S7-200 của SIEMEN
* Cấu trúc bộ nhớ PLC:
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
11
Bộ điều khiển lập trình S7-200 đ−ợc chia thành 4 vùng nhớ. Với 1 tụ có nhiệm vụ
duy trì dữ liệu trong thời gian nhất định khi mất nguồn bộ nhớ S7-200 có tính năng động
cao, đọc và ghi trong phạm vi toàn vùng loại trừ các bít nhớ đặc biệt SM ( Special
Memory) chỉ có thể truy nhập để đọc.
Vùng ch−ơng trình Ch−ơng trình Ch−ơng trình
Vùng tham số Tham số Tham số
Vùng dữ liệu Dữ liệu Dữ liệu
Vùng đối t−ợng EEPROM Bộ nhớ ngoài
Hình 2.3: Bộ nhớ trong và ngoài của S7-200
* Vùng ch−ơng trình: Là vùng bộ nhớ đ−ợc sử dụng để l−u trữ các lệnh ch−ơng trình
vùng này thuộc bộ nhớ trong đọc và ghi đ−ợc
* Vùng tham số: Là vùng l−u giữ các tham số nh−: Từ khoá, địa chỉ trạm.cũng
giống nh− vùng ch−ơng trình thuộc bộ nhớ trong đọc và ghi đ−ợc.
* Vùng dữ liệu: Là vùng nhớ động đ−ợc sử dụng cất các dữ liệu của ch−ơng trình bao
gồm các kết quả các phép tính nó đ−ợc truy cập theo từng bit từng byte vùng này đ−ợc
chia thành những vùng nhớ với các công dụng khác nhau.
Vùng I (Input image register): Là vùng nhớ gồm 16 byte I (đọc/ghi): I.O ữ I.15
Vùng Q (Output image register): Là vùng nhớ gồm 16 byte Q (đọc/ghi): Q.O
ữ Q.15
Vùng M (Internal memory bits): là vùng nhớ gồm có 32 byte M (đọc/ghi): M.O
ữ M.31
Vùng V (Variable memory): Là vùng nhớ gồm có 10240 byte V (đọc/ghi): V.O
ữ V.10239
Vùng SM: (Special memory): Là vùng nhớ gồm:
C
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
12
- 194 byte của CPU chia làm 2 phần: SM0 – SM29 chỉ đọc và SM30 – SM194
đọc/ghi.
- SM200-SM549 đọc/ghi của các module mở rộng
* Vùng đối t−ợng: Là timer (định thì), 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.
- Timer (bộ định thì): đọc/ghi T0 ữ T255
- Counter (bộ đếm): đọc/ghi C0 ữ C255
- Bộ đệm vào analog (đọc): AIW0 ữ AIW30
- Bộ đệm ra analog (ghi): AQW0 ữ AQW30
- Accumulator (thanh ghi): AC0 ữ AC3
- Bộ đếm tốc độ cao: HSC0 ữ HSC5
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), từ kép (Double word).
a. Cấu trúc ch−ơng trình:
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) 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 ch−ơng trình chính đó là mệnh (MEND).
Các 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 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 bằng cách viết nh− vậy cấu trúc
ch−ơng trình đ−ợc rõ ràng và thuận tiện hơn trong việc đọc ch−ơng trình có thể trộn lẫn
các ch−ơng trình con và ch−ơng trình xử lý ngắt đằng sau ch−ơng trình chính.
Main program
.
.
Thực hiện trong
1 vòng quét
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
13
.
MEND
SBR (n) {n=0 ữ 255} ch−ơng trình con
.
.
.
RET
INT (n){n0 ữ 255} ch−ơng trình xử lý ngắt
.
.
.
RETI
Thực hiện khi đ−ợc
ch−ơng trình chính
Thực hiện khi có tín
hiệu báo ngắt
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
14
Ch−ơng III. Tìm hiểu tập lệnh PLC của S7-200
* Ph−ơng pháp lập trình PLC với phần mềm STEP7-Micro/WIN 32:
- Cách lập trình cho S7-200 dựa trên hai ph−ơng pháp cơ bản: Ph−ơng pháp hình
thang (ladder logic – viết tắt là LAD) và ph−ơng pháp liệt kê lệnh (Statement List viết
tắt là STL) và ph−ơng pháp thứ 3 mà không đ−ợc dùng thông dụng là ph−ơng pháp sơ đồ
khối chức năng (Funtion Block Diagram viết tắt là FBD).
- Ch−ơng trình đ−ợc viết theo kiểu LAD thiết bị lập trình sẽ tạo ra một ch−ơng trình
theo kiểu STL t−ơng ứng. Nh−ng ng−ợc lại không phải tất cả các ch−ơng trình viết theo
kiểu STL đều có thể chuyển sang dạng LAD.
* Ph−ơng pháp LAD: LAD là ngôn ngữ lập trình đồ hoạ 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ơ 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 rơle các tiếp điểm có thể
th−ờng đóng: th−ờng mở
Q 0.0
- Cuộn dây (coil): là biểu t−ợng -( ) mô tả rơle 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 th−ờng là các bộ thời gian (timer), bộ đếm (counte) và các hàm toán
học:
+100
- 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 nguồn bên phải dòng điện chạy từ trái qua tiếp điểm đến các cuộn
dây hoặc các hộp trở về bên phải nguồn.
IN TON
PT
CU CTU
A
PV
ADD
EN END
IN 1 OUT
IN 2
AC1
AC2
ACD
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
15
* Ph−ơng pháp liệt kê lệnh STL: Ph−ơng pháp liệt kê (STL) là ph−ơng pháp thực
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.
Để tạo một ch−ơng trình dạng STL ng−ời lập trình cần phải hiểu rõ ph−ơng thức
sử dụng của ngăn xếp logic của S7-200 (S0 ữ S8).
Ngăn xếp lôgic là một khối gồm 9 bit chồng lên nhau. Tất cả các thuật toán liên
quan đến ngăn xếp, đều chỉ làm việc với bit đầu tiên hoặc với bit đầu và bit thứ hai của
ngăn xếp (S0 ữ S1) giá trị logic mới đều có thể đ−ợc gửi vào ngăn xếp.
* Ph−ơng pháp FBD: Dùng các phần tử logic để viết ch−ơng trình ví dụ các mạch
AND, OR, NOT.
c. Cú pháp lệnh cơ bản trong PLC S7-200
Hệ lệnh của S7-200 đ−ợc chia làm 3 nhóm:
- Nhóm lệnh không điều kiện: Các lệnh mà khi thực hiện thì làm việc độc lập
không phụ thuộc vào giá trị logic của ngăn xếp.
- Nhóm lệnh có điều kiện: Các lệnh chỉ thực hiện đ−ợc khi bit đầu tiên của ngăn
xếp có giá trị logic bằng 1.
- Nhóm lệnh đặt nhãn: Các nhãn lệnh đánh dấu vị trí trong tập lệnh.
Trong các bảng lệnh còn mô tả sự thay đổi t−ơng ứng của nội dung ngăn xếp khi
lệnh đ−ợc thực hiện. Cả hai ph−ơng pháp LAD và STL đều sử dụng ký hiệu I để chỉ việc
thực hiện tức thời (Immediateli) tức là giá trị đ−ợc chỉ dẫn trong lệnh vừa đ−ợc chuyển
vào thanh ghi ảo vừa đồng thời đ−ợc chuyển đến tiếp điểm chỉ dẫn trong lệnh ngay khi
lệnh đ−ợcthực hiện chứ không phải chờ đến giai đoạn trao đổi với ngoại vi của vòng
quét. Điều đó khác với lệnh không tức thời là giá trị đ−ợc chỉ định trong lệnh chỉ đ−ợc
chuyển vào thanh ghi ảo khi thực hiện lệnh.
Bảng 3-1: Một số lệnh của S7-200 thuộc nhóm lệnh thực hiện vô điều kiện.
Section 1.01 Tên
lệnh
Section 1.02 Mô tả
= n Giá trị của bit đầu tiên ngăn xếp đ−ợc sao chép sang điểm n chỉ
dẫn trong lệnh.
= I n Giá trị của bit đầu tiên ngăn xếp đ−ợc sao chép trực tiếp sang điểm
n chỉ dẫn trong lệnh ngay khi lệnh đ−ợc thực hiện.
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
16
A n
Thực hiện toán tử và (AND) giữa giá trị logic của bit đầu tiên ngăn
xếp với giá trị logic của điểm n chỉ dẫn trong lệnh. Kết quả đ−ợc
ghi lại vào bit đầu tiên của ngăn xếp.
ALD
Thực hiện toán tử và (AND) giữa giá trị logic của bit đầu tiên ngăn
xếp với giá trị logic của bit thứ 2 ngăn xếp. Kết quả đ−ợc ghi lại
vào bit đầu tiên của ngăn xếp. Các giá trị còn lại trong ngăn xếp
đ−ợc kéo lên một bit.
AN n Thực hiện toán tử và (AND) giữa giá trị logic của bit đầu tiên ngăn
xếp với giá trị logic nghịch đảo của điểm n chỉ dẫn trong lệnh. Kết
quả đ−ợc ghi lại vào bit đầu tiên của ngăn xếp.
CTU Cxx, PV Khởi động bộ đếm tiến theo s−ờn lên của tín hiệu vào. Bộ đếm
đ−ợc đặt lại trạng thái ban đầu (reset) nếu đầu vào R của bộ đếm
đ−ợc kích (có mức logic 1).
CTUD Cxx,PV Khởi động bộ đếm tiến theo s−ờn lên của tín hiệu đầu vào thứ nhất
và đếm lùi theo s−ờn lên của tín hiệu đầu vào thứ hai. Bộ đếm đ−ợc
reset lại nếu đầu vào R của bộ đếm đ−ợc kích (có mức logic 1).
ED Đặt giá trị logic 1 vào bit đầu tiên của ngăn xếp khi xuất hiện s−ỡn
xuống của tín hiệu.
DU Đặt giá trị logic 1 vào bit đầu tiên của ngăn xếp khi xuất hiện s−ỡn
lên của tín hiệu.
LD n Nạp giá trị logic của điểm n chỉ dẫn trong lệnh vào bit đầu tiên của
ngăn xếp. Các giá trong ngăn xếp đ−ợc đẩy xuống một bit.
LDN n Nạp giá trị logic nghịch đảo của điểm n chỉ dẫn trong lệnh vào bit
đầu tiên của ngăn xếp. Các giá trong ngăn xếp đ−ợc đẩy xuống
một bit.
LDW <=n1, n2 Bit đầu tiên trong ngăn xếp nhận giá trị logic 1 nếu nội dung hai từ
n1 và n2 thảo mãn n1 ≤ n2.
LDW = n1, n2 Bit đầu tiên trong ngăn xếp nhận giá trị logic 1 nếu nội dung hai từ
n1 và n2 thảo mãn n1 = n2.
LDW >=n1, n2 Bit đầu tiên trong ngăn xếp nhận giá trị logic 1 nếu nội dung hai từ
n1 và n2 thảo mãn n1 ≥ n2.
LPP Kéo nội dung ngăn xếp lên một bit. Giá trị mới của bit trên là giá
trị cũ của bit d−ới, độ sâu ngăn xếp giảm đi một bit (Giá trị của bit
đầu tiên bị đẩy ra khỏi ngăn xếp – xoá).
LRD Sao chép giá trị của bit thứ hai vào bit thứ hai của ngăn xếp. Các
giá trị còn lại từ bit thứ hai trở đi đ−ợc giữ nguyên vị trí.
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
17
MEND Kết thúc phần ch−ơng trình chính trong một vòng quét.
NOT Đảo giá trị logic của bit đầu tiên ngăn xếp.
O n Thực hiện toán tử hoặc (OR) giữa giá trị logic của bit đầu tiên ngăn
xếp với giá trị logic của điểm n chỉ dẫn trong lệnh. Kết quả đ−ợc
ghi lại vào bit đầu tiên của ngăn xếp.
OI n Thực hiện toán tử hoặc (OR) giữa giá trị logic của bit đầu tiên ngăn
xếp với giá trị logic của điểm n chỉ dẫn trong lệnh. Kết quả đ−ợc
ghi lại vào bit đầu tiên của ngăn xếp.
OLD Thực hiện toán tử hoặc (OR) giữa giá trị logic của bit đầu tiên ngăn
xếp với giá trị logic của bit thứ hai ngăn xếp. Kết quả đ−ợc ghi lại
vào bit đầu tiên của ngăn xếp. Các giá trị còn lại trong ngăn xếp
đ−ợc kéo lên một bit.
ON n Thực hiện toán tử và (AND) giữa giá trị logic của bit đầu tiên ngăn
xếp với giá trị logic của điểm n chỉ dẫn trong lệnh. Kết quả đ−ợc
ghi lại vào bit đầu tiên của ngăn xếp.
RET Lệnh thoát khỏi ch−ơng trình con và trả điều khiển về ch−ơng trình
chính đã gọi nó.
RETI Lệnh thoát khỏi ch−ơng trình xử lý ngắt (interrupt) và trả điều
khiển về ch−ơng trình chính.
Bảng 3-2: Một số lệnh trong nhóm lệnh có đIều kiện (chỉ thực hiện khi bit đầu tiên ngăn
xếp có giá trị logic 1):
Tên lệnh Môtả
+D IN1, IN2 Thực hiện hai phép cộng hai số nguyên kiểu từ kép IN1 và IN2.
Kết quả đ−ợc ghi lại vào IN2
+I IN1, IN2 Thực hiện hai phép cộng hai số nguyên kiểu từ IN1 và IN2. Kết
quả đ−ợc ghi lại vào IN2
-D IN1, IN2 Thực hiện hai phép trừ hai số nguyên kiểu từ kép IN1 và IN2. Kết
quả đ−ợc ghi lại vào IN2
-I IN1, IN2 Thực hiện hai phép trừ hai số nguyên kiểu từ IN1 và IN2. Kết quả
đ−ợc ghi lại vào IN2
+R IN1,IN2 Thực hiện hai phép cộng hai số thực (32 bit) IN1 và IN2. Kết quả
đ−ợc ghi lại vào IN2
-R IN1,IN2 Thực hiện hai phép trừ hai số thực (32 bit) IN1 và IN2. Kết quả
đ−ợc ghi lại vào IN2
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
18
Tên lệnh Môtả
*R IN1,IN2 Thực hiện hai phép nhân hai số thực (32 bit) IN1 và IN2. Kết quả
đ−ợc ghi lại vào IN2
/R IN1,IN2 Thực hiện hai phép chia hai số thực (32 bit) IN1 và IN2. Kết quả
đ−ợc ghi lại vào IN2
ANDD
IN1.IN2
Thực hiện toán logic AND giữa các giá trị kiểu từ kép IN1 và IN2.
Kết quả đ−ợc ghi lại vào IN2
ANDW
IN1.IN2
Thực hiện toán logic AND giữa các giá trị kiểu từ kép IN1 và IN2.
Kết quả đ−ợc ghi lại vào IN2
CALL n Gọi ch−ơng trình con đ−ợc đánh nhãn n
CRET Kết thúc một ch−ơng trình con và trả lại kiểu điều khiển về ch−ơng
trình gọi nó
CRTI Kết thúc một ch−ơng trình xử lý ngắt và trả điều khiển về ch−ơng
trình chính
MOVB
IN.OUT
Sao giá trị của Byte OUT
MOVD
IN.OUT
Sao giá trị của từ kép IN sang từ kép OUT
MOVR
IN.OUT
Sao số thực IN sang OUT
MOVW
IN.OUT
Sao giá trị của từ IN sang từ OUT
ORD IN1, IN2 Thực hiện toán tử OR cho hai từ kép IN1 và IN2. Kết quả đ−ợc ghi
lại vào IN2
ORW IN1, IN2 Thực hiện toán tử OR cho hai từ IN1 và IN2. Kết quả đ−ợc ghi lại
vào IN2
PLS x Đ−a bộ phát xung nhanh đã đ−ợc định nghĩa trong bộ nhớ đặc biệt
vào trạng thái tích cực. Xung đ−a ra đ−ợc đ−a ra cổng QO.x
RLD IN, n Quay tròn từ kép IN sang trái n bit
RLW IN, n Quay tròn từ IN sang trái n bit
RRD IN, n Quay tròn từ kép IN sang phải n bit
RRW IN, n Quay tròn từ IN sang phải n bit
SLD IN, n Dịch từ kép IN sang trái n bit
SLW IN, n Dịch từ IN sang trái n bit
SQRT IN, OUT Lấy căn bậc hai của một số thực 32 bit IN và ghi kết quả vào OUT
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
19
Tên lệnh Môtả
(32 bit)
SRD IN, n Dịch từ kép IN sang phải n bit
SRW IN, n Dịch từ IN sang phải n bit
STOP Dùng “mềm” ch−ơng trình
SWAP IN Đổi bộ hai bit đầu tiên và cuối cùng của byte IN cho nhau
Bảng 3-3: Các lệnh đặt nhãn (Label):
Tên lệnh Mô tả
(i) INT Nn Khai báo nhãn n cho ch−ơng trình xử lý ngắt
LBL xx Đặt nhãn xx trong ch−ơng trình, định h−ớng cho lệnh nhảy JMP
NEXT Lệnh kết thúc vòng lặp FOR.NEXT
NOP Lệnh rỗng (No operation)
SBR n Khai báo nhãn n cho ch−ơng trình con
d. Các lệnh Timer, Counter:
* 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
th−ờng đ−ợc gọi là khâu trễ. Nếu ký hiệu tín hiệu (logic) vào là x (1) và thời gian trễ là t
thì tín hiệu đầu ra của Timer là x (l-t). trong S7-200 có hai loại Timer khác nhau:
- Timer tạo thời gian trễ không có nhớ (On-Delay Timer), ký hiệu là TON.
- Timer tạo thời gian trễ có nhớ (Retentive On-Delay Timer), ký hiệu là TONR.
Hai loại Timer này phân biệt nhau bởi phản ứng của chúng đối với tín hiệu vào. Cả
hai loại đều bắt đầu tạo thời gian trễ từ thời điểm có s−ờn lên của tín hiệu vào. Nh−ng
TON sẽ tự Reset khi đầu vào có mức logic 0, còn TONR thì không tự Reset khi mất tín
hiệu vào. TON đ−ợc dùng để tạo thời gian trễ trong một khoảng thời gian, còn TONR
thời gian trễ đ−ợc tạo ra trong nhiều khoảng khác nhau. Trong phần này chúng ta chỉ
nghiên cứu loại Timer TON.
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
20
Lệnh Độ phân
giải
Giá trị cực
đại
CPU 212 CPU 214
1)
ton
1 ms 32,767 s T32 T32, T96
10 ms 327,67 s T33 - T36 T33 - T36, T97 - T100
100 ms 3276,7 s T37 - T63 T37 - T63, T101 - T127
TONR
1 ms 32,767 s T0 T0, T64
10 ms 327,67 s T1 - T4 T1-T4, T65-T68
100 ms 3276,7 s T5 - T31 T5-T31, T69-T95
Cú pháp khaibáo Timer trong LAD và STL nh− sau:
LAD STL Mô tả Toán hạng
Txx
IN TON
PT
TON Txx
+ n
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 (có mức 1). Nếu nh− giá
trị đếm tức thời lớn hơn hoặc
bằng giá trị đạt đ−ợc PT thì T-
bit coá 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 ở đầu vào IN.
Txx (word):
CPU 212: 32-63
CPU 214: 32-63
và 96-127
PT (wort):
VW, T, C, IW.
N= 1 – 32762
(Số nguyên)
Thời gian trễ T= PT3 độ phân giải
* Counter:
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
21
Couner là bộ đếm thực hiện chức năng đếm s−ờn lên của xung. S7-200 có hai loại
bộ đếm: bộ đếm tiến (CTU) và bộ đếm tiến/lùi (CTUD). Bộ đếm tiến đếm số s−ờn của
xung 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 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, đ−ợc gọi là giá trị 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., 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 thì bộ đếm báo ra ngoài bằng cách đặt giá trị logic 1 vào bit đặc biệt
của nó, đ−ợc gọi là C-bit. Tr−ờng hợp giá trị đếm còn nhỏ hơn giá trị đặt tr−ớc thì C-bit
có giá trị logic 0.
Khác với các Timer, các Counter đều có chân nối với tín hiệu điều khiển xoá để
thực hiện đặ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 quy định là trạng thái bit đầu tiên của ngăn xếp trong STL. Bộ
đếm đ−ợc reset khi tín hiệu xoá này có mức 1 hoặc khi lệnh R (reset) đ−ợc thực hiện với
C-bit. Khi bộ đếm reset thì cả C-word và C-bit đều nhận giá trị 0.
Bộ đếm tiến/lùi CTUD thực hiện đếm tiến khi gặp s−ờn lên của xung vào cổng
đếm tiến, ký hiệu là CU trong LAD hoặc bit thứ 3 ngăn xếp trong STL, và đếm lùi khi
gặp s−ờn lên của xung vào cổng đếm lùi, ký hiệu là CD trong LAD hoặc bit thứ 2 ngăn
xếp trong STL. Việc xoá bộ đếm CTUD cũng có hai cách t−ơng tự nh− bộ đếm CTU.
Cú pháp khai báo Counter LAD và STL nh− sau:
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
22
LAD STL Mô tả Toán hạng
Cxx
CU CTU
R
PV
CTU Cxx, +n
Khai báo bộ đếm tiến
theo s−ờn lên của tín
hiệu vào cổng CU số
hiệu xx kiểu CTU. Khi
giá trị đếm tức thời C-
word của Cxx lớn hơn
hoặc bằng giá trị đặt
tr−ớc PV, C-bit (Cxx) có
giá trị logic bằng 1. Bộ
đếm ngừng đếm khi C-
word Cxx đạt giá trị cực
đại 32767.
Cxx (word):
CPU 212: 0 –
47
CPU 214: 0 –
47
Và 80 – 127
PV (Word):
VW, T, C, IW,
n=1 – 32767
(số nguyên)
Cxx
CU CTUD
CD
R
PV
CTUD Cxx,
+ n
Khai báo bộ đếm
tiến/lùi, đếm tiến theo
s−ờn lên của tín hiệu
đến CU và đếm lùi theo
s−ờn len của tín hiệu
đến CD. Khi giá trị tức
thời C- word của Cxx
lớn hơn hoặc bằng giá
trị đặt tr−ớc PV, C- bit
(Cxx) có giá trị logic
bằng 1. Bộ đếm đ−ợc
reset khi đầu vào R có
giá trị logic 1. Bộ đếm
ngừng đếm tiến khi C-
word Cxx đạt giá trị
cực đại 32767 và ngừng
đếm lùi khi C- word
Cxx đạt giá trị cực tiểu
là - 32767.
Cxx (word):
CPU 212: 48 –
63
CPU 214: 48 –
79
PV (Word):
VW, T, C, IW,
n=1 – 32767
(số nguyên)
email: huynhphuclinh@gmail.com or linhhp_vl@yahoo.com
23
Ký hiệu Cxx của bộ đếm đồng thời cũng là địa chỉ hình thức của C - word và của C- bit.
Mặc dù cũng địa chỉ hình thức, song C- word và C- bit vẫn đ−ợc phân biệt với nhau nhờ
kiểu lệnh sử dụng làm việc với kiểu từ hay kiểu tiếp điểm (bit).
Ví dụ:
LD C48 // Lệnh làm việc với C-bit của bộ đếm C48.
LDW >= C48 // Lệnh làm việc với C- word cụa bộ đếm C48.
e. Lệnh so sánh lệnh di chuyển nội dung ô nhớ và một số bit nhớ đặc biệt.
* Các lệnh so sánh:
Nếu các quyết định v
Các file đính kèm theo tài liệu này:
- a5.PDF