Embedded vývoj znamená rozmanitost

Hlavní oblastí zájmu naší firmy je vývoj embedded software (firmware) - jsme schopni pokrýt široké spektrum aplikací od jednoduchých senzorových uzlů až po komplexní systémy řízení. Jsme zvyklí přizpůsobit se prostředí, které zákazník využívá, a navázat na již existující hardware či vývojové standardy.

Typickým jádrem jednodušších embedded zařízení jsou pro nás mikrokontroléry řady ARM Cortex-M. Pracovali jsme s MCU mnoha výrobců (namátkou uveďme rodiny STM32, i.MX RT nebo RP2040) - adaptabilita je však základem naší práce a jsme otevřeni vývoji na všech platformách podle konkrétních požadavků projektu a zákazníka.

Píšeme především v programovacích jazycích C a C++. Díky našim zkušenostem dokážeme navrhovat řešení na míru, která jsou nejen funkční, ale také optimalizovaná pro konkrétní hardware - ať už se jedná o volbu real-time operačního systému nebo algoritmizaci aplikační logiky.

Pro složitější embedded systémy s aplikačním procesorem nasazujeme Embedded Linux, včetně vývoje vlastních Board Support Package (BSP) pomocí nástroje Yocto Project. To nám umožňuje plnou kontrolu nad softwarovým stackem a přizpůsobení systému specifickým potřebám projektu. Implementačně jsou takové systémy bohatší, od konfigurace přes skriptování až po programování v jazycích Python nebo Go.

Zaujala vás naše nabídka nebo máte dotaz?
Neváhejte nás kontaktovat, společně najdeme nejvhodnější řešení.
 

Důraz na kvalitu kódu – statická analýza a unit testy

Kvalita a spolehlivost kódu je pro nás zásadní. Již ve fázi vývoje využíváme pokročilé nástroje pro statickou analýzu, jako jsou Polyspace Bug Finder, Polyspace Code Prover a SonarQube. Tyto nástroje nám pomáhají odhalit chyby dříve, než by se mohly jejich důsledky projevit v reálném provozu.

Unit testy jsou přirozenou součástí našeho vývojového procesu – pravidelně je používáme k ověřování chování jednotlivých částí kódu v izolaci. Výsledkem je robustní software s vysokou mírou spolehlivosti, který následně přebírá nezávislý testovací tým provádějící verifikaci a validaci celého řešení.

I na menších projektech se nám vyplácí automatizovat kontrolu kvality pomocí mechanismů CI/CD – analýza zdrojových kódů, jejich překlad do spustitelné binární formy i exekuce testů je pak konzistentní napříč vývojovým týmem a podílí se na deterministické kvalitě po celou dobu řešení.

Uživatelsky přívětivá grafická rozhraní

Pro zařízení v segmentu spotřební elektroniky a u zdravotnických zařízení je stále větší důraz kladen na grafická uživatelská rozhraní (GUI). Máme mnohaleté zkušenosti s implementaci grafických uživatelských rozhraní, která jsou optimalizovaná pro embedded zařízení. Pracujeme s moderními frameworky jako Embedded Wizard, TouchGFX a LVGL, které umožňují plynulý chod i na platformách s omezenými výpočetními prostředky. Výsledkem je funkční, stabilní a responzivní rozhraní odpovídající požadavkům konkrétní aplikace.

Zaujala vás naše nabídka nebo máte dotaz?
Neváhejte nás kontaktovat, společně najdeme nejvhodnější řešení.

 

Rychlé prototypování pomocí LabView

Pro potřeby podpory vývoje vestavěných systémů, ověření komunikace s nimi, simulaci rychlých přechodových dějů či měření dat využíváme vývojové prostředí LabVIEW. To nám společně se specifickým hardware firmy NI, jako jsou cRIO, sbRIO a DAQ systémy, umožňuje rychlé prototypování software nástrojů, které navíc nativně podporují grafické uživatelské rozhraní. Pomocí LabVIEW rovněž vyvíjíme pro naše zákazníky zakázkové aplikace na míru, které prostřednictvím grafického uživatelského rozhraní umožňují snadnou konfiguraci vestavěného systému, jeho monitoring a sběr dat. LabVIEW je rovněž vhodné pro zajištění přesného časování při vysokých přenosových rychlostech.

Příklady projektů, které jsme řešili pro naše zákazníky

Naše řešení najdete v celé řadě oblastí – od domácích spotřebičů po automobilový průmysl.

Příklady projektů, na kterých jsme se podíleli:

  • Dlouhodobě vyvíjíme uživatelská rozhraní pro systémy tepelných čerpadel - dotyková i tradiční GUI, podporu rozličných komunikačních sběrnic a cloudového rozhraní, integraci řídicí logiky.
  • Vyvinuli jsme řízení bezkartáčových motorů v akumulátorové zahradní sekačce.
  • Inovovali jsme komunikační jednotku v automobilu, která zprostředkovává komunikaci mezi jednotlivými řídicími jednotkami.
  • Připravili jsme komfortní prostředí pro provádění experimentů na komplexním testovacím systému pro zdravotnické zařízení - nebulizační difuzér.
  • Ve spolupráci s partnerskou firmou a univerzitním výzkumným týmem jsme vyvinuli mikrobiologický přístroj – průtokový cytometr, který v reálném čase počítá jednobuněčné organismy ve vzorku vody.
  • Jsme autory kompletního vývoje autonomního mobilního robotu Advee a dalších produktů z oblasti robotiky.
Máme rozsáhlé zkušenosti s adopcí standardních i zákaznických komunikačních sběrnic, vývojem uživatelských rozhraní, řízením elektrických aktuátorů, zpracováním signálů v reálném čase a bezdrátovou komunikací (např. Bluetooth Low Energy, Wi-Fi nebo Sub-GHz technologie).
Zaujala vás naše nabídka nebo máte dotaz?
Neváhejte nás kontaktovat, společně najdeme nejvhodnější řešení.