A robot walking positioning termination method, device, equipment and medium
By determining the robot's global and zero-torque offset errors at the task position, and combining preset positioning error thresholds and offset error thresholds for coarse positioning termination judgment, and then performing fine positioning termination judgment based on interval distance and preset distance threshold, the problem of insufficient accuracy in traditional robot walking positioning termination judgment methods is solved. This ensures that the robot can safely and accurately terminate positioning during dynamic walking, improving positioning accuracy and operational safety.
Patent Information
- Application Number
- CN202510745199.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-05
- Publication Date
- 2026-02-10
- Estimated Expiration
- 2045-06-05
AI Technical Summary
Traditional robot positioning termination judgment methods have poor positioning accuracy and cannot guarantee the stability of the robot and the safety of subsequent operations after positioning termination.
By determining the robot's global positioning error and zero torque offset error at the task location, and combining the preset positioning error threshold and offset error threshold, a coarse positioning termination judgment is made. Then, a fine positioning termination judgment is made based on the interval distance and the preset distance threshold, ensuring that the robot can safely and accurately terminate its positioning during dynamic walking.
This technology enables robots to safely and accurately terminate their positioning during dynamic walking, improving the safety and flexibility of subsequent operations and ensuring the flexibility, accuracy, and safety of task operations.
Smart Images

Figure CN120558229B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of computer technology, and in particular to a method, apparatus, device, and medium for terminating robot walking positioning. Background Technology
[0002] With the development of robotics technology, the requirements for robot positioning are becoming increasingly stringent. How to determine the termination of robot walking positioning is crucial to the robot's positioning accuracy and safety.
[0003] Currently, traditional methods for determining the termination of robot walking positioning typically rely on visual navigation. However, these methods suffer from poor positioning accuracy, which fails to guarantee the robot's stability and the safety of subsequent operations after positioning termination. Summary of the Invention
[0004] This invention provides a method, device, equipment, and medium for determining the termination of robot walking and positioning, so as to achieve accurate determination of the termination of robot walking and positioning, greatly improve the accuracy of robot walking and positioning, and thus ensure the stability of the robot and the safety of subsequent operations after positioning termination.
[0005] According to one aspect of the present invention, a method for determining the termination of robot walking positioning is provided, the method comprising:
[0006] Determine the global positioning error and zero torque offset error of the robot at the task position, wherein the global positioning error is used to represent the offset distance between the robot and the task position, and the zero torque offset error is used to represent the offset distance between the robot's zero torque point and the supporting polygon.
[0007] Based on the global positioning error, the zero torque offset error, the preset positioning error threshold and the preset offset error threshold corresponding to the robot's task to be executed, a coarse positioning termination judgment is made on the robot to determine the first positioning termination judgment result.
[0008] In response to the first positioning termination judgment result being that positioning has terminated, the interval distance between the robot and the task object is determined, and based on the interval distance and the preset distance threshold corresponding to the task to be executed, a fine positioning termination judgment is performed on the robot to determine a second positioning termination judgment result, so that the robot can execute the task to be executed based on the second positioning termination judgment result.
[0009] According to another aspect of the present invention, a robot walking positioning termination determination device is provided, the device comprising:
[0010] An error determination module is used to determine the global positioning error and zero torque offset error of the robot at the task position, wherein the global positioning error is used to represent the offset distance between the robot and the task position, and the zero torque offset error is used to represent the offset distance between the zero torque point of the robot and the supporting polygon.
[0011] The first termination judgment module is used to perform a coarse positioning termination judgment on the robot based on the global positioning error, the zero torque offset error, the preset positioning error threshold and the preset offset error threshold corresponding to the robot's task to be executed, and to determine the first positioning termination judgment result.
[0012] The second termination judgment module is used to respond to the first positioning termination judgment result that positioning is completed, determine the interval distance between the robot and the task object, and perform a fine positioning termination judgment on the robot based on the interval distance and the preset distance threshold corresponding to the task to be executed, and determine the second positioning termination judgment result, so that the robot can execute the task to be executed based on the second positioning termination judgment result.
[0013] According to another aspect of the present invention, an electronic device is provided, the electronic device 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, and the computer program is executed by the at least one processor to enable the at least one processor to execute the robot walking positioning termination determination method according to any embodiment of the present invention.
[0017] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions, the computer instructions being configured to cause a processor to execute and implement the robot walking positioning termination determination method according to any embodiment of the present invention.
[0018] The technical solution of this invention determines the robot's global positioning error and zero-torque offset error at the task position. The global positioning error represents the offset distance between the robot and the task position, and the zero-torque offset error represents the offset distance between the robot's zero-torque point and the supporting polygon. This quantifies the robot's overall positional deviation and balance state, providing a data basis for subsequent positioning termination. Based on the global positioning error, the zero-torque offset error, and preset positioning error and offset error thresholds corresponding to the robot's task, a coarse positioning termination judgment is performed to determine a first positioning termination judgment result. This achieves a coarse positioning termination judgment that integrates motion stability and positional deviation, ensuring the robot can safely and accurately terminate positioning during dynamic movement. In response to the first positioning termination judgment result indicating positioning termination, the interval distance between the robot and the task object is determined. Based on the interval distance and the preset distance threshold corresponding to the task, a fine positioning termination judgment is performed to determine a second positioning termination judgment result. This allows the robot to execute the task based on the second positioning termination judgment result, ensuring the flexibility of task operation and improving the safety of subsequent operations. By performing coarse positioning of the robot by simultaneously determining its overall positional deviation and balance, we can ensure the stability and safety of the robot after coarse positioning is terminated. Fine positioning termination determination helps to make fine adjustments to the robot, which can further improve positioning accuracy and ensure the flexibility and safety of subsequent task operations.
[0019] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description
[0020] To more clearly illustrate the technical solutions in the embodiments of the present invention, 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 the present invention. 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 robot walking positioning termination determination method provided in Embodiment 1 of the present invention;
[0022] Figure 2 This is a flowchart of a robot walking positioning termination determination method provided in Embodiment 2 of the present invention;
[0023] Figure 3This is a schematic diagram of a robot walking positioning termination judgment device provided in Embodiment 3 of the present invention;
[0024] Figure 4 This is a schematic diagram of the structure of an electronic device that implements the robot walking positioning termination judgment method according to an embodiment of the present invention. Detailed Implementation
[0025] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0026] It should be noted that the terms "first," "second," "target," etc., used in the specification, claims, and accompanying drawings of this invention 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 embodiments of the invention 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 a 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.
[0027] Example 1
[0028] Figure 1 This is a flowchart illustrating a robot walking and positioning termination determination method according to Embodiment 1 of the present invention. This embodiment is applicable to situations where robot walking and positioning termination determination is required. The method can be executed by a robot walking and positioning termination determination device, which can be implemented in hardware and / or software. This robot walking and positioning termination determination device can be configured in an electronic device. For example... Figure 1 As shown, the method includes:
[0029] S110. Determine the global positioning error and zero-moment offset error of the robot at the task position, wherein the global positioning error is used to represent the offset distance between the robot and the task position, and the zero-moment offset error is used to represent the offset distance between the robot's zero-moment point and the supporting polygon.
[0030] In this context, "robot" can refer to a machine device capable of automatically performing tasks, simulating human behavior, or assisting human work. "Task position" refers to the location of the target location or object where the robot needs to perform operations, typically expressed in three-dimensional coordinates (e.g., x, y, z) or relative to a reference frame. "Global positioning error" refers to the deviation of the straight-line distance between the robot's final position after reaching the vicinity of the task position and the task position itself, reflecting the robot's positional accuracy in the global coordinate system. "Zero-moment offset error" refers to the shortest distance between the robot's zero-moment point (ZMP) and the supporting polygon, used to assess the robot's dynamic stability. A zero-moment point is a point on the ground where the net torque generated by inertial forces and gravity in the direction parallel to the ground axis is zero; that is, at this point, the ground's reaction force on the robot will not produce any torque that would cause the robot to tip over. A supporting polygon is a convex polygon formed by the projection points of the robot's feet in the supporting phase onto the horizontal plane, reflecting the projection range of the robot's feet in contact with the ground on the horizontal plane during walking.
[0031] Specifically, by fusing data from multiple sensors (such as GPS, IMU, LiDAR, or visual SLAM), the straight-line distance (i.e., offset distance) between the robot's stationary position and the task position can be calculated, thereby quantifying the absolute deviation between the robot and the target position. The zero-torque offset error during robot movement can be calculated, providing a direct assessment of the robot's dynamic stability. Global positioning error ensures the robot approaches the target position, providing a foundation for subsequent operations, while zero-torque offset error guarantees robot motion stability, preventing task interruption or hardware damage due to posture imbalance.
[0032] For example, S110 may include: acquiring operational data generated by the robot when it moves to the task position corresponding to the task to be performed, wherein the operational data includes inertial attitude information and plantar pressure information; performing global positioning of the robot at the task position based on the operational data, and determining the global positioning error of the robot at the task position; and determining the zero torque offset error of the robot within a preset time period based on a preset time interval and the operational data.
[0033] Operational data refers to the collection of multi-source information related to the robot's motion state and interaction with the environment, generated during the robot's movement to the task position. It contains the fundamental data required for the robot to perceive its own state and the external environment, and is the core data for localization, navigation, and stability analysis. Inertial attitude information refers to dynamic data describing the robot's spatial attitude and motion state, which can be acquired in real time by an Inertial Measurement Unit (IMU). Plantar pressure information refers to the mechanical distribution data measured by a pressure sensor array when the robot's foot contacts the ground, reflecting the interaction state between the robot and the ground. Preset time interval refers to a pre-set periodic time unit for data sampling and analysis in zero-torque offset error calculation. Preset time period refers to a time window used for statistical error indices in zero-torque offset error analysis.
[0034] Specifically, inertial measurement units (IMUs) can be used to collect the robot's acceleration, angular velocity, and attitude angles (pitch, roll, yaw) to obtain inertial attitude information. Foot pressure sensors can be used to measure the pressure distribution at various support points (such as the soles of the feet) to obtain foot pressure information, providing comprehensive input for subsequent positioning and stability analysis. Furthermore, the data from the IMU and foot pressure sensors can be timestamped to ensure that the inertial attitude information and foot pressure information correspond in the time dimension. Laser SLAM (such as the LOAM algorithm) can be used for global localization of the robot, and Kalman filtering can be used to fuse the global localization results with the runtime data to determine the global localization error of the robot at the task position, thereby improving positioning accuracy. Based on the foot pressure information, the zero-torque offset error of the robot within a preset time period can be calculated according to preset time intervals, reflecting the robot's dynamic equilibrium state.
[0035] For example, determining the zero torque offset error of the robot within a preset time period based on a preset time interval and operational data includes: determining the zero torque point of the robot within a preset time period before it reaches the task position based on operational data, and determining the zero torque offset error between the zero torque point and the supporting polygon of the robot at the corresponding time interval within the preset time period.
[0036] The zero-torque point can be a point on the ground such that the net torque generated by the inertial force and gravity in the direction parallel to the ground axis of the robot is zero. The support polygon can be a convex polygon formed by the projection points of the robot's feet in the support phase onto the horizontal plane, reflecting the projection range of the robot's feet in contact with the ground on the horizontal plane during walking.
[0037] Specifically, based on plantar pressure information, the Zero Moment Point (ZMP) is calculated within a preset time period before the robot reaches the task position, and the supporting polygon of the robot during operation is determined based on the plantar pressure information. Within the preset time period, at preset time intervals, the shortest distance between the Zero Moment Point and the supporting polygon of the robot at the corresponding moment is calculated, i.e., the zero moment offset error. The offset distance between the ZMP and the supporting polygon can be used to intuitively reflect the dynamic balance state of the robot.
[0038] S120. Based on the global positioning error, zero torque offset error, preset positioning error threshold and preset offset error threshold corresponding to the robot's task to be executed, perform a coarse positioning termination judgment on the robot and determine the first positioning termination judgment result.
[0039] Here, the task to be executed refers to the task operation that the robot is about to perform at the task location. The preset positioning error threshold refers to a pre-set maximum allowable global positioning error value; when the actual error is less than or equal to this value, the coarse positioning is considered complete. The preset offset error threshold refers to a pre-set maximum allowable zero-torque offset error value; when the actual error is less than or equal to this value, the coarse positioning is considered complete, ensuring the robot operates in a stable state. The first positioning termination judgment result indicates whether the robot's coarse positioning phase has terminated.
[0040] Specifically, the global positioning error can be compared with a preset positioning error threshold, and the zero torque offset error can be compared with a preset offset error threshold. If the global positioning error is less than or equal to the preset positioning error threshold and the zero torque offset error is less than or equal to the preset offset error threshold, the robot is determined to have completed coarse positioning and the first positioning termination judgment result is obtained. This ensures that the robot can safely and accurately terminate positioning during dynamic walking.
[0041] It should be noted that the preset positioning error threshold and preset offset error threshold are different for different tasks to be performed. The error threshold can be dynamically adjusted according to the task type (such as handling, welding) or environmental complexity (such as ground slope). Furthermore, the positioning strategy can also be changed according to changes in the robot and the external environment. For example, if the IMU detects a sudden acceleration of ≥0.3g in the robot, the positioning will be terminated immediately and the anti-disturbance control mode will be switched; if the terrain changes cause a sudden change in the plantar pressure distribution (such as a standard deviation increase of >50%), the positioning process will be reinitialized; if the robot's energy consumption is detected to exceed the preset energy consumption threshold, the positioning will be terminated immediately. This achieves dynamic response of the positioning strategy and improves the accuracy and safety of the robot's positioning termination determination.
[0042] For example, S120 may include: determining that the robot meets the global positioning condition in response to the global positioning error being less than or equal to a preset positioning error threshold; determining that the robot meets the stability positioning condition in response to the zero torque offset error corresponding to each preset time interval within a preset time period being less than or equal to a preset offset error threshold; and determining that the robot meets the coarse positioning termination condition in response to the robot meeting both the global positioning condition and the stability positioning condition.
[0043] The global positioning condition can be defined as the robot's global positioning error being less than or equal to a preset positioning error threshold during task execution. The stability positioning condition can be defined as the robot's zero-torque offset error being less than or equal to a preset offset error threshold at each preset time interval within a preset time period. The coarse positioning termination condition can be defined as the robot simultaneously satisfying both the global positioning condition and the stability positioning condition.
[0044] Specifically, the calculated global positioning error is compared with a preset positioning error threshold. If the global positioning error is less than or equal to the preset positioning error threshold, the robot is deemed to meet the global positioning condition, ensuring that the robot is close to the target position and avoiding subsequent task failure due to positional deviation. The calculated zero-torque offset error for each preset time interval within a preset time period is compared with a preset offset error threshold. If the zero-torque offset error for each preset time interval within the preset time period is less than or equal to the preset offset error threshold, the robot is deemed to meet the stability positioning condition, ensuring the robot remains stable during movement. Only when both the global positioning condition and the stability positioning condition are simultaneously met is coarse positioning terminated (i.e., the first positioning termination judgment result is "positioning terminated"), confirming that the robot meets the coarse positioning termination condition. This dual-condition approach ensures that the robot reaches safety thresholds in both position and stability, preventing risky task execution due to a single condition being met.
[0045] S130. In response to the first positioning termination judgment result being that positioning has terminated, determine the interval distance between the robot and the task object, and based on the interval distance and the preset distance threshold corresponding to the task to be executed, perform a fine positioning termination judgment on the robot, and determine the second positioning termination judgment result, so that the robot can execute the task to be executed based on the second positioning termination judgment result.
[0046] The task object can refer to the object being manipulated corresponding to the robot's task to be performed. For example, if the robot's task to be performed is a handling task, then the object being handled is the task object. The interval distance can refer to the actual distance between the robot's end effector (such as a robotic arm or gripper) and the task object (such as a workpiece or operating point). The preset distance threshold can refer to a pre-set maximum allowable interval distance; when the actual distance is less than or equal to this value, the fine positioning can be considered complete. The second positioning termination judgment result can refer to the result used to indicate whether the robot's fine positioning phase has terminated.
[0047] Specifically, in response to the first positioning termination judgment result indicating that positioning has terminated, a high-precision sensor (such as a laser rangefinder or depth camera) can be used to measure the distance between the robot's end effector (such as the end effector of a robotic arm) and the task object (such as a workpiece or operation point), i.e., the interval distance between the robot and the task object. This interval distance is compared with a preset distance deviation threshold. If the interval distance is less than the preset distance threshold, it is determined that the robot's fine positioning has been completed, and a second positioning termination judgment result is obtained. This enables the triggering of task operations under stable and accurate conditions, avoiding collisions or operation failures, and meeting the requirements for fine operation.
[0048] In this embodiment, by determining the robot's global positioning error and zero-torque offset error at the task position, where the global positioning error represents the offset distance between the robot and the task position, and the zero-torque offset error represents the offset distance between the robot's zero-torque point and the supporting polygon, the overall positional deviation and balance state of the robot are quantified, providing a data basis for subsequent positioning termination. Based on the global positioning error, zero-torque offset error, and preset positioning error thresholds and preset offset error thresholds corresponding to the robot's task to be executed, a coarse positioning termination judgment is performed on the robot to determine the first positioning termination judgment result. This achieves a coarse positioning termination judgment that integrates motion stability and positional deviation, ensuring that the robot can safely and accurately terminate positioning during dynamic walking. In response to the first positioning termination judgment result indicating that positioning has terminated, the interval distance between the robot and the task object is determined. Based on the interval distance and the preset distance threshold corresponding to the task to be executed, a fine positioning termination judgment is performed on the robot to determine the second positioning termination judgment result. This allows the robot to execute the task to be executed based on the second positioning termination judgment result, ensuring the flexibility of task operation and thus improving the safety of subsequent operations. By performing coarse positioning of the robot by simultaneously determining its overall positional deviation and balance, we can ensure the stability and safety of the robot after coarse positioning is terminated. Fine positioning termination determination helps to make fine adjustments to the robot, which can further improve positioning accuracy and ensure the flexibility and safety of subsequent task operations.
[0049] For example, the above method further includes: in response to the second positioning termination judgment result being that positioning is not completed, adjusting the position of the robot based on the task position, redetermining the interval distance between the robot and the task object based on the robot after position adjustment, and re-performing the fine positioning termination judgment of the robot based on the interval distance and a preset distance threshold.
[0050] Specifically, in response to the second positioning termination judgment result indicating that positioning is incomplete, the robot's movement control parameters can be adjusted according to the robot's task position, and the robot can be controlled to move according to the adjusted movement control parameters to approach the task object. Based on the robot's position adjustment, the interval distance between the robot and the task object is recalculated and compared with a preset distance threshold to achieve a new fine positioning termination judgment for the robot, thereby gradually bringing the robot closer to the theoretically optimal position.
[0051] Example 2
[0052] Figure 2 This is a flowchart of a robot walking positioning termination determination method provided in Embodiment 2 of the present invention. This embodiment optimizes the step "determining the interval distance between the robot and the task object" based on the above embodiments. Explanations of terms that are the same as or corresponding to those in the above embodiments are not repeated here.
[0053] See Figure 2 The alternative robot walking positioning termination determination method provided in this embodiment specifically includes the following steps:
[0054] S210. Determine the global positioning error and zero-moment offset error of the robot at the task position, wherein the global positioning error is used to represent the offset distance between the robot and the task position, and the zero-moment offset error is used to represent the offset distance between the robot's zero-moment point and the supporting polygon.
[0055] S220. Based on the global positioning error, zero torque offset error, preset positioning error threshold and preset offset error threshold corresponding to the robot's task to be executed, perform a coarse positioning termination judgment on the robot and determine the first positioning termination judgment result.
[0056] S230, in response to the first positioning termination judgment result being that positioning has terminated, determine the first spatial pose of the robot in the preset base coordinate system and the second spatial pose of the task object in the preset base coordinate system.
[0057] Here, the preset base coordinate system can refer to a pre-defined reference frame for the position and orientation of the robot and the task object. For example, the preset base coordinate system can be the global map coordinate system. The first spatial pose can refer to the position and orientation of the robot in the preset base coordinate system, which is usually a homogeneous transformation matrix. The second spatial pose can refer to the position and orientation of the task object in the preset base coordinate system, representing the specific position and orientation of the task object in space.
[0058] Specifically, in response to the first localization termination judgment result indicating that localization has terminated, the robot's state estimator can use a homogeneous transformation matrix to represent the pose of the robot and the task object, generating the robot's first spatial pose in a preset base coordinate system. The visual detection module can track the task object and use a homogeneous transformation matrix to transform the pose of the task object in another coordinate system (such as the camera coordinate system) to the preset base coordinate system, generating the task object's second spatial pose in the preset base coordinate system. This achieves an intuitive pose representation of the robot and the task object in the same reference coordinate system, providing a data foundation for subsequent calculations.
[0059] S240. Based on the first spatial pose, the second spatial pose, and the robot's preset motion space, determine the interval distance between the robot and the task object, and based on the interval distance and the preset distance threshold corresponding to the task to be executed, perform a fine positioning termination judgment on the robot, determine the second positioning termination judgment result, so that the robot can execute the task to be executed based on the second positioning termination judgment result.
[0060] The preset motion space can refer to the maximum area that the end effector of the robot's upper body can operate.
[0061] Specifically, the positional difference between the robot and the task object can be calculated based on the first and second spatial poses. Furthermore, based on this positional difference and a preset motion space, the distance between the robot and the task object can be calculated. The distance between the robot and the task object is compared with a preset distance threshold to perform a precise localization termination judgment on the robot, determining a second localization termination judgment result. This allows the robot to execute the task based on the second localization termination judgment result, ensuring the safety and flexibility of subsequent task execution.
[0062] For example, the step S240, "determining the distance between the robot and the task object based on the first spatial pose, the second spatial pose, and the robot's preset motion space," may include: performing a difference analysis on the first spatial pose and the second spatial pose, determining the relative transformation matrix between the first spatial pose and the second spatial pose, and determining the rotation matrix and translation vector corresponding to the relative transformation matrix; determining the task operation range between the robot and the task object based on the robot's preset motion space, the second spatial pose, and the rotation matrix, and determining the task operation radius corresponding to the task operation range; and determining the distance between the robot and the task object based on the translation vector and the task operation radius.
[0063] In this context, the relative transformation matrix can be a matrix describing the differences in position and orientation of the robot relative to the task object. The rotation matrix can be a submatrix within the relative transformation matrix, representing the differences in orientation of the robot relative to the task object. The translation vector can be a subvector within the relative transformation matrix, representing the differences in position of the robot relative to the task object. The task operating range can be the maximum area of activity where the robot performs task operations on the task object. The task operating radius can be the maximum permissible distance from the robot's end effector to the surface of the task object within the task operating range.
[0064] Specifically, the first and second spatial poses can be multiplied by an inverse transformation to generate a pose matrix relative to the second spatial pose, i.e., a relative transformation matrix. This eliminates the coordinate system differences between the robot and the task object, providing a unified benchmark for subsequent analysis. The relative transformation matrix is then decomposed to obtain the corresponding rotation matrix and translation vector. Based on the first and second spatial poses, the relative height of the task object relative to the robot's body coordinate system is determined. At this relative height, a predetermined motion space of the robot is intercepted using the rotation matrix as the rotation angle. The maximum envelope circle of this intercept is taken as the task operation range between the robot and the task object, and the radius of this envelope circle is the corresponding task operation radius. Based on the translation vector and the task operation radius, the difference between the translation vector and the task operation radius is taken as the interval distance between the robot and the task object. This helps ensure that the calculated interval distance is within the robot's motion capability range, avoiding unreachable targets.
[0065] For example, the robot's first spatial pose T0 in a preset coordinate system can be obtained through the robot's state estimator. The pose of the task object in the camera coordinate system can be obtained through the vision detection module and converted into a second spatial pose T1 in the same preset coordinate system as the robot. The difference between them can be represented by the relative transformation matrix T_diff = T1. -1T0 is the measurement, where the corresponding rotation matrix is R_diff and the translation vector is t_diff. Assuming the preset motion space of the robot's upper body is Ω and the relative height of the manipulated object with respect to the robot's body coordinate system is Δz, the maximum envelope circle of the cross section obtained by rotating Ω through Δz by R_diff is taken as the task operation range corresponding to the task object. The radius of this envelope circle is r = f(Ω, Δz, R_diff), which is the task operation radius. ε is defined as the termination margin (i.e., the preset distance threshold), which can be an empirical constant or an empirical function ε = g(r) about the envelope radius. Therefore, the fine positioning termination judgment condition can be defined as t_diff - r < ε, where the x-component of t_diff in the x direction is t_diff_x - r_x < the x-component of ε_x, and similarly, the y-component in the y direction is t_diff_y - r_y < ε_y. Furthermore, in response to the second positioning termination judgment result indicating that fine positioning is incomplete, the robot's motion control parameters can be adjusted to ensure that the robot meets the fine positioning termination judgment condition after movement. For example, given the robot's motion control parameters are v_x and v_y, then v_x = h(t_diff_x, r_x, ε_x), where h can be a simple piecewise function if t_diff_x - r_x < ε_x, v_x = 0, and elsev_x = K(t_diff_x - r_x), where K is a constant. The same applies to v_y.
[0066] The technical solution of this embodiment lays the data foundation for subsequent distance calculation by determining the first spatial pose of the robot in a preset base coordinate system and the second spatial pose of the task object in the preset base coordinate system. Based on the first spatial pose, the second spatial pose, and the robot's preset motion space, the distance between the robot and the task object is determined, thereby helping to ensure that the calculated distance conforms to the robot's actual motion capability and avoiding unreachable or dangerous operations. By accurately acquiring the spatial poses of the robot and the task object and dynamically adjusting the safety boundary according to the preset motion space, this invention can accurately locate the distance between the robot and the task object, thus adapting to diverse task scenarios, facilitating fine-tuning of the robot, and ensuring the stability and safety of robot operation.
[0067] Example 3
[0068] Figure 3 This is a schematic diagram of a robot walking positioning termination judgment device provided in Embodiment 3 of the present invention. Figure 3 As shown, the device includes: an error determination module 310, a first termination judgment module 320, and a second termination judgment module 330;
[0069] The error determination module 310 is used to determine the global positioning error and zero torque offset error of the robot at the task position. The global positioning error is used to represent the offset distance between the robot and the task position, and the zero torque offset error is used to represent the offset distance between the zero torque point of the robot and the supporting polygon.
[0070] The first termination judgment module 320 is used to perform a coarse positioning termination judgment on the robot based on the global positioning error, the zero torque offset error, the preset positioning error threshold and the preset offset error threshold corresponding to the robot's task to be executed, and to determine the first positioning termination judgment result.
[0071] The second termination judgment module 330 is used to respond to the first positioning termination judgment result that positioning is completed, determine the interval distance between the robot and the task object, and perform a fine positioning termination judgment on the robot based on the interval distance and the preset distance threshold corresponding to the task to be executed, and determine the second positioning termination judgment result, so that the robot can execute the task to be executed based on the second positioning termination judgment result.
[0072] In this embodiment, by determining the robot's global positioning error and zero-torque offset error at the task position, where the global positioning error represents the offset distance between the robot and the task position, and the zero-torque offset error represents the offset distance between the robot's zero-torque point and the supporting polygon, the overall positional deviation and balance state of the robot are quantified, providing a data basis for subsequent positioning termination. Based on the global positioning error, the zero-torque offset error, and the preset positioning error threshold and preset offset error threshold corresponding to the robot's task to be executed, a coarse positioning termination judgment is performed on the robot to determine a first positioning termination judgment result. This achieves a coarse positioning termination judgment that integrates motion stability and positional deviation, ensuring that the robot can safely and accurately terminate positioning during dynamic walking. In response to the first positioning termination judgment result indicating that positioning has terminated, the interval distance between the robot and the task object is determined. Based on the interval distance and the preset distance threshold corresponding to the task to be executed, a fine positioning termination judgment is performed on the robot to determine a second positioning termination judgment result. This allows the robot to execute the task to be executed based on the second positioning termination judgment result, ensuring the flexibility of task operation and improving the safety of subsequent operations. By performing coarse positioning of the robot by simultaneously determining its overall positional deviation and balance, we can ensure the stability and safety of the robot after coarse positioning is terminated. Fine positioning termination determination helps to make fine adjustments to the robot, which can further improve positioning accuracy and ensure the flexibility and safety of subsequent task operations.
[0073] Optionally, the error determination module 310 includes:
[0074] The data acquisition unit is used to acquire the operation data generated by the robot when it moves to the task position corresponding to the task to be performed, wherein the operation data includes inertial attitude information and plantar pressure information;
[0075] The first error determination unit is used to perform global positioning of the robot at the task position based on the running data, and determine the global positioning error of the robot at the task position.
[0076] The second error determination unit is used to determine the zero torque offset error of the robot within a preset time period based on a preset time interval and the running data.
[0077] Optionally, the second error determination unit is specifically used to: determine the zero torque point of the robot within a preset time period before it reaches the task position based on the running data, and determine the zero torque offset error between the zero torque point and the support polygon of the robot at the corresponding time interval every preset time interval within the preset time period.
[0078] Optionally, the first termination judgment module 320 is specifically used to: determine that the robot meets the global positioning condition in response to the global positioning error being less than or equal to the preset positioning error threshold; determine that the robot meets the stability positioning condition in response to the zero torque offset error corresponding to each preset time interval within a preset time period being less than or equal to the preset offset error threshold; and determine that the robot meets the coarse positioning termination condition in response to the robot meeting both the global positioning condition and the stability positioning condition.
[0079] Optionally, the second termination determination module 330 includes:
[0080] The pose determination unit is used to determine the first spatial pose of the robot in a preset base coordinate system and the second spatial pose of the task object in the preset base coordinate system.
[0081] The distance determination unit is used to determine the interval distance between the robot and the task object based on the first spatial pose, the second spatial pose, and the robot's preset motion space.
[0082] Optionally, the distance determination unit is specifically used for: performing a difference analysis on the first spatial pose and the second spatial pose, determining the relative transformation matrix between the first spatial pose and the second spatial pose, and determining the rotation matrix and translation vector corresponding to the relative transformation matrix; determining the task operation range between the robot and the task object based on the preset motion space corresponding to the robot, the second spatial pose, and the rotation matrix, and determining the task operation radius corresponding to the task operation range; and determining the interval distance between the robot and the task object based on the translation vector and the task operation radius.
[0083] Optionally, the above device further includes: a position adjustment module;
[0084] The position adjustment module is specifically used to: respond to the second positioning termination judgment result that positioning is not completed, adjust the position of the robot based on the task position, redetermine the interval distance between the robot and the task object based on the robot after position adjustment, and re-perform the fine positioning termination judgment of the robot based on the interval distance and the preset distance threshold.
[0085] The above-described device can execute the robot walking positioning termination judgment method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of executing the robot walking positioning termination judgment method.
[0086] Example 4
[0087] Figure 4 This is a schematic diagram of the structure of an electronic device implementing the robot walking positioning termination determination method according to an embodiment of the present invention. The electronic device 10 is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.
[0088] like Figure 4As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 can also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0089] Multiple components in electronic device 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 electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0090] 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, digital signal processors (DSPs), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as the robot walking localization termination determination method.
[0091] In some embodiments, the robot walking positioning termination determination method can 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 can be loaded and / or installed on electronic device 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 walking positioning termination determination method described above can be performed. Alternatively, in other embodiments, processor 11 can be configured to execute the robot walking positioning termination determination method by any other suitable means (e.g., by means of firmware).
[0092] In particular, according to embodiments of the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of the present invention include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication unit 19, or installed from storage unit 18, or installed from ROM 12. When the computer program is executed by processor 11, it performs the functions defined in the methods of the embodiments of the present invention.
[0093] 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.
[0094] Computer programs used to implement the methods of the present invention 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.
[0095] In the context of this invention, 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 may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may 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 fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0096] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device 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 electronic device. 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).
[0097] 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.
[0098] 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.
[0099] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.
[0100] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. 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 invention should be included within the scope of protection of this invention.
Claims
1. A method for determining the termination of robot walking and positioning, characterized in that, include: Determine the global positioning error and zero-moment offset error of the robot at the task position, wherein the global positioning error is used to represent the offset distance between the robot and the task position, the zero-moment offset error is used to represent the offset distance between the robot's zero-moment point and the supporting polygon, the global positioning error is the straight-line distance deviation between the position where the robot stops walking after reaching the vicinity of the task position and the task position, and the zero-moment offset error is the shortest distance between the robot's zero-moment point and the supporting polygon; Based on the global positioning error, the zero torque offset error, the preset positioning error threshold and the preset offset error threshold corresponding to the robot's task to be executed, a coarse positioning termination judgment is made on the robot to determine the first positioning termination judgment result. In response to the first positioning termination judgment result being that positioning has terminated, the interval distance between the robot and the task object is determined, and based on the interval distance and the preset distance threshold corresponding to the task to be executed, the robot is subjected to a fine positioning termination judgment, and a second positioning termination judgment result is determined, so that the robot executes the task to be executed based on the second positioning termination judgment result.
2. The method according to claim 1, characterized in that, The determination of the robot's global positioning error and zero-torque offset error at the task location includes: The robot acquires operational data generated when it moves to the task position corresponding to the task to be performed, wherein the operational data includes inertial attitude information and plantar pressure information; Based on the operational data, the robot is globally located at the task position, and the global positioning error of the robot at the task position is determined. Based on the preset time interval and the operating data, the zero torque offset error of the robot within the preset time period is determined.
3. The method according to claim 2, characterized in that, The step of determining the zero torque offset error of the robot within a preset time period based on a preset time interval and the operating data includes: Based on the operational data, the zero-torque point of the robot within a preset time period before reaching the task position is determined, and within the preset time period, at preset time intervals, the zero-torque offset error between the zero-torque point and the supporting polygon of the robot at the corresponding moment is determined.
4. The method according to claim 1, characterized in that, The step of performing a coarse positioning termination judgment on the robot based on the global positioning error, the zero torque offset error, the preset positioning error threshold corresponding to the robot's task to be executed, and the preset offset error threshold, and determining the first positioning termination judgment result includes: In response to the global positioning error being less than or equal to the preset positioning error threshold, it is determined that the robot meets the global positioning conditions; In response to the fact that the zero torque offset error of the robot is less than or equal to the preset offset error threshold for each preset time interval within a preset time period, it is determined that the robot meets the stability positioning condition. In response to the robot satisfying the global positioning condition and the stability positioning condition, it is determined that the robot satisfies the coarse positioning termination condition.
5. The method according to claim 1, characterized in that, Determining the distance between the robot and the task object includes: Determine the first spatial pose of the robot in a preset base coordinate system and the second spatial pose of the task object in the preset base coordinate system; Based on the first spatial pose, the second spatial pose, and the robot's preset motion space, the distance between the robot and the task object is determined.
6. The method according to claim 5, characterized in that, Determining the distance between the robot and the task object based on the first spatial pose, the second spatial pose, and the robot's preset motion space includes: Perform a difference analysis on the first spatial pose and the second spatial pose to determine the relative transformation matrix between the first spatial pose and the second spatial pose, and determine the rotation matrix and translation vector corresponding to the relative transformation matrix; Based on the preset motion space corresponding to the robot, the second spatial pose, and the rotation matrix, the task operation range between the robot and the task object is determined, and the task operation radius corresponding to the task operation range is determined. Based on the translation vector and the task operation radius, the interval distance between the robot and the task object is determined.
7. The method according to claim 1, characterized in that, The method further includes: In response to the second positioning termination judgment result being that positioning is incomplete, the robot's position is adjusted based on the task position, and the interval distance between the robot and the task object is re-determined based on the robot's adjusted position. Based on the interval distance and the preset distance threshold, the robot's precise positioning termination judgment is re-performed.
8. A robot walking positioning termination judgment device, characterized in that, include: An error determination module is used to determine the global positioning error and zero-torque offset error of the robot at the task position. The global positioning error represents the offset distance between the robot and the task position, and the zero-torque offset error represents the offset distance between the robot's zero-torque point and the supporting polygon. The global positioning error is the deviation of the straight-line distance between the robot's position where it stops walking near the task position and the task position. The zero-torque offset error is the shortest distance between the robot's zero-torque point and the supporting polygon. The first termination judgment module is used to perform a coarse positioning termination judgment on the robot based on the global positioning error, the zero torque offset error, the preset positioning error threshold and the preset offset error threshold corresponding to the robot's task to be executed, and to determine the first positioning termination judgment result. The second termination judgment module is used to respond to the first positioning termination judgment result that positioning is completed, determine the interval distance between the robot and the task object, and perform a fine positioning termination judgment on the robot based on the interval distance and the preset distance threshold corresponding to the task to be executed, and determine the second positioning termination judgment result, so that the robot can execute the task to be executed based on the second positioning termination judgment result.
9. An electronic device, characterized in that, The electronic device 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 robot walking positioning termination determination method according to any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that are used to cause the processor to execute the robot walking positioning termination determination method according to any one of claims 1-7.
Citation Information
Patent Citations
Foot state detection device of biped robot and slope walking method based on foot state detection device
CN110450159A