Zapisz na liście zakupowej
Stwórz nową listę zakupową
Bezpieczne zakupy
Idosell security badge

Jak zaprogramować robota? Budowa robotów dla początkujących

2023-12-11
| Autor: AVT
Jak zaprogramować robota? Budowa robotów dla początkujących

Robotyka to bardzo ciekawa dziedzina nauki, która stale się rozwija i zyskuje coraz większe rzesze fanów. Dzięki rozwojowi elektroniki oraz spadkowi cen podzespołów, każdy może sobie pozwolić na budowę robota, nawet niewielkiego i prostego. Z czym się to wiąże i od czego zacząć? Zapraszam do lektury!

Czym jest robot?

Roboty mają za zadanie upraszczać ludziom życie, najczęściej poprzez automatyzację żmudnych, trudnych i czasochłonnych procesów. Mogą mieć różne postaci, a najbardziej ogólną formą robota jest program lub skrypt komputerowy, który ma określony zestaw zadań i poleceń do wykonania.

Jednak w naszej wyobraźni robot funkcjonuje bardziej jako obiekt materialny. Najczęściej jest to ruchoma maszyna, kontrolowana przez komputer, posiadająca pewną autonomię lub nie. Wtedy takie urządzenie jest połączeniem elektroniki, mechaniki i programowania, czyli stanowi obiekt zainteresowania mechatroniki. To interdyscyplinarna nauka, która powstała kilkadziesiąt lat temu, jest więc całkiem młoda. Jednak dzisiaj rozwija się prężnie, ponieważ zapotrzebowanie na rozwiązania mechatroniczne stale rośnie.

Gdzie znajdziemy roboty?

Roboty mają zastosowanie w różnych miejscach. Wylistowanie wszystkich obszarów, w których są dzisiaj niezbędne byłoby bardzo trudne, ale przyjrzyjmy się chociaż kilku.

Przemysł

Jednym z głównych obszarów ich zastosowania jest przemysł: fabryki, przetwórnie, kopalnie. Automatyzacja procesów na linii technologicznej jest tym, co pozwala na zredukowanie cen gotowych wyrobów oraz zwiększenie ich niezawodności.

Zamiast człowieka, który męczy się i nuży wykonując stale tę samą pracę, przez co popełnia błędy, możemy w wielu miejscach postawić robota. Będzie bez cienia zmęczenia wykonywał wciąż te same zadania, byleby był prawidłowo obsługiwany, serwisowany i zasilany.

Leczenie

Roboty znajdziemy również na salach operacyjnych. Jeden z nich, bardzo popularny robot da Vinci, służy do przeprowadzania skomplikowanych zabiegów operacyjnych u ludzi. Jest sterowany przez wykwalifikowanego chirurga, jednak to maszyna przecina tkanki i je zszywa. Dzięki temu, nie ma ryzyka popełnienia błędu wywołanego drżeniem ręki czy chwilowym rozproszeniem uwagi. Robotowi się to nie przydarzy, o ile działa prawidłowo.

Jednak roboty to nie tylko wielkie, ciężkie maszyny. Od kilku lat naukowcy pracują nad nanorobotami i mikrorobotami, które mogą pływać… w naszych naczyniach krwionośnych. Są tak małe, że bez problemu dotrą do najmniejszych tkanek ludzkiego organizmu. Mogą odciąć dopływ krwi do guza nowotworowego lub podać lek bezpośrednio w miejscu, gdzie jest potrzebny.

Eliminacja ładunków wybuchowych

Roboty saperskie wyglądają jak zdalnie sterowany samochód, lecz ich przeznaczeniem bynajmniej nie jest zabawa. Te urządzenia są wyposażone w kamery oraz chwytaki i manipulatory, dzięki którym mogą otworzyć podejrzaną paczkę lub wyjąć ładunek wybuchowy ze skrytki.

Dzięki temu, człowiek nie musi narażać swojego zdrowia i życia, ponieważ to maszyna “nadstawia karku”. W razie eksplozji dojdzie, co najwyżej, do zniszczenia tego urządzenia.

Inne obszary

Zastosowań robotów jest całe mnóstwo. Potrafią dotrzymywać towarzystwa ludziom starszym oraz przypominać im o zażyciu leków. Współczesne samochody, uzyskujące coraz większą autonomię, też można z powodzeniem zaliczyć do tego grona - wszak wyręczają nas, ludzi, w żmudnej pracy, jaką jest prowadzenie pojazdu mechanicznego w warunkach drogowych. Wiele robotów to zabawki, które umilają czas najmłodszym. Mogą biegać, skakać, a nawet latać i śpiewać z nimi piosenki.

Jednak zabawa może być połączona z nauką, ponieważ każdy robot zawiera w swojej strukturze komputer. Możemy się uczyć zasady działania komputerów poprzez zabawę, a jednocześnie rozwijać swoje umiejętności, bardzo przydatne w dzisiejszym, skomputeryzowanym świecie. Dotyczy to nie tylko dzieci - dorośli również uczęszczają na warsztaty z budowy robotów!

Od czego zacząć?

To bardzo proste pytania wymaga udzielenia rozbudowanej odpowiedzi. Inaczej będzie zaczynała osoba kompletnie nie zaznajomiona z tematem elektroniki, programowania i komputerów, a inaczej ktoś, kto już co nieco na ten temat wie.

Klocki

Bardzo duży wkład w naukę robotyki ma duńska firma LEGO, która od wielu lat produkuje i sprzedaje zestawy z serii Mindstorms. Oprócz zwykłych klocków, mamy do dyspozycji również elementy mechaniczne, takie jak osie, zębatki, przekładnie pasowe i zębate. W zestawie znajduje się również kilka silników elektrycznych prądu stałego, które mogą wprawić w ruch dowolnie złożony mechanizm. W zestawie są również różne czujniki, na przykład odległości oraz dotyku.

Jednak najciekawszym elementem tej układanki jest mikrokomputer, jednostka centralna, którą możemy programować. Programy układa się na zwykłym, domowym komputerze, po czym przesyła do tej jednostki centralnej. Wiele przykładów oraz bardzo prosty, graficzny interfejs powodują, że to propozycja nawet dla kompletnie “zielonych”.

Czemu warto zwrócić uwagę na zestaw klocków? Po pierwsze, część mechaniczną mamy w zasadzie gotową. To znaczy, musimy ją poskładać, ale odpada przycinanie, klejenie, wiercenie, spawanie i tak dalej. Wszystkie elementy do siebie pasują, więc montaż może trwać nawet kilka minut i da radę go wykonać nawet dziecko.

Część mechaniczna może więc być prosta, a bardziej możemy skupić się na programowaniu. Ono może odbywać się nie tylko poprzez gotowy przyjazny interfejs, lecz również za pomocą komend i funkcji pisanych z poziomu klawiatury - jak w prawdziwym środowisku programistycznym. To jest opcja dla bardziej zaawansowanych, która nie wymaga jakichkolwiek dodatkowych inwestycji!

Zasilane słońcem

Fotowoltaika i energia odnawialna to obecnie tematy numer jeden, więc warto zaznajomić się z nimi bliżej. I to niekoniecznie w postaci wielkiej fermy wiatrowej, produkującej megawatogodziny energii elektrycznej każdego dnia, ale przy pomocy prostych i niedrogich zabawek. Ich jedynym źródłem zasilania jest ogniwo słoneczne, więc bez dobrej pogody (lub mocnej żarówki) ani rusz - i to dosłownie!

Dzięki takim zestawom można na własne oczy przekonać się, jak funkcjonują urządzenia zasilane wyłącznie energią słoneczną i z jakimi ograniczeniami muszą się mierzyć. Przy okazji można rozwinąć swoje zdolności manualne.

Dla chcących lutować

Bardzo proste roboty, które nie wymagają programowania, można stworzyć wyłącznie przy pomocy lutownicy. Dla przykładu, taki samochód jeżdżący po linii - zwany fachowo linefollowerem - można złożyć w jeden wieczór, po czym obserwować jak działa.

W zestawie jest gotowa płytka drukowana oraz komplet części, silniczki i koła. Nie trzeba niczego przycinać ani dopasowywać, jedynie podczas montażu elementów na płytce należy zadbać o skrócenie ich nóżek odpowiednimi szczypcami do cięcia. To bardzo ciekawa propozycja dla tych, których bardziej interesuje elektronika niż programowanie. A jednocześnie chcą zbudować urządzenie, które jeździ - i to samodzielnie!

Książki

Jeżeli nie wiemy dokładnie czego chcemy, warto sięgnąć po lekturę. Liczba pozycji jest naprawdę spora, więc wybór odpowiedniej książki na początek swojej drogi z robotyką powinna być bardzo proste. Wiele osób nawet preferuje taką formę nauki, czyli z papierowego podręcznika zamiast z kursów dostępnych w internecie. Po poznaniu podstaw, będą mogli wykonać swoje pierwsze konstrukcje.

Przykładowo, ta książka opiera znajdujące się w niej projekty na znanej i popularnej platformie Arduino. Projekty w niej zawarte są naprawdę niedrogie w budowie, a jednocześnie bardzo kształcące.

Ozobot to robot, którego możemy samodzielnie zaprogramować w dedykowanym do tego środowisku. Ta książka to prawdziwy przewodnik po świecie Ozobota. Zawiera dokładny opis działania, funkcje wszystkich akcesoriów i krok po kroku przeprowadzi przez kolejne etapy tworzenia robota.

Bardziej uniwersalna i obszerna pozycja zawiera skrótowy opis wszystkiego, co trzeba wiedzieć, aby samodzielnie zbudować robota. Znajdziemy w niej podstawy zarówno z zakresu elektroniki, jak i elektromechaniki. Do realizacji części programistycznej wykorzystuje platformę Arduino. Wiele zawartych w niej projektów może stać się użytecznymi urządzeniami!

Zestawy do samodzielnego montażu

Jeżeli obsługa lutownicy nie stanowi najmniejszego problemu, można pokusić się o zbudowanie własnego robota w oparciu o zestaw do samodzielnego montażu. Wybór zestawów jest naprawdę szeroki i zróżnicowany - nic nie stoi na przeszkodzie, by znaleźć coś dla siebie. Są wśród nich zarówno układy prostsze, jak i bardzo złożone.

Dla bardziej zaawansowanych

Jeżeli podstawy elektroniki czy budowa prostych konstrukcji mechanicznych nie stanowi już problemu, można sięgnąć po bardziej złożone roboty. Jak zawsze, obrana droga zależy od tego, co chcemy osiągnąć na jej końcu.

Wybór platformy

Jeżeli nie chcemy konstruować całego układu elektronicznego całkowicie od zera - a nie jest to proste zadanie - warto zwrócić uwagę na gotowy moduł, który możemy programować. Będzie komunikował się z pozostałymi podzespołami robota oraz stanowił jego “mózg”.

Z pewnością prym wiedzie Arduino, które ma swoich fanów na całym świecie. Z jego pomocą tworzą swoje projekty zarówno osoby początkujące, jak i bardziej biegłe w programowaniu. Szeroki wybór płytek o różnych możliwościach oraz kompatybilne z nimi moduły rozszerzające to z pewnością duży atut. Jeszcze większym jest przystępna cena i znaczna liczba opracowań oraz tutoriali na jego temat.

Na temat Arduino powstało wiele książek, których zadaniem jest wprowadzenie w ten specyficzny świat. Warto nadmienić, że język Arduino bazuje na bardzo popularnym języku C, który jest stosowany w naprawdę wielu miejscach. Jego znajomość to cenna wiedza, która może przydać się podczas poznawania innych platform programistycznych oraz języków programowania.

Inną popularną platformą jest Raspberry Pi, które oferuje znacznie większe możliwości pod względem zasobów sprzętowych. Rejestracja i przetwarzanie obrazu oraz dźwięku nie stanowią dla niego większego problemu. Działa pod kontrolą zwykłego systemu operacyjnego, na przykład z rodziny Linux, więc nasz robot może mieć wbudowany prawdziwy komputer - tyle, że mały.

Moduły elektroniczne

Możemy robota zbudować całkowicie samodzielnie, używając jedynie naszej wyobraźni jako źródła pomysłów. Bardzo pomocne będą przy tym gotowe moduły, które są zgodne z Arduino - zarówno pod względem napięcia zasilania, jak i poziomu sygnałów. Część z nich jest czysto analogowa, a część analogowo-cyfrowa, lecz odpowiednie biblioteki, znajdujące się na wyposażeniu Arduino IDE, pomogą w ich obsłudze.

Znajdziemy wśród nich, przede wszystkim, wiele czujników. Mamy do dyspozycji czujniki odległości, światła oraz dźwięku. Każdy z nich stanowi samodzielny układ elektroniczny, który łączymy z płytką Arduino za pomocą przewodów do płytek stykowych. Nie trzeba niczego więcej, w większości wypadków nie jest potrzebna nawet lutownica - wszystkie podzespoły są już zamontowane. Cena takich modułów również jest okazyjna.

Specjalne czujniki optyczne są wykorzystywane do robotów jeżdżących po linii, czyli przytoczonych już linefollowerów. Gotowy sensor upraszcza jego konstrukcję, a wtedy możemy bardziej skupić się na stworzeniu optymalnego algorytmu. To wcale nie jest takie proste, jeżeli chcemy, aby robot jeździł z przyzwoitą szybkością!

Również moduły wykonawcze, czyli sterujące silnikami, są dostępne w postaci zmontowanej. Mogą zasilać zarówno silniki prądu stałego, jak i silniki krokowe. Użycie gotowego modułu zwalnia konstruktora robota z konieczności przejmowania się poszczególnymi kondensatorami, rezystorami, tranzystorami i tym podobnych.

Wśród modułów można znaleźć nawet… kamerę! Nie da się nią zrobić filmu w jakości Full HD, ale testowanie prostych algorytmów przetwarzania obrazu jest już jak najbardziej osiągalne. Posiada wbudowane układy automatycznej regulacji parametrów rejestracji, na przykład balansu bieli czy wzmocnienia. I to wszystko za cenę zaledwie kilkunastu złotych!

Napędy

Czym byłby robot, który nie może się poruszać? Wielu z nas woli urządzenia, które jeżdżą, przemieszczają się, ruszają - innymi słowy, sprawiają wrażenie żywych. To możemy osiągnąć za pomocą silników i innych elektrycznych form napędu.

Na przykład, gotowe podwozia z silnikami i kołami możemy nabyć za cenę kilkudziesięciu złotych. Nie ma przy tym znaczenia, co na nich zamontujemy, ponieważ reszta jest sprawą wyłącznie naszej fantazji. Producent dostarcza jedynie platformę, która umie jeździć - i to wszystko. Rozstaw otworów oraz gabaryty są przewidziane do zamontowania w nich modułu Arduino.

W wielu sytuacjach, na przykład podczas budowy mechatronicznych manipulatorów, warto użyć serwomechanizmów modelarskich. Ich budowa powoduje, że doskonale nadają się wykonywania ruchów o zadany kąt. Arduino ma wbudowane funkcje generujące sygnał sterujący serwomechanizmami, więc cała reszta zależy wyłącznie od nas.

Dla mocno zaawansowanych

Jeżeli budowa robotów z użyciem Arduino to zbyt proste zadanie, można pokusić się o coś zupełnie nowego! Na przykład, można znacznie rozwinąć swoje umiejętności programowania w cennym dziś języku. Python czy JavaScript są dzisiaj stosowane w naprawdę wielu miejscach, dlatego warto je znać i rozszerzać swoje możliwości.

Jak zbudować własnego robota?

Nie ma jednoznacznej recepty na to, jak zbudować robota. Każdy robot jest inny, zaprojektowany i złożony w unikatowy sposób. Jednak warto poznać kilka podstawowych reguł, które pozwolą uniknąć frustracji na początkowym etapie poznawania robotyki.

Pomysł

Wszystko zaczyna się od koncepcji. Musimy określić, czego chcemy od robota. Co ma robić, co jest jego główną funkcją “życiową”. Może to być rzucanie piłek, wydawanie dźwięków, parzenie kawy, granie na fortepianie, zabawa z kotem albo podlewanie kwiatów. Liczba pomysłów jest naprawdę trudna do określenia.

Warto też zastanowić się, w jaki sposób ma się przemieszczać: jeździć, pływać, chodzić, latać czy jeszcze inaczej, na przykład drążyć tunele? Może ma lewitować zawieszony w polu magnetycznym lub przemieszczać się po linie zawieszonej między drzewami jak małpa? Możliwości jest naprawdę wiele.

Pamiętajmy, żeby na początek nie “porywać się z motyką na słońce”, czyli warto dostosowywać swoje możliwości do oczekiwanych rezultatów. Dla osoby zupełnie początkującej budowa robota umożliwiającego rozpoznawanie mowy i obrazu może okazać się tak trudna, że ta straci cały swój zapał i rzuci budowany układ w kąt. Dlatego warto zaczynać od czegoś prostego, by widzieć efekty swoich starań.

Wybór rozwiązań

Kiedy wiemy, czego chcemy od robota, trzeba ustalić, w jaki sposób możemy to osiągnąć. Jeżdżenie na kołach najłatwiej będzie zrealizować przy użyciu silników prądu stałego. Do pływania potrzebna będzie śruba napędowa i odchylana na boki płetwa sterowa.

Chwytanie i przenoszenie obiektów a także wciskanie przycisków da się zrealizować manipulatorami, które będą sterowane serwomechanizmami. Ale nie tylko, bo pomocne mogą być również elektromagnesy.

Być może na tym etapie trzeba będzie zrewidować swoje początkowe wymagania co do robota. Niektóre funkcje mogą być wzajemnie sprzeczne lub okazać się zbyt drogie w realizacji.

Trzeba wtedy wybrać inne, tańsze rozwiązania lub chwilowo odłożyć pomysł na półkę. Pamiętajmy, że bogatym źródłem komponentów - zwłaszcza mechanicznych - mogą być zwykłe złomowiska. Da się na nich za niewielkie pieniądze pozyskać gotowe mechanizmy. Nie będą tak ładne jak ze sklepu, ale na pewno sporo tańsze.

Komunikacja ze światem

W jaki sposób nasz robot ma “czuć” swoje otoczenie? Będzie mu potrzebny czujnik światła, dźwięku albo wilgotności? A może żyroskopowy czujnik położenia do ustalenia, czy się nie przewrócił? Niezależnie od tego, co ma robić nasz robot, musi on zbierać informacje o swoim otoczeniu, aby mógł prawidłowo na nie reagować. Na przykład odjechać od ściany lub wrócić na zadany tor.

To samo zagadnienie występuje w drugą stronę. W jaki sposób robot ma nam, ludziom, coś przekazać? Będzie miał wbudowany wyświetlacz, diody LED, brzęczyk albo głośnik? A może moduł Bluetooth, za pomocą którego pokaże nam wszystko na ekranie naszego telefonu? Warto, aby robot miał z nami chociażby podstawową komunikację, aby mógł przekazać informację o błędzie lub awarii.

Na tym etapie warto wybrać mikrokontroler sterujący robotem. Będzie nim Arduino, Raspberry Pi, czy jeszcze jakiś inny układ? Od niego zależą możliwości algorytmu sterującego, który będzie zarządzał pracą naszego cacka.

Mechanika i elektronika

Po wyborze konkretnych mechanizmów i czujników, trzeba sprzęgnąć je ze sobą. To nie jest proste zadanie, ale z pewnością kształcące. Część mechaniczna robota musi działać pewnie i bez zacięć. Inaczej nasz robot może nagle stanąć w najmniej oczekiwanym miejscu, a nawet spalić tym silnik. Nie chcielibyśmy tego!

Razem z mechaniką trzeba “wplatać” w robota elektronikę, która go ożywi. Sieć przewodów będzie ciągnęła się od czujników do jednostki sterującej. W ten sam sposób będą połączone układy wykonawcze, sygnalizatory, lampki, diody, wyświetlacze i wszystko to, co chcemy zawrzeć w naszym robocie.

Trzeba przewidzieć miejsce na akumulator o odpowiedniej pojemności lub inne źródło - może baterie albo ogniwo fotowoltaiczne? Ciężkie źródło energii wymusi stosowanie mocnych napędów, zaś lekkie może mieć zbyt mała pojemność, aby robot funkcjonował przez sensowny czas. Tutaj, jak i w każdym innym miejscu, potrzebny jest zdrowy kompromis.

Oprogramowanie

Nawet najlepiej przemyślany robot nie mógłby funkcjonować, gdyby nie miał algorytmu działania. Bez niego jak zwykłą kupką elementów. Poszczególne podzespoły muszą wiedzieć, jak się zachować w określonych sytuacjach. Do tego dochodzi konieczność konfiguracji bardziej złożonych modułów, na przykład do komunikacji poprzez Bluetooth.

Napisanie dobrego kodu to wiele godzin pracy. Pierwsze projekty robotów, których zadaniem jest np. proste omijanie przeszkód, będą miały dosyć prosty program. Dopiero następne, bardziej rozbudowane pomysły będą również bardziej czasochłonne. W ferworze walki może minąć niejedna noc!

Testy, testy...

Co jest najbardziej czasochłonnym etapem budowy jakiegokolwiek urządzenia? Nie opracowanie koncepcji, nie dobór podzespołów, nawet nie napisanie oprogramowania. To testy. Poddawanie naszego urządzenia różnym próbom, niekiedy nawet bardzo wymyślnym, w trakcie których musimy sprawdzić, czy jego systemy działają prawidłowo.

Czy silniki zawsze reagują poprawnie po dojechaniu do przeszkody? Czy czujnik ultradźwiękowy zawsze daje prawidłowe wskazania, może jest zbyt blisko ramienia? Czy akumulator nie rozładowuje się zbyt szybko? Może serwomechanizm obsługujący wysięgnik przez cały czas pobiera prąd i trzeba go wyłączać?

Poddawanie urządzenia różnym próbom i wyłapywanie błędów oraz szukanie ich przyczyn zużywają większość czasu, jaki poświęca się na budowę jakiegokolwiek układu. Amatorski robot-zabawka będzie pod tym względem mniej czasochłonny niż specjalizowany robot chirurgiczny, lecz zależność jest podobna.

I na koniec

Jeżeli wszystko działa, pozostaje nam cieszyć się z własnoręcznie zbudowanego robota. Niezależnie, czy to jest prosty pojazd, czy też bardziej złożona konstrukcja, która - na przykład - chodzi, trzeba mieć satysfakcję z dobrze wykonanej pracy!

Zapewne niedługo pojawią się pomysły na następne roboty. Jeżeli siły twórcze chcą się uwolnić, trzeba dać im taką szansę. Przyda się to zwłaszcza dzieciom, które mogą w ten sposób rozwijać się w wielu dziedzinach jednocześnie.

Podsumowanie

W dzisiejszych czasach każdy może zbudować robota. Nawet kompletny laik, człowiek zupełnie niezwiązany z techniką, jest w stanie sam złożyć proste urządzenie, które będzie reagowało na podstawowe bodźce z otoczenia. Mamy do dyspozycji wiele pomocy, jak klocki z przyjaznym interfejsem programowania, które pomogą zaznajomić się z podstawowymi elementami programów: pętlami, funkcjami czy zmiennymi.

Ci, którzy są bardziej zaawansowani w elektronice lub programowaniu, również mogą spróbować swoich sił. Szeroki wybór gotowych czujników, układów wykonawczych i napędów upraszczają konstrukcję robota i czynią ją bardziej niezawodną. Takie moduły są już przetestowane i sprawdzone, więc możemy mieć pewność, że funkcjonują bez zarzutu.

Pokaż więcej wpisów z Grudzień 2023
Prawdziwe opinie klientów
4.9 / 5.0 5033 opinii
pixel