Method for generating work information about robot for transportation and device therefor

The method for generating work information for autonomous transport robots addresses the challenge of navigating complex environments by automating the generation of detailed path plans from movement commands, thereby simplifying the task creation process and reducing implementation complexity and costs.

WO2025110829A1PCT designated stage expired Publication Date: 2025-05-30YUJIN ROBOT
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2024/018782
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-12-28
Filing Date
2024-11-25
Publication Date
2025-05-30

AI Technical Summary

Technical Problem

Autonomous transport robots face challenges in reaching their destinations due to limitations in their ability to adapt to changing environments and navigate through complex routes that include automatic doors, elevators, and sequential passage requirements.

Method used

A method for generating work information for a robot transportation system that involves receiving work request information, performing work structure analysis, determining the appropriate robot and travel path nodes, generating a work report with movement path information, assigning tasks, and establishing a detailed path plan that can be modified and transmitted to the robot.

Benefits of technology

This solution simplifies the task creation process for autonomous robots by automatically generating detailed plans from movement commands, reducing the complexity of software implementation, and lowering costs through a simplified API for movement functions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2024018782_30052025_PF_FP_ABST
    Figure KR2024018782_30052025_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed are a method for generating work information about a robot for transportation and a device therefor. The method for generating work information for transportation in a robot work management server according to an embodiment of the present invention may comprise the steps of: receiving request information about work that should be performed by a robot; performing work structure analysis for a work environment on the basis of the request information about the work; determining, in response to the work structure analysis, a robot to perform the work and a plurality of nodes included in a travel path of the robot, and generating a work report including movement path information for traveling a link section between the nodes; assigning the work to the robot on the basis of the work report; and transmitting, to the robot, a modified plan generated by establishing a detailed path plan on the basis of an initial plan received from the robot to which the work has been assigned, and storing a work plan based on the modified plan.
Need to check novelty before this filing date? Find Prior Art

Description

Method for generating work information of a robot for transportation and device therefor

[0001] The present invention relates to a method for generating task information for a robot for transporting logistics to a destination, and a device therefor. The research of the present invention is related to the "Development of an Integrated Operation Simulator and Real-Time Fleet Management System for Heterogeneous Multi-Mobile Logistics Handling Robots" (No. 1415185226 (No. 20015440)), a core technology development project for the robot industry, conducted by Yujin Robot Co., Ltd. with support from the Korea Industrial Technology Evaluation and Planning Institute and funding from the Ministry of Trade, Industry and Energy.

[0002] The material described in this section merely provides background information on embodiments of the present invention and does not constitute prior art.

[0003] As production systems have become increasingly larger and more complex, most equipment is becoming automated and unmanned. This has led to a growing demand for autonomous transport robots, or unmanned transport robots, for transporting and storing materials and automatically transporting cargo.

[0004] Autonomous transport robots are used to load cargo onto their bodies and automatically transport them to designated locations. Initially, their use was limited to transporting materials in manufacturing sites such as factories. However, with the development of industries such as semiconductors, displays, steel, and automobiles, the demand for unmanned automation is increasing in these industries, including factories and logistics centers, and their use is increasing.

[0005] In general, there are limitations to autonomous transport robots being able to reach their destinations using only movement commands.

[0006] As a transport robot moves according to a movement command, modifications to the preset path plan may be required.

[0007] Additionally, in order for a transport robot to move to its destination, it may need to pass through automatic doors or elevators along its route, wait for a specific area to pass through sequentially, or receive permission through communication with a control system.

[0008] In the past, there was the hassle of having to explicitly specify and implement the detailed process for moving a transport robot to the destination according to the user's intention and then transmit it to the transport robot.

[0009] The main purpose of the present invention is to provide a method for generating work information of a work robot for transportation, which generates work information so that the robot can perform work related to logistics transportation to a destination according to a work request, and a device therefor.

[0010] According to one aspect of the present invention, a method for generating work information for transportation in a robot work management server for achieving the above object may include: receiving work request information that a robot must perform; performing work structure analysis on a work environment based on the work request information; determining a robot to perform the work and a plurality of nodes included in a travel path of the robot based on the work structure analysis, and generating a work report including movement path information for traveling along a link section between the nodes; assigning a work to the robot based on the work report; and transmitting a modified plan generated by establishing a detailed path plan based on an initial plan received from the robot to which the work is assigned, to the robot, and storing the work plan based on the modified plan.

[0011] In addition, according to another aspect of the present invention, in a robot task management server for achieving the above object, the robot task management server may include: a memory storing one or more programs for generating task information for transportation; and one or more processors for performing operations for generating task information for transportation according to the one or more programs, wherein the operations performed by the processor may include: receiving task request information that a robot must perform; performing task structure analysis on a task environment based on the task request information; determining a robot to perform the task and a plurality of nodes included in a travel path of the robot based on the task structure analysis, and generating a task report including movement path information for traveling along a link section between the nodes; assigning a task to the robot based on the task report; and transmitting a modified plan generated by establishing a detailed path plan based on an initial plan received from the robot to which the task is assigned to the robot, and storing the task plan based on the modified plan.

[0012] As described above, the present invention has the advantage that, from the user's perspective, when creating task information to be performed by an autonomous driving robot, a detailed plan required for the actual task is automatically added by simply writing a movement command to a destination in the GUI, thereby making the task creation process intuitive and simplified in line with the user's intention and reducing the creation time.

[0013] In addition, the present invention has the effect of reducing the difficulty of writing software (SW) and reducing implementation costs by providing a simplified API for the movement function of an autonomous robot when writing an external application program for professionally utilizing a robot service in a field (domain) where the service is operated.

[0014] FIG. 1 is a block diagram schematically illustrating a transportation operation management system according to an embodiment of the present invention.

[0015] FIG. 2 is a block diagram schematically illustrating a robot management server according to an embodiment of the present invention.

[0016] Figures 3 and 4 are block diagrams schematically showing a robot for transportation according to an embodiment of the present invention.

[0017] FIG. 5 and FIG. 6 are flowcharts for explaining a method for generating work information for transportation according to an embodiment of the present invention.

[0018] Figures 7 to 9 are exemplary diagrams for explaining the operation of generating work information for transport work management according to an embodiment of the present invention.

[0019] Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In describing the present invention, detailed descriptions of related known structures or functions will be omitted if they are deemed to obscure the gist of the present invention. Furthermore, although preferred embodiments of the present invention will be described below, it should be understood that the technical spirit of the present invention is not limited thereto and can be modified and implemented in various ways by those skilled in the art. Hereinafter, with reference to the drawings, a method for generating operation information for a robot for transportation proposed in the present invention and a device therefor will be described in detail.

[0020] FIG. 1 is a block diagram schematically illustrating a transportation operation management system according to an embodiment of the present invention.

[0021] The transportation operation management system according to the present embodiment includes a user terminal (100), a robot management server (200), a robot (300), and a communication network (400). The transportation operation management system of FIG. 1 is according to one embodiment, and not all blocks illustrated in FIG. 1 are essential components. In other embodiments, some blocks included in the transportation operation management system may be added, changed, or deleted.

[0022] A transportation task management system is a system that creates and manages task information for transportation tasks of autonomous robots.

[0023] The transportation operation management system is preferably applied to a logistics management warehouse or center, but is not necessarily limited thereto.

[0024] The user terminal (100) refers to a user-operable device for managing transportation operations.

[0025] The user terminal (100) is a front-end terminal, i.e., a computing device located on the user side, and is a device including a user interface, such as a display screen, that can check the work plan of the robot (300).

[0026] The user terminal (100) can receive the work progress status and work performance results of the robot (300) from the robot management server (200) and display them on the display screen.

[0027] The user terminal (100) can provide a UI (path inspector) that allows the user to check the detailed path plan, since the automatically established detailed path plan varies depending on the type and location of the resource placed on the path of the robot (300).

[0028] The user terminal (100) may include a processing unit, memory, a display unit, a communication module, and the like. In particular, the user may communicate with the robot management server (200) and the robot (300) through the user terminal graphical user interface, and may easily check the work plan, the robot's current status, route information, and logistics status information through the display screen.

[0029] The user terminal (100) can receive user requirement information through a display unit or the like, and generate work request information by further considering the current status of the robot (300) and the situation of the work site.

[0030] The robot management server (200) is a server (Service Platform server) that manages services related to work robots and logistics robots.

[0031] The robot management server (200) performs overall control and management of the robot (300) for transportation.

[0032] The robot management server (200) according to this embodiment is preferably an FMS (Fleet management system) server, but is not necessarily limited thereto.

[0033] The robot management server (200) receives task request information that the robot (300) must perform from the user terminal (100).

[0034] The robot management server (200) performs a work structure analysis of the work environment based on the received work request information, determines a robot (300) to perform the work and a plurality of nodes included in the travel path of the robot (300) according to the work structure analysis, and generates a work report including movement path information for traveling the link section between nodes.

[0035] The robot management server (200) assigns a task to a robot (300) based on a task report, establishes a detailed path plan based on an initial plan received from the robot (300) to which the task is assigned, transmits the generated modified plan to the robot (300), and stores the task plan based on the modified plan.

[0036] The robot management server (200) transmits the work progress status and work performance results of the robot (300) to the user terminal (100).

[0037] A detailed description of the robot management server (200) is described in Fig. 2.

[0038] The robot (300) refers to a mobile robot that performs tasks for transporting logistics. Here, the robot (300) may be defined as an autonomous driving robot, a logistics robot, a transport robot, a mobile robot, a lifting robot, etc. The robot (300) may be implemented as a robot vacuum cleaner, a logistics robot, a toy car, a mobile robot for industrial or military purposes, etc., but is not necessarily limited thereto.

[0039] The robot (300) performs work based on a work plan created in conjunction with the robot management server (200).

[0040] The robot (300) is assigned a task from the robot management server (200), determines an initial plan through task analysis, and saves the task plan.

[0041] Meanwhile, the robot (300) can request a modification plan from the robot management server (200) or create a modification plan on its own.

[0042] When the robot (300) receives a modification plan from the robot management server (200), it verifies the modification plan and updates the work plan by reflecting the verified modification plan.

[0043] The robot (300) moves and performs work based on a work plan.

[0044] A detailed description of the robot (300) is given in Fig. 3.

[0045] The communication network (400) relays communication for linkage between the user terminal (100), the robot management server (200), and the robot (300). The communication network (400) may be a network composed of mobile communication, short-range communication, an intranet, etc.

[0046] FIG. 2 is a block diagram schematically illustrating a robot management server according to an embodiment of the present invention.

[0047] The robot management server (200) is a service platform server that manages services related to work robots and logistics robots. The robot management server (200) includes a processor, memory, a communication unit, and other components that perform such service management. In particular, the processor may include a first processor (210) that executes tasks for core services and a second processor (220) related to the general operation of the server.

[0048] The first processor (210) can perform site configuration and task scheduling operations for executing site configuration operations. The second processor (220) can plan the path of the robot (300) and perform operations related to calculations and control for traffic control. Of course, the processor configuration is not limited to this, and all execution operations may be performed by a single integrated processor, or each individual task may be implemented in a form in which separate processors perform parallel processing.

[0049] The first processor (210) associated with the core service performs a structural analysis of the task and determines the destination node and the transit node among the nodes existing on the path. More specifically, the first processor (210) can generate a shortest path plan from the current location of the robot (300) to the destination. In the shortest path plan, it can be determined whether to use resources (e.g., automatic doors, elevators, traffic control areas, etc.) that must be sequentially occupied by each robot (300) or that require interoperability with other systems.

[0050] The first processor (210) generates a detailed route plan related to the above-determined matters, particularly entry, exit, and waiting related to the transit node (including resources) and the destination node. For example, the route plan may include the logistics robot's waiting time, waiting location, entry priority, exit method, exit timing, definition of uncertain events, and response actions in the event of an uncertain event.

[0051] The first processor (210) can generate work information including work request information input by the user and information including the above-described path plan, and transmit the generated work information to the robot (300) through the communication unit.

[0052] The first processor (210) may further generate linkage tasks required for linkage with the robot management server (200) or external systems (e.g., elevators, automatic doors, PLCs, PCs, etc.) when using each resource, and transmit these to the robot (300).

[0053] The robot (300) can analyze the work information received from the robot management server (200), and, by further considering the work request information, generate a job revision plan that modifies or adds detailed work. The robot (300) can transmit the generated job revision plan to the robot management server (200).

[0054] Meanwhile, the work modification plan is described as being generated by the robot (300), but is not necessarily limited thereto, and the work modification plan may be generated by the first processor (210) and then transmitted to the robot (300).

[0055] The process of generating task information performed by the first processor (210) and generating a task modification plan performed by the robot (300) may be performed for each unit link connecting nodes, or may be performed or updated for each cluster link, which is a collection of unit links. Furthermore, even for unit links, a single unit link may be composed of multiple sub-links depending on the driving situation.

[0056] A sub-link divides a single unit link into multiple sub-links. To specify a sub-link, the robot (or robot management server) can determine a temporary virtual node by considering the robot's driving environment. For example, if a congestion situation occurs during driving and the uncertainty value of a task exceeds a predetermined threshold, the robot (300) can determine a specific point located along the path as a virtual node and update the path of the virtual node and the path plan.

[0057] In this embodiment, the uncertainty of the task may include inherent uncertainty caused by internal reasons of the robot (300), external uncertainty caused by external factors, uncertainty of a user request due to ambiguity of the user's requested task itself, and complex factor uncertainty caused by at least two or more of the above-described uncertainties. The uncertainty score for each uncertainty may be calculated by an uncertainty model for each factor. The uncertainty model may be implemented in software form and executed by a processor of a user terminal or a processor of a server. Additionally, it may be implemented to be executed by a separately added processing unit to calculate the uncertainty score.

[0058] Hereinafter, the operation of generating work information of the robot management server (200) according to another embodiment of the present invention will be described.

[0059] The robot task management server (100) receives task request information that the robot (300) must perform. Here, the robot task management server (100) may receive task request information from the user terminal (100). The task request information may include information about the starting point and destination for the task.

[0060] The robot task management server (100) performs task structure analysis for the task environment based on the received task request information.

[0061] Specifically, the robot task management server (100) searches for a plurality of candidate robots located within a predetermined reference distance from a location specified based on task request information. Thereafter, the robot task management server (100) obtains local environment information according to the location of each candidate robot, calculates a score for the task performance capability of each candidate robot for the task based on the task request information, and predicts the task performance capability.

[0062] Here, the score for task performance ability can be calculated by considering the task start time, task performance time, destination arrival time, task success probability, etc. For example, the robot task management server (100) can calculate points for each candidate robot's task start time, task performance time, destination arrival time, and task success probability, and process the calculated points through preset calculations (sum, average, variance, etc.) to calculate a score for task performance ability.

[0063] The robot task management server (100) determines a robot (300) to perform a task and a plurality of nodes included in the driving path of the robot (300) based on task structure analysis, and generates a task report including movement path information for driving the link section between nodes.

[0064] Specifically, the robot task management server (100) determines a robot (300) to perform a task based on a score among a plurality of candidate robots, and determines a plurality of nodes included in the travel path of the robot (300). Here, the robot task management server (100) determines the candidate robot with the highest score as the robot (300), but may additionally check whether a resource (e.g., an automatic door, an elevator, a traffic control area, etc.) exists on the travel path of the candidate robot, and may adjust the score according to the type and passage time of the resource before determining the robot (300).

[0065] Thereafter, the robot task management server (100) generates an action report including movement path information for link sections between nodes included in a plurality of nodes.

[0066] The robot task management server (100) assigns tasks to robots (300) based on task reports.

[0067] The robot task management server (100) establishes a detailed path plan based on the initial plan received from the robot (300) to which the task is assigned, transmits the generated modified plan to the robot, and stores the task plan based on the modified plan.

[0068] Specifically, the robot task management server (100) obtains a task analysis result for a task assigned from a robot (300) and an initial plan determined based on the task analysis result.

[0069] If modifications to the initial plan are required, the robot task management server (100) establishes a detailed path plan and applies the detailed path plan to the initial plan to generate a modified plan. Modifications to the initial plan may be required when, upon reviewing the task analysis results and the initial plan, it is determined that the robot (300) cannot perform the task with the initial plan, or when a request for modifications to the initial plan is received from the robot (300).

[0070] The robot task management server (100) determines whether it is possible to move from the current location of the robot (300) to the destination of the initial plan and whether it is possible to perform the task of the current plan in addition to movement-related commands, thereby establishing a detailed path plan and generating a modification plan.

[0071] Meanwhile, in the case of inter-floor movement (elevator), the robot task management server (100) creates a revision plan by recursively establishing a detailed route plan by repeating the process of adding a map transition and revising the plan from getting off at the destination floor to the destination until the problem is eliminated.

[0072] The robot task management server (100) can establish a detailed path plan by modifying the path plan included in the task information in consideration of the environmental information acquired from the location of the robot (300). Meanwhile, the robot task management server (100) can also establish a detailed path plan by adding virtual nodes between nodes located on the task path specified in the path plan and further generating a detailed driving plan according to the virtual nodes.

[0073] When the modification plan is verified, the robot task management server (100) stores the task plan created based on the modification plan.

[0074] Specifically, the robot task management server (100) transmits a modification plan to the robot (300) for verification, and receives an updated task plan from the robot (300) based on the verified modification plan. The robot task management server (100) stores the received task plan.

[0075] Hereinafter, the operation of processing the occupancy of a transit node of a robot for transportation by a robot management server (200) according to another embodiment of the present invention will be described.

[0076] When a robot (300) moves to a stopover node according to a previously generated work plan, the robot management server (200) receives occupancy request information from the robot (300). Here, the stopover node refers to a resource placed on the robot's (300) movement path according to the work plan. The resource may include at least one of an automatic door, an elevator, and a traffic control area.

[0077] The robot management server (200) includes the current location and resource information of the robot (300). Here, the resource information may include the type and location of the resource.

[0078] The robot management server (200) allocates a waiting position based on the occupancy request information, determines whether to permit occupancy based on the waiting status, and transmits the occupancy permit information to the robot (300) to ensure that the transit node is occupied.

[0079] The robot management server (200) selects one of the candidate waiting locations within a preset distance from the transit node and assigns it as the waiting location of the robot (300).

[0080] Specifically, the robot management server (200) searches for candidate waiting locations around the waypoint node, excludes candidate waiting locations already assigned to a given robot from the search results, and then assigns the candidate waiting location closest to the current location of the robot (300) as the waiting location.

[0081] When there is only one robot (300) in standby mode, the robot management server (200) transmits occupancy permission information to the robot (300).

[0082] Meanwhile, if there are multiple robots (300) in a standby state, the robot management server (200) can determine the occupation priority for the multiple robots and transmit occupation permission information to each of the multiple robots (300) so that the transit node is occupied according to the determined occupation priority.

[0083] The robot management server (200) can determine the occupation priority using the first score for the width of the overlapping area of ​​the waiting area of ​​the waiting position and the robot waiting in the waiting area.

[0084] The robot management server (200) can determine the occupation priority using the second score for the shortest distance between the center of the transit node and the waiting robot.

[0085] The robot management server (200) can determine the occupation priority using the third score for the angle between the center of the waypoint node and the direction of travel of the waiting robot.

[0086] Although the robot management server (200) is described as determining the occupancy priority using one of the first, second, and third scores, it is not necessarily limited to this. For example, the robot management server (200) may also determine the occupancy priority by calculating (summing, averaging, variance, etc.) the first, second, and third scores.

[0087] When a robot (300) leaves a transit node, the robot management server (200) receives de-occupancy information. After receiving the de-occupancy information, the robot management server (200) may transmit a modification plan to the robot (300) for updating the work plan when a request for occupancy for a new transit node is received from the robot (300) or when the robot (300) moves to a new transit node.

[0088] Figures 3 and 4 are block diagrams schematically showing a robot for transportation according to an embodiment of the present invention.

[0089] FIG. 3 is a block diagram illustrating a robot (300) for transportation according to an embodiment of the present invention.

[0090] The robot (300) receives work information (work report) generated from the robot management server (200) and determines an initial plan to be performed at the current location. The robot (300) executes operations according to a work plan corresponding to the determined initial plan.

[0091] If the robot (300) cannot perform a task with the initial plan, it receives a modification plan from the robot management server (200) and updates the task plan with the received modification plan.

[0092] The robot (300) updates the results of the work performed according to the execution of the movement and transmits them to the robot management server (200) or the user terminal (100).

[0093] In this embodiment, candidate robots may be multiple robots selected based on the location, route, and congestion conditions of the origin-destination nodes. The robot management server (200) may select a robot close to the origin as a candidate robot, or a robot with sufficient resources for logistics transport as a candidate robot.

[0094] The above-described steps may be repeatedly performed until the robot (300) reaches its destination. The robot (300) may repeatedly perform the process of generating an updated work plan by updating the current work plan and the modified plan generated by considering environmental information collected in real time.

[0095] The update process for the work plan may include adding virtual nodes between nodes, changing a waypoint node to another waypoint node considering congestion conditions, or modifying driving information between nodes (e.g., speed, time to reach waypoint node management).

[0096] The robot (300) according to the present embodiment includes a work control module (310) and a movement control module (320). The robot (300) of FIG. 2 is according to one embodiment, and not all blocks illustrated in FIG. 2 are essential components, and some blocks included in the robot (300) in other embodiments may be added, changed, or deleted.

[0097] The job control module (310) obtains job assignment information from the robot management server (200), performs job analysis for the assigned job and determines an initial plan, and then saves the job plan.

[0098] Meanwhile, when the work control module (310) obtains a modification plan from the robot management server (200), it verifies the modification plan and updates the work plan based on the verified modification plan.

[0099] The work control module (310) according to another embodiment of the present invention transmits occupancy request information to the robot management server (200) while moving to a transit node.

[0100] The job control module (310) is assigned a standby position from the robot management server (200) and moves to the standby position.

[0101] The job control module (310) occupies a transit node when it receives occupancy permission information from the robot management server (200).

[0102] When the work control module (310) leaves the transit node, it transmits occupation release information to the robot management server (200).

[0103] The movement control module (320) performs an operation to control the movement of the robot (300). The movement control module (320) according to the present embodiment may include a motion control unit (322), a motor (324), and a wheel assembly (326).

[0104] The motion control unit (322) is connected to the main body and can be implemented to move the robot (300), and can calculate a driving path based on the distance to the target object or detect an obstacle to move the robot (300).

[0105] The motion control unit (322) moves the robot (300) in conjunction with the motor (324) and the wheel assembly (326). Here, the wheel assembly (326) may include main wheels, auxiliary wheels, rails, legs, etc. In addition, the motion control unit (322) may include an odometry measurement sensor that detects movement changes, but is not necessarily limited thereto.

[0106] FIG. 4 is a block diagram schematically showing the hardware configuration of a work control module (310) included in a robot (300) for transportation according to an embodiment of the present invention.

[0107] FIG. 4 is a block diagram illustrating the hardware configuration of a job control module (310) for illustrating a computing environment including a computing device suitable for use in preferred embodiments of the present invention.

[0108] The task control module (310) may be implemented as a computing device, such as a smart phone, a personal computer (PC), a tablet PC, a personal digital assistant (PDA), a laptop, etc., but is not necessarily limited thereto.

[0109] The job control module (310) may include a memory that stores a processor and a program executed by the processor, and may generate commands for generating or updating a job plan in the processor, and provide information for generating or updating a job plan using the generated commands.

[0110] The job control module (310) may include a database. A database refers to a data storage format that allows for free searching, extracting, deleting, editing, adding, etc. of data. The database may be implemented to suit the purpose of the present embodiment using Oracle, Informix, Sybase, a Relational Data Base Management System (RDBMS), Gemston, Orion, an Object Oriented Database Management System (OODBMS), a distributed database, a cloud, etc.

[0111] In the embodiment illustrated in FIG. 4, each component may have different functions and capabilities other than those described below, and may include additional components other than those described below.

[0112] The illustrated computing environment includes a job control module (310). In one embodiment, the job control module (310) may be any type of computing device that transmits and receives signals with other terminals.

[0113] The job control module (310) includes at least one processor (13), a computer-readable storage module (16), and a communication bus. The processor (13) may cause the job control module (310) to operate according to the exemplary embodiments mentioned above. For example, the processor (13) may execute one or more programs stored in the computer-readable storage module (16). The one or more programs may include one or more computer-executable instructions, and the computer-executable instructions, when executed by the processor (13), may be configured to cause the job control module (310) to perform operations according to the exemplary embodiments.

[0114] The processor (13) may also perform the generation or update processing of a work plan in conjunction with a neural network module (14). Meanwhile, although the processor (13) and the neural network module (14) are described as being different modules, they are not necessarily limited to this, and may be implemented so that they are combined into a single module and each operation is performed.

[0115] The neural network module (14) performs neural network processing related to the generation or update processing of a work plan based on artificial intelligence (AI). The neural network module (14) has an input node, an intermediate node, and an output node, and has a structure specified by a decision weight that has been previously learned through training data as a connection weight connecting each node. The output value of the neural network module (14) may be a coordinate value of an extended area or a coordinate value of a unit block area, and may be implemented in the form of a feature value matrix for the extended area or the unit block area.

[0116] The computer-readable storage module (16) is configured to store computer-executable instructions or program code, program data, and / or other suitable forms of information. A program stored in the computer-readable storage module (16) includes a set of instructions executable by the processor (13). In one embodiment, the computer-readable storage module (16) may be a memory (volatile memory such as random access memory, non-volatile memory, or a suitable combination thereof), one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, any other form of storage medium that is accessible by the job control module (310) and capable of storing desired information, or a suitable combination thereof.

[0117] The communication bus interconnects various other components of the job control module (310), including the processor (13) and the computer-readable storage module (16).

[0118] The job control module (310) may also include one or more input modules (11) and output modules (12) and one or more communication interfaces that provide interfaces for one or more input / output devices (not shown). The input modules (11) and output modules (12) and the communication interfaces are connected to a communication bus. The input / output devices (not shown) may be connected to other components of the job control module (310) via the input modules (11) and the output modules (12). Exemplary input / output devices may include input devices such as pointing devices (such as a mouse or trackpad), keyboards, touch input devices (such as a touchpad or touchscreen), voice or sound input devices, various types of sensor devices, and / or photographing devices, and / or output devices such as display devices, printers, speakers, and / or network cards. An exemplary input / output device (not shown) may be included within the job control module (310) as a component constituting the job control module (310), or may be connected to the computing device as a separate device distinct from the job control module (310).

[0119] FIG. 5 and FIG. 6 are flowcharts for explaining a method for generating work information for transportation according to an embodiment of the present invention.

[0120] Referring to FIG. 5, the user terminal (100) generates work request information (S510) and transmits the work request information to the robot management server (200) (S512).

[0121] The robot management server (200) performs a task structure analysis on task request information (S520) and generates a node selection and task report (S530).

[0122] The robot management server (200) selects a robot (300) based on the work report and assigns work to it.

[0123] The robot (300) analyzes the work and determines an initial plan for the assigned work and saves the work plan.

[0124] The robot (300) transmits the work analysis results and the initial plan to the robot management server (200) and requests modification (revision) of the plan.

[0125] The robot management server (200) establishes a detailed path plan based on the task analysis results and the initial plan (S550), and creates a modified plan by modifying the initial plan based on the detailed path plan (S552).

[0126] The robot (300) obtains a modification plan from the robot management server (200), verifies the modification plan, and updates the work plan (S560).

[0127] The robot (300) transmits the updated latest version of the work plan to the robot management server (200) (S562).

[0128] The robot management server (200) stores the work plan received from the robot (300) (S564).

[0129] The robot (300) performs work with an updated work plan (S570) and shares update information on the work progress with the robot management server (200) (S572).

[0130] The robot management server (200) feeds back the work progress of the robot (300) to the user terminal (100) (S574).

[0131] Meanwhile, when the robot (300) completes the work being performed according to the work plan (S580), it shares information about the work completion status with the robot management server (200) (S582).

[0132] The robot management server (200) shares the results of the robot's (300) work performance with the user terminal (100) (S584).

[0133] Referring to FIG. 6, a method for determining a path plan for a robot according to another embodiment of the present invention comprises the following steps, which are performed in time series. The steps below are steps for automatically generating a performance plan required for path occupancy management and movement.

[0134] First, the user terminal generates a job request to be performed by the mobile robot and transmits the generated job request to the server (S610).

[0135] The robot management server performs a structural analysis on the above-mentioned job request (S620), selects multiple nodes related to the job request, and then transmits a job report including information on the selected nodes to the robot (S630, S640).

[0136] The work robot performs work analysis based on the work report and determines the initial plan (S650).

[0137] Next, the robot management server receives the task analysis and initial plan from the robot, performs path planning, and transmits the path plan to the robot.

[0138] The logistics robot verifies the received route plan and modifies the initial plan (S660). The robot management server receives the modified initial plan and transmits it to the client terminal (S670).

[0139] Hereinafter, the above-described process will be described in more detail. First, structural analysis analyzes user-requested task information and environmental information to analyze the tasks performed by the robot. Here, the "job" refers to the task that the robot must perform. The content of the task can be composed of a combination of instructions for the robot's function execution, considering the robot's performance capability to perform the task. Structural analysis of the task can include information such as the timing of task execution, whether it is repeated, the functional group of the robot to be performed, direct or system-designated designation of the robot to perform the task, and analysis of the timing and conditions of the execution of the instructions for function execution.

[0140] Based on these analysis results, the robot management server can generate a job report containing the user-requested task, i.e., the initial plan. A job report is data that records the robot's job performance process, progress, and results. For repetitive tasks, there is only one task, but multiple reports can be generated in a 1:N ratio, and multiple robots can perform the tasks.

[0141] Based on the task report, the robot management server determines which worker robot will perform the task and assigns the task to the selected worker robot. The worker robot may be a user-specified robot or a robot selected by the robot management server. The selected worker robot is preferably the robot closest to the route, or the robot with the highest task performance efficiency (robots closer to the starting point, robots closer to the destination), or the robot with a high probability of completing the task (robots with high battery life, robots with a low probability of failure), considering the user-requested task or task report.

[0142] Accordingly, the robot assigned the task (i.e., the worker robot) performs an initial verification of the task's feasibility and a revision of the task. Furthermore, the worker robot retrieves information about the task execution environment, determines an initial path plan directly, or requests an initial path plan from the robot management server.

[0143] Here, the initial route plan is a route plan determined based on the shortest distance by analyzing movement-related commands among the structurally analyzed function execution instructions. The initial route plan is, for example, a route plan from the starting node to the first waypoint node. The initial route plan may include location information for the starting node and the first waypoint node, a driving route plan, speed information, and more.

[0144] Next, the working robot can either directly generate task revision information or request a task revision from the robot management server. Here, a task revision refers to a task plan based on task information generated by the robot management server, specifically, improving the initial task plan into a detailed, executable plan.

[0145] The work robot can determine whether it is possible to move from its current location to the initially planned destination.

[0146] In the cases below, the work robot may determine that it is difficult to perform the task with only the initial plan, and may establish (revise) an additional detailed plan.

[0147] First, when it is necessary to link with structures (facilities) within a building necessary for the robot's movement (elevators, automatic doors, etc.)

[0148] Second, in cases where multiple robots need to be used sequentially according to priority or waiting one at a time for smooth movement (e.g. in narrow hallways).

[0149] Third, when the robot moves, it is necessary to adjust the robot's sensor detection range before entering a specific space.

[0150] Fourth, when the direction of movement of the robot is specific, such as one-way traffic.

[0151] Meanwhile, the detailed plan described above can be generated through the processes of waiting, occupancy approval, occupancy, and release from the waiting area. Furthermore, the task revision information can further include revisions to alternative plans based on changes in the situation (e.g., user job cancellation, error occurrence, etc.) during the movement of the task robot.

[0152] Beyond movement-related commands, work robots can also determine whether they can perform the current planned task. For example, there are cases where interoperability with other equipment / devices is required, rather than performing standalone functions (e.g., movement or loading operations linked to other equipment). Detailed plans can be generated through the process of waiting, occupancy approval, occupancy, and release at the work location or waiting area.

[0153] In the case of moving between floors (elevators), the work robot can establish a detailed plan through a recursive process by adding a map transition and repeating the above process (Revision) from the time it gets off at the destination floor until there is no problem.

[0154] The working robot can verify the final work revision information. Verification here refers to determining whether the robot can actually complete the task according to the revision plan.

[0155] Although FIGS. 5 and 6 each describe the steps as being executed sequentially, this is not necessarily the case. In other words, the steps described in FIGS. 5 and 6 may be modified and executed, or one or more steps may be executed in parallel. Therefore, FIGS. 5 and 6 are not limited to a chronological order.

[0156] The method for generating work information for transportation according to the present embodiment described in FIGS. 5 and 6 may be implemented as an application (or program) and recorded on a recording medium readable by a terminal device (or computer). The recording medium on which the application (or program) for implementing the method for generating work information for transportation according to the present embodiment is recorded and readable by a terminal device (or computer) includes all types of recording devices or media on which data readable by a computing system is stored.

[0157] FIG. 7 and FIG. 8 are exemplary diagrams for explaining the operation of generating work information for transport work management according to an embodiment of the present invention.

[0158] Referring to FIG. 7, the present invention is characterized in that, rather than having the user explicitly designate the entire process of moving the autonomous robot, the user calculates the movement path from the current location of the robot, determines whether there are external facilities or devices such as elevators / automatic doors that must be used along the path, or areas that must perform specific functions, and automatically generates a detailed plan and instructions necessary for moving to the destination and records and manages the execution process.

[0159] The robot service software framework of the present invention can be, for example, ROCON. Beyond the limitations of existing robot services that rely solely on the functions of a single robot, it can integrate various robots into real-world settings and connect them with IoT sensors and devices to provide valuable robot services. It is also possible to implement services using multiple robots in a concert-like manner, harmonizing with the surrounding environment and people.

[0160] In the present invention, a job is a type of mission or goal for a service. A job may consist of a series of instructions based on robot functions. In the present invention, a worker is an entity (usually a robot) that performs tasks for the user.

[0161] Site Configuration may include a Sharing Map for the target service environment and annotated semantic information.

[0162] Scheduler refers to job scheduling (on-demand, scheduled, recurring) and assigning robots (automatic, manual).

[0163] Auth stands for user management service (authentication, authorization).

[0164] Preset means a predefined job or shortcut to launch.

[0165] Notification means informing users of meaningful events.

[0166] Report refers to work reports, statistics, and analysis reports.

[0167] Fleet management service refers to a global plan for detailed planning injection and resource management (shared objects in the service environment).

[0168] The IOT operator manages external resources (e.g., building facilities (elevators, automatic doors)) and common operation control for resource use.

[0169] Common UI can mean a common built-in user interface.

[0170] Balcony can mean full status display for task creation, scheduling and calendar viewing, history, and worker management.

[0171] The Fleet Management UI (Fleet Management UI) is a map-based user interface for site configuration and monitoring. Custom UI refers to a service-specific user interface. A custom service can refer to a service-specific backend service.

[0172] There is a Client SDK (ClientSDK), for example, a software development kit for ROCON clients.

[0173] A Virtual Worker is a virtual robot (excluding physical properties) used to test FMS functionality, as robots are often in short supply.

[0174] A front-end terminal, or user terminal, is a computing device located on the user side and includes a user interface, such as a display screen, that allows the user to check the robot's path plan. Since the detailed plan automatically established according to this embodiment varies depending on the type / location of resources deployed by the user, it is necessary to provide a UI (path inspector) that allows the user to check the detailed path plan.

[0175] The user terminal includes a processing unit, memory, a display unit, and a communication module. Specifically, the user can communicate with the robot management server and the robot via the user terminal graphical user interface, and can easily check task information, the robot's current status, route information, and logistics status information via the display screen.

[0176] The user terminal can input user requirement information through a display unit, etc., and generate user requested work information by further considering the current status of logistics robots and the situation of the workplace.

[0177] Referring to FIG. 7, the user terminal (100) performs a request to create a task to be performed by a user or a robot of a linked system.

[0178] The robot management server (200) performs structural analysis of the task and searches for the location of the destination or waypoint.

[0179] The robot management server (200) assigns a robot (300) to perform a task.

[0180] The robot management server (200) plans the shortest path from the current location of the robot (300) to the destination, and checks whether resources (automatic doors, elevators, traffic control areas, etc.) that must be sequentially occupied by the robots one by one or that require linkage with other systems are being used in the shortest path planning.

[0181] The robot management server (200) creates a detailed path plan to the entry or exit location of each resource.

[0182] The robot management server (200) can add work instructions necessary for linking with the FMS server or external systems (e.g., elevators, automatic doors, PLCs, PCs, etc.) when using each resource.

[0183] The robot management server (200) automatically inserts the detailed path plan as a detailed work instruction into the work instruction of the original work request presented by the user, thereby establishing (revisioning) and modifying the detailed path plan. Here, the robot management server (200) can repeatedly perform the operation of establishing the detailed path plan.

[0184] The robot (300) performs work according to the work plan determined after reviewing the modified detailed path plan. The robot (300) updates the progress and results of the work to the user terminal (100) and the robot management server (200).

[0185] In Fig. 8, the first path (810) represents destination information included in the work request information generated by the user.

[0186] In Fig. 8, the second path (820) represents a simple shortest path within the adjacent area in which the robot can move.

[0187] In Fig. 8, the third path (830) represents a work plan based on a modified path plan that takes into account the resource (automatic door) that requires passage (wait-occupy-pass-release).

[0188] In FIG. 9, the fourth path (910) is a movement plan presented based on the work request information of the user terminal (100), and the fifth path (920) represents a movement plan with a detailed plan added by the robot management server (200).

[0189] The above description is merely an example of the technical idea of ​​the embodiment of the present invention, and those skilled in the art to which the embodiment of the present invention pertains can make various modifications and variations without departing from the essential characteristics of the embodiment of the present invention. Therefore, the embodiment of the present invention is not intended to limit the technical idea of ​​the embodiment of the present invention, but to explain it, and the scope of the technical idea of ​​the embodiment of the present invention is not limited by these embodiment. The protection scope of the embodiment of the present invention should be interpreted by the following claims, and all technical ideas within a scope equivalent thereto should be interpreted as being included in the scope of the rights of the embodiment of the present invention.

[0190] <Explanation of symbols>

[0191] 100: User terminal

[0192] 200: Robot Management Server

[0193] 300: Robot

Claims

1. A method for creating work information for transportation in a robot work management server, A step of receiving task request information that the robot must perform; A step of performing a work structure analysis of a work environment based on the above work request information; A step of determining a robot to perform a task and a plurality of nodes included in the driving path of the robot according to the above task structure analysis, and generating a task report including movement path information for driving the link section between the nodes; A step of assigning a task to the robot based on the above task report; and A step of establishing a detailed path plan based on an initial plan received from the robot to which the above task is assigned, transmitting the generated modified plan to the robot, and storing the work plan based on the modified plan. A method for generating work information for transportation, characterized by including:

2. In paragraph 1, The steps for performing the above work structure analysis are: A step of searching for a plurality of candidate robots located within a predetermined reference distance from a location specified based on the above work request information; and A step of obtaining local environment information according to the location of each of the above candidate robots, calculating a score for the task performance ability of each of the above candidate robots for the task according to the above task request information, and predicting the task performance ability. A method for generating work information for transportation, characterized by including:

3. In paragraph 2, The steps for generating the above work report are: A step of determining a robot to perform the task based on the score among the plurality of candidate robots; A step of determining a plurality of nodes included in the driving path of the robot; and A step of generating the action report including the movement path information for the link section between nodes included in the plurality of nodes. A method for generating work information for transportation, characterized by including:

4. In paragraph 3, The step of determining the robot to perform the above task is: The candidate robot with the highest score is determined as the robot. A method for generating work information for transportation, characterized in that it further checks whether a resource exists on the driving path of the candidate robot, adjusts the score according to the type of resource and the passage time, and then determines the robot.

5. In paragraph 1, The steps to save the above work plan are: A step of obtaining a task analysis result for the assigned task from the robot and the initial plan determined based on the task analysis result; If modifications to the above initial plan are required, the step of establishing the detailed route plan is as follows. A step of applying the detailed route plan to the initial plan to generate the modified plan; and When the above modification plan is verified, a step of saving the work plan generated based on the above modification plan A method for generating work information for transportation, characterized by including:

6. In paragraph 5, The steps to save the above work plan are: A method for generating work information for transportation, characterized in that it further includes the step of transmitting the above modification plan to the robot for verification, and receiving and storing the updated work plan based on the verified modification plan from the robot.

7. In paragraph 5, The steps for establishing the above detailed route plan are: A method for generating work information for transportation, characterized in that the detailed route plan is established by modifying the route plan included in the work information in consideration of the environmental information acquired from the location of the robot, or adding a virtual node between nodes located on the work route specified in the route plan, and further generating a detailed driving plan according to the virtual node.

8. In the robot task management server, The robot task management server comprises a memory storing one or more programs for generating task information for transportation; and one or more processors for performing operations for generating task information for transportation according to the one or more programs, and the operations performed by the processors include: A step of receiving task request information that the robot must perform; A step of performing a work structure analysis of a work environment based on the above work request information; A step of determining a robot to perform a task and a plurality of nodes included in the driving path of the robot according to the above task structure analysis, and generating a task report including movement path information for driving the link section between the nodes; A step of assigning a task to the robot based on the above task report; and A step of establishing a detailed path plan based on an initial plan received from the robot to which the above task is assigned, transmitting the generated modified plan to the robot, and storing the work plan based on the modified plan. A robot task management server comprising:

9. In paragraph 8, The steps for performing the above work structure analysis are: A step of searching for a plurality of candidate robots located within a predetermined reference distance from a location specified based on the above work request information; and A step of obtaining local environment information according to the location of each of the above candidate robots, calculating a score for the task performance ability of each of the above candidate robots for the task according to the above task request information, and predicting the task performance ability. A robot task management server comprising:

10. In paragraph 9, The steps for generating the above work report are: A step of determining a robot to perform the task based on the score among the plurality of candidate robots; A step of determining a plurality of nodes included in the driving path of the robot; and A step of generating the action report including the movement path information for the link section between nodes included in the plurality of nodes. A robot task management server comprising:

11. In paragraph 8, The steps to save the above work plan are: A step of obtaining a task analysis result for the assigned task from the robot and the initial plan determined based on the task analysis result; If modifications to the above initial plan are required, the step of establishing the detailed route plan is as follows. A step of applying the detailed route plan to the initial plan to generate the modified plan; and When the above modification plan is verified, a step of saving the work plan generated based on the above modification plan A robot task management server comprising:

12. In paragraph 11, The steps to save the above work plan are: A robot work management server characterized by further comprising a step of transmitting the above modification plan to the robot for verification, and receiving and storing the updated work plan based on the verified modification plan from the robot.

13. In paragraph 11, The steps for establishing the above detailed route plan are: Considering the environmental information obtained from the location of the robot, modify the path plan included in the task information. A robot task management server characterized in that it establishes the detailed path plan by adding a virtual node between nodes located on the work path specified in the above path plan and further generating a detailed driving plan according to the virtual node.

14. A computer program stored in a recording medium for executing a method for generating work information according to any one of clauses 1 to 7 on a computer.

Citation Information

Patent Citations

  • Automatic driving vehicle scheduling method and device and automatic driving vehicle

    CN115179929A

  • Autonomous traveling work device

    JP2021105764A

  • Method for path-planning for actual robots

    KR1020110026776A

  • Metaverse system for providing virtual space according to passage of time and operation methode thereof

    KR1020230160147A

  • Packing device

    KR1020240008741A