[go: nahoru, domu]

CN113558524B - Sweeping robot and method and device for repositioning lifted sweeping robot - Google Patents

Sweeping robot and method and device for repositioning lifted sweeping robot Download PDF

Info

Publication number
CN113558524B
CN113558524B CN202110797528.6A CN202110797528A CN113558524B CN 113558524 B CN113558524 B CN 113558524B CN 202110797528 A CN202110797528 A CN 202110797528A CN 113558524 B CN113558524 B CN 113558524B
Authority
CN
China
Prior art keywords
sweeping robot
repositioning
positioning
determining
algorithm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110797528.6A
Other languages
Chinese (zh)
Other versions
CN113558524A (en
Inventor
檀冲
王颖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Puppy Vacuum Cleaner Group Co Ltd
Original Assignee
Beijing Puppy Vacuum Cleaner Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Puppy Vacuum Cleaner Group Co Ltd filed Critical Beijing Puppy Vacuum Cleaner Group Co Ltd
Priority to CN202110797528.6A priority Critical patent/CN113558524B/en
Publication of CN113558524A publication Critical patent/CN113558524A/en
Application granted granted Critical
Publication of CN113558524B publication Critical patent/CN113558524B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/24Floor-sweeping machines, motor-driven
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4002Installations of electric equipment
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4011Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0257Control of position or course in two dimensions specially adapted to land vehicles using a radar
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2201/00Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
    • A47L2201/04Automatic control of the travelling movement; Automatic obstacle detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

The invention is suitable for the technical field of sweeping robots and provides a sweeping robot and a method and a device for repositioning the sweeping robot after the sweeping robot is held up, wherein the method comprises the following steps: when the sweeping robot is detected to be held up, acquiring a map which is pre-established by the sweeping robot; identifying the state of the sweeping robot before being held up by using the map, and determining a preset repositioning algorithm according to the state, wherein the repositioning algorithm comprises a quick positioning algorithm or a slow positioning algorithm; and determining the target positioning position of the sweeping robot which returns to the ground after being held up according to the quick positioning algorithm or the slow positioning algorithm. According to the invention, the preconfigured repositioning algorithm is selected according to the state of the sweeping robot before being held up, so that the quick and accurate positioning is realized without restarting the SLAM, and the efficiency of repositioning the sweeping robot back to the ground after being held up is improved.

Description

Sweeping robot and method and device for repositioning lifted sweeping robot
Technical Field
The invention belongs to the technical field of sweeping robots, and particularly relates to a sweeping robot and a method and a device for repositioning the sweeping robot after the sweeping robot is held up.
Background
The sweeping robot is likely to be held up and then fall down due to external factors in the walking process, the positioning of the sweeping robot is invalid due to the process, if corresponding strategies are not adopted for timely correction, the sweeping robot can perform positioning and even map building according to wrong positioning results, and then problems and even map flowers occur in navigation path planning and the like.
However, in practice, if the sweeping robot is to be repositioned without restarting SLAM (full text: simultaneous positioning and Mapping), the repositioning accuracy is required due to environmental and other factors. Meanwhile, if the relocation duration exceeds the time for restarting the SLAM, the relocation will lose significance, so how to overcome the problem of fast and accurate relocation after the sweeping robot is held up is a current technical problem.
Disclosure of Invention
In view of this, embodiments of the present invention provide a sweeping robot and a method and a device for repositioning the sweeping robot after being held up, so as to overcome the problem of quick and accurate repositioning of the sweeping robot after being held up.
A first aspect of an embodiment of the present invention provides a method for repositioning a sweeping robot after being held up, including: when the sweeping robot is detected to be held up, acquiring a map which is pre-established by the sweeping robot; identifying the state of the sweeping robot before being held up by using the map, and determining a preset repositioning algorithm according to the state, wherein the repositioning algorithm comprises a quick positioning algorithm or a slow positioning algorithm; and determining the target positioning position of the sweeping robot which returns to the ground after being held up according to the quick positioning algorithm or the slow positioning algorithm.
In some alternatives, identifying a state of the sweeping robot before being held up using the map, determining a preconfigured repositioning algorithm based on the state, the repositioning algorithm comprising a fast positioning algorithm or a slow positioning algorithm, comprising: acquiring a moving track or a final position of the sweeping robot before being held up; identifying whether the sweeping robot moves along the wall or approaches the wall in the map according to the moving track or the final position; if yes, determining a slow positioning algorithm to reposition the sweeping robot; and if not, determining that the quick positioning algorithm is used for repositioning the sweeping robot.
In some alternatives, identifying a state of the sweeping robot before being held up using the map, determining a preconfigured repositioning algorithm based on the state, the repositioning algorithm comprising a fast positioning algorithm or a slow positioning algorithm, comprising: identifying whether the map is missing; if yes, determining a slow positioning algorithm to reposition the sweeping robot; and if not, determining that the quick positioning algorithm is used for repositioning the sweeping robot.
In some alternatives, the determining the target location position of the sweeping robot returning to the ground after being held up according to the slow positioning algorithm includes: acquiring surrounding image information when the sweeping robot is replaced on the ground; identifying the surrounding image information, and determining a spatial label of the current position of the sweeping robot; and finding a space consistent with the space label on the map, and scattering particles on the space to determine the target position of the sweeping robot.
In some alternatives, the scattering particles on the space to determine the target position of the sweeping robot includes: initializing particles; enabling the sweeping robot to move, wherein in the moving process, the particles can update the weight and adapt the quantity according to the received laser and the odometer result; and when the particles are detected to be within the preset distance threshold along with the movement, determining the pose of the particle with the highest weight in the particle swarm as the relocated target position.
In some alternatives, the determining, according to the fast positioning algorithm, a target positioning position of the sweeping robot returning to the ground after being held up includes: when the sweeping robot is detected to leave the ground and return to the ground again, at least one frame of laser radar signal is selected to carry out position scoring calculation on the sweeping robot, and a plurality of different position scoring calculation values are obtained; sorting the plurality of different position scoring calculation values according to the sequence from top to bottom, and selecting a specified number of position scoring calculation values arranged in the front in the sorting to calculate the variance; and comparing the variance with a preset threshold value, and determining a position corresponding to one of the position scoring calculation values of the specified number as a target position for repositioning the sweeping robot according to a comparison result.
In some alternatives, the determining, according to a result of the comparison, a position corresponding to one of the specified number of position scoring calculation values as a target position for repositioning the sweeping robot includes: if the variance is larger than or equal to a preset first threshold value, determining that the position corresponding to the highest position scoring calculation value in the designated number of position scoring calculation values is the target position for repositioning the sweeping robot; and if the variance is smaller than a preset first threshold value, rotating the sweeping robot in situ to acquire the next frame of laser radar signals under different angles again to calculate the target position of the sweeping robot for repositioning again.
In some alternatives, further comprising: when the target position of the sweeping robot is determined, at least the target position is transmitted back to the synchronous positioning and mapping module of the sweeping robot, and the positioning and mapping of the sweeping robot are recovered.
A second aspect of the embodiments of the present invention provides a repositioning device for a floor sweeping robot after being held up, including: the map acquisition module is used for acquiring a map which is established in advance by the sweeping robot when the sweeping robot is detected to be held up; the positioning algorithm selection module is used for identifying the state of the sweeping robot before being held up by utilizing the map, and determining a pre-configured repositioning algorithm according to the state, wherein the repositioning algorithm comprises a quick positioning algorithm or a slow positioning algorithm; and the target position positioning module is used for determining the target positioning position of the sweeping robot returning to the ground after being held up according to the quick positioning algorithm or the slow positioning algorithm.
A third aspect of the embodiments of the present invention provides a sweeping robot, including: a laser radar sensor; a camera; a memory having stored therein a computer program operable on the processor; a processor connected to the lidar sensor, the camera, and the memory, respectively, the processor implementing the steps of the method according to any of the first aspects when executing the computer program.
Compared with the prior art, the embodiment of the invention has the following beneficial effects: according to the invention, the preconfigured repositioning algorithm is selected according to the state of the sweeping robot before being held up, so that the quick and accurate positioning is realized without restarting the SLAM, and the efficiency of repositioning the sweeping robot back to the ground after being held up is improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed for the embodiments or the prior art descriptions will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings without creative efforts.
Fig. 1 is a flow chart of an implementation of the method for repositioning the sweeping robot after being held up according to an embodiment of the present invention;
fig. 2 is a schematic structural diagram of the repositioning device for the sweeping robot after being held up according to an embodiment of the invention;
fig. 3 is a sweeping robot to which the method for repositioning the sweeping robot after being held up or the device for repositioning the sweeping robot after being held up may be applied in an embodiment of the present invention.
Detailed Description
In the following description, for purposes of explanation and not limitation, specific details are set forth, such as particular system structures, techniques, etc. in order to provide a thorough understanding of the embodiments of the invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present invention with unnecessary detail.
In order to explain the technical means of the present invention, the following description will be given by way of specific examples.
Referring to fig. 1, an implementation flow of the repositioning method for the sweeping robot after being held up in the present invention in an embodiment is shown, and as shown in fig. 1, the repositioning method at least includes steps S01-S03:
step S01, when the sweeping robot is detected to be held up, a map which is established in advance by the sweeping robot is obtained;
s02, identifying the state of the sweeping robot before being held up by using the map, and determining a pre-configured repositioning algorithm according to the state, wherein the repositioning algorithm comprises a quick positioning algorithm or a slow positioning algorithm;
and S03, determining the target positioning position of the sweeping robot returning to the ground after being held up according to the quick positioning algorithm or the slow positioning algorithm.
By the method, the pre-configured repositioning algorithm can be selected according to the state of the sweeping robot before being held up, so that quick and accurate positioning is realized without restarting the SLAM, and the efficiency of repositioning the sweeping robot back to the ground after being held up is improved.
Specifically, in step S01, the map that is created in advance is a map that is created by the SLAM before the sweeping robot is held up.
Specifically, in the step S02, the fast positioning algorithm and the slow positioning algorithm are two preset methods for performing repositioning, and as the name suggests, the fast positioning algorithm is better than the slow positioning algorithm in speed of achieving positioning, but at the same time, the slow positioning algorithm is better than the fast positioning algorithm in positioning accuracy. For the situation, the two algorithms are configured in the sweeping robot in advance, and then the selection of the sweeping robot is determined to be more appropriate according to the state of the sweeping robot when the sweeping robot needs to be repositioned, so that the sweeping robot can be smoothly and efficiently repositioned.
Specifically, in one example, the step S02 includes the following steps S211 to S214:
s211, acquiring a moving track or a final position of the sweeping robot before being held up;
s212, identifying whether the sweeping robot moves along the wall or approaches the wall in the map according to the moving track or the final position;
s213, if yes, determining a slow positioning algorithm to reposition the sweeping robot;
s214, if not, determining that the sweeping robot is repositioned by the quick positioning algorithm.
In the above example, the condition for selecting the repositioning algorithm is determined by identifying whether the sweeping robot is in a state of being along the wall before being held up, i.e., whether the sweeping robot is walking along the wall or is stationary along the wall. If the robot is in the state of being along the wall before being held up, the slow positioning algorithm is selected, and if the robot is in the state of being along the wall, the environment of the sweeping robot can cause inaccurate positioning results of the fast positioning algorithm; instead, a fast positioning algorithm is selected.
Further, in the above example, whether the map is in a state along the wall can be identified in the established map by using the movement track and the last located position of the sweeping robot, but if the obtained map is missing, that is, the map is not completely established before being held up, or the map is missing due to other reasons, etc. In the face of these situations, it is also possible to decide which relocation algorithm to select at this time according to the map situation.
Specifically, in another example, the step S02 further includes the following steps S221 to S23:
s221, identifying whether the map is missing or not;
s222, if yes, determining a slow positioning algorithm to reposition the sweeping robot;
and S223, if not, determining a quick positioning algorithm to reposition the sweeping robot.
The identification of whether the map is missing or not can be realized by traversing the map, or whether the map is complete or not can be judged according to the size of the map and the like. It should be understood that the present application is not limited to the specific technical means of map missing identification.
Similarly, in the case of a map missing, the accuracy of positioning cannot be guaranteed by using the fast positioning algorithm, and therefore, in the above example, the slow positioning algorithm is selected in the case of a map missing, and conversely, the fast positioning algorithm is selected.
Specifically, the slow localization algorithm may include, but is not limited to, the monte carlo particle method. Because the existing Monte Carlo particle scattering method is based on all feasible reachable intervals, when the operable range is larger, the number of particles must be correspondingly increased to ensure the accuracy of the relocation result, but the increase of the number of particles can increase the calculation power. In order to overcome the problem that the positioning time is too long due to calculation force, the method is improved on the basis of the existing Monte Carlo particle scattering method.
Specifically, in the step S03, determining the target positioning position where the sweeping robot returns to the ground after being held up according to the slow positioning algorithm may specifically include the steps of: s311, acquiring surrounding image information when the sweeping robot is replaced on the ground; s312, identifying the surrounding image information, and determining a space tag of the current position of the sweeping robot; and S313, finding a space consistent with the space label on the map, and scattering particles on the space to determine the target position of the sweeping robot. In the pre-established map, the map is divided into different spatial areas, for example, the area where the map is located may be divided into spatial labels such as bedrooms, living rooms, toilets, restaurants, kitchens, and the like. On the basis, image recognition can be carried out according to image information around the sweeping robot, so that the space tag of the current area of the sweeping robot is determined. Therefore, the space range can be effectively reduced, and the scattered particle positioning is facilitated.
More specifically, the slow localization algorithm is the same as the existing monte carlo particle method except that the space for scattering particles is determined. For example, the step of scattering particles on the space to determine the target position of the sweeping robot may specifically include the steps of: s321, initializing particles; s322, enabling the sweeping robot to move, wherein in the moving process, the particles can update the weight and adapt the quantity according to the received laser and the odometer result; s323, when the particles are detected to be within the preset distance threshold along with the movement, determining the pose of the particle with the highest weight in the particle swarm as the relocated target position. And after the target position is located, transmitting the relocation result to the SLAM to restore to the original positioning system, and simultaneously issuing the relocation result to the other navigation modules for synchronization, thereby finishing the relocation.
Specifically, the fast positioning algorithm includes, but is not limited to, a position scoring calculation method. Illustratively, the method for determining the target positioning position of the sweeping robot returning to the ground after being held up according to the quick positioning algorithm comprises the following steps: s331, when the sweeping robot is detected to leave the ground and return to the ground again, at least one frame of laser radar signal is selected to carry out position scoring calculation on the sweeping robot, and a plurality of different position scoring calculation values are obtained; s332, sorting the plurality of different position scoring calculation values according to the sequence from top to bottom, and selecting a specified number of position scoring calculation values arranged in the front in the sorting to calculate the variance; and S333, comparing the variance with a preset threshold value, and determining a position corresponding to one of the position scoring calculation values of the specified number as a target position for repositioning the sweeping robot according to a comparison result.
In step S331, the position score of the sweeping robot is calculated by using a laser radar signal on the sweeping robot to calculate the score of the position of the sweeping robot after the sweeping robot returns to the ground. Illustratively, at least one frame of laser radar signal is selected to calculate the position score of the sweeping robot, and the method specifically includes the following steps: acquiring at least one frame of laser radar signal of the sweeping robot in a static state; acquiring a currently established map, and traversing a feasible reachable area for the first time according to the laser radar signal with the map precision; when the map is at any position of the map, performing second traversal on the pose angle in a manner of 5 degrees of iteration each time; and when a certain pose is specified, scoring calculation is carried out. Specifically, in order to make the result more reliable, the laser radar signal should contain more hit information as much as possible, and if the reliability of the laser at the current position is poor, the sweeper can be moved to search for obtaining a reliable laser radar signal and is stationary. In addition, the map is generally a grid map, which is a two-dimensional map, the grid map divides x and y by resolution, and the first layer of traversal assumes that the robot is in any grid pixel. And moreover, the pose angle is subjected to the second time of traversal in a mode of 5 degrees for each iteration until the traversal is finished by 360 degrees, and then the traversal is stopped.
Wherein the scoring specifically includes filtering each laser in the lidar signal, where the filtering is of a potentially erroneous laser and all missed lasers. For example, when the laser hits an obstacle, it is detected whether the previous grid map cell hit by the grid map cell is a feasible reachable cell, and if not, it represents that the laser has an error, and no calculation can be added.
Then, after filtering, the laser which can participate in calculation is calculated sequentially according to the following steps: calculating the position coordinates of the laser hit points on a map; calculating the position coordinate of the previous feasible region of the hit point in the laser direction; when the hit rate of the map grid where the hit point is located is higher than the hit threshold and the concentration rate of the grid where the feasible region is located is lower than the hit threshold, calculating the difference value between the hit position and the center position of the grid, then, score is calculated as distance, wherein σ is a confidence index, which is adjustable, and the order of magnitude is generally one percent. And summing all the laser beams according to the calculation above to obtain the result, namely the score of the position under the laser frame.
Specifically, in step S02, the plurality of position scoring calculation values obtained by calculating the position of the sweeping robot are sorted in descending order, a predetermined number of scoring calculation values arranged in the front, for example, 5 to 10 scoring calculation values arranged in the front, are selected from the sorted position scoring calculation values, and then the variance of the selected scoring calculation values is calculated. The variance represents the difference of the surrounding environment of the sweeping robot, and the bigger the variance is, the bigger the difference of the surrounding environment of the sweeping robot is, so that the positioning is more favorably realized; conversely, the smaller the difference in the environmental space around the specification, the less easy it is to achieve accurate positioning.
Further, the determining, according to the comparison result, a position corresponding to one of the position scoring calculation values of the specified number as a target position for repositioning the sweeping robot further includes: s341, if the variance is greater than or equal to a preset first threshold, determining a position corresponding to a highest position scoring calculation value among the designated number of position scoring calculation values as a target position for repositioning the cleaning robot; and S342, if the variance is smaller than a preset first threshold value, rotating the sweeping robot in situ to acquire the next frame of laser radar signals under different angles again to calculate the target position of the sweeping robot for relocation again.
Specifically, the determining that the position corresponding to the highest position scoring calculation value in the specified number of position scoring calculation values is the target position where the sweeping robot is repositioned may further include: calculating a difference value between the highest position scoring calculation value and the next highest position scoring calculation value in the designated number of position scoring calculation values; judging whether the difference value is larger than a preset second threshold value, wherein the second threshold value is smaller than the highest position scoring calculation value; and if so, determining the position corresponding to the highest position scoring calculation value as the target position of the robot for sweeping the floor to reappear the positioning.
The second threshold value can also be set according to the experimental condition of the robot during sweeping in a specific application scene. Typically, the second threshold is 1/5 to 1/3 of the highest score calculation.
Further, after the step of determining whether the difference is greater than a preset second threshold, the method may further include the step of: if not, the sweeping robot rotates in situ at different angles in sequence to obtain the next frame of laser radar signal; aiming at the highest position scoring calculation value and the second highest position scoring calculation value, performing position scoring calculation again by utilizing the next frame of laser radar signals obtained by rotating different angles to obtain position scoring calculation values of multiple results; and selecting the position with the most matching times as a target position for the reproduction and positioning of the sweeping robot according to the position scoring calculation value. According to the method, the repositioning target position is determined according to the difference value between the highest position scoring calculation value and the second highest position scoring calculation value, so that the positioning of the sweeping robot can be accurately realized.
In step S314, the sweeping robot rotates in situ at different angles in turn, may rotate in situ at two different angles at random, or may regularly select two angles according to a preset angle. For example, in step S314, the sweeper may rotate in situ by 45 degrees and 90 degrees in sequence to acquire the next frame of lidar signals, respectively.
Specifically, in step S342, the step of re-acquiring the next frame of laser radar signals at different angles to re-calculate the target position of the sweeping robot for re-positioning includes: according to the obtained next frame of laser radar signal, carrying out position scoring calculation on the sweeping robot again to obtain a group of different position scoring calculation values again; sorting the plurality of different position scoring calculation values according to the sequence from top to bottom, and selecting a specified number of position scoring calculation values arranged in the front in the sorting to calculate the variance; and comparing the variance with a preset threshold value, and determining a position corresponding to one of the position scoring calculation values of the specified number according to a comparison result to serve as a target position for repositioning the sweeping robot.
In combination with the above, when the target position of the sweeping robot cannot be relocated by using the variance obtained after the position scoring calculation is performed on one frame of laser radar signal obtained by the sweeping robot, the next frame of laser radar signal is obtained again, the position of the sweeping robot is determined again by performing the position scoring calculation and the variance calculation again according to the obtained laser radar signal, and after a group of a plurality of different position scoring calculation values are obtained again, the target position of the sweeping robot is determined by repeating the steps S332 to S333 until the target position can be determined.
By the aid of the rapid positioning algorithm, the robot can be quickly positioned when the robot returns to the ground after being held up without restarting the SLAM, and accordingly positioning and map building work of the sweeping robot is recovered.
It should be understood that, the sequence numbers of the steps in the foregoing embodiments do not imply an execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present invention.
Under the same inventive concept, based on the repositioning method for the floor sweeping robot after being held up, the invention also provides a repositioning device for the floor sweeping robot after being held up.
Referring to fig. 2, a schematic structural diagram of the repositioning apparatus for a sweeping robot after being held up according to an embodiment of the present invention is shown, and as shown in fig. 2, the repositioning apparatus 200 for a sweeping robot after being held up at least includes: the map acquisition module 201 is configured to acquire a map pre-established by the sweeping robot when the sweeping robot is detected to be held up; a positioning algorithm selection module 202, configured to identify a state of the sweeping robot before being held up by using the map, and determine a preconfigured repositioning algorithm according to the state, where the repositioning algorithm includes a fast positioning algorithm or a slow positioning algorithm; and the target position positioning module 203 is configured to determine a target positioning position where the sweeping robot returns to the ground after being held up according to the fast positioning algorithm or the slow positioning algorithm.
In some optional embodiments, the positioning algorithm selection module 202 comprises: the holding forward movement information acquisition unit is used for acquiring a movement track or a final position of the sweeping robot before being held up; the front holding state determining unit is used for identifying whether the sweeping robot moves along a wall or approaches the wall in the map according to the moving track or the final position; the first positioning algorithm determining unit is used for determining that the low-speed positioning algorithm is used for repositioning the sweeping robot if the first positioning algorithm is used for repositioning the sweeping robot; and the second positioning algorithm determining unit determines that the quick positioning algorithm is used for repositioning the sweeping robot if the second positioning algorithm is not used for repositioning the sweeping robot.
In some optional embodiments, the positioning algorithm selection module 202 comprises: the map missing identification unit is used for identifying whether the map has missing or not; the third positioning algorithm determining unit is used for determining that the low-speed positioning algorithm is used for repositioning the sweeping robot if the low-speed positioning algorithm is available; and the fourth positioning algorithm determining unit is used for determining that the quick positioning algorithm is used for repositioning the sweeping robot if the quick positioning algorithm is not used.
In some optional embodiments, the target position locating module 203 comprises: the image information acquisition unit is used for acquiring the surrounding image information when the sweeping robot is replaced to the ground; the image information identification unit is used for identifying the surrounding image information and determining a space tag of the current position of the sweeping robot; and the first target position calculating unit is used for finding a space consistent with the space label on the map and scattering particles on the space to determine the target position of the sweeping robot.
In some optional embodiments, the first target position calculation unit comprises: an initialization unit configured to initialize particles; the particle state updating unit is used for enabling the sweeping robot to move, and in the moving process, the particles can perform weight updating and quantity self-adaption according to the received laser and the odometer result; and the position determining unit is used for determining the pose of the particle with the highest weight in the particle swarm as the relocated target position when the particles are detected to be within a preset distance threshold along with the movement.
In some optional embodiments, the target position locating module 203 comprises: the position scoring calculation unit is used for selecting at least one frame of laser radar signal to perform position scoring calculation on the sweeping robot when the sweeping robot is detected to leave the ground and return to the ground again, so that a plurality of different position scoring calculation values are obtained; a scoring variance calculating unit for sorting the plurality of different position scoring calculation values according to a top-to-bottom sequence, and selecting a specified number of position scoring calculation values arranged in front in the sorting to calculate a variance; and the target position determining unit is used for comparing the variance with a preset threshold value, and determining a position corresponding to one position scoring calculation value in the specified number of position scoring calculation values as a target position for repositioning the sweeping robot according to a comparison result.
In some optional embodiments, the target position determination unit comprises: a second target position calculating unit, configured to determine, if the variance is greater than or equal to a preset first threshold, that a position corresponding to a highest position scoring calculation value among the designated number of position scoring calculation values is a target position at which the sweeping robot is repositioned; and the third target position calculating unit is used for rotating the sweeping robot in situ to acquire the next frame of laser radar signal under different angles again to calculate the target position of the sweeping robot for repositioning if the variance is smaller than a preset first threshold.
In some optional embodiments, further comprising: and the target position synchronization module is used for at least transmitting the target position back to the synchronous positioning and mapping module of the sweeping robot when the target position of the sweeping robot is determined, and recovering the positioning and mapping of the sweeping robot.
Since the repositioning device for the floor sweeping robot after being held up and the repositioning method for the floor sweeping robot after being held up belong to the same inventive concept, and the two have the same specific technical characteristics, the technical content of the repositioning device for the floor sweeping robot after being held up is not repeated, and the content of the repositioning method for the floor sweeping robot after being held up can be referred to specifically.
Referring to fig. 3, a sweeping robot to which the method for repositioning a sweeping robot after being held up or the device for repositioning a sweeping robot after being held up according to an embodiment of the present invention may be applied is provided, where fig. 3 only shows a part of a structure of the sweeping robot related to the present application, and as for other parts, reference may be made to an existing sweeping robot structure, which is not described in detail herein. As shown in fig. 3, the sweeping robot 300 includes: a laser radar sensor 304; a camera 305; a memory 302 in which a computer program 303 executable on a processor is stored; a processor 301 connected to the lidar sensor 304, the camera 305 and the memory 302, respectively, the processor 301 implementing the steps of the method as described in fig. 1 when executing the computer program 303. Alternatively, the processor 301, when executing the computer program 303, implements the functions of each module/unit in each device embodiment described above, for example, the functions of the modules 201 to 203 shown in fig. 2.
Illustratively, the computer program 303 may be partitioned into one or more modules/units, which are stored in the memory 302 and executed by the processor 301 to implement the present invention. The one or more modules/units may be a series of computer program instruction segments capable of performing specific functions, which are used to describe the execution process of the computer program 303 in the sweeping robot 300. For example, the computer program 303 may be divided into a map acquisition module 201, a positioning algorithm selection module 202 and a target position location module 203.
The sweeping robot 300 includes, but is not limited to, a radar laser sensor, a camera, a processor 301, and a memory 302. Those skilled in the art will appreciate that figure 3 is merely an example of the sweeping robot 300 and is not intended to limit the sweeping robot 300 and may include more or fewer components than shown, or some components may be combined, or different components.
The Processor 301 may be a Central Processing Unit (CPU), other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory 302 may be an internal storage unit of the cleaning robot 300, such as a hard disk or a memory of the cleaning robot 300. The memory 302 may also be an external storage device of the sweeping robot 300, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and the like, which are provided on the sweeping robot 300. Further, the memory 302 may also include both an internal memory unit and an external memory device of the sweeping robot 300. The memory 302 is used to store the computer program and other programs and data required by the sweeping robot. The memory 302 may also be used to temporarily store data that has been output or is to be output.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned function distribution may be performed by different functional units and modules according to needs, that is, the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-mentioned functions. Each functional unit and module in the embodiments may be integrated in one processing unit, or each unit may exist alone physically, or two or more units are integrated in one unit, and the integrated unit may be implemented in a form of hardware, or in a form of software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working processes of the units and modules in the system may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and reference may be made to the related descriptions of other embodiments for parts that are not described or illustrated in a certain embodiment.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
In the embodiments provided in the present invention, it should be understood that the disclosed apparatus/terminal device and method may be implemented in other ways. For example, the above-described embodiments of the apparatus/terminal device are merely illustrative, and for example, the division of the modules or units is only one logical division, and there may be other divisions when actually implemented, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, indirect coupling or communication connection of devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated modules/units, if implemented in the form of software functional units and sold or used as separate products, may be stored in a computer readable storage medium. Based on such understanding, all or part of the flow of the method according to the above embodiments may also be implemented by a computer program, which may be stored in a computer readable storage medium, and when the computer program is executed by a processor, the computer program may implement the steps of the above embodiments of the repositioning method after the sweeping robot is held up. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, U.S. disk, removable hard disk, magnetic diskette, optical disk, computer Memory, read-Only Memory (ROM), random Access Memory (RAM), electrical carrier wave signal, telecommunications signal, and software distribution medium, etc. It should be noted that the computer readable medium may contain content that is subject to appropriate increase or decrease as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, computer readable media does not include electrical carrier signals and telecommunications signals as is required by legislation and patent practice.
The above-mentioned embodiments are only used for illustrating the technical solutions of the present invention, and not for limiting the same; although the present invention has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present invention, and are intended to be included within the scope of the present invention.

Claims (8)

1. A method for repositioning a sweeping robot after being held up, comprising:
when the sweeping robot is detected to be held up, acquiring a map which is pre-established by the sweeping robot;
identifying the state of the sweeping robot before being held up by using the map, and determining a preset repositioning algorithm according to the state, wherein the repositioning algorithm comprises a quick positioning algorithm or a slow positioning algorithm;
determining a target positioning position of the sweeping robot which returns to the ground after being held up according to the quick positioning algorithm or the slow positioning algorithm;
identifying the state of the sweeping robot before being held up by using the map, and determining a preconfigured repositioning algorithm according to the state, wherein the repositioning algorithm comprises a fast positioning algorithm or a slow positioning algorithm, and comprises the following steps:
acquiring a moving track or a final position of the sweeping robot before being held up;
identifying whether the sweeping robot moves along the wall or approaches the wall in the map according to the moving track or the final position;
if yes, determining a slow positioning algorithm to reposition the sweeping robot;
if not, determining that the sweeping robot is repositioned by the quick positioning algorithm;
or,
identifying the state of the sweeping robot before being held up by using the map, and determining a preconfigured repositioning algorithm according to the state, wherein the repositioning algorithm comprises a fast positioning algorithm or a slow positioning algorithm, and comprises the following steps:
identifying whether the map is missing;
if so, determining that the low-speed positioning algorithm is used for repositioning the sweeping robot;
if not, determining a quick positioning algorithm to reposition the sweeping robot;
the fast positioning algorithm comprises a position scoring calculation method, and the slow positioning algorithm comprises a Monte Carlo particle method.
2. The method for repositioning the sweeping robot after being held up according to claim 1, wherein the determining the target positioning position of the sweeping robot after being held up and returning to the ground according to the slow positioning algorithm comprises:
acquiring surrounding image information when the sweeping robot is replaced on the ground;
identifying the surrounding image information, and determining a space tag of the current position of the sweeping robot;
and finding a space consistent with the space label on the map, and scattering particles on the space to determine the target positioning position of the sweeping robot.
3. The method for repositioning the sweeping robot after being held up as claimed in claim 2, wherein the step of scattering particles on the space to determine the target positioning position of the sweeping robot comprises the following steps:
initializing particles;
enabling the sweeping robot to move, wherein in the moving process, the particles can update the weight and adapt the quantity according to the received laser and the odometer result;
and when the particles are detected to be within the preset distance threshold along with the movement, determining the pose of the particle with the highest weight in the particle swarm as the relocated target positioning position.
4. The method of claim 1, wherein the determining the target location of the sweeping robot back to the ground after being picked up according to the fast positioning algorithm comprises:
when the sweeping robot is detected to leave the ground and return to the ground again, at least one frame of laser radar signal is selected to carry out position scoring calculation on the sweeping robot, and a plurality of different position scoring calculation values are obtained;
sorting the plurality of different position scoring calculation values according to the sequence from top to bottom, and selecting a specified number of position scoring calculation values arranged in the front in the sorting to calculate the variance;
and comparing the variance with a preset threshold value, and determining a position corresponding to one of the position scoring calculation values of the specified number as a target positioning position for repositioning the sweeping robot according to a comparison result.
5. The method for repositioning the sweeping robot after being held up according to claim 4, wherein the determining the position corresponding to one of the specified number of position scoring calculation values as the target positioning position for repositioning the sweeping robot according to the comparison result comprises:
if the variance is larger than or equal to a preset first threshold value, determining that the position corresponding to the highest position scoring calculation value in the designated number of position scoring calculation values is the target positioning position for repositioning the sweeping robot;
and if the variance is smaller than a preset first threshold value, rotating the sweeping robot in situ to acquire the next frame of laser radar signals under different angles again to calculate the target positioning position of the sweeping robot for positioning again.
6. The method for repositioning the sweeping robot after being picked up as claimed in claim 1, further comprising: when the target positioning position of the sweeping robot is determined, at least the target positioning position is transmitted back to the synchronous positioning and mapping module of the sweeping robot, and the positioning and mapping of the sweeping robot are recovered.
7. A relocating device for a sweeping robot after being picked up, comprising:
the map acquisition module is used for acquiring a map which is established in advance by the sweeping robot when the sweeping robot is detected to be held up;
the positioning algorithm selection module is used for identifying the state of the sweeping robot before being held up by utilizing the map, and determining a pre-configured repositioning algorithm according to the state, wherein the repositioning algorithm comprises a quick positioning algorithm or a slow positioning algorithm;
the target position positioning module is used for determining a target positioning position of the sweeping robot which returns to the ground after being held up according to the quick positioning algorithm or the slow positioning algorithm;
the positioning algorithm selection module is specifically configured to: acquiring a moving track or a final position of the sweeping robot before being held up; identifying whether the sweeping robot moves along the wall or approaches the wall in the map according to the moving track or the final position; if yes, determining a slow positioning algorithm to reposition the sweeping robot; if not, determining that the sweeping robot is repositioned by the quick positioning algorithm;
or,
the positioning algorithm selection module is specifically configured to: identifying whether the map is missing; if so, determining that the low-speed positioning algorithm is used for repositioning the sweeping robot; if not, determining a quick positioning algorithm to reposition the sweeping robot;
the fast positioning algorithm comprises a position scoring calculation method, and the slow positioning algorithm comprises a Monte Carlo particle method.
8. A sweeping robot comprising:
a laser radar sensor;
a camera;
a memory having stored therein a computer program executable on a processor;
a processor connected to the lidar sensor, the camera, and the memory, respectively, wherein the processor, when executing the computer program, implements the steps of the method of any of claims 1-6.
CN202110797528.6A 2021-07-14 2021-07-14 Sweeping robot and method and device for repositioning lifted sweeping robot Active CN113558524B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110797528.6A CN113558524B (en) 2021-07-14 2021-07-14 Sweeping robot and method and device for repositioning lifted sweeping robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110797528.6A CN113558524B (en) 2021-07-14 2021-07-14 Sweeping robot and method and device for repositioning lifted sweeping robot

Publications (2)

Publication Number Publication Date
CN113558524A CN113558524A (en) 2021-10-29
CN113558524B true CN113558524B (en) 2022-11-29

Family

ID=78164871

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110797528.6A Active CN113558524B (en) 2021-07-14 2021-07-14 Sweeping robot and method and device for repositioning lifted sweeping robot

Country Status (1)

Country Link
CN (1) CN113558524B (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105824310B (en) * 2015-01-08 2018-10-19 江苏美的清洁电器股份有限公司 The ambulation control method and robot of robot
CN110488818B (en) * 2019-08-08 2020-07-17 深圳市银星智能科技股份有限公司 Laser radar-based robot positioning method and device and robot
CN112179353B (en) * 2020-09-30 2023-07-18 深圳银星智能集团股份有限公司 Positioning method and device of self-moving robot, robot and readable storage medium
CN112344966B (en) * 2020-11-24 2023-06-16 深兰科技(上海)有限公司 Positioning failure detection method and device, storage medium and electronic equipment
CN112956961B (en) * 2021-03-19 2022-08-23 北京小狗吸尘器集团股份有限公司 Sweeping robot, repositioning method and repositioning device thereof, and storage medium

Also Published As

Publication number Publication date
CN113558524A (en) 2021-10-29

Similar Documents

Publication Publication Date Title
CN109509210B (en) Obstacle tracking method and device
CN109579849B (en) Robot positioning method, robot positioning device, robot and computer storage medium
EP3974778B1 (en) Method and apparatus for updating working map of mobile robot, and storage medium
CN110675307A (en) Implementation method of 3D sparse point cloud to 2D grid map based on VSLAM
CN108332750A (en) Robot localization method and terminal device
CN108638062A (en) Robot localization method, apparatus, positioning device and storage medium
CN110433467B (en) Operation method and device of table tennis ball picking robot based on binocular vision and ant colony algorithm
CN111521184A (en) Map building method, device and system of sweeping robot
CN111428578B (en) Self-body and positioning method and device thereof
JP2024509690A (en) Method and apparatus for constructing three-dimensional maps
CN113768419B (en) Method and device for determining sweeping direction of sweeper and sweeper
CN114549738A (en) Unmanned vehicle indoor real-time dense point cloud reconstruction method, system, equipment and medium
CN106292656A (en) A kind of environmental modeling method and device
CN111679664A (en) Three-dimensional map construction method based on depth camera and sweeping robot
CN112956961B (en) Sweeping robot, repositioning method and repositioning device thereof, and storage medium
CN112269386A (en) Method and device for repositioning symmetric environment and robot
CN115326051A (en) Positioning method and device based on dynamic scene, robot and medium
CN114740867A (en) Intelligent obstacle avoidance method and device based on binocular vision, robot and medium
CN113558524B (en) Sweeping robot and method and device for repositioning lifted sweeping robot
CN112284387A (en) Positioning method for cleaning device, and storage medium
CN113440054B (en) Method and device for determining range of charging base of sweeping robot
CN115019167A (en) Fusion positioning method, system, equipment and storage medium based on mobile terminal
Heredia et al. Fast and robust feature matching for rgb-d based localization
CN114777761A (en) Cleaning machine and map construction method
CN114674320A (en) Particle filter-based positioning method, system, equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant