Oprogramowanie wbudowane (embedded)
Z oprogramowaniem wbudowanym występującym również pod angielskojęzycznymi nazwami "firmware" lub "embedded software" spotykamy się w codziennym naszym życiu. Nie przywiązujemy wagi, że nawet banalne urządzenia jak np. szczoteczka elektryczna do mycia zębów posiada w swojej obudowie mikrokontroler, który byłby zwykłą częścią składową gdyby nie oprogramowanie wbudowane. To właśnie oprogramowanie wbudowane (przyp. firmware lub embedded software) jest mózgiem urządzeń małych i dużych, bardziej lub mniej skomplikowanych wykonujących bardziej lub mniej złożone funkcje.
Jako firma operująca głównie na gruncie elektroniki sterującej oferujemy naszym klientom kompleksowe rozwiązania w obszarze oprogramowania wbudowanego podzielone na następujące grupy:
Modyfikacja oprogramowania wbudowanego
Modyfikacje oprogramowania wbudowanego przeprowadzamy na działającym lub częściowo działającym oprogramowaniu wybierając metodę działania najbardziej odpowiednią do problemu z jakim boryka się klient. Poniżej najczęściej spotykane modyfikacje:
- Lokalizacja błędów w oprogramowaniu już działającym.
- Modyfikacja wybranych funkcji.
- Konfiguracja systemu operacyjnego.
- Przeniesienie funkcji lub całości oprogramowania na inną platformę sprzętową.
- Zmiany bootloadera.
- Modyfikacja GUI (Graphics User Interface).
- Dodatkowe funkcje i porty.
- Optymalizacja kodu pod względem zajmowanej pamięci i szybkości działania.
- Praca z obniżonym poborem mocy.
- Dostosowanie oprogramowania do standardów MISRA C++ lub MISRA C:2012.
Tworzenie oprogramowania wbudowanego
Oprogramowanie wbudowane tworzone przez nas od podstaw zawiera pełną dokumentację zewnętrzną, czytelny opis kodu źródłowego oraz na życzenie klienta stosowanie wytycznych MISRA. Tworzymy między innymi:
- Oprogramowanie dla platform analogowych i cyfrowych.
- Standardowe oprogramowanie pojedynczej pętli.
- Oprogramowanie oparte na systemach czasu rzeczywistego Windows, Linux.
- Bootloadery.
- Portowanie dla platformy klienta i własnych rozwiązań sprzętowych.
- Funkcje komunikacyjne ze szczególnym uwzględnieniem przemysłowych standardów (PROFINET, PROFIBUS, Modbus, RS485/422).
- Interfejsy operatora GUI (Graphics User Interface) dla platform Windows i Linux.
- Interfejsy operatora HMI (Human Machine Interface).
- Dokumentacja oprogramowania.
- Współpraca z bazami danych ORACLE, MySQL itp.