An underwater flexible carrier node positioning method, system, device and storage medium
By acquiring reference node information and attitude data for binding calibration, estimating installation offset parameters, correcting attitude data, and calculating the three-dimensional coordinates of the flexible carrier nodes, the problems of real-time positioning lag and inaccurate attitude changes of underwater flexible carriers are solved, and precise positioning is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HAINAN RES INST OF ZHEJIANG UNIV
- Filing Date
- 2026-03-31
- Publication Date
- 2026-06-12
AI Technical Summary
Existing technologies for real-time shape monitoring and precise node positioning of underwater flexible carriers suffer from problems such as delayed positioning results, inability to detect carrier attitude changes, and inaccurate measurement data.
By acquiring the reference coordinate information and node attitude data of the reference node, binding calibration is performed to estimate the installation offset parameters, correct the node attitude data, and combine the starting node coordinates and the segment length between adjacent nodes to calculate the three-dimensional coordinates of all nodes on the flexible carrier.
It achieves precise positioning of the overall shape and nodes of a flexible carrier in complex underwater environments, solves the problems of lagging positioning results and inaccurate attitude change measurement, and provides a true reflection of the carrier's physical state.
Smart Images

Figure CN121955882B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of positioning technology, and in particular to a method, system, device and storage medium for positioning nodes of an underwater flexible carrier. Background Technology
[0002] In the fields of underwater engineering and marine observation, real-time shape monitoring and precise node positioning of flexible carriers such as mooring cables and towed arrays are of great value. Existing technologies mainly rely on underwater acoustic positioning systems, which obtain the coordinates of some nodes by sparsely deploying acoustic beacons on the carrier and combining them with seabed or surface reference points for ranging and calculation. Then, simplified geometric models are used to infer the positions of the remaining nodes. However, this method has inherent limitations: First, acoustic ranging typically uses a sequential polling method. As the system scales up, the overall data update cycle significantly increases, causing the positioning results to lag far behind the dynamic deformation of the carrier, failing to meet real-time requirements. Second, this method can only obtain the position information of discrete nodes and cannot perceive the carrier's own attitude changes such as bending and torsion. Therefore, the recovered overall geometric shape is severely distorted and fails to reflect the true physical state. Furthermore, there are multiple levels of unknown mechanical installation deviations between the sensors installed at the node ends and the node shell and carrier, making the measured data unusable directly and accurately. Summary of the Invention
[0003] This disclosure provides a method, system, device, and storage medium for locating nodes on an underwater flexible carrier, thereby at least solving the above-mentioned technical problems existing in the prior art.
[0004] According to a first aspect of this disclosure, a method for locating nodes on an underwater flexible carrier is provided, wherein the flexible carrier is provided with multiple nodes, the method comprising:
[0005] Obtain the reference coordinate information of at least one reference node;
[0006] Acquire node attitude data measured by attitude sensors at each node;
[0007] Based on the reference coordinate information and the node attitude data at the corresponding time, each node is bound and calibrated to estimate the installation offset parameters of the node; the installation offset parameters are used to characterize the fixed assembly deviation between the measurement coordinate system of the attitude sensor on the node and the node body coordinate system.
[0008] The node attitude data is corrected using the installation offset parameters to obtain the carrier segment direction vector of the flexible carrier at each node;
[0009] Based on the coordinates of the starting node, the segment length between adjacent nodes, and the direction vector of the carrier segment, the three-dimensional coordinates of all nodes on the flexible carrier are calculated.
[0010] In one possible implementation, obtaining the reference coordinate information of at least one reference node includes:
[0011] Receive output data from an external reference positioning subsystem;
[0012] If the output data is the three-dimensional coordinates of at least one reference node in the global coordinate system, then it is used as the reference coordinate information;
[0013] If the output data is the distance measurement observation value or arrival time observation value of the reference node, then the distance measurement observation value or arrival time observation value is calculated to obtain the three-dimensional coordinates of the reference node, and used as the reference coordinate information.
[0014] In one possible implementation, acquiring node attitude data measured by attitude sensors at each node includes:
[0015] Acquire the initial measurement data of the attitude sensors at each node;
[0016] The initial measurement data is compensated according to the sensor calibration parameters to eliminate zero bias, scaling factor error and magnetic interference;
[0017] Based on the compensated measurement data, the node attitude data of the node is calculated, and the node attitude data includes attitude angle and direction vector.
[0018] In one possible implementation, the step of binding and calibrating each node based on the reference coordinate information and the node attitude data at the corresponding time, and estimating the node's mounting offset parameters, includes:
[0019] Based on the reference coordinate information, determine the coordinates of at least two reference nodes;
[0020] Calculate the reference segment direction vector at the corresponding time based on the coordinates of the at least two reference nodes;
[0021] Based on the node attitude data at the corresponding time and the installation offset parameters to be estimated, an offset model is constructed to predict the orientation vector of the carrier segment.
[0022] The installation offset parameters are determined by minimizing the error between the reference segment direction vector and the carrier segment direction vector predicted by the offset model.
[0023] In one possible implementation, the method further includes:
[0024] The reference direction vector of the i-th node at the corresponding time is calculated using the following formula:
[0025]
[0026] in, In order to be in At time i, the reference segment direction vector at the i-th node; , They are respectively in The three-dimensional coordinates of two adjacent reference nodes at any given time;
[0027] Construct and solve the following optimization problem to obtain the installation bias parameters:
[0028]
[0029] in, Install offset parameters; For weighting coefficients, according to The node pose data and / or reference coordinate information at each moment are determined; Indicates the use of Node attitude data and installation offset parameters at time points The carrier segment direction vector predicted by the bias model.
[0030] In one possible implementation, calculating the three-dimensional coordinates of all nodes on the flexible carrier based on the starting node coordinates, the segment lengths between adjacent nodes, and the carrier segment direction vector includes:
[0031] The three-dimensional coordinates of all nodes on the flexible carrier are calculated using the following formula:
[0032]
[0033] in, , Let be the three-dimensional coordinates of two adjacent nodes at time t, and let the coordinates of the starting node be . ; The length of the segment between adjacent nodes; Let be the direction vector of the carrier segment of the i-th node.
[0034] In one possible implementation, after calculating the three-dimensional coordinates of all nodes on the flexible carrier, the method further includes:
[0035] The three-dimensional coordinates of all the nodes are subjected to shape smoothing processing, which includes at least one of the following methods:
[0036] Estimate the principal plane where the flexible carrier is located, project the three-dimensional coordinates of each node onto the principal plane and fit them, and determine the smoothed three-dimensional coordinates of the nodes based on the fitting results; or,
[0037] Within a set time window, the three-dimensional coordinates of all nodes are optimized based on constraints, including segment length constraints, carrier segment direction vector constraints, and reference node coordinate constraints.
[0038] According to a second aspect of this disclosure, an underwater flexible carrier node positioning system is provided, wherein multiple nodes are disposed on the flexible carrier, the system comprising:
[0039] An external reference positioning subsystem is used to acquire reference coordinate information of at least one reference node;
[0040] The node attitude measurement subsystem is used to acquire node attitude data measured by attitude sensors at each node.
[0041] The pose fusion processing unit is used to perform binding calibration on each node based on the reference coordinate information and the node pose data at the corresponding time, and to estimate the installation offset parameters of the node; the installation offset parameters are used to characterize the fixed assembly deviation between the measurement coordinate system of the attitude sensor on the node and the node body coordinate system.
[0042] The pose fusion processing unit is also used to correct the node pose data using the installation offset parameters to obtain the carrier segment direction vector of the flexible carrier at each node.
[0043] The pose fusion processing unit is also used to calculate the three-dimensional coordinates of all nodes on the flexible carrier based on the coordinates of the starting node, the segment length between adjacent nodes, and the direction vector of the carrier segment.
[0044] According to a third aspect of this disclosure, an electronic device is provided, comprising:
[0045] At least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the methods of this disclosure.
[0046] According to a fourth aspect of this disclosure, a non-transitory computer-readable storage medium is provided storing computer instructions for causing the computer to perform the methods described in this disclosure.
[0047] This disclosure discloses an underwater flexible carrier node positioning method, system, device, and storage medium. First, it acquires reference node information and node attitude data for each reference node on the flexible carrier. Then, it uses the reference node information and node attitude data to perform binding calibration on each node, estimating the installation offset parameters caused by mechanical installation. Next, it uses the installation offset parameters to correct the node attitude data, obtaining an accurate carrier orientation vector. Finally, combining the known absolute coordinates of the starting point and the fixed segment lengths between adjacent nodes, it calculates the three-dimensional coordinates of all nodes on the flexible carrier through geometric recursion. This scheme, by introducing a binding calibration mechanism and fusing reference node information and node attitude data, achieves precise positioning of the overall shape and nodes of the flexible carrier in complex underwater environments.
[0048] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0049] The above and other objects, features, and advantages of this disclosure will become readily apparent from the following detailed description of exemplary embodiments, taken in conjunction with the accompanying drawings. Several embodiments of this disclosure are illustrated in the drawings by way of example and not limitation, in which:
[0050] In the accompanying drawings, the same or corresponding reference numerals indicate the same or corresponding parts.
[0051] Figure 1 This illustration shows the implementation flow of the underwater flexible carrier node positioning method according to an embodiment of the present disclosure. Figure 1 ;
[0052] Figure 2 This illustration shows the implementation flow of the underwater flexible carrier node positioning method according to an embodiment of the present disclosure. Figure 2 ;
[0053] Figure 3 This illustration shows the implementation flow of the underwater flexible carrier node positioning method according to an embodiment of the present disclosure. Figure 3 ;
[0054] Figure 4 This illustration shows the implementation flow of the underwater flexible carrier node positioning method according to an embodiment of the present disclosure. Figure 4 ;
[0055] Figure 5 A schematic diagram of the underwater flexible carrier node positioning system according to an embodiment of the present disclosure is shown;
[0056] Figure 6 A schematic diagram of the composition structure of an electronic device according to an embodiment of the present disclosure is shown. Detailed Implementation
[0057] To make the objectives, features, and advantages of this disclosure more apparent and understandable, the technical solutions in the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this disclosure, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of this disclosure without creative effort are within the scope of protection of this disclosure.
[0058] This disclosure provides a method for locating nodes on an underwater flexible carrier, such as... Figure 1 As shown, the flexible carrier has multiple nodes, and the method includes:
[0059] Step 101: Obtain the reference coordinate information of at least one reference node.
[0060] In this example, a flexible carrier refers to a long strip structure used in an underwater environment that can bend and deform under the action of external forces (such as water flow) to deploy multiple sensors or functional nodes in series, such as mooring cables, towed array cables, and tandem sensor mounting cables.
[0061] A reference node is a specific node whose spatial position can be determined externally or calculated from observations. These reference nodes can be deployed at key locations (such as endpoints or intervals) on the flexible carrier to be located, or they can be external beacons whose relative positions to the flexible carrier are known or fixed. Reference coordinate information is data on the absolute or relative position of the reference node in the global coordinate system. This data can take the form of the reference node's three-dimensional coordinates, its displacement and direction vectors relative to another reference node or the carrier endpoint, or distance and time-of-arrival observations between the base station and the reference node.
[0062] Step 102: Obtain the node attitude data measured by the attitude sensor for each node.
[0063] In this example, node attitude data refers to the information describing the three-dimensional orientation of the node itself, measured by attitude sensors installed on each node. Attitude sensors are orientation sensing devices integrated within the node, whose core function is to measure the orientation relationship of the node body relative to a physical reference field (such as a gravitational field or geomagnetic field). Examples include combinations of triaxial accelerometers and magnetometers, inertial measurement units (IMUs) containing gyroscopes, inclinometers, electronic compasses, fiber optic gyroscopes, Doppler Velocity Logs (DVLs) for auxiliary measurements, or devices that indirectly extrapolate the orientation through short-range relative angle / distance measurements between nodes.
[0064] Step 103: Based on the reference coordinate information and the node attitude data at the corresponding time, perform binding calibration on each node and estimate the installation offset parameters of the node; the installation offset parameters are used to characterize the fixed assembly deviation between the measurement coordinate system of the attitude sensor on the node and the node body coordinate system.
[0065] In this example, due to the potential for multiple levels of fixed angular deviations between the mounting orientation of the attitude sensor chip, the node housing, the mounting frame, and the connection points with the carrier during actual engineering assembly, the measurement coordinate system of the attitude sensor on the node is not perfectly aligned with the node's body coordinate system, resulting in a fixed but unknown spatial rotation relationship. This spatial rotation relationship is quantified and described by the mounting offset parameters.
[0066] To overcome this misalignment, the true orientation between adjacent reference nodes of the carrier at certain known moments can be calculated using the reference coordinates. Simultaneously, by correlating these moments with the node attitude data, a mathematical model incorporating the installation offset parameters to be estimated is constructed to solve for the unique and optimal installation offset parameters for each node.
[0067] Step 104: Correct the node attitude data using the installation offset parameters to obtain the carrier segment direction vector of the flexible carrier at each node.
[0068] In this example, the carrier segment orientation vector represents the unit vector of the tangent or normal direction of the flexible carrier at a local location of a node. The purpose of this step is to apply the estimated installation offset parameters for each node to the acquired node attitude data. Specifically, the correction process involves transforming the node attitude data, which reflects the measurement coordinate system of the attitude sensor, to the node body coordinate system through a rotational transformation defined by the installation offset parameters corresponding to that node. Then, based on the geometric relationships defined during node design (e.g., a characteristic axis of the node shell is designed to represent the tangent of the carrier segment), the carrier segment orientation vector is extracted or calculated from the transformed node attitude data. Thus, the node attitude data output by each node no longer contains the fixed bias introduced by the attitude sensor installation, but accurately reflects the true spatial orientation of the local segment of the flexible carrier at that node.
[0069] Step 105: Based on the coordinates of the starting node, the segment length between adjacent nodes, and the direction vector of the carrier segment, calculate the three-dimensional coordinates of all nodes on the flexible carrier.
[0070] In this example, the starting node coordinates are the coordinates of a node whose absolute position in the global coordinate system is known, typically derived from a reference node (such as the bottom anchor point of a mooring cable). The inter-node length refers to the physical distance between two adjacent nodes on the flexible carrier, which is a known design value or a fixed parameter that can be obtained through pre-calibration.
[0071] Starting with the known coordinates of the initial node, following the topological order of the flexible carrier, add a vector to the coordinates of the current node. The magnitude of this vector is the known segment length, and its direction is the corrected direction vector of the carrier segment at the current node. This yields the coordinates of the next node. By iterating in this way, the three-dimensional coordinates of all nodes on the entire flexible carrier can be derived from a single starting coordinate.
[0072] This disclosure provides a method for locating nodes on an underwater flexible carrier. The method first acquires reference node information and node attitude data for each reference node on the flexible carrier. Then, it uses the reference node information and node attitude data to perform binding calibration on each node, estimating the installation offset parameters caused by mechanical installation. Next, it uses the installation offset parameters to correct the node attitude data, obtaining an accurate carrier orientation vector. Finally, combining the known absolute coordinates of the starting point and the fixed segment lengths between adjacent nodes, it calculates the three-dimensional coordinates of all nodes on the flexible carrier through geometric recursion. This scheme, by introducing a binding calibration mechanism and fusing reference node information with the node attitude data of each node, achieves precise positioning of the overall shape and nodes of the flexible carrier in complex underwater environments.
[0073] In one example, obtaining the reference coordinate information of at least one reference node, such as... Figure 2 As shown, it includes:
[0074] Step 201: Receive output data from the external reference positioning subsystem.
[0075] In this example, the external reference positioning subsystem is an underwater acoustic positioning system that provides a global spatial reference for the entire positioning system. It includes long baseline (LBL), short baseline (SBL), ultra-short baseline (USBL), and a ranging network consisting of multiple nodes. Furthermore, acoustic positioning derivative technologies such as two-way ranging and one-way broadcast timing can also be used as implementation methods. Its core function is to determine the information of one or more target points (i.e., reference nodes) in the global coordinate system through measurement techniques. The external reference positioning subsystem transmits signals to the reference nodes through reference stations deployed on the seabed, water surface, or carrier, and receives responses as output data.
[0076] Step 202: If the output data is the three-dimensional coordinates of at least one reference node in the global coordinate system, then use it as the reference coordinate information.
[0077] In this example, the global coordinate system can be a seabed coordinate system, a geographic coordinate system, or an engineering coordinate system. Three-dimensional coordinates refer to a set of position parameters of the reference node within this global coordinate system, typically including X, Y, Z, or longitude, latitude, and depth. When the external reference positioning subsystem has complete local computing capabilities, it can directly output pre-calculated, compliant coordinate values. The processing end then only needs to receive and trust this coordinate data, using it as usable reference coordinate information.
[0078] Step 203: If the output data is the distance measurement observation value or arrival time observation value of the reference node, then calculate the distance measurement observation value or arrival time observation value to obtain the three-dimensional coordinates of the reference node, and use it as the reference coordinate information.
[0079] In this example, the distance observations refer to the straight-line distance measurements between the base station and the reference node, while the time-of-arrival observations contain signal propagation time information and can be used to calculate distance or for positioning using multiple time differences. These observations are the raw data for calculating coordinates, not the final coordinates. Therefore, when the external reference positioning subsystem only provides the raw observation data, the processing end needs to calculate the three-dimensional coordinates of the reference node based on the raw observation data. For example, when the distances from the same reference node to multiple (usually at least three) base stations with known locations are obtained, the three-dimensional coordinates of the reference node in the global coordinate system can be solved using trilateration.
[0080] In one example, the acquisition of node attitude data measured by attitude sensors at each node, such as... Figure 3 As shown, it includes:
[0081] Step 301: Obtain the initial measurement data of the attitude sensors at each node.
[0082] In this example, the initial measurement data refers to the raw, unprocessed electrical signals or digital readings directly output by the attitude sensor integrated within the node. This data originates from various physical sensing devices that constitute the attitude sensor, the specific composition of which depends on the sensor type. Examples include triaxial force data output from a triaxial accelerometer, triaxial magnetic field strength data output from a triaxial magnetometer, and triaxial angular velocity data output from a gyroscope (if included). Acquiring this data is the starting point for attitude information processing. The attitude sensor, through its sensing elements, converts the physical quantities (such as force and magnetic field) experienced by the node into collectable electrical signals or data.
[0083] Step 302: Compensate the initial measurement data according to the sensor calibration parameters to eliminate zero bias, scaling factor error and magnetic interference.
[0084] In this example, the sensor calibration parameters are a set of parameters obtained through pre-calibration experiments to describe and correct the sensor's own systematic errors. These errors are inherent to the attitude sensor or introduced by the environment, and mainly include: zero bias (non-zero output of the sensor in a zero-input state), scaling factor error (non-linear or non-standard scaling relationship between output and input), non-orthogonality error (not strictly perpendicular between sensing axes), and, for the magnetometer, hard magnetic interference (caused by fixed magnetic materials inside or near the sensor) and soft magnetic interference (induced by the ambient magnetic field on ferromagnetic materials). Before attitude calculation, the initial measurement data is calibrated and compensated using the sensor calibration parameters to correct systematic errors and obtain measurement values that are closer to the true physical quantities.
[0085] Step 303: Based on the compensated measurement data, calculate the node attitude data of the node, which includes attitude angles and direction vectors.
[0086] In this example, attitude angles are a set of angular parameters that intuitively describe the orientation of the node's body coordinate system relative to the geographic coordinate system. They typically include heading angle (rotation around the vertical axis, with north at 0°), roll angle (rotation around the front-rear axis), and pitch angle (rotation around the left-right axis). The orientation vector, on the other hand, is a unit vector representing a node's characteristic axis (such as the vehicle's tangent) in the global coordinate system.
[0087] The process of calculating node attitude data involves, for example: First, using compensated accelerometer data, the roll and pitch angles (i.e., tilt state) of the node are calculated by solving the relationship between the measurement vector and the gravity vector. Second, using compensated magnetometer data, tilt compensation is performed based on the known tilt attitude to calculate the yaw angle, which is unaffected by tilt. If the node includes a gyroscope, its angular velocity data can be fused with the attitude calculated by the accelerometer and magnetometer using complementary filtering or extended Kalman filtering algorithms to obtain a faster and more stable attitude estimate, and then output the node's attitude data.
[0088] In one example, the method further includes, before estimating the installation bias parameters of the node:
[0089] After completing attitude perception and calculation, the node encapsulates the generated node attitude data (which can be Euler angles, quaternions, or direction vectors) along with its quality score, node ID, and timestamp into a structured data frame. This data frame also includes verification fields (such as CRC checksums) to ensure data integrity.
[0090] The encapsulated data is sent to the processing unit via a communication link. The specific implementation of the communication link can be selected according to the actual engineering situation, including but not limited to reliable wired links deployed along flexible carriers, underwater acoustic communication links, optical communication links, or offline retrieval via physical retrieval after local storage at the nodes. Its core logic is to use one or more communication media to realize the physical transmission of measurement data from distributed nodes to the centralized processing unit.
[0091] Upon receiving data, the processing end first performs data integrity verification. It uses a checksum field (such as CRC) to determine if any errors occurred during transmission. Frames that fail verification are discarded. For data that passes verification, the processing end performs time alignment on all asynchronous attitude data from different nodes based on the high-precision timestamp carried in each data frame. This is typically achieved through interpolation, synchronizing the data to a unified processing time grid. If data from a node is temporarily missing, it can be filled using data retention from the previous time step or through interpolation.
[0092] Simultaneously, the processing end executes abnormal data removal rules based on the quality score embedded in the data frame (e.g., a score below 0.3) and the reasonableness of the data itself (e.g., an instantaneous change in attitude angle that is not physically apparent). On the other hand, the reference information output by the external reference positioning subsystem (which may be direct coordinates or raw observation values that need to be calculated) is also accessed by the processing end. If it is a raw observation (e.g., a ranging value), the processing end needs to first calculate the coordinates of the reference node (i.e., steps 201-203).
[0093] In one example, based on the reference coordinate information and the node attitude data at the corresponding time, each node is calibrated and its mounting offset parameters are estimated, such as... Figure 4 As shown, it includes:
[0094] Step 401: Based on the reference coordinate information, determine the coordinates of at least two reference nodes.
[0095] In this example, the reference coordinate information originates from an external reference positioning subsystem, which contains coordinate data for multiple nodes located at a known time (i.e., reference nodes). To calculate the orientation of a local segment of the carrier, the coordinates of at least two spatially adjacent or logically related reference nodes are required. These coordinate pairs may come from two precisely located adjacent nodes on the flexible carrier, or from a reference node and a fixed point (such as an anchor point) with a known absolute position.
[0096] Step 402: Calculate the reference segment direction vector at the corresponding time based on the coordinates of the at least two reference nodes.
[0097] In this example, the reference segment direction vector is a unit vector defined in the global coordinate system. It represents the direction of the line segment (i.e., a segment of the carrier) connecting the two reference nodes in space. The reference segment direction vector is calculated as follows: subtract the three-dimensional coordinates of the previous reference node from the three-dimensional coordinates of the latter reference node to obtain a three-dimensional vector difference; then divide this vector difference by its own magnitude (length) and normalize it to obtain the unit vector of the line segment direction.
[0098] Step 403: Based on the node attitude data at the corresponding time and the installation bias parameters to be estimated, construct an bias model for predicting the orientation vector of the carrier segment.
[0099] In this example, the bias model is a mathematical function or transformation relation. Its inputs are the node's raw attitude data at a given moment and the mounting bias parameters to be determined. The output is the predicted carrier segment orientation vector in the global coordinate system. The core of this model describes the concatenation of two coordinate system transformations: First, the node attitude data defines the rotation of the attitude sensor's measurement coordinate system relative to the global coordinate system; second, the mounting bias parameters are introduced to transform the orientation from the measurement coordinate system to the node body coordinate system; finally, based on predefined characteristic directions (such as axial unit vectors) aligned with the carrier segment's geometric axis in the node body coordinate system, the carrier segment orientation vector is predicted. The coordinate transformation relationship from sensor measurement to carrier segment orientation in the bias model is as follows:
[0100]
[0101]
[0102] in, Represents the rotation matrix from the global coordinate system to the measurement coordinate system; The node pose data at time t; It is determined by the installation bias parameters Defined fixed rotation matrix from the measurement coordinate system to the node body coordinate system; It is the direction vector of the carrier segment in the global coordinate system; It is a unit direction vector defined in the measurement coordinate system that is consistent with the tangential direction of the carrier segment.
[0103] Step 404: Determine the installation offset parameters by minimizing the error between the reference segment direction vector and the carrier segment direction vector predicted by the offset model.
[0104] In this example, after obtaining the reference segment direction vectors at multiple different times and the carrier segment direction vectors predicted by the bias model at the corresponding times, an error function is constructed with the installation bias parameters as the optimization variable. An iterative optimization algorithm (such as the Gauss-Newton method) is then used to determine the installation bias parameters that minimize the value of this error function.
[0105] In one example, the method further includes:
[0106] The reference direction vector of the i-th node at the corresponding time is calculated using the following formula:
[0107]
[0108] in, In order to be in At time i, the reference segment direction vector at the i-th node; , They are respectively in The three-dimensional coordinates of two adjacent reference nodes are given at any given time. A vector subtraction is performed to obtain the line segment vector pointing from node i to node i+1. This vector is then normalized (i.e., divided by its own length) to obtain a unit vector of length 1 that indicates only the direction. .
[0109] The specific method for solving the installation bias parameters is to construct and solve the following nonlinear least squares optimization problem:
[0110]
[0111] in, Install offset parameters; For weighting coefficients, according to The node pose data and / or reference coordinate information at each moment are determined; Indicates the use of Node attitude data and installation offset parameters at time points The carrier segment direction vector predicted by the bias model.
[0112] Weighting coefficient The weighting can be dynamically determined based on factors such as the quality score calculated for the node's attitude at that moment (the higher the score, the greater the weight), the accuracy of the external reference coordinate calculation (such as residuals), or environmental interference assessment (such as magnetic interference intensity). For moments with poor data quality or potential anomalies, their weight can be reduced to decrease their impact on the final result.
[0113] In one example, the calculation of the three-dimensional coordinates of all nodes on the flexible carrier based on the starting node coordinates, the segment lengths between adjacent nodes, and the carrier segment direction vector includes:
[0114] The three-dimensional coordinates of all nodes on the flexible carrier are calculated using the following formula:
[0115]
[0116] in, , Let be the three-dimensional coordinates of two adjacent nodes at time t, and let the coordinates of the starting node be . ; The length of the segment between adjacent nodes; Let be the direction vector of the carrier segment of the i-th node.
[0117] In this example, at any time t, starting from the starting node with a known absolute position... Starting from there, add a vector to its coordinates, the magnitude of which is the known segment length between node 0 and node 1. The direction is the calibrated carrier segment direction vector at node 0. Therefore, the coordinates of the next node (node 1) can be calculated. Next, the newly calculated As a new starting point, use segment length and direction Calculate the coordinates of node 2. Following this pattern, by performing vector addition on each node according to the chain-like topological order of the carrier nodes, the three-dimensional coordinate sequence of all nodes on the flexible carrier at the current moment can be reconstructed sequentially from a single starting point. , ,..., }
[0118] If at a certain time t, the carrier segment direction vector of a certain node (e.g., the i-th node) is... The data is temporarily invalid due to anomalies; the recursive process can use the data from the previous valid time step. To ensure the continuity of the generated coordinate sequence, either preserve the coordinates or use interpolation based on the directions of adjacent segments.
[0119] In one example, after calculating the three-dimensional coordinates of all nodes on the flexible carrier, the method further includes:
[0120] The three-dimensional coordinates of all the nodes are subjected to shape smoothing processing, which includes at least one of the following methods:
[0121] Estimate the principal plane where the flexible carrier is located, project the three-dimensional coordinates of each node onto the principal plane and fit them, and determine the smoothed three-dimensional coordinates of the nodes based on the fitting results.
[0122] In this example, this approach is suitable for scenarios where the carrier bends and deforms primarily within a single plane under external loads (such as steady water flow). The principal plane is a two-dimensional plane that best represents the spatial distribution trend of all nodes at the current moment, typically obtained by fitting the coordinates of all nodes using the least squares method. Projecting the three-dimensional coordinates of the nodes perpendicularly onto this principal plane simplifies the curve reconstruction problem in three-dimensional space into a curve fitting problem in a two-dimensional plane. Subsequently, a parametric curve model (such as an inverted catenary model describing the morphology of a cable under its own weight and water flow, or a spline curve with good smoothness and flexibility) is used to fit the projected points in the two-dimensional plane. The fitting process aims to find a continuous and smooth curve that closely approximates all projected points. Finally, the coordinates of the corresponding points on the fitted curve are back-projected back into three-dimensional space, or their two-dimensional coordinates are directly taken and supplemented with plane normal vector information to obtain the smoothed three-dimensional coordinates of the nodes.
[0123] Within a set time window, the three-dimensional coordinates of all nodes are optimized based on constraints, including segment length constraints, carrier segment direction vector constraints, and reference node coordinate constraints.
[0124] In this example, the time window is defined as a time period including the current moment and several neighboring moments. This is achieved by constructing and solving a global cost function, which jointly considers multiple constraints: 1) Segment length constraint: requiring the optimized distance between adjacent nodes to be as close as possible to the known physical segment length. 2) Carrier segment orientation vector constraint: The optimized direction of the connection between adjacent nodes should be as close as possible to the carrier segment orientation vector calculated from the calibrated attitude data. 3) Reference node coordinate constraints: The optimized coordinates of reference nodes located by the external reference system should be as close as possible to their measured or calculated reference coordinates. These constraints collectively constitute the following optimization problem (e.g., in a sliding window least squares form):
[0125]
[0126] in, Represents the set of coordinates of all nodes To optimize the variables, minimize them; These are the segment length and direction constraints. For absolute coordinate constraints, This represents the reference coordinates of the r-th reference node.
[0127] This disclosure also provides an underwater flexible carrier node positioning system, such as Figure 5 As shown, the flexible carrier has multiple nodes, and the system includes:
[0128] The external reference positioning subsystem 501 is used to acquire reference coordinate information of at least one reference node;
[0129] The node attitude measurement subsystem 502 is used to acquire node attitude data measured by attitude sensors at each node.
[0130] The pose fusion processing unit 503 is used to perform binding calibration on each node based on the reference coordinate information and the node pose data at the corresponding time, and to estimate the installation offset parameters of the node; the installation offset parameters are used to characterize the fixed assembly deviation between the measurement coordinate system of the attitude sensor on the node and the node body coordinate system.
[0131] The pose fusion processing unit 503 is also used to correct the node pose data using the installation offset parameters to obtain the carrier segment direction vector of the flexible carrier at each node.
[0132] The pose fusion processing unit 503 is also used to calculate the three-dimensional coordinates of all nodes on the flexible carrier based on the coordinates of the starting node, the segment length between adjacent nodes and the direction vector of the carrier segment.
[0133] According to embodiments of this disclosure, this disclosure also provides an electronic device and a readable storage medium.
[0134] Figure 6 A schematic block diagram of an example electronic device 800 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0135] like Figure 6 As shown, the electronic device 800 includes a computing unit 801, which can perform various appropriate actions and processes based on a computer program stored in a read-only memory (ROM) 802 or a computer program loaded from a storage unit 808 into a random access memory (RAM) 803. The RAM 803 may also store various programs and data required for the operation of the electronic device 800. The computing unit 801, ROM 802, and RAM 803 are interconnected via a bus 804. An input / output (I / O) interface 805 is also connected to the bus 804.
[0136] Multiple components in electronic device 800 are connected to I / O interface 805, including: input unit 806, such as keyboard, mouse, etc.; output unit 807, such as various types of displays, speakers, etc.; storage unit 808, such as disk, optical disk, etc.; and communication unit 809, such as network card, modem, wireless transceiver, etc. Communication unit 809 allows device 800 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0137] The computing unit 801 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 801 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 801 performs the various methods and processes described above, such as the underwater flexible carrier node positioning method. For example, in some embodiments, the underwater flexible carrier node positioning method can be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as storage unit 808. In some embodiments, part or all of the computer program can be loaded and / or installed on device 800 via ROM 802 and / or communication unit 809. When the computer program is loaded into RAM 803 and executed by the computing unit 801, one or more steps of the underwater flexible carrier node positioning method described above can be performed. Alternatively, in other embodiments, the computing unit 801 may be configured to perform an underwater flexible carrier node positioning method by any other suitable means (e.g., by means of firmware).
[0138] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0139] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0140] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0141] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0142] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.
[0143] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact via communication networks. Client-server relationships are created by computer programs running on the respective computers and having a client-server relationship with each other. Servers can be cloud servers, servers in distributed systems, or servers incorporating blockchain technology.
[0144] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.
[0145] Furthermore, 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. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this disclosure, "a plurality of" means two or more, unless otherwise explicitly specified.
[0146] The above description is merely a specific embodiment of this disclosure, but the scope of protection of this disclosure is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this disclosure should be included within the scope of protection of this disclosure. Therefore, the scope of protection of this disclosure should be determined by the scope of the claims.
Claims
1. A method for locating nodes on an underwater flexible carrier, characterized in that, The flexible carrier has multiple nodes, and the method includes: Obtain the reference coordinate information of at least one reference node; Acquire node attitude data measured by attitude sensors at each node; Based on the reference coordinate information and the node attitude data at the corresponding time, each node is bound and calibrated to estimate the installation offset parameters of the node; the installation offset parameters are used to characterize the fixed assembly deviation between the measurement coordinate system of the attitude sensor on the node and the node body coordinate system. The node attitude data is corrected using the installation offset parameters to obtain the carrier segment direction vector of the flexible carrier at each node; Based on the coordinates of the starting node, the segment length between adjacent nodes, and the direction vector of the carrier segment, the three-dimensional coordinates of all nodes on the flexible carrier are calculated. The process of binding and calibrating each node based on the reference coordinate information and the node attitude data at the corresponding time, and estimating the node's installation offset parameters, includes: Based on the reference coordinate information, determine the coordinates of at least two reference nodes; Calculate the reference segment direction vector at the corresponding time based on the coordinates of the at least two reference nodes; Based on the node attitude data at the corresponding time and the installation offset parameters to be estimated, an offset model is constructed to predict the orientation vector of the carrier segment. The installation offset parameters are determined by minimizing the error between the reference segment direction vector and the carrier segment direction vector predicted by the offset model. The method further includes: The reference direction vector of the i-th node at the corresponding time is calculated using the following formula: in, In order to be in At time i, the reference segment direction vector at the i-th node; , They are respectively in The three-dimensional coordinates of two adjacent reference nodes at any given time; Construct and solve the following optimization problem to obtain the installation bias parameters: in, Install offset parameters; For weighting coefficients, according to The node pose data and / or reference coordinate information at each moment are determined; Indicates the use of Node attitude data and installation offset parameters at time points The carrier segment direction vector predicted by the bias model.
2. The method according to claim 1, characterized in that, The step of obtaining the reference coordinate information of at least one reference node includes: Receive output data from an external reference positioning subsystem; If the output data is the three-dimensional coordinates of at least one reference node in the global coordinate system, then it is used as the reference coordinate information; If the output data is the distance measurement observation value or arrival time observation value of the reference node, then the distance measurement observation value or arrival time observation value is calculated to obtain the three-dimensional coordinates of the reference node, and used as the reference coordinate information.
3. The method according to claim 1, characterized in that, The acquisition of node attitude data measured by attitude sensors at each node includes: Acquire the initial measurement data of the attitude sensors at each node; The initial measurement data is compensated according to the sensor calibration parameters to eliminate zero bias, scaling factor error and magnetic interference; Based on the compensated measurement data, the node attitude data of the node is calculated, and the node attitude data includes attitude angle and direction vector.
4. The method according to claim 1, characterized in that, The calculation of the three-dimensional coordinates of all nodes on the flexible carrier based on the starting node coordinates, the segment lengths between adjacent nodes, and the carrier segment direction vector includes: The three-dimensional coordinates of all nodes on the flexible carrier are calculated using the following formula: in, , Let be the three-dimensional coordinates of two adjacent nodes at time t, and let the coordinates of the starting node be . ; The length of the segment between adjacent nodes; Let be the direction vector of the carrier segment of the i-th node.
5. The method according to claim 1 or 4, characterized in that, After calculating the three-dimensional coordinates of all nodes on the flexible carrier, the method further includes: The three-dimensional coordinates of all the nodes are subjected to shape smoothing processing, which includes at least one of the following methods: Estimate the principal plane where the flexible carrier is located, project the three-dimensional coordinates of each node onto the principal plane and fit them, and determine the smoothed three-dimensional coordinates of the nodes based on the fitting results; or, within a set time window, optimize the three-dimensional coordinates of all nodes based on constraints, including segment length constraints, carrier segment direction vector constraints and reference node coordinate constraints.
6. An underwater flexible carrier node positioning system, characterized in that, The flexible carrier has multiple nodes, and the system includes: An external reference positioning subsystem is used to acquire reference coordinate information of at least one reference node; The node attitude measurement subsystem is used to acquire node attitude data measured by attitude sensors at each node. The pose fusion processing unit is used to perform binding calibration on each node based on the reference coordinate information and the node pose data at the corresponding time, and to estimate the installation offset parameters of the node; the installation offset parameters are used to characterize the fixed assembly deviation between the measurement coordinate system of the attitude sensor on the node and the node body coordinate system. The pose fusion processing unit is also used to correct the node pose data using the installation offset parameters to obtain the carrier segment direction vector of the flexible carrier at each node. The pose fusion processing unit is also used to calculate the three-dimensional coordinates of all nodes on the flexible carrier based on the coordinates of the starting node, the segment length between adjacent nodes and the direction vector of the carrier segment. The pose fusion processing unit is specifically used for: Based on the reference coordinate information, determine the coordinates of at least two reference nodes; Calculate the reference segment direction vector at the corresponding time based on the coordinates of the at least two reference nodes; Based on the node attitude data at the corresponding time and the installation offset parameters to be estimated, an offset model is constructed to predict the orientation vector of the carrier segment. The installation offset parameters are determined by minimizing the error between the reference segment direction vector and the carrier segment direction vector predicted by the offset model. The reference direction vector of the i-th node at the corresponding time is calculated using the following formula: in, In order to be in At time i, the reference segment direction vector at the i-th node; , They are respectively in The three-dimensional coordinates of two adjacent reference nodes at any given time; Construct and solve the following optimization problem to obtain the installation bias parameters: in, Install offset parameters; For weighting coefficients, according to The node pose data and / or reference coordinate information at each moment are determined; Indicates the use of Node attitude data and installation offset parameters at time points The carrier segment direction vector predicted by the bias model.
7. An electronic device, characterized in that, include: At least one processor; And a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-5.
8. A non-transitory computer-readable storage medium storing computer instructions, characterized in that, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-5.