IoT w Microsoft Azure

23 lutego 2021

Iot w Microsoft Azure

IoT w Microsoft Azure to zagadnienie niezwykle złożone, ale i dające ogromne możliwości. Każde urządzenie może być bowiem częścią większej, skomplikowanej sieci urządzeń wzajemnie połączonych i komunikujących się ze sobą.

Na gruncie definicyjnym, IoT (Internet of Things) będziemy więc nazywać zbiór urządzeń, które wzajemnie potrafią się komunikować, wpływać na siebie, łączyć się za pomocą Internetu z jakimś centralizowanym punktem wymiany danych, gdzie te dane mogę być zbierane, przechowywane czy analizowane. Na podstawie otrzymanych danych jedno urządzenie może wpływać na następne.

 

Typowe scenariusze wykorzystania IoT w Microsoft Azure

Smart Home – rozwiązania, które nie wymagają naszej ingerencji, czy rozwiązują realny problem i nie chodzi tutaj o wyłączanie światła za pomocą aplikacji w telefonie, ale rozwiązanie, które może nam ułatwić funkcjonowanie, np. otwieranie bramy wjazdowej na podstawie rejestracji samochodu.

 

Smart watch/smart band – pozwalają analizować nasz sen, monitorować parametry życiowe, ilość czujników i odpowiednie oprogramowanie może uratować życie, alarmując odpowiednie służby, poprzez wskazanie naszej lokalizacji.

 

Smart Shopping – w pełni zautomatyzowane sklepy, w których nie potrzebujemy przede wszystkim interakcji z obsługą sklepu. Sklepy, które same kontrolują zużycie i atrakcyjność kupowanych produktów, przez co mogą same decydować o łańcuchu zamówień jak i miejscu w którym te produkty się znajdują, a uzupełnianiem półek sklepowych nie zajmują się ludzie, a zaawansowana automatyka. Zainteresowanych odsyłamy do case study Azure + Żabka

 

Smart Farming – funkcjonujące w terenie czujniki obsługujące IoT mogą monitorować wszystko, od pH gleby i jej jakości po nasycenie wody, aby zapewnić właściwe dla danego miejsca nawadnianie, pestycydy czy nawozy.

 

Smart Cars - ponieważ nawet tradycyjny nowoczesny i ocynkowany pojazd, potrafi generować nawet 25GB danych na godzinę. Natomiast szacuje się że samochody w pełni autonomiczne będą w stanie generować nawet pojedyncze TB danych na godzinę – z czego ok 30% danych będzie lądować w chmurze. W skrócie, bardzo dużo czujników, których praca wpływa na bezpieczeństwo przemieszczania się. Czujniki te mogą też posłużyć do wykrywania tzw. wad fabrycznych, co daje firmie możliwość bezpiecznego przygotowania się do procedury serwisowej.

 

Smart city - automatyczna regulacja oświetlenia, alarmowanie w przypadku przekroczenia poziomu rzek, czy tez wybicia studzienek kanalizacyjnych. Różnego rodzaju systemy monitoringu dróg, które na podstawie kamer, będą w stanie same kierować ruchem drogowym w celu rozładowani korków, czy w przypadku rozpoznania na drodze pachołków czy tzw. awaryjnego trójkąta.

 

Smart Healthcare - to przed wszystkim zdalne monitorowanie zdrowia pacjentów – namiastkę tego powinni znać wszyscy Ci, którzy spotkali się z systemami monitorowania pracy serca. Tutaj w przypadku wykrycia nieprawidłowości, może być uruchamiana cała lawina zdarzeń, mająca utrzymać przy życiu pacjenta z problemami sercowymi. Ale to też dużo lepsze zarządzanie placówkami i procesami tam zachodzącymi, czy nawet wykonywanymi operacjami.

 

Smart Production – przede wszystkim automatyzacja procesów powiązana z analizą danych, które dostarczają wszystkie zamontowane czujniki. Takie rozwiązanie oprócz tego, że przyśpiesza produkcję to dodatkowo umożliwia wczesne wykrycie błędu. Narzędzia, które upraszczają i obniżają koszty monitorowania oraz sterowania procesami produkcyjnymi. To technologia pozwalająca na bieżące zbieranie informacji o procesie wytwarzania. Pełny dostęp do danych o stanie maszyn technologicznych, narzędzi, parametrów, zachodzących procesów technologicznych a także rezultatów jakościowych oraz ilościowych, umożliwia planowanie przyszłego rozwoju i sterowanie, zapewniające ciągłość procesu produkcyjnego.



Narzędzia IoT w chmurze Microsoft Azure

IoT Central – to zestaw narzędzi umożliwiających tworzenie aplikacji biznesowych, które łączą ze sobą obsługę urządzeń IoT, a więc zbierane dane pozyskiwane z różnych czujników z ich wizualizacją w oparciu o PowerBI czy Power Apps jak również przez dedykowane API. Azure IoT Central to platforma aplikacji IoT, która upraszcza tworzenie rozwiązań IoT. Usługa Azure IoT Central upraszcza początkową konfigurację rozwiązania IoT, a także zmniejsza obciążenie związane z zarządzaniem, koszty operacyjne i ogólny nakład pracy w typowym projekcie IoT

IoT Central umożliwia tworzenie aplikacji biznesowych w oparciu o scenariusze dla kilku branż:

  • Handel:
    • Połączona logistyka
    • Centrum dystrybucji cyfrowej
    • Inteligentne zarządzanie magazynem
  • Energetyczna:
    • Monitorowanie paneli słonecznych
    • Monitorowanie inteligentnych mierników
  • Instytucje rządowe:
    • Monitorowanie jakości wody
    • Monitorowanie zużycia wody
    • Zarządzanie odpadami
  • Opieka zdrowotna:
    • Monitorowanie pacjenta

Za pomocą czujników IoT można zbierać i monitorować warunki otoczenia, takie jak temperatura, wilgotność, nachylenie, wstrząsy, światło i lokalizacja wysyłki. Dane telemetryczne zebrane z czujników i urządzeń IoT można połączyć z innymi źródłami danych, takimi jak pogoda i informacje o ruchu w systemach analizy biznesowej w chmurze.

Połączone rozwiązania logistycznego obejmują:

  • Monitorowanie przesyłek z możliwością śledzenia w czasie rzeczywistym.
  • Integralność przesyłek z monitorowaniem warunków otoczenia w czasie rzeczywistym.
  • Zabezpieczenie przed kradzieżą, utratą lub uszkodzeniem przesyłek.
  • Geofencing, optymalizacja tras, zarządzanie flotą i analiza pojazdów.
  • Prognozowanie przewidywalnej wysyłki i przybycia wysyłek.

Zalety centrum dystrybucji cyfrowej:

  • Aparaty fotograficzne monitorują towary w miarę ich przybycia i przechodzą przez system przenośnika.
  • Automatyczna identyfikacja wadliwych towarów.
  • Wydajne śledzenie kolejności.
  • Obniżone koszty, Zwiększona produktywność i zoptymalizowane użycie

Zalety zarządzania magazynem inteligentnym:

  • Zmniejszenie ryzyka związanego z magazynowaniem elementów i zapewnienie odpowiedniego poziomu usług klienta.
  • Szczegółowa analiza i szczegółowe informacje o dokładności spisu w czasie niemal rzeczywistym.
  • Narzędzia ułatwiające podjęcie decyzji dotyczącej odpowiedniej ilości zapasów do przechowywania w celu spełnienia zamówień klienta.

Inteligentne liczniki nie tylko umożliwiają automatyczne rozliczanie, ale także zaawansowane pomiary związane z użyciem energii, takie jak odczyty w czasie rzeczywistym i komunikacja dwukierunkowa. Szablon aplikacji inteligentnego miernika umożliwia wsparcie gotowych narzędzi, które już posiadają np. elektrownie do monitorowania stanu i danych inteligentnych mierników. Umożliwiają również definiowanie alarmów i powiadomień. Szablon zawiera przykładowe polecenia, takie jak aktualizacja oprogramowania. Dane z licznika można skonfigurować tak aby mógł przekazywać je do innych aplikacji firmowych czy innych niestandardowych rozwiązań.

Aplikacja monitorująca panel słoneczny umożliwia monitorowanie paneli słonecznych, takich parametrów jak generowanie energii i stan połączenia niemal w czasie rzeczywistym. Może wysyłać powiadomienia na podstawie zdefiniowanych kryteriów progowych.

Najważniejsze funkcje jakie oferuje szablon aplikacji:

  • Przykładowy model urządzenia z panelem słonecznym
  • Informacje o panelu słonecznym i stanie na żywo
  • Generowanie energii słonecznej i inne odczyty
  • Przykłady poleceń i kontrolek
  • Wbudowana wizualizacja i pulpity nawigacyjne
  • Możliwość tworzenia rozwiązań niestandardowych

Tradycyjne śledzenie zużycia wody polega na ręcznym odczytywaniu liczników zużycia wody. Coraz więcej miast zastępuje tradycyjne liczniki zaawansowanymi inteligentnymi umożliwiające zdalne monitorowanie zużycia i zdalne sterowanie zaworami w celu kontrolowania przepływu wody. Scenariusz monitorowania zużycia wody połączony z informacjami zwrotnymi dla użytkowników liczników może zwiększyć świadomość i zmniejszyć zużycie wody.

Szablon aplikacji do monitorowania zużycia wody zawiera:

  • Przykładowe pulpity nawigacyjne operatorów
  • Przykładowe szablony urządzeń, monitorów jakości wody
  • Wstępnie skonfigurowane reguły i zadania

Szablon aplikacji połączonego zarządzania odpadami zawiera:

  • Przykładowe pulpity nawigacyjne operatorów
  • Przykładowe połączone odpady pojemników — szablony
  • Symulowane połączone urządzenia bin
  • Wstępnie skonfigurowane reguły i zadania

W obszarze IoT opieki zdrowotnej ciągłe monitorowanie pacjenta to jeden z najważniejszych elementów umożliwiających zmniejszenie ryzyka związanego z reemisji, nadzór nad pacjentami z chorobami przewlekłymi oraz poprawa wyników pacjenta. Monitorowanie ciągłego pacjenta można podzielić na dwie główne kategorie:

  • Monitorowanie w szpitalach pacjenta: zespoły opiekujące się pacjentami, dzięki podpiętym urządzeniom monitorującym pacjenta, mają podgląd na wyniki bez potrzeby ciągłego zaglądania do pacjenta, zastosowane alerty, powiadają o zmianach stanu pacjenta.
  • Zdalne monitorowanie pacjentów: pacjent może wrócić do domu a podpięte urządzenia do monitorowania stanu pacjenta zbierają dane i przekazują do specjalistów, zastosowanie alertów wskazujące na pogorszanie stanu pacjenta, pozwalają na szybką reakcję, zanim dojdzie do stanu krytycznego. Zdalny monitoring stanu pacjenta pozwala również na weryfikację czy pacjent stosuje się do zaleceń.

Szablon może służyć do tworzenia rozwiązań dla obu kategorii ciągłego monitorowania pacjenta:

  • Bezproblemowo łączy różne rodzaje urządzeń medycznych w ramach IoT Central
  • Monitorowanie urządzeń i zarządzanie nimi
  • Możliwość tworzenia reguł dotyczących danych urządzenia, aby dostosować pojawiąjące się alerty do choroby pacjenta
  • Eksport danych o stanie pacjenta do interfejsu API platformy Azure dla FHIR
  • Możliwość eksportu danych do aplikacji innych firm

IoT Central umożliwia zbieranie, generowanie informacji biznesowych, takich jak określanie trendów wydajności maszyn/urządzeń czy przewidywanie przyszłego użycia energii w fabryce. Umożliwia eksportowanie, przechowywanie i wizualizowanie danych telemetrycznych, zmian właściwości urządzeń, zmiany parametrów w preferowanych narzędziach.

IoT Hub to usługa zarządzana, hostowana w chmurze, która działa jako centralne centrum komunikatów dla dwukierunkowej komunikacji między aplikacją IoT a zarządzanymi przez nią urządzeniami. Za pomocą usługi Azure IoT Hub można tworzyć rozwiązania IoT z niezawodną i bezpieczną komunikacją między milionami urządzeń IoT i zapleczem rozwiązań hostowanych w chmurze. Do IoT Hub można podłączyć praktycznie każde urządzenie. Warto zapoznać się z katalogiem urządzeń certyfikowanych, które można bez problemu podpiąć pod rozwiązania Azure

IoT Hub obsługuje komunikację zarówno z urządzenia do chmury, jak i z chmury do urządzenia. IoT Hub obsługuje wiele wzorców obsługi komunikatów, takich jak telemetria z urządzenia do chmury, przekazywanie plików z urządzeń i metody odpowiedzi na żądanie w celu kontrolowania urządzeń z chmury. Monitorowanie IoT Hub pomaga w utrzymaniu kondycji rozwiązania, śledząc zdarzenia, takie jak aktywowanie urządzeń, awarie urządzeń i połączenia urządzeń.

  • IoT Hub zapewnia bezpieczny kanał komunikacyjny dla urządzeń do wysyłania danych. Uwierzytelnianie na urządzeniu umożliwia każdemu urządzeniu bezpieczne połączenie z IoT Hub i bezpieczne zarządzanie każdym urządzeniem.
  • Umożliwia pełną kontrolę nad dostępem do urządzeń, umożliwia kontrolowanie połączenia na poziomie poszczególnych urządzeń.

Usługa IoT Hub Device Provisioning Service (DPS) to usługa pomocnicza dla IoT Hub, która umożliwia bezdotykowe, just-in-time zaopatrywanie we właściwe centrum IoT bez konieczności interwencji człowieka, umożliwiając klientom udostępnianie milionów urządzeń w bezpiecznym i skalowalnym sposób. Usługa DPS umożliwia przypisywanie i rejestrowanie urządzeń do określonych punktów końcowych usługi Azure IoT Hub na dużą skalę.

Wiele typów uwierzytelniania obsługuje różne funkcje urządzenia:

  • Uwierzytelnianie oparte na tokenach SAS, aby szybko rozpocząć korzystanie z rozwiązania IoT.
  • Indywidualne uwierzytelnianie za pomocą certyfikatu X.509 dla bezpiecznego, opartego na standardach uwierzytelniania.
  • Uwierzytelnianie X.509 CA w celu prostej rejestracji opartej na standardach.

IoT Hub w Azure Stack Hub umożliwia tworzenie hybrydowych rozwiązań IoT. IoT Hub to usługa zarządzana, działająca jako centralne centrum komunikatów dla dwukierunkowej komunikacji między aplikacją IoT a urządzeniami, którymi zarządza. Za pomocą IoT Hub w Azure Stack Hub można tworzyć rozwiązania IoT z niezawodną i bezpieczną komunikacją między urządzeniami IoT a rozwiązaniami lokalnymi.

Azure IoT Edge rozszerza IoT Hub - umożliwia analizowanie danych urządzeń lokalnie zamiast w chmurze, aby wysyłać mniej danych do chmury, szybko reagować na zdarzenia i działać w trybie offline.

Usługa Azure IoT Edge składa się z trzech składników:

  • Moduły IoT Edge to kontenery, w których działają usługi platformy Azure, usługi innych firm lub własny kod. Moduły są wdrażane na urządzeniach IoT Edge i są wykonywane lokalnie na tych urządzeniach.
  • Runtime Internet urządzeń działa na każdym urządzeniu i zarządza modułami wdrożonymi.
  • Interfejs chmurze pozwala na zdalne monitorowanie i zarządzanie urządzeniami.

Usługa Azure Event Hubs to platforma przesyłania strumieniowego danych big data i usługa pozyskiwania zdarzeń. Może odbierać i przetwarzać miliony zdarzeń na sekundę. Dane wysłane do centrum zdarzeń mogą zostać przekształcone i zmagazynowane przy użyciu dowolnego dostawcy analityki czasu rzeczywistego lub adapterów przetwarzania wsadowego/magazynowania. Event Hubs to w pełni zarządzana usługa PaaS (Platform-as-a-Service), która wymaga niewielkich nakładów na konfigurację i zarządzanie. Usługa Event Hubs ma certyfikaty CSA STAR, ISO, SOC, GxP, HIPAA, HITRUST i PCI. Pozyskiwanie danych z dowolnego miejsca i projektowanie na wiele platform z obsługą popularnych protokołów, łącznie z AMQP, HTTPS i Apache Kafka®.

Następujące scenariusze to niektóre z możliwych zastosowań usługi Event Hubs:

  • Wykrywanie anomalii (oszustwa/wartości odstające),
  • Rejestrowanie aplikacji,
  • Potoki analiz, na przykład w analizie strumienia kliknięć,
  • Tworzenie dynamicznych pulpitów nawigacyjnych,
  • Archiwizowanie danych,
  • Przetwarzanie transakcji,
  • Przetwarzanie dane telemetrycznych o użytkownikach,
  • Strumieniowe przesyłanie danych telemetrycznych z urządzenia.

Azure Stream Analytics to analityka w czasie rzeczywistym i złożony aparat przetwarzania zdarzeń, który został zaprojektowany do jednoczesnego analizowania i przetwarzania dużych ilości danych przesyłanych strumieniowo z wielu źródeł (urządzeń, czujników, kliknięć, aplikacji). Wzorce i relacje można zidentyfikować w informacjach pochodzących z wielu źródeł wejściowych, w tym urządzeń, czujników, strumieni kliknięć, kanałów mediów społecznościowych i aplikacji. Wzorce te mogą służyć do wyzwalania działań i inicjowania przepływów pracy, takich jak tworzenie alertów, przekazywanie informacji do narzędzia raportowania lub przechowywanie przekształconych danych do późniejszego wykorzystania. Ponadto usługa Stream Analytics jest dostępna w środowisku uruchomieniowym Azure IoT Edge, umożliwiając przetwarzanie danych na urządzeniach IoT.

Usługa Azure Stream Analytics używa języka zapytań SQL. Można również tworzyć zadania przy użyciu narzędzi deweloperskich, takich jak Azure PowerShell, interfejs wiersza polecenia platformy Azure, narzędzia Stream Analytics Visual Studio, rozszerzenie Stream Analytics Visual Studio Code lub szablony Azure Resource Manager. Korzystanie z narzędzi programistycznych umożliwia opracowywanie zapytań transformacyjnych w trybie offline i przesyłanie zadań do platformy Azure za pomocą ciągłej integracji / ciągłego wdrażania.

Azure Stream Analytics pozwala nam przy wykorzystaniu zapytań SQL przefiltrować dane, czy uruchomienia zaawanasowanej analityki danych, w przyszłości także różnych modeli związanych ze sztuczną inteligencją. Dane te można zwizualizować np w Power BI, tak naprawdę kluczem do dobrej wizualizacji są to jakie dane pozyskamy i jaka zostanie przeprowadzona analityka

Poniższe scenariusze są przykładami sytuacji, w których można używać usługi Azure Stream Analytics:

  • Analizuje strumienie telemetryczne w czasie rzeczywistym z urządzeń IoT,
  • Dzienniki internetowe / analityka strumienia kliknięć,
  • Analizy geoprzestrzenne do zarządzania flotą i pojazdami bez kierowcy,
  • Zdalne monitorowanie i konserwacja predykcyjna aktywów o dużej wartości,
  • Analityka w czasie rzeczywistym danych w punkcie sprzedaży w celu kontroli zapasów i wykrywania anomalii.

Aplikacje IoT Microsoft opisuje  jako trzy bloki:

  • rzeczy (urządzenia) – narzędzia, które dostarczają dane,
  • wgląd - narzędzia, które umożliwiają zbieranie, przechowywanie i analizę danych, wgląd w dostarczone dane
  • działanie – narzędzia, które wykonują akcje na podstawie otrzymanych danych, czy też wizualizują je.  

Przykładem jest silnik (przedmiot) wysyłający dane o temperaturze. Te dane są używane do oceny, czy silnik działa zgodnie z oczekiwaniami (wgląd). Wgląd służy do proaktywnego ustalania priorytetów harmonogramu konserwacji silnika (działania).

Ta architektura składa się z następujących komponentów:

  • Urządzenia IoT - urządzenia mogą bezpiecznie rejestrować się w chmurze i mogą łączyć się z chmurą w celu wysyłania i odbierania danych. Niektóre urządzenia mogą być urządzeniami brzegowymi, które wykonują pewne przetwarzanie danych na samym urządzeniu. Do przetwarzania brzegowego należy skorzystać Azure IoT Edge .
  • Brama w chmurze - stanowi centrum chmury dla urządzeń do bezpiecznego łączenia się z chmurą i wysyłania danych. Zapewnia również zarządzanie urządzeniami, możliwości, w tym dowodzenie i kontrolę urządzeń. IoT Hub to hostowana usługa w chmurze, która pozyskuje zdarzenia z urządzeń, działając jako broker komunikatów między urządzeniami i usługami zaplecza. IoT Hub zapewnia bezpieczną łączność, pozyskiwanie zdarzeń, komunikację dwukierunkową i zarządzanie urządzeniami.
  • Obsługa administracyjna urządzeń - w przypadku rejestrowania i łączenia dużych zestawów urządzeń zalecamy korzystanie z usługi IoT Hub Device Provisioning Service (DPS).
  • Przetwarzanie strumieniowe - analizuje duże strumienie rekordów danych i ocenia reguły dla tych strumieni. Do analizy danych oprócz usługi Stream Analytics można skorzystać z narzędzi Apache Spark w usłudze Azure Databricks.
  • Uczenie maszynowe Azure Machine Learning umożliwia wykonywanie algorytmów predykcyjnych na historycznych danych telemetrycznych, umożliwiając realizację scenariuszy, takich jak konserwacja predykcyjna.
  • Do przechowywania danych, które muszą być dostępne natychmiast z urządzenia w celu raportowania i wizualizacji należy skorzystać z Cosmos DB.
  • Magazyn „cold path” przechowuje dane, które są przechowywane przez dłuższy czas i są używane do przetwarzania wsadowego. Dane mogą być archiwizowane w magazynie Azure Blob Storage w nieskończoność przy niskich kosztach i są łatwo dostępne do przetwarzania wsadowego.
  • Transformacja danych manipuluje lub agreguje strumień telemetryczny. Przykłady obejmują transformację protokołu, taką jak konwersja danych binarnych do formatu JSON lub łączenie punktów danych. Jeśli dane muszą zostać przekształcone przed osiągnięciem. W takim przypadku należy skorzystać z usługi Azure Functions , która ma wbudowaną integrację z usługami IoT Hub, Cosmos DB i Blob Storage.
  • Azure Logic Apps - integracja procesów biznesowych obejmować przechowywanie wiadomości informacyjnych, zgłaszanie alarmów, wysyłanie wiadomości e-mail lub SMS-ów lub integrację z CRM.
  • Azure Active Directory do uwierzytelniania i autoryzowania użytkowników.
  • Monitorowanie zabezpieczeń Azure Security Center for IoT zapewnia kompleksowe rozwiązanie zabezpieczające dla obciążeń IoT i upraszcza ich ochronę, zapewniając ujednolicony wgląd i kontrolę, zapobieganie zagrożeniom oraz inteligentne wykrywanie i reagowanie na zagrożenia.

Oprócz już wcześniej wymienionych narzędzi wykorzystywanych do analizy danych, warto jeszcze zwrócić uwagę na:

  • Azure cognitive services – kiedy analiza ma dotyczyć obrazu, języku czy mowy, można wykorzystać dostępne zdefiniowane modele, które można po API REST podpiąć.
  • Usługa Live Video Analytics w ramach usługi IoT Edge udostępnia platformę do tworzenia inteligentnych aplikacji wideo, które rozciągają się na brzeg sieci i chmurę. Platforma oferuje możliwość przechwytywania, rejestrowania i analizowania wideo na żywo wraz z publikowaniem wyników (wideo i/lub analiz wideo) do usług platformy Azure (w chmurze i/lub sieci brzegowej). Platforma może służyć do ulepszania rozwiązań IoT dzięki analizie wideo. Funkcje analizy filmów wideo na żywo w witrynie IoT Edge mogą być łączone z innymi modułami Azure IoT Edge, takimi jak Stream Analytics na IoT Edge, Cognitive Services na IoT Edge, a także usług platformy Azure w chmurze, takich jak Media Services, centrum zdarzeń, Cognitive Services itd., aby tworzyć zaawansowane hybrydowe (na przykład aplikacje brzegowe i w chmurze).

źródło: Microsoft Azure

➔ Sprawdź Hostersów w katalogu oficjalnych partnerów Microsoft

Barbara Halska – na co dzień pracuje w Hostersi Sp. z o.o, gdzie odpowiada za działania presales i ewangelizację rynku w obszarze cloud computing. Od 2016 Microsoft Innovative Educator Expert, od 2017 Microsoft Innovative Educator Fellow. Współautorka podręcznika do kwalifikacji E13 i EE08 na kierunku technik informatyk oraz e-podręcznika „Wstęp do programowania” w projekcie Apki.org. Popularyzatorka większego udziału kobiet w IT i wykorzystywania nowych technologii w edukacji.

 

PYTANIA? SKONTAKTUJ SIĘ Z NAMI

 

Zobacz również: