A pose calculation method and device of a six-degree-of-freedom parallel mechanism in an underground scene

By obtaining a training sample set based on a kinematic model of a six-degree-of-freedom parallel mechanism in an underground scene, dividing it into geometric regions and performing dictionary atomic updates, the problem of real-time accuracy and precision in pose calculation of parallel mechanisms in underground scenes is solved, and stable pose calculation under complex terrain is achieved.

CN121389731BActive Publication Date: 2026-05-08YANSHAN UNIV +1
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
YANSHAN UNIV
Filing Date
2025-10-13
Publication Date
2026-05-08

AI Technical Summary

Technical Problem

In underground scenarios, existing technologies cannot quickly and accurately determine the pose of parallel mechanisms, especially under complex terrain and non-homogeneous characteristics, leading to reduced accuracy and singular configuration problems.

Method used

The training sample set is obtained by using a kinematic model based on a six-degree-of-freedom parallel mechanism, which is divided into geometric regions. The dictionary atoms are updated and the region weights are determined. Search and iterative optimization are performed, and the Jacobian matrix is ​​quickly approximated using the dictionary atoms and region weights to realize pose calculation.

Benefits of technology

Real-time and accurate calculation of the pose of parallel mechanisms was achieved in underground scenarios, improving the calculation accuracy and stability under complex terrain and reducing the impact of singular configurations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121389731B_ABST
    Figure CN121389731B_ABST
Patent Text Reader

Abstract

The application discloses a pose calculation method and device of a six-degree-of-freedom parallel mechanism in an underground scene, and the method comprises the following steps: obtaining a training sample set; dividing each training sample into a corresponding geometric region based on a training joint variable in the training sample set; training each geometric region and updating a dictionary atom, while determining a region weight of each geometric region, wherein the dictionary atom is a column element of a dictionary and comprises basic characteristics of a Jacobian matrix; determining a target region in each geometric region based on the region weight, searching in the target region to obtain a closest training joint variable most similar to a current joint variable, and taking a training pose corresponding to the closest training joint variable as a coarse sample; determining a coarse sample approximate Jacobian matrix corresponding to the coarse sample based on the dictionary atom; and obtaining a current pose after iterative optimization of the coarse sample approximate Jacobian matrix. The pose of the parallel mechanism can be determined in real time and accurately in the underground scene.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of parallel mechanism technology, specifically relating to a method and device for calculating the pose of a six-degree-of-freedom parallel mechanism in an underground scenario. Background Technology

[0002] Parallel mechanisms, also known as parallel robots (PM), are closed-loop mechanisms in which a moving platform and a fixed platform are connected by at least two independent kinematic chains, the mechanism has two or more degrees of freedom, and is driven in parallel.

[0003] In existing technologies, methods for solving the pose of parallel mechanisms include: kinematic analysis-based Jacobian matrix solutions, numerical differentiation methods, swarm intelligence-based solutions, and neural network-based Jacobian matrix prediction models. While these methods perform well in conventional scenarios, in underground scenarios such as in-situ stress measurement (e.g., precise monitoring of seismic signals induced in situ by underground fault activity), the terrain is complex. Furthermore, the presence of non-homogeneous fault fracture zones and vibration noise around the fault in underground scenarios can lead to reduced accuracy of existing solutions. For example, the kinematic analysis-based Jacobian matrix solution suffers from micro-slip effects at the contact surface between the mechanism branches and the surrounding rock due to the non-homogeneous characteristics of the fault fracture zone. When the fault dip angle exceeds a certain angle, this method, which does not consider the rock-mechanism coupling dynamics, causes the displacement calculation error to increase sharply to more than twice the theoretical value, severely affecting the inversion accuracy of fault displacement. Moreover, during the fault creep stage, the mechanism is prone to entering singular configurations, at which point the kinematic analysis-based Jacobian matrix solution directly fails.

[0004] Therefore, how to determine the pose of parallel mechanisms in real time and accurately in underground scenarios is a technical problem that needs to be solved by those skilled in the art. Summary of the Invention

[0005] The purpose of this invention is to solve the technical problem that existing technologies cannot quickly and accurately determine the orientation of parallel mechanisms in underground application scenarios.

[0006] To achieve the above-mentioned technical objectives, on the one hand, the present invention provides a method for calculating the pose of a six-degree-of-freedom parallel mechanism in an underground scene, the method comprising:

[0007] A training sample set is obtained based on the kinematic model of a six-degree-of-freedom parallel mechanism. The training samples in the training sample set are specifically the corresponding training joint variables and training poses.

[0008] Based on the training joint variables in the training sample set, each training sample is divided into a corresponding geometric region. Specifically, the geometric region is a number of working areas divided according to the range of motion of the center point of the moving platform and the maximum angle that the moving platform can reach in space.

[0009] Each of the geometric regions is trained and the dictionary atoms are updated. At the same time, the region weights of each of the geometric regions are determined. The dictionary atoms are specifically a column of elements in a dictionary, including the basic features of the Jacobian matrix.

[0010] Based on the region weights, target regions are determined in each geometric region, and the closest training joint variable that is most similar to the current joint variable is obtained by searching in the target region. The training pose corresponding to the closest training joint variable is used as a coarse sample.

[0011] Based on the dictionary atoms, the coarse sample approximate Jacobian matrix corresponding to the coarse sample is determined;

[0012] The current pose is obtained by iteratively optimizing the coarse sample approximation Jacobian matrix.

[0013] Furthermore, the kinematic model Specifically represented as ,in, Let the position of the center point of the moving platform in the stationary coordinate system be given. The rotation angle of the moving platform relative to the stationary coordinate system is given. The kinematic model based on the six-degree-of-freedom parallel mechanism obtains training samples, specifically by generating training samples through inverse kinematic model and uniform grid sampling.

[0014] Furthermore, the division of the geometric region is specifically implemented through the following formula:

[0015] ,

[0016] In the formula, For geometric regions, For the k-th geometric region, For the first i The center of each region To train joint variables.

[0017] Furthermore, the updating of dictionary atoms specifically includes:

[0018] Randomly select a finite number of training samples in the geometric region to obtain multiple initial dictionary atoms;

[0019] The final dictionary atoms are obtained by updating multiple initial dictionary atoms.

[0020] Furthermore, the initial dictionary atoms are updated using the following formula:

[0021] ;

[0022] In the formula, This is the recombined form of the Jacobian matrix corresponding to the training samples. The dictionary within the working region where the training samples are located. This is the sparse coding representation corresponding to the training samples. It is the Frobenius norm. For the first i A sparse representation vector of a signal. The maximum number of non-zero elements allowed in each sparse coding vector.

[0023] Furthermore, the region weights are specifically determined using the following formula:

[0024] ;

[0025] In the formula, For the first i Regional weights for each geometric region For the first i The number of individuals in each region For the first j The number of individuals in each region The total number of regions.

[0026] Furthermore, the iterative formula is as follows:

[0027] ;

[0028] In the formula, For the direction and value of data updates, For the coarse sample approximation Jacobian matrix, This is the residual between the bar length of the coarse sample and the target bar length, which is also the bar length corresponding to the current joint variable. For the updated pose, The damping coefficient is... This is the pose before the update.

[0029] On the other hand, the present invention also provides a pose calculation device for a six-degree-of-freedom parallel mechanism in an underground scene, the device comprising:

[0030] The acquisition module is used to acquire a training sample set based on the kinematic model of a six-degree-of-freedom parallel mechanism. The training samples in the training sample set are specifically the corresponding training joint variables and training poses.

[0031] The partitioning module is used to partition each training sample into a corresponding geometric region based on the training joint variables in the training sample set. Specifically, the geometric region is a number of working areas divided according to the range of motion of the center point of the moving platform and the maximum angle that the moving platform can reach in space.

[0032] The weighting module is used to train and update the dictionary atoms for each of the geometric regions, and at the same time determine the region weights of each of the geometric regions. The dictionary atom is specifically a column of elements of a dictionary, including the basic features of the Jacobian matrix.

[0033] The search module is used to determine the target region in each geometric region based on the region weight, and to search in the target region to obtain the closest training joint variable that is most similar to the current joint variable, and to use the training pose corresponding to the closest training joint variable as a coarse sample.

[0034] The determination module is used to determine the coarse sample approximate Jacobian matrix corresponding to the coarse sample based on the dictionary atoms;

[0035] The update module is used to iteratively optimize the coarse sample approximation Jacobian matrix to obtain the current pose.

[0036] This invention provides a method and apparatus for calculating the pose of a six-degree-of-freedom parallel mechanism in an underground scene. Compared with the prior art, this method includes: obtaining a training sample set based on the kinematic model of the six-degree-of-freedom parallel mechanism, wherein the training samples in the training sample set are specifically corresponding training joint variables and training poses; dividing each training sample into corresponding geometric regions based on the training joint variables in the training sample set, wherein the geometric regions are specifically multiple working regions divided according to the range of motion of the center point of the moving platform and the maximum angle that the moving platform can reach in space; training and updating the dictionary atoms for each geometric region, and determining the region weights for each geometric region, wherein the dictionary atoms are specifically a column of elements in a dictionary, including the basic features of the Jacobian matrix; determining the target region in each geometric region based on the region weights, and searching in the target region to obtain the closest training joint variable that is closest to the current joint variable, and using the training pose corresponding to the closest training joint variable as a coarse sample; determining the coarse sample approximate Jacobian matrix corresponding to the coarse sample based on the dictionary atoms; and obtaining the current pose by iteratively optimizing the coarse sample approximate Jacobian matrix. It can determine the position and orientation of parallel mechanisms in real time and accurately in underground scenarios. Attached Figure Description

[0037] To more clearly illustrate the technical solutions in the embodiments or prior art of this specification, the drawings used in the description of the embodiments or prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this specification. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0038] Figure 1 The diagram shown is a flowchart illustrating the pose calculation method for a six-degree-of-freedom parallel mechanism in an underground scene provided in the embodiments of this specification.

[0039] Figure 2 The diagram shown is a schematic representation of the pose calculation device for a six-degree-of-freedom parallel mechanism in an underground scene, as provided in the embodiments of this specification. Detailed Implementation

[0040] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0041] like Figure 1 The diagram illustrates a flowchart of a pose calculation method for a six-degree-of-freedom parallel mechanism in an underground scene, as provided in an embodiment of this specification. While this specification provides the method operation steps or device structure shown in the following embodiments or figures, based on conventional methods or without creative effort, the method or device may include more or fewer operation steps or module units after partial merging. In steps or structures where there is no logically necessary causal relationship, the execution order of these steps or the module structure of the device are not limited to the execution order or module structure shown in the embodiments or figures of this specification. When the method or module structure is applied in actual devices, servers, or terminal products, it can be executed sequentially or in parallel according to the method or module structure shown in the embodiments or figures (e.g., in a parallel processor or multi-threaded processing environment, or even in a distributed processing or server cluster implementation environment).

[0042] The pose calculation method for a six-degree-of-freedom parallel mechanism in an underground scenario provided in the embodiments of this specification can be applied to terminal devices such as clients and servers. Figure 1 As shown, the method specifically includes the following steps:

[0043] Step S101: Obtain a training sample set based on the kinematic model of a six-degree-of-freedom parallel mechanism. The training samples in the training sample set are specifically the corresponding training joint variables and training poses.

[0044] Specifically, the kinematic model specifies the position of the center point of the moving platform in the stationary coordinate system and the rotation angle of the moving platform relative to the stationary coordinate system. The rotation angle of the moving platform relative to the stationary coordinate system is represented using Euler angles. Specifically represented as ,in, Let the position of the center point of the moving platform in the stationary coordinate system be given. Let be the rotation angle of the moving platform relative to the stationary coordinate system.

[0045] To construct the aforementioned kinematic model, a stationary coordinate system needs to be established on the fixed base, i.e., the static platform. Establish a motion coordinate system on the moving platform Then, six hinge points are determined on the static platform. Determine the coordinates in the stationary coordinate system and identify six hinge points on the moving platform. The coordinates in the moving coordinate system; then a coordinate transformation is performed, moving coordinate system Relative to the stationary coordinate system The change can be achieved using a rotation matrix R and a position vector. The rotation matrix R is represented by Euler angles. Decision, for example, Then calculate the vector loop. For each connecting rod i, its vector in the static coordinate system can form a closed loop: ,in, The vector representing the i-th rod (direction from) point to ), This represents the position vector of the center of the moving platform. Indicates the coordinates of the hinge point on the moving platform. Transform to static coordinate system middle, Represent the coordinates of the hinge point on the static platform; finally, solve for the length of the rod, which is also the length of the connecting rod and the driving rod, and the length of the i-th rod. Vector Modulus length: The above is the core formula for inverse kinematics in constructing a kinematic model. For each given position X, the lengths of the six rods can be directly calculated using this formula.

[0046] The kinematic model based on the six-degree-of-freedom parallel mechanism obtains training samples specifically through inverse kinematics modeling and uniform grid sampling. However, it is necessary to determine the working range. Based on the machine's physical constraints (minimum / maximum link length, hinge angle limits, avoidance of inter-link collisions, etc.), the maximum range of motion that the machine's motion platform can achieve is calculated. Here, we use the limitation of the motion platform's center coordinate movement range and the range of three angle parameters. Sampling is performed within the working space, ensuring that each sampling point is within the limited constraints and physically accessible range. The inverse kinematics is used to calculate whether the corresponding link length is within the limits; the corresponding joint variables are calculated, and the lengths of the six driving links are calculated using the aforementioned inverse kinematics formula. Training samples and validation data are generated according to the corresponding positions. The training samples are specifically the corresponding training joint variables and training poses. Finally, the dataset is constructed.

[0047] Based on the above, the coordinates of three points (B1, B2, B3) on the moving platform and the coordinates of three points (b1, b2, b3) on the fixed platform are defined in the six-degree-of-freedom parallel mechanism. The initial value of the joint variable is obtained by subtracting the coordinates of the lower platform from the coordinates of the upper platform at the initial position.

[0048] Using rotation matrix The pose rotation angle is calculated, where: , Let α, β, and γ represent rotations about the corresponding axes, and α, β, and γ represent the angles of rotation about the corresponding axes, respectively. Calculation of branch length (change in rod length): ,in The central position of the moving platform, and These are the coordinates of the hinge points on the upper and lower platforms, respectively; the corresponding Jacobian matrix solution method is as follows: Jacobian matrix row k: ,in , , , The derivative of the rotation matrix is ​​calculated as follows: , , .

[0049] Step S102: Based on the training joint variables in the training sample set, divide each training sample into a corresponding geometric region. Specifically, the geometric region is a number of working areas divided according to the range of motion of the center point of the moving platform and the maximum angle that the moving platform can reach in space.

[0050] Specifically, the geometric working area can be interpreted as the maximum angle and displacement range that the moving platform can achieve relative to the static coordinate system (base) through the extension and retraction of the six rods below, resulting in changes in the platform's roll, yaw, pitch angles, and displacement. After using the obtained samples (i.e., the training samples) and their corresponding joint variables, the samples need to be redistributed according to a fixed number of workspaces (i.e., the number of geometric regions). The center point of each workspace is selected as the origin of that region. Starting from this point, the difference between each sample point and the center point is calculated, and the joint variables closest to this center point are used as sample points for that region.

[0051] In this embodiment of the application, the division of the geometric region is specifically implemented using the following formula:

[0052] ,

[0053] In the formula, For geometric regions, For the k-th geometric region, For the first i The center of each region To train the joint variables, the obtained geometric region segmentation information is stored, and the region adjacency relationship is calculated.

[0054] Step S103: Train and update the dictionary atoms for each of the geometric regions, and determine the region weights for each of the geometric regions. The dictionary atoms are specifically a column of elements in the dictionary, including the basic features of the Jacobian matrix.

[0055] Specifically, dictionary atoms are the basic elements that make up a dictionary. A dictionary is composed of multiple dictionary atoms, and each dictionary atom is a column of elements in the dictionary. This column of elements contains the basic characteristics of the Jacobian matrix.

[0056] First, the dictionary is divided into segments, which are the geometric regions. , The dictionary is updated in segments. To address abrupt changes at region boundaries, neighboring region data is introduced to initialize atoms. Let be the dictionary for the k-th region, and SVD be the singular value decomposition. for The corresponding reconstructed Jacobian matrix has a dimension of 36*1. Let be the joint variable within the k-th geometric region.

[0057] In this embodiment of the application, updating the dictionary atom specifically includes:

[0058] Randomly select a finite number of training samples in the geometric region to obtain multiple initial dictionary atoms;

[0059] The final dictionary atoms are obtained by updating multiple initial dictionary atoms.

[0060] Specifically, within the current region, select the Jacobian matrix corresponding to the joint variables, and within the neighboring regions, select the Jacobian matrix corresponding to the joint variables. From these, randomly select a finite number of elements as initial dictionary atoms. For each region's initial dictionary atoms, use the following formula: renew, This is the recombined form of the Jacobian matrix corresponding to the training samples. Specifically, the recombined form is a 36*1 form that has been vertically concatenated. The dictionary within the working region where the training samples are located. This is the sparse coding representation corresponding to the training samples. It is the Frobenius norm. For the first i A sparse representation vector of a signal. The maximum number of non-zero elements allowed in each sparse coding vector. Here, the dictionary atom is a dictionary atom formed by each of the finite number of columns in D. This is achieved through alternating optimization of the sparse coding. Atomic dictionary update ,in The error matrix is ​​obtained by using... The calculation involves i representing the selected non-empty sparse coding representation and k representing the k-th dictionary atom. Alternating optimization refers to approximating J (the Jacobian matrix) with a fixed dictionary D or sparse coding representation s, selecting the one with the smallest deviation from J as the latest sparse coding representation or dictionary D. After updating one of the dictionaries D or sparse coding representations s, the other sparse coding representation s or dictionary D is updated. In this way, the deviation will become smaller and smaller, achieving the goal of fitting J. The error matrix is ​​the remaining reconstruction error after removing the contribution of the k-th atom from the reconstruction during the dictionary update stage. It represents the error when reconstructing samples using only other atoms. After performing SVD decomposition on E, the first column of the left singular vector U provides the direction of updating the atom, and the product of the first column of the right singular vector V and the singular value ∑ provides the updated sparse coefficients. In this way, the quality of the dictionary can be gradually improved in each iteration, making it better able to represent the input data.

[0061] Step S104: Determine the target region in each geometric region based on the region weight, and search in the target region to obtain the closest training joint variable that is most similar to the current joint variable, and use the training pose corresponding to the closest training joint variable as a coarse sample.

[0062] The closest sample, or the closest training joint variable, is obtained by searching the target region based on the region weight. Then, by performing error analysis on the current joint variable and each sample in the target region, the sample with the smallest error is the closest sample. At the same time, in order to avoid the closure between the center of the region, the surrounding adjacent regions are also screened during the region screening, and neighboring regions are also searched to achieve the continuity between regions, which helps to improve the continuity of the boundaries of each working interval.

[0063] The distribution and average fitness of the current population in each region are calculated using clustering partition information, and then weights are dynamically allocated.

[0064] The region weights are determined using the following formula:

[0065] ;

[0066] In the formula, For the first i Regional weights for each geometric region For the first i The number of individuals in each region For the first j The number of individuals in each region The total number of regions.

[0067] Specifically, when executing a hybrid search strategy, a global search is performed with a certain probability, and a region search is performed with a certain probability. ,in For the center of the target area, The method utilizes geometric segmentation training and updating of dictionary atoms and sparse representations to achieve precise training for each region, especially in working regions with singular configuration points, where it is more accurate than traditional analytical methods.

[0068] Step S105: Determine the coarse sample approximate Jacobian matrix corresponding to the coarse sample based on the dictionary atoms.

[0069] In this embodiment, the coarse samples generated by region guidance are used as fine-tuning data input. Clustering regional information is used to query the regions to which the coarse samples belong, and the corresponding dictionary atoms are obtained. The dictionary is then used to learn sparse representations. Quickly derive the coarse sample approximation Jacobian matrix corresponding to the coarse sample.

[0070] Step S106: The current pose is obtained by iteratively optimizing the coarse sample approximate Jacobian matrix.

[0071] Specifically, obtaining the fine sample based on the coarse sample approximating the Jacobian matrix involves iterating the coarse sample according to the target pose and the coarse sample to obtain the fine sample.

[0072] The specific iterative formula is as follows:

[0073] ;

[0074] In the formula, For the direction and value of data updates, For the coarse sample approximation Jacobian matrix, This is the residual between the bar length of the coarse sample and the target bar length, which is also the bar length corresponding to the current joint variable. For the updated pose, The damping coefficient is... This is the pose before the update.

[0075] Specifically, after obtaining the Jacobian matrix corresponding to the coarse sample, Newton's method is used to directly iterate from the position of the coarse sample to achieve fine-tuning of the coarse sample, reducing the difference from the target pose, thereby obtaining the fine-tuned sample, i.e., the current position, and realizing the solution of the forward kinematics of the parallel mechanism. This eliminates the need to calculate step by step from the initial guessed zero position, shortening the convergence time and improving the convergence speed.

[0076] The method proposed in this invention segments the dictionary based on the geometric orientation of the parallel mechanism. Through clustering, the working range of the mechanism is divided into multiple classes, and the dictionary is updated segmentally at atomic levels. Unlike the conventional method of updating global dictionary atoms, this improved dictionary update method considers the correlation of neighboring regions to improve boundary continuity. In terms of intelligent optimization algorithms, the DBO optimization algorithm is improved, and the global search range and local search range are dynamically adjusted according to probability and weight to achieve intelligent optimization initial values. The estimated Jacobian matrix approximated by dictionary learning is fine-tuned in Newton iterations, and finally outputs the change in the mechanism pose corresponding to the current joint variable.

[0077] Traditionally, the forward kinematics calculation for six-bar parallel mechanisms typically employs single methods such as analytical methods or Newton's iteration method, consuming significant computation time and requiring the derivation of complex kinematic equations. In recent years, the rise of deep learning technology has led to the development of numerous forward kinematics models for parallel mechanisms, enabling rapid attitude prediction. However, these methods are not ideal in terms of accuracy and do not perform well at singular configuration points. Pure intelligent optimization algorithms (such as PSO) are sensitive to initial values, possess strong global search capabilities but lack local accuracy, and require numerous iterations. This invention… This invention aims to rapidly approximate the true Jacobian matrix of a six-bar linkage by utilizing a geometric piecewise dictionary learning method. It employs a hybrid optimization approach, divided into offline training and online testing phases. Simultaneously, for test samples, an improved intelligent optimization algorithm—DBO (Dung Beetle Optimization Algorithm)—is used to implement region guidance, dividing global and local searches according to probability, performing both global and precise local searches. Finally, dictionary atoms within the corresponding region are queried to quickly approximate the Jacobian matrix. This estimated Jacobian matrix replaces numerical differentiation, and Newton iteration fine-tuning is performed to achieve rapid pose calculation. The main objective of this invention is to address three major problems in solving the Jacobian matrix of a six-bar linkage: poor real-time performance, insufficient stability of singular configurations, and low global convergence probability. It uses a geometric piecewise dictionary to achieve rapid fitting of the approximate Jacobian matrix for coarse samples. The piecewise dictionary facilitates the solution of singular configurations in different regions, and adding neighboring regions ensures boundary continuity.

[0078] Based on the above-described method for calculating the pose of a six-degree-of-freedom parallel mechanism in an underground scene, one or more embodiments of this specification also provide a platform or terminal for calculating the pose of a six-degree-of-freedom parallel mechanism in an underground scene. This platform or terminal may include devices, software, modules, plug-ins, servers, clients, etc., using the methods described in the embodiments of this specification, combined with necessary hardware implementation. Based on the same innovative concept, the systems in one or more embodiments provided in this specification are as described in the following embodiments. Since the implementation schemes and methods for solving the system problem are similar, the implementation of specific systems in the embodiments of this specification can refer to the implementation of the aforementioned methods. Repeated descriptions will not be repeated. The terms "unit" or "module" used below can refer to a combination of software and / or hardware that achieves a predetermined function. Although the systems described in the following embodiments are preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.

[0079] Specifically, Figure 2 This is a schematic diagram of the module structure of one embodiment of the pose calculation device for a six-degree-of-freedom parallel mechanism in an underground scene provided in this specification, as shown below. Figure 2As shown, the pose calculation device for a six-degree-of-freedom parallel mechanism in an underground scene provided in this specification includes:

[0080] The acquisition module 201 is used to acquire a training sample set based on the kinematic model of a six-degree-of-freedom parallel mechanism. The training samples in the training sample set are specifically the corresponding training joint variables and training poses.

[0081] The partitioning module 202 is used to partition each training sample into a corresponding geometric region based on the training joint variables in the training sample set. Specifically, the geometric region is a plurality of working regions divided according to the range of motion of the center point of the moving platform and the maximum angle that the moving platform can reach in space.

[0082] The weight module 203 is used to train and update the dictionary atoms for each of the geometric regions, and at the same time determine the region weights of each of the geometric regions. The dictionary atom is specifically a column of elements of a dictionary, including the basic features of the Jacobian matrix.

[0083] Search module 204 is used to determine the target region in each geometric region based on the region weight, and to search in the target region to obtain the closest training joint variable that is closest to the current joint variable, and to use the training pose corresponding to the closest training joint variable as a coarse sample.

[0084] The determination module 205 is used to determine the coarse sample approximate Jacobian matrix corresponding to the coarse sample based on the dictionary atoms;

[0085] The update module 206 is used to iteratively optimize the coarse sample approximate Jacobian matrix to obtain the current pose.

[0086] It should be noted that the system described above may include other implementation methods based on the description of the corresponding method embodiments. The specific implementation methods can be referred to the description of the corresponding method embodiments above, and will not be elaborated here.

[0087] This application also provides an electronic device, including:

[0088] processor;

[0089] Memory used to store the processor's executable instructions;

[0090] The processor is configured to perform the methods provided in the embodiments described above.

[0091] The electronic device provided in this application embodiment stores executable instructions of the processor in a memory. When the processor executes the executable instructions, it can: obtain a training sample set based on the kinematic model of a six-degree-of-freedom parallel mechanism, wherein the training samples in the training sample set are specifically corresponding training joint variables and training poses; divide each training sample into a corresponding geometric region based on the training joint variables in the training sample set, wherein the geometric region is specifically a plurality of working regions divided according to the range of motion of the center point of the moving platform and the maximum angle that the moving platform can reach in space; train and update the dictionary atoms for each geometric region, and determine the region weights for each geometric region, wherein the dictionary atoms are specifically a column of elements of a dictionary, including the basic features of the Jacobian matrix; determine the target region in each geometric region based on the region weights, and search in the target region to obtain the closest training joint variable that is closest to the current joint variable, and use the training pose corresponding to the closest training joint variable as a coarse sample; determine the coarse sample approximate Jacobian matrix corresponding to the coarse sample based on the dictionary atoms; and obtain the current pose by iteratively optimizing the coarse sample approximate Jacobian matrix. It can determine the position and orientation of parallel mechanisms in real time and accurately in underground scenarios.

[0092] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.

[0093] The methods or apparatus described in the embodiments provided in this specification can implement business logic through a computer program and record it on a storage medium. The storage medium can be read and executed by a computer to achieve the effects of the solutions described in the embodiments of this specification, such as:

[0094] A training sample set is obtained based on the kinematic model of a six-degree-of-freedom parallel mechanism. The training samples in the training sample set are specifically the corresponding training joint variables and training poses.

[0095] Based on the training joint variables in the training sample set, each training sample is divided into a corresponding geometric region. Specifically, the geometric region is a number of working areas divided according to the range of motion of the center point of the moving platform and the maximum angle that the moving platform can reach in space.

[0096] Each of the geometric regions is trained and the dictionary atoms are updated. At the same time, the region weights of each of the geometric regions are determined. The dictionary atoms are specifically a column of elements in a dictionary, including the basic features of the Jacobian matrix.

[0097] Based on the region weights, target regions are determined in each geometric region, and the closest training joint variable that is most similar to the current joint variable is obtained by searching in the target region. The training pose corresponding to the closest training joint variable is used as a coarse sample.

[0098] Based on the dictionary atoms, the coarse sample approximate Jacobian matrix corresponding to the coarse sample is determined;

[0099] The current pose is obtained by iteratively optimizing the coarse sample approximation Jacobian matrix.

[0100] The storage medium can include physical devices for storing information, typically digitizing the information and then storing it using electrical, magnetic, or optical methods. The storage medium can include: devices that store information using electrical energy, such as various types of memory, like RAM and ROM; devices that store information using magnetic energy, such as hard disks, floppy disks, magnetic tapes, magnetic core memory, bubble memory, and USB flash drives; and devices that store information using optical methods, such as CDs or DVDs. Of course, there are other readable storage media, such as quantum memories and graphene memories.

[0101] The embodiments in this specification are not limited to conforming to industry communication standards, standard computer resource data update and data storage rules, or the situations described in one or more embodiments of this specification. Slightly modified implementations based on certain industry standards or custom methods or embodiments can also achieve the same, equivalent, or similar, or predictable, implementation effects as described above. Embodiments that utilize these modified or modified methods for data acquisition, storage, judgment, and processing still fall within the scope of optional implementations of the embodiments in this specification.

[0102] The controller can be implemented in any suitable manner. For example, it can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicon Labs C8051F320. A memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also recognize that, in addition to implementing the controller in purely computer-readable program code form, the same functionality can be achieved by logically programming the method steps to make the controller take the form of logic gates, switches, ASICs, programmable logic controllers, and embedded microcontrollers. Therefore, such a controller can be considered a hardware component, and the means included therein for implementing various functions can also be considered as structures within the hardware component. Alternatively, the means for implementing various functions can be considered as both software modules implementing the method and structures within the hardware component.

[0103] The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or plug-ins may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, indirect coupling or communication connection between devices or units, and may be electrical, mechanical, or other forms.

[0104] These computer program instructions can also be loaded onto a computer or other programmable resource data updating device, causing a series of operational steps to be performed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable device for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0105] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, system embodiments are basically similar to method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments. In the description of this specification, the terms "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., refer to specific features, structures, materials, or characteristics described in connection with that embodiment or example, which are included in at least one embodiment or example of this specification. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described can be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification and the features of different embodiments or examples.

[0106] Those skilled in the art will recognize that the embodiments described herein are intended to help the reader understand the principles of the invention, and should be understood that the scope of protection of the invention is not limited to such specific statements and embodiments. Those skilled in the art can make various other specific modifications and combinations based on the technical teachings disclosed in this invention without departing from the spirit of the invention, and these modifications and combinations are still within the scope of protection of this invention.

Claims

1. A method for calculating the pose of a six-degree-of-freedom parallel mechanism in an underground scene, characterized in that, The method includes: A training sample set is obtained based on the kinematic model of a six-degree-of-freedom parallel mechanism. The training samples in the training sample set are specifically the corresponding training joint variables and training poses. Based on the training joint variables in the training sample set, each training sample is divided into a corresponding geometric region. Specifically, the geometric region is a number of working areas divided according to the range of motion of the center point of the moving platform and the maximum angle that the moving platform can reach in space. Each of the geometric regions is trained and the dictionary atoms are updated. At the same time, the region weights of each of the geometric regions are determined. The dictionary atoms are specifically a column of elements in a dictionary, including the basic features of the Jacobian matrix. Based on the region weights, target regions are determined in each geometric region, and the closest training joint variable that is most similar to the current joint variable is obtained by searching in the target region. The training pose corresponding to the closest training joint variable is used as a coarse sample. Based on the dictionary atoms, the coarse sample approximate Jacobian matrix corresponding to the coarse sample is determined; The current pose is obtained by iteratively optimizing the coarse sample approximation Jacobian matrix.

2. The pose calculation method for a six-degree-of-freedom parallel mechanism in an underground scene as described in claim 1, characterized in that, The kinematic model Specifically represented as ,in, Let the position of the center point of the moving platform in the stationary coordinate system be given. The rotation angle of the moving platform relative to the stationary coordinate system is given. The kinematic model based on the six-degree-of-freedom parallel mechanism obtains training samples, specifically by generating training samples through inverse kinematic model and uniform grid sampling.

3. The pose calculation method for a six-degree-of-freedom parallel mechanism in an underground scene as described in claim 1, characterized in that, The division of the geometric region is specifically implemented using the following formula: , In the formula, For geometric regions, For the k-th geometric region, For the first i The center of each region To train joint variables.

4. The pose calculation method for a six-degree-of-freedom parallel mechanism in an underground scene as described in claim 1, characterized in that, The update of dictionary atoms specifically includes: Randomly select a finite number of training samples in the geometric region to obtain multiple initial dictionary atoms; The final dictionary atoms are obtained by updating multiple initial dictionary atoms.

5. The pose calculation method for a six-degree-of-freedom parallel mechanism in an underground scene as described in claim 4, characterized in that, The initial dictionary atoms are updated using the following formula: ; In the formula, This is the recombined form of the Jacobian matrix corresponding to the training samples. The dictionary within the working region where the training samples are located. This is the sparse coding representation corresponding to the training samples. It is the Frobenius norm. For the first i A sparse representation vector of a signal. The maximum number of non-zero elements allowed in each sparse coding vector.

6. The pose calculation method for a six-degree-of-freedom parallel mechanism in an underground scene as described in claim 1, characterized in that, The region weights are determined using the following formula: ; In the formula, For the first i Regional weights for each geometric region For the first i The number of individuals in each region For the first j The number of individuals in each region The total number of regions.

7. The pose calculation method for a six-degree-of-freedom parallel mechanism in an underground scene as described in claim 1, characterized in that, Specifically, the coarse sample approximation Jacobian matrix is ​​iteratively optimized using the following formula: ; In the formula, For the direction and value of data updates, For the coarse sample approximation Jacobian matrix, This is the residual between the bar length of the coarse sample and the target bar length, which is also the bar length corresponding to the current joint variable. For the updated pose, The damping coefficient is... This is the pose before the update.

8. A pose calculation device for a six-degree-of-freedom parallel mechanism in an underground scene, characterized in that, The device includes: The acquisition module is used to acquire a training sample set based on the kinematic model of a six-degree-of-freedom parallel mechanism. The training samples in the training sample set are specifically the corresponding training joint variables and training poses. The partitioning module is used to partition each training sample into a corresponding geometric region based on the training joint variables in the training sample set. Specifically, the geometric region is a number of working areas divided according to the range of motion of the center point of the moving platform and the maximum angle that the moving platform can reach in space. The weighting module is used to train and update the dictionary atoms for each of the geometric regions, and at the same time determine the region weights of each of the geometric regions. The dictionary atom is specifically a column of elements of a dictionary, including the basic features of the Jacobian matrix. The search module is used to determine the target region in each geometric region based on the region weight, and to search in the target region to obtain the closest training joint variable that is most similar to the current joint variable, and to use the training pose corresponding to the closest training joint variable as a coarse sample. The determination module is used to determine the coarse sample approximate Jacobian matrix corresponding to the coarse sample based on the dictionary atoms; The update module is used to iteratively optimize the coarse sample approximation Jacobian matrix to obtain the current pose.

Citation Information

Patent Citations

  • 3-PRS (Prismatic-Revolute-Spherical) parallel robot positioning accuracy optimization method based on interval analysis

    CN103500367A

  • Irregular curved surface tracking method and system based on matrix feature learning neural network

    CN108717262A