Laser point-based robot suspension judgment method, map updating method and chip
By combining laser point cloud and raster map, the robot's suspended or fallen state is judged and the map update strategy is adjusted, which solves the problem of map overlap and ambiguity caused by the mobile robot being suspended or fallen, and achieves accurate navigation and efficient cleaning.
Patent Information
- Application Number
- CN202111299994.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-04
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2041-11-04
AI Technical Summary
When a mobile robot is suspended or falls, existing technologies cannot effectively avoid map overlap or blur, resulting in navigation and positioning errors.
By combining the laser point cloud and raster map, it is possible to determine whether the robot is suspended or fallen, and to determine the robot's status based on the ratio of the laser beam simulated line segments, and to adjust the map update strategy to avoid map overlap and ambiguity.
It effectively avoids map overlap and blur, ensuring that the robot can accurately navigate to the work area, improving cleaning efficiency and user experience.
Smart Images

Figure CN116069010B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of grid map optimization processing, in particular to a robot suspension judgment method and suspension avoidance method based on laser points and a chip. Background Art
[0002] In a home environment, the mobile robot's travel surface may be uneven, such as steps or slopes. Therefore, the mobile robot may be lifted or dropped during operation. At this time, for a mobile robot positioned with laser, its drive wheels will be suspended in the air, causing the mobile robot to leave its original operating surface, while the mobile robot continues to build a map.
[0003] Currently, although drop sensors are used to detect the lifting of the drive wheels and cliff sensors are used to detect the falling of the drive wheels, by the time the lift is detected, the mobile robot is already suspended in mid-air. This can result in several frames of erroneous laser point clouds being collected and overlaid onto the pre-built map, causing map overlap or blurring. Specifically, when the mobile robot traverses an obstacle (such as a low toy obstacle, a slope, or a threshold), the increased height of the mobile robot may result in the scanning of laser point cloud information outside the wall. When this is overlaid onto the pre-built map, the wall obstacle that should have been blocking the robot's progress may appear as point cloud information on the back side of the wall. Furthermore, when the mobile robot falls from a step, the lowered height of the detection may result in the scanning of laser point cloud information on the horizontal ground. When this is overlaid onto the pre-built map, the actual positioning information obtained is entirely from the horizontal ground. Consequently, the map actually marks locations outside the target detection area, causing map overlap or blurring, which in turn affects the mobile robot's navigation and positioning using the map. Summary of the Invention
[0004] In scenarios where a robot may be lifted or dropped in its travel plane, to overcome the problem of map overlap ambiguity caused by the lag of related detection methods in the existing technology or the inability to detect some scenarios, this invention combines laser point clouds and raster maps to determine the situation in which the robot may be lifted or dropped and adjust the map update strategy in a timely manner, avoiding the phenomenon that the constructed map does not match the area actually required to be detected. The specific technical solution is as follows:
[0005] A robot suspension judgment method based on laser points is applicable to a mobile robot equipped with a laser sensor. The robot suspension judgment method includes controlling the laser beam emitted by the laser sensor to scan the area to be detected and obtaining laser beam simulation line segments; simultaneously obtaining a pre-constructed grid map; obtaining laser beam simulation line segments with judgment function according to the number of obstacle grids passed by the laser beam simulation line segments within the allowable range of ranging error, and counting the laser beam simulation line segments with judgment function; and judging whether the mobile robot is in a suspended state according to the ratio of the number of laser beam simulation line segments with judgment function to the number of all laser beam simulation line segments.
[0006] Furthermore, the method for determining whether the mobile robot is in a suspended state based on the ratio of the number of laser beam simulated line segments with a judgment function to the number of all laser beam simulated line segments includes controlling the laser beam to be mapped as the laser beam simulated line segments in the grid map, wherein, when obtaining a frame of laser point cloud, the position of the laser sensor in the area to be detected is unchanged; in the frame of laser point cloud, when the ratio of the number of the obtained laser beam simulated line segments with a judgment function to the number of all mapped laser beam simulated line segments is less than or equal to a preset ratio threshold, it is determined that the mobile robot is not in a suspended state; in the frame of laser point cloud, when the ratio of the number of the obtained laser beam simulated line segments with a judgment function to the number of all mapped laser beam simulated line segments is greater than a preset ratio threshold, it is determined that the mobile robot is in a suspended state.
[0007] Furthermore, the suspended state includes the front part of the body of the mobile robot being tilted and lifted, so as to ensure that the mobile robot is lifted relative to the current traveling plane during the movement, and the driving wheels of the mobile robot are turned into a suspended state; the suspended state also includes the front part of the body of the mobile robot being tilted downward, so as to ensure that the mobile robot falls relative to the current traveling plane during the movement, and the driving wheels of the mobile robot are turned into a suspended state.
[0008] Furthermore, the source of the obstacle grid that the laser beam simulation line segment passes through within the allowable range of ranging error is that in the grid map, along the straight line direction from the laser point to the observation point, a point at a preset error distance from the laser point is set as the target positioning point; wherein, the line connecting the observation point and the laser point is the laser beam simulation line segment; the observation point is the position marked by the laser sensor in the grid map; then, on the premise of excluding the grid where the observation point is located and the grid where the target positioning point is located, the obstacle grid passed by the line connecting the observation point and the target positioning point is marked as a pre-configured obstacle grid, and it is determined that the pre-configured obstacle grid is the obstacle grid that the laser beam simulation line segment passes through within the allowable range of ranging error; wherein, the obstacle grid is the grid occupied by the obstacle in the area to be detected in the grid map.
[0009] Furthermore, when the observation point is located on the edge of the grid, the grid where the observation point is located is the first grid that the laser beam simulation line segment passes through along its laser observation direction; wherein, the laser observation direction is the straight line direction from the observation point to the laser point to form the laser observation direction of the laser beam simulation line segment; when the target positioning point is located on the edge of the grid, the grid where the target positioning point is located is the first grid that the line connecting the target positioning point and the laser point passes through along the laser observation direction.
[0010] Furthermore, the method for obtaining a laser beam simulation line segment with a judgment function based on the number of obstacle grids passed by the laser beam simulation line segment within the allowable range of ranging error includes counting the pre-configured obstacle grids passed by the line connecting the observation point and the target positioning point in the laser beam simulation line segment; when it is determined that the count value of the pre-configured obstacle grid is greater than a preset number threshold, setting the laser beam simulation line segment where the line connecting the observation point and the target positioning point is located as the laser beam simulation line segment with a judgment function, and then marking a laser beam corresponding to the straight line direction from the observation point to the target positioning point as the laser beam with a judgment function.
[0011] Furthermore, the robot suspension judgment method also includes: when the line connecting the observation point and the target positioning point does not pass through the obstacle grid, the laser beam simulation line segment where the target positioning point and the observation point are located is not set as the laser beam simulation line segment with judgment function, and the currently obtained number of the laser beam simulation line segments with judgment function is incremented to 0.
[0012] Furthermore, the robot suspension judgment method also includes: when the length of the line connecting the target positioning point and the laser point is greater than the length of the line connecting the observation point and the same laser point, the laser beam simulation line segment where the laser point and the observation point are located is not set as the laser beam simulation line segment with judgment function, and the currently obtained number of the laser beam simulation line segments with judgment function is incremented to 0.
[0013] Furthermore, when the length of the line connecting the observation point and the laser point is less than a preset threshold length, the preset error distance is a fixed value; when the length of the line connecting the observation point and the laser point is greater than or equal to the preset threshold length, the preset error distance is positively correlated with the length of the laser beam simulation line segment.
[0014] Furthermore, the manner in which the laser point is in the grid includes that the laser point is located within the area surrounded by the four sides of the grid, and that the laser point is located on the edge of the grid, so as to reflect the two-dimensional position information of the scanned object; wherein, in the laser point cloud frame, the observation point is fixed, a target positioning point corresponds to a laser point, a laser beam corresponds to a laser point, a laser beam simulation line segment corresponds to a laser point, and a laser beam corresponds to a laser beam simulation line segment.
[0015] Furthermore, the robot suspension judgment method also includes controlling the laser information reflected by the laser beam in the area to be detected to be converted into a laser point in the grid map, wherein the laser point is used to indicate that the scanned position point falls into the positioning point in the grid map; whenever the laser beam rotates one circle in the area to be detected, the converted laser points are formed into the laser point cloud frame; wherein, one laser beam corresponds to one laser point, and one scanning angle corresponds to one laser point; in the grid map, the line between an observation point and a laser point is set as the laser beam simulation line segment, and then the laser beam is determined to be mapped as the laser beam simulation line segment in the grid map, so that one laser beam simulation line segment corresponds to one laser point; wherein, the observation point is the position marked by the laser sensor in the grid map, which is used to indicate the emission starting point of the laser beam and is marked as the current position of the mobile robot.
[0016] A laser point-based map updating method, the map updating method including the robot suspension judgment method; the map updating method also includes updating the information carried by the frame of laser point cloud to the associated information of the corresponding hit grid in the grid map when the ratio of the number of the obtained laser beam simulation line segments with judgment function to the number of all mapped laser beam simulation line segments is less than or equal to a preset ratio threshold in the frame of laser point cloud, so as to realize the update of the pre-constructed grid map in the area to be detected; and stopping the updating of the grid map when the ratio of the number of the obtained laser beam simulation line segments with judgment function to the number of all mapped laser beam simulation line segments in the frame of laser point cloud is equal to the preset ratio threshold.
[0017] Furthermore, the method of updating the information carried by the frame of laser point cloud to the associated information of the corresponding hit grid in the grid map includes updating the posture information carried by the frame of laser point cloud to the position information of the corresponding hit grid in the grid map, so as to configure the latest hit grid of the corresponding laser point in the grid map; wherein, the laser point existing in the frame of laser point cloud is the scanned position point in the area to be detected converted to the coordinate point in the coordinate system of the grid map, wherein the posture information carried by the laser point includes angle information and distance information; at the same time, the probability information of the obstacle at the scanned position point falling into the corresponding grid position of the grid map is updated to the probability information of the corresponding hit grid of the laser point in the grid map.
[0018] Furthermore, the grid corresponding to the hit of the laser point in the grid map is the grid with the smallest positioning error with the scanned position point, including a neighborhood grid of the grid where the laser point is located, or a grid where the laser beam simulated line segment passes and is at a reasonable distance from the laser point.
[0019] A chip implements the robot suspension determination method and / or the map update method by executing internally stored algorithm program code.
[0020] Compared with the prior art, the beneficial technical effect of the present invention is that, based on the number and ratio information of obstacle grids passed by the laser beam corresponding to a frame of laser point cloud in the grid map, it is judged whether the robot will become a suspended state or whether there is a trend of becoming a suspended state when moving in the said detection area before updating the map, instead of making a real-time judgment in the scenario where the robot has become a suspended state and the corresponding map is updated in real time. The map construction method is decided on the basis of knowing the corresponding robot behavior state information or the behavior state trend appearing in front of its travel plane, and the decision is made to update the pre-constructed grid map, so as to avoid the map overlapping and blurring in the real-time constructed map in the scenario where the robot is lifted or falls, so as to be unable to reflect the actual working area of the robot, so that the robot can continue to use the currently constructed grid map for navigation and positioning. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] Figure 1 The present invention is a flowchart of a method for determining whether a robot is suspended in the air based on laser points, disclosed in one embodiment of the present invention.
[0022] Figure 2 This is a flowchart of a laser point-based map updating method disclosed in another embodiment of the present invention.
[0023] Figure 3 It is a schematic diagram of a laser beam simulation line segment passing through an obstacle grid in a grid map disclosed in one embodiment of the present invention. DETAILED DESCRIPTION
[0024] The technical solutions in the embodiments of the present invention will be described in detail below with reference to the accompanying drawings in the embodiments of the present invention.
[0025] The laser-based robot suspension detection method provided by the embodiments of the present invention can be applied to mobile robots, particularly those operating in indoor environments, such as sweeping robots, inspection robots, unmanned sampling robots, and unmanned forklifts. The mobile robot comprises a robot body, a sensor, a controller, and a walking mechanism. The robot body is the main structure of the robot and can be constructed of a suitable shape, structure, and material (e.g., hard plastic or metals such as aluminum or iron) based on the actual needs of the robot. For example, it can be configured as a relatively flat cylindrical shape, which is common in sweeping robots. The walking mechanism is provided on the robot body and provides the mobile robot with mobility. The walking mechanism can be implemented using any type of mobile device, such as rollers or tracks. The sensor is used to sense the external environment and obtain depth information (e.g., a two-dimensional point cloud image of the robot's surroundings). The sensor can be any existing depth information acquisition device, including but not limited to laser sensors and RGBD cameras. One or more sensors can be provided to ensure an omnidirectional detection range of 0 to 360 degrees.
[0026] For example, a cleaning robot has a controller installed inside its body, with a drive wheel mounted on each side. A laser sensor, such as a lidar, is mounted on top of the robot's body, serving as its navigation and positioning device. The controller is electrically connected to the drive wheels and laser sensor. The robot's main body includes a forward-facing portion and a rear-facing portion, each with a roughly circular shape (both front and back). Other shapes are possible, including but not limited to a roughly D-shaped front with a circular back, or a rectangular or square front with a circular back.
[0027] In some embodiments, a collision sensor and a proximity sensor are arranged on the forward part of the main body of the cleaning robot, a cliff sensor is arranged on the lower part of the cleaning robot body, and a controller, a magnetometer, an accelerometer, a gyroscope (Gyro) are arranged inside the cleaning robot body, and an odometer (ODO, full name odograph) installed inside the drive wheel, a drop sensor is installed in the slot where the left and right drive wheels are connected to the chassis of the body, and other sensing devices are used to provide the controller with various position information and motion status information of the machine.
[0028] There may be uneven surfaces such as steps and slopes in front of the cleaning robot's travel plane. In the prior art, the cleaning robot can detect the road ahead through a cliff sensor installed at the bottom of its front side and provide accurate feedback to prevent it from falling off a cliff. Based on the relative depth between the travel plane and the bottom of the body given by the feedback signal, the robot can then detect whether the front part of the cleaning robot's body is lifted. A drop sensor is installed in the wheel assembly mounting slot between the bottom edge of the cleaning robot and each drive wheel. This drop sensor rises and falls synchronously with the corresponding drive wheel. When the cleaning robot tilts at an angle due to climbing a slope or being lifted by an inclined tube, the drive wheel is not in contact with the external ground (the current travel plane), thereby triggering the drop sensor to generate a sensing signal, which is transmitted to the controller inside the cleaning robot, making a judgment that the drive wheel on the corresponding side of the cleaning robot is suspended in the air.
[0029] The drive wheel has a spring component that is movably fastened to the body, for example, rotatably attached to the chassis of the cleaning robot, and receives a downward push force. The spring component allows the drive wheel to maintain a push against the ground with a certain ground force and can be buffered by its elastic force. The drop sensor acts as a limit switch, which can press the limit switch under the push of the spring component, so that the drop sensor has a physical contact condition for triggering, and the cleaning element of the cleaning robot also contacts the ground with a certain pressure. The controller can control the cleaning robot to travel across different types of ground based on a drive command with distance and angle information (such as x, y and z components). The controller includes a drive wheel module, which can simultaneously control the left drive wheel and the right drive wheel. In order to more accurately control the movement of the cleaning robot, preferably, the drive wheel module includes a left drive wheel module and a right drive wheel module, and the left drive wheel module and the right drive wheel module are symmetrically arranged along the transverse axis defined by the body. In order to enable the cleaning robot to move more stably or have stronger movement capabilities on the ground, the cleaning robot may include one or more driven wheels, including but not limited to universal wheels for changing the direction of rotation. The driving wheel module includes a driving wheel, a driving motor and a control circuit for controlling the driving motor. The driving wheel module can also be connected to a circuit for measuring the driving current, an odometer and a drop sensor, so that the drop sensor is triggered when the body is lifted or falls due to stepping on air. Although the aforementioned related sensors can be used to detect when the robot is tilted, lifted or fallen, the point cloud information collected in real time has been constructed onto the grid map when the robot detects the corresponding behavior, but the objects within the original detection range cannot be collected, and are replaced by the features of objects at other heights.
[0030] In some cases, when a cleaning robot traverses an obstacle (such as a low toy obstacle, a slope, or a threshold), its increased height may cause it to scan images at locations higher than its pre-set travel plane. This can result in the robot detecting images outside its current working area. For example, if the room in which the robot is working has low walls, the robot's increased height may cause it to scan images outside the wall. The currently detected obstacle location will be marked as outside the current working area in the grid map it constructs. This will overlay erroneous point cloud information on the map, which can easily cause the robot to misjudge its positioning and fail to distinguish the area it actually needs to work. Consequently, when a cleaning robot, such as a vacuum cleaner, traverses the entire home to complete the cleaning process, repeatedly entering and exiting the same room or alternating between different rooms. This can directly lead to low cleaning efficiency and indirectly cause duplicate cleaning, missed areas, and a poor user experience.
[0031] It should be noted that the environment map constructed from the laser point cloud needs to be divided into a grid size according to a pre-set grid size to obtain a grid map, which includes multiple grids. For example, dividing the environment map into squares of 0.2*0.2m will produce a grid map with a grid size of 0.2*0.2m. The controller is an electronic computing core built into the robot body, responsible for executing logical operations to achieve intelligent control of the robot. The controller is connected to the laser sensor and is responsible for executing a preset algorithm to generate a map image based on the depth information of the surrounding environment collected by the laser sensor. In the map image, obstacles are typically given different pixel values than other areas for easy distinction. For example, in some embodiments, the pixel values of obstacles and the ground are set within the same pixel value range to reflect the laser point cloud information that may be scanned beyond the wall due to the increase in the height of the mobile robot when it is tilted and lifted, and the laser point cloud information that may be scanned on the horizontal ground due to the decrease in the detection height when the mobile robot falls from a step.
[0032] In order to overcome the problem of map overlap ambiguity caused by the lag of related detection methods in the prior art or some scenes that cannot be detected, the embodiment of the present invention discloses a robot suspension judgment method based on laser points. The robot suspension judgment method is applicable to a mobile robot equipped with a laser sensor. In this embodiment, a laser sensor is fixedly mounted on the body of the mobile robot for 0 to 360 degree omnidirectional detection to obtain environmental information around the mobile robot. Figure 1 As shown, the robot hanging judgment method includes:
[0033] Step S101, control the laser beam emitted by the laser sensor to scan the area to be detected, obtain the laser beam simulation line segment; at the same time, obtain a pre-constructed grid map; then enter step S102. It should be noted that the laser head of the laser sensor detects the surrounding environment at a uniform rotation speed; the laser sensor uses the laser beam to scan the spatial range of the area to be detected at an angle, each angle corresponds to a laser point, and the laser points at the angles used are added together to form a frame of point cloud; one or more laser beams emitted by the laser sensor repeatedly scan the same area to be detected, and the point cloud obtained by rotating all the laser beams one circle or the point cloud collected by rotating one laser beam one circle constitutes a frame of laser point cloud. However, the grid map obtained at the same time is pre-constructed, and the real-time collected laser point cloud is not converted into the grid map, so that this pre-constructed grid map does not reflect the environmental information collected by the mobile robot in real time.
[0034] Step S102: According to the number of obstacle grids passed by the laser beam simulation line segment in step S101 within the allowable range of ranging error, obtain the laser beam simulation line segments with judgment function, and count the laser beam simulation line segments with judgment function; then enter step S103. In step S102, the number of obstacle grids actually traversed by the laser beam simulation line segment described in step S101 in the grid map for subsequent judgment is counted, which is understood as the frequency of visits of each laser beam simulation line segment to the corresponding type of obstacle grid it passes through, rather than the frequency of visits to the same obstacle grid, so as to obtain the number of obstacle grids passed by the laser beam simulation line segment within the allowable range of the ranging error, and indirectly obtain the passability of the route corresponding to the laser beam simulation line segment; when the number of obstacle grids obtained by counting is smaller, the passability of the route corresponding to the laser beam simulation line segment is better; when the number of obstacle grids obtained by counting is larger, the passability of the route corresponding to the laser beam simulation line segment is worse; thereby reflecting the smoothness of the simulated mobile robot moving along the direction indicated by the laser beam simulation line segment, and the passability of the surrounding environment of the mobile robot; on this basis, the laser beam simulation line segment with judgment function is counted for subsequent judgment of the suspended state.
[0035] Step S103: Based on the ratio of the number of laser beam simulation line segments with judgment function obtained in step S102 to the number of all laser beam simulation line segments, determine whether the mobile robot is in a suspended state, or determine whether the mobile robot has a tendency to become suspended in front of its travel plane, and timely adjust the update strategy of the aforementioned grid map, that is, when it is determined that the mobile robot is in a suspended state, do not update the previously constructed grid map to avoid marking erroneous positioning information in the map; or when it is determined that there is a tendency to become suspended in front of the travel plane of the mobile robot, that is, when it is determined that the front of the travel plane of the mobile robot is a cliff face, a step face or a slope face so as to cause it to become suspended, do not update the previously constructed grid map to avoid marking erroneous positioning information in the map; when it is determined that the mobile robot is not in a suspended state and it is determined that there is no tendency to become suspended in front of the travel plane of the mobile robot, update the previously constructed grid map to mark the actual working area position information of the robot in the map. The ratio of the number of laser beam simulation segments with judgment functions to the total number of laser beam simulation segments determines the mobile robot's suspended state or the tendency of the area ahead of its travel plane to become suspended, including whether the mobile robot is tilted and lifted or falling. The frequency of obstacle grid traversal in all detectable directions (the aforementioned ratio) is used to determine the mobile robot's state or predict its movement trend in the forward direction. This allows for more effective adjustment of the map's real-time positioning information, creating conditions for the robot to plan a new navigation path after overcoming the suspended state and reach the area where it actually needs to work.
[0036] As an embodiment, the method for determining whether the mobile robot is in an airborne state or determining whether the mobile robot has a tendency to become airborne in front of its travel plane based on the ratio of the number of laser beam simulated line segments having a judgment function to the number of all laser beam simulated line segments includes:
[0037] The laser beam is controlled to be mapped into the laser beam simulation line segment in the grid map to obtain the laser beam simulation line segment, wherein, when obtaining a frame of laser point cloud, the position of the laser sensor in the area to be detected remains unchanged; this embodiment converts all the laser beams required for the collected frame of laser point cloud into the laser beam simulation line segments in the grid map, that is, the current frame of laser point cloud is mapped into laser beam simulation line segments, and then the laser beam simulation line segments with judgment function are judged from the mapped laser beam simulation line segments and this type of laser beam simulation line segments are counted; the mapping relationship involved is that each laser point in the currently collected frame of laser point cloud can correspond to a laser beam, so that each laser point can correspond to a laser beam simulation line segment, and is promptly converted to the pre-constructed grid coordinate system.
[0038] Within the frame of laser point cloud, that is, within the laser point constraint range corresponding to a frame of laser point cloud, when the ratio of the number of laser beam simulation line segments with judgment function obtained by the aforementioned step S102 to the number of all mapped laser beam simulation line segments is less than or equal to the preset ratio threshold, it is determined that the mobile robot is not in a suspended state or that there is no trend of becoming a suspended state in front of the moving plane of the mobile robot; this involves judging the ratio of the laser beam simulation line segments corresponding to the laser points in the detectable direction of multiple laser beams; it should be noted that the preset ratio threshold is an experimental result obtained by constructing a raster map using the real-time collected laser point cloud in the scenario of the mobile robot being lifted or dropped, and is frequency threshold information obtained by repeated experiments in the area to be detected, so as to distinguish the raster map information constructed by the laser point cloud collected on a flat moving plane.
[0039] Within the frame of laser point cloud, i.e., within the laser point constraint range corresponding to the frame of laser point cloud, when the ratio of the number of the laser beam simulated line segments having the judgment function obtained in the aforementioned step S102 to the number of all mapped laser beam simulated line segments is greater than a preset ratio threshold, the mobile robot is determined to be in an airborne state, or it is determined that there is a trend of becoming airborne ahead of the travel plane of the mobile robot, i.e., it is determined that the travel plane in front of the mobile robot is a slope, a step, or a cliff face. It is worth noting that when it is determined that there is a trend of becoming airborne ahead of the travel plane of the mobile robot, it is determined that the robot has not yet moved to the area where airborne occurs, and it is necessary to promptly stop updating the real-time collected laser point cloud to the grid map to avoid guiding the mobile robot to an incorrect area based on the updated grid map, away from the actual working area (deemed to be a pre-set target working area). Among them, the laser beam simulation line segments corresponding to the laser points in the detectable directions of multiple laser beams are involved in the judgment of the ratio; specifically, the suspended state includes the front part of the body of the mobile robot being tilted and lifted, so as to determine that the mobile robot is lifted by the slope relative to the current travel plane during the movement or is lifted by the slope during the obstacle crossing process, and the driving wheels of the mobile robot are freed from the interference of the external ground (the current travel plane) and become a suspended state; the suspended state also includes the front part of the body of the mobile robot tilting downward, so as to determine that the mobile robot falls relative to the current travel plane during the movement, and the driving wheels of the mobile robot are freed from the interference of the external ground (the current travel plane) and become a suspended state, thereby falling below the current travel plane.
[0040] In summary, in the frame of laser point cloud, each time there is a laser beam simulation line segment with the judgment function, the access frequency of the number of laser beam simulation line segments with the judgment function is increased by 1. When the frame of laser point cloud is traversed, that is, when the laser beam simulation line segments in all detectable directions are traversed, the laser beam simulation line segments with the judgment function have an access frequency, thereby forming the frequency information of a corresponding type of laser beam, so as to realize the judgment of the actual suspended state of the robot or the suspended state faced in front of its travel plane at the level of the grid map, and play a role in predicting the robot's passability, thereby more effectively adjusting the real-time positioning information of the map, and creating conditions for the robot to plan a new navigation path after overcoming the suspended state, so as to reach the area where work is really needed.
[0041] As an embodiment, combining Figure 3 It can be seen that the source of the obstacle grid that the laser beam simulation line segment passes through within the allowable range of ranging error is:
[0042] In the grid map, along the straight line from the laser point to the observation point, a point at a preset error distance from the laser point is set as a target positioning point; wherein the line connecting the observation point and the laser point is the laser beam simulation line segment; the observation point is the position marked by the laser sensor in the grid map. Figure 3 The grids in the grid map shown are arranged regularly, and the grids in the grid map are arranged regularly in rows and columns, and point O is used as the grid position occupied by the robot's laser sensor, that is, the observation point; Figure 3 Point N1 is a laser point, wherein when the laser point is within the area surrounded by the four sides of a grid, it indicates that the grid is the grid where the laser point is located; then the line connecting point O and point N1 is the laser beam simulation line segment, forming a laser beam simulation line segment ON1; in this embodiment, point M1 is set as the target positioning point on the laser beam simulation line segment ON1, wherein the length of the line segment M1N1 is equal to the preset error distance; preferably, when the length ON1 of the line connecting the observation point O and the laser point N1 is less than the preset threshold length, the preset error distance is a fixed value; when the length ON1 of the line connecting the observation point O and the laser point N1 is greater than or equal to the preset threshold length, the preset error distance is positively correlated with the length of the laser beam simulation line segment; wherein the specific value of the preset threshold length varies according to the specification parameters of the laser sensor actually used.
[0043] Then, excluding the grid where the observation point is located and the grid where the target positioning point is located, mark the obstacle grid through which the line connecting the observation point and the target positioning point passes as a pre-configured obstacle grid, and determine that the pre-configured obstacle grid is the obstacle grid through which the laser beam simulation line segment passes within the allowable range of ranging error; wherein, the obstacle grid is the grid occupied by the obstacle in the area to be detected in the grid map. Figure 3 In the grid map shown, on the line segment OM1, except for the grid where the observation point O is located and the grid where the target positioning point M1 is located, all the grids that the line segment OM1 passes through in the grid map are Figure 3 In the figure, the grid marked with X is binarized in this embodiment. When X=0, it indicates that the grid is a blank grid or an unknown grid. When X=1, it indicates that the grid is an obstacle grid, that is, the pre-configured obstacle grid. In this case, the obstacle grid through which the line connecting the observation point O and the target positioning point M1 passes is marked as the pre-configured obstacle grid.
[0044] As an embodiment, when the target positioning point is located on the edge of a grid, the grid where the target positioning point is located is the first grid through which the line connecting the target positioning point and the laser point passes along its laser observation direction; wherein the laser observation direction is the straight line direction from the observation point to the laser point to form the laser observation direction of the laser beam simulation line segment; Figure 3 In the grid map shown, point N2 is another laser point, wherein the laser point N2 is within the area surrounded by the four sides of a grid, which indicates that the grid is the grid where the laser point N2 is located; the line connecting point O and point N2 forms a laser beam simulation line segment; in this embodiment, point M2 is set as the target positioning point on the laser beam simulation line segment ON2, wherein the length of the line segment M2N2 is equal to the preset error distance; the laser observation direction of the laser beam simulation line segment ON2 is the straight line direction from the observation point O to the laser point N2, that is, the direction indicated by the arrow of the laser beam simulation line segment ON2; as shown in FIG. Figure 3 As shown, the target positioning point M2 is located exactly on the edge of the grid. The grid where the target positioning point M2 is located is the first grid that the line segment M2N2 passes through along the laser observation direction (the arrow of the laser beam simulation line segment ON2). Accordingly, Figure 3 In the map coordinate system shown, the coordinates of the grid are represented by the coordinates of the lower left corner of the grid. Therefore, the coordinates of the grid where laser point N2 is located are (1, 4), and the coordinates of the grid where target positioning point M2 is located are also (1, 4). This allows the grid surrounding the laser point to be searched for along the laser observation direction or the simulated laser beam line segment, closely matching the actual physical location and improving the effectiveness of laser point positioning.
[0045] As an embodiment, when the observation point is located on the edge of the grid, the grid where the observation point is located is the first grid through which the laser beam simulation line segment passes along its laser observation direction; wherein, the laser observation direction is the straight line direction from the observation point to the laser point, so as to form the laser observation direction of the laser beam simulation line segment; in combination with the foregoing embodiment, it can be seen that when the line connecting point O and point N2 forms a laser beam simulation line segment, the laser observation direction of the laser beam simulation line segment ON2 is the straight line direction from the observation point O to the laser point N2, that is, the direction indicated by the arrow of the laser beam simulation line segment ON2, and the grid where the observation point O is located is the first grid through which the laser beam simulation line segment ON2 passes along its laser observation direction. If Figure 3 When the observation point is translated to an edge directly below the grid with coordinates (3, 1), if the position of the laser point N2 remains unchanged, the grid where the observation point O is located can be the grid with coordinates (3, 1) or the grid with coordinates (2, 1). The specific technical effect of the method for determining the grid where the observation point is located is similar to that of the above embodiment.
[0046] Specifically, if the column number of the grid is s0 and the row number of the grid is h0, then Figure 3 In the grid map shown, the neighborhood grids of a grid are grids whose row numbers are in the range [h0-1, h0+1] and whose column numbers are in the range [s0-1, s0+1], where s0 is an integer and h0 is an integer. Figure 3 In the grid map shown, Figure 3 The column number of the grid where the target positioning point M1 is located is 7. Figure 3 The row number of the grid where the target positioning point M1 is located is 3; Figure 3 In the grid map shown, Figure 3 The column number of the grid where the laser point N1 is located is 7. Figure 3 The row number of the grid where the target positioning point N1 is located is 4; Figure 3 The column number of the grid where the observation point O is located is 3. Figure 3 The row number of the grid where the observation point O is located is 1; Figure 3 The column number of the grid where the target positioning point M2 is located is 1. Figure 3 The row number of the grid where the target positioning point M2 is located is 4; Figure 3 In the grid map shown, Figure 3 The column number of the grid where the laser point N2 is located is 1. Figure 3 The row number of the grid where the laser point N2 is located is 4. In the map coordinate system of the grid map disclosed in this embodiment, the coordinates of each grid are represented by the coordinates of the lower left corner of the grid, wherein the coordinates of the lower left corner of the grid are used to represent the row number and column number of the grid in the grid map, the horizontal coordinate is equal to the column number, and the vertical coordinate is equal to the row number. Figure 3 As shown in the grid map, the column numbers increase gradually when traversing the grid from left to right; the row numbers increase gradually when traversing the grid from bottom to top. This ensures that the path generated by connecting each grid in the grid map is continuous. For ease of understanding, Figure 3 In the map coordinate system shown, the coordinates of the grid are expressed by the coordinates of the lower left corner of the grid.
[0047] As an embodiment, the method for obtaining a laser beam simulated line segment having a judgment function based on the number of obstacle grids that the laser beam simulated line segment passes through within an allowable range of ranging error includes:
[0048] In the laser beam simulation line segment, along the line connecting the observation point and the target positioning point, the pre-configured obstacle grids passed by the line are counted; accordingly, Figure 3In the line segment OM1 shown, except for the grids where the two endpoints are located, the obstacle grids passed by the rest of the segment are counted. This can be done by counting each obstacle grid along the direction from the observation point O to the target positioning point M1 to obtain the number of pre-configured obstacle grids on the laser beam simulation line segment ON1, or obtaining the count value of the pre-configured obstacle grids on the line segment OM1. The line connecting the observation point O and the target positioning point M1 is located on the laser ranging line segment ON1. At the same time, Figure 3 In the line segment OM2 shown, except for the grids where the two endpoints are located, the obstacle grids passed by the rest are counted. This can be done by counting the obstacle grids one by one along the direction from the observation point O to the target positioning point M2 to obtain the number of pre-configured obstacle grids on the laser beam simulation line segment ON2, or by obtaining the count value of the pre-configured obstacle grids on the line segment OM2, wherein the line connecting the observation point O and the target positioning point M2 is located on the laser ranging line segment ON2.
[0049] For one of the laser beam simulation line segments, specifically for a laser beam simulation line segment in one direction, when it is determined that the count value of the pre-configured obstacle grid is greater than a preset number threshold, the laser beam simulation line segment where the line connecting the observation point and the target positioning point is located is set as a laser beam simulation line segment with a judgment function, and the laser beam simulation line segment with a judgment function is obtained in the one frame of laser point cloud, and then a laser beam corresponding to the straight line direction pointing from the observation point to the target positioning point is marked as the laser beam with a judgment function. That is, within a frame of the laser point cloud, whenever a count value of the preconfigured obstacle grid is determined to be greater than a preset threshold along a laser beam simulation line segment, the laser beam simulation line segment connecting the observation point and the target positioning point is set as a laser beam simulation line segment with a judgment function, thereby obtaining a laser beam simulation line segment with a judgment function, which serves as a newly determined laser beam simulation line segment with a judgment function or a laser beam with a judgment function within the frame of the laser point cloud. This extracts a laser beam simulation line segment that has traversed a sufficient number of obstacles, representing the number of obstacles detected by the mobile robot during its movement along the line connecting the observation point and the target positioning point. This further simulates the mobile robot's encounters with obstacles during its movement along the laser beam simulation line segment, as well as the number and distribution characteristics of obstacles in the corresponding laser observation direction. Therefore, the laser beam simulation line segment can serve as a simulated route for the mobile robot to traverse the obstacle grid.
[0050] It should be noted that the preset number threshold is the experimental result obtained by constructing a raster map using the laser point cloud collected in real time when the mobile robot is lifted or dropped. It is the threshold value of the number of obstacles in a specific direction obtained through repeated experiments in the area to be detected, so as to distinguish the raster map information constructed by the laser point cloud collected on a flat traveling plane.
[0051] Preferably, the robot suspension judgment method further includes not setting the laser beam simulation line segment where the target positioning point and the observation point are located as the laser beam simulation line segment with judgment function when the line connecting the observation point and the target positioning point does not pass through the obstacle grid, then within the laser point cloud frame, the number of the laser beam simulation line segments with judgment function currently obtained is incremented to 0. Figure 3 It can be seen that if the line connecting the observation point O and the currently obtained target positioning point M1 does not pass through the obstacle grid, the laser beam simulation line segment ON1 where the currently obtained target positioning point M1 and the observation point O are located is not set as the laser beam simulation line segment with judgment function, which is equivalent to not performing the counting operation of the aforementioned embodiment. Then, within the laser point cloud frame, the number of the currently obtained laser beam simulation line segments with judgment function increments to 0. Therefore, among the lines connecting the same observation point O and multiple target positioning points (corresponding to multiple laser beams or multiple laser beam simulation line segments), the lines that do not pass through obstacles are directly excluded, that is, the laser beam simulation line segments (the laser beams to which they belong, that is, the laser beams with which there is a conversion relationship) are abandoned, thereby improving judgment efficiency.
[0052] Preferably, the robot suspension judgment method further includes: when the length of the line connecting the target positioning point and its corresponding laser point is greater than the length of the line connecting the observation point and the same laser point, the laser beam simulation line segment where the target positioning point is located is not set as the laser beam simulation line segment with judgment function, and in the laser point cloud frame, the number of the laser beam simulation line segments with judgment function currently obtained is incremented to 0. Figure 3 Based on this, it can be seen that if the length of the line connecting the target positioning point M2 and its corresponding laser point N2 is greater than the length of the line connecting the observation point O and the laser point N2, that is, the length of the line segment M2N2 is greater than the length of the line segment ON2, it indicates that the ranging error of the laser beam simulation line segment ON2 emitted and converted by the laser sensor is large. In this case, the laser beam simulation line segment ON2 is not set as the laser beam simulation line segment with the judgment function, which is equivalent to not performing the counting operation of the aforementioned embodiment. In this case, the number of the laser beam simulation line segments with the judgment function currently obtained in the laser point cloud frame is incremented to 0. This eliminates the laser beam with a large ranging error of the laser sensor.
[0053] In the aforementioned embodiment, the manner in which the laser point is in the grid includes the laser point being located within the area surrounded by the four sides of the grid, and the laser point being located on the edge of the grid, so as to reflect the two-dimensional position information of the scanned object, that is, the position of the feature point reflected from the surface of the scanned object is converted into coordinate information in the grid map; wherein, in the laser point cloud frame, the observation point is fixed, indicating that the laser sensor is fixed at a specific position; a target positioning point corresponds to a laser point, a laser beam corresponds to a laser point, a laser beam simulation line segment corresponds to a laser point, and a laser beam corresponds to a laser beam simulation line segment, so that each laser beam can reflect the corresponding positioning information in the grid map and be represented by a specific laser point.
[0054] In the above embodiment, the method for determining whether the robot is suspended in mid-air further includes:
[0055] After a laser sensor (i.e., a single-line laser radar or a multi-line laser radar) emits one or more laser beams, each laser beam rotates one revolution along with the laser probe of the laser sensor. The laser information reflected by the laser beam within the detection area is converted into laser points within the grid map. A laser point indicates where the scanned location falls within the grid map. Each time the laser beam rotates one revolution within the detection area (i.e., one or more laser beams scan and cover the detection area once), the converted laser points form a frame of the laser point cloud. Each laser beam corresponds to one laser point, and each scanning angle corresponds to one laser point. The laser points corresponding to all scanning angles form a frame of the laser point cloud.
[0056] For a fixed scanned object, the laser sensor can be moved to obtain as much physical surface point information as possible. When a laser beam is irradiated on the surface of the scanned object, the reflected laser information will carry information such as direction and distance. By combining the principles of laser measurement and photogrammetry, a point cloud is obtained, including coordinates (XY), laser reflection intensity (Intensity), and color information (RGB). Specifically, after the laser sensor obtains the spatial coordinates of each sampling point on the surface of the scanned object, it obtains a collection of points, called a point cloud. This makes the point cloud also a massive collection of points of target surface characteristics. When the three-dimensional data obtained from different observation points (understood as laser sensors located at different positions or laser sensors moved to different positions in sequence) have a certain intersection and can completely cover the scanned object, it means that sufficient surface three-dimensional point cloud data has been obtained. Among them, the point clouds obtained from different observation points are uniformly transformed into a map coordinate system.
[0057] It should be noted that a laser point is the laser information reflected from the scanned object, collected by the laser sensor, converted into coordinate points on a raster map. A laser point is a laser scanning point or sampling point, reflecting position information (including the detection distance and detection angle to the scanned object's surface) and laser reflection intensity. Specifically, if a laser sensor scans the scanned object along a certain trajectory, it records the reflected laser point information while scanning. Due to the extremely precise scanning, a large number of laser points can be obtained, thus forming a laser point cloud. Laser sensors are generally laser radars that support 360-degree rotational scanning and are equipped with a laser transmitting probe and a receiving probe. Specifically, the laser information reflected from the scanned object collected by the laser sensor includes a laser radar data packet, which includes several frames of laser point cloud data. Each frame of laser point cloud data includes several laser points, and each laser point contains an angle (counterclockwise is the positive direction) and a distance.
[0058] In the grid map, the line between an observation point and a laser point is set as the laser beam simulation line segment, and the laser beam is determined to be mapped as the laser beam simulation line segment in the grid map, so that one laser beam simulation line segment corresponds to one laser point; wherein the observation point is the position marked by the laser sensor in the grid map, which is used to indicate the starting point of the laser beam emission and is marked as the current position of the mobile robot.
[0059] In some embodiments, when a frame of laser point cloud is acquired, it is easy for those skilled in the art to obtain the position and angle of each laser point in the laser radar coordinate system and the environmental intensity information carried by it in the frame of laser point cloud. The laser radar is fixed on the mobile robot. In some embodiments, the two frames of laser point cloud correspond to the same entity in the physical space. The reason why the two frames of laser point cloud appear different is that when the laser radar follows the movement of the mobile robot, it is possible that laser point cloud A corresponds to the posture of the robot in the previous frame, and laser point cloud B corresponds to the posture of the robot in the current frame; after aligning the two frames of laser point cloud, the relative posture relationship between the previous and next frames can be calculated.
[0060] On the basis of the above embodiments, the present invention also discloses a map updating method based on laser points, such as Figure 2 As shown, the map updating method includes the following steps:
[0061] Step S201 , controlling the laser beam emitted by the laser sensor to scan the area to be detected, obtaining a laser beam simulation line segment; and simultaneously obtaining a pre-constructed grid map; and then proceeding to step S202 .
[0062] Step S202: According to the number of obstacle grids passed by the laser beam simulation line segment in step S201 within the allowable range of ranging error, obtain the laser beam simulation line segments with judgment function, and count the laser beam simulation line segments with judgment function; then enter step S203.
[0063] Step S203: Within a frame of the laser point cloud, which can be each frame of the laser point cloud, determine whether the ratio of the number of the laser beam simulated line segments with judgment function obtained in step 202 to the number of all mapped laser beam simulated line segments is greater than a preset ratio threshold. If so, the process proceeds to step S204; otherwise, the process proceeds to step S205. It should be noted that this step involves the determination of the ratio for all laser beam simulated line segments corresponding to laser points in multiple directions relative to the aforementioned observation point (the mobile robot's body position).
[0064] Step S205: Update the information carried by the frame of laser point cloud to the associated information of the corresponding hit grid in the grid map.
[0065] Step S204: Stop updating the grid map.
[0066] It should be noted that the specific execution actions involved in steps S201 to S203 refer to the corresponding embodiment of the aforementioned robot suspension judgment method, which will not be repeated here.
[0067] In step S204, the previously constructed grid map is immediately stopped from being updated. Instead, the previously constructed grid map is retained, including the coordinate position information, angle information, and obstacle occupancy probability information of the relevant grids. This prevents the previously constructed grid map from being updated with the real-time laser point cloud during the process of determining whether the robot is in an airborne state. This avoids the problem of map overlap and ambiguity caused by the lag of related detection methods in the prior art. In the corresponding working scenario of a mobile robot, when the mobile robot traverses an obstacle (such as a low toy obstacle, a slope, or a threshold), the mobile robot may scan laser point cloud information outside the wall due to its increased height. If this is superimposed on the previously constructed map, the grid map will reflect the wall obstacle that should have been marked as blocking the robot's progress, but instead reflect the point cloud information on the back side of the wall within the detection area. Therefore, in this case, step S204 does not allow the grid map to be updated with the currently collected laser point cloud information. This avoids map overlap and ambiguity in the real-time constructed map when the robot is lifted or falls. It cannot reflect the actual working area of the robot; in addition, when the mobile robot falls from the steps, the laser sensor may scan the laser point cloud information of the horizontal ground due to the reduction in the detection height. If it is superimposed on the pre-constructed map, the obtained positioning information is all point cloud information of the horizontal ground, so that the location information actually marked in the map is outside the target detection area. Therefore, at this time, step S204 does not allow the raster map to be updated by the currently collected laser point cloud information, so as to avoid the map overlapping and blurring in the real-time constructed map in the scenario where the robot is lifted or falls, so as to fail to reflect the actual working area of the robot.
[0068] Step S205 allows for timely updates to the previously constructed grid map, including updating the coordinate position information, angle information, and obstacle occupancy probability information of the relevant grids. This allows the robot to reflect its true working area and facilitate operation within the true working area along its established motion path (including its motion direction). Therefore, within the constrained laser beams corresponding to the same frame of the laser point cloud, the decision to update the previously constructed grid map is based on the ratio of the number of laser beams with a judgment function to the number of laser beams in all detectable directions. The map update strategy is then adjusted promptly based on determining whether the robot is in an airborne state. In this embodiment, each laser point in a frame of the laser point cloud corresponds to a laser beam, and within a frame of the laser point cloud, each laser point is matched to a unique laser beam.
[0069] Compared with the existing technology, the beneficial technical effect of the above steps is that, based on the number and ratio information of the obstacle grids passed by the laser beam corresponding to a frame of laser point cloud in the grid map, it is judged whether the robot will become a suspended state or whether there is a trend of becoming a suspended state when moving in the said detection area before updating the map, instead of making a real-time judgment in the scenario where the robot has become a suspended state and the corresponding map is updated in real time. The map construction method is decided on the basis of knowing the corresponding robot behavior state information or the behavior state trend appearing in front of its travel plane, and the decision is made to update the pre-constructed grid map, so as to construct a map with passability, avoid the map overlapping and blurring in the real-time constructed map in the scenario where the robot is lifted or falls, so as to be unable to reflect the actual working area of the robot, so that the robot can continue to use the currently constructed grid map for navigation and positioning.
[0070] Specifically, the method for updating the information carried by the laser point cloud frame with associated information of a corresponding hit grid in the grid map includes: updating the pose information carried by the laser point cloud frame with the position information of the corresponding hit grid in the grid map, so as to configure the grid most recently hit by the corresponding laser point in the grid map and match the real-time pose information of the robot; wherein the laser points present in the laser point cloud frame are coordinate points of scanned positions within the area to be detected converted to the coordinate system of the grid map, wherein the pose information carried by the laser points includes angle information and distance information; and simultaneously, updating the probability information of an obstacle at the scanned position falling into the corresponding grid position of the grid map with the probability information of the corresponding hit grid of the laser point in the grid map, so that the updated grid map fully reflects the target working area of the robot.
[0071] It should be noted that both two-dimensional and three-dimensional grid maps include information indicating the probability of an obstacle existing at a specific location or area. The mobile robot's laser sensor can scan the object to obtain its corresponding position information, and based on this information, the probability of the object falling within the corresponding grid position on the map is calculated. At different times in the same posture, the mobile robot's laser sensor can detect a fixed obstacle (the object to be detected) at different distances. For example, a frame of laser point cloud captured at one moment may have a detection distance of 5 meters, while a frame of laser point cloud captured at another moment may have a detection distance of 5.1 meters. To avoid simultaneously marking both positions of 5 meters and 5.1 meters as fixed obstacles, an occupancy grid map construction algorithm is used to calculate the probability of the fixed obstacle falling within (hitting) the corresponding grid position on the map. The precise location of the fixed obstacle in the map is then determined based on the magnitude of the probability. In the prior art, the size of the mobile robot and the space it occupies are generally not considered. Therefore, in the present invention, the mobile robot is reduced to a point regardless of whether the map changes. Specifically, a grid map with a certain resolution is composed of a certain number of laser points, specifically constructed from a 5cm*5cm probability grid [Pmin, Pmax]. Whether it is a 2D or 3D grid map, when the map is created, a grid probability less than Pmin indicates that there is no obstacle at that grid location; between Pmin and Pmax indicates unknown; and greater than Pmax indicates that there is an obstacle at that grid location. Each frame of the laser point cloud generates a grid, in which each grid is assigned an occupancy probability value. If the grid already has a probability value, the probability value of the grid needs to be updated.
[0072] Preferably, the grid that the laser point hits in the grid map is the grid with the smallest positioning error with the scanned location point, including a neighboring grid of the grid where the laser point is located, or a grid where the laser beam simulated line segment passes and is at a reasonable distance from the laser point, so that the laser point more accurately reflects its physical location information.
[0073] Embodiments of the present invention further disclose a chip that, by executing internally stored algorithmic program code, implements any step of the robot suspension determination method disclosed in the aforementioned related embodiments and / or any step of the map update method disclosed in the aforementioned related embodiments. When the aforementioned mobile robot is a cleaning robot, the cleaning robot can be equipped with the chip to detect whether the cleaning robot's drive wheels are suspended and whether there are steps, cliffs, or slopes in front of the mobile robot's travel plane.
[0074] Specifically, the chip is located on a circuit board within the cleaning robot's body and includes a computing processor, such as a central processing unit (CPU) or an application processor, that communicates with non-transitory memory, such as a hard drive, flash memory, or random access memory. The application processor executes a mapping algorithm, such as Simultaneous Localization and Mapping (SLAM), based on obstacle information fed back by a laser sensor. This algorithm creates a real-time map of the robot's environment and marks the locations of obstacles. In some embodiments, the chip combines distance and speed information fed back by sensors such as a laser sensor, a cliff sensor, a drop sensor (a limit switch trigger), a magnetometer, an accelerometer, a gyroscope, and an odometer mounted on the bumper to comprehensively determine the cleaning robot's current operating state, location, and posture, such as when crossing a threshold, on a carpet, on a stairway cliff, when the dust box is full, or when the robot is lifted. Specific next-step action strategies are also provided for different situations, enabling the cleaning robot to better meet the user's needs and provide a better user experience.
[0075] Obviously, the above embodiments are merely examples for clarity of explanation and are not intended to limit the implementation methods. Those skilled in the art will readily appreciate that other variations or modifications based on the above descriptions are possible. It is not necessary and impossible to enumerate all implementation methods here. Obvious variations or modifications arising therefrom remain within the scope of protection of the present invention.
Claims
1. A robot suspension judgment method based on laser points, which is applicable to a mobile robot equipped with a laser sensor, and is characterized in that: The robot suspension judgment method includes: Control the laser beam emitted by the laser sensor to scan the area to be detected, obtain the laser beam simulation line segment; and simultaneously obtain the pre-built grid map; According to the number of obstacle grids that the laser beam simulation line segment passes through within the allowable range of ranging error, the laser beam simulation line segment with judgment function is obtained, and the laser beam simulation line segment with judgment function is counted; determining whether the mobile robot is in an airborne state, or determining whether the mobile robot has a tendency to become airborne in front of its travel plane, based on a ratio of the number of the laser beam simulation line segments having a judgment function to the number of all the laser beam simulation line segments; The method for determining whether the mobile robot is in a suspended state or determining whether the mobile robot has a tendency to become suspended in front of its travel plane based on the ratio of the number of laser beam simulation line segments with judgment function to the number of all laser beam simulation line segments includes: Controlling the laser beam to be mapped into the laser beam simulation line segment in the grid map, wherein when acquiring a frame of laser point cloud, the position of the laser sensor in the area to be detected remains unchanged; In a frame of laser point cloud, when the ratio of the number of the obtained laser beam simulated line segments with judgment function to the number of all mapped laser beam simulated line segments is less than or equal to a preset ratio threshold, it is determined that the mobile robot is not in an airborne state, or that the mobile robot has no tendency to become an airborne state in front of its travel plane; In a frame of laser point cloud, when the ratio of the number of the obtained laser beam simulation line segments with judgment function to the number of all mapped laser beam simulation line segments is greater than a preset ratio threshold, it is determined that the mobile robot is in a suspended state, or it is determined that the mobile robot has become suspended in front of its travel plane.
2. The method for determining whether a robot is suspended in mid-air according to claim 1, wherein: The suspended state includes the front part of the body of the mobile robot being tilted and lifted, so as to ensure that the mobile robot is lifted relative to the current travel plane during movement, and the driving wheels of the mobile robot are in a suspended state; The suspended state also includes the front part of the body of the mobile robot tilting downward to determine that the mobile robot falls relative to the current travel plane during movement, and the driving wheels of the mobile robot become suspended.
3. The method for determining whether a robot is suspended in mid-air according to claim 1, wherein: The source of the obstacle grid that the laser beam simulation line segment passes through within the allowable range of ranging error is: In the grid map, along the straight line from the laser point to the observation point, a point at a preset error distance from the laser point is set as a target positioning point; wherein the line connecting the observation point and the laser point is the laser beam simulation line segment; and the observation point is the position marked by the laser sensor in the grid map; Then, under the premise of excluding the grid where the observation point is located and the grid where the target positioning point is located, the obstacle grid through which the line connecting the observation point and the target positioning point passes is marked as a pre-configured obstacle grid, and it is determined that the pre-configured obstacle grid is the obstacle grid through which the laser beam simulation line segment passes within the allowable range of ranging error; wherein, the obstacle grid is the grid occupied by the obstacle in the area to be detected in the grid map.
4. The method for determining whether a robot is suspended in mid-air according to claim 3, wherein: When the observation point is located on the edge of a grid, the grid where the observation point is located is the first grid that the laser beam simulation line segment passes through along its laser observation direction; wherein the laser observation direction is the straight line direction from the observation point to the laser point to form the laser observation direction of the laser beam simulation line segment; When the target positioning point is located on the edge of a grid, the grid where the target positioning point is located is the first grid that the line connecting the target positioning point and the laser point passes through along the laser observation direction.
5. The method for determining whether a robot is suspended in mid-air according to claim 3, wherein: The method for obtaining a laser beam simulated line segment having a judgment function according to the number of obstacle grids passed by the laser beam simulated line segment within the allowable range of ranging error includes: In the laser beam simulation line segment, along the line connecting the observation point and the target positioning point, the pre-configured obstacle grids passed by the line are counted. When it is determined that the count value of the pre-configured obstacle grid is greater than a preset number threshold, the laser beam simulation line segment where the line connecting the observation point and the target positioning point is located is set as a laser beam simulation line segment with a judgment function, and then a laser beam corresponding to the straight line direction from the observation point to the target positioning point is marked as the laser beam with a judgment function.
6. The method for determining whether a robot is suspended in mid-air according to claim 5, wherein: The robot suspension judgment method also includes: when the line connecting the observation point and the target positioning point does not pass through the obstacle grid, the laser beam simulation line segment where the target positioning point and the observation point are located is not set as the laser beam simulation line segment with judgment function, and the currently obtained number of the laser beam simulation line segments with judgment function is incremented to 0.
7. The method for determining whether a robot is suspended in mid-air according to claim 5, wherein: The robot suspension judgment method also includes: when the length of the line connecting the target positioning point and the laser point is greater than the length of the line connecting the observation point and the same laser point, the laser beam simulation line segment where the laser point and the observation point are located is not set as the laser beam simulation line segment with judgment function, and the currently obtained number of the laser beam simulation line segments with judgment function is incremented to 0.
8. The method for determining whether a robot is suspended in mid-air according to claim 3, wherein: When the length of the line connecting the observation point and the laser point is less than a preset threshold length, the preset error distance is a fixed value; When the length of the line connecting the observation point and the laser point is greater than or equal to a preset threshold length, the preset error distance is positively correlated with the length of the laser beam simulation line segment.
9. The method for determining if a robot is suspended in mid-air according to any one of claims 4 to 8, wherein: The manner in which the laser point is located in the grid includes the laser point being located within the area surrounded by four sides of the grid and the laser point being located on the edge of the grid, so as to reflect the two-dimensional position information of the scanned object; Among them, in the laser point cloud frame, the observation point is fixed, a target positioning point corresponds to a laser point, a laser beam corresponds to a laser point, a laser beam simulation line segment corresponds to a laser point, and a laser beam corresponds to a laser beam simulation line segment.
10. The method for determining if a robot is suspended in mid-air according to any one of claims 1 to 8, wherein: The robot hanging judgment method further includes: Controlling the conversion of laser information reflected by the laser beam in the area to be detected into laser points in the grid map, wherein the laser points are used to indicate the location points where the scanned position points fall within the grid map; whenever the laser beam rotates one circle in the area to be detected, the converted laser points are combined into a frame of the laser point cloud; wherein one laser beam corresponds to one laser point, and one scanning angle corresponds to one laser point; In the grid map, a line connecting an observation point and a laser point is set as the laser beam simulation line segment, and the laser beam is mapped into the laser beam simulation line segment in the grid map so that one laser beam simulation line segment corresponds to one laser point; The observation point is the position marked by the laser sensor in the grid map, which is used to indicate the emission starting point of the laser beam.
11. A map updating method based on laser points, characterized in that: The map updating method includes the robot suspension determination method according to any one of claims 1 to 10; The map updating method further includes: In the frame of laser point cloud, when the ratio of the number of the obtained laser beam simulated line segments with judgment function to the number of all mapped laser beam simulated line segments is less than or equal to a preset ratio threshold, the information carried by the frame of laser point cloud is updated with the associated information of the corresponding hit grid in the grid map, so as to realize the update of the pre-constructed grid map in the area to be detected; In the laser point cloud frame, when the ratio of the number of the obtained laser beam simulation line segments with judgment function to the number of all mapped laser beam simulation line segments is equal to a preset ratio threshold, the grid map is stopped from being updated.
12. The map updating method according to claim 11, characterized in that: The method of updating the information carried by the frame of laser point cloud to the associated information of the corresponding hit grid in the grid map includes: Updating the pose information carried by the frame of laser point cloud to the position information of the corresponding hit grid in the grid map, so as to configure the grid that the corresponding laser point has most recently hit in the grid map; wherein the laser point existing in the frame of laser point cloud is the coordinate point of the scanned position point in the area to be detected converted to the coordinate system of the grid map, wherein the pose information carried by the laser point includes angle information and distance information; At the same time, the probability information of the obstacle at the scanned position falling into the corresponding grid position of the grid map is updated to the probability information of the corresponding grid hit by the laser point in the grid map.
13. The map updating method according to claim 12, characterized in that: The grid corresponding to the hit of the laser point in the grid map is the grid with the smallest positioning error with the scanned position point, including a neighborhood grid of the grid where the laser point is located, or a grid where the point through which the laser beam simulated line segment passes and is at a reasonable distance from the laser point.
14. A chip, characterized in that: The chip implements the robot suspension judgment method according to any one of claims 1 to 10 and / or the map updating method according to any one of claims 11 to 13 by executing the algorithm program code stored internally.
Citation Information
Patent Citations
Mobile robot indoor route planning method based on array map
CN105652876A
Multiline laser radar vehicle object recognition method and vehicle anti-collision device
CN106054208A