{"id":24805,"date":"2025-09-10T05:02:03","date_gmt":"2025-09-10T03:02:03","guid":{"rendered":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/?p=24805"},"modified":"2025-09-10T07:17:16","modified_gmt":"2025-09-10T05:17:16","slug":"jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6","status":"publish","type":"post","link":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/","title":{"rendered":"Jak por\u00f3wnywa\u0107 warto\u015bci i wykorzysta\u0107 wyniki operacji logicznych? | Kurs programowania sterownik\u00f3w Horner APG\u00a0 w \u015brodowisku Cscape 10, odc. 6"},"content":{"rendered":"\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>W tym odcinku dowiesz si\u0119, jak wykona\u0107 por\u00f3wnywanie warto\u015bci i jak wykorzysta\u0107 bloki por\u00f3wnywania w logice programu steruj\u0105cego.<\/p>\n\n\n\n<div class=\"dowiesz-sie\" style=\"margin-top: 40px; margin-bottom: 40px;\">\n<h3><strong>Kurs programowania sterownik\u00f3w Horner APG  w \u015brodowisku Cscape 10<\/strong><\/h3>\n<h4>Wprowadzenie i podstawy<\/h4>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-skonfigurowac-podlaczyc-oraz-uruchomic-sterownik-plc-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-1\/\">1. Jak skonfigurowa\u0107, pod\u0142\u0105czy\u0107 oraz uruchomi\u0107 sterownik PLC?<\/a><br\/>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-tworzyc-i-edytowac-projekty-w-oprogramowaniu-cscape-10-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-2\/\">2. Jak tworzy\u0107 i edytowa\u0107 projekty w oprogramowaniu Cscape 10?<\/a><br\/>\n<br\/><h4>Programowanie w j\u0119zyku drabinkowym<\/h4>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-tworzyc-oraz-konfigurowac-baze-zmiennych-w-srodowisku-cscape-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-3\/\">3. Jak tworzy\u0107 oraz konfigurowa\u0107 baz\u0119 zmiennych w \u015brodowisku Cscape?<\/a><br\/>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-ze-stykow-cewek-i-blokow-operacji-arytmetycznych-w-programie-sterujacym-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-4\/\">4. Jak korzysta\u0107 ze styk\u00f3w, cewek i blok\u00f3w operacji arytmetycznych w programie steruj\u0105cym?<\/a><br\/>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-odmierzac-czas-w-programie-sterujacym-i-jak-konfigurowac-timery-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-5\/\">5. Jak odmierza\u0107 czas w programie steruj\u0105cym i jak konfigurowa\u0107 timery?<\/a><br\/>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/\">6. Jak por\u00f3wnywa\u0107 warto\u015bci i wykorzysta\u0107 wyniki operacji logicznych?<\/a><br\/>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-zliczac-impulsy-i-konfigurowac-liczniki-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-7\/\">7. Jak zlicza\u0107 impulsy i konfigurowa\u0107 liczniki?<\/a><br\/>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-konwertowac-typy-zmiennych-i-przemieszczac-zmienne-w-programie-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-8\/\">8. Jak konwertowa\u0107 typy zmiennych i przemieszcza\u0107 zmienne w programie?<\/a><br\/>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-sterowac-wykonywaniem-programu-logicznego-instrukcja-skoku-warunkowego-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-9\/\">9. Jak sterowa\u0107 wykonywaniem programu logicznego? Instrukcja skoku warunkowego?<\/a><br\/>\n<br\/><h4>Programowanie zintegrowanego panelu HMI<\/h4>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-budowac-ekrany-operatorskie-z-obiektami-do-wizualizacji-i-zadawania-wartosci-zmiennych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-10\/\">10. Jak budowa\u0107 ekrany operatorskie z obiektami do wizualizacji i zadawania warto\u015bci zmiennych?<\/a><br\/>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-umozliwic-nawigacje-miedzy-ekranami-operatorskimi-oraz-jak-korzystac-z-gotowych-obiektow-graficznych-w-srodowisku-cscape-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10\/\">11. Jak umo\u017cliwi\u0107 nawigacj\u0119 mi\u0119dzy ekranami operatorskimi oraz jak korzysta\u0107 z gotowych obiekt\u00f3w graficznych w \u015brodowisku Cscape?<\/a><br\/>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-wizualizowac-zmienne-analogowe-oraz-jak-modyfikowac-ich-wartosci-przy-pomocy-obiektow-graficznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-12\/\">12. Jak wizualizowa\u0107 zmienne analogowe oraz jak modyfikowa\u0107 ich warto\u015bci przy pomocy obiekt\u00f3w graficznych?<\/a><br\/>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-korzystac-z-obiektu-menu-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-13\/\">13. Jak korzysta\u0107 z obiektu menu?<\/a><br\/>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/konfiguracja-i-obsluga-alarmow-w-sterownikach-plc-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-14\/\">14. Konfiguracja i obs\u0142uga alarm\u00f3w w sterownikach PLC.<\/a><br\/>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/trend-graph-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-15\/\">15. Trend Graph.<\/a><br\/>\n<\/div>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Jak dzia\u0142aj\u0105 bloki s\u0142u\u017c\u0105ce do por\u00f3wnywania warto\u015bci?<\/h2>\n\n\n\n<p>Bloki por\u00f3wnywania danych nale\u017c\u0105 do najcz\u0119\u015bciej wykorzystywanych funkcji w programach steruj\u0105cych. Za ich pomoc\u0105 mo\u017cesz sterowa\u0107 sygna\u0142ami w zale\u017cno\u015bci od relacji wyst\u0119puj\u0105cej pomi\u0119dzy por\u00f3wnywanymi warto\u015bciami argument\u00f3w.<\/p>\n\n\n\n<p>Wprowadza to pewien dynamizm i zwi\u0119ksza mo\u017cliwo\u015bci tworzonych aplikacji. W tej cz\u0119\u015bci kursu nauczysz si\u0119 sprawnie pracowa\u0107 z tymi blokami i korzysta\u0107 z ich operacji.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Krok 1: Jakie bloki por\u00f3wnywania warto\u015bci dost\u0119pne s\u0105 w \u015brodowisku Cscape?<\/h2>\n\n\n\n<p>Bloki por\u00f3wnywania pracuj\u0105 z warto\u015bciami typu INT, DINT, REAL, UINT, DUINT, LREAL. Argumenty mog\u0105 by\u0107 liczbami sta\u0142ymi lub rejestrami. Operacja por\u00f3wnania zwraca warto\u015bci <strong>prawda<\/strong>\/<strong>fa\u0142sz<\/strong> w zale\u017cno\u015bci od wyniku. W przypadku prawdy na wyj\u015bciu bloku wystawiany jest sygna\u0142.<\/p>\n\n\n\n<p>Do programu steruj\u0105cego operacje por\u00f3wnania mo\u017cna wstawia\u0107 z okna <strong>Project Toolbox<\/strong>. Bloki te znajduj\u0105 si\u0119 w zak\u0142adce <strong>Compare Operations<\/strong>.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"241\" height=\"298\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image01-4.png\" alt=\"\" class=\"wp-image-24806\" style=\"width:241px;height:auto\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Krok 2: Uzupe\u0142niamy logik\u0119 aplikacji<\/h2>\n\n\n\n<p>Wykorzystuj\u0105c bloki por\u00f3wnywania warto\u015bci, uzupe\u0142nij aplikacj\u0119 o logik\u0119 sprawdzaj\u0105c\u0105 stan poziomu wody w zbiorniku oraz odpowiednie sterowanie zaworami nape\u0142niaj\u0105cymi i opr\u00f3\u017cniaj\u0105cymi tak, by nie doprowadzi\u0107 do przepe\u0142nienia lub zapowietrzenia zbiornik\u00f3w.<\/p>\n\n\n\n<p>W tym celu dla ka\u017cdego zbiornika okre\u015bl poziom maksymalny \u2013 50 litr\u00f3w oraz poziom minimalny \u2013 0 litr\u00f3w, przy kt\u00f3rych nast\u0105pi zamkni\u0119cie odpowiednich zawor\u00f3w.<\/p>\n\n\n\n<p>Wykorzystanie por\u00f3wnania warto\u015bci da ci informacje, czy poziom wody w zbiorniku nie osi\u0105gn\u0105\u0142 kt\u00f3rej\u015b ze skrajnych warto\u015bci.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Krok 3: Dodaj blok por\u00f3wnania poziomu wody do maksimum<\/h2>\n\n\n\n<p>Przejd\u017a do stworzonego podprogramu <strong>Zbiornik1<\/strong> i w nowym szczeblu dodaj styk normalnie otwarty. W konfiguracji przypisz do niej zmienn\u0105 systemow\u0105 <strong>ALWAYS_ON<\/strong> o adresie <strong>%S007<\/strong>, kt\u00f3ra zawsze daje stan wysoki i zapewnia wykonywanie dalszej cz\u0119\u015bci kodu szczebla w ka\u017cdym cyklu.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"590\" height=\"484\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image02-5.png\" alt=\"\" class=\"wp-image-24807\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Nast\u0119pnie z g\u00f3rnego paska narz\u0119dziowego wstaw blok por\u00f3wnania <strong>GE<\/strong> (wi\u0119kszy lub r\u00f3wny) i klikaj\u0105c w niego dwukrotnie, przejd\u017a do konfiguracji.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Krok 4: Jak skonfigurowa\u0107 blok por\u00f3wnania?<\/h2>\n\n\n\n<p>Najpierw zmie\u0144 obs\u0142ugiwany typ na <strong>REAL<\/strong>, by m\u00f3c dobra\u0107 odpowiednie zmienne.<\/p>\n\n\n\n<p>Kolejno jako pierwszy argument <strong>IN1<\/strong> przypisz zmienn\u0105 <strong>Zbiornik1<\/strong> (mo\u017cesz wybra\u0107 z rozwijanej listy), natomiast do argumentu <strong>IN2<\/strong> przypisz warto\u015b\u0107 <strong>50<\/strong>.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"514\" height=\"289\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image03-5.png\" alt=\"\" class=\"wp-image-24808\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Blok ten, zgodnie z logik\u0105 dzia\u0142ania, wystawi na wyj\u015bcie sygna\u0142, je\u015bli warto\u015b\u0107 zmiennej <strong>Zbiornik1<\/strong>, b\u0119dzie wi\u0119ksza lub r\u00f3wna 50.<\/p>\n\n\n\n<p>Ostatnim elementem szczebla b\u0119dzie cewka resetuj\u0105ca, kt\u00f3ra zamknie zaw\u00f3r nape\u0142niaj\u0105cy w momencie, gdy poziom wody b\u0119dzie r\u00f3wny 50 litr\u00f3w lub wi\u0119kszy. W oknie konfiguracji cewki przypisz do niej zmienn\u0105 <strong>Zawor_napelniajacy_ZB1<\/strong>.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"548\" height=\"284\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image04-6.png\" alt=\"\" class=\"wp-image-24809\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Krok 5: Dodanie bloku por\u00f3wnania poziomu wody do minimum<\/h2>\n\n\n\n<p>Logik\u0119 sterowania w celu zamkni\u0119cia zaworu opr\u00f3\u017cniaj\u0105cego w momencie osi\u0105gni\u0119cia minimalnego poziomu wody w zbiorniku okre\u015blisz w ten sam spos\u00f3b.<\/p>\n\n\n\n<p>W tym celu ponownie wstaw styk normalnie otwarty i przypisz mu zmienn\u0105 <strong>ALWAYS_ON<\/strong>, a nast\u0119pnie dodaj blok por\u00f3wnania <strong>LE<\/strong> (mniejszy b\u0105d\u017a r\u00f3wny) i przejd\u017a do jego konfiguracji.<\/p>\n\n\n\n<p>W pierwszym kroku zmie\u0144 typ na <strong>REAL<\/strong>, nast\u0119pnie do argumentu <strong>IN1<\/strong> przypisz zmienn\u0105 <strong>Zbiornik_1<\/strong><em>, <\/em>a do argumentu <strong>IN2<\/strong> \u2013 warto\u015b\u0107 <strong>0<\/strong>.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"576\" height=\"283\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image05-6.png\" alt=\"\" class=\"wp-image-24810\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Kolejno \u2013 za blokiem por\u00f3wnania \u2013 wstaw cewk\u0119 resetuj\u0105c\u0105, kt\u00f3ra zamknie zaw\u00f3r opr\u00f3\u017cniaj\u0105cy zbiornik numer 1, w momencie gdy poziom wody w tym zbiorniku osi\u0105gnie warto\u015b\u0107 0.<\/p>\n\n\n\n<p>Do cewki resetuj\u0105cej przypisz zmienn\u0105 <strong>Zawor_oprozniajacy_ZB1<\/strong>.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"644\" height=\"292\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image06-5.png\" alt=\"\" class=\"wp-image-24811\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Krok 6: Jak wykorzysta\u0107 wyniki operacji por\u00f3wnania?<\/h2>\n\n\n\n<p>Logik\u0119 sterowania kontroluj\u0105c\u0105 poziom wody w zbiorniku numer 2 okre\u015blisz tak samo, jak dla zbiornika numer 1. W tym celu skopiuj stworzone w tej cz\u0119\u015bci kursu szczeble i wklej w podprogramie <strong>Zbiornik_2<\/strong> (zobacz poni\u017cej) napisane wcze\u015bniej linijki.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"494\" height=\"310\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image07-5.png\" alt=\"\" class=\"wp-image-24812\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"539\" height=\"529\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image08-5.png\" alt=\"\" class=\"wp-image-24813\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>W celu skopiowania linijek kodu mo\u017cesz te\u017c u\u017cy\u0107 skr\u00f3tu klawiszowego <strong>CTRL+C<\/strong> i nast\u0119pnie wklei\u0107 skopiowany uprzednio kod kombinacj\u0105 klawiszy <strong>CTRL +V<\/strong>.<\/p>\n\n\n\n<p>W kolejnym kroku zmienisz przypisane zmienne.<\/p>\n\n\n\n<p>Dla bloku <strong>GE<\/strong> skonfiguruj argument <strong>IN1<\/strong> jako <strong>Zbiornik_2<\/strong>. Podobnie dla bloku <strong>LE<\/strong> \u2013 argument <strong>IN1<\/strong> r\u00f3wnie\u017c powinien przyjmowa\u0107 warto\u015b\u0107 zmiennej <strong>Zbiornik_2<\/strong>.<\/p>\n\n\n\n<p>Dla cewki resetuj\u0105cej wyst\u0119puj\u0105cej po bloku <strong>GE<\/strong> ustaw zmienn\u0105 <strong>Zawor_napelniajacy_ZB2<\/strong>, natomiast dla poni\u017cszej cewki przypisz zmienn\u0105 <strong>Zawor_oprozniajacy_ZB2<\/strong>.<\/p>\n\n\n\n<p>Finalnie podprogram powinien wygl\u0105da\u0107 tak:<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"552\" height=\"447\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image09-5.png\" alt=\"\" class=\"wp-image-24814\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Od teraz, wtedy, gdy poziom wody w zbiorniku numer 2 osi\u0105gnie warto\u015b\u0107 r\u00f3wn\u0105 50 litr\u00f3w lub wi\u0119cej, jego zaw\u00f3r nape\u0142niaj\u0105cy zostanie zamkni\u0119ty. Natomiast w momencie, gdy poziom wody w tym zbiorniku b\u0119dzie r\u00f3wny 0, jego zaw\u00f3r opr\u00f3\u017cniaj\u0105cy zostanie przesterowany.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Krok 7: Okre\u015bl logik\u0119 sterowania wykorzystuj\u0105ca bloki por\u00f3wnania dla zbiornika numer 3<\/h2>\n\n\n\n<p>Poziom wody w zbiorniku numer 3 jest zwi\u0119kszany, gdy otwierasz zaw\u00f3r opr\u00f3\u017cniaj\u0105cy zbiornik numer 1 lub zaw\u00f3r opr\u00f3\u017cniaj\u0105cy zbiornik numer 2.&nbsp; W zwi\u0105zku z tym program steruj\u0105cy zwi\u0105zany z kontrolowaniem warto\u015bci poziomu wody i sterowaniem zaworami b\u0119dzie analogiczny do poprzednich zbiornik\u00f3w, ale dodatkowo rozbudowany.<\/p>\n\n\n\n<p>W tym celu skopiuj stworzone w dzisiejszej lekcji linijki z podprogramu <strong>Zbiornik2<\/strong> i wklej je w podprogramie <strong>Zbiornik3<\/strong>, poni\u017cej napisanego ju\u017c kodu.<\/p>\n\n\n\n<p>Nast\u0119pnie w blokach por\u00f3wnywania zmie\u0144 argument <strong>IN1<\/strong> na <strong>Zbiornik_3<\/strong>. Pozosta\u0142e parametry nie wymagaj\u0105 zmiany.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"539\" height=\"488\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image10-5.png\" alt=\"\" class=\"wp-image-24815\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>W kolejnym kroku wstawisz dodatkow\u0105 cewk\u0119 resetuj\u0105c\u0105 w pierwszej wklejonej linii. Wi\u0105\u017ce si\u0119 to z faktem, i\u017c zbiornik numer 3 nape\u0142niany jest w momencie opr\u00f3\u017cniania zbiornika numer 1 i zbiornika numer 2.<\/p>\n\n\n\n<p>Kiedy blok por\u00f3wnania wykryje, \u017ce poziom wody w zbiorniku numer 3 osi\u0105gn\u0105\u0142 warto\u015b\u0107 r\u00f3wn\u0105 50 lub wi\u0119cej, wystawi sygna\u0142, kt\u00f3ry powinien zamkn\u0105\u0107 zawory opr\u00f3\u017cniaj\u0105ce pozosta\u0142e zbiorniki, poprzez cewki resetuj\u0105ce.<\/p>\n\n\n\n<p>W zwi\u0105zku z tym do pierwszej cewki resetuj\u0105cej przyporz\u0105dkuj zmienn\u0105 <strong>Zawor_Oprozniajacy_ZB1<\/strong>, natomiast do drugiej, nowo dodanej, przypisz zmienn\u0105 <strong>Zawor_Oprozniajacy_ZB2<\/strong>.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"604\" height=\"194\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image11-5.png\" alt=\"\" class=\"wp-image-24816\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Do cewki resetuj\u0105cej znajduj\u0105cej si\u0119 w poni\u017cszym szczeblu, po bloku por\u00f3wnuj\u0105cym <strong>LE<\/strong>, przypisz zmienn\u0105 <strong>Zawor_Oprozniajacy_ZB3<\/strong>. Dzi\u0119ki temu po osi\u0105gni\u0119ciu minimalnego poziomu wody w zbiorniku numer 3, zamkni\u0119ty zostanie jego zaw\u00f3r opr\u00f3\u017cniaj\u0105cy.,<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"602\" height=\"200\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image12-5.png\" alt=\"\" class=\"wp-image-24817\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Krok 9: Wgraj program do sterownika i przetestuj jego dzia\u0142anie<\/h2>\n\n\n\n<p>Tak przygotowany program steruj\u0105cy mo\u017cesz wgra\u0107 do sterownika przy pomocy ikony <strong>Download<\/strong>. Upewnij si\u0119, \u017ce sterownik jest w trybie <strong>RUN<\/strong>.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"371\" height=\"112\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image13-5.png\" alt=\"\" class=\"wp-image-24819\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Dopilnuj, aby na pasku podgl\u0105du kodu nie znajdowa\u0142y si\u0119 wi\u0119cej ni\u017c 4 otwarte podprogramy \u2013 zamknij niepotrzebne z nich. Nast\u0119pnie przejd\u017a do zak\u0142adki <strong>Debug<\/strong> i uruchom tryb <strong>Debug Mode<\/strong> oraz okno <strong>Data Watch<\/strong>.<\/p>\n\n\n\n<p>W celu przetestowania dzia\u0142ania programu, w oknie <strong>Data Watch<\/strong> dodaj nast\u0119puj\u0105ce zmienne:<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"518\" height=\"449\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/image14-5.png\" alt=\"\" class=\"wp-image-24820\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Nast\u0119pny odcinek: <a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-zliczac-impulsy-i-konfigurowac-liczniki-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-7\/\">Jak zlicza\u0107 impulsy i konfigurowa\u0107 liczniki?<\/a><\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"dowiesz-sie\">\n<p>Autor artyku\u0142u:<\/p><\/br>\n<h2 class=\"wp-block-heading\"><strong>Jacek Dynak<\/strong><\/h2>\n<p>Praktykant ASTOR<\/p>\n<p><p>Student IV roku kierunku \u201eautomatyka i robotyka\u201d na Politechnice Krakowskiej<\/p><\/p>\n<\/div>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n            <div id=\"mailerlite-form_9\" data-temp-id=\"69d6299623133\">\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=\"5a5ceb1aa9\"\/>\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=\"69d6299623133\"] 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","protected":false},"excerpt":{"rendered":"<p>W tym odcinku dowiesz si\u0119, jak wykona\u0107 por\u00f3wnywanie warto\u015bci i jak wykorzysta\u0107 bloki por\u00f3wnywania w logice programu steruj\u0105cego.<\/p>\n","protected":false},"author":81,"featured_media":24803,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[234],"tags":[110,21,292],"class_list":["post-24805","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-automatyka-w-praktyce","tag-cscape","tag-horner","tag-horner-canvas"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\r\n<title>Jak por\u00f3wnywa\u0107 warto\u015bci i wykorzysta\u0107 wyniki operacji logicznych? | Kurs programowania sterownik\u00f3w Horner APG\u00a0 w \u015brodowisku Cscape 10, odc. 6 | Poradnik Automatyka<\/title>\r\n<meta name=\"description\" content=\"W tym odcinku dowiesz si\u0119, jak wykona\u0107 por\u00f3wnywanie warto\u015bci i jak wykorzysta\u0107 bloki por\u00f3wnywania w logice programu steruj\u0105cego.\" \/>\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-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/\" \/>\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 por\u00f3wnywa\u0107 warto\u015bci i wykorzysta\u0107 wyniki operacji logicznych? | Kurs programowania sterownik\u00f3w Horner APG\u00a0 w \u015brodowisku Cscape 10, odc. 6 | Poradnik Automatyka\" \/>\r\n<meta property=\"og:description\" content=\"W tym odcinku dowiesz si\u0119, jak wykona\u0107 por\u00f3wnywanie warto\u015bci i jak wykorzysta\u0107 bloki por\u00f3wnywania w logice programu steruj\u0105cego.\" \/>\r\n<meta property=\"og:url\" content=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/\" \/>\r\n<meta property=\"og:site_name\" content=\"Poradnik Automatyka\" \/>\r\n<meta property=\"article:published_time\" content=\"2025-09-10T03:02:03+00:00\" \/>\r\n<meta property=\"article:modified_time\" content=\"2025-09-10T05:17:16+00:00\" \/>\r\n<meta property=\"og:image\" content=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/horner-canvas-cscape-kurs-head.jpg\" \/>\r\n\t<meta property=\"og:image:width\" content=\"960\" \/>\r\n\t<meta property=\"og:image:height\" content=\"400\" \/>\r\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\r\n<meta name=\"author\" content=\"Mateusz Pytel\" \/>\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=\"Mateusz Pytel\" \/>\n\t<meta name=\"twitter:label2\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data2\" content=\"18 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-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/\"},\"author\":{\"name\":\"Mateusz Pytel\",\"@id\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/person\/30d3dfd95308f3bba081f0a44bb6b97b\"},\"headline\":\"Jak por\u00f3wnywa\u0107 warto\u015bci i wykorzysta\u0107 wyniki operacji logicznych? | Kurs programowania sterownik\u00f3w Horner APG\u00a0 w \u015brodowisku Cscape 10, odc. 6\",\"datePublished\":\"2025-09-10T03:02:03+00:00\",\"dateModified\":\"2025-09-10T05:17:16+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/\"},\"wordCount\":1151,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/horner-canvas-cscape-kurs-head.jpg\",\"keywords\":[\"Cscape\",\"Horner APG\",\"Horner Canvas\"],\"articleSection\":[\"Automatyka w praktyce\"],\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/\",\"url\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/\",\"name\":\"Jak por\u00f3wnywa\u0107 warto\u015bci i wykorzysta\u0107 wyniki operacji logicznych? | Kurs programowania sterownik\u00f3w Horner APG\u00a0 w \u015brodowisku Cscape 10, odc. 6 | Poradnik Automatyka\",\"isPartOf\":{\"@id\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/horner-canvas-cscape-kurs-head.jpg\",\"datePublished\":\"2025-09-10T03:02:03+00:00\",\"dateModified\":\"2025-09-10T05:17:16+00:00\",\"description\":\"W tym odcinku dowiesz si\u0119, jak wykona\u0107 por\u00f3wnywanie warto\u015bci i jak wykorzysta\u0107 bloki por\u00f3wnywania w logice programu steruj\u0105cego.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#primaryimage\",\"url\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/horner-canvas-cscape-kurs-head.jpg\",\"contentUrl\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/horner-canvas-cscape-kurs-head.jpg\",\"width\":960,\"height\":400},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Automatyka w praktyce\",\"item\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/category\/automatyka-w-praktyce\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Jak por\u00f3wnywa\u0107 warto\u015bci i wykorzysta\u0107 wyniki operacji logicznych? | Kurs programowania sterownik\u00f3w Horner APG\u00a0 w \u015brodowisku Cscape 10, odc. 6\"}]},{\"@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\/30d3dfd95308f3bba081f0a44bb6b97b\",\"name\":\"Mateusz Pytel\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2023\/05\/mateusz-pytel.jpg\",\"contentUrl\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2023\/05\/mateusz-pytel.jpg\",\"caption\":\"Mateusz Pytel\"},\"description\":\"Mened\u017cer produkt\u00f3w Astraada One i Horner w firmie ASTOR.\",\"url\":\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/autor\/mateuszpytel\/\"}]}<\/script>\r\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Jak por\u00f3wnywa\u0107 warto\u015bci i wykorzysta\u0107 wyniki operacji logicznych? | Kurs programowania sterownik\u00f3w Horner APG\u00a0 w \u015brodowisku Cscape 10, odc. 6 | Poradnik Automatyka","description":"W tym odcinku dowiesz si\u0119, jak wykona\u0107 por\u00f3wnywanie warto\u015bci i jak wykorzysta\u0107 bloki por\u00f3wnywania w logice programu steruj\u0105cego.","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-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/","og_locale":"pl_PL","og_type":"article","og_title":"Jak por\u00f3wnywa\u0107 warto\u015bci i wykorzysta\u0107 wyniki operacji logicznych? | Kurs programowania sterownik\u00f3w Horner APG\u00a0 w \u015brodowisku Cscape 10, odc. 6 | Poradnik Automatyka","og_description":"W tym odcinku dowiesz si\u0119, jak wykona\u0107 por\u00f3wnywanie warto\u015bci i jak wykorzysta\u0107 bloki por\u00f3wnywania w logice programu steruj\u0105cego.","og_url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/","og_site_name":"Poradnik Automatyka","article_published_time":"2025-09-10T03:02:03+00:00","article_modified_time":"2025-09-10T05:17:16+00:00","og_image":[{"width":960,"height":400,"url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/horner-canvas-cscape-kurs-head.jpg","type":"image\/jpeg"}],"author":"Mateusz Pytel","twitter_card":"summary_large_image","twitter_misc":{"Napisane przez":"Mateusz Pytel","Szacowany czas czytania":"18 minut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#article","isPartOf":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/"},"author":{"name":"Mateusz Pytel","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/person\/30d3dfd95308f3bba081f0a44bb6b97b"},"headline":"Jak por\u00f3wnywa\u0107 warto\u015bci i wykorzysta\u0107 wyniki operacji logicznych? | Kurs programowania sterownik\u00f3w Horner APG\u00a0 w \u015brodowisku Cscape 10, odc. 6","datePublished":"2025-09-10T03:02:03+00:00","dateModified":"2025-09-10T05:17:16+00:00","mainEntityOfPage":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/"},"wordCount":1151,"commentCount":0,"publisher":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#organization"},"image":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#primaryimage"},"thumbnailUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/horner-canvas-cscape-kurs-head.jpg","keywords":["Cscape","Horner APG","Horner Canvas"],"articleSection":["Automatyka w praktyce"],"inLanguage":"pl-PL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/","name":"Jak por\u00f3wnywa\u0107 warto\u015bci i wykorzysta\u0107 wyniki operacji logicznych? | Kurs programowania sterownik\u00f3w Horner APG\u00a0 w \u015brodowisku Cscape 10, odc. 6 | Poradnik Automatyka","isPartOf":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#primaryimage"},"image":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#primaryimage"},"thumbnailUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/horner-canvas-cscape-kurs-head.jpg","datePublished":"2025-09-10T03:02:03+00:00","dateModified":"2025-09-10T05:17:16+00:00","description":"W tym odcinku dowiesz si\u0119, jak wykona\u0107 por\u00f3wnywanie warto\u015bci i jak wykorzysta\u0107 bloki por\u00f3wnywania w logice programu steruj\u0105cego.","breadcrumb":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#primaryimage","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/horner-canvas-cscape-kurs-head.jpg","contentUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2025\/09\/horner-canvas-cscape-kurs-head.jpg","width":960,"height":400},{"@type":"BreadcrumbList","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-porownywac-wartosci-i-wykorzystac-wyniki-operacji-logicznych-kurs-programowania-sterownikow-horner-apg-w-srodowisku-cscape-10-odc-6\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Automatyka w praktyce","item":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/category\/automatyka-w-praktyce\/"},{"@type":"ListItem","position":2,"name":"Jak por\u00f3wnywa\u0107 warto\u015bci i wykorzysta\u0107 wyniki operacji logicznych? | Kurs programowania sterownik\u00f3w Horner APG\u00a0 w \u015brodowisku Cscape 10, odc. 6"}]},{"@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\/30d3dfd95308f3bba081f0a44bb6b97b","name":"Mateusz Pytel","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/person\/image\/","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2023\/05\/mateusz-pytel.jpg","contentUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2023\/05\/mateusz-pytel.jpg","caption":"Mateusz Pytel"},"description":"Mened\u017cer produkt\u00f3w Astraada One i Horner w firmie ASTOR.","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/autor\/mateuszpytel\/"}]}},"_links":{"self":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts\/24805","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\/81"}],"replies":[{"embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/comments?post=24805"}],"version-history":[{"count":3,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts\/24805\/revisions"}],"predecessor-version":[{"id":24838,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts\/24805\/revisions\/24838"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/media\/24803"}],"wp:attachment":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/media?parent=24805"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/categories?post=24805"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/tags?post=24805"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}