Method of providing collision risk information by using robot motion simulation, and apparatus for performing same
The method uses robot motion simulation to calculate and display collision risk information, addressing the challenge of preventing collisions between industrial robots and workers by highlighting high-risk areas in the simulation.
Patent Information
- Application Number
- PCT/KR2024/096117
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-11-21
- Filing Date
- 2024-08-29
- Publication Date
- 2025-05-30
AI Technical Summary
There is a need for a method to effectively provide collision risk information using robot motion simulation to identify and reduce the risk of collisions between industrial robots and workers or surrounding objects.
A method involving the simulation of robot motions, where a script composed of commands corresponding to robot motions is used to calculate risk levels for each motion. Commands with risk levels exceeding a reference value are displayed in a different color, allowing for easy identification of high-risk areas.
This approach enables the prevention of death or serious injury from unintended contact with workers by simulating robot operations and providing clear collision risk information, thus ensuring safer robot operation and work environments.
Smart Images

Figure KR2024096117_30052025_PF_FP_ABST
Abstract
Description
Method for providing collision risk information using robot motion simulation and device for performing the same
[0001] The present invention relates to a method for providing collision risk information by calculating and providing the risk level in the event of a collision with a surrounding object such as a worker through robot motion simulation.
[0002] A robot is a machine that automatically processes or operates a given task using its own abilities. The application fields of robots can be classified into industrial, service, medical, space, and underwater.
[0003] Among them, an industrial robot is applied to industrial automation, and refers to a robot that is automatically controlled and reprogrammable, a multipurpose manipulator that can be programmed in three or more axes, and that can be fixed or moved, and may include hand-guided robots, manipulator parts of mobile robots, and collaborative robots.
[0004] Meanwhile, an industrial robot system can be configured, including an industrial robot as described above, an end device, and all machines, equipment, devices, additional axes, or sensors required for the robot to perform tasks.
[0005] Industrial robot systems are already widely used in machine-processing industries such as automobile manufacturing to perform repetitive movements equivalent to those performed by human arms, and their use has been increasing recently due to factors such as rising labor costs.
[0006] However, there are cases where death or serious injury occurs due to unintended contact with workers during the operation of industrial robots, and safety requirements for industrial robot systems and working environments are being established accordingly.
[0007] Additionally, to ensure the safety of industrial robot systems and work environments, it is necessary to simulate the robot's movements before actual operation of the industrial robot to identify and reduce the possibility or risk of collision with workers or surrounding objects.
[0008] The technical problem to be solved by the present invention is to provide a method for providing collision risk information using robot motion simulation to effectively indicate the risk level in the event of a collision by simulating the motion of the robot, and a device for performing the same.
[0009] A method for providing collision risk information using a robot motion simulation according to an embodiment of the present invention for solving the above-described problem includes the steps of: providing a script composed of a plurality of commands corresponding to robot motions; calculating a risk level for each motion of the robot; and processing, in the provided script, a first command corresponding to a motion having a risk level exceeding a reference value to be displayed in a different color from a second command corresponding to a motion having a risk level below the reference value.
[0010] The above robot is capable of power and force limiting (PFL) cooperative driving, and the above script can be displayed on a teaching pendant provided for the robot.
[0011] In the first area of the screen of the teaching pendant, the script may be displayed, and in the second area, a virtual robot that operates according to commands included in the script may be displayed, and at the time when the first command corresponding to an operation in which the calculated risk level exceeds the reference value is executed, a risk area may be identified in at least one of the script and the virtual robot.
[0012] The above risk calculation step can calculate the risk for each operation by simulating the operation of the robot and using the predicted force or predicted pressure in the event of a predicted collision and the preset force limit value or pressure limit value.
[0013] The above display processing step may display the executed command in one of a plurality of colors as the commands included in the above script are sequentially executed.
[0014] At least some of the methods for providing collision risk information using the above robot motion simulation can be implemented as a computer-readable recording medium recording a program for execution on a computer, and can be provided as the program itself.
[0015] Meanwhile, the method for providing collision risk information using the above robot motion simulation can be performed by a device according to an embodiment of the present invention.
[0016] A robot motion simulation device according to an embodiment of the present invention is a device for providing collision risk information by simulating the motion of a robot capable of power and force limited (PFL) cooperative driving, the device including: a script providing unit for providing a script composed of a plurality of commands corresponding to motions of the robot; and a risk calculating unit for calculating a risk level for each motion of the robot; wherein the script providing unit displays the calculated risk level for each motion in the script, and a first command corresponding to a motion in which the calculated risk level exceeds a reference value is displayed in a different color from a second command corresponding to a motion in which the risk level is lower than the reference value.
[0017] According to an embodiment of the present invention, by calculating coordinate information and shape information for checkpoints based on robot installation information, risk area information, and collision-prone body part information for each risk area set for the robot's workspace, and checkpoints for determining collision risk set for the robot and tool, it is possible to easily set collision information for simulating the operation of a robot capable of power and force limited (PFL) cooperative driving.
[0018] According to another embodiment of the present invention, by simulating the operation of the robot according to the collision information set as described above, and calculating and providing the risk level in case of collision of the robot for each operation, it is possible to prevent death or serious injury from occurring due to unintentional contact with a worker during the operation of the robot.
[0019] According to another embodiment of the present invention, in a script composed of a plurality of commands corresponding to robot operations, the risk level for each operation is indicated, and commands corresponding to operations whose risk level exceeds a reference level are identified by color, so that a user can easily identify the risk level for each operation in the event of a collision due to power and force limitation (PFL) cooperative driving during a teaching process or a real-time monitoring of the robot operation status.
[0020] In addition, according to another embodiment of the present invention, for a command corresponding to an operation whose risk level exceeds a threshold, a change amount of an operation attribute required to reduce the risk level to below the threshold is calculated, and information about the change amount of the operation attribute and the risk level reduced to below the threshold is displayed on a script, thereby reducing the risk of a collision during power and force limited (PFL) cooperative driving.
[0021] FIG. 1 is a perspective view showing the configuration of a robot according to one embodiment of the present invention.
[0022] Figure 2 is a table showing an example of allowable limits in power and force limit (PFL) driving mode.
[0023] Figure 3 is a drawing showing an example of a screen provided by a robot motion simulator.
[0024] Figure 4 is a block diagram showing the configuration of a robot motion simulation device according to one embodiment of the present invention.
[0025] FIG. 5 is a flowchart illustrating a method for setting collision information for robot motion simulation according to one embodiment of the present invention.
[0026] FIGS. 6 to 15 are drawings for explaining embodiments of a method for setting area information for a workspace of a robot.
[0027] Figures 16 to 23 are drawings for explaining embodiments of a method for setting tool information for a checkpoint for determining collision risk.
[0028] Figure 24 is a block diagram showing the configuration of a robot motion simulation device according to another embodiment of the present invention.
[0029] Figure 25 is a flowchart illustrating a method for providing collision risk information using robot motion simulation according to one embodiment of the present invention.
[0030] Figures 26 and 27 are drawings for explaining an embodiment of the configuration of a script representing the movements of a robot.
[0031] FIGS. 28 to 36 are drawings for explaining embodiments of a method for providing collision risk information of a robot from a teaching pendant.
[0032] Figure 37 is a block diagram showing the configuration of a robot motion simulation device according to another embodiment of the present invention.
[0033] Figure 38 is a flowchart illustrating a method for providing collision risk reduction information using robot motion simulation according to one embodiment of the present invention.
[0034] FIGS. 39 to 42 are drawings illustrating embodiments of a method for providing collision risk reduction information for a robot from a teaching pendant.
[0035] The following merely exemplifies the principles of the present invention. Therefore, those skilled in the art will be able to implement the principles of the present invention and invent various devices within the scope and spirit of the present invention, even if not explicitly described or illustrated herein. Furthermore, all conditional terms and embodiments listed herein are expressly intended, in principle, to facilitate understanding of the present invention, and should be understood as being in no way limiting to the specifically enumerated embodiments and conditions.
[0036] Furthermore, all detailed descriptions of the principles, aspects, and embodiments of the present invention, as well as specific embodiments, should be understood to encompass structural and functional equivalents thereof. Furthermore, such equivalents should be understood to encompass not only currently known equivalents but also equivalents developed in the future, i.e., all devices invented to perform the same function, regardless of structure.
[0037] Thus, for example, the block diagrams herein should be understood as representing conceptual views of exemplary circuits embodying the principles of the present invention. Similarly, all flowcharts, state transition diagrams, pseudocode, and the like, which may be substantially represented on a computer-readable medium, should be understood as representing various processes performed by a computer or processor, regardless of whether a computer or processor is explicitly depicted.
[0038] The functions of various components depicted in the drawings, including functional blocks represented by processors or similar concepts, may be provided using dedicated hardware as well as hardware capable of executing software in conjunction with appropriate software. When provided by a processor, the functions may be provided by a single dedicated processor, a single shared processor, or multiple individual processors, some of which may be shared.
[0039] Furthermore, any explicit use of terms such as processor, controller, or similar concepts should not be construed as exclusively referring to hardware capable of executing software, but should be understood to implicitly include, without limitation, digital signal processor (DSP) hardware, read-only memory (ROM), random access memory (RAM), and non-volatile memory for storing software. Other commonly used hardware may also be included.
[0040] In the claims of this specification, a component expressed as a means for performing a function described in the detailed description is intended to include any method for performing the function, including, for example, a combination of circuit elements performing the function, or any form of software including firmware / microcode, combined with appropriate circuitry for executing said software to perform the function. The invention defined by these claims should be understood to be equivalent to any means found in this specification for providing the functions provided by the various enumerated means, as long as they are combined and combined in the manner required by the claims.
[0041] The above-described purposes, features, and advantages will become more apparent through the following detailed description, taken in conjunction with the accompanying drawings. Accordingly, those skilled in the art will be able to readily implement the technical concepts of the present invention. Furthermore, in describing the present invention, detailed descriptions of known technologies related to the present invention will be omitted if they are deemed to unnecessarily obscure the gist of the invention.
[0042] Hereinafter, embodiments of the present invention will be described using a collaborative robot as an example, but the present invention is not limited thereto and can be applied to various robots including industrial robots.
[0043] A collaborative robot is a robot designed to interact directly with humans within a defined collaborative workspace, while collaborative operation can refer to the working state of a robot system and operator intentionally designed within a collaborative workspace.
[0044] Additionally, a collaborative workspace is a work area within a safeguarded space where robots and humans perform work simultaneously during production operations. It can mean an area within a work area where a robot system (including workpieces) and humans can perform work simultaneously during production operations.
[0045] FIG. 1 illustrates the configuration of a robot according to one embodiment of the present invention. The robot (100) may be configured to include a base (Base, 110), a plurality of joints (120 to 128), and a tool flange (Tool Flange, 150).
[0046] Referring to FIG. 1, the base (110) is a part for fixing the robot (100), and a cable connection connector between the robot (100) and the control box can be formed on the base (110).
[0047] The tool flange (150) is a part for mounting a gripper or tool on the robot (100), and input / output ports for controlling the gripper or tool and buttons for direct teaching can be arranged at locations adjacent to the tool flange (150).
[0048] Meanwhile, between the base (110) and the tool flange (150), a base joint (120), a shoulder joint (122), an elbow joint (124), a first wrist joint (126), a second wrist joint (127), and a third wrist joint (128) are provided, so that six-axis joint motions of the robot (100) can be possible.
[0049] A robot (100) having a structure as described with reference to FIG. 1 is capable of cooperative operation, and the cooperative operation may include one or more of the following methods: safe monitored stop, hand guiding, speed and position monitoring, and power and force limiting (PFL).
[0050] In the safety rated monitored stop method, the safety rated monitored stop function is used to stop the robot's motion before the operator enters the collaborative work area to interact with the robot system and complete a task.
[0051] If there is no driver in the collaborative work area, the robot (100) operates non-cooperatively. When the robot system is present in the collaborative work area, the safety rating monitoring function is activated and the robot's movement has stopped, allowing the driver to enter the collaborative work area. Meanwhile, after the driver exits the collaborative work area, the robot system's movement can resume without further intervention.
[0052] In the hand-guiding method, the operator uses a hand-operated device to transmit motion commands to the robot system, and the robot (100) must complete a safety-rated guard stop before the operator is permitted to enter the collaborative work area and perform the hand-guiding task.
[0053] This task is performed by manually operating guiding devices located at or near the robot's end-effector, and the robot system used for hand guiding must have additional features such as force output, virtual safety zones or tracking technology.
[0054] In the speed and position monitoring method, the robot system and the driver are allowed to move simultaneously in the collaborative work area, and risk reduction can be achieved by maintaining a minimum protective separation distance between the driver and the robot (100).
[0055] In this case, while the robot (100) is in operation, the distance between the robot system and the operator should never be closer than the protective separation distance, and the robot system stops when the separation distance decreases to a value smaller than the protective separation distance. Meanwhile, when the operator moves away from the robot system, the robot system can automatically resume operation while maintaining the minimum protective separation distance, and when the robot system slows down, the protective separation distance can be decreased simultaneously.
[0056] In driving modes with power and force limited (PFL) methods, physical contact between the robot system (including the workpiece) and the operator can occur intentionally or unintentionally, and power and force limited collaborative driving requires a robot system designed for this specific type of driving.
[0057] In this case, the risk can be reduced by managing the risk sources associated with the robot system below the allowable limit determined in the risk assessment process through a robot or safety-rated control system that includes fundamental safety measures, and the allowable limit can be set to the maximum allowable pressure and maximum allowable force that each human body part can withstand.
[0058] For example, the allowable limits in the power and force limited (PFL) driving mode may be set to the maximum allowable pressure and maximum allowable force per body part defined in the international standard (ISO TS 15066) as shown in Fig. 2, but the present invention is not limited thereto and may be changed depending on the level of risk to be managed.
[0059] Meanwhile, during collaborative driving using the power and force limitations (PFL) described above, contact between a body part of the collaborative robot and the operator may occur as a contact situation intended as part of the work process, an incidental contact situation resulting from non-compliance with the work sequence, or a failure type that causes a contact situation.
[0060] And the possible contact between the moving parts of the robot system and the human body can be divided into quasi-static contact and transient contact.
[0061] Quasi-static contact is contact between an operator and a robotic system component that occurs between a moving part of the robotic system and a fixed or moving part of another robot, where a part of the operator's body may become clamped, and the robotic system may apply pressure and force to the clamped part of the body for a significant period of time before the situation is relieved.
[0062] Meanwhile, dynamic contact is a contact between an operator and a robot system part that occurs where the operator's body part is not clamped to the moving part of the robot system, but can move away from or in a way that causes the operator to shrink, and the actual contact may be brief and can be defined by the inertia of the robot, the inertia of the body part, and the relative velocity of the two.
[0063] The risk of potential contact between a robot and a driver as described above can be reduced by considering how possible contact between the driver and the robotic system does not result in injury to the driver.
[0064] For example, risk can be reduced by identifying the conditions under which contact occurs, assessing the potential risk of contact, designing the robot system and workspace so that contact occurs less frequently or can be avoided, and applying risk reduction measures to keep contact situations below thresholds.
[0065] Here, for risk assessment, it must be assumed that the driver is not protected from potential contact by risk reduction measures such as personal protective equipment, and criteria such as the driver's exposed body parts, the initiation of the contact event, the probability or frequency of occurrence, the type of contact event, the contact area, speed, force, pressure, momentum, mechanical power, energy, and other quantitative items that can characterize the physical contact event may be considered.
[0066] Meanwhile, in order to reduce the risk assessed as above, a passive method related to the mechanical design of the robot system or an active method related to the control design of the robot system can be performed.
[0067] For example, passive safety design measures may include increasing the contact surface area, absorbing energy, extending energy transfer time or reducing impact force, or limiting moving mass.
[0068] Specifically, circular edges and corners, smooth surfaces or flexible surfaces may be used to increase the contact surface area, or fillers, cushioning materials, deformable components, complex joints or links may be used to absorb energy, extend energy transfer time or reduce impact force.
[0069] Active safety design measures may include, but are not limited to, limiting forces and torques, limiting the speed of moving parts, limiting momentum as a function of mass and speed, limiting mechanical power or energy, utilizing safety-rated flexible axes and space limitation functions, utilizing safety-rated monitored stop functions, utilizing detection to anticipate or recognize contact, etc.
[0070] Meanwhile, if the risk is not sufficiently reduced by a combination of passive or active risk reduction methods as described above, other risk reduction methods, including firewalls or safety devices, may be required.
[0071] As described above, the robot system is designed so that the risk to the operator is reduced below the threshold value by not exceeding the applicable threshold value for quasi-static contact and dynamic contact determined by the risk assessment.
[0072] A robot with cooperative driving capabilities in power and force limiting (PFL) mode may include the ability to set allowable thresholds for force, torque, speed, momentum, mechanical power, axis range, or spatial range.
[0073] For example, eliminating hazards associated with dynamic contact may include speed limits for moving parts (robots, work tools, workpieces, etc.) and appropriate design of physical characteristics such as the surface area of the moving parts that come into contact with the operator.
[0074] Additionally, risk reduction associated with quasi-static contacts may include speed limits and physical characteristics similar to those for dynamic contacts, in addition to design characteristics of components of the robotic system that have the potential to grab or press on the operator or part of the operator's body.
[0075] In the above, a robot (100) and a robot system according to an embodiment of the present invention have been described with reference to FIGS. 1 and 2, but the present invention is not limited thereto, and the present invention can be applied to various robots based on international standards related to robots and robot systems (ISO 10218-1, ISO 10218-2, ISO TS 15066, ISO 12100, ISO 13850, ISO 13855, IEC 60204-1).
[0076] According to the present invention, in order to ensure safety for the robot system and the working environment, a robot operation simulation can be performed to simulate the operation of the robot (100) to check the possibility or risk of collision with a worker or surrounding objects.
[0077] For example, in the case of a robot having a cooperative driving function in power and force limitation (PFL) mode, if robot-related information, information about the tool to be mounted, information about check points for collision areas, and information about the robot's operation are input, information about the expected force and pressure in the event of a collision during the robot's operation can be calculated and displayed in the simulator.
[0078] Figure 3 illustrates an example of a screen provided by a robot motion simulator. Using information about the area where the robot is installed and information about the tool mounted on the robot, the predicted collision force and pressure during robot motion are calculated and displayed in graphs on the left side of the screen, and the corresponding robot motion can be sequentially displayed on the right side of the screen.
[0079] Meanwhile, the Pressure Force Index (PFI) indicating the risk of robot operation is calculated based on the predicted collision force and pressure as above, and the calculated risk PFI can be displayed together on the graph on the left side of the screen, and if the PFI exceeds a limit value (e.g., 100), the risk assessment result can be displayed on the graph together with the corresponding robot operation.
[0080] Additionally, for the robot's operation in which the risk PFI exceeds the limit value as described above, the robot's operating speed (e.g., maximum operating speed) to reduce the PFI to below the limit value can be calculated and provided.
[0081] A simulator that performs the robot motion simulation as described above may be included in a robot or robot system and may store information related to the robot's motion in advance, or may exist outside the robot or robot system and receive information related to the robot's motion.
[0082] The robot motion simulator as described above may be implemented with software and / or hardware resources necessary to implement the technical idea of the present invention, and does not necessarily mean a single physical component or a single device.
[0083] That is, the robot motion simulator may mean a logical combination of software and / or hardware provided to implement the technical idea of the present invention, and, if necessary, may be implemented as a set of logical configurations for implementing the technical idea of the present invention by installing them in devices spaced apart from each other and performing each function.
[0084] FIG. 4 is a block diagram illustrating the configuration of a robot motion simulation device according to an embodiment of the present invention. The illustrated robot motion simulation device (400) is a device for simulating the motion of a robot capable of power and force limited (PFL) cooperative driving.
[0085] Referring to FIG. 4, the robot motion simulation device (400) may be configured to include an information acquisition module (410), a checkpoint setting module (420), and an information output module (430).
[0086] The information acquisition module (410) acquires robot installation information, risk area information, and collision-prone body part information for each risk area regarding the robot's workspace.
[0087] For example, the information acquisition module (410) can acquire an image of the robot's workspace, set the scale of the acquired image, and set the installation angle and installation position of the robot.
[0088] Here, one or more risk areas are set on the acquired image, and a body part with a high probability of collision can be set for each of the set risk areas.
[0089] The checkpoint setting module (420) sets a checkpoint for determining the risk of collision for the robot.
[0090] For example, the checkpoint setting module (420) can obtain an image of a tool mounted on a robot and set the checkpoint on the obtained image.
[0091] Here, the checkpoint setting module (420) can calculate the similarity between a plurality of representative shapes using information about the surrounding points of the checkpoint, and determine the shape of the checkpoint as one of the plurality of representative shapes based on the calculated similarity.
[0092] The information production module (430) produces coordinate information and shape information for the check point based on at least some of the acquired information and the set check point.
[0093] As used herein, the term "module" may refer to a functional and structural combination of hardware for implementing the technical concepts of the present invention and software for operating the hardware. For example, a module may refer to a logical unit of a given piece of code and the hardware resources required to execute that code. It does not necessarily refer to physically connected code or a single type of hardware.
[0094] According to the embodiment of the present invention as described above, by calculating coordinate information and shape information for checkpoints based on robot installation information, risk area information, and collision-prone body part information for each risk area set for the robot's workspace, and checkpoints for determining collision risk set for the robot and tool, it is possible to easily set collision information for simulating the operation of a robot capable of power and force limited (PFL) cooperative driving.
[0095] FIG. 5 is a flowchart illustrating a collision information setting method for robot motion simulation according to one embodiment of the present invention, and will be described as an example of what is performed by a robot motion simulation device (400) as described with reference to FIG. 4.
[0096] The simulation device (400) obtains robot installation information, risk area information, and collision-prone body part information for each risk area for the robot's workspace (step S500).
[0097] In step S500, an image of the robot's workspace can be acquired, a scale of the acquired image can be set, and at least one of the robot's installation angle and installation position can be set.
[0098] In addition, one or more risk areas are set on the acquired image, and for each of the set risk areas, a body part corresponding to at least one of the skull and forehead, face, neck, back and shoulder, chest, abdomen, pelvis, upper arms and elbow joints, lower arms and wrist joints, hands and fingers, thighs and knees, and lower legs can be set.
[0099] Referring to FIGS. 6 to 15, embodiments of a method for setting area information for a robot's workspace in step S500 will be described in more detail.
[0100] Referring to FIG. 6, a 2D image representing the workspace of the robot may be input, but the present invention is not limited thereto, and a 3D image representing the workspace of the robot in three dimensions may also be input.
[0101] Referring to FIG. 7, a workspace (710) of a robot may be displayed on a screen of a simulation device (400), and a user interface (720 to 728) for setting area information for the workspace (710) may be provided.
[0102] As shown in Fig. 8, the user can select the “Scaling line” button (720) on the screen of the simulation device (400) and then use the scaling bar (730) to set the actual size of the workspace (710) displayed on the screen.
[0103] Next, the user can input the angle at which the robot is installed in the “Orignin rotation ang” input field (721) as shown in FIG. 9, select the “Robot orignin” button (722) as shown in FIG. 10, and then use the cursor (732) to set the position at which the robot is installed on the screen.
[0104] Then, when the user selects a body part that may collide in the "Collision par" selection window (723) as shown in FIG. 11, and then selects the "Rectangle" button (724) as shown in FIG. 12 and sets a risk area (734), a body part (hand, HAND) that may collide in the risk area (734) is displayed together with the risk area (734) on the screen.
[0105] Additionally, as illustrated in FIGS. 12 and 13, the user can set the risk areas (735, 736) and the collision-prone body parts for each of the risk areas (735, 736) using the method described above.
[0106] As described above, when the area information setting for the robot's workspace (400) is completed, the user can select the "Save Area info" button (727) as shown in FIG. 15 to save the set area information.
[0107] The simulation device (400) sets a check point for determining the risk of collision for the robot (step S510), and, based on at least some of the information acquired in step S500 and the check point set in step S510, calculates coordinate information and shape information for the check point (step S520).
[0108] In step S510, an image of a tool mounted on a robot is acquired, and checkpoints can be set on the acquired image.
[0109] Meanwhile, checkpoints for determining the risk of collision can be set in the main body of the robot rather than in the tool, and checkpoint information for the main body of the robot can already be stored in the simulation device (400).
[0110] Referring to FIGS. 16 to 23, embodiments of a method for setting a check point and calculating coordinate information and shape information for the check point will be described in more detail.
[0111] Referring to FIG. 16, a 3D image representing a tool mounted on a robot may be input, but the present invention is not limited thereto, and may also be a 2D image obtained by photographing a tool mounted on a robot.
[0112] Referring to FIG. 17, a tool (810) mounted on a robot may be displayed on the screen of the simulation device (400), and a user interface (812 to 815, 821 to 829) for setting a check point for the tool (810) may be provided.
[0113] In step S520, shape information about the checkpoint can be derived using information about the surrounding points of the checkpoint.
[0114] For example, similarity between multiple representative shapes can be calculated using information about surrounding points of a checkpoint, and the shape of the checkpoint can be determined as one of the multiple representative shapes based on the calculated similarity.
[0115] Here, the plurality of representative shapes may include at least one of a half sphere, a corner, a cylinder, and a flat, but the present invention is not limited thereto.
[0116] Meanwhile, using the shape information produced as described above, a normal vector for the check point can be produced.
[0117] For example, when setting a check point for a tool having a shape as shown in (a) of Fig. 18, the user can select a desired check point on a 3D image as shown in (b) of Fig. 18.
[0118] In this case, points located around the checkpoint selected by the user are set, and information about the surrounding points (e.g., location and vector information, etc.) is used to fit each of a plurality of representative shapes, so that the similarity with the representative shape can be calculated.
[0119] As illustrated in (c) of Fig. 18, a representative shape having the highest similarity among a plurality of representative shapes is determined, and information on the determined representative shape can be stored as shape information for the check point.
[0120] Here, the representative shape may be a half sphere, and the radius of the hemisphere with the highest similarity can be obtained as shape information for the check point using information about the surrounding points of the check point.
[0121] As illustrated in FIG. 19, when a user selects a check point (830) on a 3D image of a tool displayed on the screen of a simulation device (400), check point identification information is entered into a check point identification window (826), the location of the check point is automatically entered into a “Collision point xyz” display window (827), and a perpendicular vector to the check point can be automatically entered into a “Normal vector xyz” display window (828).
[0122] Additionally, according to the check point shape information calculated as described above, the radius of a hemisphere similar to the check point can be automatically entered in the “Collision radius” display window (829).
[0123] And as shown in FIGS. 20 to 22, the user can additionally set check points (831, 832, 833) using the method described above, and each additional setting can produce the location, vertical vector, and shape information (radius) of each check point and be automatically input.
[0124] According to another embodiment of the present invention, while photographing an actual tool using a device such as a tablet PC, a check point can be selected directly on the image of the tool displayed on the screen.
[0125] Referring to FIG. 23, an image (910) of a tool being photographed is displayed on the screen (900) of a tablet PC, and when a user presses the "Add" button (920) and then touches a desired check point (911), location information (925) for the touched check point (911) can be displayed on the screen.
[0126] Additionally, on the screen (900) of the tablet PC illustrated in FIG. 23, the vertical vector and shape information for the check point (911) described above may be calculated and additionally displayed.
[0127] In the above, the collision information setting method for robot motion simulation according to one embodiment of the present invention was described as being performed by a robot motion simulation device, but the present invention is not limited thereto, and may be performed on a personal computer (PC), laptop, tablet, etc., may be performed on a teaching pendant, which is a teaching box provided in a robot system, or may be performed on a control station for controlling the robot or on the robot itself.
[0128] In addition, according to another embodiment of the present invention, by simulating the operation of the robot according to the collision information set as described above, and calculating and providing the risk level in case of collision of the robot for each operation, it is possible to prevent death or serious injury from occurring due to unintentional contact with a worker during the operation of the robot.
[0129] FIG. 24 is a block diagram illustrating the configuration of a robot motion simulation device according to another embodiment of the present invention. The illustrated robot motion simulation device (1000) is a device for providing collision risk information by simulating the motion of a robot capable of power and force limitation (PFL) cooperative driving.
[0130] Referring to FIG. 24, the robot motion simulation device (1000) can be configured to include a script provision module (1010) and a risk calculation module (1020), and descriptions of the same components and operations of the robot motion simulation device (1000) as those described with reference to FIGS. 1 to 23 will be omitted.
[0131] The script providing module (1010) provides a script consisting of multiple commands corresponding to the robot's movements.
[0132] For example, a script may be displayed in a first area of the screen of a robot motion simulation device (1000), and a virtual robot that operates according to commands included in the script may be displayed in a second area.
[0133] Meanwhile, the risk calculation module (1020) calculates the risk for each action of the robot defined by the script.
[0134] For example, the risk calculation module (1020) can calculate the risk for each operation by simulating the operation of the robot and using the predicted force or predicted pressure in the event of a predicted collision and the preset force limit value or pressure limit value.
[0135] More specifically, the risk of each motion of the robot can be calculated using the larger value of the predicted force divided by the force limit value and the predicted pressure divided by the pressure limit value.
[0136] In addition, the script providing module (1010) displays the risk level for each action calculated through the risk calculation module (1020) in the script, and can display the first command corresponding to an action having a calculated risk level exceeding a reference level in a different color from the second command corresponding to an action having a risk level below the reference level.
[0137] And the script providing module (1010) can cause the executed command to be displayed in one of a plurality of colors as the commands included in the script are sequentially executed.
[0138] Hereinafter, with reference to FIGS. 25 to 36, embodiments of a method for providing collision risk information using robot motion simulation according to the present invention will be described in more detail.
[0139] Figure 25 is a flowchart illustrating a method for providing collision risk information using robot motion simulation according to one embodiment of the present invention.
[0140] Referring to Fig. 25, the robot motion simulation device (1000) provides a script composed of a plurality of commands corresponding to the motions of the robot (step S2100).
[0141] A script is used to define the robot's movements, and includes commands for the robot's movements and other functions and settings. It can be created, edited, and modified during the teaching process to program the robot to operate as desired by the user.
[0142] For example, as illustrated in FIG. 26, a script generated including icons for setting robot movements and other functions and a plurality of commands may be displayed in the left area of the screen of the robot movement simulation device (1000).
[0143] In the right area of the screen of the robot motion simulation device (1000), a virtual robot that operates according to commands included in the script is displayed, and the angle and position of each joint of the robot can be displayed.
[0144] Meanwhile, a screen such as that shown in Fig. 26 may be provided in a teaching process for creating a script, a process for simulating the robot's movements according to the created script, a process for actually operating the robot according to the created script, a process for setting various parameters in the created script, etc.
[0145] Icons for setting the robot's movements may include, as shown in Fig. 27, a "Move" icon for setting the robot's movement method, a "Point" icon for setting a target value to which the robot is to move, a "Circle" icon for setting a circular movement, a "Wait" icon for waiting for a specified condition or time, and an "If" icon for setting a branch so that the robot can perform different commands depending on a condition.
[0146] The configurations provided through the screen of the robot motion simulation device (1000) as described with reference to FIGS. 26 and 27 are according to one embodiment of the present invention, and the present invention is not limited thereto.
[0147] The robot motion simulation device (1000) calculates the risk level for each motion of the robot defined by the script (step S2110).
[0148] For example, when area information and checkpoint information are set for the workspace of the robot according to the collision information setting method described with reference to FIGS. 4 to 23, and position, vertical vector, and shape information for the checkpoint are calculated, the collision risk level can be calculated for each operation according to the set and calculated information.
[0149] The risk level for each movement can be calculated using the Pressure Force Index (PFI) as shown in the mathematical formula 1 below.
[0150]
[0151] In mathematical expression 1, “f_est” is a force value that occurs during a collision predicted through simulation of robot movement, and can be calculated as in mathematical expression 2 below.
[0152]
[0153] In Equation 2, v rel is the relative velocity of the robot and the human, μ is the composite mass of the robot and the human, and k is the composite stiffness of the robot and the human.
[0154] In addition, in mathematical expression 1, “p_est” is a pressure value that occurs during a collision predicted through simulation of robot movement, and can be calculated as in mathematical expression 3 below.
[0155]
[0156] And in mathematical expression 1, “f_max” is a force limit value for each human body part, and “p_max” is a pressure limit value for each human body part, and each may have values as described with reference to FIG. 2, but the present invention is not limited thereto, and may be set to values required by the standard.
[0157] When the PFI indicating the collision risk is calculated as described above, if the PFI value exceeds 100, the force or pressure predicted by the simulation device (400) at the time of collision is outside the range of the limit value, and if the checkpoint during the corresponding operation of the robot collides with a person, it can be judged to be dangerous enough to cause serious damage to the body.
[0158] Meanwhile, for operations in which the PFI value exceeds 100 as described above, a risk reduction method may be additionally provided to lower the PFI value to 100 or less.
[0159] Thereafter, the robot motion simulation device (1000) processes the script provided in step S2100 so that the first command corresponding to the motion in which the risk level calculated in step S2110 exceeds the reference value is displayed in a different color from the second command corresponding to the motion in which the risk level is lower than the reference value (step S2120).
[0160] Hereinafter, with reference to FIGS. 28 to 36, embodiments of a method for providing collision risk information of a robot as described above from a teaching pendant will be described.
[0161] Referring to FIG. 28, a script (2210) defining the robot's movements is displayed on the screen (2200) of the teaching pendant, and the script (2210) may include a plurality of commands (2211 to 2214) each corresponding to the robot's movements.
[0162] For example, a first command (2211) may correspond to an action of linearly moving the robot to a specified first position, and a second command (2212) may correspond to an action of linearly moving the robot to a specified second position.
[0163] When a script (2210) as illustrated in Fig. 28 is executed, the commands included in the script (2210) can be executed sequentially.
[0164] Referring to FIG. 29, on the script (2210) displayed on the screen (2200) of the teaching pendant, a command corresponding to the currently executing operation may be displayed as a block (2221) of a first color (e.g., yellow).
[0165] Here, the risk of collision (PFI) for the currently executing operation is calculated, and the color of the command corresponding to the currently executing operation may change according to the calculated risk (PFI).
[0166] For example, if the risk factor (PFI) calculated for the action corresponding to the first command (2211) exceeds the reference value of 100, the color of the block (2221) of the first command (2211) may be changed to a second color (e.g., red), as illustrated in FIG. 30.
[0167] If the risk factor (PFI) calculated for the action corresponding to the second command (2212) executed next is less than or equal to the reference value of 100, the color of the block (2222) of the second command (2212) may be changed to a third color (e.g., green), as illustrated in FIG. 31.
[0168] Then, if the risk factor (PFI) calculated for the action corresponding to the third command (2213) exceeds the reference value of 100, the color of the block (2223) of the third command (2213) may be changed to a second color (e.g., red), as shown in FIG. 32.
[0169] If the risk factor (PFI) calculated for the action corresponding to the fourth command (2214) to be executed next is less than or equal to the reference value of 100, the color of the block (2224) of the fourth command (2214) may be changed to a third color (e.g., green), as illustrated in FIG. 33.
[0170] Additionally, the calculated risk level for each action can be displayed on the script (2210) displayed on the screen (2200) of the teaching pendant.
[0171] Referring to FIG. 34, for each of the motion commands included in the script (2210), the calculated collision risk factor (PFI) for the motion corresponding to the command may be displayed, and for a motion in which the collision risk factor (PFI) exceeds the reference value of 100, the risk area corresponding to the checkpoint where collision may occur (e.g., a specific part of a tool mounted on a robot) and the cause of the risk exceeding (e.g., exceeding the collision force (F) or exceeding the collision pressure (P)) may be additionally displayed.
[0172] And as illustrated in FIG. 35, a script (2210) may be displayed in the first area on the left side of the screen (2200) of the teaching pendant, and a virtual robot (2250) that operates according to commands included in the script (2210) may be displayed in the second area on the right side.
[0173] In this case, at the point when the first command corresponding to an action in which the calculated risk level exceeds the standard value of 100 is executed, a risk area (2251) can be displayed and identified on the virtual robot (2250).
[0174] Meanwhile, the robot can be made to actually operate according to the commands included in the script (2210), and in this case, when a command corresponding to an operation in which the calculated risk level exceeds the standard value of 100 is executed, the actual operation of the robot is stopped, thereby preventing damage to the body due to collision with the robot during the teaching or simulation process.
[0175] Referring to FIG. 36, when the first command corresponding to an action whose risk level exceeds the standard value of 100 is executed, the robot is controlled to stop without performing the action, and a notification window (2260) notifying the stop of robot action may be displayed on the screen (2200).
[0176] In this case, the user can select the "Ignore" button (2261) to release the robot motion and make it move again, and select the "Change parameter" button (2262) to change the motion-related parameters (e.g., motion speed, etc.) so that the risk factor (PFI) of the motion is reduced to below the reference value of 100.
[0177] In the above, the method for providing collision risk information using a robot motion simulation according to an embodiment of the present invention has been described as being performed in a teaching pendant, which is a teaching box provided in a robot system, but the present invention is not limited thereto, and may be performed in a personal computer (PC), laptop, tablet, etc., and may also be performed in a control station for controlling the robot or in the robot itself.
[0178] According to another embodiment of the present invention, for a command corresponding to an operation whose risk level exceeds a threshold, a change amount of an operation attribute required to reduce the risk level to below the threshold is calculated, and information about the change amount of the operation attribute and the risk level reduced to below the threshold is displayed in a script, thereby reducing the risk of a collision during power and force limited (PFL) cooperative driving.
[0179] FIG. 37 is a block diagram illustrating a configuration of a robot motion simulation device according to another embodiment of the present invention. The illustrated robot motion simulation device (3000) is a device for providing collision risk reduction information by simulating the motion of a robot capable of power and force limitation (PFL) cooperative driving.
[0180] Referring to FIG. 37, the robot motion simulation device (3000) can be configured to include a script provision module (3010), a risk calculation module (3020), a change calculation module (3030), and an attribute setting module (303). Among the configurations and operations of the robot motion simulation device (3000), descriptions of the same components as those described with reference to FIGS. 1 to 36 will be omitted.
[0181] The script providing module (1010) provides a script consisting of multiple commands corresponding to the robot's movements.
[0182] Here, the method by which the script providing module (1010) provides the script may be the same as that described with reference to FIGS. 24 to 36, so a detailed description thereof will be omitted.
[0183] The risk calculation module (1020) calculates the risk for each action of the robot defined by the script.
[0184] Here, the method by which the risk calculation module (1020) calculates the risk for each operation may be the same as that described with reference to FIGS. 24 to 36, so a detailed description thereof will be omitted.
[0185] Meanwhile, the change amount calculation module (3030) calculates the change amount of the operation attribute required to reduce the risk to below the standard value for the first operation in which the risk calculated through the risk calculation module (1020) exceeds the standard value.
[0186] For example, the change calculation module (3030) can calculate the reduction rate or reduction value of the operation speed required to reduce the risk level below a reference value for the first operation.
[0187] The script provision module (3010) displays information on the amount of change in the operation attribute calculated through the amount of change calculation module (3030) or the risk level reduced below the reference value for a command corresponding to the first operation in the provided script.
[0188] In addition, the property setting module (303) can change the motion property so that the amount of change in the motion property calculated through the amount of change calculation module (3030), for example, the rate or amount of decrease in motion speed, is applied to the first motion.
[0189] Hereinafter, with reference to FIGS. 38 to 42, embodiments of a method for providing collision risk reduction information using robot motion simulation according to the present invention will be described in more detail.
[0190] Figure 38 is a flowchart illustrating a method for providing collision risk reduction information using robot motion simulation according to one embodiment of the present invention. Descriptions of the illustrated methods, which are identical to those described with reference to Figures 1 through 37, will be omitted below.
[0191] Referring to Fig. 38, the robot motion simulation device (3000) provides a script composed of a plurality of commands corresponding to the motions of the robot (step S3100).
[0192] The robot motion simulation device (3000) calculates the risk level for each motion using each motion attribute for the robot's motions (step S3110).
[0193] For example, the motion attribute used to calculate the risk by motion may be the motion speed of the robot, and depending on the motion speed, the relative speed (v) between the robot and the person in Equation 2 rel ) can be determined.
[0194] That is, in mathematical expression 2, as the operating speed of the robot increases, the relative speed between the robot and the person (v rel ) is increased, the predicted power (F est ) increases, and as the robot's operating speed decreases, the relative velocity (v) between the robot and the person rel ) is reduced, so the predicted power (F est ) becomes smaller.
[0195] Thereafter, the robot motion simulation device (3000) calculates the amount of change in motion properties required to reduce the risk level of the first motion, which exceeds the standard value calculated in step S3110, to below the standard value (step S3120).
[0196] For example, in step S3120, the reduction rate or reduction value of the operation speed required to reduce the risk factor (PFI) for the first operation to a reference value of 100 or less can be calculated.
[0197] As mentioned above, when the speed of the first movement is reduced, the relative speed (v) between the robot and the person rel ) is reduced, so the predicted power (F est ) becomes smaller, and accordingly, the risk factor (PFI) for the first action can be reduced.
[0198] Accordingly, the operating speed is calculated so that the risk factor (PFI) for the first operation has a set value of 100 or less, which is the reference value, so that the reduction rate or reduction value of the operating speed for reducing the risk of the first operation can be calculated.
[0199] Next, the robot motion simulation device (3000) processes the provided script to display information about the amount of change in the motion attribute calculated in step S3120 or the risk level reduced below the reference value for the command corresponding to the first motion (step S3130).
[0200] For example, in step S3130, the reduction rate or reduction value of the operation speed calculated in step S3120 may be displayed in response to a command corresponding to the first operation in the script.
[0201] Hereinafter, with reference to FIGS. 39 to 42, embodiments of a method for providing collision risk reduction information of a robot as described above from a teaching pendant will be described.
[0202] Referring to FIG. 39, among the commands included in the script, the first and third commands whose risk (PFI) exceeds the standard value of 100 are displayed in a second color (e.g., red), and the risk (PFI) value calculated for the corresponding operation corresponding to each of the first and third commands, along with the reduction rate of the operation speed (Speed) required to reduce the risk (PFI) to 100 or less, may be displayed.
[0203] Meanwhile, when a user input is received to apply a reduction rate or reduction value of the recommended motion speed to the first motion to reduce the risk as described above, the motion properties of the first motion can be changed so that the value is applied to the first motion.
[0204] Referring to FIG. 40, if the user selects the "Ignore" button (2271) displayed on the screen (2200) of the teaching pendant, the recommended reduction in motion speed to reduce risk may not be applied to the motion.
[0205] Meanwhile, when the user selects the "Change All Speed" button (2272) displayed on the screen (2200) of the teaching pendant, the recommended reduction in motion speed to reduce risk can be applied to all of the motions.
[0206] In this case, as illustrated in FIG. 41, the risk factor (PFI) of the actions corresponding to the first and third commands is reduced to a reference value of 100 or less, so the color in which the first and third commands are displayed can be changed to a third color (e.g., green).
[0207] Additionally, as illustrated in FIG. 40, “Apply” buttons (2275, 2276) are provided adjacent to the first and third commands so that a recommended reduction in operating speed can be applied to reduce the risk for each command.
[0208] And, as mentioned above, the recommended reduction rate or reduction value of the operating speed to reduce the risk may be automatically applied to the first operation, and for this purpose, a command for automatically applying the reduction rate or reduction value of the operating speed to the first operation may be included in the script (2210).
[0209] Referring to FIG. 42, when the script (2210) displayed on the screen (2200) of the teaching pendant includes commands (2281, 2282) for automatically applying a reduction rate of the operation speed, the reduction rate of the operation speed is automatically applied to reduce the risk (PFI) of the operations corresponding to the first and third commands to a reference value of 100 or less, so that the color in which the first and third commands are displayed can be displayed in a third color (e.g., green).
[0210] Meanwhile, in FIGS. 38 to 42, a case in which the set value below the standard for reducing risk is 99.8 was used as an example to explain, but the present invention is not limited thereto, and the set value below the standard for reducing risk may be changed as needed.
[0211] In the above, the method for providing collision risk reduction information using robot motion simulation according to one embodiment of the present invention has been described as being performed in a teaching pendant, which is a teaching box equipped in a robot system, but the present invention is not limited thereto, and may be performed in a personal computer (PC), laptop, tablet, etc., and may also be performed in a control station for controlling the robot or in the robot itself.
[0212] The methods according to the present invention described above can be produced as a program to be executed on a computer and stored in a computer-readable recording medium. Examples of the computer-readable recording medium include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc.
[0213] Computer-readable recording media can be distributed across network-connected computer systems, allowing computer-readable code to be stored and executed in a distributed manner. Furthermore, functional programs, codes, and code segments for implementing the above method can be readily inferred by programmers skilled in the art to which the present invention pertains.
[0214] Although the preferred embodiments of the present invention have been illustrated and described above, the present invention is not limited to the specific embodiments described above, and various modifications can be made by those skilled in the art without departing from the gist of the present invention as claimed in the claims. Furthermore, such modifications should not be understood individually from the technical idea or prospect of the present invention.
Claims
1. A method for providing collision risk information by simulating the movement of a robot, A step of providing a script consisting of a plurality of commands corresponding to the operations of the robot; A step of calculating the risk level for each action of the above robot; and A method for providing collision risk information using a robot motion simulation, characterized in that it comprises a step of processing the provided script so that a first command corresponding to an operation in which the calculated risk level exceeds a reference value is displayed in a different color from a second command corresponding to an operation in which the risk level is lower than or equal to the ±criterion.
2. In paragraph 1, A method for providing collision risk information using robot motion simulation, characterized in that the above robot is capable of power and force limiting (PFL) cooperative driving.
3. In paragraph 1, A method for providing collision risk information using a robot motion simulation, characterized in that it further includes a step of displaying the calculated risk level for each motion on the above script.
4. In paragraph 1, the script A method for providing collision risk information using a robot motion simulation characterized in that the information is displayed on a teaching pendant provided for the robot.
5. In paragraph 4, A method for providing collision risk information using a robot movement simulation, characterized in that the script is displayed in a first area of the screen of the teaching pendant, and a virtual robot that operates according to commands included in the script is displayed in a second area.
6. In paragraph 5, A method for providing collision risk information using a robot motion simulation, characterized in that a risk area is identified in at least one of the script and the virtual robot at a time when the first command corresponding to an operation in which the calculated risk level exceeds the reference value is executed.
7. In paragraph 1, the risk calculation step is A method for providing collision risk information using robot motion simulation, characterized in that the robot motion is simulated to predict a collision, and the predicted force or predicted pressure and the preset force limit value or pressure limit value are used to calculate the risk level for each motion.
8. In paragraph 7, the risk level for each action is A method for providing collision risk information using a robot motion simulation, characterized in that the calculation is performed using a larger value between a value obtained by dividing the predicted force by the force limit value and a value obtained by dividing the predicted pressure by the pressure limit value.
9. In the first paragraph, the display processing step A method for providing collision risk information using a robot motion simulation, characterized in that the executed command is displayed in one of a plurality of colors as the commands included in the above script are sequentially executed.
10. In paragraph 9, Among the commands included in the above script, the command corresponding to the currently executing action is displayed in the first color. Among the commands included in the above script, the first command corresponding to an action in which the calculated risk level exceeds the above standard is displayed in a second color, A method for providing collision risk information using a robot motion simulation, characterized in that the second command corresponding to an action in which the calculated risk level is lower than or equal to the reference value is displayed in a second color.
11. In paragraph 1, A step of processing the robot to operate according to the commands included in the above script; further comprising; A method for providing collision risk information using a robot motion simulation, characterized in that the motion of the robot is stopped at the time when the first command corresponding to the motion in which the calculated risk level exceeds the reference value is executed.
12. A computer program stored on a computer-readable recording medium for executing any one of the methods of claims 1 to 11 in combination with hardware.
13. A device for performing the method of any one of claims 1 to 11.
14. Power and Force Limiting (PFL) A device for providing collision risk information by simulating the movement of a robot capable of cooperative driving. A script providing module for providing a script consisting of a plurality of commands corresponding to the operations of the above robot; and A risk calculation module that calculates the risk for each action of the above robot; The above script providing module is A robot motion simulation device characterized in that, in the above script, the calculated risk level for each motion is displayed, and a first command corresponding to a motion in which the calculated risk level exceeds a reference value is displayed in a different color from a second command corresponding to a motion in which the risk level is lower than the reference value.
15. In paragraph 14, In the first area of the screen, the above script is displayed, and in the second area, a virtual robot that operates according to the commands included in the above script is displayed. A robot motion simulation device characterized in that, at the time when the first command corresponding to an action in which the calculated risk level exceeds the reference value is executed, a risk area is identified in at least one of the script and the virtual robot.
16. In paragraph 14, the risk level for each action is The predicted force or pressure in the event of a predicted collision is calculated by simulating the motion of the above robot and using the preset force limit value or pressure limit value. A robot motion simulation device characterized in that the device is calculated by using the larger value between a value obtained by dividing the predicted force by the force limit value and a value obtained by dividing the predicted pressure by the pressure limit value.
17. In paragraph 14, the script providing module A robot motion simulation device characterized in that, as the commands included in the above script are sequentially executed, the executed command is displayed in one of a plurality of colors.
Citation Information
Patent Citations
Seismic isolation apparatus for distributing board
KR102212907B1
Method for setting collision sensitivity automatically for cooperative robot
KR102226122B1
Ingot growing apparatus
KR102271706B1
Robot teaching apparatus and method for teaching robot using the same
KR102403568B1
Mask for guard
KR200494533Y1