Начало

Отрасли и области на работа

Embedded разработката през три десетилетия по своята природа е междуотраслова. Следните девет области на работа отразяват теми, върху които действително съм работил.

Който работи три десетилетия в embedded разработка, натрупва опит в няколко отрасъла — не от маркетингови съображения, а защото самите задачи прехвърлят границите на отраслите. Управлението на двигателя на верижен трион следва същите физични принципи като управлението на двигателя в автомобил.

Следващият преглед показва девет области на работа, в които съм осъществил конкретни проекти. Подреден е по честота и приоритет — automotive начело, защото там започна моята кариера.

Automotive

1. Automotive

Основна област от 1990 г. — отначало в Mercedes-Benz, днес за няколко големи производители и техните доставчици в Германия, Великобритания и САЩ.

  • Управления на двигатели (4-тактови, 2-тактови, функции за безопасност)
  • Камери (заден ход, паркиращ асистент, разпознаване на хора)
  • Разработка и тестване на управляващи единици (ECU)
  • FMCW радар 77 GHz — автоматизация на тестове за automotive доставчик
  • Infotainment и MOST симулация (виж проекта Audi в референциите)
  • Диагностични концепции (UDS, ISO 14229)
  • Функционална безопасност по ISO 26262
Медицина

2. Медицинска техника

Опит в разработката и тестването на критични за безопасността медицински устройства по IEC 62304 и IEC 60601-1.

  • Инфузионни системи (PCA, TCI)
  • Миещи и дезинфекциращи устройства
  • Визуализация и анализ на медицински данни
  • Алгоритми за интерпретация на метаболитни измервания (глюкоза, кетони)
  • IEC 62304 — жизнен цикъл на софтуер
  • IEC 60601-1 — безопасност на устройство
Управление

3. Управляващи системи

Embedded управления за устройства, машини и превозни средства — от управления на двигатели с най-строги изисквания за реално време до управления на сгради.

  • Електронни управляващи единици (превозни средства)
  • Управления на двигатели (предварително запалване, инжекция, безопасност)
  • Управления на устройства и машини
  • Измерване, управление, регулиране
  • Домашна автоматизация на многопроцесорен хардуер: интегрирано управление на щори и капаци, управление на покривни прозорци Velux чрез инфрачервен интерфейс, PC интерфейс с времеви профили. По желание отдалечен достъп от мобилен телефон чрез криптирана директна връзка.
  • Bare-metal реално време на малки микроконтролери (виж проекта Stihl в референциите)
Сигнал

4. Навигация и обработка на сигнали

Алгоритми за регистриране на движение, филтриране на сигнали и използване на сензорни данни — от аналогови филтрови степени до адаптивни цифрови алгоритми.

  • 3D регистриране на движение без GPS (акселерометри, филтър на Калман)
  • Цифрови филтри (FIR, прозоречни функции: Hamming, Hann, Blackman, Kaiser)
  • Аналогови филтри (Чебишев, Бътъруърт, активни и пасивни)
  • Използване на сензорни данни в реално време
  • Адаптивни алгоритми за променливи среди
Комуник.

5. Комуникации

Имплементация на шини и радиоинтерфейси — от ниво на драйвер близко до хардуера до устойчиво на грешки предаване с Reed-Solomon кодиране.

  • Радиоинтерфейси (устойчиво на грешки предаване)
  • Шини CAN, CAN FD, Ethernet, EtherCAT
  • I²C, SPI, MOST, RS232
  • Резервно предаване
  • Кодиране за корекция на грешки (Reed-Solomon)
  • Структурирана организация на данни за автоматично откриване и корекция
  • Chirp сигнали за предаване в трудни условия
Процес

6. Наблюдение на процеси и контролни зали

Embedded системи и софтуер за наблюдение, управление и визуализация на технически инсталации.

  • Realtime табла за наблюдение на инсталации и процеси
  • Многомониторни оформления с криви на тенденция, аларми и история
  • Алармена и прагова логика с нива на ескалация
  • Свързване на сензори и събиране на данни (embedded хардуер)
  • Уеб HMI концепции
  • Многоканално архивиране на данни
IoT

7. IoT и визуализация на данни

Уеб интерфейси и приложения за наблюдение, управление и анализ на embedded системи и измервателни данни.

  • IoT табла и наблюдение в реално време (WebSocket, MQTT)
  • Наблюдение и дистанционно управление
  • Уеб конфигурационни интерфейси (Flask, REST API)
  • Визуализация на измервателни данни (Chart.js, интерактивни диаграми)
  • Android приложения за embedded устройства (Kotlin)
Сигурност

8. Криптиране и сигурност

Имплементация на криптографски методи в embedded контекст. Бележка: над определено ниво на криптиране може да е необходимо разрешение от компетентния орган.

  • AES (128/192/256 бита)
  • RSA, Twofish
  • Многократно криптиране за приложения с висока сигурност
  • Криптиране в реално време
  • Мрежова сигурност (VLAN, port security)
  • Сигурна шинна комуникация
  • Подписани актуализации на фърмуер и сигурни bootloader-и
QA

9. Осигуряване на качество

Систематична валидация на embedded системи — на хардуерно, кодово и системно ниво.

  • Преглед на PCB и преглед на дизайн
  • Преглед на код и статичен анализ
  • Ръчни тестове и автоматизация на тестове
  • Техническа документация (включително видео)
  • Калибриране (ток, напрежение, температура, налягане)
  • Валидация спрямо изискванията
  • Спецификация на тестове по ASPICE

Кои области на работа често се комбинират

Повечето реални проекти не попадат само в една от горепосочените области, а комбинират няколко:

Цветова схема

Език