Relocation method and relocation result verification method of self-moving cleaning device
By using multiple sensors in the self-mobile cleaning device for local and global repositioning, and verifying it with the position information of historical credible moments, the repositioning verification accuracy problem under the influence of dynamic obstacles is solved, and the repositioning efficiency and accuracy are improved.
Patent Information
- Application Number
- CN202311101556.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-30
- Publication Date
- 2025-02-28
AI Technical Summary
In prior art, when relocating robots, the presence of dynamic obstacles causes the accuracy of the calibration results to be affected.
By setting up cliff sensors, mileage sensors and navigation sensors in the self-mobile cleaning device, local relocation is preferred and the search range is expanded to global relocation when local relocation fails. At the same time, the repositioning results are verified using the position information of historically trusted moments and a variety of sensors.
Improve the accuracy and efficiency of relocation verification, and reduce miscalculation due to dynamic obstacles.
Smart Images

Figure CN119533441A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of robot technology, and in particular to a repositioning method for a self-moving cleaning device and a repositioning result verification method. Background Art
[0002] With the continuous innovation and development of science and technology, autonomous mobile robot technology has gradually matured and stabilized. They have the capabilities of autonomous positioning, movement, perception, decision-making, etc.
[0003] During operation, the robot will perceive the environmental information around it and combine it with the pre-stored map data to determine whether the current positioning result is accurate. When the current positioning result is wrong, it will perform a repositioning operation. The accuracy of the repositioning result often determines whether the robot can work normally.
[0004] In the prior art, the relocalization results are usually verified based on the degree of matching between the point cloud data and the corresponding position map data on the global laser grid map. However, when there are dynamic obstacles around the robot, this method will seriously affect the accuracy of the verification results. Summary of the invention
[0005] In order to solve the above technical problems, the present disclosure provides a repositioning method for a self-moving cleaning device and a repositioning result verification method to improve the accuracy of the repositioning verification.
[0006] In a first aspect, an embodiment of the present disclosure provides a method for relocating a self-moving cleaning device, wherein the self-moving cleaning device is provided with a cliff sensor for detecting whether the self-moving cleaning device is lifted, a mileage sensor for detecting the movement distance of the self-moving cleaning device, and a navigation sensor, and is characterized in that it includes:
[0007] determining whether the self-propelled cleaning device meets the relocation condition according to the cliff sensor and / or the mileage sensor and / or the navigation sensor;
[0008] In the case where it is determined that the self-moving cleaning device meets the repositioning conditions, starting the local repositioning;
[0009] Verifying whether the local relocation is successful;
[0010] If the local relocation is unsuccessful, expanding the search range of the local relocation until the global relocation is started;
[0011] Verify whether the global relocation is successful;
[0012] Among them, the search range of the local relocation is determined based on the displacement distance of the self-moving cleaning device from the last trusted moment to the current moment; the relocation condition includes detecting at least one of the self-moving cleaning device being lifted, moved, lifted, and trapped.
[0013] In some embodiments, before starting the local relocation, the method further includes:
[0014] Determining whether the self-moving cleaning device leaves the ground during the period from the last credible moment to the current moment;
[0015] If the self-moving cleaning device leaves the ground, obtaining the displacement distance of the self-moving cleaning device from the last credible moment to the current moment through the inertial navigation system;
[0016] If the self-propelled cleaning device has not left the ground, the displacement distance of the self-propelled cleaning device from the last credible moment to the current moment is obtained by using a wheel odometer.
[0017] In some embodiments, when the local relocation is unsuccessful, expanding the search scope of the local relocation until the global relocation is started includes:
[0018] When the number of unsuccessful local relocation attempts exceeds a local relocation number threshold, expanding the search range of the local relocation;
[0019] When the number of unsuccessful local relocations exceeds a threshold number of external local relocations, global relocation is initiated.
[0020] In some embodiments, the step of expanding the search scope of the local relocation includes:
[0021] Expanding the search range based on a preset expansion parameter to obtain an expansion range;
[0022] Perform local relocation operations within the extended search range;
[0023] Verify whether the local relocation operation performed within the expanded search range is successful.
[0024] In some embodiments, it also includes:
[0025] In response to the number of unsuccessful global repositioning exceeding a global repositioning number threshold, obtaining obstacle information around the self-moving cleaning device;
[0026] Determine a target direction according to the obstacle information, wherein the target direction is a direction in which no obstacles exist;
[0027] The self-moving cleaning device is controlled to move a preset distance toward the target direction and then repositioned.
[0028] In some embodiments, obtaining obstacle information around the self-moving cleaning device includes:
[0029] Perform clustering processing on the laser point cloud data to obtain clustering results;
[0030] The obstacle information is determined according to the relative position information between the clustering result and the self-propelled cleaning device.
[0031] In a second aspect, an embodiment of the present disclosure provides a method for verifying a repositioning result of a self-moving cleaning device, the method being applied to the self-moving cleaning device, comprising:
[0032] Obtaining a repositioning result of the self-moving cleaning device, the repositioning result at least comprising repositioning posture information obtained by positioning through a first navigation sensor;
[0033] Acquire the trusted posture information of the self-mobile cleaning device obtained by positioning the self-mobile cleaning device through the first navigation sensor at the trusted moment, the first sensor information of the self-mobile cleaning device obtained by the self-mobile cleaning device through the second navigation sensor at the trusted moment, and the second sensor information of the self-mobile cleaning device obtained by the self-mobile cleaning device through the second navigation sensor at the current moment, wherein the trusted moment is a historical moment when the matching degree between the laser point cloud data and the preset map data is higher than or equal to a first preset threshold value;
[0034] The relocation result is verified according to the first sensing information, the trusted posture information, the second sensing information, and the relocation posture information to obtain a verification result, and the verification result is used to indicate whether the relocation is successful.
[0035] In some embodiments, the second navigation sensor is a gyroscope, the first sensor information is a first gyroscope yaw angle of the self-moving cleaning device at a trusted moment, and the second sensor information is a second gyroscope yaw angle of the self-moving cleaning device at a current moment, and the relocation result is verified according to the first sensor information, the trusted attitude information, the second sensor information, and the relocation attitude information to obtain the verification result, including:
[0036] Determine a first attitude angle change value according to the trusted attitude information and the repositioning attitude information;
[0037] Determine a first yaw angle change value according to the first gyroscope yaw angle and the second gyroscope yaw angle;
[0038] If a first difference between the first attitude angle change value and the first yaw angle change value is less than a first preset threshold, it is determined that the repositioning operation is successful.
[0039] In some embodiments, the relocation result also includes relocation position information, the first navigation sensor is a laser sensor, the second navigation sensor is a visual sensor, the relocation result also includes relocation position information obtained by laser positioning, the first sensor information includes first posture information and first position information obtained by the self-moving cleaning device through visual positioning at a credible moment, the second sensor information includes second position information and second posture information obtained by the self-moving cleaning device through visual positioning at the current moment, the relocation result is verified according to the first sensor information, the credible posture information, and the second sensor information to obtain the verification result, including:
[0040] Acquiring credible position information of the self-moving cleaning device obtained by a laser sensor through laser positioning at a credible moment;
[0041] Determining a first position change value according to the trusted position information and the relocation position information;
[0042] Determining a second attitude angle change value according to the first attitude information and the repositioning attitude information;
[0043] Determine a second position change value according to the first position information and the second position information;
[0044] Determining a third attitude angle change value according to the first attitude information and the second attitude information;
[0045] The repositioning result is verified according to the first position change value, the second attitude angle change value, the second position change value and the third attitude angle change value.
[0046] In some embodiments, the verifying the repositioning result according to the first position change value, the second attitude angle change value, the second position change value and the third attitude angle change value includes:
[0047] Calculating a second difference between the first position change value and the second position change value;
[0048] Calculating a third difference between the second attitude angle change value and the third attitude angle change value;
[0049] If the second difference is smaller than a second preset threshold, and the third difference is smaller than a third preset threshold, it is determined that the relocation operation is successful.
[0050] The repositioning method of the self-moving cleaning device provided in the embodiment of the present disclosure improves the repositioning efficiency by giving priority to local repositioning and then performing global repositioning when the local repositioning verification fails.
[0051] The repositioning result verification method of the self-moving cleaning device provided in the embodiment of the present disclosure verifies the repositioning result by utilizing the posture information of the historical reliable moments and a variety of sensors, thereby eliminating abnormal repositioning results and improving the accuracy of the repositioning result verification. BRIEF DESCRIPTION OF THE DRAWINGS
[0052] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.
[0053] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0054] Figure 1 A flow chart of a relocation method provided by an embodiment of the present disclosure;
[0055] Figure 2 A schematic diagram of expanding a search range provided by an embodiment of the present disclosure;
[0056] Figure 3 A coordinate conversion schematic diagram provided for an embodiment of the present disclosure;
[0057] Figure 4 A schematic diagram of target direction determination provided by an embodiment of the present disclosure;
[0058] Figure 5 A flow chart of a relocation result verification method provided by an embodiment of the present disclosure;
[0059] Figure 6 A flow chart of a relocation result verification method provided by another embodiment of the present disclosure;
[0060] Figure 7 A flow chart of a relocation result verification method provided by another embodiment of the present disclosure;
[0061] Figure 8 A flow chart of a relocation result verification method provided by another embodiment of the present disclosure;
[0062] Fig. 9 A schematic diagram of the structure of a relocation device provided in an embodiment of the present disclosure;
[0063] Fig.10 A schematic diagram of the structure of a relocation result verification device provided by an embodiment of the present disclosure;
[0064] Fig.11 A schematic diagram of the structure of an electronic device provided in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0065] In order to more clearly understand the above-mentioned objectives, features and advantages of the present disclosure, the scheme of the present disclosure will be further described below. It should be noted that the embodiments of the present disclosure and the features in the embodiments can be combined with each other without conflict.
[0066] In the following description, many specific details are set forth to facilitate a full understanding of the present disclosure, but the present disclosure may also be implemented in other ways different from those described herein; it is obvious that the embodiments in the specification are only part of the embodiments of the present disclosure, rather than all of the embodiments.
[0067] The disclosed embodiment provides a relocation result verification method, which is described below in conjunction with a specific embodiment.
[0068] Figure 1 A flow chart of the repositioning method provided in an embodiment of the present disclosure. The method can be applied to a self-moving cleaning device, such as a sweeping and mopping robot, wherein the self-moving cleaning device is provided with a cliff sensor for detecting whether the self-moving cleaning device is lifted, a mileage sensor for detecting the movement distance of the self-moving cleaning device, and a navigation sensor. It is understandable that the repositioning result verification method provided in an embodiment of the present disclosure can also be applied in other scenarios.
[0069] Below Figure 1 The relocation method shown in the figure is introduced, and the specific steps of the method are as follows:
[0070] Step 101: Determine whether the self-propelled cleaning device meets the repositioning condition according to the cliff sensor and / or the mileage sensor and / or the navigation sensor.
[0071] The relocation condition includes detecting at least one of the self-moving cleaning device being lifted, moved, or trapped.
[0072] The repositioning operation is the process in which the self-mobile cleaning device collects surrounding environment information based on sensors at the current moment, matches it with a preset map, and determines its current position. Therefore, when matching with a preset map, it is necessary to determine the map range involved in the matching.
[0073] Step 102: When it is determined that the self-moving cleaning device meets the repositioning conditions, local repositioning is initiated.
[0074] The search range of the local repositioning is determined based on the displacement distance of the self-moving cleaning device from the last credible moment to the current moment.
[0075] Optionally, if the displacement distance of the self-moving cleaning device from the trusted moment to the current moment is greater than a preset distance threshold, the repositioning range is determined to be a global range; if the displacement distance of the self-moving cleaning device from the trusted moment to the mid-positioning moment is less than or equal to a preset distance threshold, the repositioning range is determined to be a local range.
[0076] Specifically, the step of obtaining the displacement distance of the self-moving cleaning device from the last trusted moment to the current moment includes: determining whether the self-moving cleaning device has left the ground from the last trusted moment to the current moment; if the self-moving cleaning device has left the ground, obtaining the displacement distance through an inertial navigation system; if the self-moving cleaning device has not left the ground, obtaining the displacement distance through a wheel odometer.
[0077] In actual use, the self-moving cleaning device may be moved by the user during the period from the trusted moment to the current moment, and the self-moving cleaning device will leave the ground at this time, and the displacement distance is obtained through the inertial navigation system.
[0078] Specifically, the real-time acceleration of the self-moving cleaning device is obtained by the inertial navigation system and integrated to calculate the displacement distance of the self-moving cleaning device:
[0079]
[0080] Where Δt is the sampling period, for example, it can be set to 20ms; a n is the acceleration of the self-moving cleaning device at the nth moment, and the speed v of the self-moving cleaning device at the nth moment is calculated according to the initial speed v0 of the self-moving cleaning device n , and then the displacement distance S of the self-moving cleaning device at the nth moment is obtained according to the initial displacement s0=0 n .
[0081] Alternatively, if the self-propelled cleaning device has not left the ground during the period from the credible moment to the current moment, the displacement distance is obtained by a wheel odometer. Specifically, the speed v of the left wheel of the self-propelled cleaning device is recorded as L , right wheel speed v R , the wheel spacing is D, the turning radius is R, and the distance from the left wheel to the turning point is L:
[0082] V L =ω·L=ω·(Rd)=V-ωd
[0083] V R=ω·(L+2d)=ω·(R+d)=V+ωd
[0084] The speed V and angular velocity ω of the self-moving cleaning device are calculated:
[0085]
[0086] Further calculation is performed to obtain the displacement distance S of the self-moving cleaning device at the nth moment: n :
[0087]
[0088] It can be understood that the above solution process is only one implementation method of the embodiment of the present disclosure, and the actual implementation method is not limited to this.
[0089] In some embodiments, if the self-propelled cleaning device is not off the ground, partial repositioning is preferred.
[0090] Step 103: Check whether the local relocation is successful.
[0091] The method of verifying whether the local relocation is successful can refer to the relevant content of the relocation result verification in the following embodiments, which will not be repeated here.
[0092] Step 104: If the local relocation is unsuccessful, expand the search range of the local relocation until global relocation is started.
[0093] In some embodiments, when the relocation range is a search range, when the local relocation is unsuccessful, the search range of the local relocation is expanded until the global relocation is started, including: when the number of unsuccessful local relocations exceeds a local relocation number threshold, the search range of the local relocation is expanded; when the number of unsuccessful local relocations exceeds an expanded local relocation number threshold, global relocation is started.
[0094] Among them, the expanding the search range of the local relocation includes: expanding the search range based on preset external expansion parameters to obtain an external expansion range; performing a local relocation operation within the external expansion search range; and verifying whether the local relocation operation performed within the external expansion search range is successful.
[0095] Figure 2 A schematic diagram of expanding the search range provided by an embodiment of the present disclosure. Figure 2 As shown, the self-moving cleaning device moves from position A to position B from the credible moment to the current moment, and the search range is a rectangle with AB as vertices. When the search range needs to be expanded, the four sides of the search range are respectively expanded outward by a distance d to obtain the expanded range.
[0096] When performing local repositioning within the search range determined based on the displacement distance of the self-moving cleaning device from the last trusted moment to the current moment, if the repositioning is unsuccessful, or the number of unsuccessful repositionings exceeds the local repositioning number threshold, the search range of the local repositioning is expanded to obtain an expanded range, and further local repositioning operations are performed within the expanded range.
[0097] Optionally, the above expansion step may be repeated and iterated. If the relocation range is not successfully expanded after multiple expansions, or the number of expansions of the relocation range exceeds a preset threshold, the global range is used as the relocation range.
[0098] Step 105: Check whether the global relocation is successful.
[0099] The method of verifying whether the global relocation is successful may refer to the relevant contents of the relocation result verification in the following embodiments, which will not be described in detail here.
[0100] The disclosed embodiment reduces the amount of data calculation during relocation by adopting two methods: relocation within the search range and relocation within the global range. At the same time, when relocation within the search range is unsuccessful, the relocation range is changed in time, thereby improving the accuracy and flexibility of relocation.
[0101] Based on the above embodiment, in response to the number of unsuccessful repositioning attempts exceeding the global repositioning number threshold, obstacle information around the self-moving cleaning device is obtained; based on the obstacle information, a target direction is determined, and the target direction is a direction in which no obstacles exist; the self-moving cleaning device is controlled to move a preset distance toward the target direction and then reposition again.
[0102] Specifically, the obtaining of obstacle information around the self-propelled cleaning device includes: clustering laser point cloud data to obtain clustering results; and determining the obstacle information based on relative position information between the clustering results and the self-propelled cleaning device.
[0103] When repositioning fails too many times, it may be because there are many obstacles around the self-mobile cleaning device, especially there are obstacles around the self-mobile cleaning device that do not exist in the preset map data (such as some newly placed furniture by the user, etc.). At this time, it is necessary to control the self-mobile cleaning device to move to a more open location and perform the repositioning operation again.
[0104] First, the laser point cloud data of the environment around the self-propelled cleaning device is obtained. Since there is a difference between the laser coordinate system where the laser sensor is located and the device coordinate system where the self-propelled cleaning device is located and the self-propelled cleaning device is located and the self-propelled cleaning device is located, the point cloud data can be converted from the laser coordinate system to the device coordinate system.
[0105] Figure 3 A coordinate transformation diagram provided by an embodiment of the present disclosure. Figure 3 As shown, one possible conversion method is as follows:
[0106]
[0107] in is the point cloud coordinate in the laser coordinate system (laser), T0 = [x0, y0, θ0] T is the offset of the laser coordinate system relative to the device coordinate system (base), so as to calculate the laser point cloud coordinates in the device coordinate system
[0108] Furthermore, clustering processing is performed on the laser point cloud data, for example, the DBScan algorithm can be used. In the obtained clustering results, each "class" can be regarded as an obstacle, and the distance between each obstacle and the self-moving cleaning device, as well as the starting angle information and the ending angle information can be obtained according to the relative position relationship between the clustering results and the self-moving cleaning device, so as to determine the current environmental information around the self-moving cleaning device and the target direction where there are no obstacles around the self-moving cleaning device.
[0109] Figure 4 A schematic diagram of target direction determination provided by an embodiment of the present disclosure. Figure 4 As shown, point 40 is the current position of the self-moving cleaning device, and the arrow indicates the direction of the self-moving cleaning device. There are multiple obstacles around it, and the direction surrounded by two rays between the obstacles is the target direction. It can be seen that there are no obstacles in the target direction.
[0110] After determining the target direction, the self-moving cleaning device is controlled to move a preset distance in the target direction, so that the self-moving cleaning device moves to an open position with fewer obstacles and performs a repositioning operation again.
[0111] In the embodiment of the present disclosure, after the repositioning operation fails too many times, the self-moving cleaning device is controlled to move to a relatively open position to re-reposition the operation, so as to reduce the impact of obstacles around the self-moving cleaning device on the repositioning operation and improve the success rate and accuracy of the repositioning operation.
[0112] Figure 5 A flow chart of a relocation result verification method provided in an embodiment of the present disclosure. The method can be applied to a self-propelled cleaning device, such as a sweeping and mopping robot. It is understandable that the relocation result verification method provided in an embodiment of the present disclosure can also be applied in other scenarios.
[0113] Below Figure 5The relocation result verification method shown in the figure is introduced, and the specific steps of the method are as follows:
[0114] S501. Obtain a repositioning result of the self-moving cleaning device, wherein the repositioning result at least includes repositioning posture information obtained by positioning with a first navigation sensor.
[0115] During the operation of the self-moving cleaning device, if an abnormal situation occurs and the self-moving cleaning device cannot confirm its own position, it is necessary to perform a repositioning process according to various sensors on the self-moving cleaning device to obtain a repositioning result. Figure 1 The repositioning method in the illustrated embodiment is obtained. Wherein, the repositioning result at least includes the repositioning posture information acquired by the first navigation sensor, and the repositioning posture information is the posture information after the mobile cleaning device is repositioned.
[0116] S502, obtaining trusted posture information of the self-mobile cleaning device obtained by positioning the self-mobile cleaning device through the first navigation sensor at a trusted moment, first sensor information of the self-mobile cleaning device obtained by the self-mobile cleaning device through the second navigation sensor at a trusted moment, and second sensor information of the self-mobile cleaning device obtained by the self-mobile cleaning device through the second navigation sensor at the current moment, wherein the trusted moment is a historical moment when the degree of match between the laser point cloud data and the preset map data is higher than or equal to a first preset threshold.
[0117] The trusted moment is the historical moment when the matching degree between the previous laser point cloud data and the preset map data is higher than or equal to the first preset threshold value, that is, at the trusted moment, the self-moving cleaning device can accurately confirm its own position. At this time, the posture information and position information of the self-moving cleaning device obtained by each sensor on the self-moving cleaning device are trusted data, recorded as trusted posture information, which at least includes trusted posture information and trusted position information.
[0118] A variety of sensors are installed on the self-moving cleaning device. In the above steps, the repositioning posture information is obtained through the first navigation sensor. In this step, the first sensor information of the self-moving cleaning device at a trusted moment and the second sensor information of the self-moving cleaning device at a current moment are obtained through the second navigation sensor, wherein the first navigation sensor and the second navigation sensor are any two sensors of different types on the self-moving cleaning device. For example, the first navigation sensor may be a lidar sensor, the second navigation sensor may be a visual sensor, etc., and the embodiments of the present disclosure do not limit this.
[0119] S503: Verify the relocation result according to the first sensing information, the trusted posture information, the second sensing information, and the relocation posture information to obtain a verification result, where the verification result is used to indicate whether the relocation is successful.
[0120] Since the trusted posture information has high accuracy, the relocation result can be verified based on the trusted posture information to obtain a verification result that is used to characterize whether the relocation is successful or unsuccessful.
[0121] Specifically, if the difference between the trusted posture information and the relocation posture information is similar to the difference between the first sensor information and the second sensor information, it can be considered that the accuracy of the relocation posture information is relatively high and the relocation is successful; correspondingly, if the difference between the trusted posture information and the relocation posture information is significantly different from the difference between the first sensor information and the second sensor information, it can be considered that the accuracy of the relocation posture information is relatively low and the relocation is unsuccessful.
[0122] The disclosed embodiment performs a repositioning operation when the self-moving cleaning device needs to be repositioned, thereby obtaining a repositioning result of the self-moving cleaning device at the current moment, wherein the repositioning result includes at least repositioning posture information acquired through a first navigation sensor; acquires the trusted posture information of the self-moving cleaning device at a trusted moment, acquires the first sensor information of the self-moving cleaning device at the trusted moment, and the second sensor information of the self-moving cleaning device at the current moment through a second navigation sensor, wherein the trusted moment is a historical moment when the matching degree between the laser point cloud data and the preset map data is higher than or equal to a first preset threshold; verifies the repositioning result according to the first sensor information, the trusted posture information, the second sensor information, and the repositioning posture information, thereby obtaining a verification result, wherein the verification result is used to characterize whether the repositioning is successful, and verifies the repositioning result by utilizing the posture information of the historical trusted moments and a variety of sensors, thereby eliminating abnormal repositioning results and improving the accuracy of the repositioning result verification.
[0123] In some embodiments, the second navigation sensor is a gyroscope, the first sensing information is a first gyroscope yaw angle of the self-moving cleaning device at a credible moment, and the second sensing information is a second gyroscope yaw angle of the self-moving cleaning device at a current moment.
[0124] Figure 6 A flow chart of a relocation result verification method provided by another embodiment of the present disclosure is shown in FIG. Figure 6 As shown, the method includes the following steps:
[0125] S601. When the self-moving cleaning device needs to be repositioned, a repositioning operation is performed to obtain a repositioning result of the self-moving cleaning device at the current moment.
[0126] Specifically, the implementation process and principle of S601 and S501 are the same, and will not be described in detail here.
[0127] S602: Acquire the trusted posture information of the self-moving cleaning device at the trusted moment, and acquire the first gyroscope yaw angle of the self-moving cleaning device at the trusted moment and the second gyroscope yaw angle of the self-moving cleaning device at the current moment through a gyroscope.
[0128] The yaw angle of the self-moving cleaning device can be obtained by a gyroscope.
[0129] In some embodiments, the gyroscope attitude solution process is as follows:
[0130]
[0131]
[0132]
[0133] pitch=-arctan2(q1q3+q0q2) (Formula 6.4)
[0134]
[0135] Wherein formula 6.1 is a quaternion differential equation, quaternion q = [q0, q1, q2, q3]; ω is the angular velocity of the self-moving cleaning device, ω x ,ω y ,ω z are the projections of the angular velocity ω on the x-axis, y-axis, and z-axis, which are the three angular velocity inputs of the gyroscope; after solving the quaternion q=[q0,q1,q2,q3], the roll angle roll, pitch angle pitch, and yaw angle yaw of the self-moving cleaning device can be calculated by formula 6.3, formula 6.4, and formula 6.5 respectively.
[0136] S603: Determine a first attitude angle change value according to the trusted attitude information and the repositioning attitude information.
[0137] The trusted posture information includes the trusted posture angle of the self-moving cleaning device at the trusted moment, and the repositioning posture information includes the repositioning posture angle of the self-moving cleaning device at the current moment; based on the trusted posture angle and the repositioning posture angle, the first posture angle change value of the self-moving cleaning device from the trusted moment to the current moment can be calculated.
[0138] For example, record the credible posture information ΔP of the self-moving cleaning device at the credible time l1 , the relocation posture information ΔP obtained at the current moment l2 , calculate its first attitude angle change value ΔP l =||ΔP l2 -ΔP l1 ||.
[0139] S604: Determine a first yaw angle change value according to the first gyroscope yaw angle and the second gyroscope yaw angle.
[0140] Record the first gyroscope yaw angle ΔP of the self-moving cleaning device at the reliable moment gyro1 , the current moment the second gyro yaw angle ΔP of the self-mobile cleaning device gyro2 , calculate the first yaw angle change value ΔP gyro =||ΔP gyro2 -ΔP gyro1 ||.
[0141] S605: If a first difference between the first attitude angle change value and the first yaw angle change value is less than a first preset threshold, determine that the repositioning operation is successful.
[0142] The first yaw angle change value is objective data obtained by solving the gyroscope information. If the first difference ΔP=||ΔP l -ΔP gyro || is less than the first preset threshold, it indicates that the difference between the change value of the repositioning posture information and the first yaw angle change value is small, and the repositioning operation is considered successful. Correspondingly, if the first difference is greater than or equal to the second preset threshold, the repositioning operation is considered unsuccessful.
[0143] The disclosed embodiment verifies the repositioning attitude information through the yaw angle calculated by the gyroscope, thereby improving the accuracy and credibility of the repositioning result verification.
[0144] It should be noted that those skilled in the art can manually rotate the self-moving cleaning device when the movable robot performs a repositioning operation by setting a special detection method, respectively at a slow rotation speed that does not trigger a change in the yaw angle data of the gyroscope, and at a rotation speed that can trigger a change in the yaw angle data of the gyroscope. If the repositioning result of the self-moving cleaning device when it is slowly rotated is inconsistent with the repositioning result when it is rotated at a normal speed, it can be considered that the self-moving cleaning device has applied the method of verifying the repositioning posture information by the yaw angle calculated by the gyroscope as shown in the embodiment of the present disclosure.
[0145] In some embodiments, the repositioning result also includes repositioning position information, the first navigation sensor is a laser sensor, the second navigation sensor is a visual sensor, the first sensing information includes first posture information and first position information obtained by the self-moving cleaning device through visual positioning at a trusted moment, and the second sensing information includes second position information and second posture information obtained by the self-moving cleaning device through visual positioning at the current moment.
[0146] Figure 7A flow chart of a relocation result verification method provided by another embodiment of the present disclosure is as follows: Figure 4 As shown, the method includes the following steps:
[0147] S701. When the self-moving cleaning device needs to be repositioned, a repositioning operation is performed to obtain a repositioning result of the self-moving cleaning device at the current moment.
[0148] Specifically, the implementation process and principle of S71 and S501 are the same, and will not be repeated here.
[0149] The relocation result includes relocation posture information and relocation position information acquired by the first navigation sensor.
[0150] S702: Acquire trusted position information determined by the first navigation sensor at a trusted moment.
[0151] In the embodiment of the present disclosure, the first navigation sensor is a laser sensor, which can obtain the position information and posture information of the self-moving cleaning device through laser positioning, and obtain the reliable position information determined by the laser sensor at the reliable moment.
[0152] S703: Determine a first position change value according to the trusted position information and the relocation position information.
[0153] The trusted position information is the position of the self-moving cleaning device obtained by the laser sensor at the trusted moment, and the repositioning position information is the current position information of the self-moving cleaning device obtained by the laser sensor after the repositioning operation of the self-moving cleaning device at the current moment. The two position information are subtracted to obtain the first position change value.
[0154] For example, record the trusted location information S l1 , relocation location information S l2 , calculate the first position change value ΔS l =||S l2 -S l1 ||, which is the laser positioning difference between the reliable moment and the current moment.
[0155] S704: Determine a second attitude angle change value according to the first attitude information and the repositioning attitude information.
[0156] The first posture information is the posture information of the self-moving cleaning device at a reliable moment, and the repositioning posture information is the posture information of the self-moving cleaning device obtained by the laser sensor at the current moment. The two posture information are subtracted to obtain a second posture angle change value.
[0157] For example, the first posture information ΔP l1 , repositioning posture information ΔP l2, calculate the second attitude angle change value ΔP l =||P l2 -P l1 ||.
[0158] S705: Determine a second position change value according to the first position information and the second position information.
[0159] The first position information is the position of the self-moving cleaning device obtained by the visual sensor at the credible moment, and the second position information is the position of the self-moving cleaning device obtained by the visual sensor after the repositioning operation of the self-moving cleaning device at the current moment. The two position information are subtracted to obtain the second position change value.
[0160] For example, record the first position information S v1 , the second location information S v2 , calculate the second position change value ΔS v =||S v2 -S v1 ||.
[0161] S706: Determine a third posture angle change value according to the first posture information and the second posture information.
[0162] The first posture information is the posture information of the self-moving cleaning device at a reliable moment, and the second posture information is the posture information of the self-moving cleaning device obtained by the visual sensor at the current moment. The two posture information are subtracted to obtain a third posture angle change value.
[0163] For example, the first posture information ΔP v1 , the second posture information ΔP v2 , calculate the third attitude angle change value ΔP v =||P v2 -P v1 ||.
[0164] S707: Calculate a second difference between the first position change value and the second position change value.
[0165] S708: Calculate a third difference between the second attitude angle change value and the third attitude angle change value.
[0166] S709: If the second difference is smaller than a second preset threshold, and the third difference is smaller than a third preset threshold, determine that the relocation operation is successful.
[0167] When the difference between the laser pose information and the visual pose information is small, the relocalization operation is considered successful.
[0168] For example, the second difference ΔS=||ΔS l -ΔSv || is less than the second preset threshold, and the third difference ΔP=||ΔP l -ΔP v || is less than a third preset threshold, it is determined that the relocation operation is successful.
[0169] The embodiment of the present disclosure verifies the relocation result by jointly verifying the relocation result through a laser sensor and a visual sensor, thereby further improving the accuracy of the relocation result verification.
[0170] Figure 8 A flow chart of a relocation result verification method provided by another embodiment of the present disclosure is as follows: Figure 8 As shown, the method includes the following steps:
[0171] S801, self-moving cleaning device, sensor initialization.
[0172] S802, the self-moving cleaning device operates normally.
[0173] S803, recording the position information of the self-moving cleaning device.
[0174] S804: Determine whether relocation is required. If yes, execute S805; if no, execute S703.
[0175] S805: Perform relocation operation.
[0176] S806: Determine whether the relocation operation is successful. If so, execute S803; if not, execute S807.
[0177] S807: Determine whether the number of relocations exceeds the global relocation threshold. If yes, execute S708; if no, execute S805.
[0178] S808, controlling the self-moving cleaning device to move a preset distance toward the target direction and then repositioning it again.
[0179] S809: Determine whether the number of relocations exceeds a fifth preset threshold. If yes, execute S810; if no, execute S805.
[0180] S810: Relocation failed and a warning message was issued.
[0181] The disclosed embodiment verifies the relocation result by utilizing the posture information of historical credible moments and a variety of sensors, thereby eliminating abnormal relocation results and improving the accuracy of the relocation result verification.
[0182] Fig. 9A schematic diagram of the structure of a relocation result verification device provided in an embodiment of the present disclosure. The relocation result verification device may be the self-moving cleaning device as described in the above embodiment, wherein the self-moving cleaning device is provided with a cliff sensor for detecting whether the self-moving cleaning device is lifted, a mileage sensor for detecting the movement distance of the self-moving cleaning device, and a navigation sensor, or the relocation result verification device may be a component or assembly in the self-moving cleaning device. The relocation result verification device provided in an embodiment of the present disclosure may execute the processing flow provided in an embodiment of the relocation result verification method, such as Fig. 9 As shown, the relocation result verification device 90 includes:
[0183] The condition confirmation module 901 is configured to determine whether the self-propelled cleaning device meets the relocation condition according to the cliff sensor and / or the mileage sensor and / or the navigation sensor.
[0184] The local repositioning initiation module 902 is configured to initiate local repositioning when it is determined that the self-moving cleaning device meets the repositioning conditions.
[0185] The local relocation verification module 903 is configured to verify whether the local relocation is successful.
[0186] The global relocation initiation module 904 is configured to expand the search range of the local relocation when the local relocation is unsuccessful until the global relocation is initiated.
[0187] Optionally, the global relocation startup module includes:
[0188] A range expansion submodule, configured to expand the search range of the local relocation when the number of unsuccessful local relocations exceeds a local relocation number threshold;
[0189] The global relocation initiator module is configured to initiate global relocation when the number of unsuccessful local relocations exceeds a threshold number of external local relocations.
[0190] Optionally, the range expansion submodule is configured to: expand the search range based on preset external expansion parameters to obtain an external expansion range; perform a local relocation operation within the external expansion search range; and verify whether the local relocation operation performed within the external expansion search range is successful.
[0191] A global relocation verification module 905 is configured to verify whether the global relocation is successful;
[0192] The search range of the local relocation is determined based on the displacement distance of the self-moving cleaning device from the last credible moment to the current moment; the relocation condition includes detecting at least one of the self-moving cleaning device being lifted, moved, or trapped.
[0193] Optionally, the relocation device further comprises:
[0194] The judgment module is configured to judge whether the self-moving cleaning device has left the ground during the process from the last credible moment to the current moment; if the self-moving cleaning device has left the ground, the displacement distance of the self-moving cleaning device from the last credible moment to the current moment is obtained through the inertial navigation system; if the self-moving cleaning device has not left the ground, the displacement distance of the self-moving cleaning device from the last credible moment to the current moment is obtained through the wheel odometer.
[0195] Optionally, the relocation device further comprises:
[0196] an obstacle information acquisition module, configured to acquire obstacle information around the self-moving cleaning device in response to the number of unsuccessful global repositioning exceeding a global repositioning number threshold;
[0197] A target direction confirmation module is configured to determine a target direction according to the obstacle information, wherein the target direction is a direction in which no obstacle exists;
[0198] The repositioning module is configured to control the self-moving cleaning device to move a preset distance toward the target direction and then reposition it again.
[0199] Optionally, the obstacle information acquisition module includes:
[0200] The clustering submodule is configured to perform clustering processing on the laser point cloud data to obtain a clustering result;
[0201] The obstacle information acquisition submodule is configured to determine the obstacle information according to the relative position information between the clustering result and the self-propelled cleaning device.
[0202] Fig. 9 The repositioning device of the illustrated embodiment can be used to execute the technical solution of the above-mentioned method embodiment. Its implementation principle and technical effect are similar and will not be described in detail here.
[0203] Fig.10The structural diagram of the relocation result verification device provided in the embodiment of the present disclosure. The relocation result verification device may be the self-moving cleaning device as described in the above embodiment, or the relocation result verification device may be a component or assembly in the self-moving cleaning device. The relocation result verification device provided in the embodiment of the present disclosure may execute the processing flow provided in the relocation result verification method embodiment, such as Fig.10 As shown, the relocation result verification device 100 includes:
[0204] A result acquisition module 1001 is configured to acquire a repositioning result of the self-moving cleaning device, wherein the repositioning result at least includes repositioning posture information acquired by positioning through a first navigation sensor;
[0205] The information acquisition module 1002 is configured to acquire the trusted posture information acquired by positioning the self-mobile cleaning device through the first navigation sensor at a trusted moment, the first sensor information of the self-mobile cleaning device acquired by the self-mobile cleaning device through the second navigation sensor at a trusted moment, and the second sensor information of the self-mobile cleaning device acquired by the self-mobile cleaning device through the second navigation sensor at a current moment, wherein the trusted moment is a historical moment when the matching degree between the laser point cloud data and the preset map data is higher than or equal to a first preset threshold value;
[0206] The verification module 1003 is configured to verify the relocation result according to the first sensing information, the trusted posture information, the second sensing information, and the relocation posture information to obtain a verification result, and the verification result is used to indicate whether the relocation is successful.
[0207] Optionally, the second navigation sensor is a gyroscope, the first sensing information is a first gyroscope yaw angle of the self-moving cleaning device at a credible moment, the second sensing information is a second gyroscope yaw angle of the self-moving cleaning device at a current moment, and the verification module is configured as follows:
[0208] A first attitude angle change value is determined according to the trusted attitude information and the repositioning attitude information; a first yaw angle change value is determined according to the first gyroscope yaw angle and the second gyroscope yaw angle; if a first difference between the first attitude angle change value and the first yaw angle change value is less than a first preset threshold, the repositioning is determined to be successful.
[0209] Optionally, the first navigation sensor is a laser sensor, the second navigation sensor is a visual sensor, the repositioning result further includes repositioning position information obtained by laser positioning, the first sensing information includes first posture information and first position information obtained by the self-moving cleaning device through visual positioning at a credible moment, the second sensing information includes second position information and second posture information obtained by the self-moving cleaning device through visual positioning at a current moment, and the verification module is configured as follows:
[0210] Obtain the trusted position information of the self-moving cleaning device obtained by laser positioning by the laser sensor at a trusted moment; determine a first position change value based on the trusted position information and the repositioning position information; determine a second attitude angle change value based on the first posture information and the repositioning posture information; determine a second position change value based on the first position information and the second position information; determine a third attitude angle change value based on the first posture information and the second posture information; verify the repositioning result based on the first position change value, the second attitude angle change value, the second position change value and the third attitude angle change value.
[0211] Optionally, the verification module is configured to: calculate a second difference between the first position change value and the second position change value; calculate a third difference between the second attitude angle change value and the third attitude angle change value; if the second difference is less than a second preset threshold and the third difference is less than a third preset threshold, determine that the repositioning is successful.
[0212] Fig.10 The relocation result verification device of the illustrated embodiment can be used to execute the technical solution of the above-mentioned method embodiment. Its implementation principle and technical effect are similar and will not be described in detail here.
[0213] Fig.11 Schematic diagram of the structure of an electronic device provided in an embodiment of the present disclosure. The electronic device may be the self-moving cleaning device as described in the above embodiment. The electronic device provided in an embodiment of the present disclosure may execute the processing flow provided in the embodiment of the relocation result verification method, such as Fig.11 As shown, the device 110 includes: a memory 111, a processor 112, a computer program and a communication interface 93; wherein the computer program is stored in the memory 111 and is configured so that the processor 112 executes the relocation result verification method as described above.
[0214] In addition, an embodiment of the present disclosure further provides a computer-readable storage medium on which a computer program is stored. The computer program is executed by a processor to implement the relocation result verification method described in the above embodiment.
[0215] In addition, an embodiment of the present disclosure further provides a computer program product, which includes a computer program or instructions, and when the computer program or instructions are executed by a processor, the relocation result verification method as described above is implemented.
[0216] It should be noted that, in this article, relational terms such as "first" and "second" are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.
[0217] The above description is only a specific embodiment of the present disclosure, so that those skilled in the art can understand or implement the present disclosure. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present disclosure. Therefore, the present disclosure will not be limited to the embodiments described herein, but will conform to the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A method for repositioning a self-moving cleaning device, wherein the self-moving cleaning device is provided with a cliff sensor for detecting whether the self-moving cleaning device is lifted, a mileage sensor for detecting the movement distance of the self-moving cleaning device, and a navigation sensor, characterized in that: The relocation method comprises: determining whether the self-propelled cleaning device meets the relocation condition according to the cliff sensor and / or the mileage sensor and / or the navigation sensor; In the case where it is determined that the self-moving cleaning device meets the repositioning conditions, starting the local repositioning; Verifying whether the local relocation is successful; If the local relocation is unsuccessful, expanding the search range of the local relocation until the global relocation is started; Verify whether the global relocation is successful; The search range of the local relocation is determined based on the displacement distance of the self-moving cleaning device from the last credible moment to the current moment; the relocation condition includes detecting at least one of the self-moving cleaning device being lifted, moved, or trapped.
2. The method according to claim 1, characterized in that Before starting the local relocation, the method further includes: Determining whether the self-moving cleaning device leaves the ground during the period from the last credible moment to the current moment; If the self-moving cleaning device leaves the ground, obtaining the displacement distance of the self-moving cleaning device from the last credible moment to the current moment through the inertial navigation system; If the self-propelled cleaning device has not left the ground, the displacement distance of the self-propelled cleaning device from the last credible moment to the current moment is obtained by using a wheel odometer.
3. The method according to claim 1, characterized in that When the local relocation is unsuccessful, expanding the search scope of the local relocation until the global relocation is started includes: When the number of unsuccessful local relocation attempts exceeds a local relocation number threshold, expanding the search range of the local relocation; When the number of unsuccessful local relocations exceeds a threshold number of external local relocations, global relocation is initiated.
4. The method according to claim 3, characterized in that The step of expanding the search scope of the local relocation comprises: Expanding the search range based on a preset expansion parameter to obtain an expansion range; Perform local relocation operations within the extended search range; Verify whether the local relocation operation performed within the expanded search range is successful.
5. The method according to claim 1, characterized in that The method further comprises: In response to the number of unsuccessful global repositioning exceeding a global repositioning number threshold, obtaining obstacle information around the self-moving cleaning device; Determine a target direction according to the obstacle information, wherein the target direction is a direction in which no obstacles exist; The self-moving cleaning device is controlled to move a preset distance toward the target direction and then repositioned.
6. The method according to claim 5, characterized in that The obtaining of obstacle information around the self-moving cleaning device includes: Perform clustering processing on the laser point cloud data to obtain clustering results; The obstacle information is determined according to the relative position information between the clustering result and the self-propelled cleaning device.
7. A method for verifying the repositioning result of a self-moving cleaning device, characterized in that: The method is applied to a self-moving cleaning device, and the method comprises: Obtaining a repositioning result of the self-moving cleaning device, the repositioning result at least comprising repositioning posture information obtained by positioning through a first navigation sensor; Acquire the trusted posture information of the self-mobile cleaning device obtained by positioning the self-mobile cleaning device through the first navigation sensor at the trusted moment, the first sensor information of the self-mobile cleaning device obtained by the self-mobile cleaning device through the second navigation sensor at the trusted moment, and the second sensor information of the self-mobile cleaning device obtained by the self-mobile cleaning device through the second navigation sensor at the current moment, wherein the trusted moment is a historical moment when the matching degree between the laser point cloud data and the preset map data is higher than or equal to a first preset threshold value; The relocation result is verified according to the first sensing information, the trusted posture information, the second sensing information, and the relocation posture information to obtain a verification result, and the verification result is used to indicate whether the relocation is successful.
8. The method according to claim 7, characterized in that The second navigation sensor is a gyroscope, the first sensor information is the first gyroscope yaw angle of the self-moving cleaning device at a credible moment, the second sensor information is the second gyroscope yaw angle of the self-moving cleaning device at the current moment, and the relocation result is verified according to the first sensor information, the credible attitude information, the second sensor information, and the relocation attitude information to obtain the verification result, including: Determine a first attitude angle change value according to the trusted attitude information and the repositioning attitude information; Determine a first yaw angle change value according to the first gyroscope yaw angle and the second gyroscope yaw angle; If a first difference between the first attitude angle change value and the first yaw angle change value is less than a first preset threshold, it is determined that the repositioning is successful.
9. The method according to claim 7, characterized in that: The first navigation sensor is a laser sensor, the second navigation sensor is a visual sensor, the relocation result also includes relocation position information obtained by laser positioning, the first sensor information includes first posture information and first position information obtained by the self-moving cleaning device through visual positioning at a credible moment, the second sensor information includes second position information and second posture information obtained by the self-moving cleaning device through visual positioning at the current moment, and the relocation result is verified according to the first sensor information, the credible posture information, and the second sensor information to obtain a verification result, including: Acquiring credible position information of the self-moving cleaning device obtained by a laser sensor through laser positioning at a credible moment; Determining a first position change value according to the trusted position information and the relocation position information; Determining a second attitude angle change value according to the first attitude information and the repositioning attitude information; Determine a second position change value according to the first position information and the second position information; Determining a third attitude angle change value according to the first attitude information and the second attitude information; The repositioning result is verified according to the first position change value, the second attitude angle change value, the second position change value and the third attitude angle change value.
10. The method according to claim 9, characterized in that The checking of the repositioning result according to the first position change value, the second attitude angle change value, the second position change value and the third attitude angle change value comprises: Calculating a second difference between the first position change value and the second position change value; Calculate a third difference between the second attitude angle change value and the third attitude angle change value; if the second difference is less than a second preset threshold and the third difference is less than a third preset threshold, determine that the repositioning is successful.