Core module, robot device including same, and control method thereof
The core module with integrated memory and communication capabilities allows robots to dynamically adjust shape and function, addressing the limitations of conventional robots by automating module assembly and configuration.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-07-16
- Publication Date
- 2026-03-19
AI Technical Summary
Conventional robots are limited to specific tasks and require manual reconfiguration of modules for shape changes, making them inconvenient for diverse missions.
A core module that integrates a memory, communication unit, and processor to automatically identify and configure the assembly state of multiple modules, enabling dynamic shape adaptation and communication with external devices.
Enables robots to adapt to various shapes and functions without manual reconfiguration, enhancing versatility and efficiency in tasks such as transportation, delivery, and military operations.
Smart Images

Figure KR2025010504_19032026_PF_FP_ABST
Abstract
Description
Core module, robot device including the same, and method for controlling the same
[0001] The present disclosure relates to a robot device, and more specifically, to a robot device composed of a plurality of modules and a core module usable therein.
[0002] Recently, various fields such as transportation, delivery, cleaning, and the military require different types of robots, including transport robots, delivery robots, cleaning robots, and military robots.
[0003] However, conventionally, a single type of robot could only perform specific tasks, requiring a separate robot to handle different missions and presenting difficulties in reusing existing robots. Furthermore, although modular robots capable of diversifying shapes were introduced to address these issues, conventional modular robots also presented the inconvenience of requiring users to manually change the position and type of each module whenever the shape changed.
[0004] A core module for configuring a robot device by combining with at least one other module according to one or more embodiments of the present disclosure may include a main body capable of combining with said at least one other module; and a memory, a communication unit, and a processor mounted within said main body. The processor may store module information of each module in the memory when received through said communication unit while the robot device is assembled with a plurality of modules including said core module and said at least one other module, identify the assembly state between said plurality of modules based on said module information, and, based on said assembly state, configure screen data regarding the shape of said robot device and transmit it to an external device through said communication unit.
[0005] A robot device according to one or more embodiments of the present disclosure comprises a plurality of modules capable of mutual coupling and separation, wherein, when module information of at least one module other than the core module is received while the plurality of modules are assembled into the robot device, the core module among the plurality of modules identifies the assembly state of the plurality of modules based on the module information, and can construct screen data regarding the shape of the robot device in which the plurality of modules are assembled based on the assembly state and transmit it to an external device.
[0006] A method for controlling a core module according to one or more embodiments of the present disclosure may include: a step of identifying an assembly state between the modules based on module information of the at least one other module when the core module and at least one other module are assembled into a robot device; a step of configuring screen data for the shape of the robot device based on the assembly state of the modules; and a step of transmitting the configured screen data to an external device.
[0007] FIG. 1 is a drawing for explaining the operation of a core module according to at least one embodiment of the present disclosure.
[0008] FIG. 2 is a diagram showing the configuration of a core module according to one or more embodiments of the present disclosure.
[0009] FIG. 3 is a drawing showing an I-shaped module among a plurality of modules according to one or more embodiments of the present disclosure.
[0010] FIG. 4 is a drawing showing an L-shaped module among a plurality of modules according to one or more embodiments of the present disclosure.
[0011] FIG. 5 is a drawing showing an end effector module among a plurality of modules according to one or more embodiments of the present disclosure.
[0012] FIG. 6 is a block diagram of a core module according to one or more embodiments of the present disclosure.
[0013] FIG. 7 is a drawing for explaining a core module that communicates with various devices according to one or more embodiments of the present disclosure.
[0014] FIGS. 8 and 9 are drawings showing a robot device in which a plurality of modules are assembled according to one or more embodiments of the present disclosure.
[0015] FIGS. 10 to 14 are flowcharts for explaining the operation of a core module according to one or more embodiments of the present disclosure.
[0016] The various embodiments of this document and the terms used therein are not intended to limit the technical features described in this document to specific embodiments, and should be understood to include various modifications, equivalents, or substitutions of said embodiments.
[0017] In relation to the description of the drawings, similar reference numerals may be used for similar or related components.
[0018] The singular form of the noun corresponding to the item may include one or multiple items, unless the relevant context clearly indicates otherwise.
[0019] In this document, each of the phrases such as "A or B", "at least one of A and B", "at least one of A or B", "A, B or C", "at least one of A, B and C", and "at least one of A, B, or C" may include any one of the items listed together in the corresponding phrase, or all possible combinations thereof.
[0020] The term "and / or" includes a combination of multiple related described components or any of the multiple related described components.
[0021] Terms such as "first," "second," or "first" or "second" may be used simply to distinguish a component from another component and do not limit the components in other aspects (e.g., importance or order).
[0022] Where any (e.g., 1st) component is referred to as "coupled" or "connected" to another (e.g., 2nd) component, with or without the terms "functionally" or "communicationly," it means that said any component may be connected to said other component directly (e.g., via a wire), wirelessly, or through a third component.
[0023] Terms such as "include" or "have" are intended to specify the existence of the features, numbers, steps, actions, components, parts, or combinations thereof described in this document, and do not preclude the existence or addition of one or more other features, numbers, steps, actions, components, parts, or combinations thereof.
[0024] When it is said that a component is "connected," "combined," "supported," or "in contact" with another component, this includes not only cases where the components are directly connected, combined, supported, or in contact, but also cases where they are indirectly connected, combined, supported, or in contact through a third component.
[0025] When it is said that a component is located "on" another component, this includes not only cases where one component is in contact with the other, but also cases where another component exists between the two components.
[0026] Hereinafter, a core module and a robot device according to various embodiments will be described in detail with reference to the drawings.
[0027] FIG. 1 is a drawing for explaining the operation of a core module (1) according to at least one embodiment of the present disclosure.
[0028] According to FIG. 1, the core module (1) is connected to a plurality of modules (2000) and is a device for managing the overall operation of the plurality of modules (2000). In addition, the core module (1) is a device capable of communicating with an external device (1000).
[0029] A plurality of modules (2000) can be assembled to a core module (1) and other plurality of modules (2000) to implement a robot device having various shapes and functions. For example, as shown in FIG. 8, a 3-axis core robot (reference numeral 3000 in FIG. 8) may be implemented, and as shown in FIG. 9, a quadruped walking robot (reference numeral 4000 in FIG. 9) may be implemented. A detailed description of the 3-axis core robot (reference numeral 3000 in FIG. 8) and the quadruped walking robot (reference numeral 4000 in FIG. 9) will be explained in detail in FIG. 8 and FIG. 9, so this is omitted.
[0030] The plurality of modules (2000) may be one of an I-type module (reference numeral 200 in FIG. 2), an L-type module (reference numeral 300 in FIG. 3), or an end effector module (reference numeral 400 in FIG. 4). However, they are not limited thereto and may be composed of modules of various shapes. Since a detailed description of each module will be provided in FIG. 3 to FIG. 5, this is omitted here.
[0031] The external device (1000) may be an electronic device for controlling, monitoring, or managing the operation of the robot device. The external device (1000) may be implemented as a display device equipped with a display, or may be a terminal device connected to the display through an interface. The external device (1000) may display the shape or operating status of the robot device using the display. Specifically, it may display the shape of the core module (1) and a plurality of modules (2000) connected to the core module (1). The external device may be implemented in various types, such as a PC, laptop PC, smartphone, tablet PC, kiosk, or electronic whiteboard.
[0032] The external device (1000) can receive various information, such as module information of a plurality of modules (2000), assembly status information between the plurality of modules (2000), and screen data information regarding the shape of the robot device, from the communication unit (reference numeral 510 in FIG. 6) of the core module (1). Additionally, the external device (1000) can receive real-time position and angle information of the plurality of modules (2000) from the communication unit (reference numeral 510 in FIG. 6) of the core module (1). Through this, the external device (1000) can display the shape of the core module and the plurality of modules (2000) connected to the core module (1) in real time.
[0033] A detailed description of the core module (1), external device (1000), and multiple modules (2000) will be provided later with reference to the drawings.
[0034] FIG. 2 is a diagram showing the configuration of a core module (1) according to one or more embodiments of the present disclosure.
[0035] According to at least one embodiment of the present disclosure of FIG. 2, the core module (1) may include a main body (100), a first coupling part (110), a second coupling part (120), and a third coupling part (130).
[0036] In FIG. 2, the main body (100) has a cross shape and can be combined with at least one other module among the plurality of modules (2000). However, the shape of the main body (100) is not limited to this and can have various shapes such as a circle, a square, or a polygon.
[0037] In FIG. 2, a plurality of modules (2000) are devices that can be connected to a core module (1) or other plurality of modules (2000). For example, as shown in FIG. 3, the plurality of modules (2000) may be modules having an I shape. Also, as shown in FIG. 4, they may be modules having an L shape, and as shown in FIG. 5, they may be END EFFECTOR modules capable of performing a clamping function. However, they are not limited thereto, and the plurality of modules (2000) may be modules capable of performing various shapes and functions. Each module will be discussed in detail in FIG. 3 to FIG. 5.
[0038] In FIG. 2, the first coupling part (110), the second coupling part (120), and the third coupling part (130) are parts capable of coupling a plurality of modules (2000). The first coupling part (110) can be positioned centrally at the top of the core module (100). As shown in FIG. 8, when one of the plurality of modules (2000) is assembled to the first coupling part, the core module (100) can be positioned at the bottom of the robot device and can support the robot device.
[0039] The second coupling part (120) and the third coupling part (130) may be placed on the side portion of the core module (100). The second coupling part (120) and the third coupling part (130) may be used when implementing a humanoid assembly robot or a 4-axis core assembly robot, etc. For example, in the case of a humanoid assembly robot, the second coupling part (120) may have an I-shaped module assembled thereon. As shown in FIG. 9, when assembling a quadrupedal walking robot (reference numeral 4000 in FIG. 9), four I-shaped modules (reference numeral 200 in FIG. 3) of four parts may be assembled among the second coupling part (120).
[0040] FIG. 3 is a drawing showing an I-shaped module (200) among a plurality of modules according to one or more embodiments of the present disclosure.
[0041] In FIG. 3, the I-shaped module (200) may include a motor (210), a reduction gear (220), a first assembly (230), a second assembly (240), and a control unit (250).
[0042] In FIG. 3, the motor (210) may primarily be a rotary motor. The motor (210) can rotate the module connected to the I-shaped module (200). Additionally, when the I-shaped module (200) is connected to the core module (1), the motor (210) can rotate the I-shaped module (200) itself around the core module (1). If the I-shaped module (200) is a rotary motor, it can rotate freely within a range of 0 to 360 degrees. However, the motor (210) is not limited to a rotary motor, and various motors such as ball motors and linear motors can be used. For example, a ball motor has multiple actuators attached to the entire surface of the ball, allowing for control of three-dimensional movement. Therefore, if the motor (210) is a ball motor, the motor (210) can control the movement of the module connected to the I-shape module (200) more precisely, thereby enabling complex tasks to be performed.
[0043] As another example, a linear motor can provide linear motion. Thus, if the motor (210) is a linear motor, the motor (210) can extend the I-shaped module (200) to a greater distance. In this way, if the module connected to the I-shaped module (200) is an end effector module (reference numeral 400 in FIG. 5) capable of performing multiple functions, the motor (210) can extend the I-shaped module (200) to allow the end effector module (reference numeral 400 in FIG. 5) to perform tasks over a greater distance.
[0044] In FIG. 3, the reduction gear (220) can be positioned next to the motor (210). The reduction gear (220) can reduce the speed generated by the motor (210) to adjust it to the required operating speed. Additionally, the reduction gear (220) can increase the output torque while simultaneously reducing the speed of the motor (210). Through this, the I-shaped module (220) can lift heavy objects. Furthermore, the reduction gear (220) can distribute the load between the components of the motor (210) and the I-shaped module (200). Through this, the reduction gear (220) can extend the lifespan of the motor (210) and increase the durability of the I-shaped module (220).
[0045] In FIG. 3, the first assembly (230) may be positioned on the opposite side of the reduction gear (220) with respect to the control unit (250). The second assembly (240) may be positioned on the opposite side of the reduction gear (220) with respect to the motor (210). That is, the first assembly (230) and the second assembly (240) may be positioned on each side of the I-shaped module (200). The first assembly (230) and the second assembly (240) are parts that can assemble other modules. For example, the first assembly (230) may be a socket and the second assembly (240) may be a plug. Through this, the second assembly (240) of the I-shaped module (200) can be connected by plugging it into the first assembly (230) of another I-shaped module (200). Conversely, the first assembly (230) may be in the form of a plug, and the second assembly (240) may be in the form of a socket. However, this is not limited thereto, and the first assembly (230) and the second assembly (240) may form a structure that can be combined in various forms.
[0046] In FIG. 3, the control unit (250) may be positioned between the reduction gear (220) and the first assembly unit (230). However, this is only one embodiment and may be positioned at other locations.
[0047] The control unit (250) is a device capable of controlling the motor (210), reduction gear (220), etc. of the I-shaped module (200). The control unit (250) may further include a communication unit (not shown), a memory (not shown), and a processor (not shown). Specific examples of the configuration of the communication unit (not shown), the memory (not shown), and the processor (not shown) will be specifically covered in FIG. 6, so they will be omitted.
[0048] When an I-shaped module (200) is assembled with a core module (220) or multiple other modules, the control unit (250) can transmit module information of the I-shaped module to the communication unit (reference numeral 510 in FIG. 6) of the core module (1). The control unit (250) can receive ID information assigned to each assembled module through the communication unit (reference numeral 510 in FIG. 6) of the core module (1). Subsequently, based on the ID information, the control unit (250) can receive work command information assigned to each ID from the core module (1). For example, in FIG. 3, the control unit (250) can receive work command information of the I-shaped module (200) from the core module (1). Subsequently, based on the received work command information, the control unit (250) can control the motor (210), the reduction gear (220), etc. For convenience of explanation in this disclosure, the modules other than the core module are described as including a control unit; however, the control unit may also be implemented in the form of a processor. For example, the control unit of each module may be implemented in a form including a processor and memory. However, it is not necessarily limited thereto, and the control unit may be implemented with various control logic or analog circuits, etc.
[0049] FIG. 4 is a drawing showing an L-shaped module (300) among a plurality of modules according to one or more embodiments of the present disclosure.
[0050] The L-shaped module (300) may include a motor (310), a reduction gear (320), a first assembly (330), a second assembly (340), and a control unit (350).
[0051] The structure and function of the motor (310), reduction gear (320), and second assembly part (340) of the L-shaped module (300) are identical to the structure and function of the motor (210), reduction gear (220), and second assembly part (240) of the I-shaped module (200) of FIG. 3. Therefore, a detailed description thereof is omitted.
[0052] In FIG. 4, the first assembly part (330) may include a first link part (330a), a hinge part (330b), and a second link part (330c).
[0053] In FIG. 4, the first assembly part (330) is bent at the hinge part (330b), unlike the first assembly part (230) in FIG. 3. In FIG. 4, the bending angle of the first assembly part (330) is 90 degrees, but it is not limited to this and can be bent at various angles.
[0054] The first link part (330a) is a part that can connect other modules, just like the first assembly part (230) of FIG. 3. A specific example of this is omitted as it has been described in the first assembly part (230) of FIG. 3.
[0055] A hinge portion (330b) may be positioned between the first link portion (330a) and the second link portion (330b). The hinge portion (330b) may form a shape in which the first link portion (330a) and the second link portion (330b) are bent at a specific angle. Although not shown in FIG. 4, the hinge portion (330b) may further include a joint. Through this, the angle between the first link portion (330a) and the second link portion (330b) can be precisely adjusted. For example, in FIG. 4, the angle between the first link portion (330a) and the second link portion (330b) is formed as 90 degrees, but through the joint of the hinge portion (330b), it can be adjusted to various angles such as 45 degrees, 0 degrees, etc.
[0056] The second link section (330c) may be positioned between the reduction gear (350) and the hinge section (330b). In FIG. 4, the shape of the L-shaped module (300) can be various shapes by adjusting the length of the second link section (330c). For example, if the length of the second link section (330c) is very short, the length of the first link section (330a) may be equal to the combined length of the motor (310), reduction gear (320), second assembly section (340), and control section (350). Conversely, if the length of the second link section (330c) is formed to be very long, the length of the first link section (330a) may be very short compared to the combined length of the motor (310), reduction gear (320), second assembly section (340), and control section (350). Through this, when a module is combined with the core module (1), a robot of various shapes can be made.
[0057] FIG. 5 is a drawing showing an end effector module (400) among a plurality of modules according to one or more embodiments of the present disclosure.
[0058] In FIG. 5, the end effector module (400) may include a first handle portion (410a), a second handle portion (410b), a first drive motor (410c), a second drive motor (420), a connection portion (430), and a control portion (440).
[0059] The end effector module (400) is a component assembled at the very end of the robot module and is a module that allows the robot to directly interact with an object or environment to perform a specific task. In FIG. 4, the end effector module (400) may have the function of grasping a specific object. Specifically, the end effector module (400) of FIG. 4 can grasp an object placed between the first handle portion (410a) and the second handle portion (410b) through the first drive motor (410c), and can release the object through the first drive motor (410c).
[0060] The first drive motor (410c) can operate the first handle portion (410a) and the second handle portion (410b) independently or organically. For example, the first drive motor (410c) can fix the first handle portion (410a) and operate the second handle portion (410b) to grasp an object. Conversely, the first drive motor (410c) can fix the second handle portion (410b) and operate the first handle portion (410a) to grasp an object. As another example, the first drive motor (410c) can operate the first handle portion (410a) and the second handle portion (410b) together to grasp an object.
[0061] In FIG. 5, the second drive motor (420) may be positioned between the first drive motor (410c) and the control unit (440). As with the motor (210) in FIG. 3, the second drive motor (420) may include various motors such as a rotary motor, a ball motor, and a linear motor. The specific operation thereof is omitted as it has been specifically described in FIG. 3.
[0062] The connection part (430) of FIG. 5 can be assembled to the coupling part (110, 120, 130 of FIG. 2) of the core module (1), the connection part (230, 240 of FIG. 3) of the I-type module (200 of FIG. 3), and the connection part (330, 340 of FIG. 4) of the L-type module (300 of FIG. 4). It is not limited thereto, and the connection part (430) of FIG. 5 can be assembled to the coupling part or connection part of various modules.
[0063] The control unit (440) of FIG. 5 is a device capable of controlling the first drive motor (410c) and the second drive motor (420), etc. The control unit (440) may include a communication unit (not shown), a memory (not shown), and a processor (not shown). Specific examples of the configuration of the communication unit (not shown), the memory (not shown), and the processor (not shown) will be specifically covered in FIG. 6, so they will be omitted.
[0064] When the end effector module (400) is assembled with the core module (220) or multiple other modules, the control unit (440) can transmit module information of the end effector module (400) to the communication unit (reference numeral 510 in FIG. 6) of the core module (1). The control unit (440) can receive ID information assigned to each assembled module through the communication unit (reference numeral 510 in FIG. 6) of the core module (1). Subsequently, based on the ID information, the end effector module (400) can receive work command information assigned to each ID from the core module (1). For example, in FIG. 5, the control unit (440) can receive work command information of the end effector module (400) from the core module (1). Specifically, the control unit (440) can receive work command information from the core module (1) for the end effector module (400) to perform gripping of a specific object. Afterwards, based on the received work command information, the control unit (440) can control the first drive motor (410c), the second drive motor (420), etc.
[0065] FIG. 6 is a block diagram of a core module (1) according to one or more embodiments of the present disclosure.
[0066] According to FIG. 6, the core module (1) may include a communication unit (510), memory (520), and a processor (530).
[0067] The communication unit (510) is configured to perform communication with various devices. Specifically, the communication unit (110) can perform communication with various devices, such as a control unit (250) that controls an I-type module (200), a control unit (350) that controls an L-type module (300), a control unit (440) that controls an end effector module (400), a control unit that controls a plurality of other various modules, and an external device (1000).
[0068] The communication unit (110) may include at least one wireless communication module, at least one wired communication module, etc. Each communication module may be implemented in the form of at least one hardware chip. The wireless communication module may include at least one module among a Wi-Fi module, a Bluetooth module, an infrared communication module, or other communication modules. In addition, the communication unit (110) may include at least one communication chip that performs communication according to various wireless communication standards such as Zigbee, 3G (3rd Generation), 3GPP (3rd Generation Partnership Project), LTE (Long Term Evolution), LTE-A (LTE Advanced), 4G (4th Generation), 5G (5th Generation), etc. The wired communication module may include, for example, at least one of a LAN (Local Area Network) module, an Ethernet module, a pair cable, a coaxial cable, a fiber optic cable, or an UWB (Ultra Wide-Band) module.
[0069] In FIG. 6, the communication unit (510) may include a CAN communication unit (Controller Area Network). The CAN communication unit of the core module (1) can communicate with various control devices (e.g., an external device (1000) and a plurality of modules (2000)). Through this, the core module (1) can detect and correct data transmission errors while communicating with various control devices. In addition, if an error occurs while communicating with various control devices, the core module (1) can determine the priority of the data, continue transmitting high-priority data information, and stop transmitting low-priority data information. Accordingly, the CAN communication unit of the core module (1) can significantly increase network efficiency compared to a general communication unit.
[0070] Memory (520) is configured to contain various programs, instructions, and data required for the operation of the core module (1). Although memory (520) is depicted as being separate from the processor (530) in FIG. 6, it is not necessarily limited to this, and memory (520) may be implemented as internal memory such as ROM (e.g., EEPROM (electrically erasable programmable read-only memory)) or RAM included in the processor (530).
[0071] Alternatively, the memory (520) may be implemented in the form of a memory embedded in the core module (1) or in the form of a memory that can be attached to and detached from the core module (1), depending on the purpose of data storage. Specifically, the memory (520) may be implemented in various forms such as volatile memory, SRAM (static RAM), or SDRAM (synchronous dynamic RAM), etc., non-volatile memory (e.g., OTPROM (one time programmable ROM), PROM (programmable ROM), EPROM (erasable and programmable ROM), EEPROM (electrically erasable and programmable ROM), mask ROM, flash ROM, flash memory, hard drive, or solid state drive (SSD), CF (compact flash), SD (secure digital), MicroSD (micro secure digital), Mini-SD (mini secure digital), xD (extreme digital), MMC (multi-media card), etc.
[0072] In the present disclosure, the term memory (520) may be used to include a storage unit, a ROM (not shown), a RAM (not shown) within a processor (530), or a memory card (not shown) mounted on an electronic device (e.g., a micro SD card, a memory stick). Although the memory (520) is depicted as one in FIG. 6, the memory (520) may be implemented in various numbers.
[0073] The memory (520) is accessed by the processor (530). In the memory (520), reading, writing, modifying, deleting, updating, etc. of data by the processor (530) can be performed.
[0074] Specifically, the memory (520) may store various information such as module information of each assembled module, assembly status information between multiple modules based on each module information, screen data information regarding the shape of the robot device based on the assembly status, ID information of each module, position information and angle information of each module, shape information of each module, and ID change information due to replacement of each module, as well as programs and commands for controlling the operation of the core module (1) and other devices.
[0075] The processor (530) is a component connected to each component of the core module (1) to control the overall operation of the core module (1). The processor (530) may be implemented as a digital signal processor (DSP) that processes digital video signals, a microprocessor, a GPU (Graphics Processing Unit), etc. However, it 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), or an ARM processor, or may be defined by such terms. Additionally, the processor (130) may be implemented as a System on Chip (SoC) or Large Scale Integration (LSI) with a built-in processing algorithm, or may be implemented in the form of an Application Specific Integrated Circuit (ASIC) or Field Programmable Gate Array (FPGA).
[0076] The processor (530) may perform at least one of the various operations described above based on an artificial intelligence model. The processor (530) for executing the artificial intelligence model may be implemented through a combination of software and a general-purpose processor such as a CPU, AP, DSP (Digital Signal Processor), a graphics-dedicated processor such as a GPU, VPU (Vision Processing Unit), or an artificial intelligence-dedicated processor such as an NPU.
[0077] If the processor (530) is implemented as a processor dedicated to artificial intelligence, it may be designed as a hardware chip such as an ASIC or FPGA specialized in processing a specific artificial intelligence model.
[0078] When the processor (530) is implemented as a dedicated processor, it may be implemented to include a memory (520) for implementing an embodiment of the present disclosure, or may be implemented to include a memory processing function for using external memory. The processor (530) may be implemented as one or multiple processors. Additionally, the processor (530) may perform various operations based on programs, instructions, data, etc., stored in the memory (520).
[0079] Various information received by the core module (1) and information generated by the core module (1), for example, information on the type of assembled module, information about the external device (1000), ID information of the module with an assembly history, ID information of the assembled module, assembly status information of the assembled module, error information of the assembled module, reception status information of the assembled module, various control information of the assembled module, work command information of each module, screen data information to be transmitted to the external device (1), etc. can be stored in the memory (520).
[0080] When a plurality of modules (2000) are assembled into a robot device, the processor (530) can store module information of each module in memory (520) when it is received through the communication unit (510).
[0081] The processor (530) can identify the assembly status between multiple modules based on module information. Additionally, the processor (530) can configure screen data regarding the shape of the robot device based on the assembly status. Subsequently, the processor (530) can transmit the screen data information regarding the shape of the robot device to an external device (1000).
[0082] When the processor (530) replaces some of the multiple modules (2000), it can re-identify the assembly state between the multiple modules (2000) based on the information of the replaced modules. Based on the assembly state, the processor (530) can reconstruct screen data regarding the shape of the robot device. Subsequently, the processor (530) can re-transmit the reconstructed screen data information to an external device (1000).
[0083] When the processor (530) operates some of the multiple modules, it can re-identify the assembly status between the multiple modules based on the real-time position and angle information of each module. Based on the assembly status of the modules, the processor (530) can reconstruct screen data regarding the shape of the robot device. Subsequently, the processor (530) can transmit the reconstructed screen data information to an external device (1000) through the communication unit (510).
[0084] The processor (530) can search for the IDs of the assembled multiple modules (2000). Additionally, the processor (530) can determine whether the IDs of the assembled multiple modules (2000) exist. Through this, the processor (530) can identify the assembly status of the multiple modules (2000).
[0085] Here, if the ID of at least one other module among the assembled multiple modules (2000) does not exist, the processor (530) may assign an ID to at least one other module among the assembled multiple modules. If the ID of at least one other module among the assembled multiple modules exists, the processor (530) may determine whether there exists another assembled module having the same ID as the ID of at least one other module among the assembled multiple modules.
[0086] Here, if there exists another assembled module having the same ID as at least one other module among the assembled multiple modules, the processor (530) may assign a new ID to at least one other module among the assembled multiple modules. Alternatively, if there does not exist another assembled module having the same ID as at least one other module among the assembled multiple modules, the processor (530) may control the use of the ID possessed by at least one other module among the assembled multiple modules as is.
[0087] In FIG. 6, the processor (530) may assign the same module type identification number to the ID of a module of the same module type among a plurality of assembled modules (2000), and may assign module assembly identification numbers in ascending order starting from the order in which they are assembled closest to the core module (1). For example, if there are three I-type modules (200), the processor (530) may assign the same module type identification number 200 to the ID of the same module. Here, the processor (530) may assign module assembly identification numbers in ascending order, such as 201, 202, 203, etc., starting from the order in which the plurality of I-type modules (200) are assembled closest to the core module (1).
[0088] Additionally, when multiple I-type modules (200) are assembled at the same distance from the core module (1), the processor (530) may assign module assembly identification numbers in ascending order starting from the order in which the multiple I-type modules (200) are first assembled to the core module (1).
[0089] Specifically, the processor (530) can receive module information including the ID of the reassembled module when the module to which the ID is assigned is reassembled. Additionally, if there is a module among the assembled modules that has the same ID as the ID of the reassembled module, the processor (530) can regenerate and assign the ID of the reassembled module. Furthermore, if there is no module among the assembled modules that has the same ID as the ID of the reassembled module, the processor (530) can store information regarding the ID of the reassembled module and the assembly status in memory (520). Additionally, the ID assigned by the core module (1) may include a module type identification number for distinguishing module types and a module identification number for distinguishing each module of the same type. Here, the processor (530) can assign the same module type identification number to modules of the same type and assign different module type identification numbers to modules of different types. Additionally, when multiple modules of the same type are assembled, the processor (530) may assign different module identification numbers in ascending order starting from the order in which they are assembled closest to the core module. To summarize, when multiple modules (2000) are initially assembled, the processor (530) may assign an ID individually to each module and store the ID in memory (520). Subsequently, when a module with an assigned ID is reassembled, the processor (530) receives module information including the ID of the reassembled module, and if there is a module among the previously assembled modules that has the same ID as the ID of the reassembled module, it may regenerate and assign the ID of the reassembled module. Subsequently, if there is no module among the previously assembled modules that has the same ID as the ID of the reassembled module, the processor (530) may store information regarding the ID of the reassembled module and the assembly status in memory (520). Here, the ID may include a module type identification number for distinguishing module types and a module identification number for distinguishing each module of the same type.The processor (530) assigns the same module type identification number to modules of the same type and assigns different module type identification numbers to modules of different types, and when multiple modules of the same type are assembled, the module identification numbers may be assigned differently in ascending order starting from the order in which they are assembled closest to the core module (1).
[0090] In FIG. 6, if at least one of the other modules among the assembled multiple modules (2000) is separated, the processor (530) can control the operation of the modules maintaining the assembly to stop. That is, if at least one of the assembled multiple modules (2000) is separated, the processor (530) can control the operation of the remaining modules maintaining the assembly to stop. For example, in FIG. 8, if the end effector module (400) is separated while the 3-axis core robot (reference numeral 3000 in FIG. 8) is operating, the processor (530) can control the operation of the modules maintaining the assembly in the core module (1) to stop.
[0091] The processor (530) can transmit information that at least one of the other modules among the plurality of modules (2000) assembled into the external device (1000) is separated through the communication unit (510). That is, the processor (530) can transmit information to the external device (1000) through the communication unit (510) to indicate that at least one of the plurality of modules (2000) is separated. For example, in FIG. 8, when the end effector module (400) is separated while the 3-axis core robot (reference numeral 3000 in FIG. 8) is operating, the processor (530) can transmit information to the external device (1000) that the end effector module (400) has been separated.
[0092] In FIG. 6, the processor (530) can receive work command information of a plurality of modules (2000) from an external device (1000). Subsequently, the processor (530) can transmit the received work command information to each module through the communication unit (510). Through this, each module assembled in the core module (1) can perform a work based on the work command information.
[0093] In FIG. 6, the processor (530) can receive real-time position and angle information from a plurality of modules. Subsequently, based on the received real-time position and angle information, the processor (530) can re-identify the assembly state between the plurality of modules. Subsequently, based on the assembly state, the processor (530) can reconstruct screen data regarding the shape of the robot device. Subsequently, the processor (530) can re-transmit the reconstructed screen data to an external device (1000) through the communication unit (510).
[0094] For example, when a user moves a plurality of modules assembled in the core module (1), the position and angle information of the plurality of modules changes. This position and angle information of the plurality of modules can be collected in real time. The control unit of the plurality of modules can transmit this real-time position and angle information to the core module (1). The core module (1) receives this real-time position and angle information through the communication unit (510), reconstructs screen data regarding the shape of the robot device, and can retransmit this screen data to an external device (1000) through the communication unit (510).
[0095] Additionally, the processor (530) may be an artificial intelligence-dedicated processor. The processor (530) controls the processing of input data according to predefined operation rules or artificial intelligence models stored in memory (130). Alternatively, if one or more processors are artificial intelligence-dedicated processors, the artificial intelligence-dedicated processors may be designed with a hardware structure specialized for processing a specific artificial intelligence model. The predefined operation rules or artificial intelligence models are characterized by being created through learning.
[0096] Here, "created through learning" means that a basic artificial intelligence model is trained using multiple learning data by a learning algorithm, thereby creating a predefined rule of operation or an artificial intelligence model configured to perform a desired characteristic (or objective). Such learning may be performed on the device itself where the artificial intelligence according to the present disclosure is executed, or it may be performed through a separate server and / or system. Examples of learning algorithms include, but are not limited to, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning.
[0097] An artificial intelligence model can be composed of multiple neural network layers. Each of the multiple neural network layers has multiple weight values and performs neural network operations through calculations between the results of previous layers and the multiple weights. The multiple weights possessed by the multiple neural network layers can be optimized based on the learning results of the artificial intelligence model. For example, the multiple weights can be updated during the learning process so that the loss or cost values obtained by the artificial intelligence model are reduced or minimized.
[0098] Artificial neural networks may include deep neural networks (DNNs), such as, but are not limited to, 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), Generative Adversarial Networks (GANs), or Deep Q-Networks.
[0099] FIG. 7 is a drawing for explaining a core module (1) that communicates with various devices according to one or more embodiments of the present disclosure.
[0100] In the various embodiments of the present disclosure of FIG. 7, for convenience of explanation, it will be expressed that various devices (e.g., core module (1), external device (1000), and a plurality of modules (2000)) transmit and receive information or signals, but this can be understood as transmitting and receiving information through a communication unit placed inside each device.
[0101] According to FIG. 7, the core module (1) can communicate with an external device (1000) and a plurality of modules (2000). Although FIG. 7 illustrates one core module (1) communicating with all the devices, it is not limited thereto, and the core module (1) can be implemented in multiple units. For example, one core module (1) may be placed at the center of a plurality of modules. Alternatively, the core module (1) may be placed in multiple units to perform connections between the core modules (1), and by connecting even more modules, a more diverse type of robot device can be implemented.
[0102] In FIG. 7, a plurality of modules (2000) are connected to a core module (1) or other plurality of modules to perform the operation of a robot device based on a specific work command. Each plurality of modules (2000) can be connected to one another to form a single management system.
[0103] A plurality of modules (2000) can transmit module information to the core module (1) and then transmit module information from the core module (1) to an external device (1000). However, this is not limited thereto, and the plurality of modules (2000) may interact directly with the external device (1000) without passing through the core module (1).
[0104] The external device (1000) is a device capable of displaying the shape of a robot device in which a core module (1) and a plurality of modules (2000) are organically combined. For example, when assembled as in the 3-axis core robot (3000) of FIG. 8, the external device (1000) can receive shape data information from the communication unit (510) of the core module (1) and display the shape of the 3-axis core robot (3000).
[0105] The external device (1000) may be implemented as a display including a self-emissive element or as a display including a non-emissive element and a backlight. For example, it may be implemented as various types of displays such as an LCD (Liquid Crystal Display), an OLED (Organic Light Emitting Diodes) display, an LED (Light Emitting Diodes), a micro LED, a Mini LED, a PDP (Plasma Display Panel), a QD (Quantum dot) display, a QLED (Quantum dot light-emitting diodes), etc. The display (130) may also include a driving circuit, a backlight unit, etc., which may be implemented in the form of an a-si TFT, an LTPS (low temperature poly silicon) TFT, an OTFT (organic TFT), etc.
[0106] Additionally, the external device (1000) may further include an interface. An interface is a configuration created to interact between two or more systems, devices, programs, or users. The interface may include at least one of a communication interface, an input / output interface, and a user interface.
[0107] A communication interface is a component for performing communication with external devices via wired or wireless methods. The communication interface can receive user queries from external devices such as terminal devices, wireless speakers, remote controls, microphones, etc. Alternatively, the communication interface may be referred to as a communication unit.
[0108] An input / output interface is a configuration for transmitting or receiving various signals, data, etc. from a wired device. When an external microphone is connected through the input / output interface, the external device (1000) can receive user queries input into the external microphone through the input / output interface. The input / output interface may include various ports, such as a USB port or an HDMI port, for connecting to various external devices such as a microphone, keyboard, or joystick. The input / output interface may also be referred to as a connection port.
[0109] A user interface is a configuration designed to receive various user commands directly from the user. A user interface can be implemented using a touchscreen, touchpad, or buttons. For example, when implemented via a touchscreen, the user can directly input user queries by drawing on the screen with their hand or a stylus, or they can input user queries through a soft keyboard displayed on the screen.
[0110] FIG. 8 is a drawing showing a robot device assembled with a plurality of modules (2000) according to one or more embodiments of the present disclosure.
[0111] In FIG. 8, the robot device assembled with a plurality of modules (2000) is a 3-axis core robot (3000).
[0112] In FIG. 8, the 3-axis core robot (3000) can operate based on the X, Y, and Z axes, and is a robot capable of horizontal movement, vertical movement, etc. based on these axes. Through this, the 3-axis core robot (3000) can perform repetitive and precise tasks.
[0113] In FIG. 8, the main body (100) of the core module (1) may be referred to as the core module (1) for convenience of explanation.
[0114] According to FIG. 8, the core module (100) can be positioned at the bottom of the 3-axis core robot (3000). In this way, the core module (100) can serve to support the 3-axis core robot (3000) from the floor. Additionally, the core module (100) can support the 3-axis core robot (3000) more stably by placing a plurality of footrests (600) on the second coupling part (120) positioned on the side.
[0115] In FIG. 8, the I-shaped module (200) can be coupled to a first coupling part (110) positioned on the upper side of the core module (100). The I-shaped module (200) is coupled to the center of the core module (100), so that the 3-axis core robot (3000) can withstand a higher load even if additional modules are coupled.
[0116] In FIG. 8, a plurality of L-shaped modules (300) may be organically coupled to the upper side of an I-shaped module (200). Specifically, a first L-shaped module (301) may be coupled to the upper side of an I-shaped module (200). A second L-shaped module (302) may be coupled to the upper side. A third L-shaped module (303) may be coupled to the side opposite to the part of the L-shaped module (302) coupled to the first L-shaped module (301). However, this is merely one embodiment and is not limited thereto. For example, the I-shaped module (200) may be coupled in multiple numbers, or the L-shaped module (301) may be coupled in a single number, and various other forms may be provided.
[0117] In FIG. 8, the I-type module (200) can rotate 360 degrees around the Y-axis. The first L-type module (301) can rotate 360 degrees around the vertical axis of the I-type module (200). The second L-type module (302) can rotate 360 degrees around the vertical axis of the first L-type module (301), and the third L-type module (303) can rotate 360 degrees around the vertical axis of the second L-type module (302).
[0118] In FIG. 8, the third L-shaped module (303) may have an end effector module (400) connected to the opposite side of the part connected to the second L-shaped module (301).
[0119] In FIG. 8, the end effector module (400) is configured in the form of a gripper. This allows the 3-axis core robot (3000) to grasp, move, and release objects. In FIG. 8, it is formed with two grippers, but it is not limited to this and may be formed with three or more multiple grippers. Additionally, the end effector module (400) may be formed in various forms, such as a vacuum gripper or a magnetic gripper. Here, a vacuum gripper is a gripper device capable of grasping objects by sucking them in as a vacuum. A magnetic gripper is a gripper device capable of grasping objects using magnetism.
[0120] Additionally, the end effector module (400) can be formed as a module capable of performing various functions in addition to the gripper function. For example, it can be formed as a module capable of performing various functions such as a welding torch module, a spraying and coating module, and a cutting module.
[0121] According to FIG. 8, the core module (100) can receive information about the I-type module (200) from the I-type module (200) through the communication unit (510) by combining the I-type module (200). Additionally, the core module (100) can search for the ID of the assembled I-type module (200). The core module (100) can determine whether the ID of the assembled I-type module (200) exists. If the ID of the assembled I-type module (200) does not exist, the core module (100) can assign an ID to the assembled I-type module (200). If the ID of the assembled I-type module (200) exists, the core module (100) can determine whether there is another assembled module having the same ID as the ID of the assembled I-type module (200). Here, if there is another assembled module with the same ID as the assembled I-type module (200), a new ID can be assigned to the assembled I-type module (200). Conversely, if there is no other assembled module with the same ID as the assembled I-type module (200), the ID possessed by the assembled I-type module (200) can be used as is. Since the specific process for assigning an ID to the assembled module is the same for multiple L-type modules (301, 302, 303, 304), a redundant explanation is omitted.
[0122] In FIG. 8, the process of assigning an ID can be classified based on module information. Specifically, if the ID is a three-digit number, the first number of the ID can be assigned as 1 in the case of a core module (100), the first number of the ID can be assigned as 2 in the case of an I-type module (200), the first number of the ID can be assigned as 3 in the case of an L-type module (300), and the first number of the ID can be assigned as 4 in the case of an end effector module (400). For example, in the 3-axis core robot (3000) of FIG. 8, the ID number of the core module (100) can be assigned as 100, the ID number of the I-type module can be assigned as 200, and the ID number of the end effector module (400) can be assigned as 400.
[0123] Additionally, among the modules assembled in the core module (100), modules of the same type can be sorted in ascending order of their third ID number as they move further away from the core module (100). For example, the ID number of the first L-type module (301) can be assigned 301, the ID number of the second L-type module (302) can be assigned 302, and the ID number of the third L-type module (303) can be assigned 303.
[0124] The ID number assigned to each module can be stored in the memory (520) of the core module (1).
[0125] In FIG. 8, the second L-type module (302) can be replaced with a fourth L-type module (not shown). In this case, the core module (100) can search for the ID of the fourth L-type module (not shown) and determine whether the ID of the fourth L-type module (not shown) exists. Here, if the ID of the fourth L-type module (not shown) does not exist, the first number of the ID can be assigned as 3 based on the module information of the fourth L-type module (not shown), since it is an L-type module (300). Subsequently, the core module (100) can assign an ID number that does not exist in ascending order among the ID numbers of the assembled L-type module (300). Here, since the number 302 does not exist among the ID numbers of the assembled L-type module (300), the core module (100) can assign the ID number 302 to the fourth L-type module (not shown). However, this is not limited to this, and the method of assigning module ID numbers can be carried out in various ways.
[0126] FIG. 9 is a drawing showing a robot device assembled with a plurality of modules (2000) according to one or more embodiments of the present disclosure.
[0127] In FIG. 9, the robot device assembled from a plurality of modules (2000) is a quadrupedal robot (4000). The quadrupedal robot (4000) is designed so that each of its four legs can move independently. Each leg of the quadrupedal robot (4000) can be assembled with various modules, such as an I-shaped module (200) or an L-shaped module (300). Through this, the quadrupedal robot (4000) can walk stably even on complex terrain. In addition, this quadrupedal robot (4000) can be utilized in various forms, such as exploration and rescue, cargo transport, and military applications.
[0128] In FIG. 9, the core module (100) may be positioned at the center of the quadrupedal robot (4000). Centered on the core module (100), four I-shaped modules (201, 202, 203, 204) may be assembled to a plurality of second coupling parts (120) positioned on the side of the core module (100). Each I-shaped module (201, 202, 203, 204) may be symmetrically positioned with respect to the core module (100). L-shaped modules (301, 302, 303, 304, 305, 306, 307, 308) may be assembled to each I-shaped module (201, 202, 203, 204) assembled to the core module (100). Specifically, a first L-shaped module (301) can be assembled to a first I-shaped module (201) assembled to a core module (100). In addition, a fifth L-shaped module (305) can be assembled to the first L-shaped module (301). Additionally, a first end effector module (401) can be assembled to the fifth L-shaped module (305).
[0129] In FIG. 9, each end effector module (401, 402, 403, 404) may include a flexible part at the bottom. Through this, when the quadruped robot (4000) is driven, the quadruped robot (4000) can mitigate the impact applied to each module.
[0130] The core module (100) can independently control each I-type module (201, 202, 203, 204) and each L-type module (301, 302, 303, 304, 305, 306, 307, 308). Through this, the quadruped robot (4000) can drive stably when passing over an inclined surface.
[0131] According to FIG. 9, the core module (100) can receive information about the type of I-type module (200) from the first I-type module (201) to the fourth I-type module (204) through the communication unit (510) by assembling the first I-type module (201) to the fourth I-type module (204). Additionally, the core module (100) can search for the IDs of the assembled first I-type module (201) to the fourth I-type module (204). If there is no ID for the first I-type module (201) to the fourth I-type module (204) assembled in the core module (100), the core module (100) can assign ID numbers 201, 202, 203, and 204 to the assembled first I-type module (201) to the fourth I-type module (204), respectively. If there is an ID of the first I-type module (201) to the fourth I-type module (204) assembled in the core module (100), the core module (100) can determine whether there is another assembled module having the same ID as the ID of the first I-type module (201) to the fourth I-type module (204). Here, if there is another assembled module having the same ID as the ID of the first I-type module (201) to the fourth I-type module (204), a new ID can be assigned to the first I-type module (201) to the fourth I-type module (204). For example, ID numbers 205, 206, 207, and 208 can be assigned to the first I-type module (201) to the fourth I-type module (204). Conversely, if there is no other assembled module having the same ID as the assembled first I-type module (201) to fourth I-type module (204), the IDs (e.g., 201, 202, 203, 204) possessed by the assembled first I-type module (201) to fourth I-type module (204) can be retained.The description of the specific process for assigning an ID to the assembled module is the same for multiple L-type modules (301, 302, 303, 304, 305, 306, 307, 308), so a redundant description is omitted.
[0132] In addition, the process of assigning IDs to multiple modules (2000) has been explained in detail in FIG. 8, so a redundant explanation is omitted.
[0133] In FIG. 9, the core module (100) can control the operation of the modules maintaining the assembly to stop when at least one of the other modules among the assembled plurality of modules (2000) is separated. For example, if the first end effector module (401) is separated while the quadrupedal robot (4000) is performing an operation of transporting goods, the core module (100) can control the operation of the remaining modules assembled in the quadrupedal robot (4000) to stop. Subsequently, if the first end effector module (401) is reassembled or replaced with another fifth end effector module (not shown), the core module (100) can determine whether normal operation is possible based on the assembled plurality of modules (2000), and the core module (100) can control the operation of the assembled plurality of modules (2000) to resume.
[0134] Additionally, when a part of at least one of the other modules among the assembled plurality of modules (2000) is separated, the core module (100) can transmit information that a part of at least one of the other modules among the assembled plurality of modules (2000) has been separated to an external device (1000) through the communication unit (510).
[0135] FIG. 10 is a flowchart for explaining the operation of a core module (1) according to one or more embodiments of the present disclosure.
[0136] According to FIG. 10, the core module (1) can identify the assembly state between modules based on module information of at least one other module assembled to the core module (1) (S1010)
[0137] The core module (1) can configure screen data for the shape of the robot device based on the assembly state of the modules (S1020). Afterwards, the core module (1) can transmit the configured screen data to an external device (1000) through the communication unit (510) (S1030).
[0138] FIG. 11 is a flowchart for explaining the operation of a core module (1) according to one or more embodiments of the present disclosure.
[0139] The core module (1) can re-identify the assembly state between modules based on module information of at least one other module replaced in the core module (1) (S1110).
[0140] The core module (1) can reconstruct screen data regarding the shape of the robot device based on the assembly state of the modules (S1120). Afterwards, the core module (1) can transmit the reconstructed screen data to an external device (1000) through the communication unit (510) (S1130).
[0141] FIG. 12 is a flowchart for explaining the operation of a core module (1) according to one or more embodiments of the present disclosure.
[0142] The core module (1) can search for the ID of the assembled other module (S1210). Subsequently, the core module (1) can determine whether the ID of the assembled other module exists (S1220). Here, by the core module (1) searching for the ID of the assembled other module and determining whether the ID of the assembled other module exists, it can determine whether the assembled other module (e.g., multiple modules (2000)) was assembled for the first time. If the ID of the assembled other module does not exist in the core module (1), the core module (1) can assign an ID to the assembled other module (S1230). That is, when the assembled other module (e.g., multiple modules (2000)) is assembled for the first time, the core module (1) can assign an ID individually to each module and store this ID in memory. If there is an ID of another module assembled to the core module (1), the core module (1) can determine whether there is another assembled module having the same ID as the ID of the other assembled module (S1240). Here, if there is another assembled module having the same ID as the ID of the other module assembled to the core module (1), the core module (1) can assign a new ID to the other assembled module (S1250). If there is no other assembled module having the same ID as the ID of the other module assembled to the core module (1), the core module (1) can use the ID possessed by the other assembled module as is (S1260). Specifically, when a module to which an ID has been assigned is reassembled, the core module (1) can receive module information including the ID of the reassembled module. Additionally, if there is a module among the assembled modules that has the same ID as the ID of the reassembled module, the core module (1) can regenerate and assign the ID of the reassembled module. Additionally, the core module (1) can store information about the ID of the reassembled module and the assembly status in memory if there is no module among the assembled modules that has the same ID as the ID of the reassembled module.
[0143] Additionally, the ID assigned by the core module (1) may include a module type identification number for distinguishing module types and a module identification number for distinguishing each module of the same type. Here, the core module (1) may assign the same module type identification number to modules of the same type and assign different module type identification numbers to modules of different types. Furthermore, when multiple modules of the same type are assembled, the core module (1) may assign different module identification numbers in ascending order starting from the order in which they are assembled closest to the core module.
[0144] FIG. 13 is a flowchart for explaining the operation of a core module (1) according to one or more embodiments of the present disclosure.
[0145] The core module (1) can receive work command information for a plurality of modules (2000) from an external device (1000) (S1310). Afterwards, the core module (1) can transmit the received work command information to each module through the communication unit (510) (S1320).
[0146] FIG. 14 is a flowchart for explaining the operation of a core module (1) according to one or more embodiments of the present disclosure.
[0147] The core module (1) can receive real-time position and angle information from a plurality of modules through the communication unit (510) (S1410). Based on the received real-time position and angle information, the core module (1) can re-identify the assembly status between the plurality of modules (2000). Subsequently, based on the assembly status, the core module (1) can reconstruct screen data regarding the shape of the robot device (S1430). Subsequently, the core module (1) can transmit the reconstructed screen data to an external device (1000) through the communication unit (510).
[0148] Detailed explanations regarding real-time location and angle information, assembly status information, screen data information, etc., have been provided in detail in the aforementioned section, so redundant explanations are omitted.
[0149] Meanwhile, in the various embodiments described above, the core module (1) is described as directly identifying the assembly status based on the information of each module, configuring screen data including the shape of the robot device based on the assembly status, transmitting it to the external device (1000), and the external device (1000) displays it; however, at least some of the operations of the core module (1) may be performed by the external device (1000). For example, the core module (1) may perform tasks such as receiving module information of each module, assigning an ID, or storing it, and when each module is assembled, it may transmit information regarding the module information of the assembled modules and the assembly order to the external device (1000). In this case, the external device (1000) may identify the assembly status of the robot device based on the received information and directly generate and display screen data including the shape thereof.
[0150] Each of the components described in this document may consist of one or more components, and the names of such components may vary depending on the type of electronic device.
[0151] Although various embodiments of the present disclosure have been described individually above, each embodiment is not required to be implemented alone, and the configuration and operation of each embodiment may be implemented in combination with at least one other embodiment.
[0152] Although preferred embodiments have been illustrated and described above, the present disclosure is not limited to the specific embodiments described above. It is understood that various modifications can be made by those skilled in the art without departing from the essence of the present disclosure as claimed in the claims, and such modifications should not be understood individually from the technical spirit or perspective of the present disclosure.
Claims
1. A core module for configuring a robot device by combining with at least one other module, A main body capable of being combined with at least one other module; It includes a memory, a communication unit, and a processor mounted within the main body. The above processor is, When the robot device is assembled into a plurality of modules including the core module and at least one other module, module information of each module is received through the communication unit and stored in the memory. A core module that identifies the assembly state between the plurality of modules based on the module information, and, based on the assembly state, configures screen data regarding the shape of the robot device and transmits it to an external device through the communication unit.
2. In Paragraph 1, The above processor is, A core module that, when a part of at least one of the multiple modules is replaced, re-identifies the assembly state between the multiple modules based on the replaced module information, reconstructs screen data regarding the shape of the robot device based on the assembly state, and re-transmits it to the external device through the communication unit.
3. In Paragraph 1, The above processor is, A core module that, when some of the plurality of modules move, re-identifies the assembly state between the plurality of modules based on changes in real-time position and angle information of each module, and reconstructs screen data regarding the shape of the robot device based on the assembly state and re-transmits it to the external device through the communication unit.
4. In Paragraph 1, The above communication unit is a core module including a CAN communication unit.
5. In Paragraph 1, The above processor is, A core module that, when the plurality of modules are first assembled, assigns an ID individually to each module and stores the ID in the memory.
6. In Paragraph 5, The above processor is, When the module assigned the above ID is reassembled, the module information including the ID of the reassembled module is received, and A core module that regenerates and assigns the ID of the reassembled module if, among the assembled modules, there exists a module having the same ID as the ID of the reassembled module.
7. In Paragraph 6, The above processor is, A core module that stores information regarding the ID and assembly status of the reassembled module in the memory if, among the previously assembled modules, there is no module having the same ID as the ID of the reassembled module.
8. In Paragraph 7, The above ID includes a module type identification number for distinguishing module types and a module identification number for distinguishing each module of the same type, and The above processor is, Assign the same module type identification number to modules of the same type, and Different module type identification numbers are assigned to heterogeneous modules, and A core module that, when multiple modules of the same type are assembled, assigns different module identification numbers in ascending order starting from the order in which they are assembled closest to the core module.
9. In Paragraph 1, The above main body is, A core module that can be combined with one of an I-type module, an L-type module, and an End Effector module.
10. In Paragraph 9, The above-mentioned End Effector module is a core module that performs a gripper function.
11. In Paragraph 1, The above processor is, A core module that controls the operation of the remaining modules maintaining the assembly to stop when at least one of the assembled plurality of modules is separated.
12. In Paragraph 11, The above processor is, A core module that transmits information to an external device through the communication unit to indicate that at least one of the plurality of modules is separated.
13. In a robot device, It includes a plurality of modules capable of mutual coupling and separation, and Among the plurality of modules mentioned above, the core module is When the above plurality of modules are assembled into the robot device, if module information of at least one module other than the core module is received, A robot device that identifies the assembly state of the plurality of modules based on the module information, configures screen data regarding the shape of the robot device in which the plurality of modules are assembled based on the assembly state, and transmits it to an external device.
14. In a method for controlling a core module, When the core module and at least one other module are assembled into a single robot device, a step of identifying the assembly state between the modules based on module information of the at least one other module; A step of configuring screen data for the shape of the robot device based on the assembly state of the above modules; and A method for controlling a core module, comprising the step of transmitting the above-configured screen data to an external device.
15. In Paragraph 14, When at least one other module attached to the core module is replaced, a step of re-identifying the assembly state between modules based on the module information of the replaced module; A step of reconstructing screen data regarding the shape of the robot device based on the assembly state of the above modules; A method for controlling a core module, comprising the step of retransmitting the reconstructed screen data to the external device.
Citation Information
Patent Citations
Modular system and method for exchanging information and / or power between modules of a modular system
CN108697940A
Action control method and system and intelligent robot
CN111645068A
Package with electrical pathway
KR1020200113171A
Modular robot system having enhanced assembling convenience
KR102238167B1
Id number setting method, computer-readable storage medium and modular device
US20210197372A1