Деталі електронної книги

Roboty JavaScript od podstaw. Projekty NodeBots dla platformy Johnny-Five z wykorzystaniem płytek Raspberry Pi, Arduino oraz BeagleBone

Roboty JavaScript od podstaw. Projekty NodeBots dla platformy Johnny-Five z wykorzystaniem płytek Raspberry Pi, Arduino oraz BeagleBone

Rick Waldron, Andrew Fisher, Lyza Danger Gardner

Eлектронна книга

Powszechnie JavaScript uważa się za doskonałe narzędzie do programowania aplikacji internetowych. To jednak nie wszystko: ten język świetnie nadaje się również do programowania robotów. Umożliwia zaprojektowanie zachowania robota, określenie, w jaki sposób będzie on zmierzał do celu, reagował na sygnały z otoczenia, oczekiwał na instrukcje czy omijał przeszkody. Bardzo wygodnym narzędziem do programowania robotów jest platforma Johnny-Five. Umożliwia ona programowanie robotów zbudowanych z płytek Arduino, Raspberry Pi i BeagleBone.

Dzięki tej książce można nauczyć się budowania i programowania robotów o najrozmaitszej funkcjonalności i wielu zastosowaniach. Do jej napisania Rick Waldron zaprosił czternastu mistrzów JS — inżynierów, nauczycieli, popularyzatorów i liderów. Dowiesz się od nich, w jaki sposób zbudować poszczególne elementy robota, jakie części zastosować i jak napisać potrzebny kod. Podpowiedzą Ci, jak przygotować sobie warsztat pracy oraz zdobyć potrzebne materiały. Znajdziesz tu mnóstwo wskazówek pomocnych przy planowaniu, budowie i testowaniu już istniejących projektów. Poszczególne zadania zostały tak dobrane, aby po ich wykonaniu można było zabrać się za trudniejsze projekty, o wyższym stopniu złożoności.

Zbuduj i zaprogramuj:

  • roboty kroczące, piszące, pływające, a nawet tańczące
  • domowy zegar słoneczny
  • robota sterowanego głosem
  • robota do sterowania oświetleniem
  • system monitoringu
  • robota ze sztuczną inteligencją
  • robota delta
  • interaktywne buty

Przedmowa (11)

1. Budowanie robotów ze zwykłych materiałów (15)

  • Budowa robota SimpleBot (16)
    • Wykaz materiałów (16)
    • Etapy budowy (17)
    • Instalacja pakietów Node.js (20)
    • Sprawdzenie urządzenia za pomocą podstawowego programu (20)
    • Diagnostyka problemów (21)
    • Prosty program sterujący (21)
    • Diagnostyka problemów (23)
  • Odcięcie przewodu (24)
    • Budowa bezprzewodowego robota SimpleBot (24)
    • Połączenia (24)
    • Sterowanie robotem SimpleBot (25)
    • Diagnostyka problemów (28)
  • Co dalej? (29)

2. Robot piszący TypeBot (31)

  • Wykaz materiałów (31)
    • Informacje o serwomotorach (32)
  • Anatomia ramienia robota (33)
    • Konstrukcja ramienia (33)
    • Warunki związane z ruchem ramienia (34)
  • Budowa części mechanicznej (34)
    • Podstawa i ramię (34)
    • Łokieć (35)
    • Nadgarstek (36)
    • Palec (37)
    • Mózg (37)
  • Utworzenie programu (38)
    • Utworzenie plików projektu (38)
    • Sterowanie serwomotorami (38)
    • Inicjalizacja (41)
    • Określenie sekwencji naciśnięć klawiszy (43)
    • Pierwsze uruchomienie (46)
    • Dokładna regulacja ramienia (46)
  • Co dalej? (47)

3. Pierwsze kroki z robotami NodeBoat (49)

  • Wykaz materiałów (50)
    • Narzędzia (50)
  • Zasobnik z silnikiem (51)
    • Po co stosować sterownik silnika? (51)
    • Komponenty zasobnika silnika (51)
    • Modyfikacja silnika (52)
    • Montaż silnika (53)
    • Sprawdzenie silnika (53)
    • Przygotowanie silnika (53)
    • Otwór w zasobniku na silnik (54)
    • Zamknięcie zasobnika na silnik (55)
    • Uszczelnienie przewodów (55)
  • Konfiguracja modułu Spark (56)
    • Test modułu Spark (56)
  • Twój pierwszy program Spark (57)
  • Przylutowanie sterownika silnika (58)
  • Połączenie komponentów łodzi (58)
    • Zasilanie sterownika silnika (59)
    • Połączenie modułu Spark i sterownika silnika (60)
    • Podłączenie silnika (61)
  • Sterowanie silnikiem: kod (62)
    • Obsługa zdarzenia naciśnięcia klawisza (62)
    • Zapisywanie stanu klawiszy (63)
  • Wodowanie łodzi (64)
  • Sterowanie łodzią za pomocą serwomotoru (66)
    • Programowanie serwomotoru (66)
    • Montaż steru (68)
  • Pierwszy rejs (69)
  • Co dalej? (69)

4. Mobilna platforma piDuino5 (71)

  • Wykaz materiałów (72)
    • Instalacja platformy Node.js na płytce Raspberry Pi (73)
    • Pobranie kodu piDuino5 i zależności (73)
    • Narzędzia (73)
  • Konfiguracja płytek i instalacja oprogramowania (73)
    • Podłączenie Arduino (74)
    • Przegląd kodu app.js (74)
    • Sprawdzenie platformy Johnny-Five za pomocą protokołu WebSocket (74)
    • Inicjalizacja platformy Johnny-Five (75)
    • Sterowanie urządzeniami (75)
    • Sterowanie z małymi opóźnieniami za pomocą protokołu WebSocket (75)
    • Połączenie z każdego miejsca (76)
  • Montaż komponentów (76)
    • Wysłanie adresu do aplikacji WWW (78)
  • Sterowanie za pomocą smartfona (78)
    • Pobranie aplikacji WWW do sterowania robotem piDuino5 (78)
    • Sprawdź aplikację WWW na telefonie (79)
  • Przegląd plików app.js i index.html (79)
    • Zapisanie lokalnego adresu IP (79)
    • Udostępnienie interfejsu użytkownika (79)
    • Dotykowy joystick (80)
    • Nawiązanie połączenia (80)
    • Wysyłanie poleceń (80)
  • Co dalej? (81)

5. Sterowanie heksapodem za pomocą platformy Johnny-Five (83)

  • Wykaz materiałów (83)
  • Sterowanie robotem za pomocą wiersza poleceń (84)
  • Wprowadzenie do programu phoenix.js (85)
  • Montaż robota (86)
    • Przygotowanie szkieletu (87)
    • Montaż komponentów elektronicznych (87)
    • Przygotowanie serwomotorów (87)
    • Montaż stawów biodrowych (88)
    • Montaż segmentów udowych (89)
    • Montaż segmentów piszczelowych (89)
  • Układ współrzędnych (90)
  • Regulacja serwomotorów (91)
    • Regulacja stawów biodrowych (91)
    • Regulacja segmentów udowych (92)
    • Regulacja segmentów piszczelowych (92)
  • Określenie zakresów ruchu serwomotorów (92)
  • Chodzenie jest trudne! (93)
  • Poznaj klasę Animation (94)
    • Tabela serwomotorów jako grupa docelowa (94)
    • Obiekt Servo.Array jako grupa docelowa (94)
    • Tabela obiektów Servo.Array jako grupa docelowa (94)
  • Pierwszy segment animacyjny (95)
  • Chodzenie (98)
    • Wiosłowanie (row) (98)
    • Marsz (walk) (99)
    • Bieg (run) (100)
  • Lista poleceń (100)
  • Obracanie robota (100)
  • Co dalej? (101)

6. Budowanie robota NodeBot sterowanego głosem (103)

  • Wykaz materiałów (103)
    • Płytka BeagleBone Black (105)
  • Tworzenie projektu (106)
  • Budowa obwodu przekaźnika (106)
    • Sterowanie obwodem za pomocą platformy Johnny-Five (107)
  • Budowa obwodu mikrofonu (108)
    • Obsługa mikrofonu i przekaźnika za pomocą kodu Johnny-Five (108)
  • Tworzenie serwera poleceń (110)
  • Prosty kontroler głosowy wykorzystujący interfejs Web Speech API (112)
  • Integracja serwera poleceń z obwodem przekaźnika (112)
  • Zaawansowany kontroler głosowy wykorzystujący gadżet z Androidem (115)
    • Aplikacja przenośna dla systemu Android (115)
    • Aplikacja dla gadżetu z Androidem (120)
  • Co dalej? (123)

7. Pokojowy zegar słoneczny (125)

  • Wykaz materiałów (126)
    • Elementy z pianki PCV (126)
  • Budowanie zegara słonecznego (128)
  • Wycinanie elementów i przygotowanie głównej konstrukcji (129)
    • Przygotowanie płyty montażowej (129)
  • Podłączenie i konfiguracja serwomotorów (130)
    • Podłączenie serwomotorów (130)
    • Konfiguracja serwomotorów (131)
  • Przygotowanie tarcz (132)
  • Przygotowanie ścianek i podparcia tarczy podstawowej (133)
    • Przygotowanie ścianek (133)
    • Umieszczenie tarcz (134)
    • Przygotowanie podparcia tarczy (134)
  • Wykonanie ostatnich elementów i montaż zegara (136)
    • Przygotowanie ramienia azymutu (136)
    • Przygotowanie łuku wysokości (137)
    • Wycięcie gnomonu (138)
    • Podłączenie "słońca" (138)
  • Kod, który wszystkim steruje (139)
    • Program sundial.js (140)
    • Dane konfiguracyjne w programie sundial.js (140)
    • Szczegóły programu sundial.js (141)
  • Złóż wszystko razem! (143)
  • Włącz zegar! (144)
  • Co dalej? (144)

8. Światełka-straszydełka (145)

  • Wykaz materiałów (145)
    • Dobór kontrolera matrycy (146)
  • Teoria (146)
    • Co to jest matryca LED? (147)
  • Budowa łańcucha światełek (147)
    • Potrzebne narzędzia (148)
    • Przygotowanie matryc (149)
    • Przygotowanie kabla (150)
    • Diagnostyka (153)
  • Sterowanie matrycą LED (153)
    • Przygotowanie płytki Arduino (153)
    • Dekorowanie łańcucha światełek (153)
    • Opcje konstruktora klasy Matrix (154)
    • Rysowanie wzorów na matrycy (154)
    • Uruchomienie programu testującego (154)
  • Utworzenie aplikacji WWW (155)
    • Narzędzia programistyczne (155)
    • Korzystanie z generatora express (155)
    • Utworzenie interfejsu API (156)
    • Utworzenie interfejsu użytkownika (157)
    • Rozbudowa aplikacji (158)
  • Co dalej? (158)

9. Lampa CheerfulJ5 (159)

  • Wykaz materiałów (159)
  • Zbudowanie obwodu (160)
  • Kod do lampy CheerfulJ5 (161)
    • Połączenie z płytką Arduino (161)
    • Sterowanie diodą RGB (162)
    • Użycie platformy Node.js i pętli REPL (163)
    • Zdefiniowanie mapy kolorów usługi CheerLights (163)
    • Dostęp do usługi CheerLights za pomocą interfejsu ThingSpeak API (164)
    • Korzystanie z interfejsu Twitter Streaming API (165)
  • Łączność bezprzewodowa dzięki zestawowi Spark WiFi Development Kit (169)
    • Umieszczenie modułu Spark w obwodzie (169)
    • Zastosowanie wtyczki Spark-io (170)
    • Przełączenie na zasilanie z akumulatora (170)
  • Umieszczenie obwodu w obudowie (171)
  • Co dalej? (172)

10. Interaktywny panel LED RGB z płytką BeagleBone Black (173)

  • Wykaz materiałów (174)
    • Płytka BeagleBone Black (174)
    • Adapter WiFi (opcjonalny) (174)
    • Zewnętrzny zasilacz 5 V (opcjonalny) (174)
    • Panel LED RGB (175)
    • Czujniki (175)
    • Inne komponenty (175)
  • Pierwsze kroki: oprogramowanie (175)
    • Oprogramowanie LEDScape (175)
    • Podłączenie panelu RGB LED (176)
  • Podłączenie panelu RGB LED (176)
  • Czas na kod! Użyj języka JavaScript (178)
    • Uruchomienie skryptu testowego (179)
    • Zastosowanie platformy Johnny-Five i obudowy beaglebone-io (181)
    • Podłączenie fotorezystora (183)
    • Zmienianie kolorów za pomocą przyspieszeniomierza (185)
  • Co dalej? (187)

11. Osobiste bezpieczeństwo, JavaScript i Ty (189)

  • Prosty czujnik ultradźwiękowy (190)
    • Implementacja (190)
  • Urządzenie ultradźwiękowe wysyłające SMS-y (193)
    • Implementacja (193)
  • System monitoringu (194)
    • Implementacja (194)
  • Laser robi wrażenie na wrogach i przyjaciołach (195)
    • Implementacja (195)
  • Wskaźnik stanu, przyciski i diody LED (196)
    • Implementacja (198)
  • Co dalej? (201)

12. Sztuczna inteligencja: robot BatBot (203)

  • Sztuczna inteligencja - podstawy (203)
    • Roboty semiautonomiczne (204)
    • Roboty autonomiczne (204)
    • Robot BatBot (204)
    • Roboty zdalnie sterowane (204)
  • Wykaz materiałów (205)
    • Uwagi dotyczące materiałów (206)
  • Montaż (206)
  • Krok 1. Zdalne sterowanie (207)
    • Poruszanie robotem (208)
    • Sterowanie robotem (210)
    • Ustawianie czujnika ultradźwiękowego i odczyt sygnału (210)
  • Krok 2. Autonomia (211)
    • Implementacja algorytmu (213)
  • Diagnostyka (215)
  • Co dalej? (216)

13. Roboty delta i kinematyka (217)

  • Wykaz materiałów (218)
  • Anatomia robota delta (219)
  • Budowa robota Junky Delta (220)
    • Wprawienie robota w ruch (223)
    • Określanie położenia w kinematyce (225)
  • Bardziej zaawansowane roboty delta (229)
    • Robot TapsterBot (229)
    • Robot Army (229)
  • Co dalej? (230)

14. Interaktywne buty (231)

  • Wykaz materiałów (231)
  • Opis elementów (231)
  • Przygotowanie czujników (234)
    • Przylutowanie przewodów do czujników (234)
    • Umieszczenie czujników w butach (235)
    • Wyprowadzenie przewodów na zewnątrz buta (235)
  • Połączenie butów (235)
    • Przygotowanie przewodu spiralnego (235)
  • Podłączenie butów do płytki Arduino (237)
    • Przygotowanie przewodów (237)
    • Przylutowanie płytki Arduino (238)
    • Przymocowanie płytki Arduino do prawego buta (238)
  • Tworzenie kodu opartego na platformie Johnny-Five (238)
    • Podłączenie do platformy Johnny-Five (238)
    • Konfiguracja czujników (239)
    • Wyświetlanie danych z czujników (239)
    • Przykładowe zachowania (240)
  • Co dalej? (241)

A. Dodatek (243)

  • Instalacja biblioteki Node.js (243)
  • Instalacja platformy Johnny-Five (243)
    • Diagnostyka (244)
    • Dodatkowe informacje (244)
  • Konfigurowanie sprzętu (244)
    • Arduino (244)
    • BeagleBone Black (244)
    • Raspberry Pi (244)
    • Zestaw Particle WiFi Development Kit (245)
  • Programowanie w systemie Android (247)
    • Instalacja oprogramowania Android Studio (247)
    • Tworzenie projektu Android (247)
    • Instalacja biblioteki Volley (248)

Skorowidz (249)

  • Назва: Roboty JavaScript od podstaw. Projekty NodeBots dla platformy Johnny-Five z wykorzystaniem płytek Raspberry Pi, Arduino oraz BeagleBone
  • Автор: Rick Waldron, Backstop Media (lista współautorów w uwagach dodatkowych)
  • Оригінальна назва: Make: JavaScript Robotics: Building NodeBots with Johnny-Five, Raspberry Pi, Arduino, and BeagleBone
  • Переклад: Andrzej Watrak
  • ISBN: 978-83-283-2058-1, 9788328320581
  • Дата видання: 2016-04-10
  • Формат: Eлектронна книга
  • Ідентифікатор видання: roboty
  • Видавець: Helion