HAL_9000

Z-kamera 2.

Když se poprvé jela soutěž robotických aut DARPA Grand Challenge, tak jsme ani nedýchali. Dnes už robotická auta mohou legálně jezdit po Nevadě a Kalifornii, takže představa auta bez řidiče už tak nešokuje, takže se začali ozývat někteří kritici. Jednou z kritik je, že robotické auto = obyčejné auto + čidla a elektronika za mnoho miliónů. Jelikož minule zmiňované čidlo Velodyne HDL64 stojí kolem 70 000 dolarů,  je na tom mnoho pravdy.  Právě z potřeby vyrábět lacinější laserové dálkoměry pro auta se objevily firmy jako Hokyuo, které mají ambice vyrábět laserové dálkoměry hromadně a za „rozumnější“ ceny.

Laserové dálkoměry byly do nedávna „zlaté tele“ mobilní robotiky, ale jako každá věc mají své (zásadní) nevýhody.

Už z principu toho jak fungují nebudou nikdy úplně laciné. Laserový dálkoměr vyšle laserový puls a čeká na odraz. Vtip je v tom, že světlo se pohybuje rychlostí 300 000 000 metrů za sekundu, takže za 1 nanosekundu  (10-9s) urazí 30 centimetrů. Proto pokud chceme měřit vzdálenost s centimetrovou, nebo dokonce milimetrovou přesností musíme se pohybovat v měření času kolem pikosekundy (10-12 s),  takže časovače, které měří vzdálenost světlem, by měly pracovat na frekvencích stovek gigahertzů.  Kromě toho, aby byly laserové pulsy dostatečně krátké (taky v nanosekundách), musí se do laseru na tu dobu pustit obrovské proudy. Abychom mohli detekovat odraz, potřebujeme mimořádně citlivé a mimořádně nízkošumové tzv. lavinové fotodiody.

Z-kamera03

Kromě toho, laserové dálkoměry měří vždy jen vzdálenost jednoho bodu – místa kam svítí laserová dioda. Abychom mohli měřit alespoň v rovině, laser i fotodioda většinou koukají do zrcátka, které se rychle otáčí. Abychom získali úplný 3D scan – musíme použít buď více laserů (Velodyne jich má 64) nebo musíme laserový dálkoměr naklánět.  Otáčivá zrcátka, naklánění atd. to znamená kromě složité elektroniky ještě docela složitou mechanickou konstrukci. Je tedy jasné, že laserové dálkoměry nebude nikdy vyrábět Číňan v milionových sériích „na bambusovém lisu“ jako se vyrábějí třeba smartphony.

Vysoká cena a relativně „řídká“ síť naměřených vzdáleností vedly k ochlazení zájmu o laserové dálkoměry a to dokonce i v oblasti automobilů, kde se jim slibovala velká budoucnost. Do toho přišel Microsof Kinect, který s průmyslovým měřením vzdáleností absolutně nesouvisí, ale na druhé straně má přesně ty vlastností, které laserovým dálkoměrům chybí – „vidí“ vzdálenosti v celé místnosti najednou a vyrábí se v milionových sériích „za hubičku“.  Kinect má pro „velkou robotiku“ jeden zásadní problém – nejde použít na slunci a principiálně nepůjde na slunci použít nikdy.

Z-kamera04

Tím se dostáváme k tomu jak Kinect (a jeho kopie od jiných firem ) vlastně funguje a co je jeho nevýhoda. Kinect si totiž do oblasti kam se dívá promítá infračerveným světlem vzor z teček. Tento vzor pak sleduje infračervenou kamerou.

Z toho vyplývají ty nevýhody:

Nevýhoda 1 – přezáří-li venku slunce infračervené tečky – žádné tečky = žádná data.

Nevýhoda 2 – ta není na první pohled zřejmá, ale z Kinectu jde do počítače obraz jako z webkamery a tečky v něm hledá a 3D rekonstrukci provádí až PC nebo Xbox, což spotřebuje dost výkonu. Microsoft kdysi připustil, že Kinect spotřebuje až 20% výpočetní kapacity PC, ke kterému je připojen.

OK, takže máme čidla pro venek – nesmírně drahá a čidla laciná – venku nepoužitelná. Jak z toho ven ? Před 4 lety to napadlo mně, ale přede mnou to napadlo mnoho jiných – proč nevyrobit Z-kameru? Tedy zařízení, kde každý pixel v kameře bude místo intezity světla, hlásit vzdálenost. Jak takovou kameru vyrobit ? Nejjednodušeji jak to jde – osvětlovací diody blikají a pixely čekají na dopad odraženého světla ? Vzhledem ke komplikacím, které jsem vyjmenovával u laserových dálkoměrů se to zdá jako naprosto šílená idea, ale kupodivu to jde.

Místo měření času v pikosekundách se použije tzv. time to voltage converter tedy konvertor z doby zpoždění odrazu na napětí. Ten funguje přibližně tak, že v okamžiku kdy vyšleme světelný puls začneme nabíjet kondenzátor a v době, kdy se nám vrátí odraz přestaneme – napětí na kondenzátoru je pak úměrné času a ten je úměrný vzdálenosti.

Každý dnešní obrazový senzor už obsahuje skoro všechno potřebné – fotodiody jako světlocitlivý prvek, a kondenzátory (většinou ve formě parazitní kapacity fotodiody) pro uložení světlem vyražených elektronů.

Vtip je v tom, že tak jenoduché to není – ani time to voltage converter není jen tak lecjaký obvod – protože potřebuje v pikosekundách reagující spínací tranzistory atd.

Z-kamera05

Takže konstruktéři Z-kamer věc zjednodušili ještě více. Každému pixelu v kameře odpovídají dva kondenzátory – když osvětlující LED svítí, je k fotodiodě připojen jeden z nich a když osvětlující LED nesvítí je připojen druhý. Jestli vám to připomíná mé pojednání o LOCK IN zesilovačích – BINGO. Princip je v tom, že čím je předmět dále, tím má světlo větší zpoždění a tím se více nabije „druhý“ kondenzátor, který je k fotodiodě připojen, když je LED vypnutá.  Tím, že v procesu dekódování signálu napětí na kondenzátorech odečteme, zbavíme se zároveň i vlivu vnějšího osvětlení, které nabíjí oba kondenzátory stejně. Navíc tím, že oba kondenzátory sbírají elektrony z jednoho pixelu – který se kouká na stále stejně vzdálený předmět – lze kompenzovat i vliv poklesu intenzity odrazu se vzdáleností. Navíc pracovní frekvence LED, fotodiod, pixelů atd. – je většinou kolem 10–50 MHz – žádná exotická vysoká frekvence, se kterou bychom neuměli pracovat.  Navíc pokud měříme třeba 50x za sekundu – je výsledná vzdálenost průměrem až 1 000 000 bliknutí – což velmi účinně potlačuje šum. Navíc „expoziční doba“ se při 50 MHz pohybuje ve stovkách nanosekund, takže je naděje, že by Z-kamery mohly fungovat i na sluníčku.

A cena ? – krom „druhého kondenzátoru“ ve struktuře každého pixelu a krom blikání LEDkou na 50 MHz (což umím udělat i já) se Z-kamera prakticky neliší od webové kamery z Lídlu za 99,50 Kč. Navíc celý proces je čistě hardwarová záležitost bez nutnosti vůbec používat výpočetní kapacitu připojeného PC. Lze si přát více?

Zbývá jenom drobná otázka – kde se dá taková kamera koupit? Vzhledem k tomu, že Microsoft koupil už 2 firmy, které se Z-kamerami zabývají, doporučoval bych pro bohaté počkat až se objeví Kinect 2.0 na trhu před Vánocemi a pro vidláky až bude Čínská kopie Kinectu 2.0 k dostání na Vietnamské tržnici za 199,50…