{"id":1927,"date":"2019-08-13T14:18:54","date_gmt":"2019-08-13T14:18:54","guid":{"rendered":"http:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/?p=1927"},"modified":"2019-08-20T18:20:52","modified_gmt":"2019-08-20T18:20:52","slug":"sterowanie-serwem-za-pomoca-joysticka-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-3-2-2-4-2-2-2-2-2-2-3-2-2-2-2-2-2-2","status":"publish","type":"post","link":"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/?p=1927","title":{"rendered":"Samochodzik sterowany &#8211; podczerwie\u0144, TSOP &#8211; oraz PM2D3D"},"content":{"rendered":"<h2>Pojazd sterowany &#8211; TSOP23xx<\/h2>\r\nPan Przemek zapozna\u0142 si\u0119 z odbiornikiem podczerwieni TSOP 2230, dzi\u0119ki kt\u00f3remu jego pojazd by\u0142 sterowany bezprzewodowo. Poni\u017cej prosty programik do dekodowania sygna\u0142\u00f3w z pilota telewizyjnego z wykorzystaniem biblioteki <strong>IRLib<\/strong> (do pobrania w dziale&nbsp;<em>Do pobrania<\/em>):\r\n<pre class=\"lang:arduino decode:true\" title=\"Odczytywanie kodow klawiszy pilota TV\">#define IR 12\r\n#include &lt;IRLib.h&gt;\r\nIRrecv pilot(IR);\/\/pin\r\nIRdecode dekoder;\r\n \r\nvoid setup(){\r\n  pilot.enableIRIn();\/\/uruchamiamy odbiornik IR\r\n  Serial.begin(9600);\r\n}\r\n \r\nvoid loop(){\r\n   if (pilot.GetResults(&amp;dekoder)) {\r\n     dekoder.decode();    \/\/dekoduj dane\r\n     pilot.resume();     \/\/restartuj odbiornik\r\n     Serial.println(dekoder.value);\/\/kody klawiszy! zanotuj je sobie....\r\n   }\/\/if\r\n}\/loop<\/pre>\r\nPo zapisaniu sobie kod\u00f3w pilota TV mo\u017cna zmieni\u0107 program do poruszania naszym samochodzikiem &#8211; instrukcjami typu&nbsp; if (dekorer.value==432421) jedz_do_przodu() &#8212; oczywi\u015bcie funkcj\u0119 t\u0105 nale\u017ca\u0142o wcze\u015bniej sobie napisa\u0107 \ud83d\ude09\r\n\r\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-1928\" src=\"http:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/wp-content\/uploads\/sites\/6\/2019\/08\/DSC_8199-1024x576.jpg\" alt=\"\" width=\"640\" height=\"360\" srcset=\"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/wp-content\/uploads\/sites\/6\/2019\/08\/DSC_8199-1024x576.jpg 1024w, https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/wp-content\/uploads\/sites\/6\/2019\/08\/DSC_8199-300x169.jpg 300w, https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/wp-content\/uploads\/sites\/6\/2019\/08\/DSC_8199-768x432.jpg 768w, https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/wp-content\/uploads\/sites\/6\/2019\/08\/DSC_8199.jpg 1800w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/>\r\n\r\nWsp\u00f3lnie ustalili\u015bmy, \u017ce ka\u017cdokrotne naci\u015bni\u0119cie przycisku do przodu na pilocie uruchamia silniki na zadany czas (np. 100ms) a nast\u0119pnie je wy\u0142\u0105cza. Tak samo z jazd\u0105 do ty\u0142u &#8211; w\u0142\u0105czamy odpowiednio silniki (ponownie na 100ms) a potem je wy\u0142\u0105czamy (no i ze skr\u0119tami tak samo). Wszystko \u0142adnie dzia\u0142a\u0142o, ale&#8230; nie do ko\u0144ca. Silniki s\u0105 ca\u0142y czas w\u0142\u0105czane i wy\u0142\u0105czane &#8211; a wiadomo, \u017ce pr\u0105d potrzebny na &#8222;rozruch&#8221; silnika jest znacznie wi\u0119kszy ni\u017c podczas jego pracy ze sta\u0142\u0105 pr\u0119dko\u015bci\u0105. Nie ma potrzeby je zatrzymwa\u0107, je\u015bli u\u017cytkownik trzyma wci\u015bni\u0119ty dany przycisk! Dodatkowo, przy mniejszym czasie pracy silnika (nie 100ms a 50ms czy nawet 20ms) samoch\u00f3d mia\u0142 &#8222;czkawk\u0119&#8221; &#8211; ci\u0105gle uruchamia\u0142 i zatrzymywa\u0142 silniczki. Te dwa powody by\u0142y wystarczaj\u0105ce do zmiany pierwszej wersji kodu &#8211; na bardziej zaawansowan\u0105, kt\u00f3ra nie wy\u0142\u0105cza silnika gdy ci\u0105gle wciskamy ten sam przycisk.&nbsp; &#8222;Czkawka&#8221; zosta\u0142a (cz\u0119\u015bciowo) opanowana, ale&#8230; s\u0105 b\u0142\u0119dy w kodzie \ud83d\ude41 Na dodatek nale\u017cy obej\u015b\u0107 (dobrze zaprogramowa\u0107) b\u0142\u0119dy w komunikacji pilota na podczerwie\u0144 z czujk\u0105 TSOP23xx &#8211; przy trzymanym przycisku pojawia si\u0119 <em>tajemniczy kod ZERO,<\/em> co przerywa prac\u0119 silnik\u00f3w. Za tydzie\u0144 si\u0119 z tym uporamy!\r\n<h2>Precyzyjna Maszyna (PM2D3D) &#8211; soft<\/h2>\r\nCho\u0107 najwi\u0119cej zmian zosta\u0142o w softwarze &#8211; to nast\u0105pi\u0142a tak\u017ce modyfikacja konstrukcji ramy: silniki zosta\u0142y przeniesione z jednej strony na przeciwne, aby zr\u00f3nowa\u017cy\u0107 ca\u0142\u0105 konstrukcj\u0119. Ci\u0105gle pozostaje kwestia dodania przeciwwagi po przeciwnej stronie ramy, aby nie tylko kirunek wsch\u00f3d-zach\u00f3d by\u0142 zr\u00f3wnowa\u017cony, ale tak\u017ce p\u00f3\u0142noc-po\u0142udnie. Dodatkowy ci\u0119\u017carek b\u0119dzie pewnie w niedalekiej przysz\u0142o\u015bci, gdy powstanie panel do sterowania.\r\n\r\nS\u0105 te\u017c anty-po\u015blizgowe n\u00f3\u017cki do ramy, z dodatkowymi &#8222;dociskaczami&#8221; kartki A4 (wydrukowane w 3D). Jak wspomniano, najwi\u0119cej zmian Pan Bartek wykona\u0142 w sofcie i&#8230; poprawnie rysowane s\u0105 ju\u017c uko\u015bne linie! Brawo\r\n\r\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-1929\" src=\"http:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/wp-content\/uploads\/sites\/6\/2019\/08\/DSC_8200-1024x576.jpg\" alt=\"\" width=\"640\" height=\"360\" srcset=\"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/wp-content\/uploads\/sites\/6\/2019\/08\/DSC_8200-1024x576.jpg 1024w, https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/wp-content\/uploads\/sites\/6\/2019\/08\/DSC_8200-300x169.jpg 300w, https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/wp-content\/uploads\/sites\/6\/2019\/08\/DSC_8200-768x432.jpg 768w, https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/wp-content\/uploads\/sites\/6\/2019\/08\/DSC_8200.jpg 1800w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/>\r\n\r\nWi\u0119cej o projekcie Maszyny na <a href=\"http:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/?page_id=1734\">stronie projektu<\/a>.\r\n<p style=\"text-align: right;\"><em>(c) K.G.<\/em><\/p>\r\n<!-- \/wp:post-content -->","protected":false},"excerpt":{"rendered":"<p>Pojazd sterowany &#8211; TSOP23xx Pan Przemek zapozna\u0142 si\u0119 z odbiornikiem podczerwieni TSOP 2230, dzi\u0119ki kt\u00f3remu jego pojazd by\u0142 sterowany bezprzewodowo. Poni\u017cej prosty programik do dekodowania sygna\u0142\u00f3w z pilota telewizyjnego z wykorzystaniem biblioteki IRLib (do pobrania w dziale&nbsp;Do pobrania): #define IR 12 #include &lt;IRLib.h&gt; IRrecv pilot(IR);\/\/pin IRdecode dekoder; void setup(){ pilot.enableIRIn();\/\/uruchamiamy odbiornik IR Serial.begin(9600); } void [&hellip;]<\/p>\n","protected":false},"author":5,"featured_media":1928,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[52],"tags":[308,33,328,10],"class_list":{"0":"post-1927","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","6":"hentry","7":"category-fibot","8":"tag-maszyna","9":"tag-podczerwien","10":"tag-samochod","11":"tag-tsop","13":"post-with-thumbnail","14":"post-with-thumbnail-large"},"_links":{"self":[{"href":"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/index.php?rest_route=\/wp\/v2\/posts\/1927","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/index.php?rest_route=\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1927"}],"version-history":[{"count":3,"href":"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/index.php?rest_route=\/wp\/v2\/posts\/1927\/revisions"}],"predecessor-version":[{"id":1941,"href":"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/index.php?rest_route=\/wp\/v2\/posts\/1927\/revisions\/1941"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/index.php?rest_route=\/wp\/v2\/media\/1928"}],"wp:attachment":[{"href":"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1927"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1927"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/physics.uwb.edu.pl\/wf\/fi-bot\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1927"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}