Fall prevention method and device for robot, robot and storage medium
By acquiring and utilizing calibration and detection data from the global terrain map, the robot can accurately identify transparent terrain areas, avoid accidentally triggering the anti-fall mechanism, and improve the robot's adaptability and safety.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- KEENON ROBOTICS CO LTD
- Filing Date
- 2023-05-19
- Publication Date
- 2026-04-14
AI Technical Summary
Existing robots are prone to accidentally triggering anti-fall mechanisms in transparent terrain areas, resulting in poor adaptability and safety.
Obtain the robot's global terrain map, including at least two terrain attributes and calibration detection data for special terrain areas. Determine the target area based on the robot's positioning information and the global terrain map. By comparing the current detection data with the calibration detection data, determine whether to trigger the anti-fall mechanism.
This improves the robot's robustness and safety in transparent terrain areas, prevents accidental triggering of the anti-fall mechanism, and ensures stable operation.
Smart Images

Figure CN116533240B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robotics technology, and more particularly to a method, apparatus, robot, and storage medium for preventing robots from falling. Background Technology
[0002] With the rapid development and widespread adoption of robotics technology, robots are increasingly being used in various practical applications. During operation, robots are typically equipped with sensors to detect obstacles or avoid falling from stairs or other surfaces, thus assessing the presence of potential hazards.
[0003] To prevent robots from falling during operation, range sensors are installed to detect their direction of travel. The distance data obtained from these sensors is compared with the robot's structural height; if the discrepancy is too large, a fall risk is considered, restricting the robot's passage and triggering emergency braking or alarms to prevent a fall. However, this method cannot identify certain terrain areas, such as those with transparent materials. In these areas, the terrain data detected by the robot's range sensors may not reflect the actual ground conditions. For example, because range sensors cannot measure distances through transparent materials, if the robot is walking on such terrain, the measured drop may be greater than the actual drop, potentially triggering the fall protection mechanism and reducing the robot's adaptability. Disabling the fall protection mechanism, on the other hand, compromises the robot's safety. Summary of the Invention
[0004] This application provides a method, apparatus, robot, and storage medium for preventing robots from being accidentally triggered, thereby improving the robot's adaptability, robustness, and safety.
[0005] According to one aspect of this application, a method for preventing a robot from falling is provided, the method comprising:
[0006] Obtain the robot's global terrain map; the global terrain map includes at least two terrain attributes, and also includes calibration and detection data corresponding to special terrain areas;
[0007] Based on the robot's location information and the global terrain map, determine the robot's target area in the global terrain map;
[0008] If the target area is determined to be a special terrain area, then based on the robot's current detection data and the target area's calibration detection data, it is determined whether the robot should trigger the anti-fall mechanism.
[0009] According to another aspect of this application, a fall prevention device for a robot is provided, the device comprising:
[0010] The global map acquisition module is used to acquire the robot's global terrain map; the global terrain map includes at least two terrain attributes, and also includes calibration and detection data corresponding to special terrain areas;
[0011] The target area determination module is used to determine the target area of the robot in the global terrain map based on the robot's positioning information and the global terrain map.
[0012] The anti-fall trigger module is used to determine whether the robot should trigger the anti-fall mechanism based on the robot's current detection data and the calibration detection data of the target area.
[0013] According to another aspect of this application, a robot is provided, the robot comprising:
[0014] At least one processor; and
[0015] A memory communicatively connected to the at least one processor; wherein,
[0016] The memory stores a computer program that can be executed by the at least one processor, which enables the at least one processor to perform the fall prevention method for the robot described in any embodiment of this application.
[0017] According to another aspect of this application, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the fall prevention method for a robot according to any embodiment of this application.
[0018] In the technical solution of this application embodiment, a global terrain map including at least two terrain attributes and calibration detection data of special terrain areas is acquired. This global terrain map is used as the detection basis. Based on the robot's current detection data in the target area and the global terrain map, potential special terrain areas are identified, thereby determining whether the robot needs to trigger the anti-fall mechanism. This enables the robot to quickly detect and compare terrain data during operation, efficiently judging whether there are anomalies in the current driving environment. This helps the robot rationally choose whether to trigger the anti-fall mechanism, further preventing accidental triggering of the anti-fall mechanism, improving the robot's robustness and safety, and ensuring stable operation.
[0019] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this application, nor is it intended to limit the scope of this application. Other features of this application will become readily apparent from the following description. Attached Figure Description
[0020] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0021] Figure 1 This is a flowchart of a method for preventing a robot from falling, according to Embodiment 1 of this application;
[0022] Figure 2A This is a flowchart of a method for preventing a robot from falling, provided in Embodiment 2 of this application;
[0023] Figure 2B This is a schematic diagram of transparent material terrain detection applicable to Embodiment 2 of this application;
[0024] Figure 2C This is a calibration diagram of the transparent slope applicable to Embodiment 2 of this application;
[0025] Figure 3A This is a schematic diagram of a grid map provided according to Embodiment 3 of this application;
[0026] Figure 3B This is a schematic diagram of a grid map marker provided according to Embodiment 3 of this application;
[0027] Figure 3C It is a topographic profile of the applicable scenario according to Embodiment 3 of this application;
[0028] Figure 4 This is a schematic diagram of the structure of a robot anti-fall device according to Embodiment 4 of this application;
[0029] Figure 5 This is a schematic diagram of the structure of a robot that implements the fall prevention method of the robot in the embodiments of this application. Detailed Implementation
[0030] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0031] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0032] Example 1
[0033] Figure 1 This application provides a flowchart of a robot fall prevention method according to Embodiment 1. This embodiment is applicable to situations where robots operate in complex environments. The method can be executed by a robot fall prevention device, which can be implemented in hardware and / or software and can be configured in a robot. Figure 1 As shown, the method includes:
[0034] S110. Obtain the robot's global terrain map; wherein, the global terrain map includes at least two terrain attributes, and the global terrain map also includes calibration and detection data corresponding to special terrain areas.
[0035] The robot can be any type of programmable autonomous mobile device, such as a planar mobile robot, and can play a corresponding role in service scenarios such as logistics, delivery, and cleaning. The global terrain map can be map data that includes all terrain information in the target space; for example, it could be a map of a restaurant or a map of a floor of a hotel. This global terrain map can be in raster format. The robot described in this embodiment can be used to utilize the global terrain map, and can also be used to construct or generate it. That is, the robot that generates the global terrain map and the robot that uses the map can be the same robot. This embodiment does not limit the purpose of the robot.
[0036] Terrain attributes can be the category information of terrain existing in the target space, such as including but not limited to flat ground, raised obstacles, depressions, and even transparent terrain, as well as uphill and downhill terrain along the robot's travel direction. In reality, the area where the robot travels is not only flat ground, but often contains more complex terrain. Therefore, the global terrain map can contain these various terrain information to help the robot avoid obstacles or prevent falls. It is understood that special terrain areas are relative to normal ground. In special terrain areas, when the robot is traveling normally, the distance values detected by the sensors deviate from the detection data when the robot is traveling normally on normal ground, thus affecting the accuracy of fall protection triggering. For example, special terrain areas can be transparent ramps, transparent level ground areas, etc. In transparent terrain areas, the robot is traveling on a transparent material surface, but the sensors will detect data of the non-transparent material surface below the transparent area, which can easily trigger fall protection falsely. It is understood that any terrain area where the distance values detected by the sensors deviate from the detection data when the robot is traveling normally on normal ground can be defined as a special terrain area in this application.
[0037] Correspondingly, calibration detection data can be quantified data obtained by detecting and calibrating terrain in special terrain areas. The global terrain map can include calibration detection data corresponding to special terrain areas. In other words, the global terrain map can pre-store the quantified terrain data of these different special terrain areas to help the robot accurately identify different special terrains during operation. Since the global terrain map can be pre-stored on the robot's local machine or on a server and in the cloud, it can be directly accessed by the robot in motion.
[0038] In one alternative implementation, the special terrain area may include a terrain area made of transparent material, and the calibration detection data is obtained based on the robot's LiDAR and / or the robot's stereo vision sensor.
[0039] Transparent terrain areas can be any type of terrain made of transparent materials, such as slopes and flat ground made of transparent materials. In practice, this includes, but is not limited to, flat ground, slopes, and bridges constructed from glass, translucent plastics, etc. It should be noted that the hardware devices used by robots for spatial and obstacle recognition typically include LiDAR and visual sensors. By identifying terrain in space using LiDAR and / or visual sensors, not only can the mapping robot generate corresponding calibration and detection data, but it can also help the robot navigate the target space to recognize its environment, thereby ensuring the robot's safe operation.
[0040] S120. Based on the robot's positioning information and the global terrain map, determine the target area of the robot in the global terrain map.
[0041] The location information can be the robot's position in the target space. For example, the robot's actual physical location can be confirmed through a navigation and positioning system, and then matched with the global terrain map obtained in the previous steps to determine the area where the robot is located in the global terrain map, i.e., the target area. For instance, the robot's location information and its location (the target area) can be determined by matching the laser data detected by the robot's LiDAR with the laser map. It is understood that determining the robot's location in the global terrain map helps in subsequently determining whether there are any special terrain features within the target area.
[0042] S130. If the target area is determined to be a special terrain area, then based on the robot's current detection data and the target area's calibration detection data, determine whether the robot should trigger the anti-fall mechanism.
[0043] When a robot detects an environment in a target area that differs from normal ground, such as a transparent surface, using its own LiDAR and / or vision sensors, the target area is considered a special terrain area. The robot's current detection data can be the terrain data identified by its LiDAR and / or vision sensors before it moves into the target area. Of course, the method for identifying terrain data can be determined based on the laser ranging principle of LiDAR and / or image processing algorithms of vision, etc., and this application embodiment does not specifically limit this. By comparing the current detection data with the calibration detection data, it is determined whether the robot needs to activate the anti-fall mechanism. It is understood that if the current detection data and the calibration detection data differ significantly, it means that there are some problems with the terrain detection in the target area (terrain changes or detection failures, etc.), and the robot needs to determine whether to implement anti-fall protection.
[0044] In one optional implementation, determining whether the robot triggers the anti-fall mechanism based on the robot's current detection data and the calibration detection data of the target area may include: if the difference between the current detection data and the calibration detection data meets a preset threshold range, then controlling the robot not to trigger the anti-fall mechanism.
[0045] The preset threshold range can be an evaluation standard between the current detection data and the calibrated detection data. The anti-fall mechanism can be one of the robot's functions; when it detects obstacles, pits, cliffs, or other anomalies, it can control the robot to perform corresponding anti-fall actions (such as detouring, stopping, or issuing an alarm).
[0046] If the difference between the current detection data and the calibration detection data is within a preset threshold range, there is no need to control the robot to activate the anti-fall mechanism. In other words, if the difference between the current detection data and the calibration detection data is slight, it means that the terrain currently detected in this area is the same (or similar) to the terrain detected during the calibration period, so the robot can be controlled not to activate the anti-fall mechanism. Similarly, if the difference between the current detection data and the calibration detection data exceeds the preset threshold range, the robot will activate the anti-fall mechanism. In other words, if the difference between the current detection data and the calibration detection data is significant, it means that the terrain currently detected in this area is seriously inconsistent with the terrain detected during the calibration period, that is, there are unknown terrain or detection errors, so the robot can be controlled to activate the anti-fall mechanism to prevent the robot from falling on the travel path and ensure the stable operation of the robot.
[0047] Continuing the previous example, taking transparent terrain as an example, during calibration, relevant technicians can manually calibrate and pre-store the identified transparent terrain data as calibration detection data. When the robot moves autonomously through this area, if the real-time detected data is very close to the calibrated data, then the identified terrain data is considered to be basically consistent with the known transparent terrain data in this area. Therefore, it can be determined that the current area is transparent terrain, and continued movement will not cause the robot to tip over. Thus, the robot's anti-fall mechanism is not triggered. Conversely, if the real-time detected data differs significantly from the calibrated data while the robot is moving autonomously through this area, then the identified terrain data is considered to be inconsistent with the known transparent terrain data in this area. This indicates the presence of other risks in the current area, such as abnormal positioning or environmental changes, making the passage unclear. The robot can then pause its movement and trigger appropriate audible and visual alarms. In the above implementation, the difference between the current detection data and the calibration detection data is calculated to help determine whether there are any special features or changes in the terrain, which can prevent the anti-fall mechanism from being triggered when encountering transparent terrain.
[0048] In the technical solution of this application embodiment, a global terrain map including at least two terrain attributes and calibration detection data of special terrain areas is acquired. This global terrain map is used as the detection basis. Based on the robot's current detection data in the target area and the global terrain map, potential special terrain areas are identified, thereby determining whether the robot needs to trigger the anti-fall mechanism. This enables the robot to quickly detect and compare terrain data during operation, efficiently judging whether there are anomalies in the current driving environment. This helps the robot rationally choose whether to trigger the anti-fall mechanism, further preventing accidental triggering of the anti-fall mechanism, improving the robot's robustness and safety, and ensuring stable operation.
[0049] Example 2
[0050] Figure 2A This is a flowchart of a robot anti-fall method provided in Embodiment 2 of this application. This embodiment is a further refinement of the method for determining the global terrain map based on the above-described embodiments.
[0051] like Figure 2A As shown, the method for determining the global terrain map includes:
[0052] S210, Obtain the robot's global map.
[0053] The robot can be a robot specifically designed for exploring space and building maps, or it can be a robot that moves autonomously within the target space as described in Embodiment 1. The global map can be initialized map data. This global map can be obtained by pre-scanning the target space; however, the global map may not include certain details, such as terrain data, which still require further exploration and calibration.
[0054] S220. Identify special terrain areas from the global map and generate a raster map in the special terrain areas.
[0055] In this embodiment, special terrain regions, as described in the preceding embodiments, are identified from the global map and then divided into grids. The methods for determining special terrain regions can include pre-mapping by a mapping robot or determination during trial operation using LiDAR and / or visual sensors, for example, in areas where sensor data consistently deviates from the normal range; alternatively, they can be divided by relevant technical personnel based on actual conditions and human experience, which is not limited in this embodiment. The grid division can be based on pre-defined rules, such as pre-defined grid dimensions (length and width). Grids defined as special terrain grids can include flat ground areas, such as adjacent areas of special terrain regions, so that the robot can promptly detect when it may move near a special terrain region. However, grids defined as ordinary grids cannot include special terrain regions. Of course, the specific pre-defined rules can be adaptively adjusted by relevant personnel according to specific circumstances. In this embodiment, the global map can be a grid map, and special terrain regions are some of the grids within it. Alternatively, a grid map can be generated only in special terrain regions to reduce computational load. Furthermore, the grid size of special terrain regions can differ from the grid size of other regions.
[0056] In one optional implementation, the step of determining a special terrain region from the global map and generating a grid map in the special terrain region may include: determining the special terrain region in the global map; determining the size of the grid to be loaded based on the area of the special terrain region and the robot's shape parameters; and loading the grid into the special terrain region to obtain a grid map.
[0057] The robot's external parameters can be the dimensional data of the robot that needs to move autonomously, such as, but not limited to, the robot's height, the length and width (or possibly radius) of the robot's chassis, and the radius and width of the robot's tires, etc., without exhaustive list. It is understandable that the robot's external parameters and the area of the special terrain region determine whether that special terrain region has a significant impact on the robot's passage. Using these two factors to determine the grid size, the special terrain region can be divided into more detailed sections, allowing the robot to identify the terrain according to the grid when passing through these areas. Loading the determined grid information into the acquired grid map yields the grid map, which will serve as the basis for the robot's calibration or autonomous exploration.
[0058] In this implementation, the size of the grid is determined based on the area of the special terrain region and the robot's own shape parameters, so that the grid is neither too large nor too small relative to the robot, which helps the robot to identify the terrain in the grid.
[0059] S230: Control the robot to traverse the grid map and obtain the detection data of each grid as calibration detection data.
[0060] The detection data for each grid cell represents the terrain data detected by the robot when it is positioned within that grid cell. This data can also be used for terrain information calibration during the global terrain map determination process. Based on the grid map obtained in the preceding steps, the robot is controlled to traverse all grid cells in the grid map, obtaining the detection terrain data corresponding to each grid cell, which is then used as calibration detection data for subsequent applications.
[0061] In one optional implementation, the control robot traverses the grid map and acquires the detection data of each grid as calibration detection data, which may include: determining the terrain height of the center point of the current grid and the angle between the current plane of the robot and the ground based on the current grid where the robot is located; determining terrain information as calibration detection data based on the terrain height and angle of the center point; and distinguishing and marking the traversed grids until the robot has traversed the entire grid map.
[0062] The current grid can be the grid the robot is currently in, or the grid the robot is about to enter (the specific configuration can be adjusted according to the actual situation). The terrain height can be the vertical height of the center point of the current grid, that is, the height of the terrain at the center point of the current grid. It should be further noted that in application scenarios with transparent terrain materials, such as... Figure 2B As shown, taking a transparent ramp as an example, when the robot travels across the transparent ramp, the distance sensor detects a distance of L1 between the sensor and the ground (i.e., the transparent ramp). However, when it passes through the transparent material, the distance detected by the sensor is L2, where L2 > L1. It is understandable that if the robot's fall prevention is implemented in the current way, the robot will inevitably perceive a pit or cliff with a depth of L2-L1 ahead, potentially causing the robot to stop abruptly or avoid obstacles.
[0063] In the embodiments of this application, such as Figure 2C As shown, the robot's location at the center of the current grid is not on flat ground, but on a slope made of transparent material. Therefore, the terrain height at the center of the current grid where the robot is located can be the height value H corresponding to the location of the center point.
[0064] In the same scene, the angle between the robot's current plane and the ground can be considered the slope angle between the transparent slope the robot is on and the ground. The height and slope angle can be used as terrain information for the current grid and stored as calibration detection data. During grid traversal, grids with calibrated terrain information are marked—that is, distinguished—to intuitively determine which grids have not yet been calibrated. Finally, all grids in the global map are traversed and calibrated, ending the calibration process. This implementation provides two specific indicators for calibrating terrain data: terrain height and terrain angle, thereby helping the robot recognize transparent terrain.
[0065] Furthermore, determining the angle between the current plane where the robot is located and the ground based on the current grid where the robot is located may include: determining the normal vector of the plane where the robot is located in the current grid; and determining the angle between the current plane where the robot is located and the ground based on the normal vector and the ground normal vector.
[0066] This can be achieved by using lidar and / or vision sensors mounted on the robot to measure the plane in which the robot is currently located. The acquired distance information can then be filtered and processed through plane extraction to determine the information of the plane in which the robot is located. Furthermore, the normal vector of the plane in which the robot is located can be determined using normal vector extraction methods from relevant technologies. Continuing the previous example, such as... Figure 2BAs shown, the robot is positioned on a transparent slope. The ground's normal vector can be directly obtained as any vertical normal vector. The angle between the slope's normal vector and the ground's normal vector is denoted as A. According to geometric principles, angle A is the angle between the slope and the ground. Of course, the calculation order for angle A and height H can be determined by first determining A and then H. It's understandable that directly determining the angle between the plane and the ground is cumbersome. Indirectly calculating the angle between the two planes using the angle between their normal vectors saves the robot measurement and computational resources and improves the efficiency of computational recognition.
[0067] S240. Load the calibration detection data into the global map to obtain the global terrain map.
[0068] By loading the calibrated terrain data from the preceding steps into the global map (or raster map), a global terrain map containing terrain information can be obtained.
[0069] The technical solution of this application further elaborates on the construction of a global terrain map. By pre-calibrating terrain data and loading it into the grid map, a judgment basis is provided for the anti-fall trigger during subsequent robot operation, improving the accuracy of preventing false triggers.
[0070] Example 3
[0071] This application embodiment is a preferred embodiment provided based on the foregoing implementation methods. In relevant robot scenarios, if there is a transparent material surface / ramp in the operating environment, the robot's ranging sensor cannot measure the distance to the transparent material. Therefore, the fall risk detection system will misidentify normal terrain as abnormal, such as the presence of a cliff, thus preventing the robot from operating in that scenario. Similarly, when the robot travels on a transparent surface / ramp, the ranging sensor cannot measure the distance to the transparent material, rendering the fall risk warning system unusable in environments with transparent ground materials. In such scenarios, the warning system must be disabled, affecting adaptability and robot safety. This application embodiment is illustrated using a scenario where the special terrain is transparent material. Specifically:
[0072] First, a designated area is defined as a special terrain region on the robot's global map. In this embodiment, this designated area is the region with transparent material terrain. Based on the area of the transparent material terrain region and the size of the robot, a suitable grid side length L is set to divide the global map into grids. Initially, each grid cell is in an unrecorded state, such as... Figure 3A The image shows a top-down view of a portion of the raster map within the global map. The raster side length is L, and unrecorded rasters are marked as -1. During the raster traversal, ordinary rasters are marked as 0, and rasters exhibiting special terrain are marked as 1, such as... Figure 3B As shown, if transparent slopes are found in grids (a1, b1), (a1, b2), and (a1, b3), then these three grids are marked as 1.
[0073] When setting the grid size, it's important to note that setting it too small can lead to an overly complex map, while a large number of grid cells can cause missed scans, requiring repeated driving and rescanning, thus reducing efficiency. Conversely, setting the grid size too large can result in overly sparse terrain data for ground and slope, particularly at boundaries (e.g., the intersection of (a1, b0) and (a1, b1)). Figure 3C As shown, significant data discrepancies can easily occur. Terrain data is collected once for each grid cell, and the currently collected data is used as the standard. To ensure the efficiency of collecting and calibrating terrain data, relevant technicians can supervise the robot's movement through various locations on the grid map until all grid cells have been recorded.
[0074] During calibration, the robot's built-in LiDAR and / or vision sensors are activated to filter the acquired distance information and extract the plane, obtaining the normal vector of the current measurement plane. A robot coordinate system is constructed based on the transparent slope where the robot is located, with the z-axis of the robot coordinate system corresponding to the normal vector of the transparent slope. The angle A between the ground normal vector and the robot's z-axis is calculated, along with the vertical height H of the grid center point above the ground (equivalent to the distance between the origin of the current robot coordinate system and the acquired plane). This angle and height value are used as the marker detection data for that grid. Loading this marker detection data into the grid map yields a global terrain map with terrain information.
[0075] During the robot's autonomous navigation based on the global terrain map, if the robot locates a grid on the global terrain map, the terrain information of that grid (including the angle between the ground normal vector and the robot's z-axis and the vertical height of the grid center point above the ground) is extracted and compared with the marker detection data. If the difference is within a preset threshold range, the terrain within that grid is considered to meet the safe operating conditions of that grid, and no fall risk alarm will be triggered, allowing safe passage. Conversely, if the difference exceeds the preset threshold range, other risk situations are considered to exist within that grid (such as abnormal positioning and / or environmental changes leading to unknown passage conditions), and the robot can be controlled to stop suddenly and trigger an alarm.
[0076] For example, if the currently operating robot is located within a grid cell on the map, the calibration and detection data of that grid cell (which may include the included angle A and the height value H) is extracted. The aforementioned measurement and calculation of the included angle A and the height value H are repeated, and the results of the measurement and calculation are compared with A and H in the calibration and detection data. If they are within a pre-set error threshold range, it is considered to meet the safe operation standard for that point, and the robot will not issue a fall risk alarm. If the error threshold range is exceeded, it is considered that there are other risk situations at that point, such as abnormal positioning and / or environmental changes leading to unknown access conditions, and the robot will be controlled to issue an alarm.
[0077] Furthermore, the presence of obstacles in transparent terrain will not affect the detection of transparent terrain; nor will the angle between the plane of the transparent terrain and the ground affect the robot's detection of transparent terrain. Both can prevent the accidental triggering of the anti-fall mechanism in the aforementioned manner. For example, if a temporarily piled-up item appears on a transparent ramp, the robot's sensor data will detect the item. By comparing it with the already calibrated detection data, it can determine that an obstacle exists and correctly trigger obstacle avoidance.
[0078] This preferred embodiment utilizes a method where, during deployment, the robot traverses a transparent terrain area while simultaneously establishing a grid to record calibration and detection data of the robot's movement on the transparent plane. During subsequent autonomous robot operation, when the robot approaches this transparent terrain area, it reads the terrain data pre-stored in the grid map and compares it with the current detection data. If the terrain matches the grid's conditions, passage is permitted without triggering a fall risk alarm, further improving the robot's versatility and robustness. The fall protection mechanism does not need to be completely disabled, thus ensuring the robot's safety.
[0079] Example 4
[0080] Figure 4 This is a schematic diagram of the structure of a fall prevention device for a robot provided in Embodiment 4 of this application. Figure 4 As shown, the device 400 includes:
[0081] The global map acquisition module 410 is used to acquire the robot's global terrain map; wherein, the global terrain map includes at least two terrain attributes, and the global terrain map also includes calibration and detection data corresponding to special terrain areas;
[0082] The target area determination module 420 is used to determine the target area of the robot in the global terrain map based on the robot's positioning information and the global terrain map.
[0083] The anti-fall trigger module 430 is used to determine whether the robot should trigger the anti-fall mechanism based on the robot's current detection data and the calibration detection data of the target area.
[0084] In the technical solution of this application embodiment, a global terrain map including at least two terrain attributes and calibration detection data of special terrain areas is acquired. This global terrain map is used as the detection basis. Based on the robot's current detection data in the target area and the global terrain map, potential special terrain areas are identified, thereby determining whether the robot needs to trigger the anti-fall mechanism. This enables the robot to quickly detect and compare terrain data during operation, efficiently judging whether there are anomalies in the current driving environment. This helps the robot rationally choose whether to trigger the anti-fall mechanism, further preventing accidental triggering of the anti-fall mechanism, improving the robot's robustness and safety, and ensuring stable operation.
[0085] In one alternative embodiment, the device 400 includes a global terrain map determination module, which may include:
[0086] The map acquisition unit is used to acquire the robot's global map;
[0087] The raster map generation unit is used to identify special terrain areas from the global map and generate raster maps in those special terrain areas.
[0088] The calibration data determination unit is used to control the robot to traverse the grid map and acquire the detection data of each grid as calibration detection data;
[0089] The terrain map determination unit is used to load calibration and detection data into the global map to obtain a global terrain map.
[0090] In one alternative implementation, the raster map generation unit may include:
[0091] The special terrain acquisition sub-unit is used to identify special terrain areas in the global map;
[0092] The grid size determination subunit is used to determine the size of the grid to be loaded based on the area of the special terrain region and the robot's shape parameters;
[0093] The raster region is defined as a sub-cell, which is used to load the raster onto a specific terrain area to obtain a raster map.
[0094] In one optional implementation, the calibration data determination unit may include:
[0095] The included angle determination subunit is used to determine the terrain height of the center point of the current grid and the included angle between the current plane of the robot and the ground, based on the current grid where the robot is located.
[0096] The calibration data determination sub-unit is used to determine the terrain information as calibration detection data based on the terrain height and included angle of the center point.
[0097] The grid traversal sub-unit is used to distinguish and mark the traversed grids until the robot has traversed the entire grid map.
[0098] In one alternative implementation, the included angle determination subunit may include:
[0099] The normal vector is determined from the element, which is used to determine the normal vector of the plane where the robot is located in the current grid, based on the plane where the robot is located in the current grid.
[0100] The included angle is determined from the unit, which is used to determine the included angle between the current plane where the robot is located and the ground, based on the normal vector and the ground normal vector.
[0101] In one alternative implementation, the special terrain area may include a terrain area made of transparent material, and the calibration detection data is obtained based on the robot's LiDAR and / or the robot's stereo vision sensor.
[0102] In one optional implementation, the anti-fall trigger module 430 can be specifically used to: control the robot not to trigger the anti-fall mechanism if the difference between the current detection data and the calibration detection data meets the preset threshold range.
[0103] The robot anti-fall device provided in this application embodiment can execute the robot anti-fall method provided in any embodiment of this application, and has the corresponding functional modules and beneficial effects for executing the anti-fall method of each robot.
[0104] Example 5
[0105] Figure 5 A schematic diagram of the structure of a robot 10 that can be used to implement embodiments of this application is shown. The robot is intended to represent various forms of autonomous mobile devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of this application described and / or claimed herein.
[0106] like Figure 5As shown, robot 10 includes at least one processor 11 and a memory, such as read-only memory (ROM) 12, random access memory (RAM) 13, etc., communicatively connected to at least one processor 11. The memory stores computer programs executable by at least one processor. Processor 11 can perform various appropriate actions and processes based on the computer program stored in ROM 12 or loaded from storage unit 18 into RAM 13. RAM 13 can also store various programs and data required for the operation of robot 10. Processor 11, ROM 12, and RAM 13 are interconnected via bus 14. Input / output (I / O) interface 15 is also connected to bus 14.
[0107] Multiple components in robot 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows robot 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0108] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as fall prevention methods for robots.
[0109] In some embodiments, the robot's fall prevention method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on the robot 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the robot's fall prevention method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the robot's fall prevention method by any other suitable means (e.g., by means of firmware).
[0110] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0111] Computer programs used to implement the methods of this application may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0112] In the context of this application, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium can be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0113] To provide interaction with a user, the systems and techniques described herein can be implemented on a robot having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the robot. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0114] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or computing systems that include middleware components (e.g., application servers), or computing systems that include frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0115] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.
[0116] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this application can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this application can be achieved, and this is not limited herein.
[0117] The specific embodiments described above do not constitute a limitation on the scope of protection of this application. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this application should be included within the scope of protection of this application.
Claims
1. A method for preventing a robot from falling, characterized by, The method includes: Obtain a global terrain map of the robot; wherein the global terrain map includes at least two terrain attributes, and the global terrain map also includes calibration and detection data corresponding to special terrain areas; Based on the robot's positioning information and the global terrain map, the target area of the robot in the global terrain map is determined; If the target area is determined to belong to the special terrain area, then based on the robot's current detection data and the calibration detection data of the target area, it is determined whether the robot should trigger the anti-fall mechanism. The method for determining the global terrain map includes: Obtain the global map of the robot; The special terrain region is determined from the global map, and a raster map is generated in the special terrain region; The robot is controlled to traverse the grid map and acquire the detection data of each grid as calibration detection data; The calibration detection data is loaded into the global map to obtain the global terrain map; The step of controlling the robot to traverse the grid map and acquire detection data for each grid as calibration detection data includes: Based on the current grid where the robot is located, determine the terrain height of the center point of the current grid and the angle between the current plane where the robot is located and the ground; Based on the terrain elevation of the center point and the included angle, the terrain information is determined as the calibration detection data; The traversed grid cells are distinguished and marked until the robot has traversed the entire grid map.
2. The method of claim 1, wherein, The step of determining the special terrain region from the global map and generating a raster map in the special terrain region includes: Identify the special terrain region in the global map; The size of the grid to be loaded is determined based on the area of the special terrain region and the robot's shape parameters; The grid is loaded onto the special terrain area to obtain the grid map.
3. The method of claim 1, wherein, The step of determining the angle between the current plane where the robot is located and the ground based on the current grid cell where the robot is located includes: Determine the normal vector of the plane where the current robot is located in the current grid; Based on the normal vector and the normal vector of the ground, determine the angle between the current plane where the robot is located and the ground.
4. The method according to any one of claims 1 to 3, characterized in that, The special terrain area includes a transparent material terrain area, and the calibration detection data is obtained based on the robot's LiDAR and / or the robot's stereo vision sensor.
5. The method according to any one of claims 1-3, characterized in that, The step of determining whether the robot triggers the anti-fall mechanism based on the robot's current detection data and the calibration detection data of the target area includes: If the difference between the current detection data and the calibrated detection data is within a preset threshold range, the robot is controlled not to trigger the anti-fall mechanism.
6. A fall prevention device for a robot, characterized in that, The device includes: A global map acquisition module is used to acquire a global terrain map of the robot; wherein, the global terrain map includes at least two terrain attributes, and the global terrain map also includes calibration and detection data corresponding to special terrain areas; The target area determination module is used to determine the target area of the robot in the global terrain map based on the robot's positioning information and the global terrain map; The anti-fall trigger module is used to determine whether the robot should trigger the anti-fall mechanism based on the robot's current detection data and the calibration detection data of the target area, after determining that the target area belongs to the special terrain area. The global terrain map determination module includes: A map acquisition unit is used to acquire a global map of the robot; A raster map generation unit is used to determine the special terrain region from the global map and generate a raster map in the special terrain region; The calibration data determination unit is used to control the robot to traverse the grid map and obtain the detection data of each grid as calibration detection data; A terrain map determination unit is used to load the calibration detection data into the global map to obtain the global terrain map; The calibration data determination unit includes: Angle determination subunit is used to determine the terrain height of the center point of the current grid and the angle between the current plane where the robot is located and the ground, based on the current grid where the robot is located. The calibration data determination subunit is used to determine terrain information as the calibration detection data based on the terrain height of the center point and the included angle. The grid traversal subunit is used to distinguish and identify the traversed grids until the robot has traversed the entire grid map.
7. A robot, characterized in that, The robot includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the fall prevention method for the robot according to any one of claims 1-5.
8. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that, when executed by a processor, implement the fall prevention method for the robot according to any one of claims 1-5.
Citation Information
Patent Citations
Robot positioning method and device, robot and computer readable storage medium
CN113733166A
Robot anti-falling method, robot and storage medium
CN114911235A