Electronic device for controlling cooperative operation of plurality of robot devices and control method therefor
The electronic device facilitates safe robotic operations by identifying target robots, monitoring their safety, and transmitting commands to prevent unsafe actions, addressing the challenge of blind spots and sensor limitations through cooperative robotic monitoring, thereby enhancing safety and reducing costs.
Patent Information
- Application Number
- PCT/KR2024/005356
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-06-30
- Filing Date
- 2024-04-19
- Publication Date
- 2025-01-02
AI Technical Summary
In robotic devices, the limited range of sensors leads to blind spots, increasing the risk of accidents and manufacturing costs as more sensors are required to ensure comprehensive environmental monitoring, necessitating a method for cooperative operation between multiple robots to enhance safety without increasing sensor count.
An electronic device with a communication interface, processors, and memory that identifies target robots based on operation information, monitors their safety, and transmits commands to prevent unsafe operations, utilizing map information and sensor data from adjacent robots to cover blind spots and ensure safe operation.
This solution enables safe and efficient operation of robotic devices by leveraging cooperative monitoring between robots, reducing the need for extensive sensor arrays and preventing accidents by identifying and addressing unsafe conditions in real-time.
Smart Images

Figure KR2024005356_02012025_PF_FP_ABST
Abstract
Description
Electronic device for controlling cooperative operation of multiple robotic devices and control method thereof
[0001] The present invention relates to an electronic device and a control method thereof, and more particularly, to an electronic device and a control method thereof for controlling a plurality of robot devices for cooperative operation among the plurality of robot devices.
[0002] Recently, robotic devices are rapidly spreading in various fields, and not only are they replacing the role of humans, but the number of unmanned factories (or smart factories) that operate solely with robotic devices without humans is rapidly increasing.
[0003] If individual robotic devices are autonomous and operate autonomously, a higher level of safety is required than when controlled by humans.
[0004] The number of sensors required for robotic devices to autonomously monitor their surroundings and operate safely while considering potential hazards within the monitored environment is rapidly increasing. For example, with only a limited number of sensors, it is difficult to thoroughly monitor the robot's surroundings, and there is a risk of blind spots.
[0005] If a safety-related accident occurs in a blind spot that the robotic device cannot monitor, there is a risk that it could lead to a major accident.
[0006] As the number of sensors that a robotic device must have increases, the manufacturing cost of the robotic device will increase dramatically, and even with numerous sensors, it may be virtually impossible to perfectly monitor the surrounding environment without any blind spots.
[0007] Accordingly, there has been a demand for a method for performing cooperative actions between robotic devices located within a space, such as a factory, to ensure a high level of safety and to monitor the surrounding environment without blind spots without increasing the number of sensors that each robotic device must have.
[0008] An electronic device according to one embodiment of the present disclosure includes a communication interface, at least one memory storing one or more commands, and at least one processor communicating with the at least one memory to execute the one or more commands, wherein the at least one processor receives operation information of each of a plurality of robot devices through the communication interface, identifies at least one first robot device among the plurality of robot devices as a target device based on the operation information, controls at least one second robot device among the plurality of robot devices to monitor the target device, and upon receiving monitoring data from the at least one second robot device monitoring the target device through the communication interface, identifies whether an operation of the target device is safe based on the monitoring data, and transmits a command to the target device through the communication interface based on a result of the identification of the operation of the target device.
[0009] The at least one memory stores information related to a risky action, and the at least one processor can identify the at least one first robot as the target device if the operation of the at least one first robot device includes the risky action based on the risk-related information.
[0010] The at least one memory stores map information corresponding to a space where the plurality of robot devices are located, the map information includes dangerous area information, and the one or more processors receive location information of each of the plurality of robot devices through the communication interface, and when the location of the at least one first robot device is identified as a dangerous area based on the dangerous area information and the location information, the at least one first robot device can be identified as the target device.
[0011] The one or more processors can identify the at least one second robotic device if the at least one second robotic device is identified within a threshold distance of the target device based on the location information.
[0012] The above monitoring data may include at least one of shooting data of the target device, speed data of the target device, and location data of the target device.
[0013] The one or more processors may identify a preset object located within a threshold distance of the target device based on the photographing data or identify a loading state of an object loaded on the target device as defective based on the photographing data, and may identify the operation of the target device as unsafe, and may transmit the command to the target device through the communication interface if the operation of the target device is identified as unsafe.
[0014] The one or more processors may identify the operation of the target device as unsafe if the driving speed of the target device is greater than or equal to a threshold speed based on the speed data or if the target device is located in a dangerous area based on the location data, and may transmit the command to the target device through the communication interface if the operation of the target device is identified as unsafe.
[0015] The operation information for each of the plurality of robot devices includes information on the operation of each robot device, information identifying whether the operation of each robot device is being performed, and a driving path of each robot device, and the one or more processors, when identifying the at least one second robot device as being in an idle state based on the operation information, identify the at least one second robot device, transmit a command to the at least one second robot device through the communication interface so that the at least one second robot device follows the target device, and identify whether the operation of the target device is safe based on the monitoring data.
[0016] The one or more processors receive location information for each of the plurality of robot devices through the communication interface, and, based on the location information, identify at least one second robot device located adjacent to the target device within a threshold distance, identify the at least one second robot device, control the at least one first robot device to monitor the at least one second robot device through the communication interface, and, when receiving first monitoring data from the target device through the communication interface, identify whether an operation of the at least one second robot device is safe based on the first monitoring data, and transmit a command to the at least one second robot device through the communication interface.
[0017] The above command may include a command to cause the target device to output a warning sound.
[0018] A method for controlling an electronic device according to an embodiment of the present disclosure includes the steps of: receiving operation information of each of a plurality of robot devices; identifying at least one first robot device among the plurality of robot devices as a target device based on the operation information; controlling at least one second robot device among the plurality of robot devices to monitor the target device; receiving monitoring data from the at least one second robot device that monitored the target device; identifying whether an operation of the target device is safe based on the monitoring data; and transmitting a command to the target device based on a result of the identification of the operation of the target device.
[0019] The step of identifying the at least one first robotic device as the target device may include a step of identifying the at least one first robotic device as the target device if the operation of the at least one first robotic device corresponds to a dangerous operation based on information related to the dangerous operation.
[0020] The control method may further include a step of receiving location information of each of the plurality of robot devices, and the step of identifying the at least one first robot device as the target device may include a step of identifying the at least one first robot device as the target device when the location of the at least one first robot device is identified as a dangerous area based on the dangerous area information and the location information, and the step of transmitting the command may include a step of transmitting a command to stop the operation of the target device or to cause the target device to output a warning sound.
[0021] The above control method may further include a step of identifying the at least one second robot device when the at least one second robot device is identified within a threshold distance of the target device based on the location information.
[0022] The above monitoring data may include at least one of shooting data of the target device, speed data of the target device, and location data of the target device.
[0023] A system according to an embodiment of the present disclosure comprises an electronic device including a communication interface, at least one memory storing one or more commands, and at least one processor communicating with the at least one memory to execute the one or more commands, and a plurality of robotic devices, each of the plurality of robotic devices including at least one sensor,
[0024] The one or more processors receive operation information of each of the plurality of robot devices through the communication interface, identify at least one first robot device among the plurality of robot devices as a target device based on the operation information, control at least one second robot device among the plurality of robot devices to monitor the target device, and, upon receiving monitoring data from the at least one second robot device that monitored the target device through the communication interface, identify whether the operation of the target device is safe based on the monitoring data, and transmit a command to the target device through the communication interface based on the identification result of the operation of the target device.
[0025] The at least one memory stores information related to a dangerous action and information on a dangerous area corresponding to a space where the plurality of robot devices are located, and the at least one processor receives location information of each of the plurality of robot devices through the communication interface, and the at least one processor identifies the at least one first robot as the target device if the operation of the at least one first robot device includes the dangerous action based on the danger-related information, or identifies the location of the at least one first robot device as a dangerous area based on the danger area information and the location information, and identifies the at least one first robot device as the target device.
[0026] The one or more processors receive location information of each of the plurality of robotic devices, and when identifying the at least one second robotic device within a threshold distance of the target device based on the location information, the at least one second robotic device can be identified.
[0027] The above monitoring data may include at least one of shooting data of the target device, speed data of the target device, and location data of the target device.
[0028] The operation information for each of the plurality of robot devices includes information on the operation of each robot device, information identifying whether the operation of each robot device is being performed, and a driving path of each robot device, and the one or more processors, when identifying the at least one second robot device as being in an idle state based on the operation information, identify the at least one second robot device, transmit a command to the at least one second robot device through the communication interface so that the at least one second robot device follows the target device, and identify whether the operation of the target device is safe based on the monitoring data.
[0029] The above aspects, features and advantages of some embodiments of the present invention will be more clearly revealed through the attached drawings together with the following description.
[0030] FIG. 1 is a diagram for explaining operations between an electronic device and a plurality of robotic devices according to one embodiment of the present disclosure.
[0031] FIG. 2 is a block diagram illustrating an electronic device according to an embodiment of the present disclosure.
[0032] FIG. 3 is a diagram illustrating robotic devices for monitoring a target device according to one embodiment of the present disclosure.
[0033] FIG. 4 is a diagram illustrating an electronic device for identifying a loading state of an object loaded on a target device according to one embodiment of the present disclosure.
[0034] FIG. 5 is a diagram illustrating an electronic device for identifying a target device using location information according to one embodiment of the present disclosure.
[0035] FIG. 6 is a diagram illustrating an electronic device for identifying a second robotic device located within a threshold distance from a target device according to one embodiment of the present disclosure.
[0036] FIG. 7 is a diagram illustrating an electronic device for controlling a second robotic device to monitor a target device according to an example of the present disclosure.
[0037] FIG. 8 is a diagram illustrating an electronic device for controlling a second robotic device to monitor a target device according to an example of the present disclosure.
[0038] FIG. 9 is a diagram for explaining a method in which a first robot device and a second robot device, each of which is positioned adjacent to each other, monitor each other and acquire monitoring data corresponding to the first robot device and monitoring data corresponding to the second robot device, according to an example of the present disclosure.
[0039] FIG. 10 is a flowchart for explaining a control method of an electronic device according to an example of the present disclosure.
[0040] Hereinafter, the present disclosure will be described in detail with reference to the attached drawings.
[0041] In describing some embodiments of this disclosure, general terms have been selected with consideration given to the functionality of this disclosure and may change based on the intentions of the technicians, precedents, the emergence of new technologies, etc. If the applicant arbitrarily selects a term to have a specific meaning, the meaning of that term will be detailed in the corresponding description of this disclosure. Where necessary, terms used in this disclosure should be defined based on their specific meaning and the context of this disclosure.
[0042] As used herein, expressions such as “at least one of A and B” and “at least one of A or B” can refer to “A” or “B” or “A and B”.
[0043] As used herein, the expressions “first,” “second,” “first,” or “second,” etc., may describe various components, regardless of order and / or importance, and are only used to distinguish one component from another, but do not limit the components.
[0044] When it is said that a component (e.g., a first component) is “(operatively or communicatively) coupled with / to” or “connected to” another component (e.g., a second component), it should be understood that the component may be directly coupled to the other component, or may be connected through another component (e.g., a third component).
[0045] Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, terms such as "comprise" or "consist of" are intended to indicate the presence of a feature, number, step, operation, component, part, or combination thereof described in the specification, but should be understood not to preclude the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.
[0046] In the embodiments described herein, a "module" or "part" performs at least one function or operation and may be implemented in hardware, software, or a combination of hardware and software. Furthermore, multiple "modules" or multiple "parts" may be integrated into at least one module and implemented as at least one processor, excluding any "modules" or "parts" that need to be implemented as specific hardware.
[0047] In this specification, the term “user” may refer to a person using an electronic device or a device using an electronic device (e.g., an artificial intelligence electronic device).
[0048] An embodiment of the present disclosure will be described in more detail with reference to the attached drawings below.
[0049] FIG. 1 is a diagram for explaining the operation between an electronic device and a plurality of robotic devices according to one embodiment of the present disclosure.
[0050] An electronic device (100) according to one embodiment of the present disclosure performs communication with a plurality of robot devices (10, 20, 30) and can transmit and receive various data with the plurality of robot devices (10, 20, 30).
[0051] For example, the electronic device (100) can receive motion information from each of a plurality of robotic devices (10, 20, 30).
[0052] Here, each of the plurality of motion information received by the electronic device (100) can indicate the current status of the corresponding robot device.
[0053] For example, the motion information may include the motion (or task) being performed by the robot device, the total time (or time required) required for the motion, the elapsed time and remaining time after the motion started, and if the motion requires movement of the robot device, the movement path (or driving path) of the robot device.
[0054] Here, the motion being performed by the robot device may include a specific motion name (e.g., object carrying motion, object gripping motion, etc.) and may also include whether each of the plurality of components included in the robot device is driven, the degree of load, etc.
[0055] For example, if a robotic device includes an actuator consisting of a wheel, a brake, a motor, etc., the operation information of the robotic device may include whether the actuator is driven, the driving direction of the actuator, the driving speed, the load level of the actuator, etc.
[0056] For example, if a robotic device includes a robotic joint that performs a function similar to that of a human arm or hand, the motion information of the robotic device may include whether the robotic joint is driven, the direction of drive, the speed of drive, the degree of load, etc.
[0057] For example, a robotic device may monitor the surrounding environment of the robotic device through various sensors provided in the robotic device to comply with safety regulations and prevent accidents while performing an operation, and may stop (or pause) the operation, adjust the speed at which the operation is performed (e.g., change the driving speed), or change the way the operation is performed (e.g., change the driving path) based on the monitored surrounding environment.
[0058] However, there is a limit to the range of surrounding environments that a robot device can monitor using only the sensors equipped on the robot device itself, and there is a problem that accidents may occur due to some areas that the sensors cannot monitor (e.g., blind spots of the robot device), or the number of sensors that must be equipped on the robot device increases, which increases the manufacturing cost of the robot device.
[0059] An electronic device (100) according to the present disclosure identifies at least one robot device as a target device based on operation information of each of a plurality of robot devices (10, 20, 30), controls at least one robot device among the remaining robot devices to monitor (or detect, monitor) the target device, thereby more precisely monitoring the surrounding environment of the target device while the target device performs an operation, and controls the target device so that an accident does not occur (or so as to comply with safety regulations) while the target device performs an operation based on monitoring data received from at least one robot device that monitored the target device.
[0060] For a detailed explanation of this, please refer to Fig. 2.
[0061] FIG. 2 is a block diagram illustrating an electronic device according to an example of the present disclosure.
[0062] Referring to FIG. 2, the electronic device (100) includes a communication interface (110), one or more processors (120), and one or more memory modules (130).
[0063] An electronic device (100) according to an embodiment of the present disclosure is described as a server capable of communicating with a plurality of robot devices (10, 20, 30) for convenience of explanation, but is not limited thereto. For example, the electronic device (100) may include at least one of a TV, a user terminal device, a tablet PC, a mobile phone, a video phone, an e-book reader, a desktop PC, a laptop PC, a netbook computer, a workstation, a server, a PDA, a portable multimedia player (PMP), an MP3 player, a medical device, a camera, a virtual reality (VR) implementation device, or a wearable device. Here, the wearable device may include at least one of an accessory type (e.g., a watch, a ring, a bracelet, an anklet, a necklace, glasses, a contact lens, or a head-mounted device (HMD)), a fabric or clothing-integrated type (e.g., an electronic garment), a body-attached type (e.g., a skin pad or tattoo), or a bio-implantable circuit. In one or more embodiments, the electronic device (100) may be a television, a digital video disk (DVD) player, an audio, a refrigerator, an air conditioner, a vacuum cleaner, an oven, a microwave oven, a washing machine, an air purifier, a source device (e.g., a set-top box, a cloud server, an over-the-top media service (OTT) server, etc.), a home automation control panel, a security control panel, a media box (e.g., an Apple TV). TM , or Google TV TM ), LED S-Box, game console (e.g. XboxTM , PlayStation TM , Nintendo Switch TM ), may include at least one of an electronic dictionary, an electronic key, a camcorder, or an electronic picture frame.
[0064] In another embodiment, the electronic device (100) may be a medical device (e.g., various portable medical measuring devices (e.g., blood glucose meter, heart rate meter, blood pressure meter, or body temperature meter, etc.), body hydration meter, magnetic resonance angiography (MRA), magnetic resonance imaging (MRI), computed tomography (CT), camera, or ultrasound machine, etc.), navigation device, global navigation satellite system (GNSS (global navigation satellite system)), event data recorder (EDR), flight data recorder (FDR), automobile infotainment device, electronic equipment for ships (e.g., marine navigation device, gyrocompass, etc.), avionics, security device, head unit for vehicles, industrial or home robots, drones, ATMs of financial institutions, POS (point of sales) of stores, or Internet of Things devices (e.g., light bulbs, various sensors, sprinkler devices, fire alarms, thermostats, street lights, toasters, exercise equipment, hot water tanks, heaters, boilers, etc.) May include at least one of:
[0065] The communication interface (110) provided in the electronic device (100) communicates with external devices (such as robot devices), servers, etc., and receives various types of data and information. For example, the communication interface (110) can receive various types of data and information from external devices, external storage media (such as USB memory), servers (such as web hard drives), etc., through communication methods such as AP-based Wi-Fi (Wireless LAN network), Bluetooth, Zigbee, wired / wireless LAN (Local Area Network), WAN (Wide Area Network), Ethernet, IEEE 1394, HDMI (High-Definition Multimedia Interface), USB (Universal Serial Bus), MHL (Mobile High-Definition Link), AES / EBU (Audio Engineering Society / European Broadcasting Union), optical, coaxial, etc.
[0066] In particular, the communication interface (110) can receive motion information, monitoring data, etc. from the robot device under the control of one or more processors (120) and transmit commands to the target device.
[0067] One or more processors (120) according to one embodiment of the present disclosure control the overall operation of the electronic device (100).
[0068] According to an example, one or more processors (120) may be implemented as a digital signal processor (DSP), a microprocessor, or a timing controller (TCON) that processes digital signals. However, the present invention is not limited thereto, and may include one or more of a central processing unit (CPU), a micro controller unit (MCU), a micro processing unit (MPU), a controller, an application processor (AP), a communication processor (CP), an ARM processor, or an artificial intelligence (AI) processor, or may be defined by the relevant terms. In addition, one or more processors (120) may be implemented as a system on chip (SoC) having a built-in processing algorithm, a large scale integration (LSI), or may be implemented in the form of a field programmable gate array (FPGA). One or more processors (120) may perform various functions by executing computer executable instructions stored in a memory (e.g., a memory (130)).
[0069] The one or more processors (120) may include one or more of a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), an Accelerated Processing Unit (APU), a Many Integrated Core (MIC), a Digital Signal Processor (DSP), a Neural Processing Unit (NPU), a hardware accelerator, or a machine learning accelerator. The one or more processors (120) may control one or any combination of other components of the electronic device, and may perform operations related to communication or data processing. The one or more processors (120) may execute one or more programs or instructions stored in a memory (e.g., a memory (130)). For example, the one or more processors (120) may perform a method according to an embodiment of the present disclosure by executing one or more instructions stored in a memory (e.g., a memory (130)).
[0070] When a method according to an embodiment of the present disclosure includes multiple operations, the multiple operations may be performed by one processor or by multiple processors. For example, when a first operation, a second operation, and a third operation are performed by a method according to an embodiment, the first operation, the second operation, and the third operation may all be performed by the first processor, or the first operation and the second operation may be performed by the first processor (e.g., a general-purpose processor) and the third operation may be performed by the second processor (e.g., an artificial intelligence-specific processor).
[0071] One or more processors (120) may be implemented as a single core processor including one core, or may be implemented as one or more multicore processors including multiple cores (e.g., homogeneous multicores or heterogeneous multicores). When one or more processors (120) are implemented as a multicore processor, each of the multiple cores included in the multicore processor may include an internal processor memory, such as a cache memory or an on-chip memory, and a common cache shared by the multiple cores may be included in the multicore processor. In addition, each of the multiple cores (or some of the multiple cores) included in the multicore processor may independently read and execute a program instruction for implementing a method according to an embodiment of the present disclosure, or all (or some) of the multiple cores may be linked to read and execute a program instruction for implementing a method according to an embodiment of the present disclosure.
[0072] When a method according to an embodiment of the present disclosure includes a plurality of operations, the plurality of operations may be performed by one core among the plurality of cores included in a multi-core processor, or may be performed by the plurality of cores. For example, when a first operation, a second operation, and a third operation are performed by a method according to an embodiment, the first operation, the second operation, and the third operation may all be performed by a first core included in the multi-core processor, or the first operation and the second operation may be performed by a first core included in the multi-core processor, and the third operation may be performed by a second core included in the multi-core processor.
[0073] In embodiments of the present disclosure, a processor may mean a system on a chip (SoC) in which one or more processors and other electronic components are integrated, a single-core processor, a multi-core processor, or a core included in a single-core processor or a multi-core processor, wherein the core may be implemented as a CPU, a GPU, an APU, a MIC, a DSP, an NPU, a hardware accelerator, or a machine learning accelerator, but embodiments of the present disclosure are not limited thereto.
[0074] FIG. 3 is a drawing for explaining robot devices for monitoring a target device according to one embodiment of the present disclosure.
[0075] According to an example, one or more processors (120) can receive operation information of each of a plurality of robot devices (10, 20, 30) through a communication interface.
[0076] According to an example, one or more processors (120) can identify a first robot device (10) among a plurality of robot devices (10, 20, 30) as a target device based on a plurality of pieces of motion information.
[0077] For example, the electronic device (100) may further include a memory (e.g., memory (130)) in which information related to risky actions is stored.
[0078] One or more processors (120) can identify the first robot device (10) as a target device when the operation of the first robot device (10) among the plurality of robot devices corresponds to a dangerous operation based on information related to the dangerous operation.
[0079] For example, based on the operation information of the first robot device (10), if the name of the operation being performed by the first robot device (10) corresponds to any one of a plurality of predefined names according to the risk operation related information, the one or more processors (120) can identify the operation of the first robot device (10) as a risk operation and identify the first robot device (10) as a target device.
[0080] For example, if one or more processors (120) identify, based on the operation information of the first robot device (10), whether or not each of the plurality of components included in the first robot device (10) is operating, the load level, etc., as satisfying a predefined condition (e.g., i) at least one component among the plurality of components is operating, and ii) the load level of at least one component exceeds a critical load) according to information related to a dangerous operation, the operation of the first robot device (10) can be identified as a dangerous operation, thereby identifying the first robot device (10) as a target device.
[0081] However, this is just an example and is not limited thereto. For example, one or more processors (120) may identify the operation of the first robot device (10) as a dangerous operation and identify the first robot device (10) as a target device based on the operation information of the first robot device (10) if the first robot device (10) is performing an operation (i.e., if the first robot device (10) is not in an idle state).
[0082] For example, one or more processors (120) input the operation information of the first robotic device (10) into a neural network model, and the neural network model can output whether the operation of the first robotic device (10) corresponds to a dangerous operation. One or more processors (120) can identify the first robotic device (10) as a target device based on the output of the neural network model.
[0083] A neural network model according to an example may be a model trained to output whether or not an action based on the action information corresponds to a dangerous action when the action information of the robot device is input by using the action names (or task names) of various robot devices, the operation status of each of the various components provided in the robot devices, the load level, etc. as learning data.
[0084] The artificial intelligence-related function according to the present disclosure is operated through one or more processors (120) and memory (e.g., memory (130)) of the electronic device (100).
[0085] At this time, one or more processors may include at least one of a CPU (Central Processing Unit), a GPU (Graphic Processing Unit), and an NPU (Neural Processing Unit), but are not limited to the examples of the processors described above.
[0086] CPUs are general-purpose processors capable of performing not only general calculations but also artificial intelligence calculations. Their multi-layered cache structure allows for the efficient execution of complex programs. CPUs are advantageous for serial processing, enabling organic linking of previous and subsequent calculation results through sequential calculations. General-purpose processors are not limited to the examples described above, except where specifically identified as CPUs.
[0087] A GPU is a processor designed for large-scale computations, such as floating-point operations used in graphics processing. It integrates a large number of cores to perform large-scale computations in parallel. In particular, GPUs may be advantageous over CPUs in parallel processing methods, such as convolution operations. Furthermore, GPUs can be used as coprocessors to supplement the functions of CPUs. Processors for large-scale computations are not limited to the examples described above, except in cases where they are specifically referred to as GPUs.
[0088] An NPU is a processor specialized in artificial intelligence computation using artificial neural networks, and each layer of the artificial neural network can be implemented in hardware (e.g., silicon). Since NPUs are designed specifically according to the company's specifications, they have less freedom than CPUs or GPUs, but can efficiently process the AI computations requested by the company. As a processor specialized in AI computation, an NPU can be implemented in various forms, such as a Tensor Processing Unit (TPU), an Intelligence Processing Unit (IPU), or a Vision Processing Unit (VPU). Except as specifically stated as an NPU, an AI processor is not limited to the examples described above.
[0089] Additionally, one or more processors may be implemented as a System on Chip (SoC). In this case, in addition to one or more processors, the SoC may further include a memory (e.g., memory (130)), and a network interface such as a bus for data communication between the processor and the memory.
[0090] When a plurality of processors are included in a SoC (System on Chip) included in an electronic device (100), the electronic device (100) may perform operations related to artificial intelligence (e.g., operations related to learning or inference of an artificial intelligence model) by using some of the plurality of processors. For example, the electronic device (100) may perform operations related to artificial intelligence by using at least one of a GPU, an NPU, a VPU, a TPU, and a hardware accelerator specialized in artificial intelligence operations such as convolution operations and matrix multiplication operations among the plurality of processors. However, this is merely an example, and it is of course possible to process operations related to artificial intelligence by using a CPU or a general-purpose processor.
[0091] In addition, the electronic device (100) can perform operations related to functions related to artificial intelligence by utilizing multiple cores (e.g., dual cores, quad cores, etc.) included in one processor (120). In particular, the electronic device (100) can perform artificial intelligence operations such as convolution operations, matrix multiplication operations, etc. in parallel by utilizing multiple cores included in the processor (120).
[0092] One or more processors (120) can process input data according to predefined operation rules or artificial intelligence models stored in a memory (e.g., memory (130)). The predefined operation rules or artificial intelligence models are characterized by being created through learning.
[0093] Here, "created through learning" means that a predefined set of behavioral rules or an AI model with desired characteristics is created by applying a learning algorithm to a large amount of learning data. This learning may be performed on the device itself, where the AI according to the present disclosure is implemented, or through a separate server / system.
[0094] An artificial intelligence model may be composed of multiple neural network layers. At least one layer has at least one weight value and performs its operation through the operation result of the previous layer and at least one defined operation. Examples of neural networks include a convolutional neural network (CNN), a deep neural network (DNN), a recurrent neural network (RNN), a restricted boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), deep Q-networks, and a transformer. The neural networks in the present disclosure are not limited to the above-described examples unless otherwise specified.
[0095] A learning algorithm is a method for training a target device (e.g., a robot) using a large amount of learning data, enabling the target device to make decisions or predictions on its own. Examples of learning algorithms include supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning. Unless otherwise specified, the learning algorithms in this disclosure are not limited to the aforementioned examples.
[0096] According to an example, one or more processors (120) may control the remaining robot devices (20, 30) among the plurality of robot devices (10, 20, 30) so that the remaining robot devices (20, 30) monitor the target device. Furthermore, it should be understood that one or more processors (120) may control at least one robot device (e.g., a second robot device (20) or a third robot device (30)) among the remaining robot devices (20, 30) so that the second robot device (20) or the third robot device (30)) monitors the target device.
[0097] For example, each of the remaining robotic devices (20, 30) can monitor the target device using the provided sensors under the control of one or more processors (120).
[0098] For example, one or more processors (120) can identify whether the operation of the target device is safe based on the monitoring data transmitted from the remaining robot devices (20, 30).
[0099] Monitoring data according to an example may include at least one of photographic data of the target device, speed data of the target device, and position data of the target device obtained through sensors included in each of the remaining robot devices (20, 30).
[0100] For example, the sensors included in each of the remaining robot devices (20, 30) may include a Lidar sensor, a camera (e.g., RGB-D), a pressure sensor, an infrared sensor, an ultrasonic sensor, etc.
[0101] One or more processors (120) according to an example may transmit a command to control the target device to the target device when the operation of the target device is identified as unsafe based on monitoring data received from the remaining robotic devices (20, 30).
[0102] Referring to FIG. 3, one or more processors (120) can identify the operation of the target device as unsafe if a preset object is located within a threshold distance from the target device based on the shooting data received from the remaining robot devices (20, 30).
[0103] One or more processors (120) can identify whether the operation of the first robot device (10) among the plurality of robot devices (10, 20, 30) is a dangerous operation based on the operation information of the first robot device (10). For example, if the operation of the first robot device (10) is a backward movement at a preset speed, one or more processors (120) can identify the operation of the first robot device (10) as a dangerous operation based on the dangerous operation-related information.
[0104] One or more processors (120) can identify the first robotic device (10) as a target device and control the remaining robotic devices (20, 30) to monitor the target device.
[0105] If the sensor equipped in the first robot device (10) according to an example only monitors the front of the first robot device (10) and does not monitor the rear, there is a problem in that the first robot device (10) driving backwards cannot monitor an object located at the rear corresponding to the driving direction of the first robot device (10).
[0106] The remaining robotic devices (20, 30) according to an example can monitor the surrounding environment of the first robotic device (10) under the control of one or more processors (120). For example, a sensor provided in each of the remaining robotic devices (20, 30) can monitor an object located at the rear of the first robotic device (10).
[0107] For example, one or more processors (120) can identify whether the operation of the target device is safe based on the captured data received from the remaining robotic devices (20, 30). For example, one or more processors (120) can identify the operation of the target device as unsafe if a preset object (e.g., a person, a flammable material, a fragile material, an obstacle (e.g., a stationary robot, a shelf, etc.)) is located within a threshold distance from the target device.
[0108] One or more processors (120) according to an example may transmit a command to control the target device when the operation of the target device is identified as unsafe.
[0109] One or more processors (120) can identify whether the operation of the first robot device (10) among the plurality of robot devices (10, 20, 30) is a dangerous operation based on the operation information of the first robot device (10). For example, if the operation of the first robot device (10) is forward driving at a preset speed, one or more processors (120) can identify the operation of the first robot device (10) as a dangerous operation based on the dangerous operation-related information.
[0110] One or more processors (120) can identify the first robotic device (10) as a target device and control the remaining robotic devices (20, 30) to monitor the target device. As an example, the one or more processors (120) can also control some of the remaining robotic devices (20, 30) (for example, at least one of the second robotic device (20) or the third robotic device (30)) to monitor the target device.
[0111] If a sensor equipped in a first robot device (10) according to an example fails to monitor the driving speed of the first robot device (10), or an error occurs in an actuator equipped in the first robot device (10) for various reasons, there is a risk that the first robot device (10) may drive forward at a speed exceeding a preset speed.
[0112] The remaining robotic devices (20, 30) according to an example can monitor the surrounding environment of the first robotic device (10) under the control of one or more processors (120). For example, a sensor provided in each of the remaining robotic devices (20, 30) can monitor the driving speed of the first robotic device (10).
[0113] For example, one or more processors (120) can receive speed data from the remaining robot devices (20, 30) to identify the driving speed of the target device.
[0114] One or more processors (120) can identify whether the operation of the target device is safe based on the speed data received from the remaining robot devices (20, 30). For example, one or more processors (120) can identify the operation of the target device as unsafe if the driving speed of the target device exceeds a threshold speed (or a preset speed).
[0115] One or more processors (120) according to an example may transmit a command to control the target device when the operation of the target device is identified as unsafe.
[0116] However, the present invention is not limited to the above-described examples, and one or more processors (120) can identify whether the operation of the target device is unstable in various ways using monitoring data received from the remaining robot devices (20, 30).
[0117] FIG. 4 is a drawing for explaining a robot device for identifying a loading state of an object loaded on a target device according to one embodiment of the present disclosure.
[0118] Referring to FIG. 4, one or more processors (120) can identify the first robot device (10) among the plurality of robot devices (10, 20, 30) as a target device if the operation of the first robot device (10) is a transport operation of an object loaded on the first robot device (10).
[0119] For example, when one or more processors (120) determine, based on the operation information received from the first robot device (10), that the operation name of the first robot device (10) is an object transport operation, or when a pressure exceeding a threshold value (e.g., pressure due to the load of the main body of the first robot device (10)) is detected in an actuator of the first robot device (10) due to an object loaded on the first robot device (10), the one or more processors (120) can identify that an object is loaded on the first robot device (10) and identify the operation of the first robot device (10) as a dangerous operation.
[0120] In one example, one or more processors (120) can control the remaining robot devices (20, 30) among the plurality of robot devices (10, 20, 30) to monitor the target device.
[0121] For example, a sensor equipped in a first robot device (10) may not be able to monitor the loading status of an object loaded on the first robot device (10). If the first robot device (10) performs an object transport operation in an unsafe loading status, there is a risk of an accident occurring, such as the loaded object collapsing.
[0122] The remaining robotic devices (20, 30) according to an example can monitor the surrounding environment of the first robotic device (10) under the control of one or more processors (120). For example, a sensor provided in each of the remaining robotic devices (20, 30) can capture an object loaded on the first robotic device (10) and obtain capture data.
[0123] For example, one or more processors (120) can receive shooting data from the remaining robot devices (20, 30) to identify whether the loading status of an object loaded on a target device is defective.
[0124] According to an example, one or more processors (120) may identify the operation of the target device as unsafe if the loading status of an object loaded on the target device is identified as defective or improper.
[0125] One or more processors (120) according to an example may transmit a command to control the target device when the operation of the target device is identified as unsafe.
[0126] For example, if one or more processors (120) identify that the operation of the target device is unsafe, they may transmit to the target device a command to stop the operation of the target device, a command to adjust the speed at which the target device performs the operation, or a command to control the target device to output a warning sound (e.g., a beep).
[0127] FIG. 5 is a diagram illustrating an electronic device for identifying a target device using location information according to an embodiment of the present disclosure.
[0128] An electronic device (100) according to an example of the present disclosure may further include a memory (130) in which map information corresponding to a space where a plurality of robot devices (10, 20, 30) are located is stored.
[0129] Here, the map information identifies points where there is a dividing line or a curb, a point where the movable width is narrowed, a point where there is a wall, a point where a wall begins, a point where a wall ends, a point where there is a door, a point where an obstacle (e.g., a stationary robot, a shelf, a rail, etc.) is located within a space (e.g., a factory, a warehouse, etc.) where a plurality of robot devices (10, 20, 30) are located, thereby dividing the space into a plurality of regions (e.g., a movable region, a non-movable region, etc.), and may include information on the size and shape of each of the plurality of regions, and information on the size, shape, and position of obstacles located in each of the plurality of regions.
[0130] In particular, map information may include information about a hazardous area within a space (hereinafter, hazardous area information).
[0131] For example, the risk area information may be settable based on user input. However, the present invention is not limited thereto, and one or more processors (120) may, of course, identify an area that satisfies a preset condition based on map information as risk area information. For example, one or more processors (120) may, based on map information, identify a point where the movement width within a movable area becomes narrow, a point where an obstacle is located adjacent to (e.g., within a critical distance from) the movable area, a point where a sharp curve (sharp turn) is present within the movable area, a point adjacent to a preset object (e.g., a flammable material, a fragile material, an obstacle (e.g., a fixed robot, a shelf, a rail, etc.), etc.), etc., as risk area information.
[0132] A memory (e.g., memory (130)) according to an example can store data required for various embodiments of the present disclosure. Depending on the data storage purpose, the memory may be implemented in the form of memory embedded in the electronic device (100) or may be implemented in the form of memory that can be attached or detached to the electronic device (100).
[0133] For example, data for driving an electronic device (100) may be stored in a memory (130) embedded in the electronic device (100), and data for an extended function of the electronic device (100) may be stored in a memory that is detachable from the electronic device (100). In the case of the memory (130) embedded in the electronic device (100), it may be implemented as at least one of volatile memory (e.g., dynamic RAM (DRAM), static RAM (SRAM), or synchronous dynamic RAM (SDRAM)), non-volatile memory (e.g., one time programmable ROM (OTPROM), programmable ROM (PROM), erasable and programmable ROM (EPROM), electrically erasable and programmable ROM (EEPROM), mask ROM, flash ROM, flash memory (e.g., NAND flash or NOR flash), hard drive, or solid state drive (SSD)). In addition, in the case of the memory that can be attached or detached to the electronic device (100), it may be implemented as at least one of a memory card (e.g., compact flash (CF), secure digital (SD), micro secure digital (Micro-SD), mini secure digital (Mini-SD), extreme digital (xD), multi-media card (MMC), etc.), and external memory that can be connected to a USB port (e.g., USB memory). It can be implemented in the following form.
[0134] As an example, the memory (130) may store a computer program including at least one instruction or instructions for controlling the electronic device (100).
[0135] One or more processors (120) according to one embodiment of the present disclosure can receive location information from each of a plurality of robot devices (10, 20, 30) through a communication interface (110).
[0136] For example, each of the plurality of robot devices (10, 20, 30) may be equipped with a GPS sensor to obtain corresponding location information. However, the present invention is not limited thereto, and each of the plurality of robot devices (10, 20, 30) may obtain corresponding location information by using a dividing line (or, partition line) drawn on the floor of the space, or may obtain corresponding location information by using photographed data obtained through a camera.
[0137] When one or more processors (120) receive corresponding location information from each of a plurality of robot devices (10, 20, 30), they can identify at least one robot device located in a dangerous area according to dangerous area information among the plurality of robot devices (10, 20, 30) based on the plurality of location information.
[0138] For example, when one or more processors (120) identify a first robot device (10) among a plurality of robot devices (10, 20, 30) as being located in a dangerous area, the first robot device (10) may be identified as a target device.
[0139] Next, one or more processors (120) can control the remaining robotic devices (20, 30) to monitor the target device. In one example, the remaining robotic devices (20, 30) can monitor the target device and the surrounding environment of the target device under the control of one or more processors (120).
[0140] One or more processors (120) may control the communication interface (110) to transmit a command to the target device (e.g., a command to stop or pause an operation, adjust an operation performance speed, or change an operation performance method) based on the surrounding environment of the target device monitored by the remaining robotic devices (20, 30). For example, the one or more processors (120) may control the communication interface (110) to transmit a command to the target device to control the target device if the operation of the target device is identified as unsafe based on monitoring data received from the remaining robotic devices (20, 30).
[0141] FIG. 6 is a diagram illustrating an electronic device for identifying a second robotic device located within a threshold distance from a target device according to one embodiment of the present disclosure.
[0142] According to one example of the present disclosure, when one or more processors (120) identify a first robot device (10) among a plurality of robot devices (10, 20, 30) as a target device, the processors can identify a second robot device (20) located within a threshold distance from the current location of the target device based on location information received from each of the plurality of robot devices (10, 20, 30).
[0143] One or more processors (120) according to an example may control a second robotic device (20) to monitor a target device.
[0144] For example, one or more processors (120) may identify the first robot device (10) among the plurality of robot devices as a target device if the operation of the first robot device (10) corresponds to a dangerous operation based on a plurality of pieces of motion information. In one example, one or more processors (120) may identify a second robot device (20) located within a threshold distance from the target device.
[0145] For example, one or more processors (120) may identify a first robot device (10) located in a dangerous area according to dangerous area information among a plurality of robot devices (10, 20, 30) as a target device based on a plurality of location information. In one example, one or more processors (120) may identify a second robot device (20) located within a threshold distance from the target device, and control the second robot device (20) to monitor the target device and the surrounding environment of the target device.
[0146] One or more processors (120) according to an example can identify whether the operation of the target device is safe based on monitoring data received from the second robot device (20).
[0147] FIG. 7 is a diagram illustrating an electronic device for controlling a second robotic device to monitor a target device according to an example of the present disclosure.
[0148] Each of the plurality of robotic devices (10, 20, 30) according to one embodiment of the present disclosure may be performing an operation.
[0149] For example, the first robot device (10) may be performing an operation of transporting a loaded object, and the second robot device (20) may be performing an operation of moving from a first location to a second location along a driving path.
[0150] When the first robot device (10) is identified as a target device, one or more processors (120) can control i) the remaining robot devices (20, 30) excluding the first robot device (10) among the plurality of robot devices (10, 20, 30) to monitor the first robot device (10), and ii) the second robot device (20) among the remaining robot devices (20, 30) located within a threshold distance from the first robot device (10) can be controlled to monitor the first robot device (10).
[0151] For example, one or more processors (120) may receive, from the second robot device (20), location information of a second robot device (20) performing an operation of moving from a first location to a second location, and, based on the received location information of the second robot device (20), control the second robot device (20) to monitor the first robot device (10) while the second robot device (20) is located within a threshold distance from the first robot device (10).
[0152] Accordingly, the second robot device (20) can monitor the first robot device (10) only while it is adjacent to the first robot device (10) while performing the operation of the second robot device (20) (i.e., the operation of moving from the first position to the second position along the driving path).
[0153] For example, the third robotic device (30) may monitor the first robotic device (10) only while it is adjacent to the first robotic device (10) while the third robotic device (30) is performing an operation (e.g., an operation of assembling modules at a fixed location).
[0154] Accordingly, while the first robot device (10) performs an operation (e.g., an operation of transporting a loaded object), the second robot device (20) can monitor the first robot device (10) during a first time interval and transmit monitoring data to the electronic device (100), and the third robot device (30) can monitor the first robot device (10) during a second time interval and transmit monitoring data to the electronic device (100).
[0155] According to an example, one or more processors (120) can identify whether the operation of the first robot device (10) is safe based on monitoring data received from the second robot device (20) during a first time interval, and can identify whether the operation of the first robot device (10) is safe based on monitoring data received from the third robot device (30) during a second time interval.
[0156] Here, it is obvious that the sum of the first time interval and the second time interval may or may not correspond to the total time required for the first robot device (10) to perform an operation.
[0157] FIG. 8 is a drawing illustrating an electronic device for controlling a second robotic device to monitor a target device according to an example of the present disclosure.
[0158] According to an example of the present disclosure, one or more processors (120) can identify a first robot device (10) among a plurality of robot devices (10, 20, 30) as a target device based on a plurality of pieces of motion information.
[0159] Next, one or more processors (120) can identify at least one robotic device (e.g., a second robotic device (20)) for monitoring the target device based on the motion information corresponding to each of the remaining robotic devices (20, 30).
[0160] For example, one or more processors (120) can identify a second robot device (20) that is in an idle state based on the motion information corresponding to each of the remaining robot devices (20, 30).
[0161] One or more processors (120) can control the second robotic device (20) to follow the target device and monitor the target device while the second robotic device (20) follows the target device.
[0162] For example, as illustrated in FIG. 8, a second robot device (20) in an idle state can monitor the first robot device (10) while maintaining a critical distance from the first robot device (10) under the control of the electronic device (100) while the first robot device (10) performs an operation (e.g., an operation of transporting a loaded object).
[0163] Accordingly, while the first robot device (10) performs an operation (e.g., an operation of transporting a loaded object), the second robot device (20) can monitor the first robot device (10) during the first time interval and transmit monitoring data to the electronic device (100).
[0164] According to an example, one or more processors (120) may identify whether the operation of the first robotic device (10) is safe based on monitoring data received from the second robotic device (20) during a first time interval. Here, the first time interval may or may not correspond to the total time required for the first robotic device (10) to perform the operation.
[0165] One or more processors (120) according to an example can identify priorities among operations being performed by each of the plurality of robot devices (10, 20, 30) based on operation information received from each of the plurality of robot devices (10, 20, 30).
[0166] For example, one or more processors (120) may identify priorities (or priority rankings) among operations being performed by each of the plurality of robot devices (10, 20, 30) based on operation scheduling. Operation scheduling may be set based on user input, or may be set based on various conventional criteria (e.g., operation duration, order of precedence among the plurality of operations based on sequence information) and methods for setting priorities among the plurality of operations.
[0167] One or more processors (120) can identify the first robot device (10) as a target device when the operation of the first robot device (10) among the plurality of robot devices corresponds to a dangerous operation based on information related to the dangerous operation.
[0168] Next, one or more processors (120) can identify a second robot device (20) that performs an operation with a relatively lower priority than the priority of the operation being performed by the first robot device (10) among the operations being performed by each of the remaining robot devices (20, 30). In addition, one or more processors (120) can identify a third robot device (30) that performs an operation with a relatively higher priority than the priority of the operation being performed by the first robot device (10).
[0169] In one example, one or more processors (120) may stop (or pause) an operation being performed by the second robot device (20) (in one example, an operation having a relatively lower priority than the priority of an operation being performed by the first robot device (10)) and thereby switch the second robot device (20) to an idle state. Subsequently, one or more processors (120) may control the second robot device (20) to follow the target device and monitor the target device while the second robot device (20) follows the target device.
[0170] For example, as illustrated in FIG. 8, a second robot device (20) in an idle state can monitor the first robot device (10) while maintaining a critical distance from the first robot device (10) under the control of the electronic device (100) while the first robot device (10) performs an operation (e.g., an operation of transporting a loaded object).
[0171] For example, when the first robot device (10) completes an operation (e.g., an operation of transporting a loaded object), one or more processors (120) may control the second robot device (20) to continue performing the operation that was interrupted (or paused).
[0172] According to one example of the present disclosure, one or more processors (120) may transmit a command to control the target device to the target device when the operation of the target device is identified as unsafe based on monitoring data received from the second robotic device (20).
[0173] For example, if one or more processors (120) identify that the operation of the target device is unsafe, they may transmit to the target device a command to stop the operation of the target device, a command to adjust the speed at which the target device performs the operation, or a command to control the target device to output a warning sound (e.g., a beep).
[0174] In addition, one or more processors (120) may transmit a command to control the target device to the target device, and then, if the operation of the target device is re-identified as unsafe based on monitoring data received again from the second robot device (20) that monitors the target device, the processor may transmit a command to forcibly control the target device to the second robot device (20). Here, the command to forcibly control the target device may include a command to control the second robot device (20) that is monitoring the target device to directly collide with (or forcibly dock) the target device, thereby reducing the speed of the operation of the target device (e.g., the driving speed) by a physical external force.
[0175] FIG. 9 is a drawing for explaining a method in which a first robot device and a second robot device, each of which is positioned adjacent to each other, monitor each other and acquire monitoring data corresponding to the first robot device and monitoring data corresponding to the second robot device, according to an example of the present disclosure.
[0176] According to one embodiment of the present disclosure, one or more processors (120) may i) identify one of the plurality of robotic devices (10, 20, 30) (e.g., the first robotic device (20)) as a target device and control the remaining robotic devices (20, 30) to monitor the target device, and ii) control the plurality of robotic devices (10, 20, 30) to monitor each other.
[0177] For example, one or more processors (120) can identify a first robot device (10) and a second robot device (20) that are located adjacent to each other within a threshold distance based on location information of each of a plurality of robot devices (10, 20, 30) received through a communication interface (110).
[0178] One or more processors (120) can control the first robotic device (10) to monitor the second robotic device (20). That is, the one or more processors (120) can identify the second robotic device (20) as a target device and control the first robotic device (10) to monitor the second robotic device (20).
[0179] Additionally, one or more processors (120) can control the second robotic device (20) to monitor the first robotic device (10). That is, one or more processors (120) can identify the first robotic device (10) as a target device and control the second robotic device (20) to monitor the second robotic device (20).
[0180] For example, one or more processors (120) can control the first robotic device (10) and the second robotic device (20) to monitor each other regardless of whether the actions performed by each of the first robotic device (10) and the second robotic device (20) correspond to a dangerous action.
[0181] Here, the first robot device (10) may be a target device and a monitoring device that simultaneously monitors the second robot device (20). The second robot device (20) may also be a target device and a monitoring device that simultaneously monitors the first robot device (10).
[0182] According to an example, when one or more processors (120) receive first monitoring data from a first robot device (10) that monitors a second robot device (20), the processors (120) can identify whether the operation of the second robot device (20) is safe based on the first monitoring data and transmit a command to control the second robot device (20). In addition, when one or more processors (120) receive second monitoring data from a second robot device (20) that monitors the first robot device (10), the processors (120) can identify whether the operation of the first robot device (10) is safe based on the second monitoring data and transmit a command to control the first robot device (10).
[0183] Referring to FIG. 9, each of the plurality of robot devices (10, 20, 30) can, of course, be implemented as a fixed robot.
[0184] One or more processors (120) can identify a first robot device (10) and a second robot device (20) that are adjacent to each other within a threshold distance among a plurality of robot devices (10, 20, 30).
[0185] One or more processors (120) can control the first robot device (10) to monitor the second robot device (20) and the surrounding environment of the second robot device (20). In addition, one or more processors (120) can control the second robot device (20) to monitor the first robot device (10) and the surrounding environment of the first robot device (10).
[0186] According to an example, one or more processors (120) can identify objects, etc., located in some area (e.g., a blind spot) that cannot be monitored (or cannot be monitored) by a sensor provided in the second robot device (20) based on first monitoring data received from the first robot device (10) that monitors the second robot device (20), and can identify whether the operation of the second robot device (20) is safe.
[0187] In addition, one or more processors (120) can identify objects, etc. located in some areas that were not monitored (or cannot be monitored) by sensors provided in the first robot device (10) based on second monitoring data received from the second robot device (20) that monitored the first robot device (10), and can identify whether the operation of the first robot device (10) is safe.
[0188] FIG. 10 is a flowchart for explaining a control method of an electronic device according to an example of the present disclosure.
[0189] A method for controlling an electronic device according to an embodiment of the present disclosure first receives operation information of each of a plurality of robot devices (S1010).
[0190] At least one first robot device among a plurality of robot devices is identified as a target device based on a plurality of motion information (S1020).
[0191] At least one of the remaining robotic devices is controlled to monitor the target device (S1030).
[0192] When monitoring data is received from at least one robot device that monitors the target device, whether the operation of the target device is safe according to the operation information is identified based on the monitoring data (S1040).
[0193] A command to control the target device is transmitted to the target device based on the identification result (S1050).
[0194] According to an example of the present disclosure, the step S1020 of identifying at least one first robot device as a target device may include a step of identifying at least one first robot device as a target device if an operation of at least one first robot device among a plurality of robot devices corresponds to a dangerous operation based on dangerous operation-related information.
[0195] An electronic device according to an example of the present disclosure includes map information corresponding to a space where a plurality of robot devices are located, and the map information may include information on a dangerous area within the space. A control method according to an example further includes a step of receiving location information of each of the plurality of robot devices, and the step S1020 of identifying at least one first robot device as a target device may include a step of identifying at least one first robot device located in a dangerous area according to dangerous area information among the plurality of robot devices as the target device based on the plurality of location information. A command for controlling the target device may be a command for controlling the target device to stop an operation of the target device or to output a warning sound.
[0196] The step S1030 of controlling the remaining robot devices according to an example of the present disclosure may include the step of identifying at least one second robot device located within a threshold distance from the current location of the target device among the remaining robot devices based on a plurality of location information, and the step of controlling at least one second robot device so that the at least one second robot device monitors the target device.
[0197] Monitoring data according to an example of the present disclosure may include at least one of target device shooting data, target device speed data, and target device position data obtained through a sensor included in at least one robot device.
[0198] Step S1040 of identifying whether the operation of the target device is safe according to an example of the present disclosure may include a step of identifying the operation of the target device as unsafe if, based on the shooting data, a preset object is located within a threshold distance from the target device or the loading state of an object loaded on the target device is identified as poor, and the step S1050 of transmitting may include a step of transmitting a command for controlling the target device to the target device if the operation of the target device is identified as unsafe.
[0199] Step S1040 of identifying whether the operation of the target device according to an example of the present disclosure is safe may include a step of identifying the operation of the target device as unsafe if the driving speed of the target device is higher than a threshold speed based on speed data or if the target device is located in a dangerous area based on location data, and the step S1050 of transmitting may include a step of transmitting a command for controlling the target device to the target device if the operation of the target device is identified as unsafe.
[0200] According to an example of the present disclosure, each of a plurality of pieces of motion information includes a motion of a corresponding robot device, whether the motion is performed, and a driving path, and the step S1030 of controlling the remaining robot devices includes the steps of identifying at least one second robot device that is in an idle state based on the motion information corresponding to each of the remaining robot devices, and transmitting a command to at least one second robot device to control at least one second robot device so that the at least one second robot device follows the at least one first robot device, and the step S1040 of identifying whether the motion of the target device is safe may include the step of identifying whether the motion of the target device is safe based on monitoring data received from at least one second robot device.
[0201] A control method according to an example of the present disclosure may further include the steps of: receiving position information of each of a plurality of robot devices; identifying at least one first robot device and at least one second robot device that are adjacently located within a threshold distance based on the position information of each of the plurality of robot devices; controlling at least one first robot device such that the at least one first robot device monitors the at least one second robot device; when first monitoring data is received from at least one first robot device that has monitored the at least one second robot device, identifying whether an operation of the at least one second robot device is safe based on the first monitoring data and transmitting a command to control the at least one second robot device; controlling at least one second robot device such that the at least one second robot device monitors the at least one first robot device; and when second monitoring data is received from at least one second robot device that has monitored the at least one first robot device, identifying whether an operation of the at least one first robot device is safe based on the second monitoring data and transmitting a command to control the at least one first robot device.
[0202] A command for controlling a target device according to an example of the present disclosure may be a command for controlling the target device to stop operation of the target device or to cause the target device to output a warning sound.
[0203] However, it goes without saying that the various embodiments of the present disclosure can be applied not only to electronic devices, but also to all types of electronic devices capable of communicating with external devices.
[0204] The various embodiments described above may be implemented in a computer-readable recording medium using software, hardware, or a combination thereof, or in a computer- or similar device. In some cases, the embodiments described herein may be implemented by the processor itself. In a software implementation, embodiments, such as the procedures and functions described herein, may be implemented as separate software modules. Each of the software modules may perform one or more functions and operations described herein.
[0205] Computer instructions for performing processing operations of a robotic device according to various embodiments of the present disclosure described above may be stored in a non-transitory computer-readable medium. When the computer instructions stored in the non-transitory computer-readable medium are executed by a processor of a specific device, they cause the specific device to perform processing operations in an electronic device (100) according to various embodiments described above.
[0206] A non-transitory computer-readable medium refers to a medium that permanently stores data and can be read by a device, rather than a medium that stores data for a short period of time, such as a register, cache, or memory. Specific examples of non-transitory computer-readable media include CDs, DVDs, hard disks, Blu-ray discs, USBs, memory cards, and ROMs.
[0207] Although the embodiments of the present disclosure have been illustrated and described above, the present disclosure is not limited to the specific embodiments described above, and various modifications may be made by a person having ordinary skill in the art to which the present disclosure pertains without departing from the gist of the present disclosure as claimed in the claims, and such modifications should not be understood individually from the technical idea or prospect of the present disclosure.
Claims
1. In electronic devices, communication interface; At least one memory storing one or more instructions; and comprising one or more processors communicating with at least one memory and executing one or more instructions; One or more of the above processors, Receives operation information from each of multiple robot devices through the above communication interface, Based on the above motion information, at least one first robot device among the plurality of robot devices is identified as a target device, Controlling at least one second robot device among the plurality of robot devices to monitor the target device, When receiving monitoring data from at least one second robot device that monitors the target device through the communication interface, identifying whether the operation of the target device is safe based on the monitoring data, An electronic device comprising: one or more processors that transmit a command to the target device through the communication interface based on the identification result of the operation of the target device.
2. In paragraph 1, At least one of the above memories, Stores information related to risky actions, One or more of the above processors, An electronic device that identifies the at least one first robot as the target device if the operation of the at least one first robot device includes the dangerous operation based on the risk-related information.
3. In paragraph 1, The at least one memory stores map information corresponding to the space where the plurality of robot devices are located, The above map information is, Contains information on hazardous areas, One or more of the above processors, Receives location information of each of a plurality of robot devices through the above communication interface, An electronic device that identifies the location of at least one first robot device as a dangerous area based on the risk area information and the location information, and identifies the at least one first robot device as the target device.
4. In paragraph 3, One or more of the above processors, An electronic device that identifies at least one second robotic device within a threshold distance of the target device based on the location information.
5. In paragraph 1, The above monitoring data is, An electronic device comprising at least one of shooting data of the target device, speed data of the target device, and location data of the target device.
6. In paragraph 5, One or more of the above processors, If a preset object located within a critical distance of the target device is identified based on the above shooting data, or if the loading status of an object loaded on the target device is identified as defective based on the above shooting data, the operation of the target device is identified as unsafe. An electronic device that identifies the operation of the target device as unsafe and transmits the command to the target device through the communication interface.
7. In paragraph 5, One or more of the above processors, If the driving speed of the target device is higher than the threshold speed based on the speed data or if the target device is located in a dangerous area based on the location data, the operation of the target device is identified as unsafe, An electronic device that identifies the operation of the target device as unsafe and transmits the command to the target device through the communication interface.
8. In paragraph 1, The above operation information for each of the above plurality of robot devices is, It includes information about the operation of each of the above robot devices, information identifying whether the operation of each of the above robot devices is performed, and the driving path of each of the above robot devices. One or more of the above processors, If the at least one second robot device is identified as being in an idle state based on the above motion information, the at least one second robot device is identified, Transmitting a command to at least one second robotic device through the communication interface so that at least one second robotic device follows the target device; An electronic device that identifies whether the operation of the target device is safe based on the monitoring data.
9. In paragraph 1, One or more of the above processors, Receives location information for each of a plurality of robot devices through the above communication interface, Based on the above location information, if at least one second robotic device is identified that is located adjacent to the target device within a threshold distance, the at least one second robotic device is identified, Controlling said at least one first robotic device to monitor said at least one second robotic device through said communication interface; When receiving first monitoring data from the target device through the communication interface, identifying whether the operation of at least one second robot device is safe based on the first monitoring data, An electronic device that transmits commands to at least one second robotic device via the communication interface.
10. In paragraph 1, The above command is, An electronic device comprising a command causing the target device to output a warning sound.
11. In a method for controlling an electronic device, A step of receiving operation information of each of a plurality of robot devices; A step of identifying at least one first robot device among the plurality of robot devices as a target device based on the above motion information; A step of controlling at least one second robotic device among the plurality of robotic devices to monitor the target device; Upon receiving monitoring data from at least one second robotic device that monitors the target device: A step of identifying whether the operation of the target device is safe based on the monitoring data; and A control method comprising: a step of transmitting a command to the target device based on the identification result of the operation of the target device.
12. In paragraph 11, The step of identifying at least one first robotic device as the target device comprises: A control method, comprising: a step of identifying at least one first robotic device as the target device if the operation of the at least one first robotic device corresponds to a dangerous operation based on information related to the dangerous operation.
13. In paragraph 11, The above control method is, It further includes a step of receiving location information of each of the plurality of robot devices; The step of identifying at least one first robotic device as the target device comprises: A step of identifying the location of at least one first robot device as a risk area based on the risk area information and the location information, and identifying the at least one first robot device as the target device; The steps for sending the above command are: A control method, comprising: a step of transmitting a command to stop the operation of the target device or to cause the target device to output a warning sound.
14. In paragraph 13, The above control method is, A control method further comprising: a step of identifying at least one second robotic device within a threshold distance of the target device based on the location information; 15. In paragraph 11, The above monitoring data is, A control method comprising at least one of shooting data of the target device, speed data of the target device, and position data of the target device.
Citation Information
Patent Citations
System for offering photo printing service based on hash-tag
KR1020210026299A
Method and system for providing financial service
KR1020230088883A
Communication method for automated guided vehicle
KR102141320B1
Unmanned store management system
KR102307293B1
Evaluation method and system for robot
KR102315362B1
