Kategorie

Odyssey

Dotykowe ekrany, menu z wysokiej jakości grafiką, łączność z internetem czy zaawansowana obsługa audio – dziś te symbole technologii XXI wieku nikogo nie dziwią, co więcej – użytkownicy urządzeń elektronicznych oczekują takich ulepszeń już nawet w AGD i wszelkim pozostałym sprzęcie codziennego użytku. Implementacja grafiki, interfejsów dotykowych czy integracji z siecią WiFi/Ethernet wymaga jednak od programisty sporej wiedzy i umiejętności, zwłaszcza, jeżeli system ma się opierać na stosunkowo niewielkim mikrokontrolerze. Z pomocą przychodzą minikomputery jednopłytkowe, będące doskonałym rozwiązaniem w wielu aplikacjach, które wymagają dużej mocy obliczeniowej przy możliwie małych wymiarach oraz niewielkim poborze mocy. Jak zwykle bywa, technologia niejako „zatoczyła koło” i coraz częściej bazą minikomputerów SBC stają się… wydajne mikrokontrolery. Doskonałym przykładem jest potężny, dwurdzeniowy procesor STM32MP157C firmy STMicroelectronics. Stał się on bazą do budowy bardzo ciekawego zestawu – ODYSSEY-STM32MP157C, opracowanego przez inżynierów Seed Studio.

Minikomputery Odyssey – przykład dobrej współpracy w świecie systemów wbudowanych

Najnowszy minikomputer Seed Studio to w rzeczywistości połączenie dwóch kompontentów – bardzo wydajnego minimodułu typu SoM (ang. System on Module) oraz płyty bazowej, wyraźnie wzorowanej na legendarnym Raspberry Pi. Obydwa urządzenia są ze sobą połączone poprzez trzy miniaturowe, 70-pinowe złącza SMD – wtyki znajdują się na spodzie modułu kontrolera, zaś odpowiadające im gniazda – w centralnej części płyty bazowej. Takie rozwiązanie znacząco zwiększa zakres możliwości aplikacyjnych, gdyż minimoduł może być łatwo odłączony i przeniesiony do docelowej aplikacji, w której będzie pracował na płycie urządzenia końcowego. Podział na moduł SoM oraz płytę bazową jest koncepcyjnie zbliżony do konkurencyjnych rozwiązań – np. Raspberry Pi Compute Module – jednak z uwagi na parametry zastosowanego procesora, Odyssey sprawdzi się w wielu aplikacjach niedostępnych dla „maliny”.

Moc komputera i elastyczność mikrokontrolera

Zastosowany w minikomputerze Odyssey procesor – STM32MP157C – należy do klasy MPU, co oznacza, że stanowi swego rodzaju pomost pomiędzy wydajnymi procesorami „komputerowymi”, a niskopoziomowymi mikrokontrolerami, chętnie stosowanymi w aplikacjach mniej wymagających pod względem możliwości multimedialnych. Pod maską jednego z najciekawszych układów firmy STMicroelectronics kryją się w rzeczywistości dwa, współpracujące ze sobą procesory. Pierwszy z nich, dwurdzeniowy, 32-bitowy ARM Cortex-A7, może pracować z taktowaniem do 650 MHz, obsługuje zestaw instrukcji NEON i posiada sprzętowe wsparcie dla wirtualizacji oraz zabezpieczenia przygotowane na potrzeby zaawansowanych systemów operacyjnych (ARM TrustZone). Drugi to znany i lubiany rdzeń ARM Cortex-M4, doskonały do realizacji niskopoziomowych operacji, pracujących w reżimie czasu rzeczywistego (np. sterowanie napędami robotów mobilnych i manipulacyjnych czy akwizycja oraz przetwarzanie danych pomiarowych).

Wszystko na miejscu

Moduł SoM minikomputera Odyssey zawiera – oprócz MPU – także wszystkie niezbędne peryferia, pozwalające na łatwą integrację z docelowym systemem. Na płytce o wymiarach 38 x 38 mm znalazła się obszerna pamięć RAM (512 MB DDR3), 4 GB pamięci Flash (eMMC), niezbędne obwody taktowania oraz podsystem zasilania ze sprzętowym, wielowyjściowym kontrolerem STPMIC1A. Nie zabrakło nawet dwóch diod LED, z których jedna pełni rolę wskaźnika zasilania, zaś druga jest dostępna do dowolnego wykorzystania przez użytkownika. Płytka bazowa oferuje natomiast złącze goldpin 2x20 (wzorowane na złączu Raspberry Pi), interfejs sprzętowy Gigabit Ethernet ze złączem RJ45, dwa porty USB A, interfejs kamery (DVP), wyświetlacza (MIPI DSI), slot kard microSD, a także gniazdo jack 3,5 (audio). Nie zabrakło nawet zintegrowanego modułu radiowego, udostępniającego łączność WiFi 802.11b/g/n w paśmie 2.4 GHz oraz Bluetooth 4.1. Na krawędzi płytki bazowej minikomputera Odyssey znalazły się także dwa złącza Grove do podłączenia zewnętrznych czujników oraz układu zasilania z gniazdem DC 2,1/5,5 mm, które pozwala na zasilanie zestawu napięciem stałym w zakresie 12-24 V (choć do wyboru jest także gniazdo USB-C, wymagające źródła o napięciu 5 V i wydajności 3 A).