Mbed - płytka prototypowa o nieograniczonych możliwościach

| Technika

Mbed to doskonale znana, mała i niedroga platforma do prac rozwojowych, przeznaczona do szybkiego tworzenia układów prototypowych z mikrokontrolerami. Narzędzie to ułatwia i przyspiesza rozpoczęcie pracy z wykorzystaniem układów ARM. Platforma przeznaczona jest dla użytkowników, którzy dopiero odkrywają projektowanie układów wbudowanych - nie tylko profesjonalistów, ale także studentów i hobbystów. Mają oni teraz do dyspozycji nową opcję - płytkę prototypową mbed.

Mbed - płytka prototypowa o nieograniczonych możliwościach

Fot. 1. Platforma aplikacyjna mbed

Platforma mbed została zaprojektowana i jej rozwój jest wspierany przez firmę ARM. Podstawowa wersja opiera się na mikrokontrolerze NXP LPC1768 z rdzeniem ARM Cortex-M3, wyposażonym w interfejsy Ethernet, USB, CAN, SPI oraz I²C. Mbed ma postać 40-stykowego modułu DIP o wymiarach 54×26 mm i może być zasilany z USB.

Jest to samodzielny komputer, który można podłączyć do peceta przez USB. Dla zachowania niskiej ceny urządzenie to zostało zaprojektowane jako komponent systemowy mbed, a nie kompletna platforma ewaluacyjna zawierająca wiele układów peryferyjnych. Poza tym w przypadku kompletnych platform trudno jest je dostosować do wymaganego dla projektu małego rozmiaru.

Kiedy projektant próbuje stworzyć produkt wielkości karty kredytowej, napotyka problem w postaci płytki o zbyt dużych rozmiarach zawierającej wiele niepotrzebnych komponentów i peryferii. Z tego właśnie względu stworzono płytkę o minimalnej funkcjonalności, aby użytkownik mógł ją rozbudować zgodnie ze swoimi potrzebami.

Płytka modułowa

W oparciu o te założenia powstała płytka modułowa mbed, o rozmiarach zbliżonych do rozmiarów karty kredytowej, współpracująca z procesorem LPC1768. Zawiera ona dwa 20-stykowe złącza do przewodów połączeniowych oraz wiele innych elementów, takich jak wyświetlacz LCD 128×32, trzyosiowy akcelerometr do kontroli ruchu, czujnik temperatury, gniazdo do łączności bezprzewodowej ZigBee lub Wi-Fi, gniazda Ethernet i USB oraz głośnik.

Komunikacja

Fot. 2. Widok płytki z zamontowanym modułem rozszerzającym

Największym atutem platformy jest komunikacja, która pozwala na połączenie z Internetem i wykorzystanie urządzenia jako IoT - Internet of Things. Wbudowane porty Ethernetu i USB pozwalają na podłączenie pamięci Flash lub modemu 3G oraz gniazda "xbee" pozwalającego na podłączanie modułów ZigBee, Wi-Fi i Bluetooth.

Dostępne są także czujniki temperatury i przyspieszenia, sterownik PWM, dźwięk, graficzny wyświetlacz LCD oraz potencjometry i przyciski. Podobnie jak inne narzędzia rozwojowe, płytka rzadko będzie spełniać wymogi projektowe konkretnego prototypu, jednak dwurzędowe złącza ułatwiają jej rozszerzenie.

Biblioteka modemów USB

Dostępna jest już nowa, interesująca aplikacja mbed, która umożliwia użytkownikom połączenie platformy z mbed z siecią mobilną za pośrednictwem powszechnie dostępnych modemów USB 3G, co pozwala na pełne korzystanie z zasobów internetowych. Niedawno ukazała się też informacja o powstaniu biblioteki dla modemu USB Vodafone, dostępnej na stronie dla projektantów mbed.org (http://goo.gl/9OQl×). Jest ona kompatybilna z nową płytką modułową mbed, pozwalając użytkownikom na podłączenie modemu USB do modułu mbed, aby uzyskać w pełni funkcjonalną platformę rozwojową.

Warto zauważyć, że zespół projektantów mbed podjął się także skopiowania do tej biblioteki modemów USB (http://goo.gl/moLgG) dostępnych w USA przy użyciu metody Sprint. Aplikacja ta zwiększa dostępne możliwości komunikacyjne, umożliwiając korzystanie z Ethernetu, Wi-Fi i 3G. Dzięki temu mbed stanie się jeszcze lepszą platformą do szybkiego tworzenia prototypów urządzeń M2M i IoT, niezależnie od dostępnej formy łączności z Internetem.

Dostępne funkcje obejmują: wysyłanie/odbieranie wiadomości SMS, interfejs protokołu TCP/IP, klienta NTP, klienta HTTP oraz klienta Web Socket; mogą być także obsługiwane inne protokoły. Biblioteka wykorzystuje tę samą architekturę łączności co biblioteki Wi-Fi i Ethernet opracowane przez mbed, więc przełączanie prototypów na inne typy łączności wymaga zmiany zaledwie kilku linii kodu. Aby zaprezentować więcej informacji dotyczących koncepcji IoT, przygotowany został materiał wideo, dostępny pod adresem http://goo.gl/b4ppH

Narzędzia

Warto także wspomnieć o narzędziach projektowych dostępnych dla tej platformy. Tym, co odróżnia środowisko projektowe mbed od pozostałych, są narzędzia oparte na "chmurze". Oznacza to, że kod użytkowników jest pisany i kompilowany w dostępnej w sieci platformie Integrated Development Environment (IDE), pracującej na systemach Windows, Linux lub Mac OS X.

Kompilator mbed pozwala projektantowi na tworzenie programów w C++ i kompilowanie oraz pobieranie ich na procesor NXP LPC1768 bez konieczności instalacji i konfiguracji, ponieważ pracuje on online. Kompilator online korzysta z platformy ARM RealView, umożliwiającej tworzenie przejrzystego i wydajnego kodu, odpowiedniego także do zastosowań komercyjnych. Istniejący kod aplikacji ARM oraz middleware mogą być też przesyłane do mbed, a narzędzia programistyczne mogą być wykorzystywane równocześnie z profesjonalnymi narzędziami produkcyjnymi.

Wsparcie dla mikrokontrolerów mbed dostępne jest na stronie www.mbed.org, na której użytkownicy mogą też przechowywać swoje programy. Strona ta zawiera także blogi, fora, biblioteki programów przesłanych przez użytkowników oraz inne zasoby dla projektantów, takie jak SDK dla C/C++ pozwalające na wydajne programowanie wysokiego poziomu dla urządzeń peryferyjnych w połączeniu z bogatymi bibliotekami i przykładami kodu publikowanymi przez społeczność użytkowników platformy.

Na sam koniec warto wspomnieć także o podręczniku i zestawie notatek z kursów, opublikowanych przez dr. Roba Toulsona z Anglia Ruskin University w Wielkiej Brytanii. Są one dostępne na stronach: http://goo.gl/C4WP4 i http://goo.gl/cCqsP.

Mark Cundle
RS Components

www.rspoland.com