Arduino® » Praktyczny mikrokontroler do indywidualnych zadań przełączania i sterowania
Od sierpnia 2021 r. Conrad Electronic jest oficjalnym partnerem dystrybucyjnym Arduino® . Dzięki temu mamy teraz najlepsze warunki dla optymalnej i ciągłej dostępności towarów:
Oznacza to, że otrzymujemy aktualną ofertę, najnowsze produkty i interesujące informacje bezpośrednio od dostawcy. Zyskują na tym zarówno osoby, które już z powodzeniem korzystają z Arduino, jak i te, które chciałyby używać go w przyszłości.
Arduino zostało pierwotnie założone jako łatwo dostępna platforma dla początkujących, entuzjastów elektroniki, artystów, projektantów i innych osób niebędących specjalistami. Dzięki decyzji o udostępnieniu sprzętu i oprogramowania w formacie open source, produkty te rozprzestrzeniły się bardzo szybko i zyskały uznanie zarówno wśród specjalistów, jak i ekspertów.
Szczególnie przyjazne dla użytkownika środowisko programistyczne (IDE) i możliwość szybkiego prototypowania są atrakcyjne dla profesjonalistów z różnych dziedzin, którzy muszą szybko tworzyć prototypy i testować pomysły. Platforma jest również niezwykle funkcjonalna i rozszerzalna dzięki dużej liczbie dostępnych czujników i siłowników.
Zatem nie powinno być zaskoczeniem, że wielu już słyszało o Arduino, mimo że nie każdy może wiedzieć, co ten termin dokładnie oznacza. Pojęcia takie jak mikrokontroler, projekt, platforma, szkice, panele i czujniki mogą wydawać się skomplikowane. Dlatego chcemy w prosty i zrozumiały sposób wyjaśnić, czym jest mikrokontroler Arduino oraz przedstawić szeroki zakres jego zastosowań. A najlepsze jest to, że wszystko jest znacznie mniej skomplikowane, niż mogłoby się wydawać na pierwszy rzut oka.
Mówiąc najprościej, Arduino to system, który może łączyć i sterować różnymi komponentami elektronicznymi, takimi jak czujniki, siłowniki i moduły. Programowanie płytki Arduino określa, w jaki sposób reaguje ona na określone sygnały wejściowe (wejścia) i jakie działania (wyjścia) odpowiednio wykonuje.
Takimi wejściami może być światło na czujniku, naciśnięcie przycisku lub wiadomość na Twitterze - reakcją na to (wyjściem) będzie, w zależności od zaprogramowania, na przykład aktywacja silnika, włączenie diody LED lub opublikowanie czegoś online. Takie podejście umożliwia realizację szerokiej gamy projektów i automatyzacji - od prostego obwodu LED po złożony system sterowania maszyną.
Przykładem takiej funkcjonalności może być ekspres do kawy, w którym niektóre procesy zależą od wartości czujników: Zanim wyświetlone zostanie menu wyboru, skaner kart lub czujnik w urządzeniu przyjmującym monety muszą wyrazić zgodę. Natomiast wybór odpowiedniej kawy z mlekiem jest możliwy tylko wtedy, gdy czujnik w ziarnach kawy i czujnik w pojemniku na mleko potwierdzą, że nie są one puste.
Zasadniczo brzmi to dość prosto. Wszystko, czego potrzebujesz, to mikrokontroler Arduino i trochę wiedzy technicznej, aby zaprogramować pożądane funkcje. Zakres wymagań technicznych jest niezwykle szeroki - od przyjaznej dla użytkownika platformy dla początkujących po potężny zestaw narzędzi dla doświadczonych majsterkowiczów i inżynierów, którzy chcą realizować złożone projekty elektroniczne.
Ciekawostka:
Nazwa „Arduino” pochodzi od imienia włoskiego króla i późniejszego bohatera narodowego, Amedeo Avogadro. Jego imieniem nazwano także bar w mieście Ivrea w północnych Włoszech, w którym regularnie spotykali się twórcy projektu Arduino (Massimo Banzi i David Cuartielles): "Bar di Re Arduino" (Bar Króla Arduino). Mówi się, że wybrali tę nazwę podczas spotkania w tym barze - również dlatego, że jest ona łatwa do wymówienia na całym świecie i niepowtarza.
Arduino składa się zasadniczo z dwóch komponentów: sprzętu i oprogramowania (Arduino IDE), z których oba są "systemami open source", dlatego użytkownicy mogą dostosować je do swoich indywidualnych potrzeb.
Hardware
Hardware składa się z tak zwanych płytek Arduino, które zawierają mikrokontrolery. Mikrokontroler to w zasadzie mały komputer na chipie, który służy do sterowania różnymi komponentami elektronicznymi. Najbardziej znaną płytką Arduino jest Arduino Uno, ale istnieje wiele innych modeli o różnych funkcjach.
Software
Oprogramowanie obejmuje Arduino Integrated Development Environment (IDE), środowisko programistyczne, które umożliwia użytkownikom pisanie kodu dla swoich projektów - tj. poszczególnych układów lub programów sterujących (szkiców) - i przesyłanie ich na płytkę Arduino. Programowanie odbywa się w uproszczonej wersji języka programowania C++.
Nie istnieje jednak tylko jedna konkretna płytka lub jeden konkretny kontroler. Arduino odnosi się raczej do całej rodziny produktów lub marki. Na przykładzie Arduino Uno, prawdopodobnie najbardziej znanej płytki Arduino, chcielibyśmy wyjaśnić strukturę nieco bardziej szczegółowo:
Najważniejsze elementy płytki Arduino:
1. Gniazdo USB
Do tego gniazda podłącza się kabel USB, który służy do przesyłania poszczególnych programów sterujących do Arduino.
2. Przycisk RESET
Za pomocą tego przycisku można ręcznie zresetować Arduino, jeśli nie może ono kontynuować automatycznej pracy z powodu awarii.
3. Interfejs ICSP (interfejs USB)
Dzięki interfejsowi ICSP (In Circuit Serial Programming) obwód logiczny może być programowany bezpośrednio w systemie aplikacji..
4. Magistrala I²C
W przypadku magistrali I²C dane są przesyłane z urządzenia nadrzędnego do podłączonych urządzeń podrzędnych za pośrednictwem linii SCL (Serial Clock) i SDA (Serial Data).
5. Zintegrowana dioda LED
Dioda „L” jest wewnętrznie podłączona do styku 13 w celach testowych.
6. Wejścia/wyjścia cyfrowe
Te piny I/O mogą być skonfigurowane jako wejścia lub wyjścia cyfrowe. W razie potrzeby sześć z nich działa jako wyjścia PWM z modulacją szerokości impulsu.
7. Sygnalizacja LED
Diody LED "RX" i "TX" wizualnie wskazują transfer danych z komputera do Arduino UNO.
8. Dioda napięcia pracy
Dioda „ON” sygnalizuje zasilanie płytki mikrokontrolera. Świeci się, gdy tablica jest podłączona do zasilania.
9. Oscylator kwarcowy (sterownik)
Kryształ zapewnia stabilność oscylatora w sterowniku i oscylację ze stałą częstotliwością.
10. Interfejs ICSP (sterownik)
W razie potrzeby kontroler można zaprogramować za pomocą tego interfejsu. Ponieważ jednak zostało to już wykonane fabrycznie, zwykle nie jest to konieczne.
11. Mikrokontroler
Mikrokontroler to układ półprzewodnikowy składający się z procesora, urządzeń peryferyjnych i pamięci. Czasami nazywany jest także SoC (System-on-a-Chip).
12. Wejścia analogowe
Jeżeli jako wartości wejściowe dostępne są napięcia analogowe, np. z czujników, należy wykorzystać te sześć wejść.
13. Styki zasilania
Te piny mogą dostarczać napięcie do płytki mikrokontrolera lub wykrywać napięcie 3,3 V lub 5 V.
14. Dioda prostownicza
Dostępna jest dioda prostownicza, dzięki której w gnieździe zasilacza może występować zarówno prąd stały, jak i napięcie zmienne.
15. Kondensatory ładujące
Kondensatory ładujące wygładzają napięcie zasilania. Jeden kondensator jest podłączony przed stabilizatorem napięcia 5 V, a drugi za nim.
16. Podłączenie zasilania
Aby płytka mikrokontrolera mogła działać bez połączenia USB po zaprogramowaniu, musi być zasilana przez zewnętrzny zasilacz.
17. Stabilizator napięcia
Stabilizator napięcia generuje stabilne napięcie 5 V z napięcia zasilania, które powinno wynosić od 7 do 12 V (AC lub DC).
18. Oscylator kwarcowy (kontroler USB)
Kwarc zapewnia, że oscylator w kontrolerze USB oscyluje stabilnie i ze stałą częstotliwością.
19. Interfejs USB
Interfejs USB konwertuje sygnały przychodzące przez port USB do formatu odpowiedniego dla sterownika.
Zasadniczo każda płytka Arduino posiada kontroler z różnymi wejściami i wyjściami. W zależności od tego, który sterownik jest używany, istnieje większa lub mniejsza liczba wejść i wyjść lub opcji połączeń. Ponadto płytki Arduino są zaprojektowane w taki sposób, że dodatkowe płytki (shieldy) można podłączyć za pomocą złączy. Skutkuje to systemem, który można układać jeden na drugim bez konieczności wykonywania dużej ilości prac związanych z okablowaniem.
Info: Wejścia i wyjścia na płytce Arduino
Czujniki lub inne źródła informacji (wejścia) dostarczają dane do płytki Arduino, na podstawie których może ona następnie sterować siłownikami lub innymi komponentami (wyjścia) w celu wykonania określonych działań.
Rozróżnia się układy cyfrowe i analogowe, przy czym główna różnica polega na rodzaju przesyłanych lub przetwarzanych informacji:
- Wejścia i wyjścia cyfrowe akceptują lub generują tylko dwa stany: WYSOKI (1) lub NISKI (0) - mówiąc prościej: albo-albo, włącz-wyłącz. >> Wejście cyfrowe to na przykład czujnik podczerwieni, który wysyła sygnały cyfrowe do płytki Arduino, gdy wykryje przeszkody. Odpowiednim wyjściem może być dioda LED, która jest włączana lub wyłączana, aby wizualnie wskazać, kiedy czujnik podczerwieni wykryje przeszkodę. Alternatywnie można użyć brzęczyka do uruchomienia alarmu dźwiękowego.
- Z drugiej strony, wejścia i wyjścia analogowe akceptują lub generują ciągły zakres wartości. >> Wejście cyfrowe to na przykład czujnik światła, który dostarcza wartości analogowe do płytki Arduino w oparciu o jasność otoczenia. Odpowiednim wyjściem może być dioda LED, która świeci jaśniej lub ciemniej w zależności od jasności otoczenia.
Płytka Arduino Uno jest prawdopodobnie najpopularniejszą z platform Arduino zarówno dla początkujących, jak i doświadczonych użytkowników. Dzięki jasnemu przypisaniu pinów i przystępnej strukturze jest łatwa w użyciu i idealna do projektów dla początkujących. Jednocześnie wystarczająca liczba styków cyfrowych i analogowych sprawia, że jest ona niezwykle wszechstronna dla szerokiej gamy projektów - od prostych obwodów LED po bardziej złożone projekty z czujnikami, silnikami i komunikacją bezprzewodową.
Jednak oprócz Arduino Uno istnieje wiele innych płytek z mikrokontrolerami firmy Arduino. Różnorodność płytek mikrokontrolerów Arduino jest tak samo zróżnicowana jak różne scenariusze zastosowań. Dla prostego przeglądu, podsumowaliśmy niektóre aktualne i popularne płytki w tabeli:
Tabela zawierająca przegląd najpopularniejszych płytek Arduino
Mikrokontroler | CPU | Wejścia analogowe | Wejścia/wyjścia cyfrowe | Pamięć flash | Napięcie robocze | Wymiary (dł. x szer.) | |
---|---|---|---|---|---|---|---|
Arduino Zero | ATSAMD21G18 | 32-bit | 6 | 20 (w tym 10 PWM) | 256 kB | 3,3 V | 68,6 x 53,4 mm |
Arduino Uno R3 | ATmega328P | 8-bit | 6 | 14 (w tym 6 PWM) | 32 kB | 5 V | 68,6 x 53,4 mm |
Arduino Due | ATmelSAM3X8E | 32-bit | 12 | 54 (w tym 12 PWM) | 512 kB | 3,3 V | 101,5 x 53,3 mm |
Arduino Mega 2560 | ATmega2560 | 8-bit | 16 | 54 (w tym 15 PWM) | 256 kB | 5 V | 101,5 x 53,3 mm |
Arduino Leonardo | ATmega32u4 | 8-bit | 12 | 20 (w tym 7 PWM) | 32 kB | 5 V | 68,6 x 53,4 mm |
Arduino Micro | ATmega32u4 | 8-bit | 12 | 20 (w tym 7 PWM) | 32 kB | 5 V | 48,3 x 17,8 mm |
Arduino Nano | ATmega328 | 8-bit | 8 | 22 (w tym 6 PWM) | 32 kB | 5 V | 45 x 18 mm |
Istnieją również różne wersje poszczególnych typów, które różnią się konstrukcją i funkcjami. Na przykład Arduino Uno jest dostępne w wersji SMD lub z modułem WiFi. Ponadto istnieją różne wersje Micro i Nano z różnymi danymi technicznymi.
Nasze rekomendacje dotyczące produktów
Arduino MKR
W oparciu o płytkę Arduino MKR firma Arduino opracowała własną serię, specjalnie zaprojektowaną dla producentów: ma zwartą konstrukcję, jest energooszczędna, ma określone funkcje oraz jest elastyczna i wszechstronna w szerokim zakresie zastosowań.
Poza szerokim zakresem przełączania i zadań kontrolnych, Arduino MKR skupia się na możliwościach komunikacyjnych płytek i ekranów.
Obejmują one rozwiązania od SigFox dla aplikacji IoT i WiFi do integracji sieci bezprzewodowej aż po wykorzystanie sieci GSM.
Arduino PRO
Arduino Pro to potężny system przeznaczony do złożonych zastosowań przemysłowych , robotyki i inteligentnego sterowania maszynami
Sercem serii jest linia Portenta do zaawansowanych projektów IoT, takich jak algorytmy AI lub uczenie maszynowe. Płyty, takie jak wielozadaniowy model Portenta X8 (aplikacje czasu rzeczywistego + jednoczesne wysokowydajne procesy na rdzeniach Linux) lub Portenta H7 z dwurdzeniowym procesorem, który może przetwarzać złożone zadania w czasie rzeczywistym, są odpowiednio skomplikowane i wydajne.
Dzięki połączeniu z chmurą Arduino IoT Cloud możliwe jest łatwe scentralizowane sterowanie.
Arduino Education
W formie modelu Arduino® Education firma Arduino opracowała koncepcję nauczania, która jest dostosowana specjalnie do potrzeb szkół i placówek oświatowych. Obejmuje ona specjalne zestawy sprzętowe dla nauczycieli i uczniów, materiały dydaktyczne,instrukcje projektowe i programy nauczania, a także programy certyfikacji i kształcenia nauczycieli.
Arduino Education ma na celu wspieranie nauczycieli w przekazywaniu wiedzy na temat programowania, elektroniki, elektrotechniki i mechatroniki. Różne projekty zapewniają szybkie i łatwe wprowadzenie do programowania płytek Arduino, ułatwiając zwłaszcza początkującym tworzenie elektronicznych prototypów i realizację kreatywnych pomysłów.
Do programowania płytek Arduino wymagane jest oprogramowanie Arduino IDE. Ma ono kilka zalet. Przede wszystkim, jego prosty interfejs użytkownika sprawia, że jest ono odpowiednie dla początkujących programistów. Ponadto jest niezależne od platformy, oferuje bogactwo zasobów (biblioteki, przykładowe kody, fora) i odznacza się szczególną elastycznością ze względu na fakt, że obsługuje dużą liczbę płytek Arduino - co czyni je również atrakcyjnym dla doświadczonych programistów, którzy chcą realizować bardziej złożone projekty. programowanie jest dostępne do pobrania na oficjalnej stronie Arduino dla systemów Windows, iOS lub Linux. Alternatywnie dostępna jest również obszerna literatura specjalistyczna.
Przykład szkicu: Światła do jazdy dziennej z 10 diodami LED
Aby pokazać, jak łatwo jest wdrożyć projekt i bardziej szczegółowo omówić funkcje oprogramowania Arduino Desktop IDE, chcemy stworzyć mały i prosty program Arduino (szkic) poniżej. Celem jest zbudowanie automatycznie uruchamiającej się lampki z 10 diodami LED. Ze względu na automatyczny start nie jest konieczne podłączanie żadnego z wejść.
1. Konfiguracja obwodu testowego
Przed rozpoczęciem programowania należy skonfigurować sprzęt. W naszym przykładzie testowym użyto Arduino Mega 2560, ale każda inna płytka również będzie działać. Wejścia/wyjścia cyfrowe 2 - 11 służą do sterowania 10 diodami LED.
Mała płytka drukowana okazała się idealna do fizycznej budowy obwodu. Ponieważ diody LED nie są zaprojektowane dla napięcia roboczego 5 V, rezystor 220 Ω musi być podłączony szeregowo z każdą diodą LED w celu ograniczenia prądu, a tym samym napięcia dla diody LED. Nie ma znaczenia, czy rezystor jest zainstalowany przed czy za diodą LED.
Upewnij się tylko, że anoda diod LED jest podłączona do cyfrowego wejścia/wyjścia płytki. Wspólne uziemienie powinno być podłączone do złącza GND na płytce. Na tym kończy się budowa obwodu testowego.
Zasilanie jest dostarczane przez port USB, więc nie ma potrzeby podłączania zewnętrznego zasilacza do naszego obwodu testowego.
2. Tworzenie programu sterującego
Ustawienia oprogramowania
Po zainstalowaniu oprogramowania należy w menu Narzędzia ustawić aktualną płytkę i używany interfejs .
W menu Plik znajduje się kilka szkiców w katalogu Przykłady, które w razie potrzeby można wywołać i natychmiast przenieść na płytkę Arduino.
Na naszym przykładzie pokażemy jednak, jak sami możemy stworzyć krótki program.
Wymagane do tego polecenia i odpowiadające im objaśnienia można znaleźć na stronie Arduino.
Definicja wyjść
Pierwsza linia określa, ile diod LED ma być kontrolowanych i które fizyczne połączenia (piny) są używane do sterowania diodami LED.
W naszym przypadku połączenia 2 - 11 są podłączone.
Poniższa sekcja składa się z dwóch kluczowych funkcji, określanych jako setup i loop.
Obszar setup jest odczytywany i wykonywany tylko raz po uruchomieniu programu.
Natomiast kolejny obszar loop jest wykonywany w stale powtarzającej się sekwencji.
Setup
W obszarze setup szkicu należy zdefiniować, że piny od 2 do 11 działają jako piny wyjściowe, a zatem napięcie powinno być wyprowadzane dla 10 diod LED (ponumerowanych od 0 do 9).
Można to zrobić za pomocą poleceń
pinMode (LEDPins[0],Output); dla pierwszej diody LED
pinMode (LEDPins[1],Output); dla drugiej diody LED
·
·
pinMode (LEDPins[9],Output); dla 10. diody LED
Ponieważ procedura ta jest zbyt uciążliwa, utworzono zmienną for , w której zdefiniowano zmienną „i” dla indeksu o liczbie początkowej „zero”, a warunek przerwania był mniejszy niż 10. Wartość „i++” gwarantuje, że w każdej pętli wartość „i” zwiększa się o jeden. Wtedy wystarczy tylko jedna linia, aby przypisać dziesięć pinów w kodzie:
pinMode (LEDPins[i],Output);
Loop
Funkcja loop "for" jest również używana w obszarze loop na początku, dzięki czemu wpisy nie muszą być dokonywane dla każdej diody LED z osobna.
Za pomocą poleceń: :
digital Write (LEDPins[i],HIGH);
delay(100)
10 diod LED jest włączanych jedna po drugiej na 100 ms zgodnie z wcześniej zdefiniowaną krzywą. Zmieniając wartość opóźnienia, można zdefiniować czas świecenia diody LED, a tym samym prędkość działającego światła..
Diody LED są wyłączane za pomocą poleceń:
digital Write (LEDPins[i],LOW);
delay(0)
Wartość opóźnienia 0 włącza następną diodę LED natychmiast po zgaśnięciu poprzedniej. Można jednak wprowadzić dowolną wartość dla przerwy w świeceniu.
Ponieważ jednak światło do jazdy nie powinno działać tylko w jednym kierunku, sekwencja świateł musi zostać odwrócona w następnym kroku. Zewnętrzna dioda LED nie powinna być sterowana dwukrotnie po zmianie kierunku ruchu, dlatego pętla wymagana do powrotu obejmuje tylko piny LED od 8 (i=8) do 1 (i>0) i przełącza diody LED w odwrotnej kolejności (i--).
Diody LED są sterowane za pomocą czasów opóźnienia w taki sam sposób, jak w przypadku ruchu na zewnątrz.
3. Przeniesienie programu sterującego do Arduino
Na koniec szkic można przesłać na płytkę Arduino za pomocą okrągłego przycisku i strzałki skierowanej w prawo. Podczas przesyłania dwie diody LED RX i TX na płytce migają, a następnie zaczyna działać podświetlenie.
Jeśli szkic zawiera błąd, zostanie on wyświetlony natychmiast po próbie przesłania. Jako, że pętla jest stale powtarzana, program działa do momentu wyłączenia zasilania płytki Arduino.
Za pomocą naszego prostego przykładu programowania staraliśmy się zademonstrować niesamowity potencjał programowalnych mikrokontrolerów. Aby sprostać pozornie nieograniczonej różnorodności zastosowań, płytki Arduino są dostępne w szerokiej gamie wzorów z wieloma opcjami połączeń. Dodatkowe moduły wtykowe (shieldy) z czujnikami lub do sterowania silnikami lub ekran Ethernet szybko i łatwo rozszerzają funkcje. W rezultacie otrzymujemy płytkę deweloperską z możliwością układania w stos lub kompaktowy kontroler bez konieczności stosowania skomplikowanego okablowania. Sprzęt spełnia zatem wszystkie wymagania dotyczące ukierunkowanego, ale elastycznego środowiska programistycznego.
Projekty dla początkujących
Płytki Arduino są idealne do rozpoczęcia przygody z elektroniką i programowaniem. Specjalne zestawy startowe ułatwiają tworzenie obwodów i programowanie kodu. Oprogramowanie jest na tyle proste i funkcjonalne, że nie jest wymagana żadna wcześniejsza wiedza.
W Internecie można znaleźć niezliczone propozycje projektów z wykorzystaniem płytek Arduino. Ponadto społeczność Arduino, licząca ponad 28 milionów członków, chętnie odpowie na konkretne pytania dotyczące oprogramowania, płytek i czujników Arduino.
Platforma edukacyjna
Ze względu na łatwość obsługi i dużą społeczność programistów, Arduino często służy jako platforma dla projektów edukacyjnych, które ułatwiają naukę elektroniki i programowania. Dlatego też wiele szkół oferuje już kursy programowania.
Własna koncepcja nauczania Arduino Education jest skierowana szczególnie do szkół, uczelni i organizacji edukacyjnych, a oprócz materiałów dydaktycznych zapewnia różne pomysły na projekty.
Robotyka
Menedżerowie firm również dostrzegli ten potencjał i często wykorzystują płytki Arduino do wdrażania opartych na mikrokontrolerach systemów sterowania dla robotów.
Dzięki elastycznemu programowaniu czujniki i siłowniki można łatwo zintegrować w celu sterowania ruchem, wykrywania otoczenia i innych funkcji. Jednocześnie projekty z zakresu robotyki obejmują zarówno proste, jak i bardzo złożone systemy autonomiczne .
Muzyka i sztuka
Płytki Arduino mogą być wykorzystywane do tworzenia prostych instrumentów muzycznych lub integracji komponentów elektronicznych z istniejącymi instrumentami, a także do tworzenia efektów audio lub instalacji dźwiękowych w celu uzyskania nowych wrażeń muzycznych.
Artyści wykorzystują również płytki do tworzenia rzeźb kinetycznych i innych kreatywnych projektów, a także interaktywnych instalacji artystycznych, które reagują na bodźce środowiskowe za pomocą czujników i siłowników.
Internet rzeczy (IoT)
Płytki Arduino można łączyć z różnymi czujnikami (takimi jak czujniki temperatury, wilgotności, światła i ruchu) oraz modułami komunikacyjnymi w celu tworzenia projektów IoT. Umożliwiają one zbieranie danych ze świata fizycznego i przesyłanie ich przez Internet.
Wearables
Płytki Arduino ze względu na swój kompaktowy rozmiar doskonale nadają się do projektów z zakresu elektroniki wearable. Można je zintegrować z odzieżą, biżuterią lub innymi przenośnymi urządzeniami, aby stworzyć spersonalizowane wearables, które reagują na ruch, ciśnienie lub temperaturę.