Robot system and control method for robot system

The robot system addresses sensor abnormalities by reproducing the operating environment using a virtual space model, allowing it to maintain operations even when sensors fail, ensuring reliable performance.

JP2025105178APending Publication Date: 2025-07-10KAWASAKI JUKOGYO KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023223543
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-12-28
Publication Date
2025-07-10

AI Technical Summary

Technical Problem

Existing robot systems face difficulties in continuing operations when sensor abnormalities occur, making autonomous movement challenging.

Method used

A robot system equipped with sensors, a virtual space model, and processing circuits that allow the system to reproduce the operating environment using sensor information when abnormalities are detected, enabling continued operation by utilizing the virtual space model.

Benefits of technology

Enables the robot system to continue operations by simulating the environment and compensating for sensor failures, ensuring reliable and uninterrupted performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025105178000001_ABST
    Figure 2025105178000001_ABST
Patent Text Reader

Abstract

To provide a robot system and the like that enable a robot to continue an operation when an abnormality occurs in a sensor of the robot.SOLUTION: A robot system comprises: a robot that is provided with a sensor; a first memory that stores a virtual space model for reproducing the robot and a surrounding environment; a first processing circuit that changes the state of the virtual space model; a second processing circuit that controls the robot while using detection results of the sensor; a third processing circuit that collects and accumulates the detection results of the sensor as sensor information; and a fourth processing circuit that detects an abnormality of the sensor. If an abnormality is detected, the first processing circuit applies the sensor information to the virtual space model to reproduce the operating environment of the robot in the virtual space model. The second processing circuit causes the robot to continue operating while using information acquired from the virtual space model in which the operating environment has been reproduced.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a robot system and a method for controlling the robot system.

Background Art

[0002] Patent Document 1 discloses an autonomous mobile device. The control device of the autonomous mobile device controls the moving means of the autonomous mobile device based on the ambient environmental information and map information acquired by sensors.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] In Patent Document 1, when an abnormality occurs in the sensor, it becomes difficult for the autonomous mobile device to move autonomously.

[0005] An object of the present disclosure is to provide a robot system and a method for controlling the robot system that enable the operation of the robot to continue when an abnormality occurs in the robot sensor.

Means for Solving the Problems

[0006] A robot system according to one aspect of the present disclosure includes a robot equipped with sensors, a first storage device that stores a virtual space model including a virtual robot model and a virtual surrounding environment model that reproduce the robot and the surrounding environment of the robot, a first processing circuit that changes the state of the virtual space model, a second processing circuit that controls the robot according to an operation program while using the detection results of the sensors, a third processing circuit that collects and accumulates the detection results of the sensors as sensor information in the process of the robot operating according to the operation program, and a fourth processing circuit that monitors the sensors and detects abnormalities in signals sent from the sensors. When an abnormality is detected by the fourth processing circuit, the first processing circuit applies the sensor information accumulated by the third processing circuit to the virtual space model to reproduce the operating environment of the robot in the virtual space model, and the second processing circuit continues to operate the robot while using information obtained from the virtual space model in which the operating environment of the robot is reproduced.

Brief Description of the Drawings

[0007]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Embodiments for Carrying Out the Invention

[0008] Hereinafter, exemplary embodiments of the present disclosure will be described with reference to the drawings. The embodiments described below are all illustrative of comprehensive or specific examples. Among the components in the following embodiments, components not described in the independent claims indicating the highest-level concept are described as optional components. Each figure in the accompanying drawings is a schematic diagram and is not necessarily drawn precisely. In each figure, substantially the same components are denoted by the same reference numerals, and redundant descriptions may be omitted or simplified. In this specification and the claims, the "apparatus" may mean not only one apparatus but also a system including a plurality of apparatuses. Hereinafter, a robot will be exemplified as a mechanical apparatus that operates based on an operation program.

[0009] Referring to FIGS. 1 and 2, a robot system 100 according to an exemplary embodiment will be described. FIG. 1 is a diagram showing an example of a robot system 100 according to an exemplary embodiment. FIG. 2 is a diagram showing one second server 20, one first processing terminal 30, one robot 40, and one second processing terminal 60 extracted from the robot system 100 of FIG. 1. The robot system 100 includes a first server 10, a second server 20, a first processing terminal 30, and a robot 40. The first server 10 is communicably connected to the second server 20 via a first communication network NA. The first server 10 may be communicably connected to the first processing terminal 30 via the first communication network NA. The second server 20 is communicably connected to the first processing terminal 30 via the first communication network NA.

[0010] There are a plurality of robot operation areas A, and in each of the plurality of robot operation areas A, one or more first processing terminals 30 and one or more robots 40 are arranged. The robot operation area A is an area where one or more robots 40 provide services or perform work. Examples of the robot operation area A include an area set within a building or facility, and an area set based on a map.

[0011] The first processing terminal 30 controls the operation of the robot 40. The first processing terminal 30 may control one robot 40 or two or more robots 40. The first processing terminal 30 may be mounted on the robot 40, or may be arranged at a position away from the robot 40 and connected to the robot 40 via wired communication, wireless communication, or a combination thereof. The first processing terminal 30 may be communicably connected to the robot 40 via a communication network. Any wired communication, wireless communication, and communication network may be used.

[0012] The first processing terminal 30 is configured to autonomously cause the robot 40 to perform a predetermined task according to a predetermined computer program. That is, the first processing terminal 30 is configured to cause the robot 40 to perform autonomous operation. The robot 40 operates according to a command generated by the first processing terminal 30 using a predetermined computer program. The first processing terminal 30 may be configured to cause the robot 40 to operate according to a manual operation manually input by an operator to an operating device arranged away from the robot 40 in order to cause the robot 40 to perform an intended operation. That is, the first processing terminal 30 may be configured to cause the robot 40 to perform manual operation. In the present embodiment, the first processing terminal 30 can cause the robot 40 to perform autonomous operation.

[0013] The robot 40 may be, for example, a robot having a structure suitable for any application such as work, handling, transportation, caregiving, medical treatment, cleaning, security, guidance, rescue, cooking, and product offering in a factory or a warehouse. The robot 40 may have a structure that is used in a fixed state, a structure that moves when an external force is applied, or a structure provided with a moving means for autonomous movement. Examples of the moving means may include wheels, crawlers, propulsion rotors, flight rotors, jet propulsion devices, and movable legs. The robot 40 may include one or more articulated robot arms. The robot 40 may include one or more articulated robot legs. The robot 40 may have a form such as an industrial robot, a humanoid robot, or an animal-shaped robot.

[0014] There are a plurality of operating area groups AG. The second server 20 is arranged in each of the operating area groups AG. The operating area group AG is set for a specific area including a plurality of robot operating areas A. The second server 20 manages all the robot operating areas A within the operating area group AG associated with the second server 20. The second server 20 is communicably connected to a plurality of first processing terminals 30 within the plurality of robot operating areas A to be managed via a second communication network NB.

[0015] The second server 20 may be communicably connected to a second processing terminal 60 operated by a user who manages the robot operating areas A to be managed via a second communication network NB. The above user may be a user who manages the robot 40 and the first processing terminal 30 in one or more robot operating areas A. The second server 20 is also called an edge server.

[0016] The second server 20 includes a processing circuit 20a and has the functions of a computer. The processing circuit 20a includes a processor and a memory. The second server 20 includes storage within or separately from the processing circuit 20a. The memory and the storage are collectively referred to as a storage device 20b. The processing circuit 20a may have the functions of a first processing circuit and a third processing circuit, and further may have the functions of a fourth processing circuit. The storage device 20b may have the functions of a first storage device and a second storage device.

[0017] The processor executes functions, methods, or combinations thereof realized by code or instructions included in a program stored in storage. Examples of the processor may include a central processing unit (CPU), a micro processing unit (MPU), a graphics processing unit (GPU), a microprocessor, a processor core, a multiprocessor, an application-specific integrated circuit (ASIC), and a field programmable gate array (FPGA), etc. The processor may realize each process of the present disclosure by a logic circuit formed in an integrated circuit (IC (Integrated Circuit) chip, large scale integration (LSI)), or a dedicated circuit. These circuits may be realized by one or more integrated circuits. A plurality of processes may be realized by one integrated circuit.

[0018] The memory temporarily stores a program loaded from storage and provides a working area for the processor. Various data generated while the processor is executing the program are also temporarily stored in the memory. Examples of the memory include semiconductor memories such as random access memory (RAM) and read only memory (ROM).

[0019] The storage stores programs and various data. Examples of the storage include a hard disk drive (HDD), a solid state drive (SSD), and flash memory.

[0020] For example, the storage stores information on a plurality of robot operation areas A. Each of the robot operation areas A is a robot operation area A under the management of the second server 20 and is registered in the second server 20. The storage stores information on the first processing terminal 30 and the robot 40 arranged in each of the plurality of robot operation areas A in association with the robot operation area A including the first processing terminal 30 and the robot 40. Each of the first processing terminal 30 and the robot 40 is the first processing terminal 30 and the robot 40 arranged in each of the robot operation areas A registered in the second server 20 and is registered in the second server 20.

[0021] The storage may store information on the second processing terminal 60 in association with the robot operation area A related to the second processing terminal 60. The second processing terminal 60 is the second processing terminal 60 of the user who manages the robot operation area A registered in the second server 20 and is registered in the second server 20. The second server 20 may be communicably connected to the first processing terminal 30 and the second processing terminal 60 registered in the second server 20 via the second communication network NB.

[0022] The storage stores a virtual space model VAM that forms a virtual space of the robot operation area A and a virtual space program that operates the virtual space model VAM. For example, the virtual space model VAM may be a 3DCG (3 Dimensional Computer Graphics) model. The virtual space model VAM is a model that faithfully reproduces the real-world robot operation area A and includes virtual components corresponding to various components included in the real-world robot operation area A. For example, when information or data on real components obtained from the real-world robot operation area A is applied to the virtual space model VAM, the virtual components corresponding to the real components in the virtual space model VAM can be made to behave in the same manner as the real components.

[0023] By executing the virtual space program, the processing circuit 20a can apply various information and data to the virtual space model VAM, add and delete components to the virtual space model VAM, and operate on the components within the virtual space model VAM. The virtual space model VAM includes a virtual robot model of the robot 40 within the robot operation area A and a peripheral environment model of elements other than the robot 40. In the present embodiment, the virtual space model VAM is a virtual space model formed by faithfully reproducing the robot operation area A using digital twin technology for each of the robot operation areas A registered in the second server 20.

[0024] The virtual space model VAM may be generated by the processing circuit 20a or acquired by the processing circuit 20a from outside the second server 20. The update of the virtual space model VAM by making changes to the virtual space model VAM may be performed by the processing circuit 20a or by an external entity outside the second server 20. The processing circuit 20a may be configured to receive the updated virtual space model VAM from outside the second server 20.

[0025] The storage may store a language model LM, which is a machine learning model that takes image data as input data and outputs text data indicating the state represented by the image data. In the present embodiment, the language model LM is a large language model (LLM: Large Language Models). The language model LM may be generated by the processing circuit 20a or acquired by the processing circuit 20a from outside the second server 20. The machine learning of the language model LM may be performed by the processing circuit 20a or by an external entity outside the second server 20. The processing circuit 20a may be configured to receive the language model LM after machine learning from outside the second server 20.

[0026] The storage stores various robot programs RP for autonomously executing tasks by the robot 40. The robot programs RP are generated for each task corresponding to various tasks. The robot programs RP can be generated corresponding to various robots 40 within the robot operation area A registered in the second server 20. When robots 40 with different structures perform the same task, the robot programs RP may be the same or different. The robot programs RP generated for each task corresponding to various robots 40 are stored in the storage.

[0027] Examples of the second communication network NB may include a LAN (Local Area Network), local 5G, or other access networks. The communication distance between the second server 20 and the first processing terminal 30 via the second communication network NB is extremely smaller than the communication distance between the first server 10 and the first processing terminal 30 via the first communication network NA, and the communication distance between the first server 10 and the second server 20 via the first communication network NA. That is, the communication distance via the second communication network NB is extremely smaller than the communication distance via the first communication network NA. Therefore, communication via the second communication network NB enables high-speed transmission and reception of a large amount of data.

[0028] The first server 10 is communicably connected to a plurality of second servers 20 via the first communication network NA. The first server 10 is also called a cloud server. The first server 10 may be communicably connected to a plurality of first processing terminals 30 via the first communication network NA. The first server 10 may be communicably connected to a plurality of second processing terminals 60 via the first communication network NA.

[0029] The first server 10 includes a processing circuit 10a and has the functions of a computer. The processing circuit 10a includes a processor and a memory. The first server 10 includes a storage within or separate from the processing circuit 10a. The memory and the storage are collectively referred to as a storage device 10b.

[0030] Examples of the processor, memory, and storage of the first server 10 are the same as those of the processor, memory, and storage of the second server 20. The functions of the processor, memory, and storage of the first server 10 are the same as those of the processor, memory, and storage of the second server 20.

[0031] The storage of the first server 10 stores user information regarding the users of the first processing terminal 30 and the second processing terminal 60. The storage targets of the user information are the first processing terminal 30 and the second processing terminal 60 related to all robot operation areas A managed by all the second servers 20 connected to the first server 10. That is, the storage targets of the user information are all of the first processing terminal 30 and the second processing terminal 60 registered in all the second servers 20. The user information may include one or more of a user ID which is the identification information of the user, a login password to the system with the user ID, information of the first processing terminal 30 registered for the user ID, information of the robot 40 controlled by the first processing terminal 30, information of the second processing terminal 60 registered for the user ID, and information of the robot operation area A registered for the user ID.

[0032] The storage of the first server 10 stores area information regarding the robot operation area A. The robot operation area A to be stored is all the robot operation areas A managed by all the second servers 20 connected to the first server 10. The area information of each robot operation area A may include one or more of information of the second server 20 that manages the robot operation area A, information of the first processing terminal 30 arranged in the robot operation area A, information of the second processing terminal 60 arranged in the robot operation area A, and information of the robot 40 arranged in the robot operation area A.

[0033] The storage of the first server 10 stores information on the program type of the robot program RP. The information on the program type is information representing the type of the robot program RP classified according to one or more of the content of the task executed by the robot program RP and the information on the robot 40 capable of executing the robot program RP. For example, the program type can be represented as the type of the task of transporting an object by a bipedal robot, the type of the bipedal robot, or the type of the task of transporting an object, etc.

[0034] The first communication network NA is a network that communicates with an area wider than the second communication network NB. Examples of the first communication network NA include open networks such as the Internet and Internet VPN (Virtual Private Network), closed networks such as IP-VPN (Internet Protocol Virtual Private Network) and dedicated lines, or combinations thereof.

[0035] The first processing terminal 30 includes a processing circuit 30a and has the functions of a computer. The processing circuit 30a includes a processor and a memory. The first processing terminal 30 may include storage within or separately from the processing circuit 30a. The memory and the storage are collectively referred to as a storage device 30b. The processing circuit 30a may have the functions of a second processing circuit and further may have the functions of a fourth processing circuit.

[0036] Examples of the processor, memory, and storage of the first processing terminal 30 are the same as those of the processor, memory, and storage of the second server 20. The functions of the processor, memory, and storage of the first processing terminal 30 are the same as those of the processor, memory, and storage of the second server 20.

[0037] Examples of the first processing terminal 30 may include an electronic circuit board, an electronic control unit, a microcomputer, a desktop computer, a laptop computer, and a smart device such as a tablet. The first processing terminal 30 may be a processing terminal dedicated to the robot system 100, a processing terminal dedicated to the robot 40, a processing terminal dedicated to a system other than the robot system 100 such as a system used in the robot operation area A, or a general-purpose processing terminal. For example, the first processing terminal 30 may be a robot controller or a part thereof as a processing terminal dedicated to the robot 40. The first processing terminal 30 is communicably connected to the robot 40 via wired communication, wireless communication, or a combination thereof. The first processing terminal 30 may be arranged away from the robot 40 or may be mounted on the robot 40.

[0038] The first processing terminal 30 is communicably connected to the second communication network NB via wired communication, wireless communication, or a combination thereof, and is communicably connected to the second server 20 via the second communication network NB. The first processing terminal 30 may be communicably connected to the first communication network NA via wired communication, wireless communication, or a combination thereof, and may be communicably connected to the first server 10 via the first communication network NA. Any wired communication and wireless communication may be used. The first processing terminal 30 may be connected to either the first communication network NA or the second communication network NB via one or more of a regional IP network, a mobile phone network such as 4G or 5G, a private network, a wired LAN, and a wireless LAN such as wireless WiFi.

[0039] The memory 30b stores an operating system program OS1 for operating the first processing terminal 30 and an application program AP1 (hereinafter also referred to as "app AP1") that operates on the operating system program OS1. The operating system program OS1 may be either a program dedicated to the robot system 100 or a program not dedicated to the robot system 100. The app AP1 is a program dedicated to the robot system 100. The app AP1 may be constructed as an operating system program and incorporated into the first processing terminal 30.

[0040] The app AP1 is incorporated into the first processing terminal 30 by being installed. The app AP1 has a function of generating a command for operating on the robot 40 connected to the first processing terminal 30. The app AP1 functions using the robot program RP. The processing circuit 30a takes in the robot program RP sent from the second server 20 and executes the robot program RP on the app AP1.

[0041] The robot program RP includes operation commands that command various target operations to be executed by the robot 40 in the process of executing the tasks defined in the robot program RP in the order of execution. For example, the operation command may include commands for the target positions and target postures of each part of the robot 40. The processing circuit 30a generates drive commands that command the target operations of the drive part of the robot 40 in the order of execution in order to sequentially cause the robot 40 to execute operations according to the operation commands of the robot program RP, and transmits them to the robot 40. The drive command is a command corresponding to the structure of the robot 40 and may include, for example, commands for the target operations of the joints included in the robot 40.

[0042] The processing circuit 30a acquires from the robot 40 the operation results of the drive part of the robot 40 and the detection results of the sensors provided in the robot 40, and transmits the operation results as log data and the detection results as sensor data to the second server 20. Further, the processing circuit 30a may transmit the execution result of the robot program RP to the second server 20 as log data and sensor data in association with the operation results and the detection results.

[0043] For example, the processing circuit 30a may acquire the operation results and the detection results at predetermined time intervals. Examples of the operation results of the drive part may include the output value or current value of the drive device that drives the drive part, and the detection value of the sensor that detects the driving amount of the drive part. Examples of the sensors provided in the robot 40 may include a camera, an acceleration sensor, a gyro sensor, a position sensor, a speed sensor, a distance measuring sensor, a tactile sensor, a force sensor, a force-tactile sensor, a vibration sensor, and a temperature sensor.

[0044] The first processing terminal 30 may include an input device 31 that receives an input from a user or the like. Examples of the input device 31 may include a button, a lever, a dial, a joystick, a mouse, a key, a touch panel, a microphone, and a motion capture. For example, the input device 31 receives a command requesting a task for the robot 40 from a user or the like, and outputs the command to the processing circuit 30a. The processing circuit 30a may be configured to send the content of the commanded task to the first server 10 via the first communication network NA. The content of the task may include, as task elements, a task subject, a task type, a task object, and a task target to be achieved by the task.

[0045] For example, the task subject is the robot that executes the task. The task type corresponds to the type of operation to be executed by the robot 40, such as a transport operation and an assembly operation. The task object is the object on which the robot 40 acts by the task. The task target corresponds to the target state of the object to be reached by the execution of the task.

[0046] The input device 31 may receive the input of task elements by selection by the user's hand or voice or by language input. The processing circuit 30a may transmit the information of the selected task element or the string data representing the input language to the first server 10. The processing circuit 30a may transmit either or both of the identification information of the first processing terminal 30 and the information of the robot 40 for executing the task to the first server 10 together with the above information or data.

[0047] The processing circuit 10a of the first server 10 determines the program type to be executed by the robot 40 using the information received from the first processing terminal 30, and transmits the information of the determined program type, etc. to the second server 20 in which the first processing terminal 30 is registered. The processing circuit 20a of the second server 20 extracts the robot program RP corresponding to the program type from the storage 20b and transmits it to the first processing terminal 30. The processing circuit 30a of the first processing terminal 30 operates the robot 40 according to the received robot program RP.

[0048] The second processing terminal 60 includes a processing circuit 60a and has the functions of a computer. The processing circuit 60a includes a processor and a memory. The second processing terminal 60 may include a storage either in or separate from the processing circuit 60a. The memory and the storage are collectively referred to as a storage 60b.

[0049] Examples of the processor, memory, and storage of the second processing terminal 60 are the same as those of the processor, memory, and storage of the second server 20. The functions of the processor, memory, and storage of the second processing terminal 60 are the same as those of the processor, memory, and storage of the second server 20.

[0050] Examples of the second processing terminal 60 may include smart devices such as smartphones, smartwatches, and tablets, desktop computers, and laptop computers. The second processing terminal 60 may be a processing terminal dedicated to the robot system 100, a processing terminal dedicated to the robot 40, a processing terminal dedicated to a system other than the robot system 100 such as a system used in the robot operation area A, or a general-purpose processing terminal. For example, the second processing terminal 60 may be a processing terminal owned by a user as a general-purpose processing terminal. The second processing terminal 60 is arranged away from the robot 40.

[0051] The second processing terminal 60 is communicably connected to the first communication network NA via wired communication, wireless communication, or a combination thereof, and is communicably connected to the first server 10 via the first communication network NA. The second processing terminal 60 may be communicably connected to the second communication network NB via wired communication, wireless communication, or a combination thereof, and may be communicably connected to the second server 20 via the second communication network NB. Any wired communication and wireless communication may be used. The second processing terminal 60 may be connected to either the first communication network NA or the second communication network NB via one or more of a local IP network, a mobile phone network such as 4G or 5G, a private network, and a wireless LAN.

[0052] The second processing terminal 60 is communicably connected to the first processing terminal 30 via wired communication, wireless communication, or a combination thereof. The second processing terminal 60 may be configured to be communicably connected to one first processing terminal 30, or may be configured to be communicably connected to two or more first processing terminals 30.

[0053] The second processing terminal 60 includes an input device 61 that receives inputs from a user or the like. Examples of the input device 61 can include buttons, levers, dials, joysticks, mice, keys, touch panels, microphones, and motion capture. For example, the input device 61 receives a command from a user or the like to request a task from the robot 40 and outputs the command to the processing circuit 60a. The processing circuit 60a sends the content of the commanded task to the first server 10 via the first communication network NA. The content of the task can include the task subject, task type, task object, and task goal as task elements.

[0054] The input device 61 may receive the input of the task elements by selection by the user's hand or voice or language input. The processing circuit 60a may send the information of the selected task elements or the character string data representing the input language to the first server 10. The processing circuit 60a may send either or both of the identification information of the second processing terminal 60 and the information of the robot 40 that executes the task to the first server 10 together with the above information or data.

[0055] The processing circuit 10a of the first server 10 determines the program type to be executed by the robot 40 using the information received from the second processing terminal 60, and sends the information of the determined program type and the like to the second server 20 where the robot 40 is registered. The processing circuit 20a of the second server 20 extracts the robot program RP corresponding to the information of the program type from the storage device 20b and sends it to the first processing terminal 30. The processing circuit 30a of the first processing terminal 30 operates the robot 40 according to the received robot program RP.

[0056] The memory 60b stores an operation system program OS2 for operating the second processing terminal 60 and an application program AP2 (hereinafter also referred to as "app AP2") that operates on the operation system program OS2. The operation system program OS2 may be either a program dedicated to the robot system 100 or a program not dedicated to the robot system 100. The app AP2 is a program dedicated to the robot system 100. The app AP2 may be constructed as an operation system program and incorporated into the second processing terminal 60.

[0057] The app AP2 is incorporated into the second processing terminal 60 by being installed. The app AP2 has a function of mutually transmitting and receiving commands, information, and data with the first server 10 and the first processing terminal 30. The app AP2 may have a function of mutually transmitting and receiving commands, information, and data with the second server 20. The app AP2 has a function of receiving the task subject, task type, task object, and task target, which are task elements of the task to be executed by the robot 40, and transmitting the information of the received task elements to the first server 10. The app AP2 may have a function of transmitting to the first processing terminal 30 a command for causing the robot 40 to execute an operation not based on the robot program RP, such as starting, stopping, emergency stopping, and moving to the standby position of the robot 40.

[0058] The second processing terminal 60 may be configured to access a website constructed for the robot system 100. The second processing terminal 60 may be configured to mutually transmit and receive commands, information, and data with the first server 10 via the website. The second processing terminal 60 may receive an input of task elements of the task to be executed by the robot 40 on the website, and the first server 10 may be configured to receive the information of the task elements via the website. In this case, the app AP2 may not be incorporated into the second processing terminal 60.

[0059] Referring to FIG. 3, an example of the operation of the robot system 100 will be described. FIG. 3 is a flowchart showing an example of the operation of the robot system 100 according to the embodiment.

[0060] In step S101, the user in the robot operation area A1 inputs a command to cause the robot 40A to execute the task TA to the second processing terminal 60. Although not limited, in this example, the robot operation area A1 is one of the robot operation areas A and is a store that provides food and drink to users. The user is a service provider in the store. The robot 40A is one of the robots 40 existing in the robot operation area A1. The task TA is to cause the robot 40A to carry a container filled with a beverage from the providing location to the table. The task elements of the task TA include the task subject TA1, which is the robot 40A, the task type TA2, which includes the object receiving operation, the transportation operation, and the serving operation, the task object TA3, which is a container filled with a beverage, and the task target TA4, which includes the starting position, the providing location, and the target position, the table.

[0061] In step S102, the second processing terminal 60 transmits the input command and the user information including the user ID and the like to the first server 10. The user ID can be set for the robot operation area A1, the second processing terminal 60, the robot 40A, or the first processing terminal 30A that controls the robot 40A. The first processing terminal 30A is one of the first processing terminals 30.

[0062] In step S103, the first server 10 authenticates the user using the received user ID and the like. If the first server 10 can authenticate the user, based on the received command, the user information stored in the storage 10b, it identifies the first processing terminal 30A that controls the robot 40A, the model of the robot 40A, and the robot operation area A1 where the robot 40A is arranged. Furthermore, the first server 10 identifies the second server 20A that manages the robot operation area A1 based on the area information stored in the storage 10b. The second server 20A is one of the second servers 20. If the first server 10 cannot authenticate the user, it ends a series of processes.

[0063] Furthermore, the first server 10 determines the program type of the robot program RP to be executed by the robot 40A based on the information on the program type of the robot program RP stored in the storage 10b. That is, the first server 10 determines the program type to be executed by the robot 40A, the first processing terminal 30A that executes the robot program RP, and determines the second server 20A that is the transmission destination of this information.

[0064] In step S104, the first server 10 transmits a command to cause the first processing terminal 30A to execute the robot program RP to the second server 20A together with the information on the program type of the robot program RPA, the information on the first processing terminal 30A, and the information including the task object TA3 and the task target TA4.

[0065] In step S105, the second server 20A extracts a robot program RPA that matches the program type and is executable by the robot 40A from the robot programs RP stored in the storage 20b. Furthermore, the second server 20A sets the task object and the task target included in the robot program RPA to the task object TA3 and the task target TA4. That is, the second server 20A sets task elements for the robot program RPA.

[0066] In step S106, the second server 20A transmits the robot program RPA in which the task target TA3 and the task target TA4 are set to the first processing terminal 30A designated by the first server 10.

[0067] In step S107, the first processing terminal 30A sequentially generates drive commands by executing the robot program RPA in which the task target TA3 and the task target TA4 are set, and outputs them to the robot 40A. For example, the first processing terminal 30A generates drive commands at points where the direction or speed of the movement of the robot 40A changes on the movement trajectory of the robot 40A, and at points at a predetermined interval on the trajectory. The predetermined interval may be a time interval or a distance interval. The robot 40A sequentially performs the task TA according to the task elements included in the task TA by operating according to the drive commands.

[0068] In step S108, every time the robot 40A operates according to the drive command, the first processing terminal 30A acquires, from the robot 40A, the operation result of the drive part of the robot 40A and the detection result of the sensor provided in the robot 40A as log data and sensor data, and transmits them to the second server 20. The second server 20 accumulates the received log data and sensor data in the storage 20b.

[0069] In step S109, when the first processing terminal 30A determines that the robot program RPA has ended (Yes in step S109), it ends the series of processes. The first processing terminal 30A may transmit information on the completion of the task TA to the second processing terminal 60. When the first processing terminal 30A determines that the robot program RPA is being executed (No in step S109), it returns to step S107.

[0070] In this way, even if the first processing terminal 30 does not have a robot program RP capable of executing a requested task, it can cause the robot 40 to execute the task by acquiring the robot program RP from the second server 20. Since the second communication network NB connecting the first processing terminal 30 and the second server 20 can transmit and receive a large amount of data at high speed, it is possible to reduce the communication delay of a large amount of data such as the robot program RP. Since the management of information related to the user and the processing using the information are performed by the first server 10, confidentiality can be ensured. Since the processing amount at the first server 10 and the amount of data transmitted and received to and from the first server 10 are small, the communication delay can be reduced.

[0071] Also, in the present embodiment, the robot 40 includes one or more sensors 41. The sensor 41 may include an internal sensor that detects the inside of the robot 40 and an external sensor that detects information on the surrounding environment of the robot 40. Examples of the internal sensor may include a rotation sensor such as an encoder that detects the amount of rotation of a joint of the robot 40, a position sensor, a speed sensor, an acceleration sensor, and a gyro sensor. Examples of the external sensor may include a force sensor, a tactile sensor, a force-tactile sensor, a position sensor, a distance measuring sensor, a vibration sensor, a temperature sensor, and a vision sensor. Examples of the distance measuring sensor may include a sensor that measures the distance to an object using light waves, a laser, or ultrasonic waves. Examples of a sensor using a laser may include LiDAR (lidar). Examples of the vision sensor may include a monocular camera and a stereo camera.

[0072] The processing circuit 30a of the first processing terminal 30 performs feedforward control or feedback control using the detection result of the sensor 41 in the operation control of the robot 40 according to the robot program RP. When an abnormality occurs in the sensor 41 during the operation of the robot 40 according to the robot program RP, the processing circuit 30a uses the virtual sensor model 41M included in the virtual space model VAM stored in the storage 20b of the second server 20 to continue the operation control of the robot 40 according to the robot program RP.

[0073] The detection of an abnormality in the sensor 41 is performed by the first processing terminal 30, the second server 20, or both of them. When the first processing terminal 30 detects an abnormality in the sensor 41, it transmits the detection result to the second server 20. For example, the processing circuits 30a of the first processing terminal 30 and 20a of the second server 20 may detect an abnormality in the sensor 41 by threshold-based detection, statistical abnormality detection, machine learning-based detection, detection by time series analysis, detection using the virtual space model VAM, or a combination of two or more of these.

[0074] In threshold-based detection, the processing circuits 20a and 30a determine that there is an abnormality when the detection data from the sensor 41 exceeds a specific threshold or is below the threshold.

[0075] In statistical abnormality detection, the processing circuits 20a and 30a utilize the statistical characteristics of the detection data from the sensor 41. Examples of statistical characteristics may include the mean and variance, etc. The processing circuits 20a and 30a determine that there is an abnormality when the detection data deviates significantly from its statistical characteristics.

[0076] In machine learning-based detection, the processing circuits 20a and 30a construct or utilize a machine learning model that machine-learns past normal data to detect abnormal data. Machine learning algorithms such as abnormality detection, clustering, or classification may be used in the machine learning model.

[0077] In time series analysis, the processing circuits 20a and 30a utilize the pattern in which the detection data from the sensor 41 changes over time and determine an abnormality based on this pattern. Time series analysis techniques such as the ARIMA (Autoregressive Integrated Moving Average) model and the RNN (Recurrent Neural Network) model may be used for pattern detection.

[0078] The detection using the virtual space model VAM may be performed by the second server 20. The processing circuit 20a uses the virtual space model VAM to simulate the behaviors of the robot 40 and the sensor 41. Further, the processing circuit 20a determines the presence or absence of an abnormality by comparing the actual data regarding the robot 40 or the sensor 41 with the virtual data regarding the robot 40 or the sensor 41 obtained by the simulation.

[0079] For example, the processing circuit 20a may determine the presence or absence of an abnormality by comparing the detection data of the sensor 41 with the detection data of the virtual sensor model 41M. In this case, the processing circuit 20a causes the robot model 40M of the virtual space model VAM to execute the robot program RP in parallel with the execution of the robot program RP by the robot 40. In this execution process, the processing circuit 20a acquires the actual detection data, which is the detection data of the sensor 41, and the virtual detection data, which is the data detected by the sensor model 41M in the virtual space model VAM, at a predetermined time interval. The processing circuit 20a detects the difference between the actual detection data and the virtual detection data acquired at the same progress stage of the robot program RP. The processing circuit 20a may determine that an abnormality has occurred in the sensor 41 when the difference is equal to or greater than the threshold value.

[0080] The processing circuit 20a may detect the difference between the behavior of the robot 40 and the behavior of the robot model 40M at the same progress stage of the robot program RP in the execution process of the robot program RP by the robot model 40M in parallel with the execution of the robot program RP by the robot 40. The processing circuit 20a may determine that an abnormality has occurred in the sensor 41 when the difference is equal to or greater than the threshold value.

[0081] For example, the processing circuit 20a may detect a difference in behavior by comparing the position and orientation of the robot 40 acquired from the robot 40 with the position and orientation of the robot model 40M acquired from the robot model 40M. The processing circuit 20a may detect a difference in behavior by comparing the position and orientation of the robot 40 detected from the actual detection data with the position and orientation of the robot model 40M detected from the virtual detection data. The processing circuit 20a may detect a difference in behavior by comparing the image of the camera included in the robot 40 with the image of the virtual camera included in the robot model 40M.

[0082] During the execution process of the robot program RP by the robot model 40M in parallel with the execution of the robot program RP by the robot 40, the processing circuit 20a may update the detection data of the sensor model 41M at regular intervals by applying the actual detection data of the sensor 41 to the sensor model 41M. The processing circuit 20a operates the robot model 40M according to the robot program RP using the updated detection data of the sensor model 41M. Thereafter, during the period until the detection data of the sensor model 41M is updated, the processing circuit 20a may operate the robot model 40M according to the robot program RP using the virtual detection data of the sensor model 41M.

[0083] In the above operation process, the processing circuit 20a acquires virtual detection data from the sensor model 41M. The processing circuit 20a may detect a difference between the actual detection data and the virtual detection data acquired at the same progress stage of the robot program RP. When the difference is equal to or greater than a threshold value, the processing circuit 20a may determine that an abnormality has occurred in the sensor 41.

[0084] In the above operation process, the processing circuit 20a may detect a difference in behavior between the robot 40 and the robot model 40M at the same progress stage of the robot program RP. When the difference is equal to or greater than a threshold value, the processing circuit 20a may determine that an abnormality has occurred in the sensor 41. The processing circuit 20a may detect the difference in behavior in the same manner as described above.

[0085] Referring to FIG. 4, the operation of the robot system 100 according to the embodiment when an abnormality occurs in the sensor 41 will be described. FIG. 4 is a flowchart showing an example of the operation of the robot system 100 according to the embodiment when an abnormality occurs in the sensor 41. FIG. 4 shows an example in which the first processing terminal 30 detects an abnormality in the external sensor as the sensor 41.

[0086] In step S201, in the process of autonomously causing the robot 40 to execute a task according to the robot program RP, the first processing terminal 30 acquires the detection result of the external sensor 41 from the robot 40 as sensor data at a predetermined timing and stores it in the storage 30b. For example, the first processing terminal 30 acquires sensor data at a predetermined time interval.

[0087] In step S202, the first processing terminal 30 determines whether there is an abnormality in the external sensor 41 of the robot 40. If the first processing terminal 30 determines that there is an abnormality (Yes in step S202), it proceeds to step S203, and if it determines that there is no abnormality (No in step S202), it proceeds to step S204. The first processing terminal 30 determines the presence or absence of an abnormality using the sensor data. The first processing terminal 30 may execute step S202 at a predetermined time interval.

[0088] In step S204, the first processing terminal 30 transmits the sensor data and the progress of the robot program RP at the time of acquiring the sensor data to the second server 20, and the second server 20 stores the sensor data and the progress of the robot program RP in the storage 20b.

[0089] In step S205, the second server 20 updates the environmental information of the virtual space model VAM stored in the storage 20b based on the sensor data and the progress of the robot program RP. The environmental information is the information around the robot model 40M in the virtual space model VAM, and is also the information of the operating environment of the robot model 40M. The sensor data is the information of the operating environment of the robot 40.

[0090] Specifically, the second server 20 applies the robot program RP with the above progress degree to the virtual robot model 40M in the virtual space model VAM, and applies sensor data to the virtual sensor model 41M included in the robot model 40M. For example, the second server 20 applies the sensor data of the external sensor 41 to the sensor model 41M corresponding to the external sensor 41. Thereby, the detection result obtained by the external sensor 41 of the robot 40 can be reproduced by the detection result of the sensor model 41M. Thereby, the environmental information of the virtual space model VAM is updated, and the operating environment of the robot 40 is reproduced in the virtual space model VAM.

[0091] In step S206, the first processing terminal 30 determines whether the robot program RP has ended. When the first processing terminal 30 determines that the robot program RP has ended (Yes in step S206), it ends a series of processes related to the task, and when it determines that the robot program RP has not ended (No in step S206), it returns to step S201.

[0092] In step S203, the first processing terminal 30 transmits a report of the occurrence of an abnormality in the external sensor 41A and the progress degree of the robot program RP at the time of detecting the abnormality to the second server 20. The external sensor 41A is the sensor in which an abnormality has occurred among the plurality of external sensors 41.

[0093] In step S207, the second server 20 applies the robot program RP with the received progress degree to the virtual space model VAM. Thereby, in the virtual space model VAM, the virtual robot model 40M operates up to the above progress degree according to the robot program RP.

[0094] In step S208, the second server 20 acquires sensor data that is the detection result of the virtual sensor model 41MA corresponding to the external sensor 41A in which an abnormality has been detected during the process in which the robot model 40M operates up to the above progress degree. The second server 20 transmits the sensor data of the sensor model 41MA to the first processing terminal 30.

[0095] In step S209, the first processing terminal 30 causes the robot 40 to operate according to the robot program RP, using the sensor data of the sensor model 41MA instead of the external sensor 41A.

[0096] In step S210, the first processing terminal 30 transmits the progress of the robot program RP in the process of causing the robot 40 to operate to the second server 20.

[0097] In step S211, the second server 20 determines whether the robot program RP has progressed to a predetermined execution stage set in the process of task execution. The predetermined execution stage may be set at an intermediate stage in the process of task execution or at the stage where the task is completed. If the second server 20 determines that the progress has reached the predetermined execution stage (Yes in step S211), it proceeds to step S212. If the second server 20 determines that the progress has not reached the predetermined execution stage (No in step S211), it returns to step S207.

[0098] In step S212, the second server 20 transmits a command to stop the operation of the robot 40 to the first processing terminal 30. The first processing terminal 30 stops the operation of the robot 40 according to the command and ends the series of processes.

[0099] From steps S201 to S212, when an abnormality occurs in the sensor 41A during the autonomous operation of the robot 40, the first processing terminal 30 may not be able to continue the operation of the robot 40. However, the first processing terminal 30 can continue the operation of the robot 40 according to the robot program RP, using the sensor data of the sensor model 41MA included in the virtual space model VAM that changes the environmental information according to the progress of the robot program RP, instead of the sensor data of the sensor 41A.

[0100] Furthermore, the first processing terminal 30 can cause the robot 40 to perform a task up to a predetermined execution stage. For example, as shown in FIG. 5, even if an abnormality occurs in the LiDAR as the sensor 41A while the robot 40 performing the task of transporting an object is crossing the road R, by setting the execution stage to the point P on the other side of the road, the first processing terminal 30 can move the robot 40 to a stable state where it is moved to the point P that does not obstruct traffic to surrounding vehicles V, etc., and then stop the robot 40. FIG. 5 is a diagram showing an example of the operation of the robot 40 when an abnormality occurs in the sensor 41A.

[0101] Step S211 may be performed by the first processing terminal 30.

[0102] Regarding steps S207 to S210, the second server 20 transmits the sensor data of the sensor model 41MA corresponding to the external sensor 41A included in the virtual space model VAM that changes the environmental information according to the progress of the robot program RP to the first processing terminal 30, but is not limited thereto.

[0103] For example, the second server 20 may be configured to further transmit the sensor data of the sensor model 41M corresponding to the normal external sensor 41 included in the virtual space model VAM to the first processing terminal 30. The first processing terminal 30 may continue the operation of the robot 40 according to the robot program RP by integrating and using the sensor data of the sensor model 41M including the sensor model 41MA and the sensor data of the normal external sensor 41. There may be an error between the sensor data of the normal external sensor 41 and the sensor data of the sensor model 41M corresponding to the external sensor 41. The integration process may correct the sensor data of the sensor model 41M including the sensor model 41MA based on such an error.

[0104] For example, the second server 20 may be configured to transmit information of the virtual space model VAM indicating the environmental information immediately before the occurrence of an abnormality in the external sensor 41A to the first processing terminal 30. In the virtual space model VAM, the sensor data of the external sensor 41 immediately before the occurrence of the abnormality is reflected in the sensor data of the sensor model 41MA. For example, when the sensor data of the external sensor 41 indicates the position of an obstacle, the sensor data of the sensor model 41MA indicates a virtual obstacle at the position in the virtual space model VAM corresponding to the position. Such a virtual obstacle is reflected in the virtual space model VAM. The first processing terminal 30 may continue the operation of the robot 40 according to the robot program RP using the virtual space model VAM in which virtual obstacles and the like detected by the sensor model 41MA are reflected as map information. The second server 20 may use map information in addition to or instead of the sensor data of the sensor model 41MA of the virtual space model VAM that changes environmental information according to the progress of the robot program RP.

[0105] For example, after detecting an abnormality, the second server 20 may cause the robot model 40M of the virtual space model VAM in which the operation environment of the robot 40 is reproduced to execute the robot program RP, thereby simulating the operation after the detection of the abnormality, and transmitting the operation result of the simulated robot model 40M to the first processing terminal 30. The operation result may include the log data of the robot model 40M. The first processing terminal 30 may operate the robot 40 according to the operation result. Thereby, the first processing terminal 30 can continue to operate the robot 40 so as to follow the simulated operation of the robot model 40M.

[0106] [Others] As described above, the exemplary embodiments of the present disclosure have been described, but the present disclosure is not limited to the above-described embodiments. That is, various modifications and improvements are possible within the scope of the present disclosure. For example, those obtained by applying various modifications to the embodiments, and forms constructed by combining components in different embodiments are also included within the scope of the present disclosure.

[0107] For example, although the robot system 100 of the embodiment includes the first server 10 and the second server 20, the first server 10 and the second server 20 may be integrated into one server. For example, the second server 20 may be configured to have the functions of the first server 10, or the first server 10 may be configured to have the functions of a plurality of second servers 20.

[0108] Examples of each aspect of the technology of the present disclosure are as follows. The robot system according to the first aspect of the present disclosure includes a robot equipped with sensors, a first storage device that stores a virtual space model including a virtual robot model and a virtual surrounding environment model that reproduce the robot and the surrounding environment of the robot, a first processing circuit that changes the state of the virtual space model, a second processing circuit that controls the robot according to an operation program while using the detection results of the sensors, a third processing circuit that collects and accumulates the detection results of the sensors as sensor information in the process of the robot operating according to the operation program, and a fourth processing circuit that monitors the sensors and detects abnormalities in the signals sent from the sensors. When an abnormality is detected by the fourth processing circuit, the first processing circuit applies the sensor information accumulated by the third processing circuit to the virtual space model to reproduce the operating environment of the robot in the virtual space model, and the second processing circuit continues to operate the robot while using the information obtained from the virtual space model in which the operating environment of the robot is reproduced.

[0109] According to the first aspect described above, when an abnormality in a signal sent from a sensor is detected, the robot system can reproduce the operating environment of the actual robot in a virtual space model using the sensor information acquired until then. The robot system can operate the robot while complementing the sensor in which the abnormality is detected, using the information obtained from the virtual space model in which such an operating environment of the robot is reproduced. Therefore, the robot system enables the continuation of the operation of the robot when an abnormality occurs in the sensors of the robot.

[0110] In the above first aspect, in the robot system according to the second aspect of the present disclosure, while using the detection result of a virtual sensor corresponding to the sensor included in the virtual space model in which the operating environment of the robot is reproduced, the second processing circuit may continue to operate the robot.

[0111] According to the above second aspect, the robot system can operate the robot while complementing the sensor in which an abnormality has been detected by a virtual sensor of a virtual space model in which the operating environment of the robot is reproduced. Therefore, when an abnormality occurs in the sensor of the robot, the robot system enables the reliable continuation of the operation of the robot.

[0112] In the above first or second aspect, in the robot system according to the third aspect of the present disclosure, while using the information acquired from the virtual space model in which the operating environment of the robot is reproduced, the second processing circuit may continue to operate the robot according to the operation program until a predetermined progress stage in the operation program is reached.

[0113] According to the above third aspect, when an abnormality in the signal sent from the sensor is detected, the robot system continues to operate the robot until a predetermined progress stage in the operation program is reached. Thereby, the robot system can shorten the operation process of the robot by using the information acquired from the virtual space model in which the operating environment of the robot is reproduced. Therefore, the robot system can end the operation of the robot using the information acquired from the virtual space model before the error between the information acquired from the virtual space model and the real environment expands.

[0114] In any one of the above first to third aspects, in the robot system according to the fourth aspect of the present disclosure, while using the detection result of a virtual sensor corresponding to the sensor included in the virtual space model in which the operating environment of the robot is reproduced and the virtual space model indicating the state at the time when the abnormality was detected, the second processing circuit may continue to operate the robot.

[0115] According to the fourth aspect described above, when an abnormality is detected, the robot system can accurately operate the robot by using a virtual space model indicating the state at that time and the detection results of virtual sensors of the virtual space model in which the operating environment of the robot is reproduced.

[0116] In any one of the first to fourth aspects described above, in the robot system according to the fifth aspect of the present disclosure, the first processing circuit applies the operation program to the virtual space model in which the operating environment of the robot is reproduced, thereby simulating subsequent operations of the virtual robot model in the virtual space model. The second processing circuit may continuously operate the robot so that the operation of the robot follows the operation of the virtual robot model.

[0117] According to the fifth aspect described above, the robot system can continuously operate the robot by using the simulation result of the operation of the virtual robot model in the virtual space model in which the operating environment of the robot is reproduced.

[0118] In any one of the first to fifth aspects described above, the robot system according to the sixth aspect of the present disclosure includes a server including the first processing circuit, the third processing circuit, and the first storage, and a processing terminal including the second processing circuit and communicably connected to the server via a communication network. The fourth processing circuit is provided in the server or the processing terminal. The server includes a second storage for storing a plurality of the operation programs corresponding to a plurality of tasks. The server transmits the operation program corresponding to the requested task to the processing terminal. The processing terminal uses the received operation program to autonomously execute the requested task for the robot.

[0119] According to the sixth aspect described above, the robot system can cause the robot to execute various operation programs stored in the server via the processing terminal. Thereby, the processing capacity and data capacity required for the processing terminal can be kept low. Further, since the server holds the virtual space model and performs processing related to the virtual space model, the processing capacity and data capacity required for the processing terminal can be kept low.

[0120] The control method of the robot system according to the seventh aspect of the present disclosure includes causing the robot to operate according to an operation program, collecting and storing the detection results of sensors provided in the robot as sensor information in the process of the robot operating according to the operation program, generating a virtual space model including a virtual robot model and a virtual surrounding environment model that reproduce the robot and the surrounding environment of the robot, detecting an abnormality in the signal sent from the sensor, and when an abnormality in the signal sent from the sensor is detected, applying the sensor information to the virtual space model to reproduce the operating environment of the robot in the virtual space model, and continuously operating the robot while using the information obtained from the virtual space model in which the operating environment of the robot is reproduced.

[0121] According to the seventh aspect described above, the same effects as those of the robot system according to each aspect of the present disclosure can be obtained. Part or all of the method of the present disclosure may be realized by, for example, a circuit such as a CPU or LSI, an IC card, or a single module. A plurality of elements included in the method of the present disclosure may be realized by one device or may be shared and realized by two or more devices.

[0122] The present disclosure may be a computer program that causes a computer to execute a method according to each aspect of the present disclosure. Such a computer program can achieve the same effects as the method according to each aspect of the present disclosure. The computer program may be, for example, a program recorded on a non-transitory computer-readable recording medium, and may be configured to be read from the recording medium using a drive device of the recording medium and installed in the computer. The computer program may be, for example, a program that can be distributed via a transmission medium such as the Internet, and may be configured to be downloaded and installed in the computer.

[0123] The functions of the elements disclosed herein can be executed using a circuit or a processing circuit including a general-purpose processor, a dedicated processor, an integrated circuit, an ASIC, a conventional circuit, and / or a combination thereof that is configured or programmed to execute the disclosed functions. Since a processor includes transistors and other circuits, it is regarded as a processing circuit or a circuit. In the present disclosure, a circuit, a unit, or a means is hardware that executes the listed functions, or hardware that is programmed to execute the listed functions. The hardware may be the hardware disclosed herein, or other known hardware that is programmed or configured to execute the listed functions. When the hardware is a processor that is considered a type of circuit, the circuit, the means, or the unit is a combination of hardware and software, and the software is used for the configuration of the hardware and / or the processor.

[0124] The numbers such as ordinal numbers and quantities used in this specification are all exemplified for specifically explaining the technology of the present disclosure, and the present disclosure is not limited to the exemplified numbers. The connection relationships between the components are exemplified for specifically explaining the technology of the present disclosure, and the connection relationships for realizing the functions of the present disclosure are not limited thereto.

[0125] The present disclosure can be implemented in various forms without departing from the scope of its essential features. Since the scope of the present disclosure is defined by the appended claims rather than the description in the specification, exemplary embodiments and modifications are illustrative and not restrictive. All changes within the scope of the claims and their equivalents, or the claims and their equivalents, are intended to be encompassed by the claims.

Description of Reference Numerals

[0126] 20, 20A Second Server (Server) 20a Processing Circuit (First Processing Circuit, Third Processing Circuit, Fourth Processing Circuit) 20b Memory (First Memory, Second Memory) 30, 30A First Processing Terminal (Processing Terminal) 30a Processing Circuit (First Processing Circuit, Fourth Processing Circuit) 40, 40A Robot 41, 41A Sensor 100 Robot System

Claims

1. A robot equipped with a sensor, a first memory that stores a virtual space model including a virtual robot model and a virtual surrounding environment model that reproduce the robot and the surrounding environment of the robot, a first processing circuit that changes the state of the virtual space model, a second processing circuit that controls the robot according to an operation program while using the detection result of the sensor, a third processing circuit that collects and accumulates the detection result of the sensor as sensor information in the process of the robot operating according to the operation program, a fourth processing circuit that monitors the sensor and detects an abnormality in the signal sent from the sensor, when an abnormality is detected by the fourth processing circuit, the first processing circuit applies the sensor information accumulated by the third processing circuit to the virtual space model to reproduce the operating environment of the robot in the virtual space model, the second processing circuit continues to operate the robot while using the information obtained from the virtual space model in which the operating environment of the robot is reproduced, A robot system.

2. The second processing circuit continues to operate the robot while using the detection result of a virtual sensor corresponding to the sensor included in the virtual space model in which the operating environment of the robot is reproduced. The robot system according to claim 1.

3. The second processing circuit continues to operate the robot according to the operation program until a predetermined progress stage in the operation program while using the information obtained from the virtual space model in which the operating environment of the robot is reproduced. The robot system according to claim 1.

4. The second processing circuit continues to operate the robot while using the detection result of a virtual sensor corresponding to the sensor included in the virtual space model in which the operating environment of the robot is reproduced and the virtual space model indicating the state at the time when the abnormality is detected. The robot system according to claim 1.

5. The first processing circuit applies the operation program to the virtual space model in which the operating environment of the robot is reproduced to simulate the subsequent operations of the virtual robot model in the virtual space model, the second processing circuit continues to operate the robot so that the operation of the robot follows the operation of the virtual robot model. The robot system according to claim 1.

6. A server including the first processing circuit, the third processing circuit, and the first memory, a processing terminal including the second processing circuit and communicably connected to the server via a communication network, wherein the fourth processing circuit is provided in the server or the processing terminal, the server includes a second memory storing a plurality of the operation programs corresponding to a plurality of tasks, the server transmits the operation program corresponding to a requested task to the processing terminal, and the processing terminal autonomously causes the robot to execute the requested task using the received operation program. The robot system according to claim 1.

7. causing a robot to operate according to an operation program; collecting and storing, as sensor information, detection results of sensors included in the robot in a process in which the robot operates according to the operation program; generating a virtual space model including a virtual robot model and a virtual surrounding environment model that reproduce the robot and the surrounding environment of the robot; detecting an abnormality in a signal sent from the sensor; when an abnormality in a signal sent from the sensor is detected, reproducing an operation environment of the robot in the virtual space model by applying the sensor information to the virtual space model; and continuing to operate the robot while using information obtained from the virtual space model in which the operation environment of the robot is reproduced. A control method for a robot system.

Citation Information

Patent Citations

  • Control method of autonomous mobile apparatus

    JP2016024598A