Robot, Control Method, and Storage Medium
By installing sensors on the robot and using ranging data for machine learning, the problem of insufficient detection accuracy of the robot is solved, and higher precision travel direction control is achieved.
Patent Information
- Application Number
- CN202011145337.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-11-29
- Filing Date
- 2020-10-23
- Publication Date
- 2025-07-18
- Estimated Expiration
- 2040-10-23
AI Technical Summary
The prior art causes the robot to follow the object, and the detection accuracy is insufficient, resulting in the robot that may travel in an unintentional direction.
The sensor is used to measure the distance of objects around the robot, and machine learning is performed based on the distance measurement data through the first learning model to determine the direction of the robot toward the specified object.
Improves the accuracy of the robot moving towards the object, ensuring that the robot follows the target more accurately.
Smart Images

Figure CN112882461B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a method for controlling a self-propelled robot. Background Art
[0002] Techniques for controlling a self-propelled robot are known. For example, Patent Document 1 describes the following technique: Based on a moving image transmitted from a robot, the degree of danger of contact with a subject reflected in the moving image is measured by machine learning, and when the measured degree of danger is equal to or higher than a specified threshold value, the robot is instructed to stop.
[0003] [Prior Art Documents]
[0004] [Patent Document 1] Japanese Published Unexamined Patent Application Gazette "Specification of Patent No. 6393433 (Registered on August 31, 2018)" Summary of the Invention
[0005] Technical Problem to be Solved by the Invention
[0006] Here, in the use of making a robot follow a specified object (for example, a specific person), it is necessary to detect a specified object among the objects existing around the robot that the robot should face. In such a use, when the technique described in Patent Document 1 is adopted, since the distance information to the subject is not included in the moving image, there is room for improvement in the detection accuracy when detecting the object by machine learning using the moving image. Therefore, the robot may travel in an unintended direction.
[0007] An object of one aspect of the present invention is to provide a technique for more accurately determining the traveling direction of a robot that travels toward an object.
[0008] Technical Solution for Solving the Technical Problem
[0009] To solve the above problems, a robot according to one aspect of the present invention is a self-propelled robot, which has: a sensor that measures the distance from the robot to an object existing around in each direction, and a controller that controls the robot with reference to ranging data output from the sensor. The controller uses a first learning model that performs machine learning by taking the ranging data as an input and outputting information indicating one or more directions in which a specified object among the objects may exist. In addition, the controller executes the following processing: With reference to the output information of the first learning model, the traveling direction of the robot is determined so that it faces the specified object.
[0010] To solve the above problems, a control method according to one aspect of the present invention is a control method for a self-propelled robot, which includes the following steps: measuring the distance from the robot to an object existing around in each direction; and controlling the robot with reference to the ranging data output in the measuring step. In the controlling step, a first learning model is used, and the first learning model performs machine learning by taking the ranging data as an input and outputting information representing one or more directions in which a specified object in the object can exist. In addition, in the controlling step, the following process is included: determining the traveling direction of the robot with reference to the output information of the first learning model so that the robot faces the specified object.
[0011] To solve the above problems, a storage medium according to one aspect of the present invention is a storage medium storing a program for controlling the above robot, and the storage medium causes the controller to execute each process.
[0012] Advantageous Effects of the Invention
[0013] According to one aspect of the present invention, a technique for more accurately determining the traveling direction of a robot traveling toward an object can be provided. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] Figure 1 FIG. is a block diagram showing the main structure of the robot according to Embodiment 1 of the present invention.
[0015] Figure 2 FIG. is a diagram showing an example of the hardware structure of the robot according to Embodiment 1 of the present invention.
[0016] Figure 3 FIG. is a diagram for explaining the input and output of the first learning model of Embodiment 1 of the present invention.
[0017] Figure 4 FIG. is a flowchart showing a control method for controlling the robot in Embodiment 1 of the present invention.
[0018] Figure 5 FIG. is a block diagram showing the main structure of the robot according to Embodiment 2 of the present invention.
[0019] Figure 6 FIG. is a diagram showing an example of the hardware structure of the robot according to Embodiment 2 of the present invention.
[0020] Figure 7 FIG. is a diagram for explaining the input and output of the second learning model of Embodiment 2 of the present invention.
[0021] Figure 8 FIG. is a flowchart showing a control method for controlling the robot in Embodiment 2 of the present invention.
[0022] Figure 9 is a block diagram showing the main structure of the robot according to Embodiment 3 of the present invention.
[0023] Figure 10 is a diagram illustrating the input and output of the third learning model according to Embodiment 3 of the present invention.
[0024] Figure 11 is a schematic top view showing an example of the obstacle matching information according to Embodiment 3 of the present invention.
[0025] Figure 12 is a diagram showing an example of the obstacle grid map according to Embodiment 3 of the present invention.
[0026] Figure 13 is a diagram showing an example of the enlarged obstacle grid map according to Embodiment 3 of the present invention.
[0027] Figure 14 is a flowchart showing the control method for controlling the robot according to Embodiment 3 of the present invention. Specific Embodiments
[0028] Referring to the accompanying drawings, the robot according to each embodiment of the present invention will be described. The robot according to each embodiment is a self-propelled robot that replaces a staff member to conduct patrols inside a facility. As an example of the facility equipped with the robot, a medical facility, a nursing facility, a kindergarten, etc. can be cited, but it is not limited thereto. The robot travels toward a specified target object among the objects existing around the robot. For example, while patrolling inside the facility, the robot determines an object that satisfies a specific condition as the specified target object and follows the specified target object. The specific condition can be, for example, a moving body initially recognized in a state where the robot is not following any target object. As a specific example, the robot discovers and follows a person wandering inside the facility. Additionally, the specific condition can also be a moving body specified through input. As a specific example, the robot follows a specific wheelchair carrying a person taking a walk.
[0029] In the present embodiment, the objects existing around the robot are a person, a wheelchair, a cart, a wall, a column, etc. Additionally, in the present embodiment, the specified target object that the robot should face is a moving body. A moving body refers to an object that can move. As an example, it can be a person, a wheelchair, a cart, etc. Hereinafter, the specified target object that the robot should face will also be referred to as the "tracking target object".
[0030] [Embodiment 1]
[0031] Hereinafter, with reference to Figures 1 to 4 , the robot 10 according to Embodiment 1 of the present invention will be described.
[0032] <Main Structure of Robot 10>
[0033] Figure 1 is a block diagram showing the main structure of robot 10. As Figure 1 shown, robot 10 includes a controller 11, a field sensor 12, and a traveling device 13.
[0034] As a functional structure, controller 11 includes a ranging data acquisition unit 111, a traveling direction determination unit 112, a traveling control unit 113, and a first learning model M1. The detailed structure of each functional block will be described later.
[0035] Figure 2 is a block diagram showing an example of the hardware structure of robot 10. As Figure 2 shown, controller 11 is composed of a computer including a processor 101, a memory 102, and a communication interface 103. In addition, communication interface 103 is an example of the input interface of the present invention. In addition, controller 11 is communicably connected to field sensor 12 and traveling device 13 via a switching hub SW, respectively.
[0036] Processor 101, memory 102, and communication interface 103 are connected to each other via a bus. As processor 101, for example, a microprocessor, a digital signal processor, a microcontroller, or a combination thereof is used. As memory 102, for example, a semiconductor RAM (random access memory), an HDD (Hard Disk Drive), an SSD (Solid State Drive), or a combination thereof is used.
[0037] A program for causing processor 101 to execute control method S1 of controller 11 described later is stored in memory 102. Processor 101 executes control method S1 by reading and executing the program stored in memory 102. In addition, various data referred to by processor 101 for executing control method S1 are stored in memory 102.
[0038] The communication interface 103 is an interface for communicating with other devices. For example, the communication interface 103 is an interface for performing wired LAN (Local Area Network) communication. In this case, the communication interface 103 is connected to the switching hub SW and communicates with the measurement area sensor 12 and the traveling device 13 via the switching hub SW. In addition, the communication interface 103 is not limited to wired LAN communication and may also be an interface for performing other types of communication. For example, the communication interface 103 may also be an interface for performing wireless LAN communication. In this case, the communication interface 103 communicates with the measurement area sensor 12 and the traveling device 13 via an access point (not shown). In addition, the communication interface 103 may also be composed of a USB (Universal Serial Bus) interface, a serial communication interface such as RS-232C, RS-422, or RS-485, a short-range communication interface such as infrared or Bluetooth (registered trademark), or a combination thereof.
[0039] [Structure of the measurement area sensor 12]
[0040] The measurement area sensor 12 is an example of the sensor of the present invention. The measurement area sensor 12 measures the distance from the robot 10 to the objects existing in the surroundings in each direction. In addition, the measurement area sensor 12 periodically executes a measurement process for measuring the distance to the objects existing in the surroundings in each direction. The period for executing the measurement process is controlled by the controller 11. During the periodic execution of the measurement process, the measurement area sensor 12 outputs ranging data indicating the distances of the objects in the measured respective directions.
[0041] For example, the measurement area sensor 12 is composed of a two-dimensional laser scanner. In this case, the measurement area sensor 12 is provided at a position at a predetermined height from the installation surface of the robot 10 and measures the distances to the objects existing in the respective directions included in the scanning range on the horizontal plane at this height. The scanning range refers to the range extending from the traveling direction of the robot 10 to a predetermined angle on the left and right sides respectively. Specifically, the measurement area sensor 12 irradiates a laser beam while changing the direction at a predetermined resolution within the scanning range. In addition, the measurement area sensor 12 receives the reflected light reflected from the surfaces of the objects existing in the respective directions where the laser beam is irradiated, calculates the distance to the reflection point, and outputs ranging data indicating the positions of the reflection points in the respective directions. The measurement process of irradiating the laser beam and outputting the ranging data within the scanning range is executed periodically. In addition, the measurement area sensor 12 is not limited to the above structure and may adopt other known structures as long as it can measure the distances to the objects existing around the robot 10 in each direction.
[0042] In addition, as an example, the measurement range sensor 12 is set at a height position of about 40 cm from the ground. In addition, as an example, the scanning range of the measurement range sensor 12 is ±115 degrees, the measurable distance is 20 mm or more and 10,000 mm or less, and the resolution is 0.25 degrees. However, the height, scanning range, measurable distance, and resolution of the measurement range sensor 12 are not limited to these values.
[0043] <Structure of Traveling Device 13>
[0044] Refer to Figure 2 , and the structure of the traveling device 13 will be described. The traveling device 13 is a device that causes the robot 10 disposed on the ground of the facility to travel in any direction. As an example, as shown in Figure 2 , the traveling device 13 includes: a PLC (programmable logic controller) 131 that controls each part of the device, a plurality of wheels 132 (132a and 132b), motors 133 (133a and 133b) that drive each wheel 132, drive circuits 134 (134a and 134b) that rotate each motor 133, and encoders 135 (135a and 135a) that detect the rotational speed of each motor 133. Each wheel 132 is mounted on the lower surface of the robot 10 in a manner that can change the traveling direction. The robot 10 is configured such that each wheel 132 contacts the configuration surface (e.g., the ground). The PLC 131 controls each drive circuit 134 according to a control signal from the controller 11, so that each wheel 132 rotates at a desired rotational speed. Each drive circuit 134 rotates each wheel 132 at a desired rotational speed by supplying a drive signal to each motor 133 and causing it to rotate. When the left and right wheels 132a and 132b disposed at the lower part of the robot 10 rotate at different rotational speeds, the robot 10 travels while changing the traveling direction. In addition, the traveling device 13 is not limited to the above structure, and as long as it is a structure that can cause the robot 10 to travel in any direction, a known structure can also be adopted. In addition, the traveling device 13 may include other controllers that perform the functions as described above instead of the PLC 131.
[0045] [Detailed Structure of Each Functional Block of Controller 11]
[0046] (Structure of Distance Measurement Data Acquisition Unit 111)
[0047] As shown in Figure 1As shown, the ranging data acquisition unit 111 acquires ranging data from the ranging sensor 12. Specifically, the ranging data acquisition unit 111 instructs the ranging sensor 12 to perform a measurement process at a predetermined cycle, thereby acquiring the ranging data output from the ranging sensor 12. The ranging data acquisition unit 111 inputs the acquired ranging data into the first learning model M1. As an example, the acquisition cycle of the ranging data is 50 milliseconds. Therefore, the cycle for inputting the ranging data into the first learning model M1 is also 50 milliseconds. However, this cycle is not limited to this.
[0048] (Structure of the first learning model M1)
[0049] The first learning model M1 is a program that performs machine learning by taking the ranging data output from the ranging sensor 12 as input and outputting information indicating one or more directions in which a follow-up object may exist among the objects existing around the robot 10.
[0050] Figure 3 It is a diagram for explaining the input and output of the first learning model M1. Ranging data for two or more cycles is input into the first learning model M1. In addition, although Figure 3 the ranging data for three cycles is shown, the number of cycles of the ranging data input into the first learning model M1 is not limited to this. One or more directions in which the moving body exists are output from the first learning model M1 as one or more directions in which the follow-up object may exist. As a specific example, one or more directions in which a "person" as the moving body exists are output from the first learning model M1 as the directions in which a "specific person" as the follow-up object may exist.
[0051] Specifically, for example, the ranging data for one cycle is expressed as D(f) = (d_f1, d_f2,..., d_fn). n is an integer of 2 or more, and is the number of distance information obtained by measuring within the scanning range at a specified resolution. d_fi (i = 1, 2,..., n) represents the distance to the object existing in the direction ri (i = 1, 2,..., n) measured in the cycle f. In the first learning model M1, the ranging data D(f1), D(f2),..., D(fm) for the most recently measured m cycles is input. m is an integer of 2 or more. The output information from the first learning model M1 is expressed as (c1, c2,..., cn).
[0052] For example, the output information ci (i = 1, 2, ……, n) represents the type of the object (for example, any one of the types “person”, “object other than person”, and “no object”). In this case, the target object to be followed exists in any one of the directions ri corresponding to the output information ci representing the type of the target object to be followed (here, “person”). In other words, the direction ri corresponding to the output information ci representing the type of the target object to be followed is the direction in which the target object to be followed can exist.
[0053] In addition, the first learning model M1 performs machine learning using teacher data. For example, the controller 11 pre-executes the process of generating teacher data and making the first learning model M1 perform machine learning. For example, in a situation where there are multiple moving objects (persons, wheelchairs, carts, etc.) around the robot 10, the controller 11 acquires information indicating the directions in which “persons” of the same type as the target object to be followed exist among the multiple moving objects. The directions in which the persons exist are acquired through the input of the operator. In addition, the controller 11 acquires ranging data for multiple cycles measured by the ranging sensor 12 in this situation. In addition, the controller 11 uses the acquired ranging data for multiple cycles and the data associated with the directions in which the persons exist as teacher data, and makes the first learning model M1 perform machine learning. In addition, the first learning model M1 is not limited to being a model that performs machine learning through the controller 11 of this robot 10, and can also be a model that performs machine learning through the controller 11 of other robots 10 or a device external to the robot 10.
[0054] In addition, in the machine learning of the first learning model M1, well-known machine learning algorithms can be applied. As well-known machine learning algorithms, for example, there are deep learning software (algorithms) such as CNN (Convolutional Neural Networks), RNN (Recurrent Neural Network), and GAN (Generative Adversarial Network). In addition, the algorithm for making the first learning model M1 learn is not limited to deep learning, and can also be other machine learning algorithms such as support vector machines. In addition, the first learning model M1 is not limited to supervised learning, and can also perform machine learning through unsupervised learning, semi-supervised learning, etc.
[0055] (Structure of the traveling direction determination unit 112)
[0056] Figure 1 The shown traveling direction determination unit 112 determines the traveling direction of the robot 10 with reference to the output information of the first learning model M1 so that it faces the target object to be followed.
[0057] Specifically, in addition to referring to the output information of the first learning model M1, the traveling direction determination unit 112 refers to the most recently obtained ranging data, and determines the direction with the shortest distance to the object among the one or more directions represented by the output information as the traveling direction. However, the process of determining the traveling direction is not limited to the above process. For example, the traveling direction determination unit 112 may regard the direction with the shortest distance to the object and the direction close to this direction among the one or more directions represented by the output information as the direction of the left foot and the right foot of a specific person as the object to be followed. In this case, the traveling direction determination unit 112 may also determine the direction between these two directions as the traveling direction. Alternatively, the traveling direction determination unit 112 may determine the direction with the shortest distance to the object among the traveling direction determined one control cycle before and the direction close to this direction among the one or more directions represented by the output information as the traveling direction.
[0058] (Structure of the traveling control unit 113)
[0059] The traveling control unit 113 controls the traveling device 13 so that the robot 10 travels in the determined traveling direction. Specifically, the traveling control unit 113 acquires information indicating the current orientation of the robot 10. When the current orientation is the same as the determined traveling direction, the traveling control unit 113 causes the robot 10 to travel while maintaining the current orientation. In addition, when the current orientation is different from the determined traveling direction, the traveling control unit 113 controls the traveling device 13 to cause the robot 10 to face the determined traveling direction and at the same time causes the robot 10 to travel. Specifically, the traveling control unit 113 calculates information indicating the current orientation of the robot 10 based on the output information of each encoder 135 included in the traveling device 13. In addition, the traveling control unit 113 controls the robot 10 to face the traveling direction by making the rotational speeds of the respective wheels 132 included in the traveling device 13 different.
[0060] <Control method of the robot 10>
[0061] The control method S1 of the robot 10 configured as described above will be described. Figure 4 It is a flowchart for explaining the control method S1 of the robot 10. In addition, the control method S1 described below is executed in accordance with the acquisition cycle of each ranging data.
[0062] In step S101, the ranging data acquisition unit 111 acquires the ranging data output from the ranging sensor 12 and stores it in the memory 102.
[0063] In step S102, the traveling direction determination unit 112 inputs the ranging data for two or more recent cycles stored in the memory 102 into the first learning model M1, and obtains its output information. In the present embodiment, as described above, information indicating the type of object existing in each direction (for example, any one of "person", "other than person", and "no object") is output from the first learning model M1 as one or more directions in which a following object can exist.
[0064] In step S103, the traveling direction determination unit 112 determines the traveling direction of the robot 10 with reference to the output information of the first learning model M1. In the present embodiment, the direction closest to the robot 10 among the one or more directions of the type "person" output from the first learning model M1 is determined as the traveling direction.
[0065] In step S104, the traveling control unit 113 causes the robot 10 to travel in the direction determined in step S103.
[0066] Thus, the controller 11 ends the control method S1.
[0067] <Effect of the robot 10>
[0068] The robot 10 according to the present embodiment refers to the information indicating the direction of the moving body output from the first learning model M1 that takes the ranging data for two or more cycles as input, and regards the object existing at the closest distance to the robot 10 as the following object. Further, the robot 10 determines the traveling direction as the direction in which the following object exists. In this way, since the output from the first learning model M1 that takes the ranging data for two or more cycles as input reflects the change in the distance to the objects existing in the surroundings, the present embodiment can determine the direction in which the following object that the robot 10 should face exists with higher accuracy.
[0069] [Embodiment 2]
[0070] Hereinafter, Figures 5 to 8 the robot 20 according to Embodiment 2 of the present invention will be described. In addition, for ease of explanation, the same reference numerals are given to the structures having the same functions as those described in Embodiment 1, and the description thereof will not be repeated.
[0071] <Main structure of the robot 20>
[0072] Figure 5 is a schematic diagram showing the main structure of the robot 20. As Figure 5As shown, the robot 20 has a controller 21, a range sensor 12, a traveling device 13, and a camera device 24. As a functional structure, the controller 21 includes a ranging data acquisition unit 111, a traveling direction determination unit 212, a traveling control unit 113, a captured image acquisition unit 214, a first learning model M1, and a second learning model M2. The captured image acquisition unit 214 and the second learning model M2 may also be included in the camera device 24. Regarding the structures of the range sensor 12, the traveling device 13, the ranging data acquisition unit 111, the traveling control unit 113, and the first learning model M1, since they are the same as those described in the first embodiment, they will not be described again. Details of other structures will be described later.
[0073] Figure 6 is a block diagram showing an example of the hardware structure of the robot 20. As shown in Figure 6 As shown, the controller 21 is composed of a computer including a processor 101, a memory 102, and a communication interface 103. In addition, the controller 21 is communicably connected to the range sensor 12, the traveling device 13, and the camera device 24 via a switching hub SW, respectively.
[0074] Regarding the processor 101, the memory 102, and the communication interface 103, although they are the same as those described in the first embodiment, there are also the following differences. A program for causing the processor 101 to execute the control method S2 of the controller 21 described later is stored in the memory 102. The processor 101 executes the control method S2 by reading and executing the program stored in the memory 102. In addition, various data referred to by the processor 101 for executing the control method S2 are stored in the memory 102.
[0075] <Structure of the camera device 24>
[0076] The camera device 24 captures images of the surroundings of the robot 20. Specifically, the camera device 24 generates a two-dimensional captured image by performing a capturing process in the traveling direction of the robot 20. The camera device 24 includes a single-board computer 241 and an imaging element 242.
[0077] The imaging element 242 is a photoelectric conversion element such as a CMOS (Complementary Metal Oxide Semiconductor) image sensor, etc., and converts the light incident from a range of a specified field of view angle through a lens (not shown) into an image signal. The single-board computer 241 periodically performs the following capturing process under the control of the controller 21; opens a shutter (not shown) for exposure and generates a captured image based on the image signal from the imaging element 242. As an example, the horizontal field of view angle of the imaging element 242 is ±66 degrees. However, the horizontal field of view angle is not limited to this.
[0078] <Detailed structure of each functional block of the controller 21>
[0079] (Structure of the captured image acquisition unit 214)
[0080] The captured image acquisition unit 214 acquires a captured image from the imaging device 24. Specifically, the captured image acquisition unit 214 acquires the captured image output from the imaging device 24 by instructing the imaging device 24 to perform imaging processing at every predetermined cycle. The captured image acquisition unit 214 inputs the acquired captured image into the second learning model M2. In addition, the acquisition cycle of the captured image and the acquisition cycle of the ranging data may be the same or different. However, in order to acquire a captured image having a larger capacity than the ranging data, it takes more time than acquiring the ranging data. Therefore, sometimes the acquisition cycle of the captured image is set longer than the acquisition cycle of the ranging data. As an example, the acquisition cycle of the ranging data is 50 milliseconds, and the acquisition cycle of the captured image is 500 milliseconds. However, each cycle is not limited to this.
[0081] (Structure of the second learning model M2)
[0082] As Figure 5 shown, the second learning model M2 is a program that performs machine learning by taking as input a captured image generated by the imaging device 24 and outputting information indicating one or more image regions in the captured image that may include the tracking object.
[0083] Figure 7 is a diagram for explaining the input and output of the second learning model M2. The captured image is input into the second learning model M2. In addition, in Figure 7 , although the captured image for one cycle is shown, the number of cycles of the captured image input into the second learning model M2 is not limited. More than one cycle of the captured image is input into the second learning model M2. Information indicating one or more image regions that may include the tracking object is output from the second learning model M2. For example, information indicating an image region including an object of the same type as the tracking object (e.g., "person") as the subject is output from the second learning model M2.
[0084] In addition, the second learning model M2 performs machine learning using teacher data. For example, the controller 21 pre-executes the process of generating teacher data and performing machine learning on the second learning model M2. For example, in a situation where multiple moving bodies (humans, wheelchairs, carts, etc.) are present around the robot 20, the controller 21 acquires a captured image using the imaging device 24. In addition, the controller 21 acquires information indicating image regions where "humans", which are objects of the same type as the following object, exist respectively in the captured image. The image regions where humans exist respectively are acquired through the input of an operator. In addition, the controller 21 uses the data associated with the acquired captured image and the image regions where humans exist respectively as teacher data, and causes the second learning model M2 to perform machine learning.
[0085] Regarding the machine learning algorithm for the machine learning of the second learning model M2, since it is the same as that described in the first learning model M1, it will not be repeated here. In addition, the second learning model M2 is not limited to a model that performs machine learning through the controller 21 of this robot 20, and can also be a model that performs machine learning through the controller 21 of other robots 20 or a device external to the robot 20.
[0086] (Structure of the travel direction determination unit 212)
[0087] Figure 5 The shown travel direction determination unit 212 determines the travel direction of the robot 20 with reference to one or more directions output from the first learning model M1 and extracted by referring to the output information of the second learning model M2. In other words, the travel direction determination unit 212 refers to the output information of the second learning model M2 and screens one or more directions output from the first learning model M1. In addition, the travel direction determination unit 212 refers to the most recently obtained ranging data, and determines the direction towards the object with the closest distance among the objects existing in the direction extracted by referring to the output information of the second learning model M2 as the travel direction of the robot 20.
[0088] Here, a specific example of the process of screening one or more directions output from the first learning model M1 with reference to the output information of the second learning model M2 will be described. For example, the travel direction determination unit 212 extracts the direction of the subject included in the image region output from the second learning model M2 among one or more directions of the object of the type "human" output from the first learning model M1. For example, the travel direction determination unit 212 extracts one or more directions output from the first learning model M1 that are within the range of the direction corresponding to the image region output from the second learning model M2.
[0089] <Control method of the robot 20>
[0090] A control method S2 for the robot 20 configured as described above will be described. Figure 8 It is a flowchart for explaining the control method S2 of the robot 20. In addition, the control method S2 described below is executed according to the acquisition period of each ranging data.
[0091] The operations of the controller 21 in steps S201 to S202 are the same as those of the controller 11 in step S101, so they will not be repeated.
[0092] The subsequent processing of steps S203 to S204 is executed when it conforms to the acquisition period of the captured image, and is omitted when it does not conform.
[0093] In step S203, the captured image acquisition unit 214 acquires a captured image from the imaging device 24.
[0094] In step S204, the traveling direction determination unit 212 inputs the most recent captured image stored in a memory (not shown) on the single-board computer 241 into the second learning model M2, obtains its output information, and stores it in the memory 102.
[0095] In step S205, the traveling direction determination unit 212 refers to the output information of the second learning model M2 and screens one or more directions output from the first learning model M1 in step S202. In addition, the traveling direction determination unit 212 determines the traveling direction of the robot 20 with reference to the one or more screened directions.
[0096] The operation of the controller 21 in step S206 is the same as that of the controller 11 in step S104, so it will not be repeated.
[0097] Thus, the controller 21 ends the control method S2.
[0098] In the above control method S2, the case where the acquisition period of the ranging data (for example, 50 milliseconds) is shorter than the acquisition period of the captured image (for example, 500 milliseconds) is described. The controller 21 stores the information output from the second learning model M2 in response to the acquisition of the captured image in the memory 102. Therefore, the controller 21 determines the traveling direction of the robot 20 based on the information output from the first learning model M1 in response to the acquisition of the ranging data and the output information from the second learning model M2 most recently stored in the memory 102.
[0099] <Effect of the robot 20>
[0100] In this embodiment, the output information of the first learning model M1 reflects the change in the distance to an object, while the output information of the second learning model M2 reflects the two-dimensional appearance information of the objects existing in the surroundings. In addition, since the acquisition period of the ranging data is shorter than the acquisition period of the captured image, the information output from the first learning model M1 in response to the acquisition of the ranging data has higher real-time performance compared to the information output from the second learning model M2 in response to the acquisition of the captured image. Therefore, the controller 21 uses the output information of the second learning model M2 that reflects the two-dimensional appearance information to screen the output information of the first learning model M1 that has higher real-time performance and reflects the change in the distance to the object. Thus, this embodiment can determine the traveling direction of the robot with higher accuracy.
[0101] [Embodiment 3]
[0102] Hereinafter, with reference to Figures 9 to 14 , the robot 30 according to Embodiment 3 of the present invention will be described. In addition, for ease of explanation, the same reference numerals are given to the structures having the same functions as those described in Embodiments 1 to 2, and the description thereof will not be repeated.
[0103] <Main Structure of Robot 30>
[0104] Figure 9 is a block diagram showing the main structure of the robot 30. As Figure 9 shown, the robot 30 includes a controller 31, a ranging sensor 12, a traveling device 13, and a imaging device 24. As a functional structure, the controller 31 includes a ranging data acquisition unit 111, a traveling direction determination unit 312, a traveling control unit 113, a captured image acquisition unit 214, an object direction determination unit 315, and an obstacle area determination unit 316. In addition, the controller 31 includes a first learning model M1, a second learning model M2, and a third learning model M3. The captured image acquisition unit 214 and the second learning model M2 may be included in the imaging device 24. Regarding the structures of the ranging sensor 12, the traveling device 13, the ranging data acquisition unit 111, the traveling control unit 113, the captured image acquisition unit 214, the first learning model M1, and the second learning model M2, since they are the same as those described in Embodiments 1 to 2, the description thereof will not be repeated. Details of other structures will be described later.
[0105] In addition, as an example of the hardware structure of the robot 30, it may be the same as Figure 6The same hardware structure as that of the robot 20 shown. Regarding the processor 101, the memory 102, and the communication interface 103, although they are the same as those described in the first embodiment, there are also the following differences. A program for causing the processor 101 to execute the control method S3 of the controller 31 described later is stored in the memory 102. The processor 101 reads and executes the program stored in the memory 102 to execute the control method S3. In addition, various data referred to by the processor 101 for executing the control method S3 are stored in the memory 102.
[0106] <Detailed structure of each functional block of the controller 31>
[0107] (Structure of the third learning model M3)
[0108] As Figure 9 shown, the third learning model M3 performs machine learning by taking information indicating the direction of the object to be followed and information indicating the spatial region where the obstacle exists as inputs and outputting information indicating the direction for the robot 30 to move toward the object to be followed while avoiding the obstacle.
[0109] Figure 10 This is a diagram for explaining the input and output of the third learning model M3. Information indicating the direction of the object to be followed and information indicating the spatial region where the obstacle exists are input to the third learning model M3. Details of these input information will be described later. Information indicating the direction of the robot 30 for moving toward the object to be followed while avoiding the obstacle is output from the third learning model M3. Hereinafter, the direction of the robot 30 for moving toward the object to be followed while avoiding the obstacle will also be referred to as the avoidance direction.
[0110] In addition, the third learning model M3 performs machine learning using teacher data. For example, the controller 31 pre-executes a process of generating teacher data and causing the third learning model M3 to perform machine learning. For example, in a situation where a specific person and an obstacle as objects to be followed exist around the robot 30, the controller 31 acquires information indicating the direction of the specific person. The information indicating the direction of the specific person can be acquired from the object direction determination unit 315 described later, or can be acquired through an operator's input. In addition, the controller 31 generates information indicating the spatial region where the obstacle exists based on the ranging data obtained in this situation. In addition, the controller 31 acquires information indicating an avoidance direction for approaching the object to be followed while avoiding the obstacle. The information indicating the avoidance direction can be obtained by calculation. For example, the controller 31 can use a well-known method as follows: based on the information indicating the direction of the specific person and the information indicating the spatial region where the obstacle exists, calculate an avoidance direction for approaching the object to be followed while avoiding the obstacle. In addition, the controller 31 causes the third learning model M3 to perform machine learning using, as teacher data, the data obtained by associating the acquired information indicating the direction of the specific person, the information indicating the spatial region where the obstacle exists, and the calculated avoidance direction.
[0111] Regarding the machine learning algorithm used in the machine learning of the third learning model M3, since it is the same as that described in the first learning model M1, no further description will be given. In addition, the third learning model M3 is not limited to a model that performs machine learning through the controller 31 of this robot 30, and can also be a model that performs machine learning through the controller 31 of other robots 30 or an external device of the robot 30.
[0112] (Structure of the object direction determination unit 315)
[0113] As Figure 9 shown, the object direction determination unit 315 determines the direction of the object to be followed with reference to the ranging data and the output information of the first learning model M1. As the ranging data, the most recently obtained data can be referred to. The information indicating the direction in which the object to be followed exists, together with the information indicating the spatial region where the obstacle exists determined by the obstacle region determination unit 316 described later, is input to the third learning model M3.
[0114] Specifically, the object direction determination unit 315 determines the direction of the following object by referring to one or more directions output from the first learning model M1 and extracted by referring to the output information of the second learning model M2. In other words, the object direction determination unit 315 filters one or more directions output from the first learning model M1 by referring to the output information of the second learning model M2. In addition, the object direction determination unit 315 refers to the most recently obtained ranging data, and determines the direction of the object closest in distance among the objects existing in the direction extracted by referring to the output information of the second learning model M2 as the direction in which the following object exists. In addition, a specific example of the process of filtering one or more directions output from the first learning model M1 by referring to the output information of the second learning model M2 is the same as that described in the second embodiment, and thus will not be described again.
[0115] (Structure of the obstacle area determination unit 316)
[0116] The obstacle area determination unit 316 determines the spatial area where an obstacle exists by referring to the ranging data and the direction of the following object. As the ranging data, the most recently measured data can be referred to. As the direction of the following object, the direction determined by the object direction determination unit 315 can be referred to. The information indicating the spatial area where an obstacle exists is input to the third learning model M3 together with the information indicating the direction in which the following object exists, which is determined by the object direction determination unit 315.
[0117] Here, as an example of the information indicating the spatial area where an obstacle exists, an enlarged obstacle grid map can be cited. The enlarged obstacle grid map is a grid map representing the area of the obstacle enlarged in the plane of the space around the robot 30 viewed from above. Specifically, the obstacle area determination unit 316 sets the objects existing in the directions other than the direction of the following object determined by the object direction determination unit 315 among the multiple directions represented by the ranging data as obstacles. The obstacles thus determined include: (1) objects existing in the directions not represented by the output information from the first learning model M1 among the multiple directions represented by the ranging data (as an example, objects other than "humans"); and (2) objects existing in the directions other than the following object represented by the output information from the first learning model M1 (as an example, "humans" other than "specific humans"). In addition, the obstacle area determination unit 316 generates obstacle mapping information based on the ranging data, which is obtained by two-dimensionally mapping the obstacles onto the plane when observing the space around the robot 30 from above. In addition, the obstacle area determination unit 316 generates an obstacle grid map obtained by discretizing the obstacle mapping information. In addition, the obstacle area determination unit 316 generates an enlarged obstacle grid map obtained by enlarging the area of the obstacle in the obstacle grid map.
[0118] Figure 11 is a schematic top view showing obstacle map information. In Figure 11 , the position of the ranging sensor 12 mounted on the housing of the robot 30 is taken as the origin, the forward direction of the robot 30 is taken as the positive x-axis direction, and the direction orthogonal to the x-axis is taken as the y-axis. In Figure 11 , obstacles are represented by small circular markers. Since the scanning range of the ranging sensor 12 is in the range of ±θ degrees (here θ = 115), in Figure 11 , the circular markers representing obstacles are also depicted within the range of ±θ degrees with respect to the forward direction of the robot 30.
[0119] Figure 12 shows an example of an obstacle grid map. Here, the obstacle area determination unit 316 generates Figure 11 the obstacle grid map shown in Figure 12 by discretizing the area of 4 m in the x-axis direction × 5 m in the y-axis direction in the plane represented by the obstacle map information shown in
[0120] Figure 13 shows an example of an enlarged obstacle grid map. The obstacle area determination unit 316 generates Figure 12 the enlarged obstacle grid map shown in Figure 13 by performing a morphological process on the obstacle grid map in
[0121] (Structure of the travel direction determination unit 312)
[0122] As Figure 9 shown, the travel direction determination unit 312 determines the avoidance direction represented by the output information of the third learning model M3 as the travel direction of the robot 30 by inputting the information respectively representing the direction of the following object and the spatial area of the obstacle into the third learning model M3. The avoidance direction output from the third learning model M3 may be different from the direction where the following object observed from the robot 30 exists. This is the case where there is an obstacle between the following object and the robot 30. Thus, the robot 30 can travel in a manner of following the following object while reducing the possibility of colliding with an obstacle.
[0123] <Control method of the robot 30>
[0124] The control method S3 of the robot 30 configured as described above will be described. Figure 14This is a flowchart showing the control method S3 of the robot 30. Additionally, the control method S3 described below is executed according to each acquisition cycle of the ranging data.
[0125] In step S301, the controller 31 acquires the output information from the first learning model M1 and the output information from the second learning model M2. Regarding the detailed content of the processing in step S301, it is the same as that described in steps S201 to S204 in Figure 8 and will not be repeated here.
[0126] In step S302, the object direction determination unit 315 determines the direction in which the object to be followed exists among the one or more directions output from the first learning model M1 in step S301. Additionally, the object direction determination unit 315 refers to one or more directions extracted by referring to the output information from the second learning model M2 to perform the processing of determining this direction.
[0127] In step S303, the obstacle area determination unit 316 generates information representing the spatial area of the obstacles existing around the robot 30 based on the most recently acquired ranging data and the output information from the first learning model M1. Here, the above-mentioned enlarged obstacle grid map is generated.
[0128] In step S304, the traveling direction determination unit 312 inputs the information indicating the direction in which the object to be followed exists and the information representing the spatial area of the obstacles (enlarged obstacle grid map) into the third learning model M3 and acquires its output information.
[0129] In step S305, the traveling direction determination unit 312 determines the avoidance direction output from the third learning model M3 as the traveling direction of the robot 30.
[0130] The operation of the controller 31 in step S306 is the same as that of the controller 11 in step S101, and will not be repeated here.
[0131] Thus, the controller 31 ends the control method S3.
[0132] <Effects of the robot 30>
[0133] In this embodiment, the direction of the object to be tracked and the spatial region of the obstacle are determined using the most recently obtained ranging data and the output from the first learning model M1. Here, in the output from the first learning model M1, the change in the distance to the objects existing in each direction is reflected. Therefore, this embodiment can accurately determine the direction of the object to be tracked as a moving body. In addition, since the objects existing in the directions other than the direction in which the object to be tracked exists are determined as obstacles, this embodiment can accurately determine the spatial region where the obstacles exist. As a result, in this embodiment, since the third learning model M3 that uses the information respectively representing the direction of the object to be tracked and the spatial region of the obstacle thus determined as input is used, the avoidance direction for tracking the object to be tracked while avoiding obstacles can be determined with higher accuracy.
[0134] [Variant Example]
[0135] <Change in the output information from the first learning model M1>
[0136] In each of the above embodiments, an example in which the output information ci from the first learning model M1 represents the type of the object existing in the direction ri has been described. However, it is not limited to this. The ci (i = 1, 2,..., n) for each direction as the output information from the first learning model M1 may also represent the probability that the object to be tracked exists in the direction ri. In this case, as the teacher data used when machine learning the first learning model M1, the information obtained by associating the ranging data for two or more cycles with the direction in which the object to be tracked exists can be used. In addition, the output information from the first learning model M1 may be other information as long as it is information representing one or more directions in which the object to be tracked may exist.
[0137] <Change in the output information from the second learning model M1>
[0138] In each of the above embodiments, a case where the image region as the output information from the second learning model M2 represents an image region including an object of the same type as the "specific person" of the object to be tracked, that is, a "person" as a subject has been described. However, it is not limited to this. The output information from the second learning model M2 may also be information representing the probability of including the object to be tracked as a subject for each pixel. In this case, as the teacher data used when machine learning the second learning model M2, the information associating the captured image with the region including the object to be tracked can be used. In addition, the output information from the second learning model M2 may be other information as long as it is information representing one or more image regions that can include the object to be tracked.
[0139] <Objects other than the object to be tracked>
[0140] In the above-mentioned embodiment 3, the controller 31 may also control the robot 30 so that it moves toward the target position at a predetermined time or in response to an instruction from the outside instead of following the tracking object. In this case, the obstacle area determination unit 316 refers to the distance measurement data to determine the spatial area where the obstacle exists. In addition, the object direction determination unit 315 determines the target direction toward the target position instead of determining the direction of the tracking object. The target direction is the direction from the current position of the robot 30 toward the target position. In addition, information representing the target direction and information representing the spatial area where the obstacle exists are input to the third learning model M3. The target position can be, for example, a passing point pre-set in the patrol route within the facility. Thus, the robot 30 can usually move toward the target position when a predetermined time arrives or when an instruction from the outside is received while moving in a manner of following the tracking object. However, the target position is not limited to the above-mentioned passing point. For example, the target position can also be a position input from the outside.
[0141] <Changes in Specified Objects>
[0142] In the above-mentioned embodiments, the predetermined object of the present invention is a moving object, and the robot follows the moving object. However, the predetermined object of the present invention may be a non-moving object.
[0143] [Implementation example based on software and hardware]
[0144] In the above-mentioned embodiments, the case where the controllers 11 to 31 are implemented in a manner where the processor 101 executes the control methods S1 to S3 according to the program stored in the memory 102 as the internal storage medium is described, but it is not limited to this. For example, the processor 101 may execute the control methods S1 to S3 according to the program stored in the external recording medium. In this case, as the external recording medium, a computer-readable "non-temporary tangible medium" such as a tape, a disk, a card, a semiconductor memory or a programmable logic circuit may be used. Alternatively, the above-mentioned program may also be provided to the above-mentioned computer via any transmission medium (communication network or broadcast wave, etc.) that can transmit the program. In addition, one aspect of the present invention may also be implemented in the form of a data signal embedded in a carrier wave and embodied by the above-mentioned program in an electronic transmission manner.
[0145] In addition, in the above-mentioned embodiments, the controllers 11 to 31 are not limited to being implemented by the processor 101 operating according to the program stored in the memory 102, but may also be implemented by a logic circuit (hardware) formed in an integrated circuit (IC chip) or the like.
[0146] 〔Summarize〕
[0147] To solve the above problems, the robot according to the above embodiment is a self-propelled robot, and the robot has: a sensor that measures the distance from the robot to an object existing around in each direction; and a controller that controls the robot with reference to the distance measurement data output from the sensor. The controller performs the following processing using a first learning model: referring to the output information of the first learning model, determining the traveling direction of the robot so that it faces the specified object, where the first learning model performs machine learning by taking the distance measurement data as input and outputting information indicating one or more directions in which the specified object in the object may exist.
[0148] According to the above structure, the traveling direction of the robot is determined using the first learning model that takes the distance measurement data as input so that it faces the specified object. Thus, compared with the case of using a machine learning model that takes a captured image not including distance information to an object as input, the traveling direction of the robot can be determined with higher accuracy. For example, there are objects such as people, walls, and wheelchairs around the robot. Among them, the specified object is, for example, a specific person, a specific wheelchair, etc. In the above structure, the output from the first learning model that takes the distance measurement data including distance information to objects such as people, walls, and wheelchairs as input becomes information reflecting the distance to the object. Therefore, in the above structure, the distance to objects such as people, walls, and wheelchairs is considered, so the traveling direction of the robot towards a specific person, a specific wheelchair, etc. can be determined with higher accuracy.
[0149] In the robot according to the above embodiment, preferably, the specified object is a moving body, the sensor periodically performs the process of measuring the distance in each direction, the first learning model takes the distance measurement data of at least two or more cycles as input, and outputs information indicating one or more directions in which the moving body in the object exists as one or more directions in which the specified object may exist.
[0150] According to the above structure, if any moving body among the objects existing around the robot is the specified object, the traveling direction of the robot can be determined with higher accuracy. In addition, a moving body refers to an object that can move, such as a person, a wheelchair, a cart, etc.
[0151] In the robot according to the above embodiment, preferably, the robot further includes an imaging device for imaging the surroundings of the robot, and the controller further uses a second learning model. In the determined process, with reference to one or more directions output from the first learning model, one or more directions extracted by referring to the output information of the second learning model are referred to, and the traveling direction of the robot is determined. Wherein, the second learning model is machine-learned by taking the captured image generated by the imaging device as an input and outputting information representing one or more image regions in which the specified object may be included in the captured image.
[0152] According to the above structure, since among one or more directions of the specified object detected by referring to the ranging data, the direction in which the possibility of the existence of the specified object is higher is extracted by referring to the captured image, the traveling direction of the robot can be determined with higher accuracy.
[0153] In the robot according to the above embodiment, preferably, the controller further uses a third learning model. In the determined process, the direction of the specified object and the spatial region of the obstacle are determined by referring to the ranging data and the output information of the first learning model, and the determined information is input into the third learning model, so that the direction determined by the output information of the third learning model is determined as the traveling direction of the robot. Wherein, the third learning model is machine-learned by taking the information representing the direction of the specified object and the information representing the spatial region where the obstacle exists as inputs and outputting information representing the direction for approaching the specified object while avoiding the obstacle.
[0154] According to the above structure, the traveling direction of the robot for approaching the specified object while avoiding the obstacle can be determined with higher accuracy.
[0155] In the robot according to the above embodiment, preferably, the controller includes: an input interface that obtains the ranging data output from the sensor; a processor that executes the respective processes according to a program; and a memory that stores the program.
[0156] According to the above structure, the above robot can be controlled using a program.
[0157] To solve the above problems, a control method according to one aspect of the present invention is a control method for a self-propelled robot, which includes the following steps: measuring the distance from the robot to an object existing around in each direction; and controlling the robot with reference to the ranging data output in the measuring step. In the controlling step, the following processing is included: using a first learning model and referring to the output information of the first learning model, determining the traveling direction of the robot so that it faces the specified object, where the first learning model performs machine learning by taking the ranging data as input and outputting information indicating one or more directions in which the specified object in the object may exist.
[0158] According to the above structure, the same effects as those of the above robot can be achieved.
[0159] To solve the above problems, a program according to the above embodiment is a program for controlling the above robot, and this program causes the controller to execute each of the above processes.
[0160] According to the above structure, a program executed by a computer for controlling the robot according to the above embodiment can be provided.
[0161] In addition, a computer-readable recording medium recording the above program also falls within the scope of the present invention.
[0162] The present invention is not limited to the above respective embodiments, and various changes can be made within the scope shown in the claims. Embodiments obtained by appropriately combining the technical means separately disclosed in different embodiments are also included in the technical scope of the present invention. In addition, by combining the technical means separately disclosed in each embodiment, new technical features can be formed.
[0163] Reference numeral description:
[0164] 10, 20, 30: Robot;
[0165] 11, 21, 31: Controller;
[0166] 12: Range sensor;
[0167] 111: Ranging data acquisition unit;
[0168] 112, 212, 312: Traveling direction determination unit;
[0169] 113: Travel control unit;
[0170] 214: Camera image acquisition unit;
[0171] 315: Object direction determination unit;
[0172] 316: Obstacle area determination unit;
[0173] 101: Processor;
[0174] 102: Memory;
[0175] 103: Communication interface;
[0176] 13: Travel device;
[0177] 131: PLC;
[0178] 132: Wheel;
[0179] 133: Motor;
[0180] 134: Drive circuit;
[0181] 135: Encoder;
[0182] 24: Camera device;
[0183] 241: Single-board computer;
[0184] 242: Image sensor.
Claims
1. A robot, which is a self-propelled robot, characterized in that, The robot has: A sensor that measures the distance from the robot to objects present in the surroundings in each direction; An imaging device that images the surroundings of the robot; A first learning model that performs machine learning by taking the ranging data output from the sensor as input and outputting information indicating one or more directions in which a specified object among the objects can exist; A second learning model that performs machine learning by taking the captured image generated by the imaging device as input and outputting information indicating one or more image regions in the captured image that can include the specified object; And A controller that controls the robot with reference to the ranging data, the output information of the first learning model, and the output information of the second learning model, wherein the controller performs the following process: referring to one or more directions output from the first learning model, and extracting one or more directions by referring to the output information of the second learning model, determines the traveling direction of the robot so that the robot faces the specified object.
2. A robot, which is a self-propelled robot, characterized in that, The robot has: A sensor that measures the distance from the robot to objects present in the surroundings in each direction; A first learning model that performs machine learning by taking the ranging data output from the sensor as input and outputting information indicating one or more directions in which a specified object among the objects can exist; A third learning model that performs machine learning by taking information indicating the direction of the specified object and information indicating the spatial region where an obstacle exists as input and outputting information indicating the direction for facing the specified object while avoiding the obstacle; And A controller that controls the robot with reference to the ranging data, the output information of the first learning model, and the output information of the third learning model, wherein the controller performs the following process: determines the direction of the specified object and the spatial region of the obstacle by referring to the ranging data and the output information of the first learning model, and inputs the determined information into the third learning model, thereby determining the direction indicated by the output information of the third learning model as the traveling direction of the robot.
3. The robot according to claim 1 or 2, characterized in that The specified object is a moving body, The sensor periodically performs the process of measuring the distance in each direction, The first learning model takes the ranging data of at least two cycles or more as input and outputs information indicating one or more directions in which a moving body exists among the objects as one or more directions in which the specified object can exist.
4. The robot according to any one of claims 1 to 3, characterized in that The controller has: An input interface that acquires the ranging data output from the sensor; A processor that executes each process according to a program; and A memory that stores the program.
5. A control method, which is a control method for a self-propelled robot, characterized in that, The control method includes the following steps: Measure the distance from the robot to the objects existing in the surroundings in each direction; Take pictures of the surroundings of the robot to generate a captured image; and Control the robot with reference to the ranging data output in the measuring step, wherein the controlling step includes the following processes; Using a first learning model and a second learning model, determine the traveling direction of the robot to make the robot face a specified object with reference to one or more directions output from the first learning model and extracted from one or more directions by referring to the output information of the second learning model, wherein the first learning model performs machine learning by taking the ranging data as input and outputting information representing one or more directions in which the specified object can exist in the objects, and The second learning model performs machine learning by taking the captured image as input and outputting information representing one or more image regions that can include the specified object in the captured image.
6. A control method, which is a control method for a self-propelled robot, characterized in that, The control method includes the following steps: Measure the distance from the robot to the objects existing in the surroundings in each direction; Take pictures of the surroundings of the robot to generate a captured image; and Control the robot with reference to the ranging data output in the measuring step, wherein the controlling step includes the following processes; Using a first learning model and a third learning model, determine the direction of the specified object and the spatial region of the obstacle by referring to the ranging data and the output information of the first learning model, and input the determined information into the third learning model, so as to determine the direction represented by the output information of the third learning model as the traveling direction of the robot, wherein the first learning model performs machine learning by taking the ranging data as input and outputting information representing one or more directions in which the specified object can exist in the objects, and The third learning model performs machine learning by taking the information representing the direction of the specified object and the information representing the spatial region where the obstacle exists as input and outputting information representing the direction for facing the specified object while avoiding the obstacle.
7. A storage medium that stores a program for controlling the robot according to any one of claims 1 to 4, characterized in that The storage medium causes the controller to execute each of the processes.
Citation Information
Patent Citations
Image processing system
JP2008204102A
Electrically-driven travel base
JP2018085065A