[go: up one dir, main page]

CZ2023384A3 - Method of generating instructions for a stationary robot and system for implementing this method - Google Patents

Method of generating instructions for a stationary robot and system for implementing this method Download PDF

Info

Publication number
CZ2023384A3
CZ2023384A3 CZ2023-384A CZ2023384A CZ2023384A3 CZ 2023384 A3 CZ2023384 A3 CZ 2023384A3 CZ 2023384 A CZ2023384 A CZ 2023384A CZ 2023384 A3 CZ2023384 A3 CZ 2023384A3
Authority
CZ
Czechia
Prior art keywords
calibration
data processing
sensor unit
data
hand
Prior art date
Application number
CZ2023-384A
Other languages
Czech (cs)
Inventor
Megi Mejdrechová
Original Assignee
Robotwin S.R.O.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robotwin S.R.O. filed Critical Robotwin S.R.O.
Priority to CZ2023-384A priority Critical patent/CZ2023384A3/en
Priority to PCT/CZ2024/050063 priority patent/WO2025077953A1/en
Publication of CZ2023384A3 publication Critical patent/CZ2023384A3/en

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B05SPRAYING OR ATOMISING IN GENERAL; APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05BSPRAYING APPARATUS; ATOMISING APPARATUS; NOZZLES
    • B05B3/00Spraying or sprinkling apparatus with moving outlet elements or moving deflecting elements
    • B05B3/02Spraying or sprinkling apparatus with moving outlet elements or moving deflecting elements with rotating elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B05SPRAYING OR ATOMISING IN GENERAL; APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05BSPRAYING APPARATUS; ATOMISING APPARATUS; NOZZLES
    • B05B13/00Machines or plants for applying liquids or other fluent materials to surfaces of objects or other work by spraying, not covered by groups B05B1/00 - B05B11/00
    • B05B13/02Means for supporting work; Arrangement or mounting of spray heads; Adaptation or arrangement of means for feeding work
    • B05B13/04Means for supporting work; Arrangement or mounting of spray heads; Adaptation or arrangement of means for feeding work the spray heads being moved during spraying operation
    • B05B13/0431Means for supporting work; Arrangement or mounting of spray heads; Adaptation or arrangement of means for feeding work the spray heads being moved during spraying operation with spray heads moved by robots or articulated arms, e.g. for applying liquid or other fluent material to three-dimensional [3D] surfaces
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/408Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
    • G05B19/4086Coordinate conversions; Other special calculations
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/409Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by using manual data input [MDI] or by using control panel, e.g. controlling functions with the panel; characterised by control panel details or by setting parameters
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4148Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by using several processors for different functions, distributed (real-time) systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41805Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by assembly
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36184Record actions of human expert, teach by showing
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36436Arm follows movement of handheld device, camera detects, analyses motion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36442Automatically teaching, teach by showing
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40391Human to robot skill transfer

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Human Computer Interaction (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Manipulator (AREA)

Abstract

Předmětem vynálezu je způsob generování instrukcí pro stacionárního robota (5) zahrnující kroky: - provedení pracovní operace pro povrchovou úpravu dílu (7) pomocí ručního pracovního nástroje (6) s upevněnou senzorickou jednotkou (1), - sledování polohy a orientace ručního pracovního nástroje (6) senzorickou jednotkou (1) během kroku provedení pracovní operace, - sledování pracovního stavu ručního pracovního nástroje (6) senzorem (10) pracovního stavu během kroku provedení pracovní operace, - 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 - 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). Předmětem vynálezu je také systém pro provádění tohoto způsobu.The subject of the invention is a method of generating instructions for a stationary robot (5) comprising the steps of: - performing a work operation for surface treatment of a part (7) using a hand-held work tool (6) with a mounted sensor unit (1), - monitoring the position and orientation of the hand-held work tool (6) by the sensor unit (1) during the step of performing the work operation, - monitoring the working state of the hand-held work tool (6) by the working state sensor (10) during the step of performing the work operation, - providing calibration data to the data processing module (3), wherein the calibration data provided to the data processing module (3) includes information about the mutual spatial relationship between the reference coordinate systems of the sensor unit (1), the hand-held work tool (6), the stationary robot (5) and the part (7), and - processing data by the data processing module (3), wherein the data processing step includes the step of generating instructions for the stationary robot (5) in the programming language of at least one manufacturer of stationary robots (5). The subject of the invention is also a system for performing this method.

Description

Způsob generování instrukcí pro stacionárního robota a systém pro provádění tohoto způsobuMethod of generating instructions for a stationary robot and system for implementing this method

Oblast technikyTechnical area

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.The present invention relates to a method and system for generating instructions for a stationary robot based on a demonstration of a work operation for surface treatment of a part. More specifically, the invention relates to generating instructions, e.g., for a painting robot.

Dosavadní stav technikyState of the art

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é.Currently, there are solutions for automating a work operation, e.g. industrial painting, using industrial robots. For example, various demonstrators are used for automation, with which the user demonstrates the movement performed for the relevant operation and, based on recording this demonstrated movement, the robot is programmed to copy this movement during the subsequent automated operation. However, this demonstrator is typically not a real work tool and thus does not allow capturing all the essential characteristics of the work operation. Available solutions are also often unable to generate robotic instructions for various industrial robots, or for industrial robots from different manufacturers, because different manufacturers use different programming languages for programming robots. Such solutions are then applicable only for one given robot, but not for robots from other manufacturers, which is disadvantageous.

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í.It would therefore be desirable to come up with a solution that would allow the actual performance of a work operation to be recorded in such a way that all essential characteristics of this work operation are captured, and that would allow the generation of a robotic program executable by a specific industrial robot. The generated program should include not only movement instructions, i.e. information about the trajectory along which the robotic work tool should move, but also other instructions for controlling the robotic work tool, e.g. when the robotic work tool should perform a work operation and when not, i.e. e.g. when the robot paint gun should be triggered. The required solution should also allow the performed work operation to be recorded sufficiently accurately and reliably so that the automated work operation qualitatively corresponds to the manually performed work operation. At the same time, the recording of the performed work operation should not affect the course of this work operation or in any way limit the user who performs this work operation.

Podstata vynálezuThe essence of the invention

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:The above shortcomings are to some extent eliminated by the method of generating instructions for a stationary robot based on a demonstration of a work operation for surface treatment of a part, the essence of which is that it includes the steps:

- provedení pracovní operace pro povrchovou úpravu dílu pomocí ručního pracovního nástroje s upevněnou senzorickou jednotkou,- performing a work operation for surface treatment of a part using a hand-held working tool with a mounted sensor unit,

- 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,- monitoring the position and orientation of the hand-held work tool by a sensor unit during the step of performing a work operation for surface treatment of the part, wherein the step of monitoring the position and orientation of the hand-held work tool includes a step of recording acceleration and angular velocity over time by an inertial sensor and a step of recording visual images of the surrounding environment at different points in time by at least one camera,

- 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ý,- monitoring the working state of the hand-held working tool by a working state sensor during the step of performing a working operation for surface treatment of the part, wherein the working state sensor provides information about whether the hand-held working tool is started,

- 1 CZ 2023 - 384 A3- 1 CZ 2023 - 384 A3

- 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- providing calibration data to the data processing module, the calibration data provided to the data processing module including information about the mutual spatial relationship between the reference coordinate systems of the sensor unit, the hand-held work tool, the stationary robot and the part, and

- 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ů.- processing data from the inertial sensor, at least one camera and the working condition sensor as well as calibration data by a data processing module, wherein the data processing step includes a step of generating instructions for the stationary robot in a programming language of at least one stationary robot manufacturer.

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.The above method allows generating an executable robot program (instructions) for a stationary robot of various manufacturers in such a way that this program contains all the essential characteristics of the work operation for the surface treatment of the part. The work operation is monitored with high accuracy and reliability, while recording the work operation using a sensor unit attached to the hand-held working tool does not affect the course of the work operation performed in this way or limit the person who manipulates the hand-held working tool in any way. The work operation for the surface treatment of the part can be, for example, industrial painting (wet or powder), but also grinding, polishing, chamfering, blasting, etc. The work operation for the surface treatment of the part can also be quality control performed in connection with the surface treatment, i.e., for example, quality control of the painted part.

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í.The term stationary robot is well-established in this field of technology and refers to a robot that cannot move from place to place by its own means. A stationary robot can be primarily an industrial robot, e.g. a painting robot, or a collaborative robot. Alternatively, a stationary robot can be attached to an external mechanism adding an additional degree of freedom, e.g. a rail conveyor. The generated instructions can then also contain instructions for controlling this additional mechanism. The generated instructions can also be used not only for a real stationary robot, but also for a virtual stationary robot, i.e. for its so-called digital twin. This can be used for simulation purposes.

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.A hand-held work tool is an actual work tool that enables the performance of the required work operation for the surface treatment of a part. For example, if the work operation for the surface treatment of a part is industrial painting, this hand-held work tool is a hand-held paint spray gun.

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.The monitoring of the position and orientation (i.e. rotation) of the hand-held working tool by the sensor unit is realized by the combined use of an inertial sensor and at least one camera, and to increase the accuracy, multiple cameras can also be used. The camera together with the inertial sensor can be collectively referred to as a tracking camera, and it is worth mentioning that its output is data with six degrees of freedom, specifically the position of the tracking camera in time in three spatial axes and the orientation of the tracking camera in time in three spatial axes. I.e. position and orientation data in its reference coordinate system. Given that the sensor unit is attached to the hand-held working tool and given that this recorded data is then transformed using calibration data, it can be said that the position and orientation of the hand-held working tool is monitored by the sensor unit, as mentioned above. To calculate position and orientation from data recorded by sensors (from acceleration in three spatial axes in time and angular velocity in three spatial axes in time), the tracking camera may include its own computing unit.

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íchThe computing unit of the tracking camera advantageously includes a detection module for detecting visual elements in the camera images. These visual elements are, for example, various visually significant points of the surrounding environment, e.g. corners or edges visible in the images. The detection of visual elements is advantageous primarily because it reduces the number of points that need to be taken into account by an order of magnitude, typically from thousands of pixels (depending on the camera resolution) to a few hundred visual elements. Each visual element is labeled, spatially mapped and arranged in a vector of visual elements.

- 2 CZ 2023 - 384 A3 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.- 2 CZ 2023 - 384 A3 elements. After taking a new image, the detection module compares the newly marked elements arranged in the newly constructed vector of visual elements and calculates the change in position based on this comparison.

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.Alternatively, the position and orientation from the recorded data can be calculated elsewhere than in the tracking camera, e.g. by a microcomputer in the control unit or by a data processing module that may be part of a remote server.

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.Alternatively, the output of the tracking camera may be only acceleration over time, angular velocity over time, and visual images, while the actual calculation of position and orientation may be performed subsequently, e.g. using a microcomputer in the control unit or using a data processing module.

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.In addition to a three-axis accelerometer for recording acceleration and a three-axis gyroscope for recording angular velocity, the sensor unit may advantageously also include a magnetometer, thanks to which it is possible to more accurately calculate position and orientation.

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.The step of monitoring the position and orientation of the hand-held work tool is performed concurrently with the step of monitoring the working state of the hand-held work tool, which is performed using a working state sensor. The working state sensor provides information about whether the hand-held work tool is started. The working state sensor can thus, for example, provide a signal, the analysis of which can be used to obtain the desired working state of the hand-held work tool. This analysis can be a comparison of the values of the measured signal with predetermined threshold values. The analysis of this signal to obtain the working state can be performed, for example, by a data processing module. Alternatively, this analysis can be performed, for example, by a microcomputer in the control unit or by the working state sensor's own computing unit, or by another computing unit. In addition to determining the working state, other information can also be determined from the working state sensor signal, for example, about what specific activity of the given work operation was performed at a certain time, etc.

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.After the completion of the work operation step, the recorded data from the inertial sensor, camera and working condition sensor are sent to the data processing module. Alternatively, the recorded data can also be sent to the data processing module continuously. Calibration data that needs to be provided to this module is also sent to the data processing module.

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 Tgc, Tcp a Trp. Alternativně však mohou být tyto informace zapsány také v jiné matematické formě.The calibration data provided preferably includes at least information about the mutual spatial relationship between the reference coordinate system G of the hand-held work tool and the reference coordinate system C of the sensor unit, information about the mutual spatial relationship between the reference coordinate system C of the sensor unit and the reference coordinate system P of the part, and information about the mutual spatial relationship between the reference coordinate system R of the stationary robot and the reference coordinate system P of the part. The information about the mutual spatial relationship (in other words, transformation relationships) between the respective reference coordinate systems serves for the transformation between these coordinate systems and can be preferably written in the form of transformation matrices. The calibration data provided therefore preferably includes at least the transformation matrices Tgc, Tcp and Trp. Alternatively, however, this information can also be written in another mathematical form.

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.To obtain calibration data, which is provided to the data processing module, the method preferably includes the step of performing a calibration measurement. Preferably, the calibration data is measured, but in general it can be determined in another way and provided to the data processing module. The calibration measurement can be performed at various stages of the method, with at least part of the calibration being performed at the beginning, during, or at the end of the position and orientation tracking step, when the recording of position and orientation data is still active and the data recording has not been restarted.

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,For the calibration measurement step, unique visual markers are advantageously used, with information about the spatial relationship between the reference coordinate systems G and C,

- 3 CZ 2023 - 384 A3 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.- 3 CZ 2023 - 384 A3 information about the mutual spatial relationship between the reference coordinate systems C and P, information about the mutual spatial relationship between the reference coordinate systems R and P, and in addition also information about the mutual spatial relationship between the reference coordinate systems C and R, are obtained based on the detection of visual marks by at least one camera and on the basis of determining the relative orientation of the sensory unit to the visual marks. The uniqueness of visual marks lies in the fact that each visual mark contains its identifier to distinguish it from other visual marks. Therefore, when the camera detects a visual mark, it can identify which visual mark it is and combine this information with information about its location. This visual mark can be, for example, a QR code.

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é.Preferably, the calibration measurement step includes four calibration parts that, in addition to the visual marks, also use calibration fixtures. Specifically, at least one first calibration fixture with at least one calibration hole and a set of unique first visual marks and also a second calibration fixture including a unique second visual mark is provided for the calibration measurement, wherein the relative position of the second calibration fixture and the part is fixed. The second calibration fixture may be located on, for example, a frame on which the part is suspended. The relative positions of the first visual marks relative to each calibration hole are known.

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.At least one calibration aperture is shaped to receive a hand-held tool in only one particular position and orientation, and at least one calibration aperture is shaped to receive a robotic tool in only one particular position and orientation. In other words, the calibration aperture together with the hand-held tool and the robotic tool, respectively, function on a lock and key basis. The first calibration fixture may include multiple calibration apertures, e.g., two calibration apertures, one of which is shaped to receive a hand-held tool and the other is shaped to receive a robotic tool. Alternatively, however, the first calibration element may include only one calibration aperture, and this is adapted to receive both a hand-held and a robotic tool sequentially. Alternatively, two first calibration fixtures may be provided, one of which is adapted to receive a hand-held tool and the other to receive a robotic tool.

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:The step of performing a calibration measurement using visual markers includes the following four parts, with the first part including the steps:

- 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,- inserting a hand-held working tool with a mounted sensor unit into the calibration hole of the first calibration fixture,

- zaznamenání informace o poloze a orientaci pomocí senzorické jednotky,- recording information about position and orientation using a sensory unit,

- detekování jednotlivých prvních vizuálních značek pomocí kamery,- detecting individual first visual marks using a camera,

- určení relativní polohy a orientace senzorické jednotky vůči jednotlivým prvním vizuálním značkám.- determining the relative position and orientation of the sensory unit with respect to the individual first visual markers.

- 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.- obtaining information about the spatial relationship between the reference coordinate system G of the hand-held working tool and the reference coordinate system C of the sensory unit.

Druhá část kalibrace zahrnuje kroky:The second part of the calibration includes the steps:

- navedení robotického pracovního nástroje s upevněnou senzorickou jednotkou do kalibračního otvoru prvního kalibračního přípravku,- guiding the robotic working tool with the attached sensor unit into the calibration hole of the first calibration fixture,

- zaznamenání informace o poloze a orientaci pomocí senzorické jednotky,- recording information about position and orientation using a sensory unit,

- detekování jednotlivých prvních vizuálních značek pomocí kamery,- detecting individual first visual marks using a camera,

- 4 CZ 2023 - 384 A3- 4 CZ 2023 - 384 A3

- určení relativní polohy a orientace senzorické jednotky vůči jednotlivým prvním vizuálním značkám a- determining the relative position and orientation of the sensory unit with respect to individual first visual markers and

- 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.- obtaining information about the spatial relationship between the reference coordinate system C of the sensor unit and the reference coordinate system R of the stationary robot.

Třetí část kalibrace zahrnuje kroky:The third part of the calibration includes the steps:

- 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,- approaching the hand-held working tool with the mounted sensor unit to the second calibration fixture with the second visual mark,

- zaznamenání informace o poloze a orientaci pomocí senzorické jednotky,- recording information about position and orientation using a sensory unit,

- detekování druhé vizuální značky pomocí kamery,- detecting a second visual mark using a camera,

- určení relativní polohy a orientace senzorické jednotky vůči druhé vizuální značce a- determining the relative position and orientation of the sensory unit with respect to the second visual mark and

- 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.- obtaining information about the spatial relationship between the reference coordinate system C of the sensory unit and the reference coordinate system P of the part using information about the spatial relationship between the reference coordinate system G of the hand-held working tool and the reference coordinate system C of the sensory unit.

Čtvrtá část kalibrace zahrnuje kroky:The fourth part of the calibration includes the steps:

- 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,- approaching the robotic working tool with the mounted sensor unit to the second calibration fixture with the second visual mark,

- zaznamenání informace o poloze a orientaci pomocí senzorické jednotky,- recording information about position and orientation using a sensory unit,

- detekování druhé vizuální značky pomocí kamery,- detecting a second visual mark using a camera,

- určení relativní polohy a orientace senzorické jednotky vůči druhé vizuální značce a- determining the relative position and orientation of the sensory unit with respect to the second visual mark and

- 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.- obtaining information about the spatial relationship between the reference coordinate system R of the stationary robot and the reference coordinate system P of the part using information about the spatial relationship between the reference coordinate system C of the sensor unit and the reference coordinate system R of the stationary robot.

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.The first and third parts of the calibration (i.e. calibration using a manual working tool) are performed before, during, or at the end of the position and orientation tracking step, when the recording of position and orientation data is still active and the data recording has not been restarted. The second and fourth parts of the calibration (i.e. calibration using a robotic working tool) can be performed at any time. The order of the individual parts of the calibration does not have to be fixed and, for example, the last steps of the sub-parts of the calibration (obtaining information about the spatial relationship, i.e. specifically, e.g. the construction of the relevant transformation matrices) can be performed later. Similarly, the steps of determining the relative position and orientation of the sensory unit with respect to the visual marks can also be performed (calculated) subsequently and the physical manipulation required for the given part of the calibration ends with the detection of the relevant visual mark and the recording of the position and rotation information using the sensory unit.

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.An additional sensor unit may be used for the second and fourth parts of the calibration. Alternatively, one sensor unit may be used for the entire calibration and may be transferred between the manual work tool and the robotic work tool to perform individual parts of the calibration. To record position and orientation information using the sensor unit, the user may signal the control unit via the user interface of the sensor unit, alternatively via the user interface of the control unit.

- 5 CZ 2023 - 384 A3- 5 CZ 2023 - 384 A3

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.Alternatively, the calibration measurement can be performed on a purely mechanical principle, but the calibration process using visual marks is easier, faster, and thanks to the contactless (optical) detection of visual marks, also more accurate, as there is no risk of the part shifting from its rest position when pushed by a manual working tool or a robotic working tool into the calibration fixture, which is attached, for example, to the frame on which the part is suspended. At the same time, the risk of incorrect insertion of the working tool into the calibration hole caused by human error is eliminated.

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.This alternative calibration method is presented below, and this mechanical calibration involves only three parts, as it is not necessary to perform a part analogous to the second part of the optical calibration described above.

První část mechanické kalibrace:The first part of the mechanical calibration:

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.The calibration of the sensor unit with respect to the hand tool is carried out using a calibration fixture in the shape of a cube with defined holes located on the individual walls of the cube, which, by the principle of a mechanical lock and key, allow the user to insert the tip of the hand tool into them in exactly one defined way, i.e. with a specific position and orientation. The mutual positions of these holes are defined and known. During this part of the calibration, the user gradually inserts the tip of the hand tool with the attached sensor unit into the individual holes in a defined order and at the moment when the hand tool is correctly positioned, the user gives, e.g. using the user interface of the sensor unit, a signal to the control unit to store information about the position and orientation provided by the sensor unit. From the known definition of the geometry of this calibration fixture and the information about the position and orientation from the sensor unit stored during this part of the calibration, information about the spatial relationship between the reference coordinate system G of the hand tool and the reference coordinate system C of the sensor unit is subsequently obtained. Specifically, the appropriate transformation matrix can be constructed.

Druhá část mechanické kalibrace:The second part of mechanical calibration:

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.Next, the user calibrates the reference coordinate system C of the sensor unit with the reference coordinate system P of the part. This part of the calibration is performed using a calibration fixture that contains a hole that, using the principle of a mechanical lock and key, allows the user to insert the tip of the hand-held working tool into it in exactly one defined way, i.e. with a specific position and orientation. The mutual position of this calibration fixture and the part is fixed, but does not have to be known. However, it must remain unchanged during the recording of the work operation and during the third part of the mechanical calibration (stationary robot - part). The user calibrates by inserting the hand-held working tool into the hole of the calibration element and giving a signal to the control unit to store the data on the position and orientation that the sensor unit provides at that moment. From this data, together with the data obtained from the calibration of the sensor unit with respect to the hand-held working tool (the first part of the mechanical calibration), information is subsequently obtained about the spatial relationship between the reference coordinate system G of the hand-held working tool and the reference coordinate system P of the part. Specifically, the appropriate transformation matrix can be constructed. This part of the calibration is performed at the beginning of each demonstration of the work operation for which the user wants to generate a robot program.

Třetí část mechanické kalibrace:The third part of mechanical calibration:

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 kalibraceCalibration of the reference coordinate system R of the stationary robot with respect to the reference coordinate system P of the part is performed using a calibration fixture that contains a hole that, by the principle of a mechanical lock and key, allows the tip of the robotic working tool to be inserted into it in exactly one defined way, i.e. with a specific position and orientation. The mutual position of this calibration fixture and the part is fixed, but does not have to be known. However, it must remain unchanged during the recording of the work operation and during calibration.

- 6 CZ 2023 - 384 A3 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.- 6 CZ 2023 - 384 A3 of the stationary robot relative to the part. The user performs the calibration by using the stationary robot controller to guide the robotic working tool into the opening of this calibration element and using the robot controller to note the position and orientation of the robotic working tool in the reference coordinate system R of the stationary robot. A transformation matrix defining the spatial relationship between the reference coordinate system R of the stationary robot and the reference coordinate system P of the part is then constructed from this data, i.e. information is obtained about the mutual spatial relationship of the reference coordinate systems R and P. This part of the calibration needs to be performed only once, provided that the part for which the robotic instructions are generated will subsequently always be located in the same place relative to the stationary robot, which will execute the generated robotic program on it.

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.The step of generating instructions for a stationary robot is preferably performed by an instruction generator containing information on the syntax, semantics, required structure and format of instructions for a stationary robot of at least one stationary robot manufacturer, wherein the instructions are written by the instruction generator in the required structure and format based on the information on the syntax and semantics and contain keywords and argument values that are the result of the data processing step by the data processing module. These argument values are the resulting position and orientation coordinates in the reference coordinate system R of the stationary robot, which are the result of the data processing steps that precede the step of generating instructions. Alternatively, the resulting position and orientation coordinates can be expressed in another user coordinate system, which however has a fixed and known transformation to the reference coordinate system R of the stationary robot. In such a case, the user must provide this transformation as an additional input to the data processing module, and therefore to the instruction generator. Alternatively, these argument values can be the resulting position and orientation coordinates, which can be modified. For example, so that the generated instructions lead to the execution of an automated operation, for example, faster or slower than was performed by a manual working tool when tracking position and orientation.

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.The data processing step by the data processing module further prior to the step of generating instructions for the stationary robot preferably includes a data filtering step, a data time synchronization step, a dynamic subsampling step and a step of applying a spatial transformation based on the provided calibration data. However, the data processing step may alternatively include all of these steps - the steps of time synchronization and applying a spatial transformation based on the provided calibration data are nevertheless essential for proper operation. Specifically, applying a spatial transformation consists in multiplying the calibration matrices to obtain a resulting transformation relationship. This resulting transformation relationship allows the measured data to be transformed into the reference coordinate system of the stationary robot so that instructions can subsequently be generated which, according to the convention of the programming language of the stationary robot, are expected to be expressed in the coordinate system of the robot.

Č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.Time synchronization is used to synchronize the measured data, i.e. data from the inertial sensor, camera and working condition sensor. This ensures that a certain image from the camera corresponds to the same moment at which the signal was recorded by the working condition sensor and the inertial sensor.

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.Dynamic subsampling allows you to generate a robot program with a sufficiently low number of robot instructions to be easy for the user to read, understand, and edit, while capturing all the significant elements of the recorded work operation so that it can be replicated with sufficient quality by a stationary robot.

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éThe step of monitoring the working state is preferably performed by an audio sensor recording an audio signal during the step of performing a work operation for surface treatment of the part. The audio signal can be analyzed, for example, by a working state computing unit, but can also be analyzed, for example, by a microcomputer in the control unit or by a data processing module. In addition to the information itself about the working state, it is also possible to obtain, for example, from the analysis of the audio signal

- 7 CZ 2023 - 384 A3 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á.- 7 CZ 2023 - 384 A3 information about which sub-activity of a given work operation was performed at a given time, if these sub-activities differ in the sound they produce.

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:The above-mentioned shortcomings are also to some extent eliminated by the system for performing the method according to the present invention, the essence of which consists in that it includes a sensor unit and a control unit communicatively connected to the sensor unit and adapted to control the sensor unit, the sensor unit comprising:

- upevňovací element pro upevnění k ručnímu pracovnímu nástroji,- fastening element for attachment to a hand-held working tool,

- inerciální senzor pro zaznamenávání zrychlení a úhlové rychlosti v čase,- inertial sensor for recording acceleration and angular velocity over time,

- alespoň jednu kameru pro zaznamenávání vizuálních snímků okolního prostředí v různých časových bodech a- at least one camera for recording visual images of the surrounding environment at different points in time, and

- 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ř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ů.- a working state sensor for monitoring the working state of the hand-held work tool, the working state sensor providing information about whether the hand-held work tool is started, the system further comprising a data processing module adapted to receive data from the inertial sensor, at least one camera and the working state sensor as well as calibration data containing information about the mutual spatial relationship between the reference coordinate systems of the sensor unit, the hand-held work tool, the stationary robot and the part, the data processing module comprising an instruction generator comprising an interface for generating instructions for the stationary robot in a programming language of at least one stationary robot manufacturer.

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.A communication connection is here understood as a connection that enables data transmission, whether it is realized electrically by means of a cable or wirelessly, e.g. by means of Wi-Fi technology. The control unit and the sensor unit may each contain their own housing, but alternatively they may also be housed in one housing and may thus be part of one additional unit, which is attached to the hand-held working tool by means of a fastening element. As already mentioned above, multiple cameras can be used to achieve better accuracy.

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.The system of the present invention further preferably comprises at least one first calibration fixture with at least one calibration aperture and a set of unique first visual marks, wherein the relative positions of the first visual marks with respect to each calibration aperture are known, and wherein at least one calibration aperture is shaped to receive a manual work tool in only one particular position and orientation, and at least one calibration aperture is shaped to receive a robotic work tool in only one particular position and orientation, and the system further comprises a second calibration fixture comprising a unique second visual mark, wherein the relative position of the second calibration fixture and the part is fixed. These calibration fixtures and visual marks enable advantageous calibration using visual marks that is easier, more accurate, and faster than purely mechanical calibration.

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.The working condition sensor is preferably an acoustic sensor, which allows reliable and sufficiently sensitive detection of the working condition of the hand-held working tool. Alternatively, less preferably, the working condition sensor may also be another sensor operating on a different principle, e.g. a Hall sensor, a flow meter, which e.g. in the painting process can measure the flow of paint through a supply hose, or an ammeter, which can measure the current flowing in the case of powder coating, etc.

Ří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.The control unit preferably includes a microcomputer for controlling the sensor unit and a memory for storing data from the sensor unit and a communication module for communication with the data processing module. This basic arrangement allows for efficient and reliable control of data collection and provision to the data processing module.

- 8 CZ 2023 - 384 A3- 8 CZ 2023 - 384 A3

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.The system further preferably comprises a remote server communicatively coupled to the control unit, wherein the data processing module is preferably part of the remote server. Alternatively, the data processing module may not be part of the remote server and may, for example, be part of a microcomputer of the control unit, which would mean that this microcomputer would perform the relevant data processing steps.

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.The system further preferably includes a user interface of the data processing module for configuring the instruction generator and also an access device for accessing the user interface of the data processing module, wherein the user interface of the data processing module is communicatively connected to the data processing module. This user interface of the data processing module allows the user to configure the details of how the instructions for the stationary robot are to be generated, and also allows the generated instructions to be subsequently downloaded. Using this interface, for example, it is possible to select data to be processed, configure data processing parameters (e.g. dynamic subsampling, etc.) or select the type (manufacturer) of the stationary robot. This user interface of the data processing module may preferably be a web interface that is part of a remote server. The access device may be, for example, a computer, a mobile phone or other device with access to the web. Alternatively, the user interface of the data processing module may not be designed as a web interface, but may be any other suitable interface, e.g. a device with appropriate controls.

Objasnění výkresůClarification of drawings

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 na:The essence of the invention is further explained by examples of its implementation, which are described using the attached drawings, where:

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, 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 obr. 3 je schematicky znázorněn diagram způsobu podle prvního příkladného provedení předkládaného vynálezu.Fig. 1 schematically shows the system according to the present invention in connection with a stationary robot and with emphasis on the arrangement of the sensor unit and the control unit, Fig. 2 schematically shows the system according to the present invention in connection with a stationary robot, with an indication of the calibration and with emphasis on the arrangement of the remote server and Fig. 3 schematically shows a diagram of the method according to the first exemplary embodiment of the present invention.

Příklady uskutečnění vynálezuExamples of implementation of the invention

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.The invention will be further explained by way of example with reference to the accompanying drawings. First, an exemplary embodiment of a system by which the method of generating instructions according to the present invention can be implemented will be described in detail, and then the individual steps of this method will be described.

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.The system for carrying out the method according to the present invention in the first exemplary embodiment comprises a sensor unit 1, a control unit 2 communicatively connected to the sensor unit 1 and adapted to control the sensor unit 1, and also a remote server 21, which includes a data processing module 3. The remote server 21 containing the data processing module 3 is communicatively connected to the control unit 2, this communication connection being provided by a communication module 15 in the control unit 2, as will be described in more detail below when describing the arrangement of the control unit 2 in the first exemplary embodiment of the system.

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ímuAs schematically shown in Fig. 1, the sensor unit 1 in the first exemplary embodiment includes an inertial sensor 8, a camera 9, a working state sensor 10, a fastening element 11 for fastening the sensor unit 1 to a hand-held working tool 6 and an attachment 12. For example, the sensor unit 1 is formed by a housing for storing individual components, while the attachment 12 is connected to this housing and includes a fastening element 11 for fastening to a hand-held working tool.

- 9 CZ 2023 - 384 A3 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ů.- 9 CZ 2023 - 384 A3 tool 6. For example, the fastening element 11 is shaped for attachment to the hand-held working tool 6, i.e. in this embodiment it is possible to fasten the sensor unit 1 to the hand-held working tool 6 even without using screws.

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.The sensor unit 1, after being attached to the hand-held working tool 6, enables monitoring of the behavior of the hand-held working tool 6, specifically monitoring of the position and orientation (i.e. rotation) of the hand-held working tool 6 and also monitoring of the working state of the hand-held working tool 6.

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.The tracking of the position and orientation of the hand-held working tool 6 is realized by the combined use of the inertial sensor 8 and the camera 9, in other words, using the data recorded by the inertial sensor 8 and the visual images from the camera 9. In the described first exemplary embodiment of the system, the inertial sensor 8 is an inertial measurement unit (IMU), which includes a three-axis accelerometer and a three-axis gyroscope. The three-axis accelerometer records acceleration values over time in three spatial axes, and the three-axis gyroscope records angular velocity values over time in three spatial axes. The camera 9 is a stereo camera in the described first exemplary embodiment, and this camera 9 records visual images of the surrounding environment at different points in time, i.e. it provides images with a time stamp.

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.The camera 9 together with the inertial sensor 8 can be collectively referred to as a so-called tracking (or monitoring) camera, and in the first exemplary embodiment the tracking camera includes its own computing unit (not shown in the figures) for calculating the position and orientation of its reference coordinate system (i.e. the reference coordinate system C of the sensor unit 1) in time. This basically tracks the position and orientation of the hand-held working tool 6 (to which the sensor unit 1 is attached), although a transformation using calibration data must still be applied to convert the position and orientation of the tracking camera to the position and orientation of the hand-held working tool 6, as will be discussed below.

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.The position and orientation of the tracking camera is calculated from the data of the inertial sensor 8 and the camera 9, i.e. from the recorded values of acceleration over time in three spatial axes, angular velocity over time in three spatial axes and based on visual elements detected in the visual images from the camera 9. To detect visual elements, the computing unit of the tracking camera includes a detection module, which means that an algorithm detecting visual elements is applied to the images from the camera 9. These visual elements are, for example, various visually significant points of the surrounding environment, e.g. corners or edges visible in the images. The detection of visual elements is advantageous primarily because the number of points that need to be taken into account is reduced by an order of magnitude, typically from thousands of pixels (depending on the resolution of the camera 9) to a few hundred visual elements. Each visual element is marked, spatially mapped and arranged in a vector of visual elements. After taking a new image, the detection module compares the newly marked features arranged in the newly constructed vector of visual features and calculates the position change based on this comparison.

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.The above-described procedure is known as V-SLAM (Visual Simultaneous Localization and Mapping) technology, and the output of the computing unit of the tracking camera performing V-SLAM is data with six degrees of freedom, namely the position of the tracking camera in time in three spatial axes and the orientation of the tracking camera in time in three spatial axes. In the first embodiment described, the data from the motion sensor 8 and the camera 9 are fed to the data processing module 3 already in this combined and recalculated form, i.e. as position and orientation in time in three spatial axes. In other words, V-SLAM is used to calculate the position and orientation of the tracking camera in time, and indirectly, therefore, to track the position and orientation of the hand-held working tool 6 in the environment that is mapped using the camera 9. Commercially available tracking cameras can be used for these purposes.

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 krokuAs mentioned above, in addition to the inertial sensor 8, the sensor unit 1 also includes a working state sensor 10, which in the first exemplary embodiment described is a sound sensor (or microphone). The sound sensor serves to record an audio signal during a step

- 10 CZ 2023 - 384 A3 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.- 10 CZ 2023 - 384 A3 performing a work operation for surface treatment of the part 7, wherein this step of performing a work operation for surface treatment of the part 7 is performed using a hand-held work tool 6 with an attached sensor unit 1, as will also be described below when describing the method according to the present invention.

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.In the first exemplary embodiment, as indicated in Fig. 2, the hand-held working tool 6 is a hand-held paint gun and the working operation for the surface treatment of the part 7 is industrial painting. This means that the working state sensor 10 provides information about whether the hand-held paint gun is triggered, in other words, about whether the hand-held paint gun is currently painting. This information is essential for generating robotic instructions, since it is important for the stationary robot 5 to reproduce not only the movement (position and orientation) of the hand-held working tool 6 during the subsequent automated working operation, but also when the hand-held working tool 6 was triggered, and therefore when the robotic working tool 25 should be triggered.

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á.Specifically, the working state of the hand-held working tool 6 (started/not started) is determined by analyzing this sound signal, which can be performed, for example, by the own computing unit of this working state sensor 10 (not shown in the figures). For example, the computing unit of the working state sensor 10 is adapted to compare the values of the sound signal at different points in time with predetermined threshold values and is also adapted to subsequently determine the working state of the hand-held working tool 6. For example, if the sound signal is higher than a first threshold value, the working state is indicated as started, and if the sound signal is lower than a second threshold value, the working state is indicated as not started. Information about the working state of the hand-held working tool 6 is supplied to the data processing module 3, as will be described further below. In addition to determining the working state, the computing unit of the working state sensor 10 can also calculate other information from the sound signal, e.g. about which sub-activity of a given work operation was performed at a given time, if these sub-activities differ in the sound they produce.

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.In the first exemplary embodiment, the sound sensor is attached to the inner side of the housing of the sensor unit 1, specifically to that inner wall of the housing that is closest to the hand-held working tool 6 to which the sensor unit 1 is attached. The sensor unit 1 further includes a user interface 19 of the sensor unit 1, e.g. control buttons and signaling diodes, which serve to control the sensor unit 1 and/or the control unit 2 and to interact with the control unit 2 during data recording by the sensor unit 1. The function of the user interface 19 of the sensor unit 1 will be discussed in more detail below in the description of the method.

Ří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.The control unit 2 in the first exemplary embodiment of the system, as schematically shown in Fig. 1, includes a microcomputer 13, a memory 14, a communication module 15 for communication connection with a remote server 21, a battery 16 for powering the microcomputer 13, a charging connector 17 for charging the battery 16 and also a connector for electrical connection with the sensor unit 1 via a cable. The individual components are stored in the housing of the control unit 2, which is indicated by a dashed line in Fig. 1. The housing of the control unit 2 is further provided with at least one strap 18, which allows the user to wear the control unit 2 on the body, for example over the shoulder or on the back, and move freely with it. The control unit 2 also further includes a user interface 20 of the control unit, e.g. control buttons and signaling diodes, which serve to control the control unit 2 and/or the sensor unit 1 and to interact with the sensor unit 1 during data recording by the sensor unit 1. The function of the user interface 20 of the control unit 1 will be discussed in more detail below when describing the method.

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 15The microcomputer 13 in the control unit 2 is powered by a battery 16 and further powers and controls other components of the control unit 2 (user interface 20 of the control unit 2, memory 14, communication module 15), but also components of the sensor unit 1. The microcomputer 13 therefore specifically also controls the inertial sensor 8, the camera 9 and the working state sensor 10 and controls the collection (recording, recording) of data and implements their storage in the memory 14 with which it works. The microcomputer 13 also controls the communication module 15, while in the described first exemplary embodiment the communication module 15 is

- 11 CZ 2023 - 384 A3- 11 CZ 2023 - 384 A3

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.The Wi-Fi module and the communication connection of the control unit 2 and the remote server 21 is implemented as a wireless connection using Wi-Fi technology. This is indicated in Fig. 1 or Fig. 2 by a dashed arrow and also by a graphic signal symbol, since the communication connection of the control unit 2 and the remote server 21 serves to transfer data recorded by the sensor unit 1 from the control unit 2 to the remote server 21, the so-called cloud. Thanks to the mutual connection of the control unit 2 and the sensor unit 1, the remote server 21 is therefore indirectly connected to the sensor unit 1 via the control unit 2. In other words, it can also be said that the data recorded by the sensor unit 1 is uploaded to the remote server 21 via the control unit 2.

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.The remote server 21, as schematically shown in Fig. 2, includes in the first exemplary embodiment a storage 22 of uploaded data, a data processing module 3 and a storage 24 of generated instructions. The recorded data is thus transferred to the recorded data storage 22 and is further processed by the data processing module 3, the output of which is instructions for the stationary robot 5. More specifically, the instructions for the stationary robot 5 (or so-called robotic instructions) are an executable program for automated control of the stationary robot 5. Such programs are subsequently stored in the generated instructions storage 24, where they are ready for loading into the stationary robot 5. If the program is loaded into the controller of the stationary robot 5 and run on the stationary robot 5, it implements automated control of the stationary robot 5 in such a way that the robotic working tool 25 on the stationary robot 5 reproduces the required work operation for surface treatment of the part 7, as it was performed by the manual working tool 6 with the attached sensor unit 1.

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.As also schematically shown in Fig. 2, the data processing module 3 comprises an instruction generator 23 comprising an interface for generating instructions in the programming language of at least one manufacturer of stationary robots 5. In addition to the generation of instructions, however, the data processing module 3 is also adapted for further data processing, which is performed using appropriate algorithms before generating instructions. Specifically, the data processing module 3 in the first exemplary embodiment comprises a data filtering module, a data time synchronization module, a dynamic subsampling module and a spatial transformation application module. The significance of these individual further processing steps is discussed in the description of the method below. The data processing module 3 comprises sufficient computing capacity for generating instructions and for performing this further data processing.

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.The input of the data processing module 3, and thus also of the instruction generator 23, is data from the inertial sensor 8 and the camera 9, which in this particular embodiment are already combined data, i.e. the position and orientation in time in three spatial axes. Another input is also data from the working state sensor 10 including information about whether the hand-held working tool 6 is started. Yet another input is calibration data, which includes transformation matrices defining the mutual spatial relationship between the reference coordinate systems of the sensor unit 1, the hand-held working tool 6, the stationary robot 5 and the part 7, as will be described in more detail below. Based on these input data, the instruction generator 23 generates instructions for the stationary robot 5, which will also be described in more detail below in the description of the method.

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.In the first exemplary embodiment, the system includes a user interface of the data processing module and also an access device 4 for accessing this user interface of the data processing module 3. In the first exemplary embodiment, this user interface of the data processing module 3 is a web interface, which is part of the remote server 21 and which allows the user to select data to be processed, configure data processing parameters, e.g. the type (manufacturer) of the stationary robot 5 for which instructions are to be generated, and subsequently download the generated instructions from the remote server 21, specifically from the storage of generated instructions. The access device 4 is therefore communicatively connected to the remote server 21, specifically at least with the generator 23 of instructions and with the storage 24 of generated instructions. The access device 4 is, e.g., a computer, a mobile phone or other device with access to the web.

- 12 CZ 2023 - 384 A3- 12 CZ 2023 - 384 A3

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:The following section will describe in more detail the method of generating instructions, which in a first exemplary embodiment includes the steps:

- provedení kalibračního měření pro získání kalibračních dat,- performing calibration measurements to obtain calibration data,

- provedení pracovní operace pro povrchovou úpravu dílu 7 pomocí ručního pracovního nástroje 6 s upevněnou senzorickou jednotkou 1,- performing a work operation for surface treatment of the part 7 using a hand-held work tool 6 with a mounted sensor unit 1,

- 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,- monitoring the position and orientation of the hand-held working tool 6 by the sensor unit 1 during the step of performing the work operation for surface treatment of the part 7, wherein the step of monitoring the position and orientation of the hand-held working tool 6 includes the step of recording the acceleration and angular velocity over time by the inertial sensor 8 and the step of recording visual images of the surrounding environment at different points in time by the camera 9,

- 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ý,- monitoring the working state of the hand-held working tool 6 by the working state sensor 10 during the step of performing the working operation for the surface treatment of the part 7, wherein the working state sensor 10 provides information about whether the hand-held working tool 6 is started,

- 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- providing calibration data to the data processing module 3, wherein the calibration data provided to the data processing module 3 includes transformation matrices defining the mutual spatial relationship between the reference coordinate systems of the sensor unit 1, the manual work tool 6, the stationary robot 5 and the part 7, and

- 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.- processing data from the inertial sensor 8, the camera 9 and the working condition sensor 10 as well as calibration data by the data processing module 3, wherein the data processing step includes the step of generating instructions for the stationary robot 5 in the programming language of at least one manufacturer of stationary robots 5.

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.First, the calibration measurement will be described, which in the first exemplary embodiment serves to obtain calibration data, specifically to obtain four transformation matrices defining the mutual spatial relationship between the reference coordinate systems of the sensor unit 1, the manual working tool 6, the stationary robot 5 and the part 7.

Nejprve je získána transformační matice Tgc 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).First, the transformation matrix Tgc is obtained, defining the mutual spatial relationship between the reference coordinate system G of the hand-held work tool 6 (denoted by the letter G after the English "gun" for a pistol) and the reference coordinate system C of the sensor unit 1 (denoted by the letter C after the English "camera" for a camera that is part of the sensor unit 1).

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.This first part of the calibration is implemented using a first calibration fixture 26, which includes a shape-defined calibration hole. This calibration hole is adapted for inserting the tip of the hand tool 6 in just one defined way, i.e. with a specific position and a specific orientation of the hand tool 6. In other words, the calibration hole together with the hand tool 6 function on the principle of lock and key. The first calibration fixture 26 is schematically shown in Fig. 2, wherein the insertion of the hand tool 6 is indicated by an arrow leading to this calibration hole. The first calibration fixture 26 further includes a set of first visual marks, which are visible by a camera 9, which is part of the sensor unit 1 mounted on the hand tool 6, after inserting the hand tool 6 into the calibration hole. The mutual positions of these first visual marks and the calibration hole are defined and known. The visual marks are unique and each contains its own identifier for recognition from other visual marks.

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álAfter inserting the tip of the hand tool 6 with the attached sensor unit 1 into the calibration hole and at the moment when the hand tool 6 is correctly positioned, the user gives a signal using the user interface 19 of the sensor unit 1, i.e. for example by pressing a button

- 13 CZ 2023 - 384 A3 ří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 TGc 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.- 13 CZ 2023 - 384 A3 to the control unit 2 to store the information about the position and orientation, which is provided by the sensor unit 1. The sensor unit 1, specifically the camera 9, simultaneously detects the first visual marks and determines its relative position and orientation to these individual first visual marks. From the known definition of the geometry of the first calibration fixture 26 and the information about the position and orientation from the sensor unit 1 stored during this part of the calibration, a transformation matrix TGc is subsequently constructed defining the mutual spatial relationship between the reference coordinate system G of the hand-held work tool 6 and the reference coordinate system C of the sensor unit 1. This first part of the calibration is performed each time the user attaches the sensor unit 1 to the hand-held work tool 6 in order to demonstrate a work operation for subsequent automation.

Dále je analogickým způsobem získána transformační matice Tcr 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.Furthermore, in an analogous manner, the transformation matrix Tcr is obtained defining the mutual spatial relationship between the reference coordinate system C of the sensor unit 1 and the reference coordinate system R of the stationary robot 5 (denoted by the letter R after the English "robot"), specifically the robotic working tool 25.

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 TCR 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.This second part of the calibration is also carried out using the first calibration fixture 26, however, instead of the manual working tool 6, a robotic working tool 25 is inserted into the calibration hole (guided by the controller of the stationary robot 5), to which the sensor unit 1 is attached for the purposes of this part of the calibration. After the user gives a signal to the control unit 2, the camera 9 detects the first visual marks and measures its relative position and orientation with respect to these first visual marks. From the known definition of the geometry of the first calibration fixture 26 and the information about the position and orientation from the sensor unit 1 stored during this part of the calibration, a transformation matrix TCR is subsequently constructed defining the mutual spatial relationship between the reference coordinate system C of the sensor unit 1 and the reference coordinate system R of the stationary robot 5, specifically the robotic working tool 25.

Dále je získána transformační matice Tcp 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).Furthermore, a transformation matrix Tcp is obtained defining the mutual spatial relationship between the reference coordinate system C of the sensor unit 1 and the reference coordinate system P of part 7 (denoted by the letter P according to the English "product" or "part" for part 7).

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.This third part of the calibration is carried out by means of a second calibration fixture 27, which includes a second visual mark which is located at a fixed mutual distance from the part 7. This fixed mutual distance does not have to be known, but must remain unchanged during the calibration and during the step of performing the work operation for the surface treatment of the part 7 using the hand-held work tool 6, i.e. during the demonstration. The second calibration fixture 27 is schematically shown in Fig. 2 with the part 7 which is suspended from a support frame for the work operation, e.g. for painting.

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 Tcp 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.The user performs this part of the calibration by bringing the hand tool 6 closer to the second calibration fixture 27 and aiming the camera 9 in the sensor unit 1 at the second visual mark. The sensor unit 1 recognizes the second visual mark, since the second visual mark is, like all visual marks used in the calibration, unique, and measures its relative position and orientation to it. Furthermore, the user gives the user interface 19 of the sensor unit 1, i.e. for example, by pressing a button, a signal to the control unit 2 to store data on the position and orientation relative to the reference coordinate system C of the sensor unit 1, which is provided by the sensor unit 1 at a given moment. From this data, together with the data obtained from the first part of the calibration (between the reference coordinate system G of the hand-held working tool 6 and the reference coordinate system C of the sensor unit 1), a transformation matrix Tcp is subsequently constructed defining the spatial relationship between the reference coordinate system C of the sensor unit 1 and the reference coordinate system P of the part 7. This calibration is performed at the beginning of each demonstration of a work operation for which the user wants to generate a robot program.

Dále je analogickým způsobem získána transformační matice TRP 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.Furthermore, the transformation matrix TRP defining the mutual spatial relationship between the reference coordinate system R of the stationary robot 5 and the reference coordinate system P of the part 7 is obtained in an analogous manner.

- 14 CZ 2023 - 384 A3- 14 CZ 2023 - 384 A3

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.This fourth part of the calibration is also carried out using the second calibration fixture 27, however, instead of the manual working tool 6, a robotic working tool 25 is approached to the second calibration fixture 27 with the second visual mark (guided using the controller of the stationary robot 5), to which the sensor unit 1 is attached for the purposes of this part of the calibration. The mutual position of the second calibration fixture 27 and the part 7 is fixed, but does not have to be known. However, it must remain unchanged during the calibration and during the step of performing the work operation for the surface treatment of the part 7 using the manual working tool 6, i.e. during the demonstration.

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 Trp 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.The user therefore performs this part of the calibration by approaching the second visual mark and aiming the camera 9 at the second visual mark. The camera 9 detects this second visual mark and determines its relative position and orientation with respect to it. The user further notes the position and orientation of the robotic working tool 6 in the reference coordinate system R of the stationary robot 5 using the controller of the stationary robot 5. From this data, together with the data obtained from the second part of the calibration (between the reference coordinate system C of the sensor unit 1 and the reference coordinate system R of the stationary robot 5), a matrix Trp is subsequently constructed defining the mutual spatial relationship between the reference coordinate system R of the stationary robot 5 and the reference coordinate system P of the part 7. This calibration needs to be performed only once, provided that the part 7, for which robotic instructions are generated, will subsequently always be located in the same place relative to the stationary robot 5, which will perform an automated work operation on it according to the generated robotic program.

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.At this point it can be mentioned that the second part of the calibration is necessary because the camera 9 is used for the fourth part of the calibration (stationary robot 5-part 7). It is also worth mentioning that the sensor unit 1 is mounted on the robotic working tool 25 only for the purpose of calibration and is no longer mounted on the robotic working tool 25 during the execution of the automated working operation.

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.In the first exemplary embodiment of the method, the step of performing the calibration measurement is followed by the step of performing the work operation for the surface treatment of the part 7 using the hand-held working tool 6 with the attached sensor unit 1. During the performance of the work operation for the surface treatment of the part 7, i.e. for example during the demonstrative painting of the part 7 with a hand-held paint gun, the position and orientation and also the working state of the hand-held working tool 6 are monitored using the sensor unit 1, as has also been described above. This monitoring (i.e. recording/recording of data) is started by the user, e.g. using the user interface 19 of the sensor unit 1 or the user interface 20 of the control unit 2, signaling the start of recording to the control unit 2. After performing the work operation for the surface treatment of the part 7 using the hand-held working tool 6, the user signals the end of recording in a similar manner. During recording, the data from the sensor unit 1 are stored in the memory 14.

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.After recording is complete, the stored data is transferred to a remote server 21 via wireless (Wi-Fi) communication, where it is processed by the data processing module 3 in order to generate instructions for the stationary robot 5. Calibration data is also transferred to the input of the data processing module 3.

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.In the described first exemplary embodiment of the method, as schematically shown in Fig. 3, data processing includes several sub-steps, namely a data filtering step, a data time synchronization step, a dynamic subsampling step, a step of applying a spatial transformation based on the provided calibration data and subsequently a step of generating instructions for the stationary robot 5. By applying a spatial transformation based on the calibration data, the recorded data are transformed into the reference coordinate system R of the stationary robot 5, which allows generating instructions that are expressed in this reference coordinate system R of the stationary robot 5.

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íThe instruction generation step is performed by an instruction generator 23, which in the first embodiment described is part of the remote server 21 and which includes an interface for generating

- 15 CZ 2023 - 384 A3 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.- 15 CZ 2023 - 384 A3 instructions for a stationary robot 5 in the programming language of at least one manufacturer of stationary robots 5. The instruction generator 23 contains information about the syntax, semantics, required structure and format of the instructions for the stationary robot 5, including information about the keywords used to write individual instructions for the stationary robot 5 in the programming language of the given manufacturer of the stationary robot 5. The executable robot program is created by the instruction generator 23 writing individual instructions according to the rules of syntax and semantics and using the values of the arguments that are the result of previous data processing.

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, qi, 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.For example, for an ABB painting robot, the 23-instruction generator creates a file with the extension .mod, which contains the corresponding MODULE and PROCEDURE sections, and in the PROCEDURE section, individual instructions are listed on individual lines. These instructions begin with the keyword PaintL and are followed by the values of the instruction arguments x, y, z, qi, q2, q3, q 4 (and others), after which the 23-instruction generator substitutes specific numbers that determine where the robotic work tool 25 should move, how fast, etc.

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.The method and system of the present invention may also be implemented in other exemplary embodiments than the first exemplary embodiment described in detail above. The individual alternatives by which the other exemplary embodiments may differ are explained in the Summary of the Invention section.

Průmyslová využitelnostIndustrial applicability

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í.The above-described method and system can be used to generate instructions usable in various surface treatment operations, such as painting, grinding, polishing, chamfering, blasting, etc. In addition, the generated instructions (robotic programs) can be uploaded not only to the controller of a real stationary robot, but also to the controller of a virtual stationary robot, i.e. to its digital twin for simulation purposes.

Claims (13)

1. Způsob generování instrukcí pro stacionárního robota (5) na základě demonstrace pracovní operace pro povrchovou úpravu dílu (7), vyznačující se tím, že zahrnuje kroky:1. A method of generating instructions for a stationary robot (5) based on a demonstration of a work operation for surface treatment of a part (7), characterized in that it includes the steps of: - provedení pracovní operace pro povrchovou úpravu dílu (7) pomocí ručního pracovního nástroje (6) s upevněnou senzorickou jednotkou (1),- performing a work operation for surface treatment of the part (7) using a hand-held work tool (6) with a mounted sensor unit (1), - 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),- monitoring the position and orientation of the hand-held working tool (6) by the sensor unit (1) during the step of performing the work operation for surface treatment of the part (7), wherein the step of monitoring the position and orientation of the hand-held working tool (6) includes the step of recording acceleration and angular velocity over time by an inertial sensor (8) and the step of recording visual images of the surrounding environment at different points in time by at least one camera (9), - 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ý,- monitoring the working state of the hand-held working tool (6) by a working state sensor (10) during the step of performing a working operation for surface treatment of the part (7), wherein the working state sensor (10) provides information on whether the hand-held working tool (6) is started, - 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- providing calibration data to the data processing module (3), the calibration data provided to the data processing module (3) including information on the mutual spatial relationship between the reference coordinate systems of the sensor unit (1), the hand-held work tool (6), the stationary robot (5) and the part (7), and - 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).- processing data from the inertial sensor (8), at least one camera (9) and the working condition sensor (10) as well as calibration data by the data processing module (3), wherein the data processing step includes the step of generating instructions for the stationary robot (5) in the programming language of at least one manufacturer of stationary robots (5). 2. Způsob podle nároku 1, vyznačující se tím, ž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).2. The method according to claim 1, characterized in that the provided calibration data includes at least information about the mutual spatial relationship between the reference coordinate system G of the hand-held working tool (6) and the reference coordinate system C of the sensor unit (1), information about the mutual spatial relationship between the reference coordinate system C of the sensor unit (1) and the reference coordinate system P of the part (7) and information about the mutual spatial relationship between the reference coordinate system R of the stationary robot (5) and the reference coordinate system P of the part (7). 3. Způsob podle kteréhokoli z předcházejících nároků, vyznačující se tím, ž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í.3. A method according to any one of the preceding claims, characterized in that to obtain calibration data that is provided to the data processing module (3), the method comprises the step of performing a calibration measurement. 4. Způsob podle nároků 2 a 3, vyznačující se tím, ž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.4. The method according to claims 2 and 3, characterized in that unique visual markers are used for the step of performing the calibration measurement, wherein information on the mutual spatial relationship between the reference coordinate systems G and C, information on the mutual spatial relationship between the reference coordinate systems C and P, information on the mutual spatial relationship between the reference coordinate systems R and P, and in addition also information on the mutual spatial relationship between the reference coordinate systems C and R, are obtained based on detecting the visual markers by at least one camera (9) and on determining the relative orientation of the sensor unit (1) with respect to the visual markers. 5. Způsob podle kteréhokoli z předcházejících nároků, vyznačující se tím, ž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.5. The method according to any one of the preceding claims, characterized in that the step of generating instructions for the stationary robot (5) is performed by an instruction generator (23) containing information on the syntax, semantics, required structure and format of instructions for the stationary robot (5) of at least one manufacturer of stationary robots (5), wherein the instructions are written by the instruction generator (23) in the required structure and format based on the information on the syntax and semantics and contain keywords and argument values that are the result of the data processing step by the data processing module (3). 6. Způsob podle kteréhokoli z předcházejících nároků, vyznačující se tím, ž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.6. The method according to any one of the preceding claims, characterized in that the step of processing data by the data processing module (3) further before the step of generating instructions for the stationary robot (5) comprises a step of filtering data, a step of time synchronization of data, a step of dynamic subsampling and a step of applying a spatial transformation based on the provided calibration data. - 17 CZ 2023 - 384 A3- 17 CZ 2023 - 384 A3 7. Způsob podle kteréhokoli z předcházejících nároků, vyznačující se tím, ž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).7. The method according to any one of the preceding claims, characterized in that the step of monitoring the working state is performed by an audio sensor recording an audio signal during the step of performing the working operation for the surface treatment of the part (7). 8. Systém pro provádění způsobu podle kteréhokoli z předcházejících nároků 1 až 7, vyznačující se tím, ž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:8. A system for performing the method according to any one of the preceding claims 1 to 7, characterized in that it comprises a sensor unit (1) and a control unit (2) communicatively connected to the sensor unit (1) and adapted to control the sensor unit (1), wherein the sensor unit (1) comprises: - upevňovací element (11) pro upevnění k ručnímu pracovnímu nástroji (6),- a fastening element (11) for fastening to a hand-held working tool (6), - inerciální senzor (8) pro zaznamenávání zrychlení a úhlové rychlosti v čase,- inertial sensor (8) for recording acceleration and angular velocity over time, - 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- at least one camera (9) for recording visual images of the surrounding environment at different points in time and - 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ý, 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).- a working state sensor (10) for monitoring the working state of the hand-held work tool (6), wherein the working state sensor (10) provides information about whether the hand-held work tool (6) is started, wherein the system further comprises a data processing module (3) adapted to receive data from the inertial sensor (8), at least one camera (9) and the working state sensor (10) as well as calibration data containing information about the mutual spatial relationship between the reference coordinate systems of the sensor unit (1), the hand-held work tool (6), the stationary robot (5) and the part (7), wherein the data processing module (3) comprises an instruction generator (23) comprising an interface for generating instructions for the stationary robot (5) in a programming language of at least one manufacturer of stationary robots (5). 9. Systém podle nároku 8, vyznačující se tím, ž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á.9. The system of claim 8, further comprising at least one first calibration fixture (26) having at least one calibration aperture and a set of unique first visual indicia, wherein the relative positions of the first visual indicia with respect to each calibration aperture are known, and wherein the at least one calibration aperture is shaped to receive the manual work tool (6) in only one particular position and orientation, and the at least one calibration aperture is shaped to receive the robotic work tool (25) in only one particular position and orientation, the system further comprising a second calibration fixture (27) including a unique second visual indicia, wherein the relative position of the second calibration fixture (27) and the part (7) is fixed. 10. Systém podle kteréhokoli z předcházejících nároků 8 až 9, vyznačující se tím, že senzorem (10) pracovního stavu je zvukový senzor.10. The system according to any one of the preceding claims 8 to 9, characterized in that the operating state sensor (10) is an acoustic sensor. 11. Systém podle kteréhokoli z předcházejících nároků 8 až 10, vyznačující se tím, ž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.11. The system according to any one of the preceding claims 8 to 10, characterized in that the control unit (2) comprises a microcomputer (13) for controlling the sensor unit (1), a memory (14) for storing data from the sensor unit (1) and a communication module (15) for communication connection with the data processing module (3). 12. Systém podle kteréhokoli z předcházejících nároků 8 až 11, vyznačující se tím, ž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).12. The system according to any one of the preceding claims 8 to 11, characterized in that it further comprises a remote server (21) communicatively connected to the control unit (2), wherein the data processing module (3) is part of the remote server (21). 13. Systém podle kteréhokoli z předcházejících nároků 8 až 12, vyznačující se tím, ž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.13. The system according to any one of the preceding claims 8 to 12, characterized in that it further comprises a user interface of the data processing module (3) for configuring the instruction generator (23) and also an access device (4) for accessing the user interface of the data processing module (3), wherein the user interface of the data processing module (3) is communicatively connected to the data processing module (3).
CZ2023-384A 2023-10-10 2023-10-10 Method of generating instructions for a stationary robot and system for implementing this method CZ2023384A3 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CZ2023-384A CZ2023384A3 (en) 2023-10-10 2023-10-10 Method of generating instructions for a stationary robot and system for implementing this method
PCT/CZ2024/050063 WO2025077953A1 (en) 2023-10-10 2024-10-09 A method of generating instructions for a stationary robot and a system for performing this method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CZ2023-384A CZ2023384A3 (en) 2023-10-10 2023-10-10 Method of generating instructions for a stationary robot and system for implementing this method

Publications (1)

Publication Number Publication Date
CZ2023384A3 true CZ2023384A3 (en) 2025-04-23

Family

ID=93924704

Family Applications (1)

Application Number Title Priority Date Filing Date
CZ2023-384A CZ2023384A3 (en) 2023-10-10 2023-10-10 Method of generating instructions for a stationary robot and system for implementing this method

Country Status (2)

Country Link
CZ (1) CZ2023384A3 (en)
WO (1) WO2025077953A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AT392605B (en) * 1989-08-31 1991-05-10 Favre Bulle Bernard Dipl Ing Inertia-sensor-assisted measuring system for manipulators
US20170296173A1 (en) * 2016-04-18 2017-10-19 Ethicon Endo-Surgery, Llc Method for operating a surgical instrument
DE102019105820A1 (en) * 2019-03-07 2020-09-10 Matheus Service GmbH Process, system and non-volatile storage medium
US11826908B2 (en) * 2020-04-27 2023-11-28 Scalable Robotics Inc. Process agnostic robot teaching using 3D scans

Also Published As

Publication number Publication date
WO2025077953A1 (en) 2025-04-17

Similar Documents

Publication Publication Date Title
Roetenberg et al. Estimating body segment orientation by applying inertial and magnetic sensing near ferromagnetic materials
US20220024037A1 (en) Robot control apparatus and method for learning task skill of the robot
Beravs et al. Magnetometer calibration using Kalman filter covariance matrix for online estimation of magnetic field orientation
US20110087360A1 (en) Robot parts assembly on a workpiece moving on an assembly line
JP5618066B2 (en) Force control robot calibration apparatus and method
CN103153553A (en) Vision-guided alignment system and method
JP2010089257A (en) Method for teaching industrial robot, and correspondingly equipped industrial robot
Ostrowska et al. Determining the uncertainty of measurement with the use of a Virtual Coordinate Measuring Arm
US6522950B1 (en) Method for off-line programming an industrial robot
US20190054619A1 (en) Operating a hand-guided robot
KR20220140707A (en) Handheld devices, systems and methods for training one or more movements and one or more activities of a machine
US12420410B2 (en) Method, system and nonvolatile storage medium
EP4504464A1 (en) Inertia-based improvements to robots and robotic systems
CN115839726A (en) Method, system and medium for jointly calibrating magnetic sensor and angular speed sensor
Cucci et al. A flexible framework for mobile robot pose estimation and multi-sensor self-calibration
CN113319855A (en) Gravity compensation method under compliance control mode of multi-joint diagnosis and treatment robot
CZ2023384A3 (en) Method of generating instructions for a stationary robot and system for implementing this method
CN114872025B (en) Multi-joint robot and zero calibration method, device and readable medium thereof
CN115014824B (en) Robot testing system, method and computer readable storage medium
Petters et al. Multilevel testing of control software for teams of autonomous mobile robots
Mignone System Design and Evaluation of Multi-Modal Magnetic Tactile Sensor for Robotic Grasping
De Gasperin Avionics and software development for DANCE platform. Facility design and setup
Sosnovskaya External Measurement System for Robot Dynamics
Kuylenstierna Human body movements performed by machines
Yi et al. Jin Wu, Member, IEEE, Miaomiao Wang, Member, IEEE, Yi Jiang, Member, IEEE, Bowen Yi, Member, IEEE, Rui Fan, Member, IEEE, and Ming Liu, Senior Member, IEEE