Self-propelled robot program
The program for self-propelled robots addresses the challenge of navigating around small obstacles by adjusting the output torque based on sensor data and set torque conditions, effectively enabling the robots to overcome these obstacles while optimizing energy use.
Patent Information
- Application Number
- JP2021108572
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-06-30
- Publication Date
- 2025-03-25
- Estimated Expiration
- 2041-06-30
AI Technical Summary
Existing self-propelled robots struggle to effectively navigate around small obstacles that are difficult to detect with sensors, as they rely on coarse grid cell obstacle maps that fail to accurately represent these small obstacles.
A program for self-propelled robots that includes a motor assembly with torque limiting, a running unit, and sensors, which enables the robot to adjust its output torque and navigate around small obstacles by changing the set torque value when specific conditions are met.
Enables self-propelled robots to successfully navigate around small size obstacles that are difficult to discriminate with sensors, while also preventing unnecessary energy consumption by stopping the motor assembly when conditions are met.
Smart Images

Figure 0007650497000001 
Figure 0007650497000002
Abstract
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 overcome small obstacles that are difficult for sensors to distinguish while the self-propelled robot is traveling. [Means for solving the problem]
[0006] According to one feature of the present disclosure, a program for a self-propelled robot is applied to a self-propelled robot including a motor assembly, a traveling unit, and a sensor. Here, the motor assembly performs torque limitation so that the output torque does not become greater than a set torque. The traveling unit realizes traveling using the motor assembly as a driving force source. The sensor detects an obstacle in the traveling direction. The program for a self-propelled robot causes the self-propelled robot to realize a traveling state grasping function, an output torque grasping function, an obstacle grasping function, a judgment function, and a set torque changing function, which will be described later. Here, the traveling state grasping function is a function of grasping whether or not the self-propelled robot itself is traveling. The output torque grasping function is a function of grasping the output torque of the motor assembly over time. The obstacle grasping function is a function of grasping the presence or absence of the obstacle by discriminating between them. The judgment function is a function of judging whether or not the output torque grasped by the output torque grasping function is large in light of a standard set based on the value of the set torque. The set torque change function is a function that changes the set torque to a larger value when a state in which all three conditions, a first condition, a second condition, and a third condition, described later, are satisfied continues for a first time or longer. Here, the first condition is a condition in which the obstacle recognized by the obstacle recognition function does not exist. The second condition is a condition in which the state in which the vehicle is not traveling is recognized by the traveling state recognition function. The third condition is a condition in which the determination function outputs a determination result that the output torque is large in light of the standard.
[0007] According to the above-mentioned program for a self-propelled robot, when there is no identified obstacle in the direction of travel of the self-propelled robot and the self-propelled robot continues to be in a state where it is not moving despite the output torque of the motor assembly being large, the output torque of the motor assembly can be made larger than the normal set torque. This allows the self-propelled robot to realize the function of dealing with and climbing over small obstacles that are difficult to identify with a sensor. Effect of the Invention
[0008] According to the present disclosure, a self-propelled robot can be provided with the ability to handle and overcome small obstacles that are difficult for sensors to distinguish. [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 program for the self-propelled robot may cause the self-propelled robot to realize a stop function for stopping the motor assembly. Here, the motor assembly is stopped by the stop function when the state in which all three of the first condition, the second condition, and the third condition are satisfied continues for a second time or more after the set torque change function is realized.
[0011] According to the above-mentioned program for a self-propelled robot, when the self-propelled robot is still unable to move even when the output torque of the motor assembly is increased above the normal set torque, the motor assembly can be stopped to avoid wasting energy.
[0012] Next, the configuration of a 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. This self-propelled robot 10 has a traveling unit 11 consisting of a pair of drive wheels 11A and one caster 11B, and is a self-propelled robot that travels by itself on a floor 90 using this traveling unit 11. In this embodiment, the self-propelled robot 10 is equipped with a battery (not shown) therein, and each component of the self-propelled robot 10 is operated by electrical energy supplied by this battery. In addition, the floor 90 may have obstacles 90A of various sizes lying on it.
[0013] The self-propelled robot 10 includes a motor assembly 10A that serves as a driving force source for the traveling unit 11. The motor assembly 10A performs torque limitation so that the output torque does not exceed a set torque. In this embodiment, the motor assembly 10A is provided for each driving wheel 11A of the traveling unit 11, and is configured to be able to drive these driving wheels 11A separately. Each motor assembly 10A is configured to access a storage 12C outside the motor assembly 10A to obtain set torque data, and to repeatedly overwrite its own set torque with this data. Each motor assembly 10A is configured to access the storage 12C to obtain on / off command data, and to switch the driving on / off according to the command data. One of the motor assemblies 10A is configured to output an instantaneous value of its output torque to the storage 12C.
[0014] Self-propelled robot 10 also includes control device 12, which is a computer that controls the self-propelling of self-propelled robot 10 using traveling unit 11 and motor assembly 10A. This control device 12 is equipped with a rider 12A, collision sensor 12B, and storage 12C. In this embodiment, control device 12 defines the side where the set of drive wheels 11A is located relative to casters 11B (the side facing the page in FIG. 1) as the "front," and performs control so that self-propelled robot 10 travels exclusively in the forward direction.
[0015] The rider 12A is a sensor that is exposed on the surface of the front side of the self-propelled robot 10 (the direction in which the self-propelled robot 10 is traveling; the front side of the page in FIG. 1). The rider 12A irradiates an area in front of it with infrared rays, and measures and analyzes the infrared rays returning from this area. In this way, the rider 12A senses the distribution of obstacles 90A in the area, including the presence or absence of obstacles 90A in the direction in which the self-propelled robot 10 is traveling. In this embodiment, the rider 12A is provided at a position on the self-propelled robot 10 above the traveling unit 11 (the upper side in FIG. 1), and is configured to output the sensing results to the control device 12 over time.
[0016] Collision sensor 12B is a plate-shaped sensor that covers the front side of traveling unit 11 and motor assembly 10A of self-propelled robot 10. Collision sensor 12B detects the presence or absence of obstacle 90A colliding with its plate surface. 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.
[0017] 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 recorded in a computer-readable manner in the storage 12C. In this embodiment, the operating system is automatically executed in the control device 12 when the power switch (not shown) of the self-propelled robot 10 is changed 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 recorded in the storage 12C in a computer-readable manner. Furthermore, when the power switch of the self-propelled robot 10 is changed 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 termination process for itself and a shutdown process for the control device 12.
[0018] In addition, a self-propelled robot program according to an embodiment of the present disclosure (hereinafter also referred to as a "control program") is recorded 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.
[0019] Storage 12C also has a computer-readable record of a 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 process of calling the control program (see step S130 in FIG. 2), and takes over control of the self-propelled robot 10's self-propelled motion from the control program. The collision response program then causes control device 12 to slow 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.
[0020] In addition, a collision avoidance program for avoiding a collision with an obstacle 90A detected by the rider 12A is recorded in a computer-readable manner in the storage 12C. This collision avoidance program is executed by the control device 12 by the call process of the control program (see step S110 in FIG. 2), and takes over control of the self-propelled robot 10 from the 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 call process of the control program, causes the control program to take over control of the self-propelled robot 10, and causes the control device 12 to execute a process for terminating itself.
[0021] Additionally, various data required for controlling the self-propelled robot 10 is recorded in storage 12C in a computer-readable and computer-rewritable state. This various data includes data on the set torque (hereinafter also referred to as "set torque B") in motor assembly 10A.
[0022] 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.
[0023] 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.
[0024] Here, the initial setting includes a process of taking over control of the self-propelled robot 10 when the control program is executed by the process of calling the collision avoidance program. The initial setting also includes a process of setting the value of the set torque B to a predetermined value recorded in advance in storage 12C.
[0025] In step S20, the control device 12 sets a wait-and-see timer value E, and the process proceeds to step S30. Here, the wait-and-see timer value E is a value that becomes a branching threshold in a branching by an addition timer C (step S170) described later, and is set to a positive value.
[0026] In step S30, the control device 12 sets a countdown timer A (described later) to a value of 0, and the process proceeds to step S40.
[0027] In step S40, the control device 12 determines whether the value of the subtraction timer A is greater than 0 or less than or equal to 0. If the result of this determination is "greater than 0," the control device 12 advances the process to step S60. If the result of the above determination is "less than or equal to 0," the control device 12 advances the process to step S50.
[0028] In step S50, the controller 12 resets the value of the set torque B in the storage 12C, thereby making this value the value set in the initial setting in step S10. The controller 12 then advances the process to step S70.
[0029] In step S60, the control device 12 decrements the value of the subtraction timer A by a predetermined value, and proceeds to step S70. That is, the subtraction timer A functions as a counter variable for postponing resetting of the value of the set torque B when the value of the set torque B differs from the value set in the initial setting in step S10.
[0030] In step S70, the control device 12 sets the count timer C to an undefined state, and proceeds to step S80. Here, the count timer C is a counter variable for indicating how long the state in which the output torque of the motor assembly 10A is equal to or greater than the set torque B continues.
[0031] In step S80, 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 discriminates and grasps the distribution of obstacles 90A sensed by the rider 12A and the presence or absence of 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 S90. Here, the function of the control device 12 that executes step S80 corresponds to the "obstacle grasping function" in this disclosure.
[0032] In step S90, the control device 12 acquires an output from the collision sensor 12B, and discriminates and grasps the presence or absence of an obstacle 90A sensed by the collision sensor 12B based on the acquired result. Then, the control device 12 advances the process to step S100. Here, the function of the control device 12 that executes step S90 corresponds to the "obstacle recognition function" in this disclosure.
[0033] In step S100, the control device 12 determines whether the rider 12A has sensed the obstacle 90A or not based on the result of the process of step S80 that was most recently executed. If the result of this determination is "sensed," the control device 12 advances the process to step S110. If the result of the above determination is "not sensed," the control device 12 advances the process to step S120.
[0034] In step S110, 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.
[0035] In step S120, the control device 12 judges whether the collision sensor 12B has sensed the obstacle 90A or not based on the result of the process of step S90 executed most recently. If the result of this judgment is "sensed," the control device 12 advances the process to step S130. If the result of the above judgment is "not sensed," the control device 12 advances the process to step S140.
[0036] In step S130, the control device 12 performs the process of calling the collision response program described above, and causes the collision response program to take over control of the self-propelled robot 10. Then, the control device 12 executes the process of terminating the control program.
[0037] In step S140, the control device 12 accesses the storage 12C to set the above-mentioned command data to the ON state, thereby turning on the drive of each motor assembly 10A. The control device 12 then advances the process to step S150. Note that, if the command data is already in the ON state in step S140, the control device 12 advances the process to step S150 while maintaining the command data in the ON state.
[0038] In step S150, 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 S160.
[0039] In step S160, the control device 12 realizes a determination function for determining whether or not the value of the output torque acquired in the immediately preceding step S150 is large in light of a criterion (the value of the set torque B itself in this embodiment) that is set based on the currently set value of the set torque B. Hereinafter, the condition that the determination function has output a determination result that the output torque is large in light of the criterion is also referred to as the "third condition."
[0040] In step S160, if the third condition is satisfied (in this embodiment, the value of the output torque is equal to or greater than the value of the set torque B), the control device 12 advances the process to step S170. If the third condition is not satisfied (in this embodiment, the value of the output torque is less than the value of the set torque B), the control device 12 advances the process to step S40.
[0041] Here, the control device 12 that has advanced the process to step S40 advances the process to step S160 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 S160 while the first condition is satisfied and the third condition is not satisfied. In this way, an output torque detection function that detects the output torque of the motor assembly 10A over time is realized in the control device 12 of the self-propelled robot 10. Note that in this embodiment, the first condition can be rephrased as a condition that "neither the rider 12A nor the collision sensor 12B detects the obstacle 90A."
[0042] In step S170, the control device 12 performs a condition determination based on the increment timer C, and branches the pattern of subsequent processing depending on the result of the condition determination. That is, when the condition that the increment timer C is in an undefined state is satisfied, the control device 12 advances the processing to step S180. Also, when the condition that the increment timer C is defined and its value is equal to or greater than the wait-and-see timer value E is satisfied, the control device 12 advances the processing to step S220. Also, when the condition that the increment timer C is defined and its value is less than the wait-and-see timer value E (hereinafter also referred to as "condition H") is satisfied, the control device 12 advances the processing to step S210.
[0043] In step S180, the controller 12 defines an up timer C so that its value is 0, and the process proceeds to step S190.
[0044] In step S190, the control device 12 analyzes the distribution of obstacles 90A determined in the most recently executed step S80, and determines the relative positional relationship between these obstacles 90A and self-propelled robot 10. Next, the control device 12 determines position information indicating the current position of the self-propelled robot 10 based on the relative positional relationship. The control device 12 then advances the process to step S200.
[0045] In step S200, the control device 12 backs up the position information grasped in the immediately preceding step S190 in the storage 12C, and the process proceeds to step S80.
[0046] Here, as described above, the control device 12 that has advanced the process to step S80 will advance the process to step S170 as long as both the first condition and the third condition are satisfied. Therefore, the control device 12 that has executed step S180 will advance the process to step S210 as long as both the first condition and the third condition are satisfied.
[0047] In step S210, the control device 12 increments the value of the incremental timer C by a predetermined value, and the process proceeds to step S80.
[0048] Here, as described above, the control device 12 that has advanced the process to step S80 advances the process to step S170 as long as both the first condition and the third condition are satisfied. Therefore, the control device 12 repeatedly executes the process of step S210 until all three conditions, the first condition, the third condition, and the condition H, are satisfied. This realizes a function in the control device 12 to wait while maintaining the current state when both the first condition and the third condition are satisfied during the self-propelled robot 10's self-propelled movement. Note that in this embodiment, the value of the wait timer value E set in step S20 and the increase amount of the value of the addition timer C in step S210 are set so that the time during which the above-mentioned waiting is performed (hereinafter also referred to as the "first time") is about 3 [seconds].
[0049] In step S220, the control device 12 acquires the output from the rider 12A, and discriminates and grasps the relative positional relationship between the self-propelled robot 10 and each obstacle 90A based on the acquired results. The control device 12 then advances the process to step S230.
[0050] In step S230, control device 12 determines position information indicating the current position of self-propelled robot 10 based on the relative positional relationship between self-propelled robot 10 and each obstacle 90A determined in previously executed step S220. Control device 12 then advances the process to step S240.
[0051] In step S240, the control device 12 compares the position information determined in the immediately preceding step S230 with the position information backed up in storage 12C in the most recently executed step S200, thereby realizing a traveling state determination function that determines whether the self-propelled robot 10 itself is traveling. Then, the control device 12 advances the process to step S250.
[0052] In step S250, controller 12 determines whether or not self-propelled robot 10 was traveling at the first time based on the result of the processing of step S240 executed immediately before. In other words, controller 12 determines whether or not the condition that self-propelled robot 10 is not traveling (hereinafter also referred to as the "second condition") has been continuously satisfied for a period of time equal to or longer than the first time. If self-propelled robot 10 was traveling at the first time (i.e. the second condition is not satisfied), controller 12 advances the processing to step S260. If self-propelled robot 10 was not traveling at the first time (i.e. the second condition is satisfied), controller 12 advances the processing to step S270.
[0053] In step S260, the control device 12 changes the value of the set torque B in the storage 12C to a larger value, and proceeds to step S280. In this embodiment, in step S260, the control device 12 executes a process of changing the value of the set torque B in the storage 12C to a predetermined value F that is larger than the value of the set torque B set in the initial setting in step S10. This predetermined value F is a value that is set in the initial setting in step S10.
[0054] Here, the process of step S260 is executed when a state in which all three conditions, the first condition, the second condition, and the third condition, are satisfied continues for a first time or more from the timing at which this state occurs (hereinafter also referred to as the "occurrence timing"). Therefore, the process of step S260 can be said to be a process that realizes the "set torque change function" in the present disclosure when the value of the set torque B becomes larger as a result of this process.
[0055] In step S270, the control device 12 turns off flag G, which is a flag (i.e., a Boolean variable) indicating that resetting of the set torque B changed by the set torque changing function (see step S50) is postponed. Then, the control device 12 advances the process to step S30. Note that, if flag G is already in the off state in step S270, the control device 12 advances the process to step S30 while keeping flag G in the off state.
[0056] In step S280, the control device 12 determines whether the value of the subtraction timer A is less than or equal to 0 or greater than 0. If the value of the subtraction timer A is greater than 0, the control device 12 advances the process to step S40. If the value of the subtraction timer A is less than or equal to 0, the control device 12 advances the process to step S290.
[0057] In step S290, the controller 12 sets the value of the decrement timer A to a positive predetermined value, and the process proceeds to step S300.
[0058] In step S300, the control device 12 determines whether the flag G is in an off state or an on state. If the flag G is in an off state, the control device 12 advances the process to step S310. If the flag G is in an on state, the control device 12 advances the process to step S320.
[0059] In step S310, the control device 12 sets flag G to an ON state, and proceeds to step S40. As a result, the control device 12 realizes a function of continuing control while postponing resetting of the changed set torque B (see step S50) after the set torque change function is realized. In this embodiment, the value of the subtraction timer A set in step S290 and the amount of decrease in the value of the subtraction timer A in step S60 are set so that the above-mentioned postponement time (hereinafter also referred to as the "second time") is about 10 seconds.
[0060] In step S320, the control device 12 accesses the storage 12C to set the above-mentioned command data to the OFF state, thereby turning off the drive of each motor assembly 10A (i.e., stopping each motor assembly 10A). Then, the control device 12 executes the end process of the control program. Note that, in step S320, if the command data is already in the OFF state, the control device 12 executes the end process of the control program while maintaining the command data in the OFF state.
[0061] Here, the process of step S320 is executed when the state in which all three conditions, the first condition, the second condition, and the third condition, are satisfied continues for a time period equal to or longer than the second time period after the first time period has elapsed from the occurrence timing and the set torque change function has been realized. Therefore, the process of step S320 can be said to be a process for realizing the "stop function" in the present disclosure.
[0062] According to the above-described control program (self-propelled robot program), when there is no discriminated obstacle 90A in the self-propelled robot 10's direction of travel and the self-propelled robot 10 continues to be in a state where it is not traveling despite the output torque of the motor assembly 10A being large, the output torque of the motor assembly 10A can be made larger than the normal set torque B. This allows the self-propelled robot 10 to realize the function of dealing with and climbing over small obstacles 90A that are difficult to discriminate using the rider 12A and collision sensor 12B.
[0063] Furthermore, according to the above-mentioned control program (program for a self-propelled robot), when the self-propelled robot 10 is still unable to move even when the output torque of the motor assembly 10A is made greater than the normal set torque B, the motor assembly 10A is stopped to avoid wasting energy.
[0064] The present disclosure is not limited to the embodiment described above, and various modifications, additions, and deletions are possible without departing from the spirit of the present disclosure. For example, the following various forms can be implemented.
[0065] (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 may be, for example, a value obtained by multiplying the set torque value of the motor assembly by a positive predetermined number that is less than 1.
[0066] (2) The processing of the set torque change function does not have to be processing of changing the current value of the set torque to a predetermined value. That is, a modified example can be considered in which the processing of the set torque change function is processing of adding a positive additional value to the current value of the set torque. In this modified example, the processing of the set torque change function is repeatedly executed while the elapsed time from the timing at which the first time has elapsed since the occurrence timing (hereinafter also referred to as "elapsed time") is equal to or greater than 0 and equal to or less than the second time, if the state in which all three conditions, the first condition, the second condition, and the third condition, continue to be satisfied. That is, according to the modified example, when it becomes necessary for the self-propelled robot to realize the set torque change function of increasing the set torque of the motor assembly, the self-propelled robot can move more smoothly by gradually increasing the set torque. Here, the additional value may be a predetermined value or a function of the elapsed time. In the latter case, the increase speed of the set torque can be adjusted by setting the function, thereby making the self-propelled robot move even more smoothly.
[0067] (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. [Explanation of symbols]
[0068] 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 90 beds 90A Obstacles
Claims
1. A self-propelled robot program for use in a self-propelled robot including a motor assembly that limits torque so that an output torque does not exceed a set torque, a traveling unit that realizes traveling using the motor assembly as a driving force source, and a sensor that detects an obstacle in the traveling direction, The self-propelled robot, A driving state recognition function for determining whether the vehicle is driving or not; an output torque grasping function for grasping the output torque of the motor assembly over time; An obstacle recognition function for discriminating and recognizing the presence or absence of the obstacle; a determination function for determining whether or not the output torque grasped by the output torque grasping function is large in light of a standard set based on the value of the set torque; A first condition is that the obstacle recognized by the obstacle recognition function does not exist; A second condition that the driving state recognition function recognizes the state in which the vehicle is not being driven; and a third condition that the determination function has output a determination result that the output torque is large in light of the criterion; a set torque changing function of changing the value of the set torque to a larger value when the state in which all of the above three conditions are satisfied continues for a time period equal to or longer than a first time period; A program for self-propelled robots that makes this possible.
2. 2. A program for a self-propelled robot according to claim 1, causing the self-propelled robot to realize a stop function for stopping the motor assembly when a state in which all of the three conditions, the first condition, the second condition, and the third condition, are satisfied continues for a time period equal to or longer than a second time period after the set torque change function is realized; A program for a self-propelled robot.
Citation Information
Patent Citations
Robot wheel detection method and device and storage medium
CN114290312A
Movement device
JP2007087145A
Obstacle detection device, obstacle detection method, and recording medium recording obstacle detection program
JP4233723B2