US20220082391A1 - Map creation method for mobile robot and path planning method based on the map - Google Patents
Map creation method for mobile robot and path planning method based on the map Download PDFInfo
- Publication number
- US20220082391A1 US20220082391A1 US17/533,087 US202117533087A US2022082391A1 US 20220082391 A1 US20220082391 A1 US 20220082391A1 US 202117533087 A US202117533087 A US 202117533087A US 2022082391 A1 US2022082391 A1 US 2022082391A1
- Authority
- US
- United States
- Prior art keywords
- point
- mobile robot
- coordinates
- robot
- odometer
- 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.)
- Abandoned
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000004140 cleaning Methods 0.000 description 61
- 238000010586 diagram Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 230000007547 defect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- VJYFKVYYMZPMAB-UHFFFAOYSA-N ethoprophos Chemical compound CCCSP(=O)(OCC)SCCC VJYFKVYYMZPMAB-UHFFFAOYSA-N 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000009182 swimming Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
- G01C21/32—Structuring or formatting of map data
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3848—Data obtained from both position sensors and additional sensors
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
- G01C21/183—Compensation of inertial measurements, e.g. for temperature effects
- G01C21/188—Compensation of inertial measurements, e.g. for temperature effects for accumulated errors, e.g. by coupling inertial systems with absolute positioning systems
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
- G01C21/206—Instruments for performing navigational calculations specially adapted for indoor navigation
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0219—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/027—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
-
- G05D2201/0203—
Definitions
- the present disclosure relates to the field of mobile robots, and particularly to map creation and path planning of a mobile robot based on an inertial navigation system.
- the service robots on the market can automatically complete specific work in specific areas under the condition of unattended, which brings convenience to people and has a promising market prospect.
- cleaning robots are developing rapidly with huge market demand.
- Most of the existing cleaning robots are based on the inertial navigation system for positioning, map creation and navigation.
- the errors of the components (gyroscope and odometer) of the inertial navigation system will gradually accumulate with the increase of the working time, which results in large errors, it makes the cleaning robot have the defects of inaccurate positioning and the map information have a larger difference from the reality, as well as causes path planning not being able to be implemented, etc.
- One of the objects of the present disclosure is to overcome the defects in the background technology and provide a map creation method of a mobile robot, the specific solution being as follows:
- a map creation method of a mobile robot the mobile robot including an odometer, a gyroscope and a camera, comprises the following steps: S 1 : establishing a rectangular coordinate system in a working area of the mobile robot; S 2 : the mobile robot moving in a character shape in the working area; S 3 : obtaining a key frame picture of the mobile robot at a point Pi and saving the picture and coordinates of the point Pi; S 4 : obtaining a picture of the mobile robot at a point P′i, wherein an abscissa or ordinate of the point P′i is the same as that of the point Pi; S 5 : according to an Oriented FAST and Rotated BRIEF (ORB) algorithm, extracting and matching features of the pictures acquired at the point Pi and the point P′i; S 6 : calibrating coordinates of the mobile robot at the point P′i and data of the odometer and/or the gyroscope according to the matching result and saving them; S 7 : repeating
- the step S 2 includes the following sub-steps: S 201 : the mobile robot moving in a straight line in a positive direction of an X axis; S 202 : determining whether the mobile robot encounters an obstacle, if so, entering step 203 , if not, entering step S 206 ; S 203 : the mobile robot moving along the obstacle in a positive direction of a Y axis; S 204 : determining whether a coordinate change of the mobile robot on the Y axis is greater than a threshold value M, if so, entering step S 208 , if not, entering step S 205 ; S 205 : determining whether a Y axis coordinate of the mobile robot is the same as that in step S 201 , if so, returning to step S 201 , if not, returning to step S 203 ; S 206 : determining whether a straight-line travel distance of the mobile robot is greater than a threshold value N, if
- step S 214 the mobile robot, after shifting a distance M in a straight line in the positive direction of the Y axis, returning to step S 201 .
- the mobile robot is a covered mobile robot, with a range of M as 0.2 m to 0.3 m and the range of N as 6 m to 8 m.
- the mobile robot saves the key frame picture and coordinates of its corresponding point Pi at every predetermined distance interval.
- the minimum distance between adjacent key frame picture acquisition points Pi is 0.6 m.
- the distance between the point Pi and the point P′i having the same X coordinate or Y coordinate is 0.3 m to 0.6 m.
- the picture is preferably a ceiling picture or a ground picture of the working environment of the mobile robot.
- the second object of the present disclosure is to overcome the defects in the background technology and provide a path planning method for a mobile robot.
- the specific solution is as follows:
- a path planning method for a mobile robot which is based on a map created by the above map creation method, comprises the following steps: S′ 1 : the mobile robot moving from an initial position to a point Pi or point P′i; S′ 2 : calibrating data of the odometer and/or the gyroscope at the point Pi or point P′i; S′ 3 : repeating steps S 1 ′ to step S′ 2 until arriving at a final target point.
- the step S 1 includes the following sub-steps: S′ 11 : obtaining coordinates of the initial position and coordinates of the final target point of the mobile robot; S′ 12 : determining whether there is a point Pi or point P′i in a rectangular area composed of the coordinates of the initial position and the coordinates of the final target point, if yes, entering step S′ 13 , if not, entering step S′ 14 ; S′ 13 : the mobile robot moving to the point Pi or point P′i closest to the initial position in the rectangular area, and then entering step S′ 15 ; S′ 14 : the mobile robot moving to the point Pi or point P′i closest to the initial position in the working area, and then entering step S′ 15 ; S′ 15 : determining whether there is the point Pi or point P′i in the rectangular area composed of the coordinates of a current position and the final target point, if yes, returning to step S′ 13 , if not moving to the final target point.
- the step S′ 2 includes the following sub-steps: S′ 21 : acquiring a picture of the mobile robot at the point Pi or point P′i; S′ 22 : extracting features of the picture according to an ORB algorithm and matching features with a picture saved at the point Pi or point P′i; S′ 23 : calibrating the data of the odometer and/or the gyroscope of the mobile robot at the point Pi or P′i according to the matching result.
- the final target point includes an area the mobile robot does not pass through, a position of a charging base and a starting point of the mobile robot.
- the present disclosure calibrates the coordinates and data of the odometer and/or the gyroscope of a mobile robot in the process of map creation through image matching technology (ORB algorithm), reduces the accumulated errors of coordinates and angles, and improves the accuracy of map.
- ORB algorithm image matching technology
- FIG. 1 is an overall flow chart of a map creation method of a mobile robot of the present disclosure
- FIG. 2 is a flow chart of an optimized solution of step S 2 in FIG. 1 ;
- FIG. 3 is a flow chart of a path planning method of a mobile robot of the present disclosure
- FIG. 4 is a flow chart of an optimized solution of step S 1 ′ in FIG. 3 ;
- FIG. 5 is a flow chart of an optimized solution of step S′ 2 in FIG. 3 ;
- FIG. 6 is a map creation diagram of embodiment 1 of the present disclosure.
- FIG. 7 is a path planning graph of the mobile robot based on the map in FIG. 6 ;
- FIG. 8 is a map creation diagram of embodiment 2 of the present disclosure.
- FIG. 9 is a path planning graph of the mobile robot based on the map in FIG. 8 .
- the mobile robot in the present disclosure is based on an inertial navigation system, including an odometer, a gyroscope, and a camera.
- the odometer is used to obtain the walking distance of the mobile robot
- the gyroscope is used to obtain the walking angle of the mobile robot
- the camera is installed at the bottom or top of the mobile robot to obtain the picture information of the environment.
- the mobile robot in the present disclosure is especially a covered robot working in a designated closed area, such as a security patrol robot or a cleaning robot working in an indoor environment, a mowing robot working in a specific lawn area and a cleaning robot cleaning the swimming pool, etc.
- the mobile robot also includes a power module, a walking module, a sensor module, a control module, a storage module, and a function module.
- the power module is a rechargeable battery, which is used to provide power for the mobile robot when it works;
- the walking module includes a driving motor and a walking wheel, which is used to make the mobile robot move in the working area;
- the sensor module is used to receive the environmental information of the working area and feed it back to the control module;
- the control module is used to control the movement of the mobile robot according to the information fed back by the sensor module;
- the function module refers to specific functions of the mobile robot, such as a cleaning module of a cleaning robot, a rotating knife seat of a mowing robot, etc.
- FIG. 1 shows a flow chart of the map creation of the mobile robot of the present disclosure.
- a rectangular coordinate system composed of an abscissa (X) and an ordinate (Y) is established in the working area of the mobile robot, and the starting point of work, a corner of the working area and the charging base are preferred to be the origin.
- the mobile robot starts to walk in a straight line in a certain direction until it meets an obstacle or the boundary of the working area or walks a predetermined distance, then walks in a straight line a certain distance in a direction perpendicular to the above direction, then walks in the reverse direction, and then repeats the above process until the coverage of the working area is completed.
- a rectangular coordinate system is established using the position when the mobile robot starts to work as the origin, the direction in which the mobile robot starts to walk as a positive direction of the X axis, and the direction perpendicular and to the left side of the moving direction of the mobile robot as a positive direction of the Y axis, and the character shaped walking in the working area is completed according to the following steps in turn: S 201 : the mobile robot moving in a straight line in the positive direction of the X axis; S 202 : determining whether the mobile robot encounters an obstacle, if so, entering step 203 , if not, entering step S 206 ; S 203 : the mobile robot moving along the obstacle in the positive direction of the Y axis, it should be noted that walking along the obstacle in the positive direction of the Y axis here means that the mobile robot will walk in the positive direction of the Y axis (i.e.
- the mobile robot may walk in the negative direction of the Y axis (i.e. the decreasing direction of Y axis coordinate) after walking along the obstacle for a period of time;
- S 204 determining whether a coordinate change of the mobile robot on the Y axis is greater than a threshold value M, if so, entering step S 208 , if not, entering step S 205 ;
- S 205 determining whether the Y axis coordinate of the mobile robot is the same as that in step S 201 , if so, returning to step S 201 , if not, returning to step S 203 ;
- S 206 determining whether a straight-line travel distance of the mobile robot is greater than a threshold value N, if so, entering step S 207 , if not, returning to step S 201 ;
- S 207 the mobile robot, after shifting a distance M in a straight line
- the mobile ground robot starts to move, and in the process of walking, it constantly takes pictures of the ceiling or the ground through the camera and carries out feature matching. For example, at the point Pi (i is a positive integer), it screens out the key frame pictures with obvious features, saves the key frame pictures and stores the coordinates of the point Pi in the rectangular coordinate system. At this time, as the mobile robot just starts to move and the data of its odometer and gyroscope are accurate, the coordinates of the Pi point read from the odometer and the gyroscope can be saved directly. Then the mobile robot continues to walk and continuously takes pictures of the ceiling or the ground through the camera and carries out feature matching.
- the key frame with obvious features is screened again, it is to be determined whether the distance between the coordinates of the key frame and the coordinates of the Pi of the stored key frame picture (including the X axis or Y axis direction) is greater than a predetermined value (such as 0.6 m). If so, the key frame picture and corresponding coordinates of this point are saved. Otherwise, the saving of this point is abandoned (because saving too many key frames and the frequent calibration affects the efficiency of the mobile robot). Accordingly, the key frame picture and the coordinates of the picture acquisition point Pi in the working area are saved.
- a predetermined value such as 0.6 m
- the mobile robot Since the mobile robot moves in a character shape, the mobile robot will move in a reverse direction after shifting a certain distance when encountering an obstacle, a working area boundary or walking a predetermined distance, and will pass through the point P′i having the same abscissa or ordinate as the point Pi and obtain a picture of the mobile robot at the point P′i.
- the distance between the point P′i and the point Pi is within a certain range, such as 0.3 m to 0.6 m, so as to take into account the working efficiency and matching accuracy of the mobile robot.
- the abscissa or ordinate of the point P′i and the point Pi being the same makes the two pictures match well at a certain angle, which can improve the matching efficiency and reduce mismatching.
- Feature extraction is performed to the pictures obtained at the point Pi and point P′i through the ORB algorithm and then feature matching is performed to the features extracted from the two pictures.
- the actual physical offset and angle offset are calculated according to the image pixel offset obtained from the point Pi and the point P′i, and the result is fed back to the mobile robot. Then the mobile robot calibrates the coordinates of the point P′i and the measurement data of the odometer and the gyroscope according to the result.
- FIG. 3 shows a path planning flow chart of the mobile robot of the method of the present disclosure, and the path planning method of the mobile robot is based on the map created by the above map creation method.
- the step S′ 1 includes the following sub-steps: S′ 11 : obtaining the coordinates of the initial position and the coordinates of the final target point of the mobile robot; S′ 12 : determining whether there is a point Pi or point P′i in the rectangular area composed of the coordinates of the initial position and the final target point, if yes, entering step S′ 13 , if not, entering step S′ 14 ; S′ 13 : the mobile robot moving to the point Pi or point P′i closest to the initial position in the rectangular area, and then entering step S′ 15 ; S′ 14 : the mobile robot moving to the point Pi or point P′i closest to the initial position in the working area, and then entering step S′ 15 ; S′ 15 : determining whether there is the point Pi or point P′i in the rectangular area composed of coordinates of a current position and the coordinates of the final target point, if yes, returning to step S′ 13 , if not moving to the
- the step S′ 2 includes the following sub-steps: S′ 21 : acquiring a picture of the mobile robot at the point Pi or point P′i; S′ 22 : extracting features of the picture according to the ORB algorithm and matching features with a picture saved at the point Pi or point P′i; S′ 23 : calibrating the data of the odometer and/or the gyroscope of the mobile robot at the point Pi or P′i according to the matching result.
- the odometer and gyroscope are calibrated at least once at the point Pi or point P′i, the accumulated error of the odometer and gyroscope is eliminated to a certain extent, and the success rate of the mobile robot arriving at the final target point is improved.
- the final target point of this method includes an area that the mobile robot does not pass through, a position of a charging base and a starting point of the mobile robot.
- the mobile robot in this embodiment is illustrated by taking a cleaning robot as an example.
- FIG. 6 and FIG. 7 respectively show the map creation diagram and path planning diagram of the cleaning robot in a rectangular barrier-free space.
- a rectangular coordinate system is established using the starting point A 1 of the cleaning robot as the origin, the forward direction of the cleaning robot as the positive direction of the X axis, and the direction perpendicular to the left side of the cleaning robot as the positive direction of the Y axis.
- the cleaning robot moves forward to the point P 1 and the point P 2 successively, selects key frame pictures with obvious features, saves the pictures and coordinates of the point P 1 and the point P 2 (the coordinates of the point P 1 and the point P 2 are directly obtained by the odometer and the gyroscope, and because the cleaning robot just starts to walk, the data of the odometer and the gyroscope are accurate), with the distance between the abscissas of the point P 1 and the point P 2 being greater than that of a predetermined value (e.g. 0.6 m).
- a predetermined value e.g. 0.6 m
- the key frame picture with obvious features is also screened out.
- the distance between the point P′ and the saved point P 2 is less than 0.6 m, saving the key frame picture at the point P′ and the coordinates of the point P′ is abandoned.
- the cleaning robot continues to move, and at the point P 3 saves the key frame picture and the coordinates of the point P 3 , then moves to the point a to meet the boundary of the working area, and then moves a predetermined distance M in the positive direction of the Y axis to the point b, where M is the body width of the cleaning robot (0.25 m in this embodiment), and then walks in the negative direction of the X axis, passing through points having the same abscissa X as that of the point P 3 , point P 2 , and point P 1 successively.
- the cleaning robot continues to move to the point c to meet the boundary of the working area, then moves a predetermined distance M in the positive direction of the Y axis to the point d, then moves in the positive direction of the X axis, and then passes through points having the same abscissa X as the point P 1 , the point P 2 , and the point P 3 in turn.
- the cleaning robot has shifted two Ms, i.e., 0.5 m, which is greater than the preset value (0.4 m), so the cleaning robot obtains pictures of the corresponding points (point P′ 1 , point P′ 2 , point P′ 3 ) and performs feature extraction and matching through the ORB algorithm on the key frame pictures saved at the points (point P 1 , point P 2 , point P 3 ) having the same abscissa X, and then calibrates the coordinates of the point P′ 1 , the point P′ 2 , the point P′ 3 and the data of the odometer and/or the gyroscope at the point P′ 1 , the point P′ 2 , the point P′ 3 according to the matching result.
- the cleaning robot continues to move in the positive direction of the X axis to the boundary of the working area, Then the key frame pictures with obvious features and their corresponding points (P 4 , P 5 , P 6 , P 7 ) are screened out and saved. Then calibrate the data of the odometer and the gyroscope and the coordinates at the corresponding points (P′ 4 , P′ 5 , P′ 6 , P′ 7 ).
- the cleaning robot moves to the point A 2 .
- the map creation of the rectangular area is completed.
- the cleaning robot starts to look for the final target point to return. In this embodiment, it is the starting point A 1 of the cleaning robot. Since there is no point Pi or point P′i in the rectangular area composed of the coordinates of the point A 1 and the point A 2 , the cleaning robot will move to the point P′ 7 , and then at the point P′ 7 calibrate the data of the odometer and/or the gyroscope; then the cleaning robot will move from the point P′ 7 to the final target point A 1 .
- the cleaning robot Since the point P 7 is in the rectangular area (rectangular box made of dotted lines) composed of coordinates of the point P′ 7 and the point A 1 , the cleaning robot will move to the point P 7 , and then at the point P 7 calibrates the data of the odometer and/or the gyroscope; then the cleaning robot will move from the point P 7 to the final target point A 1 . Since there is no point Pi or point P′i in the rectangular area composed of the coordinates of the point P 7 and the point A 1 , the cleaning robot will move directly from the point P 7 to the final target point A 1 , and its walking path is shown by the arrow in the figure.
- FIG. 8 and FIG. 9 respectively show the map creation diagram and path planning diagram of the cleaning robot in a rectangular working area including a rectangular obstacle B 1 and an elliptical obstacle B 2 .
- a rectangular coordinate system is established using the starting point A 1 of the cleaning robot as the origin, the forward direction of the cleaning robot as the positive direction of the X axis, and the direction perpendicular to the left side of the cleaning robot as the positive direction of the Y axis.
- the cleaning robot moves forward to the point P 1 and the point P 2 successively, selects key frame pictures with obvious features and saves the pictures and coordinates of the point P 1 and the point P 2 (the coordinates of the point P 1 and the point P 2 are directly obtained by the odometer and the gyroscope, and because the cleaning robot just starts to walk, the data of the odometer and the gyroscope are accurate), in which the distance between the abscissas of the point P 1 and the point P 2 is greater than that of a predetermined value (e.g. 0.6 m).
- a predetermined value e.g. 0.6 m
- the cleaning robot When the cleaning robot moves to point a, it encounters the obstacle B 1 , and then walks a distance M (0.25 m in this embodiment) in the positive direction of the Y axis to reach the point b, and then walks in the reverse direction of the X axis, passing through points having the same abscissa X as the point P 2 and the point P 1 successively. Since the distance between these points (on the b-c line) and the corresponding points (on the A 1 - a line) is less than a preset value (0.4 m in this embodiment), it is not necessary to save and calibrate the coordinates or pictures of the relevant points (too dense picture saving and calibration will affect the efficiency of the cleaning robot).
- the cleaning robot continues to move to the point c to meet the boundary of the working area, then moves in the positive direction of the Y axis a predetermined distance M to the point d, then moves in the positive direction of the X axis, and then passes through points having the same abscissa X as the point P 1 and the point P 2 in turn.
- the cleaning robot since the cleaning robot has shifted two Ms, i.e.
- the cleaning robot obtains pictures of the corresponding points (point P′ 1 and point P′ 2 ) and performs feature extraction and matching through the ORB algorithm on the key frame pictures saved at the points (point P 1 and point P 2 ) having the same abscissa X, and then calibrates the coordinates of the point P′ 1 and the point P′ 2 and the data of the odometer and/or the gyroscope at the point P′ 1 and the point P′ 2 according to the matching result.
- the cleaning robot moves to the point e, it encounters the obstacle B 1 again, and then moves around the obstacle B 1 to the point f.
- the cleaning robot Since the distance in the Y axis direction between the point e and the point f is less than M (0.25 m), the cleaning robot will not turn to walk in the negative direction of the X-axis, and continues to move along the obstacle B 1 until it reaches the point h.
- the cleaning robot stops moving along the obstacle B 1 and moves in the positive direction of the X axis; when the cleaning robot moves to the point i, because the distance between the point d and the point i reaches 6 m (N in this embodiment is 6 m), the cleaning robot will move in the negative direction of the Y axis a distance M to reach the point j and then move in the negative direction of the X axis.
- the cleaning robot will automatically shift a distance M in the positive direction of the Y axis after moving a predetermined distance along the X axis, and then walk in the reverse direction along the X axis;
- the cleaning robot moves to the point A 2 , part of the map creation of the rectangular area is complete. At this time, the cleaning robot starts to look for the final target point to return. In this embodiment, it is the point A 3 of the area that the cleaning robot has not passed through. Since the rectangular area (dotted box in the figure) composed of the coordinates of the point A 1 and the point A 3 contains points P 8 , P 9 , P 10 , P 11 , and P 12 , the cleaning robot will move to the point P 12 closest to the point A 2 and then calibrate the data of the odometer and/or the gyroscope at the point P 12 .
- the cleaning robot passes through the points P 11 , P 10 , P 9 , and P 8 successively, and then calibrates the data of the odometer and/or the gyroscope.
- the cleaning robot reaches the point P 8 , since there is no point Pi or point P′i in the rectangular area composed of the point P 8 and the final target point A 3 , the cleaning robot will move directly from the point P 8 to the final target point A 3 , and its walking path is shown by the arrow in the figure.
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Theoretical Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Electromagnetism (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
Description
- This application a divisional of U.S. patent application Ser. No. 16/712,977, entitled “MAP CREATION METHOD for MOBILE ROBOT AND PATH PLANNING METHOD BASED ON THE MAP,” filed on Dec. 12, 20219, which is a continuation of International Application No. PCT/CN2018/073930, filed on Jan. 24, 2018, entitled “MAP CREATION METHOD FOR MOBILE ROBOT AND PATH PLANNING METHOD BASED ON THE MAP,” which claims the benefit of priority to Chinese Patent Application No. 201710713711.7 filed on Aug. 18, 2017, all of which are hereby incorporated by reference in their entireties.
- The present disclosure relates to the field of mobile robots, and particularly to map creation and path planning of a mobile robot based on an inertial navigation system.
- At present, the service robots on the market can automatically complete specific work in specific areas under the condition of unattended, which brings convenience to people and has a promising market prospect.
- As a representative of service robots, cleaning robots are developing rapidly with huge market demand. Most of the existing cleaning robots are based on the inertial navigation system for positioning, map creation and navigation. However, since the errors of the components (gyroscope and odometer) of the inertial navigation system will gradually accumulate with the increase of the working time, which results in large errors, it makes the cleaning robot have the defects of inaccurate positioning and the map information have a larger difference from the reality, as well as causes path planning not being able to be implemented, etc.
- In addition, the complexity of the working environment of the cleaning robot, the fluctuation of the friction coefficient between the walking mechanism and the work, and the error caused by sliding (or being trapped) of the walking mechanism will also affect the accuracy of the inertial navigation system.
- One of the objects of the present disclosure is to overcome the defects in the background technology and provide a map creation method of a mobile robot, the specific solution being as follows:
- a map creation method of a mobile robot, the mobile robot including an odometer, a gyroscope and a camera, comprises the following steps: S1: establishing a rectangular coordinate system in a working area of the mobile robot; S2: the mobile robot moving in a character shape in the working area; S3: obtaining a key frame picture of the mobile robot at a point Pi and saving the picture and coordinates of the point Pi; S4: obtaining a picture of the mobile robot at a point P′i, wherein an abscissa or ordinate of the point P′i is the same as that of the point Pi; S5: according to an Oriented FAST and Rotated BRIEF (ORB) algorithm, extracting and matching features of the pictures acquired at the point Pi and the point P′i; S6: calibrating coordinates of the mobile robot at the point P′i and data of the odometer and/or the gyroscope according to the matching result and saving them; S7: repeating steps S3 to S6 until the map creation in the working area is complete.
- In a preferred embodiment of embodiments of the present disclosure, the step S2 includes the following sub-steps: S201: the mobile robot moving in a straight line in a positive direction of an X axis; S202: determining whether the mobile robot encounters an obstacle, if so, entering
step 203, if not, entering step S206; S203: the mobile robot moving along the obstacle in a positive direction of a Y axis; S204: determining whether a coordinate change of the mobile robot on the Y axis is greater than a threshold value M, if so, entering step S208, if not, entering step S205; S205: determining whether a Y axis coordinate of the mobile robot is the same as that in step S201, if so, returning to step S201, if not, returning to step S203; S206: determining whether a straight-line travel distance of the mobile robot is greater than a threshold value N, if so, entering step S207, if not, returning to step S201; S207: the mobile robot, after shifting a distance M in a straight line in the positive direction of the Y axis, entering step S208; S208: the mobile robot moving in a straight line in a negative direction of the X axis; S209: determining whether the mobile robot encounters an obstacle, if so, entering step 210, if not, entering step S213; S210: the mobile robot moving along the obstacle in the positive direction of the Y axis; S211: determining whether a coordinate change of the mobile robot on the Y axis is greater than the threshold value M, if so, returning to step S201, if not, entering step S212; S212: determining whether the Y axis coordinate of the mobile robot is the same as that in step S208, if so, returning to step S208, if not, returning to step S210; S213: determining whether a straight-line travel distance of the mobile robot is greater than a threshold value N, if so, entering step S214, if not, returning to step S208; - S214: the mobile robot, after shifting a distance M in a straight line in the positive direction of the Y axis, returning to step S201.
- Further, in one specific embodiment of the present disclosure, the mobile robot is a covered mobile robot, with a range of M as 0.2 m to 0.3 m and the range of N as 6 m to 8 m.
- Further, in an optimized solution of the present disclosure, in the step S3, the mobile robot saves the key frame picture and coordinates of its corresponding point Pi at every predetermined distance interval.
- Further, the minimum distance between adjacent key frame picture acquisition points Pi is 0.6 m.
- Further, the distance between the point Pi and the point P′i having the same X coordinate or Y coordinate is 0.3 m to 0.6 m.
- Further, the picture is preferably a ceiling picture or a ground picture of the working environment of the mobile robot.
- The second object of the present disclosure is to overcome the defects in the background technology and provide a path planning method for a mobile robot. The specific solution is as follows:
- A path planning method for a mobile robot, which is based on a map created by the above map creation method, comprises the following steps: S′1: the mobile robot moving from an initial position to a point Pi or point P′i; S′2: calibrating data of the odometer and/or the gyroscope at the point Pi or point P′i; S′3: repeating steps S1′ to step S′2 until arriving at a final target point.
- Further, in a specific embodiment of the present disclosure, the step S1 includes the following sub-steps: S′11: obtaining coordinates of the initial position and coordinates of the final target point of the mobile robot; S′12: determining whether there is a point Pi or point P′i in a rectangular area composed of the coordinates of the initial position and the coordinates of the final target point, if yes, entering step S′13, if not, entering step S′14; S′13: the mobile robot moving to the point Pi or point P′i closest to the initial position in the rectangular area, and then entering step S′15; S′14: the mobile robot moving to the point Pi or point P′i closest to the initial position in the working area, and then entering step S′15; S′15: determining whether there is the point Pi or point P′i in the rectangular area composed of the coordinates of a current position and the final target point, if yes, returning to step S′13, if not moving to the final target point.
- Further, in a specific embodiment of the present disclosure, the step S′2 includes the following sub-steps: S′21: acquiring a picture of the mobile robot at the point Pi or point P′i; S′22: extracting features of the picture according to an ORB algorithm and matching features with a picture saved at the point Pi or point P′i; S′23: calibrating the data of the odometer and/or the gyroscope of the mobile robot at the point Pi or P′i according to the matching result.
- Further, the final target point includes an area the mobile robot does not pass through, a position of a charging base and a starting point of the mobile robot.
- Compared with the prior art, the technical solution of the present disclosure has the following beneficial effects:
- The present disclosure calibrates the coordinates and data of the odometer and/or the gyroscope of a mobile robot in the process of map creation through image matching technology (ORB algorithm), reduces the accumulated errors of coordinates and angles, and improves the accuracy of map.
- In order to more clearly explain the technical solution of the embodiment of the present disclosure, the following will be a brief introduction of the drawings to be used in the embodiment. It is obvious that the drawings in the following description are some embodiments of the present disclosure, and for a person having ordinary skill in the art, other drawings can also be obtained based on these drawings without involving inventive skills.
-
FIG. 1 is an overall flow chart of a map creation method of a mobile robot of the present disclosure; -
FIG. 2 is a flow chart of an optimized solution of step S2 inFIG. 1 ; -
FIG. 3 is a flow chart of a path planning method of a mobile robot of the present disclosure; -
FIG. 4 is a flow chart of an optimized solution of step S1′ inFIG. 3 ; -
FIG. 5 is a flow chart of an optimized solution of step S′2 inFIG. 3 ; -
FIG. 6 is a map creation diagram ofembodiment 1 of the present disclosure; -
FIG. 7 is a path planning graph of the mobile robot based on the map inFIG. 6 ; -
FIG. 8 is a map creation diagram ofembodiment 2 of the present disclosure; and -
FIG. 9 is a path planning graph of the mobile robot based on the map inFIG. 8 . - A clear and complete description of the technical solution of the present disclosure will be provided in conjunction with the drawings and a specific embodiment. It is clear that the embodiment described here is only a portion of the embodiments of the present disclosure, not all embodiments. Based on the specific embodiment described in the present disclosure, all other embodiments obtained by a person having ordinary skill in the art without inventive skills shall fall within the scope of protection of the present disclosure.
- The mobile robot in the present disclosure is based on an inertial navigation system, including an odometer, a gyroscope, and a camera. Wherein the odometer is used to obtain the walking distance of the mobile robot, the gyroscope is used to obtain the walking angle of the mobile robot, and the camera is installed at the bottom or top of the mobile robot to obtain the picture information of the environment.
- The mobile robot in the present disclosure is especially a covered robot working in a designated closed area, such as a security patrol robot or a cleaning robot working in an indoor environment, a mowing robot working in a specific lawn area and a cleaning robot cleaning the swimming pool, etc.
- In addition, the mobile robot also includes a power module, a walking module, a sensor module, a control module, a storage module, and a function module. Wherein, the power module is a rechargeable battery, which is used to provide power for the mobile robot when it works; the walking module includes a driving motor and a walking wheel, which is used to make the mobile robot move in the working area; the sensor module is used to receive the environmental information of the working area and feed it back to the control module; the control module is used to control the movement of the mobile robot according to the information fed back by the sensor module; the function module refers to specific functions of the mobile robot, such as a cleaning module of a cleaning robot, a rotating knife seat of a mowing robot, etc.
-
FIG. 1 shows a flow chart of the map creation of the mobile robot of the present disclosure. - S1: establishing a rectangular coordinate system in a working area of the mobile robot.
- Namely, a rectangular coordinate system composed of an abscissa (X) and an ordinate (Y) is established in the working area of the mobile robot, and the starting point of work, a corner of the working area and the charging base are preferred to be the origin.
-
- Namely, the mobile robot starts to walk in a straight line in a certain direction until it meets an obstacle or the boundary of the working area or walks a predetermined distance, then walks in a straight line a certain distance in a direction perpendicular to the above direction, then walks in the reverse direction, and then repeats the above process until the coverage of the working area is completed.
- As shown in
FIG. 2 , in the optimized solution of this step, a rectangular coordinate system is established using the position when the mobile robot starts to work as the origin, the direction in which the mobile robot starts to walk as a positive direction of the X axis, and the direction perpendicular and to the left side of the moving direction of the mobile robot as a positive direction of the Y axis, and the character shaped walking in the working area is completed according to the following steps in turn: S201: the mobile robot moving in a straight line in the positive direction of the X axis; S202: determining whether the mobile robot encounters an obstacle, if so, enteringstep 203, if not, entering step S206; S203: the mobile robot moving along the obstacle in the positive direction of the Y axis, it should be noted that walking along the obstacle in the positive direction of the Y axis here means that the mobile robot will walk in the positive direction of the Y axis (i.e. the increasing direction of Y axis coordinate) when encountering the obstacle, if the obstacle is an arc or convex structure, the mobile robot may walk in the negative direction of the Y axis (i.e. the decreasing direction of Y axis coordinate) after walking along the obstacle for a period of time; S204: determining whether a coordinate change of the mobile robot on the Y axis is greater than a threshold value M, if so, entering step S208, if not, entering step S205; S205: determining whether the Y axis coordinate of the mobile robot is the same as that in step S201, if so, returning to step S201, if not, returning to step S203; S206: determining whether a straight-line travel distance of the mobile robot is greater than a threshold value N, if so, entering step S207, if not, returning to step S201; S207: the mobile robot, after shifting a distance M in a straight line in the positive direction of the Y axis, entering step S208; S208: the mobile robot moving in a straight line in the negative direction of the X axis; S209: determining whether the mobile robot encounters an obstacle, if so, entering step 210, if not, entering step S213; S210: the mobile robot moving along the obstacle in the positive direction of the Y axis; S211: determining whether a coordinate change of the mobile robot on the Y axis is greater than the threshold value M, if so, returning to step S201, if not, entering step S212; S212: determining whether the Y axis coordinate of the mobile robot is the same as that in step S208, if so, returning to step S208, if not, returning to step S210; S213: determining whether a straight-line travel distance of the mobile robot is greater than the threshold value N, if so, entering Step S214, if not, returning to step S208; S214: the mobile robot, after shifting a distance M in a straight line in the positive direction of the Y axis, returning to step S201. - S3: obtaining a key frame picture of the mobile robot at a point Pi and saving the picture and coordinates of the point Pi.
- The mobile ground robot starts to move, and in the process of walking, it constantly takes pictures of the ceiling or the ground through the camera and carries out feature matching. For example, at the point Pi (i is a positive integer), it screens out the key frame pictures with obvious features, saves the key frame pictures and stores the coordinates of the point Pi in the rectangular coordinate system. At this time, as the mobile robot just starts to move and the data of its odometer and gyroscope are accurate, the coordinates of the Pi point read from the odometer and the gyroscope can be saved directly. Then the mobile robot continues to walk and continuously takes pictures of the ceiling or the ground through the camera and carries out feature matching. If the key frame with obvious features is screened again, it is to be determined whether the distance between the coordinates of the key frame and the coordinates of the Pi of the stored key frame picture (including the X axis or Y axis direction) is greater than a predetermined value (such as 0.6 m). If so, the key frame picture and corresponding coordinates of this point are saved. Otherwise, the saving of this point is abandoned (because saving too many key frames and the frequent calibration affects the efficiency of the mobile robot). Accordingly, the key frame picture and the coordinates of the picture acquisition point Pi in the working area are saved.
- S4: obtaining a picture of the mobile robot at a point P′i, wherein an abscissa or ordinate of the point P′i is the same as that of the point Pi.
- Since the mobile robot moves in a character shape, the mobile robot will move in a reverse direction after shifting a certain distance when encountering an obstacle, a working area boundary or walking a predetermined distance, and will pass through the point P′i having the same abscissa or ordinate as the point Pi and obtain a picture of the mobile robot at the point P′i. Preferably, the distance between the point P′i and the point Pi is within a certain range, such as 0.3 m to 0.6 m, so as to take into account the working efficiency and matching accuracy of the mobile robot. Wherein, the abscissa or ordinate of the point P′i and the point Pi being the same makes the two pictures match well at a certain angle, which can improve the matching efficiency and reduce mismatching.
- S5: according to an ORB algorithm, extracting and matching features of the pictures acquired at the point Pi and the point P′i.
- Feature extraction is performed to the pictures obtained at the point Pi and point P′i through the ORB algorithm and then feature matching is performed to the features extracted from the two pictures.
- S6: calibrating the coordinates of the mobile robot at the point P′i and the data of the odometer and/or the gyroscope according to the matching result and saving them.
- The actual physical offset and angle offset are calculated according to the image pixel offset obtained from the point Pi and the point P′i, and the result is fed back to the mobile robot. Then the mobile robot calibrates the coordinates of the point P′i and the measurement data of the odometer and the gyroscope according to the result.
- S7: repeating steps S3 to S6 until the map creation in the working area is complete.
-
FIG. 3 shows a path planning flow chart of the mobile robot of the method of the present disclosure, and the path planning method of the mobile robot is based on the map created by the above map creation method. - S′1: the mobile robot moving from an initial position to the point Pi or the point P′i.
- As shown in
FIG. 4 , in a specific embodiment of the method of the present disclosure, the step S′1 includes the following sub-steps: S′11: obtaining the coordinates of the initial position and the coordinates of the final target point of the mobile robot; S′12: determining whether there is a point Pi or point P′i in the rectangular area composed of the coordinates of the initial position and the final target point, if yes, entering step S′13, if not, entering step S′14; S′13: the mobile robot moving to the point Pi or point P′i closest to the initial position in the rectangular area, and then entering step S′15; S′14: the mobile robot moving to the point Pi or point P′i closest to the initial position in the working area, and then entering step S′15; S′15: determining whether there is the point Pi or point P′i in the rectangular area composed of coordinates of a current position and the coordinates of the final target point, if yes, returning to step S′13, if not moving to the final target point. - S′2: calibrating data of the odometer and/or the gyroscope at the point Pi or point P′i.
- As shown in
FIG. 5 , in a specific embodiment of the present disclosure, the step S′2 includes the following sub-steps: S′21: acquiring a picture of the mobile robot at the point Pi or point P′i; S′22: extracting features of the picture according to the ORB algorithm and matching features with a picture saved at the point Pi or point P′i; S′23: calibrating the data of the odometer and/or the gyroscope of the mobile robot at the point Pi or P′i according to the matching result. - S′3: repeating steps S′1 to step S′2 until arriving at a final target point.
- Through the above method, before the mobile robot moves to the final target point, the odometer and gyroscope are calibrated at least once at the point Pi or point P′i, the accumulated error of the odometer and gyroscope is eliminated to a certain extent, and the success rate of the mobile robot arriving at the final target point is improved. The final target point of this method includes an area that the mobile robot does not pass through, a position of a charging base and a starting point of the mobile robot.
- The following is described in combination with specific embodiments.
- The mobile robot in this embodiment is illustrated by taking a cleaning robot as an example.
FIG. 6 andFIG. 7 respectively show the map creation diagram and path planning diagram of the cleaning robot in a rectangular barrier-free space. - As shown in
FIG. 6 , a rectangular coordinate system is established using the starting point A1 of the cleaning robot as the origin, the forward direction of the cleaning robot as the positive direction of the X axis, and the direction perpendicular to the left side of the cleaning robot as the positive direction of the Y axis. The cleaning robot moves forward to the point P1 and the point P2 successively, selects key frame pictures with obvious features, saves the pictures and coordinates of the point P1 and the point P2 (the coordinates of the point P1 and the point P2 are directly obtained by the odometer and the gyroscope, and because the cleaning robot just starts to walk, the data of the odometer and the gyroscope are accurate), with the distance between the abscissas of the point P1 and the point P2 being greater than that of a predetermined value (e.g. 0.6 m). - When the cleaning robot moves to the point P′, the key frame picture with obvious features is also screened out. At this time, since the distance between the point P′ and the saved point P2 is less than 0.6 m, saving the key frame picture at the point P′ and the coordinates of the point P′ is abandoned.
- The cleaning robot continues to move, and at the point P3 saves the key frame picture and the coordinates of the point P3, then moves to the point a to meet the boundary of the working area, and then moves a predetermined distance M in the positive direction of the Y axis to the point b, where M is the body width of the cleaning robot (0.25 m in this embodiment), and then walks in the negative direction of the X axis, passing through points having the same abscissa X as that of the point P3, point P2, and point P1 successively. Since the distance between these points (on the b-c line) and the corresponding points (on the A1-a line) is less than a preset value (0.4 m in this embodiment), it is not necessary to save and calibrate the coordinates or pictures of the relevant points (too dense picture saving and calibration will affect the working efficiency of the cleaning robot).
- The cleaning robot continues to move to the point c to meet the boundary of the working area, then moves a predetermined distance M in the positive direction of the Y axis to the point d, then moves in the positive direction of the X axis, and then passes through points having the same abscissa X as the point P1, the point P2, and the point P3 in turn. At this time, the cleaning robot has shifted two Ms, i.e., 0.5 m, which is greater than the preset value (0.4 m), so the cleaning robot obtains pictures of the corresponding points (point P′1, point P′2, point P′3) and performs feature extraction and matching through the ORB algorithm on the key frame pictures saved at the points (point P1, point P2, point P3) having the same abscissa X, and then calibrates the coordinates of the point P′1, the point P′2, the point P′3 and the data of the odometer and/or the gyroscope at the point P′1, the point P′2, the point P′3 according to the matching result. It should be noted that in order to improve efficiency, when the cleaning robot moves along the same straight line, as long as the coordinates of a certain point and the data of the odometer and/or the gyroscope are calibrated successfully, it is not necessary to calibrate other points on the straight line. Namely, when calibration is successful at the point P′1, it is not necessary to calibrate at the point P′2 and the point P′3. When calibration is successful at the point P′2, it is not necessary to calibrate at the point P′3.
- Then, the cleaning robot continues to move in the positive direction of the X axis to the boundary of the working area, Then the key frame pictures with obvious features and their corresponding points (P4, P5, P6, P7) are screened out and saved. Then calibrate the data of the odometer and the gyroscope and the coordinates at the corresponding points (P′4, P′5, P′6, P′7).
- Repeat the above steps until the map creation within the rectangular area is completed.
- As shown in
FIG. 7 , when the cleaning robot moves to the point A2, the map creation of the rectangular area is completed. At this time, the cleaning robot starts to look for the final target point to return. In this embodiment, it is the starting point A1 of the cleaning robot. Since there is no point Pi or point P′i in the rectangular area composed of the coordinates of the point A1 and the point A2, the cleaning robot will move to the point P′7, and then at the point P′7 calibrate the data of the odometer and/or the gyroscope; then the cleaning robot will move from the point P′7 to the final target point A1. Since the point P7 is in the rectangular area (rectangular box made of dotted lines) composed of coordinates of the point P′7 and the point A1, the cleaning robot will move to the point P7, and then at the point P7 calibrates the data of the odometer and/or the gyroscope; then the cleaning robot will move from the point P7 to the final target point A1. Since there is no point Pi or point P′i in the rectangular area composed of the coordinates of the point P7 and the point A1, the cleaning robot will move directly from the point P7 to the final target point A1, and its walking path is shown by the arrow in the figure. - The mobile robot in this embodiment is also illustrated by taking a cleaning robot as an example.
FIG. 8 andFIG. 9 respectively show the map creation diagram and path planning diagram of the cleaning robot in a rectangular working area including a rectangular obstacle B1 and an elliptical obstacle B2. - As shown in
FIG. 8 , a rectangular coordinate system is established using the starting point A1 of the cleaning robot as the origin, the forward direction of the cleaning robot as the positive direction of the X axis, and the direction perpendicular to the left side of the cleaning robot as the positive direction of the Y axis. The cleaning robot moves forward to the point P1 and the point P2 successively, selects key frame pictures with obvious features and saves the pictures and coordinates of the point P1 and the point P2 (the coordinates of the point P1 and the point P2 are directly obtained by the odometer and the gyroscope, and because the cleaning robot just starts to walk, the data of the odometer and the gyroscope are accurate), in which the distance between the abscissas of the point P1 and the point P2 is greater than that of a predetermined value (e.g. 0.6 m). - When the cleaning robot moves to point a, it encounters the obstacle B1, and then walks a distance M (0.25 m in this embodiment) in the positive direction of the Y axis to reach the point b, and then walks in the reverse direction of the X axis, passing through points having the same abscissa X as the point P2 and the point P1 successively. Since the distance between these points (on the b-c line) and the corresponding points (on the A1-a line) is less than a preset value (0.4 m in this embodiment), it is not necessary to save and calibrate the coordinates or pictures of the relevant points (too dense picture saving and calibration will affect the efficiency of the cleaning robot).
- The cleaning robot continues to move to the point c to meet the boundary of the working area, then moves in the positive direction of the Y axis a predetermined distance M to the point d, then moves in the positive direction of the X axis, and then passes through points having the same abscissa X as the point P1 and the point P2 in turn. At this time, since the cleaning robot has shifted two Ms, i.e. 0.5 m, which is greater than the preset value (0.4 m), the cleaning robot obtains pictures of the corresponding points (point P′1 and point P′2) and performs feature extraction and matching through the ORB algorithm on the key frame pictures saved at the points (point P1 and point P2) having the same abscissa X, and then calibrates the coordinates of the point P′1 and the point P′2 and the data of the odometer and/or the gyroscope at the point P′1 and the point P′2 according to the matching result. When the cleaning robot moves to the point e, it encounters the obstacle B1 again, and then moves around the obstacle B1 to the point f. Since the distance in the Y axis direction between the point e and the point f is less than M (0.25 m), the cleaning robot will not turn to walk in the negative direction of the X-axis, and continues to move along the obstacle B1 until it reaches the point h. At this time, since the ordinate of the point h is the same as that of the point d, the cleaning robot stops moving along the obstacle B1 and moves in the positive direction of the X axis; when the cleaning robot moves to the point i, because the distance between the point d and the point i reaches 6 m (N in this embodiment is 6 m), the cleaning robot will move in the negative direction of the Y axis a distance M to reach the point j and then move in the negative direction of the X axis.
- Accordingly, until arriving at the point A2, create a map of an area that the cleaning robot passes through according to the method in
embodiment 1. Then the cleaning robot will move to an area that it has not passed through and create a map as described above until the map creation of the whole working area is completed. - The differences between the present embodiment and
embodiment 1 are as follows: - 1. The cleaning robot will automatically shift a distance M in the positive direction of the Y axis after moving a predetermined distance along the X axis, and then walk in the reverse direction along the X axis;
- 2. After the cleaning robot moves for a predetermined distance, the pictures of key frame picture points Pi and corresponding coordinates will be saved, that is, the distance between adjacent points Pi along the abscissa axis is the same.
- As shown in
FIG. 9 , when the cleaning robot moves to the point A2, part of the map creation of the rectangular area is complete. At this time, the cleaning robot starts to look for the final target point to return. In this embodiment, it is the point A3 of the area that the cleaning robot has not passed through. Since the rectangular area (dotted box in the figure) composed of the coordinates of the point A1 and the point A3 contains points P8, P9, P10, P11, and P12, the cleaning robot will move to the point P12 closest to the point A2 and then calibrate the data of the odometer and/or the gyroscope at the point P12. - Accordingly, the cleaning robot passes through the points P11, P10, P9, and P8 successively, and then calibrates the data of the odometer and/or the gyroscope. When the cleaning robot reaches the point P8, since there is no point Pi or point P′i in the rectangular area composed of the point P8 and the final target point A3, the cleaning robot will move directly from the point P8 to the final target point A3, and its walking path is shown by the arrow in the figure.
- What has been disclosed above are only embodiments of the technical solution of the present disclosure, and the scope of the present disclosure is not limited thereto. Therefore, equivalent variations according to the claims of the present disclosure are still within the scope of the present disclosure.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/533,087 US20220082391A1 (en) | 2017-08-18 | 2021-11-22 | Map creation method for mobile robot and path planning method based on the map |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710713711.7 | 2017-08-18 | ||
CN201710713711.7A CN107314773B (en) | 2017-08-18 | 2017-08-18 | The map creating method of mobile robot and paths planning method based on the map |
PCT/CN2018/073930 WO2019033712A1 (en) | 2017-08-18 | 2018-01-24 | Map creation method for mobile robot and path planning method based on map |
US16/712,977 US11385062B2 (en) | 2017-08-18 | 2019-12-12 | Map creation method for mobile robot and path planning method based on the map |
US17/533,087 US20220082391A1 (en) | 2017-08-18 | 2021-11-22 | Map creation method for mobile robot and path planning method based on the map |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/712,977 Division US11385062B2 (en) | 2017-08-18 | 2019-12-12 | Map creation method for mobile robot and path planning method based on the map |
Publications (1)
Publication Number | Publication Date |
---|---|
US20220082391A1 true US20220082391A1 (en) | 2022-03-17 |
Family
ID=60176243
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/712,977 Active 2038-07-24 US11385062B2 (en) | 2017-08-18 | 2019-12-12 | Map creation method for mobile robot and path planning method based on the map |
US17/533,087 Abandoned US20220082391A1 (en) | 2017-08-18 | 2021-11-22 | Map creation method for mobile robot and path planning method based on the map |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/712,977 Active 2038-07-24 US11385062B2 (en) | 2017-08-18 | 2019-12-12 | Map creation method for mobile robot and path planning method based on the map |
Country Status (5)
Country | Link |
---|---|
US (2) | US11385062B2 (en) |
EP (1) | EP3671121A4 (en) |
JP (1) | JP6915209B2 (en) |
CN (1) | CN107314773B (en) |
WO (1) | WO2019033712A1 (en) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107314773B (en) * | 2017-08-18 | 2019-10-01 | 广东宝乐机器人股份有限公司 | The map creating method of mobile robot and paths planning method based on the map |
CN107976998A (en) * | 2017-11-13 | 2018-05-01 | 河海大学常州校区 | A kind of grass-removing robot map building and path planning system and method |
CN107807650A (en) * | 2017-11-29 | 2018-03-16 | 莱克电气股份有限公司 | A kind of motion control method of robot, device and equipment |
CN108153301B (en) * | 2017-12-07 | 2021-02-09 | 深圳市杰思谷科技有限公司 | Intelligent obstacle avoidance system based on polar coordinates |
CN108873880A (en) * | 2017-12-11 | 2018-11-23 | 北京石头世纪科技有限公司 | Intelligent mobile equipment and its paths planning method, computer readable storage medium |
CN109974746B (en) * | 2017-12-27 | 2020-11-24 | 深圳市优必选科技有限公司 | Omnidirectional wheel mileage calibration method and robot |
CN108469826B (en) * | 2018-04-23 | 2021-06-08 | 宁波Gqy视讯股份有限公司 | Robot-based map generation method and system |
CN108873889A (en) * | 2018-05-14 | 2018-11-23 | 北京石头世纪科技有限公司 | Intelligent mobile equipment and its controlling of path thereof, computer readable storage medium |
CN109141395B (en) * | 2018-07-10 | 2020-06-09 | 深圳市无限动力发展有限公司 | Sweeper positioning method and device based on visual loopback calibration gyroscope |
GB2576494B (en) * | 2018-08-06 | 2022-03-23 | Dyson Technology Ltd | A mobile robot and method of controlling thereof |
CN108937742A (en) * | 2018-09-06 | 2018-12-07 | 苏州领贝智能科技有限公司 | A kind of the gyroscope angle modification method and sweeper of sweeper |
CN109682382B (en) * | 2019-02-28 | 2020-09-08 | 电子科技大学 | Global fusion positioning method based on self-adaptive Monte Carlo and feature matching |
CN110174892B (en) * | 2019-04-08 | 2022-07-22 | 阿波罗智能技术(北京)有限公司 | Vehicle orientation processing method, device, equipment and computer readable storage medium |
CN110207707B (en) * | 2019-05-30 | 2022-04-12 | 四川长虹电器股份有限公司 | Rapid initial positioning method based on particle filter and robot equipment |
CN110597249B (en) * | 2019-08-23 | 2022-08-05 | 深圳市优必选科技股份有限公司 | Robot and recharging positioning method and device thereof |
CN112783147A (en) * | 2019-11-11 | 2021-05-11 | 科沃斯机器人股份有限公司 | Trajectory planning method and device, robot and storage medium |
CN111085998B (en) * | 2019-12-17 | 2021-11-09 | 珠海市一微半导体有限公司 | Method for recording motion trail of robot and method for displaying motion trail of robot |
CN111329399B (en) * | 2020-04-09 | 2021-09-10 | 湖南格兰博智能科技有限责任公司 | Finite-state-machine-based sweeper target point navigation method |
CN113899376B (en) * | 2020-07-06 | 2023-10-20 | 苏州宝时得电动工具有限公司 | Self-mobile device map generation method, system and automatic working system |
CN114111779B (en) * | 2020-08-26 | 2024-06-28 | 深圳市杉川机器人有限公司 | Method for establishing working area map and self-mobile device |
CN112200850B (en) * | 2020-10-16 | 2022-10-04 | 河南大学 | ORB extraction method based on mature characteristic points |
CN112352530B (en) * | 2020-10-27 | 2022-05-31 | 懿力创新(厦门)科技有限公司 | Working path optimization method of automatic weeding robot |
CN112433537B (en) * | 2020-11-11 | 2022-09-16 | 广西电网有限责任公司电力科学研究院 | Visual monitoring method and system for power transmission line iron tower erection construction |
CN113589806B (en) * | 2021-07-21 | 2024-06-18 | 珠海一微半导体股份有限公司 | Strategy control method for robot bow-shaped walking time |
CN113568435B (en) * | 2021-09-24 | 2021-12-24 | 深圳火眼智能有限公司 | Unmanned aerial vehicle autonomous flight situation perception trend based analysis method and system |
WO2023155160A1 (en) * | 2022-02-18 | 2023-08-24 | Beijing Smorobot Technology Co., Ltd | Swimming pool map boundary construction and swimming pool cleaning methods and apparatuses, and electronic device |
CN114623819A (en) * | 2022-03-21 | 2022-06-14 | 中国电信股份有限公司 | Robot positioning method, system, device, equipment and storage medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5555503A (en) * | 1989-12-11 | 1996-09-10 | Caterpillar Inc. | System and method for providing accurate vehicle positioning using spatial bias techniques |
US20130214726A1 (en) * | 2012-02-16 | 2013-08-22 | Micro-Star International Company Limited | Control method for cleaning robots |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003102706A1 (en) * | 2002-05-31 | 2003-12-11 | Fujitsu Limited | Remotely-operated robot, and robot self position identifying method |
CN102138769B (en) * | 2010-01-28 | 2014-12-24 | 深圳先进技术研究院 | Cleaning robot and cleaning method thereby |
KR101945734B1 (en) * | 2012-08-16 | 2019-02-11 | 한화에어로스페이스 주식회사 | System for robot and method for driving the same |
CN102866706B (en) * | 2012-09-13 | 2015-03-25 | 深圳市银星智能科技股份有限公司 | Cleaning robot adopting smart phone navigation and navigation cleaning method thereof |
CN104972462B (en) * | 2014-04-14 | 2017-04-19 | 科沃斯机器人股份有限公司 | Obstacle avoidance walking method of self-moving robot |
US9969337B2 (en) * | 2014-09-03 | 2018-05-15 | Sharp Laboratories Of America, Inc. | Methods and systems for mobile-agent navigation |
CN104390643B (en) * | 2014-11-24 | 2017-05-31 | 上海赛特斯信息科技股份有限公司 | The method that indoor positioning is realized based on Multi-information acquisition |
KR102339531B1 (en) * | 2014-12-16 | 2021-12-16 | 에이비 엘렉트로룩스 | Experience-based roadmap for a robotic cleaning device |
US10518407B2 (en) * | 2015-01-06 | 2019-12-31 | Discovery Robotics | Apparatus and methods for providing a reconfigurable robotic platform |
CN105856230B (en) * | 2016-05-06 | 2017-11-24 | 简燕梅 | A kind of ORB key frames closed loop detection SLAM methods for improving robot pose uniformity |
CN106020207B (en) * | 2016-07-26 | 2019-04-16 | 广东宝乐机器人股份有限公司 | Self-movement robot traveling method and device |
CN106355197A (en) * | 2016-08-24 | 2017-01-25 | 广东宝乐机器人股份有限公司 | Navigation image matching filtering method based on K-means clustering algorithm |
CN106708048B (en) * | 2016-12-22 | 2023-11-28 | 清华大学 | Ceiling image positioning method and system for robot |
CN106767833B (en) * | 2017-01-22 | 2019-11-19 | 电子科技大学 | A kind of robot localization method merging RGBD depth transducer and encoder |
US20180348783A1 (en) * | 2017-05-31 | 2018-12-06 | Neato Robotics, Inc. | Asynchronous image classification |
CN107314773B (en) * | 2017-08-18 | 2019-10-01 | 广东宝乐机器人股份有限公司 | The map creating method of mobile robot and paths planning method based on the map |
-
2017
- 2017-08-18 CN CN201710713711.7A patent/CN107314773B/en active Active
-
2018
- 2018-01-24 WO PCT/CN2018/073930 patent/WO2019033712A1/en unknown
- 2018-01-24 EP EP18846071.1A patent/EP3671121A4/en not_active Withdrawn
- 2018-01-24 JP JP2019569913A patent/JP6915209B2/en active Active
-
2019
- 2019-12-12 US US16/712,977 patent/US11385062B2/en active Active
-
2021
- 2021-11-22 US US17/533,087 patent/US20220082391A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5555503A (en) * | 1989-12-11 | 1996-09-10 | Caterpillar Inc. | System and method for providing accurate vehicle positioning using spatial bias techniques |
US20130214726A1 (en) * | 2012-02-16 | 2013-08-22 | Micro-Star International Company Limited | Control method for cleaning robots |
Also Published As
Publication number | Publication date |
---|---|
WO2019033712A1 (en) | 2019-02-21 |
JP2020529061A (en) | 2020-10-01 |
CN107314773B (en) | 2019-10-01 |
US11385062B2 (en) | 2022-07-12 |
US20200116501A1 (en) | 2020-04-16 |
JP6915209B2 (en) | 2021-08-04 |
EP3671121A4 (en) | 2020-12-02 |
EP3671121A1 (en) | 2020-06-24 |
CN107314773A (en) | 2017-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220082391A1 (en) | Map creation method for mobile robot and path planning method based on the map | |
CN110969655B (en) | Method, device, equipment, storage medium and vehicle for detecting parking space | |
US10953545B2 (en) | System and method for autonomous navigation using visual sparse map | |
EP3371671B1 (en) | Method, device and assembly for map generation | |
Zhang et al. | Robust appearance based visual route following for navigation in large-scale outdoor environments | |
Badino et al. | Real-time topometric localization | |
Kümmerle et al. | Large scale graph-based SLAM using aerial images as prior information | |
CN113108771B (en) | Movement pose estimation method based on closed-loop direct sparse visual odometer | |
CN109325979B (en) | Robot loop detection method based on deep learning | |
Senlet et al. | Satellite image based precise robot localization on sidewalks | |
CN113903011B (en) | Semantic map construction and positioning method suitable for indoor parking lot | |
Ramstrom et al. | A method for following unmarked roads | |
Bansal et al. | Understanding how camera configuration and environmental conditions affect appearance-based localization | |
Wei et al. | Ground-SLAM: Ground constrained LiDAR SLAM for structured multi-floor environments | |
CN111161334B (en) | Semantic map construction method based on deep learning | |
CN116879870A (en) | Dynamic obstacle removing method suitable for low-wire-harness 3D laser radar | |
Zhang | LILO: A novel LiDAR–IMU SLAM system with loop optimization | |
Carrera et al. | Lightweight SLAM and Navigation with a Multi-Camera Rig. | |
CN113673462B (en) | Logistics AGV positioning method based on lane lines | |
Nabbe et al. | Opportunistic use of vision to push back the path-planning horizon | |
CN115355904A (en) | Slam method for Lidar-IMU fusion of ground mobile robot | |
Tazaki et al. | Loop detection of outdoor environment using proximity points of 3D pointcloud | |
Peng et al. | Dynamic Visual SLAM Integrated with IMU for Unmanned Scenarios | |
Schilling et al. | Mind the gap-a benchmark for dense depth prediction beyond lidar | |
CN114913224A (en) | Composition method for mobile robot based on visual SLAM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: GUANGDONG BONA ROBOT CO., LTD., CHINA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:WU, LIANGRU;YANG, KAI;ZHENG, ZHUOBIN;AND OTHERS;REEL/FRAME:058224/0715 Effective date: 20191209 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
AS | Assignment |
Owner name: GUANGZHOU COAYU ROBOT CO., LTD., CHINA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GUANGDONG BONA ROBOT CO., LTD.;REEL/FRAME:060034/0676 Effective date: 20220527 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |