Với tín hiệu từ cảm biến áp lực phản hồi về thiết bị biến tần, bộ vi xử lý của biến tần sẽ so sánh giá trị truyền về với giá trị cài đặt để từ đó thay đổi tần sốdòng điện, điện áp cung c
Trang 1MỤC LỤC
PHẦN 1 .1
CHƯƠNG 1:GIỚI THIỆU VỀ ĐỀ TÀI 2
1.1 MỤC ĐÍCH NGHIÊN CỨU: 2
1.2 VÀI NÉT VỀ ĐỀ TÀI: .2
1.3 GIỚI HẠN ĐỀ TÀI: .4
1.4 MƠ TẢ HOẠT ĐỘNG CỦA HỆ THỐNG: .5
1.5 HƯỚNG THỰC HIỆN ĐỀ TÀI: .6
CHƯƠNG 2: GIỚI THIỆU VỀ PLC S7-200 8
2.1 GIỚI THIỆU CHUNG VỀ THIẾT BỊ ĐIỀU KHIỂN LẬP TRÌNH PLC 8
2.1.1 Giới thiệu sơ lược về PLC S7-200: 8
2.1.2 Thiết bị nhập xuất: 10
2.1.3 Cấu trúc vùng nhớ: 11
2.1.4 Nguyên tắc thực hiện chương trình: 12
2.2 GIỚI THIỆU VỀ PLC S7-200 CPU-224 AC/DC/RELAY: 14
2.2.1 Hình ảnh của PLC S7-200 CPU- 224: .14
2.2.2 Giới thiệu các module mở rộng: 15
2.3 NGÔN NGỮ LẬP TRÌNH CỦA S7_200 .18
2.3.1 Phương pháp lập trình: .18
2.3.2 Bảng lệnh của s7-200: 19
2.2.3 Lệnh vào/ra: 27
CHƯƠNG 3:TÌM HIỂU S7-200 PC ACCESS .43
3.1 TỔNG QUAN VỀ S7-200 PC ACCESS : 43
3.1.1 Giới thiệu : 43
3.1.2 Những tiện ích của PC ACCESS : .43
3.1.3 Khả năng giao tiếp của PC Access : 44
3.1.4 Xác định tốc độ baud và địa chỉ network : 44
3.1.5 Các giao thức của S7-200 PC Access trong network: 45
3.2 CỬA SỔ LÀM VIỆC CỦA S7-200 PC ACCESS : 47
3.2.1 tree view: .48
Trang 23.2.2 Item view: 49
3.2.3 Test Client view: 50
3.3 Sự giao tiếp Server và Client trong S7-200 PC Access: 51
3.4 VÙNG NHỚ VÀ KIỂU DỮ LIỆU CỦA ITEM: .51
3.5 SỰ GIAO TIẾP GIỮA AUTOMATION CLIENT VỚI S7-200 PC AC-CESS: 52
3.5.1 Excel client: .52
3.5.2 Visual Basic Client: 53
3.6 Các bước tạo Tag trên PC- Access .54
CHƯƠNG 4:TÌM HIỂU PHẦN MỀM WINCC 60
4.1 Giới thiệu về WinCC: .60
4.1.1 Control Center trong hệ thống WinCC: .60
4.1.2 Nội dung của Control Center: .61
4.1.3 Soạn thảo: .62
4.1.4 Các bước để tạo một Project trong WinCC: .63
4.1.5 Trình tự tạo một Project: .63
4.2 Cách lập trình WinCC: 73
4.3 Cấu hình truyền thông: 76
CHƯƠNG 5: GIỚI THIỆU VỀ BIẾN TẦN .79
5.1 Giới thiệu Biến tần Danfoss: 79
5.2 Hình ảnh của Biến tần Danfoss: 80
5.3 Sơ đồ đấu nối Terminal điều khiển: 80
5.4 Chú thích về các đèn báo LED: .83
PHẦN 2: .90
CHƯƠNG 6:THIẾT KẾ VÀ THI CÔNG MÔ HÌNH 91
BƠM CẤP NƯỚC 91
6.1 GIỚI THIỆU CÁC LINH KIỆN 91
6.1.1 CPU 224 AC-DC-Relay của PLC Siemens S7-200 91
6.1.2 Module Analog EM 235 của PLC Siemens S7-200 91
Trang 36.1.5 Van 1 chiều: 92
6.1.6 Relay: 92
6.1.7 Máy bơm: .93
6.2 SƠ ĐỒ ĐIỆN .94
6.3 QUY ĐỊNH NGÕ RA NGÕ VÀO: .95
6.4 Hình ảnh của mô hình 96
6.5 THIẾT KẾ GIAO DIỆN : 97
6.6 CÁC THÔNG SỐ SỬ DỤNG CHO BIẾN TẦN: 101
6.6.1 Điều khiển biến tần bằng Wicc: .101
6.6.2 Điều khiển biến tần theo ngõ vào analog: .102
6.6.3 Sơ đồ đấu nối bơm 3 pha vào biến tần: .102
6.7 XỬ LÝ PID: 102
6.8 Ngắt và xử lý ngắt: 108
6.9 LƯU ĐỒ GIẢI THUẬT: .110
6.10 LẬP TRÌNH PLC: .112
CHƯƠNG 7:TÀI LIỆU THAM KHẢO 119
Trang 5hệ thống điều khiển tiết kiệm năng lượng cho trạm bơm cấp II có thời gian hoàn vốn đầu tư hết sức ngắn và làm giảm chi phí cho công tác quản lý vận hành thiết bị Máy bơm và quạt gió là những ứng dụng rất thích hợp với truyền động biến đổi tốc
độ tiết kiệm năng lượng Vì vậy trong phạm vi đồ án tốt nghiệp chúng ta chỉ đề cập đến việc sử dụng thiết bị biến tần trong điều khiển tốc độ tiết kiệm năng lượng cho các máy bơm nước và ổn định áp suất trong đường ống cấp nước
1.2 VÀI NÉT VỀ ĐỀ TÀI:
Mỗi một trạm bơm thường có nhiều máy bơm cùng cấp nước vào một đường ống chung Áp lực và lưu lượng của đuờng ống thay đổi hàng giờ theo nhu cầu Bơm và các thiết bị đi kèm như đường ống van, đài nước được thiết kế với lưu lượng nước bơm rất lớn Vì thế điều chỉnh lưu lượng nước bơm được thực hiện bằng các phương pháp sau:
_Điều chỉnh bằng cách khép van trên ống đẩy của bơm
_Điều chỉnh bằng đóng mở các máy bơm hoạt động đồng thời
_Điều khiển thay đổi tốc độ quay bằng khớp nối thuỷ lực
Điều khiển theo những phưong pháp trên không những không tiết kiệm được năng lượng điện tiêu thụ mà còn gây nên hỏng hóc thiết bị và đường ống do chấn động khi đóng mở van gây nên, đồng thời các máy bơm cung cấp không bám sát được chế độ tiêu thụ trên mạng lưới Để giải quyết các vấn đề kể trên chỉ có thể
sử dụng phương pháp điều khiển truyền động biến đổi tốc độ bằng thiết bị biến tần.Thiết bị biến tần là thiết bị điều chỉnh biến đôỉ tốc độ quay của động cơ bằng cách thay đổi tần số của dòng điện cung cấp cho động cơ Hiện nay thiết bị biến tần trên thế giới có nhiều nhà cung cấp thiết bị biến tần như Danfoss ,Siemen
Trang 6,ABB…Không chỉ cung cấp thiết bị cho ngành cấp thoát nước mà cho nhiều ngành công nghiệp khác
• Nguyên tắc điều khiển máy bơm của thiết bị biến tần:
+ Khi sử dụng thiết bị biến tần cho phép điều chỉnh một cách linh hoạt lưu lượng và áp lực cấp vào mạng lưới theo yêu cầu tiêu thụ
Với tín hiệu từ cảm biến áp lực phản hồi về thiết bị biến tần, bộ vi xử lý của biến tần sẽ so sánh giá trị truyền về với giá trị cài đặt để từ đó thay đổi tần sốdòng điện, điện áp cung cấp cho động cơ làm thay đổi tốc độ quay của động cơ đểđảm bảo lưu lượng và áp lực cấp vào mạng lưới
+Sự điều chỉnh linh hoạt các máy bơm khi sử dụng biến tần được cụ thểnhư sau:
Điều chỉnh tốc độ quay khi áp suất cùng thay đổi
Đa dạng trong phương thức điều khiển các máy bơm trong trạm bơm Một thiết bị biến tần có thể điều khiển đến 5 máy bơm Có ba phương thức điều khiển các máy bơm:
9 Điều khiển theo mực nước:Trên cơ sở tín hiệu mực chất lỏng trong bểhút hồi tiếp về biến tần Bộ vi xử lý sẽ so sánh tín hiệu hồi tiếp với mực chất lỏng được cài đặt Trên cơ sở kết quả so sánh biến tần sẽ điều khiển đóng mở các máy bơm sao cho phù hợp để mực chất lỏng trong bể luôn bằng giá trị cài đặt Ngược lại khi tín hồi tiếp lớn hơn giá trị cài đặt, biến tần sẽ điều khỉên cắt lần lượt các bơm đểmực chất lỏng luôn đạt ổn định ở giá trị cài đặt
9 Điều khiển theo hình thức chủ động/ thụ động: Mỗi một máy bơm được nối với một bộ biến tần trong đó có một biến tần chủ động và các biến tần khác là thụ động Khi tín hiệu hồi tiếp về biến tần chủ động thì bộ vi xử lý của biến tần này sẽ so sánh với tín hiệu được cài đặt để từ đó tác động đến các biến tần thụđộng điều chỉnh tốc độ quay của các máy bơm cho phù hợp và không gây ra hiện tượng va đập thuỷ lực phản hồi từ hệ thống Phương thức điều khiển này là linh hoạt nhất, khắc phục những khó khăn trong quá trình vận hành bơm khác với thiết
kế Phương thức này được sử dụng cho trường hợp thay đổi cả về lưu lượng và áp lực trên mạng lưới
9 Điều khiển theo hình thức biến tần điều khiển một bơm: Một máy bơm chính được điều chỉnh thông qua thiết bị biến tần, các máy bơm còn lại đóng
mở trực tiếp bằng khởi động mềm Khi tín hiệu áp lực và lưu lượng trên mạng lưới hồi tiếp về biến tần Bộ vi xử lý sẽ so sánh với giá trị cài đặt, và điều khiển tốc độmáy bơm chính chạy với tốc độ phù hợp và điều khiển đóng mở các máy bơm còn
Trang 7sao cho hạn chế tối đa hiện tượng va đập thuỷ lực mạng lưới cấp nước Phương thức điều khiển này được áp dụng cho trường hợp áp lực của máy bơm đúng với thiết kếnhưng lưu lượng thay đổi Bằng các phương thức điều khiển linh hoạt trên theo nhu cầu tiêu thụ của mạng lưới sẽ thay thế đài nước trên mạng lưới
Những ưu điểm khi điều khiển tốc độ bơm bằng thiết bị biến tần
_ Hạn chế được dòng điện khởi động cao
_Tiết kiệm năng lượng
_Điều khiển linh hoạt các máy bơm
_Sử dụng công nghệ điều khiển vecto
Ngoài ra còn các ưu điểm khác của thiết bị biến tần như:
_Dãy công suất rộng từ 1,1 – 400 Kw
_ Tự động ngừng khi đạt tới điểm cài đặt
_Tăng tốc nhanh giứp biến tần bắt kịp tốc độ hiện thời của động cơ,
_Tự động tăng tốc giảm tốc tránh quá tải hoặc qúa điện áp khi khởi động,
_Bảo vệ được động cơ khi : ngắn , mạch, mất pha lệch pha, quá tải, quá dòng, quá nhiệt
_Kết nối với máy tính chạy trên hệ điều hành Windows,
_Kích thước nhỏ gọn không chiếm diện tích trong nhà trạm,
_Mô men khởi động cao với chế độ tiết kiệm năng lượng,
_Dễ dàng lắp đặt vận hành,
_Hiển thị các thông số của động cơ và biến tần
Từ những ưu điểm trên của thiết bị biến tần ta lựa chọn phương án lắp máy biến tần cho trạm bơm thay thế cho việc xây dựng đài nước trên mạng lưới nhằm tiết kiệm chi phí trong xây dựng và vận hành quản lý
1.3 GIỚI HẠN ĐỀ TÀI:
Từ những kiến thức học được tại trường và ngoài thực tế thì trong luận văn này em chỉ có thể thực hiện được một số công việc mà thôi Em còn hạn chế về kiến thức cũng như khả năng về kinh tế và thời gian có hạn nên cũng chỉ có thể tạo được
mô hình nhỏ, nhưng với mô hình này đã thể hiện được quy trình hoạt động của một
hệ thống bơm cấp nước thực tế Một số công việc thực hiện trong luận văn:
9 Tìm hiểu mô hình bơm cấp nước hoạt động trong thực tế
9 Tìm hiểu và nghiên cứu PLC S7 – 200
9 Giao tiếp PLC với Wincc giám sát hệ thống
9 Giao tiếp PLC với Biến tần, thiết kế giao diện điều khiển tự động bằng WinCC Điều khiển PID cho máy bơm chạy sao cho giá trị áp suất không thay đổi
dù tải có thay đổi
Trang 89 Trên màn hình điều khiển sẽ cho thấy tất cả trạng thái hoạt động của hệthống, các số liệu luôn được cập nhật về liên tục để tiện theo dõi
9 Kiểm tra và xử lý khi có sự cố bất thường, nó được quan sát và điều khiển thông qua dao diện Scada
9 Thi công mô hình phần cứng
1.4 MÔ TẢ HOẠT ĐỘNG CỦA HỆ THỐNG:
Trong hệ thống có tất cả là 3 máy bơm: hai máy bơm 1 pha và một máy bơm 3 pha Biến tần sẽ điều khiển trực tiếp máy bơm 3 pha, một máy bơm 1 pha sẽbơm dự phòng khi mà máy bơm 3 pha chạy hết công suất định mức mà áp suất vẫn chưa ổn định ở giá trị setpoint Máy bơm dự phòng này sẽ được điều khiển trực tiếp bằng điện lưới 220V Còn máy bơm 1 pha còn lại dùng để bơm nước thải sau khi được xử lý ra sông
Khi khởi động hệ thống lên thì máy bơm 3 pha được điều khiển bằng Biến tần sẽ được khởi động chạy cho tới khi đạt được áp suất đặt, khi áp suất trong đường ống đã bằng áp suất đặt thì biến tần sẽ giữ ổn định tốc độ của máy bơm này Trường hợp tải thay đổi tức là áp suất thay đổi, tùy theo tải tăng hay giảm thì Biến tần sẽ điều khiển máy bơm chạy nhay hay chạy chậm
Khi tải tăng tức là áp suất sẽ giảm, lúc này muốn ổn định áp suất thì Biến tần sẽ điều khiển máy bơm chạy nhanh hơn ( tức là tăng tần số của máy bơm 3 pha) cho tới khi đạt được áp suất đặt
Ngược lại, khi tải giảm thì Biến tần sẽ giảm tần số của máy bơm xuống cho tới khi đạt được áp suất đặt
Trường hợp, nếu máy bơm 3 pha đã chạy hết công suất mà vẫn chưa đạt được áp suất đặt thì lúc này máy bơm dự phòng (máy bơm 1 pha) sẽ được khởi động lên, khi máy bơm dự phòng này được khởi động thì chắc chắn áp suất trong đường ống sẽ tăng lên vượt qua áp suất đặt, lúc này biến tần sẽ tự động giảm tần sốlại cho tới khi nào áp suất bằng với áp suất đặt
Nếu lúc này tải giảm mạnh (áp suất tăng lên cao) thì bơm dự phòng sẽ tựđộng dừng chỉ còn bơm biến tần hoạt động Hệ thống cứ hoạt động liên tục như vậy,
áp suất trong đường ống luôn luôn ổn định tránh tình trạng áp suất tăng quá cao sẽgây vỡ đường ống cấp nước
Trang 9Sơ đồ nguyên lý của hệ thống
1.5 HƯỚNG THỰC HIỆN ĐỀ TÀI:
Đối với các hệ thống bơm cấp nước trong thực tế thì người ta sử dụng máy bơm công suất lớn, biến tần công suất lớn, để bơm cấp nước cho cả khu dân cư, thành phố, cho các khu công nghiêp Nhưng với đề tài này thì em đã mô hình hóa hệthống nên em chỉ sử dụng máy bơm và biến tần có công suất nhỏ, chính vì vậy mà
em chỉ ổn định áp suất đặt với giá trị nhỏ Một phần là vì những máy bơm công suất lớn rất nặng và to nên em không thể làm mô hình được, lý do nữa là chi phí cho các máy bơm và biến tần công suất lớn thì quá lớn đối với khả năng của em
Nghiên cứu kỹ hệ thống bơm cấp nước sử dụng biến tần trong thực tế
Nắm rõ trình tự điều khiển từng máy bơm
Tìm hiểu về biến tần sử dụng
Lựa chọn máy bơm và biến tần có công suất hợp lý
Tìm hiểu về giao tiếp PLC với biến tần
Lập trình PLC
Lập trình bộ PID để điều khiển máy bơm
Thiết kế giao diện SCADA để giám sát hệ thống
Giao tiếp PLC với SCADA thông qua phần mềm PC – Access
Thi công mô hình và chạy thử kiểm tra, sửa lỗi
Trang 10 SƠ ĐỒ HỆ THỐNG ĐIỀU KHIỂN
CHẤP HÀNH SCADA
Trang 11CHƯƠNG 2:
GIỚI THIỆU VỀ PLC S7-200
2.1 GIỚI THIỆU CHUNG VỀ THIẾT BỊ ĐIỀU KHIỂN LẬP TRÌNH PLC
- PLC ( Programmable Logic Controller ): Bộ điều khiển lập trình, PLC được xếp vào trong họ máy tính, được sử dụng trong các ứng dụng công nghiệp và thương mại
- PLC đặt biệt sử dụng trong các ứng dụng hoạt động logic điều khiển chuổi sựkiện, duy trì biến số theo giá trị không đổi hoặc theo hàm cho trước
- PLC có đầy đủ chức năng và tính toán như vi xử lý Ngoài ra, PLC có tích hợp thêm một số hàm chuyên dùng như bộ điều khiển PID, dịch chuyển khối dữ liệu, khối truyền thông,…
- PLC có những ưu điểm:
+ Có kích thước nhỏ, được thiết kế và tăng bền để chịu được rung động, nhiệt,
ẩm và tiếng ồn, đáng tin cậy
+ Rẻ tiền đối với các ứng dụng điều khiển cho hệ thống phức tạp
+ Dễ dàng và nhanh chống thay đổi cấu trúc của mạch điều khiển
+ PLC có các chức năng kiểm tra lỗi, chẩn đoán lỗi
+ Có thể nhân đôi các ứng dụng nhanh và ít tốn kém
- Một PLC gồm có những phần cơ bản sau:
+ Bộ nguồn: cung cấp nguồn thiết bị và các module mở rộng được kết nối vào + CPU: thực hiện chương trình và dữ liệu để điều khiển tự động các tác vụ hoặc quá trình
+ Vùng nhớ
+ Các ngõ vào/ra: gồm có các ngõ vào/ra số, vào/ra tương tự Các ngõ vào dùng để quan sát tín hiệu từ bên ngoài đưa vào (cảm biến, công tắc), ngõ ra dùng để điều khiển các thiết bị ngoại vi trong quá trình
+ Các cổng/module truyền thông (CP: Communication Professor): dùng để nối CPU với các thiết bị khác để kết nối thành mạng, xử lý thực hiện truyền thông giữa các trạm trong mạng
+ Các loại module chức năng (FM: Function Module): Ví dụ các module điều khiển vòng kín, các module thực hiện logic mờ…
Trang 12- Phân loại:
+ PLC thường được phân làm hai loại theo cấu trúc phần cứng:
PLC kiểu hộp đơn
Thường sử dụng trong các thiết bị lập trình cỡ nhỏ
Được cung cấp dưới dạng nguyên chiếc bao gồm cả bộ nguồn, bộ xử
lý, bộ nhớ và các thiết bị nhập xuất
+ PLC kiểu module
Kiểu module gồm các module riêng cho bộ nguồn, bộ xử lý,…
Các module thường được lập trên các rãnh bên trong hộp kim loại
Sự phối hợp các module cần thiết tuỳ theo công dụng do ngừơi dùng xác định ⇒khá linh hoạt
- CPU thường có:
+ Bộ thuật toán và logic: xử lý dữ liệu, thực hiện các phép toán số học (cộng, trừ) và các phép toán logic
+ Bộ nhớ (thanh ghi): dùng để lưu trữ thông tin
+ Bộ điều khiển: chuẩn thời gian của các phép toán
Cấu trúc bên trong của PLC
Trang 139 Khối điều khiển trung tâm (CPU: Central Processing Unit) gồm ba
phần: Bộ xử lý, hệ thống bộ nhớ và hệ thống nguồn cung cấp
Hình: sơ đồ khối tồng quát của CPU
Có nhiều loại bộ nhớ để người sử dụng lựa chọn theo mục đích hay yêu cầu sử dụng
• ROM ( Read Only Memory): bộ nhớ chỉ đọc không nhớ, dùng lưu trữchương trình cố định, không thay đổi thường dùng cho nhà sản xuất PLC
• RAM ( Random Access Memory) : bộ nhớ truy xuất ngẫu nhiên dùng
để lưu dữ liệu và chương trình cho người sử dụng
• EPROM: ROM lập trình có thể xóa được
• EEPROM: Electrically EPROM
2.1.2 Thiết bị nhập xuất:
- Tín hiệu nhập từ các bộ cảm biến có thể là:
- Tín hiệu analog: từ các bộ cảm biến nhiệt độ, áp suất,…
- Tín hiệu rời rạc: từ các công tắc trực tiếp, gián tiếp (công tắc điện từ, công tắc kiểu điện dung…)
- Chuỗi xung: từ encoder
Trang 14- Tín hiệu xuất ra có thể dưới dạng:
+ Tín hiệu analog: điều khiển động cơ…
+ Tín hiệu số: điều khiển contactor, van điều khiển hướng trong các van solenoid…
- Thiết bị xuất dạng số: 3 loại
Ưu điểm: tốc độ chuyển mạch nhanh
Khuyết điểm: chỉ dùng điện DC, dễ hư hỏng, thiết bị phải sử dụng cầu chì hay mạch điện tử bảo vệ Các bộ ghép quang được dùng để cách điện
+ Kiểu Triac:
Ưu điểm: điều khiển tải bên ngoài với nguồn công suất ac
Khuyết điểm: dễ hư hỏng do quá dòng Luôn có cầu chì bảo vệ trong khi qua Relay, Trasistor hay Triac, tín hiệu từ kênh suất có thể là tín hiệu 24V, 100mA, 110V, lA; 240VAC,lA;
- Thiết bị nhập dạng số: khi có tín hiệu vào, diode quang sẽ phát quang, tạo ra xung hồng ngoại, xung này được transistor quang tiếp nhận và đưa vào bộ xử lý Nhờ có thiết bị này mà tín hiệu nhập dải rộng có thể được cung cấp cho bộ vi xử lý (5v): tín hiệu 5v, 24v,110v,220v
Trang 15 I: Input: ngõ vào rồi rạc
Q: Output: ngõ ra rời rạc
M: Internal Memory: vùng nhớ nội
SM: Special Memory: vùng nhớ đặc biệt
V: Variable Memory: vùng nhớ biến
+ Vùng đối tượng: timer, bộ đếm, 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
2.1.4 Nguyên tắc thực hiện chương trình:
- PLC thực hiện chương trình theo chu trình vòng lặp Mõi vòng lặp được gọi là vòng quét Trong từng vòng quét, chương trình được thực hiện tư lệnh đầu tiên và kết thúc tại lệnh kết thúc (MEND)
- Có thể lập trình cho PLC S7-200 bằng cách sử dụng phần mềm sau Micro/WIN
STEP7 Các chương trình cho S7STEP7 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 con là một bộ phận của chương trình chính, thực hiện mỗi khi được gọi từ chương trình chính Ưu điểm của chương trình con:
- Giảm kích thước chương trình chính
- Thời gian quét giảm (nếu không thoả điều kiện thì sẽ không nhảy tới chương trình con)
- Dễ dàng sao chép qua các chương trình khác
- Các chương trình xử lý ngắt là một bộ phận của chương trình Chương trình phục vụ ngắt được gọi khi có sự kiện ngắt xuất hiện Sự kiện ngắt đã được định nghĩa trước trong hệ thống
Trang 16Giai đoạn nhập dữ liệu từ ngoại vi
Giai đoạn chuyển
dữ liệu ra ngoại vi
Giai đoạn truyền thông
nội bộ và tự kiểm tra lỗi
Giai đoạn thực hiện chương trình
Main Program
… MEND Thực hiện một vòng
SBR 0 Chương trình con thứ nhất
… RET
Thực hiện khi được chương trình chính gọi
…
SBR n Chương trình con thứ n+1
… RET
INT 0 Chương trình xử lý ngắt thứ 1
… RETI
Thực hiện khi có tín hiệu báo ngắt
…
INT n Chương trình xử lý ngắt thứ n+1
… RETI
- Mỗi vịng quét trải qua 4 giai đoạn:
Trang 172.2 GIỚI THIỆU VỀ PLC S7-200 CPU-224 AC/DC/RELAY:
2.2.1 Hình ảnh của PLC S7-200 CPU- 224:
- CPU được cấp nguồn 220VAC.Tích hợp 14 ngõ vào số (mức 1 là 24Vdc, mức 0
là 0Vdc) 10 ngõ ra dạng relay
Mô tả các đèn báo trên S7-200:
- SF (đèn đỏ): Đèn đỏ SF báo hiệu khi PLC có hỏng hóc
- RUN (đèn xanh): Đèn xanh sáng báo hiệu PLC đang ở chế độ làm việc và thực
hiện chương trình nạp ở trong máy
- STOP (đèn vàng): Đèn vàng sáng báo hiệu PLC đang ở chế độ dừng, không
thực hiện chương trình hiện có
- Ix.x (đèn xanh)chỉ trạng thái logic tức thời của cổng Ix.x Đèn sáng tương ứng
mức logic là 1
- Qx.x (đèn xanh): chỉ trạng thái logic tức thời của cổng Qx.x Đèn sáng tương
ứng mức logic là 1
Trang 18 Cách đấu nối ngõ vào ra PLC:
Cách đấu nối S7-200 và các module mở rộng:
- S7-200 và module vào/ra mở rộng được nối với nhau bằng dây nối Hai đầu dây nối được bảo vệ bên trong PLC và module.Chúng ta có thể kết nối PLC và module sát nhau để bảo vệ hoàn toàn dây nối CPU224 cho phép mở rộng tối đa 7 module
2.2.2 Giới thiệu các module mở rộng:
- Modul EM223 16I/16Q-DC/Relay:
Trang 19+ Modul này được gắn thông qua cáp nối tới CPU224 Sử dụng nguồn trực tiếp từ CPU
+ Modul có 16 gõ vào dạng số, 16 ngõ ra kiểu Relay
+ Địa chỉ bắt đầu là I2.0 cho ngõ vào và Q2.0 cho ngõ ra
- Modul EM223 4I/4Q- DC/Relay:
+ Tương tự như Modul EM223 16I/16Q-DC/Relay
+ Modul này tích hợp 4 ngõ vào số và 4 ngõ ra kiểu Relay
+ Địa chỉ bắt đầu là I4.0 cho ngõ vào, Q4.0 cho ngõ ra
Trang 20- Modul analog EM235:
Trang 212.3 NGÔN NGỮ LẬP TRÌNH CỦA S7_200
2.3.1 Phương pháp lập trình:
- Cách lập trình cho S7_200 nói riêng và các PLC của Siemens nói chung 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
thành LAD) và phương pháp liệt kê lệnh ( Statement List hay gọi là STL)
- Nếu chương trình được viết theo kiểu LAD, thiết bị lập trình sẽ tự tạo ra một chương trình theo kiểu STL tương ứng Ngược lại không phải mọi chương trình viết theo kiểu STL cũng có thể chuyển sang được dạng LAD
- Định nghĩa về 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ản điều khiển bằng Relay
- Định nghĩa về STL: 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
Trang 222.3.2 Bảng lệnh của s7-200:
Hệ lệnh của S7_200 được chia làm ba nhóm được mô tả như sau:
- Các lệnh mà khi thực hiện thì làm việc thì làm việc độc lập không phụ thuộc vào giá trị logic của ngăn xếp
- Các lệnh chỉ thực hiện được khi bit đầu tiên của ngăn xếp có giá trị là 1
- Các nhãn lệnh đánh dấu vị trí trong tập lệnh
Cả hai phương pháp LAD và STL sử dụng ký hiệu I để chỉ định việc thực hiện tức thời (Immediatetly), tức là giá trị được chỉ định trong lệnh vừa được chuyển vào thanh ghi ảo đồng thời được chuyển tới tiếp điểm được chỉ dẫn trong lệnh ngay khi lệnh được thực hiện chứ không phải chờ tới 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á tri được chỉ định trong lệnh chỉ được chuyển vào thanh ghi ảo khi thực hiện lệnh
Bảng 1: Các lệnh của S7-200 được thực hiện vô điều kiện
= n Giá trị của bit đâu tiên trong 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 trong ngăn xếp được sao chép
trực tiếp sang điểm n ngay khi lệnh được thực hiện
A n
Giá trị của bit đâu tiên trong ngăn xếp được thực hiện bằng phép tính AND với đ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
AB<= n1, n2
Thực hiện lệnh AND giữa giá trị của bit đầu tiên trong ngăn xếp với giá trị 1 nếu nội dung của hai byte n1 không lớn hơn giá trị của byte n2 Kết quả được ghi lại vào bit đầu của ngăn xếp
AB = n1, n2
Thực hiện lệnh AND giữa giá trị của bit đầu tiên trong ngăn xếp với giá trị 1 nếu nội dung của hai byte n1 và n2 thỏa mãn n1=n2 Kết quả được ghi lại vào bit đầu của ngăn xếp
Thực hiện lệnh AND giữa giá trị của bit đầu tiên
Trang 23n1 và n2 thỏa mãn n1≥n2 Kết quả được ghi lại vào bit đầu của ngăn xếp
AD<= n1, n2
Thực hiện lệnh AND giữa giá trị của bit đầu tiên trong ngăn xếp với giá trị 1 nếu nội dung của hai từ kép (4 byte) n1 và n2 thỏa mãn n1≤n2 Kết quả được ghi lại vào bit đầu của ngăn xếp
AD = n1, n2
Thực hiện lệnh AND giữa giá trị của bit đầu tiên trong ngăn xếp với giá trị 1 nếu nội dung của hai từ kép n1 và n2 thỏa mãn n1=n2 Kết quả được ghi lại vào bit đầu của ngăn xếp
AD >= n1, n2
Thực hiện lệnh AND giữa giá trị của bit đầu tiên trong ngăn xếp với giá trị 1 nếu nội dung của hai từ kép n1 và n2 thỏa mãn n1≥n2 Kết quả được ghi lại vào bit đầu của ngăn xếp
AW<= n1, n2
Thực hiện lệnh AND giữa giá trị của bit đầu tiên trong ngăn xếp với giá trị 1 nếu nội dung của hai từ (2 byte) n1 và n2 thỏa mãn n1≤n2 Kết quả được ghi lại vào bit đầu của ngăn xếp
AW = n1, n2
Thực hiện lệnh AND giữa giá trị của bit đầu tiên trong ngăn xếp với giá trị 1 nếu nội dung của hai từ n1 và n2 thỏa mãn n1=n2 Kết quả được ghi lại vào bit đầu của ngăn xếp
AW >=n1, n2
Thực hiện lệnh AND giữa giá trị của bit đầu tiên trong ngăn xếp với giá trị 1 nếu nội dung của hai từ n1 và n2 thỏa mãn n1≥n2 Kết quả được ghi lại vào bit đầu của ngăn xếp
AR<=1, n2(5)
Thực hiện lệnh AND giữa giá trị của bit đầu tiên trong ngăn xếp với giá trị 1 nếu nội dung của hai số thực n1 và n2 thỏa mãn n1≤n2 Kết quả được ghi lại vào bit đầu của ngăn xếp
AR =n1, n2(5) Thực hiện lệnh AND giữa giá trị của bit đầu tiên
trong ngăn xếp với giá trị 1 nếu nội dung của hai số
Trang 24thực n1 và n2 thỏa mãn n1=n2 Kết quả được ghi lại vào bit đầu của ngăn xếp
AR>= n1, n2(5)
Thực hiện lệnh AND giữa giá trị của bit đầu tiên trong ngăn xếp với giá trị 1 nếu nội dung của hai số thực n1 và n2 thỏa mãn n≥1n2 Kết quả được ghi lại vào bit đầu của ngăn xếp
AI n
Lệnh AND thực hiện tức thời giữa giá trị của bit đầu tiên trong ngăn xếp với tiếp diểm n được chỉ dẫn Kết quả được ghi vào bit đầu của ngăn xếp
ALD
Thực hiện lệnh AND giữa giá trị của bit đầu tiên và bit thứ hai trong ngăn xếp Kết quả được ghi lại vào bit đầu 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 lệnh AND giữa giá trị của bit đầu tiên và giá trị 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 của ngăn xếp
ANI n
Thực hiện tức thời lệnh AND giữa giá trị của bit đầu tiên và giá trị 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 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 đầu vào Bộ đếm được đặt lại trạng thái ban đầu (reset) nếu tín hiệu đầu vào R của bộ đếm được kích
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 đặt lại trạng thái ban đầu (reset) nếu tín hiệu đầu vào R của bộ đếm được kích
ED Đặt giá trị logic 1 vào bit đầu của ngăn xếp khi xuất
hiện sườn xuống của tín hiệu
EU Đặt giá trị logic 1 vào bit đầu của ngăn xếp khi xuất
hiện sườn lên của tín hiệu
Trang 25đầu tiên trong ngăn xếp
LPP
Kéo nội dung của ngăn xếp lên một bit Gí trị mới của bit trên là giá trị cũ của bit dưới, độ sâu của ngăn xếp giảm đi một bit
LPS
Sao chép giá trị của bit đầu tiên của ngăn xếp vào bit thứ hai Nội dung còn lại của ngăn xếp bị đẩy xuống một bit
LRD
Sao chép giá trị của bit thứ hai vào bit đầu tiên của ngăn xếp Các giá trị còn lại của ngăn xếp giữ nguyên vị trí
MEND (1)(2) Kết thúc phần chương trình chính trong một vòng
OB <=n1,n2
Thực hiện phép toán OR giữa bit đầu tiên của ngăn xếp với giá trị logic 1 nếu nội dung của hai byte n1 và n2 thỏa điều kiện n1≤n2 Kết quả được ghi lại vào bit đầu tiên của ngăn xếp
OB =n1,n2
Thực hiện phép toán OR giữa bit đầu tiên của ngăn xếp với giá trị logic 1 nếu nội dung của hai byte n1 và n2 thỏa điều kiện n1=n2 Kết quả được ghi lại vào bit đầu tiên của ngăn xếp
OB >=n1,n2
Thực hiện phép toán OR giữa bit đầu tiên của ngăn xếp với giá trị logic 1 nếu nội dung của hai byte n1 và n2 thỏa điều kiện n1≥n2 Kết quả được ghi lại vào bit đầu tiên của ngăn xếp
OD <=n1,n2
Thực hiện phép toán OR giữa bit đầu tiên của ngăn xếp với giá trị logic 1 nếu nội dung của hai byte n1 và n2 thỏa điều kiện n1≤n2 Kết quả được ghi lại vào bit đầu tiên của ngăn xếp
Trang 26OD =n1,n2
Thực hiện phép toán OR giữa bit đầu tiên của ngăn xếp với giá trị logic 1 nếu nội dung của hai byte n1 và n2 thỏa điều kiện n1=n2 Kết quả được ghi lại vào bit đầu tiên của ngăn xếp
OD >=n1,n2
Thực hiện phép toán OR giữa bit đầu tiên của ngăn xếp với giá trị logic 1 nếu nội dung của hai byte n1 và n2 thỏa điều kiện n1≥n2 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 tức thời toán tử OR giữa bit đầu tiên của ngăn xếp với đ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ử OR giữa bit đầu tiên và bit thứ hai của 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 của ngăn xếp được chuyển lên một bit
ON n
Thực hiện toán tử OR giữa bit đầu tiên của ngăn xếp với giá trị 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
ONI n
Thực hiện toán tử OR giữa bit đầu tiên của ngăn xếp với giá trị 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
OR =n1,n2(5)
Thực hiện toán tử OR giữa giá trị logic của bit đầu tiên trong ngăn xếp với giá trị logic 1 Nếu hai số thực n1, n2 thỏa mãn điều kiện n1=n2 Kết quả được ghi lại vào bit đầu tiên của ngăn xếp
OR>=n1,n2(5)
Thực hiện toán tử OR giữa giá trị logic của bit đầu tiên trong ngăn xếp với giá trị logic 1 Nếu hai số thực n1, n2 thỏa mãn điều kiện n1≥n2 Kết quả được ghi lại vào bit đầu tiên của ngăn xếp
OR<=n1,n2(5)
Thực hiện toán tử OR giữa giá trị logic của bit đầu tiên trong ngăn xếp với giá trị logic 1 Nếu hai số thực
Trang 27lại vào bit đầu tiên của ngăn xếp
OW =n1,n2(5)
Thực hiện toán tử OR giữa giá trị logic của bit đầu tiên trong ngăn xếp với giá trị logic 1 Nếu hai từ n1, n2 thỏa mãn điều kiện n1=n2 Kết quả được ghi lại vào bit đầu tiên của ngăn xếp
OW>=n1,n2(5)
Thực hiện toán tử OR giữa giá trị logic của bit đầu tiên trong ngăn xếp với giá trị logic 1 Nếu hai từ n1, n2 thỏa mãn điều kiện n1≥n2 Kết quả được ghi lại vào bit đầu tiên của ngăn xếp
OW<=n1,n2(5)
Thực hiện toán tử OR giữa giá trị logic của bit đầu tiên trong ngăn xếp với giá trị logic 1 Nếu hai từ n1, n2 thỏa mãn điều kiện n1≤n2 Kết quả được ghi lại vào bit đầu tiên của ngăn xếp
RET (3)(1)(4) Lệnh thoát khỏi chương trình con và trả điều khiển về
chương trình đã gọi nó
RETI
(3)(2)(4)
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: Các lệnh có điều kiện ( chỉ thực hiện khi bit đầu tiên trong ngăn xếp có
giá trị là logic 1)
+D IN1,IN2
Thực hiện 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 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 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 phép trừ hai số nguyên kiểu từ IN1 và IN2 Kết quả được ghi lại vào IN2
Trang 28+R IN1,IN2(5)
Thực hiện phép cộng hai số thực (32bit) IN1 và IN2 Kết quả được ghi lại vào IN2
-R IN1,IN2(5)
Thực hiện phép trừ hai số thực (32bit) IN1 và IN2 Kết quả được ghi lại vào IN2
*R IN1,IN2(5)
Thực hiện phép nhân hai số thực (32bit) IN1 và IN2 Kết quả được ghi lại vào IN2
/R IN1,IN2(5)
Thực hiện phép chia hai số thực (32bit) IN1 và IN2 Kết quả được ghi lại vào IN2
ANDD IN1,IN2
Thực hiện toán tử logic AND giữa các giá trị kiểu từ kép Kết quả được ghi lại vào IN2
ANDW IN1,IN2
Thực hiện toán tử logic AND giữa các giá trị kiểu từ Kết quả được ghi lại vào IN2
ATCH INT,EVENT Khai báo chương trình xử lý ngắt INT
theo kiểu EVENT
ATH IN, OUT,LEN
Biến đổi một sâu kí tự từ mã ASCII từ vị trí IN (kiểu Byte) với độ dài (LEN kiểu Byte) sang mã Hexa(cơ số 16) và ghi vào mãng kể từ byte OUT
MUL IN1, IN2
Nhân số nguyên 16 bit IN1 với hai bit thấp của số nguyên IN2 sau đó kết quả được ghi vào IN2
ORD IN1, IN2 Thực hiện toán tử OR cho hai từ kép IN1
và IN2 sau đó ghi kết quả vào IN2
ORW IN1, IN2 Thực hiện toán tử OR cho hai từ IN1 và
IN2 sau đó ghi kết quả vào IN2
Trang 29SWAP IN Đổi chổ hai bit đầu tiên và cuối cùng của
byte IN cho nhau
TODR T(5)
Đọc giờ và ngày tháng sau hiện thời từ đồng hồ và ghi vào bộ đệm 8 byte có byte đầu là T
TODW T(5) Ghi vào đồng hồ giá trị thời gian, ngày,
tháng từ bộ đệm 8 byte với byte đầu là T
TON Txx, PT
Khởi động bộ phát thời gian trễ Txx với thời gian trễ đặt trước là tích của PT (kiểu từ) và độ phân giải của bộ thời gian Txx được chọn
TRUNC IN, OUT(5)
Chuyển đổi một số thực 32 bit IN thành một số nguyên 32 bit có dấu và ghi vào OUT
(3)Những lệng có kèm chức năng ghi lại nội dung của Stack trước đó
(4)Những lệnh không sử dụng được trong chương trình chính
(5)Những lệnh chỉ cho CPU214
Trang 30(6)Ghi nhớ lại nội dung tức thời của Stack Đặt TOS lên 1 và gán giá trị logic 0 vào các bit còn lại của Stack
(7)Đặt TOS lên 1
2.2.3 Lệnh vào/ra:
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 bit
đầu tiên của ngăn xếp, các giá trị cịn lại trong ngăn xếp bị đẩy lùi xuống một bit
LOAD NOT (LDN): Lệnh LD nạp giá trị logic của một tiếp điểm vào
trong bit đầu tiên của ngăn xếp, các giá trị cịn lại trong ngăn xếp bị đẩy lùi xuống một bit
Bị đẩy ra khỏi ngăn xếp Bị đẩy ra khỏi ngăn xếp
- Các dạng khác nhau của lệnh LD, LDN cho LAD như sau:
~m C0 C1 C2 C3 C4 C5 C6 C7
Trước LDN Sau C0
Trang 31- Các dạng khác nhau của lệnh LD, LDN cho STL như sau:
LD n Lệnh nạp giá trị logic của điểm n vào bit đầu
tiên trong ngăn xếp
LDN n Lệnh nạp giá trị logic nghịch đảo của điểm n
vào bit đầu tiên trong ngăn xếp
n: I, Q, M, SM, (bit) T, C
LDI n Lệnh nạp tức thời giá trị logic của điểm n vào
bit đầ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 bit đầu tiên trong ngăn xếp
n:1
- OUTPUT (=): lệnh sao chép nội dung của bit đầu tiên trong ngăn xếp vào bit
được chỉ định trong lệnh Nội dung ngăn xếp không bị thay đổi
+ Mô tả lệnh OUTPUT bằng LAD như sau:
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 (bit)
+ 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 hay ngắt các cuộn dây đầu ra Khi dòng điều khiển đến các cuộn dây thì các cuôn dây đóng hoặc mở các tiếp điểm Trong STL, lệnh truyền trạng thái bit đầu tiên của ngăn xếp đến các điểm thiết kế Nếu bit này có giá trị bằng 1, các lệnh S hoặc 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ả lệnh S (Set) và R (Reset) bằng LAD:
S-bit: I, Q, M,SM,T, C,V (bit)
n (byte): IB, QB,
MB, SMB, VB,AC, hằng số,
*VD, *AC
Trang 32S bit n
──( SI )
Đóng tức thời một mảng gồm n các tiếp điểm kể từ địa chỉ S-bit
S bit n
──( RI )
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
S-bit: Q (bit) n(byte):IB,QB,
MB, SMB, VB,AC, hằng số,
*VD, *AC + Mô tả lệnh S (Set) và R (Reset) bằng STL:
S-S-bit: I, Q, M,SM,T, C,V (bit)
SI S-bit n Ghi tức thời giá trị logic vào một mảng
gồm n bit kể từ địa chỉ S-bit
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 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 hay các tiếp điểm thường mở Trong STL có thể sử dụng 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
+ 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 cho các phép tính của đại số Boolean cho các bit trong ngăn xếp, được gọi là 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 xoá các mệnh đề logic LAD không có bộ đếm dành cho 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
Trang 33Lệnh Mô tả Toán
hạng
ALD
Lệnh tổ hợp giá trị của bit đầu tiên và thứ hai của ngăn
xếp bằng phép tính logic AND Kết quả ghi lại vào bit
đầu tiên Giá trị còn lại của ngăn xếp được kéo lên một
bit
Không có
OLD
Lệnh tổ hợp giá trị của bit đầu tiên và thứ hai của ngăn
xếp bằng phép tính logic OR Kết quả ghi lại vào bit đầu
tiên Giá trị còn lại của ngăn xếp được kéo lên một bit
Không có
LPS
Lệnh Logic Push (LPS) sao chụp giá trị của bit đầu tiên
vào bit thứ hai trong ngăn xếp Giá trị còn lại bị đẩy
xuống một bit Bit 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 bit thứ hai vào bit đầ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 bit Giá trị của bit sau được
+ AND (A) Lệnh A và O phối hợp giá trị logic của một tiếp điểm n với + OR (O) giá trị bit đầu tiên của ngăn xếp Kết quả phép tính được đặt lại
vào bit đầu tiên trong ngăn xếp Giá trị của các bit còn lại trong ngăn xếp không bịthay đổi
+ Tác động của các phép tính A (And) và O (Or)
+ AND LOAD (ALD)
C0 C1 C2 C3 C4 C5 C6 C7 C8
m C1 C2 C3 C4 C5 C6 C7 C8
Trước (And) Sau Trước (Or) Sau
Trang 34+ OR LOAD (OR) : Lệnh ALD và OLD thực hiện phép tính logic And và
Or giữa hai bit đầu tiên của ngăn xếp Kết quả của logic này sẽ được ghi lại vào bit đầ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 bit
+ Tác động của lệnh ALD và OLD VÀO ngăn xếp như sau:
+ 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 bit đầu tiên của ngăn xếp Lệnh LPS sao chép nội dung bit đầu tiên vào bit thứhai trong ngăn xếp, nội dung ngăn xếp sau đó bị đẩy xuống một bit Lệnh LRD lấy giá trị bit thứ hai ghi vào bit đầu tiên của ngăn xếp, nội dung ngăn xếp sau đó được kéo lên một bit Lệnh LPP kéo ngăn xếp lên một bit
Các lệnh tiếp điểm đặc biệt:
+ Có thể dùng 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 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ớ, bởi vậy đối với CPU 212 chỉ có thể sử dụng nhiều nhất 128 lệnh và 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
Trước ALD Sau
C0 C1 C2 C3 C4 C5 C6 C7 C8
m C1 C2 C3 C4 C5 C6 C7 C8
Trước OLD Sau
Trang 35Không có
T iế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 cuncung 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 so sánh :
+ Khi lập trình, nếu 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 theo byte, Word hay Dword của S7 – 200
+ LAD sử dụng lệnh so sánh để so sánh các giá trị của byte, word hay Dword (giá trị thực hoặc nguyên) Những lệnh so sánh thường là: so sánh nhỏ hơn hoặc bằng (<=); so sánh bằng (==) và so sánh lớn hơn hoặc bằng (>=)
+ Khi so sánh giá trị của byte thí không cần phải để ý đến dấu của toán hạng, ngược lại khi so sánh các từ hay từ kép với nhau thì phải để ý đến dấu của toán hạng
là bit cao nhất trong từ hoặc từ kép Ví dụ 7FFF > 8000 và 7FFFFFFF > 80000000
Trang 36A, 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 (<) hoặc so sánh lớn hơn
(>), có thể tạo ra được nhờ kết hợp lệnh NOT với các lệnh đã có (==, >=, <=)
Các lệnh di chuyển nội dung ô nhớ:
+ Các lệnh di chuyển 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 và STL lệnh dịch chuyển thực hiện việc di chuyển hay sao chép nội dung một byte, một từ đơn, hoặc một từ kép từ vùng này sang vùng khác trong bộ nhớ
+ Lệnh trao đổi nội dung vủa hai byte trong một từ đơn thực hiện việc chuyển nội dung của byte thấp sang byte cao và ngược lại chuyển nội dung của byte cao sang byte thấp của từ đó
+ MOV_B (LAD) Lệnh sao chép nội dung của byte IN sang byte OUT + MOVB (STL)
+ MOV_W (LAD) Lệnh sao chép nội dung của từ đơn IN sang OUT
Trang 38LAD STL Toán hạng
MOVB IN OUT
IN : VB, IB, QB,
MB, SMB, AC, (byte) hằng số,
*VD, *AC OUT: VB, IB, QB,
MB, SMB, AC, (byte) *VD, *AC
MOVW IN OUT
IN : VB, IB, QB,
MB, SMB, AC, (từ đơn) hằng số,
*VD, *AC OUT: VB, IB, QB,
MB, SMB, AC, (từ đơn) *VD, *AC
MOVD IN OUT
IN : VB, IB, QB,
MB, SMB, AC, (từ kép) hằng số,
*VD, *AC OUT: VB, IB, QB,
MB, SMB, AC, (từ kép) *VD, *AC
MOVR IN OUT
IN : VB, IB, QB,
MB, SMB, AC, (từ kép) hằng số,
*VD, *AC OUT: VB, IB, QB,
MB, SMB, AC, (từ kép) *VD, *AC
Trang 39 Lệnh nhảy và lệnh gọi chương trình con:
+ Các lệnh của chương trình, nếu không có những lệnh điều khiển riêng, sẽđược thực hiện theo thứ tự từ trên xuống dưới trong một vòng quét Lệnh điều khiển chương trình cho phép thay đổi thứ tự thực hiện lệnh Chúng cho phép chuyển thứ
tự thực hiện, đáng lẽ ra là lệnh tiếp theo, tới một lệnh bất cứ nào khác của chương
trình, trong đó nơi điều khiển chuyển đến được đánh dấu trước bằng một nhãn chỉ
đích Thuộc nhóm lệnh điều khiển chương trình gồm: lệnh nhảy, lệnh gọi chương trình con Nhãn chỉ đích, hay gọi đơn giản là nhãn, phải được đánh dấu trước khi
thực hiện nhảy hay lệnh gọi chương trình con
+ Việc đặt nhãn cho lệnh nhảy phải nằm trong chương trình Nhãn của
chương trình con, hoặc của chương trình xử lý ngắt được khai báo ở đầu chương
trình Không thể dùng lệnh nhảy JMP để chuyển điều khiển từ chương trình chính
vào một vào một nhãn bất kỳ trong chương trình con hoặc trong chương trình xử lý ngắt Tương tự như vậy cũng không thể từ một chương trình con hay chương trình
xử lý ngắt nhảy vào bất cứ một nhãn nào nằm ngoài các chương trình đó
+ Lệnh gọi chương trình con là lệnh chuyển điều khiển đến chương trình con Khi chương trình con thực hiện các phép tính của mình thì việc điều khiển lại được chuyển trở về lệnh tiếp theo trong chương trình chính ngay sau lệnh gọi chương trình con Từ một chương trình con có thể gọi được một chương trình con khác trong nó, có thể gọi như vậy nhiều nhất là 8 lần trong S7 – 200 Đệ qui (trong một chương trình con có lệnh gọi đến chính nó) về nguyên tắc không bị cấm song phải chú ý đến giới hạn trên
+ Nếu lệnh nhảy hay lệnh gọi chương trình con được thực hiện thì đỉnh ngăn xếp luôn có giá trị logic bằng 1 Bởi vậy trong chương trình con các lệnh có điều khiển được thực hiện như các lệnh không điều kiện Sau các lệnh LBL (đặt nhãn) và SBR, lệnh LD trong STL sẽ bị vô hiệu hóa
+ Khi một chương trình con được gọi, toàn bộ nội dung của ngăn xếp sẽđược cất đi, đỉnh của ngăn xếp nhận một giá trị mới là 1, các bit khác còn lại của ngăn xếp nhận giá trị logic 0 và chương trình được chuyển tiếp đến chương trình con đã được gọi Khi thực hiện xong chương trình con và trước khi điều khiển được chuyển trở lại chương trình đã gọi nó, nội dung ngăn xếp đã được cất giữ trước đó
sẽ được chuyển trở lại ngăn xếp
+ Nội dung của thanh ghi AC không được cất giữ khi gọi chương trình con, nhưng khi một chương trình xử lý ngắt được gọi, nội dung của thanh ghi AC sẽđược cất giữ trước khi thực hiện chương trình xử lý ngắt và nạp lại khi chương trình
Trang 40xử lý ngắt đã được thực hiện xong Bởi vậy chương trình xử lý ngắt có thể tự do sửdụng bốn thanh ghi AC của S7 – 200
+ JMP, CALL
+ LBL, SBR : Lệnh nhảy JMP và lệnh gọi chương trình con SBR cho phép
chuyển điều khiển từ vị trí này đến một vị trí khác trong chương trình Cú pháp lệnh nhảy và lệnh gọi chương trình con trong LAD và STL đều có toán hạng là nhãn chỉđích (nơi nhảy đến, nơi chứa chương trình con)
n
─( JMP) JMP Kn
Lệnh nhảy thực hiện việc chuyển điều khiển đến nhãn n trong một chương trình
n
─( CALL) CALL Kn
Lệnh gọi chương trình con, thực hiện phép chuyển điều khiển đến chương trình con có nhãn n
SBR Kn Lệnh gán nhãn cho một
chương trình con
n:
CPU 212: 0÷15 CPU 214: 0÷255
Lệnh trở về chương trình đã gọi chương trình con có điều kiện (bit đầu của ngăn xếp có giá trị logic bằng 1)
Lệnh trở về chương trình đã gọi chương trình con không điều kiện
Không có
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 thường được gọi là khâu trễ Nếu ký tự tín hiệu (logic) vào là x(t) và thời gian trễ được tạo ra bằng Timer là T thì tín hiệu đầu ra của Timer đó sẽ là x(t- T )
S7- 200 có 64 Timer (với CPU 212) hoặc 128 Timer (với CPU 214) được chia thành 2 loại khác nhau, đó là:
LBL: n
SBR:n