Szczegóły ebooka

Internet rzeczy. Podstawy programowania aplikacji i serwerów sieciowych w językach C/C++, MicroPython i Lua na urządzeniach IoT ESP8266, ESP32 i Arduino

Internet rzeczy. Podstawy programowania aplikacji i serwerów sieciowych w językach C/C++, MicroPython i Lua na urządzeniach IoT ESP8266, ESP32 i Arduino

Mariusz Duka

Ebook

Internet rzeczy to przykład koncepcji, która - w odróżnieniu od wielu innych relatywnie młodych dziedzin IT - została więcej niż pozytywnie zweryfikowana przez czas i rynek. Już dziś IoT znajduje bardzo szerokie zastosowanie w wielu obszarach życia: od projektów stricte hobbystycznych, przez automatykę domową, handel i usługi, po systemy inteligentnych miast, przemysł i rolnictwo.

Internet rzeczy nadal ewoluuje - i staje się coraz powszechniejszy, a to może być zachętą do tego, by poznać go bliżej. Internet rzeczy. Podstawy programowania aplikacji i serwerów sieciowych w językach C/C++, MicroPython i Lua na urządzeniach IoT ESP8266, ESP32 i Arduino może się okazać świetną propozycją na początek przygody z IoT. Książka kompleksowo objaśnia specyfikę wybranych urządzeń i uczy, jak je programować w sposób na tyle przystępny, że wystarczy przeciętna znajomość obsługi komputera, by zacząć tworzyć pierwsze projekty. Treść została zilustrowana przykładowymi kodami źródłowymi, co zdecydowanie ułatwia stawianie pierwszych kroków.

Dzięki książce:

  • poznasz wybrane urządzenia IoT
  • zaznajomisz się z narzędziami programistycznymi
  • nauczysz się podstaw języków programowania
  • uruchomisz własny serwer dla aplikacji web
  • stworzysz serwer WWW na urządzeniu IoT
  • a nawet zaprojektujesz serwer Minecrafta!

Internet rzeczy ma przed sobą wielką przyszłość, bądź jej częścią!

Przedmowa

1. URZĄDZENIA INTERNETU RZECZY

  • 1.1. Platforma Arduino
    • 1.1.1. Arduino UNO R3
    • 1.1.2. Arduino Nano
    • 1.1.3. Arduino Mega 2560 Rev3
    • 1.1.4. Arduino Mega 2560 + WiFi ESP8266
    • 1.1.5. Podsumowanie
  • 1.2. Platforma Espressif
    • 1.2.1. ESP-01
    • 1.2.2. ESP-M
    • 1.2.3. ESP-07
    • 1.2.4. ESP-12
    • 1.2.5. ESP-15F
    • 1.2.6. Płytki rozwojowe ESP
    • 1.2.7. Tryby pracy modułów
    • 1.2.8. Systemy plików SPIFFS i LittleFS
    • 1.2.9. Podsumowanie
  • 1.3. Pozostałe urządzenia
    • 1.3.1. BW16 RTL8720DN
    • 1.3.2. SIM800L GSM/GPRS
    • 1.3.3. nRF24L01+
  • 1.4. Lista zakupów
    • 1.4.1. ESP8266 na dobry początek
    • 1.4.2. ESP32 dla wymagających

2. OPROGRAMOWANIE

  • 2.1. Arduino IDE
    • 2.1.1. Instalacja oprogramowania dla ESP8266 i ESP32
    • 2.1.2. Obsługa systemów plików SPIFFS i LittleFS
  • 2.2. PlatformIO IDE
    • 2.2.1. Instalacja i konfiguracja
    • 2.2.2. Tworzenie nowego projektu
    • 2.2.3. Obsługa systemów plików SPIFFS i LittleFS
  • 2.3. ESPlorer
  • 2.4. uPyCraft
  • 2.5. uPyLoader
  • 2.6. Flash Download Tool
  • 2.7. NodeMCU PyFlasher
  • 2.8. EM-WiFi Configuration

3. FIRMWARE

  • 3.1. Po co aktualizować oprogramowanie układowe?
  • 3.2. Aktualizacja oprogramowania
    • 3.2.1. Narzędzia do aktualizacji oprogramowania
    • 3.2.2. AT
    • 3.2.3. MicroPython
    • 3.2.4. Lua (NodeMCU)
  • 3.3. Kompilowanie oprogramowania
    • 3.3.1. AT
    • 3.3.2. MicroPython
    • 3.3.3. Lua (NodeMCU)

4. PODSTAWY PROGRAMOWANIA

  • 4.1. C (Arduino)
    • 4.1.1. Struktura kodu źródłowego
    • 4.1.2. Stałe predefiniowane
    • 4.1.3. Zmienne i typy danych
    • 4.1.4. Konstrukcje warunkowe
    • 4.1.5. Pętle
    • 4.1.6. Funkcje
    • 4.1.7. Zestaw funkcji dla Arduino
  • 4.2. MicroPython
    • 4.2.1. Struktura kodu źródłowego
    • 4.2.2. Zmienne i typy danych
    • 4.2.3. Operacje na plikach
    • 4.2.4. Konstrukcje warunkowe
    • 4.2.5. Pętle
    • 4.2.6. Funkcje
    • 4.2.7. Biblioteki programistyczne
  • 4.3. Lua
    • 4.3.1. Zmienne i typy danych
    • 4.3.2. Operacje na plikach
    • 4.3.3. Konstrukcje warunkowe
    • 4.3.4. Pętle
    • 4.3.5. Funkcje
    • 4.3.6. Biblioteki programistyczne

5. PROGRAMOWANIE APLIKACJI SIECIOWYCH

  • 5.1. Szybki kurs stosowania komend AT
    • 5.1.1. Diagnostyka
    • 5.1.2. Sieć wi-fi
    • 5.1.3. Punkt dostępowy
    • 5.1.4. Serwer z obsługą połączeń TCP i UDP
  • 5.2. Szybki kurs tworzenia stron WWW
    • 5.2.1. Szkielet dokumentu hipertekstowego
    • 5.2.2. Stosowanie znaczników HTML w praktyce
  • 5.3. Lista zakupów
  • 5.4. RTC, Ethernet i karty pamięci
    • Projekt 1. Zapis danych z czujników na kartę SD
    • Projekt 2. Zegar czasu rzeczywistego - RTC
    • Projekt 3. Dostęp do sieci Ethernet
  • 5.5. Wi-fi, Blynk i serwer TCP
    • Projekt 4. Serwer TCP i udostępnianie danych
    • Projekt 5. Komunikacja TCP z platformą Blynk
    • Projekt 6. Własna platforma IoT - PHP i SQL
  • 5.6. Rozszerzenia dla modułu ESP-01
    • Projekt 7. Czujnik temperatury DS18B20
    • Projekt 8. Czujnik temperatury DHT11
    • Projekt 9. Moduł przekaźnika
    • Projekt 10. Kontroler RGB LED
  • 5.7. Usługi sieciowe
    • Projekt 11. SMTP - powiadomienia e-mail
    • Projekt 12. MySQL - transfer danych do bazy SQL
    • Projekt 13. FTP - zapis danych na serwerze plików
    • Projekt 14. MQTT - protokół komunikacyjny dla IoT
    • Projekt 15. DDNS - jedna nazwa przy zmiennym IP
    • Projekt 16. SMS - komunikacja przez sieć GSM
  • 5.8. Zdalna aktualizacja oprogramowania
    • Projekt 17. OTA z Arduino IDE i w linii poleceń
    • Projekt 18. Aktualizacja firmware przez WWW
    • Projekt 19. Aktualizacja LittleFS przez WWW
    • Projekt 20. ElegantOTA - elegancka alternatywa

6. WEB FRAMEWORK - C, MICROPYTHON I LUA

  • 6.1. aWOT - serwer w języku C
    • 6.1.1. Szkielet serwera WWW
    • 6.1.2. Routing
    • 6.1.3. Obsługa żądań HTTP i odpowiedzi do klientów
    • Projekt 21. Serwer WWW w frameworku aWOT
  • 6.2. Microdot - serwer w języku MicroPython
    • 6.2.1. Przygotowanie środowiska pracy
    • 6.2.2. Routing
    • 6.2.3. Programowanie asynchroniczne i SSL
    • 6.2.4. Obsługa żądań HTTP i odpowiedzi do klientów
    • 6.2.5. Szablony dla strony WWW
    • Projekt 22. Serwer WWW w frameworku Microdot
  • 6.3. Express - serwer w języku Lua
    • 6.3.1. Przygotowanie środowiska pracy
    • Projekt 23. Serwer WWW we frameworku Express

7. ZAKOŃCZENIE

  • 7.1. Trochę rozrywki z grą Minecraft
    • Projekt 24. Serwer gry Minecraft
  • Tytuł: Internet rzeczy. Podstawy programowania aplikacji i serwerów sieciowych w językach C/C++, MicroPython i Lua na urządzeniach IoT ESP8266, ESP32 i Arduino
  • Autor: Mariusz Duka
  • ISBN: 978-83-289-0359-3, 9788328903593
  • Data wydania: 2023-06-13
  • Format: Ebook
  • Identyfikator pozycji: inrzpo
  • Wydawca: Helion