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 PDF

Info

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
Application number
US17/533,087
Inventor
Liangru WU
Kai Yang
Zhuobin Zheng
Huang Ding
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.)
Guangzhou Coayu Robot Co Ltd
Original Assignee
Guangdong Bona Robot 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 Guangdong Bona Robot Co Ltd filed Critical Guangdong Bona Robot Co Ltd
Priority to US17/533,087 priority Critical patent/US20220082391A1/en
Assigned to GUANGDONG BONA ROBOT CO., LTD. reassignment GUANGDONG BONA ROBOT CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: DING, HUANG, WU, Liangru, YANG, KAI, ZHENG, Zhuobin
Publication of US20220082391A1 publication Critical patent/US20220082391A1/en
Assigned to GUANGZHOU COAYU ROBOT CO., LTD. reassignment GUANGZHOU COAYU ROBOT CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: GUANGDONG BONA ROBOT CO., LTD.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; 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/30Map- or contour-matching
    • G01C21/32Structuring or formatting of map data
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3833Creation or updating of map data characterised by the source of data
    • G01C21/3848Data obtained from both position sensors and additional sensors
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; 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/16Navigation; 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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; 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/16Navigation; 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/183Compensation of inertial measurements, e.g. for temperature effects
    • G01C21/188Compensation of inertial measurements, e.g. for temperature effects for accumulated errors, e.g. by coupling inertial systems with absolute positioning systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • G01C21/206Instruments for performing navigational calculations specially adapted for indoor navigation
    • 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/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • 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/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0219Control 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
    • 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/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control 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
    • 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/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
    • 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/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing 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/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial 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

The present disclosure discloses a method for planning a path of a mobile robot including an odometer and a gyroscope. The method includes causing the mobile robot to move from an initial position to a point Pi or a point P′i, calibrating data of the odometer and/or the gyroscope at the point Pi or the point P′i, and repeating S′1 to step S′2 until arriving at a final target point.

Description

    CROSS REFERENCE TO RELATED APPLICATION
  • 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.
  • BACKGROUND
  • 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.
  • SUMMARY
  • 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
    Figure US20220082391A1-20220317-P00001
    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.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • 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 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 S1′ 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; and
  • FIG. 9 is a path planning graph of the mobile robot based on the map in FIG. 8.
  • DETAILED DESCRIPTION
  • 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.
  • S2: the mobile robot walking in a
    Figure US20220082391A1-20220317-P00001
    character shape in the working area.
  • 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
    Figure US20220082391A1-20220317-P00001
    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, entering step 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
    Figure US20220082391A1-20220317-P00001
    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.
  • Embodiment 1
  • 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.
  • 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.
  • Embodiment 2
  • The mobile robot in this embodiment is also illustrated by taking a cleaning robot as an example. 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 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)

What is claimed is:
1. A method for planning a path of a mobile robot comprising an odometer and a gyroscope, the method comprising:
S′1: causing the mobile robot to move from an initial position to a point Pi or a point P′i;
S′2: calibrating data of the odometer and/or the gyroscope at the point Pi or the point P′i; and
S′3: repeating S′1 to step S′2 until arriving at a final target point.
2. The method of claim 1, wherein S′1 further comprises:
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 a 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: causing the mobile robot to move to the point Pi or the point P′i closest to the initial position in the rectangular area, and then entering step S′15;
S′14: causing the mobile robot to move to the point Pi or point P′i closest to the initial position in the working area, and then entering step S′15; and
S′15: determining whether there is the point Pi or point P′i in a rectangular area composed of the 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.
3. The method of claim 1, wherein S′2 further comprises:
S′21: acquiring a picture of the mobile robot at the point Pi or the point P′i;
S′22: extracting features of the picture and matching features with a picture saved at the point Pi or the point P′i; and
S′23: calibrating the data of the odometer and/or the gyroscope of the mobile robot at the point Pi or the point P′i according to a matching result.
4. The method of claim 3, wherein at S′22, the features of the picture are extracted and matched with the picture saved at the point Pi or the point P′i according to an ORB algorithm.
5. The method of claim 1, wherein 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.
US17/533,087 2017-08-18 2021-11-22 Map creation method for mobile robot and path planning method based on the map Abandoned US20220082391A1 (en)

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.7A CN107314773B (en) 2017-08-18 2017-08-18 The map creating method of mobile robot and paths planning method based on the map
CN201710713711.7 2017-08-18
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4448024B2 (en) * 2002-05-31 2010-04-07 富士通株式会社 Remote operation robot and robot self-position identification 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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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
US20200116501A1 (en) 2020-04-16
WO2019033712A1 (en) 2019-02-21
US11385062B2 (en) 2022-07-12
EP3671121A1 (en) 2020-06-24
CN107314773A (en) 2017-11-03
JP6915209B2 (en) 2021-08-04
JP2020529061A (en) 2020-10-01
CN107314773B (en) 2019-10-01
EP3671121A4 (en) 2020-12-02

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
CN113903011B (en) Semantic map construction and positioning method suitable for indoor parking lot
CN109325979B (en) Robot loop detection method based on deep learning
Senlet et al. Satellite image based precise robot localization on sidewalks
Ramstrom et al. A method for following unmarked roads
Bansal et al. Understanding how camera configuration and environmental conditions affect appearance-based localization
CN111161334B (en) Semantic map construction method based on deep learning
Wei et al. Ground-SLAM: Ground constrained LiDAR SLAM for structured multi-floor environments
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