Modułowe ekosystemy edukacyjne i ewaluacyjne

Modułowe ekosystemy edukacyjne i ewaluacyjne

We wrześniowej odsłonie naszej stałej rubryki „Elektronika w Praktyce” przyglądamy się aktualnym trendom na rynku zestawów ewaluacyjnych oraz edukacyjnych, opisujemy najpopularniejsze standardy połączeń pomiędzy modułami głównymi i nakładkami funkcyjnymi, prezentujemy też subiektywny wybór najciekawszych ekosystemów prototypowych dostępnych w sprzedaży.

Zestawy ewaluacyjne pełnią niezwykle ważną funkcję w arsenale narzędzi współczesnego elektronika: pozwalają bardzo szybko i łatwo zapoznać się z funkcjonalnością układu scalonego bądź modułu, bez konieczności wykonywania jakichkolwiek prac projektowych lub montażowych. Rynek płytek uruchomieniowych to zarówno proste układy zawierające kilka lub kilkanaście elementów, jak i niezwykle bogato wyposażone, kilkunastowarstwowe płyty drukowane przeznaczone do pracy z najnowocześniejszymi macierzami FPGA, procesorami aplikacyjnymi czy też układami mixed-signal o najwyższej wydajności. Ważne miejsce na rynku EVB (ang. EValuation Boards) zajmują ekosystemy elektroniki modułowej, które z równym powodzeniem znajdują swoich odbiorców wśród początkujących amatorów, jak i profesjonalistów opracowujących prototypy nowych urządzeń komercyjnych.

mikroBUS (MikroElektronika)

Większość elektroników, zapytana o pierwsze skojarzenie z hasłami „nakładka” czy „moduł”, wskaże zapewne bez zastanowienia platformę Arduino lub Raspberry Pi. Pomimo to naszą prezentację rozpoczniemy nieco zaskakująco, bo od opisu dwóch standardów opracowanych przez serbską markę MikroElektronika.

Fotografia 1. Przykładowe płytki z serii Click Boards (http://t.ly/uflIj)

Ta niezwykle dynamicznie rozwijająca się firma może poszczycić się naprawdę dużymi osiągnięciami w obszarze rozwoju systemów do szybkiego prototypowania urządzeń elektronicznych – w jej ofercie znajduje się przeszło 1700(!) produktów z serii Click Boards (fotografia 1), które można w dowolny sposób łączyć z licznymi zestawami deweloperskimi (fotografia 2).

Fotografia 2. Zestaw ewaluacyjny EasyPIC v8 marki MikroElektronika (http://t.ly/PS3Uv)

Mało tego – standard mikroBUS, który MikroElektronika opracowała i opublikowała za darmo na swojej oficjalnej witrynie internetowej, jest już stosowany także przez innych producentów zestawów ewaluacyjnych, w tym firmę Microchip (fotografia 3).

Fotografia 3. Płytka deweloperska Curiosity Nano Adapter ze slotami mikroBUS (http://t.ly/A32mq)

Standard połączeń mikroBUS opiera się na dwóch 8-pinowych gniazdach szpilkowych o rastrze 2,54 mm, rozstawionych na odległości 900 milsów (22,86 mm) – patrz rysunek 1. Producent zdecydował się na wyprowadzenie wszystkich najważniejszych linii interfejsów szeregowych (UART, I²C, SPI), linii kontrolnych (RST, CS), dwunapięciowego zasilania (3,3 V oraz 5 V), a także trzech dodatkowych linii: AN (linia analogowa), PWM oraz INT (przerwanie). Tylko tyle i aż tyle.

Rysunek 1. Układ wyprowadzeń standardu mikroBUS (http://t.ly/pzj9K)

Dostępne w sprzedaży moduły występują w trzech rozmiarach: S, M i L – różniących się długością płytki (odpowiednio: 28,6 mm, 42,9 mm oraz 57,15 mm), przy czym wymiary głównej części zawierającej złącza szpilkowe są identyczne w każdym module (rysunek 2). Dłuższe płytki są zwykle stosowane w przypadku modułów radiowych, transceiverów RFID (z anteną pętlową wykonaną w postaci ścieżki na PCB), czy też niektórych rodzajów czujników. Zachowanie zunifikowanych wymiarów ma duże znaczenie, gdyż standard wskazuje także dopuszczalne ułożenie sąsiadujących ze sobą slotów – jest ono na tyle ciasne, że w przypadku zbyt szerokiego modułu sloty mikroBUS znajdujące się w jego sąsiedztwie mogłyby zostać przysłonięte przez brzegi płytki. Warto dokładnie przestudiować oryginalny opis standardu mikroBUS, jako przykład dobrze opracowanej, rzetelnej i dokładnej dokumentacji technicznej.

Rysunek 2. Wymiary płytki wg standardu mikroBUS (http://t.ly/a7lgl)

Wspomnijmy ponadto, że inżynierowie z firmy MikroElektronika opracowali także standard ClickID (rysunek 3). Ma on na celu rozszerzenie funkcjonalności produktów Click Boards o możliwość automatycznego „przedstawiania się” przez moduł nadrzędnemu procesorowi po wpięciu nakładki do slotu. W tym celu na płytkach montowane są dodatkowe układy scalone, które współdzielą linie CS oraz Reset z głównym modułem (np. transceiverem radiowym czy czujnikiem). Komunikacja odbywa się wg popularnego standardu 1-Wire, dzięki czemu działanie żadnego z interfejsów szeregowych (UART, I²C, SPI) nie zostaje zakłócone przez dodatkową komunikację z chipem odpowiedzialnym za autoidentyfikację.

Rysunek 3. Zasada działania systemu ClickID (http://t.ly/1Os5P)

SiBRAIN (MikroElektronika)

Kolejny standard, który trafił do naszego opracowania, także pochodzi ze stajni serbskiego producenta, tym razem jednak mamy do czynienia z rozwiązaniem nieporównanie bardziej rozbudowanym. Interfejs SiBRAIN służy do łączenia płytek-córek (ang. daughter boards) – zawierających rozmaite modele mikrokontrolerów – z odpowiednimi złączami znajdującymi się na głównych płytach ewaluacyjnych.

Rysunek 4. Układ wyprowadzeń wg standardu SiBRAIN. Rysunek w wyższej rozdzielczości dostępny jest na www.ep.com.pl w artykule pod tym samym tytułem (http://t.ly/5oCnh) 

Całość opiera się na dwóch 168-pinowych złączach Mezzanine (rysunek 4), co pozwala na współpracę nawet z największymi procesorami aplikacyjnymi oraz mikrokontrolerami.

Rysunek 5. Wymiary płytek wg standardu SiBRAIN (http://t.ly/5oCnh)

Kompaktowe rozmiary (60,96×60,96 mm – rysunek 5) umożliwiają zastosowanie modułów z różnymi modelami płyt bazowych (fotografia 4).

Fotografia 4. Przykładowa płytka wg standardu SiBRAIN wraz z kompatybilną płytą bazową (http://t.ly/H7DEc)

STM32 Morpho (ST Microelectronics)

Firma ST Microelectronics opracowała własny standard stosowany do łączenia płytek bazowych z serii STM32 Nucleo (fotografia 5) z rozmaitymi nakładkami rozszerzającymi możliwości platformy o dodatkowe funkcje. Dużą zaletą standardu STM32 Morpho jest wyprowadzenie sporej liczby linii GPIO oraz zasilających przy zastosowaniu zwykłych złączy goldpin i pasujących do nich gniazd. Niestety, firma ST wpadła we własną pułapkę, wynikającą z klęski urodzaju. Płytki Nucleo-64 są produkowane jako podstawowe zestawy ewaluacyjne do wybranych przedstawicieli wszystkich rodzin mikrokontrolerów STM32.

Fotografia 5. Płytka STM32 Nucleo-64 (http://t.ly/WdSsN)

Taka różnorodność powoduje jednak spory chaos – poszczególne wersje, pomimo że wyglądają łudząco podobnie, różnią się sposobem podłączenia części pinów, przez co projekt własnej nakładki – opracowany w oparciu o dokumentację wybranej płytki Nucleo – może nie działać po przełożeniu na płytę bazową zawierającą inny model procesora. Być może to właśnie jest jedna z przyczyn, dla których oferta tego półprzewodnikowego potentata w segmencie nakładek Nucleo Expansion Boards jest stosunkowo wąska – o ile bowiem liczba dostępnych modułów rozszerzeń wynosi obecnie około 100 (licząc tylko te o aktywnym statusie marketingowym), to w przypadku płytek bazowych z różnorodnymi modelami mikrokontrolerów liczba ta jest ponad dwukrotnie większa.

Rysunek 6. Układ wyprowadzeń złączy STM32 Morpho zamontowanych na płytce Nucleo-F302R8 (http://t.ly/WdSsN)

Przykładowy układ wyprowadzeń złączy Morpho pokazano na rysunku 6, zaś jedną z nakładek (przeznaczoną do testów 8-kanałowego, izolowanego przekaźnika półprzewodnikowego ISO8200AQ) pokazano na fotografii 6.

Fotografia 6. Nakładka X-NUCLEO-OUT02A1 (http://t.ly/0l2Z1)

Grove (Seeedstudio)

Firma Seeedstudio opracowała ekosystem modułowy o nazwie Grove, który opiera się na bardzo prostym, bo zaledwie 4-pinowym (lecz – niestety – niestandardowym) złączu o rastrze 2,0 mm. Złącze to przenosi nie tylko napięcie zasilające, ale także sygnały cyfrowe lub analogowe. Producent zdefiniował cztery kategorie modułów – w zależności od rodzaju sygnałów można wyróżnić:

  • Grove Digital:
    • pin 1: cyfrowa linia I/O (główna),
    • pin 2: cyfrowa linia I/O (pomocnicza),
    • pin 3: VCC (zasilanie 3,3 V lub 5 V),
    • pin 4: GND (masa),
  • Grove Analog:
    • pin 1: wejście analogowe (główne),
    • pin 2: wejście analogowe (pomocnicze),
    • pin 3: VCC (zasilanie 3,3 V lub 5 V),
    • pin 4: GND (masa),
  • Grove UART:
    • pin 1: UART RX (odbiór danych przez płytę bazową),
    • pin 2: UART TX (nadawanie danych przez płytę bazową),
    • pin 3: VCC (zasilanie 3,3 V lub 5 V),
    • pin 4: GND (masa),
  • Grove I²C:
    • pin 1: SCL,
    • pin 2: SDA,
    • pin 3: VCC (zasilanie 3,3 V lub 5 V),
    • pin 4: GND (masa).

Standard Grove przyjął się na rynku zestawów ewaluacyjnych i edukacyjnych do tego stopnia, że wielu producentów oraz „niezrzeszonych” projektantów także korzysta z niego w swoich projektach – na łamach „Elektroniki Praktycznej” publikujemy zresztą rozmaite miniprojekty bazujące właśnie na złączach Grove. Warto dodać, że pełna zgodność ze standardem to nie tylko układ wyprowadzeń złączy i odpowiedni poziom napięcia zasilania – ale także określone wymiary i specyficzna geometria płytek modułów rozszerzeń, przywodząca na myśl… elektroniczne puzzle. Jeden ze szkiców wymiarowych zaczerpnięty z dokumentacji producenta można zobaczyć na rysunku 7 – należy nadmienić, że oprócz modułu o wymiarach podstawowych 20×20 mm oferowane są także wersje 20×40 mm, 20×60 mm, 40×40 mm oraz 40×60 mm.

Rysunek 7. Wymiary podstawowego modułu Grove 20×20 mm (http://t.ly/zy1cQ)

Na fotografii 7 pokazano natomiast zawartość jednego z zestawów modułów Grove, przeznaczonych do współpracy z Arduino – Grove Creator Kit.

Fotografia 7. Zestaw startowy z dwudziestoma czujnikami Grove (http://t.ly/2RHzu)

Qwiic (SparkFun)/STEMMA QT (Adafruit)

Interfejs Qwiic został opracowany przez firmę SparkFun, jednego z głównych graczy na rynku elektroniki modułowej, zestawów oraz rozmaitych akcesoriów dla modelarzy i fanów konstrukcji DIY. Standard opiera się na kompaktowym złączu 4-pinowym o rastrze 1,0 mm i jest przystosowany tylko i wyłącznie do współpracy z czujnikami oraz innymi modułami wyposażonymi w interfejs I²C. Układ wyprowadzeń pokazano na rysunku 8.

Rysunek 8. Układ wyprowadzeń złącza Qwiic (http://t.ly/9m6mT)

Charakterystyczną cechą modułów zgodnych z Qwiic jest przelotowy charakter połączeń – każda płytka wyposażona została w dwa gniazda, co pozwala na łączenie płytek w łańcuch typu „daisy chain” (fotografia 8). Co ważne, interfejs Qwiic okazuje się kompatybilny wyłącznie z modułami bazowymi oraz czujnikami zasilanymi napięciem 3 V. Z dokładnie tego samego układu wyprowadzeń oraz typu złącza korzysta ponadto konkurencyjny standard STEMMA QT opracowany przez firmę Adafruit – w tym przypadku jednak dopuszczalne jest stosowanie napięcia zasilania 5 V, więc kompatybilność pomiędzy modułami obydwu producentów zostaje w naturalny sposób ograniczona tylko do układów 3-woltowych.

Fotografia 8. Przykładowy prototyp bazujący na modułach z interfejsem Qwiic (http://t.ly/e9ESm)

Inne standardy

Warto wiedzieć, że na rynku istnieją także dwa inne, również dość popularne standardy połączeń pomiędzy płytkami bazowymi a czujnikami oraz innymi modułami rozszerzeń. Firma Adafruit stosuje w niektórych modułach interfejs określany mianem STEMMA (bez przyrostka QT), który występuje w dwóch wersjach – złącza 3-pinowe typu JST PH obsługują moduły wyposażone w linię cyfrową, analogową lub PWM, zaś 4-pinowe mogą dodatkowo pracować z układami komunikującymi się przez I²C. Nieco podobnie rzecz ma się także w przypadku standardu Gravity marki DFRobot – tutaj jednak mamy do dyspozycji także moduły nawiązujące komunikację z hostem za pomocą interfejsu UART. Aby lepiej zrozumieć różnice pomiędzy poszczególnymi standardami, warto spojrzeć na tabelę 1, w której zebrano najważniejsze informacje o wszystkich pięciu opisanych dotąd standardach. Dalszych informacji na temat kompatybilności dostarcza tabela dostępna na stronie firmy Adafruit pod adresem: https://learn.adafruit.com/introducing-adafruit-stemma-qt/stemma-qt-comparison.

Feather (Adafruit)

Z interesującą propozycją wyszła do swoich odbiorców wspomniana już kilkukrotnie firma Adafruit, która opracowała własny standard niewielkich, ale doskonale wyposażonych płytek bazowych oraz kompatybilnych z nimi nakładek funkcjonalnych (fotografia 9).

Fotografia 9. Płytki z serii Adafruit Feather (http://t.ly/IOMNy)

Każdy z modułów głównych jest wyposażony w wydajny mikrokontroler i – w większości przypadków – moduł radiowy, zaś niektóre spośród płytek zamiast transceivera mają wbudowane gniazdo kart microSD.

Rysunek 9. Układ wyprowadzeń modułów z serii Adafruit Feather (http://t.ly/IOMNy)

Układ wyprowadzeń – także bazujący na standardowych goldpinach 2,54 mm – pokazano na rysunku 9, zaś przykładową nakładkę z maleńkim, 1-calowym ekranem OLED, można zobaczyć na fotografii 10.

Fotografia 10. Nakładka z ekranem OLED kompatybilna ze standardem Adafruit Feather (http://t.ly/92U3d)

BBC micro::bit/micro::bit 2

Platforma micro::bit powstała z myślą o nauczaniu wg paradygmatu STEM – z założenia miał to być projekt tani, łatwo dostępny i dający spore możliwości rozbudowy. W odróżnieniu od wszystkich opisanych do tej pory standardów, ekosystem micro::bit korzysta nie z typowych złączy rastrowych, ale z… nietypowego złącza krawędziowego (rysunek 10).

Rysunek 10. Układ wyprowadzeń złącza krawędziowego płytki BBC micro::bit w wersjach 1 i 2 (http://t.ly/-wTBv)

Co ciekawe, pomimo niewielkich rozmiarów płytki (50×40 mm), jej projektanci zdołali zmieścić na niej (w wersji 2) naprawdę pokaźny zestaw hardware’u: transceiver Bluetooth Nordic nRF52833, mikrokontroler ARM z serii KL27Z, mikrofon MEMS, miniaturowy głośnik oraz… 3-osiowy akcelerometr/żyroskop LSM303 (fotografia 11).

Fotografia 11. Widok płytki BBC micro::bit z obydwu stron (http://t.ly/lY994)

Po drugiej stronie płytki znajduje się prosty wyświetlacz w postaci matrycy 25 dyskretnych diod LED SMD oraz dwa przyciski. Także ta platforma doczekała się sporej oferty kompatybilnych nakładek – choć, z uwagi na rozmiary modułu głównego, należałoby raczej nazywać je płytami bazowymi (fotografia 12).

Fotografia 12. Przykładowa nakładka kompatybilna z modułami BBC micro::bit – sterownik silników i serwomechanizmów modelarskich (http://t.ly/rPxOJ)

Raspberry Pi

Omawiając ekosystemy ewaluacyjne i edukacyjne nie sposób nie wspomnieć o minikomputerach Raspberry Pi, które – obok Arduino – w największym stopniu przyczyniły się do upowszechnienia „modułowego” sposobu myślenia o prototypowaniu. 40-pinowe złącze goldpin (rysunek 11), stosowane w popularnych płytkach SBC z serii RPi A/B/Zero, stało się niekwestionowanym standardem, do którego – chcąc, nie chcąc – dostosowują się niemal wszyscy inni producenci konkurencyjnych minikomputerów jednopłytkowych.

Rysunek 11. Układ wyprowadzeń złącza GPIO minikomputerów Raspberry Pi (http://t.ly/grrAz)

Polityka producenta „maliny” zezwala na nazywanie nakładek mianem „HAT” tylko wtedy, gdy spełnionych jest sześć warunków, zakładających m.in. kompatybilność mechaniczną i elektryczną (co raczej nie dziwi), ale także… obecność prawidłowo zaprogramowanej pamięci EEPROM zawierającej nazwę producenta, mapę GPIO oraz informacje nt. systemowego drzewa urządzeń. Oznacza to zarazem, że prostsze płytki (np. ekspandery GPIO), niewyposażone w pamięć z danymi identyfikacyjnymi nie mogą być określane jako Raspberry Pi HAT.

Popularność Raspberry Pi sprawiła, że wielu producentów przystąpiło do tworzenia własnych nakładek kompatybilnych z tą niezwykle popularną serią minikomputerów jednopłytkowych. Warto wiedzieć, że na tym właśnie polu doskonale radzą sobie nie tylko firmy zagraniczne – sporą (i stale rozwijaną) ofertę ma także rodzima marka Kamami, która wdrożyła szereg rozmaitych modułów, w tym interfejsów komunikacyjnych, sterowników silników, modułów przekaźnikowych i innych (przykład można zobaczyć na fotografii 13).

Fotografia 13. Nakładka KamodRPi CAN-FD w formacie Raspberry Pi Zero (http://t.ly/VLV3M)

Raspberry Pi Pico

Przeszło trzy lata temu świat fanów DIY obiegła wiadomość o premierze płytki Raspberry Pi Pico, bazującej na opracowanym przez Raspberry Pi Foundation, dwurdzeniowym mikrokontrolerze RP2040 o architekturze ARM Cortex-M0+. Półtora roku później do rodziny Pico dołączyły nowe wersje, w tym Pico W z wbudowanym modułem radiowym Wi-Fi+BLE. Z kolei najnowsza wersja kultowej już płytki, czyli Pico 2 (fotografia 14), korzysta z unowocześnionego mikrokontrolera RP2350, który – oprócz całkowicie przebudowanej architektury pozwalającej na dynamiczne przełączanie pomiędzy dwurdzeniowym procesorem ARM Cortex-M33, a (także dwurdzeniową) jednostką Hazard3 (RISC-V) – zyskał także sporą pamięć RAM (520 kB).

Fotografia 14. Płytka Raspberry Pi Pico 2 (http://t.ly/1hh2v)

Tym, co zdecydowało o komercyjnym sukcesie „małej maliny” był niewątpliwie bardzo wysoki stosunek mocy obliczeniowej „minikomputerków” do ich ceny. Nic więc dziwnego, że Fundacja Raspberry Pi zainwestowała w cztery nowe modele swojego mikrokontrolera – oprócz wspomnianego już RP2350 (w wersjach o 30 lub 48 liniach GPIO) na rynek trafiła także wersja RP2354, rozwiązująca problem braku wbudowanej pamięci programu (w tym przypadku do dyspozycji projektantów są bowiem 2 MB wewnętrznego Flash'a).

Standard połączeń opracowany na potrzeby Raspberry Pi Pico, zrealizowany – a jakże! – za pomocą goldpinów (rysunek 12), bardzo szybko zyskał aprobatę społeczności elektroników, a na rynku zaczęły się pojawiać kolejne płytki bazowe, nakładki i akcesoria kompatybilne z RPi Pico.

Rysunek 12. Układ wyprowadzeń płytki Raspberry Pi Pico 2 (http://t.ly/fJ9Ct)

Podsumowanie

Ekosystemy modułowe stanowią dziś fundament nowoczesnego, szybkiego prototypowania oraz szeroko zakrojonych działań edukacyjnych w zakresie elektroniki i programowania wbudowanego. W artykule opisaliśmy najpopularniejsze standardy połączeń pomiędzy płytkami głównymi, a modułami rozszerzeń (nakładkami). Umyślnie pominęliśmy w naszym opisie poczciwe Arduino, jako że trudno byłoby znaleźć dziś elektronika, który przynajmniej raz nie spotkał się w praktyce z tą popularną platformą. I choć to właśnie Arduino „rozkręciło” opisywany segment rynku i stało się bodaj najbardziej rozpoznawalnym przykładem uniwersalnej platformy prototypowo-dydaktycznej, to zdaje się, że inni producenci pod wieloma względami wyprzedzili kultowy projekt rodem ze słonecznej Italii.

Nie oznacza to rzecz jasna zmierzchu Arduino – wręcz przeciwnie, jego twórcy (po pewnych roszadach personalno-prawnych) wciąż rozwijają swój biznes i wdrażają nowe, często naprawdę zaskakujące produkty. Co ciekawe, nic nie wskazuje też, by którykolwiek z systemów opisanych w niniejszym artykule miał w najbliższym czasie zagrozić istnieniu włoskiego ekosystemu (tym bardziej, że część z nich, np. standard Grove, doskonale z Arduino współpracuje). Można natomiast podejrzewać, że najsilniejszym konkurentem są i jeszcze przez długi czas będą moduły na bazie układów ESP32 – ich niska cena, ogromna moc obliczeniowa oraz szerokie możliwości komunikacji bezprzewodowej pozwalają realizować niezliczone koncepcje projektowe w szybki, tani i prosty sposób. Czytelników zainteresowanych skorzystaniem z pełni możliwości oferowanych przez ESP32 zachęcamy do zapoznania się z kursem programowania tych doskonałych modułów, który od czerwca br. prowadzimy na łamach „Elektroniki Praktycznej”.

inż. Przemysław Musz, EP

Artykuł ukazał się w
Elektronika Praktyczna
wrzesień 2024

Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik październik 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio wrzesień - październik 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje wrzesień 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna październik 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich październik 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów