Reference · Vývoj · Firmware · Cloud

PhotoRobot: od firmwaru robotů po fotografické studio a správu zařízení

PhotoRobot
VývojFirmwareCloud

Od pohybu robota k hotovým produktovým snímkům

PhotoRobot vyvíjí robotické systémy pro produktové fotografování: otočné stoly, robotická ramena a další zařízení pro pořizování 2D fotografií, 360° prezentací a podkladů pro 3D. Ve fotografickém studiu ale samotný pohyb robota nestačí. Obsluha potřebuje sladit zařízení s fotoaparátem, zpracovat pořízené snímky a opakovat stejný postup u dalších produktů. Výrobce zároveň potřebuje mít přehled o dodaných robotech a jejich konfiguraci.

Pro PhotoRobot vyvíjíme software ve třech navazujících oblastech: firmware řídicích jednotek, aplikaci Controls pro fotografy a Access Server pro správu zařízení. Spolupráce tak pokrývá jak software uvnitř robota, tak každodenní práci ve studiu a provozní zázemí výrobce.

Jak do sebe řešení zapadá

Controls je pracovní prostředí fotografa. Firmware v řídicí jednotce zajišťuje softwarovou vrstvu pro ovládání robota. Access Server doplňuje celý systém o centrální evidenci, parametry a aktivace zařízení.

Architektura PhotoRobot: Controls propojené přes LAN s řídicí jednotkou BeagleBone a přes USB s fotoaparátem; firmware v real-time Linuxu a C++ komunikuje přes CANbus s PIC kontroléry. Access Server v .NET s Azure SQL spravuje zařízení.

Řídicí část od Controls přes BeagleBone a PIC kontroléry k robotu. Přerušované šipky představují logické vazby Access Serveru pro parametry, aktivace a telemetrii; nepopisují konkrétní síťové rozhraní.

Firmware: software uvnitř řídicí jednotky

Řídicí jednotka propojuje požadavky na ovládání s elektronikou robota. Pro tento účel vyvíjíme firmware postavený na BeagleBone, přizpůsobeném real-time Linuxu a aplikaci PhotoRobot v C++. Součástí řídicího řešení jsou také PIC mikrokontroléry a komunikace po CANbus.

Nejde tedy jen o jednu aplikaci nahranou do zařízení. Pracujeme s celkem, ve kterém musí odpovídat operační prostředí, řídicí logika i komunikace s kontroléry. Real-time Linux tvoří prostředí pro běh řídicí aplikace; C++ implementuje její logiku a CANbus propojuje části řídicí elektroniky s PIC kontroléry.

Praktickým use casem je ovládání robotického pracoviště při fotografování produktu. Příkaz ze softwaru musí mít odpovídající odezvu v zařízení, aby pohyb robota zapadal do fotografické sekvence. Vývoj proto vyžaduje znalost aplikace i chování hardwaru, na kterém běží.

Controls: od nastavení pracoviště po úpravu snímků

V aplikaci PhotoRobot Controls se podílíme na vývoji softwaru, se kterým pracuje fotograf: ovládá roboty, pracuje s fotoaparátem a upravuje snímky. Z pohledu uživatele se jednotlivé technické části skládají do jednoho fotografického postupu.

Typická práce začíná výběrem pracoviště a jeho vybavení. Fotograf nastaví fotografickou sekvenci, pořídí snímky a naváže jejich zpracováním. Controls umožňuje ovládat roboty, fotoaparáty a světla z jednoho rozhraní, používat živý náhled a ukládat opakovaná nastavení jako presety. Mezi nástroje pro úpravu patří například ořez, centrování nebo odstranění pozadí. Přehled funkcí PhotoRobot Controls.

PhotoRobot Controls: série snímků oranžové kopačky pro 360° prezentaci, náhled produktu a panel ovládání robotů, fotoaparátu a světel.

Controls při práci na 360° prezentaci produktu: vlevo jednotlivé úhly snímání, uprostřed náhled a vpravo ovládání robota, fotoaparátu a světel. Ukázka používá virtuální pracoviště. Zdroj: PhotoRobot.

Úpravy celé série v jednom prostředí

Po snímání fotograf přejde do režimu Edit. Ořezem nastaví poměr stran a prostor kolem produktu, centrováním sjednotí jeho polohu a úpravou pozadí připraví výsledný vzhled. U 360° prezentace je důležité zpracovat celou sadu konzistentně, aby produkt při otáčení neposkakoval mezi různými polohami v záběru.

Režim Edit v PhotoRobot Controls: série fotografií tenisky a nabídka operací Crop, Center, Background a dalších obrazových úprav.

Režim Edit s nabídkou úprav a sérií snímků produktu z různých úhlů. Zdroj: PhotoRobot – Getting Started.

Například při fotografování série podobných produktů obsluha znovu použije připravené nastavení snímání a následných úprav. Nemusí tak u každého předmětu začínat nastavením jednotlivých kroků od nuly. Právě návaznost ovládání techniky a práce se snímky je důvodem, proč zde vyvíjíme fotografickou aplikaci společně s firmwarem.

Access Server: přehled o robotech a jejich provozu

PhotoRobot Access Server je webová aplikace pro správu zařízení, postavená na .NET a Azure SQL. Slouží jako provozní zázemí pro evidenci robotů a řídicích jednotek, distribuci parametrů, telemetrii a správu klíčů včetně aktivačních.

Zatímco fotograf řeší konkrétní produkt ve studiu, výrobce potřebuje pracovat s celou základnou zařízení. Access Server soustřeďuje informace potřebné k jejich správě na jednom místě:

  • Evidence robotů a řídicích jednotek: identifikace zařízení a přehled o hardwarových generacích a verzích firmwaru.
  • Distribuce parametrů: správa parametrů robotů a jejich předávání příslušným zařízením.
  • Telemetrie: provozní informace jako podklad pro dohled a technickou podporu.
  • Klíče a aktivace: správa klíčů, aktivačních klíčů a stavu aktivace zařízení.

Dashboard PhotoRobot Access Serveru: mapa zařízení a výsledky hledání řídicích jednotek s generací hardwaru, verzí firmwaru a stavem aktivace.

Ukázka Access Serveru z projektu. Vedle mapy jsou dohledané řídicí jednotky s identifikátorem, generací a stavem aktivace; u jedné je vidět také verze firmwaru. Jde o zachycený stav aplikace, nikoli o aktuální počet nasazených robotů.

Při řešení konkrétního zařízení tak může tým vycházet z jeho identifikace, konfigurace a dostupných provozních údajů. Správa robotů, parametrů a aktivací je samostatnou součástí produktu, se kterou je potřeba počítat stejně jako s ovládáním samotného stroje.

Technologie a naše role

Oblast Technologie Co vyvíjíme
Řídicí jednotka BeagleBone, přizpůsobený real-time Linux, C++ Firmware a řídicí aplikaci PhotoRobot
Řídicí elektronika PIC mikrokontroléry, CANbus Firmware kontrolérů a komunikaci v řídicím systému
Fotografické pracoviště PhotoRobot Controls, integrace robotů a fotoaparátů Ovládání zařízení, pořizování a úpravu snímků
Správa zařízení .NET, Azure SQL Access Server: evidence, parametry, telemetrie, klíče a aktivace

Co spolupráce přináší

PhotoRobot má vývojového partnera, který rozumí souvislostem mezi řídicí elektronikou, fotografickou aplikací a centrální správou zařízení. Můžeme tak řešit změny v kontextu celého produktu: od chování robota přes práci fotografa až po údaje, se kterými pracuje provozní tým.

Výsledkem spolupráce je průběžně rozvíjený software pro tři různé potřeby: ovládat robota, zpracovat produktové fotografie a spravovat nasazená zařízení.

„Cloudfield je pro nás naprosto zásadní partner, který nám poskytl nejen komplexní řešení pro naše robotické systémy, ale také nám pomohl s vývojem jednotlivých komponent našich řešení - software, firmware a cloudové infrastruktury. Díky nim jsme schopni nabízet inovativní a efektivní fotografické služby.“

— Kamil Hrbáček, CEO, PhotoRobot

Řešíte něco podobného? Pojďme to probrat.

Pojďme to probrat
Kontaktujte nás

Kde vám IT může ušetřit nejvíc?

Napište nám, co vás stojí nejvíc času, peněz nebo provozních starostí. Společně vybereme první krok a způsob, jak ověřit jeho přínos.

info@cloudfield.cz

Odesláním souhlasíte se zpracováním údajů pro účely odpovědi na vaši zprávu. Formulář za nás doručuje služba Forminit (forminit.com). Zásady ochrany osobních údajů