Electronic apparatus for cooperating a plurality of robot apparatus and control method thereof
By using electronic devices to coordinate the control of multiple robotic devices, and by using communication interfaces and processors to identify target devices and monitor their operational safety, and by supplementing the monitoring with sensor data from other robotic devices, the problem of blind spots in robotic device monitoring and the issue of high safety levels have been solved, thus achieving efficient and safe environmental monitoring.
Patent Information
- Application Number
- CN202480018776.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-06-30
- Filing Date
- 2024-04-19
- Publication Date
- 2025-10-28
AI Technical Summary
In existing technologies, robotic devices have blind spots when monitoring their surroundings, and increasing the number of sensors increases manufacturing costs while making it difficult to ensure a high level of safety during operation.
Multiple robotic devices are controlled collaboratively by electronic devices. The target device is identified using communication interfaces and processors, its operational safety is monitored, and monitoring is supplemented by sensor data from other robotic devices to avoid blind spots and send control commands to ensure safety.
It enables effective monitoring of the surrounding environment, avoidance of accidents, and ensure of a high level of safety operation without increasing the number of sensors in each robot device.
Smart Images

Figure CN120858009A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to an electronic device and a control method thereof, and more specifically, to an electronic device and a control method thereof for controlling multiple robotic devices to perform cooperative operations among the multiple robotic devices. Background Technology
[0002] Recently, robotic devices have been rapidly deployed in various fields, and not only are robotic devices replacing human roles, but the number of unmanned factories (or smart factories) that operate solely using robotic devices without human intervention is also increasing rapidly.
[0003] If the robotic devices move and operate autonomously, a higher level of safety is required than when they are controlled by humans.
[0004] In order for robotic devices to monitor their surroundings and operate safely while taking into account potential risks within those environments, the number of sensors required has increased rapidly. For example, it is difficult to thoroughly monitor the surrounding environment using only a limited number of sensors, 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, it could potentially lead to a serious accident.
[0006] As the number of sensors that a robotic device must be equipped with increases, the manufacturing cost of the robotic device may increase rapidly, and even with multiple sensors, it is practically impossible to perfectly monitor the surrounding environment without blind spots.
[0007] Therefore, there is a need for a method to monitor the surrounding environment without blind spots by performing cooperative operations between robotic devices located in spaces such as factories, while ensuring a high level of safety and without increasing the number of sensors that each robotic device must have. Summary of the Invention
[0008] According to one aspect of this disclosure, an electronic device includes: a communication interface; at least one memory storing one or more instructions; and one or more processors communicating with the at least one memory, wherein when one or more instructions are executed by one or more processors, the electronic device causes the electronic device to perform the following operations: receiving operation information of each of a plurality of robotic devices via the communication interface; identifying at least one first robotic device among the plurality of robotic devices as a target device based on the operation information; controlling at least one second robotic device among the plurality of robotic devices to monitor the target device via the communication interface; and based on monitoring data received from at least one second robotic device via the communication interface: identifying whether the operation of the target device is safe based on the monitoring data; and based on the identification result of the operation of the target device, sending a command to the target device via the communication interface.
[0009] At least one memory stores information related to hazardous operations, and one or more processors are further configured to identify at least one first robotic device as a target device based on the information related to hazardous operations and based on the operation of at least one first robotic device including hazardous operations.
[0010] At least one memory stores map information corresponding to the space where the plurality of robotic devices are located, the map information including hazard area information, and one or more processors are further configured to receive position information about each of the plurality of robotic devices via a communication interface, and to identify at least one first robotic device as a target device based on the hazard area information and the position information, indicating that the position of at least one first robotic device is in a hazard area.
[0011] One or more processors are also configured to identify at least one second robotic device based on the location information indicating that at least one second robotic device is within a threshold distance of the target device.
[0012] The monitoring data includes at least one of the following: the target device's image capture data, the target device's speed data, or the target device's location data.
[0013] One or more processors are also configured to identify the operation of the target device as unsafe based on the identification of a predetermined object within a threshold distance of the target device according to the shooting data or the identification of a defective loading state of an object loaded on the target device according to the shooting data, and to send commands to the target device through a communication interface based on the identification of unsafe operation of the target device.
[0014] One or more processors are also configured to identify the operation of the target device as unsafe based on speed data indicating that the target device's travel speed is equal to or greater than a threshold speed, or based on location data indicating that the target device is located in a danger zone, and to send commands to the target device via a communication interface based on the identification that the operation of the target device is unsafe.
[0015] For each of the multiple robotic devices, the operation information includes information about the operation of the corresponding robotic device, information identifying whether the operation of the corresponding robotic device has been performed, and the travel path of the corresponding robotic device. One or more processors are also configured to identify at least one second robotic device based on the operation information indicating that at least one second robotic device is in an idle state, send a command to at least one second robotic device via a communication interface to cause at least one second robotic device to follow the target device, and identify whether the operation of the target device is safe based on monitoring data.
[0016] One or more processors are also configured to receive position information about each of the plurality of robotic devices via a communication interface, identify at least one second robotic device based on the position information, identify at least one second robotic device as being adjacent to the target device and within a threshold distance of the target device, control the target device to monitor at least one second robotic device via the communication interface, and, based on receiving first monitoring data from the target device via the communication interface, identify whether the operation of at least one second robotic device is safe based on the first monitoring data, and send commands to at least one second robotic device via the communication interface.
[0017] The command includes instructions to cause the target device to output a warning sound.
[0018] A method for controlling an electronic device, the method comprising: receiving operation information of each of a plurality of robotic devices; identifying at least one first robotic device as a target device from the plurality of robotic devices based on the operation information; controlling at least one second robotic device from the plurality of robotic devices to monitor the target device; and, based on monitoring data received from at least one second robotic device: identifying whether the operation of the target device is safe based on the monitoring data; and sending a command to the target device based on the identification result of the operation of the target device.
[0019] The step of identifying at least one first robotic device as a target device further includes: identifying at least one first robotic device as a target device based on information related to a dangerous operation and based on the fact that the operation of at least one first robotic device corresponds to a dangerous operation.
[0020] The method further includes: receiving position information about each of the plurality of robotic devices; the step of identifying at least one first robotic device as a target device further includes: identifying the position of at least one first robotic device as being in a danger zone based on the danger zone information and the position information, identifying at least one first robotic device as a target device, and the step of sending a command further includes: sending an instruction to cause the target device to stop operating or output a warning sound.
[0021] The method further includes identifying at least one second robotic device based on location information indicating that at least one second robotic device is within a threshold distance of the target device.
[0022] The monitoring data includes at least one of the following: the target device's image capture data, the target device's speed data, or the target device's location data.
[0023] A system comprising: an electronic device including a communication interface, at least one memory storing one or more instructions, and one or more processors communicating with the at least one memory and a plurality of robotic devices, each of the plurality of robotic devices including at least one sensor. One or more processors are further configured to: receive operation information of each of the plurality of robot devices via a communication interface; identify a first robot device as the target device from the plurality of robot devices based on the operation information; control a second robot device among the plurality of robot devices to monitor the target device via the communication interface; and, based on the monitoring data received from the second robot device via the communication interface, identify whether the operation of the target device is safe based on the monitoring data; and, based on the identification result of the operation of the target device, send a command to the target device via the communication interface.
[0024] At least one memory stores information related to hazardous operations and hazardous area information corresponding to the space where the plurality of robotic devices are located, and one or more processors are further configured to receive position information about each of the plurality of robotic devices via a communication interface, and to identify the operation of a first robotic device as including a hazardous operation based on the information related to hazardous operations, or to identify the position of the first robotic device as being in a hazardous area based on the hazardous area information and the position information, thus identifying the first robotic device as a target device.
[0025] One or more processors are also configured to receive position information about each of the plurality of robotic devices via a communication interface, and to identify at least one second robotic device based on the position information indicating that at least one second robotic device is within a threshold distance of the target device.
[0026] The monitoring data includes at least one of the following: the target device's image capture data, the target device's speed data, or the target device's location data.
[0027] For each of the multiple robotic devices, the operation information includes information about the operation of the corresponding robotic device, information identifying whether the operation of the corresponding robotic device has been executed, and the travel path of the corresponding robotic device. One or more processors are also configured to identify at least one second robotic device based on the operation information indicating that at least one second robotic device is in an idle state, send a command to at least one second robotic device via a communication interface to cause at least one second robotic device to follow the target device, and identify whether the operation of the target device is safe based on monitoring data. Attached Figure Description
[0028] The above and other aspects, features and advantages of certain embodiments of this disclosure will become more apparent from the following description taken in conjunction with the accompanying drawings, wherein: Figure 1 These are diagrams provided to explain the operation between an electronic device and a plurality of robotic devices according to embodiments; Figure 2 These are block diagrams provided to explain the electronic device according to embodiments; Figure 3 This is a diagram provided to explain the robotic device for monitoring a target according to an embodiment; Figure 4 This is a diagram of an electronic device provided for interpreting the loading state of an object identified on a target device according to an embodiment; Figure 5 This is an illustration provided for explaining an electronic device for identifying a target using location information according to an embodiment; Figure 6 This is a diagram provided for explaining an electronic device for identifying a second robot located within a threshold distance from a target device according to an embodiment; Figure 7 This is a diagram provided for explaining the electronic device used to control the second robotic device to monitor the target device according to an embodiment; Figure 8 This is a diagram provided for explaining the electronic device used to control the second robotic device to monitor the target device according to an embodiment; Figure 9 It is a diagram illustrating a method for interpreting the mutual monitoring of a first robot and a second robot adjacent to each other to obtain monitoring data corresponding to the first robot device and monitoring data corresponding to the second robot device; and Figure 10 This is a flowchart provided to explain the control method of an electronic device according to an embodiment. Detailed Implementation
[0029] The present disclosure is described in detail below with reference to the accompanying drawings.
[0030] In describing one or more embodiments of this disclosure, generic terms are selected in consideration of their function in this disclosure, and the generic terms may be modified based on the intent of those skilled in the art, judicial precedent, the emergence of new technologies, etc. Where the applicant arbitrarily chooses terms to have specific meanings, the meanings of these terms are mentioned in detail in the corresponding description of this disclosure. Where appropriate, the terms used in this disclosure should be defined based on the specific meaning of the terms and the context of this disclosure.
[0031] As used herein, expressions such as “at least one of A and B” and “at least one of A or B” can indicate “A” or “B” or “both A and B”.
[0032] The terms "first" and "second" used in this disclosure may refer to various components, regardless of their order or importance. These terms are used only to distinguish one component from another and do not limit the corresponding components.
[0033] When it is mentioned that any component (e.g., the first component) is "(operably or communicatively) coupled" / "(operably or communicatively) coupled to" another component (e.g., the second component) or "connected to" another component (e.g., the second component), it will be understood that any component is directly coupled to another component, or can be coupled to another component through yet another component (e.g., the third component).
[0034] Unless otherwise expressly stated in the context, a singular term may include its plural. It will be understood that the terms "comprising," "formed by," etc., as used in this application specify the presence of features, numbers, steps, operations, components, parts, or combinations thereof mentioned in the specification, and do not exclude the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.
[0035] In the embodiments described herein, a "module" or "device" may perform at least one function or operation and may be implemented by hardware or software, or by a combination of hardware and software. Furthermore, in addition to "modules" or "devices" that require implementation by specific hardware, multiple "modules" or multiple "devices" may be integrated in at least one module and implemented by at least one processor.
[0036] In this disclosure, 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).
[0037] In the following description, various embodiments will be described in more detail with reference to the accompanying drawings.
[0038] Figure 1 These are diagrams provided to explain the operation between an electronic device and a plurality of robotic devices according to embodiments.
[0039] According to the embodiment, the electronic device 100 performs communication with a plurality of robot devices 10, 20, 30, and can send various data to / receive various data from the plurality of robot devices 10, 20, 30.
[0040] For example, electronic device 100 can receive operation information from each of the plurality of robotic devices 10, 20, 30.
[0041] Here, each of the multiple operational messages received by the electronic device 100 can indicate the current state of the corresponding robot device.
[0042] For example, operational information may include the operation (or task) being performed by the robot device, the total time required (or time spent) for the corresponding operation, the time elapsed since the start of the corresponding operation and the remaining time, and the movement path (or travel path) of the robot device when the corresponding operation requires the robot device to move.
[0043] Here, the operation being performed by the robotic device may include a specific operation name (e.g., object transport operation, object grasping operation, etc.), whether each of the multiple components included in the robotic device is driven, load level, etc.
[0044] For example, when a robot device includes actuators consisting of wheels, brakes, motors, etc., the operation information of the robot device may include whether the actuator is operating, the operating direction of the actuator, the operating speed, the load level, etc.
[0045] For example, when a robotic device includes robotic joints that perform functions similar to those of a human arm or fingers, the operational information of the robotic device may include whether the robotic joints are operated, the direction of operation, the speed of operation, the load level, etc.
[0046] According to an embodiment, in order to comply with safety regulations and prevent accidents, the robot device can monitor the surrounding environment of the robot device through various sensors installed in the robot device, and stop (or pause) the operation based on the monitored surrounding environment, adjust the speed of the operation (e.g., change the travel speed), or change the method of the operation (e.g., change the travel path).
[0047] However, using only sensors installed within the robotic device, there is a limit to how much of the surrounding environment the robot can monitor, and there are some areas that the sensors cannot detect, which can lead to accidents (e.g., blind spots of the robotic device), or there is the problem that the manufacturing cost of the robotic device increases with the number of sensors.
[0048] According to the embodiment, the electronic device 100 can identify at least one robot device as a target device based on the operation information of each of the plurality of robot devices 10, 20, 30, monitor (or detect) the target device more accurately when the target device performs an operation by controlling at least one of the remaining robot devices to monitor (or detect) the target device, and control the target device to prevent accidents (or comply with safety regulations) when the target device performs an operation based on the monitoring data received from at least one robot device monitoring the target device.
[0049] Reference Figure 2 Provide a detailed description of the above content.
[0050] Figure 2 This is a block diagram provided to explain the electronic device according to the embodiments.
[0051] Reference Figure 2 The electronic device 100 may include a communication interface 110, one or more processors 120 and one or more memory modules 130.
[0052] For ease of explanation, the electronic device 100 according to the embodiment is assumed to be a server capable of communicating with multiple robotic devices 10, 20, 30, but is not limited thereto. For example, the electronic device 100 according to the embodiment 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 personal digital assistant (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, a wearable device may include at least one of the following: accessory-type devices (e.g., watches, rings, bracelets, anklets, necklaces, glasses, contact lenses, or head-mounted devices (HMDs)), single-piece fabric or clothing-type circuitry (e.g., electronic clothing), body-attached type circuitry (e.g., skin pads or tattoos), or bio-implantable type circuitry. According to one or more embodiments, electronic device 100 may include at least one of the following: television (TV), digital multi-disc (DVD) player, audio equipment, refrigerator, air conditioner, vacuum cleaner, oven, microwave oven, washing machine, air purifier, source device (e.g., set-top box), cloud server, over-the-top (OTT) service, home automation control panel, security control panel, media box (e.g., Apple TV™ or Google TV™), LED S-Box, game console (e.g., Xbox™, PlayStation™ or Nintendo Switch™), electronic dictionary, electronic key, camera, electronic photo frame, etc.
[0053] According to another embodiment, the electronic device 100 may include at least one of the following: medical devices (e.g., various portable medical measurement devices (e.g., blood glucose monitoring devices, heart rate measuring devices, blood pressure measuring devices, body temperature measuring devices, etc.), magnetic resonance angiography (MRA), magnetic resonance imaging (MRI), computed tomography (CT), scanners, and ultrasound devices, etc.), navigation devices, global navigation satellite systems (GNSS), event data loggers (EDR), flight data loggers (FDR), vehicle infotainment devices, marine electronic equipment (e.g., navigation systems, gyrocompasses, etc.), avionics devices, safety devices, vehicle front units, industrial or household robots, drones, automated teller machines (ATMs) of banking institutions, point-of-sale (POS) devices of stores, or Internet of Things (IoT) devices (e.g., light bulbs, various sensors, sprinkler systems, fire alarms, thermostats, streetlights, toasters, fitness equipment, hot water tanks, heaters, boilers, etc.).
[0054] The communication interface 110 provided in the electronic device 100 can communicate with external devices (e.g., robotic devices, etc.), servers, etc., to receive 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 (e.g., USB memory), servers (e.g., network hard drives), etc., through communication methods such as AP-based Wi-Fi (wireless LAN network), Bluetooth, Zigbee, wired / wireless local area network (LAN), wide area network (WAN), Ethernet, IEEE 1394, high-definition multimedia interface (HDMI), universal serial bus (USB), mobile high-definition link (MHL), Audio Engineering Society / European Broadcasting Union (AES / EBU), fiber optic, coaxial cable, etc.
[0055] Specifically, the communication interface 110 can receive operation information, monitoring data, etc. from the robot device under the control of one or more processors 120, and send commands to the target device.
[0056] According to an embodiment, one or more processors 120 control the overall operation of the electronic device 100.
[0057] One or more processors 120 according to embodiments can be implemented as digital signal processors (DSPs), microprocessors, or time controllers (TCONs) that process digital image signals. However, one or more processors 120 are not limited thereto and may include one or more of a central processing unit (CPU), microcontroller unit (MCU), microprocessor unit (MPU), controller, application processor (AP), communication processor (CP), advanced RISC machine (ARM) processor, or artificial intelligence processor, or as defined by such terms. Furthermore, one or more processors 120 may be implemented as a system-on-a-chip (SoC) or large-scale integrated circuit (LSI) with embedded processing algorithms, or may be implemented as a field-programmable gate array (FPGA). One or more processors 120 can perform various functions by executing computer-executable instructions stored in memory (e.g., memory 130).
[0058] 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), an integrated many-core (MIC), a digital signal processor (DSP), a neural processing unit (NPU), a hardware accelerator, or a machine learning accelerator. One or more processors 120 may control one or any combination of other components of the electronic device and may perform communication-related operations or data processing. One or more processors 120 may execute one or more programs or instructions stored in memory (e.g., memory 130). For example, one or more processors 120 may perform the method according to the embodiment by executing one or more instructions stored in memory (e.g., memory 130).
[0059] In the case where the method according to embodiments of this disclosure includes multiple operations, the multiple operations may be executed by one or more processors. For example, when performing the first operation, the second operation, and the third operation by the method according to the embodiments, all of the first operation, the second operation, and the third operation may be executed by the first processor, or the first operation and the second operation may be executed by the first processor (e.g., a general-purpose processor), and the third operation may be executed by the second processor (e.g., an artificial intelligence-specific processor).
[0060] One or more processors 120 may be implemented as a single-core processor including one core, or as one or more multi-core processors including multiple cores (e.g., homogeneous multi-core or heterogeneous multi-core). When one or more processors 120 are implemented as multi-core processors, each of the multiple cores included in the multi-core processor may include processor-internal memory, such as cache memory or on-chip memory, and a common cache shared by the multiple cores may be included in the multi-core processor. Furthermore, each (or some) of the multiple cores included in the multi-core processor may independently read and execute program instructions for implementing the methods according to the embodiments, or all (or some) of the multiple cores may be linked together to read and execute program instructions for implementing the methods according to the embodiments.
[0061] In cases where the method according to the embodiments includes multiple operations, the multiple operations may be executed by one core of a multi-core processor, or they may be executed by multiple cores. For example, when performing the first, second, and third operations by the method according to the embodiments, all of the first, second, and third operations may be executed by the first core of the multi-core processor, or the first and second operations may be executed by the first core of the multi-core processor, and the third operation may be executed by the second core of the multi-core processor.
[0062] In embodiments of this disclosure, a processor may refer to a system-on-a-chip (SoC), a single-core processor, a multi-core processor, or a core included in a single-core or multi-core processor, wherein one or more processors and other electronic components are integrated. Here, a core may be implemented as a CPU, GPU, APU, MIC, DSP, NPU, hardware accelerator, machine learning accelerator, etc., but embodiments of this disclosure are not limited thereto.
[0063] Figure 3 This is a diagram illustrating a robotic device used to explain a monitoring target device according to an embodiment.
[0064] One or more processors 120 can receive operational information from each of the multiple robotic devices 10, 20, 30 via a communication interface.
[0065] One or more processors 120 can identify the first robot device 10 among multiple robot devices 10, 20, 30 as the target device based on multiple operational information.
[0066] For example, electronic device 100 may also include a memory (e.g., memory 130) for storing information about hazardous operations.
[0067] When the operation of the first robot device 10 among a plurality of robot devices corresponds to a dangerous operation based on information about the dangerous operation, one or more processors 120 can identify the first robot device 10 as the target device.
[0068] For example, when the name of the operation being performed by the first robot device 10 corresponds to one of a plurality of predefined names based on information about dangerous operations, one or more processors 120 can identify the operation of the first robot device 10 as a dangerous operation and identify the first robot device 10 as a target device.
[0069] For example, when the first robot device 10 is identified as a target device based on the operation information of the first robot device 10 and the information about dangerous operation, such as whether each of the multiple components included in the first robot device 10 is operating, the load level, etc., meets predefined conditions (e.g., i) when at least one of the multiple components is operating, and ii) when the load level of at least one component exceeds a threshold load), one or more processors 120 can identify the first robot device 10 as a target device by identifying the operation of the first robot device 10 as a dangerous operation.
[0070] However, this is merely an example, and this disclosure is not limited thereto. For example, when the first robot device 10 is performing an operation (i.e., when the first robot device 10 is not in an idle state), based on the operation information of the first robot device 10, one or more processors 120 may identify the first robot device 10 as a target device by identifying the operation of the first robot device 10 as a dangerous operation.
[0071] For example, one or more processors 120 can input operational 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.
[0072] The neural network model according to the embodiment can use the operation names (or task names) of various robot devices, whether each of the various components set in the robot device is operating, load level, etc. as learning data, and can be trained to output whether the operation is corresponding to a dangerous operation based on the operation information when the operation information of the robot device is input.
[0073] According to the embodiments, the artificial intelligence-related functions are operated by one or more processors 120 and memories (e.g., memory 130) of the electronic device 100.
[0074] Here, one or more processors may include, but are not limited to, at least one of a central processing unit (CPU), a graphics processing unit (GPU), or a neural processing unit (NPU).
[0075] A CPU is a general-purpose processor that can perform not only general computations but also artificial intelligence computations, and can efficiently execute complex programs through a multi-layered cache structure. CPUs may be advantageous for serial processing methods that enable organic linking between the results of previous and subsequent computations through sequential calculations. General-purpose processors are not limited to the examples described above, except where the processor is specified as a CPU.
[0076] GPUs are processors used for large-scale computations such as floating-point operations for graphics processing, and can execute large-scale computations in parallel by integrating a large number of cores. In particular, GPUs may be advantageous for parallel processing methods such as convolution operations compared to CPUs. Furthermore, GPUs can be used as coprocessors to supplement the functionality of CPUs. Processors used for large-scale computations are not limited to the examples described above, except where the processor is specified as a GPU.
[0077] An NPU is a processor specifically designed for artificial intelligence computing using artificial neural networks, where each layer of the artificial neural network can be implemented in hardware (e.g., silicon). Here, the NPU is specifically designed based on the company's requirements and therefore may have fewer degrees of freedom than a CPU or GPU. However, the NPU can efficiently handle the artificial intelligence computing needed by the company. As a processor dedicated to artificial intelligence computing, an NPU can be implemented in various forms, such as a Tensor Processing Unit (TPU), an Intelligent Processing Unit (IPU), or a Visual Processing Unit (VPU). The artificial intelligence processor 120 is not limited to the examples described above, except where the processor is specified as an NPU.
[0078] Furthermore, one or more processors can be implemented as a system-on-a-chip (SoC). Here, in addition to one or more processors, the SoC may also include memory (e.g., memory 130) and network interfaces, such as buses for data communication between the processor and the memory.
[0079] In cases where the System-on-a-Chip (SoC) included in electronic device 100 comprises multiple processors, electronic device 100 can use some of these processors to perform artificial intelligence computations (e.g., computations related to learning or inference of an artificial intelligence model). For example, electronic device 100 can perform artificial intelligence computations by using at least one of a GPU, NPU, VPU, TPU, or a hardware accelerator dedicated to artificial intelligence computations (such as convolution computations and matrix multiplication computations) across multiple processors. However, this is merely an example, and general-purpose processors such as CPUs can also be used to handle artificial intelligence computations.
[0080] Furthermore, the electronic device 100 can perform calculations related to artificial intelligence by using multiple cores (e.g., dual-core or quad-core) included in a processor 120. Specifically, the electronic device 100 can use the multiple cores included in the processor 120 to perform artificial intelligence calculations such as convolution calculations and matrix multiplication calculations in parallel.
[0081] One or more processors 120 can process input data based on predefined operational rules or artificial intelligence models stored in memory (e.g., memory 130). These predefined operational rules or artificial intelligence models can be learned.
[0082] Here, "acquired through learning" can refer to acquiring predefined operational rules or artificial intelligence models of desired features by applying learning algorithms to a large amount of learning data. This learning can be performed on the device itself that performs artificial intelligence according to the embodiment, or by a separate server / system.
[0083] Artificial intelligence models may include multiple neural network layers. At least one layer has at least one weight value and can perform computations on the layer using the result of computation from the previous layer and at least one defined operation. Examples of neural networks may include convolutional neural networks (CNNs), deep neural networks (DNNs), recurrent neural networks (RNNs), restricted Boltzmann machines (RBMs), deep belief networks (DBNs), bidirectional recurrent deep neural networks (BRDNNs), deep Q-networks, and transformers. However, the neural networks in this disclosure are not limited to the examples described above, except where the type of neural network is specified.
[0084] A learning algorithm is a method of training a predetermined target device (e.g., a robot) using a large amount of learning data, so that the predetermined target device can make decisions or predictions autonomously. Learning algorithms can include, for example, supervised learning algorithms, unsupervised learning algorithms, semi-supervised learning algorithms, or reinforcement learning algorithms. However, unless otherwise specified, the learning algorithms disclosed herein are not limited to the examples described above.
[0085] According to an embodiment, one or more processors 120 can control the remaining robot devices 20, 30 among the plurality of robot devices 10, 20, 30, such that the remaining robot devices 20, 30 monitor the target device. Optionally, one or more processors 120 can control at least one of the remaining robot devices 20, 30 (e.g., a second robot device 20 or a third robot device 30), such that at least one robot device monitors the target device.
[0086] According to an embodiment, each of the remaining robot devices 20, 30 can use configured sensors to monitor the target device under the control of one or more processors 120.
[0087] According to an embodiment, when monitoring data is sent from the remaining robot devices 20, 30, one or more processors 120 can identify whether the operation of the target device is safe based on the monitoring data.
[0088] According to an embodiment, the monitoring data may include at least one of the target device's image data, target device speed data, or target device position data obtained by sensors included in each of the remaining robot devices 20, 30.
[0089] For example, sensors included in each of the remaining robotic devices 20, 30 may include lidar sensors, cameras (e.g., RGB-D), pressure sensors, infrared sensors, ultrasonic sensors, etc.
[0090] When the operation of the target device is identified as unsafe based on monitoring data received from the remaining robot devices 20 and 30, one or more processors 120 according to the embodiment may send commands to the target device for controlling the target device.
[0091] Reference Figure 3 When a predetermined object is within a threshold distance from the target device, one or more processors 120 can identify the operation of the target device as unsafe based on the captured data received from the remaining robot devices 20 and 30.
[0092] 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, when the first robot device 10 is moving backward at a predetermined speed, one or more processors 120 can identify the operation of the first robot device 10 as a dangerous operation based on information about dangerous operations.
[0093] One or more processors 120 can identify the first robot device 10 as the target device and control the remaining robots 20, 30 to monitor the target device.
[0094] When the sensors installed in the first robot device 10 only monitor the front of the first robot device 10 and cannot monitor the rear, there is a problem that the first robot device 10, which is moving backward, cannot monitor objects located behind it in the direction of travel.
[0095] According to the embodiments, the robot devices 20 and 30 can monitor the surrounding environment of the first robot device 10 under the control of one or more processors 120. For example, sensors disposed in each of the remaining robots 20 and 30 can monitor objects located behind the first robot device 10.
[0096] For example, one or more processors 120 may identify whether the operation of the target device is safe based on image data received from the remaining robotic devices 20, 30. For example, when a predetermined object (e.g., a person, flammable material, fragile material, obstacle (e.g., stationary robot, shelf, etc.)) is within a threshold distance from the target device, one or more processors 120 may identify the operation of the target device as unsafe.
[0097] When the operation of the target device is identified as unsafe, one or more processors 120 according to the embodiment may send commands to the target device for controlling the target device.
[0098] One or more processors 120 can identify whether the operation of the first robot device 10 is a dangerous operation based on the operation information of the first robot device 10 among the plurality of robot devices 10, 20, 30. For example, when the first robot device 10 is moving forward at a predetermined speed, one or more processors 120 can identify the operation of the first robot device 10 as a dangerous operation based on information about dangerous operations.
[0099] One or more processors 120 may identify the first robotic device 10 as the target device and control the remaining robotic devices 20, 30 to monitor the target device. According to an embodiment, one or more processors 120 may control one of the remaining robotic devices 20, 30 (e.g., the second robotic device 20 or the third robotic device 30) to monitor the target device.
[0100] There is a risk that the first robot device 10 will travel forward at a speed exceeding the predetermined speed when the sensor installed in the first robot device 10 according to the embodiment fails to monitor the travel speed of the first robot device 10, or when an error occurs in the actuator installed in the first robot device 10 for various reasons.
[0101] According to the embodiment, the remaining robot devices 20 and 30 can monitor the surrounding environment of the first robot device 10 under the control of one or more processors 120. For example, sensors disposed in each of the remaining robot devices 20 and 30 can monitor the travel speed of the first robot device 10.
[0102] For example, one or more processors 120 can receive speed data from the remaining robotic devices 20, 30 and identify the travel speed of the target device.
[0103] One or more processors 120 can identify whether the operation of the target device is safe based on speed data received from the remaining robotic devices 20, 30. For example, when the target device's travel speed exceeds a threshold speed (or a predetermined speed), one or more processors 120 can identify the operation of the target device as unsafe.
[0104] When the operation of the target device is identified as unsafe, one or more processors 120 according to the embodiment may send commands to the target device for controlling the target device.
[0105] However, this disclosure is not limited to the foregoing, and one or more processors 120 may use monitoring data received from the remaining robotic devices 20, 30 to identify in various ways whether the operation of the target device is unsafe.
[0106] Figure 4This is a diagram of a robotic device provided for explaining the loading state of an object loaded on a target device according to an embodiment.
[0107] Reference Figure 4 When the operation of the first robot device 10 among the multiple robot devices 10, 20, 30 is a transport operation of an object loaded on the first robot device 10, one or more processors 120 can identify the first robot device 10 as the target device.
[0108] For example, when the operation name of the first robot device 10 is an object transport operation, or when, based on operation information received from the first robot device 10, pressure exceeding a threshold is detected in the actuator of the first robot device 10 due to an object being loaded on the first robot device 10 (e.g., pressure generated due to the weight of the body of the first robot device 10), one or more processors 120 may 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.
[0109] According to an embodiment, one or more processors 120 can control the remaining robot devices 20 and 30 among a plurality of robot devices 10, 20, and 30, such that the remaining robot devices 20 and 30 monitor the target device.
[0110] The sensors installed in the first robot device 10 according to the embodiment may not monitor the loading status of the object loaded on the first robot device 10. When the first robot device 10 performs object transport operations in an unsafe loading state, there is a risk that accidents such as object collapse may occur.
[0111] According to the embodiment, the remaining robot devices 20 and 30 can monitor the surrounding environment of the first robot device 10 under the control of one or more processors 120. For example, sensors disposed in each of the remaining robot devices 20 and 30 can obtain image data by photographing objects mounted on the first robot device 10.
[0112] For example, one or more processors 120 can receive captured data from the remaining robotic devices 20, 30 and identify whether there are defects in the loading status of the objects loaded on the target device.
[0113] When it is identified that the loading status of an object loaded on a target device is defective or inappropriate, one or more processors 120 according to the embodiment may identify the operation of the target device as unsafe.
[0114] When it is determined that the operation of the target device is unsafe, one or more processors 120 according to the embodiment may send commands to the target device for controlling the target device.
[0115] For example, when it is determined that the operation of the target device is unsafe, one or more processors 120 may stop the operation of the target device, or send commands to the target device to adjust the speed of the operation, or to output warning sounds (e.g., beeps).
[0116] Figure 5 This is an illustration provided for explaining an electronic device for identifying a target device using location information according to an embodiment.
[0117] The electronic device 100 according to the embodiment may further include a memory 130, which stores map information corresponding to the space where the plurality of robot devices 10, 20, 30 are located.
[0118] Here, the map information can divide the space into multiple regions (e.g., movable regions, immovable regions, etc.) by identifying points in the space (e.g., factories, warehouses, etc.) where multiple robotic devices 10, 20, 30 are located, such as points where dividing lines or ledges exist, points where movable width narrows, points where walls exist, points where walls begin, points where walls end, points where doors exist, and points where obstacles (e.g., stationary robots, shelves, tracks, etc.) exist. It also includes information about the size and shape of each region in the multiple regions, and the size, shape, and location of each obstacle in each region in the multiple regions.
[0119] In particular, map information may include information about dangerous areas in the space (hereinafter referred to as dangerous area information).
[0120] Hazardous area information according to the embodiments can be set by user input. However, hazardous area information is not limited to the above, and one or more processors 120 can identify areas that meet predetermined conditions as hazardous area information based on map information. For example, one or more processors 120 can identify points where the movable width narrows within the movable area, points where obstacles are located adjacently (e.g., within a threshold distance) within the movable area, points with sharp bends or turns within the movable area, or points adjacent to predetermined objects (e.g., flammable materials, fragile materials, obstacles (e.g., stationary robots, shelves, tracks, etc.)) as hazardous area information based on map information.
[0121] The memory (e.g., memory 130) according to the embodiments can store information required for various embodiments. Depending on the data storage purpose, the memory can be implemented as a memory embedded in the electronic device 100 or as a memory removable from the electronic device 100.
[0122] For example, data for driving electronic device 100 can be stored in memory 130 embedded in electronic device 100, and data for extended functions of electronic device 100 can be stored in memory removable from electronic device 100. Memory 130 embedded in electronic device 100 can be implemented as at least one of volatile memory (e.g., dynamic RAM (DRAM), static RAM (SRAM), or synchronous dynamic RAM (SDRAM)) and non-volatile memory (e.g., one-time programmable ROM (OTPROM), programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), mask ROM, flash ROM, flash memory (e.g., NAND flash or NOR flash), hard disk drive, or solid-state drive (SSD)). Furthermore, memory removable from electronic device 100 can be implemented as a memory card (e.g., compact flash (CF), secure digital (SD), micro-secure digital (Micro-SD), mini-secure digital (Mini-SD), extreme digital (xD), or multimedia card (MMC)), external memory connectable to a USB port (e.g., USB memory), etc.
[0123] The memory 130 according to the embodiment may store a computer program including at least one or more instructions for controlling the electronic device 100.
[0124] According to an embodiment, one or more processors 120 may receive position information from each of a plurality of robot devices 10, 20, 30 via communication interface 110.
[0125] For example, each of the plurality of robotic devices 10, 20, 30 may be equipped with a GPS sensor and obtain corresponding location information. However, this disclosure is not limited thereto, and each of the plurality of robotic devices 10, 20, 30 may obtain corresponding location information using dividing lines (separation lines) shown on the floor of the space, or may obtain corresponding location information using image data acquired by a camera.
[0126] When receiving corresponding location information from each of the plurality of robot devices 10, 20, 30, one or more processors 120 can identify at least one robot device located in the danger zone according to the danger zone information from the plurality of robot devices 10, 20, 30 based on the multiple location information.
[0127] For example, when the first robot device 10 of a plurality of robot devices 10, 20, 30 is identified as being located in a hazardous area, one or more processors 120 may identify the first robot device 10 as the target device.
[0128] Subsequently, one or more processors 120 can control the remaining robotic devices 20, 30 to monitor the target device. According to the embodiment, the remaining robotic devices 20, 30 can monitor the target device and its surrounding environment under the control of one or more processors 120.
[0129] One or more processors 120 can send commands to the target device via the communication interface 110 based on the surrounding environment of the target device monitored by the residual robot devices 20 and 30. These commands may include commands to stop or pause operations, adjust the speed of operation, or change the method of operation. For example, when the operation of the target device is identified as unsafe based on monitoring data received from the residual robot devices 20 and 30, one or more processors 120 can control the communication interface 110 to send commands to the target device.
[0130] Figure 6 This is a diagram provided for explaining an electronic device for identifying a second robot located within a threshold distance from a target device according to an embodiment.
[0131] When the first robot device 10 of a plurality of robot devices 10, 20, 30 is identified as the target device, one or more processors 120 according to the embodiment can identify the second robot device 20 located within a threshold distance from the current position of the target device based on position information received from each of the plurality of robot devices 10, 20, 30.
[0132] According to an embodiment, one or more processors 120 can control a second robotic device 20 to monitor a target device.
[0133] For example, when the operation of the first robot device 10 among multiple robot devices corresponds to a dangerous operation based on multiple operation information, one or more processors 120 can identify the first robot device 10 as the target device. According to an embodiment, one or more processors 120 can identify a second robot device 20 located within a threshold distance of the target device.
[0134] For example, one or more processors 120 can identify a first robot device 10 located in a hazardous area based on hazardous area information from a plurality of robot devices 10, 20, 30 as the target device based on multiple location information. According to an embodiment, one or more processors 120 can 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 its surrounding environment.
[0135] According to an embodiment, one or more processors 120 can identify whether the operation of the target device is safe based on monitoring data received from the second robotic device 20.
[0136] Figure 7 This is a diagram provided for explaining the electronic device used to control the second robotic device to monitor the target device according to an embodiment.
[0137] Each of the plurality of robotic devices 10, 20, 30 according to the embodiment can perform operations.
[0138] For example, the first robot device 10 can perform the operation of transporting loaded objects, and the second robot device 20 can perform the operation of moving from a first position to a second position according to a travel path.
[0139] When the first robot device 10 is identified as the target device, one or more processors 120 may i) control the remaining robot devices 20 and 30 of the plurality of robot devices 10, 20 and 30 other than the first robot device 10 to monitor the first robot device 10, or ii) control the second robot device 20 of the remaining robot devices 20 and 30 located within a threshold distance from the first robot device 10 to monitor the first robot device 10.
[0140] For example, one or more processors 120 may receive position information of the second robot device 20 performing an operation to move from a first position to a second position, and based on the received position information of the second robot device 20, control the second robot device 20 to monitor the first robot device when the second robot device 20 is within a threshold distance from the first robot device 10.
[0141] Therefore, when performing the operation of the second robot device 20 (i.e., the operation of moving from the first position to the second position according to the travel path), the second robot device 20 can monitor the first robot device 10 only when the second robot device 20 is adjacent to the first robot device 10.
[0142] For example, when performing an operation of the third robot device 30 (e.g., assembling a module at a fixed location), the third robot device 30 may monitor the first robot device 10 only when the third robot device 30 is adjacent to the first robot device 10.
[0143] Therefore, while the first robot device 10 is performing an operation (e.g., transporting a loaded object), the second robot device 20 can monitor the first robot device 10 and send monitoring data to the electronic device 100 during a first time period, and the third robot device 30 can monitor the first robot device 10 and send monitoring data to the electronic device 100 during a second time period.
[0144] One or more processors 120 may 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 period, and may also 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 period.
[0145] Here, the sum of the first time period and the second time period may or may not correspond to the total time required for the first robotic device 10 to perform its operation.
[0146] Figure 8 This is a diagram provided for explaining the electronic device used to control the second robotic device to monitor the target device according to an embodiment.
[0147] According to an embodiment, one or more processors 120 can identify the first robot device 10 among a plurality of robot devices 10, 20, 30 as the target device based on multiple operational information.
[0148] Subsequently, one or more processors 120 may identify at least one robotic device (e.g., the second robotic device 20) for monitoring the target device based on the corresponding operational information of each of the remaining robotic devices 20, 30.
[0149] For example, one or more processors 120 may identify a second robot device 20 that is in an idle state based on the corresponding operational information of each of the remaining robot devices 20, 30.
[0150] One or more processors 120 can control the second robot device 20, causing the second robot device 20 to follow the target device and monitor the target device while following it.
[0151] For example, such as Figure 8 As shown, while the first robot device 10 is performing an operation (e.g., transporting a loaded object), the second robot device 20, which is in an idle state, can monitor the first robot device 10 while maintaining a threshold distance from the first robot device 10 under the control of the electronic device 100.
[0152] Therefore, while the first robot device 10 is performing an operation (e.g., transporting a loaded object), the second robot device 20 can monitor the first robot device 10 and send monitoring data to the electronic device 100 during a first time period.
[0153] One or more processors 120 may determine 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 period. Here, the first time period may or may not correspond to the total time required for the first robot device 10 to perform its operations.
[0154] According to an embodiment, one or more processors 120 can identify the priority 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.
[0155] For example, one or more processors 120 can identify the priority among operations being performed by each of the multiple robotic devices 10, 20, 30 based on operation scheduling. Operation scheduling can be set according to user input, or it can be set based on various conventional criteria used to set the priority among multiple operations (e.g., the time required for the operation, the priority order among multiple operations according to sequence information).
[0156] When the operation of the first robot device 10 among a plurality of robot devices corresponds to a dangerous operation based on information about the dangerous operation, one or more processors 120 can identify the first robot device 10 as the target device.
[0157] Subsequently, one or more processors 120 may identify a second robot device 20 that performs an operation with a relatively lower priority than the operation performed by the first robot device 10, one of the remaining robot devices 20, 30. Additionally, one or more processors 120 may identify a third robot device 30 that performs an operation with a relatively higher priority than the operation performed by the first robot device 10.
[0158] One or more processors 120 can switch the second robot device 20 to an idle state by stopping (or pausing) operations performed by the second robot device 20 (e.g., operations with a relatively lower priority than operations performed by the first robot device 10). Subsequently, one or more processors 120 can control the second robot device 20 such that it follows the target device and monitors the target device while following it.
[0159] For example, such as Figure 8 As shown, while the first robot device 10 performs an operation (e.g., transporting a loaded object), the second robot device 20, which is in an idle state, can monitor the first robot device 10 while maintaining a threshold distance from the first robot device 10 under the control of the electronic device 100.
[0160] According to an embodiment, when the first robot device 10 completes an operation (e.g., transporting a loaded object), one or more processors 120 can control the second robot device 20 so that the second robot device 20 continues to perform the stop (or pause) operation.
[0161] According to an embodiment, when the operation of the target device is identified as unsafe based on monitoring data received from the second robot device 20, one or more processors 120 may send commands to the target device for controlling the target device.
[0162] For example, when the operation of the target device is identified as unsafe, one or more processors 120 may stop the operation of the target device, or may send commands to the target device to adjust the speed at which the target device performs the operation, or to control the target device to output a warning sound (e.g., a beeping sound).
[0163] Furthermore, after sending commands to control the target device, when the operation of the target device is re-identified as unsafe based on monitoring data re-received from the second robot device 20 monitoring the target device, one or more processors 120 may send commands to the second robot device 20 for forced control of the target device. Here, commands for forced control of the target device may include commands that reduce the execution speed (e.g., travel speed) of the target device's operation by controlling the second robot device 20 monitoring the target device to directly collide with (or forcibly dock with) the target device using physical external force.
[0164] Figure 9 This is a diagram illustrating a method for interpreting a first robot and a second robot that are adjacent to each other to monitor each other and obtain monitoring data corresponding to the first robot device and the second robot device.
[0165] According to an embodiment, one or more processors 120 can control i) one of a plurality of robot devices 10, 20, 30 (e.g., the first robot device 10) to be identified as the target device and the remaining robot devices 20, 30 to monitor the target device, or ii) the plurality of robot devices 10, 20, 30 to monitor each other.
[0166] For example, one or more processors 120 may identify a first robot device 10 and a second robot device 20 that are positioned adjacent to each other within a threshold distance based on position information received via communication interface 110 regarding each of the plurality of robot devices 10, 20, 20.
[0167] One or more processors 120 can control the first robot device 10 such that the first robot device 10 monitors the second robot device 20. In other words, one or more processors 120 can identify the second robot device 20 as a target device and control the first robot device 10 to monitor the second robot device 20.
[0168] Furthermore, one or more processors 120 can control the second robot device 20 to monitor the first robot device. In other words, one or more processors 120 can identify the first robot device 10 as the target device and control the second robot device 20 to monitor the first robot device 10.
[0169] For example, one or more processors 120 may control the first robot device 10 and the second robot device 20 to monitor each other, regardless of whether the operation performed by each of the first robot device 10 and the second robot device 20 corresponds to a dangerous operation.
[0170] Here, the first robot device 10 can be the target device and simultaneously a monitoring device for monitoring the second robot device 20. Similarly, the second robot device 20 can be the target device and simultaneously a monitoring device for monitoring the first robot device 10.
[0171] When the first robot device 10, which monitors the second robot device 20, receives first monitoring data, one or more processors 120 can identify whether the operation of the second robot device 20 is safe based on the first monitoring data and send commands to control the second robot device 20. Conversely, when the second robot device 20, which monitors the first robot device 10, receives second monitoring data, one or more processors 120 can identify whether the operation of the first robot device 10 is safe based on the second monitoring data and send commands to control the first robot device 10.
[0172] Reference Figure 9 Each of the multiple robotic devices 10, 20, and 30 can also be implemented as a stationary robot.
[0173] One or more processors 120 can identify a first robot device 10 and a second robot device 20 that are positioned adjacent to each other within a threshold distance from a plurality of robot devices 10, 20, 30.
[0174] One or more processors 120 may control the first robot device 10 to monitor the second robot device 20 and its surrounding environment. Optionally, one or more processors 120 may control the second robot device 20 to monitor the first robot device 10 and its surrounding environment.
[0175] According to an embodiment, one or more processors 120 may identify objects located in areas (e.g., blind spots) that are not monitored (or cannot be monitored) by sensors set in the second robot device 20, based on first monitoring data received from the first robot device 10 monitoring the second robot device 20, and determine whether the operation of the second robot device 20 is safe.
[0176] Furthermore, one or more processors 120 may identify objects located in areas not monitored (or unmonitored) by sensors in the first robot device 10, and determine whether the operation of the first robot device 10 is safe, based on second monitoring data received from a second robot device 20 monitoring the first robot device 10.
[0177] Figure 10 This is a flowchart provided to explain the control method of an electronic device according to an embodiment.
[0178] The control method of the electronic device according to the embodiment includes first receiving operation information of each of a plurality of robotic devices (S1010).
[0179] Based on multiple operational information, at least one first robot device is identified as the target device (S1020).
[0180] Control at least one of the remaining robot devices to monitor the target device (S1030).
[0181] When monitoring data is received from at least one robotic device of the target device, the operation of the target device based on the monitoring data is identified as safe based on the operation information (S1040).
[0182] Based on the identification results, a command for controlling the target device is sent to the target device (S1050).
[0183] The operation S1020 of identifying at least one first robot device as a target device according to an embodiment may include: identifying at least one first robot device as a target device when, based on information about a dangerous operation, the operation of at least one first robot device among a plurality of robot devices corresponds to a dangerous operation.
[0184] The electronic device according to an embodiment may include map information corresponding to the space where the plurality of robotic devices are located, and the map information may include information about hazardous areas within the space. The control method according to an embodiment may further include receiving position information of each of the plurality of robotic devices, and the operation S1020 of identifying at least one first robotic device as a target device may include identifying at least one first robotic device located in a hazardous area according to hazardous area information from the plurality of robotic devices as a target device based on multiple pieces of position information. The command for controlling the target device may be a command to stop the operation of the target device, or a command to control the target device to output a warning sound.
[0185] According to the embodiment, the operation S1030 of controlling the remaining robot devices may include identifying at least one second robot device located within a threshold distance from the current position of the target device from the remaining robot devices based on multiple location information, and controlling at least one second robot device to monitor the target device.
[0186] The monitoring data according to the embodiments may include at least one of the following: target device image data, target device speed data, or target device position data obtained by sensors included in at least one robotic device.
[0187] The operation S1040 of identifying whether the operation of the target device is safe, according to the embodiment, may include: identifying the operation of the target device as unsafe when it is identified that a predetermined object is within a threshold distance from the target device or that the loading state of an object loaded on the target device is defective. The sending operation S1050 may include: sending a command to the target device for controlling the target device when the operation of the target device is identified as unsafe.
[0188] According to the embodiment, the operation S1040 of identifying whether the operation of the target device is safe may include: when the travel speed of the target device is equal to or greater than a threshold speed based on speed data, or when the target device is located in a dangerous area based on location data, the operation of the target device is identified as unsafe, and the sending operation S1050 may include: when the operation of the target device is identified as unsafe, sending a command to the target device for controlling the target device.
[0189] Each of the multiple operation information entries according to the embodiment may include the operation of the corresponding robot device, whether the operation is performed, and the travel path. The step S1030 of controlling the remaining robot devices may include identifying at least one second robot device in an idle state based on the corresponding operation information of each of the remaining robot devices, and sending a command to the at least one second robot device to control it to follow at least one first robot device. The step S1040 of identifying whether the operation of the target device is safe may include identifying whether the operation of the target device is safe based on monitoring data received from at least one second robot device.
[0190] The control method according to the embodiment may include: 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 adjacent to each other within a threshold distance based on the position information of each of the plurality of robot devices; controlling at least one first robot device to monitor at least one second robot device; when receiving first monitoring data from at least one first robot device monitoring at least one second robot device; identifying whether the operation of at least one second robot device is safe based on the first monitoring data and sending a command for controlling at least one second robot device; controlling at least one second robot device to monitor at least one first robot device; and when receiving second monitoring data from at least one second robot device monitoring at least one first robot device; identifying whether the operation of at least one first robot device is safe based on the second monitoring data and sending a command for controlling at least one first robot device.
[0191] According to the embodiments, the commands for controlling the target device may be commands for stopping the operation of the target device or for controlling the target device to output a warning sound.
[0192] However, the various embodiments of this disclosure can be applied not only to electronic devices, but also to any type of electronic device capable of communicating with external devices.
[0193] The various embodiments described above can be implemented using software, hardware, or a combination of software and hardware on a computer or a recording medium readable by a computer or similar device. In some cases, the embodiments described in the specification can be implemented by the processor itself. According to software implementation, embodiments such as the processes and functions described in the specification can be implemented by separate software modules. Each software module can perform one or more functions and operations described in the specification.
[0194] Computer instructions for performing processing operations of the robotic device according to the various embodiments of the present disclosure may be stored in a non-transitory computer-readable medium. The computer instructions stored in the non-transitory computer-readable medium may allow a particular device to perform processing operations of the electronic device 100 according to the various embodiments described above, provided that the computer instructions are executed by the processor of the particular device.
[0195] Non-transitory computer-readable media are not media in which data is stored for a period of time (such as registers, caches, or memory), but rather media in which data is stored semi-permanently and can be read by a device. Specific examples of non-transitory computer-readable media can include discs (CDs), DVDs, hard disks, Blu-ray discs, Universal Serial Bus (USB), memory cards, read-only memory (ROM), etc.
[0196] Furthermore, while embodiments of this disclosure have been shown and described, this disclosure is not limited to the specific embodiments described above, and it will be apparent to those skilled in the art that various modifications can be made without departing from the spirit of this disclosure as claimed in the appended claims. Moreover, such modifications are intended to be interpreted without being independent of the technical concept or vision of this disclosure.
Claims
1. An electronic device comprising: Communication interface; At least one memory, storing one or more instructions; as well as One or more processors communicate with the at least one memory to execute the one or more instructions. The one or more processors are configured to perform the following operations: The communication interface is used to receive operation information from each of the multiple robotic devices. Based on the operational information, at least one first robot device is identified as the target device from among the plurality of robot devices. Controlling at least one second robot device among the plurality of robot devices via a communication interface to monitor the target device, and Based on monitoring data received from the at least one second robotic device via the communication interface: Based on the monitoring data, it is determined whether the operation of the target device is safe, and Based on the identification result of the operation of the target device, a command is sent to the target device through the communication interface.
2. The electronic device according to claim 1, in, The at least one memory stores information related to hazardous operations. The one or more processors are further configured to identify the at least one first robotic device as the target device based on information related to the dangerous operation and based on the fact that the operation of the at least one first robotic device includes a dangerous operation.
3. The electronic device according to claim 1, in, The at least one memory stores map information corresponding to the space where the plurality of robotic devices are located. The map information includes information on dangerous areas, and The one or more processors are further configured to perform the following operations: The location information of each of the plurality of robotic devices is received through the communication interface, and Based on the identification of the location of the at least one first robot device as being in a dangerous area according to the dangerous area information and the location information, the at least one first robot device is identified as the target device.
4. The electronic device according to claim 3, in, The one or more processors are also configured to perform the following operations: The at least one second robot device is identified based on the location information, which indicates that the at least one second robot device is within a threshold distance of the target device.
5. The electronic device according to claim 1, wherein, The monitoring data includes at least one of the following: the image data captured by the target device, the speed data of the target device, or the position data of the target device.
6. The electronic device according to claim 5, wherein, The one or more processors are also configured to perform the following operations: Based on the shooting data identifying that a predetermined object is within a threshold distance of the target device, or based on the shooting data identifying that the loading state of an object loaded on the target device is defective, the operation of the target device is identified as unsafe. Based on the identification that the operation of the target device is unsafe, the command is sent to the target device through the communication interface.
7. The electronic device according to claim 5, wherein, The one or more processors are also configured to perform the following operations: Based on the speed data indicating that the target device's travel speed is equal to or greater than a threshold speed, or based on the location data indicating that the target device is located in a danger zone, the operation of the target device is identified as unsafe. Based on the identification that the operation of the target device is unsafe, the command is sent to the target device through the communication interface.
8. The electronic device according to claim 1, in, For each of the plurality of robotic devices, the operational information includes information about the operation of the corresponding robotic device, information identifying whether the operation of the corresponding robotic device was performed, and the travel path of the corresponding robotic device. The one or more processors are further configured to perform the following operations: The at least one second robot device is identified based on the operation information indicating that it is in an idle state. The command to send the at least one second robot device to follow the target device is sent through the communication interface. The monitoring data is used to determine whether the operation of the target device is safe.
9. The electronic device according to claim 1, wherein, The one or more processors are also configured to perform the following operations: The location information of each of the plurality of robotic devices is received through the communication interface. Based on the location information, the at least one second robot device is identified as being adjacent to the target device and within a threshold distance of the target device. The target device is controlled via the communication interface to monitor the at least one second robot device, and Based on receiving the first monitoring data from the target device through the communication interface: Based on the first monitoring data, determine whether the operation of the at least one second robotic device is safe, and Commands are sent to the at least one second robotic device through the communication interface.
10. The electronic device according to claim 1, wherein, The command includes an instruction to cause the target device to output a warning sound.
11. A method for controlling an electronic device, the method comprising: Receive operational information from each of multiple robotic devices; Based on the operational information, at least one first robot device is identified as the target device from the plurality of robot devices; Control at least one second robot device among the plurality of robot devices to monitor the target device; as well as Based on monitoring data received from the at least one second robotic device: The monitoring data is used to determine whether the operation of the target device is safe. as well as Commands are sent to the target device based on the recognition results of the operation of the target device.
12. The method according to claim 11, wherein, The step of identifying the at least one first robotic device as the target device further includes: identifying the at least one first robotic device as the target device based on information related to a dangerous operation and based on the fact that the operation of the at least one first robotic device corresponds to a dangerous operation.
13. The method of claim 11, further comprising: Receive position information about each of the plurality of robotic devices. The step of identifying the at least one first robotic device as the target device further includes identifying the location of the at least one first robotic device as the target device based on the hazardous area information and the location information, determining that the location of the at least one first robotic device is in a hazardous area. The step of sending the command further includes sending an instruction to stop the operation of the target device or to output a warning sound.
14. The method of claim 13, further comprising: The at least one second robot device is identified based on the location information, which indicates that the at least one second robot device is within a threshold distance of the target device.
15. The method according to claim 11, wherein, The monitoring data includes at least one of the following: the image data captured by the target device, the speed data of the target device, and the position data of the target device.