Control device for a mobile body and method for controlling a mobile body

JP2026065432APending Publication Date: 2026-04-15NSK LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-10-03
Publication Date
2026-04-15

AI Technical Summary

Technical Problem

Active casters in mobile bodies can cause sudden wheel reversals, leading to disturbances in movement and potential adverse effects on transported goods.

Method used

A control device for mobile bodies with active casters that calculates a second command value to make steering axis angle changes more gradual, using a target value acquisition unit, steering axis angle detection, and command value calculation units to prevent sudden reversals.

Benefits of technology

Suppresses sudden wheel reversals, ensuring smoother movement and reducing disturbances in mobile body operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026065432000001_ABST
    Figure 2026065432000001_ABST
Patent Text Reader

Abstract

To suppress the occurrence of sudden reversal movements in the active caster. [Solution] The control device 100 for the mobile body 1 includes: a target value acquisition unit 51 that acquires a target movement value 61 for the mobile body 1 and outputs a first command value 62 based on the target movement value 61; a steering axis angle target value calculation unit 52 that acquires a target steering axis angle 63 for the active caster 11 based on the target movement value 61; a steering axis angle detection unit 53 that acquires the steering axis angle 64 for the active caster 11; a command value calculation unit 55 that calculates a second command value 65 that makes the change in the steering axis angle 64 more gradual than the first command value 62 based on the target steering axis angle 63 and the steering axis angle 64; an output switching unit 50 that outputs either the first command value 62 or the second command value 65 as the mobile body command value 66 depending on whether predetermined conditions are met; and a command value conversion unit 57 that converts the mobile body command value 66 into a drive command value 67 for the active caster 11.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a control device for a mobile body and a method for controlling a mobile body. [Background technology]

[0002] For example, Patent Document 1 discloses a mobile body equipped with multiple active casters, each comprising a drive wheel, an actuator for rotationally driving the drive wheel, a steering shaft supporting the axle of the drive wheel, and an actuator for rotationally driving the steering shaft. Non-Patent Document 1 discloses a control method for a mobile robot equipped with active casters. [Prior art documents] [Patent Documents]

[0003] [Patent Document 1] Patent No. 3560403 [Non-patent literature]

[0004] [Non-Patent Document 1] Masayoshi Wada, "Modeling and Control of Omnidirectional Mobile Robot Using Active Casters," Journal of the Robotics Society of Japan, 2007, Vol. 25, No. 7, pp. 1100-1107. [Overview of the Initiative] [Problems that the invention aims to solve]

[0005] Active casters, through the rotation of the wheels and the steering axis, can initiate movement and turning in all directions on the running surface from any position and orientation of the moving body. Active casters have the characteristic of operating like a normal driven caster. That is, when calculating the operation that controls the rotation of the wheel axis and the steering axis of an active caster, it is possible that an operation is generated in which the direction of the wheel rotates in the opposite direction in a very short time, just like a normal driven caster. In this specification, this operation in which the direction of the wheel rotates in the opposite direction in a very short time is called a rapid reversal operation of the wheel (active caster). In this specification, wheel reversal refers not only to a 180-degree rotation in the opposite direction, but also to an operation in which the wheel rotates from one side to the other side relative to the steering axis. In other words, in this specification, the term reversal is used even when the wheel rotates at an angle of less than 180 degrees or greater than 180 degrees, such as when the wheel rotates 150 degrees or 200 degrees.

[0006] When the wheels suddenly reverse direction, it can cause disturbances in the movement of the moving object, such as instantaneous vibration. As a result, there is a risk of adverse effects on the goods being transported on the moving object.

[0007] This disclosure has been made in view of the above-mentioned problems, and aims to provide a control device for a mobile body and a control method for a mobile body that can suppress the occurrence of sudden reversal movements of an active caster. [Means for solving the problem]

[0008] A control device for a mobile body according to one aspect of the present disclosure for achieving the above objective is a control device for a mobile body equipped with an active caster having wheels offset with respect to a steering axis, comprising: a target value acquisition unit that acquires a target movement value for the mobile body and outputs a first command value based on the target movement value; a steering axis angle target value calculation unit that acquires a target steering axis angle value for the active caster based on the target movement value; a steering axis angle detection unit that acquires the steering axis angle of the active caster; a command value calculation unit that calculates a second command value that makes the change in the steering axis angle more gradual than the first command value based on the target steering axis angle value and the steering axis angle; an output switching unit that outputs either the first command value or the second command value as a mobile body command value depending on whether a predetermined condition is met; and a command value conversion unit that converts the mobile body command value into a drive command value for the active caster.

[0009] In a preferred configuration of the control device for the moving body described above, the command value calculation unit calculates the second command value such that the wheel of the active caster is positioned on the rearward side in the direction of travel relative to the steering axis.

[0010] In a preferred configuration of the control device for the moving body described above, the command value calculation unit calculates a second command value in such a way that the moving body moves in a direction different from the direction of movement based on the first command value at the initial stage of movement.

[0011] In a preferred configuration of the control device for the moving body described above, the command value calculation unit calculates a correction angle for the steering axis angle target value that corrects the direction of movement of the moving body, and calculates the second command value based on the steering axis angle target value and the correction angle.

[0012] A desirable configuration of the control device for the moving body described above includes the condition that the correction angle is greater than or equal to a threshold.

[0013] In a preferred configuration of the control device for the above-mentioned mobile body, the command value calculation unit updates the correction angle at a predetermined calculation cycle.

[0014] In a preferred configuration of the control device for the moving body described above, the command value calculation unit updates the correction angle when it satisfies the conditions relating to the degree to which the steering axis angle follows the drive command value.

[0015] In a preferred embodiment of the control device for the mobile body described above, the output switching unit includes a determination unit that determines whether the predetermined conditions are met, and a command value selection unit that selects either the first command value or the second command value based on the determination result of the determination unit, wherein the determination unit determines whether the predetermined conditions are met based on a determination formula that evaluates the necessity of an operation based on the second command value.

[0016] In a preferred embodiment of the control device for the moving body described above, the output switching unit includes a determination unit that determines whether the predetermined conditions are met, and a command value selection unit that selects either the first command value or the second command value based on the determination result of the determination unit, wherein the determination unit determines whether the predetermined conditions are met based on the magnitude of the deviation between the steering axis angle target value and the steering axis angle.

[0017] A method for controlling a moving body according to one aspect of the present disclosure is a method for controlling a moving body equipped with an active caster having wheels offset with respect to a steering axis, comprising the steps of: acquiring a target movement value for the moving body and outputting a first command value based on the target movement value; acquiring a target steering axis angle value for the active caster based on the target movement value; acquiring the steering axis angle of the active caster; calculating a second command value that makes the change in the steering axis angle more gradual than the first command value based on the target steering axis angle value and the steering axis angle; outputting either the first command value or the second command value as a moving body command value depending on whether a predetermined condition is met; and converting the moving body command value into a drive command value for the active caster. [Effects of the Invention]

[0018] According to this disclosure, it is possible to suppress the occurrence of sudden reversal movements of the active caster. [Brief explanation of the drawing]

[0019] [Figure 1] Figure 1 is a schematic perspective view of the mobile body of the embodiment, viewed from above. [Figure 2] Figure 2 is a schematic perspective view of the movable body of the embodiment, viewed from below. [Figure 3] Figure 3 is a schematic diagram showing an example of the arrangement of active casters and driven wheels in a mobile body of the embodiment. [Figure 4] Figure 4 shows the configuration of the control device according to the embodiment. [Figure 5] Figure 5 is a block diagram showing the configuration related to the motion control of a mobile object. [Figure 6] Figure 6 is the first part of a flowchart illustrating the control method according to the embodiment. [Figure 7] Figure 7 is the second part of a flowchart illustrating the control method according to the embodiment. [Figure 8] Figure 8 illustrates the position of the origin of the moving object coordinate system in the world coordinate system. [Figure 9] Figure 9 shows the geometric relationship between the origin of the moving object's coordinate system and the active caster when the moving object is rotating. [Figure 10] Figure 10 is a schematic plan view of an active caster installed on a moving object. [Figure 11] Figure 11 shows the geometric relationship between the origin of the moving object's coordinate system and the active caster when the moving object rotates without moving. [Figure 12] Figure 12 is a schematic diagram showing an example of the current value of the steering axis angle of an active caster. [Figure 13] Figure 13 is a schematic diagram showing an example of the target value for the steering axis angle of an active caster. [Figure 14] Figure 14 illustrates the deviation between the target steering axis angle of the active caster and the current steering axis angle. [Figure 15] Figure 15 illustrates the deviation between the target steering axis angle and the current steering axis angle in another example of operation. [Figure 16] Figure 16 shows an example of time-series data obtained by calculating the mobile unit command value. [Figure 17] Figure 17 shows the trajectory of the origin of the moving coordinate system, created from the time-series data in Figure 16. [Figure 18] Figure 18 shows an example of the operation of an active caster when a moving object is moving in a straight line. [Figure 19] Figure 19 shows the time-series data of drive speed, turning speed, and steering axis angle in Figure 18. [Figure 20] Figure 20 shows the initial state in an example of the sudden reversal avoidance operation according to the embodiment. [Figure 21] Figure 21 shows an example of the origin of the moving body coordinate system and the trajectory of the active caster in a sudden reversal avoidance operation according to the embodiment. [Figure 22] Figure 22 shows an example of time-series data in the case of Figure 21. [Modes for carrying out the invention]

[0020] Preferred embodiments of the control device and control method for a mobile body according to the present disclosure will be described in detail below with reference to the drawings. However, the present invention is not limited to these embodiments, and if there are multiple embodiments, they may be constructed by combining each embodiment. Furthermore, the components in the embodiments include those that are easily conceivable by those skilled in the art, those that are substantially identical, and those that fall within the so-called equivalent range.

[0021] (Mobile) Figure 1 is a schematic perspective view of the mobile body of the embodiment, viewed from above. Figure 2 is a schematic perspective view of the mobile body of the embodiment, viewed from below. Figure 3 is a schematic diagram showing an example of the arrangement of active casters and driven wheels in the mobile body of the embodiment. The mobile body 1 of the embodiment is equipped with active casters 11 as drive wheels and is movable on the floor surface by the active casters 11. The type and use of the mobile body 1 are not particularly limited. The mobile body 1 is, for example, a transport device that carries transported goods and travels on the floor surface. The mobile body 1 can be used, for example, as an automated guided vehicle (AGV) or an autonomous mobile robot (AMR). Transported goods can include a variety of items such as hand lifters, forklifts, picking robots, and medical equipment. The mobile body 1 may also be a transport assist device that is connected to a traveling device that travels on the floor surface, such as a trolley, transport cart, mobile bed, or stretcher, to assist in the movement of the traveling device.

[0022] As shown in Figures 1 to 3, the mobile body 1 includes a mobile body main body 10, active casters 11, and driven wheels 12. The mobile body 1 is equipped with a control device 100 (see Figure 5) that controls the operation of the active casters 11. The mobile body 1 may also be equipped with a connection mechanism for connecting the mobile body main body 10 to the transported object. The mobile body 1, with the mobile body main body 10 connected to the transported object, transports the object by moving.

[0023] The mobile body 10 is the base on which the active caster 11 and the driven wheel 12 are positioned, and it is also the case that houses the active caster 11 and the driven wheel 12.

[0024] At least two active casters 11 are provided on the mobile body 10. At least one driven wheel 12 is provided on the mobile body 10. In the example in Figure 1, the mobile body 1 comprises two active casters 11 and two driven wheels 12.

[0025] In other words, the mobile body 1 of the embodiment is a so-called holonomic omnidirectional mobile body, which is a mobile body that can move on the floor surface. A holonomic omnidirectional mobile body is a mobile body that has no constraints on its movement and can start moving and rotating in all directions on the floor surface from any position and any orientation of the mobile body 1. The mobile body 1 of the embodiment is configured as a holonomic omnidirectional mobile body in which a total of three degrees of freedom, namely movement on a plane (2 degrees of freedom) and orientation (1 degree of freedom), can be independently controlled by mounting two or more active casters 11.

[0026] As shown in Figure 2, at least the wheel portions of the active caster 11 and the driven wheel 12 are exposed below the lower surface of the mobile body 10. The wheel portions of the active caster 11 and the driven wheel 12 that are exposed below the mobile body 10 are in contact with the floor surface.

[0027] The installation position of the active casters 11 is not particularly limited. In one example, the active casters 11 are positioned symmetrically with respect to the center 10A of the mobile body 10. In one example, the center 10A is the geometric centroid of the mobile body 10 in a plan view. In another example, the center 10A is the physical centroid of the mobile body 10 in a plan view. In Figure 3, the active casters 11 are positioned symmetrically in the first direction with respect to the center 10A of the mobile body 10. The distance from each active caster 11 to the center 10A is equal.

[0028] The installation position of the driven wheels 12 is not particularly limited. In Figure 3, the driven wheels 12 are arranged symmetrically in a second direction perpendicular to the first direction in a plan view, with the center 10A of the mobile body 10 as the reference point. The distance from each driven wheel 12 to the center 10A is equal. In Figure 3, the mobile body 10 is roughly rectangular in a plan view, the first direction is along the long side of the mobile body 10, and the second direction is along the short side of the mobile body 10, but this is not particularly limited.

[0029] Various types of active caster structures have been proposed, but the structure of the active caster 11 according to this embodiment is not particularly limited. As shown in Figure 3, the active caster 11 comprises a wheel 21, a main body 22 that holds the wheel 21, a transmission mechanism 23, and a motor. The wheel 21 is rotatable around the wheel axle 25. The main body 22 is rotatable around the steering shaft 26. The steering shaft 26 extends along the vertical direction of the active caster 11 (i.e., the mobile body 1). The active caster 11 is mounted on the mobile body 1 such that the wheel axle 25 is parallel to the floor surface on which the mobile body 1 travels. The wheel 21 rolls on the floor surface by rotating around the wheel axle 25 while in contact with the floor surface. The active caster 11 has a wheel 21 that is offset from the steering shaft 26. Specifically, the main body 22 holds the wheel 21 (wheel axle 25) at a position a predetermined distance away from the axis of the steering shaft 26. This predetermined distance is called the caster trail. The wheel 21 can rotate around the steering shaft 26 on a track with a radius of this predetermined distance. Hereinafter, the rotation of the wheel 21 around the wheel axle 25 will be referred to as the "rotation" of the wheel 21, and the rotation of the wheel 21 around the steering shaft 26 will be referred to as the "turning" of the wheel 21.

[0030] The transmission mechanism 23 connects the motor and the main body 22. The transmission mechanism 23 transmits the rotational force input by the motor. The motor includes a first motor 24A and a second motor 24B. The active caster 11 can rotate the wheel 21 around the wheel axle 25 and pivot the wheel 21 around the steering shaft 26 using the rotational force of the first motor 24A and the second motor 24B. The configuration of the transmission mechanism 23 is not particularly limited. The transmission mechanism 23 is composed of one or more combinations of various structures such as a gear transmission mechanism and a belt-pulley mechanism.

[0031] The transmission mechanism 23 may transmit the rotational force of one of the first motor 24A and the second motor 24B as the turning drive force of the wheel 21, and the rotational force of the other of the first motor 24A and the second motor 24B as the rotational drive force of the wheel 21. In this case, the turning of the wheel 21 (steering of the mobile body 1) and the rotation of the wheel 21 (forward and backward movement) are controlled independently by the first motor 24A and the second motor 24B.

[0032] The transmission mechanism 23 may be a differential transmission mechanism that transmits the rotational forces of both the first motor 24A and the second motor 24B as the turning drive force and the rotational drive force of the wheel 21. In one example, the transmission mechanism 23 rotates the wheel 21 without turning when the first motor 24A and the second motor 24B are rotated in the same direction at the same speed. That is, when the first motor 24A and the second motor 24B rotate in the forward direction at the same speed, the wheel 21 rotates in one direction, and when the first motor 24A and the second motor 24B rotate in the opposite direction at the same speed, the wheel 21 rotates in the other direction. Furthermore, when the first motor 24A and the second motor 24B are rotated at different speeds, the transmission mechanism 23 turns the wheel 21 according to the difference in rotational speeds. In other words, if the rotational speed of the first motor 24A is greater than the rotational speed of the second motor 24B, the wheel 21 will turn in one direction, and if the rotational speed of the second motor 24B is greater than the rotational speed of the second motor 24B, the wheel 21 will turn in the other direction.

[0033] When the wheels 21 of the active caster 11 are not driven, they operate in the same way as a driven caster that does not have its own power. In other words, when the wheels 21 of the active caster 11 are not driven by the motor, they can be passively rotated and swiveled by external force. Therefore, the mobile body 1 can be automatically driven and steered by the driving force of the motor, and can also be manually driven and steered by an operator applying external force.

[0034] The driven wheel 12 is a wheel device that does not have a drive mechanism and operates solely in response to the action of external forces. The configuration of the driven wheel 12 is not particularly limited. The driven wheel 12 may be a driven caster capable of wheel rotation and wheel swivel in response to the action of external forces. The driven wheel 12 may be an omnidirectional movement mechanism such as an omniwheel or a Mecanum wheel.

[0035] In the example shown in Figure 3, the driven wheel 12 is a driven caster. The driven wheel 12 comprises a driven wheel 31 and a main body 32 that holds the driven wheel 31. The driven wheel 12 is not equipped with a motor or a transmission mechanism for transmitting the rotational force of the motor. The driven wheel 31 is rotatable around the wheel axle 33. The main body 32 is rotatable around the pivot axis 34. The pivot axis 34 extends along the vertical direction of the driven wheel 12 (i.e., the moving body 1). The driven wheel 12 is mounted on the moving body 1 such that the wheel axle 33 is parallel to the floor surface on which the moving body 1 travels. The main body 32 holds the driven wheel 31 (wheel axle 33) at a predetermined distance from the pivot axis 34. The driven wheel 31 is rotatable around the pivot axis 34 with a swivel start of this predetermined distance as the radius.

[0036] (Control device for mobile devices) Next, the control device 100 of the mobile body 1 according to the embodiment will be described. Figure 4 is a diagram showing the configuration of the control device according to the embodiment. The control device 100 is a control device 100 of the mobile body 1 equipped with active casters 11. Although not shown in Figures 1 to 3, the control device 100 is housed in the mobile body 10.

[0037] The control device 100 includes a target value acquisition unit 51, a steering axis angle target value calculation unit 52, a steering axis angle detection unit 53, a command value calculation unit 55, an output switching unit 50 (determination unit 54, command value selection unit 56), and a command value conversion unit 57. The control device 100 calculates and outputs a drive command value 67 for the active caster 11 using information acquired from sensors, etc., as input. The control device 100 is implemented by a processing circuit such as a system LSI (Large Scale Integration), or a processor such as a CPU (Central Processing Unit) that executes a program stored in memory, etc.

[0038] Figure 5 is a block diagram showing the configuration related to the motion control of the mobile body. The mobile body 1 comprises a control device 100, an active caster 11, motors (first motor 24A, second motor 24B), a motor angle sensor 13, a steering shaft angle sensor 14, and a motor control device 15.

[0039] The motor control device 15 controls the motor drive based on the drive command value 67 output from the control device 100. The motor control device 15 takes the drive command value 67 as input and controls the drive current supplied to the motor. A motor control device 15 is provided for each active caster 11 of the mobile body 1. The control device 100 and the motor control device 15 are connected by a communication line. In this embodiment, two motors (first motor 24A, second motor 24B) are provided for each of the two active casters 11. A total of four motor control devices 15 are provided separately for each motor.

[0040] The motor is connected to the wheel 21 via a transmission mechanism 23 and generates the driving force necessary for the wheel rotation and turning of the active caster 11. The motor angle sensor 13 detects the current value of the motor's rotation angle. A motor angle sensor 13 is provided for each motor (first motor 24A, second motor 24B). The active caster 11 propels the mobile body 1 by rotating the wheel 21 around the wheel axle 25 and steering shaft 26 via the transmission mechanism 23 connected to the motor's output shaft. The steering shaft angle sensor 14 detects the current value of the angle of the steering shaft 26 of the active caster 11 (steering shaft angle 64). Any sensor capable of detecting rotation angle can be used as the motor angle sensor 13 and the steering shaft angle sensor 14, for example, a rotary encoder.

[0041] (Description of the components of the control device) Each component of the control device 100 shown in Figure 4 will be described in detail. Figure 4 shows an example configuration of a control device 100 that controls the speed of the mobile body 1. The control device 100 according to this embodiment is capable of outputting a drive command value 67 for the normal operation of the mobile body 1 and a drive command value 67 for a sudden reversal avoidance operation to prevent a sudden reversal operation from occurring in the mobile body 1.

[0042] The target value acquisition unit 51 acquires a target movement value 61 for the mobile body 1. The target value acquisition unit 51 outputs a first command value 62 based on the acquired target movement value 61. The target movement value 61 and the first command value 62 include a target value (command value) for the overall movement speed of the mobile body 1.

[0043] The target value acquisition unit 51 may acquire the movement target value 61 by retrieving data of the movement target value 61 that has been previously stored in the memory of the control device 100. The target value acquisition unit 51 may also acquire the movement target value 61 output by an external device of the control device 100 via a wireless or wired communication line. Alternatively, the target value acquisition unit 51 may acquire an input signal from an external input device of the control device 100 and calculate the movement target value 61 based on a pre-set calculation formula. The external input device of the control device 100 may be a remote controller 2 (see Figure 1) or a computer connected via a network.

[0044] The target value acquisition unit 51 may output the acquired movement target value 61 as the first command value 62, or it may output a first command value 62 different from the movement target value 61 by performing calculations on the acquired movement target value 61. Here, it is assumed that the movement target value 61 and the first command value 62 are equal. In other words, the movement target value 61 and the first command value 62 may be interchangeable.

[0045] The steering axis angle target value calculation unit 52 calculates and outputs the steering axis angle target value 63 of the active caster 11 based on the movement target value 61 (= first command value 62). The steering axis angle target value calculation unit 52 calculates the steering axis angle target value 63 by performing the calculation described later based on the movement target value 61.

[0046] The steering axis angle detection unit 53 acquires the steering axis angle 64 of the active caster 11. The steering axis angle detection unit 53 acquires the current value of the steering axis angle 64 from the measured value of the steering axis angle sensor 14. In the examples of Figures 4 and 5, the sensor value detected by the steering axis angle sensor 14 is used as the steering axis angle 64, but the steering axis angle detection unit 53 is not limited to this and may acquire the result of estimating the current value of the steering axis angle 64 using a Kalman filter or observer.

[0047] The command value calculation unit 55 calculates a command value that enables a sudden reversal avoidance operation to prevent the active caster 11 from performing a sudden reversal operation, based on predetermined parameters. Specifically, the command value calculation unit 55 calculates a second command value 65 that makes the change in the steering axis angle 64 more gradual than the first command value 62, based on the steering axis angle target value 63 and the steering axis angle 64. The operation based on the first command value 62 is the normal operation, and the operation based on the second command value 65 is the sudden reversal avoidance operation. In the operation based on the second command value 65, the change in the steering axis angle 64 is more gradual than in the operation based on the first command value 62, so that the direction of the wheel 21 does not rotate in the opposite direction in a very short time. The command value calculation unit 55 calculates and outputs the second command value 65 when the determination unit 54 determines that predetermined conditions have been met (i.e., the sudden reversal avoidance operation is not yet completed). Details of the calculation method for the second command value 65 will be described later.

[0048] The output switching unit 50 outputs either the first command value 62 or the second command value 65 as the mobile command value 66, depending on whether predetermined conditions are met. The output switching unit 50 includes a determination unit 54 that determines whether predetermined conditions are met, and a command value selection unit 56 that selects either the first command value 62 or the second command value 65 based on the determination result of the determination unit 54.

[0049] The determination unit 54 performs a determination process to avoid the occurrence of a sudden reversal operation of the active caster 11. The control device 100 executes a sudden reversal avoidance operation to avoid the occurrence of a sudden reversal operation. The control device 100 selects whether or not to execute the sudden reversal avoidance operation depending on whether or not predetermined conditions set in advance are met. The determination unit 54 determines whether these predetermined conditions are met (that the predetermined conditions have been met). The determination unit 54 determines whether the predetermined conditions are met based on the steering axis angle target value 63 of the active caster 11 calculated by the steering axis angle target value calculation unit 52 and the current value of the steering axis angle 64 detected by the steering axis angle detection unit 53. In one example, if the determination unit 54 determines that the predetermined conditions are met, the control device 100 executes the sudden reversal avoidance operation. If the determination unit 54 determines that the predetermined conditions are not met, the control device 100 does not execute the sudden reversal avoidance operation and executes normal operation. In other words, when the predetermined conditions are met, it means that the sudden reversal avoidance operation is incomplete, and when the predetermined conditions are not met, it means that the sudden reversal avoidance operation is completed (the normal state). Details of the determination method by the determination unit 54 will be described later.

[0050] The command value selection unit 56 selects a command value to output to the command value conversion unit 57 according to the determination result of the determination unit 54. That is, the command value selection unit 56 selects either the first command value 62 or the second command value 65 depending on whether predetermined conditions are met or not. If the determination unit 54 determines that the predetermined conditions are met, the command value selection unit 56 selects the second command value 65. If the determination unit 54 determines that the predetermined conditions are not met, the command value selection unit 56 selects the first command value 62. The command value selection unit 56 outputs the selected command value (hereinafter referred to as the mobile command value 66) to the command value conversion unit 57.

[0051] The mobile unit command value 66 (i.e., the first command value 62 or the second command value 65) represents the command value for the overall mobile unit's speed. The overall mobile unit's speed is the speed at the geometric center of gravity of mobile unit 1, or at any point relative to the center of gravity (this is called the origin of the mobile unit coordinate system). The overall mobile unit's speed may be described as "mobile unit speed" or "mobile unit velocity," but unless otherwise specified, they mean the same thing. Hereafter, for convenience, the origin of the mobile unit coordinate system will be assumed to coincide with the center 10A in Figure 3.

[0052] Furthermore, the moving body command value 66 (i.e., the first command value 62 or the second command value 65) is a physical quantity expressed in a Cartesian coordinate system. Therefore, the command value conversion unit 57 converts the command value expressed in a Cartesian coordinate system into a drive command value 67 expressed in the motor's rotational coordinate system. For example, the command value conversion unit 57 calculates the drive command value for the angular velocity of each motor by multiplying the command value of the velocity expressed in a Cartesian coordinate system by the inverse (or pseudo-inverse) of the Jacobian matrix. In that case, the command value conversion unit 57 performs the following calculation (1).

number

[0053] The motor control device 15 controls the motor's rotational speed based on the drive command value 67 output from the command value conversion unit 57 and the information from the motor angle sensor 13 (angle measurement value and angular velocity measurement value obtained from the angle measurement value). The motor control device 15 controls the motor's rotational speed so that the angular velocity measurement value obtained from the motor angle sensor 13 approaches the drive command value 67.

[0054] In this configuration, the control device 100 acquires information (angle measurement value) from the steering shaft angle sensor 14 and outputs a drive command value 67 to the motor control device 15 to control the moving body 1 via the motor and active caster 11.

[0055] (Explanation of the operation procedure of the control device 100) Next, a control method for the mobile body 1 according to the embodiment will be described. Figure 6 is the first part of a flowchart representing the control method according to the embodiment. Figure 7 is the second part of a flowchart representing the control method according to the embodiment. The control methods shown in Figures 6 and 7 are realized by the operation of the control device 100 according to the embodiment shown in Figure 4.

[0056] The target value acquisition unit 51 acquires the target movement value 61 of the mobile body 1 (step S1). For example, as shown in Figure 1, the mobile body 1 receives a signal input from an external input device such as a remote control 2. The target value acquisition unit 51 acquires the target movement value 61 input from the remote control 2. The remote control 2 may also input the direction of movement of the mobile body 1, in which case the target value acquisition unit 51 may calculate the mobile body speed required to achieve movement in the input direction as the target movement value 61. Alternatively, the target value acquisition unit 51 may have a trajectory for the mobile body 1 to reach its destination pre-recorded, and the target value acquisition unit 51 may calculate the mobile body speed that satisfies that trajectory as the target movement value 61. The target movement value 61 is the target value (v) of the movement speed of the mobile body 10 with a total of 3 degrees of freedom: movement on a plane (2 degrees of freedom in the X and Y directions) and rotation (1 degree of freedom). xcmd ,v ycmd ,ω zcmd) is included. The target value acquisition unit 51 outputs a first command value 62 based on the acquired movement target value 61. Here, the target value acquisition unit 51 outputs the acquired movement target value 61 as the first command value 62.

[0057] Next, the determination process in the determination unit 54 is performed (steps S2, S4, S7, and S8).

[0058] As will be described later, the control device 100 has three predetermined conditions set: steps S4, S7, and S8. If the condition in step S8 is ultimately satisfied, the sudden reversal avoidance operation is considered incomplete (=False), and control based on the second command value 65 is executed. If any of the conditions are not satisfied, the sudden reversal avoidance operation is considered complete (=True), and control based on the first command value 62 is executed (the sudden reversal avoidance operation is not performed).

[0059] First, the determination unit 54 determines the current control state. That is, the determination unit 54 determines whether the current value of the determination result in the determination unit 54 indicates that the sudden reversal avoidance operation is complete (step S2). The determination result is one of two values: incomplete (=False) or completed (=True) of the sudden reversal avoidance operation. The initial value of the determination result is "True" (sudden reversal avoidance operation completed). Furthermore, the determination unit 54 determines that the sudden reversal avoidance operation is complete (=True) if the magnitude of the vector of the movement target value 61 (first command value 62) can be approximated to 0. The case where the magnitude of the vector of the movement target value 61 (first command value 62) can be approximated to 0 means that the moving body 1 is instructed to stop.

[0060] If the current value of the judgment result indicates that the sudden reversal avoidance operation is incomplete (=False), or if the magnitude of the vector of the movement target value 61 cannot be approximated to 0 (step S2; No), the judgment unit 54 proceeds to the judgment in step S8 described later.

[0061] If the determination result indicates the completion of the sudden reversal avoidance operation or the magnitude of the vector of the movement target value 61 can be approximated to 0 (step S2; Yes), the steering axis angle target value calculation unit 52 calculates the steering axis angle target value 63 of the active caster 11 from the movement target value 61 (first command value 62) acquired by the target value acquisition unit 51 (step S3).

[0062] The steering axis angle target value 63 is obtained from the following moving speed of the active caster 11. The calculation method of the steering axis angle target value is not limited to a specific method. In this specification, two calculation methods are exemplified.

[0063] (The first calculation method of the steering axis angle target value) The moving body speed (v x, v y, ω z ) and the driving angular velocity ω of the wheel axis 25 with respect to the floor surface of the coordinate value (axial center position of the steering axis 26) of the i-th active caster 11 iw and the driving angular velocity ω of the steering axis 26 is The relationship between them is expressed by Equation (2). The details of Equation (2) are described in Non-Patent Document 1.

Equation

[0065] Note that the target value of movement (v xcmd ,v ycmd ,ω zcmd The case where ) = (0,0,0) corresponds to a situation where the magnitude of the vector of the target movement value can be approximated to 0. In this case, the steering axis angle target value of 63 is not calculated.

[0066] (Second method for calculating the target value of the steering axis angle) A second method for calculating the steering axis angle target value is to calculate the steering axis angle target value 63 from the geometric relationship of the active casters 11 mounted on the moving body 1.

[0067] First, the target value of the turning angular velocity ω zcmd If can be considered to be practically zero, the target steering axis angle 63 of the i-th active caster 11 can be calculated using equation (4).

number

[0068] Next, the target value of the turning angular velocity ω zcmd We will now explain the case where is non-zero. Figure 8 is a diagram illustrating the position of the origin of the moving object coordinate system in the world coordinate system.

[0069] As shown in Figure 8, the position of the origin of the moving object coordinate system, as shown in the world coordinate system, during the t-th period of the operation is denoted as P[t]. The moving object coordinate system is a coordinate system fixed to the moving object 1, and the world coordinate system is a coordinate system fixed to the space in which the moving object 1 moves (a Cartesian coordinate system with an arbitrary point on the plane as its origin). Here, the displacement from the position P[t] in the t-th period to the position P[t+1] in the (t+1)-th period is expressed by equation (5).

number

[0070] Figure 8 shows the relationship given by equation (5) regarding the position of the origin of the moving object coordinate system in the world coordinate system. In this case, the origin of the moving object coordinate system rotates with a pivot radius r around a certain point O. steer Assume that the moving object 1 is traveling along the trajectory of ω. The arc connecting P[t+1] and P[t] on this turning radius and the line segment connecting P[t+1] and P[t] are ω zcmd When Δt is small, they can be approximated as being equal. When the arc connecting P[t+1] and P[t] and the line segment can be considered equal, the radius of rotation r steer This is expressed by equation (6).

number

[0071] Next, the origin of the moving object coordinate system is the rotation radius r. steer The target steering axis angle 63 of the active caster 11 when moving is calculated as follows:

[0072] Figure 9 shows the geometric relationship between the origin of the mobile object's coordinate system and the active caster when the mobile object is rotating. Figure 10 is a schematic plan view of the active caster installed on the mobile object. Figure 11 shows the geometric relationship between the origin of the mobile object's coordinate system and the active caster when the mobile object rotates without moving.

[0073] Figure 9 shows the case where the moving body 1 rotates counterclockwise. The distances from the origin G of the moving body coordinate system to the axes A1 and A2 of the steering axis 26 of the active caster 11 are both l acLet's assume that the axis positions of the wheel axles 25 of the active caster 11 are denoted as B1 and B2. The axis positions are equal to the positions where the wheels 21 of the active caster 11 make contact with the floor surface in a plan view. Also, let C1 and C2 be the intersections of the perpendiculars drawn from the axis A1 and A2 of the steering axis 26 of the active caster 11 to the line segment OG connecting the pivot center O and the origin G of the moving body coordinate system.

[0074] Here, if wheel 21 is moving without slipping, the so-called Ackermann model holds true, where the pivot center O is located on the extension of the wheel axle 25. From this relationship, equation (7) can be derived.

number

[0075] As shown in Figure 11, if the origin G of the moving body coordinate system does not move and the moving body 1 rotates in that location, the rotation center O and the origin G of the moving body coordinate system coincide. In this case, the target value 63 for the steering axis angle can be calculated from equation (8).

number

[0076] In the second calculation method, the steering axis angle target value calculation unit 52 calculates the steering axis angle target value 63(φ) based on the above means. 1tar, φ 2tar Calculate ).

[0077] As shown in Figure 6, the determination unit 54 obtains the steering axis angle target value 63 from the steering axis angle target value calculation unit 52. Based on the steering axis angle target value 63, the determination unit 54 makes a determination of a predetermined condition (first condition) (step S4).

[0078] (Determination of the first condition) Specifically, the determination unit 54 determines, based on equation (9), that the absolute value of the difference between the steering axis angle target values ​​63 of each active caster 11 is 90 degrees or less.

number

[0079] The necessity of avoiding sudden reversals will be explained. Figure 12 is a schematic diagram showing an example of the current value of the steering axis angle of the active caster. Figure 13 is a schematic diagram showing an example of the target value of the steering axis angle of the active caster. In Figure 12, as an example of the initial state, the current value of the steering axis angle 64 of the active caster 11 is the same as in Figure 11. In Figure 13, the target value of the steering axis angle 63 is shown when the moving body 1 turns in place.

[0080] When transitioning from the initial state in Figure 12 to the state in Figure 13, the steering axis angle target value 63 calculated by the steering axis angle target value calculation unit 52 is φ shown in Figure 13. 1tar and φ 2tar This is the result. It can be seen that, from the initial state, the wheel 21 of each active caster 11 rotates to the opposite side of the steering axis 26. In other words, Figures 12 and 13 show cases where the amount of change in the steering axis angle 64 (deviation between the target value and the current value) is large, and a sharp reversal motion occurs.

[0081] In this embodiment, when the steering axis angle 64 transitions from the state shown in Figure 12 to the state shown in Figure 13, the sudden reversal avoidance operation (operation based on the second command value 65) is not performed. As will be described later, the sudden reversal avoidance operation in this embodiment avoids the occurrence of a sudden reversal by having the moving body 1 draw an arc-shaped detour trajectory, but even if a detour trajectory is drawn from the state shown in Figure 12, the state shown in Figure 13 cannot be achieved. In other words, even if one active caster 11 is operated to avoid a sudden reversal, the state shown in Figure 13 will not be achieved unless the other active caster 11 generates a sudden reversal.

[0082] Considering the examples shown in Figures 12 and 13, the steering axis angle 64 can ultimately be brought to the target steering axis angle value 63 while avoiding a sudden reversal based on the sudden reversal avoidance action only if the absolute value of the difference between the target steering axis angle values ​​63 of each active caster 11 is less than or equal to a predetermined angle (in this case, 90 degrees (π / 2)).

[0083] Therefore, as shown in Figure 6, if the absolute value of the difference between the steering axis angle target values ​​63 of each active caster 11 is greater than 90 degrees, the determination unit 54 determines that the equation (9) for evaluating the necessity of the action based on the second command value 65 is not satisfied (Step S4; No), and since the sudden reversal avoidance action does not produce a useful effect, it considers the sudden reversal avoidance action to be completed (Step S9).

[0084] On the other hand, the determination unit 54 determines that equation (9) is satisfied if the absolute value of the difference between the steering axis angle target values ​​63 of each active caster 11 is 90 degrees or less (step S4; Yes). In this case, the steering axis angle detection unit 53 determines that the current value of the steering axis angle 64 of the active caster 11 (φ imes Detect (i=1,2) (Step S5).

[0085] The determination unit 54 determines the deviation Δφ between the steering axis angle target value 63 of the active caster 11 calculated by the steering axis angle target value calculation unit 52 and the current value of the steering axis angle 64 detected by the steering axis angle detection unit 53. 1tar、 Δφ2 tar Obtain (step S6).

[0086] The determination unit 54 determines whether a predetermined condition (second condition) is met based on the magnitude of the deviation between the steering axis angle target value 63 and the steering axis angle 64 (step S7).

[0087] (Determination of the second condition) In other words, the determination unit 54 determines the deviation Δφ between the target value 63 of the steering axis angle of the active caster 11 and the current value of the steering axis angle 64, as shown in equation (10). 1tar、 Δφ2 tar The absolute value of both wheels is a predetermined threshold (φ thdIf the deviation Δφ is less than or equal to (Step S7; No), the sudden reversal avoidance operation is considered complete (Step S9). Meanwhile, the determination unit 54 determines the deviation Δφ 1tar、 Δφ2 tar The absolute value of the threshold (φ thd If it is greater than φ, that is, if the second condition is met (Step S7; Yes), proceed to the process in Step S8 described below. thd For example, it could be 90 degrees, but it is not limited to 90 degrees.

number

[0088] This determination based on the predetermined conditions (the second condition) determines whether or not a sudden reversal operation of the active caster 11 occurs (in control based on the normal first command value 62). The occurrence or absence of a sudden reversal operation will be explained using an example.

[0089] Figure 14 illustrates the deviation between the target steering axis angle of the active caster and the current steering axis angle. Figure 14 shows a plan view of the trajectory when the active caster 11 reverses direction while the moving body 1 moves in a straight line in the direction indicated by the arrow. The state indicated by k=0 is assumed to be the initial state of the steering axis angle 64. The steering axis angle 64 of the active caster 11 transitions in the order of k=1, 2, ..., 6, and finally reaches the state of k=6. Therefore, the state of k=6 is set to the steering axis angle target value φ 1tar、 φ 2tar Let k=0,1,2,... be the current value φ of the steering axis angle 64 at each point in time. 1mes、 φ 2mes Let's assume that.

[0090] Here, the sharp reversal motion occurs when transitioning from the state k=0 to k=6 around the state k=3, that is, when the steering axis angle target value φ of the active caster 11 is reached. itarThis corresponds to the case where the current value is perpendicular to (i=1,2). Therefore, as shown in equation (10), if the deviation between the target steering axis angle 63 of the active caster 11 and the current steering axis angle 64 becomes greater than the threshold (90 degrees), a sharp reversal motion can be predicted. Note that, as shown in Figure 14, there are cases where the two active casters 11 have different turning directions and cases where they have the same turning direction, so the absolute value is used for the deviation in equation (10).

[0091] Figure 15 illustrates the deviation between the target steering axis angle and the current steering axis angle in another example of operation. In Figure 15, the current value of the steering axis angle 64 of the active caster 11 is shown as φ at k=0. 1mes、 φ 2mes Let's assume that the vehicle is moving in the direction of the arrow (diagonal direction). In Figure 15, the target value of the steering axis angle of the active caster 11 (φ 1tar、 φ 2tar ) The state in which the deviation between the current value and the vertical is greater than the vertical (φ at k=0) 1mes、 φ 2mes From this point, the movement of the moving object 1 begins. In such cases, it is possible to predict the occurrence of a sharp reversal motion near the state of k=1.

[0092] However, in the case of Figure 15, since acceleration starts from the stationary state of k=0 and the state of k=1 is passed before the speed becomes sufficiently large, a large turning speed that would disrupt the movement of the mobile body 1 may not occur. In such cases, selecting the sharp reversal avoidance operation based on the second command value 65 may cause unnecessary movement of the mobile body 1, so it may be better to consider the sharp reversal avoidance operation as complete and select the first command value 62 as the mobile body command value 66. From the above, the threshold φ in equation (10) thd This is not limited to 90 degrees, but can be any predetermined value.

[0093] As shown in Figure 6, the deviation Δφ 1tar、 Δφ2 tar If the absolute value of is greater than the threshold and the second condition is satisfied (step S7; Yes), the determination unit 54 determines the correction angle Δφ of the steering axis angle target value 63.cmp Based on this, a determination is made regarding the predetermined condition (the third condition) (step S8).

[0094] (Determination of the third condition) Specifically, the determination unit 54 determines that the predetermined condition (third condition) has been met if equation (11) is satisfied, and considers the sudden reversal avoidance operation to be incomplete (step S10). If equation (11) is not satisfied, the determination unit 54 determines that the predetermined condition (third condition) has not been met, and considers the sudden reversal avoidance operation to be completed (step S9).

number

[0095] Equation (11) shows the correction angle Δφ in the sharp reversal avoidance operation. cmp The size is a predetermined threshold φ cmpthd This is a determination formula for determining whether or not it is greater than or equal to . In other words, formula (11) is a determination formula for determining whether or not the sudden reversal avoidance operation can be considered complete, based on the angular deviation between the direction of movement of the moving body 1 during the sudden reversal avoidance operation and the direction of movement based on the movement target value 61 (first command value 62).

[0096] Figure 16 shows an example of time-series data obtained by calculating the mobile unit command value. Figure 16 shows the X and Y positions of the origin of the mobile unit coordinate system in the world coordinate system and the correction angle Δφ during the sharp reversal avoidance operation. cmp The figure also shows the direction angle of the moving object and time-series data indicating whether the sudden reversal avoidance operation was completed or not. Figure 17 is a diagram showing the trajectory of the origin of the moving object's coordinate system, created from the time-series data in Figure 16. In the examples in Figures 16 and 17, the movement target value 61 (first command value 62) consistently takes a constant value (constant direction). Correction angle Δφ in Figure 16 cmp The direction of movement and the direction of motion overlap because their values ​​are approximately equal.

[0097] As shown in Figure 17, the correction angle Δφ cmpThis can be understood as the deviation between the direction of the movement target value 61 (first command value 62) and the direction of travel of the moving body. In other words, the direction of travel when the moving body 1 performs a sharp reversal avoidance maneuver in accordance with the second command value 65 is the correction angle Δφ. cmp And φ, which will be discussed later ref A relationship is obtained that is the sum of the two. In equation (11), if the deviation between the direction of the movement target value 61 (first command value 62) and the direction of movement of the moving body 1 falls below a certain threshold, a determination is made to complete the sudden reversal avoidance operation based on the second command value 65 and switch to selecting the movement target value 61 (first command value 62).

[0098] Therefore, in the examples of Figures 16 and 17, the determination unit 54 corrects the angle Δφ until the timing when the moving body 1 reaches position Ptk in Figure 17 (time tk in Figure 16). cmp The size of the threshold φ cmpthd Since it is greater than this, it is determined that the predetermined condition (third condition) has been met (the sudden reversal avoidance operation is not yet complete). The determination unit 54 determines that after the moving body 1 reaches position Ptk in Figure 17 (after time tk in Figure 16), the correction angle Δφ cmp The size of the threshold φ cmpthd As follows, it is determined that the predetermined condition (the third condition) is not satisfied (completion of the sudden reversal avoidance maneuver).

[0099] Note that the target steering axis angle is 63 (here, φ ref ) does not necessarily indicate the direction of the movement target value 61 (first command value 62). Figures 16 and 17 show φ for ease of understanding. ref This was explained using an example where the direction is equal to the direction of the target movement value 61.

[0100] As described above, the determination unit 54 determines whether the predetermined conditions have been met by determining each of the conditions in step S4 (first condition), step S7 (second condition), and step S8 (third condition), which are predetermined conditions.

[0101] Then, if the predetermined conditions are met (step S8; Yes), the determination unit 54 considers that the sudden reversal avoidance operation is incomplete (step S10). If the predetermined conditions are met and the sudden reversal avoidance operation is considered incomplete, as shown in Figure 7, after the command value calculation unit 55 generates a second command value 65 (step S11), the command value selection unit 56 selects the second command value 65 as the mobile unit command value 66 (step S12).

[0102] If the predetermined conditions are not met (step S4, step S7, or step S8; No), the determination unit 54 considers the sudden reversal avoidance operation to be completed (step S9). If the predetermined conditions are not met and the sudden reversal avoidance operation is considered to be completed, the command value selection unit 56 selects the first command value 62 as the mobile command value 66, as shown in Figure 7 (step S13).

[0103] Then, in the command value conversion unit 57, the command value selection unit 56 converts the selected mobile command value 66 into a drive command value (step S14).

[0104] (Explanation of the method for calculating the second command value) Next, the method for calculating the second command value 65 in the command value calculation unit 55's generation process (step S11) will be explained. The command value calculation unit 55 calculates the correction angle Δφ of the steering axis angle target value 63 that corrects the direction of movement of the moving body 1. cmp The steering axis angle is calculated, and the target value is 63 and the correction angle is Δφ. cmp Based on this, the second command value of 65 is calculated.

[0105] In detail, the command value calculation unit 55 calculates the magnitude of the second command value 65 in the calculation of the tth period (v slow [t]) is calculated. The magnitude of the second command value 65 is defined such that it is the speed response of a first-order lag system, for example, as shown in equation (12).

number

[0106] The command value calculation unit 55 multiplies the magnitude of the obtained second command value by the rotation matrix R, thereby obtaining the second command value vector (v) shown in equation (13). avd Calculate ).

number

number

[0107] Similarly, as defined in equation (15), the larger of the deviations between the target value of the steering axis angle of the active caster 11 and the current value of the steering axis angle is Δφ ref Let's assume that.

number

[0108] Initial value of correction angle (Δφ cmp [0]) is defined by equation (16).

number

[0109] And the correction angle (Δφ cmp [t]) in the t-th cycle is represented by Equation (17). [Number] Here, r vel is a predetermined value set in advance and represents the trajectory radius by the rapid reversal avoidance operation.

[0110] In this example, the command value calculation unit 55 updates the correction angle (Δφ cmp [t]) shown in Equation (17) at a predetermined calculation cycle. As described above, in addition to the calculation of the second command value 65, the correction angle is also used in the determination process (step S8) according to the third condition by the determination unit 54.The determination unit 54 makes a determination according to Equation (11) for the correction angle (Δφ cmp [t]) updated for each calculation cycle.

[0111] Note that, instead of updating the correction angle (Δφ cmp [t]) for each calculation cycle, the command value calculation unit 55 may update the correction angle Δφ cmp when the condition regarding the degree of following of the steering axis angle 64 to the drive command value 67 is satisfied.

[0112] Specifically, the correction angle is updated when the current value of the steering axis angle satisfies the condition.

[0113] First, the command value calculation unit 55 obtains the absolute value of the deviation between the current value of the steering axis angle (φ imes (i = 1, 2)) and the rotation angle Δφ cmp + φ ref in the rotation matrix R, and sets the larger of the absolute values of the deviations as the representative deviation Δφ dev . The value range of the absolute value of this representative deviation is from 0 to π inclusive. [Number]

[0114] The command value calculation unit 55 compares the obtained representative deviation Δφ dev with an update threshold value Δφ update_thd that is set in advance to a predetermined value, and determines whether to update. That is, the command value calculation unit 55 determines whether to update according to Equation (19). [Number]

[0115] For example, when the friction between the floor surface and the active caster 11 is large, even if the sudden reversal avoidance operation is generated, the motor of the moving body 1 may not be able to sufficiently follow the drive command value for the sudden reversal avoidance operation, resulting in a large deviation, and the effect of generating the sudden reversal avoidance operation may not be sufficiently obtained. Therefore, by updating the correction angle when the condition (Equation (19)) regarding the degree of follow-up of the steering axis angle 64 to the drive command value 67 is satisfied, the effect of the sudden reversal avoidance operation can be obtained even under special circumstances such as when the friction is large.

[0116] As described above, the command value calculation unit 55 calculates the second command value 65 according to Equations (12) and (13). For this purpose, the command value calculation unit 55 calculates and updates the correction angle shown in Equations (16) and (17). The correction angle Δφ cmp functions as a correction value that makes the traveling direction of the moving body 1 different from the direction of the movement target value 61 (first command value 62). The command value calculation unit 55 calculates the second command value 65 so as to move the moving body 1 in a direction different from the moving direction based on the first command value 62, at least at the initial stage of movement start.

[0117] When the second command value 65 is selected as the moving body command value 66 in step S12 of FIG. 7, the command value selection unit 56 uses the second command value vector (v avd ) obtained by Equation (13) as the moving body command value v shown in Equation (1). cmdThis is output to the command value conversion unit 57.

[0118] (Example of movement of a moving object) Next, the operation of the mobile body 1 based on the control of the control device 100 according to the embodiment will be explained in comparison using a comparative example.

[0119] (Comparative example) First, a comparative example in which the control according to the embodiment is not implemented will be described.

[0120] Figure 18 shows an example of the operation of active casters when a moving object is moving in a straight line. Figure 18 shows the active casters 11 and their trajectories when a moving object 1, which is positioned with two active casters 11 aligned in the Y direction and the wheels 21 facing the +X direction, is moved in the +X direction. Figure 19 shows the time-series data of the drive speed, turning speed, and steering axis angle in Figure 18. The drive speed is the rotational speed of the wheels 21 around the wheel axle 25. In each graph, the horizontal axis represents time, and the vertical axis represents the values ​​of the drive speed, turning speed, and steering axis angle, respectively.

[0121] In typical passive casters, the positional relationship between the steering axis and the wheel contact point converges such that the steering axis is forward and the wheel contact point is behind the direction of travel.

[0122] In Figure 18, the circle mark labeled as steering axis 26 indicates the position of the steering axis axis, and the cross mark labeled as wheel 21 indicates the wheel contact position. In the case of Figure 18, the initial positional relationship between the steering axis axis and the wheel contact position of the active caster 11 is such that the wheel contact position is in front of the direction of travel (+X direction) and the steering axis axis is behind. When the moving body 1 starts moving from this initial state, the active caster 11 starts moving in the initial state, but at an intermediate position PR it suddenly reverses (rotates by approximately 180 degrees) and converges to a state where the steering axis axis is in front of the direction of travel and the wheel contact position is behind.

[0123] The dotted line in Figure 19, region 90, shows the change in turning speed and steering axis angle as the active caster 11 rotates 180 degrees from its initial angle at position PR. This reversal motion is performed at a high turning speed in a short amount of time. This is a characteristic motion of typical passive casters and is referred to as "rapid reversal motion" in this specification.

[0124] The reason why the active caster 11 exhibits a sudden reversal motion is that the inverse kinematics model of the active caster 11 is derived such that the relationship between the movement speed of the steering axis and the turning speed behaves similarly to that of a normal driven caster.

[0125] During a sharp reversal maneuver, the rotational speed of the motor driving the steering shaft 26 changes drastically in a short period of time because the turning speed is changed significantly in a short time. If the motor's responsiveness is not sufficiently high, a deviation (response delay) will occur between the command value for controlling the rotational speed (turning speed) of the steering shaft 26 and the actual driving speed and turning speed. This deviation can cause disturbances in the movement of the mobile body 1.

[0126] Thus, in the comparative example, the sudden reversal motion of the active caster 11 can disrupt the movement of the moving body 1.

[0127] (Embodiment) In contrast, the control device 100 for the mobile body 1 according to this embodiment makes it possible to avoid the occurrence of sudden reversal movements as follows. As a result, the occurrence of disturbances in the movement of the mobile body 1 caused by sudden reversal movements can be avoided.

[0128] Figure 20 shows the initial state in an example of the sudden reversal avoidance operation according to the embodiment. Figure 21 shows an example of the origin of the moving body coordinate system and the trajectory of the active caster in the sudden reversal avoidance operation according to the embodiment.

[0129] As shown in Figure 20, in this example, the initial position of the mobile body 1 is such that the two active casters 11 are positioned at the same distance from the origin of the mobile body coordinate system in the X-axis direction. The orientation of the active casters 11 is different from the comparative example shown in Figure 18. In the example in Figure 21, the trajectory of the mobile body 1 as it moves in the +X direction from the initial position in Figure 20 is shown. In other words, for each active caster 11, the positional relationship between the steering axis axis with respect to the direction of travel of the mobile body 1 and the wheel contact position is the same as in the comparative example shown in Figure 18.

[0130] As shown in Figure 21, in this embodiment, unlike the comparative example, the trajectory of the moving body 1 is an arc-shaped trajectory. In this embodiment, because the moving body 1 traces an arc-shaped trajectory, the steering axis angle 64 of the active caster 11 does not change abruptly at a specific position. Therefore, according to the control method of this embodiment, the instantaneous change (sudden reversal) of the direction of the active caster 11 is avoided.

[0131] Figure 22 shows an example of time-series data in the case of Figure 21. Figure 22 shows time-series data of the drive speed of the wheel 21, the turning speed of the steering axis 26, the steering axis angle 64, and the determination result of whether the sharp reversal avoidance operation was completed or not. In each graph, the horizontal axis represents time, and the vertical axis represents the values ​​of drive speed, turning speed, steering axis angle, and determination result (completed = High, not completed = Low), respectively.

[0132] Immediately after control begins in the initial state, it is determined that the sudden reversal avoidance operation is incomplete (i.e., the predetermined conditions are met), and the second command value 65 is selected for the mobile unit command value 66. When the determination switches to the sudden reversal avoidance operation being completed (i.e., the predetermined conditions are not met), the first command value 62 is selected for the mobile unit command value 66, and the drive speed and turning speed are generated so that the mobile unit 1 moves in the +X direction, which is the target direction of travel in this example.

[0133] Referring to Figure 21, the sudden reversal avoidance operation based on the second command value 65 is an arc-shaped trajectory operation in which the movement direction gradually converges to the target movement direction while moving in a direction different from the target movement direction (+X direction) (-Y direction) from the initial state. Thus, in this embodiment, the command value calculation unit 55 calculates the second command value 65 in such a way that, at the initial stage of movement, the moving body 1 moves in a direction different from the movement direction based on the first command value 62.

[0134] Furthermore, the sudden reversal avoidance operation based on the second command value 65 maintains the state in which the steering shaft 26 is in front and the wheels 21 are in rear position relative to the target direction of travel by correcting the direction of movement of the moving body 1. In other words, in this embodiment, the command value calculation unit 55 calculates the second command value 65 in such a way that the wheels 21 are positioned towards the rear in the direction of travel relative to the steering shaft 26 of the active caster 11.

[0135] Comparing the comparative example shown in Figure 19 with the embodiment shown in Figure 22, it can be seen that in the embodiment, while the determination result of incomplete sharp reversal avoidance operation (predetermined conditions are met) is output, the steering axis angle changes gradually and reaches the target angle. Therefore, the orientation of the active caster 11 does not change instantaneously to match the direction of movement of the moving body 1, and the operation to avoid sharp reversal of the active caster 11 is realized.

[0136] As described above, the control device 100 according to this embodiment makes it possible to move the mobile body 1, which is propelled by the active caster 11, without disrupting its operation. Furthermore, as described above, since this is achieved in the control device 100, it is possible to avoid sudden reversal movements without changing the components and structure of the active caster 11 or the motor control device 15 from conventional ones.

[0137] As described above, according to the embodiment, the control device 100 for the mobile body 1 is a control device 100 for a mobile body 1 equipped with an active caster 11 having wheels 21 offset with respect to the steering shaft 26, and includes a target value acquisition unit 51 that acquires a target movement value 61 for the mobile body 1 and outputs a first command value 62 based on the target movement value 61, a steering shaft angle target value calculation unit 52 that acquires a target steering shaft angle 63 for the active caster 11 based on the target movement value 61, and the steering shaft angle of the active caster 11 The system includes a steering axis angle detection unit 53 that acquires degrees 64, a command value calculation unit 55 that calculates a second command value 65 that makes the change in the steering axis angle 64 more gradual than the first command value 62 based on the steering axis angle target value 63 and the steering axis angle 64, an output switching unit 50 that outputs either the first command value 62 or the second command value 65 as a moving body command value 66 depending on whether predetermined conditions are met, and a command value conversion unit 57 that converts the moving body command value 66 into a drive command value 67 for the active caster 11.

[0138] According to the control device 100 of the embodiment, the control device 100 converts either a first command value 62 based on a movement target value 61 for the moving body 1, or a second command value 65 that makes the change in the steering axis angle 64 more gradual than the first command value 62, into a drive command value 67 for the active caster 11, depending on whether predetermined conditions are met. As a result, in cases where a sudden reversal of the active caster 11 would occur if the drive command value 67 for the active caster 11 were simply generated based on the movement target value 61 (first command value 62), the control device 100 can be made to execute an operation that changes the steering axis angle 64 more gradually based on the second command value 65. As a result, the occurrence of a sudden reversal of the active caster 11 can be suppressed.

[0139] Furthermore, the command value calculation unit 55 calculates a second command value 65 so as to maintain the state in which the wheel 21 is positioned on the rear side in the direction of travel relative to the steering axis 26 of the active caster 11. In this way, if the drive command value 67 of the active caster 11 is simply generated based on the movement target value 61 (first command value 62), a sudden reversal operation will occur when the wheel 21 is positioned on the front side in the direction of travel relative to the pivot axis (i.e., the steering axis 26), similar to a normal driven caster. However, by maintaining the state in which the wheel 21 is positioned on the rear side in the direction of travel relative to the steering axis 26, the occurrence of a sudden reversal operation can be effectively suppressed.

[0140] Furthermore, the command value calculation unit 55 calculates a second command value 65 in such a way that, at the initial stage of movement, the moving body 1 moves in a direction different from the direction of movement based on the first command value 62. This ensures that if the active caster 11 were to start moving in the direction of movement based on the first command value 62, a sudden reversal would occur. The second command value 65 generates an action that causes the active caster 11 to move in a different direction from the direction of movement based on the first command value 62 and detour. As a result, the occurrence of a sudden reversal can be effectively suppressed.

[0141] Furthermore, the command value calculation unit 55 calculates the correction angle Δφcmp of the steering axis angle target value 63, which corrects the direction of movement of the moving body 1, and the steering axis angle target value 63 and the correction angle Δφ cmp Based on this, the second command value 65 is calculated. This corrects the direction of movement based on the first command value 62 by a correction angle Δφ. cmp By adding this, correction can be made in a different direction, effectively suppressing abrupt changes in the steering axis angle of 64.

[0142] Furthermore, the predetermined conditions are: correction angle Δφ cmp This includes the condition that the value is greater than or equal to the threshold (the third condition above). As a result, the correction angle Δφ cmpWhen the value becomes large enough to exceed a threshold, selecting the second command value 65 allows the direction of movement of the mobile body 1 to be significantly changed from the direction of movement based on the first command value 62. Therefore, if a sudden reversal of the active caster 11 would occur if movement were to start in the direction of movement based on the first command value 62, the sudden reversal can be effectively avoided.

[0143] Furthermore, the command value calculation unit 55 corrects the angle Δφ at a predetermined calculation cycle. cmp The data is updated. This allows the movement direction of the moving object 1 to be appropriately corrected at each calculation cycle.

[0144] Furthermore, the command value calculation unit 55 corrects the angle Δφ when predetermined conditions regarding the degree to which the steering axis angle 64 follows the drive command value 67 are met. cmp The value may be updated. This means that, for example, if the active caster 11 cannot adequately follow the drive command value 67 based on the second command value 65 due to factors such as high friction between the wheels 21 of the active caster 11 and the floor surface, the correction angle Δφ will be corrected once the steering axis angle 64 has followed the drive command value 67 to an acceptable level. cmp By updating this setting, the effectiveness of avoiding sharp reversal maneuvers caused by the second command value of 65 can be ensured.

[0145] Furthermore, the output switching unit 50 includes a determination unit 54 that determines whether a predetermined condition is met, and a command value selection unit 56 that selects either a first command value 62 or a second command value 65 based on the determination result of the determination unit 54. The determination unit 54 determines whether a predetermined condition (first condition) is met based on a determination formula that evaluates the necessity of an action based on the second command value 65. This makes it possible to not execute an action based on the second command value 65 (select the first command value 62) when it is not effective to avoid a sudden reversal action of the active caster 11, for example, when an action to rotate the moving body 1 in place is given as the movement target value 61.

[0146] Furthermore, the output switching unit 50 includes a determination unit 54 that determines whether a predetermined condition is met, and a command value selection unit 56 that selects either a first command value 62 or a second command value 65 based on the determination result of the determination unit 54. The determination unit 54 determines the deviation (Δφ) between the steering axis angle target value 63 and the steering axis angle 64. 1tar、 Δφ2 tar Based on the magnitude of the second command value, it is determined whether a predetermined condition (the second condition) is met. For example, in cases where the deviation between the steering axis angle target value 63 and the steering axis angle 64 is large and a sudden reversal of the active caster 11 is foreseen, the sudden reversal can be avoided by selecting the second command value 65.

[0147] Furthermore, the control method for the mobile body 1 of the embodiment is a control method for a mobile body 1 equipped with an active caster 11 having wheels 21 offset with respect to a steering axis 26, and comprises the steps of: acquiring a target movement value 61 for the mobile body 1 and outputting a first command value 62 based on the target movement value 61; acquiring a target steering axis angle value 63 for the active caster 11 based on the target movement value 61; acquiring the steering axis angle 64 for the active caster 11; calculating a second command value 65 based on the target steering axis angle value 63 and the steering axis angle 64, which makes the change in the steering axis angle 64 more gradual than the first command value 62; outputting either the first command value 62 or the second command value 65 as a mobile body command value 66 depending on whether predetermined conditions are met; and converting the mobile body command value 66 into a drive command value 67 for the active caster 11.

[0148] According to the control method for the moving body 1 of this embodiment, depending on whether predetermined conditions are met, either a first command value 62 based on a movement target value 61 for the moving body 1, or a second command value 65 that makes the change in the steering axis angle 64 more gradual than the first command value 62, is converted into a drive command value 67 for the active caster 11. This allows the system to perform an action that changes the steering axis angle 64 more gradually based on the second command value 65, in cases where a sudden reversal of the active caster 11 would occur if the drive command value 67 for the active caster 11 were simply generated based on the movement target value 61 (first command value 62). As a result, the occurrence of a sudden reversal of the active caster 11 can be suppressed.

[0149] [Differentiation] Furthermore, within the scope of the present invention, it is possible to freely combine each embodiment, modify any component of each embodiment, or omit any component in each embodiment.

[0150] In this embodiment, the control device 100 outputs an angular velocity command value as the drive command value, and the motor control unit performs speed control. However, the command value does not have to be a speed command. For example, the control device 100 can also control the moving body 1 by having the command value conversion unit 57 calculate command values ​​for other physical quantities such as motor acceleration, torque, or current, and then having the motor control unit control those physical quantities. [Explanation of symbols]

[0151] 1 Mobile Unit 10 Mobile Unit 11 Active Caster 21 wheels 25 Wheel axle 26 Steering shaft 50 Output switching section 51 Target Value Acquisition Unit 52 Steering axis angle target value calculation unit 53 Steering axis angle detection unit 54 Judgment section 55 Command Value Calculation Unit 56 Command Value Selection Unit 57 Command value conversion unit 61. Target value of movement 62 First Command Value 63. Steering axis angle target value 64 Steering axis angle 65 Second Command Value 66 Mobile Unit Command Value 67 Drive command value 100 Control device Δφ cmp Correction angle

Claims

1. A control device for a mobile body equipped with an active caster having wheels offset with respect to the steering axis, A target value acquisition unit acquires a target movement value for the moving body and outputs a first command value based on the target movement value, A steering axis angle target value calculation unit that obtains a steering axis angle target value of the active caster based on the aforementioned movement target value, A steering axis angle detection unit that acquires the steering axis angle of the active caster, A command value calculation unit calculates a second command value that makes the change in the steering axis angle more gradual than the first command value, based on the steering axis angle target value and the steering axis angle. An output switching unit that outputs either the first command value or the second command value as the mobile command value depending on whether a predetermined condition is met, The system includes a command value conversion unit that converts the aforementioned mobile body command value into the drive command value of the active caster. A control device for mobile vehicles.

2. The command value calculation unit calculates the second command value so as to maintain the state in which the wheel is positioned on the rearward side in the direction of travel relative to the steering axis of the active caster. A control device for a mobile body according to claim 1.

3. The command value calculation unit calculates a second command value in such a way that, at the initial stage of movement, the moving body moves in a direction different from the direction of movement based on the first command value. A control device for a mobile body according to claim 1.

4. The command value calculation unit calculates a correction angle for the steering axis angle target value that corrects the direction of movement of the moving body, and calculates the second command value based on the steering axis angle target value and the correction angle. A control device for a mobile body according to claim 3.

5. The aforementioned predetermined conditions include the correction angle being greater than or equal to a threshold, A control device for a mobile body according to claim 4.

6. The command value calculation unit updates the correction angle at a predetermined calculation cycle. A control device for a mobile body according to claim 4.

7. The command value calculation unit updates the correction angle when it satisfies the conditions relating to the degree to which the steering axis angle follows the drive command value. A control device for a mobile body according to claim 4.

8. The output switching unit includes a determination unit that determines whether the predetermined conditions are met, and a command value selection unit that selects either the first command value or the second command value based on the determination result of the determination unit. The determination unit determines whether the predetermined conditions are met based on a determination formula that evaluates the necessity of the operation based on the second command value. A control device for a mobile body according to claim 1.

9. The output switching unit includes a determination unit that determines whether the predetermined conditions are met, and a command value selection unit that selects either the first command value or the second command value based on the determination result of the determination unit. The determination unit determines whether the predetermined conditions are met based on the magnitude of the deviation between the target value of the steering axis angle and the steering axis angle. A control device for a mobile body according to claim 1.

10. A method for controlling a moving body equipped with an active caster having wheels offset with respect to the steering axis, The steps include obtaining a target movement value for the moving object and outputting a first command value based on the target movement value, The steps include obtaining a target steering axis angle value for the active caster based on the aforementioned target movement value, The steps include obtaining the steering axis angle of the active caster, A step of calculating a second command value that makes the change in the steering axis angle more gradual than the first command value, based on the target value of the steering axis angle and the steering axis angle. Depending on whether a predetermined condition is met, output either the first command value or the second command value as the mobile unit command value. The process includes the step of converting the aforementioned mobile body command value into the drive command value of the active caster. A method for controlling a moving object.

Citation Information

Patent Citations

  • Omnidirectional mobile vehicle and its control method

    JP3560403B2