Robot and control method thereof

The self-propelled robot uses force sensors and correction mechanisms to detect and adjust wheel speeds based on lateral forces, addressing the issue of skidding on carpets, ensuring accurate trajectory following.

JP7617582B2Active Publication Date: 2025-01-20PANASONIC INTELLECTUAL PROPERTY MANAGEMENT CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2024006091
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2019-08-21
Filing Date
2024-01-18
Publication Date
2025-01-20
Estimated Expiration
2040-05-22

AI Technical Summary

Technical Problem

Conventional self-propelled robots struggle to suppress skidding on carpets due to lateral forces, as existing systems like gyroscope sensors fail to detect skidding unless the robot makes a significant turn, leading to deviations from the target trajectory.

Method used

The self-propelled robot employs a force sensor to detect lateral forces on its drive wheels, calculates correction amounts based on these forces, and adjusts the target speeds of the wheels to correct for skidding, using a combination of force sensors, correction units, and drive units to maintain straight movement.

Benefits of technology

This configuration effectively suppresses skidding even when the robot is not turning, ensuring it follows the intended trajectory by directly correcting wheel speeds based on detected lateral forces, thereby maintaining straight-line movement.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007617582000001
    Figure 0007617582000001
  • Figure 0007617582000002
    Figure 0007617582000002
  • Figure 0007617582000003
    Figure 0007617582000003
Patent Text Reader

Abstract

To suppress side slip even if a body does not greatly rotates on a floor surface.SOLUTION: A self-traveling robot includes: a force sensor for detecting side force being force in a wheel axial direction of a left driving wheel and a right driving wheel acting on the left driving wheel and the right driving wheel when a body straightly advances; an acquisition unit for acquiring a left target speed and a right target speed to the left driving wheel and the right driving wheel, respectively; a correction amount calculation unit for calculating a left correction amount and a right correction amount to the left target speed and the right target speed, respectively on the basis of the side force detected by a force detection unit; a correction unit for correcting the left target speed and the right target speed on the basis of the left correction amount and the right correction amount, respectively; and a drive unit for driving the left driving wheel and the right driving wheel on the basis of the left target speed and the right target speed corrected by the correction unit.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to self-propelled robots. [Background technology]

[0002] In recent years, self-propelled robots that autonomously travel on carpeted floors and clean them have become known. When the target trajectory of such a self-propelled robot is to move in a straight line, it may slip sideways while moving in a straight line due to the influence of the pile of the carpet, and it is necessary to suppress this.

[0003] For example, Patent Document 1 discloses a robot device that estimates carpet drift based on drive characteristics sensed by a first sensor set that senses the rotation of the wheels and motion characteristics sensed by a second sensor that senses the rotation of the body. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Special Publication No. 2015-521760 Summary of the Invention [Problem to be solved by the invention]

[0005] However, because the conventional robot device shown in Patent Document 1 is configured with a gyroscope sensor, it cannot detect skidding unless the body makes a large turn on the carpet, and further improvement is required.

[0006] The present disclosure has been made to solve such problems, and has an object to provide a self-propelled robot that suppresses skidding even when the main body is not rotating on the floor surface. [Means for solving the problem]

[0007] A self-propelled robot according to one aspect of the present disclosure includes a main body, a left drive wheel and a right drive wheel that drive the main body on a floor surface, a force sensor that detects a lateral force, which is a force in the wheel axle direction of the left drive wheel and the right drive wheel that acts on the left drive wheel and the right drive wheel when the main body moves straight, an acquisition unit that acquires a left target speed and a right target speed for the left drive wheel and the right drive wheel, respectively, a correction amount calculation unit that calculates a left correction amount and a right correction amount for the left target speed and the right target speed, respectively, based on the lateral force detected by the force sensor, a correction unit that corrects the left target speed and the right target speed based on the left correction amount and the right correction amount, respectively, and a drive unit that drives the left drive wheel and the right drive wheel based on the left target speed and the right target speed corrected by the correction unit. Effect of the Invention

[0008] According to the present disclosure, skidding can be suppressed even when the main body is not rotating on the floor surface. [Brief description of the drawings]

[0009] [Figure 1] 1 is a diagram illustrating an example of the configuration of a self-propelled robot according to a first embodiment. [Diagram 2] FIG. 13 is a diagram showing a state in which the casters are rotating relative to the main body. [Diagram 3] 2 is a block diagram showing a control configuration of the self-propelled robot according to the first embodiment. FIG. [Figure 4] 11A and 11B are diagrams illustrating details of the processing of a traveling direction calculation unit. [Diagram 5] FIG. 13 is a diagram showing lateral forces acting on a self-propelled robot. [Figure 6] 11 is a graph showing characteristics of correction data. [Figure 7] 11 is a graph showing characteristics of correction data. [Figure 8] 5 is a flowchart showing an example of processing of the self-propelled robot according to the first embodiment. [Figure 9] FIG. 11 is a diagram illustrating an example of the configuration of a self-propelled robot according to a second embodiment. [Figure 10] FIG. 11 is a block diagram showing a control configuration of a self-propelled robot according to a second embodiment. [Figure 11] FIG. 11 is a diagram showing an example of a method for calculating a lateral force in the second embodiment. [Figure 12] 11 is a graph showing characteristics of correction data. [Figure 13] 11 is a flowchart showing an example of processing of a self-propelled robot according to the second embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0010] (Background to this disclosure) When the target trajectory of a self-propelled robot is to move in a straight line, the texture of the carpet can cause the robot to slip sideways while moving in a straight line. In this case, the self-propelled robot intends to move in a straight line along the target trajectory, but the actual trajectory is tilted relative to the target trajectory, so the robot cannot reach the target point on the target trajectory. For this reason, there is a demand for self-propelled robots to suppress sideways slippage.

[0011] Since skidding is an action in which the self-propelled robot moves straight while sliding sideways, it does not necessarily cause a turning speed. Therefore, even if a gyroscope sensor is used to detect the turning speed that occurs during skidding as in Patent Document 1, skidding cannot be sufficiently suppressed.

[0012] The inventors then discovered that lateral slippage can be accurately detected by detecting or estimating the lateral force acting on a pair of drive wheels that make up a self-propelled robot, and came up with the various aspects of the present disclosure described below.

[0013] A self-propelled robot according to one aspect of the present disclosure includes a main body, a left drive wheel and a right drive wheel that drive the main body on a floor surface, a force sensor that detects a lateral force, which is a force in the wheel axle direction of the left drive wheel and the right drive wheel that acts on the left drive wheel and the right drive wheel when the main body moves straight, an acquisition unit that acquires a left target speed and a right target speed for the left drive wheel and the right drive wheel, respectively, a correction amount calculation unit that calculates a left correction amount and a right correction amount for the left target speed and the right target speed, respectively, based on the lateral force detected by the force sensor, a correction unit that corrects the left target speed and the right target speed based on the left correction amount and the right correction amount, respectively, and a drive unit that drives the left drive wheel and the right drive wheel based on the left target speed and the right target speed corrected by the correction unit.

[0014] According to this configuration, when the main body moves straight, a lateral force, which is a force in the wheel axle direction of the left and right driving wheels acting on the left and right driving wheels, is detected, a left correction amount and a right correction amount are calculated based on the detected lateral force, the left target speed and the right target speed are corrected based on the left correction amount and the right correction amount, and the left and right driving wheels are driven based on the corrected left target speed and right target speed.

[0015] Here, the lateral force is generated if the body is sliding sideways even if it is not rotating. Therefore, this configuration can suppress sideways sliding even if the body is not rotating on the floor surface.

[0016] In the above aspect, the vehicle may further include a speed detection unit that detects left and right rotation speeds for the left and right driving wheels, respectively, and a traveling direction calculation unit that calculates a traveling direction of the body based on the left and right rotation speeds, and the correction amount calculation unit may calculate the left correction amount and the right correction amount, respectively, only when the traveling direction calculated by the traveling direction calculation unit satisfies a predetermined condition indicating that the body is traveling straight.

[0017] Skidding occurs when the self-propelled robot is traveling while thinking that it is moving straight, and does not occur when the body is explicitly turning. With this configuration, the traveling direction of the body is calculated based on the left rotation speed and right rotation speed of the left driving wheel and the right driving wheel, and the left correction amount and the right correction amount are calculated only when the traveling direction satisfies a predetermined condition indicating that the body is moving straight. Therefore, in a situation where there is a high possibility of skidding occurring, the left rotation speed and the right rotation speed can be corrected, and skidding can be reliably suppressed.

[0018] In the above aspect, the force sensor may be a force sensor having at least one axial detection direction.

[0019] Although it is possible to detect skidding using an acceleration sensor, the acceleration sensor is expensive, which increases the cost of the self-propelled robot. Since this configuration is composed of a single-axis force sensor, which is generally cheaper than an acceleration sensor, the self-propelled robot can be constructed at low cost.

[0020] A self-propelled robot according to another aspect of the present disclosure includes a main body, a left drive wheel and a right drive wheel for propelling the main body on a floor surface, a driven caster rotatably provided with respect to the main body, an angle sensor that detects a rotation angle of the driven caster with respect to the main body, a status sensor that detects a status of each of the left drive wheel and the right drive wheel, an acquisition unit that acquires a left target speed and a right target speed for each of the left drive wheel and the right drive wheel, a disturbance estimation unit that estimates a left disturbance and a right disturbance occurring in a rotation direction of each of the left drive wheel and the right drive wheel based on the status of each of the left drive wheel and the right drive wheel detected by the status sensor, and a lateral force estimation unit that estimates a lateral force, which is a force in the wheel axis direction of the left driving wheel and the right driving wheel acting on the left driving wheel and the right driving wheel, based on the turning angle detected by the turning angle detection unit and the left disturbance and the right disturbance estimated by the disturbance estimation unit; a correction amount calculation unit that calculates a left correction amount and a right correction amount for the left target speed and the right target speed, respectively, based on the lateral force estimated by the lateral force estimation unit; a correction unit that corrects the left target speed and the right target speed, respectively, based on the left correction amount and the right correction amount; and a drive unit that rotates the left driving wheel and the right driving wheel based on the left target speed and the right target speed corrected by the correction unit.

[0021] According to this configuration, the magnitude of the left disturbance and the right disturbance occurring in the rotation direction for each of the left and right driving wheels is estimated based on the state of each of the left and right driving wheels detected by the state sensor. Then, the lateral force acting on the left and right driving wheels is estimated based on the turning angle detected by the angle sensor and the left and right disturbances estimated by the disturbance estimation unit. Then, the left correction amount and the right correction amount are calculated based on the estimated lateral force, the left target speed and the right target speed are corrected based on the left correction amount and the right correction amount, and the left and right driving wheels are driven based on the corrected left target speed and the right target speed. Here, the lateral force acting on the left and right driving wheels is a force that occurs if the main body is skidding even if the main body is not turning. Therefore, this configuration can suppress skidding even if the main body is not turning on the floor surface. In addition, since the lateral force is estimated in this configuration, skidding can be suppressed without using a force sensor.

[0022] In the above aspect, the drive unit may include a left motor that drives the left drive wheel and a right motor that drives the right drive wheel, and the status sensor may include a current sensor that detects the drive currents of the left motor and the right motor as the status, and an encoder that detects the rotational speeds of the left motor and the right motor as the status.

[0023] According to this configuration, the drive currents of the left motor and the right motor and the rotation speeds of the left motor and the right motor are used as the states, so that the left disturbance and the right disturbance can be accurately determined.

[0024] In the above aspect, the lateral force estimator may calculate the difference between the left disturbance and the right disturbance as a traveling disturbance occurring in the direction of the turning angle with respect to the self-propelled robot, and estimate the component of the traveling disturbance in the wheel axis direction as the lateral force.

[0025] According to this configuration, the lateral force can be accurately estimated.

[0026] In the above aspect, the correction amount calculation unit may calculate the correction amount only when the main body moves straight.

[0027] According to this configuration, the correction amount is calculated only when the body is moving straight, so skidding can be suppressed only in situations where skidding is highly likely to occur.

[0028] In the above aspect, the present invention may further include a memory that stores correction data in which the lateral force is associated with the left correction amount and the right correction amount such that as the lateral force in the left direction of the wheel axle increases, the left correction amount increases compared to the right correction amount, and the lateral force is associated with the right correction amount and the left correction amount such that as the lateral force in the right direction of the wheel axle increases, the right correction amount increases compared to the left correction amount, and the correction amount calculation unit may calculate the left correction amount and the right correction amount by obtaining the left correction amount and the right correction amount corresponding to the detected or estimated lateral force from the correction data.

[0029] According to this configuration, when skidding to the left occurs, as the lateral force in the left direction increases, the left correction amount is increased more than the right correction amount, so that the driving force of the left driving wheel becomes greater than the driving force of the right driving wheel, and as a result, skidding to the left can be suppressed. Also, when skidding to the right occurs, as the lateral force in the right direction increases, the right correction amount is increased more than the left correction amount, so that the driving force of the right driving wheel becomes greater than the driving force of the left driving wheel, and as a result, skidding to the right can be suppressed.

[0030] The present disclosure can also be realized as a control program that causes a computer to execute each of the characteristic components included in such a self-propelled robot, or as a system that operates by this control program. Furthermore, it goes without saying that such a computer program can be distributed on a non-transitory computer-readable recording medium such as a CD-ROM or via a communication network such as the Internet.

[0031] Note that each of the embodiments described below shows a specific example of the present disclosure. The numerical values, shapes, components, steps, and order of steps shown in the following embodiments are merely examples and are not intended to limit the present disclosure. Furthermore, among the components in the following embodiments, components that are not described in an independent claim showing the highest concept are described as optional components. Furthermore, in all of the embodiments, the respective contents can be combined.

[0032] (Embodiment 1) FIG. 1 is a diagram showing an example of the configuration of a self-propelled robot 1 according to the first embodiment. Hereinafter, in this specification, the upward direction of the self-propelled robot 1 is defined as the +Z direction, and the downward direction is defined as the -Z direction. The front direction of the self-propelled robot 1 is defined as the +Y direction, and the direction opposite to the forward direction is defined as the -Y direction. The left direction of the self-propelled robot 1 facing the forward direction is defined as the +X direction, and the right direction of the self-propelled robot 1 facing the forward direction is defined as the -X direction. The self-propelled robot 1 is, for example, a robot that cleans indoor floors by autonomously moving indoors. For convenience of explanation, a suction mechanism is not shown in FIG. 1. The Z direction is a general term for the +Z direction and the -Z direction. The Y direction is a general term for the +Y direction and the -Y direction. The X direction is a general term for the +X direction and the -X direction. In FIG. 1, the upper diagram shows self-propelled robot 1 as viewed in the +X direction, and the lower diagram shows self-propelled robot 1 as viewed in the -Z direction, that is, main body 10 as viewed from above.

[0033] The self-propelled robot 1 shown in Fig. 1 includes a main body 10, drive wheels 11, casters 12, a motor 13, and a force sensor 14. The drive wheels 11 include a pair of left and right drive wheels, a left drive wheel 11a and a right drive wheel 11b. The motor 13 includes a left motor 13a that drives the left drive wheel 11a, and a right motor 13b that drives the right drive wheel 11b. The force sensor 14 includes a force sensor 14a that detects a lateral force acting on the left drive wheel 11a, and a force sensor 14b that detects a lateral force acting on the right drive wheel 11b.

[0034] The left driving wheel 11a and the right driving wheel 11b are each provided with a portion exposed on the back surface 101 of the main body 10. The left driving wheel 11a and the right driving wheel 11b each include a wheel axle (not shown). The left driving wheel 11a rotates around the wheel axle by power from the left motor 13a. The right driving wheel 11b rotates around the wheel axle by power from the right motor 13b. The wheel axles are parallel to the X direction. Therefore, the left driving wheel 11a and the right driving wheel 11b rotate forward at the same rotational speed, causing the main body 10 to move forward. The left driving wheel 11a and the right driving wheel 11b rotate backward at the same rotational speed, causing the main body 10 to move backward. By providing a difference in rotational speed between the left driving wheel 11a and the right driving wheel 11b, the main body 10 turns. Specifically, when the rotation speed of the left driving wheel 11a that rotates forward is greater than the rotation speed of the right driving wheel 11b, the main body 10 turns rightward. On the other hand, when the rotation speed of the right driving wheel 11b that rotates forward is greater than the rotation speed of the left driving wheel 11a, the main body 10 turns leftward. The self-propelled robot 1 can also turn backward.

[0035] The speed of each of the left motor 13a and the right motor 13b is controlled by a microcontroller (not shown) built into the main body 10. An encoder 15a (see FIG. 3) is built into the left motor 13a, and an encoder 15b (see FIG. 3) is built into the right motor 13b. The encoder 15a detects the left rotation speed, which is the rotation speed of the left motor 13a. The encoder 15b detects the right rotation speed, which is the rotation speed of the right motor 13b. The encoder 15a is an example of a speed detection unit that detects the left rotation speed of the left driving wheel 11a, and the encoder 15b is an example of a speed detection unit that detects the right rotation speed of the right driving wheel 11b.

[0036] The casters 12 serve to prevent the main body 10 from tipping forward or backward, and to keep the rear surface 101 of the main body 10 approximately parallel to the floor surface 90. The casters 12 include wheels 121 and a holder (not shown) that rotatably holds the wheels 121. The holder (not shown) is attached to the rear surface 101 so as to be rotatable around an axis parallel to the Z direction. This allows the casters 12 to rotate relative to the main body 10. The wheels 121 of the casters 12 do not have a driving force, and passively rotate in response to the moving speed of the main body 10. The holder (not shown) of the casters 12 does not have a driving force, and passively rotates in response to the rotation of the main body 10.

[0037] The force sensor 14a detects a lateral force, which is a force in the wheel axis direction, generated between the left driving wheel 11a and the wheel axle (not shown) of the left driving wheel 11a. The force sensor 14a is configured, for example, as a uniaxial force sensor. The force sensor 14b detects a lateral force, which is a force in the wheel axis direction, generated between the right driving wheel 11b and the wheel axle (not shown) of the right driving wheel 11b. The force sensor 14b is configured, for example, as a uniaxial force sensor. The force sensors 14a, 14b can each be configured, for example, as a piezoelectric or strain gauge type force sensor.

[0038] Fig. 2 is a diagram showing a state in which the caster 12 is turning with respect to the main body 10. As shown in Fig. 2, the caster 12 is capable of turning with respect to the main body 10. As a result, when the traveling direction of the main body 10 is not the Y direction but faces diagonally forward to the left or right with respect to the Y direction, the wheel 121 can be turned toward the traveling direction. As a result, the self-propelled robot 1 can turn without dragging the wheel 121.

[0039] Fig. 3 is a block diagram showing the control configuration of self-propelled robot 1 according to embodiment 1. In addition to left motor 13a, right motor 13b, force sensor 14, encoder 15a, and encoder 15b described above, self-propelled robot 1 includes target trajectory output unit 20, acquisition unit 21, traveling direction calculation unit 22, correction amount calculation unit 23, drive unit 24, correction unit 25, and memory 26. In Fig. 3, target trajectory output unit 20 to correction unit 25 are configured by a microcontroller. Memory 26 is configured by, for example, a non-volatile semiconductor memory.

[0040] The target trajectory output unit 20 outputs target trajectory data indicating a target trajectory of the self-propelled robot 1. The target trajectory data is data that defines an operation sequence for causing self-propelled robot 1 to travel along a target trajectory, such as moving straight from point A1 to point A2 at target speed V1, then turning at point A2 with turning radius r1 and angular velocity ω1, and then traveling from point A2 to point A3 at target speed V2. The target trajectory data is, for example, created in advance and stored in memory 26. Therefore, target trajectory output unit 20 may read the target trajectory data from memory 26 and output the target trajectory data to acquisition unit 21 in sequence according to the sequence numbers.

[0041] The acquisition unit 21 acquires the target speed by acquiring target trajectory data from the target trajectory output unit 20, and calculates a left target speed Vol, which is the target speed of the left motor 13a, and a right target speed Vor, which is the target speed of the right motor 13b, based on the acquired target trajectory data, and outputs them to the correction unit 25.

[0042] The traveling direction calculation unit 22 calculates the traveling direction of the main body 10 based on the left rotation speed θl of the left motor 13a input from the encoder 15a and the right rotation speed θr of the right motor 13b input from the encoder 15b. The left rotation speed θl is the amount of rotation of the left motor 13a per second, i.e., the angular velocity. The right rotation speed θr is the amount of rotation of the right motor 13b per second, i.e., the angular velocity.

[0043] The details of the processing of the traveling direction calculation unit 22 will be described below with reference to FIG. 4. FIG. 4 is a diagram for explaining the details of the processing of the traveling direction calculation unit 22. The radius of the left driving wheel 11a and the right driving wheel 11b is r. In this case, the moving distance of the left driving wheel 11a in one second is r·θl. Similarly, the moving distance of the right driving wheel 11b in one second is r·θr. When the right rotation speed θr>the left rotation speed θl, that is, when the main body 10 turns left, the difference in the moving distance between the left driving wheel 11a and the right driving wheel 11b is r·(θr-θl). The length of the left driving wheel 11a and the right driving wheel 11b in the wheel axis direction (X direction) is 2t. In this case, the traveling direction ω of the main body 10 is calculated by the following formula (1) using trigonometric functions. The traveling direction ω is the turning angle per second around the yaw axis (Z axis) of the main body 10.

[0044] ω=tan -1 (r (θr-θl) / 2t) (1) The same applies when θr<θl, that is, when the main body 10 turns right. The traveling direction calculation unit 22 outputs the traveling direction ω of the main body 10 calculated using equation (1) to the correction amount calculation unit 23.

[0045] The correction amount calculation unit 23 calculates a left correction amount ΔVol and a right correction amount ΔVor for the left target speed Vol and the right target speed Vor, respectively, based on the lateral forces Fl, Fr detected by the force sensor 14, and outputs the calculated correction amount ΔVol and right correction amount ΔVor to the correction unit 25.

[0046] Specifically, the correction amount calculation unit 23 determines whether the traveling direction ω output from the traveling direction calculation unit 22 satisfies a predetermined condition that the main body 10 is considered to be moving straight, and calculates the left correction amount ΔVol and the right correction amount ΔVor only when it is determined that the traveling direction ω satisfies the predetermined condition. The predetermined condition is, for example, a condition that the traveling direction ω is at a preset angle ε, and |ω|≦ε. This condition indicates that the traveling direction ω is almost forward or backward, and means that the main body 10 is not turning. When the main body 10 is not turning, the cornering force acting on the self-propelled robot 1 is almost zero, so that it is normal that there are no lateral forces Fl and Fr. However, when traveling on a carpet, lateral forces Fl and Fr may be generated on the left driving wheel 11a and the right driving wheel 11b due to the texture of the carpet. As a result, the self-propelled robot 1 skids sideways while moving straight, even though the target trajectory is straight.

[0047] Fig. 5 is a diagram showing lateral forces acting on the self-propelled robot 1. As shown in Fig. 5, when a lateral slip occurs, lateral forces Fl and Fr are generated on the left driving wheel 11a and the right driving wheel 11b, respectively. In the example of Fig. 5, since a lateral slip occurs in the +X direction (left direction), lateral forces Fl and Fr in the +X direction (left direction) are generated on the left driving wheel 11a and the right driving wheel 11b, respectively. In this case, the force sensor 14 detects lateral forces Fl and Fr equal to or greater than a certain value. Therefore, the correction amount calculation unit 23 can estimate that a lateral slip has occurred.

[0048] In this embodiment, the memory 26 stores correction data 261 indicating the relationship between the lateral force Ft, which is the sum of the lateral forces Fl and Fr, and the left correction amount ΔVol corresponding to the lateral force Ft, obtained by a preliminary experiment. The memory 26 also stores correction data 262 indicating the relationship between the lateral force Ft, which is obtained by a preliminary experiment, and the right correction amount ΔVor corresponding to the lateral force Ft. The correction amount calculation unit 23 calculates the lateral force Ft from the lateral forces Fl and Fr detected by the force sensor 14, and obtains the left correction amount ΔVol corresponding to the lateral force Ft by referring to the correction data 261, and obtains the right correction amount ΔVor corresponding to the lateral force Ft by referring to the correction data 262.

[0049] Fig. 6 is a graph showing the characteristics of the correction data 261. Fig. 7 is a graph showing the characteristics of the correction data 262. In the correction data 261, the left correction amount ΔVol is set on the vertical axis, and the lateral force Ft is set on the horizontal axis. In the correction data 261, the horizontal axis is positive when the lateral force Ft faces the -X direction (rightward), that is, when a lateral slip to the right occurs, and is negative when the lateral force Ft faces the +X direction (leftward), that is, when a lateral slip to the left occurs.

[0050] In the correction data 261, when the lateral force Ft is greater than the lateral force Ft1, the left correction amount ΔVol is 0, but when the lateral force Ft is equal to or less than the lateral force Ft1, the left correction amount ΔVol increases, for example, linearly, as the lateral force Ft increases in the negative direction. Here, when the lateral force Ft is greater than 0, the left correction amount ΔVol is 0 because there is no leftward skid occurring, and therefore there is no need to correct the left target speed Vol. When the lateral force Ft is greater than the lateral force Ft1 and equal to or less than 0, a dead zone in which the left correction amount ΔVol is 0 is provided because it is considered that the lateral force Ft is small and no skid occurs. When the lateral force Ft is equal to or less than the lateral force Ft1, the left correction amount ΔVol increases linearly as the lateral force Ft increases in the negative direction because, in order to suppress a leftward skid, it is necessary to increase the left correction amount ΔVol added to the left target speed Vol as the lateral force Ft acting in the left direction increases.

[0051] In the correction data 262, the right correction amount ΔVor is set on the vertical axis, and the lateral force Ft is set on the horizontal axis. In the correction data 262, the horizontal axis is positive when the lateral force Ft faces the -X direction (rightward), that is, when a lateral slip to the right occurs, and is negative when the lateral force Ft faces the +X direction (leftward), that is, when a lateral slip to the left occurs.

[0052] In the correction data 262, when the lateral force Ft is equal to or less than the lateral force Ft2, the right correction amount ΔVor is 0, but when the lateral force Ft is greater than the lateral force Ft2, the right correction amount ΔVor increases, for example, linearly as the lateral force Ft increases in the positive direction. Here, when the lateral force Ft is equal to or less than 0, the right correction amount ΔVor is 0 because there is no rightward skid occurring, and therefore there is no need to correct the right target speed Vor. When the lateral force Ft is greater than 0 and less than the lateral force Ft2, a dead zone in which the right correction amount ΔVor is 0 is provided because it is considered that the lateral force Ft is small and no skid occurs. When the lateral force Ft is greater than the lateral force Ft2, the right correction amount ΔVor increases linearly as the lateral force Ft increases in the positive direction. This is to suppress rightward skid by increasing the right correction amount ΔVor added to the right target speed Vor as the lateral force Ft acting in the right direction increases. In the examples of FIGS. 6 and 7, the lateral forces Ft1 and Ft2 have different signs but the same absolute value.

[0053] For example, if the lateral force Ft detected by the force sensor 14 is Ftx, the correction amount calculation unit 23 refers to the correction data 261 to acquire a left correction amount ΔVol (=ΔVoly) corresponding to Ftx, and refers to the correction data 262 to acquire a right correction amount ΔVor (=0) corresponding to Ftx. Then, the correction amount calculation unit 23 outputs the acquired left correction amount ΔVol (=ΔVoly) and right correction amount ΔVor (=0) to the correction unit 25. As a result, when a leftward skid occurs, the left correction amount ΔVol (=ΔVoly) is added to the left target speed Vol, while the right correction amount ΔVor (=0) is added to the right target speed Vor, so that the left target speed Vol becomes larger than the right target speed Vor. As a result, the driving force of the left driving wheel 11a becomes larger than the driving force of the right driving wheel 11b, and the leftward skid of the main body 10 is suppressed.

[0054] Returning to FIG. 3, the correction unit 25 corrects each of the left target velocity Vol and the right target velocity Vor based on the left correction amount ΔVol and the right correction amount ΔVor. The correction unit 25 includes an adder 251. The adder 251 corrects the left target velocity Vol by adding the left correction amount ΔVol output from the correction amount calculation unit 23 to the left target velocity Vol output from the acquisition unit 21. The adder 251 corrects the right target velocity Vor by adding the right correction amount ΔVor output from the correction amount calculation unit 23 to the right target velocity Vor output from the acquisition unit 21.

[0055] The drive unit 24 drives the left drive wheel 11a and the right drive wheel 11b based on the left target speed Vol and the right target speed Vor corrected by the correction unit 25. The drive unit 24 includes the left motor 13a, the right motor 13b, the encoder 15a, and the encoder 15b described in FIG. The left target speed Vol corrected by the correction unit 25 is input to the left motor 13a. As a result, the left motor 13a is controlled to rotate at the left target speed Vol. Also, the right target speed Vor corrected by the correction unit 25 is input to the right motor 13b. As a result, the right motor 13b is controlled to rotate at the right target speed Vor.

[0056] 8 is a flowchart showing an example of processing of the self-propelled robot 1 according to embodiment 1. Note that the flow of FIG. 8 is repeatedly executed, for example, at a predetermined calculation period. In step S1, the acquisition unit 21 calculates a left target speed Vol and a right target speed Vor from the target trajectory data acquired from the target trajectory output unit 20.

[0057] In step S2, the encoder 15a detects the left rotation speed θl, and the encoder 15b detects the right rotation speed θr.

[0058] In step S3, the traveling direction calculation unit 22 calculates the travel distance r·θl of the left driving wheel 11a and the travel distance r·θr of the right driving wheel 11b.

[0059] In step S4, the traveling direction calculation unit 22 calculates the difference r·(θr−θl) between the moving distance r·θl and the moving distance r·θr.

[0060] In step S5, the traveling direction calculation unit 22 calculates the traveling direction ω by substituting r·(θr−θl) into equation (1).

[0061] In step S6, the correction amount calculation unit 23 determines whether the traveling direction ω is equal to or less than the angle ε. If the traveling direction ω is equal to or less than the angle ε (YES in step S6), the force sensor 14a detects the lateral force Fl, and the force sensor 14b detects the lateral force Fr (step S7).

[0062] In step S8, the correction amount calculation unit 23 calculates the lateral force Ft by adding the lateral forces Fl and Fr, and calculates the left correction amount ΔVol corresponding to the lateral force Ft by referring to the correction data 261, and calculates the right correction amount ΔVor corresponding to the lateral force Ft by referring to the correction data 262.

[0063] In step S9, the correction unit 25 adds the left correction amount ΔVol to the left target speed Vol to correct the left target speed Vol, and adds the right correction amount ΔVor to the right target speed Vor to correct the right target speed Vor.

[0064] In step S10, the drive unit 24 drives the left motor 13a at the corrected left target speed Vol, and drives the right motor 13b at the corrected right target speed Vor. When step S10 ends, the process returns to step S1.

[0065] In step S6, if the traveling direction ω is greater than the angle ε (NO in step S6), the drive unit 24 drives the left motor 13a and the right motor 13b at the left target speed Vol and the right target speed Vor calculated in step S1 (step S11). When step S11 ends, the process returns to step S1.

[0066] Thus, according to this embodiment, when the main body 10 moves straight, the lateral force Ft acting on the left driving wheel 11a and the right driving wheel 11b is detected, the left correction amount ΔVol and the right correction amount ΔVor are calculated based on the detected lateral force Ft, the left target speed Vol and the right target speed Vor are corrected based on the left correction amount ΔVol and the right correction amount ΔVor, and the left driving wheel 11a and the right driving wheel 11b are driven based on the corrected left target speed Vol and right target speed Vor.

[0067] Here, the lateral force Ft acting on the left driving wheel 11a and the right driving wheel 11b occurs if the body 10 is skidding even if the body 10 is not turning. Therefore, this configuration can suppress skidding even if the body 10 is not turning on the floor surface.

[0068] Furthermore, in embodiment 1, the lateral forces Fl and Fr are detected directly and the left target speed Vol and right target speed Vor are corrected, so that the left target speed Vol and right target speed Vor can be corrected before the self-propelled robot 1 actually starts to slide in a direction different from the traveling direction, and straight-line movement along the traveling direction can be maintained.

[0069] Furthermore, in embodiment 1, the left target speed Vol and the right target speed Vor are corrected based on the lateral force Ft acting on the left driving wheel 11a and the right driving wheel 11b, so that the straight-line movement along the traveling direction of the main body 10 can be maintained regardless of whether the lateral force Ft acting on the main body 10 is caused by the turning of the main body 10 or by the lateral skid of the main body 10.

[0070] (Embodiment 2) Self-propelled robot 1A according to embodiment 2 estimates lateral forces Fl and Fr. FIG. 9 is a diagram showing an example of the configuration of self-propelled robot 1A according to embodiment 2. Note that in this embodiment, components common to embodiment 1 are given the same reference numerals and descriptions thereof will be omitted. Self-propelled robot 1A further includes encoder 15c in addition to self-propelled robot 1. The encoder 15c is attached to the caster 12. The encoder 15c is an example of an angle sensor that detects a rotation angle γ of the caster 12 with respect to the main body 10. The rotation angle γ is a rotation angle of the caster 12 around the Z axis (yaw axis).

[0071] 10 is a block diagram showing the control configuration of self-propelled robot 1A according to embodiment 2. Self-propelled robot 1A has current sensor 16 instead of force sensor 14 of self-propelled robot 1. Current sensor 16 includes current sensors 16a and 16b. Current sensor 16a is provided, for example, in left motor 13a. Current sensor 16b is provided, for example, in right motor 13b. Current sensor 16a detects current value Ia of the drive current of left motor 13a and outputs it to disturbance estimation unit 27. Current sensor 16b detects current value Ib of the drive current of right motor 13b and outputs it to disturbance estimation unit 27.

[0072] In this embodiment, the current sensor 16 and the encoders 15a, 15b are an example of a status sensor that detects the status of the left driving wheel 11a and the right driving wheel 11b.

[0073] Compared to self-propelled robot 1, self-propelled robot 1A has a disturbance estimation unit 27 and a lateral force estimation unit 28 instead of traveling direction calculation unit 22. Note that in Fig. 10, blocks with the same names but different functions from those in embodiment 1 have the letter A added to the end of their reference numbers.

[0074] The disturbance estimation unit 27 estimates a left load disturbance Tl occurring in the left motor 13a based on the current value Ia detected by the current sensor 16a and the left rotation speed θl detected by the encoder 15a. The disturbance estimation unit 27 estimates a right load disturbance Tr occurring in the right motor 13b based on the current value Ib detected by the current sensor 16b and the right rotation speed θr detected by the encoder 15b. Here, the disturbance estimation unit 27 may estimate the left load disturbance Tl and the right load disturbance Tr using, for example, a disturbance observer. The left load disturbance Tl and the right load disturbance Tr occurring in the left motor 13a and the right motor 13b, respectively, are disturbances to the torque in the rotation direction of the left motor 13a and the right motor 13b, respectively. Therefore, if the radius of each of the left driving wheel 11a and the right driving wheel 11b is r, the left disturbance Ffl occurring in the rotation direction of the left driving wheel 11a is calculated by r·Tl, and the right disturbance Ffr occurring in the rotation direction of the right driving wheel 11b is calculated by r·Tr. Therefore, the disturbance estimation unit 27 calculates the left disturbance Ffl by r·Tl, and calculates the right disturbance Ffr by r·Tr.

[0075] The lateral force estimation unit 28 estimates a lateral force Flat, which is a force in the wheel axis direction acting on the left driving wheel 11a and the right driving wheel 11b, based on the left disturbance Ffl and the right disturbance Ffr output from the disturbance estimation unit 27 and the rotation angle γ of the caster 12 output from the encoder 15c.

[0076] FIG. 11 is a diagram showing an example of a method for calculating lateral force Flat in the second embodiment. In this example, the difference between the left disturbance Ffl generated in the left driving wheel 11a and the right disturbance Ffr generated in the right driving wheel 11b is considered to be a disturbance to traveling (traveling disturbance), and the equal portion is considered to correspond to the driving force. Therefore, first, the lateral force estimating unit 28 calculates the traveling disturbance by Ffr-Ffl. In addition, the turning angle γ output from the encoder 15c is considered to be close to the direction of the traveling disturbance generated in the self-propelled robot 1A. In other words, it can be considered that the traveling disturbance Fall is generated in the direction of the turning angle γ. Therefore, the lateral force estimating unit 28 estimates the traveling disturbance Fall using the formula (2).

[0077] Fall = k ((Ffr-Ffl) / cosγ) (2) k is an adjustment coefficient determined in advance through experiments.

[0078] Here, the component of the travel disturbance Fall occurring in the self-propelled robot 1A that corresponds to the wheel axis direction can be regarded as the lateral force Flat. Therefore, the lateral force Flat is expressed by the formula (3) using trigonometric functions.

[0079] Flat=Fall·sinγ (3) Therefore, the lateral force estimating unit 28 estimates the lateral force Flat by using Flat·sin γ.

[0080] The correction amount calculation unit 23A calculates the left correction amount ΔVol and the right correction amount ΔVor based on the lateral force Flat estimated by the lateral force estimation unit 28. Specifically, the correction amount calculation unit 23A calculates the left correction amount ΔVol and the right correction amount ΔVor with reference to the correction data 263 shown in FIG. 12, and outputs them to the correction unit 25. FIG. 12 is a graph showing the characteristics of the correction data 263. In the correction data 263, the left correction amount ΔVol and the right correction amount ΔVor are set on the vertical axis, and the lateral force Flat is set on the horizontal axis. In the correction data 263, the horizontal axis is positive when the lateral force Flat faces the -X direction (rightward), that is, a lateral slip occurs in the rightward direction, and is negative when the lateral force Flat faces the +X direction (leftward), that is, a lateral slip occurs in the leftward direction.

[0081] In Fig. 12, the left correction amount ΔVol indicated by a solid line is 0 when the lateral force Flat is greater than 0. This is because when the lateral force Flat is greater than 0, there is no leftward skid occurring, and therefore there is no need to correct the left target speed Vol. In addition, when the lateral force Flat is equal to or less than 0, the left correction amount ΔVol increases, for example, linearly, as the lateral force Flat increases in the negative direction. This is because, in order to suppress a leftward skid, it is necessary to increase the left correction amount ΔVol added to the left target speed Vol as the lateral force Flat acting in the left direction increases.

[0082] In Fig. 12, the right correction amount ΔVor indicated by the dotted line is 0 when the lateral force Flat is 0 or less. This is because when the lateral force Flat is 0 or less, no skid to the right is occurring, so there is no need to correct the right target speed Vor. In addition, when the lateral force Flat is greater than 0, the right correction amount ΔVor increases, for example, linearly, as the lateral force Flat increases in the positive direction. This is because, in order to suppress a skid to the right, it is necessary to increase the right correction amount ΔVor added to the right target speed Vor as the lateral force Flat acting in the right direction increases.

[0083] 12, as shown in Fig. 6 and Fig. 7, the reason why the dead zone is not provided is that in this embodiment, the left correction amount ΔVol and the right correction amount ΔVor are calculated on the condition that the caster 12 is turning with respect to the main body 10 as shown in formula (3). In other words, when the caster 12 is turning with respect to the main body 10, it is considered that the lateral force Flat required for causing a lateral skid is sufficiently generated.

[0084] For example, if the lateral force Flat detected by the force sensor 14 is = Ftx, the correction amount calculation unit 23A refers to the correction data 263 to obtain a left correction amount ΔVol (= ΔVoly) corresponding to Ftx and obtain a right correction amount ΔVor (= 0) corresponding to Ftx, and outputs them to the correction unit 25. As a result, when a leftward skid occurs, the left correction amount ΔVol (= ΔVoly) is added to the left target speed Vol, while the right correction amount ΔVor (= 0) is added to the right target speed Vor, so that the left target speed Vol is greater than the right target speed Vor. As a result, the driving force of the left driving wheel 11a becomes greater than the driving force of the right driving wheel 11b, and leftward skid of the main body 10 is suppressed.

[0085] Return to FIG. 10. In addition to outputting the target trajectory data of the self-propelled robot 1A to the acquisition unit 21, in this embodiment, the target trajectory output unit 20A also outputs a straight-line notification signal, obtained from the target trajectory data and indicating whether the self-propelled robot 1 is currently traveling straight, to the correction amount calculation unit 23A. Due to the influence of the response times of the left motor 13a and the right motor 13b, a delay occurs from the time when the target trajectory data is output to the acquisition unit 21 to the time when the self-propelled robot 1A actually starts operating in accordance with the target trajectory data. Therefore, the target trajectory output unit 20A may set a delay time (for example, 1 second) in advance and output the straight-line notification signal to the correction amount calculation unit 23A when the delay time has elapsed from the time when the target trajectory data indicating straight-line traveling was output to the acquisition unit 21. In this case, the correction amount calculation unit 23A may start the correction process of the left target speed Vol and the right target speed Vor after receiving the straight-line notification signal. This allows the correction amount calculation unit 23A to perform the correction process only when the target trajectory data indicates that the vehicle is traveling straight ahead.

[0086] Fig. 13 is a flowchart showing an example of the processing of the self-propelled robot 1A according to embodiment 2. Note that the flow of Fig. 13 is repeatedly executed, for example, at a predetermined calculation period. In step S101, the acquisition unit 21 calculates a left target speed Vol and a right target speed Vor from the target trajectory data acquired from the target trajectory output unit 20.

[0087] In step S102, the current sensor 16a detects the current value Ia of the left motor 13a, and the current sensor 16b detects the current value Ib of the right motor 13b. Also in step S102, the encoder 15a detects the left rotation speed θl of the left motor 13a, and the encoder 15b detects the right rotation speed θr of the right motor 13b. Also in step S2, the encoder 15c detects the rotation angle γ of the caster 12.

[0088] In step S103, the disturbance estimation unit 27 estimates a left load disturbance Tl based on the current value Ia and the left rotation speed θl, and estimates a right load disturbance Tr based on the current value Ib and the right rotation speed θr.

[0089] In step S104, the disturbance estimation unit 27 calculates a left disturbance Ffl from r·Tl, and calculates a right disturbance Ffr from r·Tr.

[0090] In step S105, the lateral force estimating unit 28 calculates the difference between the left disturbance Ffl and the right disturbance Ffr (=Ffr-Ffl).

[0091] In step S106, the lateral force estimating unit 28 substitutes the difference between the left disturbance Ffl and the right disturbance Ffr (=Ffr-Ffl) and the turning angle γ into equation (2) to calculate the traveling disturbance Fall.

[0092] In step S107, the lateral force estimating unit 28 substitutes the traveling disturbance Fall and the turning angle γ into equation (3) to calculate the lateral force Flat.

[0093] In step S108, the correction amount calculation unit 23A refers to the correction data 263 to calculate the left correction amount ΔVol and the right correction amount ΔVor for the estimated lateral force Flat.

[0094] The processes in steps S109 and S110 are the same as those in steps S9 and S10 shown in FIG.

[0095] As described above, according to the second embodiment, the left correction amount ΔVol and the right correction amount ΔVor are calculated by the correction amount calculation unit 23A based on the lateral force Flat estimated by the lateral force estimating unit 28, and the left target speed Vol and the right target speed Vor are corrected based on the left correction amount ΔVol and the right correction amount ΔVor. Therefore, the self-propelled robot 1A can achieve straight-line movement without skidding when the target trajectory is straight-line movement even in an environment with external disturbances, such as a carpet.

[0096] Here, the meaning of estimating the lateral force Flat acting on the left driving wheel 11a and the right driving wheel 11b using the running disturbance Fall and the turning angle γ of the caster 12 (follower caster) will be explained. For example, if the driving wheel 11 is not corrected even if it is slipping or turning due to the influence of a carpet, and the same speed command is continuously given to the left and right driving wheels 11 with the intention of going straight, there may be almost no speed difference between the left and right driving wheels 11 due to the influence of the carpet. In other words, it may be difficult to detect the slipping or turning due to the carpet based only on the speed difference between the left and right driving wheels 11. On the other hand, in this embodiment, the slipping or turning of the driving wheel 11 due to the influence of the carpet can be detected by using the running disturbance Fall. In particular, this embodiment utilizes the knowledge that a difference appears between the left disturbance Ffl based on the current value Ia and the left rotation speed θl and the right disturbance Ffr based on the current value Ib and the right rotation speed θr even when the driving wheels 11 are not corrected even if they are slipping or turning due to the influence of the carpet, and the same speed command is continuously given to the left and right driving wheels 11 with the intention of going straight. On the other hand, this running disturbance Fall is a running disturbance applied in the rotation direction of the left and right driving wheels 11, and is in a perpendicular relationship with the force that causes the sideslip on the floor surface. Therefore, this embodiment uses the turning angle γ of the caster 12 (follower caster) that affects the force in the direction that causes the sideslip in addition to the running disturbance Fall, thereby improving the detection accuracy of the influence of the carpet and realizing straight-line operation.

[0097] Furthermore, according to the second embodiment, since the lateral force Flat is estimated, it is possible to cause self-propelled robot 1A to move straight without skidding without using a sensor for estimating the lateral force Flat.

[0098] Furthermore, according to the second embodiment, the left target speed Vol and the right target speed Vor are corrected based on the lateral force Flat acting on the left driving wheel 11a and the right driving wheel 11b, so that the straight-line movement of the main body 10 can be maintained regardless of whether the lateral force Ft acting on the main body 10 is caused by the turning of the main body 10 or by the lateral skid of the main body 10.

[0099] The present embodiment can employ the following modifications.

[0100] (1) In the second embodiment, the target trajectory output unit 20A outputs a driving notification signal to the correction amount calculation unit 23A. However, this is just an example, and the driving notification signal does not necessarily have to be output.

[0101] (2) In the first embodiment, the memory 26 includes the correction data 261 and the correction data 262, but this is only an example, and the memory 26 may store correction data in which the correction data 261 and the correction data 262 are integrated. In this case, the memory 26 may store correction data in which the lateral force Ft is associated with the left correction amount ΔVol and the right correction amount ΔVor such that the left correction amount ΔVol increases compared to the right correction amount ΔVor as the lateral force Ft in the left direction of the wheel axle increases, and the right correction amount ΔVor is associated with the left correction amount ΔVor and the left correction amount ΔVol such that the right correction amount ΔVor increases compared to the left correction amount ΔVol as the lateral force Ft in the right direction of the wheel axle increases.

[0102] (3) Although the correction data 261 and the correction data 262 each have a dead zone, the present disclosure is not limited to this, and the correction data may not have a dead zone.

[0103] (4) In the first embodiment, two force sensors 14a, 14b are used, but this is just an example, and self-propelled robot 1 may be equipped with either one of force sensors 14a, 14b. In this case, correction amount calculation unit 23 may calculate lateral force Ft by doubling the lateral force detected by one force sensor. Alternatively, correction data 261, 262 may be composed of correction data that associates the lateral force detected by one force sensor with a left correction amount ΔVol and a right correction amount ΔVor, respectively. [Industrial Applicability]

[0104] INDUSTRIAL APPLICABILITY The present disclosure is useful for self-propelled robots such as cleaning robots, since it is possible to suppress skidding and cause the self-propelled robot to travel along a target trajectory. [Explanation of symbols]

[0105] 1: Self-propelled robot 1A: Self-propelled robot 10: Main unit 11: Drive wheel 11a: Left drive wheel 11b: Right drive wheel 12: Caster 13: Motor 13a: Left motor 13b: Right motor 14: Force sensor 14a: Force sensor 14b: Force sensor 15a: Encoder 15b: Encoder 15c: Encoder 16: Current sensor 16a: Current sensor 16b: Current sensor 20:Target trajectory output section 20A: Target trajectory output section 21: Acquisition section 22: Traveling direction calculation section 23: Correction amount calculation section 23A: Correction amount calculation section 24: Drive unit 25: Correction section 26: Memory 27: Disturbance estimation section 28: Lateral force estimation section 251: Adder

Claims

1. A robot comprising: two drive wheels; at least one driven caster; a drive unit that drives each of the two drive wheels; a sensor connected to the at least one driven caster; and a control means connected to the drive unit and the sensor, The sensor detects a swivel angle of the at least one driven caster, the control means calculates a correction amount for a target speed of rotation of each of the two drive wheels based on the swivel angle of the at least one driven caster, and controls the drive unit to operate the two drive wheels independently based on the correction amount for each of the two drive wheels, and the correction amount is calculated so as to minimize a difference between a traveling direction of the robot and a target trajectory. robot.

2. A robot comprising: two drive wheels; at least one driven caster; a drive unit that drives each of the two drive wheels; a sensor connected to the at least one driven caster; and a control means connected to the drive unit and the sensor, The sensor detects a swivel angle of the at least one driven caster, The control means calculates a correction amount for each of the two drive wheels such that a correction amount for the rotation target speed of each of the two drive wheels increases as the turning angle of the at least one driven caster increases, correcting the target speeds of the two drive wheels based on the correction amounts of the two drive wheels; robot.

3. The sensor is an angle sensor that detects the turning angle. The robot according to claim 1 or 2.

4. Further, a state sensor is provided to detect a state of each of the two drive wheels, The control means estimating a lateral force, which is a force in a wheel axis direction acting on each of the two drive wheels, based on the turning angle detected by the sensor and the respective states of the two drive wheels detected by the state sensor; calculating a correction amount for each of the target speeds of the two drive wheels based on the estimated lateral force; The robot according to any one of claims 1 to 3.

5. The control means estimating disturbances occurring in the rotational directions of the two drive wheels based on the states of the two drive wheels detected by the state sensors; estimating a lateral force, which is a force in a wheel axis direction acting on each of the two drive wheels, based on the turning angle detected by the sensor and the estimated disturbances of each of the two drive wheels; The robot according to claim 4.

6. A robot comprising: two drive wheels; at least one driven caster; a drive unit that drives each of the two drive wheels; a sensor connected to the at least one driven caster; a control means that is connected to the drive unit and the sensor; and a status sensor that detects a status of each of the two drive wheels, The sensor detects a swivel angle of the at least one driven caster, The control means estimates a disturbance occurring in a rotational direction of each of the two drive wheels based on the state of each of the two drive wheels detected by the state sensor, and estimates a lateral force, which is a force in a wheel axis direction acting on each of the two drive wheels, based on the turning angle of the at least one driven caster and the estimated disturbance of each of the two drive wheels. calculating a correction amount for each of the target speeds of the two drive wheels based on the estimated lateral force; correcting the target speeds of the two drive wheels based on the correction amounts of the two drive wheels; A robot that controls the drive unit so as to rotate the two drive wheels independently based on the corrected target speeds of the two drive wheels.

7. the control means calculates the correction amount only when the robot is moving straight. The robot according to any one of claims 4 to 6.

8. The robot is capable of autonomous travel. The robot according to any one of claims 1 to 7.

9. A method for controlling a robot including two drive wheels, at least one driven caster, drive means for driving each of the two drive wheels, a sensor connected to the at least one driven caster, and control means connected to the drive means and the sensor, comprising: The sensor detects a swivel angle of the at least one driven caster; The control means calculates a correction amount for a target speed of rotation of each of the two drive wheels based on the swivel angle of the at least one driven caster, and controls the drive means to operate the two drive wheels independently based on the correction amount for each of the two drive wheels. The correction amount is calculated so as to minimize the difference between the moving direction of the robot and a target trajectory. Control methods.

10. A method for controlling a robot including two drive wheels, at least one driven caster, drive means for driving each of the two drive wheels, a sensor connected to the at least one driven caster, and control means connected to the drive means and the sensor, comprising: The sensor detects a swivel angle of the at least one driven caster; the control means calculates a correction amount for each of the two drive wheels such that a correction amount for the target speed of rotation of each of the two drive wheels increases as the turning angle of the at least one driven caster increases, and corrects the target speed of each of the two drive wheels based on the correction amount for each of the two drive wheels. Control methods.

Citation Information

Patent Citations

  • Method for detecting absolute position of self-propelled truck

    JP1994095733A

  • Riding-type ground working vehicle

    JP2011115006A

  • Estimation of carpet drift using differential sensors or visual measurements

    JP2015521760A

  • Operation plan method for omnidirectional carriage

    JP2016212668A

  • Guide robot

    JP2018120524A