Intel Edison - mały komputer o potężnych możliwościach

| Technika

Intel Edison to rewolucyjnie mały komputer o dużej wydajności i rozbudowanych zasobach przeznaczony do aplikacji z zakresu Internetu rzeczy (IoT), sprzętu mobilnego (roboty, drony), automatyki domowej i budynkowej, systemów bezpieczeństwa, zdalnego sterowania lub druku 3D. Duża funkcjonalność, liczne peryferie oraz dobre parametry środowiskowe pozwalają na użycie go także w szerokim zakresie rozwiązań półprofesjonalnych.

Intel Edison - mały komputer o potężnych możliwościach

W porównaniu do innych podobnych platform, jakie są dostępne na rynku, np. Raspberry Pi, Edison jest sporo mniejszy pod względem wymiarów zewnętrznych (35,5× 25,0×3,9 mm), jest bardziej wydajny, energooszczędny i funkcjonalny. Ważne jest także, że Intel jako producent bardzo zaangażował się w stworzenie całego środowiska sprzętowego pozwalającego na wykorzystanie komputera, w zasadzie bez dodatkowego wysiłku, jak płytki bazowe z wyprowadzonymi złączami do szybkiego prototypowania, moduły sensorów.

Elementy te są w dużej części zgodne z Arduino, dzięki czemu dla wielu osób nie tworzy on dodatkowych barier na wejściu, zwłaszcza czasowych. Drugim ważnym aspektem Edisona jest dostępność oprogramowania i bibliotek procedur, praktycznie gotowych do wykorzystania i wymagających tylko konfiguracji. To jest bardzo istotna cecha charakterystyczna, bo wiele równoważnych platform wymaga programowania i wiedzy z zakresu IT, co dla wielu potencjalnych nabywców jest kolejną barierą wejścia w świat IoT.

Edison od strony zasobów

Rys. 1. Intel Edison z zaznaczonymi blokami funkcjonalnymi

Głównym elementem komputera Edison jest układ typu S°C wykonany w technologii 22 nm, zawierający dwurdzeniowy procesor Intel Atom taktowany zegarem 500 MHz oraz pomocniczy 32-bitowy mikrokontroler Intel Quark taktowany zegarem 100 MHz. Z procesorem współpracuje duża pamięć RAM 1 GB LP DDR3 pracująca w trybie dwukanałowym i połączona z procesorem 32-bitową szyną danych, co zapewnia dużą przepustowość rzędu 800 MT/s.

Pamięć zamontowana jest na procesorze jako tzw. PoP (Package over Package), aby nie zajmowała miejsca na PCB. System operacyjny (Yocto Linux v.1.6) i dane przechowywane są w pamięci Flash typu eMMC o pojemności 4 GB. Bezsprzecznie pamięci Edisonowi nie brakuje.

Za komunikację bezprzewodową odpowiada zintegrowany moduł firmy Broadcom 802.11a/b/g/n, zawierający Wi-Fi typu dual-band (2,4 i 5 GHz) oraz Bluetooth Low Energy (LE) w wersji 4.0 +2.1 EDR. Na płytce komputera jest umieszczona też antena ceramiczna oraz gniazdo koncentryczne, pozwalające na podłączenie opcjonalnej anteny zewnętrznej.

Komunikacja przewodowa i interfejsy to m.in. 40 linii GPIO, które mogą zostać skonfigurowane jako porty: UART, I²C, SPI, I²S i interfejs do karty pamięci SD, co zapewnia dużą uniwersalność. Kolejne 12 linii GPIO Edisona ma możliwość konfiguracji programowej jako wyjścia PWM, USB 2.0 z OTG oraz jako wyjścia z generatora zegarowego (32 kHz-19,2 MHz). Interfejsy te są dostępne na jednym miniaturowym 70-pinowym złączu łączącym komputer z otoczeniem. Edison zasilany jest napięciem 3,3-4,5 V. Pobór prądu wynosi 100 mA przy 3,3 V. Zakres temperatur pracy wynosi 0...40°C.

Sam komputer to nie wszystko

Fot. 2. Platformy rozwojowe dla Arduino i Breakout Board

Z uwagi na wysoką miniaturyzację sam komputer trudno jest wykorzystać w prototypowaniu lub projektach aplikacji o unikalnych właściwościach. Już samo złącze komunikacyjne jest tutaj problemem, bo jest ono typu HDI i występuje tylko jako do montażu SMT. Aby ten problem nie spędzał snu z powiek, oprócz głównej płytki z komputerem Intel zaprojektował dwa dodatkowe zestawy startowe ułatwiające tworzenie aplikacji.

Ich cechą wspólną jest to, że zawierają one złącza (zasilające i komunikacyjne), niezbędne układy interfejsowe, np. do USB i pozwalają na zamontowanie samego komputera. Zestaw Edison plus płytka rozwojowa stanowi tym samym całość funkcjonalną, umożliwiającą realizację projektów. Poza opisanymi poniżej zestawami na rynku są dostępne jeszcze inne moduły pochodzące od partnerów Intela wspierających Edisona, którzy oferują alternatywne rozwiązania płytek rozwojowych.

Intel Edison Development Board with Arduino - to jedna z bardziej rozbudowanych wersji płytek rozwojowych podobna funkcjonalnie do Arduino Yun i kompatybilna z Arduino Uno. Zawiera 20 cyfrowych linii wejścia-wyjścia, w tym ma 4 piny pracujące jako PWM. Jest też 6 wejść analogowych, UART, I²C, 6-pinowy ICSP (SPI), 2×micro USB i port karty SD. Płytka ma też gniazdo zasilania ze stabilizatorem (7-15 V).

Intel Edison Breakout Board - to z kolei niewielka płytka prototypowa, jej wymiary są tylko odrobinę większe niż samego Edisona. Ma ona wyprowadzone na piny na płytce drukowanej natywne linie IO komputera z logiką 1,8-woltową i pozwala na zmontowanie swojego układu lub zamontowanie złącza. Są też 2 gniazda micro USB i złącze zasilające (fot. 2).

Modułowo - polski akcent dla Edisona

Modułowo - krajowy producent modułów elektronicznych dla edukacji, budowy i rozwoju urządzeń zaprojektował własną płytkę Modulowo Explore E pozwalającą na zamontowanie Edisona i korzystanie z np. modułu GPS, sterownika silnika, czujników itp. Płytka ma dwa złącza duoNECT dla modułów rozszerzających Modulowo Explore, dwa złącza micro USB, w tym USB OTG i konwerter USB/UART, 12-bitowy przetwornik analogowo-cyfrowy, interfejsy SPI i I²C, konwerter poziomów napięć, który umożliwi podłączanie do platformy sygnałów o napięciu do +5 V, ładowarkę baterii, złącze dla dodatkowego zasilania, diody LED sygnalizujące transmisję po UART i zasilanie.

Zestawy rozwojowe partnerów

Poza wyszczególnionymi dwiema płytkami przygotowanymi przez Intela na rynku są zestawy opracowane przez współpracujące firmy zewnętrzne. Poniżej prezentujemy opisy kilku najpopularniejszych, niemniej trzeba pamiętać, że oferta takich produktów szybko się powiększa. Większość takich zestawów to w rzeczywistości płytki nakładkowe Arduino, wykorzystujące zasoby Edisona za pośrednictwem płytki startowej Intela.

Grove Kit firmy Seeed Studio - to zestaw modułowy płytek shieldowych Arduino zawierających czujniki, wyświetlacz, akcelerometr, czujnik dotyku, elementy wykonawcze (przekaźnik, buzzer, LED-y, przyciski) oraz kable i oprogramowanie przeznaczone do szybkiego prototypowania i testowania pomysłów z zakresu IoT.

DF Robot Starter Kit - to z kolei zestaw zawierający płytkę nakładkową Arduino, płytkę z wyświetlaczem i klawiaturą oraz czujniki: światła, dotykowy, PIR, wilgotności, dźwięku i podobne moduły a także serwomechanizm. Całość kierowana jest do miłośników robotyki.

SparkFun Starter Pack for Intel Edison - są to 3 niewielkie płytki, które można spiąć w całość razem z Edisonem, z liniami IO, akumulatorem i płytką bazową do integracji z resztą urządzenia.

Oprogramowanie

Rys. 3. Schemat środowiska programistycznego dla Edisona

Dla Edisona dostępny jest specjalnie przygotowany Yocto Linux 1.6 w formie obrazu Intel IFWI (Integrated Firm-Ware Image), plus programy narzędziowe na komputer PC pozwalające wgrać obraz do pamięci Flash komputera. Konfiguracja następuje z poziomu dołączonego przez USB peceta z zainstalowanym terminalem.

Po zalogowaniu się jako root można wywołać przygotowaną aplikację pozwalającą skonfigurować połączenie internetowe po Wi-Fi lub połączenie lokalne. Wgranie firmware ułatwia przygotowany przez producenta pakiet Intel Edison Board Installer, zawierający drivery dla peceta, z poziomu którego wykonywana będzie operacja, a także odpowiednie narzędzie (Flash Tool Lite).

Wymieniony pakiet Edison Board Installer zawiera też środowisko programistyczne niezbędne do tworzenia aplikacji (rys. 3). Do wyboru mamy: Arduino - zintegrowane środowisko programistyczne umożliwiające pisanie oprogramowania na urządzenia zgodne z Arduino, Eclipse dla piszących w C/ C++ oraz Intel XDK IoT Edition (aplikacje JavaScript on-board app i HTML5).

Po instalacji w zasadzie można od razu skorzystać z jakiegoś gotowego przykładu, aby efektownie błysnąć diodą LED na płytce lub odczytać dane z czujnika. To oczywiście w ramach sprawdzenia, że całość działa, bo oferowane narzędzia programowe są znacznie bardziej złożone i pozwalają na realizację ambitnych projektów.

Dla programistów są przygotowane biblioteki, np. Sensor and I/O Libraries, zawierająca drivery i procedury dla czujników takich jak akcelerometry, czujniki wilgotności, z której można korzystać, programując w C/C++, JavaScript lub Python. Zasoby te oraz inne przykłady dostępne są jako repozytoria GitHub. Planowane jest udostępnienie w niedalekiej przyszłości systemu RTOS jako alternatywy dla Linuksa, co z pewnością otworzyłoby przed Edisonem drzwi do zaawansowanych systemów automatyki, dronów itp.

Na koniec warto dodać, że wsparciem dla osób zainteresowanych wykorzystaniem Edisona jest uruchomiony przez Intela IoT Developer Program, który w ramach społeczności internetowej daje dostęp do wiedzy, narzędzi i oprogramowania pomagającego w tworzeniu aplikacji. Ta część bardzo szybko się rozrasta, już dzisiaj są tam dostępne aplikacje pozwalające na komunikację i przetwarzanie danych w chmurze.

Zaletą tego miejsca jest też to, że na jednej witrynie zgromadzono komplet niezbędnych rzeczy: dokumentację, oprogramowanie, wsparcie techniczne w ramach forum itd. W sytuacji, gdy tematyka IoT kojarzy się wielu osobom z szumem informacyjnym i bałaganem, miejsce to (https://software.intel.com/en-us/iot/home) można uznać za wzór uporządkowania.

Intel Polska
www.intel.pl