English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

gość
1 / ?
powrót do lekcji

Witaj

Witaj w robotyce — dyscyplinie inżynierskiej, w której mechanika, elektronika i oprogramowanie zbiegają się, aby budować maszyny, które postrzegają, decydują i działają.

Słowo robot pochodzi od czeskiego słowa robota, oznaczającego pracę przymusową. Karel Čapek ukuł go w sztuce z 1920 roku. Sto lat później roboty spawają samochody, badają Marsa, wykonują zabiegi chirurgiczne i czyszczą pokoje.

Nie każda zmechanizowana maszyna to robot. Toster ma automatyzację — grzeje i wyskauje — ale nie może postrzegać otoczenia ani się dostosować. Robot ma trzy istotne zdolności:

- Postrzegaj — zbieraj informacje o świecie za pomocą czujników

- Decyduj — przetwarzaj te informacje i wybierz działanie

- Działaj — porusz lub manipuluj światem fizycznym za pomocą aktuatorów

The Sense-Decide-Act Control Loop

Ta pętla postrzegaj-decyduj-działaj biegnie ciągle. Ramię fabryczne sprawdza pozycje stawów tysiące razy na sekundę. Łazik na Marsie analizuje obrazy terenu przed każdym poleceniem koła. Szybkość i złożoność pętli są różne, ale struktura jest taka sama.

Roboty istnieją na spektrum autonomii. Robot rozbrajający bomby sterowany zdalnie ma zerową autonomię — człowiek podejmuje każdą decyzję. Robot magazynowy, który nawiguje alejkami i unika przeszkód, ma autonomię częściową. Samochód autonomiczny dąży do pełnej autonomii, choć pozostaje to otwartym wyzwaniem inżynierskim.

Główne kategorie robotów:

- Roboty przemysłowe — ramiona na stałej podstawie, które spawają, lakierują, montują i paletyzują w fabrykach

- Roboty serwisowe — asystują ludziom w otoczeniach nieprodukcyjnych: roboty chirurgiczne, roboty dostawcze, roboty czyszczące

- Roboty mobilne — poruszają się w świecie: kołowe, na nogach, gąsienicowe, powietrzne (drony) i podwodne (ROV i AUV)

Ta lekcja obejmuje podstawowe budulce, które każdy robotyk musi rozumieć: aktuatory, czujniki, systemy sterowania, koncepcje programowania i ścieżki kariery.

Rozgrzewka

Szybka kontrola

Zobaczmy, od czego zaczynasz.

Czy kiedykolwiek budowałeś, programowałeś lub pracowałeś z jakimkolwiek robotem lub systemem zmechanizowanym? Jeśli tak, opisz, co robiłeś. Jeśli nie, co przychodzi Ci na myśl, gdy myślisz o robocie?

Silniki i ruch

Aktuatory: Jak roboty się poruszają

Aktuator to każde urządzenie, które zamienia energię w ruch fizyczny. Aktuatory to mięśnie robota.


Silniki DC — Najprostszy silnik elektryczny. Przyłóż napięcie, wał się obraca. Odwróć napięcie, obraca się w drugą stronę. Prędkość jest proporcjonalna do napięcia. Silniki DC są tanie i szybkie, ale nie mają wbudowanego sposobu na poznanie swojej pozycji. Są popularne w robotach kołowych i prostych mechanizmach.


Silniki krokowe — Poruszają się w dyskretnych krokach, zazwyczaj 1,8 stopnia na krok (200 kroków na obrót). Dajesz polecenie konkretnej liczby kroków, a silnik porusza się dokładnie o tę odległość. Silniki krokowe dają precyzyjną kontrolę pozycji bez czujnika, ale mogą stracić kroki pod ciężkim obciążeniem. Popularne w drukarkach 3D, routerach CNC i gimbalach do aparatów.


Serwomechanizmy — Silnik połączony z czujnikiem pozycji (enkoder) i kontrolerem w systemie pętli zamkniętej. Kontroler ciągle porównuje pozycję zadaną z pozycją rzeczywistą i koryguje jakikolwiek błąd. Serwomechanizmy oferują najlepszą kombinację szybkości, momentu obrotowego i precyzji. Przemysłowe ramiona robota prawie wyłącznie używają serwomechanizmów.


Aktuatory pneumatyczne — Używają sprężonego powietrza do tworzenia ruchu liniowego lub obrotowego. Szybkie i potężne na swoją wielkość, ale trudne do precyzyjnego sterowania, ponieważ powietrze jest ściśliwe. Popularne w zaciskach fabrycznych i maszynach pick-and-place.


Aktuatory hydrauliczne — Używają ciśnieniowego płynu (oleju) zamiast powietrza. Ponieważ płyn jest prawie nieściśliwy, hydraulika dostarcza ogromną siłę przy precyzyjnej kontroli. Ciężkie urządzenia budowlane, duże prasy przemysłowe i niektóre roboty na nogach (jak wczesny Atlas Boston Dynamics) używają hydrauliki. Kompromis to waga, złożoność i ryzyko wycieków płynu.


Stopnie swobody (DOF) — Każda niezależna oś ruchu to jeden stopień swobody. Typowe przemysłowe ramię robota ma 6 DOF: trzy do pozycjonowania końcówki w przestrzeni (X, Y, Z) i trzy do jej orientacji (roll, pitch, yaw). Ludzkie ramię ma 7 DOF. Więcej stopni swobody oznacza większą elastyczność, ale większą złożoność w sterowaniu i programowaniu.

Actuator types: DC motor, stepper, servo, hydraulic, and DOF comparison

Wybieranie właściwego aktuatora

Dopasowywanie aktuatorów do zadania

Wybieranie właściwego aktuatora wymaga zrozumienia wymagań aplikacji: prędkość, precyzja, siła i środowisko.

Inżynier projektuje ramię robota do systemu chirurgicznego. Ramię musi pozycjonować skalpel z dokładnością do 0,1 milimetra i utrzymywać go stabilnie podczas cięcia. Jaki typ aktuatora byś wybrał i dlaczego? Dlaczego alternatywy byłyby gorsze?

Jak roboty postrzegają świat

Czujniki: Zmysły robota

Bez czujników robot jest ślepy i głuchy. Czujniki dostarczają surowe dane, które napędzają każdą decyzję.


Enkodery — Mierzą obrót. Koder optyczny ma dysk ze szczelinami; światło przechodzi przez nich a detektor liczy impulsy, gdy dysk się obraca. Kontroler wie dokładnie, jak daleko przesunął się staw. Enkodery przyrostowe liczą ruch względny; enkodery absolutne raportują dokładny kąt przy włączeniu. Każdy serwomechanizm ma enkoder.


IMU (Inertial Measurement Units) — Łączą akcelerometry (mierzą przyspieszenie liniowe), żyroskopy (mierzą prędkość obrotu) i czasami magnetometry (mierzą kierunek magnetyczny). IMU mówi robotowi jego orientację i jak porusza się w przestrzeni. Krytyczne dla dronów, robotów na nogach i każdej mobilnej platformy, która musi pozostać zbalansowana.


LIDAR (Light Detection and Ranging) — Wysyła impulsy laserowe i mierzy czas dla każdego impulsu na powrót. To tworzy szczegółową mapę 2D lub 3D otoczenia. Samochody autonomiczne i roboty magazynowe używają LIDAR do wykrywania przeszkód i mapowania. Obracający się LIDAR może wyprodukować setki tysięcy pomiarów odległości na sekundę.


Kamery — Dostarczają bogate dane wizualne, ale wymagają znaczących obliczeń do interpretacji. Pojedyncza kamera daje obraz 2D; kamery stereo (dwie kamery ze znanym rozdzieleniem) dostarczają informacji o głębokości. Algorytmy wizji komputerowej przetwarzają dane kamer do rozpoznawania obiektów, śledzenia linii i wizualnego SLAM (Simultaneous Localization and Mapping).


Czujniki siły/momentu obrotowego — Mierzą siły i momenty obrotowe przyłożone w punkcie, zazwyczaj w przegubie lub końcówce robota. Niezbędne do zadań wymagających kontrolowanego kontaktu: montaż (wkładanie kołka w otwór), polerowanie i roboty kolaboracyjne, które muszą wykryć kontakt z człowiekiem i natychmiast się zatrzymać.


Fuzja czujników — Żaden czujnik nie jest doskonały. LIDAR daje precyzyjną odległość, ale bez koloru. Kamery dają bogate obrazy, ale walczą w ciemności. IMU dryfuje z czasem. Fuzja czujników łączy dane z wielu czujników, aby wytworzyć dokładniejszy i bardziej wiarygodny obraz niż jakikolwiek czujnik sam. Samochód autonomiczny łączy dane LIDAR, kamer, radaru, GPS i IMU ciągle.

Robot sensor types: encoder, IMU, LIDAR, camera, force/torque, and sensor fusion

Wybieranie czujników do zadania

Dopasowywanie czujników do misji

Wybór czujnika zależy od tego, co robot musi wiedzieć, środowiska i budżetu obliczeniowego.

Firma buduje autonomiczny wózek widłowy, który pracuje w magazynie. Musi nawigować między alejkami regałów, unikać ludzi spacerujących w pobliżu i podnosić palety w precyzyjnych lokalizacjach. Jakie czujniki byś wyposażył i dlaczego? Weź pod uwagę, co każdy czujnik wnosi, czego inne nie mogą.

Pętla otwarta vs pętla zamknięta

Sterowanie: Sprawianie, aby roboty się zachowywały

Robot bez sterowania to tylko zbiór części. Systemy sterowania to warstwa podejmowania decyzji — biorą dane czujników i obliczają polecenia, które napędzają aktuatory.


Sterowanie pętlą otwartą — Wyślij polecenie i miej nadzieję na najlepsze. Silnik krokowy poproszony o wykonanie 200 kroków będzie próbować, ale jeśli pod obciążeniem straci krok, nic nie wykryje błędu. Pętla otwarta jest prosta i tania, ale nie może korygować zaburzeń. Mikrofalówka to pętla otwarta: pracuje przez ustawiony czas, niezależnie od tego, czy jedzenie jest rzeczywiście gorące.


Sterowanie pętlą zamkniętą — Zmierz wyjście, porównaj je z wartością żądaną i popraw różnicę. To sterowanie ze sprzężeniem zwrotnym i jest fundamentem całej poważnej robotyki. Serwomechanizm to pętla zamknięta: enkoder mierzy rzeczywistą pozycję, kontroler porównuje ją z pozycją zadaną i dostosowuje napięcie silnika, aby zamknąć lukę.


Sterowanie PID — Najczęściej używany kontroler sprzężenia zwrotnego. PID to Proporcjonalny-Całkujący-Pochodny.

- P (Proporcjonalny): Korekta jest proporcjonalna do bieżącego błędu. Duży błąd, duża korekta. Ale sam P często przekracza lub osiąga równowagę z małym trwałym błędem.

- I (Całkujący): Akumuluje błąd z przeszłości w czasie. Jeśli system jest lekko wyłączony przez pewien czas, I się buduje i naciska mocniej. To eliminuje błąd stanu ustalonego, ale może powodować oscylacje, jeśli ustawić go za wysoko.

- D (Pochodny): Reaguje na to, jak szybko zmienia się błąd. Jeśli błąd szybko maleje (system zbliża się do celu), D zmniejsza korektę, aby zapobiec przekroczeniu. D działa jak tłumik.

Dostrajanie kontrolera PID — znalezienie właściwych wartości P, I i D — to część nauka, część rzemiosło. Za dużo P i system oscyluje. Za dużo I i się nagina i przekracza. Za dużo D i reaguje na szum. Rzeczywiste roboty często wymagają dostrojenia PID dla każdego stawu.


Stabilność — System sterowania jest stabilny, jeśli zbiegał się do żądanego stanu. System niestabilny oscyluje z rosnącą amplitudą — robot trzęsie się z powodu siebie. Analiza stabilności to kluczowa umiejętność w inżynierii sterowania.

PID closed-loop feedback diagram with P, I, and D term explanations

Zastosowanie koncepcji sterowania

Myślenie jak inżynier sterowania

Zrozumienie sprzężenia zwrotnego i PID to nie tylko teoria — to wyjaśnia, dlaczego roboty zachowują się w określony sposób.

Dron zawisa na wysokości 10 metrów. Poryw wiatru pchnie go w dół do 9,5 metra. Przejdź przez to, jak kontroler PID by zareagował, aby przywrócić go do 10 metrów. Co każdy komponent (P, I i D) wnosi do korekty?

Maszyny stanów i ROS

Oprogramowanie: Mózg robota

Oprogramowanie robota jest fundamentalnie inne niż oprogramowanie internetowe lub biznesowe. Działa w czasie rzeczywistym, oddziałuje z fizycznym sprzętem i musi gracjonalnie obsługiwać nieoczekiwane sytuacje — upuszczony przedmiot, zablokowany staw, człowiek wchodzący do przestrzeni roboczej.


Maszyny stanów — Najczęstszy wzór programowania w robotyce. Maszyna stanów definiuje zestaw stanów (takich jak IDLE, MOVING, GRIPPING, ERROR) i przejścia między nimi. Robot jest zawsze w dokładnie jednym stanie. Zdarzenia wyzwalają przejścia.

Na przykład robot pick-and-place:

- IDLE: czeka na polecenie

- MOVING_TO_PICK: podróży do lokalizacji podbioru

- GRIPPING: zamyka chwytak na obiekcie

- MOVING_TO_PLACE: nosi przedmiot do miejsca docelowego

- RELEASING: otwiera chwytак

- ERROR: coś poszło nie tak (przedmiot upuszczony, awaria stawu, przeszkoda wykryta)

Każdy stan ma zdefiniowane akcje wejścia, akcje wyjścia i warunki przejścia. Maszyny stanów uniemożliwiają robotowi robienie bezsensownych rzeczy — nie możesz zwolnić obiektu, który nigdy nie uchwyciłeś.


ROS (Robot Operating System) — Nie jest to właściwie system operacyjny. ROS to ramy middleware, które zapewniają infrastrukturę komunikacji, abstrakcję sprzętu i ogromną bibliotekę pakietów wielokrotnego użytku. Działa na Linuksie. Roboty zbudowane z ROS używają architektury publish-subscribe: węzły czujników publikują dane na tematy, a węzły sterowania subskrybują tematy, których potrzebują. Ten modułowy projekt oznacza, że możesz zmienić czujnik LIDAR bez przepisywania kodu nawigacji.


Planowanie ścieżki — Jak robot decyduje swoją trasę z punktu A do punktu B, unikając przeszkód. Proste podejścia to nawigacja poprzez punkty orientacyjne (śledź serię predefiniowanych punktów) i pola potencjału (przeszkody odpychają, cele przyciągają). Zaawansowane podejścia, takie jak A* i RRT (Rapidly-exploring Random Trees), szukają optymalnych lub wykonalnych ścieżek przez złożone środowiska. Samochody autonomiczne ponownie planują swoje ścieżki wiele razy na sekundę, gdy świat się zmienia.

Robot state machine, ROS publish-subscribe architecture, and A* path planning

Projektowanie zachowania robota

Myślenie o oprogramowaniu robota

Dobre oprogramowanie robota przewiduje nieudane i obsługuje je gracjonalnie.

Programujesz mobilnego robota magazynowego, który podnosi paczki z półek i dostarcza je do stanowiska pakowania. Zaprojektuj prostą maszynę stanów dla tego zadania. Wymień stany i dla każdego stanu opisz, co wyzwala przejście do następnego stanu. Dodaj co najmniej jeden stan błędu i wyjaśnij, co go wyzwala.

Kariery w robotyce

Budowanie kariery w robotyce

Robotyka szybko rośnie w produkcji, logistyce, opiece zdrowotnej, rolnictwie i obronie. Oto główne ścieżki kariery.


Technik robotyki — Instaluje, utrzymuje, diagnozuje i naprawia systemy robotyczne. To najbardziej dostępna ścieżka wejścia. Pracujesz praktycznie ze sprzętem — wymieniając silniki, kalibrując czujniki, przeprowadzając ponownie okablowanie kontrolerów i diagnozując usterki. Programy szkoły technicznej i certyfikacje producenta (FANUC, ABB, KUKA) mogą Cię uruchomić. Typowa pensja początkowa: 45 000–65 000 USD.


Inżynier sterowania — Projektuje i dostrajuje systemy sterowania, które sprawiają, że roboty zachowują się poprawnie. Ta rola wymaga silnych umiejętności matematycznych (algebra liniowa, równania różniczkowe) i umiejętności programowania. Inżynierowie sterowania pracują z dostrajaniem PID, profilowaniem ruchu, integracją czujników i systemami bezpieczeństwa. Tytuł licencjata w inżynierii elektrycznej, mechanicznej lub mechatroniki jest typowy. Zakres wynagrodzenia: 75 000–120 000 USD.


Deweloper ROS / Inżynier oprogramowania robotyki — Pisze oprogramowanie, które koordynuje percepcję, planowanie i sterowanie. Ci deweloperzy pracują w C++ i Pythonie, tworzą węzły ROS, wdrażają algorytmy planowania ścieżki i integrują modele uczenia maszynowego do percepcji. Niezbędne są silne umiejętności informatyki. Ta rola ma duży popyt dla pojazdów autonomicznych, robotów magazynowych i systemów dronów. Zakres wynagrodzenia: 90 000–150 000 USD.


Integrator automatyzacji — Projektuje i wdrażania kompletne komórki robocze robotyczne dla fabryk. Integrator rozwiązuje problem produkcyjny (spajaj te dwie części razem z szybkością 60 jednostek na godzinę), wybiera robota, końcówkę, system bezpieczeństwa i przenośnik, programuje całą komórkę i uruchamia ją na podłodze fabryki. Integratory potrzebują szerokiej wiedzy na temat mechaniki, elektroniki i oprogramowania. Wielu pracuje dla firm integracyjnych. Zakres wynagrodzenia: 70 000–110 000 USD.


Inne ścieżki — Projektanci mechanicznych, którzy tworzą struktury i mechanizmy robotów. Inżynierowie elektrycy, którzy projektują systemy zasilania i płytki obwodów. Naukowcy pracujący w badaniach, którzy przesuwają granice manipulacji, lokomocji i uczenia maszynowego do percepcji. Inżynierowie robotyki polowej, którzy wdrażają roboty w ekstremalnych środowiskach — pod wodą, pod ziemią lub w kosmosie.


Wspólny wątek: robotyka nagradza ludzi, którzy potrafią myśleć interdyscyplinarnie. Osoba czysto mechaniczna walczy bez umiejętności oprogramowania. Osoba czysto oprogramowania walczy bez zrozumienia fizyki. Najlepsi robocicy mają kształt T — głęboką eksperymentyzę w jednym obszarze z praktyczną wiedzą na wszystkich.

Robotics career paths: technician, controls engineer, ROS developer, automation integrator

Twoja ścieżka naprzód

Refleksja

Teraz omówiłeś podstawowe budulce: aktuatory, czujniki, systemy sterowania, wzory programowania i ścieżki kariery.

Na podstawie tego, czego nauczyłeś się w tej lekcji, który obszar robotyki Cię najbardziej interesuje i dlaczego? Jaki jest jeden konkretny krok, który mógłbyś podjąć w ciągu następnego miesiąca, aby zacząć rozwijać umiejętności w tym obszarze?