Aktuální vydání

celé číslo

11

2019

Využití robotů, dopravníků a manipulační techniky ve výrobních linkách

Průmyslové a servisní roboty

celé číslo

Přehled trhu: inteligentní kamery

Kompaktní kamery s vestavěným počíta­čem pro vyhodnocení obrazu, pro které se vžil název inteligentní nebo také smart kamery, jsou předmětem přehledu trhu, který má usnadnit orientaci v nabídce těch­to přístrojů. Oslovení výrobci poskytli re­dakci časopisu Automa základní parametry svých inteligentních kamer a z nich pak byla sestavena tabulka na str. 22–23. Poděková­ní redakce patří všem společnostem, kte­ré se rozhodly uvést své výrobky v tomto přehledu a umožnily zmapovat zmíněnou oblast trhu. Tento průvodní článek charak­terizuje základní funkce, uvádí názvosloví a možnosti využití inteligentních kamer.
 
Inteligentní (smart) kamera je specializo­vaný prostředek pro realizaci strojového vi­dění (machine vision), které je podmnožinou obecnějšího, počítačového vidění (computer vision). Historie počítačového vidění se zača­la psát v sedmdesátých letech minulého sto­letí, kdy tehdejší počítače umožnily zpraco­vávat takové objemy dat, jaké jsou třeba pro vyhodnocení obrazových informací. Strojové vidění je segmentem počítačového vidění pro použití v průmyslové automatizaci, a je tedy charakterizováno vazbou na výrobní proces a orientací na typické úlohy výroby – vizuál­ní inspekci, počítání objektů, hledání defektů. Pro plnění těchto úkolů je systém strojového vidění vybaven prostředky pro vazbu na vý­robní proces – vstupy, výstupy a komuni­kačními prostředky obvyklými v průmyslu. Typické schéma systému strojového vidění ukazuje obr. 1.
 
První inteligentní kamery se objevily přibližně před dvaceti lety. Byly odpovědí na požadavek přiblížit komplikované a dra­hé systémy strojového vidění technice běž­ných senzorů, např. optických. Vznik inteli­gentní kamery právě v této době umožnilo spojení dvou relativně nových prvků: polo­vodičového snímače obrazu a mikroproceso­ru. Inteligentní kamera je kompaktní zařízení schopné zpracovávat úlohy strojového vidění. Obecné blokové schéma inteligentní kamery je na obr. 2. Je z něj patrné, že se inteligent­ní kamera skládá z několika základních částí:
  • prvky snímání a digitalizace,
  • výpočetní část,
  • vstupy a výstupy,
  • komunikační rozhraní.

Snímání a digitalizace

Do nedávné doby byl nejčastěji používa­ným senzorem obrazu v inteligentních ka­merách snímač CCD. Poskytuje v principu analogový signál, který musí být digitalizo­ván převodníkem A/D. Celý proces snímání u jednodušších kamer bývá řízen přímo vý­početní jednotkou, u výkonnějších kamer jsou snímání a digitalizace řízeny zvláštním mik­ropočítačem nebo hardwarovou řídicí jednot­kou, která je výpočetní jednotkou pouze syn­chronizována.
 
V poslední době bylo dosaženo značného pokroku v konstrukci senzorů obrazu CMOS, které jsou již schopny poskytnout obraz kva­lity srovnatelné se snímačem CCD. Řešení CMOS navíc umožňuje na snímací čip inte­grovat i převodník A/D a většinu řídicích ob­vodů. Obsluha snímače CMOS je podstatně jednodušší, podobá se vybírání dat z pamě­ti. Toto zjednodušení je při konstrukci inte­ligentní kamery vítáno, neboť dovoluje ka­meru zlevnit. Nyní již všichni výrobci mají ve své produkto­vé řadě mezi levnějšími typy také kamery se snímačem ob­razu CMOS.
 

Výpočetní část

Výpočetní částí inteligent­ní kamery je vlastně mikropo­čítač. Protože zpracování obra­zu vyžaduje rychlé zpracování velkého množství dat, býva­jí použity výkonné mikropro­cesory, vzhledem k charakteru výpočtu často i digitální signá­lové procesory (DSP). Ještě ne­dávno byl standardem DSP Te­xas Instruments s hodinovým kmitočtem 400 MHz, v sou­časné době jsou běžné i proce­sory s kmitočtem nad 1 GHz. Někteří výrobci uvádějí pře­devším z reklamních důvodů výpočetní výkon v milionech instrukcí za sekundu – MIPS. Tato jednotka ale není k po­rovnání kamer různých výrob­ců příliš vhodná, neboť rych­lost zpracování reálné úlohy závisí spíše na efektivitě soft­warových nástrojů. Většina mo­derních inteligentní kamer pra­cuje s kompletním digitálním snímkem uloženým v paměti RAM, dostupná kapacita této paměti je však dána hlavně po­žadovanou velikostí programu, který se po inicializaci zkopí­ruje z programové paměti fla­sh do RAM a zde je spuštěn. Paměť flash, ve které je ulo­žen program a parametry, bývá většinou vestavěná, začínají se však používat i externí paměťo­vé karty formátu MM nebo SD.
 
K urychlení některých stan­dardních operací potřebných při analýze obrazu (filtrace, hledání hran apod.) se občas využívají i velmi rychlé jednoúčelové ko­nečné automaty programované v hradlových polích.
 

Vstupy a výstupy

Právě digitální výstupy při­bližují inteligentní kameru běžnému senzoru. Proto býva­jí i stejného provedení – s ote­vřeným kolektorem typu PNP nebo NPN, s pracovním napě­tím do 30 V a ochranami pro­ti přepólování a poškození na­pěťovou špičkou při spínání in­dukční zátěže. Digitální vstupy jsou ve většině systémů nutné, aby bylo možné synchronizovat sejmutí snímku se stavem pro­cesu. Prohlížený objekt bývá nutné sejmout v určité poloze a kamera se spouští např. po­mocným čidlem přiblížení nebo signálem z ří­dicího systému. U inteligentních kamer nejsou příliš častá galvanická oddělení vstupů a vý­stupů od napájecího napětí ani jejich vzájem­ná oddělení. Podobně jako standardní senzory přiblížení, bývají i inteligentní kamery použí­vány lokálně, na zařízení s jedním napájením, kde nehrozí velké rozdíly potenciálu. Pokra­čující miniaturizace inteligentní kamer výrob­ce často nutí ustupovat od norem používaných v průmyslové elektronice. Vyrábějí se i kame­ry se vstupy a výstupy v úrovních signálu TTL, které pro připojení do průmyslového provozu potřebují ještě galvanicky oddělený převodník úrovní, většinou s externím napájením. Jindy samostatné vstupy a výstupy úplně chybějí, a je nutné použít adaptér I/O připojený ke ko­munikačnímu rozhraní kamery. Taková řeše­ní instalaci inteligentní kamery komplikují a v konečném důsledku prodražují.
 

Komunikační rozhraní

Komunikační rozhraní plní u inteligentní kamery několik funkcí. Tou hlavní je většinou připojení k zařízení HMI (Human-Machine-Interface), které umožňuje kameru nastavo­vat, popř. programovat. V současné době se HMI nejčastěji používá jako standardní po­čítač typu PC. Pro pohodlný vývoj dané úlo­hy je třeba, aby HMI zobrazovalo obraz sní­maný kamerou v reálném čase. Přenosová rychlost musí být poměrně velká, a proto se jako základní komunikační rozhraní nejčas­těji volí Ethernet.
 
Komunikační rozhraní může mít i jiné funkce. Může přenášet data do nadřazeného řídicího systému, může k němu být připojen modul pro rozšíření počtu vstupů a výstupů, může také zprostředkovat komunikaci mezi několika kamerami v případě složitější úlo­hy, která vyžaduje spolupráci několika ka­mer. Většinou se využívá i k servisu, výmě­ně firmwaru kamery a k podobným účelům.
 
Někdy bývá inteligentní kamera kromě obvyklého Ethernetu vybavena ještě pomoc­ným sériovým rozhraním RS-232/422/485. Důvodem je snadnější při­pojení k většině existujících PLC. Vyšší typy průmyslových sběrnic a protokolů (Profibus, Modbus) se u inteligentních kamer zatím běžně neuplatňují.
 

Konstrukce inteligentní kamery

Mechanická konstrukce in­teligentních kamer není dosud standardizována, jako je tomu např. u snímačů přiblížení. In­teligentní kamera se nejčastěji podobá standardní průmyslo­vé kameře. Liší se množstvím připojovacích míst; navíc má vstupy a výstupy i komunikač­ní rozhraní. Mnoho výrobců doplňuje in­teligentní kameru i vestavěným kruhovým osvětlovačem LED (obr. 3). To sice přispívá k nezávislosti kamery, jednoduchý vestavě­ný osvětlovač je však vhodný skutečně jen pro nejjednodušší úlohy strojového vidění.
 

Software a programování

Inteligentní kamera není zařízení, do ně­hož lze instalovat libovolný software. Toto omezení je dáno úzkou vazbou na technické prostředky – mikroprocesor, omezený roz­sah paměti, způsob připojení snímacího čipu i vstupů a výstupů. Přitom právě inteligent­ní kamera by měla, na rozdíl od tzv. video­senzorů, umožňovat zpracování co nejširšího množství úloh strojového vidění.
 
Obvyklé úlohy strojového vidění určené pro zařízení typu inteligentních kamer vyža­dují, aby byl software schopen provádět tyto základní operace:
  • zpracování obrazu: nalezení hran a převe­dení do vektorového formátu (vektoriza­ce), hledání kontrastních objektů, analýza jasu,
  • měření v obraze: stanovení vzdálenos­tí ve vektorovém obraze, popř. kalibrace v technických jednotkách,
  • čtení textu (OCR) a identifikačních kódů (čárových a maticových),
  • obsluha hardwaru kamery: řízení snímací­ho čipu, obsluha vstupů, výstupů a komu­nikačních rozhraní,
  • zpracování dat, které je nezbytné ve složi­tějších úlohách, kde se používají např. ma­tematické nebo statistické postupy,
  • řízení postupu vyhodnocení podle algorit­mu: jde vlastně o možnost sestavit uživa­telský program.
Uvedené úlohy jsou v inteligentních ka­merách řešeny dvěma způsoby. Někteří vý­robci dodávají inteligentní kamery vybave­né pouze operačním systémem (většinou jde o speciální operační systém nebo verzi linu­xu). Nástroje pro řešení úloh strojového vi­dění jsou dodávány ve formě knihoven funk­cí pro obecný programovací jazyk, nejčastěji C, a uživatel si sám s využitím těchto funk­cí napíše program pro danou úlohu, přelo­ží ji pro specifický procesor používaný in­teligentní kamerou a zavede do paměti pro­gramu kamery. Přestože dodavatelé doplňují knihovny simulátory a dalšími prostředky pro usnadnění vývoje programu, bývá výsle­dek závislý na schopnostech programátora, který ovšem musí být zároveň odborníkem na strojové vidění.
 
Pokročilejší systémy využívají grafické vývojové prostředí běžící na připojeném PC, které spolupracuje s firmwarem kamery a po­skytuje uživateli nástroje nebo senzory ori­entované na základní operace používané při řešení úlohy strojového vidění. Typicky zde lze nalézt nástroje k detekci kontrastních roz­hraní (edge detector), nalezení kontrastních objektů (blob detector) a další. Jiné nástro­je umožňují nastavit chování vstupů, výstu­pů a komunikačního rozhraní. Ve vývojo­vém prostředí je přímo zřejmé působení ná­stroje na obraz (zobrazí se např. výsledky vektorizace hran) a výstup nástroje, nejčas­těji ve formě logické hodnoty, většinou in­terpretované jako výsledek inspekce: dobrý//vadný. Inspekční program se sestavuje řaze­ním těchto nástrojů do vývojového diagramu nebo do tabulky. Vývoj aplikačního programu v takovém vývojovém prostředí nevyžaduje znalost programování, vývojář se může sou­středit na vytěžení podstatné a spolehlivé in­formace o zkoumané vlastnosti zobrazeného objektu. Příklad obrazovky vývojového pro­středí ukazuje obr. 4.
 

Využití inteligentní kamer

Inteligentní kamery jsou v průmyslu po­užívány stále častěji, a to především díky je­jich rostoucí výkonnosti a schopnosti spolu­pracovat v síti. Použitím inteligentních kamer lze proto v současnosti řešit i úlohy vyhraze­né ještě před nedávnem velkým systémům strojového vidění. Naproti tomu technické inovace a hromadná výroba otevírají mož­nosti využití inteligentních kamer i tam, kde se ještě donedávna používaly standardní sen­zory přiblížení. Příkladem může být plnička nápojových lahví. Jedna inteligentní kame­ra může v jediné operaci zkontrolovat správ­nost výšky hladiny, přítomnost a správné na­sazení uzávěru i nalepenou etiketu. Kontro­la stejného rozsahu prováděná standardními snímači by byla nepoměrně komplikovanější. Na obr. 5 je ukázáno využití dvou inteligent­ních kamer k řešení úlohy strojového vidění ve výrobní lince.
Ing. Otto Havle, CSc., MBA
 
Obr. 1. Schéma systému strojového vidění
Obr. 2. Blokové schéma inteligentní kamery
Obr. 3. Inteligentní kamera s vestavěným osvětlovačem
Obr. 4. Příklad obrazovky vývojového prostředí pro inteli­gentní kameru
Obr. 5. Příklad použití inteligentních kamer ve výrobě