1. Trang chủ
  2. » Luận Văn - Báo Cáo

Lập Trình PLC Điều Khiển Máy Bán Nước Tự Động

62 1,4K 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 62
Dung lượng 525 KB

Nội dung

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 hayngắt các đầu ra.. Trong ghiđọc và xử lý các lệnh, bộ

Trang 1

Bộ Giáo Dục và Đào Tạo Cộng Hòa Xã Hội Chủ Nghĩa Việt Nam Trường Đại học Sư Phạm Kỹ Thuật Độc lập - Tự do - Hạnh phúc

oOo oOo

-  

KHOA ĐIỆN BỘ MÔN ĐIỆN CÔNG NGHIỆP NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP

Họ và tên : LÊ THÀNH TÂM

MSSV : 96102334

Lớp : 96 ĐKC

Niên Khóa : 1996 - 2001

1 Tên đề tài :

LẬP TRÌNH PLC ĐIỀU KHIỂN MÁY BÁN NƯỚC TỰ ĐỘNG

2 Cơ sở ban đầu :

Tài liệu về tập lệnh và phương pháp lập trình PLC SIMATIC S7-200.

3 Nội dung các phần thuyết minh:

4 Giáo viên hướng dẫn: NGUYỄN THỊ YẾN TUYẾT

5 Ngày giao đề tài: 08/01/2001

6 Ngày hoàn thành: 28/02/2001

Tp.Hồ Chí Minh, Ngày…… tháng … năm 2001

Thông qua bộ môn Giáo viên hướng dẫn Chủ nhiệm bộ môn

NGUYỄN THỊ YẾN TUYẾT

Trang 2

LỜI NÓI ĐẦU

Nền công nghiệp thế giới đang trên đà phát triển ngày càng cao, trong đó vấn đề tự động điều khiển được đặt lên hàng đầu trong quá trình nghiên cứu cũng như ứng dụng công nghệ mới vào trong sản xuất Nó đòi hỏi khả năng xử lý, mức độ hoàn hảo, sự chính xác của hệ thống sản xuất ngày một cao hơn,để có thể đáp ứng được nhu cầu về số lượng, chất lượng, thẩm mỹ ngày càng cao của xã hội.

Sự xuất hiện máy tính vào những năm đầu thập niên 60, đã hỗ trợ con người làm việc tốt hơn trong nhiều lĩnh vực từ kinh tế, y tế, giáo dục, quốc phòng đến nhiều lĩnh vực khác như hàng không, vũ trụ Với sự đòi hỏi của con người, những nhà nghiên cứu không dừng lại ở đó, nhiều thiết bị, phần mềm ra đời chuyên phục vụ cho ngành công nghiệp, tính năng ưu biệt luôn được nâng cao Một trong những thiết bị phải kể đến đó là bộ PLC Với khả năng ứng dụng và nhiều ưu điểm nổi bậc, PLC ngày càng thâm nhập sâu rộng trong nền sản xuất Nhận thức được tầm quan trọng đó, nên chúng ta cần nghiên cứu, tìm hiểu về PLC, nhằm góp phần vào công nghiệp hóa, hiện đại hóa đất nước.

nghiệp này Quá trình thực hiện là điều kiện tốt nhất để học hỏi kinh nghiệm xây dựng một mô hình sản xuất và phương pháp lập trình điều khiển bằng PLC.

Do hạn chế về thời gian, kinh nghiệm thực tế, vừa tìm hiểu, vừa học hỏi trong quá trình thực hiện, nên không thể tránh khỏi những thiếu sót Rất mong sự đóng góp ý kiến quý báo của thấy cô, anh chị và các bạn để đề tài được hoàn thiện hơn.

Tp.Hồ Chí Minh, ngày 24 / 02 / 2001 Sinh viên thực hiện

LÊ THÀNH TÂM

Trang 3

MỤC LỤC

I Đặt vấn đề 1

II Giới hạn đề tài 1III Mục đích nghiên cứu 2

Chương II: GIỚI THIỆU PLC SIMATIC S - 200

III Ngôn ngữ lập trình của S – 200

12

Chương III: MÔ HÌNH MÁY BÁN NƯỚC TỰ ĐỘNG

Chương IV: LẬP TRÌNH PLC ĐIỀU KHIỂN MÁY BÁN NƯỚC TỰ ĐỘNG

Tài liệu tham khảo

Phụ lục

Trang 4

CHƯƠNG I

DẪN NHẬP

Tự động ngày càng đóng vai trò quan trọng trong đời sống và công nghiệp Ngày nayngà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ế, dobộ 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 12KBvà 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ợptá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ònnhiề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 caonă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à đượcsử 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ểnmạ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ểnnó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ốngsả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ậptrì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

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ư kinhnghiệ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

Trang 5

seõ giuùp ích raât nhieău trong quaù trình hóc hoûi ñoù Múc ñích nghieđn cöùu chư ñeơ laøm quen vôùi thöïcteâ, thaây ñöôïc moâi quan heô giöõa lyù thuyeẫt vaø thöïc tieên.”Laôp trình PLC ñieău khieơn maùy baùn nöôùc töï ñoông” ñieău quan tróng caăn ruùt ra ñöôïc sau quaù trình thöïc hieôn laø caùch thöùc vaø trình töï giạiquyeât moôt vaân ñeă ñöôïc ñaịt ra tröôùc baỉng phöông phaùp laôp trình vaø thaây ñöôïc khạ naíng öùngdúng cụa PLC trong cođng nghieôp.

CHÖÔNG II

GIÔÙI THIEÔU BOÔ PLC CỤA SIMATIC S7-200

1 Giôùi thieôu PLC

PLC vieât taĩt cụa Programmable Logic Controller , laø thieât bò ñieău khieơn laôp trình ñöôïc(khạ trình) cho pheùp thöïc hieôn linh hoát caùc thuaôt toaùn ñieău khieơn logic thođng qua moôt ngođnngöõ laôp trình Ngöôøi söû dúng coù theơ laôp trình ñeơ thöïc hieôn moôt loát trình töï caùc söï kieôn Caùc söï

Trang 6

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ạtthậ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ằngRelay) 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ôiModul 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 Logicthờ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 choPLC 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âmsâ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ệnhlogic đơ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àmtoá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ểnhoặ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ộtchươ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ềukhiểû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 quitrì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 đổihay 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ệpvật lý nào so với các bộ dây nối hay Relay

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àiEPROM )

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 tayhay 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 đựngchươ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 , RAMthườ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àngsử 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

Trang 7

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 PLCqua cổng RS232, RS422, RS458, …

b Nguyên lý hoạt động của PLC

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 hayngắ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ànbộ 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 là tuyến dùng để truyền tín hiệu, hệ thống gồm nhiều đường tín hiệu songsong :

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 quaData 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ấtcả 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ênAddress Bus, modul đầu ra tương ứng sẽ nhận được dữ liệu từ Data bus Control Bus sẽ chuyểncá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

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ăngchứ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 dungbấ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

Trang 8

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 RAMtừ 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ụngbì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ềuhà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ắnbê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ậptrì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ươngtrì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ònglệnh

Ngoài ra còn cho phép gắn thêm bộ nhớ mở rộng như RAM , EPROM

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/24VDChoặ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 đượccung cấp bỡi các đèn LED trên PLC , điều này làm cho việc kiểm tra hoạt động nhập xuất trởnên dể dàng và đơn giản

Bộ xử lý đọc và xác định các trạng thái đầu vào (ON,OFF) để thực hiện việc đóng hayngắt mạch ở đầu ra

3 Các hoạt động xử lý bên trong PLC

 Đầ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ôngviệ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éptoá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

Trang 9

Goăm hai phöông phaùp khaùc nhau duøng cho vieôc xöû lyù I / O trong PLC :

Ñieău nay ñoøi hoûi CPU queùt caùc leônh ngoû vaøo (maø chuùng xuaât hieôn trong chöông trình ),khoạng thôøi gian Delay ñöôïc xađy döïng beđn trong ñeơ chaĩc chaĩn raỉng chư coù nhöõng tín hieôu hôïplyù môùi ñöôïc ñóc vaøo trong boô nhôù vi xöû lyù Caùc leônh ngoû ra ñöôïc laẫy tröïc tieâp tôùi caùc thieât bò.Theo hoát ñoông logic cụa chöông trình , khi leônh OUT ñöôïc thöïc hieôn thì caùc ngoû ra caøi láivaøo ñôn vò I / O, vì theâ neđn chuùng vaên giöõ ñöôïc tráng thaùi cho tôùi khi laăn caôp nhaôt keâ tieâp

Haău heât caùc PLC loái lôn coù theơ coù vaøi traím I / O, vì theâ CPU chư coù theơ xöû lyù moôt leônh

ôû moôt thôøi ñieơm Trong suoât quaù trình thöïc thi, tráng thaùi moêi ngoõ nhaôp phại ñöôïc xeùt ñeânrieđng lẹ nhaỉm doø tìm caùc taùc ñoông cụa noù trong chöông trình Do chuùng ta yeđu caău relay 3mscho moêi ngoõ vaøo, neđn toơng thôøi gian cho heô thoâng laây maêu lieđn túc trôû neđn raât daøi vaø taíng theosoâ ngoõ vaøo

Ñeơ laøm taíng toâc ñoô thöïc thi chöông trình, caùc ngoõ I / O ñöôïc caôp nhaôt tôùi moôt vuøng ñaịcbieôt trong chöông trình ÔÛ ñađy, vuøng RAM ñaịc bieôt naøy ñöôïc duøng nhö moôt boô ñeôm löu trángthaùi caùc logic ñieău khieơn vaø caùc ñôn vò I / O Moêi ngoõ vaøo ra ñeău coù moôt ñòa chư I / O RAMnaøy Suoât quaù trình copy taât cạ caùc tráng thaùi vaøo trong I / O RAM Quaù trình naøy xạy ra ôû moôtchu kyø chöông trình (töø Start ñeân End )

Thôøi gian caôp nhaôt taât cạ caùc ngoõ vaøo ra phú thuoôc vaøo toơng soâ I/O ñöôïc copy tieđu bieơu laøvaøi ms Thôøi gian thöïc thi chöông trình phú thuoôc vaøo chieău daøi chöông trình ñieău khieơntöông öùng moêi leônh maât khoạng töø 110 s

1 Caâu truùc phaăn cöùng cụa CPU 214

S7-200 laø thieât bò ñieău khieơn logic khạ trình loái nhoû cụa Haõng SIEMNS (CHLB Ñöùc) coùcaâu truùc theo kieơu Modul vaø coù caùc modul môû roông Caùc modul naøy ñöôïc söû dúng cho nhieăuöùng dúng laôp trình khaùc nhau Thaønh phaăn cô bạn cụa S7-200 laø khoâi vi xöû lyù CPU-214

 CPU-214 bao goăm 14 ngoõ vaøo vaø 10 ngoõ ra, coù khạ naíng theđm 7 modul môû roông

 2.048 töø ñôn (4 Kbyte) thuoôc mieăn nhôù ñóc / ghi non-volatile ñeơ löu chöông trình (vuøngnhôù coù giao dieôn vôùi EEPROM)

 2.048 töø ñôn (4 Kbyte) thuoôc kieơu ñóc ghi ñeơ löu döõ lieôu, trong ñoù 512 töø ñaău thuoôc mieănnon-volatile

 Toơng soâ ngoõ vaøo / ra cöïc ñái laø 64 ngoõ vaøo vaø 64 ngoõ ra

 128 Timer chia laøm 3 loái theo ñoô phađn giại khaùc nhau: 4 Timer 1ms, 16 Timer 10ms vaø

108 Timer 100ms

 128 boô ñeâm chia laøm 2 loái: chư ñeâm tieân vaø vöøa ñeâm tieân vöøa ñeâm luøi

 688 bít nhôù ñaịc bieôt duøng ñeơ thođng baùo tráng thaùi vaø ñaịt cheâ ñoô laøm vieôc

 Caùc cheâ ñoô xöû lyù ngaĩt goăm: ngaĩt truyeăn thođng, ngaĩt theo söôøn leđn hoaịc xuoâng, ngaĩt thôøigian, ngaĩt cụa boô ñeâm toâc ñoô cao vaø ngaĩt truyeăn xung

 3 boô ñeâm toâc ñoô cao vôùi nhòp 2Khz vaø 7 Khz

 2 boô phaùt xung nhanh cho daõy xung kieơu PTO hoaịc kieơu PWM

 2 boô ñieău chưnh töông töï

Trang 10

 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ệnchươ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ìnhvà đang thực hiện lại

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 sangSTOP 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 RUNhoặc STOP

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ụ choviệ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ậptrì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.400baud

Để 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 đó đ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

5

123456789

Đất

24 VDCTruyền và nhận dữ liệuKhô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ệuKhông sử dụng

Trang 11

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 trongmộ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 MIỀN NHỚ NGOÀI

Vùng đối tượng

Là nguồn nhờ được sử dụng để lưu giữ các lệnh chương trình Vùng này thuộc kiểu

non-volatile đọc / ghi được

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

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ácnhau Chúng được ký hiệu bằng chữ cái đầu theo từ tiếng Anh, đặc trưng cho công dụngriê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ặctừ kép (double word)

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ênphả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 địnhTụ

Trang 12

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ũngnhư 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ố đầuvào/ra của modul

Sau đây là địa chỉ của một số modul mở rộng trên CPU214

CPU214

Modul 04vào/4a

Modul 1

8 vào

Modul 23vào/1aAnalog

Modu3

8 ra

Modul 43vào/1a

I3.0 I3.1 I3.2 I3.3 I3.4 I3.5 I3.6 I3.7

AIW 0AIW 2AIW 4

AQW 0

Q3.0Q3.1Q3.2 Q3.3Q3.4Q3.5Q3.6Q3.7

AIW8 AIW12AQW 4

4 Cấu trúc chương trình của S7-200

Có thể được lập trình cho PLC S7-200 bằng cách sử dụng một trong các phần mềm :

Step 7 – Micro / Dos

Step 7 – Micro / Win

Những phần mềm này đều có thể cài đặt được trên các máy lập trình họ

PG 7xx và các máy tính cá nhân

Các chương trình cho S7-200 phải có cấu trúc bao gồm chương trình chính (main program)và sau đó đến các chương trình con và các chương trình xử lý ngắt

Chương trình chính được kết thúc bằng lệnh kết thúc chương trình (MEND)

Trang 13

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 saulệ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ảiviế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 đó đếncá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

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ựchiệ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ươngtrì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ạnchuyển các nội dung của bộ đệm ảo tới các cổng ra

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ếpcổ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ônggiữ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ạnthả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ệntrong 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òngquét

6 Các toán hạng lập trình cơ bản

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

2.Thực hiện chương trình

1 Nhập dữ liệu từ ngoại vi vào

Trang 14

Có 6 phần tử lập trình cơ bản, mỗi phần tử có công dụng riêng Để dễ dàng xác định thìmỗi phần tử được gán cho mộ ký tự:

 I : Dùng để chỉ ngõ vào vật lý nối trực tiếp vào PLC

 Q : Dùng để chỉ ngõ ra vật lý nối trực tiếp từ PLC

 T : Dùng để xác định phần tử định thời có trong PLC

 C : Dùng để xác định phần tử đếm có trong PLC

 M và S : Dùng như các cờ hoạt động như bên trong PLC

Tất cả các phần tử (toán hạng) trên có hai trạng thái ON hoặc OFF (1 hoặc 0)

Cuộn dây có thể được dùng để điều khiển trực tiếp ngõ ra từ PLC (như phần tử Q) hoặc cóthể điều khiển bộ định thì, bộ đếm hoặc cờ (như phần tử M, S) Mỗi cuộc dây được gắn với cáccô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ậptrì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ở)

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 đầutiê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ướckhi 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ộtchươ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ạngSTL đều có thể chuyển sang được dạng LAD

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ểnbằng rơ le Trong chương trình LAD, các phần tử cơ bản dùng để biểu diễn lệnh logic nhưsau:

 Tiếp điểm: Là biểu tượng (Symbol) mô tả các tiếp điểm của rơ le

Tiếp điểm thường mở

Tiếp điểm thương đóng

 Cuộn dây (coil): Là biểu tượng   mô tả rơ le được mắc theo chiều dòng điệncung cấp cho rơ le

 Hộp (Box): Là biểu tượng mô tả các hàm khác nhau, nó làm việc khi có dòng điện chạyđến hộp Những dạng hàm thường được biểu diễn bằng hộp là các bộ thời gian (Timer),

Trang 15

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ềudò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ảilà 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 khidùng chương trình tiện dụng STEPT MICRO / DOS hoặc STEPT – MICRO/WIN Dòng điệnchạ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

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ộtchứ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 Giới hạn cho phép của các toán hạng

Truy nhập bit (địa chỉ byte, chỉ

AC (0 3)AIW (0 30)AQW (0 30)Hằng số

ID (0  4)

Trang 16

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

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ùixuống một bít

Trang 17

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:

LD n Tiếp điểm thường mở sẽ

được đóng nếu n = 1

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

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

sẽ mở khi n = 1

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

đóng tức thời khi n = 1 n: ILDNI n Tiếp điểm thường đóng

sẽ mở tức thời khi n = 1

Các dạng khác nhau của lệnh LD, LDN cho STL như sau:

LD n Lệnh nạp giá trị logic

của điểm n vào bít đầu tiêntrong ngăn xếp

n (bít): I, Q, M, SM, T,

C, V

LDN n Lệnh nạp giá trị logic

nghịch đảo của điểm n vàobít đầu tiên trong ngănxếp

LDI n Lệnh nạp tức thời giá trị

logic của điểm n vào bítđầu tiên trong ngăn xếp

n: I

LDNI n Lệnh nạp tức thời giá trị

logic nghịch đảo của điểm

n vào bít đầu tiên trongngăn xếp

Trang 18

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:

n( )

Cuộn dây đầu ra ở trạngthái kích thích khi có dòngđiều khiển đi qua

n: I, Q, M, SM, T, C, V(bít)

n( )( )

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

n: Q(bít)

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

= n

Lệnh = sao chép giá trị củađỉnh ngăn xếp tới tiếp điểm nđược chỉ dẫn trong lệnh

n: I, Q, M, SM, T, C,V

(bít)

= I n

Lệnh = I (immediate) saochép tức thời giá trị của đỉnhstack tới tiếp điểm n được chỉdẫn trong lệnh

n: Q(bít)

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ềukhiể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âythì các cuộn dây đóng hoặc mở các tiếp điểm (hoặc một dãy các tiếp điểm)

Trong STL, lệnh truyền trạng thái bít đầu của ngăn xếp đến các điểm thiết kế Nếu bít nàycó 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

Đóng một mảng gồm n các

tiếp điểm kể từ S BIT

S BIT: I, Q, M, SM, T,

C, V

S BIT n

( S )

Trang 19

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

*VD, *AC

Đóng một mảng gồm n cáctiếp điểm kể từ S BIT Nếu SBIT lại chỉ vào Timer hoặcCounter thì lệnh sẽ xóa bít đầu

ra của Timer / Counter đó

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

S BIT: Q

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

*VD, *ACNgắt tức thời một mảng gồm

n các tiếp điểm kể từ địa chỉ SBIT

S S BIT n Ghi giá trị logic vào một

mảng gồm n bít kể từ địa chỉ SBIT

S BIT: I, Q, M, SM, T,

C, V(bit)

n: IB, QB, MB, SMB,VB

(byte) AC, Hằng số,

*VD, *AC

R S BIT n Xóa một mảng gồm n bít kể

từ địa chỉ S BIT Nếu S BIT lạichỉ vào Timer hoặc Counter thìlệnh sẽ xóa bít đầu ra củaTimer / Counter

S I S BIT Ghi tức thời giá trị logic 1

vào một mảng gồm n bít kể từđịa chỉ S BIT

S BIT: Q(bit)

n: IB, QB, MB, SMB,

VB (byte)(byte) AC, Hằng số,

*VD, *AC

R I S BIT Xóa tức thời một mảng gồm

n bít kể từ địa chỉ S BIT

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 songcá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

Trang 20

O n

A n

Lệnh thực hiện toán tử ^ (A) và V(O) giữa giá trị logic của tiếp điểm nvà giá trị bít đầu tiên trong ngằn xếp

Kết quả được ghi lại bít đầu trongngăn xếp

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

AN n

ON n

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

AI n

OI n

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 trongngằn xếp Kết quả được ghi lại bít đầutrong ngăn xếp

n: 1(bit)

ANI n

ONI n

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 đầutiên trong ngằn xếp Kết quả được ghilạ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ểudiễ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 stacklogic Đó 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ựchiện phương trình tổng thể có nhiều biểu thức con

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

hạngALD 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ạivào bít đầu tiên Giá trị còn lại của ngăn xếp đượcké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ả ghilại vào bít đầu Giá trị còn lại của ngăn xếp đượcké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ònlại bị đẩy xuống một bít Bít cuối cùng bị đẩy rakhỏi ngăn xếp

Không có

Trang 21

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ănxế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

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ạitrong 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:

Trang 22

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

Trước ALD Sau m= c0^ c1

Trang 23

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

Trước LPS Sau Trước LRD Sau Trước LPP Sau

Trang 24

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 bitehoặ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 2byte hoặc 4 byte Luật tính toán của chúng như sau:

Biểu diễn trong STL

ANDW IN1 IN2

Lệnh thực hiện phép logicAND giữa các bít tương ứng củahai từ IN1 và IN2 Kết quả đượcghi lại vào IN2

ORW IN1 IN2

Lệnh thực hiện phép logic ORgiữa các bít tương ứng của hai từIN1 và IN2 Kết quả được ghi lạivào IN2

XORW IN1 IN2

Lệnh thực hiện phép logicXOR giữa các bít tương ứng củahai từ IN1 và IN2 Kết quả đượcghi lại vào IN2

ANDD IN1 IN2

Lệnh thực hiện phép logicAND giữa các bít tương ứng củahai từ kép IN1 và IN2 Kết quảđược ghi lại vào IN2

IN1: VD, ID, QD,

MD, SMQ

(Dword) AC, HC,

*CD,*AC Hằng số

ORD IN1 IN2

Lệnh thực hiện phép logic ORgiữa các bít tương ứng của hai từkép IN1 và IN2 Kết quả được ghilại vào IN2

Trang 25

IN2: VD, ID, QD,

MD, SMD(Dword)AC,

*VD, *ACXORD IN1 IN2

Lệnh thực hiện phép logicXOR giữa các bít tương ứng củahai từ kép IN1 và IN2 Kết quảđược ghi lại vào IN2

Biểu diễn trong LAD

Lệnh thực hiện phéptính logic AND theo từngbít của hai từ IN1 và IN2

Kết quả được ghi vào từOUT

IN1: VW, T, C,

IW, QW(word) SMW, AC,AIW, VD

*AC, Hằng số

IN2: VW, T, C,

IW, QW,(word) SMW, AC,AIW, *VD, *AC, Hằngsố

OUT: VW, T, C,

IW, QW, MW, (word) SMW, AC,

*VD, *AC

Lệnh thực hiện phéptính logic OR giữa các bíttương ứng của hai từ IN1và IN2 Kết quả được ghivào từ OUT

Lệnh thực hiện phéptính logic XOR giữa cácbít tương ứng của hai từIN1 và IN2 Kết quả đượcghi vào từ OUT

Lệnh thực hiện phéptính logic AND giữa cácbít của hai từ kép IN1 vàIN2 Kết quả được ghivào từ OUT

IN1: VD, ID, QD,

MD, SMW(Dword) AC, AIW,Hằng số, VD, AC

IN2: VD, ID, QD,

MD, SMW(Dword) AC, AIW,Hằng số, *VD, *AC

Lệnh thực hiện phéptính logic OR giữa các bítcủa hai từ kép IN1 vàIN2 Kết quả được ghivào từ OUT

Trang 26

OUT: VD, ID, QD,

MD, SMD, (Dword) AC, *VD,

*AC

Lệnh thực hiện phéptính logic XOR giữa cácbít của hai từ kép IN1 vàIN2 Kết quả được ghivào từ OUT

4.4 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ụngcá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ánhạ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ặchộ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

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

Không có

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

Không có

Tiếp điểm chuyển đổi âm cho phépdòng cung cấp thông mạch trong mộtvòng quét khi sườn xung điều khiểnchuyể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

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ănxếp Khi nhận được sự chuyển tiếp như vậy

Trang 27

đỉnh ngăn xếp sẽ có giá trị bằng 1 trong mộtvòng quét.

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ănxế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ộtvò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ănxế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ấysườ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ủangăn xếp trong khoảng thời gian bằng một vòng quét

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

Trước NOT Sau Trước EU Sau Trước ED Sau

4.5 Các lệnh so sánh

Khi lập trình, nếu có các quyết định về điều khiển được thực hiện dựa trên kết quả của

việc so sánh thì có thể sử dụng lệnh so sánh cho byte, từ hay từ kép của S7-200

LAD sử dụng lệnh so sánh để so sánh các giá trị của byte, từ và từ kép (giá trị thực hoặcnguyê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 (> =)

Trang 28

Khi so sánh giá trị của byte thì không cần phải để ý đến dấu của toán hạng Ngược lại khi

so sánh các từ hoặc từ kép với nhau thì phải để ý đến dấu của toán hạng, ngược lại khi so sánhcác từ hoặc từ kép với nhau thì phải để ý đến dấu của toán hạng là bít cao nhất trong từ hoặctừ kép

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

Tiếp điểm đóng khi n1 = n2

Hằng số, *VD, *AC

Tiếp điểm đóng khi N1 < n2

Trong STL, những lệnh so sánh thực hiện phép so sánh byte, từ và từ kép Căn cứ vào kiểu

so sánh (<=, =, >=), kết quả của phép so sánh có giá trị bằng 0 (nếu đúng) hoặc 1 (nếu sai)nên có thề sử dụng kết hợp cùng với các lệnh gogic LA, A, O Để tạo ra được các phép so sánhmà S7-200 không có lệnh so sánh tương ứng như: so sánh không bằng nhau (< >), so sánh nhỏhơn (>), có thể tạo ra được nhờ dùng kết hợp lệnh NOT với các lệnh đã có (=, >=, <=) Ví dụsau mô tả việc thực hiện pháp so sánh không bằng nhau (< >) giữa nội dung của từ V>W100và hằng số 50 bằng cách sử dụng kết hợp phép so sánh bằng nhau LDW = và lệnh đảo NOT

Trang 29

LDB > =, LDW > =

LDD > =, LDR > =

* Lệnh so sánh nội dung của byte, từ, từ kép hoặc số thực thứ nhất có lớn hơn hoặcbằng nội dung của byte, từ, từ kép hoặc số thực thứ hai hay không Trong trường hợpphép so sánh cho kết quả đúng, bít đầu tiên trong ngăn xếp có giá trị logic bằng 1

AB =, AW =

AD =, AR =

* Lệnh kiểm tra tính bằng nhau của nội dung 2 byte, từ, từ kép, hoặc số thực Trongtrường hợp phép so sánh cho kết quả đúng, sẽ thực hiện phép tính logic And giữa bítđầu tiên trong ngăn xếp với giá trị logic

AB < =, AW < =

AD < =, AR < =

Lệnh so sánh nội dung của byte, từ, từ kép hoặc số thực thứ nhất có nhỏ hơn hoặc bằng nộidung của byte, từ, từ kép hoặc số thực thứ hai hay không Trong trường hợp phép so sánh chokết quả đúng, sẽ thực hiện phép tính logic AND giữa bít đầu tiên trong ngăn xếp với giá trịlogic 1

Biểu diển lệnh so sánh trong STL:

n1 , n2 (byte):VB, IB,

QB, MB, SMB, AC, hằngsố, *VD , *AC

AB < = n1 n2

Lệnh thực hiện phép tínhlogic Load , And hoặc Or giữa

Trang 30

OB < = n1 n2 giá trị logic 1 với nội dung

đỉnh ngăn xếp khi nội dung 2byte n1 vàn2 thỏamãn n1 < = n2LDW = n1 n2

AW = n1 n2

OW = n1 n2

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

n1 ,n2 (từ):VW, T, C,

QW, MW, SMW, AC,AIW , hằng số, *VD ,

*ACLDW > = n1 n2

AW > = n1 n2

OW > = n1 n2

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

AW < = n1 n2

OW < = n1 n2

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

AD = n1 n2

OD = n1 n2

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

n1 , n2 (từ kép) :VD, ID,

QD, MD, SMD, AC, HC ,hằng số, *VD , *ACLDD > = n1 n2

AD > = n1 n2

OD > = n1 n2

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

n2LDD < = n1 n2

AD < = n1 n2

OD < = n1 n2

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

n2LDR = n1 n2

AR = n1 n2

OR = n1 n2

Lệnh thực hiện phép tínhlogic Load , And hoặc Or giữagiá trị logic 1 với nội dungđỉnh ngăn xếp nếu hai số thực

n1 và n2 (4 byte) thỏa mãn n1

= n2

n1 ,n2 (từ kép):VD, ID,

QD, MD, SMD, AC, HC ,hằng số, *VD , *AC

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

logic Load , And hoặc Or giữa

Trang 31

AR < = n1 n2

OR < = n1 n2

Lệnh thực hiện phép tínhlogic Load , And hoặc Or giữagiá trị logic 1 với nội dungđỉnh ngăn xếp nếu hai số thực

n1 và n2 (4 byte) thỏa mãn n1 <

= n2

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ệntheo 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épthay đổ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ếptheo, tới một lệnh bất cứ nào khác của chương trình, trong đó nơi điều khiển chuyển đến phảiđược đánh dấu trước bằng một nhãn, chỉ, đích Thuộc nhóm lệnh điều khiển chương trình gồm:lệnh nhảy, lệnh gọi chương trình con, nhãn chỉ đích, hay gọi đơn giản là nhãn, phải được đánhdấu trước khi thực hiện lệnh nhảy hay lệnh gọi chương trình con

Việc đặt nhãn cho lệnh nhảy phải nằm trong chương trình Nhãn của chương trình con, hoặccủa chương trình xử lý ngắt được khai báo ở đầu chương trình Không thể dùng lệnh nhảy JMPđể chuyển điều khiển từ chương trình chính vào một nhãn bất kỳ trong chương trình con hoặctrong 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 haychươ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ươngtrình con thực hiện xong các phép tính của mình thì việc điều khiển lại được chuyển trở vềlệnh tiếp theo trong chương trình chính nằm ngay sau lệnh gọi chương trình con Từ mộtchươ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ềunhất là 8 lần trong S7-200 Nói chung (trong một chương trình con có lệnh gọi đến chính nó) vềnguyên tắc không bị cấm song phải để ý đến giới hạn trên

Nếu lệnh nhảy hay lệnh gọi chương trình con được thực hiện thì đỉnh ngăn xếp luôn có giátrị logic 1 Bởi vậy trong chương trình con các lệnh có điều kiện được thực hiện như các lệnhkhô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ủangăn xếp nhận giá trị logic mới là 1, các bít khác của ngăn xếp nhận giá trị logic 0 và điềukhiển được chuyển đến chương trình con đã được gọi Khi thực hiện xong chương trình con vàtrước khi điều khiển được chuyển trở lại chương trình đã gọi nó, nội dung ngăn xếp đã được cấtgiữ 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ộtchươ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ựchiện chương trình xử lý ngắt và nạp lại khi chương trình xử lý ngắt đã được thực hiện xong Bởivậ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

Ngày đăng: 28/09/2016, 23:21

HÌNH ẢNH LIÊN QUAN

Hình a: Trạng thái của ngăn xếp trước và sau khi thực hiện lệnh LD - Lập Trình PLC Điều Khiển Máy Bán Nước Tự Động
Hình a Trạng thái của ngăn xếp trước và sau khi thực hiện lệnh LD (Trang 16)
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. - Lập Trình PLC Điều Khiển Máy Bán Nước Tự Động
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 (Trang 17)
Bảng sao tóm tắt cú pháp gọi các lệnh stack logic trong STL. - Lập Trình PLC Điều Khiển Máy Bán Nước Tự Động
Bảng sao tóm tắt cú pháp gọi các lệnh stack logic trong STL (Trang 20)
Sơ đồ minh họa thay đổi ngăn xếp của các lệnh LPS, LRD và LPP - Lập Trình PLC Điều Khiển Máy Bán Nước Tự Động
Sơ đồ minh họa thay đổi ngăn xếp của các lệnh LPS, LRD và LPP (Trang 23)
Hình 8 b: Bộ đếm CTUD của S7-200 - Lập Trình PLC Điều Khiển Máy Bán Nước Tự Động
Hình 8 b: Bộ đếm CTUD của S7-200 (Trang 37)
Hình 8 a: Bộ đếm CTU của S7-200 - Lập Trình PLC Điều Khiển Máy Bán Nước Tự Động
Hình 8 a: Bộ đếm CTU của S7-200 (Trang 37)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w