This application claims the priority benefits of Japanese application no. 2023-051955, filed on Mar. 28, 2023. The entirety of the above-mentioned patent application is hereby incorporated by reference herein and made a part of this specification.
The disclosure relates to a calibration method for moving body having a pair of left and right omnidirectional wheels.
Patent Literature 1 discloses a moving body having a pair of left and right omnidirectional wheels. Each of the omnidirectional wheels has a pair of drive disks, an annular main wheel disposed between the pair of drive disks, and a pair of electric motors that rotate each of the drive disks. The main wheel has a circular core body, and multiple driven rollers rotatably supported by the core body and in contact with the pair of drive disks. When the pair of electric motors rotate the corresponding drive disks, the driven roller rotates around its own axis or around the axis of the core body, and the omnidirectional wheels perform translational movement in any direction including front and back and left and right. Further, the moving body turns due to a difference in rotational speed between the left and right omnidirectional wheels.
In such a moving body, the moving direction of the moving body is determined by four electric motors. Thus, there is a risk that the moving direction of the moving body may deviate depending on individual differences in each electric motor, individual differences in the transmission mechanism from each electric motor to the corresponding drive disk, and the contact state between each drive disk and the main wheel.
In view of the background, it is an object of the disclosure to provide a calibration method for moving body.
An aspect of the disclosure is a calibration method for a moving body (1) which includes a pair of left and right omnidirectional wheels (3). Each of the omnidirectional wheels includes a pair of drive disks (18), an annular main wheel (19) disposed between the pair of drive disks, and a pair of electric motors (20) that rotate each of the drive disks. The main wheel includes a circular core body (31), and multiple driven rollers (32) rotatably supported by the core body and in contact with the pair of drive disks. The method includes: a first step of creating a rotational speed command value for four of the electric motors such that the moving body performs a linear translational movement or makes an ultra-pivotal turn; a second step of driving each of the electric motors based on the rotational speed command value to move the moving body; a third step of obtaining a total number of rotations of each of the electric motors until the movement of the moving body is completed; a fourth step of measuring a yaw angle change amount of the moving body as the moving body moves; a fifth step of repeating the first to fourth steps at least three times to obtain three or more data sets including the total number of rotations of each of the electric motors and the yaw angle change amount; a sixth step of respectively calculating a correction value, based on the three or more data sets as well as a model that specifies a relationship between the total number of rotations of each of the electric motors, the yaw angle change amount, and a correction value of the rotational speed command value set corresponding to each of the electric motors; and a seventh step of correcting the corresponding rotational speed command value based on the respective correction value.
An aspect of the disclosure is a calibration method for a moving body (1) which includes a pair of left and right omnidirectional wheels (3). Each of the omnidirectional wheels includes a pair of drive disks (18), an annular main wheel (19) disposed between the pair of drive disks, and a pair of electric motors (20) that rotate each of the drive disks. The main wheel includes a circular core body (31), and multiple driven rollers (32) rotatably supported by the core body and in contact with the pair of drive disks. The method includes: a first step of creating a rotational speed command value for four of the electric motors such that the moving body performs a linear translational movement or makes an ultra-pivotal turn; a second step of driving each of the electric motors based on the rotational speed command value to move the moving body; a third step of obtaining a total number of rotations of each of the electric motors until the movement of the moving body is completed; a fourth step of measuring a yaw angle change amount of the moving body as the moving body moves; a fifth step of repeating the first to fourth steps at least three times to obtain three or more data sets including the total number of rotations of each of the electric motors and the yaw angle change amount; a sixth step of respectively calculating a correction value, based on the three or more data sets as well as a model that specifies a relationship between the total number of rotations of each of the electric motors, the yaw angle change amount, and a correction value of the rotational speed command value set corresponding to each of the electric motors, the correction value; and a seventh step of correcting the corresponding rotational speed command value based on the respective correction value.
According to this aspect, a correction value corresponding to the rotational speed command value of each electric motor may be obtained, and the corresponding rotational speed command value may be corrected based on the correction value. In this way, a calibration method for moving body is provided.
In the embodiment, the three or more data sets may include the data sets corresponding to at least three patterns of the translational movement with different moving directions, or at least two patterns of the translational movement with different moving directions and the ultra-pivotal turn.
According to this aspect, each correction value may be calculated.
In this aspect, excluding a combination of the electric motors on a same side of the left and right omnidirectional wheels, the correction value corresponding to each of any two of the electric motors is set to a same value.
According to this aspect, each correction value may be calculated.
According to the configuration, a calibration method for moving body is provided.
Hereinafter, a calibration method for moving body according to the disclosure will be described with reference to the drawings. First, the configuration of the moving body will be described. In this embodiment, the moving body functions as a trolley. Below, the direction is determined based on the moving body.
As shown in
The vehicle body 2 extends to the front and back. A rear part 2A of the vehicle body 2 extends upwardly than a front part 2B. A support stand 11 for supporting other devices is provided at the front part 2B of the vehicle body 2. The devices supported by the support stand 11 include, for example, inspection equipment such as an X-ray scanner. The device may be fastened to the support stand 11. The control device 7, a battery, and various sensors are preferably provided inside the rear part 2A of the vehicle body 2.
In this embodiment, the pair of omnidirectional wheels 3 are provided at a lower part of the rear part 2A of the vehicle body 2. Further, left and right casters 13 are supported at a lower part of the front part 2B of the vehicle body 2 via a suspension. The suspension includes an arm 14 that is disposed below the vehicle body 2 and extends left and right, and a spring 15 and a shock absorber 16 that are disposed between the vehicle body 2 and the arm 14. The casters 13 are respectively disposed below a left end and a right end of the arm 14. Each of the casters 13 has a fork 13A rotatably coupled to the arm 14 around an axis extending vertically, and a wheel 13B rotatably supported by the fork 13A around an axis extending horizontally. The fork 13A rotates freely relative to the arm 14, and the wheel 13B freely rotates relative to the fork 13A.
As shown in
As shown in
The drive disks 18 are respectively disposed on two sides of the annular main wheel 19, and apply frictional force to the main wheel 19 to rotate the main wheel 19 around a central axis and around an annular axis. The drive disk 18 includes a disk-shaped base 18A that is rotatably supported by the frame 17, and multiple drive rollers 18B that are rotatably supported on an outer circumference of the base 18A so as to be inclined to each other and that contact the main wheel 19. The base 18A is disposed coaxially with the support shaft 21.
Driven pulleys 18C are provided on opposing surfaces of each of the drive disks 18, respectively. The driven pulley 18C is provided coaxially with the drive disk 18. The pair of electric motors 20 are provided at the lower part of the vehicle body 2. A drive pulley 26 is provided on an output shaft of each of the electric motors 20. The corresponding drive pulley 26 and driven pulley 18C are connected by a belt 27. As each of the electric motors 20 rotates independently of each other, each of the drive disks 18 rotates independently of each other.
As shown in
The main wheel 19 is disposed along an outer periphery of the pair of drive disks 18 and is in contact with the multiple drive rollers 18B provided on each of the drive disks 18. The drive rollers 18B of each of the drive disks 18 contact an inner periphery of the main wheel 19 and sandwich the main wheel 19 from the left and right sides. Further, the drive rollers 18B of the left and right drive disks 18 contact the inner periphery of the main wheel 19 to restrict displacement of the drive disk 18 in the radial direction around the axis Y1. Thereby, the main wheel 19 is supported by the left and right drive disks 18, and the central axis of the main wheel 19 (core body 31) is disposed coaxially with the axis Y1 of the left and right drive disks 18. The main wheel 19 contacts the multiple drive rollers 18B of the left and right drive disks 18 at the multiple driven rollers 32.
In this embodiment, as shown in
In each of the omnidirectional wheels 3, when the pair of drive disks 18 rotate in the same direction and at the same rotation speed, the main wheel 19 rotates together with the pair of drive disks 18. That is, the main wheel 19 rotates forward or backward around its own rotational axis that coincides with the axis Y1. At this time, the drive rollers 18B of the drive disk 18 and the driven rollers 32 of the main wheel 19 do not rotate relative to the core body 31. In each of the omnidirectional wheels 3, if a rotation speed difference occurs between the pair of drive disks 18, in response to a force in the circumferential (tangential) direction caused by the rotation of the pair of drive disks 18, a component force in a direction perpendicular to this force acts on the driven rollers 32 of the main wheel 19 from the left and right drive rollers 18B. Since the axis of the drive roller 18B is inclined with respect to a circumferential direction of the drive roller 18B, a component force is generated between the drive disks 18 due to the rotation speed difference. Due to this component force, the drive rollers 18B rotate with respect to the base 18A, and the driven rollers 32 rotate with respect to the core body 31. Thereby, the main wheel 19 generates a driving force in the left-right direction.
The left and right omnidirectional wheels 3 rotate forward at the same speed, whereby the moving body 1 moves forward. The left and right omnidirectional wheels 3 rotate backward at the same speed, whereby the moving body 1 moves backward. The speed generated in the rotation of the left and right omnidirectional wheels 3 in the front-rear direction cases the moving body 1 to turn to the right or left. The rotation of the driven rollers 32 of each of the main wheels 19 of the left and right omnidirectional wheels 3 causes the moving body 1 to move in parαllel to the right or left.
As shown in
The handle 5 has a horizontal part 5A extending left and right, and a pair of vertical parts 5B extending forward from the left and right ends of the horizontal part 5A. A central part of the horizontal part 5A in the left-right direction is coupled to the input part of the force sensor 6.
As shown in
The control device 7 is an electronic control unit (ECU) that includes a processor such as a CPU, a nonvolatile memory (ROM), a volatile memory (RAM), and the like. The control device 7 controls each of the omnidirectional wheels 3 by performing arithmetic processing in accordance with a program stored in the non-volatile memory in the processor. The control device 7 may be configured as one piece of hardware, or may be configured as a unit consisting of multiple pieces of hardware. Further, at least a part of each functional unit of the control device 7 may be realized by hardware such as an LSI, an ASIC, or an FPGA, or may be realized by a combination of software and hardware.
As shown in
The control device 7 controls each of the omnidirectional wheels 3 based on the signal from the force sensor 6. The force sensor 6 is interposed between the vehicle body 2 and the handle 5. The force sensor 6 detects the magnitude and direction of an operating force (load) applied to the handle 5 by the user. Based on the signal from the force sensor 6, the control device 7 determines a target forward/backward speed, a target left/right speed, and a target angular speed of the moving body 1, and sets a control amount of each of the electric motors 20 of each of the omnidirectional wheels 3 based on the target forward/backward speed, the target left/right speed, and the target angular speed. The control device 7 sets respective target rotation speeds of the electric motors 20 based on the target forward/backward speed, the target left/right speed, and the target angular speed. Then, the control device 7 may control the current supplied to each of the electric motors 20 such that the rotational speed of each of the electric motors 20 becomes the target rotation speed.
Next, a calibration method for the moving body 1 will be explained. Since the moving direction of the moving body 1 is determined by four electric motors 20, there is a possibility that the moving direction of the moving body 1 is deviated according to individual difference of each of the electric motors 20, individual difference of the transmission mechanism from each of the electric motors 20 to the corresponding drive disk 18, contact state of each of the drive disks 18 with the main wheel 19, and the like. The purpose of the calibration method is to reduce deviations in the moving direction of the moving body 1.
The calibration method is based on the following idea. The theoretical relationship between motor rotation speeds ωrr, ωrl, ωlr, ωll of each of the electric motors 20RR, 20RL, 20LR, 20LL and moving speeds vx, vy, vz of the moving body 1 is as shown in Equation (1) below.
Here, vx is a forward-backward moving speed [m/s], vy is a lateral moving speed [m/s], vz is a yaw rotation speed [rad/s], Gr is a speed ratio from each of the drive disks 18 to the corresponding electric motor 20, Whx is a speed ratio from the main wheel 19 to the drive disk 18, Why is a speed ratio from the driven roller 32 to the drive disk 18, Rx is a radius [m] of the main wheel 19, ry is a radius [m] of the driven roller 32, and L is a tread length [m]. As shown in
Equation (1) represents the theoretical relationship between the motor rotation speeds ωrr, ωrl, ωlr, ωll and the moving speeds vx, vy, vz of the moving body 1, but in reality there are deviations between nominal and actual values of the speed ratio, the radius Rx of the main wheel 19, radius Ry of the driven roller 32, and the tread length L, and deviations also occur between a command value and an actual value due to backlash or the like in the rotational speed of each of the electric motors 20.
When the command value of the electric motor 20 is 0, the actual value of the electric motor 20 is 0, so a mapping f of the command value and the actual value satisfies the following Equation (2).
The following Equation (3) is assumed as a mapping that satisfies Equation (2).
Here, a suffix “ . . . ” represents rr, rl, Ir, Il, ω . . . represents the rotation speed (ωrr, ωrl, ωlr, ωll) of each of the electric motors 20, and a . . . represents correction coefficients (αrr, αrl, αlr, αll) corresponding to each of the electric motors 20.
When only the deviation in the rotation speed of each of the electric motors 20 is taken into consideration, the actual value of the moving speed is expressed as in Equation (3) to Equation (4)
Here, vx{circumflex over ( )} is an actual value of the forward-backward moving speed [m/s], vy{circumflex over ( )} is an actual value of the lateral moving speed [m/s], and vz{circumflex over ( )} is an actual value of the yaw rotation speed [rad/s]. {circumflex over ( )} represents a hat.
Further, considering deviations in the speed ratio or the like, the actual value of the moving speed is expressed as in Equation (5).
Here, β . . . is a correction coefficient that incorporates α . . . for deviations in speed ratio or the like.
When the moving speed is integrated and converted into a position and an angle, it is expressed as in Equation (6).
Here, Ω . . . is Σω . . . Δt, which represents a total number of rotations of each of the electric motors 20.
Here, in order for Equation (6) to hold, the movement of the moving body 1 must be only translational movement or only rotational movement (ultra-pivotal turn). However, as described above, since deviations occur in the movement of the moving body 1, it is difficult to limit the movement of the moving body 1 to only translational movement or rotational movement (ultra-pivotal turn). However, for a yaw angle θ, Equation (6) holds true. Thus, the yaw rotation angle speed in Equation (4) may be expressed as in Equation (7).
In order to obtain an estimation amount α . . . ˜ of the correction coefficient α . . . in Equation (7), it is necessary to obtain time series data of a rotational speed command value ω . . . of each of the electric motors 20, and measure an actual value θ{circumflex over ( )} of the yaw angle. Thus, the control device 7 may generate a translational movement command or an ultra-pivotal turn command, and perform a task of measuring the total number of rotations and the actual value θ{circumflex over ( )} of the yaw angle of each of the electric motors 20 multiple times. A good way to calculate an optimal value (estimation amount) is to solve the normal equation in the multiple regression of Equation (7) using the Lagrange undetermined multiplier method with the condition α . . . >0.
In order to collect data for solving the Equation (7), the above task is performed n times and n pieces of data are obtained. When the Equation (7) is compiled with pieces of data, it becomes the Equation (8).
Here, the suffix of the actual value θ{circumflex over ( )} of the yaw angle represents the n-th data. Further, the third suffix from the left of a total number of rotations 22 of each of the electric motors 20 represents the n-th data.
From Equation (8), the estimation amount α . . . ˜ of the correction coefficient α . . . is expressed as in Equation (9).
In order for a left pseudo inverse matrix (ΩTΩ)−1ΩT to exist, rankΩ must be 4 (number of columns). However, each data is under the constraint condition of the Equation (10) that the left and right omnidirectional wheels 3 have the same lateral speed, and one of the column vectors of Ω is linearly dependent.
Thus, rankΩ≤3, and the left pseudo inverse matrix (ΩTΩ)−1ΩT does not exist.
Thus, assuming that αlr and αll are equal to γ(αlr=αll=γ), Equation (8) was transformed into Equation (11).
As a result, since the number of columns of the coefficient matrix and the rank match, αrr, αrl, γ (γ=αlr=αll) may be calculated based on the total number of rotations Ω . . . of each of the electric motors 20 and the actual value θ{circumflex over ( )} of the yaw angle. Similarly, assuming that αrr and αrl are equal, or assuming that αrr and αll are equal, alternatively, even if it is assumed that αrl and αlr are equal, the number of columns of the coefficient matrix and the rank match, so three correction coefficients may be calculated.
Below, a calibration method for the moving body 1 will be described, assuming that αlr and αll are equal to γ (αlr-αll=γ). The calibration method includes a first step of creating a rotational speed command value for the four electric motors 20 such that the moving body 1 performs a linear translational movement or makes an ultra-pivotal turn; a second step of driving each of the electric motors 20 based on the rotational speed command value to move the moving body 1; a third step of obtaining the total number of rotations of each of the electric motors 20 until the movement of the moving body 1 is completed; a fourth step of measuring an yaw angle change amount of the moving body 1 as the moving body 1 moves; a fifth step of repeating the first to fourth steps at least three times to obtain three or more data sets including the total number of rotations of each of the electric motors 20 and the yaw angle change amount; a sixth step of respectively calculating, based on the three or more data sets as well as a model that specifies a relationship between the total number of rotations of each of the electric motors 20, the amount change in yaw angle change, and the correction value of the rotational speed command value set corresponding to each of the electric motors 20, the correction value; and a seventh step of correcting the corresponding rotational speed command value based on the respective correction value.
The three or more data sets include the data set corresponding to at least three patterns of the translational movement with different moving directions, or at least two patterns of the translational movement and ultra-pivotal turn with different moving directions. The moving direction may include, for example, at least three patterns of the translational movement: forward (translation in the forward direction), lateral translation (translation in the lateral direction), and diagonally forward translation. The diagonally forward translation may be at any angle with respect to the front, and may be, for example, 45 degrees. Further, the moving direction may include at least two patterns of translational movement among forward, lateral translation, and diagonally forward translation, and an ultra-pivotal turn at any turning angle. Further, in order to increase the number of data sets, the speed may be changed in each moving direction, and the turning angle may be changed in an ultra-pivotal turn.
The total rotation angle of each of the electric motors 20 may be obtained based on the signal from the rotation angle sensor 22 provided in each of the electric motors 20. Moreover, in other embodiments, the control device 7 may estimate the total rotation angle based on the rotation angle command value of each of the electric motors 20.
The yaw angle change amount of the moving body 1 may be obtained, for example, by actual measurement. For example, a worker may obtain the yaw angle change amount of the moving body 1 by measuring the direction of the moving body 1 after movement. Alternatively, the moving body 1 may be provided with a compass, and the change amount in the direction of the moving body 1 before and after movement may be obtained as the yaw angle change amount. Further, the moving body 1 may be provided with an Inertial Measurement Unit (IMU) or a gyro sensor, which may be used to obtain the yaw angle change amount.
The three or more data sets including the total numbers of rotations Ωrr, Ωrl, Ωlr, Ωll of each of the electric motors 20 and the yaw angle change amount θ{circumflex over ( )} (actual value of yaw angle) are input to the model based on Equation (11), thereby outputting the correction coefficients αrr, αrl, αlr and αll (αlr=αll=γ).
The control device 7 corrects the rotational speed command value by multiplying the rotational speed command value of each of the electric motors 20 by the correction coefficients αrr, αrl, αlr, αll.
The results of calibrating the moving body 1 using the calibration method will be explained.
Although the description of the specific embodiments has been completed above, the disclosure is not limited to the above-mentioned embodiments and may be widely modified and implemented. For example, in the above calibration method, the correction coefficients for the right and left electric motors 20LR and 20LL of the left omnidirectional wheel 3L are set to the same value (αlr−αll=γ), but the correction coefficients for the right and left electric motors 20RR and 20RL of the right omnidirectional wheel 3R may also be set to the same value (αrr−αrl=γ). Further, the correction coefficients for the right electric motor 20RR of the right omnidirectional wheel 3R and the left electric motor 20LL of the left omnidirectional wheel 3L may be set to the same value (αrr−αll=γ), and the correction coefficients for the left electric motor 20RL of the right omnidirectional wheel 3R and the right electric motor 20LR of the left omnidirectional wheel 3L may be set to the same value (αrl=αlr=γ). That is, excluding a combination of the electric motors on the same side of the left and right omnidirectional wheels, the correction coefficient (correction value) corresponding to each of any two of the electric motors 20 may be set to a same value.
Number | Date | Country | Kind |
---|---|---|---|
2023-051955 | Mar 2023 | JP | national |