{"id":1272,"date":"2019-03-10T18:58:53","date_gmt":"2019-03-10T16:58:53","guid":{"rendered":"http:\/\/www.klub-malawi.pl\/?page_id=1272"},"modified":"2019-03-10T19:06:23","modified_gmt":"2019-03-10T17:06:23","slug":"sterowanie-grzalka-za-pomoca-arduino","status":"publish","type":"page","link":"https:\/\/www.klub-malawi.pl\/?page_id=1272","title":{"rendered":"Sterowanie grza\u0142k\u0105 za pomoc\u0105 Arduino"},"content":{"rendered":"<p><span style=\"color: #ffffff;\">Wielu z nas posiada w swoich zbiornikach filtracj\u0119 opart\u0105 o filtr narurowy z wbudowan\u0105 w uk\u0142ad grza\u0142k\u0105 \u0142azienkow\u0105. Jest to wygodne rozwi\u0105zanie ograniczaj\u0105ce ilo\u015b\u0107 sprz\u0119tu w akwarium. Standardowo, grza\u0142ka wyposa\u017cona jest w termostat jednak\u017ce ustawienie temperatury wykonywane jest metod\u0105 pr\u00f3b i b\u0142\u0119d\u00f3w. Przyczyn\u0105 takiego stanu rzeczy jest brak informacji o zakresie temperatur na pokr\u0119tle steruj\u0105cym.<\/span><\/p>\n<p><span style=\"color: #ffffff;\">Niniejszy artyku\u0142 opisuje rozwi\u0105zanie problemu przy pomocy Arduino. Zapewne ka\u017cdy zastanawia si\u0119 teraz co to jest Arduino? W najwi\u0119kszym skr\u00f3cie jest to bardzo ma\u0142y komputer z mikrokontrolerem AVR do kt\u00f3rego mo\u017cna pod\u0142\u0105cza\u0107 r\u00f3\u017cnego rodzaju urz\u0105dzenia zewn\u0119trzne i sterowa\u0107 nimi za jego pomoc\u0105.<\/span><\/p>\n<p><span style=\"color: #ffffff;\">Zanim jednak przejdziesz do dalszej cz\u0119\u015bci artyku\u0142u pami\u0119taj, \u017ce opisany w nim uk\u0142ad steruje napi\u0119ciem sieciowym kt\u00f3re jest niebezpieczne dla \u017cycia i zdrowia ludzkiego. Je\u017celi nie masz do\u015bwiadczenia popro\u015b kogo\u015b do\u015bwiadczonego o pomoc, gdy\u017c brak uwagi mo\u017ce zako\u0144czy\u0107 si\u0119 \u015bmiertelnym pora\u017ceniem pr\u0105dem elektrycznym.<\/span><\/p>\n<p><span style=\"color: #ffffff;\">Co b\u0119dziemy zatem potrzebowa\u0107 aby zacz\u0105\u0107 przygod\u0119 z Arduino? Z pewno\u015bci\u0105 przyda si\u0119 troch\u0119 wiedzy z zakresu podstaw elektroniki oraz samej platformy. Poni\u017cej podaj\u0119 kilka przydatnych odno\u015bnik\u00f3w, kt\u00f3re pomog\u0105 si\u0119 odnale\u017a\u0107.<\/span><\/p>\n<ul>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/forbot.pl\/blog\/kurs-elektroniki-napiecie-prad-opor-zasilanie-id3947\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/forbot.pl\/blog\/kurs-elektroniki-napiecie-prad-opor-zasilanie-id3947<\/a>\u00a0&#8211; kr\u00f3tki wst\u0119p do podstaw elektroniki<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/forbot.pl\/blog\/jak-dziala-plytka-stykowa-zdjecia-budowa-przyklady-id21978\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/forbot.pl\/blog\/jak-dziala-plytka-stykowa-zdjecia-budowa-przyklady-id21978<\/a>\u00a0&#8211; przybli\u017cenie sposobu dzia\u0142ania p\u0142ytki stykowej<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/forbot.pl\/blog\/kurs-arduino-podstawy-programowania-spis-tresci-kursu-id5290\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/forbot.pl\/blog\/kurs-arduino-podstawy-programowania-spis-tresci-kursu-id5290<\/a>\u00a0&#8211;\u00a0seria przyst\u0119pnych artyku\u0142\u00f3w wprowadzaj\u0105cych w \u015bwiat Arduino<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"http:\/\/fritzing.org\/home\/\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">http:\/\/fritzing.org\/home\/<\/a>\u00a0&#8211; darmowe narz\u0119dzie s\u0142u\u017c\u0105ce do wizualizacji schematu po\u0142\u0105cze\u0144<\/span><\/li>\n<\/ul>\n<p><span style=\"color: #ffffff;\">Opr\u00f3cz wiedzy b\u0119dziemy potrzebowali poczyni\u0107 pewne zakupy, kt\u00f3rych lista znajduje si\u0119 poni\u017cej. Wszystkie te rzeczy b\u0119d\u0105 nam potrzebne aby rozwi\u0105za\u0107 problem z jakim si\u0119 mierzymy.<\/span><\/p>\n<ol>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/arduino-moduly-glowne\/1060-arduino-uno-rev3-a000066-8058333490090.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/arduino-moduly-glowne\/1060-arduino-uno-rev3-a000066-8058333490090.html<\/a>\u00a0&#8211;\u00a0oryginalny modu\u0142 Arduino UNO<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/plytki-stykowe\/56-plytka-stykowa-400-otworow.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/plytki-stykowe\/56-plytka-stykowa-400-otworow.html<\/a>\u00a0&#8211; p\u0142ytka stykowa<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/przewody-polaczeniowe\/1223-przewody-polaczeniowe-mesko-meskie-20cm-40szt.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/przewody-polaczeniowe\/1223-przewody-polaczeniowe-mesko-meskie-20cm-40szt.html<\/a>\u00a0&#8211; przewody po\u0142\u0105czeniowe m\u0119sko &#8211; m\u0119skie<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/diody-led\/4741-zestaw-diod-led-5mm-16szt.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/diody-led\/4741-zestaw-diod-led-5mm-16szt.html<\/a>\u00a0&#8211; zestaw di\u00f3d LED<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/rezystory-przewlekane\/4544-rezystor-tht-cf-weglowy-14w-330-30szt.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/rezystory-przewlekane\/4544-rezystor-tht-cf-weglowy-14w-330-30szt.html<\/a>\u00a0&#8211; komplet rezystor\u00f3w\u00a0330\u03a9<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/przewody-usb-a-b\/2656-przewod-usb-a-b-18m.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/przewody-usb-a-b\/2656-przewod-usb-a-b-18m.html<\/a>\u00a0&#8211;\u00a0przew\u00f3d komunikacyjny pomi\u0119dzy komputerem a p\u0142ytk\u0105 Arduino UNO<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/potencjometry\/1235-potencjometr-montazowy-lezacy-5k-5szt.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/potencjometry\/1235-potencjometr-montazowy-lezacy-5k-5szt.html<\/a>\u00a0&#8211;\u00a0potencjometr 5k\u03a9<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/wyswietlacze-alfanumeryczne-i-graficzne\/223-wyswietlacz-lcd-2x16-znakow-zielony.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/wyswietlacze-alfanumeryczne-i-graficzne\/223-wyswietlacz-lcd-2&#215;16-znakow-zielony.html<\/a>\u00a0&#8211;\u00a0wy\u015bwietlacz LCD 2&#215;16 znak\u00f3w<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/rezystory-przewlekane\/3973-rezystor-tht-cf-weglowy-14w-47k-30szt.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/rezystory-przewlekane\/3973-rezystor-tht-cf-weglowy-14w-47k-30szt.html<\/a>\u00a0&#8211;\u00a0komplet rezystor\u00f3w 4.7k\u03a9<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/zasilacze-dogniazdkowe\/7158-zasilacz-impulsowy-9v-2a-wtyk-dc-55-21mm-5902135147375.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/zasilacze-dogniazdkowe\/7158-zasilacz-impulsowy-9v-2a-wtyk-dc-55-21mm-5902135147375.html<\/a>\u00a0&#8211; zasilacz 220V<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/przewody-polaczeniowe\/1067-przewody-polaczeniowe-zensko-meskie-20cm-40szt.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/przewody-polaczeniowe\/1067-przewody-polaczeniowe-zensko-meskie-20cm-40szt.html<\/a>\u00a0&#8211; przewody po\u0142\u0105czeniowe \u017ce\u0144sko &#8211; m\u0119skie<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/zlacza-ark\/808-zlacze-ark-kf301-raster-50mm-3-pin-.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/zlacza-ark\/808-zlacze-ark-kf301-raster-50mm-3-pin-.html<\/a>\u00a0&#8211;\u00a0z\u0142\u0105cze ARK kt\u00f3re pozwoli na wpi\u0119cie kabli z termometru do p\u0142ytki stykowej<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/przekazniki\/1997-modul-przekaznika-1-kanal-z-optoizolacja-styki-7a240vac-cewka-5v.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/przekazniki\/1997-modul-przekaznika-1-kanal-z-optoizolacja-styki-7a240vac-cewka-5v.html<\/a>\u00a0&#8211;\u00a0modu\u0142 z przeka\u017anikiem do sterowania napi\u0119ciem 230V<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/czujniki-temperatury\/4582-sonda-wodoodporna-z-czujnikiem-temperatury-ds18b20-3m.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/czujniki-temperatury\/4582-sonda-wodoodporna-z-czujnikiem-temperatury-ds18b20-3m.html<\/a>\u00a0&#8211;\u00a0czujnik temperatury kompatybilny z Arduino<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/www.leroymerlin.pl\/elektrycznosc\/gniazda-wtyczki-akcesoria\/wtyczki-i-gniazdka\/wtyczka-katowa-wt35-unischuko-elgotech,p3782,l1059.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/www.leroymerlin.pl\/elektrycznosc\/gniazda-wtyczki-akcesoria\/wtyczki-i-gniazdka\/wtyczka-katowa-wt35-unischuko-elgotech,p3782,l1059.html<\/a>\u00a0&#8211;\u00a0wtyczka 230V<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><a style=\"color: #ffffff;\" href=\"https:\/\/www.leroymerlin.pl\/elektrycznosc\/gniazda-wtyczki-akcesoria\/wtyczki-i-gniazdka\/gniazdo-przedluzacza-g-10-lm-elgotech,p408,l1059.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/www.leroymerlin.pl\/elektrycznosc\/gniazda-wtyczki-akcesoria\/wtyczki-i-gniazdka\/gniazdo-przedluzacza-g-10-lm-elgotech,p408,l1059.html<\/a>\u00a0&#8211; gniazdo 230V<\/span><\/li>\n<\/ol>\n<p><span style=\"color: #ffffff;\">Pozycje 1 &#8211; 8 mo\u017cemy zast\u0105pi\u0107 zakupem ca\u0142ego zestawu w kt\u00f3rym b\u0119dzie kilka dodatkowych rzeczy\u00a0<a style=\"color: #ffffff;\" href=\"https:\/\/botland.com.pl\/pl\/kursy-forbot\/12642-forbot-zestaw-do-kursu-podstaw-arduino-gadzety-i-box-wersja-plus.html\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/botland.com.pl\/pl\/kursy-forbot\/12642-forbot-zestaw-do-kursu-podstaw-arduino-gadzety-i-box-wersja-plus.html<\/a>\u00a0aczkolwiek w nieniejszym poradniku nie zostan\u0105 one wykorzystane.<\/span><\/p>\n<p><span style=\"color: #ffffff;\"><strong>Instalacja \u015brodowiska Arduino<\/strong><\/span><\/p>\n<p><span style=\"color: #ffffff;\">Je\u017celi skompletujemy wszystkie wymagane elementy mo\u017cemy przyst\u0105pi\u0107 do pracy. Zaczynamy od pobrania oraz instalacji \u015brodowiska programistycznego (tzw. IDE) ze strony\u00a0<a style=\"color: #ffffff;\" href=\"https:\/\/www.arduino.cc\/en\/Main\/Software\" target=\"_blank\" rel=\"external nofollow noopener noreferrer\">https:\/\/www.arduino.cc\/en\/Main\/Software<\/a>.\u00a0Oczywi\u015bcie wybieramy wersj\u0119 stosown\u0105 do zainstalowanego na komputerze systemu operacyjnego. Podczas instalacji potwierdzamy:<\/span><\/p>\n<ul>\n<li><span style=\"color: #ffffff;\">zapoznanie si\u0119 z postanowieniami licencyjnymi (License Agreement)<\/span><\/li>\n<li><span style=\"color: #ffffff;\">zaznaczamy wszystkie komponenty potrzebne do prawid\u0142owego dzia\u0142ania (Installation Options)<\/span><\/li>\n<\/ul>\n<p><span style=\"color: #ffffff;\">Je\u017celi wszystko si\u0119 powiod\u0142o powinni\u015bmy ujrze\u0107 ekran powitalny, w drugiej kolejno\u015bci edytor, cho\u0107 w nowszych wersjach ekran powitalny jest pomijany i od razu widzimy ekran edytora.<\/span><\/p>\n<p><span style=\"color: #ffffff;\"><a class=\"ipsAttachLink ipsAttachLink_image\" style=\"color: #ffffff;\" href=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/picture_1.jpg.0ab319ff050f58528e0ad377cf48fcd5.jpg\" rel=\"\" data-fileid=\"43452\" data-ipslightbox=\"\" data-ipslightbox-group=\"g4810\"><img decoding=\"async\" class=\"ipsImage ipsImage_thumbnailed lazyload\" data-src=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/picture_1.thumb.jpg.e1006f5cce2b31f512b0950d11c6ecf9.jpg\" alt=\"picture_1.thumb.jpg.e1006f5cce2b31f512b0950d11c6ecf9.jpg\" data-fileid=\"43452\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/><\/a><\/span><\/p>\n<p><span style=\"color: #ffffff;\">Foto: <\/span><a contenteditable=\"false\" href=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/\" rel=\"noopener noreferrer\" data-ipshover=\"\" data-ipshover-target=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/?do=hovercard\" data-mentionid=\"7626\">@rekawiczka<\/a><\/p>\n<p><span style=\"color: #ffffff;\">Na ekranie edytora widzimy pi\u0119\u0107 istotnych dla nas przycisk\u00f3w, kt\u00f3rymi b\u0119dziemy si\u0119 pos\u0142ugiwa\u0107. Id\u0105c od lewej strony od g\u00f3ry mamy:<\/span><\/p>\n<ul>\n<li><span style=\"color: #ffffff;\"><strong>Verify<\/strong> &#8211; weryfikacja sk\u0142adniowa napisanego kodu oraz kompilacja. Kompilacja polega na przetworzeniu kodu napisanego w edytorze na j\u0119zyk zrozumia\u0142y dla procesora. W przypadku b\u0142\u0119d\u00f3w zostan\u0105 one zaprezentowane w dolnej cz\u0119\u015bci ekranu edytora (na czarnym tle)<\/span><br \/>\n<span style=\"color: #ffffff;\"><strong>Upload<\/strong> &#8211; wgranie pozytywnie zweryfikowanego kodu na Arduino. Aby wys\u0142a\u0107 napisany program p\u0142ytka musi by\u0107 pod\u0142\u0105czona do portu USB komputera. Podczas pierwszej pr\u00f3by wgrania kodu mo\u017cemy zosta\u0107 poproszeni o wybranie portu do kt\u00f3rego wpi\u0119ty jest kabel<\/span><br \/>\n<span style=\"color: #ffffff;\"><strong>New<\/strong> &#8211; utworzenie nowego programu w edytorze<\/span><br \/>\n<span style=\"color: #ffffff;\"><strong>Open<\/strong> &#8211; wczytanie z dysku zapisanego wcze\u015bniej programu do edytora<\/span><br \/>\n<span style=\"color: #ffffff;\"><strong>Save<\/strong> &#8211; zapisanie programu z edytora na dysk twardy komputera<\/span><\/li>\n<\/ul>\n<p><span style=\"color: #ffffff;\">W edytorze widzimy dwie zupe\u0142nie puste funkcje:<\/span><\/p>\n<ul>\n<li><span style=\"color: #ffffff;\"><strong>setup()<\/strong> &#8211; odpowiada za jednorazowe wykonanie bloku komend (rozkaz\u00f3w) znajduj\u0105cych si\u0119 pomi\u0119dzy nawiasami. Funkcja ta wykorzystywana jest do wszelkiego rodzaju ustawie\u0144 i wykonywana jest tylko raz,<\/span><\/li>\n<li><span style=\"color: #ffffff;\"><strong>loop()<\/strong> &#8211; odpowiada za niesko\u0144czone wykonywanie w p\u0119tli bloku komend znajduj\u0105cych si\u0119 pomi\u0119dzy nawiasami<\/span><\/li>\n<\/ul>\n<p><span style=\"color: #ffffff;\">Poni\u017cej edytora jest zostawiona czarna sekcja na kt\u00f3rej b\u0119d\u0105 wy\u015bwietlane komunikaty z kompilatora &#8211; np. Informacje o b\u0142\u0119dach.<\/span><\/p>\n<p><span style=\"color: #ffffff;\"><strong>Pierwszy program testowy<\/strong><\/span><\/p>\n<p><span style=\"color: #ffffff;\">Maj\u0105c zainstaowane \u015brodowisko\u00a0mo\u017cemy napisa\u0107 nasz pierwszy program aby sprawdzi\u0107 czy zakupiona\u00a0p\u0142ytka oraz kontroler dzia\u0142aj\u0105. W tym celu otwieramy edytor i przepisujemy poni\u017csze komendy a nast\u0119pnie naciskamy przycisk <strong>Verify<\/strong>.<\/span><\/p>\n<p><span style=\"color: #ffffff;\"><a class=\"ipsAttachLink ipsAttachLink_image\" style=\"color: #ffffff;\" href=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/picture_2.jpg.de869b393336ba16e57131fd2c74857f.jpg\" rel=\"\" data-fileid=\"43453\" data-ipslightbox=\"\" data-ipslightbox-group=\"g4810\"><img decoding=\"async\" class=\"ipsImage ipsImage_thumbnailed lazyload\" data-src=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/picture_2.thumb.jpg.58aba261d82e058fb52dc2412b24da2b.jpg\" alt=\"picture_2.thumb.jpg.58aba261d82e058fb52dc2412b24da2b.jpg\" data-fileid=\"43453\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/><\/a><\/span><\/p>\n<p><span style=\"color: #ffffff;\">Naci\u015bni\u0119cie przycisku <strong>Verify<\/strong>\u00a0sprowduje, \u017ce zostaniemy zosta\u0107 poproszeni o zapisanie naszego projektu. Mo\u017cemy u\u017cy\u0107 dowolnej nazwy, np. test. Po prawid\u0142owej weryfikacji powinni\u015bmy ujrze\u0107 podobny komunikat w czarnej cz\u0119\u015bci okna edytora.<\/span><\/p>\n<p><span style=\"color: #ffffff;\"><em>Sketch uses 1498 bytes (4%) of program storage space. <\/em><em>Maximum<\/em><em> is 32256 bytes.<br \/>\nGlobal variables use 208 bytes (10%) of dynamic memory, leaving 1840 bytes for local variables.<\/em><em>Maximum<\/em><em> is 2048 bytes.<\/em><\/span><br \/>\n<span style=\"color: #ffffff;\">Je\u017celi nie ma b\u0142\u0119d\u00f3w pod\u0142\u0105czamy za pomoc\u0105 kabla p\u0142ytk\u0119 do portu USB komputera. Pomy\u015blne po\u0142\u0105czenie wyzwala zapalenie si\u0119 dw\u00f3ch diod na p\u0142ytce. Zanim jednak wy\u015blemy nasz program do Arduino z g\u0142\u00f3wnego menu programu wybieramy <strong>Tools<\/strong> a nast\u0119pnie <strong>Serial Monitor<\/strong> gdy\u017c testowy program potrzebuje gdzie\u015b wy\u015bwietli\u0107 komunikat.<\/span><\/p>\n<p><span style=\"color: #ffffff;\">Teraz jeste\u015bmy gotowi aby wykona\u0107 kolejny krok jakim jest wys\u0142anie programu do Arduino. W tym celu klikamy drugi przycisk od lewej strony czyli <strong>Upload<\/strong>. Nast\u0119puje wys\u0142anie naszego programu do pami\u0119ci i oraz jego uruchomienie. Je\u017celi wszystko przebieg\u0142o prawid\u0142owo powinni\u015bmy ujrze\u0107 poni\u017cszy komunikat.<\/span><\/p>\n<p><span style=\"color: #ffffff;\"><a class=\"ipsAttachLink ipsAttachLink_image\" style=\"color: #ffffff;\" href=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/picture_3.jpg.e83a0ba68d482b7ab856d225b4375021.jpg\" rel=\"\" data-fileid=\"43454\" data-ipslightbox=\"\" data-ipslightbox-group=\"g4810\"><img decoding=\"async\" class=\"ipsImage ipsImage_thumbnailed lazyload\" data-src=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/picture_3.thumb.jpg.94f3a6e75e4bb0a1018d0815fe9787a7.jpg\" alt=\"picture_3.thumb.jpg.94f3a6e75e4bb0a1018d0815fe9787a7.jpg\" data-fileid=\"43454\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/><\/a><\/span><\/p>\n<p><span style=\"color: #ffffff;\">Skoro wiemy ju\u017c, \u017ce p\u0142ytka stykowa oraz kontroler Arduino dzia\u0142aj\u0105 mo\u017cemy przyst\u0105pi\u0107 do w\u0142a\u015bciwej cz\u0119\u015bci zadania.<\/span><\/p>\n<p><span style=\"color: #ffffff;\">Przygotowania<\/span><\/p>\n<p><span style=\"color: #ffffff;\">W pierwszej kolejno\u015bci nale\u017cy przygotowa\u0107 kable czujnika temperatury, aby \u017cy\u0142ki z kt\u00f3rych zbudowany jest przew\u00f3d nie rozwarstwia\u0142y si\u0119. Nale\u017cy zdj\u0105\u0107 os\u0142onk\u0119, aby zosta\u0142o ok. 5mm ods\u0142oni\u0119tego kabla a nast\u0119pnie delikatnie oblutowa\u0107 ko\u0144c\u00f3wki przewod\u00f3w. Zabezpieczy to przed potencjalnym uszkodzeniem lub rozwarstwieniem \u017cy\u0142ek. Tak przygotowany kabel wkr\u0119camy do z\u0142\u0105cza ARK. Nale\u017cy sprawdzi\u0107 jak producent termometru oznacza poszczeg\u00f3lne kable. W przypadku niniejszego artyku\u0142u oznaczenia s\u0105 nast\u0119puj\u0105ce:<\/span><\/p>\n<ul>\n<li><span style=\"color: #ffffff;\">Kabel czerwony &#8211; zasilanie 5V<\/span><\/li>\n<li><span style=\"color: #ffffff;\">Kabel czarny &#8211; GND<\/span><\/li>\n<li><span style=\"color: #ffffff;\">Kabel \u017c\u00f3\u0142ty &#8211; sterowanie<\/span><\/li>\n<\/ul>\n<p><span style=\"color: #ffffff;\">Zdj\u0119cia poni\u017cej obrazuj\u0105 ca\u0142o\u015b\u0107 procesu.<\/span><\/p>\n<p><span style=\"color: #ffffff;\"><a class=\"ipsAttachLink ipsAttachLink_image\" style=\"color: #ffffff;\" href=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/350317858_IMG_21962.jpg.bad277a925afbe1fbb205c980b10525c.jpg\" rel=\"\" data-fileid=\"43449\" data-ipslightbox=\"\" data-ipslightbox-group=\"g4810\"><img decoding=\"async\" class=\"ipsImage ipsImage_thumbnailed lazyload\" data-src=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/387950669_IMG_21962.thumb.jpg.63554f84f0066c27a98d6cbd4376597a.jpg\" alt=\"387950669_IMG_21962.thumb.jpg.63554f84f0066c27a98d6cbd4376597a.jpg\" data-fileid=\"43449\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/><\/a><\/span><\/p>\n<p><span style=\"color: #ffffff;\">Foto: <\/span><a contenteditable=\"false\" href=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/\" rel=\"noopener noreferrer\" data-ipshover=\"\" data-ipshover-target=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/?do=hovercard\" data-mentionid=\"7626\">@rekawiczka<\/a><\/p>\n<p><span style=\"color: #ffffff;\"><a class=\"ipsAttachLink ipsAttachLink_image\" style=\"color: #ffffff;\" href=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/1222862907_IMG_21972.JPG.28dc65f882ac3c11b704d2bc7ecf8e1f.JPG\" rel=\"\" data-fileid=\"43450\" data-ipslightbox=\"\" data-ipslightbox-group=\"g4810\"><img decoding=\"async\" class=\"ipsImage ipsImage_thumbnailed lazyload\" data-src=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/1216554356_IMG_21972.thumb.JPG.b67772c4a013a27691309a249b18414c.JPG\" alt=\"1216554356_IMG_21972.thumb.JPG.b67772c4a013a27691309a249b18414c.JPG\" data-fileid=\"43450\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/><\/a><\/span><\/p>\n<p><span style=\"color: #ffffff;\">Foto: <\/span><a contenteditable=\"false\" href=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/\" rel=\"noopener noreferrer\" data-ipshover=\"\" data-ipshover-target=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/?do=hovercard\" data-mentionid=\"7626\">@rekawiczka<\/a><\/p>\n<p><span style=\"color: #ffffff;\"><a class=\"ipsAttachLink ipsAttachLink_image\" style=\"color: #ffffff;\" href=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/1856270918_IMG_21982.JPG.7e6a16c5594c696548bac0d9e0e1a03f.JPG\" rel=\"\" data-fileid=\"43451\" data-ipslightbox=\"\" data-ipslightbox-group=\"g4810\"><img decoding=\"async\" class=\"ipsImage ipsImage_thumbnailed lazyload\" data-src=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/2145020005_IMG_21982.thumb.JPG.7d144c8e564c1001873b90d70173da3a.JPG\" alt=\"2145020005_IMG_21982.thumb.JPG.7d144c8e564c1001873b90d70173da3a.JPG\" data-fileid=\"43451\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/><\/a><\/span><\/p>\n<p><span style=\"color: #ffffff;\">Foto: <\/span><a contenteditable=\"false\" href=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/\" rel=\"noopener noreferrer\" data-ipshover=\"\" data-ipshover-target=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/?do=hovercard\" data-mentionid=\"7626\">@rekawiczka<\/a><\/p>\n<p><span style=\"color: #ffffff;\">Dodatkowo musimy przygotowa\u0107 odpowiednio kabel 220V i podpi\u0105\u0107 go do przeka\u017anika 220V. W tym celu rozcinamy jedn\u0105 \u017cy\u0142\u0119 (t\u0119 na kt\u00f3rej mamy zasilanie) i podpinamy do przeka\u017anika w spos\u00f3b zaprezentowany na rysunku poni\u017cej.<\/span><\/p>\n<p><span style=\"color: #ffffff;\"><a class=\"ipsAttachLink ipsAttachLink_image\" style=\"color: #ffffff;\" href=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/IMG_2258.jpg.6b56b70a14fd033b636770432861bce0.jpg\" rel=\"\" data-fileid=\"43458\" data-ipslightbox=\"\" data-ipslightbox-group=\"g4810\"><img decoding=\"async\" class=\"ipsImage ipsImage_thumbnailed lazyload\" data-src=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/IMG_2258.thumb.jpg.64ff8b153428abfb7dcaad26b5475d18.jpg\" alt=\"IMG_2258.thumb.jpg.64ff8b153428abfb7dcaad26b5475d18.jpg\" data-fileid=\"43458\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/><\/a><\/span><\/p>\n<p><span style=\"color: #ffffff;\">Foto: <\/span><a contenteditable=\"false\" href=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/\" rel=\"noopener noreferrer\" data-ipshover=\"\" data-ipshover-target=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/?do=hovercard\" data-mentionid=\"7626\">@rekawiczka<\/a><\/p>\n<p><span style=\"color: #ffffff;\">Schemat pod\u0142\u0105czenia czujnika temperatury, przeka\u017anika i wy\u015bwietlacza LCD<\/span><\/p>\n<p><span style=\"color: #ffffff;\">Skoro mamy ju\u017c przygotowane kable mo\u017cemy przyst\u0105pi\u0107 do spi\u0119cia wszystkiego w jeden uk\u0142ad. W celu u\u0142atwienia sprawdzenia czy nasz uk\u0142ad dzia\u0142a wykorzystana zostanie \u017car\u00f3wka, kt\u00f3ra w docelowej instalacji zostanie zast\u0105piona przez grza\u0142k\u0119. Dodatkowo, uk\u0142ad b\u0119dzie wy\u015bwietla\u0142 bie\u017c\u0105c\u0105 temperatur\u0119 na wy\u015bwietlaczu LCD.<\/span><\/p>\n<p><span style=\"color: #ffffff;\"><a class=\"ipsAttachLink ipsAttachLink_image\" style=\"color: #ffffff;\" href=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/temperatura_bb.png.575ae2ac746efea7c2656924df1f405f.png\" rel=\"\" data-fileid=\"43459\" data-ipslightbox=\"\" data-ipslightbox-group=\"g4810\"><img decoding=\"async\" class=\"ipsImage ipsImage_thumbnailed lazyload\" data-src=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/temperatura_bb.thumb.png.5822b0351491bc46f11ad76e5f5379d4.png\" alt=\"temperatura_bb.thumb.png.5822b0351491bc46f11ad76e5f5379d4.png\" data-fileid=\"43459\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/><\/a><\/span><\/p>\n<p><span style=\"color: #ffffff;\">Foto: <\/span><a contenteditable=\"false\" href=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/\" rel=\"noopener noreferrer\" data-ipshover=\"\" data-ipshover-target=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/?do=hovercard\" data-mentionid=\"7626\">@rekawiczka<\/a><\/p>\n<p><span style=\"color: #ffffff;\">Rysunek przedstawia schemat pod\u0142\u0105czenia przeka\u017anika 220V steruj\u0105cego napi\u0119ciem zasilaj\u0105cym grza\u0142k\u0119, czujnika temperatury oraz diod:<\/span><\/p>\n<ul>\n<li><span style=\"color: #ffffff;\">zielonej sygnalizuj\u0105cej prac\u0119 grza\u0142ki<\/span><\/li>\n<li><span style=\"color: #ffffff;\">czerwonej sygnalizuj\u0105cej przekroczenie temperatury maksymalnej<\/span><\/li>\n<\/ul>\n<p><span style=\"color: #ffffff;\">Aby prawid\u0142owo pod\u0142\u0105czy\u0107 czujnik temperatury nale\u017cy sprawdzi\u0107 w dokumentacji co oznaczaj\u0105 kolory poszczeg\u00f3lnych kabli. W przypadku powy\u017cszego diagramu oraz zastosowanej wersji czujnika DS18B20 oznaczenia s\u0105 nast\u0119puj\u0105ce:<\/span><\/p>\n<ul>\n<li><span style=\"color: #ffffff;\">kolor czerwony &#8211; zasilanie<\/span><\/li>\n<li><span style=\"color: #ffffff;\">kolor czarny &#8211; GND<\/span><\/li>\n<li><span style=\"color: #ffffff;\">kolor \u017c\u00f3\u0142ty &#8211; sterowanie<\/span><\/li>\n<\/ul>\n<p><span style=\"color: #ffffff;\">Jeszcze kilka obja\u015bnie\u0144:<\/span><\/p>\n<ul>\n<li><span style=\"color: #ffffff;\">do pod\u0142\u0105czenia diody u\u017cywamy rezystora 330\u03a9<\/span><\/li>\n<li><span style=\"color: #ffffff;\">do pod\u0142\u0105czenia DS18B20 u\u017cywamy rezystora 4.7k\u03a9<\/span><\/li>\n<\/ul>\n<p><span style=\"color: #ffffff;\">Zewn\u0119trzne biblioteki<\/span><\/p>\n<p><span style=\"color: #ffffff;\">Aby przedstawiony poni\u017cej kod \u017ar\u00f3d\u0142owy zadzia\u0142a\u0142 konieczne jest dodanie do \u015brodowiska Arduino dw\u00f3ch dodatkowych bibliotek &#8211; OneWire oraz DallasTemperature. S\u0105 one konieczne do prawid\u0142owego odczytania temperatury z czujnika i bez ich instalacji operacja nie zako\u0144czy si\u0119 pomy\u015blnie\u00a0. W tym celu z menu <strong>Tools<\/strong> wybieramy opcj\u0119 <strong>Manage Libraries<\/strong>\u2026 i w pole wyszukiwarki wpisujemy DallasTemperature. W efekcie operacji powinni\u015bmy zobaczy\u0107 wynik podobny do obrazka poni\u017cej.<\/span><\/p>\n<p><span style=\"color: #ffffff;\"><a class=\"ipsAttachLink ipsAttachLink_image\" style=\"color: #ffffff;\" href=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/picture_4.jpg.00c67f1a0049f03110ebf189ef7206b2.jpg\" rel=\"\" data-fileid=\"43455\" data-ipslightbox=\"\" data-ipslightbox-group=\"g4810\"><img decoding=\"async\" class=\"ipsImage ipsImage_thumbnailed lazyload\" data-src=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/picture_4.thumb.jpg.82bed4146010924b955ab73da7ee38ed.jpg\" alt=\"picture_4.thumb.jpg.82bed4146010924b955ab73da7ee38ed.jpg\" data-fileid=\"43455\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/><\/a><\/span><\/p>\n<p><span style=\"color: #ffffff;\">W moim przypadku biblioteka jest zainstalowana, natomiast w gdyby tak nie by\u0142o pojawi\u0142by si\u0119 przycisk Install, kt\u00f3ry nale\u017cy klikn\u0105\u0107 w celu instalacji zewn\u0119trznej biblioteki. Operacj\u0119 powtarzamy dla OneWire. W przypadku OneWire otrzymujemy znacznie wi\u0119cej wynik\u00f3w, jednak\u017ce nale\u017cy wybra\u0107 wersj\u0119 pokazan\u0105 na poni\u017cszym obrazku.<\/span><\/p>\n<p><span style=\"color: #ffffff;\">Foto: <\/span><a contenteditable=\"false\" href=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/\" rel=\"noopener noreferrer\" data-ipshover=\"\" data-ipshover-target=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/?do=hovercard\" data-mentionid=\"7626\">@rekawiczka<\/a><\/p>\n<p><span style=\"color: #ffffff;\"><a class=\"ipsAttachLink ipsAttachLink_image\" style=\"color: #ffffff;\" href=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/picture_5.jpg.770cba6d4955e072bd1b4bdc356a532d.jpg\" rel=\"\" data-fileid=\"43456\" data-ipslightbox=\"\" data-ipslightbox-group=\"g4810\"><img decoding=\"async\" class=\"ipsImage ipsImage_thumbnailed lazyload\" data-src=\"http:\/\/forum.klub-malawi.pl\/uploads\/monthly_2019_03\/picture_5.thumb.jpg.451604b6c2b5b78c1dba7a2c14457386.jpg\" alt=\"picture_5.thumb.jpg.451604b6c2b5b78c1dba7a2c14457386.jpg\" data-fileid=\"43456\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/><\/a><\/span><\/p>\n<p><span style=\"color: #ffffff;\">Foto: <\/span><a contenteditable=\"false\" href=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/\" rel=\"noopener noreferrer\" data-ipshover=\"\" data-ipshover-target=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/?do=hovercard\" data-mentionid=\"7626\">@rekawiczka<\/a><\/p>\n<p><span style=\"color: #ffffff;\">Kod \u017ar\u00f3d\u0142owy<\/span><\/p>\n<p><span style=\"color: #ffffff;\">Poni\u017cszy kod realizuje logik\u0119 biznesow\u0105 odpowiedzialn\u0105 za za\u0142\u0105czanie grza\u0142ki je\u017celi system stwierdzi, \u017ce temperatura zwr\u00f3cona przez czujnik jest ni\u017csza ni\u017c ta kt\u00f3rej oczekujemy. Producent czujnika podaje, \u017ce dok\u0142adno\u015b\u0107 pomiaru w w zakresie -10 \u00b0C do 85 \u00b0C wynosi +\/- 0,5 \u00b0C zatem nale\u017cy przy pomocy standardowego termometru wyskalowa\u0107 prawid\u0142owo czujnik, tj. zaktualizowa\u0107 temperatur\u0119 przy kt\u00f3rej za\u0142\u0105cza si\u0119 grza\u0142ka.<\/span><\/p>\n<pre class=\"ipsCode prettyprint lang-html prettyprinted\"><span style=\"color: #ffffff;\"><span class=\"pln\">#include <\/span><span class=\"tag\">&lt;OneWire.h&gt;<\/span><span class=\"pln\">\r\n#include <\/span><span class=\"tag\">&lt;DallasTemperature.h&gt;<\/span><span class=\"pln\">\r\n#include <\/span><span class=\"tag\">&lt;LiquidCrystal.h&gt;<\/span><span class=\"pln\">\r\n\r\n\/* constants *\/\r\nconst int GREEN_LED_PIN = 8;\r\nconst int RED_LED_PIN = 9;\r\nconst int HEATER_PIN = 10;\r\nconst int LCD_0_PIN = 2;\r\nconst int LCD_1_PIN = 3;\r\nconst int LCD_2_PIN = 4;\r\nconst int LCD_3_PIN = 5;\r\nconst int LCD_4_PIN = 6;\r\nconst int LCD_5_PIN = 7;\r\nconst float HEATING_TEMP = 25.00f;\r\nconst float ALARM_TEMP = 30.00f;\r\n\r\n\/* init *\/ \r\nOneWire oneWire(A5); \r\nDallasTemperature sensors(&amp;oneWire); \r\nLiquidCrystal lcd(LCD_0_PIN, LCD_1_PIN, LCD_2_PIN, LCD_3_PIN, LCD_4_PIN, LCD_5_PIN);\r\n \r\nvoid setup(void) {\r\n  \/\/Serial.begin(9600);\r\n  sensors.begin();\r\n\r\n  initPins();\r\n  initLcd(\"Temp: \");\r\n\r\n  checkSettings();\r\n}\r\n \r\nvoid loop(void) { \r\n  temperature();\r\n  delay(500);\r\n}\r\n\r\nvoid temperature() {\r\n  sensors.requestTemperatures(); \r\n  float temp = sensors.getTempCByIndex(0);\r\n  displayTemp(temp);\r\n\r\n  if (temp &lt; HEATING_TEMP) {\r\n    pin(GREEN_LED_PIN, HIGH);\r\n    pin(HEATER_PIN, LOW);\r\n  } else {\r\n    pin(GREEN_LED_PIN, LOW);\r\n    pin(HEATER_PIN, HIGH);\r\n  }  \r\n\r\n  alarm(temp);\r\n}\r\n\r\nvoid pin(int input, int value) {\r\n  digitalWrite(input, value);\r\n}\r\n\r\nvoid initPins() {\r\n  pinMode(GREEN_LED_PIN, OUTPUT);\r\n  pinMode(RED_LED_PIN, OUTPUT);\r\n  pinMode(HEATER_PIN, OUTPUT);\r\n\r\n  pin(GREEN_LED_PIN, LOW);\r\n  pin(HEATER_PIN, HIGH);\r\n\r\n  delay(1000);  \r\n}\r\n\r\nvoid initLcd(String message) {\r\n  lcd.begin(16, 2);\r\n  lcd.setCursor(0, 0);\r\n  lcd.print(message);\r\n}\r\n\r\nvoid displayTemp(float temp) {\r\n  lcd.setCursor(6, 0);\r\n  lcd.print(temp);\r\n  lcd.print(\" \");\r\n  lcd.print((char)223);\r\n  lcd.print(\"C\");\r\n}\r\n\r\nvoid alarm(float temp) {\r\n  if (temp &gt; ALARM_TEMP) {\r\n    pin(RED_LED_PIN, HIGH);    \r\n  } else {\r\n    pin(RED_LED_PIN, LOW);\r\n  }\r\n}\r\n\r\nvoid checkSettings() {\r\n  if (HEATING_TEMP &gt; ALARM_TEMP) {\r\n    lcd.setCursor(0, 1);\r\n    lcd.print(\"E1\");\r\n  }\r\n}<\/span><\/span><\/pre>\n<p><span style=\"color: #ffffff;\">Konfiguracja poszczeg\u00f3lnych PIN\u00f3w wykonywana jest w poni\u017cszej sekcji kodu. Je\u017celi po\u0142\u0105czenia zosta\u0142y wykonane zgodnie ze schematem sekcja nie wymaga zmian.<\/span><\/p>\n<pre class=\"ipsCode prettyprint lang-html prettyprinted\"><span class=\"pln\" style=\"color: #ffffff;\">const int GREEN_LED_PIN = 8;\r\nconst int RED_LED_PIN = 9;\r\nconst int HEATER_PIN = 10;\r\nconst int LCD_0_PIN = 2;\r\nconst int LCD_1_PIN = 3;\r\nconst int LCD_2_PIN = 4;\r\nconst int LCD_3_PIN = 5;\r\nconst int LCD_4_PIN = 6;\r\nconst int LCD_5_PIN = 7;<\/span><\/pre>\n<p><span style=\"color: #ffffff;\">Konfiguracja ustawie\u0144 temperatury realizowana jest przez ustawienie odpowiednich warto\u015bci sta\u0142ym <strong>HEATING_TEMP<\/strong> oraz <strong>ALARM_TEMP<\/strong>. Istotne jest aby na ko\u0144cu warto\u015bci numerycznej by\u0142a litera <strong>f<\/strong>.<\/span><\/p>\n<pre class=\"ipsCode prettyprint lang-html prettyprinted\"><span class=\"pln\" style=\"color: #ffffff;\">const float HEATING_TEMP = 25.00f;\r\nconst float ALARM_TEMP = 30.00f;<\/span><\/pre>\n<p><span style=\"color: #ffffff;\">W moim akwarium utrzymuje temperatur\u0119 25 stopni Celsjusza, natomiast alarm za\u0142\u0105cza si\u0119 w przypadku gdy temperatura przekroczy 30 stopni. Je\u017celi kto\u015b chce zmieni\u0107 warto\u015b\u0107 aby grza\u0142ka w\u0142\u0105cza\u0142a si\u0119 np. przy 24.24 stopnia nale\u017cy zmieni\u0107 ustawienia na poni\u017csze.<\/span><\/p>\n<pre class=\"ipsCode prettyprint lang-html prettyprinted\"><span class=\"pln\" style=\"color: #ffffff;\">const float HEATING_TEMP = 24.24f;<\/span><\/pre>\n<p><span style=\"color: #ffffff;\">Poni\u017cej za\u0142\u0105czam filmik prezentuj\u0105cy dzia\u0142anie ca\u0142ego uk\u0142adu.<\/span><\/p>\n<div class=\"ipsEmbeddedVideo\">\n<div><iframe data-src=\"https:\/\/www.youtube.com\/embed\/2C0KKHGMWeE?feature=oembed\" width=\"459\" height=\"344\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\" data-mce-fragment=\"1\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" data-load-mode=\"1\"><\/iframe><\/div>\n<\/div>\n<p><span style=\"color: #ffffff;\">Autor: <\/span><a id=\"ips_uid_5940_3\" contenteditable=\"false\" href=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/\" rel=\"noopener noreferrer\" data-ipshover=\"\" data-ipshover-target=\"http:\/\/forum.klub-malawi.pl\/profile\/7626-rekawiczka\/?do=hovercard\" data-mentionid=\"7626\">@rekawiczka<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wielu z nas posiada w swoich zbiornikach filtracj\u0119 opart\u0105 o filtr narurowy z wbudowan\u0105 w uk\u0142ad grza\u0142k\u0105 \u0142azienkow\u0105. Jest to wygodne rozwi\u0105zanie ograniczaj\u0105ce ilo\u015b\u0107 sprz\u0119tu w akwarium. Standardowo, grza\u0142ka wyposa\u017cona jest w termostat jednak\u017ce ustawienie temperatury wykonywane jest metod\u0105 pr\u00f3b i b\u0142\u0119d\u00f3w. Przyczyn\u0105 takiego stanu rzeczy jest brak informacji o zakresie temperatur na pokr\u0119tle steruj\u0105cym. [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":146,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1272","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.klub-malawi.pl\/index.php?rest_route=\/wp\/v2\/pages\/1272","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.klub-malawi.pl\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.klub-malawi.pl\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.klub-malawi.pl\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.klub-malawi.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1272"}],"version-history":[{"count":3,"href":"https:\/\/www.klub-malawi.pl\/index.php?rest_route=\/wp\/v2\/pages\/1272\/revisions"}],"predecessor-version":[{"id":1280,"href":"https:\/\/www.klub-malawi.pl\/index.php?rest_route=\/wp\/v2\/pages\/1272\/revisions\/1280"}],"up":[{"embeddable":true,"href":"https:\/\/www.klub-malawi.pl\/index.php?rest_route=\/wp\/v2\/pages\/146"}],"wp:attachment":[{"href":"https:\/\/www.klub-malawi.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1272"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}