A robot collaborative control system
By generating constraint task packages through the decision-making unit and optimizing the movement trajectory through the central control unit, and combining the balance threshold and the meta-task template library, the problem of insufficient planning in the robot system in dynamic environments is solved, realizing autonomous adjustment and stable movement, and improving the overall performance and reliability of the system.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHENMAI MINING (SHANGHAI) CO LTD
- Filing Date
- 2026-02-27
- Publication Date
- 2026-06-26
AI Technical Summary
Existing robotic systems lack planning capabilities when facing dynamic or unstructured environments, making it difficult to autonomously adjust motion trajectories and postures based on real-time perceived environmental information. Furthermore, the motion trajectory determination of multi-degree-of-freedom robotic arms focuses only on geometric characteristics, ignoring the rationality of joint movements, making it difficult to generate optimal motion schemes.
The decision unit parses instructions to generate constraint task packages, the central control unit divides the workflow into multiple segments and optimizes the movement trajectory, and combines the balance threshold and meta-task template library to generate adaptive robotic arm motion data. The joint angle combination is optimized through inverse kinematics calculation to ensure the stability and efficiency of the system.
This enables the robot system to autonomously plan and stably move in dynamic environments, improving the accuracy of path selection and the overall performance of the system. It avoids disjointed movements and spatial conflicts, and generates a safe, efficient and robotic arm-friendly motion scheme.
Smart Images

Figure CN122274940A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robot intelligent control technology, and in particular to a robot collaborative control system. Background Technology
[0002] With the development of robotics technology, composite robot systems consisting of mobile vehicles carrying multi-degree-of-freedom robotic arms have been applied in many fields. When performing tasks, these systems need to coordinate the movement of the vehicle and the operation of the robotic arms to achieve efficient and safe operation.
[0003] However, existing technologies are insufficient in planning capabilities when facing dynamic or unstructured environments. They typically rely on preset paths or real-time teleoperation by operators, making it difficult to autonomously adjust motion trajectories and postures based on real-time environmental information. Their intelligence and adaptability are limited, and for multi-degree-of-freedom robotic arms, the determination of motion trajectories focuses only on geometric characteristics, often neglecting the rationality of joint movements, making it difficult to generate optimal motion schemes. Summary of the Invention
[0004] The purpose of this application is to provide a robot cooperative control system to solve the above-mentioned technical problems, which aims to improve the accuracy of motion path selection and the accuracy of path modification in case of emergencies.
[0005] In some embodiments of this application, a robot cooperative control system is provided, including:
[0006] The decision unit is used to parse instructions and generate constraint task packages; The central control unit is used to set the robot's workflow data according to the constraint task package; The warning unit is used to detect the robot's working status and execute a warning strategy based on the working status. The central control unit includes: The first control module is used to set multiple key frame nodes according to the constraint task package, and to divide the workflow into multiple segments according to the key frame nodes. The second control module is used to calculate the movement trajectory of each segment and connect the various movement trajectories to form the overall movement trajectory. The third control module is used to optimize the overall trajectory to obtain vehicle movement data; The fourth control module is used to set the robotic arm motion data based on the key frame nodes and vehicle movement data.
[0007] In some embodiments of this application, the first control module is further configured to: The instruction is broken down into multiple sub-instructions; Based on the type data of each sub-instruction, the corresponding meta-task template is matched from the preset meta-task template library; Extract the first position node data of the meta-task template, and set each first position node as a reference point; Extract each second-position node from the meta-task template; Calculate the distance between each second position node and the first position node in sequence. When the position distance is greater than the balance threshold, add the second position node as the reference point. Add transition position nodes according to the aforementioned constraint task package; Set the reference point and transition position node as keyframe nodes.
[0008] In some embodiments of this application, the calculation of the movement trajectory of each segment includes: Obtain the location data of keyframe nodes in each segment; Based on the data in the constraint task package, set the limits for each smooth trajectory; The common portion of the limits of each smooth trajectory is set as the feasible pose region; Calculate the shortest trajectory for each keyframe node in the feasible pose region, and set the shortest trajectory as the motion trajectory.
[0009] In some embodiments of this application, the balance threshold includes: Extract the robot's stable tilt angle and the support polygon boundary of the vehicle to obtain the static stability threshold; A dynamic adjustment factor is generated based on the vehicle tilt and vibration amplitude measured in real time. A balance threshold is generated based on the static stability threshold and the dynamic adjustment factor.
[0010] In some embodiments of this application, matching a corresponding meta-task template from a preset meta-task template library includes: According to the sub-instruction, obtain the type data and constraints; Traverse the metatask template library and extract the task type and constraints of each metatask template; The matching degree of the type data and constraints of the sub-instruction is calculated with the task type and constraints of each meta-task template; Based on the matching degree calculation results, all meta-task templates are sorted. The meta-task template with the highest matching degree is selected as the matching result of the sub-instruction.
[0011] In some embodiments of this application, the first control module is further configured to: Obtain the joint angles and end effector load of the robotic arm; Calculate the total centroid projection of the vehicle, robotic arm, and end-effector based on the joint angles and end-effector load. If the total centroid projection is within the boundary of the supporting polygon, the total centroid projection meets the stability requirements; if the total centroid projection is not within the boundary of the supporting polygon, a key frame node is set until the total centroid projection meets the stability requirements.
[0012] In some embodiments of this application, the third control module is further configured to: On the overall trajectory of action, the influence radius of each keyframe node is set; Calculate the rotation radius of the total trajectory within each influence radius; When the turning radius is less than the vehicle's minimum turning radius, an adjustment node is inserted on the total trajectory. The trajectory of the section is reconstructed based on the vehicle's minimum turning radius to generate a corrected trajectory.
[0013] In some embodiments of this application, the fourth control module is further configured to: Acquire spatial pose data for each keyframe node; The spatial pose data and vehicle movement data are transformed from the global coordinate system to the robot arm coordinate system to obtain the robot arm pose data; Multiple joint angle combinations are calculated based on the robotic arm pose data; Set the filtering parameters, and select the optimal joint angle combination based on the filtering parameters.
[0014] In some embodiments of this application, the robotic arm pose data is used to calculate multiple joint angle combinations, including: Obtain the range of motion of the joint and set it as the joint space; Multiple sets of joint angles are selected in the joint space; Based on the robotic arm pose data, a corresponding directional offset is generated; Multiple joint angle combinations are obtained by offsetting each joint angle.
[0015] In some embodiments of this application, the selected optimized joint angle combination includes: Calculate the total centroid projection corresponding to each set of joint angle combinations, and calculate the minimum distance from each total centroid projection to the boundary of the supporting polygon, which is set as the stability margin; All joint angle combinations that satisfy the preset stability margin are selected to form a stable candidate set; From the set of stable candidates, the combination of joint angles with the largest stability margin is selected to form the maximum stability margin set; Calculate the estimated energy consumption corresponding to each joint angle combination in the maximum stability margin set; The joint angle combination with the lowest estimated energy consumption is selected as the optimized joint angle combination.
[0016] Compared with the prior art, the robot collaborative control system of this application has the following advantages: By analyzing the tasks of the decision-making unit and planning the modular progression of the central control unit, the movement of the vehicle and the operation of the robotic arm are separated at various levels, avoiding disjointed actions and spatial conflicts, and ensuring the systematicness and continuity of the work process.
[0017] Based on meta-task template matching and a dynamic keyframe generation mechanism that includes a balance threshold, the system can autonomously adjust its planning strategy according to the task type and real-time environmental conditions. In the motion planning of the robotic arm, it comprehensively considers factors such as stability, smoothness, and energy consumption to generate a safe, efficient, and joint-friendly motion scheme, thereby improving the overall performance and reliability of the system. Attached Figure Description
[0018] Figure 1 This is a schematic diagram of the structure of a robot collaborative control system in a preferred embodiment of this application. Detailed Implementation
[0019] The specific embodiments of this application will be described in further detail below with reference to the accompanying drawings and examples. The following examples are used to illustrate this application, but are not intended to limit the scope of this application.
[0020] In the description of this application, it should be understood that the terms "center", "upper", "lower", "front", "rear", "left", "right", "vertical", "horizontal", "top", "bottom", "inner", "outer", etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are only for the convenience of describing this application and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on this application.
[0021] The terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this application, unless otherwise stated, "a plurality of" means two or more.
[0022] In the description of this application, it should be noted that, unless otherwise expressly specified and limited, the terms "installation," "connection," and "linking" should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral connection; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; and they can refer to the internal connection between two components. Those skilled in the art can understand the specific meaning of the above terms in this application based on the specific circumstances.
[0023] like Figure 1 As shown, a preferred embodiment of the robot cooperative control system of this application includes: The decision unit is used to parse instructions and generate constraint task packages; The central control unit is used to set the robot's workflow data according to the constraint task package; The warning unit is used to detect the robot's working status and execute warning strategies based on the working status. The central control unit includes: The first control module is used to set multiple key frame nodes according to the constraint task package, and to divide the workflow into multiple segments according to the key frame nodes. The second control module is used to calculate the movement trajectory of each segment and connect the movement trajectories to form the overall movement trajectory. The third control module is used to optimize the overall trajectory to obtain vehicle movement data; The fourth control module is used to set the robotic arm motion data based on the key frame nodes and vehicle movement data.
[0024] Specifically, the decision-making unit receives user instructions, performs semantic understanding to identify the task objective, location, type, and constraints (such as accuracy requirements and security levels), and generates a structured constraint task package. The constraint task package contains all known requirements and initial environmental information for this task.
[0025] Specifically, the safety monitoring module detects the robot's working status and executes warning strategies based on that status. It acquires information from the sensor network to monitor the robot's real-time operating status data and has multiple built-in safety rules (such as: tilt angle exceeding limits, distance to obstacles too close, joint rotation angle exceeding the allowable range). When an abnormal status is detected or a safety rule is about to be violated, a warning strategy is immediately triggered.
[0026] Specifically, the central control unit is the core of this system. It receives the structured constraint task package output by the decision-making unit and is responsible for decomposing, planning, and optimizing it into specific data that can directly drive the underlying hardware.
[0027] It is understandable that in the above embodiments, by constructing a system architecture that includes four functional layers: decision-making, planning, execution, and monitoring, the responsibilities of the internal modules of each layer are clearly defined, while making the system logic clear and easy to develop and debug.
[0028] In a preferred embodiment of this application, the first control module is further configured to: Break down the instruction into multiple sub-instructions; Based on the type data of each sub-instruction, the corresponding meta-task template is matched from the preset meta-task template library; Extract the first position node data from the meta-task template and set each first position node as a reference point; Extract each second-position node from the meta-task template; Calculate the distance between each second position node and the first position node in turn. When the position distance is greater than the balance threshold, add the second position node as the reference point. Add transition location nodes based on the constraint task package; Set the reference point and transition position node as keyframe nodes.
[0029] Specifically, a sub-instruction breaks down the received complete load instruction into single-step atomic instructions. For example, moving to a certain location and sampling can be broken down into: navigating to the area, sub-instruction positioning the robotic arm, performing drilling operations, and retracting the robotic arm to a safe position.
[0030] Specifically, the meta-task template library corresponds to a typical operation type (such as navigation, precise positioning, force control operation) for each template. The first control module matches the most suitable meta-task template from the library based on the type of each sub-instruction. For example, navigating to region R matches the region navigation template, and positioning the robotic arm to point P matches the high-precision positioning template.
[0031] Specifically, the reference points are the predefined first position node data extracted from the matched meta-task templates. These nodes are typically the state points that must be traversed to complete this type of task, such as the start and end points of a navigation template, or the robotic arm's working points in a positioning template. These first position nodes are initially set as the reference points for the task flow.
[0032] Specifically, a reference point is added as a potential second location node (such as a transition point or obstacle avoidance point) in the extracted meta-task template. The positional distance between each second location node and the set reference point is calculated. The system calculates a balance threshold in real time. If the positional distance between a second location node and any reference point is greater than the current balance threshold, it is considered that directly crossing that distance may cause stability risks or control difficulties, and therefore the second location node is added as a new reference point.
[0033] Specifically, a set of keyframe nodes is generated. Finally, all reference points and the added transition position nodes are sorted together to form a complete sequence of keyframe nodes. Each keyframe node defines the desired state that the robot system (vehicle + robotic arm) should reach at that moment.
[0034] It is understandable that, in the above embodiments, by combining a preset meta-task template with a dynamically calculated balance threshold, the generation of keyframe nodes is no longer static but adaptive to task requirements and real-time system status. This method improves the efficiency and reliability of planning. In a preferred embodiment of this application, the calculation of the movement trajectory for each segment includes: Obtain the location data of keyframe nodes in each segment; Based on the data in the constraint task package, set the limits for each smooth trajectory; The common part of the limits of each smooth trajectory is set as the feasible pose region; Calculate the shortest trajectory for each keyframe node in the feasible pose region and set the shortest trajectory as the motion trajectory.
[0035] Specifically, based on the data in the constraint task package, the constraint task package is parsed to extract restrictions on motion speed and acceleration, as well as information such as prohibited areas and preferred directions in the environment. Through kinematic modeling, the smooth trajectory limits in each dimension of position and orientation are calculated for every possible pose the robot may traverse from the starting point to the ending point. These limits constitute a multi-dimensional constraint boundary.
[0036] Specifically, the feasible pose region is solved by intersecting the limit boundaries of smooth trajectories in all dimensions. The common portion constitutes a continuous feasible pose region from the starting point to the ending point. Any path within this region satisfies all preset kinematic and dynamic smoothness constraints.
[0037] Specifically, within the solved feasible pose region, an inverse motion optimization algorithm is used to find the shortest trajectory connecting the starting point and the target point. Here, "shortest" can be defined according to task requirements as the shortest time, shortest path length, or minimum energy consumption. The obtained optimal path is then set as the movement trajectory for that segment.
[0038] Understandably, the above embodiments employ a two-stage planning strategy: first defining a safe region, then finding the optimal path. Compared to the traditional method of directly connecting the start and end points and then performing constraint verification and correction, this method ensures the feasibility of the trajectory from the outset. By solving for the feasible pose region, abstract and scattered constraints are integrated into a concrete and continuous geometric space, greatly simplifying the subsequent optimization search process and improving the planning success rate and efficiency. This method is particularly suitable for mobile robotic arm systems with complex constraints in high-dimensional state spaces.
[0039] In a preferred embodiment of this application, the balance threshold includes: Extract the robot's stable tilt angle and the support polygon boundary of the vehicle to obtain the static stability threshold; A dynamic adjustment factor is generated based on the vehicle tilt and vibration amplitude measured in real time. The equilibrium threshold is generated based on the static stability threshold and the dynamic adjustment factor.
[0040] Specifically, the static stability threshold is calculated. The stable tilt angle (the maximum tilt angle the robot can withstand without tipping over) and the support polygon boundary of the vehicle (the polygon formed by the vehicle's contact points with the ground, which forms the basis of the static stability criterion) are extracted from the robot design parameter library. A static stability threshold is then calculated based on these two parameters. This threshold reflects the maximum range of state changes allowed for the robot system to ensure stability under ideal horizontal and static conditions.
[0041] Specifically, a dynamic adjustment factor is generated. An inertial measurement unit mounted on the vehicle measures the vehicle's tilt and vibration amplitude in real time. Based on the angle of tilt deviating from horizontal and the magnitude of vibration amplitude, a dynamic adjustment factor (preferably 0.5) is generated in real time using a predefined mapping function. When the ground is uneven or the vehicle's movement causes it to sway, this factor decreases, thereby lowering the balance threshold. This means that the allowable range of system state changes needs to be narrowed to ensure safety.
[0042] Specifically, the static stability threshold is multiplied by the dynamic adjustment factor to obtain the final equilibrium threshold. This threshold is an adaptive variable that dynamically adjusts with the environment and its own state.
[0043] It is understandable that in the above embodiments, the balance threshold integrates the robot's innate design capabilities and acquired operational status, thereby achieving dynamic and adaptive adjustment of planning constraints.
[0044] In a preferred embodiment of this application, matching a corresponding meta-task template from a preset meta-task template library includes: Based on the sub-instruction, obtain the type data and constraints; Traverse the metatask template library and extract the task type and constraints of each metatask template; The matching degree of the sub-instruction type data and constraints is calculated with the task type and constraints of each meta-task template; Based on the matching degree calculation results, all meta-task templates are sorted. The meta-task template with the highest matching degree is selected as the matching result of the sub-instruction.
[0045] Specifically, the first control module receives the constraint task package from the decision-making unit and parses out the sub-instructions to be processed. The system performs semantic parsing and structured processing on the sub-instructions, extracting two core features: type data (such as high-level task semantic tags for navigation, grasping, assembly, etc.) and constraints (such as accuracy requirements ±1mm, maximum speed 0.5m / s, prohibited area coordinates, etc.), template library traversal, and feature indexing. The system accesses a pre-built meta-task template library. This library is a structured database, and each meta-task template (such as a precision insertion template and a large-scale inspection template) predefines its applicable task type tag set and a structured constraint range description (e.g., applicable accuracy range, typical speed range, required sensor configuration, etc.). This step traverses all templates in the library and loads their feature indexes into memory. Multi-feature matching degree calculation. This is the core of the matching. The system compares the features of the sub-instruction (type data Ci, constraint set Cc) with the features of each candidate template (type tag set Tt, constraint range Tr). Matching score is calculated using a comprehensive scoring function: Type matching score (St): This can be calculated using a semantic similarity algorithm to determine the similarity between Ci and each label in Tt, taking the highest value. Constraint satisfaction score (Sc): This evaluates whether the sub-instruction constraint Cc falls within the template constraint range Tr. For numerical constraints, normalized difference is used for calculation; Comprehensive matching score = W1. St+W2 Sc (where W1 and W2 are preset weights, with W1 typically being higher to emphasize task semantic matching). Candidate template sorting. Based on the overall matching degree, all participating meta-task templates are sorted in descending order. The sorting results form a candidate list from most likely applicable to least applicable. Optimal template selection. The top-ranked meta-task template, i.e., the one with the highest overall matching degree, is selected as the matching result for the current sub-instruction. This template will be invoked, and its internal predefined flow, key nodes (first position node), and other structured information will be output to guide the generation of subsequent keyframe nodes.
[0046] It is understandable that, in the above embodiments, the matching mechanism based on multi-feature calculation goes beyond simple keyword matching, achieving deep coupling between task requirements and template capabilities. This ensures that the system assigns appropriate empirical models to different types of subtasks, significantly improving the rationality of the planning starting point and the efficiency and success rate of subsequent planning.
[0047] In a preferred embodiment of this application, the first control module is further configured to: Obtain the joint angles and end effector load of the robotic arm; Calculate the total centroid projection of the vehicle, robotic arm, and end-effector based on the joint angles and end-effector load. If the total centroid projection is within the boundary of the supporting polygon, the total centroid projection meets the stability requirements; if the total centroid projection is not within the boundary of the supporting polygon, a key frame node is set until the total centroid projection meets the stability requirements.
[0048] Specifically, the stability criterion boundary is obtained. The system obtains the supporting polygon boundary from the physical parameters of the vehicle. This boundary is a two-dimensional planar polygon whose vertices are formed by connecting the projection points of all the contact points between the vehicle's wheels or outriggers and the ground on the horizontal plane. It is the geometric basis for judging the static stability of the robot as a whole. When calculating the projection of the robot system's total center of mass, the mass distribution of the vehicle body, the mass of each link of the robotic arm, and the mass of the end effector and its load must be comprehensively considered. The projection position of the system's total center of mass on the horizontal plane is calculated through kinematic and dynamic models.
[0049] Specifically, stability is determined. The system uses the number of windings method to determine whether the total centroid projection point is located inside the boundary of the acquired supporting polygon. If it is inside, the attitude corresponding to the keyframe node is determined to meet the static stability requirements; if it is outside or on the boundary, it is determined to be unstable.
[0050] Specifically, the planning adjustment feedback mechanism is triggered if the system determines the process to be unstable. This is not simply "setting keyframe nodes," but rather sending adjustment instructions and feedback information to the upstream of the planning process (such as the keyframe generation logic of the first control module or the trajectory planning logic of the second control module). Adjustment strategies may include: fine-tuning the robot arm target pose of the unstable keyframe node, inserting transitional poses between consecutive keyframes to change the centroid movement path, or even re-evaluating the task decomposition. This process is iterative until the total centroid projection corresponding to all keyframe nodes generated by the new planning passes the stability test.
[0051] Understandably, in the above embodiments, this stability verification step introduces a physical model-based negative feedback into the planning closed loop. It ensures that any paper path generated by the system corresponds to a physically safe static posture, eliminating the risk of overturning at the planning stage and fundamentally improving the system's safety in complex terrain or when performing large-scale operations.
[0052] In a preferred embodiment of this application, the third control module is further configured to: On the total action trajectory, set the influence radius of each key frame node; Calculate the turning radius of the total action trajectory within each influence radius; When the turning radius is less than the minimum turning radius of the vehicle, insert adjustment nodes on the total action trajectory; Reconstruct the trajectory of the section based on the minimum turning radius of the vehicle to generate the corrected action trajectory.
[0053] Specifically, local trajectory feature analysis. On the total action trajectory obtained from the preliminary planning, with each key frame node Ki as the center, an influence radius Ri is defined. This radius is usually preset according to the size and dynamic characteristics of the vehicle. Within the trajectory segments of Ri before and after Ki, the system performs high-precision fitting on this segment of the trajectory (such as using spline curves) and calculates its curvature κ. The turning radius Rc is the reciprocal of the curvature (Rc = 1 / κ). It describes the degree of curvature of this segment of the path. The system compares the calculated local turning radius R with the minimum turning radius Rmin of the vehicle. Rmin is an inherent physical property of the vehicle, representing the radius of the tightest curved path that can be achieved under the maximum steering angle. If Rc < Rmin, it is determined that there is a kinematic conflict in this segment of the trajectory, meaning that the vehicle cannot track this curvature without deviating from the path. For the detected conflict trajectory segments, the system inserts new adjustment nodes near the start and end points of the conflict area. Subsequently, the original high-curvature path is discarded, and instead, a series of basic motion primitives compatible with the vehicle kinematics are used for connection. The most typical method is to use an arc-line-arc model for smooth connection, where the radius of the used arc is not less than Rmin. This process is essentially a reconstruction of the local path. After the reconstruction is completed, the system smoothly connects each optimized path segment to form a new total action trajectory. Based on this trajectory, combined with the kinematic model of the vehicle, the speed, acceleration, and orientation angle that the vehicle should have at each moment can be inversely calculated, and these data are encapsulated as vehicle movement data and sent to the underlying drive controller.
[0054] It can be understood that in the above embodiments, this process realizes the conversion from the spatial geometric path to the executable motion instruction. By dynamically detecting and correcting the path segments that do not conform to the vehicle kinematics, it ensures that each planned instruction can be faithfully executed by the underlying controller, avoiding execution failures or emergency stops caused by unrealistic planning, and improving the reliability and fluency of the system.
[0055] In the preferred embodiment of the embodiment of the present application, the fourth control module is further used for: Obtain the spatial pose data of each key frame node; Convert the spatial pose data and the vehicle movement data from the global coordinate system to the robotic arm coordinate system to obtain the robotic arm pose data; Multiple joint angle combinations are calculated based on the robotic arm's pose data; Set the filtering parameters, and select the optimal joint angle combination based on the filtering parameters.
[0056] Specifically, the fourth control module synchronously receives spatial pose data (describing the target position [X,Y,Z] and attitude [R,P,Y] of the robotic arm's end effector in the global coordinate system at each keyframe node) from the first control module, as well as time-synchronized vehicle movement data (containing the vehicle's own pose and velocity information in the same global coordinate system) from the third control module. The system performs continuous coordinate transformations. First, using the vehicle's real-time pose Tgv (a 4x4 homogeneous transformation matrix), the transformation Tgb of the robotic arm's base coordinate system relative to the global coordinate system is calculated. Then, the inverse transformation Tbg=(Tgb) is performed. 1 Transform the target pose Pge of the robotic arm end effector in the global coordinate system to the robotic arm base coordinate system: Pbe = Tbg Pge. The obtained Pbe is the robot arm pose data, which describes the target position and orientation of the robot arm's end effector relative to its base on a moving vehicle. Pbe is input into the inverse kinematics (IK) solver. For a robot arm with multiple degrees of freedom, achieving the same end effector pose usually involves multiple sets of joint angle solutions (i.e., joint angle combinations, such as {θ1, θ2, ..., θn}). The solver uses the Newton-Raphson method to find all feasible solutions, forming a solution space. Optimization dimensions (filtering parameters) are set. The system presets a set of filtering parameters to evaluate the merits of different joint angle combinations in the solution space. These parameters constitute a multi-dimensional optimization space, including but not limited to: joint motion smoothness (joint angle changes between adjacent keyframes), singularity avoidance metric (the reciprocal of the Jacobian matrix condition number), joint torque balance, energy consumption estimation, and coordination with the vehicle's motion direction. These parameters provide a quantitative basis for subsequent optimization selection.
[0057] Understandably, in the above embodiments, through precise coordinate transformation, this module ensures that the robotic arm's motion target always uses the moving vehicle as a reference frame, which is a prerequisite for achieving true collaboration. Furthermore, the acquisition of the inverse kinematics solution space and subsequent optimization and selection make it possible to choose the optimal action from numerous possible actions.
[0058] In a preferred embodiment of this application, the robotic arm pose data is used to calculate multiple joint angle combinations, including: Obtain the range of motion of the joint and set it as the joint space; Select multiple sets of joint angles in the joint space; Based on the robot arm's pose data, generate the corresponding directional offset; Multiple joint angle combinations are obtained by offsetting each joint angle.
[0059] Specifically, the system defines all possible pose ranges (joint space) for the robotic arm. First, it reads the robotic arm's design parameters to obtain the upper and lower limits of the angle each joint can rotate. All joint rotation ranges together constitute a pose library, professionally known as joint space. Any specific pose of the robotic arm corresponds to a point in this space. Multiple different starting poses are selected from the pose library. To avoid getting stuck in local solutions and missing better poses, the system doesn't start with just a guessed pose. Instead, it strategically selects multiple sets of different joint angles from the pose library defined in step one as starting points. These starting points can be evenly distributed or preferentially selected in certain areas based on past task experience. The system calculates the adjustment direction from each starting pose to the target pose. For each selected combination of starting joint angles, the system first calculates the actual position and pose reached by the robotic arm's end effector. Then, it compares this with the robotic arm's pose data (i.e., the desired target position and pose) to obtain the difference between the position and orientation. Based on this difference and the current structural relationship of the robotic arm, the system calculates a directional offset. This offset indicates which direction and how much angle each joint should rotate to bring the end effector closer to the target. The system iteratively calculates along the adjustment direction, collecting all feasible final poses. Following the adjustment direction calculated in step three, the system gradually fine-tunes the angles of each joint and repeatedly verifies whether the end effector is close enough to the target. This process continues until the end effector is sufficiently close to the target position and pose. Every joint angle combination that starts from a different starting point and successfully reaches the target is recorded. Due to different starting points, multiple different joint angle combinations may be obtained, all of which satisfy the end effector pose requirements.
[0060] Understandably, in the above embodiments, by actively trying multiple possible starting paths, it ensures that different ways for the robotic arm to complete the same task can be discovered. This provides a wide variety of alternatives for subsequent steps, avoiding the possibility of missing better, more stable, or more energy-efficient motion postures due to computational limitations.
[0061] In a preferred embodiment of this application, the selected optimized joint angle combination includes: Calculate the total centroid projection corresponding to each set of joint angle combinations, and calculate the minimum distance from each total centroid projection to the boundary of the supporting polygon, which is set as the stability margin. All joint angle combinations that satisfy the preset stability margin are selected to form a stable candidate set; From the stable candidate set, select the joint angle combination with the largest stability margin to form the maximum stability margin set; Calculate the estimated energy consumption corresponding to each joint angle combination in the maximum stability margin set; The joint angle combination with the lowest estimated energy consumption is selected as the optimal joint angle combination.
[0062] Specifically, the stability of each candidate posture is evaluated (stability margin is calculated). For multiple candidate combinations of joint angles, the system analyzes their stability one by one. First, based on the joint angles and end-effector load of each candidate combination, combined with the vehicle's mass distribution, the projection point of the total center of mass of the vehicle, robot arm, and end-effector load onto the support plane is calculated. Then, the vertical distance from this projection point to the nearest edge of the support polygon boundary (i.e., the range connecting all the wheel contact points of the vehicle) is calculated. This shortest distance is defined as the stability margin of the posture. The larger the distance, the less likely the robot is to tip over in that posture. Preliminary safety filtering is performed to eliminate all unstable postures. The system sets a basic stability threshold: the stability margin must be greater than zero. This means the total center of mass projection must fall within the support boundary. The system checks all candidate combinations, retaining only those with a stability margin greater than zero; these constitute a stable candidate set. This step is a hard safety rule, ensuring that any posture with a risk of tipping over is excluded. Among the stable postures, the subset with the best stability is selected. In the stable candidate set that passes the safety filter, the system identifies one or more postures with the largest stability margin values. These postures exhibit the highest static stability among all feasible options. They are categorized separately to form a maximum stability margin set. This step ensures that, while meeting safety requirements, the posture with the strongest disturbance resistance is prioritized. The motion energy consumption of each posture in the optimal stable subset is estimated. For each joint angle combination in the maximum stability margin set, the system estimates the energy required to move the robotic arm from its current posture to that posture based on the robotic arm's dynamics model; this is the estimated energy consumption. The estimation comprehensively considers the torque and rotation angle required by each joint. The final execution posture (optimal stability and lowest energy consumption) is selected. Among the posture subsets with optimal stability (maximum stability margin set), the system compares their estimated energy consumption and ultimately selects the joint angle combination with the lowest energy consumption as the optimized joint angle combination for this motion. This combination will be converted into specific control commands.
[0063] It is understandable that the above embodiments conform to the priority principle in engineering practice. It eliminates the need for manually setting complex weights, and through step-by-step filtering, it absolutely guarantees operational safety while automatically finding the optimal balance between stability and energy efficiency within a safe range, making the system's motion planning both reliable and economical.
[0064] The above description is only a preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and substitutions can be made without departing from the technical principles of this application, and these improvements and substitutions should also be considered within the scope of protection of this application.
Claims
1. A robot collaborative control system, characterized in that, include: The decision unit is used to parse instructions and generate constraint task packages; The central control unit is used to set the robot's workflow data according to the constraint task package; The warning unit is used to detect the robot's working status and execute a warning strategy based on the working status. The central control unit includes: The first control module is used to set multiple key frame nodes according to the constraint task package, and to divide the workflow into multiple segments according to the key frame nodes. The second control module is used to calculate the movement trajectory of each segment and connect the various movement trajectories to form the overall movement trajectory. The third control module is used to optimize the overall trajectory to obtain vehicle movement data; The fourth control module is used to set the robotic arm motion data based on the key frame nodes and vehicle movement data.
2. The robot collaborative control system as described in claim 1, characterized in that, The first control module is further configured to: The instruction is broken down into multiple sub-instructions; Based on the type data of each sub-instruction, the corresponding meta-task template is matched from the preset meta-task template library; Extract the first position node data of the meta-task template, and set each first position node as a reference point; Extract each second-position node from the meta-task template; Calculate the distance between each second position node and the first position node in sequence. When the position distance is greater than the balance threshold, add the second position node as the reference point. Add transition position nodes according to the aforementioned constraint task package; Set the reference point and transition position node as keyframe nodes.
3. The robot collaborative control system as described in claim 2, characterized in that, The calculation of the movement trajectory for each segment includes: Obtain the location data of keyframe nodes in each segment; Based on the data in the constraint task package, set the limits for each smooth trajectory; The common portion of the limits of each smooth trajectory is set as the feasible pose region; Calculate the shortest trajectory for each keyframe node in the feasible pose region, and set the shortest trajectory as the motion trajectory.
4. The robot collaborative control system as described in claim 2, characterized in that, The balance threshold includes: Extract the robot's stable tilt angle and the support polygon boundary of the vehicle to obtain the static stability threshold; A dynamic adjustment factor is generated based on the vehicle tilt and vibration amplitude measured in real time. A balance threshold is generated based on the static stability threshold and the dynamic adjustment factor.
5. A robot collaborative control system as described in claim 4, characterized in that, The step of matching the corresponding meta-task template from the preset meta-task template library includes: According to the sub-instruction, obtain the type data and constraints; Traverse the metatask template library and extract the task type and constraints of each metatask template; The matching degree of the type data and constraints of the sub-instruction is calculated with the task type and constraints of each meta-task template; Based on the matching degree calculation results, all meta-task templates are sorted. The meta-task template with the highest matching degree is selected as the matching result of the sub-instruction.
6. A robot cooperative control system as described in claim 5, characterized in that, The first control module is further configured to: Obtain the joint angles and end effector load of the robotic arm; Calculate the total centroid projection of the vehicle, robotic arm, and end-effector based on the joint angles and end-effector load. If the total centroid projection is within the boundary of the supporting polygon, the total centroid projection meets the stability requirements; if the total centroid projection is not within the boundary of the supporting polygon, a key frame node is set until the total centroid projection meets the stability requirements.
7. A robot cooperative control system as described in claim 6, characterized in that, The third control module is also used for: On the overall trajectory of action, the influence radius of each keyframe node is set; Calculate the rotation radius of the total trajectory within each influence radius; When the turning radius is less than the vehicle's minimum turning radius, an adjustment node is inserted on the total trajectory. The trajectory of the section is reconstructed based on the vehicle's minimum turning radius to generate a corrected trajectory.
8. A robot cooperative control system as described in claim 7, characterized in that, The fourth control module is also used for: Acquire spatial pose data for each keyframe node; The spatial pose data and vehicle movement data are transformed from the global coordinate system to the robot arm coordinate system to obtain the robot arm pose data; Multiple joint angle combinations are calculated based on the robotic arm pose data; Set the filtering parameters, and select the optimal joint angle combination based on the filtering parameters.
9. A robot collaborative control system as described in claim 8, characterized in that, The robotic arm pose data is used to calculate multiple joint angle combinations, including: Obtain the range of motion of the joint and set it as the joint space; Multiple sets of joint angles are selected in the joint space; Based on the robotic arm pose data, a corresponding directional offset is generated; Multiple joint angle combinations are obtained by offsetting each joint angle.
10. A robot cooperative control system as described in claim 9, characterized in that, The selected optimized joint angle combination includes: Calculate the total centroid projection corresponding to each set of joint angle combinations, and calculate the minimum distance from each total centroid projection to the boundary of the supporting polygon, which is set as the stability margin; All joint angle combinations that satisfy the preset stability margin are selected to form a stable candidate set; From the set of stable candidates, the combination of joint angles with the largest stability margin is selected to form the maximum stability margin set; Calculate the estimated energy consumption corresponding to each joint angle combination in the maximum stability margin set; The joint angle combination with the lowest estimated energy consumption is selected as the optimized joint angle combination.