<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ep-patent-document SYSTEM "OpenDataPatent_cz.dtd">
<ep-patent-document lang="en" file="OpendataIPOCZ_PT_DIFF_PV2023-384.xml" country="CZ" doc-number="2023-384" kind="A3">
  <bibliographic-data country="CZ">
    <publication-reference>
      <document-id>
        <country>CZ</country>
        <doc-number>2023-384</doc-number>
        <kind>A3</kind>
        <date>2025-04-23</date>
      </document-id>
    </publication-reference>
    <classifications-ipcr>
      <classification-ipcr sequence="1">
        <section>B</section>
        <class>05</class>
        <subclass>B</subclass>
        <main-group>3</main-group>
        <subgroup>02</subgroup>
        <ipc-version-indicator>
          <date>20060101</date>
        </ipc-version-indicator>
        <classification-level>A</classification-level>
        <symbol-position>F</symbol-position>
        <classification-value>I</classification-value>
        <action-date>
          <date>20240404</date>
        </action-date>
        <classification-status>B</classification-status>
        <classification-data-source>H</classification-data-source>
        <generating-office>
          <country>CZ</country>
        </generating-office>
      </classification-ipcr>
      <classification-ipcr sequence="2">
        <section>G</section>
        <class>05</class>
        <subclass>B</subclass>
        <main-group>19</main-group>
        <subgroup>408</subgroup>
        <ipc-version-indicator>
          <date>20060101</date>
        </ipc-version-indicator>
        <classification-level>A</classification-level>
        <symbol-position>L</symbol-position>
        <classification-value>I</classification-value>
        <action-date>
          <date>20240404</date>
        </action-date>
        <classification-status>B</classification-status>
        <classification-data-source>H</classification-data-source>
        <generating-office>
          <country>CZ</country>
        </generating-office>
      </classification-ipcr>
      <classification-ipcr sequence="3">
        <section>G</section>
        <class>05</class>
        <subclass>B</subclass>
        <main-group>19</main-group>
        <subgroup>409</subgroup>
        <ipc-version-indicator>
          <date>20060101</date>
        </ipc-version-indicator>
        <classification-level>A</classification-level>
        <symbol-position>L</symbol-position>
        <classification-value>I</classification-value>
        <action-date>
          <date>20240404</date>
        </action-date>
        <classification-status>B</classification-status>
        <classification-data-source>H</classification-data-source>
        <generating-office>
          <country>CZ</country>
        </generating-office>
      </classification-ipcr>
      <classification-ipcr sequence="4">
        <section>G</section>
        <class>05</class>
        <subclass>B</subclass>
        <main-group>19</main-group>
        <subgroup>414</subgroup>
        <ipc-version-indicator>
          <date>20060101</date>
        </ipc-version-indicator>
        <classification-level>A</classification-level>
        <symbol-position>L</symbol-position>
        <classification-value>I</classification-value>
        <action-date>
          <date>20240404</date>
        </action-date>
        <classification-status>B</classification-status>
        <classification-data-source>H</classification-data-source>
        <generating-office>
          <country>CZ</country>
        </generating-office>
      </classification-ipcr>
      <classification-ipcr sequence="5">
        <section>G</section>
        <class>05</class>
        <subclass>B</subclass>
        <main-group>19</main-group>
        <subgroup>418</subgroup>
        <ipc-version-indicator>
          <date>20060101</date>
        </ipc-version-indicator>
        <classification-level>A</classification-level>
        <symbol-position>L</symbol-position>
        <classification-value>I</classification-value>
        <action-date>
          <date>20240404</date>
        </action-date>
        <classification-status>B</classification-status>
        <classification-data-source>H</classification-data-source>
        <generating-office>
          <country>CZ</country>
        </generating-office>
      </classification-ipcr>
    </classifications-ipcr>
    <classifications-cpc>
      <classification-cpc sequence="1">
        <cpc-version-indicator>
          <date>20230101</date>
        </cpc-version-indicator>
        <section>B</section>
        <class>05</class>
        <subclass>B</subclass>
        <main-group>3</main-group>
        <subgroup>02</subgroup>
        <symbol-position>F</symbol-position>
        <classification-value>I</classification-value>
        <action-date>
          <date>20240404</date>
        </action-date>
        <generating-office>
          <country>CZ</country>
        </generating-office>
        <classification-status>B</classification-status>
        <classification-data-source>H</classification-data-source>
      </classification-cpc>
      <classification-cpc sequence="2">
        <cpc-version-indicator>
          <date>20130101</date>
        </cpc-version-indicator>
        <section>G</section>
        <class>05</class>
        <subclass>B</subclass>
        <main-group>19</main-group>
        <subgroup>4086</subgroup>
        <symbol-position>L</symbol-position>
        <classification-value>I</classification-value>
        <action-date>
          <date>20240404</date>
        </action-date>
        <generating-office>
          <country>CZ</country>
        </generating-office>
        <classification-status>B</classification-status>
        <classification-data-source>H</classification-data-source>
      </classification-cpc>
      <classification-cpc sequence="3">
        <cpc-version-indicator>
          <date>20240101</date>
        </cpc-version-indicator>
        <section>G</section>
        <class>05</class>
        <subclass>B</subclass>
        <main-group>19</main-group>
        <subgroup>409</subgroup>
        <symbol-position>L</symbol-position>
        <classification-value>I</classification-value>
        <action-date>
          <date>20240404</date>
        </action-date>
        <generating-office>
          <country>CZ</country>
        </generating-office>
        <classification-status>B</classification-status>
        <classification-data-source>H</classification-data-source>
      </classification-cpc>
      <classification-cpc sequence="4">
        <cpc-version-indicator>
          <date>20130101</date>
        </cpc-version-indicator>
        <section>G</section>
        <class>05</class>
        <subclass>B</subclass>
        <main-group>19</main-group>
        <subgroup>4148</subgroup>
        <symbol-position>L</symbol-position>
        <classification-value>I</classification-value>
        <action-date>
          <date>20240404</date>
        </action-date>
        <generating-office>
          <country>CZ</country>
        </generating-office>
        <classification-status>B</classification-status>
        <classification-data-source>H</classification-data-source>
      </classification-cpc>
      <classification-cpc sequence="5">
        <cpc-version-indicator>
          <date>20130101</date>
        </cpc-version-indicator>
        <section>G</section>
        <class>05</class>
        <subclass>B</subclass>
        <main-group>19</main-group>
        <subgroup>41805</subgroup>
        <symbol-position>L</symbol-position>
        <classification-value>I</classification-value>
        <action-date>
          <date>20240404</date>
        </action-date>
        <generating-office>
          <country>CZ</country>
        </generating-office>
        <classification-status>B</classification-status>
        <classification-data-source>H</classification-data-source>
      </classification-cpc>
    </classifications-cpc>
    <application-reference>
      <document-id>
        <country>CZ</country>
        <doc-number>2023-384</doc-number>
        <date>2023-10-10</date>
      </document-id>
    </application-reference>
    <language-of-filing>cs</language-of-filing>
    <language-of-publication>cs</language-of-publication>
    <priority-claims>
      <priority-claim sequence="1" kind="national">
        <country>CZ</country>
        <date>2023-10-10</date>
      </priority-claim>
    </priority-claims>
    <invention-title lang="CS">Způsob generování instrukcí pro stacionárního robota a systém pro provádění tohoto způsobu</invention-title>
    <invention-title lang="EN">A method of generating instructions for a stationary robot and a system to perform such method</invention-title>
  </bibliographic-data>
  <abstract lang="CS">
    <p num="1">Předmětem vynálezu je způsob generování instrukcí pro stacionárního robota (5) zahrnující kroky:<br/>
- provedení pracovní operace pro povrchovou úpravu dílu (7) pomocí ručního pracovního nástroje (6) s upevněnou senzorickou jednotkou (1),<br/>
- sledování polohy a orientace ručního pracovního nástroje (6) senzorickou jednotkou (1) během kroku provedení pracovní operace,<br/>
- sledování pracovního stavu ručního pracovního nástroje (6) senzorem (10) pracovního stavu během kroku provedení pracovní operace,<br/>
- poskytnutí kalibračních dat modulu (3) pro zpracování dat, přičemž kalibrační data poskytnutá modulu (3) pro zpracování dat zahrnují informace o vzájemném prostorovém vztahu mezi referenčními souřadnými systémy senzorické jednotky (1), ručního pracovního nástroje (6), stacionárního robota (5) a dílu (7), a<br/>
- zpracování dat modulem (3) pro zpracování dat, přičemž krok zpracování dat zahrnuje krok vygenerování instrukcí pro stacionárního robota (5) v programovacím jazyce alespoň jednoho výrobce stacionárních robotů (5).<br/>
Předmětem vynálezu je také systém pro provádění tohoto způsobu.</p>
  </abstract>
  <description id="desc" lang="cs">
    <p num="1">Způsob generování instrukcí pro stacionárního robota a systém pro provádění tohoto způsobu </p>
    <p num="2"> </p>
    <p num="3"> </p>
    <p num="4">
      <u>Oblast techniky</u>
    </p>
    <p num="5"> </p>
    <p num="6">Předkládaný vynález se týká způsobu a systému pro generování instrukcí pro stacionárního robota na základě demonstrace pracovní operace pro povrchovou úpravu dílu. Konkrétněji se vynález týká generování instrukcí např. pro lakovacího robota. </p>
    <p num="7"> </p>
    <p num="8"> </p>
    <p num="9">
      <u>Dosavadní stav techniky</u>
    </p>
    <p num="10"> </p>
    <p num="11">V současné době existují řešení pro automatizování pracovní operace, např. průmyslového lakování, pomocí průmyslových robotů. Pro automatizaci jsou používány například různé demonstrátory, kterými uživatel předvede pohyb prováděný pro příslušnou operaci a na základě zaznamenání tohoto předvedeného pohybu je robot naprogramován tak, aby tento pohyb kopíroval při následné automatizované operaci. Tento demonstrátor však typicky není skutečným pracovním nástrojem a neumožňuje tak zachytit všechny podstatné charakteristiky pracovní operace. Dostupná řešení také často nedokáží vygenerovat robotické instrukce pro různé průmyslového roboty, respektive pro průmyslové roboty od různých výrobců, neboť různí výrobci používají různé programovací jazyky pro programování robotů. Taková řešení jsou pak použitelná pouze pro jednoho daného robota, ale již ne pro roboty dalších výrobců, což je nevýhodné. </p>
    <p num="12"> </p>
    <p num="13">Bylo by proto žádoucí přijít s řešením, které by umožňovalo zaznamenat skutečné provedení pracovní operace tak, aby byly zachyceny všechny podstatné charakteristiky této pracovní operace, a které by umožňovalo vygenerovat robotický program spustitelný konkrétním průmyslovým robotem. Vygenerovaný program by měl zahrnovat nejen pohybové instrukce, tj. informace o tom, po jaké trajektorii se má robotický pracovní nástroj pohybovat, ale také další instrukce pro ovládání robotického pracovního nástroje, např. kdy má robotický pracovní nástroj provádět pracovní operaci a kdy ne, tj. např. kdy má být spuštěna lakovací pistole robota. Požadované řešení by rovněž mělo umožňovat, aby byla předváděná pracovní operace zaznamenána dostatečně přesně a spolehlivě tak, aby zautomatizovaná pracovní operace kvalitativně odpovídala ručně provedené pracovní operaci. Zároveň by zaznamenávání předváděné pracovní operace nemělo ovlivňovat průběh této pracovní operace či nijak omezovat uživatele, který tuto pracovní operaci provádí. </p>
    <p num="14"> </p>
    <p num="15"> </p>
    <p num="16">
      <u>Podstata vynálezu</u>
    </p>
    <p num="17"> </p>
    <p num="18">Výše uvedené nedostatky do jisté míry odstraňuje způsob generování instrukcí pro stacionárního robota na základě demonstrace pracovní operace pro povrchovou úpravu dílu, jehož podstata spočívá v tom, že zahrnuje kroky: </p>
    <p num="19"> </p>
    <p num="20">  -  provedení pracovní operace pro povrchovou úpravu dílu pomocí ručního pracovního nástroje s upevněnou senzorickou jednotkou, </p>
    <p num="21"> </p>
    <p num="22">  -  sledování polohy a orientace ručního pracovního nástroje senzorickou jednotkou během kroku provedení pracovní operace pro povrchovou úpravu dílu, přičemž krok sledování polohy a orientace ručního pracovního nástroje zahrnuje krok zaznamenávání zrychlení a úhlové rychlosti v čase inerciálním senzorem a krok zaznamenávání vizuálních snímků okolního prostředí v různých časových bodech alespoň jednou kamerou, </p>
    <p num="23"> </p>
    <p num="24">  -  sledování pracovního stavu ručního pracovního nástroje senzorem pracovního stavu během kroku provedení pracovní operace pro povrchovou úpravu dílu, přičemž senzor pracovního stavu poskytuje informaci o tom, zda je ruční pracovní nástroj spuštěný, </p>
    <p num="25"> </p>
    <p num="26">  -  poskytnutí kalibračních dat modulu pro zpracování dat, přičemž kalibrační data poskytnutá modulu pro zpracování dat zahrnují informace o vzájemném prostorovém vztahu mezi referenčními souřadnými systémy senzorické jednotky, ručního pracovního nástroje, stacionárního robota a dílu, a </p>
    <p num="27"> </p>
    <p num="28">  -  zpracování dat z inerciálního senzoru, alespoň jedné kamery a senzoru pracovního stavu a také kalibračních dat modulem pro zpracování dat, přičemž krok zpracování dat zahrnuje krok vygenerování instrukcí pro stacionárního robota v programovacím jazyce alespoň jednoho výrobce stacionárních robotů. </p>
    <p num="29"> </p>
    <p num="30">Výše uvedený způsob umožňuje vygenerovat spustitelný robotický program (instrukce) pro stacionárního robota různých výrobců tak, že tento program obsahuje všechny podstatné charakteristiky pracovní operace pro povrchovou úpravu dílu. Pracovní operace je sledována s vysokou přesností a spolehlivostí, přičemž zaznamenávání pracovní operace pomocí senzorické jednotky upevněné k ručnímu pracovnímu nástroji nijak neovlivňuje průběh takto prováděné pracovní operace ani nijak neomezuje osobu, která s ručním pracovním nástrojem manipuluje. Pracovní operací pro povrchovou úpravu dílu může být například průmyslové lakování (mokré či práškové), ale také broušení, leštění, srážení hran, tryskání apod. Pracovní operací pro povrchovou úpravu dílu může být také kontrola kvality prováděná v souvislosti s povrchovou úpravou, tj. například kontrola kvality nalakovaného dílu. </p>
    <p num="31"> </p>
    <p num="32">Termín stacionární robot je v této oblasti techniky zažitý a označuje robota, který se nemůže vlastními prostředky přemisťovat z místa na místo. Stacionárním robotem může být především průmyslový robot, např. lakovací robot, nebo kolaborativní robot. Alternativně může být stacionární robot připevněný na externí mechanismus přidávající další stupeň volnosti, například na kolejnicový dopravník. Vygenerované instrukce pak mohou obsahovat také instrukce pro řízení tohoto přídavného mechanismu. Vygenerované instrukce mohou být také použity nejen pro skutečného stacionárního robota, ale také pro virtuálního stacionárního robota, tj. pro jeho tzv. digitální dvojče. To je možné využít pro účely simulací. </p>
    <p num="33"> </p>
    <p num="34">Ručním pracovním nástrojem je skutečný pracovní nástroj, který umožňuje provádění požadované pracovní operace pro povrchovou úpravu dílu. Tedy například v případě, že je pracovní operací pro povrchovou úpravu dílu průmyslové lakování, je tímto ručním pracovním nástrojem ruční lakovací pistole. </p>
    <p num="35"> </p>
    <p num="36">Sledování polohy a orientace (tj. natočení) ručního pracovního nástroje senzorickou jednotkou je realizováno kombinovaným využitím inerciálního senzoru a alespoň jedné kamery, přičemž pro zvýšení přesnosti lze použit také více kamer. Kameru společně s inerciálním senzorem lze souhrnně označit jako tzv. trackovací kameru, přičemž je na místě zmínit, že jejím výstupem jsou data se šesti stupni volnosti, konkrétně poloha trackovací kamery v čase ve třech prostorových osách a orientace trackovací kamery v čase ve třech prostorových osách. Tj. data polohy a orientace v jejím referenčním souřadném systému. Vzhledem k tomu, že je senzorická jednotka upevněná k ručnímu pracovnímu nástroji a vzhledem k tomu, že jsou tato zaznamenaná data poté přetransformována pomocí kalibračních dat, lze říci, že senzorickou jednotkou je sledována poloha a orientace ručního pracovního nástroje, jak je uvedeno výše. Pro výpočet polohy a orientace z dat zaznamenaných senzory (ze zrychlení ve třech prostorových osách v čase a úhlové rychlosti ve třech prostorových osách v čase) může trackovací kamera zahrnovat vlastní výpočetní jednotku. </p>
    <p num="37"> </p>
    <p num="38">Výpočetní jednotka trackovací kamery výhodně zahrnuje detekční modul pro detekování vizuálních prvků ve snímcích kamery. Těmito vizuálními prvky jsou například různé vizuálně význačné body okolního prostředí, např. rohy či hrany viditelné na snímcích. Detekce vizuálních prvků je výhodná především z toho důvodu, že dojde k řádovému snížení bodů, které je potřeba vzít v úvahu, typicky z tisíců pixelů (v závislosti na rozlišení kamery) na pár stovek vizuálních prvků. Každý vizuální prvek je označen, prostorově zmapován a uspořádán do vektoru vizuálních prvků. Po pořízení nového snímku detekční modul porovná nově označené prvky uspořádané v nově sestrojeném vektoru vizuálních prvků a na základě tohoto porovnání vypočítá změnu polohy. </p>
    <p num="39"> </p>
    <p num="40">Alternativně může být poloha a orientace ze zaznamenaných dat počítána jinde než v trackovací kameře, např. pomocí mikropočítače v řídicí jednotce či pomocí modulu pro zpracování dat, který může být součástí vzdáleného serveru. </p>
    <p num="41"> </p>
    <p num="42">Alternativně mohou být výstupem trackovací kamery pouze zrychlení v čase, úhlová rychlost v čase a vizuální snímky, přičemž samotný výpočet polohy a orientace může být proveden až následně, např. pomocí mikropočítače v řídicí jednotce či pomocí modulu pro zpracování dat. </p>
    <p num="43"> </p>
    <p num="44">Kromě tříosého akcelerometru pro zaznamenávání zrychlení a tříosého gyroskopu pro zaznamenávání úhlové rychlosti může senzorická jednotka výhodně zahrnovat také magnetometr, díky kterému je možné zpřesnit výpočet polohy a orientace. </p>
    <p num="45"> </p>
    <p num="46">Krok sledování polohy a orientace ručního pracovního nástroje je prováděn souběžně s krokem sledování pracovního stavu ručního pracovního nástroje, který je prováděn pomocí senzoru pracovního stavu. Senzor pracovního stavu poskytuje informaci o tom, zda je ruční pracovní nástroj spuštěný. Senzor pracovního stavu tak může například poskytovat signál, jehož analýzou lze získat požadovaný pracovní stav ručního pracovního nástroje. Touto analýzou může být porovnávání hodnot naměřeného signálu s předem stanovenými prahovými hodnotami. Analýza tohoto signálu pro získání pracovního stavu může být provedena například modulem pro zpracování dat. Alternativně může být tato analýza provedena např. mikropočítačem v řídicí jednotce či vlastní výpočetní jednotkou senzoru pracovního stavu, případně pomocí jiné výpočetní jednotky. Kromě určení pracovního stavu mohou být ze signálu senzoru pracovního stavu zjišťovány také jiné informace, např. o tom, jaká konkrétní činnost dané pracovní operace byla v určitém čase prováděna apod. </p>
    <p num="47"> </p>
    <p num="48">Po skončení kroku provedení pracovní operace jsou zaznamenaná data z inerciálního senzoru, kamery a senzoru pracovního stavu zaslána do modulu pro zpracování dat. Alternativně mohou být zaznamenaná data zasílána do modulu pro zpracování dat také průběžně. Do modulu pro zpracování dat jsou zaslána také kalibrační data, které je potřeba tomuto modulu poskytnout. </p>
    <p num="49"> </p>
    <p num="50">Poskytnutá kalibrační data výhodně zahrnují alespoň informaci o vzájemném prostorovém vztahu mezi referenčním souřadným systémem G ručního pracovního nástroje a referenčním souřadným systémem C senzorické jednotky, informaci o vzájemném prostorovém vztahu mezi referenčním souřadným systémem C senzorické jednotky a referenčním souřadným systémem P dílu a informaci o vzájemném prostorovém vztahu mezi referenčním souřadným systémem R stacionárního robota a referenčním souřadným systémem P dílu. Informace o vzájemném prostorovém vztahu (jinými slovy transformační vztahy) mezi příslušnými referenčními souřadnými systémy slouží pro transformaci mezi těmito souřadnými systémy a mohou být výhodně zapsány ve formě transformačních matic. Poskytnutá kalibrační data tedy výhodně zahrnují alespoň transformační matice <i>T</i>GC, <i>T</i>CP a <i>T</i>RP. Alternativně však mohou být tyto informace zapsány také v jiné matematické formě. </p>
    <p num="51"> </p>
    <p num="52">Pro získání kalibračních dat, která jsou poskytována modulu pro zpracování dat, zahrnuje způsob výhodně krok provedení kalibračního měření. Výhodně jsou tedy kalibrační data měřena, avšak obecně mohou být zjištěna jiným způsobem a poskytnuta modulu pro zpracování dat. Kalibrační měření lze provádět v různé fázi způsobu, přičemž alespoň část kalibrace je provedena na začátku, během, nebo na konci kroku sledování polohy a orientace, kdy je zaznamenávání dat o poloze a orientaci stále ještě aktivní a nedošlo k zrestartování zaznamenávání dat. </p>
    <p num="53"> </p>
    <p num="54">Pro krok provedení kalibračního měření jsou výhodně využity unikátní vizuální značky, přičemž informace o vzájemném prostorovém vztahu mezi referenčními souřadnými systémy G a C, informace o vzájemném prostorovém vztahu mezi referenčními souřadnými systémy C a P, informace o vzájemném prostorovém vztahu mezi referenčními souřadnými systémy R a P, a navíc také informace o vzájemném prostorovém vztahu mezi referenčními souřadnými systémy C a R, jsou získány na základě detekování vizuálních značek alespoň jednou kamerou a na základě určení relativní orientace senzorické jednotky vůči vizuálním značkám. Unikátnost vizuálních značek spočívá v tom, že každá vizuální značka obsahuje svůj identifikátor pro odlišení od ostatních vizuálních značek. Když tedy kamera detekuje vizuální značku, dokáže identifikovat, o jakou vizuální značku jde a spojit si tuto informaci s informací o její poloze. Touto vizuální značkou může být např. QR kód. </p>
    <p num="55"> </p>
    <p num="56">Výhodně krok kalibračního měření zahrnuje čtyři části kalibrace, které kromě vizuálních značek využívají také kalibračních přípravků. Konkrétně je pro kalibrační měření poskytnut alespoň jeden první kalibrační přípravek s alespoň jedním kalibračním otvorem a sadou unikátních prvních vizuálních značek a také druhý kalibrační přípravek zahrnující unikátní druhou vizuální značku, přičemž vzájemná poloha druhého kalibračního přípravku a dílu je pevná. Druhý kalibrační přípravek se může nacházet na např. na rámu, na němž je díl zavěšen. Vzájemné polohy prvních vizuálních značek vůči každému kalibračnímu otvoru jsou známé. </p>
    <p num="57"> </p>
    <p num="58">Alespoň jeden kalibrační otvor je tvarově uzpůsobený pro přijetí ručního pracovního nástroje pouze v jedné konkrétní poloze a orientaci a alespoň jeden kalibrační otvor je tvarově uzpůsobený pro přijetí robotického pracovního nástroje pouze v jedné konkrétní poloze a orientaci. Jinými slovy, kalibrační otvor spolu s ručním pracovním nástrojem, respektive s robotickým pracovním nástrojem fungují na principu zámku a klíče. První kalibrační přípravek může zahrnovat více kalibračních otvorů, např. dva kalibrační otvory, z nichž jeden je tvarově uzpůsobený pro přijetí ručního pracovního nástroje a druhý je tvarově uzpůsobený pro přijetí robotického pracovního nástroje. Alternativně však může první kalibrační prvek zahrnovat pouze jeden kalibrační otvor a ten je uzpůsoben pro postupné přijetí ručního i robotické nástroje. Alternativně mohou být poskytnuty dva první kalibrační přípravky, přičemž jeden z nich je uzpůsobený pro přijetí ručního pracovního nástroje a druhý pro přijetí robotického pracovního nástroje. </p>
    <p num="59"> </p>
    <p num="60">Krok provedení kalibračního měření s využitím vizuálních značek zahrnuje následující čtyři části, přičemž první část zahrnuje kroky: </p>
    <p num="61"> </p>
    <p num="62">  -  vložení ručního pracovního nástroje s upevněnou senzorickou jednotkou do kalibračního otvoru prvního kalibračního přípravku, </p>
    <p num="63"> </p>
    <p num="64">  -  zaznamenání informace o poloze a orientaci pomocí senzorické jednotky, </p>
    <p num="65"> </p>
    <p num="66">  -  detekování jednotlivých prvních vizuálních značek pomocí kamery, </p>
    <p num="67"> </p>
    <p num="68">  -  určení relativní polohy a orientace senzorické jednotky vůči jednotlivým prvním vizuálním značkám. </p>
    <p num="69"> </p>
    <p num="70">  -  získání informace o prostorovém vztahu mezi referenčním souřadným systémem G ručního pracovního nástroje a referenčním souřadným systémem C senzorické jednotky. </p>
    <p num="71"> </p>
    <p num="72">Druhá část kalibrace zahrnuje kroky: </p>
    <p num="73"> </p>
    <p num="74">  -  navedení robotického pracovního nástroje s upevněnou senzorickou jednotkou do kalibračního otvoru prvního kalibračního přípravku, </p>
    <p num="75"> </p>
    <p num="76">  -  zaznamenání informace o poloze a orientaci pomocí senzorické jednotky, </p>
    <p num="77"> </p>
    <p num="78">  -  detekování jednotlivých prvních vizuálních značek pomocí kamery, </p>
    <p num="79"> </p>
    <p num="80">  -  určení relativní polohy a orientace senzorické jednotky vůči jednotlivým prvním vizuálním značkám a </p>
    <p num="81"> </p>
    <p num="82">  -  získání informace o prostorovém vztahu mezi referenčním souřadným systémem C senzorické jednotky a referenčním souřadným systémem R stacionárního robota. </p>
    <p num="83"> </p>
    <p num="84">Třetí část kalibrace zahrnuje kroky: </p>
    <p num="85"> </p>
    <p num="86">  -  přiblížení ručního pracovního nástroje s upevněnou senzorickou jednotkou ke druhému kalibračnímu přípravku s druhou vizuální značkou, </p>
    <p num="87"> </p>
    <p num="88">  -  zaznamenání informace o poloze a orientaci pomocí senzorické jednotky, </p>
    <p num="89"> </p>
    <p num="90">  -  detekování druhé vizuální značky pomocí kamery, </p>
    <p num="91"> </p>
    <p num="92">  -  určení relativní polohy a orientace senzorické jednotky vůči druhé vizuální značce a </p>
    <p num="93"> </p>
    <p num="94">  -  získání informace o prostorovém vztahu mezi referenčním souřadným systémem C senzorické jednotky a referenčním souřadným systémem P dílu s využitím informace o prostorovém vztahu mezi referenčním souřadným systémem G ručního pracovního nástroje a referenčním souřadným systémem C senzorické jednotky. </p>
    <p num="95"> </p>
    <p num="96">Čtvrtá část kalibrace zahrnuje kroky: </p>
    <p num="97"> </p>
    <p num="98">  -  přiblížení robotického pracovního nástroje s upevněnou senzorickou jednotkou ke druhému kalibračnímu přípravku s druhou vizuální značkou, </p>
    <p num="99"> </p>
    <p num="100">  -  zaznamenání informace o poloze a orientaci pomocí senzorické jednotky, </p>
    <p num="101"> </p>
    <p num="102">  -  detekování druhé vizuální značky pomocí kamery, </p>
    <p num="103"> </p>
    <p num="104">  -  určení relativní polohy a orientace senzorické jednotky vůči druhé vizuální značce a </p>
    <p num="105"> </p>
    <p num="106">  -  získání informace o prostorovém vztahu mezi referenčním souřadným systémem R stacionárního robota a referenčním souřadným systémem P dílu s využitím informace o prostorovém vztahu mezi referenčním souřadným systémem C senzorické jednotky a referenčním souřadným systémem R stacionárního robota. </p>
    <p num="107"> </p>
    <p num="108">První a třetí část kalibrace (tj. kalibrace pomocí ručního pracovního nástroje) jsou provedeny před, během, nebo na konci kroku sledování polohy a orientace, kdy je zaznamenávání dat o poloze a orientaci stále ještě aktivní a nedošlo k zrestartování zaznamenávání dat. Druhá a čtvrtá část kalibrace (tj. kalibrace pomocí robotického pracovního nástroje) mohou být provedeny kdykoliv. Pořadí jednotlivých částí kalibrace nemusí být pevně dané a např. poslední kroky dílčích částí kalibrace (získání informací o prostorovém vztahu, tj. konkrétně např. sestavení příslušných transformačních matic) mohou být provedeny až později. Stejně tak kroky určení relativní polohy a orientace senzorické jednotky vůči vizuálním značkám mohou být rovněž provedeny (spočítány) až následně a fyzická manipulace potřebná pro danou část kalibrace končí detekováním příslušné vizuální značky a zaznamenáním informace o poloze a natočení pomocí senzorické jednotky. </p>
    <p num="109"> </p>
    <p num="110">Pro druhou a čtvrtou část kalibrace může být použita další senzorická jednotka. Alternativně může být pro celou kalibraci použita jedna senzorická jednotka a může být pro provedení jednotlivých částí kalibrace přendávána mezi ručním pracovním nástrojem a robotickým pracovním nástrojem. Pro zaznamenání informace o poloze a orientaci pomocí senzorické jednotky může dát uživatel signál řídicí jednotce pomocí uživatelského rozhraní senzorické jednotky, alternativně pomocí uživatelského rozhraní řídicí jednotky. </p>
    <p num="111"> </p>
    <p num="112">Alternativně může být kalibrační měření provedeno na čistě mechanickém principu, avšak proces kalibrace pomocí vizuálních značek je snazší, rychlejší, a díky bezdotykové (optické) detekci vizuálních značek také přesnější, neboť nehrozí posunutí dílu z klidové polohy při zatlačení ručním pracovním nástrojem nebo robotickým pracovním nástrojem do kalibračního přípravku, který je připevněný např. na rámu, na kterém je díl zavěšený. Zároveň je eliminováno riziko špatného vložení pracovního nástroje do kalibračního otvoru způsobeného lidskou chybou. </p>
    <p num="113"> </p>
    <p num="114">Tento alternativní způsob kalibrace je uvedený níže, přičemž tato mechanická kalibrace zahrnuje pouze tři části, neboť není nutné provádět část analogickou druhé části výše popisované optické kalibrace. </p>
    <p num="115"> </p>
    <p num="116">První část mechanické kalibrace: </p>
    <p num="117"> </p>
    <p num="118">Kalibrace senzorické jednotky vůči ručnímu pracovnímu nástroji se realizuje pomocí kalibračního přípravku ve tvaru krychle s definovanými otvory umístěnými na jednotlivých stěnách krychle, které principem mechanického zámku a klíče umožňují, aby do nich uživatel vložil špičku ručního pracovního nástroje právě jedním definovaným způsobem, tj. s konkrétní polohou a orientací. Vzájemné polohy těchto otvorů jsou definované a známé. Během této části kalibrace uživatel vkládá postupně v definovaném pořadí špičku ručního pracovního nástroje s připevněnou senzorickou jednotkou do jednotlivých otvorů a v momentě, kdy je ruční pracovní nástroj správně umístěn, dá uživatel, např. pomocí uživatelského rozhraní senzorické jednotky, signál řídicí jednotce, aby uložila informaci o poloze a orientaci, kterou poskytuje senzorická jednotka. Ze známé definice geometrie tohoto kalibračního přípravku a informace o poloze a orientaci ze senzorické jednotky uložené během této části kalibrace je následně získána informace o prostorovém vztahu mezi referenčním souřadným systémem G ručního pracovního nástroje a referenčním souřadným systémem C senzorické jednotky. Konkrétně může být tedy sestavena příslušná transformační matice. </p>
    <p num="119"> </p>
    <p num="120">Druhá část mechanické kalibrace: </p>
    <p num="121"> </p>
    <p num="122">Dále uživatel provede kalibraci referenčního souřadného systému C senzorické jednotky, s referenčním souřadným systémem P dílu. Tato část kalibrace je provedena s pomocí kalibračního přípravku, který obsahuje otvor, který principem mechanického zámku a klíče umožňuje, aby do něj uživatel vložil špičku ručního pracovního nástroje právě jedním definovaným způsobem, tj. s konkrétní polohou a orientací. Vzájemná poloha tohoto kalibračního přípravku a dílu je pevná, ale nemusí být známá. Musí však zůstat neměnná po dobu zaznamenávání pracovní operace a během třetí části mechanické kalibrace (stacionární robot – díl). Uživatel provede kalibraci tak, že ruční pracovní nástroj vloží do otvoru kalibračního prvku a dá signál řídicí jednotce, aby uložila data o poloze a orientaci, která v ten moment poskytuje senzorická jednotka. Z těchto dat společně s daty získanými z kalibrace senzorické jednotky vůči ručnímu pracovnímu nástroji (první část mechanické kalibrace) je následně získána informace o prostorovém vztahu mezi referenčním souřadným systémem G ručního pracovního nástroje a referenčním souřadným systémem P dílu. Konkrétně může být tedy sestavena příslušná transformační matice. Tato část kalibrace je provedena na začátku každé demonstrace pracovní operace, pro kterou chce uživatel vygenerovat robotický program. </p>
    <p num="123"> </p>
    <p num="124">Třetí část mechanické kalibrace: </p>
    <p num="125"> </p>
    <p num="126">Kalibrace referenčního souřadného systému R stacionárního robota vůči referenčnímu souřadnému systému P dílu je provedena s pomocí kalibračního přípravku, který obsahuje otvor, který principem mechanického zámku a klíče umožňuje, aby do něj bylo možné vložit špičku robotického pracovního nástroje právě jedním definovaným způsobem, tj. s konkrétní polohou a orientací. Vzájemná poloha tohoto kalibračního přípravku a dílu je pevná, ale nemusí být známá. Musí však zůstat neměnná po dobu zaznamenávání pracovní operace a během kalibrace stacionárního robota vůči dílu. Uživatel provede kalibraci tak, že pomocí ovladače stacionárního robota navede robotický pracovní nástroj do otvoru tohoto kalibračního prvku a s pomocí ovladače robota si poznamená polohu a orientaci robotického pracovního nástroje v referenčním souřadném systému R stacionárního robota. Z těchto dat je následně sestavena transformační matice definující prostorový vztah mezi referenčním souřadným systémem R stacionárního robota a referenčním souřadným systémem P dílu, tj. je získána informace o vzájemném prostorovém vztahu referenčních souřadných systémů R a P. Tuto část kalibrace je potřeba provést pouze jednou za předpokladu, že díl, pro který jsou generovány robotické instrukce, se bude následně vždy nacházet na stejném místě vůči stacionárnímu robotu, který na něm bude provádět vygenerovaný robotický program. </p>
    <p num="127"> </p>
    <p num="128">Krok vygenerování instrukcí pro stacionárního robota je výhodně provedený generátorem instrukcí obsahujícím informace o syntaxi, sémantice, požadované struktuře a formátu instrukcí pro stacionárního robota alespoň jednoho výrobce stacionárních robotů, přičemž instrukce jsou generátorem instrukcí zapsány v požadované struktuře a formátu na základě informací o syntaxi a sémantice a obsahují klíčová slova a hodnoty argumentů, které jsou výsledkem kroku zpracování dat modulem pro zpracování dat. Těmito hodnotami argumentů jsou výsledné souřadnice polohy a orientace v referenčním souřadném systému R stacionárního robota, které jsou výsledkem kroků zpracování dat, které předcházejí kroku vygenerování instrukcí. Alternativně mohou být výsledné souřadnice polohy a orientace vyjádřeny v jiném uživatelském souřadném systému, který má ale pevnou a známou transformaci do referenčního souřadného systému R stacionárního robota. V takovém případě musí uživatel uvést tuto transformaci jako dodatečný vstup modulu pro zpracování dat, potažmo generátoru instrukcí. Případně mohou být těmito hodnotami argumentů tyto výsledné souřadnice polohy a orientace, které mohou být upravené. Např. tak, že vygenerované instrukce vedou k provedení zautomatizované operace např. rychleji, či naopak pomaleji, než bylo předvedeno ručním pracovním nástrojem při sledování polohy a orientace. </p>
    <p num="129"> </p>
    <p num="130">Krok zpracování dat modulem pro zpracování dat dále před krokem vygenerování instrukcí pro stacionárního robota výhodně zahrnuje krok filtrace dat, krok časové synchronizace dat, krok dynamického podvzorkování a krok aplikování prostorové transformace na základě poskytnutých kalibračních dat. Krok zpracování dat však alternativně musí zahrnovat všechny tyto kroky – pro správnou funkci jsou nicméně podstatné kroky časové synchronizace a aplikování prostorové transformace na základě poskytnutých kalibračních dat. Konkrétně aplikování prostorové transformace spočívá v násobení kalibračních matic pro získání výsledného transformačního vztahu. Tento výsledný transformační vztah umožňuje transformovat naměřená data do referenčního souřadného systému stacionárního robota, aby mohly být následně vygenerovány instrukce, které jsou, dle konvence programovacího jazyka stacionárního robota, očekávány vyjádřené v souřadném systému robota. </p>
    <p num="131"> </p>
    <p num="132">Časová synchronizace slouží k synchronizaci naměřených dat, tj. dat z inerciálního senzoru, kamery a senzoru pracovního stavu. Díky tomu je zaručeno, že určitý snímek z kamery odpovídá stejnému momentu, ve kterém byl zaznamenán signál senzorem pracovního stavu a inerciálním senzorem. </p>
    <p num="133"> </p>
    <p num="134">Dynamické podvzorkování umožňuje vygenerovat robotický program s dostatečně nízkým počtem robotických instrukcí na to, aby byl pro uživatele snadno čitelný, srozumitelný a editovatelný, a zároveň zachycoval všechny významné prvky zaznamenané pracovní operace tak, aby mohla být dostatečně kvalitně replikována stacionárním robotem. </p>
    <p num="135"> </p>
    <p num="136">Krok sledování pracovního stavu je výhodně provedený zvukovým senzorem zaznamenávajícím zvukový signál během kroku provedení pracovní operace pro povrchovou úpravu dílu. Zvukový signál může být analyzován např. výpočetní jednotkou pracovní stavu, ale také může být analyzován např. pomocí mikropočítače v řídicí jednotce či pomocí modulu pro zpracování dat. Z analýzy zvukového signálu lze kromě samotné informace o pracovním stavu získat např. také informace o tom, jaká dílčí činnost dané pracovní operace byla v daném čase prováděna, pokud se tyto dílčí činnosti liší zvukem, který při nich vzniká. </p>
    <p num="137"> </p>
    <p num="138">Výše uvedené nedostatky do jisté míry odstraňuje také systém pro provádění způsobu podle předkládaného vynálezu, jehož podstata spočívá v tom, že zahrnuje senzorickou jednotku a řídicí jednotku komunikačně spojenou se senzorickou jednotkou a uzpůsobenou pro ovládání senzorické jednotky, přičemž senzorická jednotka zahrnuje: </p>
    <p num="139"> </p>
    <p num="140">  -  upevňovací element pro upevnění k ručnímu pracovnímu nástroji, </p>
    <p num="141"> </p>
    <p num="142">  -  inerciální senzor pro zaznamenávání zrychlení a úhlové rychlosti v čase, </p>
    <p num="143"> </p>
    <p num="144">  -  alespoň jednu kameru pro zaznamenávání vizuálních snímků okolního prostředí v různých časových bodech a </p>
    <p num="145"> </p>
    <p num="146">  -  senzor pracovního stavu pro sledování pracovního stavu ručního pracovního nástroje, přičemž senzor pracovního stavu poskytuje informaci o tom, zda je ruční pracovní nástroj spuštěný, </p>
    <p num="147"> </p>
    <p num="148">přičemž systém dále zahrnuje modul pro zpracování dat uzpůsobený pro přijetí dat z inerciálního senzoru, alespoň jedné kamery a senzoru pracovního stavu a také kalibračních dat obsahujících informace o vzájemném prostorovém vztahu mezi referenčními souřadnými systémy senzorické jednotky, ručního pracovního nástroje, stacionárního robota a dílu, přičemž modul pro zpracování dat zahrnuje generátor instrukcí zahrnující rozhraní pro generování instrukcí pro stacionárního robota v programovacím jazyce alespoň jednoho výrobce stacionárních robotů. </p>
    <p num="149"> </p>
    <p num="150">Komunikačním spojením je zde myšleno spojení, které umožňuje přenos dat, ať už je realizováno elektricky pomocí kabelu či bezdrátově, např. pomocí technologie Wi-Fi. Řídící jednotka a senzorická jednotka mohou obsahovat každá své pouzdro, ovšem alternativně mohou být také uloženy do jednoho pouzdra a mohou tak být součástí jednoho přídavného celku, který se pomocí upevňovacího elementu upevní k ručnímu pracovnímu nástroji. Jak již bylo uvedeno také výše, lze použít více kamer pro dosažení lepší přesnosti. </p>
    <p num="151"> </p>
    <p num="152">Systém podle předkládaného vynálezu dále výhodně zahrnuje alespoň jeden první kalibrační přípravek s alespoň jedním kalibračním otvorem a sadou unikátních prvních vizuálních značek, přičemž vzájemné polohy prvních vizuálních značek vůči každému kalibračnímu otvoru jsou známé a přičemž alespoň jeden kalibrační otvor je tvarově uzpůsobený pro přijetí ručního pracovního nástroje pouze v jedné konkrétní poloze a orientaci a alespoň jeden kalibrační otvor je tvarově uzpůsobený pro přijetí robotického pracovního nástroje pouze v jedné konkrétní poloze a orientaci, přičemž systém dále zahrnuje druhý kalibrační přípravek zahrnující unikátní druhou vizuální značku, přičemž vzájemná poloha druhého kalibračního přípravku a dílu je pevná. Díky těmto kalibračním přípravkům a vizuálním značkám je možné provést výhodnou kalibraci pomocí vizuálních značek, která je snazší, přesnější a rychlejší než čistě mechanická kalibrace. </p>
    <p num="153"> </p>
    <p num="154">Senzorem pracovního stavu je výhodně zvukový senzor, což umožňuje spolehlivou a dostatečně citlivou detekci pracovního stavu ručního pracovního nástroje. Alternativně, méně výhodně, může být senzorem pracovního stavu také jiný senzor fungující na jiném principu, např. Hallův senzor, průtokoměr, který např. u procesu lakování může měřit průtok barvy přívodní hadicí, nebo ampérmetr, který může měřit protékající proud v případě práškového lakování atp. </p>
    <p num="155"> </p>
    <p num="156">Řídicí jednotka výhodně zahrnuje mikropočítač pro ovládání senzorické jednotky a paměť pro ukládání dat ze senzorické jednotky a komunikační modul pro komunikační spojení s modulem pro zpracování dat. Toto základní uspořádání umožňuje efektivní a spolehlivé řízení sběru dat a jejich poskytování modulu pro zpracování dat. </p>
    <p num="157"> </p>
    <p num="158">Systém dále výhodně zahrnuje vzdálený server komunikačně spojený s řídicí jednotkou, přičemž modul pro zpracování dat je výhodně součástí vzdáleného serveru. Alternativně nemusí být modul pro zpracování dat součástí vzdáleného serveru a může být např. součástí mikropočítače řídicí jednotky, což by znamenalo, že by tento mikropočítač prováděl příslušné kroky zpracování dat. </p>
    <p num="159"> </p>
    <p num="160">Systém dále výhodně zahrnuje uživatelské rozhraní modulu pro zpracování dat pro nakonfigurování generátoru instrukcí a také přístupové zařízení pro přístup k uživatelskému rozhraní modulu pro zpracování dat, přičemž uživatelské rozhraní modulu pro zpracování dat je komunikačně spojené s modulem pro zpracování dat. Toto uživatelské rozhraní modulu pro zpracování dat umožňuje uživateli, aby si nakonfiguroval detaily toho, jak mají být instrukce pro stacionárního robota vygenerovány, a také umožňuje vygenerované instrukce následně stáhnout. Pomocí tohoto rozhraní lze například vybrat data ke zpracování, nakonfigurovat parametry zpracování dat (např. dynamického podvzorkování apod.) či vybrat typ (výrobce) stacionárního robota. Toto uživatelské rozhraní modulu pro zpracování dat může být výhodně webové rozhraní, které je součástí vzdáleného serveru. Přístupovým zařízením může být např. počítač, mobilní telefon či jiné zařízení s přístupem na web. Alternativně nemusí být uživatelské rozhraní modulu pro zpracování dat provedeno jako webové rozhraní, ale může jím být jakékoliv jiné vhodné rozhraní, např. zařízení s příslušnými ovládacími prvky. </p>
    <p num="161"> </p>
    <p num="162"> </p>
    <p num="163">
      <u>Objasnění výkresů</u>
    </p>
    <p num="164"> </p>
    <p num="165">
      <b>Podstata vynálezu je dále objasněna na příkladech jeho uskutečnění, které jsou popsány s využitím připojených výkresů, kde</b>
      <b> na</b>
      <b>:</b>
    </p>
    <p num="166"> </p>
    <p num="167">obr. 1  je schematicky znázorněn systém podle předkládaného vynálezu ve spojení se stacionárním robotem a s důrazem na uspořádání senzorické jednotky a řídicí jednotky, </p>
    <p num="168"> </p>
    <p num="169">obr.2  je schematicky znázorněn systém podle předkládaného vynálezu ve spojení se stacionárním robotem, s naznačením kalibrace a s důrazem na uspořádání vzdáleného serveru a </p>
    <p num="170"> </p>
    <p num="171">obr. 3  je schematicky znázorněn diagram způsobu podle prvního příkladného provedení předkládaného vynálezu. </p>
    <p num="172"> </p>
    <p num="173"> </p>
    <p num="174">
      <u>Příklady uskutečnění vynálezu</u>
    </p>
    <p num="175"> </p>
    <p num="176">Vynález bude dále objasněn na příkladech uskutečnění s odkazem na příslušné výkresy. Nejprve bude podrobně popsáno příkladné provedení systému, kterým je možné provádět způsob generování instrukcí podle předkládaného vynálezu, a následně budou popsány také jednotlivé kroky tohoto způsobu. </p>
    <p num="177"> </p>
    <p num="178">Systém pro provádění způsobu podle předkládaného vynálezu v prvním příkladném provedení zahrnuje senzorickou jednotku 1, řídicí jednotku 2 komunikačně spojenou se senzorickou jednotkou 1 a uzpůsobenou pro ovládání senzorické jednotky 1 a dále také vzdálený server 21, jehož součástí je modul 3 pro zpracování dat. Vzdálený server 21 obsahující modul 3 pro zpracování dat je komunikačně spojený s řídicí jednotkou 2, přičemž toto komunikační spojení je zajištěno komunikačním modulem 15 v řídicí jednotce 2, jak bude ještě podrobněji popisováno dále při popisu uspořádání řídicí jednotky 2 v prvním příkladném provedení systému. </p>
    <p num="179"> </p>
    <p num="180">Jak je schematicky znázorněno na obr. 1, senzorická jednotka 1 v prvním příkladném provedení zahrnuje inerciální senzor 8, kameru 9, senzor 10 pracovního stavu, upevňovací element 11 pro upevnění senzorické jednotky 1 k ručnímu pracovnímu nástroji 6 a nástavec 12. Příkladně je senzorická jednotka 1 tvořena pouzdrem pro uložení jednotlivých komponent, přičemž nástavec 12 je spojen s tímto pouzdrem a zahrnuje upevňovací element 11 pro upevnění k ručnímu pracovnímu nástroji 6. Příkladně je upevňovací element 11 tvarově uzpůsobený pro nasazení na ruční pracovní nástroj 6, tj. v tomto provedení je možné upevnit senzorickou jednotku 1 k ručnímu pracovnímu nástroji 6 i bez použití šroubů. </p>
    <p num="181"> </p>
    <p num="182">Senzorická jednotka 1 po upevnění k ručnímu pracovnímu nástroji 6 umožňuje sledování chování ručního pracovního nástroje 6, a to konkrétně sledování polohy a orientace (tj. natočení) ručního pracovního nástroje 6 a také sledování pracovního stavu ručního pracovního nástroje 6. </p>
    <p num="183"> </p>
    <p num="184">Sledování polohy a orientace ručního pracovního nástroje 6 je realizováno kombinovaným využitím inerciálního senzoru 8 a kamery 9, jinak řečeno s využitím dat, která jsou zaznamenávána inerciálním senzorem 8, a vizuálních snímků z kamery 9. Inerciálním senzorem 8 je v popisovaném prvním příkladném provedení systému inerciální měřicí jednotka (IMU, inertial measurement unit), která zahrnuje tříosý akcelerometr a tříosý gyroskop. Tříosý akcelerometr zaznamenává hodnoty zrychlení v čase ve třech prostorových osách a tříosý gyroskop zaznamenává hodnoty úhlové rychlosti v čase ve třech prostorových osách. Kamerou 9 je v popisovaném prvním příkladném provedení stereo kamera, přičemž tato kamera 9 zaznamenává vizuální snímky okolního prostředí v různých časových bodech, tj. poskytuje snímky s časovou značkou. </p>
    <p num="185"> </p>
    <p num="186">Kameru 9 společně s inerciálním senzorem 8 lze souhrnně označit jako tzv. trackovací (či sledovací) kameru, přičemž v prvním příkladném provedení trackovací kamera zahrnuje vlastní výpočetní jednotku (na obrázcích znázorněná není) pro výpočet polohy a orientace svého referenčního souřadného systému (tj. referenčního souřadného systému C senzorické jednotky 1) v čase. Tímto je v principu sledována poloha a orientace ručního pracovního nástroje 6 (k němuž je senzorická jednotka 1 upevněná), ačkoliv pro přepočítání polohy a orientace trackovací kamery na polohu a orientaci ručního pracovního nástroje 6 musí být ještě aplikována transformace s využitím kalibračních dat, jak bude přiblíženo níže. </p>
    <p num="187"> </p>
    <p num="188">Poloha a orientace trackovací kamery je počítána z dat inerciálního senzoru 8 a kamery 9, tj. ze zaznamenaných hodnot zrychlení v čase ve třech prostorových osách, úhlové rychlosti v čase ve třech prostorových osách a na základě vizuálních prvků detekovaných ve vizuálních snímcích z kamery 9. Pro detekování vizuálních prvků zahrnuje výpočetní jednotka trackovací kamery detekční modul, což znamená, že na snímky z kamery 9 je použit algoritmus detekující vizuální prvky. Těmito vizuálními prvky jsou například různé vizuálně význačné body okolního prostředí, např. rohy či hrany viditelné na snímcích. Detekce vizuálních prvků je výhodná především z toho důvodu, že dojde k řádovému snížení bodů, které je potřeba vzít v úvahu, typicky z tisíců pixelů (v závislosti na rozlišení kamery 9) na pár stovek vizuálních prvků. Každý vizuální prvek je označen, prostorově zmapován a uspořádán do vektoru vizuálních prvků. Po pořízení nového snímku detekční modul porovná nově označené prvky uspořádané v nově sestrojeném vektoru vizuálních prvků a na základě tohoto porovnání vypočítá změnu polohy. </p>
    <p num="189"> </p>
    <p num="190">Výše popsaný postup je známý jako technologie V-SLAM (Visual Simultaneous Localization and Mapping), přičemž výstupem výpočetní jednotky trackovací kamery provádějící V-SLAM jsou data se šesti stupni volnosti, konkrétně poloha trackovací kamery v čase ve třech prostorových osách a orientace trackovací kamery v čase ve třech prostorových osách. V popisovaném prvním provedení jsou tak data ze senzoru 8 pohybu a kamery 9 přivedena do modulu 3 pro zpracování dat už v této zkombinované a přepočítané podobě, tj. jako poloha a orientace v čase ve třech prostorových osách. Jinými slovy, V-SLAM je použit pro výpočet polohy a orientace trackovací kamery v čase, a nepřímo tedy pro sledování polohy a orientace ručního pracovního nástroje 6 v prostředí, které je mapováno pomocí kamery 9. Pro tyto účely lze použít komerčně dostupné trackovací kamery. </p>
    <p num="191"> </p>
    <p num="192">Jak již bylo uvedeno výše, kromě inerciálního senzoru 8 zahrnuje senzorická jednotka 1 také senzor 10 pracovního stavu, kterým je v popisovaném prvním příkladném provedení zvukový senzor (čili mikrofon). Zvukový senzor slouží pro zaznamenávání zvukového signálu během kroku provádění pracovní operace pro povrchovou úpravu dílu 7, přičemž tento krok provádění pracovní operace pro povrchovou úpravu dílu 7 je prováděn pomocí ručního pracovního nástroje 6 s připevněnou senzorickou jednotkou 1, jak bude popisováno také níže při popisu způsobu podle předkládaného vynálezu. </p>
    <p num="193"> </p>
    <p num="194">V prvním příkladném provedení, jak je naznačeno na obr. 2, je ručním pracovním nástrojem 6 ruční lakovací pistole a pracovní operací pro povrchovou úpravu dílu 7 je průmyslové lakování. To znamená, že senzor 10 pracovního stavu poskytuje informaci o tom, zda je ruční lakovací pistole spuštěná, jinými slovy o tom, zda právě ruční lakovací pistole lakuje. Tato informace je pro generování robotických instrukcí podstatná, neboť je důležité stacionárním robotem 5 při následné automatizované pracovní operaci zreprodukovat nejen pohyb (polohu a orientaci) ručního pracovního nástroje 6, ale také to, kdy byl ruční pracovní nástroj 6 spuštěný, a tedy kdy má být spuštěný robotický pracovní nástroj 25. </p>
    <p num="195"> </p>
    <p num="196">Konkrétně je pracovní stav ručního pracovního nástroje 6 (spuštěný/nespuštěný) určen analýzou tohoto zvukového signálu, kterou může provádět např. vlastní výpočetní jednotka tohoto senzoru 10 pracovního stavu (na obrázcích není znázorněná). Příkladně je výpočetní jednotka senzoru 10 pracovního stavu uzpůsobená pro porovnávání hodnot zvukového signálu v různých časových bodech s předem stanovenými prahovými hodnotami a je také uzpůsobená pro následné určení pracovního stavu ručního pracovního nástroje 6. Příkladně, pokud je zvukový signál vyšší než první prahová hodnota, je pracovní stav indikován jako spuštěný, a pokud je zvukový signál nižší než druhá prahová hodnota, je pracovní stav indikován jako nespuštěný. Informace o pracovním stavu ručního pracovního nástroje 6 jsou přivedeny do modulu 3 pro zpracování dat, jak bude ještě popisováno dále. Kromě určení pracovního stavu může výpočetní jednotka senzoru 10 pracovního stavu počítat ze zvukového signálu také další informace, např. o tom, jaká dílčí činnost dané pracovní operace byla v daném čase prováděna, pokud se tyto dílčí činnosti liší zvukem, který při nich vzniká. </p>
    <p num="197"> </p>
    <p num="198">V prvním příkladném provedení je zvukový senzor připevněn na vnitřní straně pouzdra senzorické jednotky 1, konkrétně na té vnitřní stěně pouzdra, která je nejblíže ručnímu pracovnímu nástroji 6, ke kterému je senzorická jednotka 1 upevňována. Senzorická jednotka 1 dále zahrnuje uživatelské rozhraní 19 senzorické jednotky 1, např. ovládací tlačítka a signalizační diody, které slouží k ovládání senzorické jednotky 1 a/nebo řídicí jednotky 2 a k interakci s řídicí jednotkou 2 během zaznamenávání dat senzorickou jednotkou 1. Blíže bude funkce uživatelského rozhraní 19 senzorické jednotky 1 přiblížena níže při popisu způsobu. </p>
    <p num="199"> </p>
    <p num="200">Řídicí jednotka 2 v prvním příkladném provedení systému, jak je schematicky znázorněno na obr. 1, zahrnuje mikropočítač 13, paměť 14, komunikační modul 15 pro komunikační spojení se vzdáleným serverem 21, baterii 16 pro napájení mikropočítače 13, dobíjecí konektor 17 pro dobíjení baterie 16 a také konektor pro elektrické spojení se senzorickou jednotkou 1 pomocí kabelu. Jednotlivé komponenty jsou uložené v pouzdře řídicí jednotky 2, což je na obr. 1 naznačeno přerušovanou čarou. Pouzdro řídicí jednotky 2 je dále opatřené alespoň jedním popruhem 18, který umožňuje uživateli nosit řídicí jednotku 2 na těle, například přes rameno nebo na zádech, a volně se s ní pohybovat. Řídicí jednotka 2 také dále zahrnuje uživatelské rozhraní 20 řídicí jednotky, např. ovládací tlačítka a signalizační diody, které slouží k ovládání řídicí jednotky 2 a/nebo senzorické jednotky 1 a k interakci se senzorickou jednotkou 1 během zaznamenávání dat senzorickou jednotkou 1. Blíže bude funkce uživatelského rozhraní 20 řídicí jednotky 1 přiblížena níže při popisu způsobu. </p>
    <p num="201"> </p>
    <p num="202">Mikropočítač 13 v řídicí jednotce 2 je napájený baterií 16 a dále napájí a ovládá další komponenty řídicí jednotky 2 (uživatelské rozhraní 20 řídicí jednotky 2, paměť 14, komunikační modul 15), ale také komponenty senzorické jednotky 1. Mikropočítač 13 tedy konkrétně ovládá také inerciální senzor 8, kameru 9 a senzor 10 pracovního stavu a řídí sběr (zaznamenávání, nahrávání) dat a realizuje jejich ukládání do paměti 14, s níž pracuje. Mikropočítač 13 také ovládá komunikační modul 15, přičemž v popisovaném prvním příkladném provedení je komunikačním modulem 15 Wi-Fi modul a komunikační spojení řídicí jednotky 2 a vzdáleného serveru 21 je provedeno jako bezdrátové spojení pomocí technologie Wi-Fi. To je na obr. 1 či obr. 2 naznačeno přerušovanou šipkou a také grafickým symbolem signálu, neboť komunikační spojení řídicí jednotky 2 a vzdáleného serveru 21 slouží pro přenos dat zaznamenaných senzorickou jednotkou 1 z řídicí jednotky 2 na vzdálený server 21, tzv. cloud. Díky vzájemnému spojení řídicí jednotky 2 a senzorické jednotky 1 je tedy vzdálený server 21 přes řídicí jednotku 2 nepřímo spojený se senzorickou jednotkou 1. Jinými slovy lze také říci, že data zaznamenaná senzorickou jednotkou 1 jsou prostřednictvím řídicí jednotky 2 nahrávána na vzdálený server 21. </p>
    <p num="203"> </p>
    <p num="204">Vzdálený server 21, jak je schematicky znázorněn na obr. 2, zahrnuje v prvním příkladném provedení úložiště 22 nahraných dat, modul 3 pro zpracování dat a úložiště 24 vygenerovaných instrukcí. Nahraná data jsou tedy přenesena do úložiště 22 nahraných dat a dále jsou zpracovávána modulem 3 pro zpracování dat, jehož výstupem jsou instrukce pro stacionárního robota 5. Konkrétněji řečeno, instrukcemi pro stacionárního robota 5 (či tzv. robotickými instrukcemi) je spustitelný program pro automatizované ovládání stacionárního robota 5. Takové programy jsou následně ukládány do úložiště 24 vygenerovaných instrukcí, kde jsou připraveny pro nahrání do stacionárního robota 5. Pokud je program nahrán do ovladače stacionárního robota 5 a spuštěn na stacionárním robotu 5, realizuje automatizované ovládání stacionárního robota 5 tak, že robotický pracovní nástroj 25 na stacionárním robotu 5 zreprodukuje požadovanou pracovní operaci pro povrchovou úpravu dílu 7, jak byla provedena ručním pracovním nástrojem 6 s upevněnou senzorickou jednotkou 1. </p>
    <p num="205"> </p>
    <p num="206">Jak je rovněž schematicky znázorněno na obr. 2, modul 3 pro zpracování dat zahrnuje generátor 23 instrukcí zahrnující rozhraní pro generování instrukcí v programovacím jazyce alespoň jednoho výrobce stacionárních robotů 5. Kromě samotného generování instrukcí je však modul 3 pro zpracování dat uzpůsobený také pro další zpracování dat, které je pomocí příslušných algoritmů provedeno před vygenerováním instrukcí. Konkrétně modul 3 pro zpracování dat v prvním příkladném provedení zahrnuje modul pro filtraci dat, modul pro časovou synchronizaci dat, modul pro dynamické podvzorkování a modul pro aplikování prostorové transformace. Význam těchto jednotlivých kroků dalšího zpracování je přiblížen při popisu způsobu níže. Pro generování instrukcí a pro provedení tohoto dalšího zpracování dat zahrnuje modul 3 pro zpracování dat dostatečnou výpočetní kapacitu. </p>
    <p num="207"> </p>
    <p num="208">Vstupem modulu 3 pro zpracování dat, a potažmo tedy také generátoru 23 instrukcí, jsou data z inerciálního senzoru 8 a kamery 9, přičemž v tomto konkrétním provedení se jedná o již zkombinovaná data, tj. o polohu a orientaci v čase ve třech prostorových osách. Dalším vstupem jsou také data ze senzoru 10 pracovního stavu zahrnující informaci o tom, zda je ruční pracovní nástroj 6 spuštěný. Ještě dalším vstupem jsou kalibrační data, která zahrnují transformační matice definující vzájemný prostorový vztah mezi referenčními souřadnými systémy senzorické jednotky 1, ručního pracovního nástroje 6, stacionárního robota 5 a dílu 7, jak bude ještě podrobněji popisováno níže. Na základě těchto vstupních dat vygeneruje generátor 23 instrukcí instrukce pro stacionárního robota 5, což bude rovněž podrobněji popsáno níže při popisu způsobu. </p>
    <p num="209"> </p>
    <p num="210">V prvním příkladném provedení systém zahrnuje uživatelské rozhraní modulu pro zpracování dat a také přístupové zařízení 4 pro přístup k tomuto uživatelskému rozhraní modulu 3 pro zpracování dat. V prvním příkladném provedení je tímto uživatelským rozhraním modulu 3 pro zpracování dat webové rozhraní, které je součástí vzdáleného serveru 21 a které uživateli umožňuje vybrat data ke zpracování, nakonfigurovat parametry zpracování dat, např. typ (výrobce) stacionárního robota 5, pro kterého mají být instrukce generovány, a následně stáhnout vygenerované instrukce ze vzdáleného serveru 21, konkrétně z úložiště vygenerovaných instrukcí. Přístupové zařízení 4 je tedy komunikačně spojené se vzdáleným serverem 21, konkrétně alespoň s generátorem 23 instrukcí a s úložištěm 24 vygenerovaných instrukcí. Přístupovým zařízením 4 je např. počítač, mobilní telefon či jiné zařízení s přístupem na web. </p>
    <p num="211"> </p>
    <p num="212">V následující části bude podrobněji popsán způsob generování instrukcí, přičemž tento způsob v prvním příkladném provedení zahrnuje kroky: </p>
    <p num="213"> </p>
    <p num="214">  -  provedení kalibračního měření pro získání kalibračních dat, </p>
    <p num="215"> </p>
    <p num="216">  -  provedení pracovní operace pro povrchovou úpravu dílu 7 pomocí ručního pracovního nástroje 6 s upevněnou senzorickou jednotkou 1, </p>
    <p num="217"> </p>
    <p num="218">  -  sledování polohy a orientace ručního pracovního nástroje 6 senzorickou jednotkou 1 během kroku provedení pracovní operace pro povrchovou úpravu dílu 7, přičemž krok sledování polohy a orientace ručního pracovního nástroje 6 zahrnuje krok zaznamenávání zrychlení a úhlové rychlosti v čase inerciálním senzorem 8 a krok zaznamenávání vizuálních snímků okolního prostředí v různých časových bodech kamerou 9, </p>
    <p num="219"> </p>
    <p num="220">  -  sledování pracovního stavu ručního pracovního nástroje 6 senzorem 10 pracovního stavu během kroku provedení pracovní operace pro povrchovou úpravu dílu 7, přičemž senzor 10 pracovního stavu poskytuje informaci o tom, zda je ruční pracovní nástroj 6 spuštěný, </p>
    <p num="221"> </p>
    <p num="222">  -  poskytnutí kalibračních dat modulu 3 pro zpracování dat, přičemž kalibrační data poskytnutá modulu 3 pro zpracování dat zahrnují transformační matice definující vzájemný prostorový vztah mezi referenčními souřadnými systémy senzorické jednotky 1, ručního pracovního nástroje 6, stacionárního robota 5 a dílu 7, a </p>
    <p num="223"> </p>
    <p num="224">  -  zpracování dat z inerciálního senzoru 8, kamery 9 a senzoru 10 pracovního stavu a také kalibračních dat modulem 3 pro zpracování dat, přičemž krok zpracování dat zahrnuje krok vygenerování instrukcí pro stacionárního robota 5 v programovacím jazyce alespoň jednoho výrobce stacionárních robotů 5. </p>
    <p num="225"> </p>
    <p num="226">Nejprve bude popsáno kalibrační měření, které v prvním příkladném provedení slouží pro získání kalibračních dat, konkrétně pro získání čtyř transformačních matic definujících vzájemný prostorový vztah mezi referenčními souřadnými systémy senzorické jednotky 1, ručního pracovního nástroje 6, stacionárního robota 5 a dílu 7. </p>
    <p num="227"> </p>
    <p num="228">Nejprve je získána transformační matice <i>T</i>GC definující vzájemný prostorový vztah mezi referenčním souřadným systémem G ručního pracovního nástroje 6 (ozn. písmenem G podle anglického „gun“ pro pistoli) a referenčním souřadným systémem C senzorické jednotky 1 (ozn. písmenem C podle anglického „camera“ pro kameru, která je součástí senzorické jednotky 1). </p>
    <p num="229"> </p>
    <p num="230">Tato první část kalibrace je realizována pomocí prvního kalibračního přípravku 26, který zahrnuje tvarově definovaný kalibrační otvor. Tento kalibrační otvor je uzpůsobený pro vložení špičky ručního pracovního nástroje 6 právě jedním definovaným způsobem, tj. s konkrétní polohou a konkrétní orientací ručního pracovního nástroje 6. Jinými slovy, kalibrační otvor spolu s ručním pracovním nástrojem 6 fungují na principu zámku a klíče. První kalibrační přípravek 26 je schematicky znázorněn na obr. 2, přičemž vložení ručního pracovního nástroje 6 je naznačeno šipkou vedoucí k tomuto kalibračnímu otvoru. První kalibrační přípravek 26 dále zahrnuje sadu prvních vizuálních značek, které jsou po vložení ručního pracovního nástroje 6 do kalibračního otvoru viditelné kamerou 9, která je součástí senzorické jednotky 1 upevněné na ručním pracovním nástroji 6. Vzájemné polohy těchto prvních vizuálních značek a kalibračního otvoru jsou definované a známé. Vizuální značky jsou unikátní a každá obsahuje svůj identifikátor pro rozeznání od ostatních vizuálních značek. </p>
    <p num="231"> </p>
    <p num="232">Po vložení špičky ručního pracovního nástroje 6 s připevněnou senzorickou jednotkou 1 do kalibračního otvoru a v momentě, kdy je ruční pracovní nástroj 6 správně umístěn, dá uživatel pomocí uživatelského rozhraní 19 senzorické jednotky 1, tj. příkladně stisknutím tlačítka, signál řídicí jednotce 2, aby uložila informaci o poloze a orientaci, kterou poskytuje senzorická jednotka 1. Senzorická jednotka 1, konkrétně kamera 9, zároveň detekuje první vizuální značky a určí svou relativní polohu a orientaci k těmto jednotlivým prvním vizuálním značkám. Ze známé definice geometrie prvního kalibračního přípravku 26 a informace o poloze a orientaci ze senzorické jednotky 1 uložené během této části kalibrace je následně sestavena transformační matice <i>T</i>GC definující vzájemný prostorový vztah mezi referenčním souřadným systémem G ručního pracovního nástroje 6 a referenčním souřadným systémem C senzorické jednotky 1. Tato první část kalibrace je provedena pokaždé, kdy uživatel připevní senzorickou jednotku 1 k ručnímu pracovnímu nástroji 6 za účelem demonstrace pracovní operace pro následnou automatizaci. </p>
    <p num="233"> </p>
    <p num="234">Dále je analogickým způsobem získána transformační matice <i>T</i>CR definující vzájemný prostorový vztah mezi referenčním souřadným systémem C senzorické jednotky 1 a referenčním souřadným systémem R stacionárního robota 5 (ozn. písmenem R podle anglického „robot“), konkrétně robotického pracovního nástroje 25. </p>
    <p num="235"> </p>
    <p num="236">Tato druhá část kalibrace je realizována rovněž pomocí prvního kalibračního přípravku 26, nicméně do kalibračního otvoru je namísto ručního pracovního nástroje 6 vložen (naveden pomocí ovladače stacionárního robota 5) robotický pracovní nástroj 25, k němuž je pro účely této části kalibrace upevněná senzorická jednotka 1. Poté, co dá uživatel signál řídicí jednotce 2, detekuje kamera 9 první vizuální značky a změří svou relativní polohu a orientaci vůči těmto prvním vizuálním značkám. Ze známé definice geometrie prvního kalibračního přípravku 26 a informace o poloze a orientaci ze senzorické jednotky 1 uložené během této části kalibrace je následně sestavena transformační matice <i>T</i>CR definující vzájemný prostorový vztah mezi referenčním souřadným systémem C senzorické jednotky 1 a referenčním souřadným systémem R stacionárního robota 5, konkrétně robotického pracovního nástroje 25. </p>
    <p num="237"> </p>
    <p num="238">Dále je získána transformační matice <i>T</i>CP definující vzájemný prostorový vztah mezi referenčním souřadným systémem C senzorické jednotky 1 a referenčním souřadným systémem P dílu 7 (ozn. písmene P podle anglického „product“ nebo „part“ pro díl 7). </p>
    <p num="239"> </p>
    <p num="240">Tato třetí část kalibrace je realizována pomocí druhého kalibračního přípravku 27, který zahrnuje druhou vizuální značku, která je umístěná v pevné vzájemné vzdálenosti od dílu 7. Tato pevná vzájemná vzdálenost nemusí být známá, musí však zůstat neměnná během kalibrace a během kroku provedení pracovní operace pro povrchovou úpravu dílu 7 pomocí ručního pracovního nástroje 6, tj. během demonstrace. Druhý kalibrační přípravek 27 je schematicky znázorněn na obr. 2 u dílu 7, který je pro pracovní operaci, např. pro nalakování, zavěšen na nosném rámu. </p>
    <p num="241"> </p>
    <p num="242">Uživatel provede tuto část kalibrace tak, že ruční pracovní nástroj 6 přiblíží ke druhému kalibračnímu přípravku 27 a namíří kameru 9 v senzorické jednotce 1 na druhou vizuální značku. Senzorická jednotka 1 rozpozná druhou vizuální značku, neboť druhá vizuální značka je, jako všechny vizuální značky použité při kalibraci, unikátní, a změří svou relativní polohu a orientaci vůči ní. Dále dá uživatel pomocí uživatelského rozhraní 19 senzorické jednotky 1, tj. příkladně stisknutím tlačítka, signál řídicí jednotce 2, aby uložila data o poloze a orientaci vůči referenčnímu souřadnému systému C senzorické jednotky 1, která v daný moment poskytuje senzorická jednotka 1. Z těchto dat společně s daty získanými z první části kalibrace (mezi referenčním souřadným systémem G ručního pracovního nástroje 6 a referenčním souřadným systémem C senzorické jednotky 1) je následně sestavena transformační matice <i>T</i>CP definující prostorový vztah mezi referenčním souřadným systémem C senzorické jednotky 1 a referenčním souřadným systémem P dílu 7. Tato kalibrace je provedena na začátku každé demonstrace pracovní operace, pro kterou chce uživatel vygenerovat robotický program. </p>
    <p num="243"> </p>
    <p num="244">Dále je analogickým způsobem získána transformační matice <i>T</i>RP definující vzájemný prostorový vztah mezi referenčním souřadným systémem R stacionárního robota 5 a referenčním souřadným systémem P dílu 7. </p>
    <p num="245"> </p>
    <p num="246">Tato čtvrtá část kalibrace je realizována rovněž pomocí druhého kalibračního přípravku 27, nicméně ke druhému kalibračnímu přípravku 27 s druhou vizuální značkou je namísto ručního pracovního nástroje 6 přiblížen (naveden pomocí ovladače stacionárního robota 5) robotický pracovní nástroj 25, k němuž je pro účely této části kalibrace upevněná senzorická jednotka 1. Vzájemná poloha druhého kalibračního přípravku 27 a dílu 7 je pevná, ale nemusí být známá. Musí však zůstat neměnná během kalibrace a během kroku provedení pracovní operace pro povrchovou úpravu dílu 7 pomocí ručního pracovního nástroje 6, tj. během demonstrace. </p>
    <p num="247"> </p>
    <p num="248">Uživatel tedy provede tuto část kalibrace tak, že po přiblížení ke druhé vizuální značce zaměří kameru 9 na druhou vizuální značku, kamera 9 tuto druhou vizuální značku detekuje a určí svou relativní polohu a orientaci vůči ní. Uživatel si dále s pomocí ovladače stacionárního robota 5 poznamená polohu a orientaci robotického pracovního nástroje 6 v referenčním souřadném systému R stacionárního robota 5. Z těchto dat společně s daty získanými ze druhé části kalibrace (mezi referenčním souřadným systémem C senzorické jednotky 1 a referenčním souřadným systémem R stacionárního robota 5) je následně sestavena matice <i>T</i>RP definující vzájemný prostorový vztah mezi referenčním souřadným systémem R stacionárního robota 5 a referenčním souřadným systémem P dílu 7. Tuto kalibraci je potřeba provést pouze jednou za předpokladu, že díl 7, pro který jsou generovány robotické instrukce, se bude následně vždy nacházet na stejném místě vůči stacionárnímu robotu 5, který na něm bude provádět automatizovanou pracovní operaci podle vygenerovaného robotického programu. </p>
    <p num="249"> </p>
    <p num="250">Na tomto místě lze zmínit, že druhá část kalibrace je potřebná z toho důvodu, že pro čtvrtou část kalibrace (stacionární robot 5-díl 7) je použita kamera 9. Dále je také vhodné zmínit, že senzorická jednotka 1 se na robotický pracovní nástroj 25 upevňuje pouze za účelem kalibrace a během provádění automatizované pracovní operace již není na robotickém pracovním nástroji 25 upevněna. </p>
    <p num="251"> </p>
    <p num="252">V prvním příkladném provedení způsobu následuje po kroku provedení kalibračního měření krok provedení pracovní operace pro povrchovou úpravu dílu 7 pomocí ručního pracovního nástroje 6 s upevněnou senzorickou jednotkou 1. Během provádění pracovní operace pro povrchovou úpravu dílu 7, tj. příkladně během demonstrativního lakování dílu 7 ruční lakovací pistolí, je pomocí senzorické jednotky 1 prováděno sledování polohy a orientace a také sledování pracovního stavu ručního pracovního nástroje 6, jak již bylo popisováno také výše. Toto sledování (tj. nahrávání/zaznamenávání dat) je započato tím, že uživatel, např. pomocí uživatelského rozhraní 19 senzorické jednotky 1 či uživatelského rozhraní 20 řídicí jednotky 2, signalizuje řídicí jednotce 2 začátek nahrávání. Po provedení pracovní operace pro povrchovou úpravu dílu 7 pomocí ručního pracovního nástroje 6 signalizuje uživatel obdobným způsobem konec nahrávání. Během nahrávání se data ze senzorické jednotky 1 ukládají do paměti 14. </p>
    <p num="253"> </p>
    <p num="254">Po skončení nahrávání jsou uložená data pomocí bezdrátové (Wi-Fi) komunikace přenesena na vzdálený server 21, kde dochází k jejich zpracování pomocí modulu 3 pro zpracování dat za účelem vygenerování instrukcí pro stacionárního robota 5. Na vstup modulu 3 pro zpracování dat jsou přenesena také kalibrační data. </p>
    <p num="255"> </p>
    <p num="256">V popisovaném prvním příkladném provedení způsobu, jak je schematicky znázorněno na obr. 3, zahrnuje zpracování dat několik dílčích kroků, a to krok filtrace dat, krok časové synchronizace dat, krok dynamického podvzorkování, krok aplikování prostorové transformace na základě poskytnutých kalibračních dat a následně krok vygenerování instrukcí pro stacionárního robota 5. Aplikováním prostorové transformace na základě kalibračních dat jsou zaznamenaná data transformována do referenčního souřadného systému R stacionárního robota 5, což umožňuje vygenerovat instrukce, které jsou vyjádřené v tomto referenčním souřadném systému R stacionárního robota 5. </p>
    <p num="257"> </p>
    <p num="258">Krok vygenerování instrukcí je provedený generátorem 23 instrukcí, který je v popisovaném prvním provedení součástí vzdáleného serveru 21 a který obsahuje rozhraní pro generování instrukcí pro stacionárního robota 5 v programovacím jazyce alespoň jednoho výrobce stacionárních robotů 5. Generátor 23 instrukcí obsahuje informace o syntaxi, sémantice, požadované struktuře a formátu instrukcí pro stacionárního robota 5, včetně informací o tom, jakými klíčovými slovy se v programovacím jazyce daného výrobce stacionárního robota 5 zapisují jednotlivé instrukce pro stacionárního robota 5. Spustitelný robotický program je vytvořen tím, že generátor 23 instrukcí zapíše jednotlivé instrukce dle pravidel syntaxe a sémantiky a s využitím hodnot argumentů, které jsou výsledkem předchozího zpracování dat. </p>
    <p num="259"> </p>
    <p num="260">Např. pro lakovacího robota od ABB vytvoří generátor 23 instrukcí soubor s příponou .mod, který obsahuje příslušné sekce MODULE a PROCEDURE a v sekci PROCEDURE jsou na jednotlivých řádcích vypsané jednotlivé instrukce. Tyto instrukce začínají klíčovým slovem PaintL a následují hodnoty argumentů instrukce x, y, z, q1, q2, q3, q4 (a další), za které generátor 23 instrukcí dosadí konkrétní čísla, která určují, kam se má robotický pracovní nástroj 25 pohnout, jak rychle apod. </p>
    <p num="261"> </p>
    <p num="262">Způsob a systém podle předkládaného vynálezu mohou být dále provedeny také v dalších příkladných provedeních než v prvním příkladném provedení, které bylo do detailu popsáno výše. Jednotlivé alternativy, kterými se mohou další příkladná provedení lišit, jsou vysvětleny v sekci podstata vynálezu. </p>
    <p num="263"> </p>
    <p num="264"> </p>
    <p num="265">
      <u>Průmyslová využitelnost</u>
    </p>
    <p num="266"> </p>
    <p num="267">Výše popsaný způsob a systém je možné použít pro generování instrukcí využitelných při různých pracovních operacích pro povrchovou úpravu, jako je například lakování, broušení, leštění, srážení hran, tryskání apod. Vygenerované instrukce (robotické programy) navíc mohou být nahrány nejen do ovladače skutečného stacionárního robota, ale také do ovladače virtuálního stacionárního robota, tj. do jeho digitálního dvojčete pro účely simulací. </p>
    <description-of-drawings>
      <p num="1">      1 -  senzorická jednotka
  <br/>      2 -  řídicí jednotka
  <br/>      3 -  modul pro zpracování dat
  <br/>      4 -  přístupové zařízení
  <br/>      5 -  stacionární robot
  <br/>      6 -  ruční pracovní nástroj
  <br/>      7 -  díl
  <br/>      8 -  inerciální senzor
  <br/>      9 -  kamera
  <br/>    10 -  senzor pracovního stavu
  <br/>    11 -  upevňovací element
  <br/>    12 -  nástavec
  <br/>    13 -  mikropočítač
  <br/>    14 -  paměť
  <br/>    15 -  komunikační modul
  <br/>    16 -  baterie
  <br/>    17 -  dobíjecí konektor
  <br/>    18 -  popruh
  <br/>    19 -  uživatelské rozhraní senzorické jednotky
  <br/>    20 -  uživatelské rozhraní řídicí jednotky
  <br/>    21 -  vzdálený server
  <br/>    22 -  úložiště nahraných dat
  <br/>    23 -  generátor instrukcí
  <br/>    24 -  úložiště vygenerovaných instrukcí
  <br/>    25 -  robotický pracovní nástroj
  <br/>    26 -  první kalibrační přípravek
  <br/>    27 -  druhý kalibrační přípravek
 </p>
    </description-of-drawings>
  </description>
  <claims id="claim">
    <claim num="1">
      <claim-text>Způsob generování instrukcí pro stacionárního robota (5) na základě demonstrace pracovní operace pro povrchovou úpravu dílu (7), 
   <b>vyznačující se tím</b>, že zahrnuje kroky:
   <br/>  -  provedení pracovní operace pro povrchovou úpravu dílu (7) pomocí ručního pracovního nástroje (6) s upevněnou senzorickou jednotkou (1),
   <br/>  -  sledování polohy a orientace ručního pracovního nástroje (6) senzorickou jednotkou (1) během kroku provedení pracovní operace pro povrchovou úpravu dílu (7), přičemž krok sledování polohy a orientace ručního pracovního nástroje (6) zahrnuje krok zaznamenávání zrychlení a úhlové rychlosti v čase inerciálním senzorem (8) a krok zaznamenávání vizuálních snímků okolního prostředí v různých časových bodech alespoň jednou kamerou (9),
   <br/>  -  sledování pracovního stavu ručního pracovního nástroje (6) senzorem (10) pracovního stavu během kroku provedení pracovní operace pro povrchovou úpravu dílu (7), přičemž senzor (10) pracovního stavu poskytuje informaci o tom, zda je ruční pracovní nástroj (6) spuštěný,
   <br/>  -  poskytnutí kalibračních dat modulu (3) pro zpracování dat, přičemž kalibrační data poskytnutá modulu (3) pro zpracování dat zahrnují informace o vzájemném prostorovém vztahu mezi referenčními souřadnými systémy senzorické jednotky (1), ručního pracovního nástroje (6), stacionárního robota (5) a dílu (7), a
   <br/>  -  zpracování dat z inerciálního senzoru (8), alespoň jedné kamery (9) a senzoru (10) pracovního stavu a také kalibračních dat modulem (3) pro zpracování dat, přičemž krok zpracování dat zahrnuje krok vygenerování instrukcí pro stacionárního robota (5) v programovacím jazyce alespoň jednoho výrobce stacionárních robotů (5).
  </claim-text>
    </claim>
    <claim num="2">
      <claim-text>Způsob podle nároku 1, 
   <b>vyznačující se tím</b>, že poskytnutá kalibrační data zahrnují alespoň informaci o vzájemném prostorovém vztahu mezi referenčním souřadným systémem G ručního pracovního nástroje (6) a referenčním souřadným systémem C senzorické jednotky (1), informaci o vzájemném prostorovém vztahu mezi referenčním souřadným systémem C senzorické jednotky (1) a referenčním souřadným systémem P dílu (7) a informaci o vzájemném prostorovém vztahu mezi referenčním souřadným systémem R stacionárního robota (5) a referenčním souřadným systémem P dílu (7).
  </claim-text>
    </claim>
    <claim num="3">
      <claim-text>Způsob podle kteréhokoli z předcházejících nároků, 
   <b>vyznačující se tím</b>, že pro získání kalibračních dat, která jsou poskytována modulu (3) pro zpracování dat, zahrnuje způsob krok provedení kalibračního měření.
  </claim-text>
    </claim>
    <claim num="4">
      <claim-text>Způsob podle nároků 2 a 3, 
   <b>vyznačující se tím</b>, že pro krok provedení kalibračního měření jsou využity unikátní vizuální značky, přičemž informace o vzájemném prostorovém vztahu mezi referenčními souřadnými systémy G a C, informace o vzájemném prostorovém vztahu mezi referenčními souřadnými systémy C a P, informace o vzájemném prostorovém vztahu mezi referenčními souřadnými systémy R a P, a navíc také informace o vzájemném prostorovém vztahu mezi referenčními souřadnými systémy C a R, jsou získány na základě detekování vizuálních značek alespoň jednou kamerou (9) a na základě určení relativní orientace senzorické jednotky (1) vůči vizuálním značkám.
  </claim-text>
    </claim>
    <claim num="5">
      <claim-text>Způsob podle kteréhokoli z předcházejících nároků, 
   <b>vyznačující se tím</b>, že krok vygenerování instrukcí pro stacionárního robota (5) je provedený generátorem (23) instrukcí obsahujícím informace o syntaxi, sémantice, požadované struktuře a formátu instrukcí pro stacionárního robota (5) alespoň jednoho výrobce stacionárních robotů (5), přičemž instrukce jsou generátorem (23) instrukcí zapsány v požadované struktuře a formátu na základě informací o syntaxi a sémantice a obsahují klíčová slova a hodnoty argumentů, které jsou výsledkem kroku zpracování dat modulem (3) pro zpracování dat.
  </claim-text>
    </claim>
    <claim num="6">
      <claim-text>Způsob podle kteréhokoli z předcházejících nároků, 
   <b>vyznačující se tím</b>, že krok zpracování dat modulem (3) pro zpracování dat dále před krokem vygenerování instrukcí pro stacionárního robota (5) zahrnuje krok filtrace dat, krok časové synchronizace dat, krok dynamického podvzorkování a krok aplikování prostorové transformace na základě poskytnutých kalibračních dat.
  </claim-text>
    </claim>
    <claim num="7">
      <claim-text>Způsob podle kteréhokoli z předcházejících nároků, 
   <b>vyznačující se tím</b>, že krok sledování pracovního stavu je provedený zvukovým senzorem zaznamenávajícím zvukový signál během kroku provedení pracovní operace pro povrchovou úpravu dílu (7).
  </claim-text>
    </claim>
    <claim num="8">
      <claim-text>Systém pro provádění způsobu podle kteréhokoli z předcházejících nároků 1 až 7, 
   <b>vyznačující se tím</b>, že zahrnuje senzorickou jednotku (1) a řídicí jednotku (2) komunikačně spojenou se senzorickou jednotkou (1) a uzpůsobenou pro ovládání senzorické jednotky (1), přičemž senzorická jednotka (1) zahrnuje:
   <br/>  -  upevňovací element (11) pro upevnění k ručnímu pracovnímu nástroji (6),
   <br/>  -  inerciální senzor (8) pro zaznamenávání zrychlení a úhlové rychlosti v čase,
   <br/>  -  alespoň jednu kameru (9) pro zaznamenávání vizuálních snímků okolního prostředí v různých časových bodech a
   <br/>  -  senzor (10) pracovního stavu pro sledování pracovního stavu ručního pracovního nástroje (6), přičemž senzor (10) pracovního stavu poskytuje informaci o tom, zda je ruční pracovní nástroj (6) spuštěný,
   <br/>přičemž systém dále zahrnuje modul (3) pro zpracování dat uzpůsobený pro přijetí dat z inerciálního senzoru (8), alespoň jedné kamery (9) a senzoru (10) pracovního stavu a také kalibračních dat obsahujících informace o vzájemném prostorovém vztahu mezi referenčními souřadnými systémy senzorické jednotky (1), ručního pracovního nástroje (6), stacionárního robota (5) a dílu (7), přičemž modul (3) pro zpracování dat zahrnuje generátor (23) instrukcí zahrnující rozhraní pro generování instrukcí pro stacionárního robota (5) v programovacím jazyce alespoň jednoho výrobce stacionárních robotů (5).
  </claim-text>
    </claim>
    <claim num="9">
      <claim-text>Systém podle nároku 8, 
   <b>vyznačující </b>
        <b>se tím</b>, že dále zahrnuje alespoň jeden první kalibrační přípravek (26) s alespoň jedním kalibračním otvorem a sadou unikátních prvních vizuálních značek, přičemž vzájemné polohy prvních vizuálních značek vůči každému kalibračnímu otvoru jsou známé a přičemž alespoň jeden kalibrační otvor je tvarově uzpůsobený pro přijetí ručního pracovního nástroje (6) pouze v jedné konkrétní poloze a orientaci a alespoň jeden kalibrační otvor je tvarově uzpůsobený pro přijetí robotického pracovního nástroje (25) pouze v jedné konkrétní poloze a orientaci, přičemž systém dále zahrnuje druhý kalibrační přípravek (27) zahrnující unikátní druhou vizuální značku, přičemž vzájemná poloha druhého kalibračního přípravku (27) a dílu (7) je pevná.
  </claim-text>
    </claim>
    <claim num="10">
      <claim-text>Systém podle kteréhokoli z předcházejících nároků 8 až 9,
   <b> </b>
        <b>vyznačující se tím</b>, že senzorem (10) pracovního stavu je zvukový senzor.
  </claim-text>
    </claim>
    <claim num="11">
      <claim-text>Systém podle kteréhokoli z předcházejících nároků 8 až 10, 
   <b>vyznačující se tím</b>, že řídicí jednotka (2) zahrnuje mikropočítač (13) pro ovládání senzorické jednotky (1), paměť (14) pro ukládání dat ze senzorické jednotky (1) a komunikační modul (15) pro komunikační spojení s modulem (3) pro zpracování dat.
  </claim-text>
    </claim>
    <claim num="12">
      <claim-text>Systém podle kteréhokoli z předcházejících nároků 8 až 11, 
   <b>vyznačující se tím</b>, že dále zahrnuje vzdálený server (21) komunikačně spojený s řídicí jednotkou (2), přičemž modul (3) pro zpracování dat je součástí vzdáleného serveru (21).
  </claim-text>
    </claim>
    <claim num="13">
      <claim-text>Systém podle kteréhokoli z předcházejících nároků 8 až 12, 
   <b>vyznačující se tím</b>, že dále zahrnuje uživatelské rozhraní modulu (3) pro zpracování dat pro nakonfigurování generátoru (23) instrukcí a také přístupové zařízení (4) pro přístup k uživatelskému rozhraní modulu (3) pro zpracování dat, přičemž uživatelské rozhraní modulu (3) pro zpracování dat je komunikačně spojené s modulem (3) pro zpracování dat.
  </claim-text>
    </claim>
  </claims>
  <drawings id="draw">
    <figure num="1">
      <img file="2423446img0001.jpg" img-content="drawing" img-format="jpg" wi="600" he="761"/>
    </figure>
    <figure num="2">
      <img file="2423446img0002.jpg" img-content="drawing" img-format="jpg" wi="600" he="726"/>
    </figure>
    <figure num="3">
      <img file="2423446img0003.jpg" img-content="drawing" img-format="jpg" wi="455" he="800"/>
    </figure>
  </drawings>
</ep-patent-document>
