Bộ xử lý sẽ đọc và kiểm tra chươngtrình được chứa trong bộ nhớ, sau đó sẽ thực hiện thứ tự từng lệnh trong chương trình , sẽđóng hay ngắt các đầu ra.. Địa chỉ của từng ô nhớ sẽ được trỏ
Trang 1CHƯƠNG I
GIỚI THIỆU BỘ PLC CỦA SIMATIC S7-200
I.Tổng quát về PLC
1 Giới thiệu PLC
PLC viết tắt của Programmable Logic Controller , là thiết bị điều khiển lập trìnhđược (khả trình) cho phép thực hiện linh hoạt các thuật toán điều khiển logic thông quamột ngôn ngữ lập trình Người sử dụng có thể lập trình để thực hiện một loạt trình tự cácsự kiện Các sự kiện này được kích hoạt bởi tác nhân kích thích (ngõ vào) tác động vàoPLC 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ộtkhi sự kiện được kích hoạt thật sự, nó bật ON hay OFF thiết bị điều khiển bên ngoài đượcgọ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ácmôi Modul mở rộng
-Giá cả cá thể cạnh tranh được
Các thiết kế đầu tiên là nhằm thay thế cho các phần cứng Relay dây nối và các 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 cho PLC mà vẫn bảo đảm tốc độ xử lý cũng như giá cả … Chính điều này đã gây rasự quan tâm sâu sắc đến việc sử dụng PLC trong công nghiệp Các tập lệnh nhanh chóng
đi từ các lệnh logic đơn giản đến các lệnh đếm , định thời , thanh ghi dịch … sau đó là cácchức năng làm toán trên các máy lớùn … Sự phát triển các máy tính dẫn đến các bộ PLCcó 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ởimột chương trình Chương trình này được nạp sẵn vào bộ nhớ của PLC, PLC sẽ thực hiệnviêïc điều khiểûn dựa vào chương trình này Như vậy nếu muốn thay đổi hay mở rộng chứcnăng của qui trình công nghệ , ta chỉ cần thay đổi chương trình bên trong bộ nhớ củaPLC Việc thay đổi hay mở rộng chức năng sẽ được thực hiện một cách dể dàng màkhông cần một sự can thiệp vật lý nào so với các bộ dây nối hay Relay
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
Trang 2Bê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 ,RAM thường là loại CMOS có pin dự phòng, chỉ khi nào chương trình đã được kiểm travà sẳn sàng sử dụng thì nó mới truyền sang bộ nhớ PLC Đối với các PLC lớn thườnglập trình trên máy tính nhằm hổ trợ cho việc viết, đọc và kiểm tra chương trình Các đơn
vị lập trình nối với PLC qua cổng RS232, RS422, RS458, …
b Nguyên lý hoạt động của PLC
-Đơn vị xử lý trung tâm
CPU điều khiển các hoạt động bên trong PLC Bộ xử lý sẽ đọc và kiểm tra chươngtrình được chứa trong bộ nhớ, sau đó sẽ thực hiện thứ tự từng lệnh trong chương trình , sẽđóng hay ngắt các đầu ra Các trạng thái ngõ ra ấy được phát tới các thiết bị liên kết đểthực thi Và toàn bộ các hoạt động thực thi đó đều phụ thuộc vào chương trình điều khiểnđược giữ trong bộ nhớ
Hệ thống bus
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ệusong song :
Address Bus : Bus địa chỉ dùng để truyền địa chỉ đến các Modul khác nhau
Data Bus : Bus dùng để truyền dữ liệu
Control Bus : Bus điều khiển dùng để truyền các tín hiệu định thì và điểu khiểnđồng bộ các hoạt động trong PLC
Trong PLC các số liệu được trao đổi giữa bộ vi xử lý và các modul vào ra thông quaData Bus Address Bus và Data Bus gồm 8 đường, ở cùng thời điểm cho phép truyền 8bit 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ểntất cả trạnh thái đầu vào của nó vào Data Bus Nếu một địa chỉ byte của 8 đầu ra xuấthiện trên Address Bus, modul đầu ra tương ứng sẽ nhận được dữ liệu từ Data bus ControlBus sẽ chuyển các tín hiệu điều khiển vào theo dõi chu trình hoạt động của PLC
Các địa chỉ và số liệu được chuyển lên các Bus tương ứng trong một thời gian hạnchế
Hêï thống Bus sẽ làm nhiệm vụ trao đổi thông tin giữa CPU, bộ nhớ và I/O Bêncạch đó, CPU được cung cấp một xung Clock có tần số từ 1÷8 MHZ Xung này quyết địnhtố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.Bộ nhớ
PLC thường yêu cầu bộ nhớ trong các trường hợp :
-Làm bộ định thời cho các kênh trạng thái I/O
-Làm bộ đệm trạng thái các chức năng trong PLC như định thời, đếm, ghi cácRelay
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ọilà quá trình đọc
Trang 3Bộ nhớ bên trong PLC được tạo bỡi các vi mạch bán dẫn, mỗi vi mạch này có khảnăng chứa 2000 ÷ 16000 dòng lệnh , tùy theo loại vi mạch Trong PLC các bộ nhớ nhưRAM, EPROM đều được sử dụng
RAM (Random Access Memory ) có thể nạp chương trình, thay đổi hay xóa bỏ nộidung bất kỳ lúc nào Nội dung của RAM sẽ bị mất nếu nguồn điện nuôi bị mất Để tránhtình trạng này các PLC đều được trang bị một pin khô, có khả năng cung cấp năng lượngdự trữ cho RAM từ vài tháng đến vài năm Trong thực tế RAM được dùng để khởi tạo vàkiểm tra chương trình Khuynh hướng hiện nay dùng CMOSRAM nhờ khả năng tiêu thụthấp và tuổi thọ lớn
EPROM (Electrically Programmable Read Only Memory)là bộ nhớ mà người sử dụngbình thường chỉ có thể đọc chứ không ghi nội dung vào được Nội dung của EPROMkhông bị mất khi mất nguồn , nó được gắn sẵn trong máy , đã được nhà sản xuất nạp vàchứa hệ điều hành sẵn Nếu người sử dụng không muốn mở rộng bộ nhớ thì chỉ dùngthêm EPROM gắn bên trong PLC Trên PG (Programer) có sẵn chổ ghi và xóaEPROM
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ữngchương trình lớn trong một thời gian dài
Kích thước bộ nhớ :
Các PLC loại nhỏ có thể chứa từ 300 ÷1000 dòng lệnh tùy vào công nghệ chế tạo Các PLC loại lớn có kích thước từ 1K ÷ 16K, có khả năng chứa từ 2000 ÷16000 dò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ỏ vào ra I / O
Các đường tín hiệu từ bộ cảm biến được nối vào các modul ( các đầu vào của PLC ) ,các cơ cấu chấp hành được nối với các modul ra ( các đầu ra của PLC )
Hầu hết các PLC có điện áp hoạt động bên trong là 5V , tín hiêïu xử lý là 12/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được cung cấp bỡi các đèn LED trên PLC , điều này làm cho việc kiểm tra hoạt độngnhậ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ông việcnày có sẵn trong PLC và được gọi là hệ điều hành
Trang 4Tieâp theo, boô xöû lyù seõ ñóc vaø xöû lyù tuaăn töï leônh moôt trong chöông trình Trong ghi ñóc vaøxöû lyù caùc leônh, boô vi xöû lyù seõ ñóc tín hieôu caùc ñaău vaøo, thöïc hieôn caùc pheùp toaùn logic vaøkeât quạ sau ñoù seõ xaùc ñònh tráng thaùi cụa caùc ñaău ra.
Cuoâi cuøng, boô vi xöû lyù seõ gaùn caùc tráng thaùi môùi cho caùc ñaău ra tái caùc modul ñaău ra
Xöû lyù xuaât nhaôp
Goăm hai phöông phaùp khaùc nhau duøng cho vieôc xöû lyù I / O trong PLC :
Caôp nhaôt lieđn túc
Ñ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öôngtrì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öõngtín hieôu hôïp lyù môùi ñöôïc ñóc vaøo trong boô nhôù vi xöû lyù Caùc leônh ngoû ra ñöôïc laẫy tröïctieâ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öïchieôn thì caùc ngoû ra caøi lái vaøo ñôn vò I / O, vì theâ neđn chuùng vaên giöõ ñöôïc tráng thaùi chotôùi khi laăn caôp nhaôt keâ tieâp
Chúc ạnh quaù trình xuaât nhaô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ôtleô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 ñöôïcxeùt ñeân rieđ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đucaău relay 3ms cho 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đnraât daøi vaø taíng theo soâ 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öutráng thaù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 RAM naøy Suoât quaù trình copy taât cạ caùc tráng thaùi vaøo trong I / O RAM Quaù trìnhnaøy xạy ra ôû moôt chu 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ơulaø 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ăukhieơn töông öùng moêi leônh maât khoạng töø 1÷10 µs
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 chonhieă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
Q0.0 Q0.2 Q0.4 Q0.5 Q0.7
I0.0 I0.2 I0.3 I0.5 I0.7
SF RUN STOP
SIEMENS SIMATIC S7 - 200
Caùc coơng vaøo Coơng truyeăn thođng
Caùc coơng ra
Q1.0
Trang 52.048 từ đơn (4 Kbyte) thuộc miền nhớ đọc / ghi non-volatile để lưu chương trình (vùngnhớ có giao diện với EEPROM).
2.048 từ đơn (4 Kbyte) thuộc kiểu đọc ghi để lưu dữ liệu, trong đó 512 từ đầu thuộc miềnnon-volatile
Tổng số ngõ vào / ra cực đại là 64 ngõ vào và 64 ngõ ra
128 Timer chia làm 3 loại theo độ phân giải khác nhau: 4 Timer 1ms, 16 Timer 10ms và
108 Timer 100ms
128 bộ đếm chia làm 2 loại: chỉ đếm tiến và vừa đếm tiến vừa đếm lùi
688 bít nhớ đặc biệt dùng để thông báo trạng thái và đặt chế độ làm việc
Các chế độ xử lý ngắt gồm: ngắt truyền thông, ngắt theo sườn lên hoặc xuống, ngắt thờigian, ngắt của bộ đếm tốc độ cao và ngắt truyền xung
3 bộ đếm tốc độ cao với nhịp 2Khz và 7 Khz
2 bộ phát xung nhanh cho dãy xung kiểu PTO hoặc kiểu PWM
2 bộ điều chỉnh tương tự
Toàn bộ vùng nhớ không bị mất dữ liệu trong khoảng thời gian 190 giờ kể từ khi PLC bịmất nguồn cung cấp
Các đèn báo trên S7-200 CPU214
SF (đèn đỏ): Đèn đỏ SF báo hiệu hệ thống bị hỏng
RUN (đèn xanh): Đèn xanh RUN chỉ định PLC đang ở chế độ làm việc và thực hiệ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
Chế độ làm việc
PLC có 3 chế độ làm việc:
RUN: cho phép PLC thực hiện chương trình từng bộ nhớ, PLC sẽ chuyển từ RUN 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 RUN hoặcSTOP
Cổng truyền thông
S7-200 sử dụng cổng truyền thông nối tiếp RS485 với phích nối 9 chân để phục vụcho việc ghép nối với thiết bị lập trình hoặc với các trạm PLC khác Tốc độ truyền chomáy lập trình kiểu PPI là 9600 baud Tốc độ truyền cung cấp của PLC theo kiểu tự do là
Trang 6Chân Giải thích
Cấu trúc bộ nhớ
Bộ nhớ S7-200 được chia thành 4 vùng với 1 tụ có nhiệm vụ duy trì dữ liệu trong mộtkhoả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ể truynhập để đọc
EEPROM MIỀN NHỚ NGOÀI
Vùng đối tượng
Vùng chương trình
Là nguồn nhờ được sử dụng để lưu giữ các lệnh chương trình Vùng này thuộc kiểunon-volatile đọc / ghi được
Vùng tham số
Là miền lưu giữ các tham số như: từ khóa, địa chỉ trạm, … cũng giống như vùngchương trình, thuộc kiểu non-volatile đọc / ghi được
Vùng dữ liệu
Là miền nhớ động được sử dụng để cất giữ các dữ liệu của chương trình Nó có thểđược truy cập theo từng bít, từng byte, từng từ đơn (W-Word) hoặc theo từ kép (DW_Double Word), vùng dữ liệu được chia thành những miền nhớ nhỏ với các công dụngkhác nhau Chúng được ký hiệu bằng chữ cái đầu theo từ tiếng Anh, đặc trưng cho côngdụng riêng của chúng như sau:
V : Variable Memory
I: Input image register
O : Output image regiter
M : Internal Memory bits
SM : Special Memory bits
Tất cả các miền này đều có thể truy nhập theo từng bít, từng byte, từng từ (word)hoặc từ kép (double word)
Vùng đối tượng
1 2 3 4 5 6 7 8 9
Đấ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 7Bao gồm các thanh ghi Timer, bộ đếm tốc độ cao, bộ đệm vào ra, thanh ghi AC Vùngnày không thuộc kiểu Non-Volatile nhưng đọc / ghi được
Mở rộng cổng vào ra
CPU 214 cho phép mở rộng nhiều nhất 7 Modul Các modul mở rộng tương tự và cóthể mở rộng cổng vào của PLC bằng cách ghép nối thêm vào nó các modul mở rộng vềphía bên phải của CPU, làm thành một móc xích Địa chỉ của các vị trí của các modulđược xác định cùng kiểu Ví dụ như một modul cổng ra không thể gán địa chỉ của mộtmodul cổng vào, cũng như một modul tương tự không thể có địa chỉ như một modul số vàngược lại
Các modul mở rộng số hay tương tự đều chiếm chổ trong bộ đệm, tương tự với số đầ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 4AQW 0
Q3.0Q3.1Q3.2 Q3.3Q3.4Q3.5Q3.6Q3.7
AIW8AIW12AQW 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
Trang 8Các chương trình cho S7-200 phải có cấu trúc bao gồm chương trình chính (mainprogram) và sau đó đến các chương trình con và các chương trình xử lý ngắt.
Chương trình chính được kết thúc bằng lệnh kết thúc chương trình (MEND)
Chương trình con là một bộ phận của chương trình, các chương trình phải được viết 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ụngphải viết sau lệnh kết thúc chương trình chính (MEND)
Các chương trình được nhóm lại thành một nhóm ngay sau chương trình chính, sau đóđến các chương trình xử lý ngắt Cũng có thể do trộn lẫn các chương trình con và chươngtrình xử lý ngắt ở sau chương trình chính
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ùngbộ đệ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ươngtrình được thực hiện bằng lệnh đầu tiên và kết thúc tại lệnh kết thúc MEND Sau giaiđoạn thực hiện chương trình là giai đoạn truyền thông nội bộ và kiểm lỗi Vòng quétđược kết thúc bằng giai đoạn chuyển các nội dung của bộ đệm ảo tới các cổng ra
4 Chuyển dữ liệu từ bộ
đệm ảo ra 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
Thực hiện trong vòng quét
Thực hiện khi chương trình chính gọi
Thực hiện khi có tín hiệu báo ngắt
Trang 9Như 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ềnthô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ặplệ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ươngtrì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ựchiệ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àotrong vòng quét
6 Các toán hạng lập trình cơ bản
Có 6 phần tử lập trình cơ bản, mỗi phần tử có công dụng riêng Để dễ dàng xác địnhthì 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ặccó 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 đượcgắn với các công tắc Các công tắc này có thể là thường mở hoặc thường đóng
Các ngõ vào vật lý nối đến bộ điều khiển lập trình (phần tử I) không có cuộn dây đểlập trình Các phần tử này chỉ có thể dùng ở dạng các công tắc mà thôi (loại thường đóngvà thường mở)
NGÔN NGỮ LẬP TRÌNH CỦA S7-200 CPU 214
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ìnhbao gồm một dãy các tập lệnh S7-200 thực hiện chương trình bắt đầu từ lệnh lập trìnhđầu tiên và kết thúc ở lập trình cuối trong một vòng quét (scan)
Một vòng quét (scan cyele) được bắt đầu bằng một việc đọc trạng thái của đầu vào,và sau đó thực hiện chương trình Vòng quét kết thúc bằng việc thay đổi trạng thái đầu
ra Trước khi bắt đầu một vòng quét tiếp theo S7-200 thực thi các nhiệm vụ bên trong vànhiệm vụ truyền thông Chu trình thực hiện chương trình là chu trình lặp
Cách lập trình cho S7-200 nói riêng và cho các PLC nói chung dựa trên hai phươngphá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ướidạng STL đều có thể chuyển sang được dạng LAD
Phương pháp hình thang (LAD): LAD là một ngôn ngữ lập trình bằng đồ họa, nhữngthà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 logicnhư 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ở
Trang 10Tiếp điểm thương đóng
Cuộn dây (coil): Là biểu tượng () mô tả rơ le được mắc theo chiều dòng điện cungcấp cho rơ le
Hộp (Box): Là biểu tượng mô tả các hàm khác nhau, nó làm việc khi có dòng điện chạyđến hộp Những dạng hàm thường được biểu diễn bằng hộp là các bộ thời gian (Timer),bộ đếm (counter) và các hàm toán học Cuộn dây và các hộp phải mắc đúng chiều dòngđiện
Mạng LAD: Là đường nối các phần tử thành một mạch hoàn thiện, đi từ đường nguồnbê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ênphải là dây trung hòa và cũng là đường trở về nguồn cung cấp (thường không được thểhiện khi dùng chương trình tiện dụng STEPT MICRO / DOS hoặc STEPT – MICRO/WIN.Dòng điện chạy từ trái qua tiếp điểm đến đóng các cuộn dây hoặc các hộp trở về bênphải nguồn
Phương pháp liệt kê lệnh (STL): Là phương pháp thể hiện chương trình dưới dạng tập hợpcá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
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ố
Trang 11ID (0 ÷ 4)
QD (0 ÷ 4)
MD (0 ÷ 28)SMD (0 ÷ 82)
AC (0 ÷ 3)
HC (0 ÷ 2)Hằng số
Một số lệnh cơ bản dùng trong lập trình
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ănxếp (xem hình a), các giá trị cũ còn lại trong ngăn xếp bị đẩy lùi xuống một bít
Load Not (LDN): Lệnh LDN nạp giá trị logic nghịch đảo của một tiếp điểm vào trong bítđầu tiên của ngăn xếp (xem hình b), các giá trị còn lại trong ngằn xếp bị đẩy lùi xuốngmột bít
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)
Bị đẩy ra khỏi ngăn xếp
Trang 12LDN n Tiếp điểm thường đóng
sẽ mở khi n = 1
LDI n Tiếp điểm thường mở sẽ
đóng tức thời khi n = 1
n: I
LDNI n Tiếp điểm thường đóng
sẽ mở tức thời khi n = 1
Các dạng khác nhau của lệnh LD, LDN cho STL như sau:
LD n Lệnh nạp giá trị logic
của điểm n vào bít đầutiên trong ngăn xếp
n (bít): I, Q, M, SM, T,
C, V
LDN n Lệnh nạp giá trị logic
nghịch đảo của điểm nvào bít đầu tiên trongngăn xếp
LDI n Lệnh nạp tức thời giá trị
logic của điểm n vào bítđầu tiên trong ngăn xếp
n: I
LDNI n Lệnh nạp tức thời giá trị
logic nghịch đảo củađiểm n vào bít đầu tiêntrong ngăn xếp
OUTPUT (=)
Lệnh sao chép nội dung của bít đầu tiên trong ngăn xếp vào bít được chỉ định trong lệnh.Nội dung của ngăn xếp không bị thay đổi
Mô tả lệnh bằng LAD như sau:
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:
Trang 13= I n Lệnh = I (immediate) saochép tức thời giá trị của đỉnh
stack tới tiếp điểm n đượcchỉ dẫn trong lệnh
n: Q(bít)
Các lệnh ghi / xóa giá trị cho tiếp điểm
SET (S) ; RESET (R):
Lệnh dùng để đóng và ngắt các điểm gián đoạn đã được thiết kế Trong LAD, logic điề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ộcdây thì các cuộn dây đóng hoặc mở các tiếp điểm (hoặc một dãy các tiếp điểm)
Trong STL, lệnh truyền trạng thái bít đầu của ngăn xếp đến các điểm thiết kế Nếu bítnày có giá trị =1, các lệnh S và R sẽ đóng ngắt tiếp điểm hoặc một dãy các tiếp điểm(giới hạn từ 1 đến 255) Nội dung của ngăn xếp không bị thay đổi bởi các lệnh này
Mô tả bằng lệnh LAD
Đóng một mảng gồm n các
tiếp điểm kể từ S BIT S BIT: I, Q, M, SM, T,C, V
n(byte): IB, QB, MB,SMB, VB,AC, Hằng số,
*VD, *AC
Đóng một mảng gồm n cá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ảng gồm
n các tiếp điểm kể từ S BIT S BIT: Q
N(byte): IB, QB, MB,SMB, VB,AC, Hằng số,
*VD, *AC
Ngắt tức thời một mảng gồm
n các tiếp điểm kể từ địa chỉ
S BIT
S S BIT n Ghi giá trị logic vào một
mảng gồm n bít kể từ địa chỉ
S BIT
S BIT: I, Q, M, SM, T,
C, V(bit)
Trang 14n: 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 BITlại chỉ vào Timer hoặcCounter thì lệnh sẽ xóa bítđầu ra của Timer /Counter
S I S BIT n Ghi tức thời giá trị logic 1
vào một mảng gồm n bít kểtừ địa chỉ S BIT
S BIT: Q(bit)
n: IB, QB, MB, SMB,
VB (byte)(byte) AC, Hằng số,
*VD, *AC
R I S BIT n Xóa tức thời một mảng gồm
n bít kể từ địa chỉ S BIT
Các lệnh logic đại số (BOOLEAN)
Các lệnh tiếp điểm đại số Boolean cho phép tạo lập được các mạch logic (không có nhớ).Trong LAD các lệnh này được biểu diễn thông qua cấu trúc mạch, mắc nối tiếp hay songsong các tiếp điểm thường đóng và các tiếp điểm thường mở STL có thể sử dụng cáclệnh A (And) và O (Or) cho các hàm hở hoặc các lệnh AN (And Not), ON (Or Not) chocác hàm kín
Giá trị của ngăn xếp thay đổi phụ thuộc vào từng lệnh
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 đảocủa tiếp điểm n và giá trị bít đầutiên trong ngằn xếp Kết quả đượcghi lại bít đầu trong 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ủatiếp điểm n và giá trị bít đầu tiêntrong ngằn xếp Kết quả được ghilại bít đầu trong 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ị logicnghịch đảo của tiếp điểm n và giátrị bít đầu tiên trong ngằn xếp Kếtquả được ghi lại bít đầu trong ngănxếp
Trang 15
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ệtbiểu diễn các phép tính của đại số Boolean cho các bit trong ngăn xếp, được gọi là cáclệ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ặcxóa các mệnh đề logic LAD không có bộ đếm dành cho lệnh stack logic STL sử dụngcác lệnh stack logic để thực hiệ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
ALD Lệnh tổ hợp giá trị của bít đầu tiên và thứ hai
của ngăn xếp bằng phép tính logic Kết quả ghilại vào bít đầu tiên Giá trị còn lại của ngănxếp được kéo lên một bít
Không có
OLD Lệnh tổ hợp giá trị của bít đầu tiên và thứ hai
của ngăn xếp bằng phép tính logic V Kết quảghi lại vào bít đầu Giá trị còn lại của ngănxếp được kéo lên một bít
Không có
LPS Lệnh logic Push (LPS) sao chụp giá trị của bít
đầu tiên vào bít thứ hai trong ngăn xếp Giá trịcòn lại bị đẩy xuống một bít Bít cuối cùng bịđẩy ra khỏi ngăn xếp
Không có
LRD Lệnh sao chép giá trị của bít thứ hai vào bít đầu
tiên trong ngăn xếp Các giá trị còn lại củangăn xếp giữ nguyên vị trí
Không có
LPP Lệnh kéo ngăn xếp lên một bít Giá trị của bít
sau được chuyển cho bít trước Không có
AND (A)
OR (O)
Lệnh A và O phối hợp giá trị logic của một tiếp điểm n với giá trị bít đầu tiên củangă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ácbít còn lại trong ngăn xếp không bị thay đổi
Luật tính toán của các phép tính logic And và Or như sau:
(And)
x v y(Or)
Trang 16Tá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 17Sơ đồ 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 18Cách biểu diễn các lệnh logic này trong LAD và STL được tóm tắt trong bảng sau Chúngsử dụng bít nhớ đặc biệt SM 1.0 để thông báo về trạng thái kết quả phép tính được thựchiện (kết quả bằng 0).
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 ứngcủa hai từ IN1 và IN2 Kết quảđược ghi lại vào IN2
IN1: VW, T, C,
IW, QW
(word) SMW, AC,AIW, *VD
*AC, Hằng số
IN2: VW, T, C,
IW, QW(word) W, CA,AIW, *VD, *AC
ORW IN1 IN2
Lệnh thực hiện phép logic ORgiữa các bít tương ứng của haitừ IN1 và IN2 Kết quả đượcghi lại vào IN2
XORW IN1 IN2
Lệnh thực hiện phép logic XORgiữa các bít tương ứng của haitừ 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ủa hai từ kép IN1 và IN2 Kếtquả được ghi lại vào IN2
IN1: VD, ID, QD,
MD, SMQ
(Dword) AC, HC,
*CD,*AC Hằng số
IN2: VD, ID, QD,
MD, SMD(Dword)AC, *VD,
*AC
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 ghi lại vào IN2
XORD IN1 IN2
Lệnh thực hiện phép logic XORgiữa các bít tương ứng của haitừ 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 theotừng bít của hai từ IN1và IN2 Kết quả đượcghi vào từ OUT
IN1: VW, T, C, IW,QW
(word) SMW, AC,AIW, VD
*AC, Hằng số
Trang 19IN2: VW, T, C, IW,QW,
(word) SMW, AC,AIW, *VD, *AC,Hằng số
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ácbít tương ứng của hai từIN1 và IN2 Kết quảđược ghi và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ảđược ghi vào từ OUT
Lệnh thực hiện phéptính logic AND giữacác bít của hai từ képIN1 và IN2 Kết quảđược ghi và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
OUT: VD, ID, QD,
MD, SMD, (Dword) AC, *VD,
*AC
Lệnh thực hiện phéptính logic OR giữa cácbít của hai từ kép IN1và IN2 Kết quả đượcghi vào từ OUT
Lệnh thực hiện phéptính logic XOR giữa cácbít của hai từ kép IN1và IN2 Kết quả đượcghi vào từ OUT
Các lệnh tiếp điểm đặc biệt:
Có thể dùng các lệnh tiếp điểm đặc biệt để phát hiện sự chuyển tiếp trạng thái của
xung (sườn xung) và đảo lại trạng thái của dòng cung cấp (giá trị của đỉnh ngăn xếp).LAD sử dụng các tiếp điểm đặc biệt để tác động vào dòng cung cấp Các tiếp điểm đặcbiệ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íatrướ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ườntrướ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
Trang 20Tiế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ạchtrong 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é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 đỉnhngăn xếp Khi nhận được sự chuyển tiếpnhư vậy đỉnh ngăn xếp sẽ có giá trị bằng 1trong một vòng quét
Không có
ED Lệnh nhận biết sự chuyển tiếp trạng thái
từ 1 xuống 0 trong một vòng quét của đỉnhngăn xếp Khi nhận được sự chuyển tiếpnhư vậy đỉnh ngăn xếp sẽ có giá trị bằng 1trong một vòng quét
Không có
NOT (NOT)
EDGE UP (EU)
EDGE DOWN (ED)
Lệnh NOT, EU và ED thực hiện các thuật toán đặc biệt trên bít đầu tiên của ngăn xếp.Lệnh NOT đảo giá trị của bít đầu tiên trong ngăn xếp Lệnh EU khi phát hiện thấy sườnlên từ 0 đến 1 trong bít đầu tiên của ngăn xếp thì đặt giá trị 1 vào bít đầu tiên của ngănxế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
Trang 21c6 c6 c6 c6 C6 c6
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 (> =)
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 sosánh các từ hoặc từ kép với nhau thì phải để ý đến dấu của toán hạng là bít cao nhấttrong từ hoặc từ kép
Biểu diễn các lệnh so sánh trong LAD:
Tiếp điểm đóng khi n1 = n2
AC , Const , *VD*,AC
Tiếp điểm đóng khi N1 > n2
Tiếp điểm đóng khi N1 < n2
> = D
Trang 22Trong 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àokiể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 đượccá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ằngnhau (< >), 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áclệ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>W100 và hằng số 50 bằng cách sử dụng kết hợp phép so sánhbằng nhau LDW = và lệnh đảo NOT
LDB =, LDW =
LDD =, LDR =
* Lệnh kiểm tra tính bằng nhau của nội dung 2 byte, từ, từ kép, hoặc số thực Trongtrường hợp phép so sánh cho kết quả đúng, bít đầu tiên trong ngăn xếp sẽ có giá trị logicbằng 1
LDB < = , LDW < =
LDD < = , LDR < =
* Lệnh so sánh nội dung của byte, từ, từ kép hoặc số thực thứ nhất có nhỏ hơn hoặc bằngnội dung của byte, từ, từ kép hoặc số thực thứ hai hay không Trong trường hợp phép sosánh cho kết quả đúng, bít đầu tiên trong ngăn xếp có giá trị logic bằng 1
LDB > =, LDW > =
LDD > =, LDR > =
* Lệnh so sánh nội dung của byte, từ, từ kép hoặc số thực thứ nhất có lớn hơn hoặc bằngnội dung của byte, từ, từ kép hoặc số thực thứ hai hay không Trong trường hợp phép sosá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 đầutiê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ằngnội dung của byte, từ, từ kép hoặc số thực thứ hai hay không Trong trường hợp phép sosá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ếpvớ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ằng số, *VD , *ACLDB > = n n Lệnh thực hiện phép tính
= = B
Trang 23AB > = n1 n2
OB > = n1 n2
logic Load , And hoặc Orgiữa giá trị logic 1 với nộidung đỉnh ngăn xếp khi nộidung 2 byte n1 và n2 thỏamãn n1 >= n2
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 Orgiữa giá trị logic 1 với nộidung đỉnh ngăn xếp khi nộidung 2 từ n1 vàn2 thỏamãn -
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 Orgiữa giá trị logic 1 với nộidung đỉnh ngăn xếp khi nộidung 2 từ kép n1 vàn2 thỏamãn n1 > = n2
LDD < = n1 n2
AD < = n1 n2
Lệnh thực hiện phép tínhlogic Load , And hoặc Orgiữa giá trị logic 1 với nộidung đỉnh ngăn xếp khi nội
Trang 24OD < = n1 n2 dung 2 từ kép n1 vàn2 thỏa
n1 ,n2 (từ kép):VD, ID,
QD, MD, SMD, AC,
HC , hằng số, *VD ,
*ACLDR > = n1 n2
AR > = n1 n2
OR > = n1 n2
Lệnh thực hiện phép tínhlogic Load , And hoặc Orgiữa giá trị logic 1 với nộidung đỉnh ngăn xếp nếu haisố thực n1 và n2 (4 byte )thỏa mãn n1 > = n2
Lệnh nhảy 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ệ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 chophé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ẽ ralà 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ểnchuyể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ềukhiể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 đơngiản là nhãn, phải được đánh dấu trước khi thực hiện lệnh nhảy hay lệnh gọi chương trìnhcon
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ệnhnhả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ươngtrì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ộtchươ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àicá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ộ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 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ư