Robot collaboration system, robot collaboration method, and program

The robot cooperation system coordinates multiple software robots through message-based operations to automate tasks across offline systems, addressing inefficiencies in existing RPA technologies and enhancing operational efficiency by eliminating manual tasks.

JP7836676B2Active Publication Date: 2026-03-27NOMURA RESEARCH INSTITUTE
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-02-17
Publication Date
2026-03-27

AI Technical Summary

Technical Problem

Existing RPA technologies require multiple software robots to operate independently due to cost considerations, leading to inefficiencies in business processes, especially in offline environments where physical and authentication barriers separate work and production systems, necessitating manual tasks like travel and report submission.

Method used

A robot cooperation system that coordinates multiple software robots through message-based operations, enabling them to work together across offline systems by storing operation information and using control means to execute processes on separate devices, including transmission, reception, and operation control mechanisms.

Benefits of technology

This system reduces human burden and enhances operational efficiency by automating tasks typically performed manually, allowing seamless coordination of operations between work and production environments without the need for physical travel or separate software robots.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007836676000001
    Figure 0007836676000001
  • Figure 0007836676000002
    Figure 0007836676000002
  • Figure 0007836676000003
    Figure 0007836676000003
Patent Text Reader

Abstract

To further improve work efficiency by means of RPA robots.SOLUTION: A robot cooperation system includes: storage means 120, 220 storing operation information of an office robot 10 and a production robot 20; first control means 130 which causes the office robot 10 to operate an office RPA terminal 11 on the basis of the operation information; and second control means 230 which causes the production robot 20 to operate a production RPA terminal 21 on the basis of the operation information. The first control means 130 includes: transmission control means 131 which causes the office robot 10 to operate the office RPA terminal 11 to transmit a cooperation message. The second control means 230 includes: receiving control means 232 which causes the production robot 20 to operate the production RPA terminal 21 to receive the cooperation message; and operation control means 233 which causes the production robot 20 to operate the production terminal 21 to execute predetermined processing (e.g., release of a script S on a production server 70) on the basis of the received cooperation message.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to robotic process automation (RPA) capable of automatically executing operations performed by humans in an information processing apparatus or the like, and more particularly, to a robot cooperation system, a robot cooperation method, and a program configured to enable the operations of a plurality of RPA robots to cooperate with each other.

Background Art

[0002] In recent years, in information processing apparatuses, RPA robots capable of automatically executing operations routinely performed by humans have attracted attention. In RPA robots, for example, various operations including screen operations can be executed, and thus, particularly, the business efficiency can be effectively improved by executing simple operations or repetitive operations. As a technology related to RPA robots, Patent Document 1 discloses a technology for causing one software robot to perform the work of a plurality of software robots.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] In the technology disclosed in Patent Document 1, in order to effectively utilize software licenses, one software robot is made to perform a plurality of processes. However, if there are no cost issues regarding licenses, using a plurality of software robots is more advantageous in terms of business efficiency in terms of the number of processes and processing time. Therefore, in practice, it is determined whether to use a plurality of software robots in consideration of cost effectiveness. Therefore, when using multiple software robots, simply having each software robot perform individual operations is ineffective, and improvements were needed.

[0005] A concrete example of this problem will be explained with reference to the conventional system 1a shown in Figure 9. Figure 9 is a schematic diagram of a conventional system 1a in which, in the business of designing, developing, and releasing a predetermined program (script S), the information processing device (office terminal 81) installed in the office is operated to acquire the script S, and the script S is then released on the production server 70 by operating the production terminal 91 installed in the production terminal room. Here, the production terminal 91 is installed in a production terminal room isolated from other rooms such as offices, and physical access restrictions are in place so that only specific individuals can enter the production terminal room. Furthermore, the production terminal 91 requires users to enter authentication information (account and password) to prevent unauthorized access such as hijacking or impersonation, and is kept offline to prevent connections from the office terminal 81 or other unspecified terminals. In other words, the production system 900 and the administrative system 800 are both offline. This section describes the case where a worker in the office releases a developed script S to the production server 70 in the aforementioned environment. The worker is assumed to have obtained script S via the task management tool 500 by operating the work terminal 81 (1). Workers are required to fill out a ledger in order to obtain permission to enter the production terminal room and to borrow a dedicated USB memory stick (with encryption function) (2). The ledger must include information such as the worker's department, name, and work details. After recording the information, the script S must be stored on a dedicated USB memory stick provided by the worker, after obtaining approval from their supervisor or management department. Next, the worker needs to move from the office to the production terminal room with the USB memory stick containing script S (3). If a review by a reviewer is required, the reviewer must accompany the worker. Upon entering the production terminal room, the worker moves to production terminal 91 (4). Then, the worker enters authentication information by operating the production terminal 91 to obtain access rights to the production server 70 via the access gateway 430, and then releases script S on the target production server 70 (5). Furthermore, once the worker confirms that script S has been successfully released, they must move from the production terminal room to the office (6), access the task management tool 500 from the office terminal 81, and submit a post-work report including work performance and completion notification (7).

[0006] Thus, when deploying software robots in an offline environment for both the work system 800 and the production system 900, it is necessary to separate the software robots for work and production due to security issues and other reasons. Specifically, operations performed on the work terminal 81 (for example, developing and retrieving script S) must be performed by a software robot for work purposes, while operations performed on the production terminal 91 (for example, releasing on the production server 70) must be performed by a software robot for production purposes. However, while some degree of operational efficiency improvement was possible in this case, there was still room for improvement, as there were tasks that workers had to perform, such as moving between the office and the production terminal room and submitting post-operation reports.

[0007] This invention was proposed to solve the problems of the conventional technology described above, and aims to provide a robot cooperation system, a robot cooperation method, and a program that coordinate the operations of multiple software robots based on the sending and receiving of messages. [Means for solving the problem]

[0008] To achieve the above objective, the robot cooperation system of the present invention is a robot cooperation system comprising a plurality of software robots capable of operating predetermined devices, comprising: a storage means for storing operation information of the software robots; a first control means for causing a first software robot to operate a first device based on the operation information; and a second control means for causing a second software robot to operate a second device based on the operation information, wherein the first control means comprises a transmission control means for causing the first software robot to operate the first device and transmit a predetermined message; and the second control means comprises a reception control means for causing the second software robot to operate the second device and receive the message; and an operation control means for causing the second software robot to operate the second device and execute a predetermined process based on the message. A third device corresponding to the first device and a fourth device corresponding to the second device are provided in an offline state, the first control means is capable of causing the first software robot to operate the first device and execute processing that can be performed by the third device, and the second control means is capable of causing the second software robot to operate the second device and execute processing that can be performed by the fourth device. It is part of the structure.

[0009] Furthermore, the present invention can be configured as a robot cooperation method to be executed in the robot cooperation system according to the present invention as described above. Furthermore, the present invention can also be configured as a program that is executed in the robot collaboration system and robot collaboration method according to the present invention as described above. [Effects of the Invention]

[0010] According to the present invention, the human burden in operating the information processing device can be further reduced and work efficiency can be further improved. [Brief explanation of the drawing]

[0011] [Figure 1] This is a schematic diagram of the robot collaboration system of the present invention. [Figure 2] This is a functional block diagram of a robot collaboration system. [Figure 3] This is a hardware configuration diagram of each component. [Figure 4] This is a diagram illustrating an example of operational information. [Figure 5](a) is an explanatory diagram of the case of sending a specific message by e-mail from a work terminal, and (b) is an explanatory diagram of the case of sending a specific message by chat from a work terminal. [Figure 6] (a) is an explanatory diagram of the case of sending a cooperation message from a work robot to a live robot, and (b) is an explanatory diagram of the case of sending a cooperation message from a live robot to a work robot. [Figure 7] It is a functional block diagram related to an application example of a robot cooperation system. [Figure 8] (a) is a diagram showing an encryption tool, and (b) is a diagram showing that the ciphertext encrypted using the encryption tool is copied to the body of an e-mail. [Figure 9] It is a flowchart showing the robot cooperation method of the present invention. [Figure 10] It is a schematic diagram of a conventional system.

Embodiments for Carrying Out the Invention

[0012] Hereinafter, an embodiment of the robot cooperation system 1 according to the present invention will be described with reference to the drawings. The robot cooperation system 1 of the present invention shown below is realized by processes, means, and functions executed by a computer according to instructions of a program (software). The program sends commands to each component of the computer and can perform predetermined processes (including operations of the software robot of the present invention) and functions according to the present invention shown below. That is, each process, means, and function in the present invention is realized by a specific means in which the program and the computer cooperate. Note that all or part of the program is provided by, for example, a magnetic disk, an optical disk, a semiconductor memory, or any other computer-readable recording medium, and the program read from the recording medium is installed and executed on the computer. Also, the program can be directly loaded and executed on the computer through a communication line without passing through the recording medium.

[0013] Figure 1 is a schematic diagram of the robot collaboration system 1 of the present invention. Figure 2 is a functional block diagram of the robot collaboration system 1. Robot collaboration system 1 is equipped with multiple software robots (RPA robots) capable of performing operations on information processing devices, and coordinates the actions of these multiple software robots. Specifically, as shown in Figures 1 and 2, there is an office robot 10 that can operate the office RPA terminal 11 and a production robot 20 that can operate the production RPA terminal 21, and the operations of these multiple software robots are coordinated. Robot collaboration system 1 consists of two systems as its basic configuration: the work RPA system 100 and the production RPA system 200, and is also configured in conjunction with the conventional system 1a (Figure 1).

[0014] Conventional system 1a consists of an office system 800 equipped with an office terminal 81 installed in the office, a task management tool 500 and a messaging tool 300 that can be used from the office terminal 81, and a production system 900 equipped with a production terminal 91 installed in the production terminal room and a production server 70 that can only be accessed from the production terminal 91. The office system 800 and the production system 900 are offline, and the office terminal 81 and the production terminal 91 are offline. In other words, the work terminal 81 (third device) and the production terminal 91 (fourth device) are both set up in an offline state. Task management tool 500 is an application that enables progress reporting and management from the start to the end of a project, including program design, development, and release. It can be used online from the work terminal 81, and can also be used online by operating the work RPA terminal 11. Messaging tools 300, such as email and chat, can be used on the work terminal 81, as well as through the work RPA terminal 11. The mail server 310 is a device that mediates the sending and receiving of emails. Mail bridge (office area) 320 and mail bridge (production area) 330 are responsible for tasks such as relaying messages between chat and the mail server, and decrypting encrypted messages. The chat monitoring tool 390 monitors the sending of chats from the work terminal 81 and forwards the sent chats to the mail bridge (work area) 320. Access gateway 430 is an authentication device. Specifically, the access gateway 430 determines whether the authentication information entered from the production terminal 91 or the production RPA terminal 21 is correct, and if it is correct, it determines that authentication has been obtained and grants access rights to the production server 70.

[0015] In addition, the file transfer system 400 is a system that enables online transfer of files between the office and the production room, and is configured with a file server (office) 410 and a file server (production terminal room) 420 connected to each other. In the file import / export system 400, the file server (office) 410 is accessible from the office RPA terminal 11, and the file server (production terminal room) 420 is accessible from the production RPA terminal 21. The work RPA terminal 11 can store the data it has stored on the file server (office) 410 via file transfer. The file import / export system 400 allows data stored on the file server (office) 410 to be transferred to the file server (production terminal room) 420. The production RPA terminal 21 is configured to retrieve data transferred from the file server (office) 410 to the file server (production terminal room) 420 via file transfer, in response to the input of authentication information. For the sake of clarity, Figure 2 omits the notations for the mail server 310, mail bridge (office area) 320, mail bridge (production area) 330, and chat monitoring tool 390. These functions will be explained in more detail in Figure 5 and other references.

[0016] Office RPA System 100 is a system that corresponds to Office System 800, and Production RPA System 200 is a system that corresponds to Production System 900. The work RPA system 100 comprises a work RPA management device 110 and a work RPA terminal 11 that corresponds to a work terminal 81. The production RPA system 200 comprises a production RPA management device 210 and a production RPA terminal 21 that corresponds to the production terminal 91. Furthermore, the installation environment for the Office System 800 and Office RPA System 100 will be referred to as the "Office Area," while the installation environment for the Production System 900 and Production RPA System 200 will be referred to as the "Production Area."

[0017] Figure 3 shows the hardware configuration diagram of the work RPA management device 110 and the production RPA management device 210. As shown in Figure 3, the office RPA management device 110 and the production RPA management device 210 are composed of hardware including a CPU 501, RAM 502, ROM 503, HDD / SSD 504, input device 505, display device (display) 506, and communication IF 507. These components are connected by a system bus, and data is exchanged via the system bus. The CPU (Central Processing Unit) 501, also called the central processing unit, is the central processing part of the computer, controlling each device and performing calculations and processing of data. The RAM (Random Access Memory) 502 is a type of memory device that allows data to be erased and rewritten. The ROM (Read Only Memory) 503 is a type of memory device using semiconductors, etc., where data can only be written once during manufacturing, and only recorded data can be read during use. The HDD (Hard Disk Drive) / SSD (Solid State Drive) 504 is an auxiliary storage device that uses the properties of magnetic material to record and read information. The input device 505 is used by the user to give operation instructions to the computer or to input characters, etc., and specifically consists of a keyboard, mouse, etc. The display device 506 consists of, for example, a liquid crystal display. Each device in this system may be equipped with a device that has a touch panel function in which the input device 505 and the display device 506 are integrated. It may also be equipped with a communication function (communication IF 507) that enables communication with other terminals or information processing devices, etc. The communication IF (Interface) is a device for communicating with other devices according to a predetermined communication standard, and includes, for example, a NIC (Network Interface Card). The administrative RPA terminal 11 and the production RPA terminal 21 have the same hardware configuration as shown in Figure 3. However, the input device 505 of the work RPA terminal 11 and the production RPA terminal 21 is used by a software robot to issue operation instructions to the computer. In addition, the file servers 410, 420, access gateway 430, mail server 310, mail bridge (office area) 320, mail bridge (production area) 330, and chat monitoring tool 390 may also have a hardware configuration similar to that shown in Figure 3.

[0018] As shown in Figures 1 to 3, the office RPA management device 110 is a server that provides RPA services to the office RPA terminals 11 via the office area LAN. The work RPA terminal 11 is a VDI (Virtual Desktop Infrastructure) terminal located in a VDI environment, and the RPA program stored in the work RPA management device 110 functions as a work robot 10, enabling the automatic execution of various operations on the work RPA terminal 11. The production RPA management device 210 is a server that provides RPA services to the production RPA terminal 21 via the production area's LAN. The production RPA terminal 21 is a VDI terminal located in a VDI environment, and the RPA program stored in the production RPA management device 210 functions as the production robot 20, enabling the automatic execution of various operations on the production RPA terminal 21. The administrative RPA terminal 11 and the production RPA terminal 21 may be either VDI terminals or non-VDI terminals.

[0019] As shown in Figure 2, the office RPA management device 110 comprises a first storage means 120 and a first control means 130, while the production RPA management device 210 comprises a second storage means 220 and a second control means 230.

[0020] The first storage means 120 and the second storage means 220 are storage means of the present invention, and store information indicating the operation content to be performed by the software robot (operation information) in a storage means such as an HDD / SSD 504. In this embodiment, the first storage means 120 of the work RPA management device 110 stores in advance operation information (hereinafter also referred to as "work operation information") to be operated by the work robot 10, and the second storage means 220 of the production RPA management device 210 stores in advance operation information (hereinafter also referred to as "production operation information") to be operated by the production robot 20.

[0021] Operation information consists of information that can identify the operator and the content of the operation. "Operating entity" refers to information indicating the software robot that performs the operation, and specifically, this includes the "robot name" of the work robot 10 and the production robot 20. "Operation details" is information that indicates the content of the operation to be performed by the "operating entity". For example, if the task robot b is used to "save specific web information," the "robot name" would be "task robot b," and the information indicating the "operation details" would include information showing the specific operation method for saving information that can access the specific web or information displayed on the specific web. Operation information can be automatically registered when a human actually performs the "operation details". For example, when a specific website is displayed on the desktop, specifying a designated area with the mouse will acquire the URL of the website, the location information of the designated area on the desktop, etc., and automatically store this information as operation information along with the operation procedure (e.g., access the URL → move the mouse to the designated area → right-click to specify the area → copy → save to the designated location). In this embodiment, operation information associated with the robot name "work robot b" ​​and the operation content "save specific web information" is stored in the first storage means 120, and operation information associated with the robot name "production robot c" and the operation content "save operation history of production RPA terminal" is stored in the second storage means 220.

[0022] Figure 4 is a diagram illustrating an example of operation information related to a process involving multiple operators. Specifically, Figure 4 shows the operation information related to the process of "releasing the release item to the production server" through the cooperation of the work robot 10 and the production robot 20. More specifically, this process involves a first step in the office area to "store the release item (script) in the file server (office)," which, through the functionality of the file import / export system 400, transfers the data stored in the file server (office) 410 to the file server (production terminal room) 420. Next, a second step is performed in the production area to "retrieve the release item from the file server (production terminal room), obtain authentication at the access gateway, and then release it on the production server." Finally, a third step is performed in the office area to "record work results using the task management tool and send a work completion notification." In this case, as shown in Figure 4, for each "robot name" that is the operating entity, information indicating the "arguments" and the "operation details" for executing the first to third processes described above is linked and stored. The operation corresponding to argument "a1" is operation information for executing the first process, the operation corresponding to argument "b1" is operation information for executing the second process, and the operation corresponding to argument "a2" is operation information for executing the third process. In detail, the first process includes various information and operating procedures for obtaining release items managed by the task management tool 500 on the office RPA terminal 11, and various information and operating procedures for storing the obtained release items on the file server (office). The linkage message includes the robot name and arguments. However, in Figure 4, these detailed details are omitted for convenience, and only the essential points are shown. The same applies to the second and third processes. Of the operation information shown in Figure 4, the operation information corresponding to arguments "a1" and "a2" (work operation information) is stored in the first storage means 120 of the work RPA management device 110, and the operation information corresponding to argument "b1" (production operation information) is stored in the second storage means 220 of the production RPA management device 210.

[0023] The first control means 130 causes the work robot 10 (first software robot) to operate the work RPA terminal 11 (first device) based on the operation information (work operation information) stored in the first storage means 120. The second control means 230 causes the production robot 20 (second software robot) to operate the production RPA terminal 21 (first device) based on the operation information (production operation information) stored in the second storage means 220. The work RPA terminal 11 is an information processing device that corresponds to the work terminal 81 and can handle some or all of the processing performed by the work terminal 81. The production RPA terminal 21 is an information processing device that corresponds to the production terminal 91 and can handle some or all of the processing performed by the production terminal 91. Therefore, the first control means 130 enables the work robot 10 (first software robot) to operate the work RPA terminal 11 (first device) and execute processes that can be performed on the work terminal 81 (third device). Furthermore, the second control means 230 enables the production robot 20 (second software robot) to operate the production RPA terminal 21 (second device) and execute processes that can be run on the production terminal 91 (third device).

[0024] The first control means 130 includes a transmission control means 131, a reception control means 132, and an operation control means 133, as configurations related to robot cooperation. The second control means 230 includes a transmission control means 231, a reception control means 232, and an operation control means 233, as configurations related to robot cooperation. The transmission control means 131 causes the work robot 10 (first software robot) to operate the work RPA terminal 11 (first device) and sends a predetermined message (coordination message) to the production robot 20. The receiving control means 232 receives messages (coordination messages) sent to the production robot 20 (second software robot). In addition, the receiving control means 232 can detect when a message has been sent to the production robot 20. The transmission control means 231 and the reception control means 132 can perform similar control operations (sending and receiving coordination messages). For example, the transmission control means 231 can cause the production robot 20 to operate the production RPA terminal 21 to send a coordination message to the work robot 10, and the reception control means 132 can receive the coordination message sent to the work robot 10 or detect that it has been sent. Communication messages between the work robot 10 and the production robot 20 can be sent and received, for example, via email. In addition to collaborative messages, messages instructing the start of processing (specific messages) can also be sent via email or chat, for example.

[0025] The mechanisms for sending and receiving such specific messages and linked messages using email and chat will be explained with reference to Figures 5 and 6. Figure 5(a) is an explanatory diagram showing the case when the work terminal 81 sends a specific message via email. Of these, the lower part of Figure 5(a) shows the case where the work terminal 81 sends a specific message to the work robot 10 via email. For example, to have "work robot b" ​​"save specific web information," a specific message containing the robot name "work robot b" ​​is sent via email from the work terminal 81, as shown in the lower part of Figure 5(a). Emails sent to the work robot 10 are first stored in the mail server 310, and then received by the mail bridge (work area) 320. The mail bridge (office area) 320 triggers the API of the office RPA management device 110, which then forwards the email to the office RPA management device 110. When the RPA management device 110 receives an email, it activates the work robot 10 based on the specific message contained therein. The specific message contains the robot name "Office Robot b," and this information is used as a key to activate (kick up) "Office Robot b." Then, the work RPA management device 110 causes the work robot b to operate the work RPA terminal 11 based on a specific message. The first storage means 120 stores the robot name "work robot b" ​​and operation information for performing "save specific web information" in association with each other, so that "save specific web information" can be performed by operating work robot b.

[0026] The upper part of Figure 5(a) shows the case where the work terminal 81 sends a specific message via email to the production robot 20. For example, to have "production robot c" "save the operation history of the production RPA terminal," a specific message is sent via email from the work terminal 81 to production robot c, as shown in the upper part of Figure 5(a). The specific message will include the robot name, "Production Robot C". Emails sent to the production robot 20 are first stored in the mail server 310, and then received by the mail bridge (production section) 330. The mail bridge (production partition) 330 triggers the API of the production RPA management device 210, which then passes the email to the production RPA management device 210. When the production RPA management device 210 receives an email, it activates the production robot 20 based on the specific message in that email. The specific message contains the robot name "production robot c," and this information is used as a key to activate (kick) "production robot c." Then, the production RPA management device 210 instructs the production robot c to operate the production RPA terminal 21 based on a specific message. The second storage means 220 stores the robot name "production robot c" and operation information for executing "save operation history of production RPA terminal" in association with each other. Therefore, "save operation history of production RPA terminal" can be executed by operating production robot c. In this way, by sending a specific message via email from the work terminal 81 to the work robot 10, the work robot 10 can be made to operate the work RPA terminal 11 based on that specific message, and by sending a specific message via email from the work terminal 81 to the production robot 20, the production robot 20 can be made to operate the production RPA terminal 21 based on that specific message.

[0027] Figure 5(b) is an explanatory diagram showing how the work terminal 81 sends a specific message via chat. Of these, the lower part of Figure 5(b) shows the case where the work terminal 81 sends a specific message via chat to the work robot 10, and the upper part of Figure 5(b) shows the case where the work terminal 81 sends a specific message via chat to the production robot 20. In this case, the user accesses a specific group in the chat tool from the work terminal 81 and sends a specific message in the chat while in that access state. Since a "group" is a tool that allows only pre-registered members to chat, only specific members who are pre-registered in a "specific group" can send specific messages in the chat. The robot's name will be included in specific messages. Chat messages are monitored by chat monitoring tool 390. When the chat monitoring tool 390 detects that a chat has been sent, it forwards the chat to the mail bridge (office area) 320. Mailbridge (office area) 320 determines whether a chat message is addressed to office robot 10 or production robot 20 based on the robot name. If the determination indicates that the chat is addressed to the work robot 10, the mail bridge (work area) 320 hands over the chat to the work RPA management device 110. As a result, the work RPA management device 110 activates a predetermined work robot 10 based on a specific message received in the chat, and allows the work robot 10 to operate the work RPA terminal 11 (see Figure 5(b), bottom). On the other hand, if the determination determines that the chat is addressed to the production robot 20, the mail bridge (office area) 320 passes the chat to the mail bridge (production area) 330, and the mail bridge (production area) 330 passes the specific message of the chat to the production RPA management device 210. As a result, the production RPA management device 210 activates a predetermined production robot 20 based on a specific message in the received chat, and causes the production robot 20 to operate the production RPA terminal 21 (see upper part of Figure 5(b)). In this way, by sending a specific message via chat from the work terminal 81 to the work robot 10, the work robot 10 can be made to operate the work RPA terminal 11 based on that specific message. Similarly, by sending a specific message via chat from the work terminal 81 to the production robot 20, the production robot 20 can be made to operate the production RPA terminal 21 based on that specific message.

[0028] The coordinated operation between the work robot 10 and the production robot 20 based on the communication messages will be explained with reference to Figure 6. As an example, we will explain the case where "release items are released on the production server" through the cooperation of the work robot 10 and the production robot 20. In this case, the worker first sends a specific message to the work robot 10 from the work terminal 81 via email or chat (see the lower parts of Figures 5(a) and (b)). The specific message will include the robot name "Office Robot a" and the argument "a1". The RPA management device 110 activates work robot a based on a specific message and causes work robot a to perform the operation corresponding to the argument "a1". As shown in Figure 4, the argument "a1" stores information corresponding to the operation "store the release item in the file server (office), and then send a coordination message to the production robot." Therefore, the work robot a performs the operation on the work RPA terminal 11 to "store the release item in the file server (office) and then send a coordination message to the production robot." Specifically, the work robot a performs operations such as storing the release items obtained via the task management tool 500 in the file server (office) 410, and then sending a coordination message containing the robot name "production robot b" ​​and the argument "b1" to production robot b.

[0029] Figure 6(a) is an explanatory diagram showing how to send a communication message via email from the work robot 10 to the production robot 20. As shown in Figure 6(a), when a communication message is sent via email from the work robot 10 to the production robot 20, the email is temporarily stored in the mail server 310 and then passed on to the mail bridge (production section) 330. The mail bridge (production partition) 330 triggers the API of the production RPA management device 210, which then passes the email to the production RPA management device 210. When the production RPA management device 210 receives an email, it activates the production robot 20 based on the linked message. The communication message contains the robot name "production robot b," and this information is used as a key to activate (kick up) "production robot b." Furthermore, since the linkage message contains the argument "b1", this information is used as a key to refer to the operation information (Figure 4), and the production robot b is instructed to execute the operation corresponding to the argument "b1" on the production RPA terminal 21. As a result, production robot b performs the following operations on production RPA terminal 21: "Retrieve release items from the file server (production terminal room), release the release items on the production server, and then send a coordination message to the work robot." Specifically, the production robot b performs operations such as retrieving release items from the file server (production terminal room) 420 on the production RPA terminal 21, obtaining authentication at the access gateway 430 by entering authentication information, and releasing the release items on the production server 70. This will execute the process of "releasing the release item to the production server." In other words, the operation control means 233 can cause the production robot 20 (second software robot) to operate the production RPA terminal 21 (second device) and execute predetermined processing based on the received coordination message. Furthermore, the production robot b performs operations such as creating a collaboration message by entering the robot name "work robot a" and the argument "a2" on the production RPA terminal 21, and sending the collaboration message to work robot 10 via email.

[0030] Figure 6(b) is an explanatory diagram showing how to send a communication message via email from the production robot 20 to the work robot 10. As shown in Figure 6(b), when a communication message is sent via email from the production robot 20 to the work robot 10, the email is temporarily stored in the mail server 310 and then passed on to the mail bridge (work area) 320. The mail bridge (office area) 320 triggers the API of the office RPA management device 110, which then forwards the email to the office RPA management device 110. When the RPA management device 110 receives an email, it activates the work robot 10 based on the linked message. The communication message contains the robot name "Office Robot A," and this information is used as a key to activate (kick up) "Office Robot A." Furthermore, since the linkage message contains the argument "a2", this information is used as a key to refer to the operation information (Figure 4), and the work robot a is instructed to execute the operation corresponding to the argument "a2" on the work RPA terminal 11. As a result, the work robot a performs the operation "record work performance and notify completion of work in the task management tool" on the work RPA terminal 11. In other words, the operation control means 133 can cause the work robot 10 (first software robot) to operate the work RPA terminal 11 (first device) and execute predetermined processing based on the received coordination message.

[0031] As described above, the work robot 10 and the production robot 20 are linked by a coordinated message containing packaged operation information, thereby enabling the sequential execution of operations and processes across multiple offline sections. In other words, the robot collaboration system 1 of the present invention includes storage means 120, 220 for storing operation information (information indicating operation content corresponding to robot name and arguments) of software robots (work robot 10, production robot 20), a first control means 130 for causing the first software robot (work robot 10) to operate the first device (work RPA terminal 11) based on the operation information, and a second control means 230 for causing the second software robot (production robot 20) to operate the second device (production RPA terminal 21) based on the operation information, wherein the first control means 130 causes the first software robot (work robot 10) to operate the first device (work RPA terminal 11 The second control means 230 includes a transmission control means 131 that causes the second software robot (production robot 20) to operate the second device (production RPA terminal 21) and send a predetermined message (a coordination message containing the robot name and arguments), and a reception control means 232 that causes the second software robot (production robot 20) to operate the second device (production RPA terminal 21) and receive the message (coordination message), and an operation control means 233 that causes the second software robot (production robot 20) to operate the second device (production RPA terminal 21) and execute a predetermined process (an operation corresponding to the robot name and arguments described in the coordination message; for example, releasing a script) based on the message (coordination message). This allows the actions of multiple software robots to be coordinated based on the sending and receiving of messages, further reducing the human workload and improving operational efficiency.

[0032] In particular, a third device (work terminal 81) corresponding to the first device (work RPA terminal 11) and a fourth device (production terminal 91) corresponding to the second device (production RPA terminal 21) are provided in an offline state. The first control means 130 can cause the first software robot (work robot 10) to operate the first device (work RPA terminal 11) and execute processes that can be executed on the third device (work terminal 81), and the second control means 230 can cause the second software robot (production robot 20) to operate the second device (production RPA terminal 21) and execute processes that can be executed on the fourth device (production terminal 91). Therefore, in an environment where the office system 800 and the production system 900 are offline, it is necessary to separate the software robots for office use and production use. However, if it is desired to link the work in the office system 800 with the work in the production system 900, the operation of the office robot 10 and the production robot 20 can be coordinated, eliminating the need for workers to travel back and forth between the office and the production terminal room, and allowing post-processing to be performed automatically.

[0033] Furthermore, robot collaboration is not limited to the process of "releasing a release item to the production server," but can be applied to various processes that require the collaboration of multiple software robots. In addition to what is shown in Figure 5, for example, the production robot 20 can be made to operate the production RPA terminal 21 by sending a specific message from the production terminal 91 to the production robot 20, or the work robot 10 can be made to operate the work RPA terminal 11 by sending a specific message from the production terminal 91 to the work robot 10.

[0034] (Recording function) Figure 7 is a functional block diagram of the robot collaboration system 1, an example of an application. As shown in Figure 7, in the application example robot collaboration system 1, the work RPA management device 110 is equipped with an operation image storage means 140, and the production RPA management device 210 is equipped with an operation image storage means 240. The operation image storage means 140 stores the operation images from the start to the end of the operation when the operation of the work robot 10 (software robot) is performed based on the operation images displayed on the display means (display device). The operation image storage means 240 stores the operation images from the start to the end of the operation when the operation of the production robot 20 (software robot) is performed based on the operation images displayed on the display means (display device). "Display means (display device)" refers to, for example, the display 506 of a personal computer that is an office RPA terminal 11 or a production RPA terminal 21. The "operation image" is an image of the desktop screen displayed on the personal computer's display 506. It is preferable to store the operation images in association with information indicating the recording date and time, process name, operator, and operation details. Therefore, if an error occurs or performance deteriorates, it is easy to check the operation history in order to investigate the cause.

[0035] (Encryption / decryption function) The robot collaboration system 1 can encrypt and send specific messages and collaboration messages, and can decrypt and retrieve these received messages. For example, as shown in the lower part of Figure 5(a), when a specific message is sent via email from the work terminal 81 to the work robot 10, the specific message is encrypted. Here, the office terminal 81 stores an encryption program (hereinafter referred to as the encryption tool) capable of encrypting the body of an email (message) using a public key, and this encryption program can be used by operating the office terminal 81. Therefore, the work terminal 81 encrypts the email (specific message) and sends it to the work robot 10.

[0036] Figure 8(a) shows the operation screen of the encryption tool displayed on the work terminal 81. In the diagram, the upper frame represents plaintext, and as an example, this plaintext includes the robot name "work robot a" and the parameter "a1". The dashed box in the lower part of Figure 8(a) shows the ciphertext, which is the plaintext encrypted with the public key after the encryption button is pressed. The encryption tool allows you to manually or automatically copy (copy and paste) the encrypted text into the email body. Figure 8(b) shows that the encrypted text shown in Figure 8(a) has been copied (copied and pasted) into the body of the email. The "Recipient" is an email address that can be received by the work robot 10, and the email body will contain an "encrypted message". This allows the worker to send an email containing a specific message (encrypted text) to the work robot 10 by pressing the "Send" button. The work RPA management device 110 retrieves emails sent to the work robot 10 via the mail bridge (work area) 320. The mail bridge (work area) 320 decrypts the email body using a secret key before handing the email over to the work RPA management device 110 (Figure 5(a), lower section).

[0037] As shown in the upper part of Figure 5(a), when a specific message is sent from the work terminal 81 to the production robot 20 via email, the specific message can also be encrypted / decrypted. In this case, the specific message is decrypted on mail bridge (production partition) 330.

[0038] Furthermore, as shown in Figure 5(b), when sending a specific message via chat from the work terminal 81 to the work robot 10 or the production robot 20, the specific message can also be encrypted / decrypted. In this case, the chat tool will automatically encrypt specific messages. The chat monitoring tool 390 monitors the sending of chats and forwards the sent chats to the mail bridge (office area) 320. The mail bridge (office area) 320 decrypts a specific message if it is addressed to the office robot 10, and then passes the decrypted message to the office RPA management device 110. On the other hand, if the mail bridge (office area) 320 is addressed to the production robot 20, it passes the specific message to the mail bridge (production area) 330, which decodes the message and passes it to the production RPA management device 210.

[0039] As shown in Figure 7, the robot collaboration system 1 includes an encryption means 301 in the work RPA terminal 11 and an encryption / decryption means 302 in the mail bridge (production area) 330. The encryption means 301 encrypts the message (cooperative message) transmitted by the transmission control means 131, and the encryption / decryption means 302 decrypts the received encrypted message (cooperative message) using a secret key and re-encrypts it. Specifically, as shown in Figure 6(a), when the work robot 10 operates the work RPA terminal 11 to send a coordination message to the production robot 20, the work robot 10 sends the coordination message, which has been encrypted using the encryption tool (encryption means 301) provided in the work RPA terminal 11, to the mail bridge (work area) 320 via HTTP (HyperText Transfer Protocol). The mail bridge (office area) 320 uses encryption / decryption means 312 to decrypt the received communication message, convert the content into an email, re-encrypt the email, and then send it to the mail bridge (production area) 330. Upon receiving the email, the mail bridge (production partition) 330 uses an encryption / decryption means 302 to decrypt the email (cooperation message) and, depending on its content, passes the cooperation message to the production RPA management device 210. As a result, the production RPA management device 210 can instruct the production robot 20 (second software robot) to operate the production RPA terminal 21 (second device) based on the decoded coordination message, and for example, release the script S on the production server 70.

[0040] As shown in Figure 7, the robot collaboration system 1 includes an encryption means 311 in the production RPA terminal 21 and an encryption / decryption means 312 in the mail bridge (office area) 320. The encryption means 311 encrypts the message (cooperative message) transmitted by the transmission control means 231, and the encryption / decryption means 312 decrypts the received encrypted message (cooperative message) using a secret key and re-encrypts it. Specifically, as shown in Figure 6(b), when the production robot 20 operates the production RPA terminal 21 to send a coordination message to the work robot 10, the production robot 20 sends the coordination message, which has been encrypted using the encryption tool (encryption means 311) provided on the production RPA terminal 21, to the mail bridge (production area) 330 via HTTP. The mail bridge (production area) 330 uses encryption / decryption means 302 to decrypt the received communication message, convert the content into an email, re-encrypt the email, and then send it to the mail bridge (office area) 320. Upon receiving the email, the mail bridge (office area) 320 uses an encryption / decryption means 312 to decrypt the email (cooperative message) and, depending on its content, passes the cooperative message to the office RPA management device 110. As a result, the work RPA management device 110 can instruct the work robot 10 to operate the work RPA terminal 11 based on the decoded collaboration message, and for example, record work performance in the task management tool 500 or send a work completion notification.

[0041] Thus, in the robot collaboration system 1, specific messages and collaboration messages can be encrypted and decrypted before being transmitted, thus preventing unauthorized interception or alteration of these messages by others during the transmission and reception process.

[0042] (Robot collaboration method) This section explains how to coordinate robots. Figure 9 is a flowchart showing the robot collaboration method. As an example, we will explain the case where a script S acquired on the work terminal 81 is released on the production server 70. The work operation information is pre-stored in the work RPA management device 110, and the production operation information is pre-stored in the production RPA management device.

[0043] As shown in Figure 9, the worker obtains the release item (script S) via the task management tool 500 using the work terminal 81 (S1). From this point forward, the progress of various processes related to the release project will be managed using the Task Management Tool 500. Next, the worker applies for permission to bring the release item into the production area and access it by operating the work terminal 81 (S2). Once the production access approver (e.g., supervisor) approves the submission and access (S3), the result is notified to the worker's work terminal 81.

[0044] Next, the work terminal 81 sends a specific message to the work robot 10 to issue a release instruction, either through an operation by the worker or upon receiving an approval notification (S4). The specific message includes the robot name of the work robot 10 and its arguments (for example, "a1"). The work RPA management device 110 starts the work robot 10 based on the robot name specified in the specific message (S5). Next, the work robot 10 performs the following operations based on the operation information (Figure 4) corresponding to the argument (e.g., "a1") contained in the specific message. The work robot 10 performs operations to transfer the release item to the production terminal room. Specifically, the work robot 10 performs the operation of storing the release item (script S) in the file server (office) 410 of the file import / export system 400 (S6). The file import / export system 400 allows data (release items) stored on the file server (office) 410 to be transferred to the file server (production terminal room) 420. Next, the work robot 10 performs the operation to send a communication message (S7). The communication message includes the robot name of production robot 20 and its arguments (for example, "b1"). This switches the operating entity from the work robot 10 to the production robot 20.

[0045] The production robot 20 performs the following operations based on the operation information (Figure 4) corresponding to the argument (e.g., "b1") included in the communication message. The production robot 20 performs the operation to acquire the release property (S8). Specifically, the production robot 20 performs an operation on the production RPA terminal 21 to retrieve the release item (script S) from the file server (production terminal room) 420. Next, the production robot 20 performs the operation to obtain authentication at the access gateway 430 (S9). Specifically, the production robot 20 performs the operation of entering authentication information. Next, the production robot 20 performs the operation to release on the production server 70 (S10). Specifically, the production robot 20 performs an operation on the production RPA terminal 21 to release the acquired release item (script S) to the production server 70. Next, the production robot 20 performs the operation to send a communication message (S11). The communication message includes the robot name and arguments (for example, "a2") of the work robot 10. This switches the primary operator from the production robot 20 to the work robot 10.

[0046] The work robot 10 performs the following operations based on the operation information (Figure 4) corresponding to the argument (e.g., "a2") included in the communication message. The work robot 10 performs an operation to record work performance (S12). Specifically, the work robot 10 performs an operation to record work performance in the task management tool 500. Next, the work robot 10 sends a notification that the task is complete (S13). Specifically, the work robot 10 performs the operation to notify the completion of a task in the task management tool 500. As a result, the task management tool 500 sends a work completion notification to the worker by linking with a messaging tool 300, such as a chat, and the worker receives the work completion notification via the work terminal 81 (S14). Then, the worker confirms the work results based on the work completion notification received (S15).

[0047] As described above, according to the robot collaboration system 1, robot collaboration method, and program of the present invention, by coordinating multiple software robots, workers can have almost all operations, including post-processing, performed by the software robots without having to go back and forth between the office and the production room.

[0048] In contrast, conventional systems 1a that do not use software robots could not achieve the effects of the present invention. For example, in the conventional system 1a, the worker had to save the release item (script S) to a USB memory stick at the work terminal 81, move to the production terminal room with the USB memory stick, insert the USB memory stick into the production terminal 91, obtain authentication from the access gateway 430, and then perform the release. Furthermore, in the conventional system 1a, after the worker finished releasing script S in the production terminal room, they had to move to the office and submit a post-work report, such as work performance and completion notification. Furthermore, while some degree of operational efficiency can be achieved by simply using software robots, tasks such as moving between the office and the production terminal room, and submitting post-operation reports, still needed to be handled by human workers. In contrast, the robot collaboration system 1 of the present invention eliminates the need to store release items on a USB memory stick or travel to the production terminal room. By simply sending a specific message from the work terminal 81 at one's desk, release items can be released on the target production server 70. Furthermore, post-release reporting can be automatically performed without requiring travel between the production terminal room and the office. Therefore, the robot collaboration system 1, robot collaboration method, and program of the present invention can solve the problems that need to be improved in the conventional system 1a.

[0049] Although the present invention has been described above with reference to preferred embodiments, it goes without saying that the present invention is not limited to the embodiments described above, and various modifications can be made within the scope of the present invention. For example, there can be one or more work RPA terminals 11, and there can also be one or more work robots 10. Furthermore, the production RPA terminal 21 can be one unit or two or more units, and the production robot 20 can be one unit or two or more units. The system doesn't have to be limited to the Office System 800 or the Production System 900; any system that links software robots compatible with two or more systems is acceptable. [Industrial applicability]

[0050] The present invention is suitably applicable to businesses that have areas with predetermined access restrictions, such as production terminals and production servers, for example, businesses that develop, release, operate, and manage customer systems. [Explanation of Symbols]

[0051] 1: Robot collaboration system, 1a: Conventional system, 10: Work robot, 20: Production robot, 11: Work RPA terminal, 21: Production RPA terminal, 100: Work RPA system, 110: Work RPA management device, 120: First storage means, 130: First control means, 131: Transmission control means, 132: Reception control means, 133: Operation control means, 140: Operation image storage means, 200: Production RPA system, 210: Production RPA management device, 220: Second storage means, 230: Second control means, 231: Transmission control means, 232: Reception control means, 233: Operation control means, 240: Operation image storage means, 300: Message tool, 301, 31 1: Encryption method, 302, 312: Encryption / decryption method, 310: Mail server, 320: Mail bridge (office area), 330: Mail bridge (production area), 400: File import / export system, 410: File server (office), 420: File server (production terminal room), 430: Access gateway, 500: Task management tool, 501: CPU, 502: RAM, 503: ROM, 504: HDD / SSD, 505: Input device, 506: Display device (display), 507: Communication interface, 70: Production server, 800: Office system, 81: Office terminal, 900: Production system, 91: Production terminal, S: Script

Claims

1. In a robot collaboration system equipped with multiple software robots capable of operating predetermined devices, A storage means for storing the operation information of the software robot, A first control means that causes the first software robot to operate the first device based on the aforementioned operation information, The system includes a second control means for causing a second software robot to operate a second device based on the aforementioned operation information, The first control means is, The system includes a transmission control means that causes the first software robot to operate the first device and transmit a predetermined message, The second control means is, A receiving control means that causes the second software robot to operate the second device to receive the message, The system includes an operation control means that causes the second software robot to operate the second device and execute a predetermined process based on the message, A third device corresponding to the first device and a fourth device corresponding to the second device are provided in an offline state. The first control means is, It is possible to have the first software robot operate the first device and execute a process that can be performed by the third device, The second control means is, It is possible to have the second software robot operate the second device and perform processing that can be executed by the fourth device. A robot collaboration system characterized by the following features.

2. An encryption means for encrypting the message transmitted by the transmission control means, The system comprises a decryption means for decrypting the encrypted message received by the receiving control means, The aforementioned operation control means is The second software robot is made to operate the second device, causing the second device to perform a predetermined process based on the message decoded by the decoding means. The robot collaboration system according to feature 1.

3. The transmission control means is It is possible to have the aforementioned message sent via email. The receiving control means is It is possible to receive the aforementioned message via email. The robot collaboration system according to claim 1 or 2, characterized by the above.

4. If the operation of the software robot is performed based on operation images displayed on the display means, the software robot is provided with operation image storage means for storing operation images from the start to the end of the operation. A robot collaboration system according to any one of claims 1 to 3.

5. In a robot cooperation method using multiple software robots capable of operating a predetermined device, The steps include storing the operation information of the software robot, The steps include: causing the first software robot to operate the first device based on the aforementioned operation information and sending a predetermined message; The steps include: causing the second software robot to operate the second device based on the aforementioned operation information to receive the message; The process includes the step of causing the second software robot to operate the second device based on the operation information and to execute a predetermined process based on the message, A third device corresponding to the first device and a fourth device corresponding to the second device are provided in an offline state. The first software robot is made to operate the first device and perform processing that can be executed by the third device. The second software robot is made to operate the second device and execute processing that can be performed by the fourth device. A robot cooperation method characterized by the following.

6. A computer comprising multiple software robots capable of operating a predetermined device, which coordinates these multiple software robots, A storage means for storing the operation information of the aforementioned software robot, A first control means that causes the first software robot to operate the first device based on the aforementioned operation information, It functions as a second control means that causes the second software robot to operate the second device based on the aforementioned operation information. The first control means is, The system includes a transmission control means that causes the first software robot to operate the first device and transmit a predetermined message, The second control means is, A receiving control means that causes the second software robot to operate the second device to receive the message, The system includes an operation control means that causes the second software robot to operate the second device and execute a predetermined process based on the message, A third device corresponding to the first device and a fourth device corresponding to the second device are provided in an offline state. The first control means is, It is possible to have the first software robot operate the first device and execute a process that can be performed by the third device, The second control means is, It is possible to have the second software robot operate the second device and perform processing that can be executed by the fourth device. A program characterized by the following features.

Citation Information

Patent Citations

  • Software robot definition information generation system, software robot definition information generation method, and program

    JP2019169044A

  • RPA device, RPA system and program

    JP2020003905A

  • Software robot control method, software robot control device and program

    JP2020155019A