Self-propelled robot program

JP7638518B2Active Publication Date: 2025-03-04MEGALITE IND
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2021104778
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-06-24
Publication Date
2025-03-04
Estimated Expiration
2041-06-24

AI Technical Summary

Benefits of technology

【0008】 本開示によれば、センサーによる弁別が困難な障害物に対処してこの障害物を回避する機能を、自走式ロボットに実現させることができる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007638518000001
    Figure 0007638518000001
  • Figure 0007638518000002
    Figure 0007638518000002
Patent Text Reader

Abstract

To enable the function to avoid an obstacle that is difficult to distinguish to be realized by a self-propelled robot.SOLUTION: According to a program for self-propelled robots, a self-propelled robot has the function to grasp its progression direction realized. The self-propelled robot also has the function realized that chronologically grasps the output torque of its propelling unit. Furthermore, self-propelled robot has the function realized that distinguishes and grasps the presence of an obstacle realized. Furthermore, the self-propelled robot has the function realized that determines whether or not the output torque is large. Furthermore, the self-propelled robot has the function realized that reprograms the progression direction to a 180-degree turned direction when the first and second conditions described later are satisfied continuously for a duration longer than or equal to a threshold. The first condition requires that no obstacles exist that are grasped. The second condition requires that a determination result is outputted to the effect that the output torque is large.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to a program for a self-propelled robot. [Background technology]

[0002] Conventionally, there is known a self-propelled robot that travels toward a destination while grasping the environment of the travel route by itself. For such a self-propelled robot, a technology is known that applies a program for a self-propelled robot that detects obstacles using a sensor and controls the travel based on the detection result (for example, see Patent Document 1 below). [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Patent No. 4233723 Summary of the Invention [Problem to be solved by the invention]

[0004] However, in the above-mentioned known technology, an obstacle map is created in which obstacles are extracted as a cluster of grid cells that are coarser than the resolution of the sensor, and the travel of the self-propelled robot is controlled by referring to this obstacle map. For this reason, the above-mentioned known technology cannot deal with the problem of the self-propelled robot being hindered from travel by small obstacles that are difficult for the sensor to distinguish.

[0005] The present disclosure makes it possible to provide a self-propelled robot with the ability to deal with and avoid obstacles that are difficult to distinguish using sensors when the self-propelled robot is traveling. [Means for solving the problem]

[0006] According to one feature of the present disclosure, a self-propelled robot program is applied to a self-propelled robot including a traveling unit and a sensor. Here, the traveling unit realizes traveling in a reprogrammably set traveling direction. The sensor detects an obstacle in the traveling direction. The self-propelled robot program realizes a traveling direction grasping function, an output torque grasping function, an obstacle grasping function, a determination function, and a first reprogramming function, which will be described later, in the self-propelled robot. Here, the traveling direction grasping function is a function of grasping the traveling direction. The output torque grasping function is a function of grasping the output torque of the traveling unit over time. The obstacle grasping function is a function of discriminating and grasping the presence or absence of the obstacle. The determination function is a function of determining whether the output torque grasped by the output torque grasping function is large in light of a predetermined standard. The first reprogramming function is a function for reprogramming the traveling direction to a direction rotated 180[°] from the traveling direction when both the first condition and the second condition described below are continuously satisfied for a time period equal to or longer than the threshold time. Here, the first condition is a condition that the obstacle recognized by the obstacle recognition function does not exist. The second condition is a condition that the judgment function has issued a judgment result indicating that the output torque is large in light of the criterion.

[0007] According to the above-mentioned program for a self-propelled robot, when the output torque of the propulsion unit continues to be high even though there is no obstacle identified in the direction of travel of the self-propelled robot, the self-propelled robot assumes that this is due to an obstacle that is difficult to identify by the sensor and retreats. This allows the self-propelled robot to realize the function of dealing with and avoiding an obstacle that is difficult to identify by the sensor. Effect of the Invention

[0008] According to the present disclosure, a self-propelled robot can be provided with the functionality to deal with and avoid obstacles that are difficult to distinguish using sensors. [Brief description of the drawings]

[0009] [Figure 1] 1 is a front view showing a self-propelled robot 10 to which a self-propelled robot program according to an embodiment of the present disclosure is applied. FIG. [Diagram 2] 11 is a flowchart illustrating a series of steps executed by a program for a self-propelled robot according to an embodiment of the present disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0010] The above-mentioned program for the self-propelled robot may cause the self-propelled robot to realize a previous traveling direction storage function, a progress amount determination function, and a second reprogramming function, which will be described later. Here, the previous traveling direction storage function is a function for storing the traveling direction immediately before being reprogrammed by the first reprogramming function as the previous traveling direction when the first reprogramming function is realized. The progress amount determination function is a function for determining the progress amount of the traveling in the traveling direction reprogrammed by the first reprogramming function. The second reprogramming function is a function for reprogramming the traveling direction to a direction rotated by an angle smaller than 180[°] with respect to the previous traveling direction when the progress amount becomes large in light of a predetermined threshold amount.

[0011] According to the above-mentioned program for a self-propelled robot, after the self-propelled robot retreats to deal with an obstacle that is difficult for the sensor to distinguish, it sets a new direction of travel that is different from the previous direction of travel and travels in this direction of travel. This allows the self-propelled robot to continue traveling while realizing the function of dealing with and avoiding an obstacle that is difficult for the sensor to distinguish.

[0012] Next, the configuration of self-propelled robot 10 to which a self-propelled robot program according to an embodiment of the present disclosure is applied will be described with reference to Fig. 1. Self-propelled robot 10 has a traveling unit 11, and is a self-propelled robot that travels by itself on floor 90 using this traveling unit 11. In this embodiment, self-propelled robot 10 is provided with a battery (not shown) therein, and each component of self-propelled robot 10 is operated by electrical energy supplied by this battery. Additionally, floor 90 may have obstacles 90A of various sizes lying thereon.

[0013] The traveling unit 11 includes a pair of driving wheels 11A, a motor assembly 10A provided for each of the driving wheels 11A, and one caster 11B. In this embodiment, the motor assembly 10A is a driving force source that performs torque limiting so that the output torque does not exceed a set torque, and is configured to be capable of both forward and reverse rotation. The motor assembly 10A is configured to drive the driving wheels 11A of the traveling unit 11 independently of the other driving wheels 11A. Each motor assembly 10A is configured to access a storage 12C outside the motor assembly 10A to obtain command data for forward rotation / reverse rotation / rotation stop, and to switch the driving between forward rotation / reverse rotation / rotation stop according to this command data. One of the motor assemblies 10A is configured to output the instantaneous value of its output torque to the storage 12C over time.

[0014] The self-propelled robot 10 also includes a control device 12, which is a computer that controls the self-propelling of the self-propelled robot 10 by the traveling unit 11. The control device 12 is provided with a rider 12A, a collision sensor 12B, a storage 12C, and a clock 12D. In this embodiment, the control device 12 recognizes the side where the set of drive wheels 11A is located with respect to the casters 11B (the side facing the page in FIG. 1) as the "front" and the opposite side (the side facing the page in FIG. 1) as the "rear". The control device 12 then realizes the traveling of the self-propelled robot 10 by either rotating each motor assembly 10A forward with the traveling direction facing forward, or rotating each motor assembly 10A in the reverse direction with the traveling direction facing backward. Here, the traveling direction is a parameter that is set in a reprogrammable manner in the control device 12.

[0015] The LIDAR 12A is a sensor that is exposed on the surface of the front side of the self-propelled robot 10 (the front side of the paper in FIG. 1). The LIDAR 12A irradiates an area within a predetermined angle range including the front with infrared rays, and measures and analyzes the infrared rays returning from this area. In this way, the LIDAR 12A senses the distribution of obstacles 90A in the area. In this embodiment, the LIDAR 12A is configured to output the sensing results to the control device 12 over time. In this way, the LIDAR 12A functions as a sensor that senses obstacles in the traveling direction of the self-propelled robot 10 when the self-propelled robot 10 is traveling with its traveling direction facing forward.

[0016] Collision sensor 12B is a sensor that includes, as a sensing element, a plate-shaped bumper that covers the front side of traveling unit 11 of self-propelled robot 10. Here, in Fig. 1, the configuration of collision sensor 12B is omitted from the illustration other than the bumper.

[0017] Collision sensor 12B detects the presence or absence of obstacle 90A colliding with the bumper. In this embodiment, collision sensor 12B is configured to output the detection result of the presence or absence of obstacle 90A to control device 12 over time. In this way, collision sensor 12B functions as a sensor that detects an obstacle in the traveling direction of self-propelled robot 10 when the self-propelled robot 10 is traveling with its traveling direction facing forward.

[0018] The clock 12D is a device that outputs data indicating the current time over time. In this embodiment, the clock 12D is attached in a built-in state to the control device 12, and outputs data indicating the current time in a computer-readable format to the storage 12C.

[0019] The storage 12C is a storage device in which various programs and data are stored in a computer-readable manner. In this embodiment, the storage 12C is attached to the control device 12 in a built-in state.

[0020] An operating system, which is a program that causes the control device 12 to realize a function of operating a plurality of programs independently of one another, is stored in a computer-readable manner in the storage 12C. This operating system is automatically executed in the control device 12 when the power switch (not shown) of the self-propelled robot 10 changes from an off state to an on state. The operating system then causes the control device 12 to execute a call process for calling and executing a predetermined program that is set in advance among the programs stored in the storage 12C in a computer-readable manner. Furthermore, when the power switch of the self-propelled robot 10 changes from an on state to an off state, the operating system also causes the control device 12 to execute a process for forcibly terminating all programs being executed in the control device 12 except for the operating system itself. The operating system then causes the control device 12 to execute a process for terminating itself and a process for shutting down the control device 12.

[0021] In addition, a self-propelled robot program according to an embodiment of the present disclosure (hereinafter also referred to as a "control program") is stored in a computer-readable manner in storage 12C. This control program is executed by control device 12 by an operating system or a calling process of a collision avoidance program described below, and causes control device 12 to function as a control means for controlling the self-propelling of self-propelled robot 10.

[0022] Storage 12C also stores a computer-readable collision response program for responding to a collision of obstacle 90A with self-propelled robot 10 detected by collision sensor 12B. This collision response program is executed by control device 12 by the above-mentioned control program calling process (see step S80 in FIG. 2), and takes over control of the self-propelled robot 10's self-propelled motion from the above-mentioned control program. The collision response program then slows down the traveling speed of self-propelled robot 10 to bring self-propelled robot 10 to a stop, and then causes control device 12 to execute its own termination process and process of turning off the power switch of self-propelled robot 10.

[0023] The storage 12C also stores a computer-readable collision avoidance program for avoiding a collision with an obstacle 90A detected by the rider 12A. The collision avoidance program is executed by the control device 12 by the above-mentioned control program calling process (see step S60 in FIG. 2), and takes over control of the self-propelled robot 10 from the above-mentioned control program. The collision avoidance program then causes the control device 12 to execute a process for changing the orientation and traveling direction of the self-propelled robot 10 by varying the amount of rotation of each drive wheel 11A of the traveling unit 11, thereby avoiding a collision with the obstacle 90A detected by the rider 12A. Thereafter, the collision avoidance program performs a process for calling the above-mentioned control program, causes the control device 12 to take over control of the self-propelled robot 10 to the control program, and causes the control device 12 to execute a process for terminating itself.

[0024] In addition, the storage 12C stores various data necessary for controlling the self-propelled robot 10 in a computer-readable and computer-rewritable state. This various data includes command data for switching between forward rotation, reverse rotation, and rotation stop of each motor assembly 10A. The various data also includes data indicating the current time output from the clock 12D. The various data also includes data on the set torque for the torque limit of each motor assembly 10A.

[0025] Next, a series of steps that the control program causes control device 12 of self-propelled robot 10 to execute will be described with reference to the flowchart shown in Fig. 2. In each of the series of steps, control device 12 first executes step S10 in Fig. 2.

[0026] In step S10, the control device 12 performs initial settings required to execute each step described below, and then the process proceeds to step S20.

[0027] Here, the initial setting includes a process for taking over control of the self-propelled robot 10 when the control program is executed by the process for calling the collision avoidance program. The initial setting also includes a process for setting the front of the self-propelled robot 10 to the traveling direction of the self-propelled robot 10.

[0028] In step S20, the control device 12 realizes a state in which the currently set traveling direction is forward, and then rotates each motor assembly 10A forward by a predetermined rotation angle, thereby realizing self-propelled robot 10 traveling. Then, the control device 12 advances the process to step S30. In this embodiment, in step S20, the control device 12 attempts to rotate each motor assembly 10A forward by overwriting the command data stored in storage 12C. Then, the control device 12 advances the process to step S30 regardless of whether the self-propelled robot 10 actually traveled as a result of the above-mentioned overwriting process.

[0029] In step S30, the control device 12 acquires output from the rider 12A, stores this output in the storage 12C, and analyzes it. As a result, the control device 12 distinguishes and grasps the distribution of the obstacles 90A sensed by the rider 12A and the presence or absence of the obstacles 90A among these obstacles 90A in the traveling direction of the self-propelled robot 10. The control device 12 then advances the process to step S40. Here, the function of the control device 12 to grasp the presence or absence of the obstacles 90A in the traveling direction of the self-propelled robot 10 in step S30 corresponds to the "obstacle grasping function" in this disclosure.

[0030] In step S40, control device 12 acquires output from collision sensor 12B and, based on the acquired result, discriminates and grasps the presence or absence of obstacle 90A sensed by collision sensor 12B. Control device 12 then advances the process to step S50. Here, the function of control device 12 that executes step S40 can be said to be a function of control device 12 grasping the presence or absence of obstacle 90A in the traveling direction of self-propelled robot 10, and corresponds to the "obstacle grasping function" in this disclosure.

[0031] In step S50, the control device 12 determines, based on the result of the most recently executed process of step S30, whether the rider 12A has sensed an obstacle 90A in the traveling direction of the self-propelled robot 10. If the result of this determination is "sensed," the control device 12 advances the process to step S60. If the result of the above determination is "not sensed," the control device 12 advances the process to step S70.

[0032] In step S60, the control device 12 performs the process of calling the collision avoidance program described above, and causes this collision avoidance program to take over control of the self-propelled robot 10. Then, the control device 12 executes the process of terminating the control program.

[0033] In step S70, the control device 12 determines whether or not the collision sensor 12B has detected an obstacle 90A in the traveling direction of the self-propelled robot 10 based on the result of the processing in step S90 executed most recently. If the result of this determination is "detected," the control device 12 advances the processing to step S80. If the result of the above determination is "not detected," the control device 12 advances the processing to step S90.

[0034] In step S80, the control device 12 performs the process of calling the collision response program described above, and causes this collision response program to take over control of the self-propelled robot 10. Then, the control device 12 executes the process of ending the control program.

[0035] In step S90, the control device 12 acquires an instantaneous value of the output torque currently being output to the storage 12C by one of the motor assemblies 10A. Then, the control device 12 advances the process to step S100.

[0036] In step S100, the control device 12 realizes a judgment function that judges whether the output torque value acquired in the immediately preceding step S90 is large in light of a criterion set based on the data of the set torque stored in the storage 12C. In this embodiment, the control device 12 uses the set torque value stored in the storage 12C itself as a criterion, and issues a judgment result of "large" when the output torque value is equal to or greater than the criterion, and "small" when the output torque value is less than the criterion. Hereinafter, the condition that the judgment function issues a judgment result indicating that the output torque is large in light of the above criterion is also referred to as a "second condition."

[0037] In step S100, if a "large" determination result is obtained (in this embodiment, the output torque value is equal to or greater than the set torque value), the control device 12 advances the process to step S120. If a "small" determination result is obtained (in this embodiment, the output torque value is less than the set torque value), the control device 12 advances the process to step S110.

[0038] In step S110, the control device 12 sets the reference time to an undefined state, and advances the process to step S20. Here, the reference time is a variable indicating the time when a state in which the second condition is satisfied occurs.

[0039] Here, the control device 12, which has advanced the process to step S20, advances the process to step S100 as long as the condition that no obstacle 90A is detected by the obstacle detection function (hereinafter also referred to as the "first condition") is satisfied. Therefore, the control device 12 repeatedly executes the process of step S100 while the first condition is satisfied and the second condition is not satisfied. This realizes an output torque detection function in the control device 12 of the self-propelled robot 10 that detects the output torque of the motor assembly 10A over time. Note that in this embodiment, the first condition can be rephrased as a condition that "neither the rider 12A nor the collision sensor 12B has detected an obstacle 90A in the traveling direction of the self-propelled robot 10."

[0040] In step S130, the control device 12 acquires data indicating the current time that is currently being output by the clock 12D to the storage 12C. Then, the control device 12 advances the process to step S140.

[0041] In step S130, the control device 12 performs a condition judgment based on the elapsed time from the reference time to the current time acquired in the immediately preceding step S130, and branches the pattern of the subsequent processing depending on the judgment result of this condition judgment. That is, if the elapsed time is less than the threshold time, the control device 12 advances the processing to step S20. Also, if the elapsed time is equal to or greater than the threshold time, the control device 12 advances the processing to step S150. Also, if the control device 12 cannot derive the elapsed time in a state where the reference time is undefined, the control device 12 advances the processing to step S140. The threshold time used in the judgment in step S130 is a predetermined amount of time set in the initial setting in the above-mentioned step S10, and is set to, for example, 3 [seconds] in this embodiment.

[0042] In step S140, the control device 12 defines the reference time as the current time acquired in the most recently executed step S130 (ie, so that the value is equal to the current time), and the process proceeds to step S20.

[0043] In step S150, the control device 12 stores the currently set travel direction as the previous travel direction in the storage 12C. The control device 12 then advances the process to step S160.

[0044] In step S160, the control device 12 realizes a first reprogramming function for reprogramming the currently set traveling direction to a direction rotated 180[°] from the traveling direction. Then, the control device 12 advances the process to step S170.

[0045] Here, according to step S150 described above, when the first reprogramming function is implemented, self-propelled robot 10 stores the traveling direction immediately before being reprogrammed by this first reprogramming function as the previous traveling direction. In other words, the function of control device 12 of self-propelled robot 10 executing the process of step S150 described above corresponds to the "previous traveling direction storage function" in this disclosure.

[0046] In step S170, the control device 12 repeatedly executes a series of processes from step S180 to step S190, which will be described later. This series of processes is repeatedly executed until the amount of travel of the self-propelled robot 10 in the travel direction reprogrammed by implementing the first reprogramming function becomes large in comparison with a predetermined threshold amount. Here, the threshold amount is a predetermined distance amount that is set separately from the above-mentioned threshold time in the initial setting of step S10 described above, and is set to, for example, 10 [cm] in this embodiment. Note that when the amount of travel of the self-propelled robot 10 becomes large in comparison with the above-mentioned threshold amount, the control device 12 stops the repeated process of step S170 and proceeds to the process of step S200.

[0047] In step S180, the control device 12 reverses the rotation of each motor assembly 10A by a predetermined rotation angle while moving backward from the currently set traveling direction, thereby realizing the traveling of the self-propelled robot 10. The control device 12 then proceeds to step S190. In this embodiment, in step S180, the control device 12 reverses the rotation of each motor assembly 10A by overwriting the command data stored in storage 12C. The control device 12 then proceeds to step S190 regardless of whether the self-propelled robot 10 has actually traveled as a result of the overwriting process.

[0048] In step S190, the control device 12 realizes a progress amount grasping function that grasps the progress amount of the self-propelled robot 10 traveling in the traveling direction reprogrammed by the first reprogramming function. The progress amount grasped by this progress amount grasping function becomes a trigger to stop the repeated processing of step S170 when the value is large in comparison with the threshold amount.

[0049] In this embodiment, the control device 12 executes the process of step S190 as the following series of processes. That is, the control device 12 first acquires the output from the rider 12A stored in the storage 12C in the most recently executed step S30. Next, the control device 12 analyzes the acquired output and determines the relative positional relationship between the self-propelled robot 10 and each obstacle 90A sensed by the rider 12A at the time when step S30 was most recently executed. Next, the control device 12 acquires and analyzes the output from the rider 12A at the current time, thereby determining the relative positional relationship between the self-propelled robot 10 and each obstacle 90A sensed by the rider 12A at the current time. Then, the control device 12 derives and determines the amount of travel progress of the self-propelled robot 10 in the form of a distance amount from the difference in the relative positional relationship between the obstacles 90A and the self-propelled robot 10 between the past time and the current time.

[0050] In step S200, the control device 12 acquires the previous travel direction stored in the storage 12C in the most recently executed step S150. Next, the control device 12 reprograms the currently set travel direction to a direction rotated by an angle smaller than 180° (for example, 45° in this embodiment) with respect to the acquired previous travel direction. Then, the control device 12 advances the process to step S20.

[0051] As described above, the process of step S200 is executed when the amount of travel progress of self-propelled robot 10 becomes large in comparison with the threshold amount. In other words, the function of control device 12 of self-propelled robot 10 executing the process of step S200 corresponds to the "second reprogramming function" in this disclosure.

[0052] According to the above-described control program (self-propelled robot program), when the output torque of the propulsion unit 11 continues to be high even though there is no obstacle 90A that has been identified in the self-propelled robot's direction of travel, the self-propelled robot 10 assumes that this is due to an obstacle 90A that is difficult to identify by the rider 12A and / or the collision sensor 12B, and retreats. This allows the self-propelled robot 10 to realize the function of dealing with and avoiding the obstacle 90A that is difficult to identify by the rider 12A and / or the collision sensor 12B.

[0053] Furthermore, according to the above-mentioned control program (self-propelled robot program), after the self-propelled robot 10 retreats to deal with an obstacle 90A that is difficult to discriminate by the rider 12A and / or the collision sensor 12B, it sets a new traveling direction different from the previous traveling direction and travels in this traveling direction. This allows the self-propelled robot 10 to continue traveling while realizing the function of dealing with and avoiding the obstacle 90A that is difficult to discriminate by the rider 12A and / or the collision sensor 12B.

[0054] The present disclosure is not limited to the appearance and configuration described in the above embodiment, and various modifications, additions, and deletions are possible without departing from the gist of the present disclosure. For example, the following various forms can be implemented.

[0055] (1) In the determination function, the criterion for determining whether the output torque value is large does not have to be the set torque value of the motor assembly itself. In other words, in the determination function, the criterion for determining whether the output torque value is large can be changed as appropriate, for example, to a predetermined value, or a value obtained by multiplying the set torque value of the motor assembly by a positive predetermined number that is less than 1.

[0056] (2) The amount of travel of the self-propelled robot that triggers the realization of the second reprogramming function in the self-propelled robot is not limited to the distance amount derived from the change in the relative positional relationship between each obstacle and the self-propelled robot. That is, the amount of travel may be, for example, the number of times a process is repeated (i.e., a dimensionless amount) when a process for rotating the motor assembly by a predetermined rotation angle is repeated during the travel of the self-propelled robot. In addition, the amount of travel may be, for example, the amount of time that has elapsed since the self-propelled robot started traveling in the travel direction reprogrammed by the first reprogramming function.

[0057] (3) The self-propelled robot program according to the present disclosure is not limited to being applied to a self-propelled robot having a lidar and a collision sensor as sensors for detecting obstacles. That is, the self-propelled robot program according to the present disclosure can be applied to a self-propelled robot having an appropriately selected type of sensor that can detect obstacles in the traveling direction of the self-propelled robot, such as a radar, an ultrasonic sensor, a visual sensor, or a thermal camera.

[0058] (4) The traveling of the self-propelled robot in the direction of travel reprogrammed by realizing the first reprogramming function is not limited to being realized by reversing the rotation of each motor assembly with the direction of travel reprogrammed backwards. In other words, the program for a self-propelled robot according to the present disclosure can be configured to change the orientation of the self-propelled robot when the direction of travel is reprogrammed by realizing the first reprogramming function so that the direction of travel is forward, and to cause the self-propelled robot to travel by rotating each motor assembly forward. In this case, the self-propelled robot can use a sensor that detects obstacles ahead to deal with new obstacles that appear in the path it has passed.

[0059] (5) The self-propelled robot program according to the present disclosure is not limited to being applied to a self-propelled robot having a running unit equipped with drive wheels and casters to realize the running. In other words, the self-propelled robot program according to the present disclosure can be applied to a self-propelled robot equipped with a running unit that realizes running by an appropriately selected type of manipulator. Here, specific examples of the manipulator include a friction-driven ball, an endless track, or running legs. [Explanation of symbols]

[0060] 10 Self-propelled robots 10A Motor Assembly 11. Running unit 11A Drive wheel 11B Caster 12 Control device 12A Lidar (sensor) 12B Collision sensor (sensor) 12C Storage 12D Watch 90 beds 90A Obstacles

Claims

1. A program for a self-propelled robot that is applied to a self-propelled robot having a traveling unit that realizes traveling in a reprogrammably set traveling direction and a sensor that detects an obstacle in the traveling direction, The self-propelled robot, A traveling direction grasping function for grasping the traveling direction; An output torque grasping function for grasping the output torque of the traveling unit over time; An obstacle recognition function for discriminating and recognizing the presence or absence of the obstacle; a determination function for determining whether the output torque grasped by the output torque grasping function is large in light of a predetermined standard; A first condition that the obstacle recognized by the obstacle recognition function does not exist; and a second condition that the determination function has determined that the output torque is large in light of the criterion; a first reprogramming function for reprogramming the travel direction to a direction rotated 180° with respect to the travel direction when both of the above conditions are continuously satisfied for a time period equal to or longer than a threshold time; A program for self-propelled robots that makes this possible.

2. 2. A program for a self-propelled robot according to claim 1, The self-propelled robot, a previous travel direction storage function that stores the travel direction immediately before being reprogrammed by the first reprogramming function as a previous travel direction when the first reprogramming function is realized; a progress amount grasping function for grasping a progress amount of the traveling in the traveling direction reprogrammed by the first reprogramming function; a second reprogramming function for reprogramming the travel direction to a direction rotated by an angle of less than 180° with respect to the previous travel direction when the travel amount becomes large relative to a predetermined threshold amount; A program for self-propelled robots that makes this possible.

Citation Information

Patent Citations

  • Robot wheel detection method and device and storage medium

    CN114290312A

  • Autonomous travel vehicle

    JP1997160646A

  • Obstacle detection device, obstacle detection method, and recording medium recording obstacle detection program

    JP4233723B2