Komputery SoMLabs VisionSOM w interfejsach HMI
Graficzne interfejsy użytkownika zintegrowane z touch-panelami wyrugowały praktycznie wszelkie inne sposoby komunikacji użytkowników z urządzeniami, także w aplikacjach przemysłowych. Rosnąca popularność graficznych interfejsów HMI (Human-Machine Interface) spowodowała, że stawiane im wymogi są coraz większe. Ich implementacja wymaga użycia komputerów wyposażonych w zaawansowane interfejsy graficzne. Jednym ze sposobów wyposażenia urządzenia w efektowny graficzny HMI jest użycie miniaturowych komputerów embedded.
W artykule skupimy się na rozwiązaniach szybko rozwijającej się polskiej firmy – SoMLabs – produkującej komputery SOM (System-on-Module). Bazują one na mikroprocesorach produkowanych przez dwie renomowane firmy półprzewodnikowe: NXP i STMicroelectronics, których SoMLabs jest oficjalnym partnerem. Dzięki temu oferowane SOM-y mają gwarantowany m.in. długi czas dostępności, bazujący na systemach zarządzania życiem produktów obydwu dostawców.
Oferta komputerów SoMLabs
Oferta SoMLabs obejmuje kilka podstawowych modeli komputerów SOM, z których każdy występuje w kilku wariantach o różnym wyposażeniu. W zależności od wymogów docelowej aplikacji moduły mogą być wyposażone w różne rodzaje, a także różne pojemności pamięci Flash lub DRAM. Opcjonalnie dostępny jest także „pokładowy” moduł Wi-Fi/BLE4.2 firmy Murata.
W tabeli 1 zestawiono podstawowe cechy i parametry dostępnych modułów z rodziny VisionSOM. Jak widać, firma SoMLabs oferuje obecnie szerokie portfolio modułów, które są w stanie zaspokoić wymagania różnorodnych aplikacji, począwszy od realtime’owego modułu VisionSOM-RT aż po moduły VisionSOM-8Mmini, wyposażone w multimedialne mikroprocesory wielordzeniowe.
Tabela 1. Zestawienie najważniejszych cech modułów SoMLabs VisionSOM
Cecha | VisionSOM-RT | VisionSOM-6ULx | VisionSOM-STM32MP1 | VisionSOM-8Mmini | VisionSOM-8Mnano |
Użyty MPU | i.MX-RT1050/1060 | i.MX6ULL | STM32MP157A | i.MX8M Mini | i.MX8M Nano |
Liczba rdzeni MPU | – | 1 × Cortex-A7 @900 MHz | 2 × Cortex-A7 @800 MHz | 4 × Cortex-A53 @1,6 GHz | 4 × Cortex-A53 @1,4 GHz |
Liczba rdzeni MCU | 1 × Cortex-M7 @600 MHz | – | 1 × Cortex-M4 @209 MHz | Cortex-M4 @400 MHz | Cortex-M7 @600 MHz |
Flash | QSPI (do 16 MB) | eMMC (do 16 GB) | eMMC (do 16 GB) | pamięć eMMC (do 16 GB) | eMMC (do 16 GB) |
RAM | SDRAM 32 MB | DDR3L 512 MB | DDR3L 512 MB | LPDDR4 512MB-4GB | LPDDR4 512MB-4GB |
Typ GPU | PXP | PXP | Vivante3D
OpenGL ES2.0 |
VivanteGC
Nano Ultra 3D OpenGL ES2.0 |
VivanteGC7000UL 3D GPU
OpenCL 1.2, OpenGL ES3.1 OpenGL Vulkan |
VPU | – | – | – | 1080p60 (H.264/265) | – |
Maksymalny wymiar obrazu | 1366 × 768 px | 1366 × 768 px | 1366 × 768 px | 1920 × 1080 px | 1920 × 1080 px |
Interfejs LCD | Parallel RGB, | Parallel RGB, | MIPI-DSI (4 lanes). | MIPI-DSI (4 lanes). | |
Ethernet | 2 × 10/100 | 2 × 10/100 | 1 × 10/100 | 1 × 10/100/1000 | 1 × 10/100/1000 |
PCIe | – | – | – | 1× (single lane) | – |
CAN | 1 x CAN FD | 2 x FlexCAN | 2 x CAN FD | – | – |
UART | 8× | 8× | 8× | 4× | 4× |
I2C | 4× | 4× | 6× | 4× | 4× |
SPI | 4× | 4× | 6× | 3× | 3× |
USB/PHY | 2×/2× | 2×/2× | 3×/3× | 2×/2× | 1×/1× |
Android/Linux | –/+ | –/+ | –/+ | +/+ | +/+ |
Koprocesory graficzne
W aplikacjach operujących zaawansowaną grafiką (jak np. OS Android) przydatne będą koprocesory graficzne GPU wbudowane w procesory użyte w modułach VisionSOM. Jednym z ich atutów jest kompatybilność z API OpenGL ES oraz – wybranych modeli – OpenGL Vulkan. To wyposażenie SOM w połączeniu z szybkimi pamięciami DRAM (w zależności od typu modułu zastosowano pamięci typu DDR3L lub LPDDR4) umożliwia wygodne implementowanie renderowania grafik 3D, które są coraz częściej używanym elementem współczesnych HMI. Dostępne w SOM-ach lokalne interfejsy SPI/I2C można wykorzystać m.in. do obsługi touch-paneli. Wraz z wyświetlaczami pozwalają one tworzyć dynamiczne, responsywne interfejsy użytkownika. Przykłady takich realizacji przygotowanych w celach demonstracyjnych pokazano na fotografiach 1 i 2.
Fot. 1. Wygląd przykładowego interfejsu HMI wykonanego na module VisionSOM-RT
Fot. 2. Wygląd przykładowego interfejsu HMI wykonanego na module VisionSOM-6ULL z wyświetlanym strumieniem wideo dekodowanym programowo
Najważniejsze właściwości modułów SoMLabs
Dobór procesorów, a także rozwiązań układowych w prezentowanych modułów SOM zapewnia konstruktorom interfejsów HMI kompletną „mechanikę” skalowania poboru mocy. Jednym z jej elementów jest automatyczne dobieranie napięcia zasilającego CPU w zależności od aktualnych wymagań uruchomionej aplikacji. Takie rozwiązanie minimalizuje konieczność stosowania radiatorów lub innych rozwiązań wspomagających odprowadzanie ciepła z modułów, podnosząc jednocześnie długoterminową niezawodność całego systemu.
Podstawowe warianty SOM firmy SoMLabs są oferowane w przemysłowym zakresie temperatur. Dzięki temu możliwe jest ich aplikowanie w urządzeniach o podwyższonych wymaganiach temperaturowych, a także klimatycznych. Stosowaniu modułów VisionSOM w wymagających aplikacjach przemysłowych sprzyja także użyte przez producenta złącze krawędziowe SO-DIMM, którego cechy mechaniczne, elektryczne oraz odporność na korozję i inne zanieczyszczenia zapewniają długotrwałą, stabilną pracę urządzenia.
Jednym z atutów rodziny komputerów VisionSOM jest możliwość skalowania ich mocy obliczeniowej. Modele VisionSOM-RT, VisionSOM-6ULL, a także VisionSOM-STM32MP1 są ze sobą wzajemnie wymienne. W zależności od potrzeb konstruktor może więc użyć w swojej aplikacji – bez konieczności modyfikowania rozwiązań sprzętowych – MCU z rdzeniem Cortex-M7, MPU z jednym rdzeniem Cortex-A7 lub wielordzeniowego układu heterogenicznego MPU 2 x CORTEX-A7 + CORTEX-M4. Łatwość wzajemnej wymiany modułów VisionSOM-RT i VisionSOM-6ULL przedstawiono na filmie opublikowanym na kanale SoMLabs na Youtube:
Narzędzia programowe
Rozwiązania sprzętowe oferowane przez firmę SoMLabs są przystosowane do pracy z systemami operacyjnymi FreeRTOS, Linux lub Android. Dla tych systemów są dostępne – często bezpłatnie – biblioteki graficzne oraz narzędzia do tworzenia GUI (Graphic User Interface). Na bazie tych narzędzi można implementować różnorodne funkcjonalności HMI. Za pomocą dostępnych narzędzi software’owych w projektowanych interfejsach użytkowników z grafikami można wygodnie łączyć także różnorodne elementy multimedialne, w tym między innymi strumienie wideo lub treści pobierane na przykład z chmurowych baz danych.
Uproszczony schemat blokowy typowego systemu HMI bazującego na SOM pokazano na rysunku 3. Duża liczba, a także różnorodność interfejsów komunikacyjnych charakteryzujących wyposażenie mikroprocesorów użytych w SOM-ach firmy SoMLabs (od SPI/I2C/UART, przez USB i CAN, aż po Ethernet Gb) pozwala na bezpośrednią integrację w HMI danych pobieranych bezpośrednio z różnego rodzaju sensorów i sterowanie pracą elementów wykonawczych. Duża moc obliczeniowa MPU umożliwia ponadto bezpośrednią, lokalną implementację różnego rodzaju regulatorów, których reakcje można lokalnie konfigurować.
Rys. 3. Uproszczony schemat blokowy urządzenia HMI wykonanego na module z rodziny VisionSOM
Rozwiązania HMI bazujące na komputerach SOM zapewniają możliwość 100-procentowej customizacji, a także precyzyjnego dopasowania do wymogów aplikacji i użytkowników. Niestety nie są to rozwiązania dla każdego. Ich użycie wiąże się z koniecznością przygotowania zaawansowanego projektu elektronicznego oraz napisania odpowiedniego oprogramowania, co jest zadaniem dość wymagającym, ale na szczęście w jego realizacji pomocy może udzielić producent prezentowanych komputerów.
Dystrybutorem modułów SOM firmy SoMLabs jest firma Elhurt, www.elhurt.com.pl.