{"id":5371,"date":"2020-01-24T15:21:06","date_gmt":"2020-01-24T14:21:06","guid":{"rendered":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/?p=5371"},"modified":"2023-08-22T11:26:27","modified_gmt":"2023-08-22T09:26:27","slug":"jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4","status":"publish","type":"post","link":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/","title":{"rendered":"Jak korzysta\u0107 ze styk\u00f3w, cewek i blok\u00f3w operacji arytmetycznych w programie steruj\u0105cym? | Kurs programowania PLC od podstaw | Odc. 4"},"content":{"rendered":"\n<div class=\"dowiesz-sie\">\n<h3>Z tego artyku\u0142u dowiesz si\u0119:<\/h3>\n<ul class=\"bulleted\">\n<li>Jak doda\u0107 do programu steruj\u0105cego styki, cewki i bloki arytmetyczne w \u015brodowisku Cscape?<\/li>\n<li>Jak utworzy\u0107 prost\u0105 logik\u0119 programu steruj\u0105cego?<\/li>\n<li>Jak skompilowa\u0107 stworzony program i wgra\u0107 go do sterownika?<\/li>\n<li>Jak \u015bledzi\u0107 wykonywany program i jak monitorowa\u0107 warto\u015bci wykorzystanych zmiennych?<\/li>\n<\/ul>\n<\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Przyszed\u0142 moment na jeden z najciekawszych moment\u00f3w kursu,\nszczeg\u00f3lnie je\u015bli nie mia\u0142e\u015b\/a\u015b okazji programowa\u0107 w j\u0119zyku LAD. Stworzysz teraz\npierwszy rozbudowany program logiczny wykorzystuj\u0105cy podstawowe elementy j\u0119zyka\ndrabinkowego. <\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"dowiesz-sie\" style=\"margin-top:40px; margin-bottom:40px\">\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/kurs-programowania-plc-od-podstaw-dla-elektrykow-i-automatykow\/\"><h3>Kurs programowania PLC od podstaw dla automatyk\u00f3w i elektryk\u00f3w<\/h3><\/a>\n\n<h4 style=\"font-size:20px; margin-top:25px;\">Podstawy programowania sterownik\u00f3w PLC<\/h4>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wprowadzenie-jak-skonfigurowac-podlaczyc-oraz-uruchomic-sterownik-plc-kurs-plc-1\/\">1. Wprowadzenie. Jak skonfigurowa\u0107, pod\u0142\u0105czy\u0107 oraz uruchomi\u0107 sterownik PLC?<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-tworzyc-i-edytowac-projekty-w-oprogramowaniu-cscape-kurs-plc-2\/\">2. Jak tworzy\u0107 i edytowa\u0107 projekty w oprogramowaniu Cscape?<\/a><\/li>\n<h4 style=\"font-size:20px; margin-top:25px;\">Programowanie sterownika PLC w j\u0119zyku drabinkowym<\/h4>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-tworzyc-oraz-konfigurowac-baze-zmiennych-w-srodowisku-cscape-kurs-plc-3\/\">3. Jak tworzy\u0107 oraz konfigurowa\u0107 baz\u0119 zmiennych w \u015brodowisku Cscape?<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/\">4. Jak korzysta\u0107 ze styk\u00f3w, cewek i blok\u00f3w operacji arytmetycznych w programie steruj\u0105cym?<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-odmierzac-czas-w-programie-sterujacym-i-jak-konfigurowac-timery-kurs-plc-5\/\">5. Jak odmierza\u0107 czas w programie steruj\u0105cym i jak konfigurowa\u0107 timery?<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-plc-6\/\">6. Jak por\u00f3wnywa\u0107 warto\u015bci i wykorzysta\u0107 wyniki operacji logicznych?<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-zliczac-impulsy-i-konfigurowac-liczniki-kurs-plc-7\/\">7. Jak zlicza\u0107 impulsy i konfigurowa\u0107 liczniki?<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/8-jak-konwertowac-typy-zmiennych-i-przemieszczac-zmienne-w-programie-kurs-plc-8\/\">8. Jak konwertowa\u0107 typy zmiennych i przemieszcza\u0107 zmienne w programie?<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-sterowac-wykonywaniem-programu-logicznego-instrukcja-skoku-warunkowego-kurs-plc-9\/\">9. Jak sterowa\u0107 wykonywaniem programu logicznego? Instrukcja skoku warunkowego<\/a><\/li>\n<h4 style=\"font-size:20px; margin-top:25px;\">Programowanie zintegrowanego panelu HMI<\/h4>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-budowac-ekrany-operatorskie-z-obiektami-do-wizualizacji-i-zadawania-wartosci-zmiennych-kurs-plc-10\/\">10. Jak budowa\u0107 ekrany operatorskie z obiektami do wizualizacji i zadawania warto\u015bci zmiennych?<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-zaprojektowac-nawigacje-miedzy-ekranami-operatorskimi-oraz-jak-korzystac-z-gotowych-obiektow-graficznych-kurs-plc-11\/\">11. Jak umo\u017cliwi\u0107 nawigacj\u0119 mi\u0119dzy ekranami operatorskimi oraz jak korzysta\u0107 z gotowych obiekt\u00f3w graficznych w \u015brodowisku Cscape?<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-wizualizowac-zmienne-analogowe-oraz-jak-modyfikowac-ich-wartosci-przy-pomocy-obiektow-graficznych-kurs-plc-12\/\">12. Jak wizualizowa\u0107 zmienne analogowe oraz jak modyfikowa\u0107 ich warto\u015bci przy pomocy obiekt\u00f3w dost\u0119pnych w oprogramowaniu Cscape?<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-z-obiektu-menu-kurs-plc-13\/\">13. Jak korzysta\u0107 z obiektu menu?<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/konfiguracja-i-obsluga-alarmow-w-sterownikach-plc-kurs-plc-14\/\">14. Konfiguracja i obs\u0142uga alarm\u00f3w w sterownikach PLC<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-konfigurowac-obiekt-trendow-kurs-plc-15\/\">15. Kontrolka Data Trend<\/a><\/li>\n<h4 style=\"font-size:20px; margin-top:25px;\">Komunikacja sterownik\u00f3w PLC w sieci szeregowej i Ethernet<\/h4>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/komunikacja-po-protokole-modbus-rtu-odc-16-kurs-programowania-plc-od-podstaw\/\">16. Komunikacja szeregowa Modbus RTU Master i Slave<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/komunikacja-w-sieci-cscan-kurs-plc-17\/\">17. Komunikacja CsCAN<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/komunikacja-w-sieci-modbus-tcp-kurs-plc-18\/\">18. Komunikacja Ethernet Modbus TCP<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wysylanie-wiadomosci-email-w-sterowniku-plc-kurs-plc-19\/\">19. Wysy\u0142anie wiadomo\u015bci Email w sterowniku PLC<\/a><\/li>\n<h4 style=\"font-size:20px; margin-top:25px;\">Zaawansowane funkcje sterownika PLC<\/h4>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/regulator-pid-kurs-programowania-plc-od-podstaw-odc-20\/\">20. Regulator PID<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/skladowanie-danych-data-logging-kurs-programowania-plc-od-podstaw-odc-21\/\">21. Sk\u0142adowanie danych: Data logging<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/skladowanie-danych-karta-microsd-kurs-programowania-plc-od-podstaw-odc-22\/\">22. Sk\u0142adowanie danych: karta MicroSD<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/trendy-historyczne-oraz-receptury-kurs-programowania-plc-od-podstaw-odc-23\/\">23. Trendy historyczne oraz receptury w programie<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/setpoint-backup-i-restore-danych-oraz-generowanie-raportow-z-poziomu-sterownika-kurs-programowania-plc-od-podstaw-odc-24\/\">24. Setpoint, backup i restore danych oraz generowanie raport\u00f3w z poziomu sterownika<\/a><\/li>\n<li><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/hasla-i-zabezpieczenia-w-programie-ustawienia-jezyka-oraz-edytor-dostepny-w-narzedziu-opcja-autodokumentacji-dodatkowe-ustawienia-i-mozliwosci-edycji-kurs-programowania-plc-od-podstaw-odc-25\/\">25. Has\u0142a i zabezpieczenia w programie, ustawienia j\u0119zyka oraz edytor dost\u0119pny w narz\u0119dziu, opcja autodokumentacji \/ Dodatkowe ustawienia i mo\u017cliwo\u015bci edycji<\/a><\/li>\n\n\n<\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Na przyk\u0142adzie sterowania zaworami zbiornik\u00f3w nauczysz si\u0119 tworzy\u0107 logik\u0119 programu oraz symulacj\u0119 proces\u00f3w u\u017cywaj\u0105c styk\u00f3w, cewek oraz blok\u00f3w operacji arytmetycznych. To podstawowe elementy w j\u0119zyku drabinkowym! Zapraszamy wi\u0119c do zg\u0142\u0119bienia tej wiedzy i zdobycia kolejnych umiej\u0119tno\u015bci!<\/p>\n\n\n\n<div style=\"height:41px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Krok 1: Jakie s\u0105 podstawowe elementy j\u0119zyka drabinkowego?<\/h3>\n\n\n\n<p><strong>Styki &#8211; <\/strong>s\u0142u\u017c\u0105 do sprawdzania stanu logicznego bit\u00f3w im przypisanych  <\/p>\n\n\n\n<p><strong>Styk normalnie otwarty \u2013 <\/strong>przesy\u0142a sygna\u0142, je\u017celi zwi\u0105zana z nim zmienna ma warto\u015b\u0107 1 (ON).  <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"86\" height=\"85\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_2_1.png\" alt=\"\" class=\"wp-image-5372\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:45px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Styk normalnie zamkni\u0119ty<\/strong> &#8211; przesy\u0142a sygna\u0142, je\u017celi zwi\u0105zana z nim zmienna ma warto\u015b\u0107 0 (OFF).<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"84\" height=\"78\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_3_1.png\" alt=\"\" class=\"wp-image-5373\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:49px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Przeka\u017aniki (cewki)<\/strong> \u2013 s\u0142u\u017c\u0105 do ustawiania stan\u00f3w bit\u00f3w im przypisany<\/p>\n\n\n\n<p><strong>Przeka\u017anik chwilowy o stykach<\/strong> <strong>otwartych<\/strong> \u2013 ustawia warto\u015b\u0107 przypisanej mu zmiennej na 1 w momencie doprowadzenia do niego sygna\u0142u. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_4_1.png\" alt=\"\" class=\"wp-image-5374\" width=\"83\" height=\"79\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Przeka\u017anik chwilowy o stykach<\/strong> <strong>zamkni\u0119tych<\/strong> \u2013 ustawia warto\u015b\u0107 przypisanej mu zmiennej na 0 w momencie doprowadzenia do niego sygna\u0142u. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"93\" height=\"89\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_5_1.png\" alt=\"\" class=\"wp-image-5375\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:56px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Przeka\u017anik uaktywniany zboczem narastaj\u0105cym sygna\u0142u<\/strong> &#8211; zmiana stanu sygna\u0142u z 0 na 1 powoduje ustawienie zmiennej powi\u0105zanej z przeka\u017anikiem na 1 na okres jednego cyklu wykonywania programu steruj\u0105cego. (<strong><em>Zbocze narastaj\u0105ce<\/em><\/strong> \u2013 zmiana stanu sygna\u0142u z 0 na 1. )<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"95\" height=\"84\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_6_1.png\" alt=\"\" class=\"wp-image-5376\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Przeka\u017anik uaktywniany zboczem opadaj\u0105cym sygna\u0142u<\/strong> &#8211; zmiana stanu sygna\u0142u z 1 na 0 powoduje ustawienie zmiennej powi\u0105zanej z przeka\u017anikiem na 1 na okres jednego cyklu wykonywania programu steruj\u0105cego. (<strong><em>Zbocze opadaj\u0105ce<\/em><\/strong>\u2013 zmiana stanu sygna\u0142u z 1 na 0.) <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"95\" height=\"80\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_7_1.png\" alt=\"\" class=\"wp-image-5377\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:41px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Przeka\u017anik \u2013 zatrzask SET \u2013 <\/strong>doprowadzenie sygna\u0142u do tego przeka\u017anika powoduje ustawienie warto\u015bci zwi\u0105zanej z nim zmiennej na 1. Zmienna zachowuje t\u0119 warto\u015b\u0107 do momentu jej zmiany za pomoc\u0105 przeka\u017anika Reset.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_8_1.png\" alt=\"\" class=\"wp-image-5378\" width=\"103\" height=\"86\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:64px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Przeka\u017anik \u2013 zatrzask RESET \u2013 <\/strong>doprowadzenie sygna\u0142u do tego przeka\u017anika powoduje ustawienie warto\u015bci zwi\u0105zanej z nim zmiennej na 0. Zmienna zachowuje t\u0119 warto\u015b\u0107 do momentu jej zmiany za pomoc\u0105 przeka\u017anika Set.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_9_1.png\" alt=\"\" class=\"wp-image-5379\" width=\"100\" height=\"92\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:58px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Bloki\noperacji arytmetycznych \u2013 <\/strong>realizuj\u0105\nfunkcje matematyczne parametr\u00f3w\n\n\n\n<\/p>\n\n\n\n<p>Blok funkcyjny dodawania Add \u2013 dodaje parametr IN1 i IN2, a wynik zapisuje jako parametr Q: <\/p>\n\n\n\n<p class=\"has-text-align-center\">Q = IN1 + IN2<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_10.png\" alt=\"\" class=\"wp-image-5380\" width=\"193\" height=\"106\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:39px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Blok funkcyjny odejmowania Sub \u2013 odejmuje parametr IN2 od parametru IN1 i wynik zapisuje do parametru Q:<\/p>\n\n\n\n<p class=\"has-text-align-center\">Q = IN1 \u2013 IN2<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_11_1.png\" alt=\"\" class=\"wp-image-5381\" width=\"196\" height=\"114\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:60px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Blok funkcyjny mno\u017cenia Mul \u2013 mno\u017cy parametry IN1 i IN2, a wynik zapisuje do parametru Q:<\/p>\n\n\n\n<p class=\"has-text-align-center\">Q = IN1 * IN2<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"198\" height=\"129\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_12_1.png\" alt=\"\" class=\"wp-image-5382\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:49px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Blok funkcyjny dzielenia Div \u2013 dzieli parametr IN1 przez IN2, a wynik zapisuje do parametru Q:<\/p>\n\n\n\n<p class=\"has-text-align-center\">Q = IN1 \/ IN2<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"208\" height=\"128\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_13_1.png\" alt=\"\" class=\"wp-image-5383\"\/><\/figure>\n<\/div>\n\n\n<p>W przypadku warto\u015bci INT i DINT, cz\u0119\u015b\u0107 u\u0142amkowa wyniku jest odrzucana. <\/p>\n\n\n\n<div style=\"height:61px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Blok funkcyjny <em>modulo<\/em>&nbsp;(MOD) \u2013 dzieli parametr IN1 przez IN2, a reszt\u0119 z dzielenia zapisuje do parametru Q:<\/p>\n\n\n\n<p class=\"has-text-align-center\">Q = cz\u0119\u015b\u0107 u\u0142amkowa (IN1\/IN2)<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"210\" height=\"131\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_14_1.png\" alt=\"\" class=\"wp-image-5384\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:54px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Blok funkcyjny <em>pierwiastek kwadratowy<\/em> \u2013 oblicza pierwiastek kwadratowy z parametru IN1, a wynik zapisuje do parametru Q.<\/p>\n\n\n\n<p class=\"has-text-align-center\">Q = pierwiastek kwadratowy (IN1)<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"208\" height=\"126\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_15_1.png\" alt=\"\" class=\"wp-image-5385\"\/><\/figure>\n<\/div>\n\n\n<p>Argumentami tego bloku powinny by\u0107 zwykle warto\u015bci typu REAL, tak by wynik m\u00f3g\u0142 by\u0107 liczb\u0105 zmiennoprzecinkow\u0105. Jako argument mo\u017cesz poda\u0107 warto\u015b\u0107 typu INT lub DINT, ale w przypadku, gdy w wyniku dzia\u0142ania otrzymasz warto\u015b\u0107 nieca\u0142kowit\u0105, cz\u0119\u015b\u0107 u\u0142amkowa b\u0119dzie odrzucona, gdy\u017c warto\u015b\u0107 Q jest wtedy r\u00f3wnie\u017c liczb\u0105 ca\u0142kowit\u0105.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Blok funkcyjny <em>warto\u015b\u0107 bezwzgl\u0119dna<\/em> (ABS) \u2013 odrzuca znak parametru IN1 i wynik zapisuje do parametru Q. Wynik dzia\u0142ania jest wi\u0119c zawsze liczb\u0105 dodatni\u0105.<\/p>\n\n\n\n<p class=\"has-text-align-center\">Q = warto\u015b\u0107 bezwzgl\u0119dna (IN1)<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"218\" height=\"137\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_16_1.png\" alt=\"\" class=\"wp-image-5386\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:82px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Krok 2: Jakie zadanie b\u0119dzie realizowa\u0142a tworzona aplikacja? <\/h3>\n\n\n\n<p>Program tworzony w ramach kursu, to przyk\u0142ad aplikacji stworzonej w j\u0119zyku LD. Architektur\u0119 programu sterowania prezentuje poni\u017cszy schemat:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_17_11.png\" alt=\"\" class=\"wp-image-5390\" width=\"839\" height=\"457\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_17_11.png 839w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_17_11-768x418.png 768w\" sizes=\"auto, (max-width: 839px) 100vw, 839px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:43px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Aplikacja b\u0119dzie sk\u0142ada\u0142a si\u0119 z 3 zbiornik\u00f3w oraz z 5\nzawor\u00f3w \u2013 2 nape\u0142niaj\u0105cych oraz 3 opr\u00f3\u017cniaj\u0105cych. Funkcje arytmetyczne\nwykorzystasz do symulacji nape\u0142niania i opr\u00f3\u017cniania zbiornik\u00f3w. Dodawanie i\nodejmowanie warto\u015bci do\/od rejestr\u00f3w przypisanych odpowiednim zbiornikom b\u0119dzie\nrealizowane w okre\u015blonych interwa\u0142ach czasowych.<\/p>\n\n\n\n<p>Stan zawor\u00f3w b\u0119dzie kontrolowany przez odpowiednie styki.\nOtwarcie zaworu b\u0119dzie nast\u0119powa\u0142o po wykryciu przez styk warto\u015bci zmiennej\nr\u00f3wniej 1. Zaw\u00f3r b\u0119dzie natomiast zamkni\u0119ty, je\u015bli warto\u015b\u0107 zmiennej badanej\nprzez styk b\u0119dzie r\u00f3wna 0. <\/p>\n\n\n\n<p>Przep\u0142yw cieczy do zbiornika (dodawanie i odejmowanie\nwarto\u015bci rejestru zbiornika) b\u0119dzie sterowane przez zawory (styki).<\/p>\n\n\n\n<p>Aby zwi\u0119kszy\u0107 czytelno\u015b\u0107 programu, logik\u0119 dotycz\u0105c\u0105 poszczeg\u00f3lnych zbiornik\u00f3w b\u0119dziesz umieszcza\u0107 w osobnych podprogramach.<\/p>\n\n\n\n<div style=\"height:47px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n            <div id=\"mailerlite-form_9\" data-temp-id=\"69e138049c1fa\">\n                <div class=\"mailerlite-form\">\n                    <form action=\"\" method=\"post\" novalidate>\n                                                    <div class=\"mailerlite-form-title\"><h3>Newsletter Poradnika Automatyka<\/h3><\/div>\n                                                <div class=\"mailerlite-form-description\"><p>Czytaj trendy i inspiracje, podstawy automatyki, automatyk\u0119 w praktyce<\/p>\n<\/div>\n                        <div class=\"mailerlite-form-inputs\">\n                                                                                            <div class=\"mailerlite-form-field\">\n                                    <label for=\"mailerlite-9-field-email\">Email<\/label>\n                                    <input id=\"mailerlite-9-field-email\"\n                                           type=\"email\" required=\"required\"                                            name=\"form_fields[email]\"\n                                           placeholder=\"Email\"\/>\n                                <\/div>\n                                                        <div class=\"mailerlite-form-loader\">Please wait...<\/div>\n                            <div class=\"mailerlite-subscribe-button-container\">\n                                <button class=\"mailerlite-subscribe-submit\" type=\"submit\">\n                                    Zapisz si\u0119                                <\/button>\n                            <\/div>\n                            <input type=\"hidden\" name=\"form_id\" value=\"9\"\/>\n                            <input type=\"hidden\" name=\"action\" value=\"mailerlite_subscribe_form\"\/>\n                            <input type=\"hidden\" name=\"ml_nonce\" value=\"a591b055c4\"\/>\n                        <\/div>\n                        <div class=\"mailerlite-form-response\">\n                                                            <h4><p>Dzi\u0119kujemy za zapis do newslettera!<\/p>\n<\/h4>\n                                                    <\/div>\n                    <\/form>\n                <\/div>\n            <\/div>\n        <script type=\"text\/javascript\" src='https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/plugins\/official-mailerlite-sign-up-forms\/assets\/js\/localization\/validation-messages.js'><\/script>\n         <script type=\"text\/javascript\"> var selectedLanguage = \"pl\"; var validationMessages = messages[\"en\"]; if(selectedLanguage) { validationMessages = messages[selectedLanguage]; } window.addEventListener(\"load\", function () { var form_container = document.querySelector(`#mailerlite-form_9[data-temp-id=\"69e138049c1fa\"] form`); let submitButton = form_container.querySelector('.mailerlite-subscribe-submit'); submitButton.disabled = true; fetch('https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-admin\/admin-ajax.php', { method: 'POST', headers:{ 'Content-Type': 'application\/x-www-form-urlencoded', }, body: new URLSearchParams({ \"action\" : \"ml_create_nonce\", \"ml_nonce\" : form_container.querySelector(\"input[name='ml_nonce']\").value }) }) .then((response) => response.json()) .then((json) => { if(json.success) { form_container.querySelector(\"input[name='ml_nonce']\").value = json.data.ml_nonce; submitButton.disabled = false; } }) .catch((error) => { console.error('Error:', error); }); form_container.addEventListener('submit', (e) => { e.preventDefault(); let data = new URLSearchParams(new FormData(form_container)).toString(); let validationError = false; document.querySelectorAll('.mailerlite-form-error').forEach(el => el.remove()); Array.from(form_container.elements).forEach((input) => { if(input.type !== 'hidden') { if(input.required) { if(input.value == '') { validationError = true; let error = document.createElement(\"span\"); error.className = 'mailerlite-form-error'; error.textContent = validationMessages.required; input.after(error); return false; } } if((input.type == \"email\") && (!validateEmail(input.value))) { validationError = true; let error = document.createElement(\"span\"); error.className = 'mailerlite-form-error'; error.textContent = validationMessages.email; input.after(error); return false; } } }); if(validationError) { return false; } fade.out(form_container.querySelector('.mailerlite-subscribe-button-container'), () => { fade.in(form_container.querySelector('.mailerlite-form-loader')); }); fetch('https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-admin\/admin-ajax.php', { method: 'POST', headers:{ 'Content-Type': 'application\/x-www-form-urlencoded', }, body: data }) .then((response) => { fade.out(form_container.querySelector('.mailerlite-form-inputs'), () => { fade.in(form_container.querySelector('.mailerlite-form-response')); }); }) .catch((error) => { console.error('Error:', error); }); }); }, false); var fade = { out: function(el, fn = false) { var fadeOutEffect = setInterval(function () { if (!el.style.opacity) { el.style.opacity = 1; } if (el.style.opacity > 0) { el.style.opacity -= 0.1; } else { el.style.display = 'none'; clearInterval(fadeOutEffect); } }, 50); if( typeof (fn) == 'function') { fn(); } }, in: function(el) { var fadeInEffect = setInterval(function () { if (!el.style.opacity) { el.style.opacity = 0; } if (el.style.opacity < 1) { el.style.opacity = Number(el.style.opacity) + 0.1; } else { el.style.display = 'block'; clearInterval(fadeInEffect); } }, 50); } }; function validateEmail(email){ if(email.match( \/^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$\/ )) { return true; } return false; } <\/script> \n\n\n\n<div style=\"height:53px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Krok 3: Jak utworzy\u0107 nowy podprogram w \u015brodowisku Cscape?<\/h3>\n\n\n\n<p>Aby utworzy\u0107 nowy podprogram, kliknij prawym klawiszem myszy\nna <em>Main Loop Modules<\/em> i z menu\nkontekstowego wybierz <em>New Enhanced Ladder\nLogic Block,<\/em> a nast\u0119pnie skonfiguruj jego nazw\u0119 jako <strong>Zbiornik_1<em>:<\/em><\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_18_1.png\" alt=\"\" class=\"wp-image-5391\" width=\"421\" height=\"332\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:68px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Krok 4: Stworzenie programu steruj\u0105cego nape\u0142nianiem i opr\u00f3\u017cnianiem zbiornik\u00f3w<\/h3>\n\n\n\n<p>Napiszemy teraz kod steruj\u0105cy nape\u0142nianiem i opr\u00f3\u017cnianiem\ntego zbiornika. W tym celu wstaw kolejno dwa styki normalnie otwarte i blok\ndodawania. <\/p>\n\n\n\n<p>Do pierwszego styku przypisz zmienn\u0105 <strong><em>Impuls_100ms<\/em><\/strong> a do drugiego\n<strong><em>Zawor_napelniajacy_ZB1.<\/em><\/strong>\n<\/p>\n\n\n\n<p>Klikaj\u0105c dwukrotnie na bloczek dodawania, uzupe\u0142nij\nparametry operacji dodawania. Pierwszym krokiem jest zmiana typu na REAL, gdy\u017c\nzmienne, na kt\u00f3rych blok b\u0119dzie operowa\u0142, maj\u0105 w\u0142a\u015bnie taki typ.<\/p>\n\n\n\n<p>Kolejno, do parametru IN1 przypisz <strong><em>Zbiornik_1<\/em><\/strong>, do parametru IN2 przypisz warto\u015b\u0107 0.1 oraz do parametru wyj\u015bciowego r\u00f3wnie\u017c przypisz zmienn\u0105 <strong><em>Zbiornik_1.<\/em><\/strong> <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_19_1.png\" alt=\"\" class=\"wp-image-5392\" width=\"708\" height=\"387\"\/><\/figure>\n<\/div>\n\n\n<p>W ten spos\u00f3b po otwarciu zaworu nape\u0142niaj\u0105cego zawarto\u015b\u0107\nzbiornika b\u0119dzie zwi\u0119kszana co 100 ms o warto\u015b\u0107 0.1. <\/p>\n\n\n\n<p>Kolejnym krokiem jest napisanie logiki zwi\u0105zanej z\nopr\u00f3\u017cnianiem zbiornika.<\/p>\n\n\n\n<p>Ponownie wstaw dwa styki normalnie otwarte oraz blok\nodejmowania. <\/p>\n\n\n\n<p>Do pierwszego styku przypisz zmienn\u0105 <strong><em>Impuls_100ms<\/em><\/strong> a do\ndrugiego <strong><em>Zawor_oprozniajacy_ZB1<\/em><\/strong>. <\/p>\n\n\n\n<p>Klikaj\u0105c dwukrotnie na blok odejmowania, uzupe\u0142nij parametry. Najwa\u017cniejsza jest zmiana typu na REAL, a nast\u0119pnie przypisanie zmiennych: do parametru IN1 przypisz <strong><em>Zbiornik_1<\/em><\/strong>, do parametru IN2 przypisz warto\u015b\u0107 0.1 oraz do parametru wyj\u015bciowego r\u00f3wnie\u017c zmienn\u0105 <strong><em>Zbiornik_1<\/em><\/strong>. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_20_1.png\" alt=\"\" class=\"wp-image-5393\" width=\"662\" height=\"527\"\/><\/figure>\n<\/div>\n\n\n<p>W ten spos\u00f3b po otwarciu zaworu opr\u00f3\u017cniaj\u0105cego zawarto\u015b\u0107 zbiornika b\u0119dzie zmniejszana co 100 ms o warto\u015b\u0107 0.1. <\/p>\n\n\n\n<div style=\"height:54px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Krok 5: Stworzenie kodu dla kolejnych zbiornik\u00f3w. Jak kopiowa\u0107 i przenosi\u0107 poszczeg\u00f3lne fragmenty drabinki?<\/h3>\n\n\n\n<p>Przejd\u017amy do stworzenia analogicznej logiki dla kolejnych\nzbiornik\u00f3w. <\/p>\n\n\n\n<p>Stw\u00f3rz nowy podprogram o nazwie <strong>Zbiornik_2<\/strong>.<\/p>\n\n\n\n<p>Z uwagi na fakt, \u017ce podprogram dla tego zbiornika r\u00f3\u017cni si\u0119 tylko zmiennymi i rejestrami, na kt\u00f3rych pracuje, mo\u017cna kod napisany dla zbiornika 1 skopiowa\u0107 i wklei\u0107, a nast\u0119pnie zmieni\u0107 odpowiednie parametry. W tym celu przejd\u017a do podprogramu <em>Zbiornik_1<\/em>, zaznacz stworzony kod i skopiuj go skr\u00f3tem klawiszowym <em>Ctrl+C<\/em> lub wybieraj\u0105c z menu kontekstowego opcj\u0119 <em>Copy<\/em>.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_21_1-1.png\" alt=\"\" class=\"wp-image-5395\" width=\"782\" height=\"501\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_21_1-1.png 782w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_21_1-1-768x492.png 768w\" sizes=\"auto, (max-width: 782px) 100vw, 782px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:36px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Nast\u0119pnie w podprogramie Zbiornik_2 wklej kod, u\u017cywaj\u0105c\nskr\u00f3tu klawiszowego <em>Ctrl+V<\/em> lub opcji\nz menu kontekstowego <em>Paste<\/em> oraz\nwybierz miejsce na szarym tle, od kt\u00f3rego kod ma zosta\u0107 wklejany.<\/p>\n\n\n\n<p>Zmienn\u0105 Zawor_napelniajacy_ZB1 zmie\u0144 na <strong><em>Zawor_napelniajacy_ZB2<\/em><\/strong> oraz Zawor_oprozniajacy_ZB1 na <strong><em>Zawor_oprozniajacy_ZB2<\/em><\/strong>. W blokach dodawania i odejmowania zamie\u0144 rejestr Zbiornik_1 na <strong><em>Zbiornik_2<\/em><\/strong>. Finalnie otrzymasz:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_22_1.png\" alt=\"\" class=\"wp-image-5396\" width=\"692\" height=\"288\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:48px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Krok 6: Jak wstawia\u0107 nowe szczeble, aby rozbudowa\u0107 przygotowany program?<\/h3>\n\n\n\n<p>Przejdziesz teraz do tworzenia logiki dla zaworu numer 3. Utw\u00f3rz dla\nniego nowy podprogram o nazwie <strong><em>Zbiornik_3. <\/em><\/strong><\/p>\n\n\n\n<p>Przed stworzeniem kodu dla tego zbiornika, sp\u00f3jrz ponownie\nna schemat aplikacji przedstawiony powy\u017cej. Zauwa\u017c, \u017ce zbiornik ten b\u0119dzie\nnape\u0142niany w momencie opr\u00f3\u017cniania zaworu numer 1 lub numer 2. Dlatego kod\nb\u0119dzie troszk\u0119 bardziej rozbudowany. Mimo to skopiuj program napisany dla\nzbiornika numer 1 i wklej do podprogramu stworzonego dla zbiornika numer 3. <\/p>\n\n\n\n<p>Mi\u0119dzy istniej\u0105ce linie kodu wstaw nowe puste szczeble drabinki, klikaj\u0105c prawym klawiszem myszy na jej pocz\u0105tek w miejscu pomi\u0119dzy istniej\u0105cymi szczeblami, a nast\u0119pnie wybieraj\u0105c z menu kontekstowego opcj\u0119 <em>New Rung.<\/em><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_23_1.png\" alt=\"\" class=\"wp-image-5397\" width=\"723\" height=\"348\"\/><\/figure>\n<\/div>\n\n\n<p>Kolejno, skopiuj pierwszy szczebel drabinki i wstaw go w\nnowo utworzonej przestrzeni.<\/p>\n\n\n\n<p>Nast\u0119pnie zmie\u0144 parametry tak, by pierwszy szczebel\nrealizowa\u0142 nape\u0142nianie zbiornika numer 3 po otwarciu zaworu opr\u00f3\u017cniaj\u0105cego\nzbiornik numer 1, a drugi szczebel realizowa\u0142 nape\u0142nianie zbiornika 3 po\notwarciu zaworu opr\u00f3\u017cniaj\u0105cego zbiornik numer 2.<\/p>\n\n\n\n<p>W tym celu zmienn\u0105 dla styku w pierwszej linijce o nazwie Zawor_napelniajacy_ZB1\nzamie\u0144 na<strong> Zawor_oprozniajacy_ZB1<\/strong>, a\nzmienn\u0105 w drugiej linijce o nazwieZawor_napelniajacy_ZB2\nzamie\u0144 na<strong> Zawor_oprozniajacy_ZB2<\/strong>. <\/p>\n\n\n\n<p>W obu blokach dodawania, zamie\u0144 zmienn\u0105 Zbiornik_1 na\nzmienn\u0105 <strong>Zbiornik_3<\/strong>. <\/p>\n\n\n\n<p>W linijce 3 zmie\u0144 parametr Zawor_oprozniajacy_ZB1 na <strong>Zawor_oprozniajacy_ZB3.<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_24_1.png\" alt=\"\" class=\"wp-image-5399\" width=\"565\" height=\"481\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:67px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image external-link\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/www.astor.com.pl\/produkty\/producenci\/horner-apg.html\"><img loading=\"lazy\" decoding=\"async\" width=\"840\" height=\"200\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2020\/01\/Horner_baner_3-840x200.png\" alt=\"\" class=\"wp-image-18857\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2020\/01\/Horner_baner_3-840x200.png 840w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2020\/01\/Horner_baner_3-768x183.png 768w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2020\/01\/Horner_baner_3-1536x366.png 1536w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2020\/01\/Horner_baner_3.png 1680w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/a><\/figure>\n<\/div>\n\n\n<div style=\"height:67px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Krok 7: Jak wstawia\u0107 komentarze, aby opisa\u0107 fragment programu?<\/h3>\n\n\n\n<p>Ostatni, wa\u017cny element edycji kodu, to dodanie komentarzy. Opisz\nkolejne podprogramy, informuj\u0105c do czego s\u0142u\u017c\u0105.<\/p>\n\n\n\n<p>W tym celu kliknij prawym klawiszem myszy na pocz\u0105tku drabinki, na odpowiedniej wysoko\u015bci i wybierz opcj\u0119 <em>New Comment. <\/em>Nast\u0119pnie dwukrotnie kliknij w miejsce stworzonego komentarza i uzupe\u0142nij go tre\u015bci\u0105.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_25_1.png\" alt=\"\" class=\"wp-image-5400\" width=\"568\" height=\"373\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_26_1.png\" alt=\"\" class=\"wp-image-5401\" width=\"398\" height=\"178\"\/><\/figure>\n<\/div>\n\n\n<p>Operacj\u0119 powt\u00f3rz dla wszystkich stworzonych podprogram\u00f3w.<\/p>\n\n\n\n<div style=\"height:45px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Krok 8: Jak wgra\u0107 program do sterownika&nbsp;Horner?<\/h3>\n\n\n\n<p>Aby utworzony program wgra\u0107 do sterownika, uruchom funkcj\u0119 <em>Download to<\/em>\u2026 w spos\u00f3b om\u00f3wiony w\npoprzednich cz\u0119\u015bciach kursu. Potwierd\u017a kolejno pojawiaj\u0105ce si\u0119 okna.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_27_1.png\" alt=\"\" class=\"wp-image-5411\" width=\"320\" height=\"381\"\/><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_28_1.png\" alt=\"\" class=\"wp-image-5412\" width=\"397\" height=\"206\"\/><\/figure>\n<\/div>\n\n\n<p>Nast\u0119pnie wprowad\u017a sterownik w tryb <em>RUN<\/em>, aby uruchomi\u0107 program. S\u0142u\u017cy do tego ikona na g\u00f3rnym pasku narz\u0119dziowym.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_29_1.png\" alt=\"\" class=\"wp-image-5413\" width=\"398\" height=\"37\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Krok 9: Jak \u015bledzi\u0107 wykonywany program i warto\u015bci zmiennych?<\/h3>\n\n\n\n<p>Obserwowanie i zmiana warto\u015bci zmiennych mo\u017cliwa jest z poziomu okna <em>Data Watch<\/em>, uruchamianego przy pomocy ikony znajduj\u0105cej si\u0119 na g\u00f3rnym pasku narz\u0119dziowym.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_30.png\" alt=\"\" class=\"wp-image-5414\" width=\"523\" height=\"34\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Przy pomocy przycisku <em>Add<\/em>\ndodaj zmienne, podaj\u0105c adres lub nazw\u0119. <\/p>\n\n\n\n<p>Co wi\u0119cej, mo\u017cesz doda\u0107 kilka nast\u0119puj\u0105cych po sobie zmiennych. W tym celu podaj adres pocz\u0105tkowy oraz liczb\u0119 zmiennych poprzedzon\u0105 my\u015blnikiem:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_31_1.png\" alt=\"\" class=\"wp-image-5415\" width=\"478\" height=\"402\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Podgl\u0105d wykonuj\u0105cego si\u0119 programu steruj\u0105cego oraz aktualizacj\u0119 warto\u015bci zmiennych umo\u017cliwia opcja <em>Debug<\/em>.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_32_1.png\" alt=\"\" class=\"wp-image-5416\" width=\"381\" height=\"31\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:21px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>W oknie Data Watch mo\u017cesz zmienia\u0107 warto\u015bci zmiennych, klikaj\u0105c na wybran\u0105 zmienn\u0105 prawym klawiszem myszy i wybieraj\u0105c z menu kontekstowego opcj\u0119 <em>Modify<\/em>:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_33_1.png\" alt=\"\" class=\"wp-image-5417\" width=\"460\" height=\"394\"\/><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2019\/09\/Szkolenie_Horner_APG_Lab_4_34_1.png\" alt=\"\" class=\"wp-image-5418\" width=\"290\" height=\"173\"\/><\/figure>\n<\/div>\n\n\n<p>W ten spos\u00f3b mo\u017cesz sterowa\u0107 programem w celu sprawdzenia poprawno\u015bci dzia\u0142ania jego logiki.<\/p>\n\n\n\n<div style=\"height:59px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<p><em>W kolejnym artykule z cyklu&nbsp;k<\/em>urs \u201eProgramowanie oraz konfiguracja sterownik\u00f3w PLC zintegrowanych z hmi\u201d: <strong>Jak odmierza\u0107 czas w programie steruj\u0105cym i jak konfigurowa\u0107 timery?<\/strong><\/p>\n\n\n\n<ul class=\"bulleted wp-block-list\">\n<li>Jakie rodzaje timer\u00f3w dost\u0119pne s\u0105 w \u015brodowisku Cscape?<\/li>\n\n\n\n<li>Jaka jest zasada dzia\u0142ania odpowiednich timer\u00f3w?<\/li>\n\n\n\n<li>Jak konfigurowa\u0107 bloki funkcyjne timer\u00f3w?<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Startujemy z pisaniem programu w j\u0119zyku LAD! Sprawd\u017a, jak utworzy\u0107 prost\u0105 logik\u0119, wgra\u0107 program i monitorowa\u0107 warto\u015bci wykorzystanych zmiennych. <\/p>\n","protected":false},"author":4,"featured_media":7265,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[21],"class_list":["post-5371","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bez-kategorii","tag-horner"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\r\n<title>Jak korzysta\u0107 ze styk\u00f3w, cewek i blok\u00f3w operacji arytmetycznych?<\/title>\r\n<meta name=\"description\" content=\"Startujemy z pisaniem programu w j\u0119zyku LAD! Sprawd\u017a, jak utworzy\u0107 prost\u0105 logik\u0119, wgra\u0107 program i monitorowa\u0107 warto\u015bci wykorzystanych zmiennych.\" \/>\r\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\r\n<link rel=\"canonical\" href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/\" \/>\r\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\r\n<meta property=\"og:type\" content=\"article\" \/>\r\n<meta property=\"og:title\" content=\"Jak korzysta\u0107 ze styk\u00f3w, cewek i blok\u00f3w operacji arytmetycznych?\" \/>\r\n<meta property=\"og:description\" content=\"Startujemy z pisaniem programu w j\u0119zyku LAD! Sprawd\u017a, jak utworzy\u0107 prost\u0105 logik\u0119, wgra\u0107 program i monitorowa\u0107 warto\u015bci wykorzystanych zmiennych.\" \/>\r\n<meta property=\"og:url\" content=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/\" \/>\r\n<meta property=\"og:site_name\" content=\"Poradnik Automatyka\" \/>\r\n<meta property=\"article:published_time\" content=\"2020-01-24T14:21:06+00:00\" \/>\r\n<meta property=\"article:modified_time\" content=\"2023-08-22T09:26:27+00:00\" \/>\r\n<meta property=\"og:image\" content=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2020\/01\/x2.png\" \/>\r\n\t<meta property=\"og:image:width\" content=\"1273\" \/>\r\n\t<meta property=\"og:image:height\" content=\"594\" \/>\r\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\r\n<meta name=\"author\" content=\"Kamil Zajdel\" \/>\r\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\r\n<meta name=\"twitter:label1\" content=\"Napisane przez\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kamil Zajdel\" \/>\n\t<meta name=\"twitter:label2\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data2\" content=\"16 minut\" \/>\r\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\\\/\"},\"author\":{\"name\":\"Kamil Zajdel\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#\\\/schema\\\/person\\\/2eff1c7d27097dc02ee167d1c4df035e\"},\"headline\":\"Jak korzysta\u0107 ze styk\u00f3w, cewek i blok\u00f3w operacji arytmetycznych w programie steruj\u0105cym? | Kurs programowania PLC od podstaw | Odc. 4\",\"datePublished\":\"2020-01-24T14:21:06+00:00\",\"dateModified\":\"2023-08-22T09:26:27+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\\\/\"},\"wordCount\":1738,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2020\\\/01\\\/x2.png\",\"keywords\":[\"Horner APG\"],\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\\\/\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\\\/\",\"name\":\"Jak korzysta\u0107 ze styk\u00f3w, cewek i blok\u00f3w operacji arytmetycznych?\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2020\\\/01\\\/x2.png\",\"datePublished\":\"2020-01-24T14:21:06+00:00\",\"dateModified\":\"2023-08-22T09:26:27+00:00\",\"description\":\"Startujemy z pisaniem programu w j\u0119zyku LAD! Sprawd\u017a, jak utworzy\u0107 prost\u0105 logik\u0119, wgra\u0107 program i monitorowa\u0107 warto\u015bci wykorzystanych zmiennych.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\\\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2020\\\/01\\\/x2.png\",\"contentUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2020\\\/01\\\/x2.png\",\"width\":1273,\"height\":594},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Bez kategorii\",\"item\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/category\\\/bez-kategorii\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Jak korzysta\u0107 ze styk\u00f3w, cewek i blok\u00f3w operacji arytmetycznych w programie steruj\u0105cym? | Kurs programowania PLC od podstaw | Odc. 4\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#website\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/\",\"name\":\"Poradnik Automatyka\",\"description\":\"Poradnik Automatyka to przydatne kursy, u\u017cyteczne artyku\u0142y i merytoryczne webinary dla ka\u017cdego automatyka i elektryka.\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#organization\",\"name\":\"ASTOR\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2018\\\/08\\\/ASTOR_zwykly_sam_logotyp.png\",\"contentUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2018\\\/08\\\/ASTOR_zwykly_sam_logotyp.png\",\"width\":3322,\"height\":1078,\"caption\":\"ASTOR\"},\"image\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#\\\/schema\\\/person\\\/2eff1c7d27097dc02ee167d1c4df035e\",\"name\":\"Kamil Zajdel\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/K.-Zajdel.jpg\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/K.-Zajdel.jpg\",\"contentUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/K.-Zajdel.jpg\",\"caption\":\"Kamil Zajdel\"},\"description\":\"Absolwent Akademii G\u00f3rniczo \u2013 Hutniczej na kierunku Automatyka i Robotyka. Od kilku lat zwi\u0105zany z ASTORem i programowaniem sterownik\u00f3w PLC. Wsp\u00f3\u0142tw\u00f3rca kursu programowania PLC dla automatyk\u00f3w i elektryk\u00f3w.\",\"sameAs\":[\"https:\\\/\\\/pl.linkedin.com\\\/in\\\/kamil-zajdel-a7803399?trk=people-guest_people_search-card\"],\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/autor\\\/kamilza\\\/\"}]}<\/script>\r\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Jak korzysta\u0107 ze styk\u00f3w, cewek i blok\u00f3w operacji arytmetycznych?","description":"Startujemy z pisaniem programu w j\u0119zyku LAD! Sprawd\u017a, jak utworzy\u0107 prost\u0105 logik\u0119, wgra\u0107 program i monitorowa\u0107 warto\u015bci wykorzystanych zmiennych.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/","og_locale":"pl_PL","og_type":"article","og_title":"Jak korzysta\u0107 ze styk\u00f3w, cewek i blok\u00f3w operacji arytmetycznych?","og_description":"Startujemy z pisaniem programu w j\u0119zyku LAD! Sprawd\u017a, jak utworzy\u0107 prost\u0105 logik\u0119, wgra\u0107 program i monitorowa\u0107 warto\u015bci wykorzystanych zmiennych.","og_url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/","og_site_name":"Poradnik Automatyka","article_published_time":"2020-01-24T14:21:06+00:00","article_modified_time":"2023-08-22T09:26:27+00:00","og_image":[{"width":1273,"height":594,"url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2020\/01\/x2.png","type":"image\/png"}],"author":"Kamil Zajdel","twitter_card":"summary_large_image","twitter_misc":{"Napisane przez":"Kamil Zajdel","Szacowany czas czytania":"16 minut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/#article","isPartOf":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/"},"author":{"name":"Kamil Zajdel","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/person\/2eff1c7d27097dc02ee167d1c4df035e"},"headline":"Jak korzysta\u0107 ze styk\u00f3w, cewek i blok\u00f3w operacji arytmetycznych w programie steruj\u0105cym? | Kurs programowania PLC od podstaw | Odc. 4","datePublished":"2020-01-24T14:21:06+00:00","dateModified":"2023-08-22T09:26:27+00:00","mainEntityOfPage":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/"},"wordCount":1738,"commentCount":0,"publisher":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#organization"},"image":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/#primaryimage"},"thumbnailUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2020\/01\/x2.png","keywords":["Horner APG"],"inLanguage":"pl-PL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/","name":"Jak korzysta\u0107 ze styk\u00f3w, cewek i blok\u00f3w operacji arytmetycznych?","isPartOf":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/#primaryimage"},"image":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/#primaryimage"},"thumbnailUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2020\/01\/x2.png","datePublished":"2020-01-24T14:21:06+00:00","dateModified":"2023-08-22T09:26:27+00:00","description":"Startujemy z pisaniem programu w j\u0119zyku LAD! Sprawd\u017a, jak utworzy\u0107 prost\u0105 logik\u0119, wgra\u0107 program i monitorowa\u0107 warto\u015bci wykorzystanych zmiennych.","breadcrumb":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/#primaryimage","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2020\/01\/x2.png","contentUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2020\/01\/x2.png","width":1273,"height":594},{"@type":"BreadcrumbList","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-plc-4\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Bez kategorii","item":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/category\/bez-kategorii\/"},{"@type":"ListItem","position":2,"name":"Jak korzysta\u0107 ze styk\u00f3w, cewek i blok\u00f3w operacji arytmetycznych w programie steruj\u0105cym? | Kurs programowania PLC od podstaw | Odc. 4"}]},{"@type":"WebSite","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#website","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/","name":"Poradnik Automatyka","description":"Poradnik Automatyka to przydatne kursy, u\u017cyteczne artyku\u0142y i merytoryczne webinary dla ka\u017cdego automatyka i elektryka.","publisher":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#organization","name":"ASTOR","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/logo\/image\/","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2018\/08\/ASTOR_zwykly_sam_logotyp.png","contentUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2018\/08\/ASTOR_zwykly_sam_logotyp.png","width":3322,"height":1078,"caption":"ASTOR"},"image":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/person\/2eff1c7d27097dc02ee167d1c4df035e","name":"Kamil Zajdel","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2023\/04\/K.-Zajdel.jpg","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2023\/04\/K.-Zajdel.jpg","contentUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2023\/04\/K.-Zajdel.jpg","caption":"Kamil Zajdel"},"description":"Absolwent Akademii G\u00f3rniczo \u2013 Hutniczej na kierunku Automatyka i Robotyka. Od kilku lat zwi\u0105zany z ASTORem i programowaniem sterownik\u00f3w PLC. Wsp\u00f3\u0142tw\u00f3rca kursu programowania PLC dla automatyk\u00f3w i elektryk\u00f3w.","sameAs":["https:\/\/pl.linkedin.com\/in\/kamil-zajdel-a7803399?trk=people-guest_people_search-card"],"url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/autor\/kamilza\/"}]}},"_links":{"self":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts\/5371","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/comments?post=5371"}],"version-history":[{"count":1,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts\/5371\/revisions"}],"predecessor-version":[{"id":18861,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts\/5371\/revisions\/18861"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/media\/7265"}],"wp:attachment":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/media?parent=5371"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/categories?post=5371"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/tags?post=5371"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}