Systemy Embedded
Systemy embedded to względnie nowy kierunek w rozwoju systemów wizyjnych. Dostrzegają go zarówno producenci komponentów i oprogramowania wizyjnego jak również integratorzy. Dostępność specjalnych modułów kamer, takich jak Basler dart, nowych interfejsów oraz komputerów jednopłytowych pozwala na coraz bardziej zaawansowane i kompaktowe konstrukcje, posiadające taką samą funkcjonalność jak standardowe systemy PC-based.
Budowa Systemu wbudowanego
Systemy wbudowane to tak naprawdę zminiaturyzowane odpowiedniki tradycyjnych systemów PC-based. Oznacza to, że tutaj także występują takie komponenty jak kamery, procesory czy oświetlacze i choć wydajność obliczeniowa takiego systemu jest mniejsza musi on spełniać takie same wymagania jakie stawiane są standardowym systemom wizyjnym. Aby było to możliwe, każdy z komponentów musi mieć przemyślaną konstrukcję, dostosowaną do standardów panujących w świecie embedded. Kamery projektowane na potrzeby wbudowanych systemów wizyjnych zazwyczaj mają postać pojedynczej płytki drukowanej z umieszczoną na niej matrycą światłoczułą. Najczęściej moduły te dostępne są bez obudowy, ponieważ wiele systemów embedded to oddzielne urządzenia, na potrzeby których integratorzy projektują także oddzielna obudowę. Dla aplikacji, które nie wymagają aż tak wysokiego stopnia integracji dobrym wyborem będą małe, standardowe kamery, takie jak Basler ace. Dodatkowym atutem tych urządzeń będzie również prostsza konfiguracja w stosunku do kamer board-level.
W świecie embedded rolę centrum obliczeniowego pełnią układy SoC (System-on-chip). Są one podstawą wszystkich wbudowanych systemów wizyjnych. SoC to pojedynczy układ, w którym zintegrowane jest CPU, GPU, kontrolery, oraz inne specjalne procesory (DSP, ISP). To właśnie powstanie i rozwój platform SoC sprawił, że możliwe stało się konstruowanie jednocześnie zaawansowanych i kompaktowych systemów wizyjnych. W zależności od specyfiki danej aplikacji można skorzystać z kilku różnych rodzajów platform, takich jak Single-board-computers (SBC) czy System-on-module (SOM).
Zastosowania
Jednym z najważniejszych sektorów dla systemów embedded jest rynek medyczny. Urządzenia do obrazowania medycznego, mammograficzne, rentgenowskie, tomografia komputerowa, rezonans magnetyczny, dają lekarzom potężne narzędzia, pomagające zdiagnozować groźne choroby w krótkim czasie.
Cechy takie jak niewielki rozmiar oraz relatywnie niskie zużycie energii sprawiają, że systemy embedded będą idealnym rozwiązaniem dla systemów mobilnych. Można powiedzieć, że smartfony to systemy wbudowane, ponieważ składają się z takich samych procesorów jak systemy embedded vision i wyposażone są nawet w kilka kamer. Systemy wbudowane znajdują się również w wielu domowych urządzeniach AGD, np. w autonomicznych odkurzaczach.
Zminiaturyzowane aplikacje wizyjne to powszechne wyposażenie większości nowych samochodów. Różnego rodzaju systemy bezpieczeństwa wykrywające pieszych i inne samochody, a także systemy parkowania to nic innego jak połączenie modułu kamery z procesorem i oprogramowaniem. Najbardziej zaawansowanym ogniwem tej ewolucji wydają się być autonomiczne samochody, o których można by powiedzieć, że stanowią „poruszający się system wizyjny”. Ponadto, systemy embedded mogą sprawdzić się wszędzie tam, gdzie działają tradycyjne systemy wizyjne. Warunkiem jest jednak czas integracji, ponieważ zaprojektowanie aplikacji embedded vision może zająć znacznie więcej czasu. Systemy wbudowane mogą służyć do kontroli jakości produkcji i utrzymania ruchu w zastosowaniach przemysłowych czy śledzenia ruchu ulicznego.
Charakterystyka systemów wbudowanych na tle standardowej wizji maszynowej
Większość z wymienionych wyżej platform nie oferuje procesorów z rodziny x86, używanych w komputerach PC. W zamian za to systemy embedded posiadają procesory o architekturze ARM. W związku z tym różnice występują również w kwestii systemów operacyjnych – najpopularniejszym, dostosowanym do architektury ARM jest Linux.
Dla integratorów rozwój systemów wbudowanych jest znacznie bardziej skomplikowany niż w przypadku standardowego systemu PC. Podczas gdy przy tworzeniu tradycyjnego rozwiązania, platforma PC używana do programowania jest także platformą docelową, tak w przypadku integracji systemu embedded, tworzenie programu na docelowym sprzęcie jest niemożliwe ze względu na niską wydajność procesora. Do rozwoju oprogramowania wbudowanego wykorzystuje się również komputer PC, na którym program jest kodowany i kompilowany a następnie kopiowany do systemu wbudowanego i zdalnie debugowany. Przy tworzeniu systemu embedded należy pamiętać, że konfiguracja docelowa jest mocno zorientowana na określoną aplikację i może znacznie różnić się od powszechnie używanych PC.
Systemy embedded w przeciwieństwie do tradycyjnych, oferują niski koszt komponentów, ale za to wysoki koszt integracji i dalszego rozwoju. Producenci starają się obniżyć koszt integracji, aby użytkownicy chętniej korzystali z tego typu rozwiązań. Z tego powodu powstają nowe standardy i uniwersalne rozwiązania integracyjne, mające na calu uprościć i przyspieszyć cały proces.
—
Systemy wbudowane są bardzo ciekawą alternatywą dla wielu istniejących już produktów i aplikacji. Co więcej małe rozmiary mogą umożliwić stworzenie aplikacji których wykonanie było do tej port niemożliwe. Przykładami mogą być chociażby różnego rodzaju urządzenia do diagnostyki medycznej, inteligentne systemy do monitoringu ruchu ulicznego, małe produkty z dziedziny smart home, a także mobilne systemy do zapewniania jakości.