Pokazywanie postów oznaczonych etykietą mikrokontrolery. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą mikrokontrolery. Pokaż wszystkie posty

18 maja 2019

Ciekawy raport IoT z wyników ankiety "Eclipse IoT Survey Report"

Czasami zastanawia Was, co w świecie IoT (Internet of Things) się tak na prawdę dzieje.
Mnie również tego typu pytania zajmują i poszukuję stale inspiracji dot. tego, co innych motywuje do wchodzenia w tematykę Internetu Rzeczy. Ogólnie w tematach wokół IoT,  dzieje się wiele: jest wiele konferencji, artykułów, wpisów na blogach, powstają startupy, które wytwarzają nowe koncepty, pojawiają się patenty z Internetu Rzeczy na świecie. Obserwując liczby w temacie IoT mamy wrażenie, że ilość kontentu/wpisów w sieci lawinowo wzrasta.
Najbardziej wiarygodne moim zdaniem okazać się mogą ankiety robione przez niekomercyjne organizacje z ruchu Open Source. Chciałbym dzisiaj przytoczyć i omówić jeden z raportów wytworzony na podstawie ankiety Eclipse IoT Survey Report Reveals Arm & Linux Dominate, Security Concerns.



W kwietniu 2019 roku Grupa robocza Eclipse IoT opublikowała raport z prośbą do globalnej społeczności programistów IoT o podzielenie się swoimi spostrzeżeniami, wymaganiami i priorytetami. Ankietę przeszło 1700 osób w okresie od lutego do marca 2019 r. Wyniki były dość interesujące. Oto główne kierunki wypowiedzi ankietowanych:

  • Internet Rzeczy napędza dziś rzeczywiste, komercyjne wyniki. 65% respondentów pracuje obecnie nad projektami Internetu Rzeczy profesjonalnie lub będzie w ciągu najbliższych 18 miesięcy.
  • Programiści IoT używają głównie C, C ++, Java, JavaScript i Python
  • AWS, Azure i GCP to wiodące platformy chmurowe IoT
  • Trzy najważniejsze obszary branżowe pozostają takie same jak w ubiegłym roku: platformy IoT, automatyka domowa i automatyka przemysłowa / IIoT.
  • MQTT pozostaje dominującym protokołem komunikacji IoT wykorzystywanym przez programistów
  • Eclipse Desktop IDE jest wiodącym środowiskiem IDE do budowania aplikacji IoT

Ostatni punkt może być nieco stronniczy, ponieważ ankieta została przeprowadzona przez grupę roboczą Eclipse IoT, więc większość respondentów znała już środowisko IDE Eclipse.


Obawy dotyczące bezpieczeństwa nieznacznie spadły w porównaniu z ubiegłym rokiem, ale nie jest zaskoczeniem, że 38% respondentów wymienia je jako najważniejsze, ponieważ jest to problem tak skomplikowany do rozwiązania.

Linux jest w zasadzie własnym światem dla bram IoT i węzłów brzegowych o penetracji 76%, podczas gdy FreeRTOS dominuje w przypadku urządzeń z ograniczeniami. Większość systemów operacyjnych innych niż Linux odnotowuje spadek między 2018 a 2019 r. 
Szczególnie w przypadku oprogramowania typu serwery fizyczne (bare metal), który spadł z 20% do 11%. Jedynymi dwoma systemami innymi niż Linux z rosnącym udziałem w rynku są VxWorks i Huawei LiteOS (na licencji BSD). Dystrybucje Linuksa oparte na Debianie, takie jak Ubuntu i Raspbian, a nawet sam Debian dominuje w świecie Linuksa, przy czym co najmniej 30% respondentów wybrało pochodne Debiana do swoich projektów IoT
Projekt Yocto również okazał się silny. Jeśli nie znacie Yacto, warto wspomnieć, że dzięki temu projektowi możemy zautomatyzować budowanie od zera kernela Linuxa i innych systemów wbudowanych. Daje to developerom wygodę w postaci powtarzalności builda oraz łatwego sposobu aktualizacji.



ARM dominował ze swoimi rdzeniami klasy Cortex-M MCU w urządzeniach z ograniczeniami, podczas gdy jest to nieco bardziej rozłożone dla urządzeń klasy brama (gataways) z 70% procent na respondentów korzystających z ARM, a 42% z rozwiązaniami firmy Intel. 
Suma przekracza 100%, ponieważ niektórzy respondenci po prostu używają obu.


Trzema najlepszymi platformami chmurowymi zarządzały duże amerykańskie firmy. Amazon Web Services (AWS) korzysta z 34% respondentów, Microsoft Azure - 23%, a Google Cloud Platform (GCP) - 20%.

Wybrany język programowania jest w dużej mierze przypadkiem wyboru odpowiedniego narzędzia do pracy z C i C ++ preferowanym językiem dla ograniczonych urządzeń. Java i Python dla bram i węzłów brzegowych oraz Java i JavaScript dla chmury IoT.



Jeśli chodzi o protokoły komunikacyjne, HTTP (REST API). Jest na pierwszym miejscu z 49%, następnie MQTT (42%) i WebSockets (26%). Odpowiedzi na protokoły łączne były nieco dziwne, ponieważ łączyły protokoły „średniego poziomu”, takie jak TCP / IP (54,1%) z rozwiązaniami sprzętowymi, takimi jak WiFi (48,2%) i Ethernet (41,2%). Wynikać to może, że wartości dodane w produktach IoT są złożone z wielu protokołów i usług wokół nich.




Materiały dodatkowe:






20 listopada 2008

Arduino, Freeduino, Pyduino - szybki start z mikrokontrolerami AVR

Filozofia OpenSource dociera zarówno do twórców software, jak również hardware. W ukryte zakamarki elektroniki, do jednostek arytmetyczno-logicznych, pamięci Flash, do mikrosystemów, do wszystkich zakątków, które możemy sobie wyobrazić. Skoro telefon może być na otwartym oprogramowaniu, to dlaczego nie pralka, lodówka, odkurzacz, roboty przemysłowe :-) Dla ułatwienia zabawy z mikrokontrolerami dziś polecam gotowy, do nabycia lub samodzielnego montażu zestaw Arduino z interfejsami USB lub RS-232







oraz jego otwarty pierwowzór Freeduino






Dla lubiących własne przygody z lutownicą Arduino w działaniu - wesołe wprowadzenie do tematu:




Przykładowe zabawki ;)









Kontrolowanie Arduino zdalnie z formularza HTML






Temat zainteresował mnie otwartym podejściem do nauki programowania urządzeń wbudowanych. Wszystkie schematy oraz informacje konstrukcyjne są dostępne za darmo :-). Tani hardware oraz rozbudowane podręcznik i biblioteki w językach C, Java i Python do pobrania z sieci. Bogactwem otwartych rozwiązań jest także prostota użycia. Atutem jednakże są niezliczone przykłady potwierdzające możliwości modułu. A dla chcących połączyć swój system mikroprocesorowy z interfejsem 3D systemu animacyjnego Blender również się coś znajdzie :)

Polecam poniższe materiały edukacyjne:
The Arduino Duemilanove ("2009") is a microcontroller board based on the ATmega168
Arduino Board - Serial Interface
Development Tools
Installing Arduino on Linux
Install Arduino on Ubuntu Linux
SimpleMessageSystem - library for Arduino 0004 and up
Arduino and Linux TTY

Arduino Pulse Width Modulation

Arduino-Python 4-Axis Servo Control

Pyduino

Arduino-Python bridge

Python with Arduino

Board Setup and Configuration

Joystick Control of a Servo

Arduino Noise Maker

Serial communication

http://www.solarbotics.com/products/28920/


Linki dla ciekawskich :-)
PHP Library for controlling a 633(serial) LCD & Keypad

http://www.varesano.net/blog/fabio/serial+rs232+connections+python

Python serial tty console application

Controlling GPIB, RS232, and USB instruments - Python GPIB etc. support with PyVISA

http://pyvisa.sourceforge.net/pyvisa.pdf

If you need to control gpib/visa-instruments, pyvLab could be the right thing for you.

Blog z niebanalnymi projektami elektronicznymi