Quadruped robot autonomous exploration method and system based on hierarchical programming, terminal and storage medium

By synchronizing time and fusing data with the quadruped robot, a global point cloud map and a local occupancy map are constructed, which solves the problem of insufficient map accuracy of the quadruped robot in large-scale environments and achieves stable operation and safety.

CN121900395APending Publication Date: 2026-04-21GUANGDONG LAB OF ARTIFICIAL INTELLIGENCE & DIGITAL ECONOMY (SZ)
View PDF 0 Cites 1 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-05
Publication Date
2026-04-21

AI Technical Summary

Technical Problem

Existing technologies fail to fully consider the movement characteristics of quadruped robots, resulting in insufficient map accuracy in large-scale environments, difficulty in stable operation, and low safety.

Method used

By synchronizing the time and spatial coordinate system of the lidar and inertial measurement unit on the quadruped robot, the real-time pose is calculated using the lidar inertial odometry, and data fusion is performed using an extended Kalman filter framework to construct a global point cloud map and a local occupancy map. Hierarchical planning is then performed to generate target viewpoints and pathpoints, and motion commands that conform to the kinematics of the quadruped robot are generated.

Benefits of technology

It achieves high coverage and high map accuracy in complex environments, ensuring stable operation and safety of the quadruped robot.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121900395A_ABST
    Figure CN121900395A_ABST
Patent Text Reader

Abstract

The invention discloses a quadruped robot autonomous exploration method and system based on hierarchical programming, a terminal and a storage medium, and the method comprises the steps: unifying the data of a laser radar and an inertial measurement unit of a quadruped robot, and obtaining a calibrated sensor data stream; the sensor data flow is calculated, and the real-time pose of the quadruped robot under the global coordinate system is output; on the basis of real-time poses, the sensor data flow and an existing point cloud map are registered and fused, a global point cloud map is constructed and updated in an incremental mode, and a local occupation map is generated and updated under a coordinate system of a quadruped robot body; performing macroscopic decision according to the global point cloud map, generating a target viewpoint, performing local viewpoint evaluation and path planning according to the local occupation map and the target viewpoint, and generating path points leading to the target viewpoint; and generating a motion instruction based on the path points to drive the quadruped robot to perform autonomous exploration. According to the invention, stable operation of the quadruped robot in a complex environment is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data acquisition and transmission technology, and in particular to a method, system, terminal, and computer-readable storage medium for autonomous exploration of a quadruped robot based on hierarchical programming. Background Technology

[0002] Autonomous exploration is a fundamental capability for mobile robots to perform tasks such as search and rescue, security patrol, and resource exploration in unknown environments. It requires generating feasible paths while constructing environmental representations in real time, guiding the robot to continuously expand into known areas. Existing exploration methods mainly include: cutting-edge exploration methods, sampling-based exploration methods, viewpoint planning based on information gain, and hierarchical exploration frameworks and learning strategies developed in recent years.

[0003] To reduce computational complexity in large-scale 3D environments, existing work has proposed a hierarchical framework that breaks down exploration tasks into two levels: global planning and local planning. Global planning determines "which part of the environment to go" based on coarse-grained spatial partitioning or graph structure, while local planning evaluates candidate viewpoints and plans fine-grained paths within the robot's neighborhood. Some methods have demonstrated the effectiveness of this approach on wheeled platforms, but in long-range missions, they are still affected by odometry drift, leading to global map distortion and misjudgments of connectivity.

[0004] At the platform level, quadruped robots have stronger obstacle-crossing and off-road capabilities compared to wheeled platforms, but their kinematic and dynamic constraints are more complex, and they are more sensitive to path smoothness, speed, and steering changes. Most existing exploration systems are designed for wheeled chassis, and when directly transplanted to quadruped platforms, problems can easily arise in terms of path feasibility, posture stability, and sustained coverage.

[0005] Therefore, existing technologies still need to be improved and developed. Summary of the Invention

[0006] The main objective of this invention is to provide a method, system, terminal, and computer-readable storage medium for autonomous exploration of quadruped robots based on hierarchical planning. This aims to solve the problems in the prior art that fail to fully consider the motion characteristics of quadruped robots and that the map accuracy is insufficient in large-scale environments, resulting in the difficulty of stable operation and low safety of quadruped robots in complex environments.

[0007] To achieve the above objectives, this invention provides a hierarchical programming-based autonomous exploration method for quadruped robots, comprising the following steps: The data from the lidar and inertial measurement unit on the quadruped robot are synchronized in time and spatial coordinate system to obtain the calibrated sensor data stream; The sensor data stream is calculated using a lidar inertial odometry system to output the real-time pose of the quadruped robot in the global coordinate system. Based on the real-time pose, the sensor data stream is registered and fused with the existing point cloud map to build and update the global point cloud map in an incremental manner, and a local occupied map is generated and updated in the coordinate system of the quadruped robot body. Based on the global point cloud map, macro-level decisions are made to generate a target viewpoint. Based on the local occupancy map and the target viewpoint, local viewpoint evaluation and path planning are performed to generate waypoints leading to the target viewpoint. Based on the path points, motion commands conforming to the kinematics of a quadruped robot are generated, and the quadruped robot is driven to explore autonomously according to the motion commands.

[0008] Optionally, the hierarchical programming-based autonomous exploration method for quadruped robots, wherein the step of synchronizing the data from the lidar and inertial measurement unit on the quadruped robot in time and spatial coordinate system 1 to obtain the calibrated sensor data stream specifically includes: The lidar on the quadruped robot is connected to a unified time synchronization system via a local area network. The clocks of each lidar are aligned using the PTP protocol to achieve time synchronization. A checkerboard target is placed in the overlapping field of view of the lidar and the camera, and the camera is used to acquire images of the checkerboard target to obtain the pixel coordinates of the corner points. The point cloud data obtained by the laser radar scanning the same chessboard target is acquired, and the chessboard plane is segmented from the point cloud. The first relative pose of the camera coordinate system and the checkerboard plane is calculated based on the pixel coordinates, and the second relative pose of the lidar coordinate system and the checkerboard plane is calculated based on the point cloud data. The rigid body transformation matrix between the lidar coordinate system and the camera coordinate system is calculated based on the first relative pose and the second relative pose, and the spatial coordinates are unified based on the rigid body transformation matrix to obtain the calibrated sensor data stream.

[0009] Optionally, the hierarchical programming-based autonomous exploration method for quadruped robots, wherein the step of using a lidar inertial odometry to calculate the sensor data stream and output the real-time pose of the quadruped robot in the global coordinate system specifically includes: Determine the initial pose of the quadruped robot in the global coordinate system, and obtain the state vector of the lidar inertial odometry based on the initial pose; Based on the state vector, the high-frequency IMU data in the sensor data stream is recursively calculated using the inertial navigation mechanics equations to output the predicted state at the current moment. Motion distortion correction is performed on the lidar point cloud in the sensor data stream using the predicted state to obtain a corrected point cloud. The corrected point cloud is then registered with a local map to obtain an observation vector. Within the extended Kalman filter framework, the observed vector and the predicted state are fused to obtain the real-time pose of the quadruped robot in the global coordinate system.

[0010] Optionally, the hierarchical planning-based autonomous exploration method for quadruped robots, wherein the step of registering and fusing the sensor data stream with the existing point cloud map based on the real-time pose to incrementally construct and update the global point cloud map specifically includes: The current frame point cloud in the global coordinate system is obtained based on the real-time pose. The current frame point cloud is registered with the existing point cloud map to obtain the target point cloud. The target point cloud is then fused with the existing point cloud map to obtain the updated global point cloud map. The updated global point cloud map is stored and managed using an incremental KD-tree data structure, and the updated global point cloud map is used as the existing point cloud map for the next frame point cloud registration.

[0011] Optionally, the hierarchical programming-based autonomous exploration method for quadruped robots, wherein generating and updating the locally occupied map in the coordinate system of the quadruped robot body specifically includes: A sliding time window buffer of all point cloud data within a specific time period is obtained. Based on the real-time pose, all historical point cloud frames in the sliding time window buffer are uniformly transformed from their respective global coordinate systems to the current quadruped robot body coordinate system to form a body coordinate system point cloud set. The point cloud set of the body coordinate system is input into the local occupation map centered on the current position of the quadruped robot. During the movement of the quadruped robot, old point cloud frames that exceed the time range of the sliding time window buffer are discarded, while new point cloud frames are received to complete the real-time update of the local occupation map.

[0012] Optionally, the hierarchical programming-based autonomous exploration method for quadruped robots, wherein the step of making macroscopic decisions based on the global point cloud map and generating a target viewpoint specifically includes: The environment outside the local map area is divided into several cubic regions of uniform size. Based on the distribution of mapped and unmapped surfaces from the global point cloud map within the region, the exploration state of the cubic region is generated. The exploration state includes unexplored, exploring, or explored. The target region is selected as the cube region that is closest to the current position of the quadruped robot in Euclidean distance and is in the exploration state, and the centroid of the target region is used as the target viewpoint for global navigation.

[0013] Optionally, the hierarchical planning-based autonomous exploration method for quadruped robots, wherein the step of performing local viewpoint evaluation and path planning based on the local occupancy map and the target viewpoint to generate waypoints leading to the target viewpoint specifically includes: Define a fixed-size square planning area in the robot-centric local occupancy map, the square planning area including the explored space and the unexplored space; Based on the detected space and the undetected space, a known-unknown boundary is obtained. A local planner is used to perform uniform sampling along the known-unknown boundary to obtain multiple candidate viewpoints. Based on the local occupancy map, the observable new spatial volume of each candidate viewpoint is estimated using the ray casting method, and the observable new spatial volume is used as an information gain index. All candidate viewpoints whose information gain index exceeds a preset threshold are taken as target viewpoints, and collision-free path points from the current pose to each of the target viewpoints are generated.

[0014] Furthermore, to achieve the above objectives, the present invention also provides a hierarchical programming-based autonomous exploration system for quadruped robots, wherein the hierarchical programming-based autonomous exploration system for quadruped robots includes: The synchronization calibration module is used to synchronize the data of the lidar and inertial measurement unit on the quadruped robot in time and spatial coordinate system, so as to obtain the calibrated sensor data stream. The state acquisition module is used to calculate the sensor data stream using a lidar inertial odometry and output the real-time pose of the quadruped robot in the global coordinate system. The map building module is used to register and fuse the sensor data stream with the existing point cloud map based on the real-time pose, to build and update the global point cloud map in an incremental manner, and to generate and update the local occupied map in the coordinate system of the quadruped robot body. The path planning module is used to make macro-level decisions based on the global point cloud map, generate a target viewpoint, evaluate local viewpoints and plan paths based on the local occupied map and the target viewpoint, and generate path points leading to the target viewpoint. The instruction control module is used to generate motion instructions that conform to the kinematics of the quadruped robot based on the path points, and drive the quadruped robot to explore autonomously according to the motion instructions.

[0015] Furthermore, to achieve the above objectives, the present invention also provides a terminal, wherein the terminal includes: a memory, a processor, and a hierarchical programming-based quadruped robot autonomous exploration program stored in the memory and executable on the processor, wherein when the hierarchical programming-based quadruped robot autonomous exploration program is executed by the processor, it implements the steps of the hierarchical programming-based quadruped robot autonomous exploration method as described above.

[0016] Furthermore, to achieve the above objectives, the present invention also provides a computer-readable storage medium, wherein the computer-readable storage medium stores a hierarchical programming-based autonomous exploration program for a quadruped robot, and when the hierarchical programming-based autonomous exploration program for a quadruped robot is executed by a processor, it implements the steps of the hierarchical programming-based autonomous exploration method for a quadruped robot as described above.

[0017] In this invention, the data from the lidar and inertial measurement unit mounted on the quadruped robot are synchronized in time and spatial coordinate system to obtain a calibrated sensor data stream; the lidar inertial odometry is used to calculate the sensor data stream and output the real-time pose of the quadruped robot in the global coordinate system; based on the real-time pose, the sensor data stream is registered and fused with an existing point cloud map to incrementally construct and update the global point cloud map, and a locally occupied map is generated and updated in the coordinate system of the quadruped robot body; Macro-level decisions are made based on the global point cloud map to generate a target viewpoint. Local viewpoint evaluation and path planning are then performed based on the local occupancy map and the target viewpoint, generating pathpoints leading to the target viewpoint. Based on these pathpoints, motion commands conforming to the kinematics of a quadruped robot are generated, driving the quadruped robot to perform autonomous exploration. This invention achieves synergy between exploration planning and the quadruped robot's motion characteristics, ensuring stable operation and safety of the quadruped robot in complex environments while maintaining high coverage and high map accuracy. Attached Figure Description

[0018] Figure 1 This is a flowchart of a preferred embodiment of the hierarchical programming-based autonomous exploration method for quadruped robots according to the present invention; Figure 2 This is a schematic diagram of the principle architecture of the autonomous exploration method for quadruped robots based on hierarchical programming of the present invention; Figure 3 This is a schematic diagram of the hardware configuration of the quadruped robot platform in the hierarchical programming-based autonomous exploration method for quadruped robots of this invention; Figure 4 This is a structural diagram of a preferred embodiment of the autonomous exploration system for quadruped robots based on hierarchical programming of the present invention; Figure 5 This is a structural diagram of a preferred embodiment of the terminal of the present invention. Detailed Implementation

[0019] This application provides a hierarchical programming-based autonomous exploration method, system, and terminal for quadruped robots. To make the objectives, technical solutions, and effects of this application clearer and more explicit, the following detailed description is provided with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only for explaining this application and are not intended to limit this application.

[0020] It will be understood by those skilled in the art that, unless otherwise defined, all terms used herein (including technical and scientific terms) have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains. It should also be understood that terms such as those defined in general dictionaries should be understood to have the same meaning as in the context of the prior art, and should not be interpreted in an idealized or overly formal sense unless specifically defined as herein.

[0021] Furthermore, if the embodiments of this invention involve descriptions such as "first" or "second," these descriptions are for descriptive purposes only and should not be construed as indicating or implying their relative importance or implicitly specifying the number of technical features indicated. Therefore, a feature defined with "first" or "second" may explicitly or implicitly include at least one of those features. Additionally, the technical solutions of the various embodiments can be combined with each other, but this must be based on the ability of those skilled in the art to implement them. If the combination of technical solutions is contradictory or impossible to implement, it should be considered that such a combination of technical solutions does not exist and is not within the scope of protection claimed by this invention.

[0022] The preferred embodiment of the present invention describes an autonomous exploration method for quadruped robots based on hierarchical programming, such as... Figure 1 and Figure 2 As shown, the hierarchical programming-based autonomous exploration method for quadruped robots includes the following steps: Step S10: Synchronize the data from the lidar and inertial measurement unit mounted on the quadruped robot in time and spatial coordinate system to obtain the calibrated sensor data stream.

[0023] Specifically, the lidar on the quadruped robot is connected to a unified time synchronization system via a local area network, and the clocks of each lidar are aligned using the PTP protocol to achieve time synchronization. A checkerboard target is placed in the overlapping field of view of the lidar and the camera, and the camera is used to acquire images of the checkerboard target to obtain the pixel coordinates of the corner points. The point cloud data obtained by the laser radar scanning the same chessboard target is acquired, and the chessboard plane is segmented from the point cloud. The first relative pose of the camera coordinate system and the checkerboard plane is calculated based on the pixel coordinates, and the second relative pose of the lidar coordinate system and the checkerboard plane is calculated based on the point cloud data. The rigid body transformation matrix between the lidar coordinate system and the camera coordinate system is calculated based on the first relative pose and the second relative pose, and the spatial coordinates are unified based on the rigid body transformation matrix to obtain the calibrated sensor data stream.

[0024] like Figure 3 As shown, the quadruped robot hardware platform structure of this invention uses a Unitree Go2 chassis as its base, and is equipped with a HESAI XT16 long-range sparse 3D LiDAR, a Livox MID-360 short-range dense LiDAR (with a built-in inertial measurement unit), an Intel RealSense D435i depth camera, an NVIDIA Jetson Orin NX onboard computing unit, a 5G communication module, and a robotic arm on top. All sensors and controllers are connected to the computing unit via Gigabit Ethernet. This configuration enables the robot to achieve a maximum walking speed of 3 m / s and allows for stable operation in complex indoor and outdoor terrains.

[0025] In this embodiment, multiple LiDARs are connected to a unified time synchronization system via a local area network. The PTP (Precision Time Protocol) is used to align the clocks of each device. This high-precision industrial standard ensures microsecond-level synchronization of data from multiple LiDARs, fundamentally avoiding data fusion errors caused by time misalignment. It should be noted that any other method besides PTP that can ensure the synchronization of multiple LiDAR clocks also falls within the scope of protection of this invention.

[0026] A checkerboard target is placed in the overlapping field of view of the LiDAR and camera. The camera acquires images and extracts corner points, while the checkerboard plane is segmented from the point cloud. The rigid body transformation between the LiDAR and camera coordinate systems is calculated through point set registration. Similar calibration can be performed iteratively for multiple LiDARs, ultimately unifying all sensor data to the robot's body coordinate system and a unified time reference. Therefore, this invention provides an operable joint calibration method based on a checkerboard target. It calculates the relative poses of the camera and the checkerboard, and the LiDAR and the checkerboard, respectively, and finally solves for the rigid body transformation matrix between them.

[0027] Step S20: Use a lidar inertial odometry to calculate the sensor data stream and output the real-time pose of the quadruped robot in the global coordinate system.

[0028] Specifically, the initial pose of the quadruped robot in the global coordinate system is determined, and the state vector of the lidar inertial odometry is obtained based on the initial pose. Based on the state vector, the high-frequency IMU data in the sensor data stream is recursively calculated using the inertial navigation mechanics equations to output the predicted state at the current moment. Motion distortion correction is performed on the lidar point cloud in the sensor data stream using the predicted state to obtain a corrected point cloud. The corrected point cloud is then registered with a local map to obtain an observation vector. Within the extended Kalman filter framework, the observed vector and the predicted state are fused to obtain the real-time pose of the quadruped robot in the global coordinate system.

[0029] Understandably, after calibration, map-centric LiDAR–IMU odometry frameworks such as Fast-LIO2 are introduced to fuse high-frequency IMU measurements with LiDAR point cloud registration results through extended Kalman filtering, and the robot state is estimated directly in the global map coordinate system.

[0030] Specifically, this embodiment provides a complete state estimation closed loop based on filtering theory: First, short-term, continuous pose prediction is performed using high-frequency IMU data based on a physical model. Next, the registration results of the laser point cloud and the local map are used as observations to correct the predictions. Finally, within the extended Kalman filter framework, the IMU predictions and laser observations are optimally fused. This embodiment clarifies that pose estimation not only depends on the IMU, but its core correction originates from map registration, embodying the core idea of ​​map-centric LIO.

[0031] It should be noted that the lidar inertial odometry of the present invention can be any other framework with map-centric state estimation, fusion of IMU and LiDAR point clouds, and support for local map incremental updates, as long as it can provide accuracy and robustness comparable to Fast-LIO2 in a large-scale environment.

[0032] Step S30: Based on the real-time pose, register and fuse the sensor data stream with the existing point cloud map, build and update the global point cloud map in an incremental manner, and generate and update the local occupied map in the coordinate system of the quadruped robot body.

[0033] Based on the real-time pose, the sensor data stream is registered and fused with the existing point cloud map to incrementally construct and update the global point cloud map, specifically including: The current frame point cloud in the global coordinate system is obtained based on the real-time pose. The current frame point cloud is registered with the existing point cloud map to obtain the target point cloud. The target point cloud is then fused with the existing point cloud map to obtain the updated global point cloud map. The updated global point cloud map is stored and managed using an incremental KD-tree data structure, and the updated global point cloud map is used as the existing point cloud map for the next frame point cloud registration.

[0034] In this embodiment, an incremental KD-tree is used to store the local map, accelerating nearest neighbor search and point cloud registration. The use of this specific data structure, incremental KD-tree, to manage the global point cloud map is restricted. This not only provides a technical guarantee for incremental updates (supporting efficient new point insertion and nearest neighbor search), but also constitutes a technical closed loop, where the updated map immediately serves as the reference for the next registration, ensuring the accuracy of the local map. Figure 1 The key underlying support for consistency and real-time performance.

[0035] Furthermore, the generation and updating of the locally occupied map in the coordinate system of the quadruped robot body specifically includes: A sliding time window buffer of all point cloud data within a specific time period is obtained. Based on the real-time pose, all historical point cloud frames in the sliding time window buffer are uniformly transformed from their respective global coordinate systems to the current quadruped robot body coordinate system to form a body coordinate system point cloud set. The point cloud set of the body coordinate system is input into the local occupation map centered on the current position of the quadruped robot. During the movement of the quadruped robot, old point cloud frames that exceed the time range of the sliding time window buffer are discarded, while new point cloud frames are received to complete the real-time update of the local occupation map.

[0036] In this embodiment, the system maintains a local occupancy map centered on the robot, distinguishing between passable spaces, obstacles, and unobserved areas. This local map is used for both local planning and as the basis for global area division.

[0037] Understandably, this embodiment limits the use of point clouds within a single sliding time window. This ensures that the local map contains sufficient recent environmental information while maintaining lightweight and real-time performance by discarding older data. It also emphasizes unifying all point clouds to the robot's current coordinate system, which aligns perfectly with the local planner's need to make decisions with the robot itself as a reference. The mechanism of discarding old frames and receiving new frames within the sliding window enables real-time scrolling updates of the local map, ensuring the robot's adaptability to dynamically changing environments.

[0038] Furthermore, through unified time synchronization and spatial extrinsic parameter calibration, this invention aligns the data from dual LiDAR, IMU, and camera to the same time reference and coordinate system, and employs map-centric LiDAR–IMU odometry for state estimation and incremental map updates. On the one hand, time synchronization avoids registration errors caused by time drift between sensors; on the other hand, state estimation based on a global map coordinate system and maintenance of a local KD-tree map effectively suppresses odometry drift in long-range missions.

[0039] In five experiments conducted in an office environment, the robot's cumulative positioning error when it completed its exploration and returned to the starting point was approximately 0.09m on average. Without a true map, the average line length of 18 reference line segments was compared with the corresponding line segments on the map. The average absolute error was approximately 1.0cm, the relative error was approximately 0.16%, and the maximum error was approximately 2.5cm. This indicates that the generated map is geometrically sufficient to support time-sensitive tasks such as emergency response.

[0040] Therefore, the combination of multi-sensor calibration and map-centric LIO (Lidar-Inertial Odometry, a localization method that fuses LiDAR and inertial measurement units with a map-centric approach, optimizes the trajectory by constructing a globally consistent map, and is suitable for navigation in long-term and complex environments) not only improves the accuracy of attitude estimation, but also provides a stable and reliable map foundation for subsequent area division and path planning, which is the key support for the overall performance of this invention.

[0041] Step S40: Make macro-level decisions based on the global point cloud map to generate a target viewpoint; evaluate local viewpoints and plan paths based on the local occupancy map and the target viewpoint to generate path points leading to the target viewpoint.

[0042] The step of making macroscopic decisions based on the global point cloud map and generating a target viewpoint specifically includes: The environment outside the local map area is divided into several cubic regions of uniform size. Based on the distribution of mapped and unmapped surfaces from the global point cloud map within the region, the exploration state of the cubic region is generated. The exploration state includes unexplored, exploring, or explored. The target region is selected as the cube region that is closest to the current position of the quadruped robot in Euclidean distance and is in the exploration state, and the centroid of the target region is used as the target viewpoint for global navigation.

[0043] Understandably, to coordinate multiple local tasks within a large scene, this invention divides the environment outside the local map area into several uniformly sized cubic regions. Based on the distribution of mapped and unmapped surfaces within these regions, each region is marked as "unexplored," "exploring," or "explored": regions containing only unmapped surfaces are unexplored, regions containing only mapped surfaces are explored, and a mixture of both is "exploring." During the global planning phase, the "exploring" region with the closest Euclidean distance to the current robot position is prioritized, and its centroid is used as the global navigation target. Once a region's local exploration is complete, its local map is merged into the global map, and the region's state is updated. When all regions are marked as "explored," and local planning no longer generates valid candidate viewpoints, the exploration task is considered complete.

[0044] Furthermore, the step of performing local viewpoint evaluation and path planning based on the local occupied map and the target viewpoint to generate waypoints leading to the target viewpoint specifically includes: Define a fixed-size square planning area in the robot-centric local occupancy map, the square planning area including the explored space and the unexplored space; Based on the detected space and the undetected space, a known-unknown boundary is obtained. A local planner is used to perform uniform sampling along the known-unknown boundary to obtain multiple candidate viewpoints. Based on the local occupancy map, the observable new spatial volume of each candidate viewpoint is estimated using the ray casting method, and the observable new spatial volume is used as an information gain index. All candidate viewpoints whose information gain index exceeds a preset threshold are taken as target viewpoints, and collision-free path points from the current pose to each of the target viewpoints are generated.

[0045] In this embodiment, a fixed-size square planning region is defined in a robot-centric local map. This region includes both explored and unexplored spaces. The local planner uniformly samples candidate viewpoints along the known-unknown frontier, estimates the observable new space volume for each viewpoint using the local occupancy map, and selects a set of viewpoints with high information gain as local exploration targets. The path planning module is then invoked to generate local paths from the current pose to each target viewpoint.

[0046] This invention combines local frontier-based information gain planning with global cube-region state management planning. On the one hand, local planning utilizes detailed information from the local occupied map to prioritize candidate viewpoints with high information gain, achieving fine coverage within the robot's neighborhood. On the other hand, global planning manages the exploration task into a series of local sub-tasks through a three-state management system of "unexplored / exploring / explored," avoiding unnecessary back-and-forth trips in already explored areas.

[0047] In five experiments conducted in an office environment, the system of this invention achieved an average exploration time of approximately 430.48 seconds and an average runtime of approximately 0.59 seconds per planning iteration. The average exploration coverage volume was approximately 1335.53 m³, corresponding to a coverage rate of approximately 92.39%, significantly better than the original TARE baseline coverage rate of approximately 78.27%, with one experiment achieving a coverage rate of 99.68%. In a typical experiment, the robot completed approximately 67% of the spatial coverage within the first 70 seconds (approximately 21% of the total exploration time), demonstrating that the proposed hierarchical exploration strategy can quickly acquire most of the environmental information in the early stages of exploration, balancing global efficiency with local accuracy.

[0048] The above results show that the present invention effectively improves coverage and shortens exploration time in large-scale, multi-room environments, and has a significant improvement in technical performance compared with single frontier or single-layer sampling strategies.

[0049] Step S50: Based on the path points, generate motion commands that conform to the kinematics of the quadruped robot, and drive the quadruped robot to explore autonomously according to the motion commands.

[0050] Specifically, in this embodiment, after an executable path is provided through local / global planning, the Pure Pursuit algorithm is used for path tracking. The controller selects a look-ahead point on the path, calculates the curvature based on the current pose and the look-ahead point position, and converts it into linear velocity and angular velocity commands. The look-ahead distance is proportional to the robot's speed; increasing the look-ahead distance at high speeds improves trajectory smoothness, while decreasing it at low speeds or in complex environments improves tracking accuracy. The controller also applies constraints such as a maximum linear velocity of 1.5 m / s and a maximum angular velocity of 1.57 rad / s to balance exploration efficiency with the dynamic stability of the quadruped robot.

[0051] It is understood that the path tracking algorithm of the present invention can also be replaced by other geometric path tracking methods commonly used in the field. As long as the correlation between the look-ahead distance and speed is maintained and the speed and steering constraints of the quadruped platform are considered, the trajectory tracking performance that is similar to that of the Pure Pursuit algorithm can be achieved on a real quadruped robot.

[0052] As can be seen, through the above technical solution, the present invention achieves the synergy between exploration planning and the motion characteristics of quadruped robots: local / global planning provides executable paths, and speed constraints and adaptive look-ahead distance ensure the smoothness and accuracy of trajectory tracking, thereby ensuring the stable operation and safety of quadruped robots in complex environments while maintaining more than 90% coverage and centimeter-level map accuracy.

[0053] Furthermore, such as Figure 4As shown, based on the above-described hierarchical programming-based autonomous exploration method for quadruped robots, this invention also provides a hierarchical programming-based autonomous exploration system for quadruped robots, wherein the hierarchical programming-based autonomous exploration system for quadruped robots includes: The synchronization calibration module 51 is used to synchronize the data of the lidar and inertial measurement unit on the quadruped robot in time and spatial coordinate system, so as to obtain the calibrated sensor data stream. The state acquisition module 52 is used to calculate the sensor data stream using a lidar inertial odometry and output the real-time pose of the quadruped robot in the global coordinate system. The map building module 53 is used to register and fuse the sensor data stream with the existing point cloud map based on the real-time pose, to build and update the global point cloud map in an incremental manner, and to generate and update the local occupied map in the coordinate system of the quadruped robot body. Path planning module 54 is used to make macro-level decisions based on the global point cloud map, generate a target viewpoint, evaluate local viewpoints and plan paths based on the local occupied map and the target viewpoint, and generate path points leading to the target viewpoint. The instruction control module 55 is used to generate motion instructions that conform to the kinematics of the quadruped robot based on the path points, and drive the quadruped robot to explore autonomously according to the motion instructions.

[0054] Furthermore, such as Figure 5 As shown, based on the above-mentioned hierarchical programming-based autonomous exploration method and system for quadruped robots, the present invention also provides a terminal, which includes a processor 10, a memory 20 and a display 30. Figure 5 Only some of the terminal components are shown; however, it should be understood that it is not required to implement all of the components shown, and more or fewer components may be implemented instead.

[0055] In some embodiments, the memory 20 may be an internal storage unit of the terminal, such as a hard disk or memory. In other embodiments, the memory 20 may be an external storage device of the terminal, such as a plug-in hard disk, smart media card (SMC), secure digital card (SD), flash card, etc. Further, the memory 20 may include both internal and external storage devices. The memory 20 is used to store application software and various types of data installed on the terminal, such as the program code installed on the terminal. The memory 20 can also be used to temporarily store data that has been output or will be output. In one embodiment, the memory 20 stores a hierarchical programming-based quadruped robot autonomous exploration program 40, which can be executed by the processor 10 to implement the hierarchical programming-based quadruped robot autonomous exploration method of this application.

[0056] In some embodiments, the processor 10 may be a central processing unit (CPU), a microprocessor, or other data processing chip, used to run program code stored in the memory 20 or process data, such as executing the hierarchical planning-based quadruped robot autonomous exploration method.

[0057] In some embodiments, the display 30 may be an LED display, a liquid crystal display, a touch-screen liquid crystal display, or an OLED (Organic Light-Emitting Diode) touchscreen. The display 30 is used to display information on the terminal and to display a visualized patient interface. The components of the terminal communicate with each other via a system bus.

[0058] In one embodiment, when the processor 10 executes the hierarchical programming-based quadruped robot autonomous exploration program 40 in the memory 20, the following steps are performed: The data from the lidar and inertial measurement unit on the quadruped robot are synchronized in time and spatial coordinate system to obtain the calibrated sensor data stream; The sensor data stream is calculated using a lidar inertial odometry system to output the real-time pose of the quadruped robot in the global coordinate system. Based on the real-time pose, the sensor data stream is registered and fused with the existing point cloud map to build and update the global point cloud map in an incremental manner, and a local occupied map is generated and updated in the coordinate system of the quadruped robot body. Based on the global point cloud map, macro-level decisions are made to generate a target viewpoint. Based on the local occupancy map and the target viewpoint, local viewpoint evaluation and path planning are performed to generate waypoints leading to the target viewpoint. Based on the path points, motion commands conforming to the kinematics of a quadruped robot are generated, and the quadruped robot is driven to explore autonomously according to the motion commands.

[0059] Specifically, the process of synchronizing the data from the lidar and inertial measurement unit mounted on the quadruped robot in time and spatial coordinate system 1 to obtain the calibrated sensor data stream includes: The lidar on the quadruped robot is connected to a unified time synchronization system via a local area network. The clocks of each lidar are aligned using the PTP protocol to achieve time synchronization. A checkerboard target is placed in the overlapping field of view of the lidar and the camera, and the camera is used to acquire images of the checkerboard target to obtain the pixel coordinates of the corner points. The point cloud data obtained by the laser radar scanning the same chessboard target is acquired, and the chessboard plane is segmented from the point cloud. The first relative pose of the camera coordinate system and the checkerboard plane is calculated based on the pixel coordinates, and the second relative pose of the lidar coordinate system and the checkerboard plane is calculated based on the point cloud data. The rigid body transformation matrix between the lidar coordinate system and the camera coordinate system is calculated based on the first relative pose and the second relative pose, and the spatial coordinates are unified based on the rigid body transformation matrix to obtain the calibrated sensor data stream.

[0060] Specifically, the step of using a lidar inertial odometry to calculate the sensor data stream and output the real-time pose of the quadruped robot in the global coordinate system includes: Determine the initial pose of the quadruped robot in the global coordinate system, and obtain the state vector of the lidar inertial odometry based on the initial pose; Based on the state vector, the high-frequency IMU data in the sensor data stream is recursively calculated using the inertial navigation mechanics equations to output the predicted state at the current moment. Motion distortion correction is performed on the lidar point cloud in the sensor data stream using the predicted state to obtain a corrected point cloud. The corrected point cloud is then registered with a local map to obtain an observation vector. Within the extended Kalman filter framework, the observed vector and the predicted state are fused to obtain the real-time pose of the quadruped robot in the global coordinate system.

[0061] Specifically, the step of registering and fusing the sensor data stream with the existing point cloud map based on the real-time pose, and incrementally constructing and updating the global point cloud map, includes: The current frame point cloud in the global coordinate system is obtained based on the real-time pose. The current frame point cloud is registered with the existing point cloud map to obtain the target point cloud. The target point cloud is then fused with the existing point cloud map to obtain the updated global point cloud map. The updated global point cloud map is stored and managed using an incremental KD-tree data structure, and the updated global point cloud map is used as the existing point cloud map for the next frame point cloud registration.

[0062] Specifically, generating and updating the locally occupied map in the coordinate system of the quadruped robot body includes: A sliding time window buffer of all point cloud data within a specific time period is obtained. Based on the real-time pose, all historical point cloud frames in the sliding time window buffer are uniformly transformed from their respective global coordinate systems to the current quadruped robot body coordinate system to form a body coordinate system point cloud set. The point cloud set of the body coordinate system is input into the local occupation map centered on the current position of the quadruped robot. During the movement of the quadruped robot, old point cloud frames that exceed the time range of the sliding time window buffer are discarded, while new point cloud frames are received to complete the real-time update of the local occupation map.

[0063] Specifically, the step of making macroscopic decisions based on the global point cloud map and generating a target viewpoint includes: The environment outside the local map area is divided into several cubic regions of uniform size. Based on the distribution of mapped and unmapped surfaces from the global point cloud map within the region, the exploration state of the cubic region is generated. The exploration state includes unexplored, exploring, or explored. The target region is selected as the cube region that is closest to the current position of the quadruped robot in Euclidean distance and is in the exploration state, and the centroid of the target region is used as the target viewpoint for global navigation.

[0064] Specifically, the step of performing local viewpoint evaluation and path planning based on the local occupied map and the target viewpoint to generate waypoints leading to the target viewpoint includes: Define a fixed-size square planning area in the robot-centric local occupancy map, the square planning area including the explored space and the unexplored space; Based on the detected space and the undetected space, a known-unknown boundary is obtained. A local planner is used to perform uniform sampling along the known-unknown boundary to obtain multiple candidate viewpoints. Based on the local occupancy map, the observable new spatial volume of each candidate viewpoint is estimated using the ray casting method, and the observable new spatial volume is used as an information gain index. All candidate viewpoints whose information gain index exceeds a preset threshold are taken as target viewpoints, and collision-free path points from the current pose to each of the target viewpoints are generated.

[0065] The present invention also provides a computer-readable storage medium, wherein the computer-readable storage medium stores a hierarchical programming-based autonomous exploration program for a quadruped robot, and when the hierarchical programming-based autonomous exploration program for a quadruped robot is executed by a processor, it implements the steps of the hierarchical programming-based autonomous exploration method for a quadruped robot as described above.

[0066] In summary, this invention proposes a method, system, terminal, and storage medium for autonomous exploration of a quadruped robot based on hierarchical planning. The method includes: synchronizing the data from the lidar and inertial measurement unit (IMU) on the quadruped robot in time and spatial coordinate system 1 to obtain a calibrated sensor data stream; calculating the sensor data stream using a lidar inertial odometry system to output the real-time pose of the quadruped robot in a global coordinate system; registering and fusing the sensor data stream with an existing point cloud map based on the real-time pose to incrementally construct and update the global point cloud map, and generating and updating a local occupancy map in the quadruped robot's coordinate system; making macroscopic decisions based on the global point cloud map to generate a target viewpoint; evaluating the local viewpoint and planning paths based on the local occupancy map and the target viewpoint to generate path points leading to the target viewpoint; generating motion commands conforming to the kinematics of the quadruped robot based on the path points, and driving the quadruped robot to perform autonomous exploration according to the motion commands. This invention achieves synergy between exploration planning and the movement characteristics of quadruped robots, ensuring stable operation and safety of quadruped robots in complex environments while maintaining high coverage and high map accuracy.

[0067] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or terminal that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or terminal. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or terminal that includes that element.

[0068] Of course, those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in the embodiments provided by this invention can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0069] It should be understood that the application of the present invention is not limited to the examples above. Those skilled in the art can make improvements or modifications based on the above description, and all such improvements and modifications should fall within the protection scope of the appended claims.

Claims

1. A hierarchical programming-based autonomous exploration method for quadruped robots, characterized in that, The hierarchical programming-based autonomous exploration method for quadruped robots includes: The data from the lidar and inertial measurement unit on the quadruped robot are synchronized in time and spatial coordinate system to obtain the calibrated sensor data stream; The sensor data stream is calculated using a lidar inertial odometry system to output the real-time pose of the quadruped robot in the global coordinate system. Based on the real-time pose, the sensor data stream is registered and fused with the existing point cloud map to build and update the global point cloud map in an incremental manner, and a local occupied map is generated and updated in the coordinate system of the quadruped robot body. Based on the global point cloud map, macro-level decisions are made to generate a target viewpoint. Based on the local occupancy map and the target viewpoint, local viewpoint evaluation and path planning are performed to generate waypoints leading to the target viewpoint. Based on the path points, motion commands conforming to the kinematics of a quadruped robot are generated, and the quadruped robot is driven to explore autonomously according to the motion commands.

2. The method for autonomous exploration of a quadruped robot based on hierarchical programming according to claim 1, characterized in that, The process of synchronizing the data from the lidar and inertial measurement unit on the quadruped robot in time and spatial coordinate system 1 to obtain the calibrated sensor data stream specifically includes: The lidar on the quadruped robot is connected to a unified time synchronization system via a local area network. The clocks of each lidar are aligned using the PTP protocol to achieve time synchronization. A checkerboard target is placed in the overlapping field of view of the lidar and the camera, and the camera is used to acquire images of the checkerboard target to obtain the pixel coordinates of the corner points. The point cloud data obtained by the laser radar scanning the same chessboard target is acquired, and the chessboard plane is segmented from the point cloud. The first relative pose of the camera coordinate system and the checkerboard plane is calculated based on the pixel coordinates, and the second relative pose of the lidar coordinate system and the checkerboard plane is calculated based on the point cloud data. The rigid body transformation matrix between the lidar coordinate system and the camera coordinate system is calculated based on the first relative pose and the second relative pose, and the spatial coordinates are unified based on the rigid body transformation matrix to obtain the calibrated sensor data stream.

3. The method for autonomous exploration of a quadruped robot based on hierarchical programming according to claim 1, characterized in that, The step of using a lidar inertial odometry to calculate the sensor data stream and output the real-time pose of the quadruped robot in the global coordinate system specifically includes: Determine the initial pose of the quadruped robot in the global coordinate system, and obtain the state vector of the lidar inertial odometry based on the initial pose; Based on the state vector, the high-frequency IMU data in the sensor data stream is recursively calculated using the inertial navigation mechanics equations to output the predicted state at the current moment. Motion distortion correction is performed on the lidar point cloud in the sensor data stream using the predicted state to obtain a corrected point cloud. The corrected point cloud is then registered with a local map to obtain an observation vector. Within the extended Kalman filter framework, the observed vector and the predicted state are fused to obtain the real-time pose of the quadruped robot in the global coordinate system.

4. The method for autonomous exploration of a quadruped robot based on hierarchical programming according to claim 1, characterized in that, Based on the real-time pose, the sensor data stream is registered and fused with the existing point cloud map to incrementally construct and update the global point cloud map, specifically including: The current frame point cloud in the global coordinate system is obtained based on the real-time pose. The current frame point cloud is registered with the existing point cloud map to obtain the target point cloud. The target point cloud is then fused with the existing point cloud map to obtain the updated global point cloud map. The updated global point cloud map is stored and managed using an incremental KD-tree data structure, and the updated global point cloud map is used as the existing point cloud map for the next frame point cloud registration.

5. The autonomous exploration method for quadruped robots based on hierarchical programming according to claim 1, characterized in that, The process of generating and updating the locally occupied map in the coordinate system of the quadruped robot body specifically includes: A sliding time window buffer of all point cloud data within a specific time period is obtained. Based on the real-time pose, all historical point cloud frames in the sliding time window buffer are uniformly transformed from their respective global coordinate systems to the current quadruped robot body coordinate system to form a body coordinate system point cloud set. The point cloud set of the body coordinate system is input into the local occupation map centered on the current position of the quadruped robot. During the movement of the quadruped robot, old point cloud frames that exceed the time range of the sliding time window buffer are discarded, while new point cloud frames are received to complete the real-time update of the local occupation map.

6. The method for autonomous exploration of a quadruped robot based on hierarchical programming according to claim 1, characterized in that, The step of making macroscopic decisions based on the global point cloud map and generating a target viewpoint specifically includes: The environment outside the local map area is divided into several cubic regions of uniform size. Based on the distribution of mapped and unmapped surfaces from the global point cloud map within the region, the exploration state of the cubic region is generated. The exploration state includes unexplored, exploring, or explored. The target region is selected as the cube region that is closest to the current position of the quadruped robot in Euclidean distance and is in the exploration state, and the centroid of the target region is used as the target viewpoint for global navigation.

7. The method for autonomous exploration of a quadruped robot based on hierarchical programming according to claim 1, characterized in that, The step of performing local viewpoint evaluation and path planning based on the local occupied map and the target viewpoint, and generating waypoints leading to the target viewpoint, specifically includes: Define a fixed-size square planning area in the robot-centric local occupancy map, the square planning area including the explored space and the unexplored space; Based on the detected space and the undetected space, a known-unknown boundary is obtained. A local planner is used to perform uniform sampling along the known-unknown boundary to obtain multiple candidate viewpoints. Based on the local occupancy map, the observable new spatial volume of each candidate viewpoint is estimated using the ray casting method, and the observable new spatial volume is used as an information gain index. All candidate viewpoints whose information gain index exceeds a preset threshold are taken as target viewpoints, and collision-free path points from the current pose to each of the target viewpoints are generated.

8. A quadruped robot autonomous exploration system based on hierarchical programming, characterized in that, The hierarchical programming-based quadruped robot autonomous exploration system includes: The synchronization calibration module is used to synchronize the data of the lidar and inertial measurement unit on the quadruped robot in time and spatial coordinate system, so as to obtain the calibrated sensor data stream. The state acquisition module is used to calculate the sensor data stream using a lidar inertial odometry and output the real-time pose of the quadruped robot in the global coordinate system. The map building module is used to register and fuse the sensor data stream with the existing point cloud map based on the real-time pose, to build and update the global point cloud map in an incremental manner, and to generate and update the local occupied map in the coordinate system of the quadruped robot body. The path planning module is used to make macro-level decisions based on the global point cloud map, generate a target viewpoint, evaluate local viewpoints and plan paths based on the local occupied map and the target viewpoint, and generate path points leading to the target viewpoint. The instruction control module is used to generate motion instructions that conform to the kinematics of the quadruped robot based on the path points, and drive the quadruped robot to explore autonomously according to the motion instructions.

9. A terminal, characterized in that, The terminal includes: a memory, a processor, and a hierarchical programming-based autonomous exploration program for quadruped robots stored in the memory and executable on the processor. When the hierarchical programming-based autonomous exploration program for quadruped robots is executed by the processor, it implements the steps of the hierarchical programming-based autonomous exploration method for quadruped robots as described in any one of claims 1-7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a hierarchical programming-based autonomous exploration program for a quadruped robot, which, when executed by a processor, implements the steps of the hierarchical programming-based autonomous exploration method for a quadruped robot as described in any one of claims 1-7.

Citation Information

Cited By

  • Mechanical dog camp inspection and escort control system and control method

    CN122195013A