Programowanie robotów. Sterowanie pracą robotów autonomicznych - Helion
Tytuł oryginału: Robot Programming: A Guide to Controlling Autonomous Robots
TÅ‚umaczenie: Konrad Matuk
ISBN: 978-83-283-2937-9
stron: 352, Format: 168x237, okładka: miękka
Data wydania: 2017-01-13
Księgarnia: Helion
Cena książki: 59,00 zł
Roboty, te fascynujące maszyny, stają się coraz ważniejszym elementem naszej cywilizacji. Mają one przeróżne konstrukcje i zastosowania: rozbrajają bomby, badają odległe ciała niebieskie, montują samochody i... odkurzają dywany. Wykonują prace niebezpieczne dla człowieka, zbyt trudne albo po prostu męczące i nudne. Być może wkrótce w szpitalach i domach opieki zajmą się pielęgnacją obłożnie chorych. Roboty działają automatycznie, nieraz ciesząc się sporą dozą autonomii. Tym, co czyni je mniej lub bardziej inteligentnymi maszynami, jest oprogramowanie. Oznacza to, że programowanie robotów staje się niezwykle cenną umiejętnością!
W tej książce przedstawiono wszystkie informacje niezbędne do rozpoczęcia samodzielnej pracy z programowaniem różnych robotów: od tych całkiem prostych aż do zaawansowanych, wielofunkcyjnych urządzeń. Wyjaśniono metody programowania telerobotów, robotów autonomicznych, a także strategie programowania robotów hybrydowych. Przedstawiono zasady programowania ruchów robota za pomocą silników i obsługi różnego rodzaju czujników. Zawarto również opis technik programowania algorytmów podejmowania decyzji przez robota, wyjaśniono też kwestie przekładania instrukcji (poleceń) z języka ludzi na język zrozumiały dla robota.
Najważniejsze zagadnienia omówione w książce:
- programowanie czujników i silników robota
- wydawanie robotowi instrukcji
- wizualny plan scenariusza pracy robota
- zaprogramowanie robota tak, aby radził sobie w niespodziewanych sytuacjach
- warunki środowiskowe, autonomia i kwestie bezpieczeństwa pracy robota,
- różne techniki pracy z mikrokontrolerami LEGO Mindstorms EV3, Arduino i innymi
Zaprogramuj robota i stwórz maszynę przyszłości!
Cameron Hughes programuje komputery i roboty. Obecnie zajmuje się technologiami AIM (alternatywna inteligencja maszyn) i AIR (alternatywna inteligencja robotów). Hughes jest również programistą analitykiem na stanowym uniwersytecie Youngstown.
Tracey Hughes jest programistkÄ…, tworzy także systemy przeznaczone do wizualizacji epistemicznej. Pracuje nad metodami graficznej wizualizacji „myÅ›lenia” robotów i komputerów. Cameron i Tracey Hughes sÄ… czÅ‚onkami rady doradczej fundacji National Robotics Education Foundation.
Osoby które kupowały "Programowanie robotów. Sterowanie pracą robotów autonomicznych", wybierały także:
- Arduino. Kurs video. Poziom pierwszy. Podstawowe techniki dla własnych projektów elektronicznych 99,00 zł, (44,55 zł -55%)
- Arduino od podstaw 49,90 zł, (24,95 zł -50%)
- TinyML. Wykorzystanie TensorFlow Lite do uczenia maszynowego na Arduino i innych mikrokontrolerach 99,00 zł, (49,50 zł -50%)
- Elektronika i internet rzeczy. Przewodnik dla ludzi z prawdziwą pasją 89,00 zł, (44,50 zł -50%)
- Płytki drukowane (PCB). Nauka i projekty od podstaw 39,90 zł, (19,95 zł -50%)
Spis treści
Programowanie robotów. Sterowanie pracą robotów autonomicznych -- spis treści
Wstęp - Początek przygody z robotami (11)
- Rozpoczynamy pracÄ™ z robotami (11)
- Gotowi, do biegu, start! Ostra jazda bez trzymanki (12)
- Podstawy pracy z robotem (13)
- Najważniejsze techniki programowania robotów zaprezentowane w tej książce (13)
- Podstawowy uniwersalny mechanizm tłumaczący - PUMT (14)
- Inteligentna sieć robotów (ISR) (15)
- ZaÅ‚ożenia dotyczÄ…ce robotów posiadanych przez czytelnika (16)
- Jak Midamba nauczył się programować robota (17)
1. Czym właściwie jest robot? (19)
- Siedem kryteriów definiujÄ…cych robota (20)
- Kryterium nr 1: Wykrywanie zmiennych środowiskowych (20)
- Kryterium nr 2: Programowalne działania i zachowania (20)
- Kryterium nr 3: Reagowanie na zmienne środowiskowe i interakcja z otoczeniem (21)
- Kryterium nr 4: ŹródÅ‚o prÄ…du (21)
- Kryterium nr 5: JÄ™zyk, w którym zapisywane sÄ… instrukcje i dane (21)
- Kryterium nr 6: Autonomia bez pomocy z zewnÄ…trz (21)
- Kryterium nr 7: Robot nie jest organizmem żywym (22)
- Kategorie robotów ze wzglÄ™du na Å›rodowisko dziaÅ‚ania (22)
- Co to jest czujnik? (25)
- Co to jest siłownik? (26)
- Co to jest efektor końcowy? (27)
- Co to jest mikrokontroler? (28)
- Jaki jest scenariusz pracy robota? (32)
- Wydawanie instrukcji robotowi (34)
- Każdy robot posługuje się jakimś językiem (34)
- RozwiÄ…zanie problemu niekompatybilnoÅ›ci jÄ™zyka ludzkiego i jÄ™zyka zrozumiaÅ‚ego dla robotów (35)
- Reprezentacja scenariusza pracy robota w środowisku programowania wizualnego (38)
- KÅ‚opoty Midamby (39)
- Co dalej? (40)
2. SÅ‚ownictwo robotów (43)
- Dlaczego korzystanie z tych jÄ™zyków wymaga wysiÅ‚ku? (43)
- Zidentyfikuj czynności (49)
- Model ontologii jÄ™zyka programowania autonomicznych robotów (49)
- Potencjał robota (51)
- Role odgrywane przez roboty w różnych sytuacjach i scenariuszach pracy (52)
- Co dalej? (54)
3. Wizualne planowanie scenariusza pracy robota (57)
- Mapowanie scenariusza pracy robota (58)
- Tworzenie planu miejsca pracy robota (59)
- Otoczenie robota (61)
- Opis atrybutów Å›rodowiska pracy robota (63)
- Wizualne planowanie scenariusza pracy robota za pomocÄ… pseudokodu i schematu blokowego (66)
- Przepływ sterowania i struktury sterujące (70)
- Podprocedury (74)
- Diagramy stanów robotów i obiektów (76)
- Tworzenie diagramu stanów (78)
- Co dalej? (82)
4. Sprawdzanie rzeczywistych możliwości robota (83)
- Testowanie rzeczywistych możliwości mikrokontrolera (85)
- Testowanie rzeczywistej wydajnoÅ›ci czujników (89)
- OkreÅ›lanie ograniczeÅ„ czujników robota (91)
- OkreÅ›lanie ograniczeÅ„ efektorów koÅ„cowych (93)
- Ocena efektywności pracy robota (96)
- Co dalej? (98)
5. Czujniki pod lupÄ… (99)
- Co wykrywajÄ… czujniki? (99)
- Czujniki analogowe i cyfrowe (103)
- Odczyt sygnaÅ‚ów analogowych i cyfrowych (104)
- Sygnał wyjściowy czujnika (106)
- Gdzie przechowywane sÄ… odczyty? (107)
- Czujniki aktywne i pasywne (108)
- Komunikacja między czujnikami a mikrokontrolerami (110)
- Atrybuty czujników (114)
- Zakres i rozdzielczość (114)
- Precyzja i dokładność (116)
- Liniowość (117)
- Kalibracja czujników (118)
- Problemy zwiÄ…zane z czujnikami (119)
- Proces kalibracji przez użytkownika (119)
- Metody kalibracji (120)
- Co dalej? (121)
6. Programowanie czujników (123)
- Korzystanie z czujnika koloru (124)
- Tryby pracy czujników koloru (126)
- Zakres wykrywania (126)
- Światło w środowisku pracy robota (127)
- Kalibracja czujnika koloru (128)
- Programowanie czujnika koloru (129)
- Wykrywanie i Å›ledzenie obiektów za pomocÄ… cyfrowych kamer (132)
- Åšledzenie kolorowych obiektów za pomocÄ… sprzÄ™tu firmy RS Media (132)
- Åšledzenie kolorowych obiektów za pomocÄ… czujnika obrazu Pixy (136)
- Uczenie Pixy wykrywania obiektów (137)
- Programowanie kamery Pixy (138)
- Analiza atrybutów (141)
- Czujnik ultradźwiękowy (142)
- Ograniczenia i dokładność czujnika ultradźwiękowego (142)
- Tryby pracy czujnika ultradźwiękowego (147)
- Odczytywanie próbek (147)
- Typy danych używane do przechowywania wartoÅ›ci odczytanych za pomocÄ… czujników (148)
- Kalibracja czujnika ultradźwiękowego (148)
- Programowanie czujnika ultradźwiękowego (150)
- Kompas - czujnik określający zwrot robota (159)
- Programowanie kompasu (161)
- Co dalej? (163)
7. Programowanie silników i serwomotorów (165)
- Siłowniki są przetwornikami wyjściowymi (165)
- Parametry silników (166)
- Napięcie (166)
- Natężenie prądu (166)
- Prędkość (166)
- Moment obrotowy (167)
- Opór elektryczny (167)
- Różne rodzaje silników prÄ…du staÅ‚ego (167)
- Silniki prądu stałego (167)
- Moment obrotowy i prędkość obrotowa (171)
- Silniki z przekładniami (172)
- Konfiguracja silnika: bezpośrednie i pośrednie układy przeniesienia napędu (182)
- Wyzwania zwiÄ…zane z terenem (184)
- Radzenie sobie z wyzwaniami zwiÄ…zanymi z terenem (184)
- Moment obrotowy a mechaniczne ramiona i efektory końcowe (187)
- Obliczanie wymagań dotyczących momentu obrotowego i prędkości obrotowej (188)
- Silniki a efektywność pracy robota (189)
- Programowanie ruchu robota (190)
- Ile silników? (191)
- Wykonywanie ruchów (192)
- Programowanie ruchów (192)
- Programowanie silników w celu przemieszczenia siÄ™ w okreÅ›lone miejsce (197)
- Programowanie silników sterowanych za pomocÄ… Arduino (203)
- Mechaniczne ramiona i efektory końcowe (205)
- Rodzaje mechanicznych ramion (205)
- Moment obrotowy mechanicznego ramienia (208)
- Rodzaje efektorów koÅ„cowych (210)
- Programowanie mechanicznego ramienia (212)
- Obliczenia zwiÄ…zane z kinematykÄ… (216)
- Co dalej? (220)
8. PoczÄ…tek pracy nad autonomiÄ…: tworzenie oprogramowania robota (221)
- Pierwsze spojrzenie na oprogramowanie autonomicznych robotów (223)
- Sekcja Części (225)
- Sekcja Akcje (225)
- Sekcja Zadania (226)
- Sekcja Scenariusze i sytuacje (226)
- Model ontologii języka robota i rama projektowa oprogramowania robota (226)
- Mechanizm tłumaczący PUMT przekształca ramy projektowe oprogramowania na klasy (228)
- Nasze pierwsze podejście do programowania autonomicznego robota (239)
- Co dalej? (240)
9. Åšrodowisko pracy robota (241)
- Robot musi sprawdzać uwarunkowania środowiskowe (242)
- Rozszerzony scenariusz pracy robota (242)
- Elementy, od których zależy efektywność robota (244)
- Co dzieje siÄ™ w przypadku niespeÅ‚nienia warunków wstÄ™pnych lub koÅ„cowych? (249)
- Jakie akcje mogÄ™ wybrać w przypadku niespeÅ‚nienia warunków wstÄ™pnych lub koÅ„cowych? (249)
- Analiza warunków koÅ„cowych inicjalizacji robota (250)
- Warunki wstępne i końcowe procesu rozruchu (251)
- Tworzenie kodu sprawdzającego warunki wstępne i końcowe (252)
- Skąd biorą się warunki wstępne i końcowe? (257)
- Sprawdzanie uwarunkowaÅ„ Å›rodowiskowych za pomocÄ… czujników i wizualne plany scenariusza pracy robota (261)
- Co dalej? (262)
10. Programowanie autonomicznych robotów i technika STORIES (263)
- To nie tylko czynności! (264)
- Impreza urodzinowa - podejście 2. (264)
- STORIES (265)
- Rozszerzony scenariusz pracy robota (267)
- Konwersja scenariusza pracy robota Unit1 na komponenty techniki STORIES (267)
- Ontologia scenariusza pod lupÄ… (267)
- Zwracanie uwagi na intencje robota (278)
- Programowanie obiektowe a wydajność (297)
- Co dalej? (298)
11. Jak Midamba zaprogramował swojego pierwszego autonomicznego robota? (299)
- Midamba i jego poczÄ…tkowy scenariusz (299)
- Midamba w ciÄ…gu jednego wieczoru zostaje programistÄ…! (299)
- Krok 1.: Scenariusz pracy robotów w magazynie (302)
- Krok 2.: Słownictwo i model ontologii języka robota w pierwszym scenariuszu pracy w fabryce (303)
- Krok 3.: Wizualne planowanie pierwszego scenariusza pracy wykonywanej przez robota w fabryce (305)
- Wizualny rozkład diagramu pracy z perspektywy robota (305)
- Ulepszony pierwszy scenariusz pracy robotów w fabryce (307)
- Schemat blokowy będący elementem wizualnego planowania scenariusza pracy robota (308)
- Diagram stanów wchodzÄ…cy w skÅ‚ad wizualnego planu scenariusza pracy robota (316)
- Sprawdzanie uwarunkowaÅ„ Å›rodowiskowych robotów Unit1 i Unit2 (317)
- Autonomiczne roboty pomagajÄ… Midambie wyjść z tarapatów (329)
- Co dalej? (332)
12. Otwarte roboty SARAA (333)
- Tanie, otwarte i proste roboty (333)
- Programowanie oparte na scenariuszu a bezpieczeństwo i odpowiedzialność programisty (335)
- Roboty SARAA dla każdego (335)
- Zalecenia dla osób programujÄ…cych robota po raz pierwszy (338)
- PeÅ‚ne plany scenariusza pracy robota, komponenty techniki STORIES i kod źródÅ‚owy scenariusza pracy robotów Midamby (338)
Glosariusz (339)
Skorowidz (343)