Method and system for controlling robot via web application in fleet management system
By processing business logic and UI through a web application, the method simplifies robot control integration with fleet management systems, addressing deployment challenges and enabling web technology-friendly development.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-08-05
- Publication Date
- 2026-04-02
AI Technical Summary
Conventional robot control technologies require robot application developers with low web technology understanding to develop server applications, which are difficult to deploy and frequently change, complicating the integration of business logic and robot control.
A method and system where business logic and UI processing are handled by a web application, allowing separation of robot control from server applications, enabling easier deployment and integration with fleet management systems.
Enables developers familiar with web technologies to manage business logic, simplifies deployment, and allows for a generalized API, facilitating the use of a web-based robot operating system with minimal architectural changes.
Smart Images

Figure KR2025011686_02042026_PF_FP_ABST
Abstract
Description
Method and System for Controlling Robots via Web Applications in a Fleet Management System
[0001] The following description relates to a method and system for controlling robots through a web application in a fleet management system.
[0002] In order to provide a specific service using a robot, both business logic for the service and control logic for controlling the robot are required. In conventional robot control technology, both business logic and control logic are included in the robot. For example, a conventional robot communicates with a fleet management system through a separate server application installed on the robot and can process screen control and robot control according to commands from the fleet management system.
[0003] However, in these conventional robot control technologies, there is a problem in that robot application developers, who have a relatively low understanding of web technologies, must develop server applications. In addition, there is a problem in that the robot's server application, which is difficult to deploy compared to web applications, requires frequent deployment due to frequently changing business logic. Furthermore, there is a problem in that the server application installed on the robot has difficulty responding to various business logics.
[0004] A method and system for controlling robots through a web application in a fleet management system are provided.
[0005] A robot control system comprises: a fleet management system that provides a command for at least one robot; and each of the at least one robots, wherein the robots each receive the command from the fleet management system by means of at least one processor using a web application; a second process for processing business logic for a service according to the command; and a third process for transmitting the command to a server application so that robot control according to the command is processed through a server application when robot control is required according to the command.
[0006] According to one aspect, the second process may be characterized by including a process of processing the business logic through linkage with a service system that provides the service.
[0007] According to another aspect, each of the above-mentioned at least one robot may be characterized by further processing a fourth process of configuring a screen for the service by the above-mentioned at least one processor using the web application and outputting it through a display included in the robot.
[0008] According to another aspect, the fourth process may be characterized by including a process of configuring the screen by combining a template included in the web application and data to be output for the service.
[0009] According to another aspect, each of the above-mentioned at least one robot may further process a fifth process of outputting audio for the service through a speaker included in the robot by means of the above-mentioned at least one processor using the above-mentioned web application.
[0010] According to another aspect, each of the at least one robot may be further characterized by processing a sixth process of transmitting information about the processing result of the business logic and the status of the robot to the fleet management system by means of the at least one processor using the web application.
[0011] According to another aspect, each of the at least one robot may be characterized by using the server application to process robot control according to the command by the at least one processor and transmitting information about the state of the robot to the web application.
[0012] A robot is provided, comprising a computer device including at least one processor, and processing a first process of receiving a command from a fleet management system by the at least one processor using a web application; a second process of processing business logic for a service according to the command; and a third process of transmitting the command to a server application so that robot control according to the command is processed through a server application when robot control is required according to the command.
[0013] A robot control method performed by a robot comprises, wherein the robot includes a computer device including at least one processor, and by the at least one processor receives a command from a fleet management system using a web application; processes business logic for a service according to the command; and, when robot control is required according to the command, transmits the command to a server application so that robot control according to the command is processed through a server application.
[0014] A computer program stored on a computer-readable recording medium is provided to be combined with a computer device to execute the above method on the computer device.
[0015] A computer-readable recording medium is provided on which a program for executing the above method is recorded on a computer device.
[0016] A method and system for controlling robots through a web application in a fleet management system can be provided.
[0017] FIG. 1 is a diagram illustrating an example of the operating environment of a robot control system in one embodiment of the present invention.
[0018] FIG. 2 is a drawing illustrating an example of a front-end structure of a robot in one embodiment of the present invention.
[0019] FIG. 3 is a block diagram illustrating an example of a computer device according to an embodiment of the present invention.
[0020] FIG. 4 is a flowchart illustrating an example of a robot control method in one embodiment of the present invention.
[0021] Hereinafter, embodiments will be described in detail with reference to the attached drawings.
[0022] FIG. 1 is a diagram illustrating an example of the operating environment of a robot control system in an embodiment of the present invention. A robot control system (100) according to the present embodiment may include a fleet management system (110), a web application (121) mounted on a robot (120), a message broker (130), and a robot connector (140).
[0023] The fleet management system (110) is a system implemented in a cloud environment and can transmit commands to the web application (121) of the robot (120) through a message broker (130). The web application (121) can handle UI (User Interface) processing including screen processing, business logic processing, etc., and can transmit commands to the server application (124) of the robot (120) when control of the robot (120) is required. Commands can be transmitted to the server application (124) using communication means (WS (Web Server), API (Application Programming Interface)) provided to the server application (124) of the robot (120). Subsequently, the web application (121) can transmit information regarding the result of command execution, user input on the screen, or the status of the robot (120) to the fleet management system (110) through the message broker (130). In the embodiment of FIG. 1, "Blackboard" may refer to information regarding a predefined status of the robot (120). UI processing may, for example, mean processing information to be displayed on the display (122) of the robot (120). This UI processing can be performed through web browser-based screen processing.
[0024] A server application (124) of a robot (120) that receives a command via a robot API (123) can control the robot (120) together with the robot's ROS (Robot Operating System, 125). Additionally, the robot (120) can provide specific services according to business logic processed by a web application (121). Furthermore, service events related to the provision of specific services can be transmitted to a service system (150) via a robot connector (140), and tasks related to the processing of business logic can be requested from the service system (150). Here, the robot connector (140) may refer to a channel through which the robot (120) can communicate with the service system (150) via the web application (121). The service system (150) may be a system of an entity that intends to provide third-party services through the robot (120).
[0025] As previously explained, in conventional robot control technology, the server application for robot control handled all aspects, including robot control, UI processing, and business logic.
[0026] On the other hand, in embodiments of the present invention, UI processing and business logic in the robot (120) are processed by a web application (121) through a service system (150), and when robot control is required, robot control and business logic can be separated by transmitting commands from a fleet management system (110) to a server application (124), such as a robot API (123). This allows a web application developer who is relatively familiar with web technology and business development to handle the business logic. In addition, the server application (124) can focus solely on robot control, and since business requirements are eliminated, it becomes possible to provide a generalized API. Furthermore, the use of a web-based robot-dedicated OS (Web based ROS; WROS) becomes possible with minimal architectural changes.
[0027] FIG. 2 is a diagram illustrating an example of a front-end structure of a robot in an embodiment of the present invention. In the embodiment of FIG. 2, the robot (120) and the web application (121) of the robot (120) are shown separately, but substantially, the web application (121) can be mounted on the robot (120). The web application (121) may include a plurality of components implemented through an application (210) and a library (220). In this case, the components of the web application (121) illustrated in FIG. 2 may be logical modules implemented through the web application (121). These logical modules may substantially be implemented by at least one processor and at least one memory included in the robot (120).
[0028] A message receiver (221) can receive commands from a fleet management system (110) through an MQTT client (MQTT (Message Queuing Telemetry Transport) Client, 221). In practice, the MQTT client (221) can receive commands from the fleet management system (110) through a message broker (130) described earlier in FIG. 3.
[0029] The event handler (211) can process commands received by the message receiver (221) according to the service logic (212). At this time, the event handler (211) can process business logic through linkage with the service system (150) according to the service logic (212), and if robot control is required, it can transmit commands to the robot (120) according to the service logic (212).
[0030] Message mapping (213) may refer to the process of generating information to be displayed on the display (122) of the robot (120) by mapping data for screen processing according to a command with templates (223) included in the library (220). The information mapped with the templates and data can be transmitted to the controller (224) and displayed on the display (122) of the robot (120). At this time, the UI controller (224-1) included in the controller (224) can handle screen control through the display (122). Additionally, the audio controller (224-2) further included in the controller (224) can control the output of audio through the robot (120). In this case, the robot (120) may further include an output device (not shown), such as a speaker.
[0031] Additionally, a State Fetcher (214) may be an example of a process of fetching predefined information about the state of the robot (120) from the robot (120). The fetched information may be delivered to a Message Publisher (225). Additionally, the results of UI processing and business logic processing handled through the event handler (211) may also be delivered to the Message Publisher (225). At this time, the Message Publisher (225) may deliver the results of UI processing and business logic processing, as well as information about the state of the robot (120), to the Fleet Management System (110) via an MQTT client (221). In practice, the MQTT client (221) may deliver the information to the Fleet Management System (110) via a message broker (130).
[0032] MQTT-based communication can support WebSocket and / or TCP (Transmission Control Protocol) communication, support QoS (Quality of Service), and guarantee command delivery.
[0033] FIG. 3 is a block diagram illustrating an example of a computer device according to an embodiment of the present invention. As shown in FIG. 3, the computer device (300) may include memory (310), a processor (320), a communication interface (330), and an input / output interface (340). The memory (310) is a computer-readable recording medium and may include a non-perishable mass storage device such as RAM (random access memory), ROM (read only memory), and a disk drive. Here, the non-perishable mass storage device such as ROM and the disk drive may be included in the computer device (300) as a separate permanent storage device distinct from the memory (310). Additionally, an operating system and at least one program code may be stored in the memory (310). These software components may be loaded into memory (310) from a computer-readable recording medium separate from memory (310). This separate computer-readable recording medium may include computer-readable recording media such as floppy drives, disks, tapes, DVD / CD-ROM drives, and memory cards. In another embodiment, software components may be loaded into memory (310) via a communication interface (330) rather than a computer-readable recording medium. For example, software components may be loaded into memory (310) of a computer device (300) based on a computer program installed by files received through a network (Network, 360).
[0034] The processor (320) may be configured to process instructions of a computer program by performing basic arithmetic, logic, and input / output operations. Instructions may be provided to the processor (320) via memory (310) or a communication interface (330). For example, the processor (320) may be configured to execute instructions received according to program code stored in a recording device such as memory (310).
[0035] The communication interface (330) may provide a function for the computer device (300) to communicate with other devices through the network (360). For example, requests, commands, data, files, etc. generated by the processor (320) of the computer device (300) according to program code stored in a recording device such as memory (310) may be transmitted to other devices through the network (360) under the control of the communication interface (330). Conversely, signals, commands, data, files, etc. from other devices may be received by the computer device (300) through the communication interface (330) of the computer device (300) via the network (360). Signals, commands, data, etc. received through the communication interface (330) may be transmitted to the processor (320) or memory (310), and files, etc. may be stored in a storage medium (the permanent storage device described above) that the computer device (300) may further include.
[0036] The communication method is not limited and may include not only communication methods utilizing communication networks (e.g., mobile communication networks, wired internet, wireless internet, broadcasting networks) that the network (360) may include, but also short-range wireless communication between devices. For example, the network (360) may include any one or more networks such as a PAN (personal area network), LAN (local area network), CAN (campus area network), MAN (metropolitan area network), WAN (wide area network), BBN (broadband network), and the Internet. Additionally, the network (360) may include any one or more network topologies such as a bus network, a star network, a ring network, a mesh network, a star-bus network, a tree or hierarchical network, but is not limited thereto.
[0037] The input / output interface (340) may be a means for interfacing with an input / output device (I / O device, 350). For example, the input device may include a device such as a microphone, keyboard, or mouse, and the output device may include a device such as a display or speaker. As another example, the input / output interface (340) may be a means for interfacing with a device in which the functions for input and output are integrated into one, such as a touchscreen. The input / output device (350) may be composed of a computer device (300) and a single device.
[0038] Additionally, in other embodiments, the computer device (300) may include fewer or more components than the components of FIG. 3. However, it is not necessary to clearly illustrate most of the prior art components. For example, the computer device (300) may be implemented to include at least some of the input / output devices (350) described above, or may include other components such as a transceiver, a database, etc.
[0039] The robot (120) may include a computer device (300). In the embodiment of FIG. 3, the computer device (300) is shown to include one memory (310) and one processor (320), but depending on the embodiment, it may include multiple memories and / or multiple processors.
[0040] The robot (120) can operate a web application (121) and / or a server application (124) by the processor (320) of the computer device (300). Since the embodiments of the present invention are characterized by excluding the business aspect from the control aspect of the robot (120) by processing the business logic of the service provided by the robot (120) through the web application (121) rather than the control aspect of the robot (120), a detailed description of the control aspect of the robot (120) is omitted.
[0041] FIG. 4 is a flowchart illustrating an example of a robot control method in an embodiment of the present invention. The robot control method according to the present embodiment may be performed by a computer device (300) included in the robot (120) described above. This may substantially be performed by the robot (120). For example, the processor (320) of the computer device (300) may be implemented to execute a control instruction according to the code of an operating system included in the memory (310) or the code of at least one computer program (e.g., a web application (121) and / or a server application (124)). Here, the processor (320) may control the computer device so that the computer device (300) and / or the robot (120) perform steps (410 to 470) included in the method of FIG. 4 according to the control instruction provided by the code stored in the computer device (300). FIG. 4 describes an embodiment in which a robot (120) performs each step using a web application (121) or a server application (124) under the control of a processor (320).
[0042] In step (410), the robot (120) can receive commands from the fleet management system (110) via the message broker (130) using a web application (121). The fleet management system (110) may be a cloud system implemented by multiple computer devices and may transmit commands for controlling multiple robots to each robot. Additionally, it may receive information regarding the processing results of commands and the status of each robot from each of the multiple robots, thereby controlling each robot to perform a service for each robot. The message broker (130) is one example for communication between the fleet management system (110) and the robot (120), but the method of communication between the fleet management system (110) and the robot (120) is not limited to using the message broker (130). For example, the fleet management system (110) and the robot (120) may communicate with each other through the network (360) described above.
[0043] In step (420), the robot (120) can process business logic for a service according to a command using a web application (121). For example, the robot (120) can process business logic through a connection with a service system (150) that provides the service. The web application (121) can be deployed through the service system (150) or another system connected to the service system (150) and installed on the robot (120). Unlike a server application (124) for controlling the robot (120), a modified version of this web application (121) can be easily installed on the robot (120) in accordance with changes in business logic, etc. For example, previously, a server application developer had to understand the business logic changed for the service of the service system (150), develop the server application (124) according to the understood business logic, and install it on the robot (120). However, as robot control is separated from business logic through the web application (121), the web application (121) developed by the service system (150) can be easily installed on the robot (120) separately from the server application (124).
[0044] In step (430), the robot (120) can use a web application (121) to configure a screen for a service and output it through a display (122) included in the robot (120).
[0045] In step (440), the robot (120) can use a web application (121) to output audio for the service through a speaker included in the robot (120).
[0046] The configuration of such screens and the output of audio may be included in UI processing using the web application (121) of the robot (120). It has been previously explained that the robot (120) may include a computer device (300), and that among the input / output devices (I / O device, 350) associated with the computer device (300), the output device may include a device such as a display or a speaker. A display (122) or a speaker (not shown) may be a device included in such an input / output device (I / O device, 350).
[0047] In step (450), the robot (120) can use the web application (121) to transmit a command to the server application (124) so that robot control according to the command is processed through the server application (124) when robot control according to the command is required. In this way, commands related to robot control can be transmitted to the server application (124) and utilized for robot control, thereby allowing business logic to be separated from the server application (124).
[0048] In step (460), the robot (120) can use a server application (124) to process robot control according to a command and transmit information about the state of the robot (120) to a web application (121). The information about the state of the robot (120) may include various predefined information related to the control of the robot (120), such as the position, movement, or direction of the robot (120). This information about the state of the robot (120) may be predefined according to the services provided by the robot (120).
[0049] In step (470), the robot (120) can transmit information about the processing result of the business logic and the state of the robot (120) to the fleet management system (110) through the message broker (130). The fleet management system (110) can receive information about the processing result of such command and the state of the robot (120) from each of the multiple robots, and based thereon, can generate and provide a command to control each of the multiple robots.
[0050] Thus, according to embodiments of the present invention, a method and system for controlling a robot through a web application in a fleet management system can be provided.
[0051] The system or device described above may be implemented as a hardware component, or a combination of a hardware component and a software component. For example, the device and component described in the embodiments may be implemented using one or more general-purpose or special-purpose computers, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing unit may execute an operating system (OS) and one or more software applications executed on said operating system. Additionally, the processing unit may access, store, manipulate, process, and generate data in response to the execution of the software. For ease of understanding, the processing unit may be described as being used as a single unit, but those skilled in the art will understand that the processing unit may include multiple processing elements and / or multiple types of processing elements. For example, the processing unit may include multiple processors or one processor and one controller. In addition, other processing configurations, such as parallel processors, are also possible.
[0052] Software may include computer programs, code, instructions, or a combination of one or more of these, and may configure a processing unit to operate as desired or instruct the processing unit independently or collectively. Software and / or data may be embodied in any type of machine, component, physical device, virtual equipment, computer storage medium, or device so as to be interpreted by the processing unit or to provide instructions or data to the processing unit. Software may be distributed over networked computer systems and may be stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.
[0053] The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., either individually or in combination. The medium may continuously store a program executable by a computer, or temporarily store it for execution or download. Furthermore, the medium may be various recording or storage means in the form of a single or multiple hardware components, and is not limited to a medium directly connected to a computer system, but may also exist distributed over a network. Examples of media may include magnetic media such as hard disks, floppy disks, and magnetic tapes; optical recording media such as CD-ROMs and DVDs; magneto-optical media such as floptical disks; and media configured to store program instructions, including ROM, RAM, and flash memory. Additionally, other examples of media may include recording or storage media managed by app stores that distribute applications or sites and servers that supply or distribute various other software. Examples of program instructions include machine code, such as that generated by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc.
[0054] Although the embodiments have been described above with reference to limited examples and drawings, those skilled in the art can make various modifications and variations from the description above. For example, suitable results can be achieved even if the described techniques are performed in a different order than described, and / or the components of the described system, structure, device, circuit, etc. are combined or assembled in a form different from described, or replaced or substituted by other components or equivalents.
[0055] Therefore, other implementations, other embodiments, and equivalents to the claims also fall within the scope of the claims set forth below.
Claims
1. In a robot control system, A fleet management system that provides commands for at least one robot; and The above at least one robot Includes, Each of the above-mentioned at least one robot, by means of at least one processor using a web application, A first process of receiving the command from the fleet management system; A second process for processing business logic for a service in accordance with the above command; and A third process of transmitting the command to a server application so that, when robot control is required according to the above command, the robot control according to the above command is processed through the server application. Handling A robot control system characterized by 2. In Paragraph 1, The above second process is, Includes a process of processing the business logic through linkage with a service system providing the above service. A robot control system characterized by 3. In Paragraph 1, Each of the above at least one robot, by means of the above at least one processor using the above web application, A fourth process of configuring a screen for the above service and outputting it through a display included by a robot Further processing A robot control system characterized by 4. In Paragraph 3, The above fourth process is, A process comprising configuring the screen by combining a template included in the web application and data to be output for the service. A robot control system characterized by 5. In Paragraph 1, Each of the above at least one robot, by means of the above at least one processor using the above web application, A fifth process of outputting audio for the above service through a speaker included by a robot Further processing A robot control system characterized by 6. In Paragraph 1, Each of the above at least one robot, by means of the above at least one processor using the above web application, A sixth process of transmitting information regarding the processing result of the above business logic and the status of the robot to the above fleet management system. Further processing A robot control system characterized by 7. In Paragraph 1, Each of the above at least one robot, by means of the above at least one processor using the above server application, Processing robot control according to the above command and transmitting information about the robot's status to the above web application A robot control system characterized by 8. In robots, A computer device comprising at least one processor, and By using a web application, by the above at least one processor, A first process of receiving a command from a fleet management system; A second process for processing business logic for a service in accordance with the above command; and A third process of transmitting the command to a server application so that, when robot control is required according to the above command, the robot control according to the above command is processed through the server application. Handling A robot characterized by 9. In Paragraph 8, The above second process is, Includes a process of processing the business logic through linkage with a service system providing the above service. A robot characterized by 10. In Paragraph 8, By using the above web application, by the at least one processor, A fourth process of configuring a screen for the above service and outputting it through a display included by a robot Further processing A robot characterized by 11. In Paragraph 8, By using the above web application, by the at least one processor, A fifth process of outputting audio for the above service through a speaker included by a robot Further processing A robot characterized by 12. In Paragraph 8, By using the above web application, by the at least one processor, A sixth process of transmitting information regarding the processing result of the above business logic and the status of the robot to the above fleet management system. Further processing A robot characterized by 13. In Paragraph 8, By using the above server application, by the above at least one processor, Processing robot control according to the above command and transmitting information about the robot's status to the above web application A robot characterized by 14. In a robot control method performed by a robot, The above robot includes a computer device comprising at least one processor, and By the above-mentioned at least one processor, using a web application, A step of receiving a command from a fleet management system; A step of processing business logic for a service according to the above command; and When robot control is required according to the above command, the step of transmitting the command to a server application so that robot control according to the above command is processed through a server application. A robot control method including 15. In Paragraph 14, The step of processing the above business logic is, A robot control method characterized by including a step of processing the business logic through linkage with a service system that provides the above service.
16. In Paragraph 14, By the above at least one processor, using the web application, A step of configuring a screen for the above service and outputting it through a display included in the robot A robot control method including further 17. In Paragraph 14, By the above at least one processor, using the web application, A step of outputting audio for the above service through a speaker included by a robot A robot control method including further 18. In Paragraph 14, By the above at least one processor, using the web application, A step of transmitting information regarding the processing result of the above business logic and the status of the robot to the above fleet management system A robot control method including further 19. In Paragraph 14, By the above at least one processor, using the server application, A step of processing robot control according to the above command and transmitting information about the robot's status to the web application. A robot control method including further 20. A computer program stored on a computer-readable recording medium to be combined with a computer device of a robot and to execute the method of any one of claims 14 to 19 on the computer device of said robot.
Citation Information
Patent Citations
Substrate processing tube, substrate processing apparatus including the same and substrate process method using the same
KR1020240007020A
Manufacturing system and manufacturing method of unit cell
KR1020240050177A
ROS-based robot integrated management system
KR102569181B1
Adaptive autonomous mobile robot tasking
US20240174445A1
Systems, methods, and devices for building a robot mission
WO2024121618A1