Szybki rozwój rynku
Postęp techniczny i technologiczny w obszarze mikrokontrolerów jest bardzo szybki, przez co trzeba bardzo uważać, głosząc twierdzenia na temat tego, co się da, czego się nie da, co można, a czego nie. Bo zawsze może się okazać, że pojawiło się rozwiązanie, które tworzy wyjątek. A jak się ten wyjątek przyjmie (czyli okaże się dobrym pomysłem), to trwale zmienia paradygmat w danym obszarze.
Stałym trendem od lat jest to, że funkcjonalność mikrokontrolerów cały czas rośnie. Nowe mają więcej układów peryferyjnych, większą pamięć, lepsze rdzenie zapewniające wydajność i energooszczędność.
Rozwój rynku mikrokontrolerów nie jest też jednokierunkowy. Z uwagi na liczne obszary aplikacyjne rodziny produktów rozwijają się w kierunku dużej wydajności, małej mocy, w obrębie wersji specjalizowanych, np. komunikacyjnych, do przetwarzania sygnałów i sterowania silnikami itd.
Wiele jednostek jest ukierunkowanych do pracy w określonych aplikacjach i zawiera zestaw obwodów peryferyjnych kompletny z punktu widzenia zastosowań aplikacyjnych. Przykładem mogą być układy z obwodami analogowymi przeznaczone do pracy w zasilaczach cyfrowych, jednostki z wbudowanym transceiverem do komunikacji bezprzewodowej lub też mikrokontrolery o bardzo małym poborze mocy i z wysokorozdzielczym przetwornikiem A/C, a także blokiem obliczeniowym do kalkulacji zużycia mediów.
Optymalny wybór układu to spore wyzwanie
Ponieważ nie ma jednego układu pasującego do każdego zastosowania, oferty producentów szybko się rozszerzają, tworząc rodziny zawierające dziesiątki zgodnych pinowo i programowo wersji. Niekiedy jest ich tak wiele, że wybór wariantu w zakresie interfejsów, pamięci, obudowy a także ważnych szczegółów, jak zakres temperatur pracy itd., wymaga posłużenia się arkuszem kalkulacyjnym lub specjalizowanym narzędziem online.
Niemniej wiele wersji i wariantów obudów pozwala dobrze dobrać układ do wymagań aplikacyjnych.
Specjalizacja jeszcze bardziej zwiększa asortyment i przekłada się na setki chipów w każdej z rodzin. To dobrze i źle. Dobrze, bo jest z czego wybierać, nie trzeba iść na kompromisy lub przepłacać, kupując chip, którego możliwości wykorzystamy jedynie w części. Wiele komponentów w ramach oferty producenta i rodziny zapewnia też łatwość migracji, czyli użycia innego, lepszego chipu, zamiast dotychczasowego, bez konieczności przerabiania mozaiki obwodu drukowanego lub zmiany oprogramowania.
Do minusów zaliczyć można to, że wybór jednostki najlepszej do danej aplikacji przestaje być łatwy. Póki wybór układu dotyczy danej rodziny, zestawienie parametrów ma formę jednej strony w arkuszu i daje się jakoś objąć. Wybór się komplikuje, gdy trzeba dobrać układ w ramach jednego producenta, a więc zwykle spośród wielu rodzin. Jeszcze gorzej jest, gdy nawet wybór producenta jest sprawą otwartą. Wówczas wybór to prawdziwa loteria.
W ramach jednego producenta wybór mikrokontrolera zwykle ułatwiają narzędzia online, konfiguratory i selektory. W jeszcze większej perspektywie układy pomagają wybrać dystrybutorzy. Pracownicy działów wsparcia technicznego mają nie tylko wiedzę techniczną, ale także dostęp do informacji na temat dostępności poszczególnych wersji, planowanego wycofania z oferty i podobnych aspektów biznesowych.
Wymagania nieustannie rosną
Stale zwiększające się wymagania klientów, coraz większe oczekiwania użytkowników elektroniki w stosunku do parametrów technicznych i funkcjonalności urządzeń wymuszają rozbudowę ofert o liczne chipy specjalizowane. Nie ma innej drogi, aby zapewnić spełnienie wszystkich wymagań w jednym produkcie.
Rozbudowane peryferia wymagają wielu pinów w obudowie, więc czasem ograniczają możliwości miniaturyzacji. Duża struktura półprzewodnikowa, a więc chip z pojemną pamięcią i pełnym zestawem peryferiów, jest też drogi. Duża wydajność zwykle zaprzecza oszczędności energii, dlatego wybór mikrokontrolera, nawet w obrębie jednego producenta lub rodziny, to nieustanny kompromis.
Szeroka oferta sprzyja inercji
Negatywnym czynnikiem dla szybko rozwijającego się rynku jest to, że produkty mało popularne wypadają z produkcji. Koniec wytwarzania następuje też szybciej, gdy w ofercie pojawi się podobna, ale lepsza jednostka. W rzeczywistości takich problemów jest znacznie więcej, stąd wiele firm wiąże się z danym producentem mikrokontrolerów i konkretną architekturą na długo.
Inżynierska inercja negatywnie tym samym wpływa na tempo rozwoju rynku, ale nie należy postrzegać tego zjawiska pejoratywnie. Wyszukiwanie nowych rozwiązań, testy, tworzenie środowiska pracy z nowymi rozwiązaniami, narzędzia, oprogramowanie i co chyba jest najważniejsze - wiedza i znajomość danego rozwiązania, mają wartość materialną. Poszukiwanie nowych rozwiązań w zakresie mikrokontrolerów musi być podbudowane solidną argumentacją, np. tym, że to, z czego firma korzysta aktualnie, nie jest wystarczające lub korzyści z nowej platformy będą wymiernie duże.
Skutek jest taki, że firmy zazwyczaj w nowych projektach zostają ze znaną sobie rodziną mikrokontrolerów danego producenta - starają się modernizować produkty w znanej sobie architekturze i zestawie oprogramowania.
Wsparcie techniczne zawsze jest potrzebne
Producenci i dystrybutorzy rozumieją rozterki producentów elektroniki oraz ich ciągłe problemy z brakiem czasu i starają się wspierać każde działanie, za którym kryje się realna chęć rozwoju. Darmowe próbki chipów to standardowe minimum, ale miniaturowe obudowy chipów (zwłaszcza te bezwyprowadzeniowe) oraz konieczność posłużenia się procesem SMT w montażu nawet jednej sztuki powodują, że najlepszą platformą do testów nowych rozwiązań są płytki startowe.
W ostatnich pięciu latach w tym obszarze zaszły ogromne zmiany, a liczba zestawów dostępnych na rynku jest liczona w tysiącach. W praktyce każdy nowy chip o charakterze systemowym (a więc bardziej złożony) oraz inne układy w małych obudowach, np. bezwyprowadzeniowych, są wprowadzane na rynek razem z zestawem projektowym.
Płytki startowe są często traktowane tak samo jak próbki, a więc rozdawane na seminariach, przekazywane klientom w ramach wsparcia technicznego. Ogólnie ma to sens, bo w dzisiejszej sytuacji, gdy czas staje się największym dobrem w pracy inżynierskiej, każde działanie, które go oszczędza i sprawia, że nie trzeba zaczynać od zera, jest doceniane.
Interesujący, pomysłowy i bogato wyposażony zestaw, zawierający mikrokontroler, układ komunikacyjny, czujniki, wyświetlacz, jest niczym magnes przyciągający uwagę. Otrzymana za darmo płytka startowa nierzadko jest przyczyną zainteresowania daną architekturą studentów i pracowników biur projektowych, którzy później mogą podjąć decyzję o większym zaangażowaniu właśnie w tym, znanym już kierunku.
Warto zauważyć, że zestawy projektowe, nawet te darmowe lub oferowane za symboliczne sumy, mają całkiem spore możliwości. Producenci dotują takie konstrukcje, instalując tam kosztowne elementy, takie jak FPGA lub nowoczesne czujniki MEMS itp. Przy wykorzystaniu projektów referencyjnych, narzędzi i oprogramowania dostarczanego przez producentów ryzyko niepowodzenia jest minimalne.
Dostępność narzędzi projektowych oraz nowości ze świata mikrokontrolerów dostrzegli dystrybutorzy katalogowi. W ostatnich trzech latach wszystkie firmy tego typu znacznie rozbudowały swoje oferty, nawiązały współpracę z producentami narzędzi i zaczęły je intensywnie promować. To znak, że na mikrokontrolery patrzy się przez pryzmat narzędzi, a nie chipów.
Oprogramowanie równie istotne jak hardware
Na szybkość projektowania ma też wpływ czas przygotowania oprogramowania i z reguły jest to zagadnienie bardziej istotne od warstwy sprzętowej. To dlatego, że wiele aplikacji składa się z mikrokontrolera razem z niewielkim otoczeniem układów pomocniczych i peryferyjnych i od strony układowej są one stosunkowo proste.
To jest normalne działanie, bo konieczność minimalizacji kosztów prowadzi do tego, aby koszt materiałowy zdefiniowany przez listę BOM był jak najniższy. Z uwagi na to korzystniej jest implementować więcej funkcji użytkowych w oprogramowaniu, bo związane z nim wydatki nie dotyczą każdej wytworzonej sztuki.
Te procesy sprawiają, że rola oprogramowania firmware cały czas się zwiększa. Staje się ono bardziej rozbudowane i złożone, a czas jego przygotowania (napisania) jest coraz dłuższy.
Podobnie jak zestawy startowe, projekty aplikacyjne lub gotowe rozwiązania dostarczane przez działy wsparcia technicznego producenta i dystrybutora ułatwiają budowę części sprzętowej, takie same zjawiska można dostrzec w zakresie oprogramowania. Podstawą są zintegrowane środowiska typu IDE, ale największą pomoc zapewniają gotowe kawałki kodu, biblioteki procedur lub nawet gotowe rozwiązania z otwartą licencją, które wystarczy przerobić pod swoje potrzeby.
Takie zasoby też się bardzo szybko zwiększają i mają duży wpływ na tempo rozwoju rynku i na akceptację nowych rozwiązań. Poza oprogramowaniem darmowym na rynku jest jeszcze wiele narzędzi płatnych związanych np. z grafiką, interfejsem użytkownika. Konieczność pracy od zera jest chyba bardzo rzadkim przypadkiem.
Coraz większe znaczenie w tworzeniu oprogramowania mają języki wysokiego poziomu, także wersje skryptowe, specjalizowane narzędzia zdolne do wygenerowania kodu na podstawie zapisanego graficznie algorytmu. Takie narzędzia najczęściej kierowane są do tworzenia aplikacji IoT i jeśli nie ma wymagań co do szybkości, a stopień komplikacji nie jest duży, to można z ich użyciem sporo sobie zaoszczędzić wysiłku.
W powstanie takich narzędzi zaangażowały się duże koncerny, a przykładem może być Microsoft, który stworzył narzędzia pozwalające prosto stworzyć oprogramowanie dla projektu IoT z wykorzystaniem chmury Azure Sphere. Wraz z kolejnymi układami SoC zawierającymi kompletne platformy sprzętowe do takich zastosowań takie narzędzia będą zyskiwać na znaczeniu i zapewne będą coraz doskonalsze. Hipotetyczny koniec takich procesów można upatrywać w tym, że w obszarze IoT najbardziej liczyć się będzie pomysł na aplikację, to, jaką korzyść (wartość) będzie można osiągnąć, a nie sprzęt i oprogramowanie.
Phyton atakuje dominującą pozycję C plus plus
Z opisanych wyżej powodów coraz częściej programiści sięgają w pracy po języki wysokiego poziomu takie jak Phyton. Powodem jest to, że z ich użyciem łatwo i szybko można napisać nawet skomplikowany program, taki, którego implementacja w C++ wymagałaby znacznie więcej wysiłku. Dawniej, gdy zasoby pamięciowe mikrokontrolerów były niewielkie, podobnie jak wydajność przetwarzania, koniecznie było pisane oprogramowania w językach niskiego poziomu, w asemblerze, potem przez długie lata w C/C++.
Dzisiaj wydajność przetwarzania nie jest barierą, bez problemu można kupić chipy z pojemną pamięcią Flash, a wiele aplikacji nie musi działać w czasie rzeczywistym. Badania ankietowe, zarówno nasze własne wykonywane na potrzeby tego zestawienia jak i zagraniczne stowarzyszenia branżowe (patrz strona 18), wykazują niezbicie, że Phyton w systemach embedded jest wybierany równie często jak język C.
Komunikacja i niewielkie potrzeby energetyczne
W ostatnich latach rynek elektroniki szybko się zmienia i znaczenia nabierają aplikacje przenośne, rozwiązania IoT oraz systemy rozproszone, np. telemetryczne sieci pomiarowe. Wiele takich rozwiązań zasilanych jest z akumulatorów i baterii jednorazowych, stąd potrzeby związanie z zapewnieniem jak najmniejszego poboru mocy stają się bardzo istotne.
Drugim istotnym trendem jest komunikacja bezprzewodowa. Elektronika mobilna, urządzenia klasyfikowane jako IoT muszą mieć możliwość wymiany danych, dostępu do Internetu lub gromadzenia danych w chmurze obliczeniowej. Stąd komunikacja jest i będzie w przyszłości ważnym obszarem determinującym możliwości mikrokontrolerów.
Na rynku są układy SoC, gdzie moduł komunikacyjny został zintegrowany w całość aplikacyjną z mikrokontrolerem tak, że realizuje wygodną platformę aplikacyjną, np. Espressif. Sukces tego rozwiązania wskazuje po raz kolejny wyraźnie rysujący się kierunek rozwoju, a więc uniwersalną platformę sprzętową o szerokich możliwościach konfiguracji.
Wydajność czy niski pobór mocy
Mówiąc ogólnie, duża wydajność mikrokontrolerów jest w sprzeczności z niskim poborem mocy. Ale ostatnio na rynku pojawiły się mikrokontrolery, które mają dwa rdzenie - jeden wydajny, a drugi energooszczędny, co pozwala programiście używać ich w zależności od tego, co jest potrzebne w danej chwili. To przykład wyłomu w tej ogólnej regule.
Nowe technologie pozwalają na usypianie działania procesora i szybkie wybudzanie, automatyczne dopasowanie wydajności do realizowanych zadań, skalowanie napięcia zasilania i inne podobne techniki. Są układy z autonomicznie działającymi układami peryferyjnymi, które mogą samodzielnie wymieniać dane bez udziału procesora.
W zakresie niskiego poboru mocy producenci z pewnością nie powiedzieli jeszcze ostatniego słowa, wraz z kolejnymi rekordami można liczyć na wzrost popularności zasilania energią wolnodostępną (energy harvesting), przed którą widać wielki potencjał i która powinna być głównym źródłem zasilającym dla aplikacji elektroniki noszonej (wearables).
Na razie producenci mikrokontrolerów starają się łagodzić niedogodności związane z zawieraniem kompromisu między dużą wydajnością a małym poborem mocy poprzez rozbudowę chipów. Dwa mikrokontrolery w jednej strukturze są pomysłową koncepcją, która pojawiła się w rodzinie STM32, ale też można ją dostrzec w wielu układach SoC, gdzie z reguły jest kilka rdzeni: aplikacyjny, komunikacyjny itd.
Ewolucja, a nie rewolucja
W zakresie popularnych mikrokontrolerów, technologii i rozwiązań w ostatnich latach nie pojawiły się jakieś przełomowe koncepcje. Rynek jest zdominowany przez architekturę ARM Cortex-M, która stale wzbogaca się o nowe wersje, zarówno takie, gdzie nacisk położono na wydajność, jak i te koncentrujące się na zagadnieniach energooszczędności.
Na rynku pojawiają się też często jednostki specjalizowane jako systemy na krzemie (SoC). Najczęściej dotyczy to integracji mikrokontrolera i układu radiowego, rzadziej z FPGA lub obwodami audio. SoC-e to korzystne rozwiązania, które są implementowane m.in. w urządzeniach medycznych, systemach oświetleniowych, grach elektronicznych oraz IoT. Za ich pomocą można zamknąć całą warstwę sprzętową aplikacji w jednym układzie, stąd tam, gdzie liczy się cena, miniaturyzacja, jest to korzystny wybór.
Oprócz nowoczesnych, bogato wyposażonych i wydajnych mikrokontrolerów 32-bitowych, na rynku cały czas zgodnie egzystuje grupa procesorów 8-bitowych, o nieporównywalnie mniejszych zasobach, funkcjonalności i liczbie układów peryferyjnych, ale za to bardzo tanich i znakomicie nadających się do realizacji prostych układów sterowania.
Do wielu zastosowań i aplikacji 8 bitów całkowicie wystarcza, a przy niskich cenach takich jednostek, zaczynających się od ułamka dolara za sztukę, wykorzystuje się je jako proste układy czasowo-logiczne. Na rynku zawsze będzie popyt na proste i ekonomiczne rozwiązania i wydaje się, że pozycja takich budżetowych jednostek nie jest zagrożona.
Ogromna funkcjonalność za grosze
Mikrokontrolery są coraz tańsze, co może niekoniecznie widać w cenach bezwzględnych, ale z pewnością daje się dostrzec pod względem stosunku ceny do możliwości (wydajność, pamięć, układy peryferyjne).
Projektanci przez cały czas szukają też oszczędności na najdroższych układach stosowanych w modułach elektronicznych, stąd wynika prawdopodobnie zapotrzebowanie na tanie mikrokontrolery, które nie muszą być uniwersalne. To zapewne też przyczyna, dla której jednostki 8-bitowe cały czas znajdują chętnych, bo takiego mikrokontrolera opłaca się użyć nawet do prostych funkcji logicznych.
Kolejną odsłonę możliwości integracji i obniżki cen przynoszą układy SoC (system na krzemie) zawierające w jednym chipie praktycznie całą aplikację (procesor, pamięć, komunikację). Funkcjonalność, jaką dostaje się za symbolicznego dolara, jest bardzo duża i niemożliwa do osiągnięcia w jakimkolwiek innym rozwiązaniu bazującym na elementach dyskretnych. Dlatego perspektywy dla tego obszary rynku są znakomite.
Jak wybrać kompetentnego dostawcę?
Z uwagi na szerokość asortymentu w zakresie mikrokontrolerów towarzysząca raportowi tabela przeglądowa koncentruje się na prezentacji potencjału poszczególnych firm oraz ocenie ich kompetencji technicznych, a nie na produktach. Uchwycenie szczegółów poszczególnych rodzin, rdzeni, w formie niewielkiej tabeli jest niewykonalne, dlatego skupiamy się na dostawcach, wierząc, że dobry i kompetentny dystrybutor jest w stanie zapewnić klientom większą pomoc niż najdokładniejsza tabela.
Źródłem wszystkich danych przedstawionych w tabelach oraz na wykresach są wyniki uzyskane w badaniu ankietowym przeprowadzonym wśród firm handlowych oferujących mikrokontrolery w Polsce.