Micro:bit – czy to może być alternatywa dla Arduino i Raspberry?

Czas czytania: 11 min.

Micro:bit (zwany również BBC Micro Bit; najczęściej zapisywany jako Micro:bit) to otwarty system embedded wykorzystujący procesor oparty na architekturze ARM. Został zaprojektowany przez BBC do użytku w zakresie edukacji komputerowej w Wielkiej Brytanii. Po raz pierwszy konstrukcję tę zaprezentowano w ramach kampanii Make It Digital BBC, 12 marca 2015 roku. Produkcja została uruchomiona z zamiarem dostarczenia miliona tych urządzeń uczniom w Wielkiej Brytanii. Ostateczna konstrukcja i wszystkie funkcje finalnego urządzenia zostały zaprezentowane 6 lipca 2015 roku, natomiast faktyczna dostawa urządzeń z pewnym opóźnieniem rozpoczęła się w lutym 2016 roku.

Na zdjęciu jeden z naszych zestawów wynalazcy spod znaku micro:bit - moduły Grove z kursem FORBOT.

Micro:bit został zaprojektowany, aby zachęcić dzieci do aktywnego angażowania się w pisanie oprogramowania dla komputerów i systemów wbudowanych oraz budowania nowych rzeczy zamiast bycia tylko konsumentami mediów. 

Płytka ta została zaprojektowana do współpracy z innymi systemami, takimi jak Raspberry Pi, ale może być również wykorzystana zupełnie samodzielnie. Ilość projektów, jakie można zrealizować z pomocą Micro:bit, jest ogromna; zasadniczo nieskończona i ograniczona tylko wyobraźnią dzieci i ich nauczycieli. BBC planowało rozdawać komputer bezpłatnie każdemu dziecku w siódmej klasie (11- i 12-latkowie) w Wielkiej Brytanii, począwszy od października 2015 roku. Oznaczało to około jednego miliona urządzeń. Przed wdrożeniem udostępniono symulator online, aby pomóc nauczycielom w przygotowaniu się do prowadzenia lekcji z wykorzystaniem tej platformy, a niektórzy nauczyciele mieli otrzymać urządzenie już we wrześniu 2015 roku. Potem, od końca 2015 roku, moduły te miały trafić do normalnej, komercyjnej sprzedaży. Finalnie trafiły do niej niemalże trzy miesiące później, 22 marca 2016 roku.

Nie jest to pierwsza inicjatywa BBC, jeśli chodzi o edukację komputerową. W latach ‘80 XX wieku BBC realizowała szeroko zakrojony projekt edukacyjny, który skupiał się m.in. wokół komputera osobistego BBC Micro, jaki stworzono w celach edukacyjnych. BBC Micro było całą serią dziewięciu komputerów edukacyjnych firmy Acorn Computer, które na rynku obecne były od 1981 do 1994 roku. Komputer ten być może byłby tylko ciekawostką i jedną z wielu retro maszyn na świecie, gdyby nie unikatowa architektura procesora, po jaką sięgnął Acorn. Jakkolwiek same BBC Micro oparte były o klasyczny układ MOS 6502 i potem MOS 6512, to posłużyły one firmie do stworzenia swojej własnej, unikatowej architektury procesorów, jaką Acorn wykorzystał później w maszynach takich jak Acorn Archimedes. Chodzi tutaj o Acorn RISC Machine, czyli ARM. To właśnie w brytyjskich szkołach zaczęła się historia najpopularniejszej obecnie architektury dla systemów wbudowanych. To dzięki temu podobieństwu architektury, jakkolwiek sama firma Acorn Computer zniknęła już z rynku, to platformy takie jak Raspberry Pi nadal mogą posługiwać się stworzonym przez nich systemem operacyjnym RISC OS, dedykowanym dla procesorów ARM.

Specyfikacja techniczna modułu

Moduł Micro:bit jest w większości opisywany jako kompaktowa płytka wielkości połowy karty kredytowej, wyposażona w procesor ARM. Moduł mierzy fizycznie 43 × 52 mm i zawiera mikrokontroler z rdzeniem ARM Cortex-M0. Oprócz tego na pokładzie modułu znaleźć można szereg czujników takich jak akcelerometr i magnetometr, a także interfejs Bluetooth i USB. Centralną część płytki modułu Micro:bit zajmuje wyświetlacz złożony z diod LED. Ten prosty „ekranik” złożony z dyskretnych diod elektroluminescencyjnych ma rozdzielczość zaledwie 5×5, jednakże 25 diod LED pozwala na wyświetlanie wielu piktogramów itp., więc jest to zupełnie dostateczne do tego rodzaju modułu. Obok wyświetlacza znaleźć można trzy przyciski; dwa wykorzystywać można w aplikacjach użytkownika, trzeci służy do resetowania procesora. Na dole płytki drukowanej Micro:bit znajdują się wejścia i wyjścia urządzenia, które przechodzą przez pięć złączy pierścieniowych, które stanowią część większego 25-stykowego złącza krawędziowego. 

Zasilanie Micro:bit – Moduł ten można zasilać poprzez piny złącza krawędziowego lub przez złącze USB. Istnieje też możliwość zasilania Micro:bit z baterii podłączonej do dedykowanego złącza na płytce.

Jeśli chodzi o parametry sprzętowe, to Micro:bit ma unikatową architekturę, która wykorzystuje aż dwa mikrokontrolery do działania. Pierwszy z nich to Nordic Semi nRF51822; jest to 32-bitowy mikrokontroler z rdzeniem ARM Cortex-M0, który wyposażony jest w pamięć flash o pojemności 256 KB, statyczny RAM o wielkości 16 KB i interfejs Bluetooth 2,4 GHz w postaci zintegrowanego transceivera o niskim poborze mocy. Rdzeń ARM tego układu ma możliwość przełączania między zegarem taktowania o częstotliwości 16 MHz lub 32,768 kHz. Drugi układ do NXP KL26Z jest to również mikrokontroler z rdzeniem ARM Cortex-M0+, jednakże taktowany on może być zegarem do 48 MHz. Układ ten zawiera kontroler interfejsu USB 2.0 On-The-Go (OTG), wykorzystywany jest jako interfejs komunikacyjny między USB a głównym mikrokontrolerem Nordic Semi. Mikrokontroler odpowiedzialny jest za komunikację urządzenia poprzez USB, a układ z Bluetooth (jeden ze sposobów wgrywania firmware do systemu) jest tym, na którym realnie uruchamiany jest program, jaki wgrywa się do modułu. Układ NXP ten odpowiedzialny jest również za całą komunikację poprzez USB i stabilizację napięcia 3,3 V do zasilania całej płytki, jeżeli układ zasilany jest z USB (4,5–5,25 V). Podczas pracy na bateriach ten stabilizator nie jest wykorzystywany.

Na pokładzie płytki zaimplementowano także dwa scalone sensory oparte na produkowanych przez NXP układach. Pierwszym z nich jest MMA8652; to 3-osiowy czujnik przyspieszenia (akcelerometr). Drugim jest MAG3110, który jest 3-osiowym czujnikiem pola magnetycznego (magnetometr). Oba układy komunikują się z głównym mikrokontrolerem systemu poprzez interfejs szeregowy I²C. Akcelerometr pozwala na wykrywanie ruchu układu: możliwy jest pomiar wartości siły, z jaką poruszono płytką (z wykorzystaniem pewnych obliczeń, można także oceniać prędkość i pozycję modułu), oraz ocena kierunku ruchu. Magnetometr z kolei pozwala na pomiar ziemskiego pola magnetycznego, dzięki czemu może działać jako kompas. Jako że na pomiar tegoż pola wpływ mają znajdujące się w okolicy modułu elementy żelazne (i inne ferromagnetyki), to magnetometr w module Micro:bit może funkcjonować także jako prosty wykrywacz metali. Więcej sensorów i układów wykonawczych dołączyć można poprzez nietypowe złącze krawędziowe, w jakie wyposażono omawianą płytkę. Zestaw złącz I/O zawiera trzy złącza pierścieniowe (plus jedno dla zasilania i jedno dla masy: razem pięć), które umożliwiają podłączenie ich z pomocą krokodylków lub wtyków bananowych o średnicy 4 mm [17]. Oprócz tego na krawędzi modułu znaleźć można także bardziej klasyczne 25-stykowe złącze krawędziowe z dwoma lub trzema wyjściami PWM, od sześciu do siedemnastu styków GPIO (w zależności od konfiguracji mikrokontrolera), sześć wejść analogowych, interfejs szeregowe (UART), SPI oraz I²C. Pozwala to na podłączanie niemalże dowolnych układów i modułów do płytki Micro:bit.

Na rynku dostępne są liczne rozszerzenia dla Micro:bit pozwalające na wyprowadzenie sygnałów ze złącza krawędziowego płytki na płytkę uniwersalną lub płytkę stykową jak w przypadku innych modułów edukacyjnych. Tego rodzaju rozwiązania dostarczają m.in. firmy SparkFun czy Grover. Dostępne są także liczne płytki rozszerzeń dla Micro:bit, które uzupełniają funkcje układu o możliwości takie jak sterowanie silnikami DC, krokowymi i serwomotorami, wyświetlacz LCD czy głośnik. Zasadniczo do płytek Micro:bit podłączyć można dowolne peryferia, jakie wykorzystuje się z innymi modułami deweloperskimi, takimi jak Arduino czy Raspberry Pi.

Szerokie możliwości programowania

Moduł edukacyjny jest tak wartościowy, jak wartościowe jest jego zintegrowane środowisko deweloperskie (IDE). Bez odpowiednich narzędzi programistycznych trudno jest stworzyć firmware dla dowolnego systemu wbudowanego nawet fachowcom, tym bardziej dla amatorów wysokiej klasy wygodne, łatwe w użytku i nauce IDE jest ważne. W przypadku Micro:bit twórcy systemu doskonale zdawali sobie z tego sprawę, więc dużo sił zainwestowano w stworzenie ergonomicznych środowisk do programowania tych modułów.

Istnieją dwa oficjalne edytory kodu dla Micro:bit. Są one do pobrania na stronie Micro:bit Foundation: 

  • Microsoft MakeCode (wcześniej rozwijany jako edytor Microsoft PXT) 
  • MicroPython

Oprócz tych dwóch środowisk kiedyś wspierane były środowiska CodeKingdoms, wykorzystujące do programowania JavaScript oraz IDE Microsoft Block Editor, oparte na Google Blockly i Microsoft TouchDevelop.

Pierwsze z wymienionych wspieranych środowisk – Microsoft MakeCode to wyglądający podobnie jak Snap!, czy Scratch graficzny język programowania. Umożliwia on także zapisywanie programów do plików i pracę z kodem w języku JavaScript. Mówiąc ściślej, zgodnie z dokumentacją techniczną środowiska dla programistów: “Programy MakeCode mogą być tworzone w języku blokowym (graficznym), statycznym TypeScriptcie lub w statycznym języku Python. Zarówno programy blokowe, jak i napisane w Pythonie są konwertowane na Statyczny TypeScript przed kompilacją do języków niższego poziomu. Bloki są realizowane za pomocą Google Blockly. Statyczny TypeScript to podzbiór języka TypeScript (rozszerzenie dla języka JavaScript), które umożliwia pisanie statycznego kodu. Można go skompilować do standardowego JavaScript”.

Programowanie w języku Python na Micro:bit zapewnia z kolei wspomniane środowisko MicroPython. Użytkownicy tego modułu mogą pisać skrypty w języku Python w edytorze internetowym Micro:bit, które są następnie łączone z oprogramowaniem układowym MicroPython i przesyłane do urządzenia. Do MicroPythonowego REPL (wysokopoziomowa struktura w firmware Micro:bit, będąca interpreterem języka MicroPython) poprzez wirtualny port szeregowy, emulowany przez interfejs USB. Pozwala to na bezpośrednią interakcję z urządzeniami peryferyjnymi Micro:bit.

Firmware Micro:bit został stworzony przy użyciu środowiska programistycznego ARM Mbed. System wykonawczy i interfejs programowania wykorzystują usługę kompilatora działającego w chmurze Mbed do kompilacji kodu użytkownika. Skompilowany kod programu jest następnie flashowany na urządzeniu za pomocą połączenia USB lub Bluetooth. Po podłączeniu do komputera urządzenie pojawia się jako dysk USB, a kod można wgrywać do modułu, przeciągając go i upuszczając na dysk USB jak zwykły plik. Dzięki temu rozwiązaniu niezależnie od wybranego IDE programowanie modułu jest bardzo proste, nawet dla użytkowników, którzy nie mieli wcześniej do czynienia z tego rodzaju systemami.

Oprócz opisanych powyżej oficjalnych środowisk programistycznych dla Micro:bit, na moduł można tworzyć oprogramowanie, korzystając z innych edytorów różnego rodzaju kodów. Skorzystać można z:

  • Edytora codethemicrobit.com dedykowanego do języka blokowego uzupełnianego JavaScriptem.
  • Mu – edytora języka Python.
  • Espruino – interpretera dla języka JavaScript.
  • Edytora EduBlocks, który pozwala na wykorzystanie mieszanki schematu blokowego i języka MicroPython do kontroli układu.

Micro:bit wspiera także inne języki programowania; z różną wydajnością i łatwością programowania, ale nie o to w tego rodzaju układach przecież chodzi. Dzięki tak szerokiemu wyborowi języków każdy programista może spróbować swoich sił w zabawie z modułami Micro:bit. Dostępne języki programowania to:

  • Free Pascal,
  • Simulink ze środowiska Matlab do logowania sygnałów, strojenia parametrów i wykonywaniu kodu Simulinka (schematów blokowych) na module,
  • C++,
  • Forth,
  • Lisp,
  • Rust,
  • Ada,
  • Swift,
  • BASIC.

Oprócz tak licznych IDE, jak i wspieranych języków programowania dla BBC Micro:bit powstał kompaktowy, minimalistyczny system operacyjny Zephyr OS. Zephyr to miniaturowy system operacyjny czasu rzeczywistego dla sieciowych systemów wbudowanych, o ograniczonych zasobach i innych urządzeń wbudowanych (z naciskiem na typowe mikrokontrolery). Obsługuje on wiele architektur układów. Wydany został na licencji Apache 2.0. Oprócz samego jądra system operacyjny Zephyr zawiera wszystkie niezbędne komponenty i biblioteki wymagane do opracowania pełnej aplikacji, takie jak sterowniki urządzeń, stosy protokołów, systemy plików i wsparcie dla aktualizacji oprogramowania układowego modułu, na którym pracuje Zephyr.

Porównanie z innymi edukacyjnymi modułami Arduino i Raspberry Pi

Obecnie największy udział w rynku mają dwie platformy, stworzone z myślą o edukacji elektronicznej: Arduino oraz Raspberry Pi. Te dwa ekosystemy wiodą prym we współczesnym świecie modułów deweloperskich dla hobbystów i amatorów. Nadają one kształt budowanym dodatkom i tworzą de facto standardy przemysłowe tego sektora.

Porównanie z Arduino

Na zdjęciu Arduino Uno Rev3.

Arduino to firma oferująca otwarty sprzęt i oprogramowanie deweloperskie. Firma ta projektuje i produkuje płytki deweloperskie oparte o mikrokontrolery ogólnego przeznaczenia – najczęściej układy z rodziny Atmel AVR (obecnie będące własnością firmy Microchip). Produkty te są objęte licencją GNU Lesser General Public License (LGPL) lub GNU General Public License (GPL) zezwalającą na produkcję płytek Arduino i dystrybucję oprogramowania przez kogokolwiek. Moduły Arduino są dostępne w handlu w postaci wstępnie zmontowanej lub jako zestawy do samodzielnego wykonania. Na rynku jest też sporo klonów tych modułów oraz kompatybilnych ze standardem wprowadzonym przez Arduino systemów wykorzystujących np. inne mikrokontrolery (takie jak układy ESP8266/ESP32 czy mikrokontrolery z rdzeniem ARM z rodziny STM32).

Projekt Arduino rozpoczął się w 2005 r. Jako program dla studentów Instytutu Projektowania Interaktywnego w Ivrea we Włoszech. Jego celem było stworzenie niedrogiego i łatwego dla nowicjuszy i profesjonalistów sposobu tworzenia urządzeń, które będą współpracować z otoczeniem za pomocą czujników i siłowniki. Typowe przykłady takich urządzeń przeznaczonych dla początkujących hobbystów to proste roboty, termostaty i detektory ruchu. Nazwa Arduino pochodzi od baru w Ivrea, gdzie spotykali się niektórzy założyciele firmy. Bar został nazwany na cześć Arduina z Ivrea, który był markizem Ivrei i Królem Włoch w latach 1002 – 1014.

Płytki Arduino są wyposażone w zestawy cyfrowych i analogowych pinów wejściowych i wyjściowych, które mogą być połączone z kartami rozszerzeń (tzw. shieldami) lub płytkami stykowymi (do prototypowania), jak i innymi obwodami. Moduły Arduino wyposażone są w interfejs szeregowy, emulowany przez USB, który pozwala na podłączenie układu do komputera PC w celu programowania czy komunikacji z komputerem. Mikrokontrolery w układzie można programować przy użyciu języków programowania z pomocą C oraz C++. Siłą Arduino jest jego IDE oraz wgrywany w układy bootloader, który pozwala na łatwe programowanie układów bez wykorzystania dedykowanego (co w tej branży oznacza drogiego i skomplikowanego w użyciu) programatora. Oprócz oficjalnego Arduino IDE istnieją także inne narzędzia programistyczne dla modułów z tej rodziny, co pozwala na programowanie tych płytek m.in. przy wykorzystaniu MicroPythona.

Jeśli chodzi o porównanie sprzętowe, to Micro:bit wygląda na dużo potężniejszy wydajnościowo układ (patrz tabela poniżej), dzięki wyposażeniu w szybki, 32-bitowy procesor o podobnej częstotliwości zegara oraz większej ilości pamięci (Flash i RAM).

ModułMicro:bitArduino UNO
Główny układnRF51822ATmega328P
Architektura mikrokontrolera32 bit ARM Cortex M08 bit AVR
Ilość pamięci programu Flash256 KB32 KB
Ilość pamięci RAM16 KB2 KB
Częstotliwość zegara procesora16 MHz16 MHz
Wyświetlanie danychMacierz LED 5×51 LED
Przyciski2 przyciski ogólnego przeznaczeniabrak
BluetoothTakbrak
AkcelerometrTakbrak
MagnetometrTakbrak
Źródła zasilaniaUSB / zasilacz zewnętrzny / bateriaUSB / zewnętrzny zasilacz

Jak widać z powyższego porównania BBC Micro:bit oferuje znacznie wyższą wydajność niż typowy moduł Arduino przy tej samej częstotliwości zegara. Wynika to głównie ze zmiany architektury procesora z AVR na ARM, która, oprócz szerszego słowa (8-bit vs 32-bit), jest też po prostu wydajniejsza. Nie bez znaczenia jest tutaj także większa ilość pamięci RAM oraz pamięci programu. Z drugiej strony, moduł Arduino ukazał się na rynku 10 lat wcześniej, zanim konstrukcja BBC pojawiła się w brytyjskich szkołach. Usprawiedliwia to poniekąd różnicę w parametrach sprzętowych, ale nie ona może być najważniejszym czynnikiem decydującym o przydatności poszczególnych modułów w warsztacie amatora-hobbysty.

Z jednej strony, Micro:bit wiele środowisk programistycznych i języków programowania (nawet bardzo egzotycznych), a Arduino ograniczone jest do swojej implementacji C/C++. Z drugiej strony ekosystem, który powstał wokół Arduino, jest znacznie większy niż ten, jaki wytworzył się wokół modułu BBC. Wynika to z jednej strony z faktu, że Arduino jest konstrukcją o dziesięć lat starszą, a dodatkowo jest pierwszym tego rodzaju modułem, jaki ukazał się na światowym rynku. Może być to spowodowane faktem, że podstawowym celem tworzenia Micro:bita przez BBC był rynek edukacyjny w Wielkiej Brytanii, a nie światowy rynek hobbystów, artystów i innych, jak w przypadku Arduino.

Porównanie z Raspberry Pi

Raspberry Pi 4 model B.

Raspberry Pi to seria małych komputerów jednopłytkowych opracowanych, które podobnie jak Micro:bit, powstały w Wielkiej Brytanii. Komputery te stworzone zostały przez Raspberry Pi Foundation w celu promowania nauczania podstaw informatyki w szkołach i w krajach rozwijających się. Pierwszy model komputera stał się znacznie bardziej popularny, niż spodziewali się autorzy konstrukcji, sprzedając się doskonale również poza swoim rynkiem docelowym, np. do zastosowań takich jak robotyka. Komputer ten nie ma w zestawie urządzeń peryferyjnych (takich jak np. klawiatura czy mysz) ani obudowy. Niektóre akcesoria tego typu są jednak dodawane do modułu w oficjalnych i nieoficjalnych zestawach.

Według Raspberry Pi Foundation do lutego 2015 roku sprzedano ponad 5 milionów komputerów Raspberry Pi, co czyni go najlepiej sprzedającym się brytyjskim komputerem. Do listopada 2016 roku sprzedano 11 mln sztuk, a do marca 2017 roku 12,5 miliona. Czyni to go trzecim najlepiej sprzedającym się komputerem ogólnego zastosowania na świecie. W 2019 roku osiągnięto pułap 25 milionów sztuk. Te ogromne liczby podkreślają, jak popularna jest ta maszyna.

Dotychczas Raspberry Pi Foundation wprowadziło na rynek cztery modele swoich flagowych komputerów jednopłytkowych (z szeregiem podmodeli dla każdego). Dodatkowo na rynek wprowadzono kompaktowe Raspberry Pi Zero oraz dedykowane do bardziej profesjonalnych zastosowań SoMy (System na Module) Raspberry Pi Compute Module. Najnowszy komputer z tej rodziny, Raspberry Pi 4 Model B został wypuszczony na rynek w czerwcu 2019 roku. Wyposażony jest w 64-bitowy, czterordzeniowy procesor z rdzeniami ARM Cortex-A72 taktowanymi zegarem o częstotliwości 1,5 GHz (1500 MHz!) z 2 MB pamięci podręcznej L2. System może mieć do 4 GB pamięci RAM. Na pokładzie modułu znaleźć można interfejs Wi-Fi 802.11ac, Bluetooth 5, oraz gigabitowy Ethernet, a także dwa porty USB 2.0 i dwa USB 3.0. Komputer Raspberry Pi 4 Model B obsługuje do dwóch monitorów w rozdzielczości 4K poprzez złącza microHDMI. Komputer zasilany jest napięciem 5 V przez złącze USB-C.

Jeśli chodzi o możliwości rozbudowy czy podłączanie dodatkowych sensorów i układów wykonawczych, Raspberry Pi oferuje 40-pinowe złącze GPIO, na którym znajdziemy wyprowadzone liczne interfejsy cyfrowe, takie jak SPI, UART czy I2C, linie PWM, a także zwykłe cyfrowe linie I/O. Jedyne, czego brakuje układowi w porównaniu do opisanych powyżej konstrukcji, to linii analogowych; moduł ten nie ma zintegrowanych przetworników analogowo-cyfrowych i cyfrowo-analogowych. Do złącza GPIO podłączane są tak zwane nakładki HAT. Jest to standardowy sposób rozszerzania możliwości Raspberry Pi. Oprócz 40-pinowego złącza GPIO, moduł wyposażony jest w dwa złącza ZIF do podłączenia kamery przez szeregowy interfejs MIPI-CSI i ekranu LCD poprzez podobny interfejs MIPI-DSI.

Cóż, cały ten wysiłek… a porównanie parametrów Raspberry Pi do modułu Micro:bit czy Arduino jest w ogólności pozbawione sensu. Z łatwością zauważyć można, że moduł ten ma procesor taktowany prawie sto razy szybciej, w dodatku wyposażony w niejeden, a w cztery mocne rdzenie ARM. Tak samo ilość pamięci RAM i programu jest większa o wiele rzędów wielkości. W odróżnieniu od dwóch powyższych systemów wbudowanych i opartych na mikrokontrolerach Raspberry Pi jest normalnym komputerem, na którym można uruchomić system operacyjny (różne dystrybucje Linuxa, RISC OS, Androida i inne) i po podłączeniu myszy, klawiatury oraz ekranu korzystać jak z normalnego komputera. Można go oprogramować wykorzystując typowo C, C++ lub Pythona, ale istnieją również implementacje wszystkich innych języków, jakie uruchomić można na Linuxie.

Podsumowanie

Na tle Raspberry Pi Arduino i BBC Micro:bit mają zbliżone parametry (z lekką przewagą modułu BBC). Czy to oznacza, że Raspberry Pi jest lepszy od mniejszych konkurentów? Oczywiście, że nie; sprawa jest bardziej skomplikowana. Nawet jeżeli weźmiemy pod uwagę inne czynniki, takie jak ilość dostępnych języków programowania (tutaj Micro:bit i Raspberry Pi są blisko siebie w czołówce), zintegrowane peryferia (Micro:bit wygrywa swoim wyświetlaczem) czy ilość wyprowadzonych interfejsów (Arduino i Micro:bit mają przewagę dzięki wejściom i wyjściom analogowym), to trudno wskazać zwycięzcę. Jeśli spojrzy się na te platformy pod kątem społeczności i ekosystemu, to Arduino, jak i Raspberry Pi może pochwalić się ogromną bazą użytkowników, którzy chętnie dzielą się swoją wiedzą oraz dużą ilością modułów rozszerzeń.

Aby poprawnie ocenić wszystkie trzy wymienione platformy, należy spojrzeć na nie przez pryzmat ich aplikacji. Raspberry Pi jest pełnoprawnym komputerem jednopłytkowym, co oznacza, że idealnie nadaje się do konstruowania zaawansowanych systemów kontroli, serwerów itp., które wymagają systemu operacyjnego z zainstalowanym, wysokopoziomowym oprogramowaniem. Wymaga to znajomości systemu operacyjnego (zazwyczaj Linux) i normalnych języków programowania. Arduino z kolei dedykowane było głównie artystom i hobbystom. Dzięki prostemu środowisku programistycznemu napisanie programu i wgranie go do modułu wymaga jedynie znajomości C/C++, co pozwala na tworzenie prostych systemów automatyki, niewielkich robotów czy sterowanie np. instalacjami artystycznymi. Z kolei Micro:bit dzięki dużej ilości dostępnych IDE, zwłaszcza ze wsparciem dla programowania graficznego, idealnie nadaje się do edukacji, zwłaszcza wśród najmłodszych. Nawet dla starszych uczniów Micro:bit może być przydatny z uwagi na inne, bardziej zaawansowane IDE, które pozwalają na naukę innych języków programowania.

Dodaj komentarz